diff --git a/front/dist/assets/main-1FLcNLEV.js b/front/dist/assets/main-1FLcNLEV.js new file mode 100644 index 0000000..2d6a101 --- /dev/null +++ b/front/dist/assets/main-1FLcNLEV.js @@ -0,0 +1,340 @@ +var AK=Object.defineProperty;var PK=(_n,Ce,ke)=>Ce in _n?AK(_n,Ce,{enumerable:!0,configurable:!0,writable:!0,value:ke}):_n[Ce]=ke;var LY=(_n,Ce,ke)=>(PK(_n,typeof Ce!="symbol"?Ce+"":Ce,ke),ke);function bind$1(_n,Ce){return function(){return _n.apply(Ce,arguments)}}const{toString:toString$1}=Object.prototype,{getPrototypeOf}=Object,kindOf=(_n=>Ce=>{const ke=toString$1.call(Ce);return _n[ke]||(_n[ke]=ke.slice(8,-1).toLowerCase())})(Object.create(null)),kindOfTest=_n=>(_n=_n.toLowerCase(),Ce=>kindOf(Ce)===_n),typeOfTest=_n=>Ce=>typeof Ce===_n,{isArray:isArray$2}=Array,isUndefined=typeOfTest("undefined");function isBuffer(_n){return _n!==null&&!isUndefined(_n)&&_n.constructor!==null&&!isUndefined(_n.constructor)&&isFunction$1(_n.constructor.isBuffer)&&_n.constructor.isBuffer(_n)}const isArrayBuffer=kindOfTest("ArrayBuffer");function isArrayBufferView(_n){let Ce;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?Ce=ArrayBuffer.isView(_n):Ce=_n&&_n.buffer&&isArrayBuffer(_n.buffer),Ce}const isString$1=typeOfTest("string"),isFunction$1=typeOfTest("function"),isNumber$1=typeOfTest("number"),isObject$1=_n=>_n!==null&&typeof _n=="object",isBoolean$1=_n=>_n===!0||_n===!1,isPlainObject=_n=>{if(kindOf(_n)!=="object")return!1;const Ce=getPrototypeOf(_n);return(Ce===null||Ce===Object.prototype||Object.getPrototypeOf(Ce)===null)&&!(Symbol.toStringTag in _n)&&!(Symbol.iterator in _n)},isDate$1=kindOfTest("Date"),isFile=kindOfTest("File"),isBlob=kindOfTest("Blob"),isFileList=kindOfTest("FileList"),isStream=_n=>isObject$1(_n)&&isFunction$1(_n.pipe),isFormData=_n=>{let Ce;return _n&&(typeof FormData=="function"&&_n instanceof FormData||isFunction$1(_n.append)&&((Ce=kindOf(_n))==="formdata"||Ce==="object"&&isFunction$1(_n.toString)&&_n.toString()==="[object FormData]"))},isURLSearchParams=kindOfTest("URLSearchParams"),[isReadableStream,isRequest,isResponse,isHeaders]=["ReadableStream","Request","Response","Headers"].map(kindOfTest),trim=_n=>_n.trim?_n.trim():_n.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function forEach(_n,Ce,{allOwnKeys:ke=!1}={}){if(_n===null||typeof _n>"u")return;let $n,Hn;if(typeof _n!="object"&&(_n=[_n]),isArray$2(_n))for($n=0,Hn=_n.length;$n0;)if(Hn=ke[$n],Ce===Hn.toLowerCase())return Hn;return null}const _global=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,isContextDefined=_n=>!isUndefined(_n)&&_n!==_global;function merge(){const{caseless:_n}=isContextDefined(this)&&this||{},Ce={},ke=($n,Hn)=>{const zn=_n&&findKey$1(Ce,Hn)||Hn;isPlainObject(Ce[zn])&&isPlainObject($n)?Ce[zn]=merge(Ce[zn],$n):isPlainObject($n)?Ce[zn]=merge({},$n):isArray$2($n)?Ce[zn]=$n.slice():Ce[zn]=$n};for(let $n=0,Hn=arguments.length;$n(forEach(Ce,(Hn,zn)=>{ke&&isFunction$1(Hn)?_n[zn]=bind$1(Hn,ke):_n[zn]=Hn},{allOwnKeys:$n}),_n),stripBOM=_n=>(_n.charCodeAt(0)===65279&&(_n=_n.slice(1)),_n),inherits=(_n,Ce,ke,$n)=>{_n.prototype=Object.create(Ce.prototype,$n),_n.prototype.constructor=_n,Object.defineProperty(_n,"super",{value:Ce.prototype}),ke&&Object.assign(_n.prototype,ke)},toFlatObject=(_n,Ce,ke,$n)=>{let Hn,zn,Zn;const qn={};if(Ce=Ce||{},_n==null)return Ce;do{for(Hn=Object.getOwnPropertyNames(_n),zn=Hn.length;zn-- >0;)Zn=Hn[zn],(!$n||$n(Zn,_n,Ce))&&!qn[Zn]&&(Ce[Zn]=_n[Zn],qn[Zn]=!0);_n=ke!==!1&&getPrototypeOf(_n)}while(_n&&(!ke||ke(_n,Ce))&&_n!==Object.prototype);return Ce},endsWith=(_n,Ce,ke)=>{_n=String(_n),(ke===void 0||ke>_n.length)&&(ke=_n.length),ke-=Ce.length;const $n=_n.indexOf(Ce,ke);return $n!==-1&&$n===ke},toArray=_n=>{if(!_n)return null;if(isArray$2(_n))return _n;let Ce=_n.length;if(!isNumber$1(Ce))return null;const ke=new Array(Ce);for(;Ce-- >0;)ke[Ce]=_n[Ce];return ke},isTypedArray=(_n=>Ce=>_n&&Ce instanceof _n)(typeof Uint8Array<"u"&&getPrototypeOf(Uint8Array)),forEachEntry=(_n,Ce)=>{const $n=(_n&&_n[Symbol.iterator]).call(_n);let Hn;for(;(Hn=$n.next())&&!Hn.done;){const zn=Hn.value;Ce.call(_n,zn[0],zn[1])}},matchAll=(_n,Ce)=>{let ke;const $n=[];for(;(ke=_n.exec(Ce))!==null;)$n.push(ke);return $n},isHTMLForm=kindOfTest("HTMLFormElement"),toCamelCase=_n=>_n.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(ke,$n,Hn){return $n.toUpperCase()+Hn}),hasOwnProperty=(({hasOwnProperty:_n})=>(Ce,ke)=>_n.call(Ce,ke))(Object.prototype),isRegExp=kindOfTest("RegExp"),reduceDescriptors=(_n,Ce)=>{const ke=Object.getOwnPropertyDescriptors(_n),$n={};forEach(ke,(Hn,zn)=>{let Zn;(Zn=Ce(Hn,zn,_n))!==!1&&($n[zn]=Zn||Hn)}),Object.defineProperties(_n,$n)},freezeMethods=_n=>{reduceDescriptors(_n,(Ce,ke)=>{if(isFunction$1(_n)&&["arguments","caller","callee"].indexOf(ke)!==-1)return!1;const $n=_n[ke];if(isFunction$1($n)){if(Ce.enumerable=!1,"writable"in Ce){Ce.writable=!1;return}Ce.set||(Ce.set=()=>{throw Error("Can not rewrite read-only method '"+ke+"'")})}})},toObjectSet=(_n,Ce)=>{const ke={},$n=Hn=>{Hn.forEach(zn=>{ke[zn]=!0})};return isArray$2(_n)?$n(_n):$n(String(_n).split(Ce)),ke},noop$1=()=>{},toFiniteNumber=(_n,Ce)=>_n!=null&&Number.isFinite(_n=+_n)?_n:Ce,ALPHA="abcdefghijklmnopqrstuvwxyz",DIGIT="0123456789",ALPHABET={DIGIT,ALPHA,ALPHA_DIGIT:ALPHA+ALPHA.toUpperCase()+DIGIT},generateString=(_n=16,Ce=ALPHABET.ALPHA_DIGIT)=>{let ke="";const{length:$n}=Ce;for(;_n--;)ke+=Ce[Math.random()*$n|0];return ke};function isSpecCompliantForm(_n){return!!(_n&&isFunction$1(_n.append)&&_n[Symbol.toStringTag]==="FormData"&&_n[Symbol.iterator])}const toJSONObject=_n=>{const Ce=new Array(10),ke=($n,Hn)=>{if(isObject$1($n)){if(Ce.indexOf($n)>=0)return;if(!("toJSON"in $n)){Ce[Hn]=$n;const zn=isArray$2($n)?[]:{};return forEach($n,(Zn,qn)=>{const Yn=ke(Zn,Hn+1);!isUndefined(Yn)&&(zn[qn]=Yn)}),Ce[Hn]=void 0,zn}}return $n};return ke(_n,0)},isAsyncFn=kindOfTest("AsyncFunction"),isThenable=_n=>_n&&(isObject$1(_n)||isFunction$1(_n))&&isFunction$1(_n.then)&&isFunction$1(_n.catch),_setImmediate=((_n,Ce)=>_n?setImmediate:Ce?((ke,$n)=>(_global.addEventListener("message",({source:Hn,data:zn})=>{Hn===_global&&zn===ke&&$n.length&&$n.shift()()},!1),Hn=>{$n.push(Hn),_global.postMessage(ke,"*")}))(`axios@${Math.random()}`,[]):ke=>setTimeout(ke))(typeof setImmediate=="function",isFunction$1(_global.postMessage)),asap=typeof queueMicrotask<"u"?queueMicrotask.bind(_global):typeof process<"u"&&process.nextTick||_setImmediate,utils$1={isArray:isArray$2,isArrayBuffer,isBuffer,isFormData,isArrayBufferView,isString:isString$1,isNumber:isNumber$1,isBoolean:isBoolean$1,isObject:isObject$1,isPlainObject,isReadableStream,isRequest,isResponse,isHeaders,isUndefined,isDate:isDate$1,isFile,isBlob,isRegExp,isFunction:isFunction$1,isStream,isURLSearchParams,isTypedArray,isFileList,forEach,merge,extend:extend$2,trim,stripBOM,inherits,toFlatObject,kindOf,kindOfTest,endsWith,toArray,forEachEntry,matchAll,isHTMLForm,hasOwnProperty,hasOwnProp:hasOwnProperty,reduceDescriptors,freezeMethods,toObjectSet,toCamelCase,noop:noop$1,toFiniteNumber,findKey:findKey$1,global:_global,isContextDefined,ALPHABET,generateString,isSpecCompliantForm,toJSONObject,isAsyncFn,isThenable,setImmediate:_setImmediate,asap};function AxiosError(_n,Ce,ke,$n,Hn){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=_n,this.name="AxiosError",Ce&&(this.code=Ce),ke&&(this.config=ke),$n&&(this.request=$n),Hn&&(this.response=Hn)}utils$1.inherits(AxiosError,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:utils$1.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const prototype$1=AxiosError.prototype,descriptors={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(_n=>{descriptors[_n]={value:_n}});Object.defineProperties(AxiosError,descriptors);Object.defineProperty(prototype$1,"isAxiosError",{value:!0});AxiosError.from=(_n,Ce,ke,$n,Hn,zn)=>{const Zn=Object.create(prototype$1);return utils$1.toFlatObject(_n,Zn,function(Yn){return Yn!==Error.prototype},qn=>qn!=="isAxiosError"),AxiosError.call(Zn,_n.message,Ce,ke,$n,Hn),Zn.cause=_n,Zn.name=_n.name,zn&&Object.assign(Zn,zn),Zn};const httpAdapter=null;function isVisitable(_n){return utils$1.isPlainObject(_n)||utils$1.isArray(_n)}function removeBrackets(_n){return utils$1.endsWith(_n,"[]")?_n.slice(0,-2):_n}function renderKey(_n,Ce,ke){return _n?_n.concat(Ce).map(function(Hn,zn){return Hn=removeBrackets(Hn),!ke&&zn?"["+Hn+"]":Hn}).join(ke?".":""):Ce}function isFlatArray(_n){return utils$1.isArray(_n)&&!_n.some(isVisitable)}const predicates=utils$1.toFlatObject(utils$1,{},null,function(Ce){return/^is[A-Z]/.test(Ce)});function toFormData(_n,Ce,ke){if(!utils$1.isObject(_n))throw new TypeError("target must be an object");Ce=Ce||new FormData,ke=utils$1.toFlatObject(ke,{metaTokens:!0,dots:!1,indexes:!1},!1,function(Oo,wo){return!utils$1.isUndefined(wo[Oo])});const $n=ke.metaTokens,Hn=ke.visitor||to,zn=ke.dots,Zn=ke.indexes,Yn=(ke.Blob||typeof Blob<"u"&&Blob)&&utils$1.isSpecCompliantForm(Ce);if(!utils$1.isFunction(Hn))throw new TypeError("visitor must be a function");function Jn(bo){if(bo===null)return"";if(utils$1.isDate(bo))return bo.toISOString();if(!Yn&&utils$1.isBlob(bo))throw new AxiosError("Blob is not supported. Use a Buffer instead.");return utils$1.isArrayBuffer(bo)||utils$1.isTypedArray(bo)?Yn&&typeof Blob=="function"?new Blob([bo]):Buffer.from(bo):bo}function to(bo,Oo,wo){let $o=bo;if(bo&&!wo&&typeof bo=="object"){if(utils$1.endsWith(Oo,"{}"))Oo=$n?Oo:Oo.slice(0,-2),bo=JSON.stringify(bo);else if(utils$1.isArray(bo)&&isFlatArray(bo)||(utils$1.isFileList(bo)||utils$1.endsWith(Oo,"[]"))&&($o=utils$1.toArray(bo)))return Oo=removeBrackets(Oo),$o.forEach(function(xo,Bo){!(utils$1.isUndefined(xo)||xo===null)&&Ce.append(Zn===!0?renderKey([Oo],Bo,zn):Zn===null?Oo:Oo+"[]",Jn(xo))}),!1}return isVisitable(bo)?!0:(Ce.append(renderKey(wo,Oo,zn),Jn(bo)),!1)}const io=[],uo=Object.assign(predicates,{defaultVisitor:to,convertValue:Jn,isVisitable});function mo(bo,Oo){if(!utils$1.isUndefined(bo)){if(io.indexOf(bo)!==-1)throw Error("Circular reference detected in "+Oo.join("."));io.push(bo),utils$1.forEach(bo,function($o,Do){(!(utils$1.isUndefined($o)||$o===null)&&Hn.call(Ce,$o,utils$1.isString(Do)?Do.trim():Do,Oo,uo))===!0&&mo($o,Oo?Oo.concat(Do):[Do])}),io.pop()}}if(!utils$1.isObject(_n))throw new TypeError("data must be an object");return mo(_n),Ce}function encode$1(_n){const Ce={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(_n).replace(/[!'()~]|%20|%00/g,function($n){return Ce[$n]})}function AxiosURLSearchParams(_n,Ce){this._pairs=[],_n&&toFormData(_n,this,Ce)}const prototype=AxiosURLSearchParams.prototype;prototype.append=function(Ce,ke){this._pairs.push([Ce,ke])};prototype.toString=function(Ce){const ke=Ce?function($n){return Ce.call(this,$n,encode$1)}:encode$1;return this._pairs.map(function(Hn){return ke(Hn[0])+"="+ke(Hn[1])},"").join("&")};function encode(_n){return encodeURIComponent(_n).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function buildURL(_n,Ce,ke){if(!Ce)return _n;const $n=ke&&ke.encode||encode,Hn=ke&&ke.serialize;let zn;if(Hn?zn=Hn(Ce,ke):zn=utils$1.isURLSearchParams(Ce)?Ce.toString():new AxiosURLSearchParams(Ce,ke).toString($n),zn){const Zn=_n.indexOf("#");Zn!==-1&&(_n=_n.slice(0,Zn)),_n+=(_n.indexOf("?")===-1?"?":"&")+zn}return _n}class InterceptorManager{constructor(){this.handlers=[]}use(Ce,ke,$n){return this.handlers.push({fulfilled:Ce,rejected:ke,synchronous:$n?$n.synchronous:!1,runWhen:$n?$n.runWhen:null}),this.handlers.length-1}eject(Ce){this.handlers[Ce]&&(this.handlers[Ce]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(Ce){utils$1.forEach(this.handlers,function($n){$n!==null&&Ce($n)})}}const transitionalDefaults={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},URLSearchParams$1=typeof URLSearchParams<"u"?URLSearchParams:AxiosURLSearchParams,FormData$1=typeof FormData<"u"?FormData:null,Blob$1=typeof Blob<"u"?Blob:null,platform$1={isBrowser:!0,classes:{URLSearchParams:URLSearchParams$1,FormData:FormData$1,Blob:Blob$1},protocols:["http","https","file","blob","url","data"]},hasBrowserEnv=typeof window<"u"&&typeof document<"u",hasStandardBrowserEnv=(_n=>hasBrowserEnv&&["ReactNative","NativeScript","NS"].indexOf(_n)<0)(typeof navigator<"u"&&navigator.product),hasStandardBrowserWebWorkerEnv=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",origin=hasBrowserEnv&&window.location.href||"http://localhost",utils=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv,hasStandardBrowserEnv,hasStandardBrowserWebWorkerEnv,origin},Symbol.toStringTag,{value:"Module"})),platform={...utils,...platform$1};function toURLEncodedForm(_n,Ce){return toFormData(_n,new platform.classes.URLSearchParams,Object.assign({visitor:function(ke,$n,Hn,zn){return platform.isNode&&utils$1.isBuffer(ke)?(this.append($n,ke.toString("base64")),!1):zn.defaultVisitor.apply(this,arguments)}},Ce))}function parsePropPath(_n){return utils$1.matchAll(/\w+|\[(\w*)]/g,_n).map(Ce=>Ce[0]==="[]"?"":Ce[1]||Ce[0])}function arrayToObject(_n){const Ce={},ke=Object.keys(_n);let $n;const Hn=ke.length;let zn;for($n=0;$n=ke.length;return Zn=!Zn&&utils$1.isArray(Hn)?Hn.length:Zn,Yn?(utils$1.hasOwnProp(Hn,Zn)?Hn[Zn]=[Hn[Zn],$n]:Hn[Zn]=$n,!qn):((!Hn[Zn]||!utils$1.isObject(Hn[Zn]))&&(Hn[Zn]=[]),Ce(ke,$n,Hn[Zn],zn)&&utils$1.isArray(Hn[Zn])&&(Hn[Zn]=arrayToObject(Hn[Zn])),!qn)}if(utils$1.isFormData(_n)&&utils$1.isFunction(_n.entries)){const ke={};return utils$1.forEachEntry(_n,($n,Hn)=>{Ce(parsePropPath($n),Hn,ke,0)}),ke}return null}function stringifySafely(_n,Ce,ke){if(utils$1.isString(_n))try{return(Ce||JSON.parse)(_n),utils$1.trim(_n)}catch($n){if($n.name!=="SyntaxError")throw $n}return(ke||JSON.stringify)(_n)}const defaults$4={transitional:transitionalDefaults,adapter:["xhr","http","fetch"],transformRequest:[function(Ce,ke){const $n=ke.getContentType()||"",Hn=$n.indexOf("application/json")>-1,zn=utils$1.isObject(Ce);if(zn&&utils$1.isHTMLForm(Ce)&&(Ce=new FormData(Ce)),utils$1.isFormData(Ce))return Hn?JSON.stringify(formDataToJSON(Ce)):Ce;if(utils$1.isArrayBuffer(Ce)||utils$1.isBuffer(Ce)||utils$1.isStream(Ce)||utils$1.isFile(Ce)||utils$1.isBlob(Ce)||utils$1.isReadableStream(Ce))return Ce;if(utils$1.isArrayBufferView(Ce))return Ce.buffer;if(utils$1.isURLSearchParams(Ce))return ke.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),Ce.toString();let qn;if(zn){if($n.indexOf("application/x-www-form-urlencoded")>-1)return toURLEncodedForm(Ce,this.formSerializer).toString();if((qn=utils$1.isFileList(Ce))||$n.indexOf("multipart/form-data")>-1){const Yn=this.env&&this.env.FormData;return toFormData(qn?{"files[]":Ce}:Ce,Yn&&new Yn,this.formSerializer)}}return zn||Hn?(ke.setContentType("application/json",!1),stringifySafely(Ce)):Ce}],transformResponse:[function(Ce){const ke=this.transitional||defaults$4.transitional,$n=ke&&ke.forcedJSONParsing,Hn=this.responseType==="json";if(utils$1.isResponse(Ce)||utils$1.isReadableStream(Ce))return Ce;if(Ce&&utils$1.isString(Ce)&&($n&&!this.responseType||Hn)){const Zn=!(ke&&ke.silentJSONParsing)&&Hn;try{return JSON.parse(Ce)}catch(qn){if(Zn)throw qn.name==="SyntaxError"?AxiosError.from(qn,AxiosError.ERR_BAD_RESPONSE,this,null,this.response):qn}}return Ce}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:platform.classes.FormData,Blob:platform.classes.Blob},validateStatus:function(Ce){return Ce>=200&&Ce<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};utils$1.forEach(["delete","get","head","post","put","patch"],_n=>{defaults$4.headers[_n]={}});const ignoreDuplicateOf=utils$1.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),parseHeaders=_n=>{const Ce={};let ke,$n,Hn;return _n&&_n.split(` +`).forEach(function(Zn){Hn=Zn.indexOf(":"),ke=Zn.substring(0,Hn).trim().toLowerCase(),$n=Zn.substring(Hn+1).trim(),!(!ke||Ce[ke]&&ignoreDuplicateOf[ke])&&(ke==="set-cookie"?Ce[ke]?Ce[ke].push($n):Ce[ke]=[$n]:Ce[ke]=Ce[ke]?Ce[ke]+", "+$n:$n)}),Ce},$internals=Symbol("internals");function normalizeHeader(_n){return _n&&String(_n).trim().toLowerCase()}function normalizeValue(_n){return _n===!1||_n==null?_n:utils$1.isArray(_n)?_n.map(normalizeValue):String(_n)}function parseTokens(_n){const Ce=Object.create(null),ke=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let $n;for(;$n=ke.exec(_n);)Ce[$n[1]]=$n[2];return Ce}const isValidHeaderName=_n=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(_n.trim());function matchHeaderValue(_n,Ce,ke,$n,Hn){if(utils$1.isFunction($n))return $n.call(this,Ce,ke);if(Hn&&(Ce=ke),!!utils$1.isString(Ce)){if(utils$1.isString($n))return Ce.indexOf($n)!==-1;if(utils$1.isRegExp($n))return $n.test(Ce)}}function formatHeader(_n){return _n.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(Ce,ke,$n)=>ke.toUpperCase()+$n)}function buildAccessors(_n,Ce){const ke=utils$1.toCamelCase(" "+Ce);["get","set","has"].forEach($n=>{Object.defineProperty(_n,$n+ke,{value:function(Hn,zn,Zn){return this[$n].call(this,Ce,Hn,zn,Zn)},configurable:!0})})}class AxiosHeaders{constructor(Ce){Ce&&this.set(Ce)}set(Ce,ke,$n){const Hn=this;function zn(qn,Yn,Jn){const to=normalizeHeader(Yn);if(!to)throw new Error("header name must be a non-empty string");const io=utils$1.findKey(Hn,to);(!io||Hn[io]===void 0||Jn===!0||Jn===void 0&&Hn[io]!==!1)&&(Hn[io||Yn]=normalizeValue(qn))}const Zn=(qn,Yn)=>utils$1.forEach(qn,(Jn,to)=>zn(Jn,to,Yn));if(utils$1.isPlainObject(Ce)||Ce instanceof this.constructor)Zn(Ce,ke);else if(utils$1.isString(Ce)&&(Ce=Ce.trim())&&!isValidHeaderName(Ce))Zn(parseHeaders(Ce),ke);else if(utils$1.isHeaders(Ce))for(const[qn,Yn]of Ce.entries())zn(Yn,qn,$n);else Ce!=null&&zn(ke,Ce,$n);return this}get(Ce,ke){if(Ce=normalizeHeader(Ce),Ce){const $n=utils$1.findKey(this,Ce);if($n){const Hn=this[$n];if(!ke)return Hn;if(ke===!0)return parseTokens(Hn);if(utils$1.isFunction(ke))return ke.call(this,Hn,$n);if(utils$1.isRegExp(ke))return ke.exec(Hn);throw new TypeError("parser must be boolean|regexp|function")}}}has(Ce,ke){if(Ce=normalizeHeader(Ce),Ce){const $n=utils$1.findKey(this,Ce);return!!($n&&this[$n]!==void 0&&(!ke||matchHeaderValue(this,this[$n],$n,ke)))}return!1}delete(Ce,ke){const $n=this;let Hn=!1;function zn(Zn){if(Zn=normalizeHeader(Zn),Zn){const qn=utils$1.findKey($n,Zn);qn&&(!ke||matchHeaderValue($n,$n[qn],qn,ke))&&(delete $n[qn],Hn=!0)}}return utils$1.isArray(Ce)?Ce.forEach(zn):zn(Ce),Hn}clear(Ce){const ke=Object.keys(this);let $n=ke.length,Hn=!1;for(;$n--;){const zn=ke[$n];(!Ce||matchHeaderValue(this,this[zn],zn,Ce,!0))&&(delete this[zn],Hn=!0)}return Hn}normalize(Ce){const ke=this,$n={};return utils$1.forEach(this,(Hn,zn)=>{const Zn=utils$1.findKey($n,zn);if(Zn){ke[Zn]=normalizeValue(Hn),delete ke[zn];return}const qn=Ce?formatHeader(zn):String(zn).trim();qn!==zn&&delete ke[zn],ke[qn]=normalizeValue(Hn),$n[qn]=!0}),this}concat(...Ce){return this.constructor.concat(this,...Ce)}toJSON(Ce){const ke=Object.create(null);return utils$1.forEach(this,($n,Hn)=>{$n!=null&&$n!==!1&&(ke[Hn]=Ce&&utils$1.isArray($n)?$n.join(", "):$n)}),ke}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([Ce,ke])=>Ce+": "+ke).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(Ce){return Ce instanceof this?Ce:new this(Ce)}static concat(Ce,...ke){const $n=new this(Ce);return ke.forEach(Hn=>$n.set(Hn)),$n}static accessor(Ce){const $n=(this[$internals]=this[$internals]={accessors:{}}).accessors,Hn=this.prototype;function zn(Zn){const qn=normalizeHeader(Zn);$n[qn]||(buildAccessors(Hn,Zn),$n[qn]=!0)}return utils$1.isArray(Ce)?Ce.forEach(zn):zn(Ce),this}}AxiosHeaders.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);utils$1.reduceDescriptors(AxiosHeaders.prototype,({value:_n},Ce)=>{let ke=Ce[0].toUpperCase()+Ce.slice(1);return{get:()=>_n,set($n){this[ke]=$n}}});utils$1.freezeMethods(AxiosHeaders);function transformData(_n,Ce){const ke=this||defaults$4,$n=Ce||ke,Hn=AxiosHeaders.from($n.headers);let zn=$n.data;return utils$1.forEach(_n,function(qn){zn=qn.call(ke,zn,Hn.normalize(),Ce?Ce.status:void 0)}),Hn.normalize(),zn}function isCancel(_n){return!!(_n&&_n.__CANCEL__)}function CanceledError(_n,Ce,ke){AxiosError.call(this,_n??"canceled",AxiosError.ERR_CANCELED,Ce,ke),this.name="CanceledError"}utils$1.inherits(CanceledError,AxiosError,{__CANCEL__:!0});function settle(_n,Ce,ke){const $n=ke.config.validateStatus;!ke.status||!$n||$n(ke.status)?_n(ke):Ce(new AxiosError("Request failed with status code "+ke.status,[AxiosError.ERR_BAD_REQUEST,AxiosError.ERR_BAD_RESPONSE][Math.floor(ke.status/100)-4],ke.config,ke.request,ke))}function parseProtocol(_n){const Ce=/^([-+\w]{1,25})(:?\/\/|:)/.exec(_n);return Ce&&Ce[1]||""}function speedometer(_n,Ce){_n=_n||10;const ke=new Array(_n),$n=new Array(_n);let Hn=0,zn=0,Zn;return Ce=Ce!==void 0?Ce:1e3,function(Yn){const Jn=Date.now(),to=$n[zn];Zn||(Zn=Jn),ke[Hn]=Yn,$n[Hn]=Jn;let io=zn,uo=0;for(;io!==Hn;)uo+=ke[io++],io=io%_n;if(Hn=(Hn+1)%_n,Hn===zn&&(zn=(zn+1)%_n),Jn-Zn{ke=to,Hn=null,zn&&(clearTimeout(zn),zn=null),_n.apply(null,Jn)};return[(...Jn)=>{const to=Date.now(),io=to-ke;io>=$n?Zn(Jn,to):(Hn=Jn,zn||(zn=setTimeout(()=>{zn=null,Zn(Hn)},$n-io)))},()=>Hn&&Zn(Hn)]}const progressEventReducer=(_n,Ce,ke=3)=>{let $n=0;const Hn=speedometer(50,250);return throttle$1(zn=>{const Zn=zn.loaded,qn=zn.lengthComputable?zn.total:void 0,Yn=Zn-$n,Jn=Hn(Yn),to=Zn<=qn;$n=Zn;const io={loaded:Zn,total:qn,progress:qn?Zn/qn:void 0,bytes:Yn,rate:Jn||void 0,estimated:Jn&&qn&&to?(qn-Zn)/Jn:void 0,event:zn,lengthComputable:qn!=null,[Ce?"download":"upload"]:!0};_n(io)},ke)},progressEventDecorator=(_n,Ce)=>{const ke=_n!=null;return[$n=>Ce[0]({lengthComputable:ke,total:_n,loaded:$n}),Ce[1]]},asyncDecorator=_n=>(...Ce)=>utils$1.asap(()=>_n(...Ce)),isURLSameOrigin=platform.hasStandardBrowserEnv?function(){const Ce=/(msie|trident)/i.test(navigator.userAgent),ke=document.createElement("a");let $n;function Hn(zn){let Zn=zn;return Ce&&(ke.setAttribute("href",Zn),Zn=ke.href),ke.setAttribute("href",Zn),{href:ke.href,protocol:ke.protocol?ke.protocol.replace(/:$/,""):"",host:ke.host,search:ke.search?ke.search.replace(/^\?/,""):"",hash:ke.hash?ke.hash.replace(/^#/,""):"",hostname:ke.hostname,port:ke.port,pathname:ke.pathname.charAt(0)==="/"?ke.pathname:"/"+ke.pathname}}return $n=Hn(window.location.href),function(Zn){const qn=utils$1.isString(Zn)?Hn(Zn):Zn;return qn.protocol===$n.protocol&&qn.host===$n.host}}():function(){return function(){return!0}}(),cookies=platform.hasStandardBrowserEnv?{write(_n,Ce,ke,$n,Hn,zn){const Zn=[_n+"="+encodeURIComponent(Ce)];utils$1.isNumber(ke)&&Zn.push("expires="+new Date(ke).toGMTString()),utils$1.isString($n)&&Zn.push("path="+$n),utils$1.isString(Hn)&&Zn.push("domain="+Hn),zn===!0&&Zn.push("secure"),document.cookie=Zn.join("; ")},read(_n){const Ce=document.cookie.match(new RegExp("(^|;\\s*)("+_n+")=([^;]*)"));return Ce?decodeURIComponent(Ce[3]):null},remove(_n){this.write(_n,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function isAbsoluteURL(_n){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(_n)}function combineURLs(_n,Ce){return Ce?_n.replace(/\/?\/$/,"")+"/"+Ce.replace(/^\/+/,""):_n}function buildFullPath(_n,Ce){return _n&&!isAbsoluteURL(Ce)?combineURLs(_n,Ce):Ce}const headersToObject=_n=>_n instanceof AxiosHeaders?{..._n}:_n;function mergeConfig(_n,Ce){Ce=Ce||{};const ke={};function $n(Jn,to,io){return utils$1.isPlainObject(Jn)&&utils$1.isPlainObject(to)?utils$1.merge.call({caseless:io},Jn,to):utils$1.isPlainObject(to)?utils$1.merge({},to):utils$1.isArray(to)?to.slice():to}function Hn(Jn,to,io){if(utils$1.isUndefined(to)){if(!utils$1.isUndefined(Jn))return $n(void 0,Jn,io)}else return $n(Jn,to,io)}function zn(Jn,to){if(!utils$1.isUndefined(to))return $n(void 0,to)}function Zn(Jn,to){if(utils$1.isUndefined(to)){if(!utils$1.isUndefined(Jn))return $n(void 0,Jn)}else return $n(void 0,to)}function qn(Jn,to,io){if(io in Ce)return $n(Jn,to);if(io in _n)return $n(void 0,Jn)}const Yn={url:zn,method:zn,data:zn,baseURL:Zn,transformRequest:Zn,transformResponse:Zn,paramsSerializer:Zn,timeout:Zn,timeoutMessage:Zn,withCredentials:Zn,withXSRFToken:Zn,adapter:Zn,responseType:Zn,xsrfCookieName:Zn,xsrfHeaderName:Zn,onUploadProgress:Zn,onDownloadProgress:Zn,decompress:Zn,maxContentLength:Zn,maxBodyLength:Zn,beforeRedirect:Zn,transport:Zn,httpAgent:Zn,httpsAgent:Zn,cancelToken:Zn,socketPath:Zn,responseEncoding:Zn,validateStatus:qn,headers:(Jn,to)=>Hn(headersToObject(Jn),headersToObject(to),!0)};return utils$1.forEach(Object.keys(Object.assign({},_n,Ce)),function(to){const io=Yn[to]||Hn,uo=io(_n[to],Ce[to],to);utils$1.isUndefined(uo)&&io!==qn||(ke[to]=uo)}),ke}const resolveConfig$1=_n=>{const Ce=mergeConfig({},_n);let{data:ke,withXSRFToken:$n,xsrfHeaderName:Hn,xsrfCookieName:zn,headers:Zn,auth:qn}=Ce;Ce.headers=Zn=AxiosHeaders.from(Zn),Ce.url=buildURL(buildFullPath(Ce.baseURL,Ce.url),_n.params,_n.paramsSerializer),qn&&Zn.set("Authorization","Basic "+btoa((qn.username||"")+":"+(qn.password?unescape(encodeURIComponent(qn.password)):"")));let Yn;if(utils$1.isFormData(ke)){if(platform.hasStandardBrowserEnv||platform.hasStandardBrowserWebWorkerEnv)Zn.setContentType(void 0);else if((Yn=Zn.getContentType())!==!1){const[Jn,...to]=Yn?Yn.split(";").map(io=>io.trim()).filter(Boolean):[];Zn.setContentType([Jn||"multipart/form-data",...to].join("; "))}}if(platform.hasStandardBrowserEnv&&($n&&utils$1.isFunction($n)&&($n=$n(Ce)),$n||$n!==!1&&isURLSameOrigin(Ce.url))){const Jn=Hn&&zn&&cookies.read(zn);Jn&&Zn.set(Hn,Jn)}return Ce},isXHRAdapterSupported=typeof XMLHttpRequest<"u",xhrAdapter=isXHRAdapterSupported&&function(_n){return new Promise(function(ke,$n){const Hn=resolveConfig$1(_n);let zn=Hn.data;const Zn=AxiosHeaders.from(Hn.headers).normalize();let{responseType:qn,onUploadProgress:Yn,onDownloadProgress:Jn}=Hn,to,io,uo,mo,bo;function Oo(){mo&&mo(),bo&&bo(),Hn.cancelToken&&Hn.cancelToken.unsubscribe(to),Hn.signal&&Hn.signal.removeEventListener("abort",to)}let wo=new XMLHttpRequest;wo.open(Hn.method.toUpperCase(),Hn.url,!0),wo.timeout=Hn.timeout;function $o(){if(!wo)return;const xo=AxiosHeaders.from("getAllResponseHeaders"in wo&&wo.getAllResponseHeaders()),Vo={data:!qn||qn==="text"||qn==="json"?wo.responseText:wo.response,status:wo.status,statusText:wo.statusText,headers:xo,config:_n,request:wo};settle(function(Mo){ke(Mo),Oo()},function(Mo){$n(Mo),Oo()},Vo),wo=null}"onloadend"in wo?wo.onloadend=$o:wo.onreadystatechange=function(){!wo||wo.readyState!==4||wo.status===0&&!(wo.responseURL&&wo.responseURL.indexOf("file:")===0)||setTimeout($o)},wo.onabort=function(){wo&&($n(new AxiosError("Request aborted",AxiosError.ECONNABORTED,_n,wo)),wo=null)},wo.onerror=function(){$n(new AxiosError("Network Error",AxiosError.ERR_NETWORK,_n,wo)),wo=null},wo.ontimeout=function(){let Bo=Hn.timeout?"timeout of "+Hn.timeout+"ms exceeded":"timeout exceeded";const Vo=Hn.transitional||transitionalDefaults;Hn.timeoutErrorMessage&&(Bo=Hn.timeoutErrorMessage),$n(new AxiosError(Bo,Vo.clarifyTimeoutError?AxiosError.ETIMEDOUT:AxiosError.ECONNABORTED,_n,wo)),wo=null},zn===void 0&&Zn.setContentType(null),"setRequestHeader"in wo&&utils$1.forEach(Zn.toJSON(),function(Bo,Vo){wo.setRequestHeader(Vo,Bo)}),utils$1.isUndefined(Hn.withCredentials)||(wo.withCredentials=!!Hn.withCredentials),qn&&qn!=="json"&&(wo.responseType=Hn.responseType),Jn&&([uo,bo]=progressEventReducer(Jn,!0),wo.addEventListener("progress",uo)),Yn&&wo.upload&&([io,mo]=progressEventReducer(Yn),wo.upload.addEventListener("progress",io),wo.upload.addEventListener("loadend",mo)),(Hn.cancelToken||Hn.signal)&&(to=xo=>{wo&&($n(!xo||xo.type?new CanceledError(null,_n,wo):xo),wo.abort(),wo=null)},Hn.cancelToken&&Hn.cancelToken.subscribe(to),Hn.signal&&(Hn.signal.aborted?to():Hn.signal.addEventListener("abort",to)));const Do=parseProtocol(Hn.url);if(Do&&platform.protocols.indexOf(Do)===-1){$n(new AxiosError("Unsupported protocol "+Do+":",AxiosError.ERR_BAD_REQUEST,_n));return}wo.send(zn||null)})},composeSignals=(_n,Ce)=>{let ke=new AbortController,$n;const Hn=function(Yn){if(!$n){$n=!0,Zn();const Jn=Yn instanceof Error?Yn:this.reason;ke.abort(Jn instanceof AxiosError?Jn:new CanceledError(Jn instanceof Error?Jn.message:Jn))}};let zn=Ce&&setTimeout(()=>{Hn(new AxiosError(`timeout ${Ce} of ms exceeded`,AxiosError.ETIMEDOUT))},Ce);const Zn=()=>{_n&&(zn&&clearTimeout(zn),zn=null,_n.forEach(Yn=>{Yn&&(Yn.removeEventListener?Yn.removeEventListener("abort",Hn):Yn.unsubscribe(Hn))}),_n=null)};_n.forEach(Yn=>Yn&&Yn.addEventListener&&Yn.addEventListener("abort",Hn));const{signal:qn}=ke;return qn.unsubscribe=Zn,[qn,()=>{zn&&clearTimeout(zn),zn=null}]},streamChunk=function*(_n,Ce){let ke=_n.byteLength;if(!Ce||ke{const zn=readBytes(_n,Ce,Hn);let Zn=0,qn,Yn=Jn=>{qn||(qn=!0,$n&&$n(Jn))};return new ReadableStream({async pull(Jn){try{const{done:to,value:io}=await zn.next();if(to){Yn(),Jn.close();return}let uo=io.byteLength;if(ke){let mo=Zn+=uo;ke(mo)}Jn.enqueue(new Uint8Array(io))}catch(to){throw Yn(to),to}},cancel(Jn){return Yn(Jn),zn.return()}},{highWaterMark:2})},isFetchSupported=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",isReadableStreamSupported=isFetchSupported&&typeof ReadableStream=="function",encodeText=isFetchSupported&&(typeof TextEncoder=="function"?(_n=>Ce=>_n.encode(Ce))(new TextEncoder):async _n=>new Uint8Array(await new Response(_n).arrayBuffer())),test=(_n,...Ce)=>{try{return!!_n(...Ce)}catch{return!1}},supportsRequestStream=isReadableStreamSupported&&test(()=>{let _n=!1;const Ce=new Request(platform.origin,{body:new ReadableStream,method:"POST",get duplex(){return _n=!0,"half"}}).headers.has("Content-Type");return _n&&!Ce}),DEFAULT_CHUNK_SIZE=64*1024,supportsResponseStream=isReadableStreamSupported&&test(()=>utils$1.isReadableStream(new Response("").body)),resolvers={stream:supportsResponseStream&&(_n=>_n.body)};isFetchSupported&&(_n=>{["text","arrayBuffer","blob","formData","stream"].forEach(Ce=>{!resolvers[Ce]&&(resolvers[Ce]=utils$1.isFunction(_n[Ce])?ke=>ke[Ce]():(ke,$n)=>{throw new AxiosError(`Response type '${Ce}' is not supported`,AxiosError.ERR_NOT_SUPPORT,$n)})})})(new Response);const getBodyLength=async _n=>{if(_n==null)return 0;if(utils$1.isBlob(_n))return _n.size;if(utils$1.isSpecCompliantForm(_n))return(await new Request(_n).arrayBuffer()).byteLength;if(utils$1.isArrayBufferView(_n)||utils$1.isArrayBuffer(_n))return _n.byteLength;if(utils$1.isURLSearchParams(_n)&&(_n=_n+""),utils$1.isString(_n))return(await encodeText(_n)).byteLength},resolveBodyLength=async(_n,Ce)=>{const ke=utils$1.toFiniteNumber(_n.getContentLength());return ke??getBodyLength(Ce)},fetchAdapter=isFetchSupported&&(async _n=>{let{url:Ce,method:ke,data:$n,signal:Hn,cancelToken:zn,timeout:Zn,onDownloadProgress:qn,onUploadProgress:Yn,responseType:Jn,headers:to,withCredentials:io="same-origin",fetchOptions:uo}=resolveConfig$1(_n);Jn=Jn?(Jn+"").toLowerCase():"text";let[mo,bo]=Hn||zn||Zn?composeSignals([Hn,zn],Zn):[],Oo,wo;const $o=()=>{!Oo&&setTimeout(()=>{mo&&mo.unsubscribe()}),Oo=!0};let Do;try{if(Yn&&supportsRequestStream&&ke!=="get"&&ke!=="head"&&(Do=await resolveBodyLength(to,$n))!==0){let Ko=new Request(Ce,{method:"POST",body:$n,duplex:"half"}),Mo;if(utils$1.isFormData($n)&&(Mo=Ko.headers.get("content-type"))&&to.setContentType(Mo),Ko.body){const[es,ls]=progressEventDecorator(Do,progressEventReducer(asyncDecorator(Yn)));$n=trackStream(Ko.body,DEFAULT_CHUNK_SIZE,es,ls,encodeText)}}utils$1.isString(io)||(io=io?"include":"omit"),wo=new Request(Ce,{...uo,signal:mo,method:ke.toUpperCase(),headers:to.normalize().toJSON(),body:$n,duplex:"half",credentials:io});let xo=await fetch(wo);const Bo=supportsResponseStream&&(Jn==="stream"||Jn==="response");if(supportsResponseStream&&(qn||Bo)){const Ko={};["status","statusText","headers"].forEach(ps=>{Ko[ps]=xo[ps]});const Mo=utils$1.toFiniteNumber(xo.headers.get("content-length")),[es,ls]=qn&&progressEventDecorator(Mo,progressEventReducer(asyncDecorator(qn),!0))||[];xo=new Response(trackStream(xo.body,DEFAULT_CHUNK_SIZE,es,()=>{ls&&ls(),Bo&&$o()},encodeText),Ko)}Jn=Jn||"text";let Vo=await resolvers[utils$1.findKey(resolvers,Jn)||"text"](xo,_n);return!Bo&&$o(),bo&&bo(),await new Promise((Ko,Mo)=>{settle(Ko,Mo,{data:Vo,headers:AxiosHeaders.from(xo.headers),status:xo.status,statusText:xo.statusText,config:_n,request:wo})})}catch(xo){throw $o(),xo&&xo.name==="TypeError"&&/fetch/i.test(xo.message)?Object.assign(new AxiosError("Network Error",AxiosError.ERR_NETWORK,_n,wo),{cause:xo.cause||xo}):AxiosError.from(xo,xo&&xo.code,_n,wo)}}),knownAdapters={http:httpAdapter,xhr:xhrAdapter,fetch:fetchAdapter};utils$1.forEach(knownAdapters,(_n,Ce)=>{if(_n){try{Object.defineProperty(_n,"name",{value:Ce})}catch{}Object.defineProperty(_n,"adapterName",{value:Ce})}});const renderReason=_n=>`- ${_n}`,isResolvedHandle=_n=>utils$1.isFunction(_n)||_n===null||_n===!1,adapters={getAdapter:_n=>{_n=utils$1.isArray(_n)?_n:[_n];const{length:Ce}=_n;let ke,$n;const Hn={};for(let zn=0;zn`adapter ${qn} `+(Yn===!1?"is not supported by the environment":"is not available in the build"));let Zn=Ce?zn.length>1?`since : +`+zn.map(renderReason).join(` +`):" "+renderReason(zn[0]):"as no adapter specified";throw new AxiosError("There is no suitable adapter to dispatch the request "+Zn,"ERR_NOT_SUPPORT")}return $n},adapters:knownAdapters};function throwIfCancellationRequested(_n){if(_n.cancelToken&&_n.cancelToken.throwIfRequested(),_n.signal&&_n.signal.aborted)throw new CanceledError(null,_n)}function dispatchRequest(_n){return throwIfCancellationRequested(_n),_n.headers=AxiosHeaders.from(_n.headers),_n.data=transformData.call(_n,_n.transformRequest),["post","put","patch"].indexOf(_n.method)!==-1&&_n.headers.setContentType("application/x-www-form-urlencoded",!1),adapters.getAdapter(_n.adapter||defaults$4.adapter)(_n).then(function($n){return throwIfCancellationRequested(_n),$n.data=transformData.call(_n,_n.transformResponse,$n),$n.headers=AxiosHeaders.from($n.headers),$n},function($n){return isCancel($n)||(throwIfCancellationRequested(_n),$n&&$n.response&&($n.response.data=transformData.call(_n,_n.transformResponse,$n.response),$n.response.headers=AxiosHeaders.from($n.response.headers))),Promise.reject($n)})}const VERSION="1.7.4",validators$1={};["object","boolean","number","function","string","symbol"].forEach((_n,Ce)=>{validators$1[_n]=function($n){return typeof $n===_n||"a"+(Ce<1?"n ":" ")+_n}});const deprecatedWarnings={};validators$1.transitional=function(Ce,ke,$n){function Hn(zn,Zn){return"[Axios v"+VERSION+"] Transitional option '"+zn+"'"+Zn+($n?". "+$n:"")}return(zn,Zn,qn)=>{if(Ce===!1)throw new AxiosError(Hn(Zn," has been removed"+(ke?" in "+ke:"")),AxiosError.ERR_DEPRECATED);return ke&&!deprecatedWarnings[Zn]&&(deprecatedWarnings[Zn]=!0,console.warn(Hn(Zn," has been deprecated since v"+ke+" and will be removed in the near future"))),Ce?Ce(zn,Zn,qn):!0}};function assertOptions(_n,Ce,ke){if(typeof _n!="object")throw new AxiosError("options must be an object",AxiosError.ERR_BAD_OPTION_VALUE);const $n=Object.keys(_n);let Hn=$n.length;for(;Hn-- >0;){const zn=$n[Hn],Zn=Ce[zn];if(Zn){const qn=_n[zn],Yn=qn===void 0||Zn(qn,zn,_n);if(Yn!==!0)throw new AxiosError("option "+zn+" must be "+Yn,AxiosError.ERR_BAD_OPTION_VALUE);continue}if(ke!==!0)throw new AxiosError("Unknown option "+zn,AxiosError.ERR_BAD_OPTION)}}const validator={assertOptions,validators:validators$1},validators=validator.validators;class Axios{constructor(Ce){this.defaults=Ce,this.interceptors={request:new InterceptorManager,response:new InterceptorManager}}async request(Ce,ke){try{return await this._request(Ce,ke)}catch($n){if($n instanceof Error){let Hn;Error.captureStackTrace?Error.captureStackTrace(Hn={}):Hn=new Error;const zn=Hn.stack?Hn.stack.replace(/^.+\n/,""):"";try{$n.stack?zn&&!String($n.stack).endsWith(zn.replace(/^.+\n.+\n/,""))&&($n.stack+=` +`+zn):$n.stack=zn}catch{}}throw $n}}_request(Ce,ke){typeof Ce=="string"?(ke=ke||{},ke.url=Ce):ke=Ce||{},ke=mergeConfig(this.defaults,ke);const{transitional:$n,paramsSerializer:Hn,headers:zn}=ke;$n!==void 0&&validator.assertOptions($n,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),Hn!=null&&(utils$1.isFunction(Hn)?ke.paramsSerializer={serialize:Hn}:validator.assertOptions(Hn,{encode:validators.function,serialize:validators.function},!0)),ke.method=(ke.method||this.defaults.method||"get").toLowerCase();let Zn=zn&&utils$1.merge(zn.common,zn[ke.method]);zn&&utils$1.forEach(["delete","get","head","post","put","patch","common"],bo=>{delete zn[bo]}),ke.headers=AxiosHeaders.concat(Zn,zn);const qn=[];let Yn=!0;this.interceptors.request.forEach(function(Oo){typeof Oo.runWhen=="function"&&Oo.runWhen(ke)===!1||(Yn=Yn&&Oo.synchronous,qn.unshift(Oo.fulfilled,Oo.rejected))});const Jn=[];this.interceptors.response.forEach(function(Oo){Jn.push(Oo.fulfilled,Oo.rejected)});let to,io=0,uo;if(!Yn){const bo=[dispatchRequest.bind(this),void 0];for(bo.unshift.apply(bo,qn),bo.push.apply(bo,Jn),uo=bo.length,to=Promise.resolve(ke);io{if(!$n._listeners)return;let zn=$n._listeners.length;for(;zn-- >0;)$n._listeners[zn](Hn);$n._listeners=null}),this.promise.then=Hn=>{let zn;const Zn=new Promise(qn=>{$n.subscribe(qn),zn=qn}).then(Hn);return Zn.cancel=function(){$n.unsubscribe(zn)},Zn},Ce(function(zn,Zn,qn){$n.reason||($n.reason=new CanceledError(zn,Zn,qn),ke($n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(Ce){if(this.reason){Ce(this.reason);return}this._listeners?this._listeners.push(Ce):this._listeners=[Ce]}unsubscribe(Ce){if(!this._listeners)return;const ke=this._listeners.indexOf(Ce);ke!==-1&&this._listeners.splice(ke,1)}static source(){let Ce;return{token:new CancelToken(function(Hn){Ce=Hn}),cancel:Ce}}}function spread(_n){return function(ke){return _n.apply(null,ke)}}function isAxiosError(_n){return utils$1.isObject(_n)&&_n.isAxiosError===!0}const HttpStatusCode={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode).forEach(([_n,Ce])=>{HttpStatusCode[Ce]=_n});function createInstance(_n){const Ce=new Axios(_n),ke=bind$1(Axios.prototype.request,Ce);return utils$1.extend(ke,Axios.prototype,Ce,{allOwnKeys:!0}),utils$1.extend(ke,Ce,null,{allOwnKeys:!0}),ke.create=function(Hn){return createInstance(mergeConfig(_n,Hn))},ke}const axios$1=createInstance(defaults$4);axios$1.Axios=Axios;axios$1.CanceledError=CanceledError;axios$1.CancelToken=CancelToken;axios$1.isCancel=isCancel;axios$1.VERSION=VERSION;axios$1.toFormData=toFormData;axios$1.AxiosError=AxiosError;axios$1.Cancel=axios$1.CanceledError;axios$1.all=function(Ce){return Promise.all(Ce)};axios$1.spread=spread;axios$1.isAxiosError=isAxiosError;axios$1.mergeConfig=mergeConfig;axios$1.AxiosHeaders=AxiosHeaders;axios$1.formToJSON=_n=>formDataToJSON(utils$1.isHTMLForm(_n)?new FormData(_n):_n);axios$1.getAdapter=adapters.getAdapter;axios$1.HttpStatusCode=HttpStatusCode;axios$1.default=axios$1;function loadHtmxFormsBehaviour(){document.querySelectorAll(".form").forEach(_n=>{initHtmxForm(_n)})}function initHtmxForm(_n){_n.addEventListener("htmx:responseError",ke=>{_n.querySelector(".form-errors").innerHTML=ke.detail.xhr.response});const Ce=_n.querySelector("form");Ce.getAttribute("hx-redirect")&&_n.addEventListener("htmx:afterOnLoad",ke=>{if(ke.detail.successful)return window.location.href=Ce.getAttribute("hx-redirect")})}loadHtmxFormsBehaviour();window.axios=axios$1;const axiosInstance=axios$1;window.axios.defaults.headers.common["X-Requested-With"]="XMLHttpRequest";window.axios.interceptors.request.use(function(_n){let Ce;Ce=document.querySelectorAll(".btn-spinner");for(let ke=0;ke_n;function assign(_n,Ce){for(const ke in Ce)_n[ke]=Ce[ke];return _n}function run(_n){return _n()}function blank_object(){return Object.create(null)}function run_all(_n){_n.forEach(run)}function is_function(_n){return typeof _n=="function"}function safe_not_equal(_n,Ce){return _n!=_n?Ce==Ce:_n!==Ce||_n&&typeof _n=="object"||typeof _n=="function"}let src_url_equal_anchor;function src_url_equal(_n,Ce){return _n===Ce?!0:(src_url_equal_anchor||(src_url_equal_anchor=document.createElement("a")),src_url_equal_anchor.href=Ce,_n===src_url_equal_anchor.href)}function is_empty(_n){return Object.keys(_n).length===0}function create_slot(_n,Ce,ke,$n){if(_n){const Hn=get_slot_context(_n,Ce,ke,$n);return _n[0](Hn)}}function get_slot_context(_n,Ce,ke,$n){return _n[1]&&$n?assign(ke.ctx.slice(),_n[1]($n(Ce))):ke.ctx}function get_slot_changes(_n,Ce,ke,$n){if(_n[2]&&$n){const Hn=_n[2]($n(ke));if(Ce.dirty===void 0)return Hn;if(typeof Hn=="object"){const zn=[],Zn=Math.max(Ce.dirty.length,Hn.length);for(let qn=0;qn32){const Ce=[],ke=_n.ctx.length/32;for(let $n=0;$nwindow.performance.now():()=>Date.now(),raf=is_client?_n=>requestAnimationFrame(_n):noop;const tasks=new Set;function run_tasks(_n){tasks.forEach(Ce=>{Ce.c(_n)||(tasks.delete(Ce),Ce.f())}),tasks.size!==0&&raf(run_tasks)}function loop(_n){let Ce;return tasks.size===0&&raf(run_tasks),{promise:new Promise(ke=>{tasks.add(Ce={c:_n,f:ke})}),abort(){tasks.delete(Ce)}}}const globals=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function append(_n,Ce){_n.appendChild(Ce)}function get_root_for_style(_n){if(!_n)return document;const Ce=_n.getRootNode?_n.getRootNode():_n.ownerDocument;return Ce&&Ce.host?Ce:_n.ownerDocument}function append_empty_stylesheet(_n){const Ce=element("style");return Ce.textContent="/* empty */",append_stylesheet(get_root_for_style(_n),Ce),Ce.sheet}function append_stylesheet(_n,Ce){return append(_n.head||_n,Ce),Ce.sheet}function insert$1(_n,Ce,ke){_n.insertBefore(Ce,ke||null)}function detach(_n){_n.parentNode&&_n.parentNode.removeChild(_n)}function destroy_each(_n,Ce){for(let ke=0;ke<_n.length;ke+=1)_n[ke]&&_n[ke].d(Ce)}function element(_n){return document.createElement(_n)}function svg_element(_n){return document.createElementNS("http://www.w3.org/2000/svg",_n)}function text(_n){return document.createTextNode(_n)}function space$3(){return text(" ")}function empty$1(){return text("")}function listen(_n,Ce,ke,$n){return _n.addEventListener(Ce,ke,$n),()=>_n.removeEventListener(Ce,ke,$n)}function prevent_default(_n){return function(Ce){return Ce.preventDefault(),_n.call(this,Ce)}}function attr(_n,Ce,ke){ke==null?_n.removeAttribute(Ce):_n.getAttribute(Ce)!==ke&&_n.setAttribute(Ce,ke)}function set_custom_element_data(_n,Ce,ke){const $n=Ce.toLowerCase();$n in _n?_n[$n]=typeof _n[$n]=="boolean"&&ke===""?!0:ke:Ce in _n?_n[Ce]=typeof _n[Ce]=="boolean"&&ke===""?!0:ke:attr(_n,Ce,ke)}function init_binding_group(_n){let Ce;return{p(...ke){Ce=ke,Ce.forEach($n=>_n.push($n))},r(){Ce.forEach(ke=>_n.splice(_n.indexOf(ke),1))}}}function to_number(_n){return _n===""?null:+_n}function children(_n){return Array.from(_n.childNodes)}function set_data(_n,Ce){Ce=""+Ce,_n.data!==Ce&&(_n.data=Ce)}function set_input_value(_n,Ce){_n.value=Ce??""}function set_style(_n,Ce,ke,$n){ke==null?_n.style.removeProperty(Ce):_n.style.setProperty(Ce,ke,$n?"important":"")}function select_option(_n,Ce,ke){for(let $n=0;$n<_n.options.length;$n+=1){const Hn=_n.options[$n];if(Hn.__value===Ce){Hn.selected=!0;return}}(!ke||Ce!==void 0)&&(_n.selectedIndex=-1)}function select_value(_n){const Ce=_n.querySelector(":checked");return Ce&&Ce.__value}function toggle_class(_n,Ce,ke){_n.classList.toggle(Ce,!!ke)}function custom_event(_n,Ce,{bubbles:ke=!1,cancelable:$n=!1}={}){return new CustomEvent(_n,{detail:Ce,bubbles:ke,cancelable:$n})}function construct_svelte_component(_n,Ce){return new _n(Ce)}const managed_styles=new Map;let active=0;function hash$1(_n){let Ce=5381,ke=_n.length;for(;ke--;)Ce=(Ce<<5)-Ce^_n.charCodeAt(ke);return Ce>>>0}function create_style_information(_n,Ce){const ke={stylesheet:append_empty_stylesheet(Ce),rules:{}};return managed_styles.set(_n,ke),ke}function create_rule(_n,Ce,ke,$n,Hn,zn,Zn,qn=0){const Yn=16.666/$n;let Jn=`{ +`;for(let wo=0;wo<=1;wo+=Yn){const $o=Ce+(ke-Ce)*zn(wo);Jn+=wo*100+`%{${Zn($o,1-$o)}} +`}const to=Jn+`100% {${Zn(ke,1-ke)}} +}`,io=`__svelte_${hash$1(to)}_${qn}`,uo=get_root_for_style(_n),{stylesheet:mo,rules:bo}=managed_styles.get(uo)||create_style_information(uo,_n);bo[io]||(bo[io]=!0,mo.insertRule(`@keyframes ${io} ${to}`,mo.cssRules.length));const Oo=_n.style.animation||"";return _n.style.animation=`${Oo?`${Oo}, `:""}${io} ${$n}ms linear ${Hn}ms 1 both`,active+=1,io}function delete_rule(_n,Ce){const ke=(_n.style.animation||"").split(", "),$n=ke.filter(Ce?zn=>zn.indexOf(Ce)<0:zn=>zn.indexOf("__svelte")===-1),Hn=ke.length-$n.length;Hn&&(_n.style.animation=$n.join(", "),active-=Hn,active||clear_rules())}function clear_rules(){raf(()=>{active||(managed_styles.forEach(_n=>{const{ownerNode:Ce}=_n.stylesheet;Ce&&detach(Ce)}),managed_styles.clear())})}let current_component;function set_current_component(_n){current_component=_n}function get_current_component(){if(!current_component)throw new Error("Function called outside component initialization");return current_component}function onMount(_n){get_current_component().$$.on_mount.push(_n)}function afterUpdate(_n){get_current_component().$$.after_update.push(_n)}function onDestroy(_n){get_current_component().$$.on_destroy.push(_n)}function createEventDispatcher(){const _n=get_current_component();return(Ce,ke,{cancelable:$n=!1}={})=>{const Hn=_n.$$.callbacks[Ce];if(Hn){const zn=custom_event(Ce,ke,{cancelable:$n});return Hn.slice().forEach(Zn=>{Zn.call(_n,zn)}),!zn.defaultPrevented}return!0}}function setContext(_n,Ce){return get_current_component().$$.context.set(_n,Ce),Ce}function getContext$1(_n){return get_current_component().$$.context.get(_n)}function bubble(_n,Ce){const ke=_n.$$.callbacks[Ce.type];ke&&ke.slice().forEach($n=>$n.call(this,Ce))}const dirty_components=[],binding_callbacks=[];let render_callbacks=[];const flush_callbacks=[],resolved_promise=Promise.resolve();let update_scheduled=!1;function schedule_update(){update_scheduled||(update_scheduled=!0,resolved_promise.then(flush))}function add_render_callback(_n){render_callbacks.push(_n)}function add_flush_callback(_n){flush_callbacks.push(_n)}const seen_callbacks=new Set;let flushidx=0;function flush(){if(flushidx!==0)return;const _n=current_component;do{try{for(;flushidx_n.indexOf($n)===-1?Ce.push($n):ke.push($n)),ke.forEach($n=>$n()),render_callbacks=Ce}let promise;function wait(){return promise||(promise=Promise.resolve(),promise.then(()=>{promise=null})),promise}function dispatch(_n,Ce,ke){_n.dispatchEvent(custom_event(`${Ce?"intro":"outro"}${ke}`))}const outroing=new Set;let outros;function group_outros(){outros={r:0,c:[],p:outros}}function check_outros(){outros.r||run_all(outros.c),outros=outros.p}function transition_in(_n,Ce){_n&&_n.i&&(outroing.delete(_n),_n.i(Ce))}function transition_out(_n,Ce,ke,$n){if(_n&&_n.o){if(outroing.has(_n))return;outroing.add(_n),outros.c.push(()=>{outroing.delete(_n),$n&&(ke&&_n.d(1),$n())}),_n.o(Ce)}else $n&&$n()}const null_transition={duration:0};function create_bidirectional_transition(_n,Ce,ke,$n){let zn=Ce(_n,ke,{direction:"both"}),Zn=$n?0:1,qn=null,Yn=null,Jn=null,to;function io(){Jn&&delete_rule(_n,Jn)}function uo(bo,Oo){const wo=bo.b-Zn;return Oo*=Math.abs(wo),{a:Zn,b:bo.b,d:wo,duration:Oo,start:bo.start,end:bo.start+Oo,group:bo.group}}function mo(bo){const{delay:Oo=0,duration:wo=300,easing:$o=identity,tick:Do=noop,css:xo}=zn||null_transition,Bo={start:now()+Oo,b:bo};bo||(Bo.group=outros,outros.r+=1),"inert"in _n&&(bo?to!==void 0&&(_n.inert=to):(to=_n.inert,_n.inert=!0)),qn||Yn?Yn=Bo:(xo&&(io(),Jn=create_rule(_n,Zn,bo,wo,Oo,$o,xo)),bo&&Do(0,1),qn=uo(Bo,wo),add_render_callback(()=>dispatch(_n,bo,"start")),loop(Vo=>{if(Yn&&Vo>Yn.start&&(qn=uo(Yn,wo),Yn=null,dispatch(_n,qn.b,"start"),xo&&(io(),Jn=create_rule(_n,Zn,qn.b,qn.duration,0,$o,zn.css))),qn){if(Vo>=qn.end)Do(Zn=qn.b,1-Zn),dispatch(_n,qn.b,"end"),Yn||(qn.b?io():--qn.group.r||run_all(qn.group.c)),qn=null;else if(Vo>=qn.start){const Ko=Vo-qn.start;Zn=qn.a+qn.d*$o(Ko/qn.duration),Do(Zn,1-Zn)}}return!!(qn||Yn)}))}return{run(bo){is_function(zn)?wait().then(()=>{zn=zn({direction:bo?"in":"out"}),mo(bo)}):mo(bo)},end(){io(),qn=Yn=null}}}function ensure_array_like(_n){return(_n==null?void 0:_n.length)!==void 0?_n:Array.from(_n)}function destroy_block(_n,Ce){_n.d(1),Ce.delete(_n.key)}function outro_and_destroy_block(_n,Ce){transition_out(_n,1,1,()=>{Ce.delete(_n.key)})}function update_keyed_each(_n,Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io){let uo=_n.length,mo=zn.length,bo=uo;const Oo={};for(;bo--;)Oo[_n[bo].key]=bo;const wo=[],$o=new Map,Do=new Map,xo=[];for(bo=mo;bo--;){const Mo=io(Hn,zn,bo),es=ke(Mo);let ls=Zn.get(es);ls?xo.push(()=>ls.p(Mo,Ce)):(ls=Jn(es,Mo),ls.c()),$o.set(es,wo[bo]=ls),es in Oo&&Do.set(es,Math.abs(bo-Oo[es]))}const Bo=new Set,Vo=new Set;function Ko(Mo){transition_in(Mo,1),Mo.m(qn,to),Zn.set(Mo.key,Mo),to=Mo.first,mo--}for(;uo&&mo;){const Mo=wo[mo-1],es=_n[uo-1],ls=Mo.key,ps=es.key;Mo===es?(to=Mo.first,uo--,mo--):$o.has(ps)?!Zn.has(ls)||Bo.has(ls)?Ko(Mo):Vo.has(ps)?uo--:Do.get(ls)>Do.get(ps)?(Vo.add(ls),Ko(Mo)):(Bo.add(ps),uo--):(Yn(es,Zn),uo--)}for(;uo--;){const Mo=_n[uo];$o.has(Mo.key)||Yn(Mo,Zn)}for(;mo;)Ko(wo[mo-1]);return run_all(xo),wo}function get_spread_update(_n,Ce){const ke={},$n={},Hn={$$scope:1};let zn=_n.length;for(;zn--;){const Zn=_n[zn],qn=Ce[zn];if(qn){for(const Yn in Zn)Yn in qn||($n[Yn]=1);for(const Yn in qn)Hn[Yn]||(ke[Yn]=qn[Yn],Hn[Yn]=1);_n[zn]=qn}else for(const Yn in Zn)Hn[Yn]=1}for(const Zn in $n)Zn in ke||(ke[Zn]=void 0);return ke}function get_spread_object(_n){return typeof _n=="object"&&_n!==null?_n:{}}function bind(_n,Ce,ke){const $n=_n.$$.props[Ce];$n!==void 0&&(_n.$$.bound[$n]=ke,ke(_n.$$.ctx[$n]))}function create_component(_n){_n&&_n.c()}function mount_component(_n,Ce,ke){const{fragment:$n,after_update:Hn}=_n.$$;$n&&$n.m(Ce,ke),add_render_callback(()=>{const zn=_n.$$.on_mount.map(run).filter(is_function);_n.$$.on_destroy?_n.$$.on_destroy.push(...zn):run_all(zn),_n.$$.on_mount=[]}),Hn.forEach(add_render_callback)}function destroy_component(_n,Ce){const ke=_n.$$;ke.fragment!==null&&(flush_render_callbacks(ke.after_update),run_all(ke.on_destroy),ke.fragment&&ke.fragment.d(Ce),ke.on_destroy=ke.fragment=null,ke.ctx=[])}function make_dirty(_n,Ce){_n.$$.dirty[0]===-1&&(dirty_components.push(_n),schedule_update(),_n.$$.dirty.fill(0)),_n.$$.dirty[Ce/31|0]|=1<{const bo=mo.length?mo[0]:uo;return Jn.ctx&&Hn(Jn.ctx[io],Jn.ctx[io]=bo)&&(!Jn.skip_bound&&Jn.bound[io]&&Jn.bound[io](bo),to&&make_dirty(_n,io)),uo}):[],Jn.update(),to=!0,run_all(Jn.before_update),Jn.fragment=$n?$n(Jn.ctx):!1,Ce.target){if(Ce.hydrate){const io=children(Ce.target);Jn.fragment&&Jn.fragment.l(io),io.forEach(detach)}else Jn.fragment&&Jn.fragment.c();Ce.intro&&transition_in(_n.$$.fragment),mount_component(_n,Ce.target,Ce.anchor),flush()}set_current_component(Yn)}class SvelteComponent{constructor(){LY(this,"$$");LY(this,"$$set")}$destroy(){destroy_component(this,1),this.$destroy=noop}$on(Ce,ke){if(!is_function(ke))return noop;const $n=this.$$.callbacks[Ce]||(this.$$.callbacks[Ce]=[]);return $n.push(ke),()=>{const Hn=$n.indexOf(ke);Hn!==-1&&$n.splice(Hn,1)}}$set(Ce){this.$$set&&!is_empty(Ce)&&(this.$$.skip_bound=!0,this.$$set(Ce),this.$$.skip_bound=!1)}}const PUBLIC_VERSION="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(PUBLIC_VERSION);function create_if_block$W(_n){let Ce,ke,$n,Hn,zn;return{c(){Ce=element("div"),ke=element("div"),ke.textContent="Submission Errors",$n=space$3(),Hn=element("div"),zn=text(_n[0]),attr(ke,"class","title"),attr(Hn,"class","content"),attr(Ce,"class","notice notice-error"),attr(Ce,"role","alert")},m(Zn,qn){insert$1(Zn,Ce,qn),append(Ce,ke),append(Ce,$n),append(Ce,Hn),append(Hn,zn)},p(Zn,qn){qn&1&&set_data(zn,Zn[0])},d(Zn){Zn&&detach(Ce)}}}function create_fragment$1r(_n){let Ce,ke=_n[0]&&create_if_block$W(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,[Hn]){$n[0]?ke?ke.p($n,Hn):(ke=create_if_block$W($n),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},i:noop,o:noop,d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function instance$1r(_n,Ce,ke){let{message:$n=""}=Ce;return _n.$$set=Hn=>{"message"in Hn&&ke(0,$n=Hn.message)},[$n]}class ErrorAlert extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1r,create_fragment$1r,safe_not_equal,{message:0})}}function create_fragment$1q(_n){let Ce,ke,$n,Hn;return{c(){Ce=element("button"),ke=element("span"),$n=space$3(),Hn=text(_n[0]),attr(ke,"class","spinner-border spinner-border-sm"),attr(ke,"role","status"),attr(ke,"aria-hidden","true"),attr(Ce,"type","submit"),attr(Ce,"class","button secondary btn-spinner"),Ce.disabled=_n[1]},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,ke),append(Ce,$n),append(Ce,Hn)},p(zn,[Zn]){Zn&1&&set_data(Hn,zn[0]),Zn&2&&(Ce.disabled=zn[1])},i:noop,o:noop,d(zn){zn&&detach(Ce)}}}function instance$1q(_n,Ce,ke){let{label:$n=""}=Ce,{disabled:Hn=!1}=Ce;return _n.$$set=zn=>{"label"in zn&&ke(0,$n=zn.label),"disabled"in zn&&ke(1,Hn=zn.disabled)},[$n,Hn]}class SpinnerButton extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1q,create_fragment$1q,safe_not_equal,{label:0,disabled:1})}}function create_fragment$1p(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo;return ke=new ErrorAlert({props:{message:_n[2]}}),wo=new SpinnerButton({props:{label:"Register"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),Hn=element("form"),zn=element("div"),Zn=element("label"),Zn.textContent="Name",qn=space$3(),Yn=element("input"),Jn=space$3(),to=element("div"),io=element("label"),io.textContent="Email address",uo=space$3(),mo=element("input"),bo=space$3(),Oo=element("div"),create_component(wo.$$.fragment),attr(Zn,"for","name"),attr(Zn,"class","form-label"),attr(Yn,"type","text"),attr(Yn,"class","form-control"),attr(Yn,"id","name"),attr(zn,"class","mb-3"),attr(io,"for","email"),attr(io,"class","form-label"),attr(mo,"type","email"),attr(mo,"class","form-control"),attr(mo,"id","email"),attr(to,"class","mb-3"),attr(Oo,"class","text-center mt-5 d-block"),attr(Ce,"class","wrapper-tiny")},m(Bo,Vo){insert$1(Bo,Ce,Vo),mount_component(ke,Ce,null),append(Ce,$n),append(Ce,Hn),append(Hn,zn),append(zn,Zn),append(zn,qn),append(zn,Yn),set_input_value(Yn,_n[1]),append(Hn,Jn),append(Hn,to),append(to,io),append(to,uo),append(to,mo),set_input_value(mo,_n[0]),append(Hn,bo),append(Hn,Oo),mount_component(wo,Oo,null),$o=!0,Do||(xo=[listen(Yn,"input",_n[4]),listen(mo,"input",_n[5]),listen(Hn,"submit",_n[3])],Do=!0)},p(Bo,[Vo]){const Ko={};Vo&4&&(Ko.message=Bo[2]),ke.$set(Ko),Vo&2&&Yn.value!==Bo[1]&&set_input_value(Yn,Bo[1]),Vo&1&&mo.value!==Bo[0]&&set_input_value(mo,Bo[0])},i(Bo){$o||(transition_in(ke.$$.fragment,Bo),transition_in(wo.$$.fragment,Bo),$o=!0)},o(Bo){transition_out(ke.$$.fragment,Bo),transition_out(wo.$$.fragment,Bo),$o=!1},d(Bo){Bo&&detach(Ce),destroy_component(ke),destroy_component(wo),Do=!1,run_all(xo)}}}function instance$1p(_n,Ce,ke){const $n=getContext$1("channel");let Hn="",{email:zn=""}=Ce,Zn="";function qn(to){to.preventDefault(),ke(2,Zn=""),axios.post($n.lucentUrl+"/register",{name:Hn,email:zn}).then(()=>{window.location=$n.lucentUrl+"/login"}).catch(io=>{var uo;ke(2,Zn=(uo=io.response)==null?void 0:uo.data.error),console.log({errorMessage:Zn})})}function Yn(){Hn=this.value,ke(1,Hn)}function Jn(){zn=this.value,ke(0,zn)}return _n.$$set=to=>{"email"in to&&ke(0,zn=to.email)},[zn,Hn,Zn,qn,Yn,Jn]}class Register extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1p,create_fragment$1p,safe_not_equal,{email:0})}}function create_else_block$n(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io;return Yn=new SpinnerButton({props:{label:"Login"}}),{c(){Ce=element("form"),ke=element("div"),$n=element("label"),$n.textContent="Email address",Hn=space$3(),zn=element("input"),Zn=space$3(),qn=element("div"),create_component(Yn.$$.fragment),attr($n,"for","emailaddress"),attr($n,"class","form-label"),attr(zn,"type","email"),attr(zn,"class","form-control"),attr(zn,"id","emailaddress"),zn.required=!0,attr(ke,"class","mb-3"),attr(qn,"class","text-center mt-5 d-block")},m(uo,mo){insert$1(uo,Ce,mo),append(Ce,ke),append(ke,$n),append(ke,Hn),append(ke,zn),set_input_value(zn,_n[0]),append(Ce,Zn),append(Ce,qn),mount_component(Yn,qn,null),Jn=!0,to||(io=[listen(zn,"input",_n[3]),listen(Ce,"submit",_n[2])],to=!0)},p(uo,mo){mo&1&&zn.value!==uo[0]&&set_input_value(zn,uo[0])},i(uo){Jn||(transition_in(Yn.$$.fragment,uo),Jn=!0)},o(uo){transition_out(Yn.$$.fragment,uo),Jn=!1},d(uo){uo&&detach(Ce),destroy_component(Yn),to=!1,run_all(io)}}}function create_if_block$V(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[1]),attr(Ce,"class","alert alert-info"),attr(Ce,"role","alert")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&2&&set_data(ke,$n[1])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function create_fragment$1o(_n){let Ce,ke,$n,Hn;const zn=[create_if_block$V,create_else_block$n],Zn=[];function qn(Yn,Jn){return Yn[1]?0:1}return ke=qn(_n),$n=Zn[ke]=zn[ke](_n),{c(){Ce=element("div"),$n.c(),attr(Ce,"class","wrapper-tiny")},m(Yn,Jn){insert$1(Yn,Ce,Jn),Zn[ke].m(Ce,null),Hn=!0},p(Yn,[Jn]){let to=ke;ke=qn(Yn),ke===to?Zn[ke].p(Yn,Jn):(group_outros(),transition_out(Zn[to],1,1,()=>{Zn[to]=null}),check_outros(),$n=Zn[ke],$n?$n.p(Yn,Jn):($n=Zn[ke]=zn[ke](Yn),$n.c()),transition_in($n,1),$n.m(Ce,null))},i(Yn){Hn||(transition_in($n),Hn=!0)},o(Yn){transition_out($n),Hn=!1},d(Yn){Yn&&detach(Ce),Zn[ke].d()}}}function instance$1o(_n,Ce,ke){const $n=getContext$1("channel");let Hn="",zn="";function Zn(Yn){Yn.preventDefault(),axios.post($n.lucentUrl+"/login",{email:Hn}).then(Jn=>{console.log(Jn),ke(1,zn="You will receive an email with a login link")}).catch(Jn=>{})}function qn(){Hn=this.value,ke(0,Hn)}return[Hn,zn,Zn,qn]}class Login extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1o,create_fragment$1o,safe_not_equal,{})}}function cubicOut(_n){const Ce=_n-1;return Ce*Ce*Ce+1}function fly(_n,{delay:Ce=0,duration:ke=400,easing:$n=cubicOut,x:Hn=0,y:zn=0,opacity:Zn=0}={}){const qn=getComputedStyle(_n),Yn=+qn.opacity,Jn=qn.transform==="none"?"":qn.transform,to=Yn*(1-Zn),[io,uo]=split_css_unit(Hn),[mo,bo]=split_css_unit(zn);return{delay:Ce,duration:ke,easing:$n,css:(Oo,wo)=>` + transform: ${Jn} translate(${(1-Oo)*io}${uo}, ${(1-Oo)*mo}${bo}); + opacity: ${Yn-to*wo}`}}function create_if_block$U(_n){let Ce,ke,$n,Hn,zn,Zn,qn;return{c(){Ce=element("div"),ke=element("div"),ke.textContent="Success",$n=space$3(),Hn=element("div"),zn=text(_n[1]),attr(ke,"class","title"),attr(Hn,"class","content"),attr(Ce,"class","notice notice-success"),attr(Ce,"role","alert")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,ke),append(Ce,$n),append(Ce,Hn),append(Hn,zn),qn=!0},p(Yn,Jn){(!qn||Jn&2)&&set_data(zn,Yn[1])},i(Yn){qn||(Yn&&add_render_callback(()=>{qn&&(Zn||(Zn=create_bidirectional_transition(Ce,fly,{duration:500},!0)),Zn.run(1))}),qn=!0)},o(Yn){Yn&&(Zn||(Zn=create_bidirectional_transition(Ce,fly,{duration:500},!1)),Zn.run(0)),qn=!1},d(Yn){Yn&&detach(Ce),Yn&&Zn&&Zn.end()}}}function create_fragment$1n(_n){let Ce,ke=_n[0]&&create_if_block$U(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,[Hn]){$n[0]?ke?(ke.p($n,Hn),Hn&1&&transition_in(ke,1)):(ke=create_if_block$U($n),ke.c(),transition_in(ke,1),ke.m(Ce.parentNode,Ce)):ke&&(group_outros(),transition_out(ke,1,1,()=>{ke=null}),check_outros())},i($n){transition_in(ke)},o($n){transition_out(ke)},d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function instance$1n(_n,Ce,ke){let $n,Hn;function zn(Zn="Saved"){ke(1,$n=Zn),ke(0,Hn=!0),setTimeout(function(){ke(0,Hn=!1)},2e3)}return ke(1,$n="Saved"),ke(0,Hn=!1),[Hn,$n,zn]}class SuccessAlert extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1n,create_fragment$1n,safe_not_equal,{show:2})}get show(){return this.$$.ctx[2]}}function create_fragment$1m(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo={};return Ce=new SuccessAlert({props:Oo}),_n[4](Ce),io=new SpinnerButton({props:{label:"Enter"}}),{c(){create_component(Ce.$$.fragment),ke=space$3(),$n=element("div"),Hn=element("form"),zn=element("div"),Zn=element("h3"),qn=text("Login as "),Yn=text(_n[0]),Jn=space$3(),to=element("div"),create_component(io.$$.fragment),attr(zn,"class","mb-3 text-center"),attr(to,"class","text-center mt-5 d-block"),attr($n,"class","wrapper-tiny")},m(wo,$o){mount_component(Ce,wo,$o),insert$1(wo,ke,$o),insert$1(wo,$n,$o),append($n,Hn),append(Hn,zn),append(zn,Zn),append(Zn,qn),append(Zn,Yn),append(Hn,Jn),append(Hn,to),mount_component(io,to,null),uo=!0,mo||(bo=listen(Hn,"submit",_n[2]),mo=!0)},p(wo,[$o]){const Do={};Ce.$set(Do),(!uo||$o&1)&&set_data(Yn,wo[0])},i(wo){uo||(transition_in(Ce.$$.fragment,wo),transition_in(io.$$.fragment,wo),uo=!0)},o(wo){transition_out(Ce.$$.fragment,wo),transition_out(io.$$.fragment,wo),uo=!1},d(wo){wo&&(detach(ke),detach($n)),_n[4](null),destroy_component(Ce,wo),destroy_component(io),mo=!1,bo()}}}function instance$1m(_n,Ce,ke){const $n=getContext$1("channel");let{email:Hn}=Ce,{token:zn}=Ce,Zn;function qn(Jn){Jn.preventDefault(),axios.post($n.lucentUrl+"/verify",{email:Hn,token:zn}).then(to=>{window.location=$n.lucentUrl}).catch(to=>{})}function Yn(Jn){binding_callbacks[Jn?"unshift":"push"](()=>{Zn=Jn,ke(1,Zn)})}return _n.$$set=Jn=>{"email"in Jn&&ke(0,Hn=Jn.email),"token"in Jn&&ke(3,zn=Jn.token)},[Hn,Zn,qn,zn,Yn]}class Verify extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1m,create_fragment$1m,safe_not_equal,{email:0,token:3})}}function create_fragment$1l(_n){let Ce,ke,$n;return{c(){Ce=element("div"),ke=element("div"),$n=text(_n[2]),attr(ke,"class","avatar__letters"),attr(Ce,"class","avatar"),attr(Ce,"title",_n[0]),set_style(Ce,"background-color",_n[3][_n[4]]),set_style(Ce,"height",_n[1]+"px"),set_style(Ce,"width",_n[1]+"px"),set_style(Ce,"font-size",_n[1]/2+"px")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,ke),append(ke,$n)},p(Hn,[zn]){zn&4&&set_data($n,Hn[2]),zn&1&&attr(Ce,"title",Hn[0]),zn&2&&set_style(Ce,"height",Hn[1]+"px"),zn&2&&set_style(Ce,"width",Hn[1]+"px"),zn&2&&set_style(Ce,"font-size",Hn[1]/2+"px")},i:noop,o:noop,d(Hn){Hn&&detach(Ce)}}}function instance$1l(_n,Ce,ke){let{name:$n}=Ce,{side:Hn=48}=Ce;const zn=["#00AA55","#009FD4","#B381B3","#939393","#E3BC00","#D47500","#DC2A2A","#3ede91","#377dd4","#0256b0","#053d82","#3d026e","#b378e3","#c4065c","#543208","#d97811","#0c6b40"];let Zn="";$n.split(" ").length>1?Zn=$n.split(" ")[0].charAt(0).toUpperCase()+$n.split(" ")[1].charAt(0).toUpperCase():Zn=$n.split(" ")[0].charAt(0).toUpperCase()+$n.split(" ")[0].charAt(1).toUpperCase();let Yn=($n.charCodeAt(1)+$n.length)%19;return _n.$$set=Jn=>{"name"in Jn&&ke(0,$n=Jn.name),"side"in Jn&&ke(1,Hn=Jn.side)},[$n,Hn,Zn,zn,Yn]}class Avatar extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1l,create_fragment$1l,safe_not_equal,{name:0,side:1})}}function create_fragment$1k(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo,Ko,Mo,es,ls,ps;ke=new ErrorAlert({props:{message:_n[2]}});let rs={};return Hn=new SuccessAlert({props:rs}),_n[8](Hn),qn=new Avatar({props:{name:_n[4].name}}),mo=new SpinnerButton({props:{label:"Update Name"}}),xo=new SpinnerButton({props:{label:"Update Email"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),create_component(Hn.$$.fragment),zn=space$3(),Zn=element("h3"),create_component(qn.$$.fragment),Yn=space$3(),Jn=element("form"),to=element("div"),io=element("input"),uo=space$3(),create_component(mo.$$.fragment),bo=space$3(),Oo=element("form"),wo=element("div"),$o=element("input"),Do=space$3(),create_component(xo.$$.fragment),Bo=space$3(),Vo=element("div"),Ko=element("a"),Mo=text(`Logout from this + device`),attr(Zn,"class","header-small mb-5"),attr(io,"type","text"),attr(io,"class","form-control mb-3"),attr(io,"placeholder","Name"),io.required=!0,attr(to,"class","input-group mb-5"),attr($o,"type","email"),attr($o,"class","form-control mb-3"),attr($o,"placeholder","Email"),$o.required=!0,attr(wo,"class","input-group mb-5"),attr(Ko,"class","list-group-item list-group-item-action"),attr(Ko,"href",_n[5].lucentUrl+"/logout"),attr(Vo,"class","list-group"),attr(Ce,"class","wrapper-tiny")},m(Yo,Ys){insert$1(Yo,Ce,Ys),mount_component(ke,Ce,null),append(Ce,$n),mount_component(Hn,Ce,null),append(Ce,zn),append(Ce,Zn),mount_component(qn,Zn,null),append(Ce,Yn),append(Ce,Jn),append(Jn,to),append(to,io),set_input_value(io,_n[0]),append(to,uo),mount_component(mo,to,null),append(Ce,bo),append(Ce,Oo),append(Oo,wo),append(wo,$o),set_input_value($o,_n[1]),append(wo,Do),mount_component(xo,wo,null),append(Ce,Bo),append(Ce,Vo),append(Vo,Ko),append(Ko,Mo),es=!0,ls||(ps=[listen(io,"input",_n[9]),listen(Jn,"submit",_n[6]),listen($o,"input",_n[10]),listen(Oo,"submit",_n[7])],ls=!0)},p(Yo,[Ys]){const sr={};Ys&4&&(sr.message=Yo[2]),ke.$set(sr);const Js={};Hn.$set(Js),Ys&1&&io.value!==Yo[0]&&set_input_value(io,Yo[0]),Ys&2&&$o.value!==Yo[1]&&set_input_value($o,Yo[1])},i(Yo){es||(transition_in(ke.$$.fragment,Yo),transition_in(Hn.$$.fragment,Yo),transition_in(qn.$$.fragment,Yo),transition_in(mo.$$.fragment,Yo),transition_in(xo.$$.fragment,Yo),es=!0)},o(Yo){transition_out(ke.$$.fragment,Yo),transition_out(Hn.$$.fragment,Yo),transition_out(qn.$$.fragment,Yo),transition_out(mo.$$.fragment,Yo),transition_out(xo.$$.fragment,Yo),es=!1},d(Yo){Yo&&detach(Ce),destroy_component(ke),_n[8](null),destroy_component(Hn),destroy_component(qn),destroy_component(mo),destroy_component(xo),ls=!1,run_all(ps)}}}function instance$1k(_n,Ce,ke){const $n=getContext$1("user"),Hn=getContext$1("channel");let zn=$n.name,Zn=$n.email,qn="",Yn;function Jn(bo){bo.preventDefault(),ke(2,qn=""),axios.post(Hn.lucentUrl+"/account/update-name",{name:zn}).then(Oo=>{Yn.show()}).catch(Oo=>{var wo;ke(2,qn=(wo=Oo.response)==null?void 0:wo.data.error),console.log({errorMessage:qn})})}function to(bo){bo.preventDefault(),ke(2,qn=""),axios.post(Hn.lucentUrl+"/account/update-email",{email:Zn}).then(Oo=>{Yn.show()}).catch(Oo=>{var wo;ke(2,qn=(wo=Oo.response)==null?void 0:wo.data.error),console.log({errorMessage:qn})})}function io(bo){binding_callbacks[bo?"unshift":"push"](()=>{Yn=bo,ke(3,Yn)})}function uo(){zn=this.value,ke(0,zn)}function mo(){Zn=this.value,ke(1,Zn)}return[zn,Zn,qn,Yn,$n,Hn,Jn,to,io,uo,mo]}class Profile extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1k,create_fragment$1k,safe_not_equal,{})}}function create_fragment$1j(_n){let Ce,ke,$n,Hn=_n[3].name+"",zn,Zn,qn,Yn,Jn,to;const io=[{title:_n[0]},_n[2]];var uo=_n[4][_n[1]];function mo(bo,Oo){let wo={};for(let $o=0;$o{destroy_component(wo,1)}),check_outros()}uo?(Jn=construct_svelte_component(uo,mo(bo,Oo)),create_component(Jn.$$.fragment),transition_in(Jn.$$.fragment,1),mount_component(Jn,Yn,null)):Jn=null}else if(uo){const wo=Oo&5?get_spread_update(io,[Oo&1&&{title:bo[0]},Oo&4&&get_spread_object(bo[2])]):{};Jn.$set(wo)}},i(bo){to||(Jn&&transition_in(Jn.$$.fragment,bo),to=!0)},o(bo){Jn&&transition_out(Jn.$$.fragment,bo),to=!1},d(bo){bo&&(detach(Ce),detach(qn),detach(Yn)),Jn&&destroy_component(Jn)}}}function instance$1j(_n,Ce,ke){const $n={register:Register,login:Login,verify:Verify,profile:Profile};let{title:Hn}=Ce,{view:zn}=Ce,{user:Zn}=Ce,{data:qn}=Ce,{channel:Yn}=Ce;return setContext("channel",Yn),setContext("user",Zn),_n.$$set=Jn=>{"title"in Jn&&ke(0,Hn=Jn.title),"view"in Jn&&ke(1,zn=Jn.view),"user"in Jn&&ke(5,Zn=Jn.user),"data"in Jn&&ke(2,qn=Jn.data),"channel"in Jn&&ke(3,Yn=Jn.channel)},[Hn,zn,qn,Yn,$n,Zn]}class Account extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1j,create_fragment$1j,safe_not_equal,{title:0,view:1,user:5,data:2,channel:3})}}function toDate(_n){const Ce=Object.prototype.toString.call(_n);return _n instanceof Date||typeof _n=="object"&&Ce==="[object Date]"?new _n.constructor(+_n):typeof _n=="number"||Ce==="[object Number]"||typeof _n=="string"||Ce==="[object String]"?new Date(_n):new Date(NaN)}function constructFrom(_n,Ce){return _n instanceof Date?new _n.constructor(Ce):new Date(Ce)}const millisecondsInWeek=6048e5,millisecondsInDay=864e5,minutesInMonth=43200,minutesInDay=1440;let defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(_n,Ce){var qn,Yn,Jn,to;const ke=getDefaultOptions(),$n=(Ce==null?void 0:Ce.weekStartsOn)??((Yn=(qn=Ce==null?void 0:Ce.locale)==null?void 0:qn.options)==null?void 0:Yn.weekStartsOn)??ke.weekStartsOn??((to=(Jn=ke.locale)==null?void 0:Jn.options)==null?void 0:to.weekStartsOn)??0,Hn=toDate(_n),zn=Hn.getDay(),Zn=(zn<$n?7:0)+zn-$n;return Hn.setDate(Hn.getDate()-Zn),Hn.setHours(0,0,0,0),Hn}function startOfISOWeek(_n){return startOfWeek(_n,{weekStartsOn:1})}function getISOWeekYear(_n){const Ce=toDate(_n),ke=Ce.getFullYear(),$n=constructFrom(_n,0);$n.setFullYear(ke+1,0,4),$n.setHours(0,0,0,0);const Hn=startOfISOWeek($n),zn=constructFrom(_n,0);zn.setFullYear(ke,0,4),zn.setHours(0,0,0,0);const Zn=startOfISOWeek(zn);return Ce.getTime()>=Hn.getTime()?ke+1:Ce.getTime()>=Zn.getTime()?ke:ke-1}function startOfDay(_n){const Ce=toDate(_n);return Ce.setHours(0,0,0,0),Ce}function getTimezoneOffsetInMilliseconds(_n){const Ce=toDate(_n),ke=new Date(Date.UTC(Ce.getFullYear(),Ce.getMonth(),Ce.getDate(),Ce.getHours(),Ce.getMinutes(),Ce.getSeconds(),Ce.getMilliseconds()));return ke.setUTCFullYear(Ce.getFullYear()),+_n-+ke}function differenceInCalendarDays(_n,Ce){const ke=startOfDay(_n),$n=startOfDay(Ce),Hn=+ke-getTimezoneOffsetInMilliseconds(ke),zn=+$n-getTimezoneOffsetInMilliseconds($n);return Math.round((Hn-zn)/millisecondsInDay)}function startOfISOWeekYear(_n){const Ce=getISOWeekYear(_n),ke=constructFrom(_n,0);return ke.setFullYear(Ce,0,4),ke.setHours(0,0,0,0),startOfISOWeek(ke)}function compareAsc(_n,Ce){const ke=toDate(_n),$n=toDate(Ce),Hn=ke.getTime()-$n.getTime();return Hn<0?-1:Hn>0?1:Hn}function constructNow(_n){return constructFrom(_n,Date.now())}function isDate(_n){return _n instanceof Date||typeof _n=="object"&&Object.prototype.toString.call(_n)==="[object Date]"}function isValid(_n){if(!isDate(_n)&&typeof _n!="number")return!1;const Ce=toDate(_n);return!isNaN(Number(Ce))}function differenceInCalendarMonths(_n,Ce){const ke=toDate(_n),$n=toDate(Ce),Hn=ke.getFullYear()-$n.getFullYear(),zn=ke.getMonth()-$n.getMonth();return Hn*12+zn}function getRoundingMethod(_n){return Ce=>{const $n=(_n?Math[_n]:Math.trunc)(Ce);return $n===0?0:$n}}function differenceInMilliseconds(_n,Ce){return+toDate(_n)-+toDate(Ce)}function endOfDay(_n){const Ce=toDate(_n);return Ce.setHours(23,59,59,999),Ce}function endOfMonth(_n){const Ce=toDate(_n),ke=Ce.getMonth();return Ce.setFullYear(Ce.getFullYear(),ke+1,0),Ce.setHours(23,59,59,999),Ce}function isLastDayOfMonth(_n){const Ce=toDate(_n);return+endOfDay(Ce)==+endOfMonth(Ce)}function differenceInMonths(_n,Ce){const ke=toDate(_n),$n=toDate(Ce),Hn=compareAsc(ke,$n),zn=Math.abs(differenceInCalendarMonths(ke,$n));let Zn;if(zn<1)Zn=0;else{ke.getMonth()===1&&ke.getDate()>27&&ke.setDate(30),ke.setMonth(ke.getMonth()-Hn*zn);let qn=compareAsc(ke,$n)===-Hn;isLastDayOfMonth(toDate(_n))&&zn===1&&compareAsc(_n,$n)===1&&(qn=!1),Zn=Hn*(zn-Number(qn))}return Zn===0?0:Zn}function differenceInSeconds(_n,Ce,ke){const $n=differenceInMilliseconds(_n,Ce)/1e3;return getRoundingMethod(ke==null?void 0:ke.roundingMethod)($n)}function startOfYear(_n){const Ce=toDate(_n),ke=constructFrom(_n,0);return ke.setFullYear(Ce.getFullYear(),0,1),ke.setHours(0,0,0,0),ke}const formatDistanceLocale={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},formatDistance$1=(_n,Ce,ke)=>{let $n;const Hn=formatDistanceLocale[_n];return typeof Hn=="string"?$n=Hn:Ce===1?$n=Hn.one:$n=Hn.other.replace("{{count}}",Ce.toString()),ke!=null&&ke.addSuffix?ke.comparison&&ke.comparison>0?"in "+$n:$n+" ago":$n};function buildFormatLongFn(_n){return(Ce={})=>{const ke=Ce.width?String(Ce.width):_n.defaultWidth;return _n.formats[ke]||_n.formats[_n.defaultWidth]}}const dateFormats={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},timeFormats={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},dateTimeFormats={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},formatLong={date:buildFormatLongFn({formats:dateFormats,defaultWidth:"full"}),time:buildFormatLongFn({formats:timeFormats,defaultWidth:"full"}),dateTime:buildFormatLongFn({formats:dateTimeFormats,defaultWidth:"full"})},formatRelativeLocale={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},formatRelative=(_n,Ce,ke,$n)=>formatRelativeLocale[_n];function buildLocalizeFn(_n){return(Ce,ke)=>{const $n=ke!=null&&ke.context?String(ke.context):"standalone";let Hn;if($n==="formatting"&&_n.formattingValues){const Zn=_n.defaultFormattingWidth||_n.defaultWidth,qn=ke!=null&&ke.width?String(ke.width):Zn;Hn=_n.formattingValues[qn]||_n.formattingValues[Zn]}else{const Zn=_n.defaultWidth,qn=ke!=null&&ke.width?String(ke.width):_n.defaultWidth;Hn=_n.values[qn]||_n.values[Zn]}const zn=_n.argumentCallback?_n.argumentCallback(Ce):Ce;return Hn[zn]}}const eraValues={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},quarterValues={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},monthValues={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},dayValues={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriodValues={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},formattingDayPeriodValues={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},ordinalNumber=(_n,Ce)=>{const ke=Number(_n),$n=ke%100;if($n>20||$n<10)switch($n%10){case 1:return ke+"st";case 2:return ke+"nd";case 3:return ke+"rd"}return ke+"th"},localize={ordinalNumber,era:buildLocalizeFn({values:eraValues,defaultWidth:"wide"}),quarter:buildLocalizeFn({values:quarterValues,defaultWidth:"wide",argumentCallback:_n=>_n-1}),month:buildLocalizeFn({values:monthValues,defaultWidth:"wide"}),day:buildLocalizeFn({values:dayValues,defaultWidth:"wide"}),dayPeriod:buildLocalizeFn({values:dayPeriodValues,defaultWidth:"wide",formattingValues:formattingDayPeriodValues,defaultFormattingWidth:"wide"})};function buildMatchFn(_n){return(Ce,ke={})=>{const $n=ke.width,Hn=$n&&_n.matchPatterns[$n]||_n.matchPatterns[_n.defaultMatchWidth],zn=Ce.match(Hn);if(!zn)return null;const Zn=zn[0],qn=$n&&_n.parsePatterns[$n]||_n.parsePatterns[_n.defaultParseWidth],Yn=Array.isArray(qn)?findIndex(qn,io=>io.test(Zn)):findKey(qn,io=>io.test(Zn));let Jn;Jn=_n.valueCallback?_n.valueCallback(Yn):Yn,Jn=ke.valueCallback?ke.valueCallback(Jn):Jn;const to=Ce.slice(Zn.length);return{value:Jn,rest:to}}}function findKey(_n,Ce){for(const ke in _n)if(Object.prototype.hasOwnProperty.call(_n,ke)&&Ce(_n[ke]))return ke}function findIndex(_n,Ce){for(let ke=0;ke<_n.length;ke++)if(Ce(_n[ke]))return ke}function buildMatchPatternFn(_n){return(Ce,ke={})=>{const $n=Ce.match(_n.matchPattern);if(!$n)return null;const Hn=$n[0],zn=Ce.match(_n.parsePattern);if(!zn)return null;let Zn=_n.valueCallback?_n.valueCallback(zn[0]):zn[0];Zn=ke.valueCallback?ke.valueCallback(Zn):Zn;const qn=Ce.slice(Hn.length);return{value:Zn,rest:qn}}}const matchOrdinalNumberPattern=/^(\d+)(th|st|nd|rd)?/i,parseOrdinalNumberPattern=/\d+/i,matchEraPatterns={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},parseEraPatterns={any:[/^b/i,/^(a|c)/i]},matchQuarterPatterns={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},parseQuarterPatterns={any:[/1/i,/2/i,/3/i,/4/i]},matchMonthPatterns={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},parseMonthPatterns={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},matchDayPatterns={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},parseDayPatterns={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},matchDayPeriodPatterns={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},parseDayPeriodPatterns={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},match={ordinalNumber:buildMatchPatternFn({matchPattern:matchOrdinalNumberPattern,parsePattern:parseOrdinalNumberPattern,valueCallback:_n=>parseInt(_n,10)}),era:buildMatchFn({matchPatterns:matchEraPatterns,defaultMatchWidth:"wide",parsePatterns:parseEraPatterns,defaultParseWidth:"any"}),quarter:buildMatchFn({matchPatterns:matchQuarterPatterns,defaultMatchWidth:"wide",parsePatterns:parseQuarterPatterns,defaultParseWidth:"any",valueCallback:_n=>_n+1}),month:buildMatchFn({matchPatterns:matchMonthPatterns,defaultMatchWidth:"wide",parsePatterns:parseMonthPatterns,defaultParseWidth:"any"}),day:buildMatchFn({matchPatterns:matchDayPatterns,defaultMatchWidth:"wide",parsePatterns:parseDayPatterns,defaultParseWidth:"any"}),dayPeriod:buildMatchFn({matchPatterns:matchDayPeriodPatterns,defaultMatchWidth:"any",parsePatterns:parseDayPeriodPatterns,defaultParseWidth:"any"})},enUS={code:"en-US",formatDistance:formatDistance$1,formatLong,formatRelative,localize,match,options:{weekStartsOn:0,firstWeekContainsDate:1}};function getDayOfYear(_n){const Ce=toDate(_n);return differenceInCalendarDays(Ce,startOfYear(Ce))+1}function getISOWeek(_n){const Ce=toDate(_n),ke=+startOfISOWeek(Ce)-+startOfISOWeekYear(Ce);return Math.round(ke/millisecondsInWeek)+1}function getWeekYear(_n,Ce){var to,io,uo,mo;const ke=toDate(_n),$n=ke.getFullYear(),Hn=getDefaultOptions(),zn=(Ce==null?void 0:Ce.firstWeekContainsDate)??((io=(to=Ce==null?void 0:Ce.locale)==null?void 0:to.options)==null?void 0:io.firstWeekContainsDate)??Hn.firstWeekContainsDate??((mo=(uo=Hn.locale)==null?void 0:uo.options)==null?void 0:mo.firstWeekContainsDate)??1,Zn=constructFrom(_n,0);Zn.setFullYear($n+1,0,zn),Zn.setHours(0,0,0,0);const qn=startOfWeek(Zn,Ce),Yn=constructFrom(_n,0);Yn.setFullYear($n,0,zn),Yn.setHours(0,0,0,0);const Jn=startOfWeek(Yn,Ce);return ke.getTime()>=qn.getTime()?$n+1:ke.getTime()>=Jn.getTime()?$n:$n-1}function startOfWeekYear(_n,Ce){var qn,Yn,Jn,to;const ke=getDefaultOptions(),$n=(Ce==null?void 0:Ce.firstWeekContainsDate)??((Yn=(qn=Ce==null?void 0:Ce.locale)==null?void 0:qn.options)==null?void 0:Yn.firstWeekContainsDate)??ke.firstWeekContainsDate??((to=(Jn=ke.locale)==null?void 0:Jn.options)==null?void 0:to.firstWeekContainsDate)??1,Hn=getWeekYear(_n,Ce),zn=constructFrom(_n,0);return zn.setFullYear(Hn,0,$n),zn.setHours(0,0,0,0),startOfWeek(zn,Ce)}function getWeek(_n,Ce){const ke=toDate(_n),$n=+startOfWeek(ke,Ce)-+startOfWeekYear(ke,Ce);return Math.round($n/millisecondsInWeek)+1}function addLeadingZeros(_n,Ce){const ke=_n<0?"-":"",$n=Math.abs(_n).toString().padStart(Ce,"0");return ke+$n}const lightFormatters={y(_n,Ce){const ke=_n.getFullYear(),$n=ke>0?ke:1-ke;return addLeadingZeros(Ce==="yy"?$n%100:$n,Ce.length)},M(_n,Ce){const ke=_n.getMonth();return Ce==="M"?String(ke+1):addLeadingZeros(ke+1,2)},d(_n,Ce){return addLeadingZeros(_n.getDate(),Ce.length)},a(_n,Ce){const ke=_n.getHours()/12>=1?"pm":"am";switch(Ce){case"a":case"aa":return ke.toUpperCase();case"aaa":return ke;case"aaaaa":return ke[0];case"aaaa":default:return ke==="am"?"a.m.":"p.m."}},h(_n,Ce){return addLeadingZeros(_n.getHours()%12||12,Ce.length)},H(_n,Ce){return addLeadingZeros(_n.getHours(),Ce.length)},m(_n,Ce){return addLeadingZeros(_n.getMinutes(),Ce.length)},s(_n,Ce){return addLeadingZeros(_n.getSeconds(),Ce.length)},S(_n,Ce){const ke=Ce.length,$n=_n.getMilliseconds(),Hn=Math.trunc($n*Math.pow(10,ke-3));return addLeadingZeros(Hn,Ce.length)}},dayPeriodEnum={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},formatters={G:function(_n,Ce,ke){const $n=_n.getFullYear()>0?1:0;switch(Ce){case"G":case"GG":case"GGG":return ke.era($n,{width:"abbreviated"});case"GGGGG":return ke.era($n,{width:"narrow"});case"GGGG":default:return ke.era($n,{width:"wide"})}},y:function(_n,Ce,ke){if(Ce==="yo"){const $n=_n.getFullYear(),Hn=$n>0?$n:1-$n;return ke.ordinalNumber(Hn,{unit:"year"})}return lightFormatters.y(_n,Ce)},Y:function(_n,Ce,ke,$n){const Hn=getWeekYear(_n,$n),zn=Hn>0?Hn:1-Hn;if(Ce==="YY"){const Zn=zn%100;return addLeadingZeros(Zn,2)}return Ce==="Yo"?ke.ordinalNumber(zn,{unit:"year"}):addLeadingZeros(zn,Ce.length)},R:function(_n,Ce){const ke=getISOWeekYear(_n);return addLeadingZeros(ke,Ce.length)},u:function(_n,Ce){const ke=_n.getFullYear();return addLeadingZeros(ke,Ce.length)},Q:function(_n,Ce,ke){const $n=Math.ceil((_n.getMonth()+1)/3);switch(Ce){case"Q":return String($n);case"QQ":return addLeadingZeros($n,2);case"Qo":return ke.ordinalNumber($n,{unit:"quarter"});case"QQQ":return ke.quarter($n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return ke.quarter($n,{width:"narrow",context:"formatting"});case"QQQQ":default:return ke.quarter($n,{width:"wide",context:"formatting"})}},q:function(_n,Ce,ke){const $n=Math.ceil((_n.getMonth()+1)/3);switch(Ce){case"q":return String($n);case"qq":return addLeadingZeros($n,2);case"qo":return ke.ordinalNumber($n,{unit:"quarter"});case"qqq":return ke.quarter($n,{width:"abbreviated",context:"standalone"});case"qqqqq":return ke.quarter($n,{width:"narrow",context:"standalone"});case"qqqq":default:return ke.quarter($n,{width:"wide",context:"standalone"})}},M:function(_n,Ce,ke){const $n=_n.getMonth();switch(Ce){case"M":case"MM":return lightFormatters.M(_n,Ce);case"Mo":return ke.ordinalNumber($n+1,{unit:"month"});case"MMM":return ke.month($n,{width:"abbreviated",context:"formatting"});case"MMMMM":return ke.month($n,{width:"narrow",context:"formatting"});case"MMMM":default:return ke.month($n,{width:"wide",context:"formatting"})}},L:function(_n,Ce,ke){const $n=_n.getMonth();switch(Ce){case"L":return String($n+1);case"LL":return addLeadingZeros($n+1,2);case"Lo":return ke.ordinalNumber($n+1,{unit:"month"});case"LLL":return ke.month($n,{width:"abbreviated",context:"standalone"});case"LLLLL":return ke.month($n,{width:"narrow",context:"standalone"});case"LLLL":default:return ke.month($n,{width:"wide",context:"standalone"})}},w:function(_n,Ce,ke,$n){const Hn=getWeek(_n,$n);return Ce==="wo"?ke.ordinalNumber(Hn,{unit:"week"}):addLeadingZeros(Hn,Ce.length)},I:function(_n,Ce,ke){const $n=getISOWeek(_n);return Ce==="Io"?ke.ordinalNumber($n,{unit:"week"}):addLeadingZeros($n,Ce.length)},d:function(_n,Ce,ke){return Ce==="do"?ke.ordinalNumber(_n.getDate(),{unit:"date"}):lightFormatters.d(_n,Ce)},D:function(_n,Ce,ke){const $n=getDayOfYear(_n);return Ce==="Do"?ke.ordinalNumber($n,{unit:"dayOfYear"}):addLeadingZeros($n,Ce.length)},E:function(_n,Ce,ke){const $n=_n.getDay();switch(Ce){case"E":case"EE":case"EEE":return ke.day($n,{width:"abbreviated",context:"formatting"});case"EEEEE":return ke.day($n,{width:"narrow",context:"formatting"});case"EEEEEE":return ke.day($n,{width:"short",context:"formatting"});case"EEEE":default:return ke.day($n,{width:"wide",context:"formatting"})}},e:function(_n,Ce,ke,$n){const Hn=_n.getDay(),zn=(Hn-$n.weekStartsOn+8)%7||7;switch(Ce){case"e":return String(zn);case"ee":return addLeadingZeros(zn,2);case"eo":return ke.ordinalNumber(zn,{unit:"day"});case"eee":return ke.day(Hn,{width:"abbreviated",context:"formatting"});case"eeeee":return ke.day(Hn,{width:"narrow",context:"formatting"});case"eeeeee":return ke.day(Hn,{width:"short",context:"formatting"});case"eeee":default:return ke.day(Hn,{width:"wide",context:"formatting"})}},c:function(_n,Ce,ke,$n){const Hn=_n.getDay(),zn=(Hn-$n.weekStartsOn+8)%7||7;switch(Ce){case"c":return String(zn);case"cc":return addLeadingZeros(zn,Ce.length);case"co":return ke.ordinalNumber(zn,{unit:"day"});case"ccc":return ke.day(Hn,{width:"abbreviated",context:"standalone"});case"ccccc":return ke.day(Hn,{width:"narrow",context:"standalone"});case"cccccc":return ke.day(Hn,{width:"short",context:"standalone"});case"cccc":default:return ke.day(Hn,{width:"wide",context:"standalone"})}},i:function(_n,Ce,ke){const $n=_n.getDay(),Hn=$n===0?7:$n;switch(Ce){case"i":return String(Hn);case"ii":return addLeadingZeros(Hn,Ce.length);case"io":return ke.ordinalNumber(Hn,{unit:"day"});case"iii":return ke.day($n,{width:"abbreviated",context:"formatting"});case"iiiii":return ke.day($n,{width:"narrow",context:"formatting"});case"iiiiii":return ke.day($n,{width:"short",context:"formatting"});case"iiii":default:return ke.day($n,{width:"wide",context:"formatting"})}},a:function(_n,Ce,ke){const Hn=_n.getHours()/12>=1?"pm":"am";switch(Ce){case"a":case"aa":return ke.dayPeriod(Hn,{width:"abbreviated",context:"formatting"});case"aaa":return ke.dayPeriod(Hn,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return ke.dayPeriod(Hn,{width:"narrow",context:"formatting"});case"aaaa":default:return ke.dayPeriod(Hn,{width:"wide",context:"formatting"})}},b:function(_n,Ce,ke){const $n=_n.getHours();let Hn;switch($n===12?Hn=dayPeriodEnum.noon:$n===0?Hn=dayPeriodEnum.midnight:Hn=$n/12>=1?"pm":"am",Ce){case"b":case"bb":return ke.dayPeriod(Hn,{width:"abbreviated",context:"formatting"});case"bbb":return ke.dayPeriod(Hn,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return ke.dayPeriod(Hn,{width:"narrow",context:"formatting"});case"bbbb":default:return ke.dayPeriod(Hn,{width:"wide",context:"formatting"})}},B:function(_n,Ce,ke){const $n=_n.getHours();let Hn;switch($n>=17?Hn=dayPeriodEnum.evening:$n>=12?Hn=dayPeriodEnum.afternoon:$n>=4?Hn=dayPeriodEnum.morning:Hn=dayPeriodEnum.night,Ce){case"B":case"BB":case"BBB":return ke.dayPeriod(Hn,{width:"abbreviated",context:"formatting"});case"BBBBB":return ke.dayPeriod(Hn,{width:"narrow",context:"formatting"});case"BBBB":default:return ke.dayPeriod(Hn,{width:"wide",context:"formatting"})}},h:function(_n,Ce,ke){if(Ce==="ho"){let $n=_n.getHours()%12;return $n===0&&($n=12),ke.ordinalNumber($n,{unit:"hour"})}return lightFormatters.h(_n,Ce)},H:function(_n,Ce,ke){return Ce==="Ho"?ke.ordinalNumber(_n.getHours(),{unit:"hour"}):lightFormatters.H(_n,Ce)},K:function(_n,Ce,ke){const $n=_n.getHours()%12;return Ce==="Ko"?ke.ordinalNumber($n,{unit:"hour"}):addLeadingZeros($n,Ce.length)},k:function(_n,Ce,ke){let $n=_n.getHours();return $n===0&&($n=24),Ce==="ko"?ke.ordinalNumber($n,{unit:"hour"}):addLeadingZeros($n,Ce.length)},m:function(_n,Ce,ke){return Ce==="mo"?ke.ordinalNumber(_n.getMinutes(),{unit:"minute"}):lightFormatters.m(_n,Ce)},s:function(_n,Ce,ke){return Ce==="so"?ke.ordinalNumber(_n.getSeconds(),{unit:"second"}):lightFormatters.s(_n,Ce)},S:function(_n,Ce){return lightFormatters.S(_n,Ce)},X:function(_n,Ce,ke){const $n=_n.getTimezoneOffset();if($n===0)return"Z";switch(Ce){case"X":return formatTimezoneWithOptionalMinutes($n);case"XXXX":case"XX":return formatTimezone($n);case"XXXXX":case"XXX":default:return formatTimezone($n,":")}},x:function(_n,Ce,ke){const $n=_n.getTimezoneOffset();switch(Ce){case"x":return formatTimezoneWithOptionalMinutes($n);case"xxxx":case"xx":return formatTimezone($n);case"xxxxx":case"xxx":default:return formatTimezone($n,":")}},O:function(_n,Ce,ke){const $n=_n.getTimezoneOffset();switch(Ce){case"O":case"OO":case"OOO":return"GMT"+formatTimezoneShort($n,":");case"OOOO":default:return"GMT"+formatTimezone($n,":")}},z:function(_n,Ce,ke){const $n=_n.getTimezoneOffset();switch(Ce){case"z":case"zz":case"zzz":return"GMT"+formatTimezoneShort($n,":");case"zzzz":default:return"GMT"+formatTimezone($n,":")}},t:function(_n,Ce,ke){const $n=Math.trunc(_n.getTime()/1e3);return addLeadingZeros($n,Ce.length)},T:function(_n,Ce,ke){const $n=_n.getTime();return addLeadingZeros($n,Ce.length)}};function formatTimezoneShort(_n,Ce=""){const ke=_n>0?"-":"+",$n=Math.abs(_n),Hn=Math.trunc($n/60),zn=$n%60;return zn===0?ke+String(Hn):ke+String(Hn)+Ce+addLeadingZeros(zn,2)}function formatTimezoneWithOptionalMinutes(_n,Ce){return _n%60===0?(_n>0?"-":"+")+addLeadingZeros(Math.abs(_n)/60,2):formatTimezone(_n,Ce)}function formatTimezone(_n,Ce=""){const ke=_n>0?"-":"+",$n=Math.abs(_n),Hn=addLeadingZeros(Math.trunc($n/60),2),zn=addLeadingZeros($n%60,2);return ke+Hn+Ce+zn}const dateLongFormatter=(_n,Ce)=>{switch(_n){case"P":return Ce.date({width:"short"});case"PP":return Ce.date({width:"medium"});case"PPP":return Ce.date({width:"long"});case"PPPP":default:return Ce.date({width:"full"})}},timeLongFormatter=(_n,Ce)=>{switch(_n){case"p":return Ce.time({width:"short"});case"pp":return Ce.time({width:"medium"});case"ppp":return Ce.time({width:"long"});case"pppp":default:return Ce.time({width:"full"})}},dateTimeLongFormatter=(_n,Ce)=>{const ke=_n.match(/(P+)(p+)?/)||[],$n=ke[1],Hn=ke[2];if(!Hn)return dateLongFormatter(_n,Ce);let zn;switch($n){case"P":zn=Ce.dateTime({width:"short"});break;case"PP":zn=Ce.dateTime({width:"medium"});break;case"PPP":zn=Ce.dateTime({width:"long"});break;case"PPPP":default:zn=Ce.dateTime({width:"full"});break}return zn.replace("{{date}}",dateLongFormatter($n,Ce)).replace("{{time}}",timeLongFormatter(Hn,Ce))},longFormatters={p:timeLongFormatter,P:dateTimeLongFormatter},dayOfYearTokenRE=/^D+$/,weekYearTokenRE=/^Y+$/,throwTokens=["D","DD","YY","YYYY"];function isProtectedDayOfYearToken(_n){return dayOfYearTokenRE.test(_n)}function isProtectedWeekYearToken(_n){return weekYearTokenRE.test(_n)}function warnOrThrowProtectedError(_n,Ce,ke){const $n=message(_n,Ce,ke);if(console.warn($n),throwTokens.includes(_n))throw new RangeError($n)}function message(_n,Ce,ke){const $n=_n[0]==="Y"?"years":"days of the month";return`Use \`${_n.toLowerCase()}\` instead of \`${_n}\` (in \`${Ce}\`) for formatting ${$n} to the input \`${ke}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const formattingTokensRegExp=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,longFormattingTokensRegExp=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,escapedStringRegExp=/^'([^]*?)'?$/,doubleQuoteRegExp=/''/g,unescapedLatinCharacterRegExp=/[a-zA-Z]/;function format$1(_n,Ce,ke){var to,io,uo,mo;const $n=getDefaultOptions(),Hn=$n.locale??enUS,zn=$n.firstWeekContainsDate??((io=(to=$n.locale)==null?void 0:to.options)==null?void 0:io.firstWeekContainsDate)??1,Zn=$n.weekStartsOn??((mo=(uo=$n.locale)==null?void 0:uo.options)==null?void 0:mo.weekStartsOn)??0,qn=toDate(_n);if(!isValid(qn))throw new RangeError("Invalid time value");let Yn=Ce.match(longFormattingTokensRegExp).map(bo=>{const Oo=bo[0];if(Oo==="p"||Oo==="P"){const wo=longFormatters[Oo];return wo(bo,Hn.formatLong)}return bo}).join("").match(formattingTokensRegExp).map(bo=>{if(bo==="''")return{isToken:!1,value:"'"};const Oo=bo[0];if(Oo==="'")return{isToken:!1,value:cleanEscapedString(bo)};if(formatters[Oo])return{isToken:!0,value:bo};if(Oo.match(unescapedLatinCharacterRegExp))throw new RangeError("Format string contains an unescaped latin alphabet character `"+Oo+"`");return{isToken:!1,value:bo}});Hn.localize.preprocessor&&(Yn=Hn.localize.preprocessor(qn,Yn));const Jn={firstWeekContainsDate:zn,weekStartsOn:Zn,locale:Hn};return Yn.map(bo=>{if(!bo.isToken)return bo.value;const Oo=bo.value;(isProtectedWeekYearToken(Oo)||isProtectedDayOfYearToken(Oo))&&warnOrThrowProtectedError(Oo,Ce,String(_n));const wo=formatters[Oo[0]];return wo(qn,Oo,Hn.localize,Jn)}).join("")}function cleanEscapedString(_n){const Ce=_n.match(escapedStringRegExp);return Ce?Ce[1].replace(doubleQuoteRegExp,"'"):_n}function formatDistance(_n,Ce,ke){const $n=getDefaultOptions(),Hn=(ke==null?void 0:ke.locale)??$n.locale??enUS,zn=2520,Zn=compareAsc(_n,Ce);if(isNaN(Zn))throw new RangeError("Invalid time value");const qn=Object.assign({},ke,{addSuffix:ke==null?void 0:ke.addSuffix,comparison:Zn});let Yn,Jn;Zn>0?(Yn=toDate(Ce),Jn=toDate(_n)):(Yn=toDate(_n),Jn=toDate(Ce));const to=differenceInSeconds(Jn,Yn),io=(getTimezoneOffsetInMilliseconds(Jn)-getTimezoneOffsetInMilliseconds(Yn))/1e3,uo=Math.round((to-io)/60);let mo;if(uo<2)return ke!=null&&ke.includeSeconds?to<5?Hn.formatDistance("lessThanXSeconds",5,qn):to<10?Hn.formatDistance("lessThanXSeconds",10,qn):to<20?Hn.formatDistance("lessThanXSeconds",20,qn):to<40?Hn.formatDistance("halfAMinute",0,qn):to<60?Hn.formatDistance("lessThanXMinutes",1,qn):Hn.formatDistance("xMinutes",1,qn):uo===0?Hn.formatDistance("lessThanXMinutes",1,qn):Hn.formatDistance("xMinutes",uo,qn);if(uo<45)return Hn.formatDistance("xMinutes",uo,qn);if(uo<90)return Hn.formatDistance("aboutXHours",1,qn);if(uo{_n&&!_n.contains(ke.target)&&!ke.defaultPrevented&&_n.dispatchEvent(new CustomEvent("click_outside",_n))};return document.addEventListener("click",Ce,!0),{destroy(){document.removeEventListener("click",Ce,!0)}}}const get_button_slot_changes=_n=>({}),get_button_slot_context=_n=>({});function fallback_block(_n){let Ce;return{c(){Ce=text("Dropdown")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_fragment$1i(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;const Jn=_n[6].button,to=create_slot(Jn,_n,_n[5],get_button_slot_context),io=to||fallback_block(),uo=_n[6].default,mo=create_slot(uo,_n,_n[5],null);return{c(){Ce=element("div"),ke=element("button"),io&&io.c(),$n=space$3(),Hn=element("div"),mo&&mo.c(),attr(ke,"class","button dropdown-button"),attr(ke,"type","button"),attr(ke,"aria-expanded","false"),attr(Hn,"class",zn="dropdown-menu hide orientation-"+_n[0]),attr(Ce,"class","dropdown")},m(bo,Oo){insert$1(bo,Ce,Oo),append(Ce,ke),io&&io.m(ke,null),append(Ce,$n),append(Ce,Hn),mo&&mo.m(Hn,null),_n[7](Hn),Zn=!0,qn||(Yn=[listen(ke,"click",_n[1]),action_destroyer(clickOutside.call(null,Hn)),listen(Hn,"click_outside",_n[3])],qn=!0)},p(bo,[Oo]){to&&to.p&&(!Zn||Oo&32)&&update_slot_base(to,Jn,bo,bo[5],Zn?get_slot_changes(Jn,bo[5],Oo,get_button_slot_changes):get_all_dirty_from_scope(bo[5]),get_button_slot_context),mo&&mo.p&&(!Zn||Oo&32)&&update_slot_base(mo,uo,bo,bo[5],Zn?get_slot_changes(uo,bo[5],Oo,null):get_all_dirty_from_scope(bo[5]),null),(!Zn||Oo&1&&zn!==(zn="dropdown-menu hide orientation-"+bo[0]))&&attr(Hn,"class",zn)},i(bo){Zn||(transition_in(io,bo),transition_in(mo,bo),Zn=!0)},o(bo){transition_out(io,bo),transition_out(mo,bo),Zn=!1},d(bo){bo&&detach(Ce),io&&io.d(bo),mo&&mo.d(bo),_n[7](null),qn=!1,run_all(Yn)}}}function instance$1i(_n,Ce,ke){let{$$slots:$n={},$$scope:Hn}=Ce,zn,{orientation:Zn="left"}=Ce;function qn(){zn.classList.remove("hide")}function Yn(){zn.classList.add("hide")}function Jn(){zn.classList.add("hide")}function to(io){binding_callbacks[io?"unshift":"push"](()=>{zn=io,ke(2,zn)})}return _n.$$set=io=>{"orientation"in io&&ke(0,Zn=io.orientation),"$$scope"in io&&ke(5,Hn=io.$$scope)},[Zn,qn,zn,Jn,Yn,Hn,$n,to]}class Dropdown extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1i,create_fragment$1i,safe_not_equal,{orientation:0,open:1,close:4})}get open(){return this.$$.ctx[1]}get close(){return this.$$.ctx[4]}}function get_each_context$q(_n,Ce,ke){const $n=_n.slice();return $n[7]=Ce[ke],$n}function get_each_context_1$9(_n,Ce,ke){const $n=_n.slice();return $n[7]=Ce[ke],$n}function create_if_block_1$u(_n){let Ce,ke=_n[7]+"",$n,Hn,zn;function Zn(...qn){return _n[4](_n[7],...qn)}return{c(){Ce=element("button"),$n=text(ke),attr(Ce,"class","dropdown-item button")},m(qn,Yn){insert$1(qn,Ce,Yn),append(Ce,$n),Hn||(zn=listen(Ce,"click",Zn),Hn=!0)},p(qn,Yn){_n=qn,Yn&2&&ke!==(ke=_n[7]+"")&&set_data($n,ke)},d(qn){qn&&detach(Ce),Hn=!1,zn()}}}function create_each_block_1$9(_n){let Ce=_n[0].roles.includes(_n[7]),ke,$n=Ce&&create_if_block_1$u(_n);return{c(){$n&&$n.c(),ke=empty$1()},m(Hn,zn){$n&&$n.m(Hn,zn),insert$1(Hn,ke,zn)},p(Hn,zn){zn&3&&(Ce=Hn[0].roles.includes(Hn[7])),Ce?$n?$n.p(Hn,zn):($n=create_if_block_1$u(Hn),$n.c(),$n.m(ke.parentNode,ke)):$n&&($n.d(1),$n=null)},d(Hn){Hn&&detach(ke),$n&&$n.d(Hn)}}}function create_if_block$T(_n){let Ce,ke=_n[7]+"",$n,Hn,zn,Zn;function qn(...Yn){return _n[5](_n[7],...Yn)}return{c(){Ce=element("button"),$n=text(ke),Hn=space$3(),attr(Ce,"class","dropdown-item button")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,$n),append(Ce,Hn),zn||(Zn=listen(Ce,"click",qn),zn=!0)},p(Yn,Jn){_n=Yn,Jn&2&&ke!==(ke=_n[7]+"")&&set_data($n,ke)},d(Yn){Yn&&detach(Ce),zn=!1,Zn()}}}function create_each_block$q(_n){let Ce=!_n[0].roles.includes(_n[7]),ke,$n=Ce&&create_if_block$T(_n);return{c(){$n&&$n.c(),ke=empty$1()},m(Hn,zn){$n&&$n.m(Hn,zn),insert$1(Hn,ke,zn)},p(Hn,zn){zn&3&&(Ce=!Hn[0].roles.includes(Hn[7])),Ce?$n?$n.p(Hn,zn):($n=create_if_block$T(Hn),$n.c(),$n.m(ke.parentNode,ke)):$n&&($n.d(1),$n=null)},d(Hn){Hn&&detach(ke),$n&&$n.d(Hn)}}}function create_default_slot$a(_n){let Ce,ke,$n,Hn,zn,Zn,qn=ensure_array_like(_n[1]),Yn=[];for(let io=0;io{$o&&(wo||(wo=create_bidirectional_transition(Ce,fly,{duration:200},!0)),wo.run(1))}),$o=!0)},o(Do){transition_out($n.$$.fragment,Do),transition_out(Oo.$$.fragment,Do),Do&&(wo||(wo=create_bidirectional_transition(Ce,fly,{duration:200},!1)),wo.run(0)),$o=!1},d(Do){Do&&detach(Ce),destroy_component($n),destroy_component(Oo),Do&&wo&&wo.end()}}}function instance$1h(_n,Ce,ke){const $n=createEventDispatcher();let{member:Hn}=Ce,{roles:zn}=Ce;function Zn(to,io){to.preventDefault();let uo=Hn.roles.filter(mo=>mo!==io);$n("update",{user:Hn.id,roles:uo})}function qn(to,io){to.preventDefault();let uo=[...Hn.roles,io];console.log(Hn.roles),console.log(io),console.log(uo),$n("update",{user:Hn.id,roles:uo})}const Yn=(to,io)=>Zn(io,to),Jn=(to,io)=>qn(io,to);return _n.$$set=to=>{"member"in to&&ke(0,Hn=to.member),"roles"in to&&ke(1,zn=to.roles)},[Hn,zn,Zn,qn,Yn,Jn]}class MemberSettingsCard extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1h,create_fragment$1h,safe_not_equal,{member:0,roles:1})}}function get_each_context$p(_n,Ce,ke){const $n=_n.slice();return $n[15]=Ce[ke],$n}function get_each_context_1$8(_n,Ce,ke){const $n=_n.slice();return $n[18]=Ce[ke],$n}function create_each_block_1$8(_n){let Ce,ke=_n[18]+"",$n;return{c(){Ce=element("option"),$n=text(ke),Ce.__value=_n[18],set_input_value(Ce,Ce.__value)},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p:noop,d(Hn){Hn&&detach(Ce)}}}function create_each_block$p(_n){let Ce,ke;return Ce=new MemberSettingsCard({props:{member:_n[15],roles:_n[6].roles}}),Ce.$on("update",_n[9]),Ce.$on("reinvite",_n[14]),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.member=$n[15]),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_fragment$1g(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo,Ko,Mo,es,ls,ps,rs,Yo,Ys,sr,Js;zn=new ErrorAlert({props:{message:_n[4]}});let ko={};qn=new SuccessAlert({props:ko}),_n[10](qn);let gs=ensure_array_like(_n[6].roles.filter(func$1)),xs=[];for(let Fs=0;Fstransition_out(cr[Fs],1,1,()=>{cr[Fs]=null});return{c(){Ce=element("div"),ke=element("div"),$n=element("h3"),$n.textContent="Invite people",Hn=space$3(),create_component(zn.$$.fragment),Zn=space$3(),create_component(qn.$$.fragment),Yn=space$3(),Jn=element("form"),to=element("div"),io=element("label"),io.textContent="Invitee Name",uo=space$3(),mo=element("input"),bo=space$3(),Oo=element("div"),wo=element("label"),wo.textContent="Invitee Email Address",$o=space$3(),Do=element("input"),xo=space$3(),Bo=element("div"),Vo=element("select");for(let Fs=0;Fs_n[13].call(Vo)),attr(Bo,"class","me-3"),attr(Mo,"class","mt-5 d-block text-center"),attr(ke,"class","lx-card mt-5"),attr(rs,"class","header-small mb-5 mt-5"),attr(ps,"class","member-list"),attr(Ce,"class","common-wrapper")},m(Fs,Br){insert$1(Fs,Ce,Br),append(Ce,ke),append(ke,$n),append(ke,Hn),mount_component(zn,ke,null),append(ke,Zn),mount_component(qn,ke,null),append(ke,Yn),append(ke,Jn),append(Jn,to),append(to,io),append(to,uo),append(to,mo),set_input_value(mo,_n[1]),append(Jn,bo),append(Jn,Oo),append(Oo,wo),append(Oo,$o),append(Oo,Do),set_input_value(Do,_n[2]),append(Jn,xo),append(Jn,Bo),append(Bo,Vo);for(let _r=0;_r_n!=="removed";function instance$1g(_n,Ce,ke){const $n=getContext$1("channel");let{users:Hn}=Ce,zn,Zn,qn,Yn="",Jn;function to(Do){Do.preventDefault(),io(zn,Zn,qn)}function io(Do,xo,Bo){ke(4,Yn=""),axios$1.post($n.lucentUrl+"/members/invite",{name:Do,email:xo,roles:[Bo]}).then(Vo=>{Jn.show("User was invited"),ke(0,Hn=[...Hn,Vo.data.user]),ke(1,zn=null),ke(2,Zn=null),ke(3,qn=null)}).catch(Vo=>{var Ko,Mo;ke(4,Yn=((Mo=(Ko=Vo.response)==null?void 0:Ko.data)==null?void 0:Mo.error)??"")})}function uo(Do){Do.preventDefault(),ke(4,Yn=""),axios$1.post($n.lucentUrl+"/members/update",{id:Do.detail.user,roles:Do.detail.roles}).then(xo=>{Jn.show("Users updated"),ke(0,Hn=xo.data.users)}).catch(xo=>{var Bo,Vo;ke(4,Yn=((Vo=(Bo=xo.response)==null?void 0:Bo.data)==null?void 0:Vo.error)??"")})}function mo(Do){binding_callbacks[Do?"unshift":"push"](()=>{Jn=Do,ke(5,Jn)})}function bo(){zn=this.value,ke(1,zn)}function Oo(){Zn=this.value,ke(2,Zn)}function wo(){qn=select_value(this),ke(3,qn),ke(6,$n)}const $o=Do=>io(Do.detail.email,Do.detail.role);return _n.$$set=Do=>{"users"in Do&&ke(0,Hn=Do.users)},[Hn,zn,Zn,qn,Yn,Jn,$n,to,io,uo,mo,bo,Oo,wo,$o]}class Members extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1g,create_fragment$1g,safe_not_equal,{users:0})}}function create_fragment$1f(_n){let Ce,ke,$n;return{c(){Ce=element("div"),ke=element("div"),$n=text(_n[0]),attr(ke,"class","header-normal"),attr(Ce,"class","wrapper-normal ")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,ke),append(ke,$n)},p(Hn,[zn]){zn&1&&set_data($n,Hn[0])},i:noop,o:noop,d(Hn){Hn&&detach(Ce)}}}function instance$1f(_n,Ce,ke){let{title:$n}=Ce;return _n.$$set=Hn=>{"title"in Hn&&ke(0,$n=Hn.title)},[$n]}class NotFound extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1f,create_fragment$1f,safe_not_equal,{title:0})}}var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},lodash={exports:{}};/** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */lodash.exports;(function(_n,Ce){(function(){var ke,$n="4.17.21",Hn=200,zn="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",Zn="Expected a function",qn="Invalid `variable` option passed into `_.template`",Yn="__lodash_hash_undefined__",Jn=500,to="__lodash_placeholder__",io=1,uo=2,mo=4,bo=1,Oo=2,wo=1,$o=2,Do=4,xo=8,Bo=16,Vo=32,Ko=64,Mo=128,es=256,ls=512,ps=30,rs="...",Yo=800,Ys=16,sr=1,Js=2,ko=3,gs=1/0,xs=9007199254740991,Qr=17976931348623157e292,cr=NaN,ws=4294967295,Fs=ws-1,Br=ws>>>1,_r=[["ary",Mo],["bind",wo],["bindKey",$o],["curry",xo],["curryRight",Bo],["flip",ls],["partial",Vo],["partialRight",Ko],["rearg",es]],ha="[object Arguments]",hs="[object Array]",Qs="[object AsyncFunction]",zo="[object Boolean]",el="[object Date]",ga="[object DOMException]",Ca="[object Error]",za="[object Function]",Il="[object GeneratorFunction]",Zs="[object Map]",Sr="[object Number]",Us="[object Null]",fs="[object Object]",dr="[object Promise]",Vr="[object Proxy]",nr="[object RegExp]",Kr="[object Set]",ra="[object String]",Ml="[object Symbol]",xa="[object Undefined]",Nl="[object WeakMap]",Zc="[object WeakSet]",cc="[object ArrayBuffer]",gc="[object DataView]",nc="[object Float32Array]",Ed="[object Float64Array]",Zl="[object Int8Array]",Vl="[object Int16Array]",Fc="[object Int32Array]",qa="[object Uint8Array]",Ya="[object Uint8ClampedArray]",kc="[object Uint16Array]",Yl="[object Uint32Array]",rd=/\b__p \+= '';/g,Al=/\b(__p \+=) '' \+/g,gd=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Rr=/&(?:amp|lt|gt|quot|#39);/g,Pl=/[&<>"']/g,Su=RegExp(Rr.source),vs=RegExp(Pl.source),Es=/<%-([\s\S]+?)%>/g,Ks=/<%([\s\S]+?)%>/g,pr=/<%=([\s\S]+?)%>/g,ia=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ka=/^\w*$/,Ma=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Mr=/[\\^$.*+?()[\]{}|]/g,il=RegExp(Mr.source),Na=/^\s+/,vl=/\s/,Rc=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Vc=/\{\n\/\* \[wrapped with (.+)\] \*/,xc=/,? & /,zc=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ad=/[()=,{}\[\]\/\s]/,Bh=/\\(\\)?/g,Vu=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ts=/\w*$/,ks=/^[-+]0x[0-9a-f]+$/i,ir=/^0b[01]+$/i,br=/^\[object .+?Constructor\]$/,Aa=/^0o[0-7]+$/i,Ba=/^(?:0|[1-9]\d*)$/,_l=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Hc=/($^)/,Ds=/['\n\r\u2028\u2029\\]/g,tl="\\ud800-\\udfff",wu="\\u0300-\\u036f",qu="\\ufe20-\\ufe2f",Md="\\u20d0-\\u20ff",bc=wu+qu+Md,nm="\\u2700-\\u27bf",Ff="a-z\\xdf-\\xf6\\xf8-\\xff",Ud="\\xac\\xb1\\xd7\\xf7",ld="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",oc="\\u2000-\\u206f",Dc=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",bd="A-Z\\xc0-\\xd6\\xd8-\\xde",Nd="\\ufe0e\\ufe0f",ih=Ud+ld+oc+Dc,om="['’]",sm="["+tl+"]",fc="["+ih+"]",Td="["+bc+"]",Jd="\\d+",Em="["+nm+"]",ef="["+Ff+"]",Cu="[^"+tl+ih+Jd+nm+Ff+bd+"]",Qc="\\ud83c[\\udffb-\\udfff]",Cf="(?:"+Td+"|"+Qc+")",qm="[^"+tl+"]",Oc="(?:\\ud83c[\\udde6-\\uddff]){2}",cd="[\\ud800-\\udbff][\\udc00-\\udfff]",vd="["+bd+"]",ju="\\u200d",Xf="(?:"+ef+"|"+Cu+")",Sh="(?:"+vd+"|"+Cu+")",Zd="(?:"+om+"(?:d|ll|m|re|s|t|ve))?",ah="(?:"+om+"(?:D|LL|M|RE|S|T|VE))?",lh=Cf+"?",Bp="["+Nd+"]?",ch="(?:"+ju+"(?:"+[qm,Oc,cd].join("|")+")"+Bp+lh+")*",bp="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",kf="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Fh=Bp+lh+ch,jm="(?:"+[Em,Oc,cd].join("|")+")"+Fh,Fp="(?:"+[qm+Td+"?",Td,Oc,cd,sm].join("|")+")",Eg=RegExp(om,"g"),ss=RegExp(Td,"g"),As=RegExp(Qc+"(?="+Qc+")|"+Fp+Fh,"g"),Ws=RegExp([vd+"?"+ef+"+"+Zd+"(?="+[fc,vd,"$"].join("|")+")",Sh+"+"+ah+"(?="+[fc,vd+Xf,"$"].join("|")+")",vd+"?"+Xf+"+"+Zd,vd+"+"+ah,kf,bp,Jd,jm].join("|"),"g"),rr=RegExp("["+ju+tl+bc+Nd+"]"),Fr=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Wa=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Nc=-1,xl={};xl[nc]=xl[Ed]=xl[Zl]=xl[Vl]=xl[Fc]=xl[qa]=xl[Ya]=xl[kc]=xl[Yl]=!0,xl[ha]=xl[hs]=xl[cc]=xl[zo]=xl[gc]=xl[el]=xl[Ca]=xl[za]=xl[Zs]=xl[Sr]=xl[fs]=xl[nr]=xl[Kr]=xl[ra]=xl[Nl]=!1;var ul={};ul[ha]=ul[hs]=ul[cc]=ul[gc]=ul[zo]=ul[el]=ul[nc]=ul[Ed]=ul[Zl]=ul[Vl]=ul[Fc]=ul[Zs]=ul[Sr]=ul[fs]=ul[nr]=ul[Kr]=ul[ra]=ul[Ml]=ul[qa]=ul[Ya]=ul[kc]=ul[Yl]=!0,ul[Ca]=ul[za]=ul[Nl]=!1;var lu={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Gl={"&":"&","<":"<",">":">",'"':""","'":"'"},Ru={"&":"&","<":"<",">":">",""":'"',"'":"'"},xf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Hp=parseFloat,aa=parseInt,Qp=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,Bu=typeof self=="object"&&self&&self.Object===Object&&self,Uo=Qp||Bu||Function("return this")(),cs=Ce&&!Ce.nodeType&&Ce,_s=cs&&!0&&_n&&!_n.nodeType&&_n,ar=_s&&_s.exports===cs,ta=ar&&Qp.process,al=function(){try{var Vs=_s&&_s.require&&_s.require("util").types;return Vs||ta&&ta.binding&&ta.binding("util")}catch{}}(),ya=al&&al.isArrayBuffer,fu=al&&al.isDate,Lr=al&&al.isMap,qc=al&&al.isRegExp,Ef=al&&al.isSet,ku=al&&al.isTypedArray;function jc(Vs,Dr,Tr){switch(Tr.length){case 0:return Vs.call(Dr);case 1:return Vs.call(Dr,Tr[0]);case 2:return Vs.call(Dr,Tr[0],Tr[1]);case 3:return Vs.call(Dr,Tr[0],Tr[1],Tr[2])}return Vs.apply(Dr,Tr)}function Tm(Vs,Dr,Tr,Fa){for(var zl=-1,_c=Vs==null?0:Vs.length;++zl<_c;){var Wc=Vs[zl];Dr(Fa,Wc,Tr(Wc),Vs)}return Fa}function El(Vs,Dr){for(var Tr=-1,Fa=Vs==null?0:Vs.length;++Tr-1}function Vp(Vs,Dr,Tr){for(var Fa=-1,zl=Vs==null?0:Vs.length;++Fa-1;);return Tr}function zp(Vs,Dr){for(var Tr=Vs.length;Tr--&&yd(Dr,Vs[Tr],0)>-1;);return Tr}function Tg(Vs,Dr){for(var Tr=Vs.length,Fa=0;Tr--;)Vs[Tr]===Dr&&++Fa;return Fa}var Ab=Eb(lu),P1=Eb(Gl);function Yf(Vs){return"\\"+xf[Vs]}function $1(Vs,Dr){return Vs==null?ke:Vs[Dr]}function jd(Vs){return rr.test(Vs)}function $m(Vs){return Fr.test(Vs)}function R1(Vs){for(var Dr,Tr=[];!(Dr=Vs.next()).done;)Tr.push(Dr.value);return Tr}function Xm(Vs){var Dr=-1,Tr=Array(Vs.size);return Vs.forEach(function(Fa,zl){Tr[++Dr]=[zl,Fa]}),Tr}function Yg(Vs,Dr){return function(Tr){return Vs(Dr(Tr))}}function Vf(Vs,Dr){for(var Tr=-1,Fa=Vs.length,zl=0,_c=[];++Tr-1}function Nu(so,co){var So=this.__data__,Ho=Ir(So,so);return Ho<0?(++this.size,So.push([so,co])):So[Ho][1]=co,this}$r.prototype.clear=Ea,$r.prototype.delete=ll,$r.prototype.get=nl,$r.prototype.has=Xa,$r.prototype.set=Nu;function zu(so){var co=-1,So=so==null?0:so.length;for(this.clear();++co=co?so:co)),so}function td(so,co,So,Ho,ts,Os){var Is,qs=co&io,mr=co&uo,Xr=co&mo;if(So&&(Is=ts?So(so,Ho,ts,Os):So(so)),Is!==ke)return Is;if(!Vd(so))return so;var jr=$l(so);if(jr){if(Is=P0(so),!qs)return Ah(so,Is)}else{var ua=Ph(so),ja=ua==za||ua==Il;if(d1(so))return W1(so,qs);if(ua==fs||ua==ha||ja&&!ts){if(Is=mr||ja?{}:Uf(so),!qs)return mr?Ig(so,Dg(Is,so)):s1(so,Rg(Is,so))}else{if(!ul[ua])return ts?so:{};Is=ba(so,ua,qs)}}Os||(Os=new pf);var wl=Os.get(so);if(wl)return wl;Os.set(so,Is),TC(so)?so.forEach(function(Ul){Is.add(td(Ul,co,So,Ul,so,Os))}):z2(so)&&so.forEach(function(Ul,nu){Is.set(nu,td(Ul,co,So,nu,so,Os))});var Kl=Xr?mr?eu:rg:mr?_m:th,Pc=jr?ke:Kl(so);return El(Pc||so,function(Ul,nu){Pc&&(nu=Ul,Ul=so[nu]),$g(Is,nu,td(Ul,co,So,nu,so,Os))}),Is}function Gf(so){var co=th(so);return function(So){return jl(So,so,co)}}function jl(so,co,So){var Ho=So.length;if(so==null)return!Ho;for(so=Uc(so);Ho--;){var ts=So[Ho],Os=co[ts],Is=so[ts];if(Is===ke&&!(ts in so)||!Os(Is))return!1}return!0}function L1(so,co,So){if(typeof so!="function")throw new _d(Zn);return ph(function(){so.apply(ke,So)},co)}function Bd(so,co,So,Ho){var ts=-1,Os=cu,Is=!0,qs=so.length,mr=[],Xr=co.length;if(!qs)return mr;So&&(co=ud(co,Ld(So))),Ho?(Os=Vp,Is=!1):co.length>=Hn&&(Os=Mu,Is=!1,co=new Ta(co));e:for(;++tsts?0:ts+So),Ho=Ho===ke||Ho>ts?ts:Ic(Ho),Ho<0&&(Ho+=ts),Ho=So>Ho?0:FS(Ho);So0&&So(qs)?co>1?hd(qs,co-1,So,Ho,ts):vp(ts,qs):Ho||(ts[ts.length]=qs)}return ts}var wv=hS(),ep=hS(!0);function tp(so,co){return so&&wv(so,co,th)}function fm(so,co){return so&&ep(so,co,th)}function Mb(so,co){return Qf(co,function(So){return f1(so[So])})}function Pf(so,co){co=z1(co,so);for(var So=0,Ho=co.length;so!=null&&Soco}function $f(so,co){return so!=null&&iu.call(so,co)}function Ly(so,co){return so!=null&&co in Uc(so)}function I1(so,co,So){return so>=df(co,So)&&so=120&&jr.length>=120)?new Ta(Is&&jr):ke}jr=so[0];var ua=-1,ja=qs[0];e:for(;++ua-1;)qs!==so&&qp.call(qs,mr,1),qp.call(so,mr,1);return so}function hm(so,co){for(var So=so?co.length:0,Ho=So-1;So--;){var ts=co[So];if(So==Ho||ts!==Os){var Os=ts;K1(ts)?qp.call(so,ts,1):op(so,ts)}}return so}function Jp(so,co){return so+uf(Ju()*(co-so+1))}function wp(so,co,So,Ho){for(var ts=-1,Os=Sd(lm((co-so)/(So||1)),0),Is=Tr(Os);Os--;)Is[Ho?Os:++ts]=so,so+=So;return Is}function B1(so,co){var So="";if(!so||co<1||co>xs)return So;do co%2&&(So+=so),co=uf(co/2),co&&(so+=so);while(co);return So}function Sc(so,co){return bS(i1(so,co,lp),so+"")}function F1(so){return Jm(zg(so))}function x0(so,co){var So=zg(so);return Bv(So,Ec(co,0,So.length))}function nd(so,co,So,Ho){if(!Vd(so))return so;co=z1(co,so);for(var ts=-1,Os=co.length,Is=Os-1,qs=so;qs!=null&&++tsts?0:ts+co),So=So>ts?ts:So,So<0&&(So+=ts),ts=co>So?0:So-co>>>0,co>>>=0;for(var Os=Tr(ts);++Ho>>1,Is=so[Os];Is!==null&&!Cd(Is)&&(So?Is<=co:Is=Hn){var Xr=co?null:mS(so);if(Xr)return Gg(Xr);Is=!1,ts=Mu,mr=new Ta}else mr=co?[]:qs;e:for(;++Ho=Ho?so:Fl(so,co,So)}var tg=O0||function(so){return Uo.clearTimeout(so)};function W1(so,co){if(co)return so.slice();var So=so.length,Ho=Ny?Ny(So):new so.constructor(So);return so.copy(Ho),Ho}function U1(so){var co=new so.constructor(so.byteLength);return new N1(co).set(new N1(so)),co}function T0(so,co){var So=co?U1(so.buffer):so.buffer;return new so.constructor(So,so.byteOffset,so.byteLength)}function Im(so){var co=new so.constructor(so.source,Ts.exec(so));return co.lastIndex=so.lastIndex,co}function md(so){return um?Uc(um.call(so)):{}}function ng(so,co){var So=co?U1(so.buffer):so.buffer;return new so.constructor(So,so.byteOffset,so.length)}function DO(so,co){if(so!==co){var So=so!==ke,Ho=so===null,ts=so===so,Os=Cd(so),Is=co!==ke,qs=co===null,mr=co===co,Xr=Cd(co);if(!qs&&!Xr&&!Os&&so>co||Os&&Is&&mr&&!qs&&!Xr||Ho&&Is&&mr||!So&&mr||!ts)return 1;if(!Ho&&!Os&&!Xr&&so=qs)return mr;var Xr=So[Ho];return mr*(Xr=="desc"?-1:1)}}return so.index-co.index}function Hy(so,co,So,Ho){for(var ts=-1,Os=so.length,Is=So.length,qs=-1,mr=co.length,Xr=Sd(Os-Is,0),jr=Tr(mr+Xr),ua=!Ho;++qs1?So[ts-1]:ke,Is=ts>2?So[2]:ke;for(Os=so.length>3&&typeof Os=="function"?(ts--,Os):ke,Is&&gm(So[0],So[1],Is)&&(Os=ts<3?ke:Os,ts=1),co=Uc(co);++Ho-1?ts[Os?co[Is]:Is]:ke}}function Tv(so){return Y1(function(co){var So=co.length,Ho=So,ts=Ch.prototype.thru;for(so&&co.reverse();Ho--;){var Os=co[Ho];if(typeof Os!="function")throw new _d(Zn);if(ts&&!Is&&$v(Os)=="wrapper")var Is=new Ch([],!0)}for(Ho=Is?Ho:So;++Ho1&&vu.reverse(),jr&&mrqs))return!1;var Xr=Os.get(so),jr=Os.get(co);if(Xr&&jr)return Xr==co&&jr==so;var ua=-1,ja=!0,wl=So&Oo?new Ta:ke;for(Os.set(so,co),Os.set(co,so);++ua1?"& ":"")+co[Ho],co=co.join(So>2?", ":" "),so.replace(Rc,`{ +/* [wrapped with `+co+`] */ +`)}function gS(so){return $l(so)||bf(so)||!!(Ag&&so&&so[Ag])}function K1(so,co){var So=typeof so;return co=co??xs,!!co&&(So=="number"||So!="symbol"&&Ba.test(so))&&so>-1&&so%1==0&&so0){if(++co>=Yo)return arguments[0]}else co=0;return so.apply(ke,arguments)}}function Bv(so,co){var So=-1,Ho=so.length,ts=Ho-1;for(co=co===ke?Ho:co;++So1?so[co-1]:ke;return So=typeof So=="function"?(so.pop(),So):ke,D0(so,So)});function Fm(so){var co=os(so);return co.__chain__=!0,co}function _C(so,co){return co(so),so}function N0(so,co){return co(so)}var L0=Y1(function(so){var co=so.length,So=co?so[0]:0,Ho=this.__wrapped__,ts=function(Os){return Lu(Os,so)};return co>1||this.__actions__.length||!(Ho instanceof Xc)||!K1(So)?this.thru(ts):(Ho=Ho.slice(So,+So+(co?1:0)),Ho.__actions__.push({func:N0,args:[ts],thisArg:ke}),new Ch(Ho,this.__chain__).thru(function(Os){return co&&!Os.length&&Os.push(ke),Os}))});function L2(){return Fm(this)}function SC(){return new Ch(this.value(),this.__chain__)}function kS(){this.__values__===ke&&(this.__values__=BS(this.value()));var so=this.__index__>=this.__values__.length,co=so?ke:this.__values__[this.__index__++];return{done:so,value:co}}function Hm(){return this}function GO(so){for(var co,So=this;So instanceof n1;){var Ho=hC(So);Ho.__index__=0,Ho.__values__=ke,co?ts.__wrapped__=Ho:co=Ho;var ts=Ho;So=So.__wrapped__}return ts.__wrapped__=so,co}function Rd(){var so=this.__wrapped__;if(so instanceof Xc){var co=so;return this.__actions__.length&&(co=new Xc(this)),co=co.reverse(),co.__actions__.push({func:N0,args:[Df],thisArg:ke}),new Ch(co,this.__chain__)}return this.thru(Df)}function Bg(){return E0(this.__wrapped__,this.__actions__)}var qv=Zh(function(so,co,So){iu.call(so,So)?++so[So]:Nm(so,So,1)});function Qb(so,co,So){var Ho=$l(so)?hu:Er;return So&&gm(so,co,So)&&(co=ke),Ho(so,Ll(co,3))}function I0(so,co){var So=$l(so)?Qf:hc;return So(so,Ll(co,3))}var B0=Ev(vm),ob=Ev(Wy);function wC(so,co){return hd(jv(so,co),1)}function F0(so,co){return hd(jv(so,co),gs)}function Vb(so,co,So){return So=So===ke?1:Ic(So),hd(jv(so,co),So)}function zb(so,co){var So=$l(so)?El:pu;return So(so,Ll(co,3))}function xS(so,co){var So=$l(so)?Hf:C0;return So(so,Ll(co,3))}var I2=Zh(function(so,co,So){iu.call(so,So)?so[So].push(co):Nm(so,So,[co])});function ES(so,co,So,Ho){so=bu(so)?so:zg(so),So=So&&!Ho?Ic(So):0;var ts=so.length;return So<0&&(So=Sd(ts+So,0)),eO(so)?So<=ts&&so.indexOf(co,So)>-1:!!ts&&yd(so,co,So)>-1}var B2=Sc(function(so,co,So){var Ho=-1,ts=typeof co=="function",Os=bu(so)?Tr(so.length):[];return pu(so,function(Is){Os[++Ho]=ts?jc(co,Is,So):np(Is,co,So)}),Os}),KO=Zh(function(so,co,So){Nm(so,So,co)});function jv(so,co){var So=$l(so)?ud:Ms;return So(so,Ll(co,3))}function Qm(so,co,So,Ho){return so==null?[]:($l(co)||(co=co==null?[]:[co]),So=Ho?ke:So,$l(So)||(So=So==null?[]:[So]),Xu(so,co,So))}var CC=Zh(function(so,co,So){so[So?0:1].push(co)},function(){return[[],[]]});function Xv(so,co,So){var Ho=$l(so)?vc:Tb,ts=arguments.length<3;return Ho(so,Ll(co,4),So,ts,pu)}function kC(so,co,So){var Ho=$l(so)?Am:Tb,ts=arguments.length<3;return Ho(so,Ll(co,4),So,ts,C0)}function F2(so,co){var So=$l(so)?Qf:hc;return So(so,ug(Ll(co,3)))}function qy(so){var co=$l(so)?Jm:F1;return co(so)}function Wb(so,co,So){(So?gm(so,co,So):co===ke)?co=1:co=Ic(co);var Ho=$l(so)?_v:x0;return Ho(so,co)}function JO(so){var co=$l(so)?Gp:H1;return co(so)}function rc(so){if(so==null)return 0;if(bu(so))return eO(so)?Wp(so):so.length;var co=Ph(so);return co==Zs||co==Kr?so.size:Po(so).length}function Vm(so,co,So){var Ho=$l(so)?Pm:Xl;return So&&gm(so,co,So)&&(co=ke),Ho(so,Ll(co,3))}var Fg=Sc(function(so,co){if(so==null)return[];var So=co.length;return So>1&&gm(so,co[0],co[1])?co=[]:So>2&&gm(co[0],co[1],co[2])&&(co=[co[0]]),Xu(so,hd(co,1),[])}),Yv=bv||function(){return Uo.Date.now()};function tu(so,co){if(typeof co!="function")throw new _d(Zn);return so=Ic(so),function(){if(--so<1)return co.apply(this,arguments)}}function Gv(so,co,So){return co=So?ke:co,co=so&&co==null?so.length:co,sg(so,Mo,ke,ke,ke,ke,co)}function e_(so,co){var So;if(typeof co!="function")throw new _d(Zn);return so=Ic(so),function(){return--so>0&&(So=co.apply(this,arguments)),so<=1&&(co=ke),So}}var Yd=Sc(function(so,co,So){var Ho=wo;if(So.length){var ts=Vf(So,qh(Yd));Ho|=Vo}return sg(so,Ho,co,So,ts)}),Hg=Sc(function(so,co,So){var Ho=wo|$o;if(So.length){var ts=Vf(So,qh(Hg));Ho|=Vo}return sg(co,Ho,so,So,ts)});function sb(so,co,So){co=So?ke:co;var Ho=sg(so,xo,ke,ke,ke,ke,ke,co);return Ho.placeholder=sb.placeholder,Ho}function t_(so,co,So){co=So?ke:co;var Ho=sg(so,Bo,ke,ke,ke,ke,ke,co);return Ho.placeholder=t_.placeholder,Ho}function jy(so,co,So){var Ho,ts,Os,Is,qs,mr,Xr=0,jr=!1,ua=!1,ja=!0;if(typeof so!="function")throw new _d(Zn);co=ap(co)||0,Vd(So)&&(jr=!!So.leading,ua="maxWait"in So,Os=ua?Sd(ap(So.maxWait)||0,co):Os,ja="trailing"in So?!!So.trailing:ja);function wl(Mf){var Dp=Ho,Tu=ts;return Ho=ts=ke,Xr=Mf,Is=so.apply(Tu,Dp),Is}function Kl(Mf){return Xr=Mf,qs=ph(nu,co),jr?wl(Mf):Is}function Pc(Mf){var Dp=Mf-mr,Tu=Mf-Xr,yx=co-Dp;return ua?df(yx,Os-Tu):yx}function Ul(Mf){var Dp=Mf-mr,Tu=Mf-Xr;return mr===ke||Dp>=co||Dp<0||ua&&Tu>=Os}function nu(){var Mf=Yv();if(Ul(Mf))return vu(Mf);qs=ph(nu,Pc(Mf))}function vu(Mf){return qs=ke,ja&&Ho?wl(Mf):(Ho=ts=ke,Is)}function nh(){qs!==ke&&tg(qs),Xr=0,Ho=mr=ts=qs=ke}function Mh(){return qs===ke?Is:vu(Yv())}function Rp(){var Mf=Yv(),Dp=Ul(Mf);if(Ho=arguments,ts=this,mr=Mf,Dp){if(qs===ke)return Kl(mr);if(ua)return tg(qs),qs=ph(nu,co),wl(mr)}return qs===ke&&(qs=ph(nu,co)),Is}return Rp.cancel=nh,Rp.flush=Mh,Rp}var Xy=Sc(function(so,co){return L1(so,1,co)}),TS=Sc(function(so,co,So){return L1(so,ap(co)||0,So)});function n_(so){return sg(so,ls)}function Pp(so,co){if(typeof so!="function"||co!=null&&typeof co!="function")throw new _d(Zn);var So=function(){var Ho=arguments,ts=co?co.apply(this,Ho):Ho[0],Os=So.cache;if(Os.has(ts))return Os.get(ts);var Is=so.apply(this,Ho);return So.cache=Os.set(ts,Is)||Os,Is};return So.cache=new(Pp.Cache||zu),So}Pp.Cache=zu;function ug(so){if(typeof so!="function")throw new _d(Zn);return function(){var co=arguments;switch(co.length){case 0:return!so.call(this);case 1:return!so.call(this,co[0]);case 2:return!so.call(this,co[0],co[1]);case 3:return!so.call(this,co[0],co[1],co[2])}return!so.apply(this,co)}}function H2(so){return e_(2,so)}var lr=Pd(function(so,co){co=co.length==1&&$l(co[0])?ud(co[0],Ld(Ll())):ud(hd(co,1),Ld(Ll()));var So=co.length;return Sc(function(Ho){for(var ts=-1,Os=df(Ho.length,So);++ts=co}),bf=Gs(function(){return arguments}())?Gs:function(so){return yf(so)&&iu.call(so,"callee")&&!Zp.call(so,"callee")},$l=Tr.isArray,Rh=ya?Ld(ya):xh;function bu(so){return so!=null&&ib(so.length)&&!f1(so)}function vf(so){return yf(so)&&bu(so)}function Gy(so){return so===!0||so===!1||yf(so)&&Fd(so)==zo}var d1=Rb||W0,Ky=fu?Ld(fu):Lm;function DS(so){return yf(so)&&so.nodeType===1&&!Ub(so)}function xC(so){if(so==null)return!0;if(bu(so)&&($l(so)||typeof so=="string"||typeof so.splice=="function"||d1(so)||Vg(so)||bf(so)))return!so.length;var co=Ph(so);if(co==Zs||co==Kr)return!so.size;if(Ep(so))return!Po(so).length;for(var So in so)if(iu.call(so,So))return!1;return!0}function r_(so,co){return mh(so,co)}function MS(so,co,So){So=typeof So=="function"?So:ke;var Ho=So?So(so,co):ke;return Ho===ke?mh(so,co,ke,So):!!Ho}function NS(so){if(!yf(so))return!1;var co=Fd(so);return co==Ca||co==ga||typeof so.message=="string"&&typeof so.name=="string"&&!Ub(so)}function V2(so){return typeof so=="number"&&yl(so)}function f1(so){if(!Vd(so))return!1;var co=Fd(so);return co==za||co==Il||co==Qs||co==Vr}function EC(so){return typeof so=="number"&&so==Ic(so)}function ib(so){return typeof so=="number"&&so>-1&&so%1==0&&so<=xs}function Vd(so){var co=typeof so;return so!=null&&(co=="object"||co=="function")}function yf(so){return so!=null&&typeof so=="object"}var z2=Lr?Ld(Lr):Xd;function ym(so,co){return so===co||Hd(so,co,G1(co))}function $T(so,co,So){return So=typeof So=="function"?So:ke,Hd(so,co,G1(co),So)}function Qg(so){return IS(so)&&so!=+so}function Zr(so){if(HO(so))throw new zl(zn);return Iy(so)}function LS(so){return so===null}function Of(so){return so==null}function IS(so){return typeof so=="number"||yf(so)&&Fd(so)==Sr}function Ub(so){if(!yf(so)||Fd(so)!=fs)return!1;var co=t1(so);if(co===null)return!0;var So=iu.call(co,"constructor")&&co.constructor;return typeof So=="function"&&So instanceof So&&Rm.call(So)==gv}var Jy=qc?Ld(qc):Th;function Om(so){return EC(so)&&so>=-xs&&so<=xs}var TC=Ef?Ld(Ef):Kp;function eO(so){return typeof so=="string"||!$l(so)&&yf(so)&&Fd(so)==ra}function Cd(so){return typeof so=="symbol"||yf(so)&&Fd(so)==Ml}var Vg=ku?Ld(ku):Ua;function tO(so){return so===ke}function h1(so){return yf(so)&&Ph(so)==Nl}function dg(so){return yf(so)&&Fd(so)==Zc}var ma=Jc(is),ip=Jc(function(so,co){return so<=co});function BS(so){if(!so)return[];if(bu(so))return eO(so)?zf(so):Ah(so);if(Kc&&so[Kc])return R1(so[Kc]());var co=Ph(so),So=co==Zs?Xm:co==Kr?Gg:zg;return So(so)}function m1(so){if(!so)return so===0?so:0;if(so=ap(so),so===gs||so===-gs){var co=so<0?-1:1;return co*Qr}return so===so?so:0}function Ic(so){var co=m1(so),So=co%1;return co===co?So?co-So:co:0}function FS(so){return so?Ec(Ic(so),0,ws):0}function ap(so){if(typeof so=="number")return so;if(Cd(so))return cr;if(Vd(so)){var co=typeof so.valueOf=="function"?so.valueOf():so;so=Vd(co)?co+"":co}if(typeof so!="string")return so===0?so:+so;so=Tf(so);var So=ir.test(so);return So||Aa.test(so)?aa(so.slice(2),So?2:8):ks.test(so)?cr:+so}function i_(so){return kp(so,_m(so))}function W2(so){return so?Ec(Ic(so),-xs,xs):so===0?so:0}function Zu(so){return so==null?"":Wu(so)}var U2=xp(function(so,co){if(Ep(co)||bu(co)){kp(co,th(co),so);return}for(var So in co)iu.call(co,So)&&$g(so,So,co[So])}),bh=xp(function(so,co){kp(co,_m(co),so)}),Zb=xp(function(so,co,So,Ho){kp(co,_m(co),so,Ho)}),Z2=xp(function(so,co,So,Ho){kp(co,th(co),so,Ho)}),q2=Y1(Lu);function HS(so,co){var So=dm(so);return co==null?So:Rg(So,co)}var j2=Sc(function(so,co){so=Uc(so);var So=-1,Ho=co.length,ts=Ho>2?co[2]:ke;for(ts&&gm(co[0],co[1],ts)&&(Ho=1);++So1),Os}),kp(so,eu(so),So),Ho&&(So=td(So,io|uo|mo,A2));for(var ts=co.length;ts--;)op(So,co[ts]);return So});function MC(so,co){return lb(so,ug(Ll(co)))}var RT=Y1(function(so,co){return so==null?{}:Ac(so,co)});function lb(so,co){if(so==null)return{};var So=ud(eu(so),function(Ho){return[Ho]});return co=Ll(co),gu(so,So,function(Ho,ts){return co(Ho,ts[0])})}function K2(so,co,So){co=z1(co,so);var Ho=-1,ts=co.length;for(ts||(ts=1,so=ke);++Hoco){var Ho=so;so=co,co=Ho}if(So||so%1||co%1){var ts=Ju();return df(so+ts*(co-so+Hp("1e-"+((ts+"").length-1))),co)}return Jp(so,co)}var p1=j1(function(so,co,So){return co=co.toLowerCase(),so+(So?ty(co):co)});function ty(so){return h_(Zu(so).toLowerCase())}function ny(so){return so=Zu(so),so&&so.replace(_l,Ab).replace(ss,"")}function u_(so,co,So){so=Zu(so),co=Wu(co);var Ho=so.length;So=So===ke?Ho:Ec(Ic(So),0,Ho);var ts=So;return So-=co.length,So>=0&&so.slice(So,ts)==co}function oO(so){return so=Zu(so),so&&vs.test(so)?so.replace(Pl,P1):so}function $p(so){return so=Zu(so),so&&il.test(so)?so.replace(Mr,"\\$&"):so}var oy=j1(function(so,co,So){return so+(So?"-":"")+co.toLowerCase()}),sO=j1(function(so,co,So){return so+(So?" ":"")+co.toLowerCase()}),qb=kv("toLowerCase");function d_(so,co,So){so=Zu(so),co=Ic(co);var Ho=co?Wp(so):0;if(!co||Ho>=co)return so;var ts=(co-Ho)/2;return Lb(uf(ts),So)+so+Lb(lm(ts),So)}function nx(so,co,So){so=Zu(so),co=Ic(co);var Ho=co?Wp(so):0;return co&&Ho>>0,So?(so=Zu(so),so&&(typeof co=="string"||co!=null&&!Jy(co))&&(co=Wu(co),!co&&jd(so))?Cp(zf(so),0,So):so.split(co,So)):[]}var HC=j1(function(so,co,So){return so+(So?" ":"")+h_(co)});function ax(so,co,So){return so=Zu(so),So=So==null?0:Ec(Ic(So),0,so.length),co=Wu(co),so.slice(So,So+co.length)==co}function QC(so,co,So){var Ho=os.templateSettings;So&&gm(so,co,So)&&(co=ke),so=Zu(so),co=Zb({},co,Ho,cC);var ts=Zb({},co.imports,Ho.imports,cC),Os=th(ts),Is=Od(ts,Os),qs,mr,Xr=0,jr=co.interpolate||Hc,ua="__p += '",ja=D1((co.escape||Hc).source+"|"+jr.source+"|"+(jr===pr?Vu:Hc).source+"|"+(co.evaluate||Hc).source+"|$","g"),wl="//# sourceURL="+(iu.call(co,"sourceURL")?(co.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Nc+"]")+` +`;so.replace(ja,function(Ul,nu,vu,nh,Mh,Rp){return vu||(vu=nh),ua+=so.slice(Xr,Rp).replace(Ds,Yf),nu&&(qs=!0,ua+=`' + +__e(`+nu+`) + +'`),Mh&&(mr=!0,ua+=`'; +`+Mh+`; +__p += '`),vu&&(ua+=`' + +((__t = (`+vu+`)) == null ? '' : __t) + +'`),Xr=Rp+Ul.length,Ul}),ua+=`'; +`;var Kl=iu.call(co,"variable")&&co.variable;if(!Kl)ua=`with (obj) { +`+ua+` +} +`;else if(ad.test(Kl))throw new zl(qn);ua=(mr?ua.replace(rd,""):ua).replace(Al,"$1").replace(gd,"$1;"),ua="function("+(Kl||"obj")+`) { +`+(Kl?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(qs?", __e = _.escape":"")+(mr?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+ua+`return __p +}`;var Pc=zC(function(){return _c(Os,wl+"return "+ua).apply(ke,Is)});if(Pc.source=ua,NS(Pc))throw Pc;return Pc}function lx(so){return Zu(so).toLowerCase()}function f_(so){return Zu(so).toUpperCase()}function cx(so,co,So){if(so=Zu(so),so&&(So||co===ke))return Tf(so);if(!so||!(co=Wu(co)))return so;var Ho=zf(so),ts=zf(co),Os=Vh(Ho,ts),Is=zp(Ho,ts)+1;return Cp(Ho,Os,Is).join("")}function VC(so,co,So){if(so=Zu(so),so&&(So||co===ke))return so.slice(0,b0(so)+1);if(!so||!(co=Wu(co)))return so;var Ho=zf(so),ts=zp(Ho,zf(co))+1;return Cp(Ho,0,ts).join("")}function sy(so,co,So){if(so=Zu(so),so&&(So||co===ke))return so.replace(Na,"");if(!so||!(co=Wu(co)))return so;var Ho=zf(so),ts=Vh(Ho,zf(co));return Cp(Ho,ts).join("")}function jS(so,co){var So=ps,Ho=rs;if(Vd(co)){var ts="separator"in co?co.separator:ts;So="length"in co?Ic(co.length):So,Ho="omission"in co?Wu(co.omission):Ho}so=Zu(so);var Os=so.length;if(jd(so)){var Is=zf(so);Os=Is.length}if(So>=Os)return so;var qs=So-Wp(Ho);if(qs<1)return Ho;var mr=Is?Cp(Is,0,qs).join(""):so.slice(0,qs);if(ts===ke)return mr+Ho;if(Is&&(qs+=mr.length-qs),Jy(ts)){if(so.slice(qs).search(ts)){var Xr,jr=mr;for(ts.global||(ts=D1(ts.source,Zu(Ts.exec(ts))+"g")),ts.lastIndex=0;Xr=ts.exec(jr);)var ua=Xr.index;mr=mr.slice(0,ua===ke?qs:ua)}}else if(so.indexOf(Wu(ts),qs)!=qs){var ja=mr.lastIndexOf(ts);ja>-1&&(mr=mr.slice(0,ja))}return mr+Ho}function XS(so){return so=Zu(so),so&&Su.test(so)?so.replace(Rr,Cs):so}var YS=j1(function(so,co,So){return so+(So?" ":"")+co.toUpperCase()}),h_=kv("toUpperCase");function m_(so,co,So){return so=Zu(so),co=So?ke:co,co===ke?$m(so)?Kg(so):A1(so):so.match(co)||[]}var zC=Sc(function(so,co){try{return jc(so,ke,co)}catch(So){return NS(So)?So:new zl(So)}}),p_=Y1(function(so,co){return El(co,function(So){So=Bm(So),Nm(so,So,Yd(so[So],so))}),so});function g_(so){var co=so==null?0:so.length,So=Ll();return so=co?ud(so,function(Ho){if(typeof Ho[1]!="function")throw new _d(Zn);return[So(Ho[0]),Ho[1]]}):[],Sc(function(Ho){for(var ts=-1;++tsxs)return[];var So=ws,Ho=df(so,ws);co=Ll(co),so-=ws;for(var ts=Gc(Ho,co);++So0||co<0)?new Xc(So):(so<0?So=So.takeRight(-so):so&&(So=So.drop(so)),co!==ke&&(co=Ic(co),So=co<0?So.dropRight(-co):So.take(co-so)),So)},Xc.prototype.takeRightWhile=function(so){return this.reverse().takeWhile(so).reverse()},Xc.prototype.toArray=function(){return this.take(ws)},tp(Xc.prototype,function(so,co){var So=/^(?:filter|find|map|reject)|While$/.test(co),Ho=/^(?:head|last)$/.test(co),ts=os[Ho?"take"+(co=="last"?"Right":""):co],Os=Ho||/^find/.test(co);ts&&(os.prototype[co]=function(){var Is=this.__wrapped__,qs=Ho?[1]:arguments,mr=Is instanceof Xc,Xr=qs[0],jr=mr||$l(Is),ua=function(nu){var vu=ts.apply(os,vp([nu],qs));return Ho&&ja?vu[0]:vu};jr&&So&&typeof Xr=="function"&&Xr.length!=1&&(mr=jr=!1);var ja=this.__chain__,wl=!!this.__actions__.length,Kl=Os&&!ja,Pc=mr&&!wl;if(!Os&&jr){Is=Pc?Is:new Xc(this);var Ul=so.apply(Is,qs);return Ul.__actions__.push({func:N0,args:[ua],thisArg:ke}),new Ch(Ul,ja)}return Kl&&Pc?so.apply(this,qs):(Ul=this.thru(ua),Kl?Ho?Ul.value()[0]:Ul.value():Ul)})}),El(["pop","push","shift","sort","splice","unshift"],function(so){var co=Wh[so],So=/^(?:push|sort|unshift)$/.test(so)?"tap":"thru",Ho=/^(?:pop|shift)$/.test(so);os.prototype[so]=function(){var ts=arguments;if(Ho&&!this.__chain__){var Os=this.value();return co.apply($l(Os)?Os:[],ts)}return this[So](function(Is){return co.apply($l(Is)?Is:[],ts)})}}),tp(Xc.prototype,function(so,co){var So=os[co];if(So){var Ho=So.name+"";iu.call(Fu,Ho)||(Fu[Ho]=[]),Fu[Ho].push({name:co,func:So})}}),Fu[Wl(ke,$o).name]=[{name:"wrapper",func:ke}],Xc.prototype.clone=Ov,Xc.prototype.reverse=Db,Xc.prototype.value=S0,os.prototype.at=L0,os.prototype.chain=L2,os.prototype.commit=SC,os.prototype.next=kS,os.prototype.plant=GO,os.prototype.reverse=Rd,os.prototype.toJSON=os.prototype.valueOf=os.prototype.value=Bg,os.prototype.first=os.prototype.head,Kc&&(os.prototype[Kc]=Hm),os},Jg=v0();_s?((_s.exports=Jg)._=Jg,cs._=Jg):Uo._=Jg}).call(commonjsGlobal)})(lodash,lodash.exports);var lodashExports=lodash.exports;function create_fragment$1e(_n){let Ce,ke=_n[5].path+"";return{c(){Ce=svg_element("svg"),attr(Ce,"class","bi svelte-r4pd9j"),attr(Ce,"xmlns","http://www.w3.org/2000/svg"),attr(Ce,"width",_n[0]),attr(Ce,"height",_n[1]),attr(Ce,"viewBox",_n[5].viewBox),attr(Ce,"aria-labelledby",_n[2]),attr(Ce,"role","presentation"),attr(Ce,"stroke",_n[4]),attr(Ce,"fill",_n[3])},m($n,Hn){insert$1($n,Ce,Hn),Ce.innerHTML=ke},p($n,[Hn]){Hn&1&&attr(Ce,"width",$n[0]),Hn&2&&attr(Ce,"height",$n[1]),Hn&4&&attr(Ce,"aria-labelledby",$n[2]),Hn&16&&attr(Ce,"stroke",$n[4]),Hn&8&&attr(Ce,"fill",$n[3])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$1e(_n,Ce,ke){const $n={"trash-can":{path:'',viewBox:"0 0 448 512"},"circle-chevron-down":{path:'',viewBox:"0 0 512 512"},"circle-chevron-up":{path:'',viewBox:"0 0 512 512"},ellipsis:{path:'',viewBox:"0 0 448 512"},"ellipsis-vertical":{path:'',viewBox:"0 0 128 512"},"angles-down":{path:'',viewBox:"0 0 384 512"},"angle-right":{path:'',viewBox:"0 0 256 512"},"photo-film":{path:'',viewBox:"0 0 640 512"},file:{path:'',viewBox:"0 0 384 512"},"circle-info":{path:'',viewBox:"0 0 512 512"},"table-columns":{path:'',viewBox:"0 0 512 512"},"arrow-down-a-z":{path:'',viewBox:"0 0 512 512"},"arrow-up-short-wide":{path:'',viewBox:"0 0 576 512"},"arrow-down-wide-short":{path:'',viewBox:"0 0 576 512"},filter:{path:'',viewBox:"0 0 512 512"},calendar:{path:'',viewBox:"0 0 448 512"},pencil:{path:'',viewBox:"0 0 512 512"},database:{path:'',viewBox:"0 0 448 512"},dice:{path:'',viewBox:"0 0 640 512"},"triangle-exclamation":{path:'',viewBox:"0 0 512 512"},eye:{path:'',viewBox:"0 0 576 512"},"circle-plus":{path:'',viewBox:"0 0 512 512"},"magnifying-glass":{path:'',viewBox:"0 0 512 512"},expand:{path:'',viewBox:"0 0 448 512"},compress:{path:'',viewBox:"0 0 448 512"},check:{path:'',viewBox:"0 0 448 512"},close:{path:'',viewBox:"0 0 24 24"},"arrow-left":{path:'',viewBox:"0 0 24 24"},list:{path:'',viewBox:"0 0 24 24"},"ordered-list":{path:'',viewBox:"0 0 24 24"},italic:{path:'',viewBox:"0 0 24 24"}};let{width:Hn=16}=Ce,{height:zn=16}=Ce,{icon:Zn=""}=Ce,{fill:qn="currentColor"}=Ce,{stroke:Yn="currentColor"}=Ce,Jn=$n[Zn];return _n.$$set=to=>{"width"in to&&ke(0,Hn=to.width),"height"in to&&ke(1,zn=to.height),"icon"in to&&ke(2,Zn=to.icon),"fill"in to&&ke(3,qn=to.fill),"stroke"in to&&ke(4,Yn=to.stroke)},[Hn,zn,Zn,qn,Yn,Jn]}class Icon extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1e,create_fragment$1e,safe_not_equal,{width:0,height:1,icon:2,fill:3,stroke:4})}}function create_fragment$1d(_n){let Ce,ke,$n;return{c(){Ce=element("input"),attr(Ce,"type","checkbox"),Ce.value=_n[0],attr(Ce,"class","switch"),Ce.checked=_n[1]},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"change",_n[2]),ke=!0)},p(Hn,[zn]){zn&1&&(Ce.value=Hn[0]),zn&2&&(Ce.checked=Hn[1])},i:noop,o:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function instance$1d(_n,Ce,ke){let{value:$n}=Ce,{checked:Hn=!1}=Ce;function zn(Zn){bubble.call(this,_n,Zn)}return _n.$$set=Zn=>{"value"in Zn&&ke(0,$n=Zn.value),"checked"in Zn&&ke(1,Hn=Zn.checked)},[$n,Hn,zn]}class Switch extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1d,create_fragment$1d,safe_not_equal,{value:0,checked:1})}}function create_if_block_3$9(_n){let Ce,ke;return Ce=new Switch({props:{value:"published",checked:_n[0].status==="published"}}),Ce.$on("change",_n[1]),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.checked=$n[0].status==="published"),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_2$d(_n){let Ce;return{c(){Ce=text("Trashed")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_if_block_1$t(_n){let Ce;return{c(){Ce=text("Draft")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_if_block$S(_n){let Ce;return{c(){Ce=text("Published")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_fragment$1c(_n){let Ce,ke,$n,Hn=_n[0].status!=="trashed"&&create_if_block_3$9(_n);function zn(Yn,Jn){if(Yn[0].status==="published")return create_if_block$S;if(Yn[0].status==="draft")return create_if_block_1$t;if(Yn[0].status==="trashed")return create_if_block_2$d}let Zn=zn(_n),qn=Zn&&Zn(_n);return{c(){Hn&&Hn.c(),Ce=space$3(),qn&&qn.c(),ke=empty$1()},m(Yn,Jn){Hn&&Hn.m(Yn,Jn),insert$1(Yn,Ce,Jn),qn&&qn.m(Yn,Jn),insert$1(Yn,ke,Jn),$n=!0},p(Yn,[Jn]){Yn[0].status!=="trashed"?Hn?(Hn.p(Yn,Jn),Jn&1&&transition_in(Hn,1)):(Hn=create_if_block_3$9(Yn),Hn.c(),transition_in(Hn,1),Hn.m(Ce.parentNode,Ce)):Hn&&(group_outros(),transition_out(Hn,1,1,()=>{Hn=null}),check_outros()),Zn!==(Zn=zn(Yn))&&(qn&&qn.d(1),qn=Zn&&Zn(Yn),qn&&(qn.c(),qn.m(ke.parentNode,ke)))},i(Yn){$n||(transition_in(Hn),$n=!0)},o(Yn){transition_out(Hn),$n=!1},d(Yn){Yn&&(detach(Ce),detach(ke)),Hn&&Hn.d(Yn),qn&&qn.d(Yn)}}}function instance$1c(_n,Ce,ke){let{status:$n="draft"}=Ce,{record:Hn}=Ce;function zn(Zn){Zn.target.checked?ke(2,$n="published"):ke(2,$n="draft")}return _n.$$set=Zn=>{"status"in Zn&&ke(2,$n=Zn.status),"record"in Zn&&ke(0,Hn=Zn.record)},[Hn,zn,$n]}class StatusSelect extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1c,create_fragment$1c,safe_not_equal,{status:2,record:0})}}function create_if_block$R(_n){let Ce,ke;return Ce=new Dropdown({props:{$$slots:{button:[create_button_slot$8],default:[create_default_slot$9]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&270&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_1$s(_n){let Ce,ke,$n,Hn;return{c(){Ce=element("a"),ke=text("Clone"),attr(Ce,"class","dropdown-item"),attr(Ce,"href",_n[4].lucentUrl)},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,ke),$n||(Hn=listen(Ce,"click",_n[5]),$n=!0)},p:noop,d(zn){zn&&detach(Ce),$n=!1,Hn()}}}function create_default_slot$9(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo=!_n[3]&&create_if_block_1$s(_n);return{c(){Ce=element("h6"),Ce.textContent="Record Actions",ke=space$3(),$n=element("a"),Hn=text("Create new"),Zn=space$3(),uo&&uo.c(),qn=space$3(),Yn=element("a"),Jn=text("Revisions"),attr(Ce,"class","dropdown-header"),attr($n,"class","dropdown-item"),attr($n,"href",zn=_n[4].lucentUrl+"/records/new?schema="+_n[2].name),attr(Yn,"class","dropdown-item"),attr(Yn,"href",_n[4].lucentUrl)},m(mo,bo){insert$1(mo,Ce,bo),insert$1(mo,ke,bo),insert$1(mo,$n,bo),append($n,Hn),insert$1(mo,Zn,bo),uo&&uo.m(mo,bo),insert$1(mo,qn,bo),insert$1(mo,Yn,bo),append(Yn,Jn),to||(io=listen(Yn,"click",prevent_default(_n[6])),to=!0)},p(mo,bo){bo&4&&zn!==(zn=mo[4].lucentUrl+"/records/new?schema="+mo[2].name)&&attr($n,"href",zn),mo[3]?uo&&(uo.d(1),uo=null):uo?uo.p(mo,bo):(uo=create_if_block_1$s(mo),uo.c(),uo.m(qn.parentNode,qn))},d(mo){mo&&(detach(Ce),detach(ke),detach($n),detach(Zn),detach(qn),detach(Yn)),uo&&uo.d(mo),to=!1,io()}}}function create_button_slot$8(_n){let Ce,ke,$n;return ke=new Icon({props:{icon:"ellipsis"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),attr(Ce,"slot","button")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p:noop,i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_fragment$1b(_n){let Ce,ke,$n,Hn,zn,Zn=!_n[3]&&create_if_block$R(_n);function qn(Jn){_n[7](Jn)}let Yn={record:_n[0]};return _n[0].status!==void 0&&(Yn.status=_n[0].status),$n=new StatusSelect({props:Yn}),binding_callbacks.push(()=>bind($n,"status",qn)),{c(){Ce=element("div"),Zn&&Zn.c(),ke=space$3(),create_component($n.$$.fragment),set_style(Ce,"display","flex"),set_style(Ce,"align-items","center"),set_style(Ce,"gap","10px")},m(Jn,to){insert$1(Jn,Ce,to),Zn&&Zn.m(Ce,null),append(Ce,ke),mount_component($n,Ce,null),zn=!0},p(Jn,[to]){Jn[3]?Zn&&(group_outros(),transition_out(Zn,1,1,()=>{Zn=null}),check_outros()):Zn?(Zn.p(Jn,to),to&8&&transition_in(Zn,1)):(Zn=create_if_block$R(Jn),Zn.c(),transition_in(Zn,1),Zn.m(Ce,ke));const io={};to&1&&(io.record=Jn[0]),!Hn&&to&1&&(Hn=!0,io.status=Jn[0].status,add_flush_callback(()=>Hn=!1)),$n.$set(io)},i(Jn){zn||(transition_in(Zn),transition_in($n.$$.fragment,Jn),zn=!0)},o(Jn){transition_out(Zn),transition_out($n.$$.fragment,Jn),zn=!1},d(Jn){Jn&&detach(Ce),Zn&&Zn.d(),destroy_component($n)}}}function instance$1b(_n,Ce,ke){const $n=getContext$1("channel");let{schema:Hn}=Ce,{record:zn}=Ce,{isCreateMode:Zn}=Ce,{activeContentTab:qn}=Ce;function Yn(io){io.preventDefault(),axios.post($n.lucentUrl+"/records/clone/"+zn.id).then(uo=>{window.location=$n.lucentUrl+"/records/"+uo.data.id}).catch(uo=>{})}const Jn=io=>ke(1,qn="_info");function to(io){_n.$$.not_equal(zn.status,io)&&(zn.status=io,ke(0,zn))}return _n.$$set=io=>{"schema"in io&&ke(2,Hn=io.schema),"record"in io&&ke(0,zn=io.record),"isCreateMode"in io&&ke(3,Zn=io.isCreateMode),"activeContentTab"in io&&ke(1,qn=io.activeContentTab)},[zn,qn,Hn,Zn,$n,Yn,Jn,to]}class EditHeader extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1b,create_fragment$1b,safe_not_equal,{schema:2,record:0,isCreateMode:3,activeContentTab:1})}}function imgurl(_n,Ce){return Ce._file.mime==="image/svg+xml"?fileurl(_n,Ce):_n.filesUrl+`/thumbs/${Ce._file.path}`}function fileurl(_n,Ce){return _n.filesUrl+`/${Ce._file.path}`}function htmlurl(_n,Ce,ke){let $n="",Hn=fileurl(_n,Ce);if(Ce._file.width>0){let zn=Hn;ke&&(zn=_n.filesUrl+`/templates/${ke}/${Ce._file.path}`),$n=`${Ce._file.path}`}else Ce._file.mime==="image/svg+xml"?$n=`${Ce._file.path}`:$n=`${Ce._file.originalName}`;return $n}function create_if_block_1$r(_n){let Ce,ke,$n,Hn,zn;const Zn=[create_if_block_2$c,create_else_block$m],qn=[];function Yn(Jn,to){return to&1&&(Ce=null),Ce==null&&(Ce=!!Jn[0]._file.mime.startsWith("image")),Ce?0:1}return ke=Yn(_n,-1),$n=qn[ke]=Zn[ke](_n),{c(){$n.c(),Hn=empty$1()},m(Jn,to){qn[ke].m(Jn,to),insert$1(Jn,Hn,to),zn=!0},p(Jn,to){let io=ke;ke=Yn(Jn,to),ke===io?qn[ke].p(Jn,to):(group_outros(),transition_out(qn[io],1,1,()=>{qn[io]=null}),check_outros(),$n=qn[ke],$n?$n.p(Jn,to):($n=qn[ke]=Zn[ke](Jn),$n.c()),transition_in($n,1),$n.m(Hn.parentNode,Hn))},i(Jn){zn||(transition_in($n),zn=!0)},o(Jn){transition_out($n),zn=!1},d(Jn){Jn&&detach(Hn),qn[ke].d(Jn)}}}function create_else_block$m(_n){let Ce,ke,$n,Hn,zn,Zn=_n[0]._file.path.split(".").pop().toLowerCase()+"",qn,Yn,Jn,to;return ke=new Icon({props:{icon:"file",width:_n[3],height:_n[3]}}),{c(){Ce=element("a"),create_component(ke.$$.fragment),$n=space$3(),Hn=element("span"),zn=text("."),qn=text(Zn),attr(Hn,"class","ms-2"),attr(Ce,"href",Yn=_n[4].lucentUrl+"/records/"+_n[0].id),attr(Ce,"title",Jn=_n[0]._file.path),attr(Ce,"class","file-preview-small"),set_style(Ce,"width",_n[2]+"px"),set_style(Ce,"height",_n[2]+"px")},m(io,uo){insert$1(io,Ce,uo),mount_component(ke,Ce,null),append(Ce,$n),append(Ce,Hn),append(Hn,zn),append(Hn,qn),to=!0},p(io,uo){const mo={};uo&8&&(mo.width=io[3]),uo&8&&(mo.height=io[3]),ke.$set(mo),(!to||uo&1)&&Zn!==(Zn=io[0]._file.path.split(".").pop().toLowerCase()+"")&&set_data(qn,Zn),(!to||uo&1&&Yn!==(Yn=io[4].lucentUrl+"/records/"+io[0].id))&&attr(Ce,"href",Yn),(!to||uo&1&&Jn!==(Jn=io[0]._file.path))&&attr(Ce,"title",Jn),(!to||uo&4)&&set_style(Ce,"width",io[2]+"px"),(!to||uo&4)&&set_style(Ce,"height",io[2]+"px")},i(io){to||(transition_in(ke.$$.fragment,io),to=!0)},o(io){transition_out(ke.$$.fragment,io),to=!1},d(io){io&&detach(Ce),destroy_component(ke)}}}function create_if_block_2$c(_n){let Ce,ke,$n,Hn,zn,Zn;return{c(){Ce=element("a"),ke=element("img"),attr(ke,"class","rounded w-100 svelte-1mb3bsz"),src_url_equal(ke.src,$n=imgurl(_n[4],_n[0]))||attr(ke,"src",$n),attr(ke,"alt",Hn=_n[0]._file.path),attr(Ce,"href",zn=_n[4].lucentUrl+"/records/"+_n[0].id),attr(Ce,"title",Zn=_n[0]._file.originalName),set_style(Ce,"width",_n[2]+"px"),set_style(Ce,"height",_n[2]+"px")},m(qn,Yn){insert$1(qn,Ce,Yn),append(Ce,ke)},p(qn,Yn){Yn&1&&!src_url_equal(ke.src,$n=imgurl(qn[4],qn[0]))&&attr(ke,"src",$n),Yn&1&&Hn!==(Hn=qn[0]._file.path)&&attr(ke,"alt",Hn),Yn&1&&zn!==(zn=qn[4].lucentUrl+"/records/"+qn[0].id)&&attr(Ce,"href",zn),Yn&1&&Zn!==(Zn=qn[0]._file.originalName)&&attr(Ce,"title",Zn),Yn&4&&set_style(Ce,"width",qn[2]+"px"),Yn&4&&set_style(Ce,"height",qn[2]+"px")},i:noop,o:noop,d(qn){qn&&detach(Ce)}}}function create_if_block$Q(_n){let Ce,ke=_n[0]._file.path+"",$n,Hn,zn;return{c(){Ce=element("a"),$n=text(ke),attr(Ce,"href",Hn=_n[4].lucentUrl+"/records/"+_n[0].id),attr(Ce,"title",zn=_n[0]._file.path),attr(Ce,"class","preview-file-filename lx-small-text text-decoration-none")},m(Zn,qn){insert$1(Zn,Ce,qn),append(Ce,$n)},p(Zn,qn){qn&1&&ke!==(ke=Zn[0]._file.path+"")&&set_data($n,ke),qn&1&&Hn!==(Hn=Zn[4].lucentUrl+"/records/"+Zn[0].id)&&attr(Ce,"href",Hn),qn&1&&zn!==(zn=Zn[0]._file.path)&&attr(Ce,"title",zn)},d(Zn){Zn&&detach(Ce)}}}function create_fragment$1a(_n){let Ce,ke,$n,Hn=_n[0]&&create_if_block_1$r(_n),zn=_n[1]&&create_if_block$Q(_n);return{c(){Ce=element("div"),Hn&&Hn.c(),ke=space$3(),zn&&zn.c(),set_style(Ce,"display","flex"),set_style(Ce,"align-items","center"),set_style(Ce,"gap","5px")},m(Zn,qn){insert$1(Zn,Ce,qn),Hn&&Hn.m(Ce,null),append(Ce,ke),zn&&zn.m(Ce,null),$n=!0},p(Zn,[qn]){Zn[0]?Hn?(Hn.p(Zn,qn),qn&1&&transition_in(Hn,1)):(Hn=create_if_block_1$r(Zn),Hn.c(),transition_in(Hn,1),Hn.m(Ce,ke)):Hn&&(group_outros(),transition_out(Hn,1,1,()=>{Hn=null}),check_outros()),Zn[1]?zn?zn.p(Zn,qn):(zn=create_if_block$Q(Zn),zn.c(),zn.m(Ce,null)):zn&&(zn.d(1),zn=null)},i(Zn){$n||(transition_in(Hn),$n=!0)},o(Zn){transition_out(Hn),$n=!1},d(Zn){Zn&&detach(Ce),Hn&&Hn.d(),zn&&zn.d()}}}function instance$1a(_n,Ce,ke){let{record:$n}=Ce;const Hn=getContext$1("channel");let{size:zn="small"}=Ce,{showFilename:Zn=!1}=Ce,qn,Yn;return zn=="large"?(qn=256,Yn=32):zn=="medium"?(qn=128,Yn=12):zn=="small"?(qn=64,Yn=12):zn=="tiny"&&(qn=42,Yn=12),_n.$$set=Jn=>{"record"in Jn&&ke(0,$n=Jn.record),"size"in Jn&&ke(5,zn=Jn.size),"showFilename"in Jn&&ke(1,Zn=Jn.showFilename)},[$n,Zn,qn,Yn,Hn,zn]}class Preview extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1a,create_fragment$1a,safe_not_equal,{record:0,size:5,showFilename:1})}}function create_if_block$P(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to=_n[0]._file.path+"",io,uo,mo,bo,Oo,wo,$o=_n[0]._file.originalName+"",Do,xo,Bo,Vo,Ko,Mo,es=_n[0]._file.mime+"",ls,ps,rs,Yo,Ys,sr,Js,ko=(_n[0]._file.size/1024).toFixed(1)+"",gs,xs,Qr,cr,ws,Fs,Br,_r=_n[0]._file.checksum+"",ha,hs,Qs,zo,el,ga,Ca;$n=new Preview({props:{record:_n[0],size:"large"}});let za=_n[0]._file.width&&create_if_block_1$q(_n);return{c(){Ce=element("div"),ke=element("div"),create_component($n.$$.fragment),Hn=space$3(),zn=element("div"),Zn=element("div"),qn=element("span"),qn.textContent="Filename",Yn=space$3(),Jn=element("span"),io=text(to),uo=space$3(),mo=element("div"),bo=element("span"),bo.textContent="Original name",Oo=space$3(),wo=element("span"),Do=text($o),xo=space$3(),Bo=element("div"),Vo=element("span"),Vo.textContent="Mime type",Ko=space$3(),Mo=element("span"),ls=text(es),ps=space$3(),za&&za.c(),rs=space$3(),Yo=element("div"),Ys=element("span"),Ys.textContent="File size",sr=space$3(),Js=element("span"),gs=text(ko),xs=text("kB"),Qr=space$3(),cr=element("div"),ws=element("span"),ws.textContent="Checksum",Fs=space$3(),Br=element("span"),ha=text(_r),hs=space$3(),Qs=element("div"),zo=element("a"),el=text("Download"),attr(qn,"class","text-muted"),attr(Zn,"class","file-details-item"),attr(bo,"class","text-muted"),attr(mo,"class","file-details-item"),attr(Vo,"class","text-muted"),attr(Bo,"class","file-details-item"),attr(Ys,"class","text-muted"),attr(Yo,"class","file-details-item"),attr(ws,"class","text-muted"),attr(cr,"class","file-details-item"),attr(zo,"class","button primary"),attr(zo,"target","_blank"),set_style(zo,"display","inline-flex"),attr(zo,"href",ga=fileurl(_n[2],_n[0])),attr(Qs,"class","file-details-item"),attr(zn,"class","file-details"),attr(Ce,"class","record-edit-file-preview")},m(Il,Zs){insert$1(Il,Ce,Zs),append(Ce,ke),mount_component($n,ke,null),append(Ce,Hn),append(Ce,zn),append(zn,Zn),append(Zn,qn),append(Zn,Yn),append(Zn,Jn),append(Jn,io),append(zn,uo),append(zn,mo),append(mo,bo),append(mo,Oo),append(mo,wo),append(wo,Do),append(zn,xo),append(zn,Bo),append(Bo,Vo),append(Bo,Ko),append(Bo,Mo),append(Mo,ls),append(zn,ps),za&&za.m(zn,null),append(zn,rs),append(zn,Yo),append(Yo,Ys),append(Yo,sr),append(Yo,Js),append(Js,gs),append(Js,xs),append(zn,Qr),append(zn,cr),append(cr,ws),append(cr,Fs),append(cr,Br),append(Br,ha),append(zn,hs),append(zn,Qs),append(Qs,zo),append(zo,el),Ca=!0},p(Il,Zs){const Sr={};Zs&1&&(Sr.record=Il[0]),$n.$set(Sr),(!Ca||Zs&1)&&to!==(to=Il[0]._file.path+"")&&set_data(io,to),(!Ca||Zs&1)&&$o!==($o=Il[0]._file.originalName+"")&&set_data(Do,$o),(!Ca||Zs&1)&&es!==(es=Il[0]._file.mime+"")&&set_data(ls,es),Il[0]._file.width?za?za.p(Il,Zs):(za=create_if_block_1$q(Il),za.c(),za.m(zn,rs)):za&&(za.d(1),za=null),(!Ca||Zs&1)&&ko!==(ko=(Il[0]._file.size/1024).toFixed(1)+"")&&set_data(gs,ko),(!Ca||Zs&1)&&_r!==(_r=Il[0]._file.checksum+"")&&set_data(ha,_r),(!Ca||Zs&1&&ga!==(ga=fileurl(Il[2],Il[0])))&&attr(zo,"href",ga)},i(Il){Ca||(transition_in($n.$$.fragment,Il),Ca=!0)},o(Il){transition_out($n.$$.fragment,Il),Ca=!1},d(Il){Il&&detach(Ce),destroy_component($n),za&&za.d()}}}function create_if_block_1$q(_n){let Ce,ke,$n,Hn,zn=_n[0]._file.width+"",Zn,qn,Yn=_n[0]._file.height+"",Jn;return{c(){Ce=element("div"),ke=element("span"),ke.textContent="Dimensions",$n=space$3(),Hn=element("span"),Zn=text(zn),qn=text("x"),Jn=text(Yn),attr(ke,"class","text-muted"),attr(Ce,"class","file-details-item")},m(to,io){insert$1(to,Ce,io),append(Ce,ke),append(Ce,$n),append(Ce,Hn),append(Hn,Zn),append(Hn,qn),append(Hn,Jn)},p(to,io){io&1&&zn!==(zn=to[0]._file.width+"")&&set_data(Zn,zn),io&1&&Yn!==(Yn=to[0]._file.height+"")&&set_data(Jn,Yn)},d(to){to&&detach(Ce)}}}function create_fragment$19(_n){let Ce,ke,$n=_n[1].type==="files"&&create_if_block$P(_n);return{c(){$n&&$n.c(),Ce=empty$1()},m(Hn,zn){$n&&$n.m(Hn,zn),insert$1(Hn,Ce,zn),ke=!0},p(Hn,[zn]){Hn[1].type==="files"?$n?($n.p(Hn,zn),zn&2&&transition_in($n,1)):($n=create_if_block$P(Hn),$n.c(),transition_in($n,1),$n.m(Ce.parentNode,Ce)):$n&&(group_outros(),transition_out($n,1,1,()=>{$n=null}),check_outros())},i(Hn){ke||(transition_in($n),ke=!0)},o(Hn){transition_out($n),ke=!1},d(Hn){Hn&&detach(Ce),$n&&$n.d(Hn)}}}function instance$19(_n,Ce,ke){const $n=getContext$1("channel");let{record:Hn}=Ce,{schema:zn}=Ce;return _n.$$set=Zn=>{"record"in Zn&&ke(0,Hn=Zn.record),"schema"in Zn&&ke(1,zn=Zn.schema)},[Hn,zn,$n]}class FilePreview extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$19,create_fragment$19,safe_not_equal,{record:0,schema:1})}}function get_each_context$o(_n,Ce,ke){const $n=_n.slice();return $n[9]=Ce[ke],$n}function create_if_block$O(_n){let Ce,ke=ensure_array_like(_n[1]),$n=[];for(let Hn=0;Hn1&&create_if_block$O(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,[Hn]){$n[1].length>1?ke?ke.p($n,Hn):(ke=create_if_block$O($n),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},i:noop,o:noop,d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function instance$18(_n,Ce,ke){var uo;let{schema:$n}=Ce,{isCreateMode:Hn}=Ce,{active:zn=""}=Ce,Zn=((uo=$n.groups)==null?void 0:uo.map(mo=>({label:mo,name:mo})))??[],qn={label:"Main",name:""},Yn={label:"Backlinks",name:"_graph"};Hn?Zn=[qn,...Zn]:Zn=[qn,...Zn,Yn];function Jn(mo){mo.preventDefault(),ke(0,zn="_graph")}function to(mo,bo){mo.preventDefault(),bo=="_graph"?Jn(mo):ke(0,zn=bo)}const io=(mo,bo)=>to(bo,mo.name);return _n.$$set=mo=>{"schema"in mo&&ke(3,$n=mo.schema),"isCreateMode"in mo&&ke(4,Hn=mo.isCreateMode),"active"in mo&&ke(0,zn=mo.active)},[zn,Zn,to,$n,Hn,io]}class ContentTabs extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$18,create_fragment$18,safe_not_equal,{schema:3,isCreateMode:4,active:0})}}function getErrorMessage(_n,Ce){return _n&&_n[Ce]?_n[Ce].message:null}function isArray$1(_n){return Array.isArray?Array.isArray(_n):getTag(_n)==="[object Array]"}const INFINITY=1/0;function baseToString(_n){if(typeof _n=="string")return _n;let Ce=_n+"";return Ce=="0"&&1/_n==-INFINITY?"-0":Ce}function toString(_n){return _n==null?"":baseToString(_n)}function isString(_n){return typeof _n=="string"}function isNumber(_n){return typeof _n=="number"}function isBoolean(_n){return _n===!0||_n===!1||isObjectLike(_n)&&getTag(_n)=="[object Boolean]"}function isObject(_n){return typeof _n=="object"}function isObjectLike(_n){return isObject(_n)&&_n!==null}function isDefined(_n){return _n!=null}function isBlank(_n){return!_n.trim().length}function getTag(_n){return _n==null?_n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(_n)}const EXTENDED_SEARCH_UNAVAILABLE="Extended search is not available",INCORRECT_INDEX_TYPE="Incorrect 'index' type",LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY=_n=>`Invalid value for key ${_n}`,PATTERN_LENGTH_TOO_LARGE=_n=>`Pattern length exceeds max of ${_n}.`,MISSING_KEY_PROPERTY=_n=>`Missing ${_n} property in key`,INVALID_KEY_WEIGHT_VALUE=_n=>`Property 'weight' in key '${_n}' must be a positive integer`,hasOwn=Object.prototype.hasOwnProperty;class KeyStore{constructor(Ce){this._keys=[],this._keyMap={};let ke=0;Ce.forEach($n=>{let Hn=createKey($n);this._keys.push(Hn),this._keyMap[Hn.id]=Hn,ke+=Hn.weight}),this._keys.forEach($n=>{$n.weight/=ke})}get(Ce){return this._keyMap[Ce]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function createKey(_n){let Ce=null,ke=null,$n=null,Hn=1,zn=null;if(isString(_n)||isArray$1(_n))$n=_n,Ce=createKeyPath(_n),ke=createKeyId(_n);else{if(!hasOwn.call(_n,"name"))throw new Error(MISSING_KEY_PROPERTY("name"));const Zn=_n.name;if($n=Zn,hasOwn.call(_n,"weight")&&(Hn=_n.weight,Hn<=0))throw new Error(INVALID_KEY_WEIGHT_VALUE(Zn));Ce=createKeyPath(Zn),ke=createKeyId(Zn),zn=_n.getFn}return{path:Ce,id:ke,weight:Hn,src:$n,getFn:zn}}function createKeyPath(_n){return isArray$1(_n)?_n:_n.split(".")}function createKeyId(_n){return isArray$1(_n)?_n.join("."):_n}function get(_n,Ce){let ke=[],$n=!1;const Hn=(zn,Zn,qn)=>{if(isDefined(zn))if(!Zn[qn])ke.push(zn);else{let Yn=Zn[qn];const Jn=zn[Yn];if(!isDefined(Jn))return;if(qn===Zn.length-1&&(isString(Jn)||isNumber(Jn)||isBoolean(Jn)))ke.push(toString(Jn));else if(isArray$1(Jn)){$n=!0;for(let to=0,io=Jn.length;to_n.score===Ce.score?_n.idx{this._keysMap[ke.id]=$n})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,isString(this.docs[0])?this.docs.forEach((Ce,ke)=>{this._addString(Ce,ke)}):this.docs.forEach((Ce,ke)=>{this._addObject(Ce,ke)}),this.norm.clear())}add(Ce){const ke=this.size();isString(Ce)?this._addString(Ce,ke):this._addObject(Ce,ke)}removeAt(Ce){this.records.splice(Ce,1);for(let ke=Ce,$n=this.size();ke<$n;ke+=1)this.records[ke].i-=1}getValueForItemAtKeyId(Ce,ke){return Ce[this._keysMap[ke]]}size(){return this.records.length}_addString(Ce,ke){if(!isDefined(Ce)||isBlank(Ce))return;let $n={v:Ce,i:ke,n:this.norm.get(Ce)};this.records.push($n)}_addObject(Ce,ke){let $n={i:ke,$:{}};this.keys.forEach((Hn,zn)=>{let Zn=Hn.getFn?Hn.getFn(Ce):this.getFn(Ce,Hn.path);if(isDefined(Zn)){if(isArray$1(Zn)){let qn=[];const Yn=[{nestedArrIndex:-1,value:Zn}];for(;Yn.length;){const{nestedArrIndex:Jn,value:to}=Yn.pop();if(isDefined(to))if(isString(to)&&!isBlank(to)){let io={v:to,i:Jn,n:this.norm.get(to)};qn.push(io)}else isArray$1(to)&&to.forEach((io,uo)=>{Yn.push({nestedArrIndex:uo,value:io})})}$n.$[zn]=qn}else if(isString(Zn)&&!isBlank(Zn)){let qn={v:Zn,n:this.norm.get(Zn)};$n.$[zn]=qn}}}),this.records.push($n)}toJSON(){return{keys:this.keys,records:this.records}}}function createIndex(_n,Ce,{getFn:ke=Config.getFn,fieldNormWeight:$n=Config.fieldNormWeight}={}){const Hn=new FuseIndex({getFn:ke,fieldNormWeight:$n});return Hn.setKeys(_n.map(createKey)),Hn.setSources(Ce),Hn.create(),Hn}function parseIndex(_n,{getFn:Ce=Config.getFn,fieldNormWeight:ke=Config.fieldNormWeight}={}){const{keys:$n,records:Hn}=_n,zn=new FuseIndex({getFn:Ce,fieldNormWeight:ke});return zn.setKeys($n),zn.setIndexRecords(Hn),zn}function computeScore$1(_n,{errors:Ce=0,currentLocation:ke=0,expectedLocation:$n=0,distance:Hn=Config.distance,ignoreLocation:zn=Config.ignoreLocation}={}){const Zn=Ce/_n.length;if(zn)return Zn;const qn=Math.abs($n-ke);return Hn?Zn+qn/Hn:qn?1:Zn}function convertMaskToIndices(_n=[],Ce=Config.minMatchCharLength){let ke=[],$n=-1,Hn=-1,zn=0;for(let Zn=_n.length;zn=Ce&&ke.push([$n,Hn]),$n=-1)}return _n[zn-1]&&zn-$n>=Ce&&ke.push([$n,zn-1]),ke}const MAX_BITS=32;function search(_n,Ce,ke,{location:$n=Config.location,distance:Hn=Config.distance,threshold:zn=Config.threshold,findAllMatches:Zn=Config.findAllMatches,minMatchCharLength:qn=Config.minMatchCharLength,includeMatches:Yn=Config.includeMatches,ignoreLocation:Jn=Config.ignoreLocation}={}){if(Ce.length>MAX_BITS)throw new Error(PATTERN_LENGTH_TOO_LARGE(MAX_BITS));const to=Ce.length,io=_n.length,uo=Math.max(0,Math.min($n,io));let mo=zn,bo=uo;const Oo=qn>1||Yn,wo=Oo?Array(io):[];let $o;for(;($o=_n.indexOf(Ce,bo))>-1;){let Mo=computeScore$1(Ce,{currentLocation:$o,expectedLocation:uo,distance:Hn,ignoreLocation:Jn});if(mo=Math.min(Mo,mo),bo=$o+to,Oo){let es=0;for(;es=ps;sr-=1){let Js=sr-1,ko=ke[_n.charAt(Js)];if(Oo&&(wo[Js]=+!!ko),Yo[sr]=(Yo[sr+1]<<1|1)&ko,Mo&&(Yo[sr]|=(Do[sr+1]|Do[sr])<<1|1|Do[sr+1]),Yo[sr]&Vo&&(xo=computeScore$1(Ce,{errors:Mo,currentLocation:Js,expectedLocation:uo,distance:Hn,ignoreLocation:Jn}),xo<=mo)){if(mo=xo,bo=Js,bo<=uo)break;ps=Math.max(1,2*uo-bo)}}if(computeScore$1(Ce,{errors:Mo+1,currentLocation:uo,expectedLocation:uo,distance:Hn,ignoreLocation:Jn})>mo)break;Do=Yo}const Ko={isMatch:bo>=0,score:Math.max(.001,xo)};if(Oo){const Mo=convertMaskToIndices(wo,qn);Mo.length?Yn&&(Ko.indices=Mo):Ko.isMatch=!1}return Ko}function createPatternAlphabet(_n){let Ce={};for(let ke=0,$n=_n.length;ke<$n;ke+=1){const Hn=_n.charAt(ke);Ce[Hn]=(Ce[Hn]||0)|1<<$n-ke-1}return Ce}class BitapSearch{constructor(Ce,{location:ke=Config.location,threshold:$n=Config.threshold,distance:Hn=Config.distance,includeMatches:zn=Config.includeMatches,findAllMatches:Zn=Config.findAllMatches,minMatchCharLength:qn=Config.minMatchCharLength,isCaseSensitive:Yn=Config.isCaseSensitive,ignoreLocation:Jn=Config.ignoreLocation}={}){if(this.options={location:ke,threshold:$n,distance:Hn,includeMatches:zn,findAllMatches:Zn,minMatchCharLength:qn,isCaseSensitive:Yn,ignoreLocation:Jn},this.pattern=Yn?Ce:Ce.toLowerCase(),this.chunks=[],!this.pattern.length)return;const to=(uo,mo)=>{this.chunks.push({pattern:uo,alphabet:createPatternAlphabet(uo),startIndex:mo})},io=this.pattern.length;if(io>MAX_BITS){let uo=0;const mo=io%MAX_BITS,bo=io-mo;for(;uo{const{isMatch:$o,score:Do,indices:xo}=search(Ce,bo,Oo,{location:Hn+wo,distance:zn,threshold:Zn,findAllMatches:qn,minMatchCharLength:Yn,includeMatches:$n,ignoreLocation:Jn});$o&&(uo=!0),io+=Do,$o&&xo&&(to=[...to,...xo])});let mo={isMatch:uo,score:uo?io/this.chunks.length:1};return uo&&$n&&(mo.indices=to),mo}}class BaseMatch{constructor(Ce){this.pattern=Ce}static isMultiMatch(Ce){return getMatch(Ce,this.multiRegex)}static isSingleMatch(Ce){return getMatch(Ce,this.singleRegex)}search(){}}function getMatch(_n,Ce){const ke=_n.match(Ce);return ke?ke[1]:null}class ExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(Ce){const ke=Ce===this.pattern;return{isMatch:ke,score:ke?0:1,indices:[0,this.pattern.length-1]}}}class InverseExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(Ce){const $n=Ce.indexOf(this.pattern)===-1;return{isMatch:$n,score:$n?0:1,indices:[0,Ce.length-1]}}}class PrefixExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(Ce){const ke=Ce.startsWith(this.pattern);return{isMatch:ke,score:ke?0:1,indices:[0,this.pattern.length-1]}}}class InversePrefixExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(Ce){const ke=!Ce.startsWith(this.pattern);return{isMatch:ke,score:ke?0:1,indices:[0,Ce.length-1]}}}class SuffixExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(Ce){const ke=Ce.endsWith(this.pattern);return{isMatch:ke,score:ke?0:1,indices:[Ce.length-this.pattern.length,Ce.length-1]}}}class InverseSuffixExactMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(Ce){const ke=!Ce.endsWith(this.pattern);return{isMatch:ke,score:ke?0:1,indices:[0,Ce.length-1]}}}class FuzzyMatch extends BaseMatch{constructor(Ce,{location:ke=Config.location,threshold:$n=Config.threshold,distance:Hn=Config.distance,includeMatches:zn=Config.includeMatches,findAllMatches:Zn=Config.findAllMatches,minMatchCharLength:qn=Config.minMatchCharLength,isCaseSensitive:Yn=Config.isCaseSensitive,ignoreLocation:Jn=Config.ignoreLocation}={}){super(Ce),this._bitapSearch=new BitapSearch(Ce,{location:ke,threshold:$n,distance:Hn,includeMatches:zn,findAllMatches:Zn,minMatchCharLength:qn,isCaseSensitive:Yn,ignoreLocation:Jn})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(Ce){return this._bitapSearch.searchIn(Ce)}}class IncludeMatch extends BaseMatch{constructor(Ce){super(Ce)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(Ce){let ke=0,$n;const Hn=[],zn=this.pattern.length;for(;($n=Ce.indexOf(this.pattern,ke))>-1;)ke=$n+zn,Hn.push([$n,ke-1]);const Zn=!!Hn.length;return{isMatch:Zn,score:Zn?0:1,indices:Hn}}}const searchers=[ExactMatch,IncludeMatch,PrefixExactMatch,InversePrefixExactMatch,InverseSuffixExactMatch,SuffixExactMatch,InverseExactMatch,FuzzyMatch],searchersLen=searchers.length,SPACE_RE=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,OR_TOKEN="|";function parseQuery(_n,Ce={}){return _n.split(OR_TOKEN).map(ke=>{let $n=ke.trim().split(SPACE_RE).filter(zn=>zn&&!!zn.trim()),Hn=[];for(let zn=0,Zn=$n.length;zn!!(_n[LogicalOperator.AND]||_n[LogicalOperator.OR]),isPath=_n=>!!_n[KeyType.PATH],isLeaf=_n=>!isArray$1(_n)&&isObject(_n)&&!isExpression(_n),convertToExplicit=_n=>({[LogicalOperator.AND]:Object.keys(_n).map(Ce=>({[Ce]:_n[Ce]}))});function parse(_n,Ce,{auto:ke=!0}={}){const $n=Hn=>{let zn=Object.keys(Hn);const Zn=isPath(Hn);if(!Zn&&zn.length>1&&!isExpression(Hn))return $n(convertToExplicit(Hn));if(isLeaf(Hn)){const Yn=Zn?Hn[KeyType.PATH]:zn[0],Jn=Zn?Hn[KeyType.PATTERN]:Hn[Yn];if(!isString(Jn))throw new Error(LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY(Yn));const to={keyId:createKeyId(Yn),pattern:Jn};return ke&&(to.searcher=createSearcher(Jn,Ce)),to}let qn={children:[],operator:zn[0]};return zn.forEach(Yn=>{const Jn=Hn[Yn];isArray$1(Jn)&&Jn.forEach(to=>{qn.children.push($n(to))})}),qn};return isExpression(_n)||(_n=convertToExplicit(_n)),$n(_n)}function computeScore(_n,{ignoreFieldNorm:Ce=Config.ignoreFieldNorm}){_n.forEach(ke=>{let $n=1;ke.matches.forEach(({key:Hn,norm:zn,score:Zn})=>{const qn=Hn?Hn.weight:null;$n*=Math.pow(Zn===0&&qn?Number.EPSILON:Zn,(qn||1)*(Ce?1:zn))}),ke.score=$n})}function transformMatches(_n,Ce){const ke=_n.matches;Ce.matches=[],isDefined(ke)&&ke.forEach($n=>{if(!isDefined($n.indices)||!$n.indices.length)return;const{indices:Hn,value:zn}=$n;let Zn={indices:Hn,value:zn};$n.key&&(Zn.key=$n.key.src),$n.idx>-1&&(Zn.refIndex=$n.idx),Ce.matches.push(Zn)})}function transformScore(_n,Ce){Ce.score=_n.score}function format(_n,Ce,{includeMatches:ke=Config.includeMatches,includeScore:$n=Config.includeScore}={}){const Hn=[];return ke&&Hn.push(transformMatches),$n&&Hn.push(transformScore),_n.map(zn=>{const{idx:Zn}=zn,qn={item:Ce[Zn],refIndex:Zn};return Hn.length&&Hn.forEach(Yn=>{Yn(zn,qn)}),qn})}class Fuse{constructor(Ce,ke={},$n){this.options={...Config,...ke},this.options.useExtendedSearch,this._keyStore=new KeyStore(this.options.keys),this.setCollection(Ce,$n)}setCollection(Ce,ke){if(this._docs=Ce,ke&&!(ke instanceof FuseIndex))throw new Error(INCORRECT_INDEX_TYPE);this._myIndex=ke||createIndex(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(Ce){isDefined(Ce)&&(this._docs.push(Ce),this._myIndex.add(Ce))}remove(Ce=()=>!1){const ke=[];for(let $n=0,Hn=this._docs.length;$n-1&&(Yn=Yn.slice(0,ke)),format(Yn,this._docs,{includeMatches:$n,includeScore:Hn})}_searchStringList(Ce){const ke=createSearcher(Ce,this.options),{records:$n}=this._myIndex,Hn=[];return $n.forEach(({v:zn,i:Zn,n:qn})=>{if(!isDefined(zn))return;const{isMatch:Yn,score:Jn,indices:to}=ke.searchIn(zn);Yn&&Hn.push({item:zn,idx:Zn,matches:[{score:Jn,value:zn,norm:qn,indices:to}]})}),Hn}_searchLogical(Ce){const ke=parse(Ce,this.options),$n=(qn,Yn,Jn)=>{if(!qn.children){const{keyId:io,searcher:uo}=qn,mo=this._findMatches({key:this._keyStore.get(io),value:this._myIndex.getValueForItemAtKeyId(Yn,io),searcher:uo});return mo&&mo.length?[{idx:Jn,item:Yn,matches:mo}]:[]}const to=[];for(let io=0,uo=qn.children.length;io{if(isDefined(qn)){let Jn=$n(ke,qn,Yn);Jn.length&&(zn[Yn]||(zn[Yn]={idx:Yn,item:qn,matches:[]},Zn.push(zn[Yn])),Jn.forEach(({matches:to})=>{zn[Yn].matches.push(...to)}))}}),Zn}_searchObjectList(Ce){const ke=createSearcher(Ce,this.options),{keys:$n,records:Hn}=this._myIndex,zn=[];return Hn.forEach(({$:Zn,i:qn})=>{if(!isDefined(Zn))return;let Yn=[];$n.forEach((Jn,to)=>{Yn.push(...this._findMatches({key:Jn,value:Zn[to],searcher:ke}))}),Yn.length&&zn.push({idx:qn,item:Zn,matches:Yn})}),zn}_findMatches({key:Ce,value:ke,searcher:$n}){if(!isDefined(ke))return[];let Hn=[];if(isArray$1(ke))ke.forEach(({v:zn,i:Zn,n:qn})=>{if(!isDefined(zn))return;const{isMatch:Yn,score:Jn,indices:to}=$n.searchIn(zn);Yn&&Hn.push({score:Jn,key:Ce,value:zn,idx:Zn,norm:qn,indices:to})});else{const{v:zn,n:Zn}=ke,{isMatch:qn,score:Yn,indices:Jn}=$n.searchIn(zn);qn&&Hn.push({score:Yn,key:Ce,value:zn,norm:Zn,indices:Jn})}return Hn}}Fuse.version="7.0.0";Fuse.createIndex=createIndex;Fuse.parseIndex=parseIndex;Fuse.config=Config;Fuse.parseQuery=parse;register(ExtendedSearch);function get_each_context$n(_n,Ce,ke){const $n=_n.slice();return $n[10]=Ce[ke],$n}function create_if_block$N(_n){let Ce=[],ke=new Map,$n,Hn=ensure_array_like(_n[0]);const zn=Zn=>Zn[10].value;for(let Zn=0;Zn({value:Ce,label:Ce})):Object.entries(_n).map(([Ce,ke])=>({value:Ce,label:ke}))}function instance$17(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{search:Zn=""}=Ce;const qn=createEventDispatcher();function Yn(mo,bo){mo.preventDefault(),ke(3,zn=bo.value),ke(2,Zn=""),qn("selected",{option:bo})}let Jn=formatOptionsForSearch(Hn.selectOptions);const to=new Fuse(Jn,{includeScore:!1,keys:["value","label"]}),io=(mo,bo)=>Yn(bo,mo),uo=(mo,bo)=>Yn(bo,mo);return _n.$$set=mo=>{"field"in mo&&ke(4,Hn=mo.field),"value"in mo&&ke(3,zn=mo.value),"search"in mo&&ke(2,Zn=mo.search)},_n.$$.update=()=>{_n.$$.dirty&4&&ke(0,$n=Zn===""?Jn:to.search(Zn).map(mo=>mo.item))},[$n,Yn,Zn,zn,Hn,io,uo]}class Selectlist extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$17,create_fragment$17,safe_not_equal,{field:4,value:3,search:2})}}function create_if_block$M(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;function Jn(uo,mo){return mo&2&&(ke=null),ke==null&&(ke=!!Array.isArray(uo[1].selectOptions)),ke?create_if_block_1$p:create_else_block$l}let to=Jn(_n,-1),io=to(_n);return zn=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){Ce=element("div"),io.c(),$n=space$3(),Hn=element("button"),create_component(zn.$$.fragment),attr(Hn,"type","button"),attr(Hn,"class","button-text"),attr(Hn,"aria-label","Close"),attr(Ce,"class","autocomplete-selected-value")},m(uo,mo){insert$1(uo,Ce,mo),io.m(Ce,null),append(Ce,$n),append(Ce,Hn),mount_component(zn,Hn,null),Zn=!0,qn||(Yn=listen(Hn,"click",prevent_default(_n[9])),qn=!0)},p(uo,mo){to===(to=Jn(uo,mo))&&io?io.p(uo,mo):(io.d(1),io=to(uo),io&&(io.c(),io.m(Ce,$n)))},i(uo){Zn||(transition_in(zn.$$.fragment,uo),Zn=!0)},o(uo){transition_out(zn.$$.fragment,uo),Zn=!1},d(uo){uo&&detach(Ce),io.d(),destroy_component(zn),qn=!1,Yn()}}}function create_else_block$l(_n){let Ce=_n[1].selectOptions[_n[0]]+"",ke;return{c(){ke=text(Ce)},m($n,Hn){insert$1($n,ke,Hn)},p($n,Hn){Hn&3&&Ce!==(Ce=$n[1].selectOptions[$n[0]]+"")&&set_data(ke,Ce)},d($n){$n&&detach(ke)}}}function create_if_block_1$p(_n){let Ce;return{c(){Ce=text(_n[0])},m(ke,$n){insert$1(ke,Ce,$n)},p(ke,$n){$n&1&&set_data(Ce,ke[0])},d(ke){ke&&detach(Ce)}}}function create_fragment$16(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo;function mo($o){_n[7]($o)}function bo($o){_n[8]($o)}let Oo={field:_n[1]};_n[0]!==void 0&&(Oo.value=_n[0]),_n[3]!==void 0&&(Oo.search=_n[3]),zn=new Selectlist({props:Oo}),binding_callbacks.push(()=>bind(zn,"value",mo)),binding_callbacks.push(()=>bind(zn,"search",bo)),zn.$on("selected",_n[4]);let wo=_n[0]&&create_if_block$M(_n);return{c(){Ce=element("div"),ke=element("input"),$n=space$3(),Hn=element("div"),create_component(zn.$$.fragment),Yn=space$3(),wo&&wo.c(),Jn=empty$1(),attr(ke,"type","search"),attr(ke,"placeholder","Search for options"),attr(ke,"autocomplete","off"),attr(Hn,"class","autocomplete-results"),attr(Ce,"class","autocomplete")},m($o,Do){insert$1($o,Ce,Do),append(Ce,ke),set_input_value(ke,_n[3]),_n[6](ke),append(Ce,$n),append(Ce,Hn),mount_component(zn,Hn,null),insert$1($o,Yn,Do),wo&&wo.m($o,Do),insert$1($o,Jn,Do),to=!0,io||(uo=listen(ke,"input",_n[5]),io=!0)},p($o,[Do]){Do&8&&ke.value!==$o[3]&&set_input_value(ke,$o[3]);const xo={};Do&2&&(xo.field=$o[1]),!Zn&&Do&1&&(Zn=!0,xo.value=$o[0],add_flush_callback(()=>Zn=!1)),!qn&&Do&8&&(qn=!0,xo.search=$o[3],add_flush_callback(()=>qn=!1)),zn.$set(xo),$o[0]?wo?(wo.p($o,Do),Do&1&&transition_in(wo,1)):(wo=create_if_block$M($o),wo.c(),transition_in(wo,1),wo.m(Jn.parentNode,Jn)):wo&&(group_outros(),transition_out(wo,1,1,()=>{wo=null}),check_outros())},i($o){to||(transition_in(zn.$$.fragment,$o),transition_in(wo),to=!0)},o($o){transition_out(zn.$$.fragment,$o),transition_out(wo),to=!1},d($o){$o&&(detach(Ce),detach(Yn),detach(Jn)),_n[6](null),destroy_component(zn),wo&&wo.d($o),io=!1,uo()}}}function instance$16(_n,Ce,ke){let $n,Hn,{value:zn}=Ce,{field:Zn}=Ce;function qn(){$n.focus(),$n.blur()}function Yn(){Hn=this.value,ke(3,Hn)}function Jn(mo){binding_callbacks[mo?"unshift":"push"](()=>{$n=mo,ke(2,$n)})}function to(mo){zn=mo,ke(0,zn)}function io(mo){Hn=mo,ke(3,Hn)}const uo=mo=>ke(0,zn="");return _n.$$set=mo=>{"value"in mo&&ke(0,zn=mo.value),"field"in mo&&ke(1,Zn=mo.field)},[zn,Zn,$n,Hn,qn,Yn,Jn,to,io,uo]}class Autocomplete extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$16,create_fragment$16,safe_not_equal,{value:0,field:1})}}function create_else_block$k(_n){let Ce,ke,$n,Hn;return{c(){Ce=element("input"),attr(Ce,"type","text"),attr(Ce,"id",_n[3]),attr(Ce,"class","form-control"),attr(Ce,"autocomplete","off"),Ce.readOnly=ke=_n[1].readonly&&!_n[2],toggle_class(Ce,"is-invalid",_n[4])},m(zn,Zn){insert$1(zn,Ce,Zn),set_input_value(Ce,_n[0]),$n||(Hn=listen(Ce,"input",_n[7]),$n=!0)},p(zn,Zn){Zn&8&&attr(Ce,"id",zn[3]),Zn&6&&ke!==(ke=zn[1].readonly&&!zn[2])&&(Ce.readOnly=ke),Zn&1&&Ce.value!==zn[0]&&set_input_value(Ce,zn[0]),Zn&16&&toggle_class(Ce,"is-invalid",zn[4])},i:noop,o:noop,d(zn){zn&&detach(Ce),$n=!1,Hn()}}}function create_if_block_1$o(_n){let Ce,ke,$n;function Hn(Zn){_n[6](Zn)}let zn={field:_n[1]};return _n[0]!==void 0&&(zn.value=_n[0]),Ce=new Autocomplete({props:zn}),binding_callbacks.push(()=>bind(Ce,"value",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&2&&(Yn.field=Zn[1]),!ke&&qn&1&&(ke=!0,Yn.value=Zn[0],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block$L(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[4]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&16&&set_data(ke,$n[4])},d($n){$n&&detach(Ce)}}}function create_fragment$15(_n){let Ce,ke,$n,Hn,zn;const Zn=[create_if_block_1$o,create_else_block$k],qn=[];function Yn(to,io){return to[1].selectOptions?0:1}ke=Yn(_n),$n=qn[ke]=Zn[ke](_n);let Jn=_n[4]&&create_if_block$L(_n);return{c(){Ce=element("div"),$n.c(),Hn=space$3(),Jn&&Jn.c(),set_style(Ce,"position","relative")},m(to,io){insert$1(to,Ce,io),qn[ke].m(Ce,null),append(Ce,Hn),Jn&&Jn.m(Ce,null),zn=!0},p(to,[io]){let uo=ke;ke=Yn(to),ke===uo?qn[ke].p(to,io):(group_outros(),transition_out(qn[uo],1,1,()=>{qn[uo]=null}),check_outros(),$n=qn[ke],$n?$n.p(to,io):($n=qn[ke]=Zn[ke](to),$n.c()),transition_in($n,1),$n.m(Ce,Hn)),to[4]?Jn?Jn.p(to,io):(Jn=create_if_block$L(to),Jn.c(),Jn.m(Ce,null)):Jn&&(Jn.d(1),Jn=null)},i(to){zn||(transition_in($n),zn=!0)},o(to){transition_out($n),zn=!1},d(to){to&&detach(Ce),qn[ke].d(),Jn&&Jn.d()}}}function instance$15(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce,{id:Yn}=Ce;function Jn(io){zn=io,ke(0,zn)}function to(){zn=this.value,ke(0,zn)}return _n.$$set=io=>{"field"in io&&ke(1,Hn=io.field),"value"in io&&ke(0,zn=io.value),"isCreateMode"in io&&ke(2,Zn=io.isCreateMode),"validationErrors"in io&&ke(5,qn=io.validationErrors),"id"in io&&ke(3,Yn=io.id)},_n.$$.update=()=>{_n.$$.dirty&34&&ke(4,$n=getErrorMessage(qn,Hn.name))},[zn,Hn,Zn,Yn,$n,qn,Jn,to]}let Text$2=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$15,create_fragment$15,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}};function create_if_block$K(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[4]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&16&&set_data(ke,$n[4])},d($n){$n&&detach(Ce)}}}function create_fragment$14(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn=_n[1].source+"",Jn,to,io,uo,mo=_n[4]&&create_if_block$K(_n);return{c(){Ce=element("div"),ke=element("input"),Hn=space$3(),zn=element("div"),Zn=text("Leave this empty to autogenerate from "),qn=element("i"),Jn=text(Yn),to=space$3(),mo&&mo.c(),attr(ke,"type","text"),attr(ke,"id",_n[3]),attr(ke,"class","form-control"),attr(ke,"autocomplete","off"),ke.readOnly=$n=_n[1].readonly&&!_n[2],toggle_class(ke,"is-invalid",_n[4]),attr(zn,"class","system-help-text light-text"),attr(Ce,"class","mb-0")},m(bo,Oo){insert$1(bo,Ce,Oo),append(Ce,ke),set_input_value(ke,_n[0]),append(Ce,Hn),append(Ce,zn),append(zn,Zn),append(zn,qn),append(qn,Jn),append(Ce,to),mo&&mo.m(Ce,null),io||(uo=listen(ke,"input",_n[6]),io=!0)},p(bo,[Oo]){Oo&8&&attr(ke,"id",bo[3]),Oo&6&&$n!==($n=bo[1].readonly&&!bo[2])&&(ke.readOnly=$n),Oo&1&&ke.value!==bo[0]&&set_input_value(ke,bo[0]),Oo&16&&toggle_class(ke,"is-invalid",bo[4]),Oo&2&&Yn!==(Yn=bo[1].source+"")&&set_data(Jn,Yn),bo[4]?mo?mo.p(bo,Oo):(mo=create_if_block$K(bo),mo.c(),mo.m(Ce,null)):mo&&(mo.d(1),mo=null)},i:noop,o:noop,d(bo){bo&&detach(Ce),mo&&mo.d(),io=!1,uo()}}}function instance$14(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce,{id:Yn}=Ce;function Jn(){zn=this.value,ke(0,zn)}return _n.$$set=to=>{"field"in to&&ke(1,Hn=to.field),"value"in to&&ke(0,zn=to.value),"isCreateMode"in to&&ke(2,Zn=to.isCreateMode),"validationErrors"in to&&ke(5,qn=to.validationErrors),"id"in to&&ke(3,Yn=to.id)},_n.$$.update=()=>{_n.$$.dirty&34&&ke(4,$n=getErrorMessage(qn,Hn.name))},[zn,Hn,Zn,Yn,$n,qn,Jn]}class Slug extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$14,create_fragment$14,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}}function insertEdges(_n,Ce,ke,$n,Hn=""){let zn=ke.map(qn=>({target:qn.id,source:Ce.id,sourceSchema:Ce.schema,targetSchema:qn.schema,field:$n,depth:1,rank:""})),Zn=_n.edges;return Hn==="replace"&&(Zn=Zn.filter(qn=>qn.field!==field.name)),_n.records=lodashExports.uniqBy([..._n.records,...ke],qn=>qn.id),_n.edges=lodashExports.uniqBy([...Zn,...zn],qn=>qn.source+qn.target+qn.field+qn.depth),_n}function sortByField(_n,Ce,ke,$n,Hn){if(_n===Ce)return ke;let zn=Hn.map(Yn=>Yn.id),Zn=(ke==null?void 0:ke.filter(Yn=>Yn.field===$n&&Yn.depth===1&&zn.includes(Yn.target)))??[],qn=(ke==null?void 0:ke.filter(Yn=>!(Yn.field===$n&&Yn.depth===1)))??[];return Zn=array_move(Zn,_n,Ce),[...qn,...Zn]}function array_move(_n,Ce,ke){if(ke>=_n.length)for(var $n=ke-_n.length+1;$n--;)_n.push(void 0);return _n.splice(ke,0,_n.splice(Ce,1)[0]),_n}/*! + * mustache.js - Logic-less {{mustache}} templates with JavaScript + * http://github.com/janl/mustache.js + */var objectToString=Object.prototype.toString,isArray=Array.isArray||function(Ce){return objectToString.call(Ce)==="[object Array]"};function isFunction(_n){return typeof _n=="function"}function typeStr(_n){return isArray(_n)?"array":typeof _n}function escapeRegExp(_n){return _n.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function hasProperty(_n,Ce){return _n!=null&&typeof _n=="object"&&Ce in _n}function primitiveHasOwnProperty(_n,Ce){return _n!=null&&typeof _n!="object"&&_n.hasOwnProperty&&_n.hasOwnProperty(Ce)}var regExpTest=RegExp.prototype.test;function testRegExp(_n,Ce){return regExpTest.call(_n,Ce)}var nonSpaceRe=/\S/;function isWhitespace(_n){return!testRegExp(nonSpaceRe,_n)}var entityMap={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function escapeHtml(_n){return String(_n).replace(/[&<>"'`=\/]/g,function(ke){return entityMap[ke]})}var whiteRe=/\s*/,spaceRe=/\s+/,equalsRe=/\s*=/,curlyRe=/\s*\}/,tagRe=/#|\^|\/|>|\{|&|=|!/;function parseTemplate(_n,Ce){if(!_n)return[];var ke=!1,$n=[],Hn=[],zn=[],Zn=!1,qn=!1,Yn="",Jn=0;function to(){if(Zn&&!qn)for(;zn.length;)delete Hn[zn.pop()];else zn=[];Zn=!1,qn=!1}var io,uo,mo;function bo(es){if(typeof es=="string"&&(es=es.split(spaceRe,2)),!isArray(es)||es.length!==2)throw new Error("Invalid tags: "+es);io=new RegExp(escapeRegExp(es[0])+"\\s*"),uo=new RegExp("\\s*"+escapeRegExp(es[1])),mo=new RegExp("\\s*"+escapeRegExp("}"+es[1]))}bo(Ce||mustache.tags);for(var Oo=new Scanner(_n),wo,$o,Do,xo,Bo,Vo;!Oo.eos();){if(wo=Oo.pos,Do=Oo.scanUntil(io),Do)for(var Ko=0,Mo=Do.length;Ko"?Bo=[$o,Do,wo,Oo.pos,Yn,Jn,ke]:Bo=[$o,Do,wo,Oo.pos],Jn++,Hn.push(Bo),$o==="#"||$o==="^")$n.push(Bo);else if($o==="/"){if(Vo=$n.pop(),!Vo)throw new Error('Unopened section "'+Do+'" at '+wo);if(Vo[1]!==Do)throw new Error('Unclosed section "'+Vo[1]+'" at '+wo)}else $o==="name"||$o==="{"||$o==="&"?qn=!0:$o==="="&&bo(Do)}if(to(),Vo=$n.pop(),Vo)throw new Error('Unclosed section "'+Vo[1]+'" at '+Oo.pos);return nestTokens(squashTokens(Hn))}function squashTokens(_n){for(var Ce=[],ke,$n,Hn=0,zn=_n.length;Hn0?$n[$n.length-1][4]:Ce;break;default:ke.push(Hn)}return Ce}function Scanner(_n){this.string=_n,this.tail=_n,this.pos=0}Scanner.prototype.eos=function(){return this.tail===""};Scanner.prototype.scan=function(Ce){var ke=this.tail.match(Ce);if(!ke||ke.index!==0)return"";var $n=ke[0];return this.tail=this.tail.substring($n.length),this.pos+=$n.length,$n};Scanner.prototype.scanUntil=function(Ce){var ke=this.tail.search(Ce),$n;switch(ke){case-1:$n=this.tail,this.tail="";break;case 0:$n="";break;default:$n=this.tail.substring(0,ke),this.tail=this.tail.substring(ke)}return this.pos+=$n.length,$n};function Context$1(_n,Ce){this.view=_n,this.cache={".":this.view},this.parent=Ce}Context$1.prototype.push=function(Ce){return new Context$1(Ce,this)};Context$1.prototype.lookup=function(Ce){var ke=this.cache,$n;if(ke.hasOwnProperty(Ce))$n=ke[Ce];else{for(var Hn=this,zn,Zn,qn,Yn=!1;Hn;){if(Ce.indexOf(".")>0)for(zn=Hn.view,Zn=Ce.split("."),qn=0;zn!=null&&qn"?Jn=this.renderPartial(qn,ke,$n,zn):Yn==="&"?Jn=this.unescapedValue(qn,ke):Yn==="name"?Jn=this.escapedValue(qn,ke,zn):Yn==="text"&&(Jn=this.rawValue(qn)),Jn!==void 0&&(Zn+=Jn);return Zn};Writer.prototype.renderSection=function(Ce,ke,$n,Hn,zn){var Zn=this,qn="",Yn=ke.lookup(Ce[1]);function Jn(uo){return Zn.render(uo,ke,$n,zn)}if(Yn){if(isArray(Yn))for(var to=0,io=Yn.length;to0||!$n)&&(zn[Zn]=Hn+zn[Zn]);return zn.join(` +`)};Writer.prototype.renderPartial=function(Ce,ke,$n,Hn){if($n){var zn=this.getConfigTags(Hn),Zn=isFunction($n)?$n(Ce[1]):$n[Ce[1]];if(Zn!=null){var qn=Ce[6],Yn=Ce[5],Jn=Ce[4],to=Zn;Yn==0&&Jn&&(to=this.indentPartial(Zn,Jn,qn));var io=this.parse(to,zn);return this.renderTokens(io,ke,$n,to,Hn)}}};Writer.prototype.unescapedValue=function(Ce,ke){var $n=ke.lookup(Ce[1]);if($n!=null)return $n};Writer.prototype.escapedValue=function(Ce,ke,$n){var Hn=this.getConfigEscape($n)||mustache.escape,zn=ke.lookup(Ce[1]);if(zn!=null)return typeof zn=="number"&&Hn===mustache.escape?String(zn):Hn(zn)};Writer.prototype.rawValue=function(Ce){return Ce[1]};Writer.prototype.getConfigTags=function(Ce){return isArray(Ce)?Ce:Ce&&typeof Ce=="object"?Ce.tags:void 0};Writer.prototype.getConfigEscape=function(Ce){if(Ce&&typeof Ce=="object"&&!isArray(Ce))return Ce.escape};var mustache={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(_n){defaultWriter.templateCache=_n},get templateCache(){return defaultWriter.templateCache}},defaultWriter=new Writer;mustache.clearCache=function(){return defaultWriter.clearCache()};mustache.parse=function(Ce,ke){return defaultWriter.parse(Ce,ke)};mustache.render=function(Ce,ke,$n,Hn){if(typeof Ce!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+typeStr(Ce)+'" was given as the first argument for mustache#render(template, view, partials)');return defaultWriter.render(Ce,ke,$n,Hn)};mustache.escape=escapeHtml;mustache.Scanner=Scanner;mustache.Context=Context$1;mustache.Writer=Writer;function previewTitle(_n,Ce,ke){let $n=_n.find(Zn=>Zn.name===(Ce==null?void 0:Ce.schema));if(!($n!=null&&$n.cardTitle))return noTemplate($n,Ce);let Hn=Ce.data,zn=mustache.render($n.cardTitle,Hn);return!zn||zn===""?noTemplate($n,Ce):stripHtml(zn.slice(0,300))}function noTemplate(_n,Ce){var $n;if((_n==null?void 0:_n.type)==="files")return Ce._file.path;let ke=stripHtml(Ce==null?void 0:Ce.data[($n=_n.fields.filter(Hn=>Hn.info.name==="text")[0])==null?void 0:$n.name]).slice(0,300);return ke.trim()===""?"~Untitled~":ke}function create_else_block$j(_n){let Ce;return{c(){Ce=text("New Record")},m(ke,$n){insert$1(ke,Ce,$n)},p:noop,d(ke){ke&&detach(Ce)}}}function create_if_block$J(_n){let Ce=previewTitle(_n[3].schemas,_n[1])+"",ke;return{c(){ke=text(Ce)},m($n,Hn){insert$1($n,ke,Hn)},p($n,Hn){Hn&2&&Ce!==(Ce=previewTitle($n[3].schemas,$n[1])+"")&&set_data(ke,Ce)},d($n){$n&&detach(ke)}}}function create_fragment$13(_n){let Ce,ke,$n=_n[0].label.toUpperCase()+"",Hn,zn,Zn,qn;function Yn(io,uo){return io[2]?create_else_block$j:create_if_block$J}let Jn=Yn(_n),to=Jn(_n);return{c(){Ce=element("div"),ke=element("a"),Hn=text($n),Zn=space$3(),qn=element("span"),to.c(),attr(ke,"class","schema-name"),attr(ke,"href",zn=_n[3].lucentUrl+"/content/"+_n[0].name),attr(qn,"class","record-title"),attr(Ce,"class","record-header")},m(io,uo){insert$1(io,Ce,uo),append(Ce,ke),append(ke,Hn),append(Ce,Zn),append(Ce,qn),to.m(qn,null)},p(io,[uo]){uo&1&&$n!==($n=io[0].label.toUpperCase()+"")&&set_data(Hn,$n),uo&1&&zn!==(zn=io[3].lucentUrl+"/content/"+io[0].name)&&attr(ke,"href",zn),Jn===(Jn=Yn(io))&&to?to.p(io,uo):(to.d(1),to=Jn(io),to&&(to.c(),to.m(qn,null)))},i:noop,o:noop,d(io){io&&detach(Ce),to.d()}}}function instance$13(_n,Ce,ke){const $n=getContext$1("channel");let{schema:Hn}=Ce,{record:zn}=Ce,{isCreateMode:Zn}=Ce;return _n.$$set=qn=>{"schema"in qn&&ke(0,Hn=qn.schema),"record"in qn&&ke(1,zn=qn.record),"isCreateMode"in qn&&ke(2,Zn=qn.isCreateMode)},[Hn,zn,Zn,$n]}class Title extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$13,create_fragment$13,safe_not_equal,{schema:0,record:1,isCreateMode:2})}}function get_each_context$m(_n,Ce,ke){const $n=_n.slice();return $n[24]=Ce[ke],$n}function create_if_block_2$b(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.innerHTML=` + Save`,attr(Ce,"type","button"),attr(Ce,"class","button primary ms-2 btn btn-primary btn-spinner")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[10]),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_if_block_1$n(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.innerHTML=` + Create`,attr(Ce,"class","button primary btn-spinner")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[10]),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_if_block$I(_n){let Ce,ke,$n,Hn;function zn(Yn){_n[14](Yn)}function Zn(Yn){_n[15](Yn)}let qn={field:_n[24],schema:_n[2],record:_n[0],validationErrors:_n[4],isCreateMode:_n[3]};return _n[0].data!==void 0&&(qn.data=_n[0].data),_n[1]!==void 0&&(qn.graph=_n[1]),Ce=new FormField({props:qn}),binding_callbacks.push(()=>bind(Ce,"data",zn)),binding_callbacks.push(()=>bind(Ce,"graph",Zn)),{c(){create_component(Ce.$$.fragment)},m(Yn,Jn){mount_component(Ce,Yn,Jn),Hn=!0},p(Yn,Jn){const to={};Jn&4&&(to.schema=Yn[2]),Jn&1&&(to.record=Yn[0]),Jn&16&&(to.validationErrors=Yn[4]),Jn&8&&(to.isCreateMode=Yn[3]),!ke&&Jn&1&&(ke=!0,to.data=Yn[0].data,add_flush_callback(()=>ke=!1)),!$n&&Jn&2&&($n=!0,to.graph=Yn[1],add_flush_callback(()=>$n=!1)),Ce.$set(to)},i(Yn){Hn||(transition_in(Ce.$$.fragment,Yn),Hn=!0)},o(Yn){transition_out(Ce.$$.fragment,Yn),Hn=!1},d(Yn){destroy_component(Ce,Yn)}}}function create_each_block$m(_n,Ce){let ke,$n,Hn,zn=Ce[5]===Ce[24].group&&create_if_block$I(Ce);return{key:_n,first:null,c(){ke=empty$1(),zn&&zn.c(),$n=empty$1(),this.first=ke},m(Zn,qn){insert$1(Zn,ke,qn),zn&&zn.m(Zn,qn),insert$1(Zn,$n,qn),Hn=!0},p(Zn,qn){Ce=Zn,Ce[5]===Ce[24].group?zn?(zn.p(Ce,qn),qn&32&&transition_in(zn,1)):(zn=create_if_block$I(Ce),zn.c(),transition_in(zn,1),zn.m($n.parentNode,$n)):zn&&(group_outros(),transition_out(zn,1,1,()=>{zn=null}),check_outros())},i(Zn){Hn||(transition_in(zn),Hn=!0)},o(Zn){transition_out(zn),Hn=!1},d(Zn){Zn&&(detach(ke),detach($n)),zn&&zn.d(Zn)}}}function create_fragment$12(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do=[],xo=new Map,Bo,Vo,Ko;function Mo(gs){_n[11](gs)}function es(gs){_n[12](gs)}let ls={schema:_n[2],isCreateMode:_n[3]};_n[0]!==void 0&&(ls.record=_n[0]),_n[5]!==void 0&&(ls.activeContentTab=_n[5]),$n=new EditHeader({props:ls}),binding_callbacks.push(()=>bind($n,"record",Mo)),binding_callbacks.push(()=>bind($n,"activeContentTab",es));function ps(gs,xs){if(gs[3])return create_if_block_1$n;if(gs[6])return create_if_block_2$b}let rs=ps(_n),Yo=rs&&rs(_n);Yn=new Title({props:{schema:_n[2],record:_n[0],isCreateMode:_n[3]}}),to=new ErrorAlert({props:{message:_n[7]}});function Ys(gs){_n[13](gs)}let sr={schema:_n[2],isCreateMode:_n[3]};_n[5]!==void 0&&(sr.active=_n[5]),mo=new ContentTabs({props:sr}),binding_callbacks.push(()=>bind(mo,"active",Ys)),wo=new FilePreview({props:{record:_n[0],schema:_n[2]}});let Js=ensure_array_like(_n[8]);const ko=gs=>gs[24].name;for(let gs=0;gsHn=!1)),!zn&&xs&32&&(zn=!0,Qr.activeContentTab=gs[5],add_flush_callback(()=>zn=!1)),$n.$set(Qr),rs===(rs=ps(gs))&&Yo?Yo.p(gs,xs):(Yo&&Yo.d(1),Yo=rs&&rs(gs),Yo&&(Yo.c(),Yo.m(ke,null)));const cr={};xs&4&&(cr.schema=gs[2]),xs&1&&(cr.record=gs[0]),xs&8&&(cr.isCreateMode=gs[3]),Yn.$set(cr);const ws={};xs&128&&(ws.message=gs[7]),to.$set(ws);const Fs={};xs&4&&(Fs.schema=gs[2]),xs&8&&(Fs.isCreateMode=gs[3]),!bo&&xs&32&&(bo=!0,Fs.active=gs[5],add_flush_callback(()=>bo=!1)),mo.$set(Fs);const Br={};xs&1&&(Br.record=gs[0]),xs&4&&(Br.schema=gs[2]),wo.$set(Br),xs&319&&(Js=ensure_array_like(gs[8]),group_outros(),Do=update_keyed_each(Do,xs,ko,1,gs,Js,xo,uo,outro_and_destroy_block,create_each_block$m,null,get_each_context$m),check_outros())},i(gs){if(!Bo){transition_in($n.$$.fragment,gs),transition_in(Yn.$$.fragment,gs),transition_in(to.$$.fragment,gs),transition_in(mo.$$.fragment,gs),transition_in(wo.$$.fragment,gs);for(let xs=0;xsls.name!=="id"),Oo="_default";qn.fields.reduce((ls,ps)=>ps.ui==="tab"?(Oo=ps.name,ls):(ls[Oo]=[...ls[Oo]??[],ps.name],ls),[]),onMount(()=>{wo()});function wo(){io={data:JSON.parse(JSON.stringify(Yn.data)),schema:Yn.schema,status:Yn.status,_sys:JSON.parse(JSON.stringify(Yn._sys)),_file:JSON.parse(JSON.stringify(Yn._file)),edges:JSON.parse(JSON.stringify(Jn.edges))}}afterUpdate(()=>{ke(6,mo=Do())});function $o(ls){return mo?ls.returnValue="You have unsaved changes. Are you sure you want to exit?":(delete ls.returnValue,"...")}function Do(){return to?!1:!lodashExports.isEqual(io,{data:Yn.data,schema:Yn.schema,status:Yn.status,_sys:Yn._sys,_file:Yn._file,edges:Jn.edges})}function xo(ls){return ls.preventDefault(),console.log("SAVE: Attempt"),ke(4,$n=null),ke(7,Hn=""),new Promise(function(ps,rs){var Yo;if(!mo&&!to){ps(null);return}if(!Yn){ps(null);return}ke(1,Jn.edges=((Yo=Jn.edges)==null?void 0:Yo.filter(Ys=>!Ys._isTrashed&&Ys.source===Yn.id))??[],Jn),axios$1.post(zn.lucentUrl+"/records",{record:Yn,edges:Jn.edges,isCreateMode:to}).then(function(Ys){console.log("SAVE: SAVED INLINE"),ke(0,Yn=Ys.data.records[0]),ke(1,Jn=Ys.data),to||wo(),Zn("inlinesaved",{records:[Yn]}),ps(null)}).catch(function(Ys){Ys.response&&(typeof Ys.response.data.error=="string"?ke(7,Hn=Ys.response.data.error):ke(4,$n=Ys.response.data.error)),ps(null)})})}function Bo(ls){Yn=ls,ke(0,Yn)}function Vo(ls){uo=ls,ke(5,uo)}function Ko(ls){uo=ls,ke(5,uo)}function Mo(ls){_n.$$.not_equal(Yn.data,ls)&&(Yn.data=ls,ke(0,Yn))}function es(ls){Jn=ls,ke(1,Jn)}return _n.$$set=ls=>{"schema"in ls&&ke(2,qn=ls.schema),"record"in ls&&ke(0,Yn=ls.record),"graph"in ls&&ke(1,Jn=ls.graph),"isCreateMode"in ls&&ke(3,to=ls.isCreateMode)},_n.$$.update=()=>{_n.$$.dirty&16&&ke(7,Hn=$n?`Record submission failed. ${Object.entries($n).length} error(s)`:null)},ke(4,$n=null),[Yn,Jn,qn,to,$n,uo,mo,Hn,bo,$o,xo,Bo,Vo,Ko,Mo,es]}class InlineEdit extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$12,create_fragment$12,safe_not_equal,{schema:2,record:0,graph:1,isCreateMode:3})}}function get_each_context$l(_n,Ce,ke){const $n=_n.slice();return $n[11]=Ce[ke],$n}function create_if_block$H(_n){let Ce=[],ke=new Map,$n,Hn=ensure_array_like(_n[2]);const zn=qn=>qn[11].id;for(let qn=0;qn{axios.get(Hn.lucentUrl+"/records/suggestions",{params:{schema:qn.collections[0],field:"search",value:Yn,ui:"search"}}).then(Oo=>{ke(2,$n=Oo.data)}).catch(Oo=>{ke(2,$n=[]),console.log(Oo)})},500);function to(bo,Oo){bo.preventDefault(),ke(6,Zn=Oo.id),zn("addFilter"),ke(6,Zn="")}function io(){Yn=this.value,ke(1,Yn)}const uo=(bo,Oo)=>to(Oo,bo),mo=(bo,Oo)=>to(Oo,bo);return _n.$$set=bo=>{"value"in bo&&ke(6,Zn=bo.value),"field"in bo&&ke(0,qn=bo.field)},ke(2,$n=[]),[qn,Yn,$n,Hn,Jn,to,Zn,io,uo,mo]}class FilterReferenceInput extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$11,create_fragment$11,safe_not_equal,{value:6,field:0})}}function get_each_context$k(_n,Ce,ke){const $n=_n.slice();return $n[39]=Ce[ke],$n}function get_each_context_1$7(_n,Ce,ke){const $n=_n.slice();return $n[42]=Ce[ke],$n}function get_each_context_2$2(_n,Ce,ke){const $n=_n.slice();return $n[39]=Ce[ke],$n}function create_if_block_4$5(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;ke=new Icon({props:{icon:"arrow-left"}});let Jn=ensure_array_like(_n[9]),to=[];for(let io=0;iobind(io,"value",wo)),io.$on("addFilter",_n[14]),{c(){Ce=element("button"),create_component(ke.$$.fragment),$n=text(` + Back`),Hn=space$3(),zn=element("div"),Zn=text("field: "),Yn=text(qn),Jn=space$3(),to=element("div"),create_component(io.$$.fragment),attr(Ce,"class","dropdown-item button"),attr(zn,"class","selected-filter"),attr(to,"class","mt-2")},m(Do,xo){insert$1(Do,Ce,xo),mount_component(ke,Ce,null),append(Ce,$n),insert$1(Do,Hn,xo),insert$1(Do,zn,xo),append(zn,Zn),append(zn,Yn),insert$1(Do,Jn,xo),insert$1(Do,to,xo),mount_component(io,to,null),mo=!0,bo||(Oo=listen(Ce,"click",_n[31]),bo=!0)},p(Do,xo){(!mo||xo[0]&16)&&qn!==(qn=Do[4].label+"")&&set_data(Yn,qn);const Bo={};xo[0]&16&&(Bo.field=Do[4]),!uo&&xo[0]&4&&(uo=!0,Bo.value=Do[2],add_flush_callback(()=>uo=!1)),io.$set(Bo)},i(Do){mo||(transition_in(ke.$$.fragment,Do),transition_in(io.$$.fragment,Do),mo=!0)},o(Do){transition_out(ke.$$.fragment,Do),transition_out(io.$$.fragment,Do),mo=!1},d(Do){Do&&(detach(Ce),detach(Hn),detach(zn),detach(Jn),detach(to)),destroy_component(ke),destroy_component(io),bo=!1,Oo()}}}function create_default_slot$8(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo,Ko,Mo,es,ls,ps,rs=!_n[3]&&create_if_block_4$5(_n),Yo=_n[3]&&!_n[5]&&create_if_block_3$8(_n),Ys=_n[3]&&_n[5]&&create_if_block_2$a(_n),sr=!_n[4]&&create_if_block_1$m(_n),Js=_n[4]&&create_if_block$G(_n);return $o=new Icon({props:{icon:"arrow-left"}}),{c(){Ce=element("div"),ke=element("button"),ke.textContent="Filter by field",$n=space$3(),Hn=element("button"),Hn.textContent="Filter by Reference",zn=space$3(),Zn=element("button"),Zn.textContent="Advanced filter",qn=space$3(),Yn=element("div"),rs&&rs.c(),Jn=space$3(),Yo&&Yo.c(),to=space$3(),Ys&&Ys.c(),io=space$3(),uo=element("div"),sr&&sr.c(),mo=space$3(),Js&&Js.c(),bo=space$3(),Oo=element("div"),wo=element("button"),create_component($o.$$.fragment),Do=text(` + Back`),xo=space$3(),Bo=element("form"),Vo=element("input"),Ko=space$3(),Mo=element("button"),Mo.textContent="Submit",attr(ke,"class","dropdown-item button"),attr(Hn,"class","dropdown-item button"),attr(Zn,"class","dropdown-item button"),toggle_class(Ce,"hide",_n[6]!=="main"),toggle_class(Yn,"hide",_n[6]!=="byField"),toggle_class(uo,"hide",_n[6]!=="byReference"),attr(wo,"class","dropdown-item button"),attr(Vo,"type","search"),attr(Vo,"class","mb-2 mt-2"),attr(Vo,"placeholder","Advanced filters"),Vo.required=!0,attr(Mo,"class","button applied-filter"),toggle_class(Oo,"hide",_n[6]!=="advanced")},m(ko,gs){insert$1(ko,Ce,gs),append(Ce,ke),append(Ce,$n),append(Ce,Hn),append(Ce,zn),append(Ce,Zn),insert$1(ko,qn,gs),insert$1(ko,Yn,gs),rs&&rs.m(Yn,null),append(Yn,Jn),Yo&&Yo.m(Yn,null),append(Yn,to),Ys&&Ys.m(Yn,null),insert$1(ko,io,gs),insert$1(ko,uo,gs),sr&&sr.m(uo,null),append(uo,mo),Js&&Js.m(uo,null),insert$1(ko,bo,gs),insert$1(ko,Oo,gs),append(Oo,wo),mount_component($o,wo,null),append(wo,Do),append(Oo,xo),append(Oo,Bo),append(Bo,Vo),set_input_value(Vo,_n[1]),append(Bo,Ko),append(Bo,Mo),es=!0,ls||(ps=[listen(ke,"click",_n[20]),listen(Hn,"click",_n[21]),listen(Zn,"click",_n[22]),listen(wo,"click",_n[33]),listen(Vo,"input",_n[34]),listen(Bo,"submit",_n[8])],ls=!0)},p(ko,gs){(!es||gs[0]&64)&&toggle_class(Ce,"hide",ko[6]!=="main"),ko[3]?rs&&(group_outros(),transition_out(rs,1,1,()=>{rs=null}),check_outros()):rs?(rs.p(ko,gs),gs[0]&8&&transition_in(rs,1)):(rs=create_if_block_4$5(ko),rs.c(),transition_in(rs,1),rs.m(Yn,Jn)),ko[3]&&!ko[5]?Yo?(Yo.p(ko,gs),gs[0]&40&&transition_in(Yo,1)):(Yo=create_if_block_3$8(ko),Yo.c(),transition_in(Yo,1),Yo.m(Yn,to)):Yo&&(group_outros(),transition_out(Yo,1,1,()=>{Yo=null}),check_outros()),ko[3]&&ko[5]?Ys?(Ys.p(ko,gs),gs[0]&40&&transition_in(Ys,1)):(Ys=create_if_block_2$a(ko),Ys.c(),transition_in(Ys,1),Ys.m(Yn,null)):Ys&&(group_outros(),transition_out(Ys,1,1,()=>{Ys=null}),check_outros()),(!es||gs[0]&64)&&toggle_class(Yn,"hide",ko[6]!=="byField"),ko[4]?sr&&(group_outros(),transition_out(sr,1,1,()=>{sr=null}),check_outros()):sr?(sr.p(ko,gs),gs[0]&16&&transition_in(sr,1)):(sr=create_if_block_1$m(ko),sr.c(),transition_in(sr,1),sr.m(uo,mo)),ko[4]?Js?(Js.p(ko,gs),gs[0]&16&&transition_in(Js,1)):(Js=create_if_block$G(ko),Js.c(),transition_in(Js,1),Js.m(uo,null)):Js&&(group_outros(),transition_out(Js,1,1,()=>{Js=null}),check_outros()),(!es||gs[0]&64)&&toggle_class(uo,"hide",ko[6]!=="byReference"),gs[0]&2&&Vo.value!==ko[1]&&set_input_value(Vo,ko[1]),(!es||gs[0]&64)&&toggle_class(Oo,"hide",ko[6]!=="advanced")},i(ko){es||(transition_in(rs),transition_in(Yo),transition_in(Ys),transition_in(sr),transition_in(Js),transition_in($o.$$.fragment,ko),es=!0)},o(ko){transition_out(rs),transition_out(Yo),transition_out(Ys),transition_out(sr),transition_out(Js),transition_out($o.$$.fragment,ko),es=!1},d(ko){ko&&(detach(Ce),detach(qn),detach(Yn),detach(io),detach(uo),detach(bo),detach(Oo)),rs&&rs.d(),Yo&&Yo.d(),Ys&&Ys.d(),sr&&sr.d(),Js&&Js.d(),destroy_component($o),ls=!1,run_all(ps)}}}function create_button_slot$7(_n){let Ce,ke,$n,Hn,zn;return ke=new Icon({props:{icon:"filter"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),Hn=element("span"),Hn.textContent="Filter",attr(Hn,"class","ms-1"),attr(Ce,"slot","button")},m(Zn,qn){insert$1(Zn,Ce,qn),mount_component(ke,Ce,null),append(Ce,$n),append(Ce,Hn),zn=!0},p:noop,i(Zn){zn||(transition_in(ke.$$.fragment,Zn),zn=!0)},o(Zn){transition_out(ke.$$.fragment,Zn),zn=!1},d(Zn){Zn&&detach(Ce),destroy_component(ke)}}}function create_fragment$10(_n){let Ce,ke,$n,Hn={$$slots:{button:[create_button_slot$7],default:[create_default_slot$8]},$$scope:{ctx:_n}};return ke=new Dropdown({props:Hn}),_n[35](ke),{c(){Ce=element("div"),create_component(ke.$$.fragment)},m(zn,Zn){insert$1(zn,Ce,Zn),mount_component(ke,Ce,null),$n=!0},p(zn,Zn){const qn={};Zn[0]&254|Zn[1]&65536&&(qn.$$scope={dirty:Zn,ctx:zn}),ke.$set(qn)},i(zn){$n||(transition_in(ke.$$.fragment,zn),$n=!0)},o(zn){transition_out(ke.$$.fragment,zn),$n=!1},d(zn){zn&&detach(Ce),_n[35](null),destroy_component(ke)}}}function instance$10(_n,Ce,ke){const $n=createEventDispatcher();let{schema:Hn}=Ce,{systemFields:zn=[]}=Ce,{operators:Zn}=Ce,{inModal:qn}=Ce,{modalUrl:Yn}=Ce,Jn,to="",io=zn;Hn.type==="collection"&&(io=zn.filter(hs=>hs.files===!1));function uo(hs){hs.preventDefault();let Qs=to.split("=")[0]??"";if(!Qs)return;let zo=`filter[${Qs}]`,el=to.split("=")[1]??"";if(!el)return;const ga=new URL(Yn??window.location.href);ga.searchParams.set("skip","0"),ga.searchParams.set(zo,el),qn?$n("refresh",ga):window.location.replace(ga),ls()}let mo=null,bo=null,Oo=null,wo=null,$o="main",Do=null,xo=[...Hn.fields,...io].filter(hs=>{var Qs;return!["file","json","reference"].includes(((Qs=hs.info)==null?void 0:Qs.name)??hs.ui)}),Bo=[...Hn.fields].filter(hs=>{var Qs;return["reference"].includes(((Qs=hs.info)==null?void 0:Qs.name)??hs.ui)});function Vo(hs,Qs){ke(3,bo=Qs),ke(7,Do=Zn.filter(zo=>{var el;return zo.uis.includes((el=bo==null?void 0:bo.info)==null?void 0:el.name)||zo.uis[0]==="*"}))}function Ko(hs,Qs){ke(4,Oo=Qs),ke(5,wo=Zn.find(zo=>zo.name==="eq"))}function Mo(hs,Qs){ke(5,wo=Qs),Qs.hasValue||es(hs)}function es(hs){hs.preventDefault();let Qs="",zo,el=bo??Oo;Hn.fields.find(Ca=>Ca.name===el.name)&&(el.info.name==="reference"&&wo.name==="eq"?(Qs="children."+el.name+".id",zo=`filter[${Qs}]`):(Qs="data.",zo=`filter[${Qs+el.name}_${wo.name}]`));const ga=new URL(Yn??window.location.href);ga.searchParams.set("skip","0"),ga.searchParams.set(zo,mo),qn?($n("refresh",ga),Jn.close()):window.location.href=ga.toString(),ls()}function ls(){ke(3,bo=null),ke(5,wo=null),ke(6,$o="main"),ke(4,Oo=null)}const ps=hs=>ke(6,$o="byField"),rs=hs=>ke(6,$o="byReference"),Yo=hs=>ke(6,$o="advanced"),Ys=hs=>ke(6,$o="main"),sr=(hs,Qs)=>Vo(Qs,hs),Js=hs=>ke(3,bo=null),ko=(hs,Qs)=>Mo(Qs,hs),gs=hs=>ke(5,wo=null);function xs(){mo=this.value,ke(2,mo)}const Qr=hs=>ke(6,$o="main"),cr=(hs,Qs)=>Ko(Qs,hs),ws=hs=>ke(4,Oo=null);function Fs(hs){mo=hs,ke(2,mo)}const Br=hs=>ke(6,$o="main");function _r(){to=this.value,ke(1,to)}function ha(hs){binding_callbacks[hs?"unshift":"push"](()=>{Jn=hs,ke(0,Jn)})}return _n.$$set=hs=>{"schema"in hs&&ke(15,Hn=hs.schema),"systemFields"in hs&&ke(16,zn=hs.systemFields),"operators"in hs&&ke(17,Zn=hs.operators),"inModal"in hs&&ke(18,qn=hs.inModal),"modalUrl"in hs&&ke(19,Yn=hs.modalUrl)},[Jn,to,mo,bo,Oo,wo,$o,Do,uo,xo,Bo,Vo,Ko,Mo,es,Hn,zn,Zn,qn,Yn,ps,rs,Yo,Ys,sr,Js,ko,gs,xs,Qr,cr,ws,Fs,Br,_r,ha]}class FilterFields extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$10,create_fragment$10,safe_not_equal,{schema:15,systemFields:16,operators:17,inModal:18,modalUrl:19},null,[-1,-1])}}function create_fragment$$(_n){let Ce,ke,$n,Hn,zn,Zn,qn;return{c(){Ce=element("fieldset"),ke=element("label"),$n=element("span"),Hn=text(` + Upload file + + `),zn=element("input"),attr($n,"class","spinner-border spinner-border-sm"),attr($n,"role","status"),attr($n,"aria-hidden","true"),attr(zn,"class","form-control"),attr(zn,"type","file"),attr(zn,"id","formFile"),zn.multiple=!0,attr(zn,"accept",mimeTypes),zn.disabled=_n[0],zn.hidden=!0,attr(ke,"class","button primary btn-spinner "),attr(Ce,"class","upload-button"),Ce.disabled=_n[0]},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,ke),append(ke,$n),append(ke,Hn),append(ke,zn),Zn||(qn=listen(zn,"input",_n[1]),Zn=!0)},p(Yn,[Jn]){Jn&1&&(zn.disabled=Yn[0]),Jn&1&&(Ce.disabled=Yn[0])},i:noop,o:noop,d(Yn){Yn&&detach(Ce),Zn=!1,qn()}}}let mimeTypes="";function instance$$(_n,Ce,ke){const $n=createEventDispatcher(),Hn=getContext$1("channel");let{schema:zn}=Ce,Zn=[],qn=!1;function Yn(Jn){ke(0,qn=!0),Zn=Jn.target.files?[...Jn.target.files]:[];let to=new FormData;to.append("schema",zn.name),Array.from(Zn).forEach(function(io){to.append("files[]",io)}),$n("beforeUpload",Zn),axios.post(Hn.lucentUrl+"/files/upload",to,{headers:{"Content-Type":"multipart/form-data"}}).then(io=>{io.data.error?$n("uploadError",io.data.error):$n("uploadComplete",io.data),ke(0,qn=!1)}).catch(io=>{ke(0,qn=!1),console.log(io.response.data)})}return _n.$$set=Jn=>{"schema"in Jn&&ke(2,zn=Jn.schema)},[qn,Yn,zn]}class Uploader extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$$,create_fragment$$,safe_not_equal,{schema:2})}}function get_each_context$j(_n,Ce,ke){const $n=_n.slice();return $n[18]=Ce[ke],$n}function get_each_context_1$6(_n,Ce,ke){const $n=_n.slice();return $n[18]=Ce[ke],$n}function create_each_block_1$6(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io=_n[18].label+"",uo,mo,bo,Oo;$n=new Icon({props:{icon:"arrow-up-short-wide"}});function wo(...xo){return _n[10](_n[18],...xo)}qn=new Icon({props:{icon:"arrow-down-wide-short"}});function $o(...xo){return _n[11](_n[18],...xo)}function Do(...xo){return _n[12](_n[18],...xo)}return{c(){Ce=element("div"),ke=element("button"),create_component($n.$$.fragment),zn=space$3(),Zn=element("button"),create_component(qn.$$.fragment),Jn=space$3(),to=element("button"),uo=text(io),attr(ke,"title","Sort Ascending"),attr(ke,"class",Hn="button button-icon "+(_n[18].name==_n[1].name&&!_n[0].startsWith("-")?"active":"")),attr(Zn,"title","Sort Descending"),attr(Zn,"class",Yn="button button-icon "+(_n[18].name==_n[1].name&&_n[0].startsWith("-")?"active":"")),attr(to,"title","Sort Ascending"),attr(to,"class","button"),attr(Ce,"class","dropdown-item")},m(xo,Bo){insert$1(xo,Ce,Bo),append(Ce,ke),mount_component($n,ke,null),append(Ce,zn),append(Ce,Zn),mount_component(qn,Zn,null),append(Ce,Jn),append(Ce,to),append(to,uo),mo=!0,bo||(Oo=[listen(ke,"click",wo),listen(Zn,"click",$o),listen(to,"click",Do)],bo=!0)},p(xo,Bo){_n=xo,(!mo||Bo&11&&Hn!==(Hn="button button-icon "+(_n[18].name==_n[1].name&&!_n[0].startsWith("-")?"active":"")))&&attr(ke,"class",Hn),(!mo||Bo&11&&Yn!==(Yn="button button-icon "+(_n[18].name==_n[1].name&&_n[0].startsWith("-")?"active":"")))&&attr(Zn,"class",Yn),(!mo||Bo&8)&&io!==(io=_n[18].label+"")&&set_data(uo,io)},i(xo){mo||(transition_in($n.$$.fragment,xo),transition_in(qn.$$.fragment,xo),mo=!0)},o(xo){transition_out($n.$$.fragment,xo),transition_out(qn.$$.fragment,xo),mo=!1},d(xo){xo&&detach(Ce),destroy_component($n),destroy_component(qn),bo=!1,run_all(Oo)}}}function create_each_block$j(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io=_n[18].label+"",uo,mo,bo,Oo,wo;$n=new Icon({props:{icon:"arrow-up-short-wide"}});function $o(...Bo){return _n[13](_n[18],...Bo)}qn=new Icon({props:{icon:"arrow-down-wide-short"}});function Do(...Bo){return _n[14](_n[18],...Bo)}function xo(...Bo){return _n[15](_n[18],...Bo)}return{c(){Ce=element("div"),ke=element("button"),create_component($n.$$.fragment),zn=space$3(),Zn=element("button"),create_component(qn.$$.fragment),Jn=space$3(),to=element("button"),uo=text(io),mo=space$3(),attr(ke,"title","Sort Ascending"),attr(ke,"class",Hn="button button-icon "+(_n[18].name==_n[0]?"active":"")),attr(Zn,"title","Sort Descending"),attr(Zn,"class",Yn="button button-icon "+("-"+_n[18].name==_n[0]?"active":"")),attr(to,"title","Sort Ascending"),attr(to,"class","button"),attr(Ce,"class","dropdown-item")},m(Bo,Vo){insert$1(Bo,Ce,Vo),append(Ce,ke),mount_component($n,ke,null),append(Ce,zn),append(Ce,Zn),mount_component(qn,Zn,null),append(Ce,Jn),append(Ce,to),append(to,uo),append(Ce,mo),bo=!0,Oo||(wo=[listen(ke,"click",$o),listen(Zn,"click",Do),listen(to,"click",xo)],Oo=!0)},p(Bo,Vo){_n=Bo,(!bo||Vo&5&&Hn!==(Hn="button button-icon "+(_n[18].name==_n[0]?"active":"")))&&attr(ke,"class",Hn),(!bo||Vo&5&&Yn!==(Yn="button button-icon "+("-"+_n[18].name==_n[0]?"active":"")))&&attr(Zn,"class",Yn),(!bo||Vo&4)&&io!==(io=_n[18].label+"")&&set_data(uo,io)},i(Bo){bo||(transition_in($n.$$.fragment,Bo),transition_in(qn.$$.fragment,Bo),bo=!0)},o(Bo){transition_out($n.$$.fragment,Bo),transition_out(qn.$$.fragment,Bo),bo=!1},d(Bo){Bo&&detach(Ce),destroy_component($n),destroy_component(qn),Oo=!1,run_all(wo)}}}function create_default_slot$7(_n){let Ce,ke,$n,Hn,zn,Zn=ensure_array_like(_n[3]),qn=[];for(let uo=0;uotransition_out(qn[uo],1,1,()=>{qn[uo]=null});let Jn=ensure_array_like(_n[2]),to=[];for(let uo=0;uotransition_out(to[uo],1,1,()=>{to[uo]=null});return{c(){Ce=element("div");for(let uo=0;uo{io[Oo]=null}),check_outros(),Hn=io[$n],Hn||(Hn=io[$n]=to[$n](mo),Hn.c()),transition_in(Hn,1),Hn.m(Ce,zn)),(!Jn||bo&2)&&qn!==(qn=mo[1].label+"")&&set_data(Yn,qn)},i(mo){Jn||(transition_in(Hn),Jn=!0)},o(mo){transition_out(Hn),Jn=!1},d(mo){mo&&detach(Ce),io[$n].d()}}}function create_fragment$_(_n){let Ce,ke;return Ce=new Dropdown({props:{$$slots:{button:[create_button_slot$6],default:[create_default_slot$7]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,[Hn]){const zn={};Hn&8388623&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function instance$_(_n,Ce,ke){let $n,Hn;const zn=createEventDispatcher();let{schema:Zn}=Ce,{sortParam:qn}=Ce,{sortField:Yn}=Ce,{inModal:Jn}=Ce,{modalUrl:to}=Ce,{systemFields:io=[]}=Ce;function uo(Vo){const Ko=new URL(to??window.location.href);Ko.searchParams.set("sort",Vo),Jn?zn("refresh",Ko):window.location=Ko}function mo(Vo,Ko){Vo.preventDefault();let Mo=io.map(es=>es.name).includes(Ko.name)?"":"data.";return uo(Mo+Ko.name)}function bo(Vo,Ko){Vo.preventDefault();let Mo=io.map(es=>es.name).includes(Ko.name)?"":"data.";return uo("-"+Mo+Ko.name)}const Oo=(Vo,Ko)=>mo(Ko,Vo),wo=(Vo,Ko)=>bo(Ko,Vo),$o=(Vo,Ko)=>mo(Ko,Vo),Do=(Vo,Ko)=>mo(Ko,Vo),xo=(Vo,Ko)=>bo(Ko,Vo),Bo=(Vo,Ko)=>mo(Ko,Vo);return _n.$$set=Vo=>{"schema"in Vo&&ke(6,Zn=Vo.schema),"sortParam"in Vo&&ke(0,qn=Vo.sortParam),"sortField"in Vo&&ke(1,Yn=Vo.sortField),"inModal"in Vo&&ke(7,Jn=Vo.inModal),"modalUrl"in Vo&&ke(8,to=Vo.modalUrl),"systemFields"in Vo&&ke(9,io=Vo.systemFields)},_n.$$.update=()=>{_n.$$.dirty&64&&ke(3,$n=Zn.fields.filter(Vo=>!["reference","file","json","id","rich","markdown","block"].includes(Vo.info.name))),_n.$$.dirty&512&&ke(2,Hn=io),_n.$$.dirty&576&&Zn.type==="collection"&&ke(2,Hn=io.filter(Vo=>Vo.files===!1))},[qn,Yn,Hn,$n,mo,bo,Zn,Jn,to,io,Oo,wo,$o,Do,xo,Bo]}class SortFields extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$_,create_fragment$_,safe_not_equal,{schema:6,sortParam:0,sortField:1,inModal:7,modalUrl:8,systemFields:9})}}function create_else_block$g(_n){var Jn,to;let Ce=_n[3].label+"",ke,$n,Hn=(((Jn=_n[0].find(_n[11]))==null?void 0:Jn.symbol)??"")+"",zn,Zn,qn=((to=_n[0].find(_n[12]))!=null&&to.hasValue?_n[2]:"")+"",Yn;return{c(){ke=text(Ce),$n=space$3(),zn=text(Hn),Zn=space$3(),Yn=text(qn)},m(io,uo){insert$1(io,ke,uo),insert$1(io,$n,uo),insert$1(io,zn,uo),insert$1(io,Zn,uo),insert$1(io,Yn,uo)},p(io,uo){var mo,bo;uo&8&&Ce!==(Ce=io[3].label+"")&&set_data(ke,Ce),uo&9&&Hn!==(Hn=(((mo=io[0].find(io[11]))==null?void 0:mo.symbol)??"")+"")&&set_data(zn,Hn),uo&13&&qn!==(qn=((bo=io[0].find(io[12]))!=null&&bo.hasValue?io[2]:"")+"")&&set_data(Yn,qn)},d(io){io&&(detach(ke),detach($n),detach(zn),detach(Zn),detach(Yn))}}}function create_if_block$E(_n){let Ce=_n[3].label+"",ke,$n,Hn=previewTitle(_n[4].schemas,_n[5])+"",zn;return{c(){ke=text(Ce),$n=text(" is "),zn=text(Hn)},m(Zn,qn){insert$1(Zn,ke,qn),insert$1(Zn,$n,qn),insert$1(Zn,zn,qn)},p(Zn,qn){qn&8&&Ce!==(Ce=Zn[3].label+"")&&set_data(ke,Ce)},d(Zn){Zn&&(detach(ke),detach($n),detach(zn))}}}function create_fragment$Z(_n){let Ce,ke,$n,Hn,zn,Zn,qn;function Yn(io,uo){return io[3].isReference&&io[5]?create_if_block$E:create_else_block$g}let Jn=Yn(_n),to=Jn(_n);return Hn=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){Ce=element("span"),to.c(),ke=space$3(),$n=element("button"),create_component(Hn.$$.fragment),attr($n,"type","button"),attr($n,"class","button-text"),attr($n,"aria-label","Close"),attr(Ce,"class","applied-filter")},m(io,uo){insert$1(io,Ce,uo),to.m(Ce,null),append(Ce,ke),append(Ce,$n),mount_component(Hn,$n,null),zn=!0,Zn||(qn=listen($n,"click",prevent_default(_n[13])),Zn=!0)},p(io,[uo]){Jn===(Jn=Yn(io))&&to?to.p(io,uo):(to.d(1),to=Jn(io),to&&(to.c(),to.m(Ce,ke)))},i(io){zn||(transition_in(Hn.$$.fragment,io),zn=!0)},o(io){transition_out(Hn.$$.fragment,io),zn=!1},d(io){io&&detach(Ce),to.d(),destroy_component(Hn),Zn=!1,qn()}}}function extractOperator(_n){return Ce=>{if(Ce.isReference)return Ce.operator="eq",Ce;const ke=_n.split("_");return Ce.operator=ke[ke.length-1]??"eq",Ce}}function extractLabel(_n,Ce){return ke=>{let $n="";ke.isReference?$n=Ce.split(".")[1]:$n=Ce.replace("_"+ke.operator,"");const Hn=_n.fields.find(zn=>zn.name===$n);return ke.label=(Hn==null?void 0:Hn.label)??$n,ke}}function instance$Z(_n,Ce,ke){const $n=getContext$1("channel"),Hn=createEventDispatcher();let{schema:zn}=Ce,{operators:Zn}=Ce,{key:qn}=Ce,{value:Yn}=Ce,{inModal:Jn}=Ce,{modalUrl:to}=Ce,{graph:io}=Ce,uo={label:"",operator:"",value:Yn,isReference:qn.startsWith("children")};uo=[extractOperator(qn),extractLabel(zn,qn)].reduce((xo,Bo)=>Bo(xo),uo);const mo=bo(io,Yn);function bo(xo,Bo){return uo.isReference?xo.records.find(Vo=>Vo.id===Bo):null}function Oo(xo){let Bo=`filter[${xo}]`;const Vo=new URL(to??window.location.href);Vo.searchParams.set("skip","0"),Vo.searchParams.delete(Bo),Jn?Hn("refresh",Vo):window.location.replace(Vo)}const wo=xo=>xo.name===uo.operator,$o=xo=>xo.name===uo.operator,Do=()=>Oo(qn);return _n.$$set=xo=>{"schema"in xo&&ke(7,zn=xo.schema),"operators"in xo&&ke(0,Zn=xo.operators),"key"in xo&&ke(1,qn=xo.key),"value"in xo&&ke(2,Yn=xo.value),"inModal"in xo&&ke(8,Jn=xo.inModal),"modalUrl"in xo&&ke(9,to=xo.modalUrl),"graph"in xo&&ke(10,io=xo.graph)},[Zn,qn,Yn,uo,$n,mo,Oo,zn,Jn,to,io,wo,$o,Do]}class AppliedFilter extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$Z,create_fragment$Z,safe_not_equal,{schema:7,operators:0,key:1,value:2,inModal:8,modalUrl:9,graph:10})}}function create_if_block$D(_n){let Ce,ke,$n,Hn,zn,Zn,qn;return Hn=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){Ce=element("span"),ke=text(`Not linked + + `),$n=element("button"),create_component(Hn.$$.fragment),attr($n,"type","button"),attr($n,"class","button-text"),attr($n,"aria-label","Close"),attr(Ce,"class","applied-filter")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,ke),append(Ce,$n),mount_component(Hn,$n,null),zn=!0,Zn||(qn=listen($n,"click",prevent_default(_n[4])),Zn=!0)},p:noop,i(Yn){zn||(transition_in(Hn.$$.fragment,Yn),zn=!0)},o(Yn){transition_out(Hn.$$.fragment,Yn),zn=!1},d(Yn){Yn&&detach(Ce),destroy_component(Hn),Zn=!1,qn()}}}function create_fragment$Y(_n){let Ce=_n[0].searchParams.get("notlinked"),ke,$n,Hn=Ce&&create_if_block$D(_n);return{c(){Hn&&Hn.c(),ke=empty$1()},m(zn,Zn){Hn&&Hn.m(zn,Zn),insert$1(zn,ke,Zn),$n=!0},p(zn,[Zn]){Ce&&Hn.p(zn,Zn)},i(zn){$n||(transition_in(Hn),$n=!0)},o(zn){transition_out(Hn),$n=!1},d(zn){zn&&detach(ke),Hn&&Hn.d(zn)}}}function instance$Y(_n,Ce,ke){getContext$1("channel");const $n=createEventDispatcher();let{inModal:Hn}=Ce,{modalUrl:zn}=Ce;const Zn=new URL(zn??window.location.href);function qn(Jn){const to=new URL(zn??window.location.href);to.searchParams.set("skip","0"),to.searchParams.delete("notlinked"),Hn?$n("refresh",to):window.location.replace(to)}const Yn=()=>qn();return _n.$$set=Jn=>{"inModal"in Jn&&ke(2,Hn=Jn.inModal),"modalUrl"in Jn&&ke(3,zn=Jn.modalUrl)},[Zn,qn,Hn,zn,Yn]}class AppliedFilterNotLinked extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$Y,create_fragment$Y,safe_not_equal,{inModal:2,modalUrl:3})}}function get_each_context$i(_n,Ce,ke){const $n=_n.slice();return $n[22]=Ce[ke][0],$n[23]=Ce[ke][1],$n}function create_else_block_1$2(_n){let Ce,ke,$n;return ke=new Uploader({props:{schema:_n[0]}}),ke.$on("uploadComplete",_n[13]),{c(){Ce=element("div"),create_component(ke.$$.fragment)},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&1&&(Zn.schema=Hn[0]),ke.$set(Zn)},i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block_4$4(_n){let Ce,ke=!_n[5]&&_n[7]&&create_if_block_5$2(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,Hn){!$n[5]&&$n[7]?ke?ke.p($n,Hn):(ke=create_if_block_5$2($n),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},i:noop,o:noop,d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function create_if_block_5$2(_n){let Ce,ke,$n;return{c(){Ce=element("a"),ke=text("New Record"),attr(Ce,"href",$n=_n[10].lucentUrl+"/records/new?schema="+_n[0].name),attr(Ce,"class","button")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,ke)},p(Hn,zn){zn&1&&$n!==($n=Hn[10].lucentUrl+"/records/new?schema="+Hn[0].name)&&attr(Ce,"href",$n)},d(Hn){Hn&&detach(Ce)}}}function create_if_block_1$l(_n){let Ce,ke;return Ce=new Dropdown({props:{orientation:"right",$$slots:{button:[create_button_slot$5],default:[create_default_slot$6]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&67109009&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_else_block$f(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to;return{c(){Ce=element("a"),ke=text("Export to CSV"),$n=space$3(),Hn=element("a"),zn=text("View trashed records"),qn=space$3(),Yn=element("a"),Jn=text("View unlinked records"),attr(Ce,"class","dropdown-item"),attr(Ce,"href",_n[11]),attr(Hn,"class","dropdown-item"),attr(Hn,"href",Zn=_n[10].lucentUrl+"/content/"+_n[0].name+"?filter[status_in]=trashed"),attr(Yn,"class","dropdown-item"),attr(Yn,"href",to=_n[10].lucentUrl+"/content/"+_n[0].name+"?notlinked=*")},m(io,uo){insert$1(io,Ce,uo),append(Ce,ke),insert$1(io,$n,uo),insert$1(io,Hn,uo),append(Hn,zn),insert$1(io,qn,uo),insert$1(io,Yn,uo),append(Yn,Jn)},p(io,uo){uo&1&&Zn!==(Zn=io[10].lucentUrl+"/content/"+io[0].name+"?filter[status_in]=trashed")&&attr(Hn,"href",Zn),uo&1&&to!==(to=io[10].lucentUrl+"/content/"+io[0].name+"?notlinked=*")&&attr(Yn,"href",to)},d(io){io&&(detach(Ce),detach($n),detach(Hn),detach(qn),detach(Yn))}}}function create_if_block_2$9(_n){let Ce,ke=_n[7]&&create_if_block_3$7(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,Hn){$n[7]?ke?ke.p($n,Hn):(ke=create_if_block_3$7($n),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function create_if_block_3$7(_n){let Ce,ke,$n;return{c(){Ce=element("a"),ke=text("Empty trash"),attr(Ce,"class","dropdown-item"),attr(Ce,"href",$n=_n[10].lucentUrl+"/content/"+_n[0].name+"/emptyTrash")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,ke)},p(Hn,zn){zn&1&&$n!==($n=Hn[10].lucentUrl+"/content/"+Hn[0].name+"/emptyTrash")&&attr(Ce,"href",$n)},d(Hn){Hn&&detach(Ce)}}}function create_default_slot$6(_n){let Ce;function ke(zn,Zn){return zn[4].status_in==="trashed"?create_if_block_2$9:create_else_block$f}let $n=ke(_n),Hn=$n(_n);return{c(){Hn.c(),Ce=empty$1()},m(zn,Zn){Hn.m(zn,Zn),insert$1(zn,Ce,Zn)},p(zn,Zn){$n===($n=ke(zn))&&Hn?Hn.p(zn,Zn):(Hn.d(1),Hn=$n(zn),Hn&&(Hn.c(),Hn.m(Ce.parentNode,Ce)))},d(zn){zn&&detach(Ce),Hn.d(zn)}}}function create_button_slot$5(_n){let Ce,ke,$n;return ke=new Icon({props:{icon:"ellipsis-vertical"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),attr(Ce,"slot","button")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p:noop,i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block$C(_n){let Ce,ke,$n=ensure_array_like(Object.entries(_n[4])),Hn=[];for(let Zn=0;Zn<$n.length;Zn+=1)Hn[Zn]=create_each_block$i(get_each_context$i(_n,$n,Zn));const zn=Zn=>transition_out(Hn[Zn],1,1,()=>{Hn[Zn]=null});return{c(){for(let Zn=0;Zn0,xo,Bo,Vo;$n=new SortFields({props:{schema:_n[0],sortParam:_n[1],sortField:_n[2],systemFields:_n[9],inModal:_n[5],modalUrl:_n[6]}}),$n.$on("refresh",_n[15]);function Ko(Ys){_n[16](Ys)}let Mo={systemFields:_n[9],operators:_n[3],filter:_n[4],inModal:_n[5],modalUrl:_n[6]};_n[0]!==void 0&&(Mo.schema=_n[0]),zn=new FilterFields({props:Mo}),binding_callbacks.push(()=>bind(zn,"schema",Ko)),zn.$on("refresh",_n[17]);const es=[create_if_block_4$4,create_else_block_1$2],ls=[];function ps(Ys,sr){return Ys[0].type==="collection"?0:1}io=ps(_n),uo=ls[io]=es[io](_n);let rs=!_n[5]&&create_if_block_1$l(_n);wo=new AppliedFilterNotLinked({props:{inModal:_n[5],modalUrl:_n[6]}}),wo.$on("refresh",_n[18]);let Yo=Do&&create_if_block$C(_n);return{c(){Ce=element("div"),ke=element("div"),create_component($n.$$.fragment),Hn=space$3(),create_component(zn.$$.fragment),qn=space$3(),Yn=element("form"),Yn.innerHTML='',Jn=space$3(),to=element("div"),uo.c(),mo=space$3(),rs&&rs.c(),bo=space$3(),Oo=element("div"),create_component(wo.$$.fragment),$o=space$3(),Yo&&Yo.c(),attr(Yn,"method","GET"),attr(ke,"class","toolbar-filters"),set_style(to,"display","flex"),set_style(to,"align-items","center"),set_style(to,"gap","4px"),attr(Ce,"class","toolbar"),attr(Oo,"class","applied-filters")},m(Ys,sr){insert$1(Ys,Ce,sr),append(Ce,ke),mount_component($n,ke,null),append(ke,Hn),mount_component(zn,ke,null),append(ke,qn),append(ke,Yn),append(Ce,Jn),append(Ce,to),ls[io].m(to,null),append(to,mo),rs&&rs.m(to,null),insert$1(Ys,bo,sr),insert$1(Ys,Oo,sr),mount_component(wo,Oo,null),append(Oo,$o),Yo&&Yo.m(Oo,null),xo=!0,Bo||(Vo=listen(Yn,"submit",_n[12]),Bo=!0)},p(Ys,[sr]){const Js={};sr&1&&(Js.schema=Ys[0]),sr&2&&(Js.sortParam=Ys[1]),sr&4&&(Js.sortField=Ys[2]),sr&512&&(Js.systemFields=Ys[9]),sr&32&&(Js.inModal=Ys[5]),sr&64&&(Js.modalUrl=Ys[6]),$n.$set(Js);const ko={};sr&512&&(ko.systemFields=Ys[9]),sr&8&&(ko.operators=Ys[3]),sr&16&&(ko.filter=Ys[4]),sr&32&&(ko.inModal=Ys[5]),sr&64&&(ko.modalUrl=Ys[6]),!Zn&&sr&1&&(Zn=!0,ko.schema=Ys[0],add_flush_callback(()=>Zn=!1)),zn.$set(ko);let gs=io;io=ps(Ys),io===gs?ls[io].p(Ys,sr):(group_outros(),transition_out(ls[gs],1,1,()=>{ls[gs]=null}),check_outros(),uo=ls[io],uo?uo.p(Ys,sr):(uo=ls[io]=es[io](Ys),uo.c()),transition_in(uo,1),uo.m(to,mo)),Ys[5]?rs&&(group_outros(),transition_out(rs,1,1,()=>{rs=null}),check_outros()):rs?(rs.p(Ys,sr),sr&32&&transition_in(rs,1)):(rs=create_if_block_1$l(Ys),rs.c(),transition_in(rs,1),rs.m(to,null));const xs={};sr&32&&(xs.inModal=Ys[5]),sr&64&&(xs.modalUrl=Ys[6]),wo.$set(xs),sr&16&&(Do=Object.entries(Ys[4]).length>0),Do?Yo?(Yo.p(Ys,sr),sr&16&&transition_in(Yo,1)):(Yo=create_if_block$C(Ys),Yo.c(),transition_in(Yo,1),Yo.m(Oo,null)):Yo&&(group_outros(),transition_out(Yo,1,1,()=>{Yo=null}),check_outros())},i(Ys){xo||(transition_in($n.$$.fragment,Ys),transition_in(zn.$$.fragment,Ys),transition_in(uo),transition_in(rs),transition_in(wo.$$.fragment,Ys),transition_in(Yo),xo=!0)},o(Ys){transition_out($n.$$.fragment,Ys),transition_out(zn.$$.fragment,Ys),transition_out(uo),transition_out(rs),transition_out(wo.$$.fragment,Ys),transition_out(Yo),xo=!1},d(Ys){Ys&&(detach(Ce),detach(bo),detach(Oo)),destroy_component($n),destroy_component(zn),ls[io].d(),rs&&rs.d(),destroy_component(wo),Yo&&Yo.d(),Bo=!1,Vo()}}}function instance$X(_n,Ce,ke){const $n=getContext$1("channel"),Hn=createEventDispatcher();let{sortParam:zn}=Ce,{sortField:Zn}=Ce,{schema:qn}=Ce,{operators:Yn}=Ce,{filter:Jn}=Ce,{inModal:to}=Ce,{modalUrl:io}=Ce,{isWritable:uo}=Ce,{records:mo}=Ce,{graph:bo}=Ce,{systemFields:Oo=[]}=Ce,wo=new URL(window.location.href),$o=wo.pathname+"/csv?"+wo.searchParams.toString();function Do(ls){ls.preventDefault();const ps=new FormData(ls.target);let rs=ps.keys().next().value,Yo=ps.values().next().value;const Ys=new URL(io??window.location.href);Ys.searchParams.set("skip","0"),Ys.searchParams.set(rs,Yo),to?Hn("refresh",Ys):window.location=Ys}function xo(ls){ke(14,mo=ls.detail)}function Bo(ls){bubble.call(this,_n,ls)}function Vo(ls){qn=ls,ke(0,qn)}function Ko(ls){bubble.call(this,_n,ls)}function Mo(ls){bubble.call(this,_n,ls)}function es(ls){bubble.call(this,_n,ls)}return _n.$$set=ls=>{"sortParam"in ls&&ke(1,zn=ls.sortParam),"sortField"in ls&&ke(2,Zn=ls.sortField),"schema"in ls&&ke(0,qn=ls.schema),"operators"in ls&&ke(3,Yn=ls.operators),"filter"in ls&&ke(4,Jn=ls.filter),"inModal"in ls&&ke(5,to=ls.inModal),"modalUrl"in ls&&ke(6,io=ls.modalUrl),"isWritable"in ls&&ke(7,uo=ls.isWritable),"records"in ls&&ke(14,mo=ls.records),"graph"in ls&&ke(8,bo=ls.graph),"systemFields"in ls&&ke(9,Oo=ls.systemFields)},[qn,zn,Zn,Yn,Jn,to,io,uo,bo,Oo,$n,$o,Do,xo,mo,Bo,Vo,Ko,Mo,es]}class Tools extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$X,create_fragment$X,safe_not_equal,{sortParam:1,sortField:2,schema:0,operators:3,filter:4,inModal:5,modalUrl:6,isWritable:7,records:14,graph:8,systemFields:9})}}function get_each_context$h(_n,Ce,ke){const $n=_n.slice();return $n[9]=Ce[ke],$n}function create_else_block$e(_n){let Ce,ke=_n[9]+"",$n,Hn,zn,Zn;function qn(...Yn){return _n[7](_n[9],...Yn)}return{c(){Ce=element("a"),$n=text(ke),attr(Ce,"class","page-link"),attr(Ce,"href",Hn=_n[2](_n[9]))},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,$n),zn||(Zn=listen(Ce,"click",qn),zn=!0)},p(Yn,Jn){_n=Yn,Jn&1&&ke!==(ke=_n[9]+"")&&set_data($n,ke),Jn&1&&Hn!==(Hn=_n[2](_n[9]))&&attr(Ce,"href",Hn)},d(Yn){Yn&&detach(Ce),zn=!1,Zn()}}}function create_if_block$B(_n){let Ce,ke=_n[9]+"",$n;return{c(){Ce=element("span"),$n=text(ke),attr(Ce,"class","page-link active")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&1&&ke!==(ke=Hn[9]+"")&&set_data($n,ke)},d(Hn){Hn&&detach(Ce)}}}function create_each_block$h(_n){let Ce,ke;function $n(Zn,qn){return Zn[1]===Zn[9]?create_if_block$B:create_else_block$e}let Hn=$n(_n),zn=Hn(_n);return{c(){Ce=element("li"),zn.c(),ke=space$3(),attr(Ce,"class","page-item"),toggle_class(Ce,"active",_n[1]===_n[9])},m(Zn,qn){insert$1(Zn,Ce,qn),zn.m(Ce,null),append(Ce,ke)},p(Zn,qn){Hn===(Hn=$n(Zn))&&zn?zn.p(Zn,qn):(zn.d(1),zn=Hn(Zn),zn&&(zn.c(),zn.m(Ce,ke))),qn&3&&toggle_class(Ce,"active",Zn[1]===Zn[9])},d(Zn){Zn&&detach(Ce),zn.d()}}}function create_fragment$W(_n){let Ce,ke=ensure_array_like(_n[0]),$n=[];for(let Hn=0;Hnto(mo,uo);return _n.$$set=uo=>{"pages"in uo&&ke(0,Hn=uo.pages),"limit"in uo&&ke(4,zn=uo.limit),"currentPage"in uo&&ke(1,Zn=uo.currentPage),"inModal"in uo&&ke(5,qn=uo.inModal),"modalUrl"in uo&&ke(6,Yn=uo.modalUrl)},[Hn,Zn,Jn,to,zn,qn,Yn,io]}class NavItem extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$W,create_fragment$W,safe_not_equal,{pages:0,limit:4,currentPage:1,inModal:5,modalUrl:6})}}function create_if_block$A(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to;return Hn=new NavItem({props:{pages:_n[7],currentPage:_n[6],limit:_n[2],inModal:_n[0],modalUrl:_n[1]}}),Hn.$on("refresh",_n[10]),{c(){Ce=element("li"),ke=element("a"),ke.textContent="First",$n=space$3(),create_component(Hn.$$.fragment),zn=space$3(),Zn=element("li"),qn=element("a"),qn.textContent="Last",attr(ke,"href","/"),attr(ke,"class","page-link"),attr(Ce,"class","page-item disabled"),toggle_class(Ce,"disabled",_n[6]===1),attr(qn,"class","page-link"),attr(qn,"href","/"),toggle_class(qn,"disabled",_n[6]===_n[5]),attr(Zn,"class","page-item")},m(io,uo){insert$1(io,Ce,uo),append(Ce,ke),insert$1(io,$n,uo),mount_component(Hn,io,uo),insert$1(io,zn,uo),insert$1(io,Zn,uo),append(Zn,qn),Yn=!0,Jn||(to=[listen(ke,"click",_n[9]),listen(qn,"click",_n[8])],Jn=!0)},p(io,uo){(!Yn||uo&64)&&toggle_class(Ce,"disabled",io[6]===1);const mo={};uo&128&&(mo.pages=io[7]),uo&64&&(mo.currentPage=io[6]),uo&4&&(mo.limit=io[2]),uo&1&&(mo.inModal=io[0]),uo&2&&(mo.modalUrl=io[1]),Hn.$set(mo),(!Yn||uo&96)&&toggle_class(qn,"disabled",io[6]===io[5])},i(io){Yn||(transition_in(Hn.$$.fragment,io),Yn=!0)},o(io){transition_out(Hn.$$.fragment,io),Yn=!1},d(io){io&&(detach(Ce),detach($n),detach(zn),detach(Zn)),destroy_component(Hn,io),Jn=!1,run_all(to)}}}function create_fragment$V(_n){let Ce,ke,$n,Hn,zn,Zn,qn=+_n[3]+1+"",Yn,Jn,to,io=(+_n[3]+_n[2]>_n[4]?_n[4]:+_n[3]+_n[2])+"",uo,mo,bo,Oo,wo,$o,Do=_n[5]>1&&create_if_block$A(_n);return{c(){Ce=element("nav"),ke=element("ul"),Do&&Do.c(),$n=space$3(),Hn=element("p"),zn=text(`Showing + `),Zn=element("span"),Yn=text(qn),Jn=text(` + to + `),to=element("span"),uo=text(io),mo=text(` + of + `),bo=element("span"),Oo=text(_n[4]),wo=text(` + total`),attr(ke,"class","pagination"),attr(Zn,"class","font-medium"),attr(to,"class","font-medium"),attr(bo,"class","font-medium"),set_style(Hn,"display","flex"),set_style(Hn,"justify-content","center"),set_style(Hn,"gap","4px")},m(xo,Bo){insert$1(xo,Ce,Bo),append(Ce,ke),Do&&Do.m(ke,null),insert$1(xo,$n,Bo),insert$1(xo,Hn,Bo),append(Hn,zn),append(Hn,Zn),append(Zn,Yn),append(Hn,Jn),append(Hn,to),append(to,uo),append(Hn,mo),append(Hn,bo),append(bo,Oo),append(Hn,wo),$o=!0},p(xo,[Bo]){xo[5]>1?Do?(Do.p(xo,Bo),Bo&32&&transition_in(Do,1)):(Do=create_if_block$A(xo),Do.c(),transition_in(Do,1),Do.m(ke,null)):Do&&(group_outros(),transition_out(Do,1,1,()=>{Do=null}),check_outros()),(!$o||Bo&8)&&qn!==(qn=+xo[3]+1+"")&&set_data(Yn,qn),(!$o||Bo&28)&&io!==(io=(+xo[3]+xo[2]>xo[4]?xo[4]:+xo[3]+xo[2])+"")&&set_data(uo,io),(!$o||Bo&16)&&set_data(Oo,xo[4])},i(xo){$o||(transition_in(Do),$o=!0)},o(xo){transition_out(Do),$o=!1},d(xo){xo&&(detach(Ce),detach($n),detach(Hn)),Do&&Do.d()}}}function instance$V(_n,Ce,ke){let $n,Hn,zn;const Zn=createEventDispatcher();let{inModal:qn}=Ce,{modalUrl:Yn}=Ce,{limit:Jn}=Ce,{skip:to}=Ce,{total:io}=Ce;function uo(wo){wo.preventDefault(),bo($n)}function mo(wo){wo.preventDefault(),bo(1)}function bo(wo){const $o=new URL(Yn??window.location.href);let Do=wo*Jn-Jn;$o.searchParams.set("skip",Do),qn?Zn("refresh",$o):window.location=$o}function Oo(wo){bubble.call(this,_n,wo)}return _n.$$set=wo=>{"inModal"in wo&&ke(0,qn=wo.inModal),"modalUrl"in wo&&ke(1,Yn=wo.modalUrl),"limit"in wo&&ke(2,Jn=wo.limit),"skip"in wo&&ke(3,to=wo.skip),"total"in wo&&ke(4,io=wo.total)},_n.$$.update=()=>{_n.$$.dirty&20&&ke(5,$n=Math.ceil(io/Jn)),_n.$$.dirty&12&&ke(6,Hn=Math.ceil((to-1)/Jn)+1),_n.$$.dirty&96&&ke(7,zn=lodashExports.range(Hn-3,Hn+4).filter(wo=>wo>0&&wo<=$n))},[qn,Yn,Jn,to,io,$n,Hn,zn,uo,mo,Oo]}class Pagination extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$V,create_fragment$V,safe_not_equal,{inModal:0,modalUrl:1,limit:2,skip:3,total:4})}}function create_else_block$d(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.textContent="Move to trash",attr(Ce,"type","button"),attr(Ce,"class","button")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",prevent_default(_n[9])),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_if_block$z(_n){let Ce,ke,$n,Hn,zn,Zn,qn=_n[1].hasDrafts&&create_if_block_1$k(_n);return{c(){Ce=element("button"),Ce.textContent="Publish",ke=space$3(),qn&&qn.c(),$n=space$3(),Hn=element("button"),Hn.textContent="Delete forever",attr(Ce,"type","button"),attr(Ce,"class","button"),attr(Hn,"type","button"),attr(Hn,"class","button")},m(Yn,Jn){insert$1(Yn,Ce,Jn),insert$1(Yn,ke,Jn),qn&&qn.m(Yn,Jn),insert$1(Yn,$n,Jn),insert$1(Yn,Hn,Jn),zn||(Zn=[listen(Ce,"click",prevent_default(_n[7])),listen(Hn,"click",prevent_default(_n[3]))],zn=!0)},p(Yn,Jn){Yn[1].hasDrafts?qn?qn.p(Yn,Jn):(qn=create_if_block_1$k(Yn),qn.c(),qn.m($n.parentNode,$n)):qn&&(qn.d(1),qn=null)},d(Yn){Yn&&(detach(Ce),detach(ke),detach($n),detach(Hn)),qn&&qn.d(Yn),zn=!1,run_all(Zn)}}}function create_if_block_1$k(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.textContent="Make Draft",attr(Ce,"type","button"),attr(Ce,"class","button")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",prevent_default(_n[8])),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_fragment$U(_n){let Ce,ke,$n=_n[0].length+"",Hn,zn,Zn,qn,Yn,Jn,to,io,uo;function mo(wo,$o){return wo[2].status_in==="trashed"?create_if_block$z:create_else_block$d}let bo=mo(_n),Oo=bo(_n);return{c(){Ce=element("div"),ke=element("span"),Hn=text($n),zn=text(" records selected"),Zn=space$3(),qn=element("button"),qn.textContent="Publish",Yn=space$3(),Jn=element("button"),Jn.textContent="Make Draft",to=space$3(),Oo.c(),attr(ke,"class","me-2"),attr(qn,"type","button"),attr(qn,"class","button"),attr(Jn,"type","button"),attr(Jn,"class","button"),set_style(Ce,"display","flex"),set_style(Ce,"align-items","center"),set_style(Ce,"gap","8px")},m(wo,$o){insert$1(wo,Ce,$o),append(Ce,ke),append(ke,Hn),append(ke,zn),append(Ce,Zn),append(Ce,qn),append(Ce,Yn),append(Ce,Jn),append(Ce,to),Oo.m(Ce,null),io||(uo=[listen(qn,"click",prevent_default(_n[5])),listen(Jn,"click",prevent_default(_n[6]))],io=!0)},p(wo,[$o]){$o&1&&$n!==($n=wo[0].length+"")&&set_data(Hn,$n),bo===(bo=mo(wo))&&Oo?Oo.p(wo,$o):(Oo.d(1),Oo=bo(wo),Oo&&(Oo.c(),Oo.m(Ce,null)))},i:noop,o:noop,d(wo){wo&&detach(Ce),Oo.d(),io=!1,run_all(uo)}}}function instance$U(_n,Ce,ke){const $n=getContext$1("channel");let{selected:Hn}=Ce,{schema:zn}=Ce,{filter:Zn}=Ce;function qn(bo){bo.preventDefault(),axios.post($n.lucentUrl+"/records/delete",{ids:Hn.map(Oo=>Oo.id)}).then(Oo=>{window.location.reload()}).catch(Oo=>{console.log(Oo)})}function Yn(bo,Oo){axios.post($n.lucentUrl+"/records/status/"+Oo,{schemaName:zn.name,records:Hn}).then(wo=>{window.location.reload()}).catch(wo=>{console.log(wo)})}const Jn=bo=>Yn(bo,"published"),to=bo=>Yn(bo,"draft"),io=bo=>Yn(bo,"published"),uo=bo=>Yn(bo,"draft"),mo=bo=>Yn(bo,"trashed");return _n.$$set=bo=>{"selected"in bo&&ke(0,Hn=bo.selected),"schema"in bo&&ke(1,zn=bo.schema),"filter"in bo&&ke(2,Zn=bo.filter)},[Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo]}class ActionsOnSelected extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$U,create_fragment$U,safe_not_equal,{selected:0,schema:1,filter:2})}}function create_fragment$T(_n){let Ce;return{c(){Ce=text(_n[0])},m(ke,$n){insert$1(ke,Ce,$n)},p(ke,[$n]){$n&1&&set_data(Ce,ke[0])},i:noop,o:noop,d(ke){ke&&detach(Ce)}}}function instance$T(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Checkbox$2=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$T,create_fragment$T,safe_not_equal,{value:0})}};function create_if_block$y(_n){let Ce,ke,$n,Hn;return{c(){Ce=element("div"),ke=element("span"),$n=space$3(),Hn=text(_n[0]),attr(ke,"class","color border border-2 svelte-78o2k4"),set_style(ke,"background",_n[0]),attr(Ce,"class","d-inline-flex")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,ke),append(Ce,$n),append(Ce,Hn)},p(zn,Zn){Zn&1&&set_style(ke,"background",zn[0]),Zn&1&&set_data(Hn,zn[0])},d(zn){zn&&detach(Ce)}}}function create_fragment$S(_n){let Ce,ke=_n[0]&&create_if_block$y(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m($n,Hn){ke&&ke.m($n,Hn),insert$1($n,Ce,Hn)},p($n,[Hn]){$n[0]?ke?ke.p($n,Hn):(ke=create_if_block$y($n),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},i:noop,o:noop,d($n){$n&&detach(Ce),ke&&ke.d($n)}}}function instance$S(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Color$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$S,create_fragment$S,safe_not_equal,{value:0})}};function create_if_block$x(_n){let Ce,ke,$n;return{c(){Ce=element("a"),ke=text(_n[1]),attr(Ce,"href",$n=_n[3].lucentUrl+"/records/"+_n[0].id),attr(Ce,"class","text-decoration-none rounded py-1 px-2 d-inline-block svelte-nbbgyi"),attr(Ce,"title",_n[1]),set_style(Ce,"border","2px solid "+(_n[2].color?_n[2].color:"#999"),1),set_style(Ce,"white-space","nowrap")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,ke)},p(Hn,zn){zn&2&&set_data(ke,Hn[1]),zn&1&&$n!==($n=Hn[3].lucentUrl+"/records/"+Hn[0].id)&&attr(Ce,"href",$n),zn&2&&attr(Ce,"title",Hn[1]),zn&4&&set_style(Ce,"border","2px solid "+(Hn[2].color?Hn[2].color:"#999"),1)},d(Hn){Hn&&detach(Ce)}}}function create_fragment$R(_n){var $n;let Ce,ke=(($n=_n[0])==null?void 0:$n.data)&&create_if_block$x(_n);return{c(){ke&&ke.c(),Ce=empty$1()},m(Hn,zn){ke&&ke.m(Hn,zn),insert$1(Hn,Ce,zn)},p(Hn,[zn]){var Zn;(Zn=Hn[0])!=null&&Zn.data?ke?ke.p(Hn,zn):(ke=create_if_block$x(Hn),ke.c(),ke.m(Ce.parentNode,Ce)):ke&&(ke.d(1),ke=null)},i:noop,o:noop,d(Hn){Hn&&detach(Ce),ke&&ke.d(Hn)}}}function instance$R(_n,Ce,ke){let $n,Hn;const zn=getContext$1("channel");let{record:Zn}=Ce,{graph:qn}=Ce;return _n.$$set=Yn=>{"record"in Yn&&ke(0,Zn=Yn.record),"graph"in Yn&&ke(4,qn=Yn.graph)},_n.$$.update=()=>{_n.$$.dirty&1&&ke(2,$n=zn.schemas.find(Yn=>Yn.name===Zn.schema)),_n.$$.dirty&17&&ke(1,Hn=previewTitle(zn.schemas,Zn))},[Zn,Hn,$n,zn,qn]}class PreviewCardSmall extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$R,create_fragment$R,safe_not_equal,{record:0,graph:4})}}function get_each_context$g(_n,Ce,ke){const $n=_n.slice();return $n[5]=Ce[ke],$n}function create_each_block$g(_n){let Ce,ke,$n,Hn;return ke=new PreviewCardSmall({props:{schemas:_n[0],graph:_n[1],record:_n[5]}}),{c(){Ce=element("span"),create_component(ke.$$.fragment),$n=space$3(),attr(Ce,"class","mr-3")},m(zn,Zn){insert$1(zn,Ce,Zn),mount_component(ke,Ce,null),append(Ce,$n),Hn=!0},p(zn,Zn){const qn={};Zn&1&&(qn.schemas=zn[0]),Zn&2&&(qn.graph=zn[1]),Zn&4&&(qn.record=zn[5]),ke.$set(qn)},i(zn){Hn||(transition_in(ke.$$.fragment,zn),Hn=!0)},o(zn){transition_out(ke.$$.fragment,zn),Hn=!1},d(zn){zn&&detach(Ce),destroy_component(ke)}}}function create_fragment$Q(_n){let Ce,ke,$n=ensure_array_like(_n[2]),Hn=[];for(let Zn=0;Zn<$n.length;Zn+=1)Hn[Zn]=create_each_block$g(get_each_context$g(_n,$n,Zn));const zn=Zn=>transition_out(Hn[Zn],1,1,()=>{Hn[Zn]=null});return{c(){Ce=element("div");for(let Zn=0;Zn{"record"in Yn&&ke(3,Hn=Yn.record),"field"in Yn&&ke(4,zn=Yn.field),"schemas"in Yn&&ke(0,Zn=Yn.schemas),"graph"in Yn&&ke(1,qn=Yn.graph)},_n.$$.update=()=>{var Yn;_n.$$.dirty&26&&ke(2,$n=((Yn=qn.edges)==null?void 0:Yn.filter(Jn=>Jn.field===zn.name&&Jn.source===Hn.id).map(Jn=>qn.records.find(to=>to.id===Jn.target)).filter(Jn=>!!Jn))??[])},[Zn,qn,$n,Hn,zn]}let Reference$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$Q,create_fragment$Q,safe_not_equal,{record:3,field:4,schemas:0,graph:1})}};function create_fragment$P(_n){let Ce;return{c(){Ce=text(_n[0])},m(ke,$n){insert$1(ke,Ce,$n)},p(ke,[$n]){$n&1&&set_data(Ce,ke[0])},i:noop,o:noop,d(ke){ke&&detach(Ce)}}}function instance$P(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Number$2=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$P,create_fragment$P,safe_not_equal,{value:0})}};function create_fragment$O(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[0]),attr(Ce,"title",_n[0]),attr(Ce,"data-bs-toggle","tooltip"),attr(Ce,"data-bs-placement","top"),attr(Ce,"class","svelte-1ft053t")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,[Hn]){Hn&1&&set_data(ke,$n[0]),Hn&1&&attr(Ce,"title",$n[0])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$O(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Text$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$O,create_fragment$O,safe_not_equal,{value:0})}};function create_fragment$N(_n){let Ce,ke;return{c(){Ce=element("a"),ke=text(_n[0]),attr(Ce,"href",_n[0]),attr(Ce,"target","_blank")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,[Hn]){Hn&1&&set_data(ke,$n[0]),Hn&1&&attr(Ce,"href",$n[0])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$N(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Url$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$N,create_fragment$N,safe_not_equal,{value:0})}};function create_fragment$M(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[0]),attr(Ce,"title",_n[0]),attr(Ce,"data-bs-toggle","tooltip"),attr(Ce,"data-bs-placement","top")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,[Hn]){Hn&1&&set_data(ke,$n[0]),Hn&1&&attr(Ce,"title",$n[0])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$M(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Date$2=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$M,create_fragment$M,safe_not_equal,{value:0})}};function create_fragment$L(_n){let Ce,ke=readableDate(_n[0])+"",$n,Hn;return{c(){Ce=element("div"),$n=text(ke),attr(Ce,"title",Hn=readableDatetime(_n[0])),attr(Ce,"data-bs-toggle","tooltip"),attr(Ce,"data-bs-placement","top")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,$n)},p(zn,[Zn]){Zn&1&&ke!==(ke=readableDate(zn[0])+"")&&set_data($n,ke),Zn&1&&Hn!==(Hn=readableDatetime(zn[0]))&&attr(Ce,"title",Hn)},i:noop,o:noop,d(zn){zn&&detach(Ce)}}}function instance$L(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let Datetime$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$L,create_fragment$L,safe_not_equal,{value:0})}};function get_each_context$f(_n,Ce,ke){const $n=_n.slice();return $n[4]=Ce[ke],$n}function create_each_block$f(_n){let Ce,ke,$n,Hn;return ke=new Preview({props:{record:_n[4],size:"tiny"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),attr(Ce,"class","me-1")},m(zn,Zn){insert$1(zn,Ce,Zn),mount_component(ke,Ce,null),append(Ce,$n),Hn=!0},p:noop,i(zn){Hn||(transition_in(ke.$$.fragment,zn),Hn=!0)},o(zn){transition_out(ke.$$.fragment,zn),Hn=!1},d(zn){zn&&detach(Ce),destroy_component(ke)}}}function create_fragment$K(_n){let Ce,ke,$n=ensure_array_like(_n[0]),Hn=[];for(let Zn=0;Zn<$n.length;Zn+=1)Hn[Zn]=create_each_block$f(get_each_context$f(_n,$n,Zn));const zn=Zn=>transition_out(Hn[Zn],1,1,()=>{Hn[Zn]=null});return{c(){Ce=element("div");for(let Zn=0;ZnYn.field===Hn.name&&Yn.source===$n.id).map(Yn=>zn.records.find(Jn=>Jn.id===Yn.target));return _n.$$set=Yn=>{"record"in Yn&&ke(1,$n=Yn.record),"field"in Yn&&ke(2,Hn=Yn.field),"graph"in Yn&&ke(3,zn=Yn.graph)},[Zn,$n,Hn,zn]}let File$2=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$K,create_fragment$K,safe_not_equal,{record:1,field:2,graph:3})}};function create_fragment$J(_n){let Ce,ke;return{c(){Ce=element("span"),ke=text(_n[0]),attr(Ce,"class","badge rounded-pill bg-primary bg-opacity-75"),set_style(Ce,"max-width","64px"),set_style(Ce,"overflow","hidden"),set_style(Ce,"white-space","nowrap"),set_style(Ce,"text-overflow","ellipsis"),attr(Ce,"title",_n[0]),attr(Ce,"data-bs-toggle","tooltip")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,[Hn]){Hn&1&&set_data(ke,$n[0]),Hn&1&&attr(Ce,"title",$n[0])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$J(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}let UUID$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$J,create_fragment$J,safe_not_equal,{value:0})}};function create_fragment$I(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[0]),attr(Ce,"class","svelte-1ft053t")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,[Hn]){Hn&1&&set_data(ke,$n[0])},i:noop,o:noop,d($n){$n&&detach(Ce)}}}function instance$I(_n,Ce,ke){let{value:$n}=Ce;return _n.$$set=Hn=>{"value"in Hn&&ke(0,$n=Hn.value)},[$n]}class Rich extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$I,create_fragment$I,safe_not_equal,{value:0})}}function create_fragment$H(_n){let Ce,ke,$n;var Hn=_n[4][_n[0].info.name];function zn(Zn,qn){return{props:{value:Zn[2].data[Zn[0].name],record:Zn[2],graph:Zn[3],schema:Zn[1],field:Zn[0]}}}return Hn&&(Ce=construct_svelte_component(Hn,zn(_n))),{c(){Ce&&create_component(Ce.$$.fragment),ke=empty$1()},m(Zn,qn){Ce&&mount_component(Ce,Zn,qn),insert$1(Zn,ke,qn),$n=!0},p(Zn,[qn]){if(qn&1&&Hn!==(Hn=Zn[4][Zn[0].info.name])){if(Ce){group_outros();const Yn=Ce;transition_out(Yn.$$.fragment,1,0,()=>{destroy_component(Yn,1)}),check_outros()}Hn?(Ce=construct_svelte_component(Hn,zn(Zn)),create_component(Ce.$$.fragment),transition_in(Ce.$$.fragment,1),mount_component(Ce,ke.parentNode,ke)):Ce=null}else if(Hn){const Yn={};qn&5&&(Yn.value=Zn[2].data[Zn[0].name]),qn&4&&(Yn.record=Zn[2]),qn&8&&(Yn.graph=Zn[3]),qn&2&&(Yn.schema=Zn[1]),qn&1&&(Yn.field=Zn[0]),Ce.$set(Yn)}},i(Zn){$n||(Ce&&transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){Ce&&transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){Zn&&detach(ke),Ce&&destroy_component(Ce,Zn)}}}function instance$H(_n,Ce,ke){const $n={text:Text$1,slug:Text$1,rich:Rich,textarea:Text$1,color:Color$1,checkbox:Checkbox$2,reference:Reference$1,number:Number$2,url:Url$1,date:Date$2,datetime:Datetime$1,uuid:UUID$1,file:File$2};let{field:Hn}=Ce,{schema:zn}=Ce,{record:Zn}=Ce,{graph:qn}=Ce;return _n.$$set=Yn=>{"field"in Yn&&ke(0,Hn=Yn.field),"schema"in Yn&&ke(1,zn=Yn.schema),"record"in Yn&&ke(2,Zn=Yn.record),"graph"in Yn&&ke(3,qn=Yn.graph)},[Hn,zn,Zn,qn,$n]}class RenderField extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$H,create_fragment$H,safe_not_equal,{field:0,schema:1,record:2,graph:3})}}function getStatus(_n){return getStatusList()[_n]}function getStatusList(){return{published:{value:"published",text:"Published",bg:"success",color:"white"},trashed:{value:"trashed",text:"Trashed",bg:"danger",color:"white"},draft:{value:"draft",text:"Draft",bg:"warning",color:"dark"}}}function create_fragment$G(_n){let Ce,ke=_n[0].text+"",$n;return{c(){Ce=element("span"),$n=text(ke),attr(Ce,"class","badge text-bg-"+_n[0].bg),set_style(Ce,"max-width","84px")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p:noop,i:noop,o:noop,d(Hn){Hn&&detach(Ce)}}}function instance$G(_n,Ce,ke){let{status:$n}=Ce,Hn=getStatus($n);return _n.$$set=zn=>{"status"in zn&&ke(1,$n=zn.status)},[Hn,$n]}class Status extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$G,create_fragment$G,safe_not_equal,{status:1})}}function usernameById(_n,Ce){var ke;return _n?((ke=_n.find($n=>$n.id===Ce))==null?void 0:ke.name)??Ce:Ce}function get_each_context$e(_n,Ce,ke){const $n=_n.slice();return $n[7]=Ce[ke],$n[9]=ke,$n}function create_each_block$e(_n){let Ce,ke,$n,Hn;return ke=new RenderField({props:{record:_n[3],schema:_n[0],graph:_n[2],field:_n[7]}}),{c(){Ce=element("td"),create_component(ke.$$.fragment),attr(Ce,"class",$n="field-ui-"+_n[7].info.name),toggle_class(Ce,"is-sort",_n[7].name===_n[5].name)},m(zn,Zn){insert$1(zn,Ce,Zn),mount_component(ke,Ce,null),Hn=!0},p(zn,Zn){const qn={};Zn&8&&(qn.record=zn[3]),Zn&1&&(qn.schema=zn[0]),Zn&4&&(qn.graph=zn[2]),Zn&64&&(qn.field=zn[7]),ke.$set(qn),(!Hn||Zn&64&&$n!==($n="field-ui-"+zn[7].info.name))&&attr(Ce,"class",$n),(!Hn||Zn&96)&&toggle_class(Ce,"is-sort",zn[7].name===zn[5].name)},i(zn){Hn||(transition_in(ke.$$.fragment,zn),Hn=!0)},o(zn){transition_out(ke.$$.fragment,zn),Hn=!1},d(zn){zn&&detach(Ce),destroy_component(ke)}}}function create_if_block_4$3(_n){let Ce,ke,$n;return ke=new Status({props:{status:_n[3].status}}),{c(){Ce=element("td"),create_component(ke.$$.fragment),attr(Ce,"class","text-center"),toggle_class(Ce,"is-sort",_n[4]=="-status"||_n[4]=="status")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&8&&(Zn.status=Hn[3].status),ke.$set(Zn),(!$n||zn&16)&&toggle_class(Ce,"is-sort",Hn[4]=="-status"||Hn[4]=="status")},i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block_3$6(_n){let Ce,ke,$n;return ke=new Avatar({props:{name:usernameById(_n[1],_n[3]._sys.createdBy),side:24}}),{c(){Ce=element("td"),create_component(ke.$$.fragment),attr(Ce,"class","text-center"),toggle_class(Ce,"is-sort",_n[4]=="-_sys.createdBy"||_n[4]=="_sys.createdBy")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&10&&(Zn.name=usernameById(Hn[1],Hn[3]._sys.createdBy)),ke.$set(Zn),(!$n||zn&16)&&toggle_class(Ce,"is-sort",Hn[4]=="-_sys.createdBy"||Hn[4]=="_sys.createdBy")},i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block_2$8(_n){let Ce,ke,$n;return ke=new Avatar({props:{name:usernameById(_n[1],_n[3]._sys.updatedBy),side:24}}),{c(){Ce=element("td"),create_component(ke.$$.fragment),attr(Ce,"class","text-center"),toggle_class(Ce,"is-sort",_n[4]=="-_sys.updatedBy"||_n[4]=="_sys.updatedBy")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&10&&(Zn.name=usernameById(Hn[1],Hn[3]._sys.updatedBy)),ke.$set(Zn),(!$n||zn&16)&&toggle_class(Ce,"is-sort",Hn[4]=="-_sys.updatedBy"||Hn[4]=="_sys.updatedBy")},i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block_1$j(_n){let Ce,ke=friendlyDate(_n[3]._sys.createdAt)+"",$n;return{c(){Ce=element("td"),$n=text(ke),toggle_class(Ce,"is-sort",_n[4]=="-_sys.createdAt"||_n[4]=="_sys.createdAt")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&8&&ke!==(ke=friendlyDate(Hn[3]._sys.createdAt)+"")&&set_data($n,ke),zn&16&&toggle_class(Ce,"is-sort",Hn[4]=="-_sys.createdAt"||Hn[4]=="_sys.createdAt")},d(Hn){Hn&&detach(Ce)}}}function create_if_block$w(_n){let Ce,ke=friendlyDate(_n[3]._sys.updatedAt)+"",$n;return{c(){Ce=element("td"),$n=text(ke),toggle_class(Ce,"is-sort",_n[4]=="-_sys.updatedAt"||_n[4]=="_sys.updatedAt")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&8&&ke!==(ke=friendlyDate(Hn[3]._sys.updatedAt)+"")&&set_data($n,ke),zn&16&&toggle_class(Ce,"is-sort",Hn[4]=="-_sys.updatedAt"||Hn[4]=="_sys.updatedAt")},d(Hn){Hn&&detach(Ce)}}}function create_fragment$F(_n){var Vo,Ko,Mo,es,ls;let Ce,ke=(Vo=_n[0].visible)==null?void 0:Vo.includes("status"),$n,Hn=(Ko=_n[0].visible)==null?void 0:Ko.includes("_sys.createdBy"),zn,Zn=(Mo=_n[0].visible)==null?void 0:Mo.includes("_sys.updatedBy"),qn,Yn=(es=_n[0].visible)==null?void 0:es.includes("_sys.createdAt"),Jn,to=(ls=_n[0].visible)==null?void 0:ls.includes("_sys.updatedAt"),io,uo,mo=ensure_array_like(_n[6]),bo=[];for(let ps=0;pstransition_out(bo[ps],1,1,()=>{bo[ps]=null});let wo=ke&&create_if_block_4$3(_n),$o=Hn&&create_if_block_3$6(_n),Do=Zn&&create_if_block_2$8(_n),xo=Yn&&create_if_block_1$j(_n),Bo=to&&create_if_block$w(_n);return{c(){for(let ps=0;ps{wo=null}),check_outros()),rs&1&&(Hn=(Ys=ps[0].visible)==null?void 0:Ys.includes("_sys.createdBy")),Hn?$o?($o.p(ps,rs),rs&1&&transition_in($o,1)):($o=create_if_block_3$6(ps),$o.c(),transition_in($o,1),$o.m(zn.parentNode,zn)):$o&&(group_outros(),transition_out($o,1,1,()=>{$o=null}),check_outros()),rs&1&&(Zn=(sr=ps[0].visible)==null?void 0:sr.includes("_sys.updatedBy")),Zn?Do?(Do.p(ps,rs),rs&1&&transition_in(Do,1)):(Do=create_if_block_2$8(ps),Do.c(),transition_in(Do,1),Do.m(qn.parentNode,qn)):Do&&(group_outros(),transition_out(Do,1,1,()=>{Do=null}),check_outros()),rs&1&&(Yn=(Js=ps[0].visible)==null?void 0:Js.includes("_sys.createdAt")),Yn?xo?xo.p(ps,rs):(xo=create_if_block_1$j(ps),xo.c(),xo.m(Jn.parentNode,Jn)):xo&&(xo.d(1),xo=null),rs&1&&(to=(ko=ps[0].visible)==null?void 0:ko.includes("_sys.updatedAt")),to?Bo?Bo.p(ps,rs):(Bo=create_if_block$w(ps),Bo.c(),Bo.m(io.parentNode,io)):Bo&&(Bo.d(1),Bo=null)},i(ps){if(!uo){for(let rs=0;rs{"schema"in to&&ke(0,$n=to.schema),"users"in to&&ke(1,Hn=to.users),"graph"in to&&ke(2,zn=to.graph),"record"in to&&ke(3,Zn=to.record),"sortParam"in to&&ke(4,qn=to.sortParam),"sortField"in to&&ke(5,Yn=to.sortField),"visibleColumns"in to&&ke(6,Jn=to.visibleColumns)},[$n,Hn,zn,Zn,qn,Yn,Jn]}let RecordRow$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$F,create_fragment$F,safe_not_equal,{schema:0,users:1,graph:2,record:3,sortParam:4,sortField:5,visibleColumns:6})}};const toggleAll=(_n,Ce,ke)=>ke.length===Ce.length?[]:(_n.currentTarget.checked=ke.length>0,Ce),selectRecord=(_n,Ce)=>Ce.find($n=>$n.id===_n.id)?Ce.filter($n=>$n.id!==_n.id):[...Ce,_n];function create_fragment$E(_n){let Ce,ke,$n,Hn;return{c(){Ce=element("div"),ke=element("input"),attr(ke,"id","c1-13"),attr(ke,"type","checkbox"),ke.value=_n[1],ke.indeterminate=_n[0],ke.checked=_n[2],attr(Ce,"class","checkbox-wrapper")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,ke),_n[5](ke),$n||(Hn=listen(ke,"change",_n[4]),$n=!0)},p(zn,[Zn]){Zn&2&&(ke.value=zn[1]),Zn&1&&(ke.indeterminate=zn[0]),Zn&4&&(ke.checked=zn[2])},i:noop,o:noop,d(zn){zn&&detach(Ce),_n[5](null),$n=!1,Hn()}}}function instance$E(_n,Ce,ke){let $n=null,{indeterminate:Hn=!1}=Ce,{value:zn}=Ce,{checked:Zn=!1}=Ce;function qn(Jn){bubble.call(this,_n,Jn)}function Yn(Jn){binding_callbacks[Jn?"unshift":"push"](()=>{$n=Jn,ke(3,$n)})}return _n.$$set=Jn=>{"indeterminate"in Jn&&ke(0,Hn=Jn.indeterminate),"value"in Jn&&ke(1,zn=Jn.value),"checked"in Jn&&ke(2,Zn=Jn.checked)},[Hn,zn,Zn,$n,qn,Yn]}let Checkbox$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$E,create_fragment$E,safe_not_equal,{indeterminate:0,value:1,checked:2})}};function get_each_context$d(_n,Ce,ke){const $n=_n.slice();return $n[17]=Ce[ke],$n}function get_each_context_1$5(_n,Ce,ke){const $n=_n.slice();return $n[20]=Ce[ke],$n}function get_each_context_2$1(_n,Ce,ke){const $n=_n.slice();return $n[23]=Ce[ke],$n}function create_if_block_3$5(_n){let Ce,ke,$n;return ke=new Checkbox$1({props:{value:"",indeterminate:_n[0].length>0&&_n[0].length<_n[3].length,checked:_n[0].length===_n[3].length}}),ke.$on("change",_n[12]),{c(){Ce=element("th"),create_component(ke.$$.fragment)},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&9&&(Zn.indeterminate=Hn[0].length>0&&Hn[0].length0?"medium":"small"}});let Vo=_n[17]._file.width>0&&create_if_block_1$i(_n);return{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),Hn=element("div"),zn=element("a"),qn=text(Zn),to=space$3(),io=element("span"),mo=text(uo),bo=text("kB"),Oo=space$3(),Vo&&Vo.c(),wo=space$3(),$o=element("a"),Do=text("Download"),attr(zn,"href",Yn=_n[11].lucentUrl+"/records/"+_n[17].id),attr(zn,"target",Jn=_n[8]?"_blank":"_self"),attr($o,"href",xo=fileurl(_n[11],_n[17])),attr($o,"target","_blank"),attr(Ce,"class","file-table-row")},m(Mo,es){insert$1(Mo,Ce,es),mount_component(ke,Ce,null),append(Ce,$n),append(Ce,Hn),append(Hn,zn),append(zn,qn),append(Hn,to),append(Hn,io),append(io,mo),append(io,bo),append(Hn,Oo),Vo&&Vo.m(Hn,null),append(Hn,wo),append(Hn,$o),append($o,Do),Bo=!0},p(Mo,es){var ps;const ls={};es&8&&(ls.record=Mo[17]),es&8&&(ls.size=((ps=Mo[17]._file)==null?void 0:ps.width)>0?"medium":"small"),ke.$set(ls),(!Bo||es&24)&&Zn!==(Zn=previewTitle(Mo[11].schemas,Mo[17],Mo[4])+"")&&set_data(qn,Zn),(!Bo||es&8&&Yn!==(Yn=Mo[11].lucentUrl+"/records/"+Mo[17].id))&&attr(zn,"href",Yn),(!Bo||es&256&&Jn!==(Jn=Mo[8]?"_blank":"_self"))&&attr(zn,"target",Jn),(!Bo||es&8)&&uo!==(uo=(Mo[17]._file.size/1024).toFixed(1)+"")&&set_data(mo,uo),Mo[17]._file.width>0?Vo?Vo.p(Mo,es):(Vo=create_if_block_1$i(Mo),Vo.c(),Vo.m(Hn,wo)):Vo&&(Vo.d(1),Vo=null),(!Bo||es&8&&xo!==(xo=fileurl(Mo[11],Mo[17])))&&attr($o,"href",xo)},i(Mo){Bo||(transition_in(ke.$$.fragment,Mo),Bo=!0)},o(Mo){transition_out(ke.$$.fragment,Mo),Bo=!1},d(Mo){Mo&&detach(Ce),destroy_component(ke),Vo&&Vo.d()}}}function create_if_block_1$i(_n){let Ce,ke=_n[17]._file.width+"x"+_n[17]._file.height,$n;return{c(){Ce=element("span"),$n=text(ke)},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&8&&ke!==(ke=Hn[17]._file.width+"x"+Hn[17]._file.height)&&set_data($n,ke)},d(Hn){Hn&&detach(Ce)}}}function create_each_block$d(_n,Ce){let ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo=Ce[9]&&create_if_block_2$7(Ce);const wo=[create_if_block$v,create_else_block$c],$o=[];function Do(xo,Bo){var Vo;return(Vo=xo[17]._file)!=null&&Vo.path?0:1}return Zn=Do(Ce),qn=$o[Zn]=wo[Zn](Ce),Jn=new RecordRow$1({props:{record:Ce[17],graph:Ce[4],schema:Ce[1],visibleColumns:Ce[10],sortParam:Ce[6],sortField:Ce[7],users:Ce[2]}}),uo=new Avatar({props:{name:usernameById(Ce[2],Ce[17]._sys.updatedBy),side:24}}),{key:_n,first:null,c(){ke=element("tr"),$n=element("td"),Hn=element("div"),Oo&&Oo.c(),zn=space$3(),qn.c(),Yn=space$3(),create_component(Jn.$$.fragment),to=space$3(),io=element("td"),create_component(uo.$$.fragment),mo=space$3(),attr(Hn,"class","title-td-contents"),attr($n,"class","title-td"),this.first=ke},m(xo,Bo){insert$1(xo,ke,Bo),append(ke,$n),append($n,Hn),Oo&&Oo.m(Hn,null),append(Hn,zn),$o[Zn].m(Hn,null),append(ke,Yn),mount_component(Jn,ke,null),append(ke,to),append(ke,io),mount_component(uo,io,null),append(ke,mo),bo=!0},p(xo,Bo){Ce=xo,Ce[9]?Oo?(Oo.p(Ce,Bo),Bo&512&&transition_in(Oo,1)):(Oo=create_if_block_2$7(Ce),Oo.c(),transition_in(Oo,1),Oo.m(Hn,zn)):Oo&&(group_outros(),transition_out(Oo,1,1,()=>{Oo=null}),check_outros());let Vo=Zn;Zn=Do(Ce),Zn===Vo?$o[Zn].p(Ce,Bo):(group_outros(),transition_out($o[Vo],1,1,()=>{$o[Vo]=null}),check_outros(),qn=$o[Zn],qn?qn.p(Ce,Bo):(qn=$o[Zn]=wo[Zn](Ce),qn.c()),transition_in(qn,1),qn.m(Hn,null));const Ko={};Bo&8&&(Ko.record=Ce[17]),Bo&16&&(Ko.graph=Ce[4]),Bo&2&&(Ko.schema=Ce[1]),Bo&1024&&(Ko.visibleColumns=Ce[10]),Bo&64&&(Ko.sortParam=Ce[6]),Bo&128&&(Ko.sortField=Ce[7]),Bo&4&&(Ko.users=Ce[2]),Jn.$set(Ko);const Mo={};Bo&12&&(Mo.name=usernameById(Ce[2],Ce[17]._sys.updatedBy)),uo.$set(Mo)},i(xo){bo||(transition_in(Oo),transition_in(qn),transition_in(Jn.$$.fragment,xo),transition_in(uo.$$.fragment,xo),bo=!0)},o(xo){transition_out(Oo),transition_out(qn),transition_out(Jn.$$.fragment,xo),transition_out(uo.$$.fragment,xo),bo=!1},d(xo){xo&&detach(ke),Oo&&Oo.d(),$o[Zn].d(),destroy_component(Jn),destroy_component(uo)}}}function create_fragment$D(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io=[],uo=new Map,mo,bo=_n[9]&&create_if_block_3$5(_n),Oo=ensure_array_like(_n[10]),wo=[];for(let Vo=0;VoVo[17].id;for(let Vo=0;Vo{bo=null}),check_outros()),Ko&1152){Oo=ensure_array_like(Vo[10]);let Mo;for(Mo=0;Mo{var Vo;return(Vo=zn.visible)==null?void 0:Vo.includes(Bo.name)},Do=(Bo,Vo)=>Vo.id===Bo.id,xo=Bo=>wo(Bo);return _n.$$set=Bo=>{"schema"in Bo&&ke(1,zn=Bo.schema),"users"in Bo&&ke(2,Zn=Bo.users),"records"in Bo&&ke(3,qn=Bo.records),"graph"in Bo&&ke(4,Yn=Bo.graph),"systemFields"in Bo&&ke(5,Jn=Bo.systemFields),"sortParam"in Bo&&ke(6,to=Bo.sortParam),"sortField"in Bo&&ke(7,io=Bo.sortField),"inModal"in Bo&&ke(8,uo=Bo.inModal),"isWritable"in Bo&&ke(9,mo=Bo.isWritable),"selected"in Bo&&ke(0,bo=Bo.selected)},_n.$$.update=()=>{_n.$$.dirty&2&&ke(10,$n=zn.fields.filter(Bo=>{var Vo;return((Vo=zn.visible)==null?void 0:Vo.includes(Bo.name))??[]}))},[bo,zn,Zn,qn,Yn,Jn,to,io,uo,mo,$n,Hn,Oo,wo,$o,Do,xo]}let Table$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$D,create_fragment$D,safe_not_equal,{schema:1,users:2,records:3,graph:4,systemFields:5,sortParam:6,sortField:7,inModal:8,isWritable:9,selected:0})}};function create_else_block$b(_n){let Ce,ke,$n,Hn;function zn(Yn){_n[17](Yn)}function Zn(Yn){_n[18](Yn)}let qn={systemFields:_n[13],sortParam:_n[2],sortField:_n[3],operators:_n[4],filter:_n[5],graph:_n[12],inModal:_n[14],modalUrl:_n[9],isWritable:_n[15]};return _n[0]!==void 0&&(qn.schema=_n[0]),_n[1]!==void 0&&(qn.records=_n[1]),Ce=new Tools({props:qn}),binding_callbacks.push(()=>bind(Ce,"schema",zn)),binding_callbacks.push(()=>bind(Ce,"records",Zn)),Ce.$on("refresh",_n[16]),{c(){create_component(Ce.$$.fragment)},m(Yn,Jn){mount_component(Ce,Yn,Jn),Hn=!0},p(Yn,Jn){const to={};Jn&8192&&(to.systemFields=Yn[13]),Jn&4&&(to.sortParam=Yn[2]),Jn&8&&(to.sortField=Yn[3]),Jn&16&&(to.operators=Yn[4]),Jn&32&&(to.filter=Yn[5]),Jn&4096&&(to.graph=Yn[12]),Jn&16384&&(to.inModal=Yn[14]),Jn&512&&(to.modalUrl=Yn[9]),Jn&32768&&(to.isWritable=Yn[15]),!ke&&Jn&1&&(ke=!0,to.schema=Yn[0],add_flush_callback(()=>ke=!1)),!$n&&Jn&2&&($n=!0,to.records=Yn[1],add_flush_callback(()=>$n=!1)),Ce.$set(to)},i(Yn){Hn||(transition_in(Ce.$$.fragment,Yn),Hn=!0)},o(Yn){transition_out(Ce.$$.fragment,Yn),Hn=!1},d(Yn){destroy_component(Ce,Yn)}}}function create_if_block$u(_n){let Ce,ke;return Ce=new ActionsOnSelected({props:{schema:_n[0],selected:_n[10],filter:_n[5]}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.schema=$n[0]),Hn&1024&&(zn.selected=$n[10]),Hn&32&&(zn.filter=$n[5]),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_fragment$C(_n){let Ce,ke,$n,Hn=_n[0].label+"",zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo;const wo=[create_if_block$u,create_else_block$b],$o=[];function Do(Vo,Ko){return Vo[10].length>0&&!Vo[14]&&Vo[15]?0:1}qn=Do(_n),Yn=$o[qn]=wo[qn](_n);function xo(Vo){_n[19](Vo)}let Bo={records:_n[1],graph:_n[12],schema:_n[0],sortParam:_n[2],sortField:_n[3],systemFields:_n[13],inModal:_n[14],users:_n[11],isWritable:_n[15]};return _n[10]!==void 0&&(Bo.selected=_n[10]),to=new Table$1({props:Bo}),binding_callbacks.push(()=>bind(to,"selected",xo)),bo=new Pagination({props:{limit:_n[6],skip:_n[7],total:_n[8],inModal:_n[14],modalUrl:_n[9]}}),bo.$on("refresh",_n[16]),{c(){Ce=element("div"),ke=element("div"),$n=element("h3"),zn=text(Hn),Zn=space$3(),Yn.c(),Jn=space$3(),create_component(to.$$.fragment),mo=space$3(),create_component(bo.$$.fragment),attr($n,"class","header-normal mb-5 "),attr(ke,"class",uo=_n[14]?"mt-0":"mt-5"),attr(Ce,"class","")},m(Vo,Ko){insert$1(Vo,Ce,Ko),append(Ce,ke),append(ke,$n),append($n,zn),append(ke,Zn),$o[qn].m(ke,null),append(ke,Jn),mount_component(to,ke,null),append(Ce,mo),mount_component(bo,Ce,null),Oo=!0},p(Vo,[Ko]){(!Oo||Ko&1)&&Hn!==(Hn=Vo[0].label+"")&&set_data(zn,Hn);let Mo=qn;qn=Do(Vo),qn===Mo?$o[qn].p(Vo,Ko):(group_outros(),transition_out($o[Mo],1,1,()=>{$o[Mo]=null}),check_outros(),Yn=$o[qn],Yn?Yn.p(Vo,Ko):(Yn=$o[qn]=wo[qn](Vo),Yn.c()),transition_in(Yn,1),Yn.m(ke,Jn));const es={};Ko&2&&(es.records=Vo[1]),Ko&4096&&(es.graph=Vo[12]),Ko&1&&(es.schema=Vo[0]),Ko&4&&(es.sortParam=Vo[2]),Ko&8&&(es.sortField=Vo[3]),Ko&8192&&(es.systemFields=Vo[13]),Ko&16384&&(es.inModal=Vo[14]),Ko&2048&&(es.users=Vo[11]),Ko&32768&&(es.isWritable=Vo[15]),!io&&Ko&1024&&(io=!0,es.selected=Vo[10],add_flush_callback(()=>io=!1)),to.$set(es),(!Oo||Ko&16384&&uo!==(uo=Vo[14]?"mt-0":"mt-5"))&&attr(ke,"class",uo);const ls={};Ko&64&&(ls.limit=Vo[6]),Ko&128&&(ls.skip=Vo[7]),Ko&256&&(ls.total=Vo[8]),Ko&16384&&(ls.inModal=Vo[14]),Ko&512&&(ls.modalUrl=Vo[9]),bo.$set(ls)},i(Vo){Oo||(transition_in(Yn),transition_in(to.$$.fragment,Vo),transition_in(bo.$$.fragment,Vo),Oo=!0)},o(Vo){transition_out(Yn),transition_out(to.$$.fragment,Vo),transition_out(bo.$$.fragment,Vo),Oo=!1},d(Vo){Vo&&detach(Ce),$o[qn].d(),destroy_component(to),destroy_component(bo)}}}function instance$C(_n,Ce,ke){const $n=getContext$1("axios");let{schema:Hn}=Ce,{users:zn}=Ce,{records:Zn}=Ce,{graph:qn}=Ce,{systemFields:Yn}=Ce,{sortParam:Jn}=Ce,{sortField:to}=Ce,{operators:io}=Ce,{filter:uo}=Ce,{limit:mo}=Ce,{skip:bo}=Ce,{total:Oo}=Ce,{inModal:wo}=Ce,{modalUrl:$o}=Ce,{selected:Do=[]}=Ce,{isWritable:xo=!1}=Ce;function Bo(es){const ls=es.detail;$n.get(ls).then(ps=>{ke(1,Zn=ps.data.records),ke(2,Jn=ps.data.sortParam),ke(3,to=ps.data.sortField),ke(4,io=ps.data.operators),ke(5,uo=ps.data.filter),ke(7,bo=ps.data.skip),ke(6,mo=ps.data.limit),ke(8,Oo=ps.data.total),ke(9,$o=ps.data.modalUrl),document.querySelector("dialog h3").scrollIntoView()}).catch(ps=>{console.log(ps)})}function Vo(es){Hn=es,ke(0,Hn)}function Ko(es){Zn=es,ke(1,Zn)}function Mo(es){Do=es,ke(10,Do)}return _n.$$set=es=>{"schema"in es&&ke(0,Hn=es.schema),"users"in es&&ke(11,zn=es.users),"records"in es&&ke(1,Zn=es.records),"graph"in es&&ke(12,qn=es.graph),"systemFields"in es&&ke(13,Yn=es.systemFields),"sortParam"in es&&ke(2,Jn=es.sortParam),"sortField"in es&&ke(3,to=es.sortField),"operators"in es&&ke(4,io=es.operators),"filter"in es&&ke(5,uo=es.filter),"limit"in es&&ke(6,mo=es.limit),"skip"in es&&ke(7,bo=es.skip),"total"in es&&ke(8,Oo=es.total),"inModal"in es&&ke(14,wo=es.inModal),"modalUrl"in es&&ke(9,$o=es.modalUrl),"selected"in es&&ke(10,Do=es.selected),"isWritable"in es&&ke(15,xo=es.isWritable)},[Hn,Zn,Jn,to,io,uo,mo,bo,Oo,$o,Do,zn,qn,Yn,wo,xo,Bo,Vo,Ko,Mo]}let Index$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$C,create_fragment$C,safe_not_equal,{schema:0,users:11,records:1,graph:12,systemFields:13,sortParam:2,sortField:3,operators:4,filter:5,limit:6,skip:7,total:8,inModal:14,modalUrl:9,selected:10,isWritable:15})}};function create_if_block$t(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo=_n[2].length>0&&create_if_block_1$h(_n);uo=new Icon({props:{icon:"close"}});const Vo=[_n[3]];function Ko(es){_n[7](es)}let Mo={};for(let es=0;esbind(Oo,"selected",Ko)),{c(){Ce=element("div"),ke=element("button"),$n=text("Insert"),zn=space$3(),Zn=element("button"),qn=text("Replace"),Jn=space$3(),Bo&&Bo.c(),to=space$3(),io=element("button"),create_component(uo.$$.fragment),mo=space$3(),bo=element("div"),create_component(Oo.$$.fragment),attr(ke,"type","button"),attr(ke,"class","button"),ke.disabled=Hn=_n[2].length===0,attr(Zn,"type","button"),attr(Zn,"class","button"),Zn.disabled=Yn=_n[2].length===0,attr(io,"type","button"),attr(io,"class","button close"),attr(io,"aria-label","Close"),attr(Ce,"class","dialog-header"),attr(bo,"class","dialog-body")},m(es,ls){insert$1(es,Ce,ls),append(Ce,ke),append(ke,$n),append(Ce,zn),append(Ce,Zn),append(Zn,qn),append(Ce,Jn),Bo&&Bo.m(Ce,null),append(Ce,to),append(Ce,io),mount_component(uo,io,null),insert$1(es,mo,ls),insert$1(es,bo,ls),mount_component(Oo,bo,null),$o=!0,Do||(xo=[listen(ke,"click",_n[4]),listen(Zn,"click",_n[5]),listen(io,"click",prevent_default(_n[0]))],Do=!0)},p(es,ls){(!$o||ls&4&&Hn!==(Hn=es[2].length===0))&&(ke.disabled=Hn),(!$o||ls&4&&Yn!==(Yn=es[2].length===0))&&(Zn.disabled=Yn),es[2].length>0?Bo?Bo.p(es,ls):(Bo=create_if_block_1$h(es),Bo.c(),Bo.m(Ce,to)):Bo&&(Bo.d(1),Bo=null);const ps=ls&8?get_spread_update(Vo,[get_spread_object(es[3])]):{};!wo&&ls&4&&(wo=!0,ps.selected=es[2],add_flush_callback(()=>wo=!1)),Oo.$set(ps)},i(es){$o||(transition_in(uo.$$.fragment,es),transition_in(Oo.$$.fragment,es),$o=!0)},o(es){transition_out(uo.$$.fragment,es),transition_out(Oo.$$.fragment,es),$o=!1},d(es){es&&(detach(Ce),detach(mo),detach(bo)),Bo&&Bo.d(),destroy_component(uo),destroy_component(Oo),Do=!1,run_all(xo)}}}function create_if_block_1$h(_n){let Ce,ke=_n[2].length+"",$n,Hn;return{c(){Ce=element("span"),$n=text(ke),Hn=text(" records selected"),attr(Ce,"class","")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,$n),append(Ce,Hn)},p(zn,Zn){Zn&4&&ke!==(ke=zn[2].length+"")&&set_data($n,ke)},d(zn){zn&&detach(Ce)}}}function create_fragment$B(_n){let Ce,ke,$n=_n[3].schema&&create_if_block$t(_n);return{c(){Ce=element("dialog"),$n&&$n.c()},m(Hn,zn){insert$1(Hn,Ce,zn),$n&&$n.m(Ce,null),_n[8](Ce),ke=!0},p(Hn,[zn]){Hn[3].schema?$n?($n.p(Hn,zn),zn&8&&transition_in($n,1)):($n=create_if_block$t(Hn),$n.c(),transition_in($n,1),$n.m(Ce,null)):$n&&(group_outros(),transition_out($n,1,1,()=>{$n=null}),check_outros())},i(Hn){ke||(transition_in($n),ke=!0)},o(Hn){transition_out($n),ke=!1},d(Hn){Hn&&detach(Ce),$n&&$n.d(),_n[8](null)}}}function instance$B(_n,Ce,ke){let $n,Hn;const zn=createEventDispatcher(),Zn=getContext$1("channel");let qn=[];function Yn(Oo){Oo&&Oo.preventDefault(),Hn.close(),ke(2,qn=[])}function Jn(Oo){axios$1.get(Zn.lucentUrl+"/content/"+Oo).then(wo=>{ke(3,$n=wo.data)}).catch(wo=>console.log(wo))}function to(Oo){Oo.preventDefault(),zn("insert",{records:qn,action:"insert",schema:$n.schema.name})}function io(Oo){Oo.preventDefault(),zn("insert",{records:qn,action:"replace"})}function uo(Oo){Hn.showModal(),Jn(Oo)}function mo(Oo){qn=Oo,ke(2,qn)}function bo(Oo){binding_callbacks[Oo?"unshift":"push"](()=>{Hn=Oo,ke(1,Hn)})}return ke(3,$n={}),[Yn,Hn,qn,$n,to,io,uo,mo,bo]}class Dialog extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$B,create_fragment$B,safe_not_equal,{close:0,open:6})}get close(){return this.$$.ctx[0]}get open(){return this.$$.ctx[6]}}function create_fragment$A(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn;Hn=new Icon({props:{icon:"close"}});const to=_n[4].default,io=create_slot(to,_n,_n[3],null);return{c(){Ce=element("dialog"),ke=element("div"),$n=element("button"),create_component(Hn.$$.fragment),zn=space$3(),Zn=element("div"),io&&io.c(),attr($n,"type","button"),attr($n,"class","button close"),attr($n,"aria-label","Close"),attr(ke,"class","dialog-header"),attr(Zn,"class","dialog-body"),set_style(Zn,"min-width","900px")},m(uo,mo){insert$1(uo,Ce,mo),append(Ce,ke),append(ke,$n),mount_component(Hn,$n,null),append(Ce,zn),append(Ce,Zn),io&&io.m(Zn,null),_n[5](Ce),qn=!0,Yn||(Jn=listen($n,"click",prevent_default(_n[0])),Yn=!0)},p(uo,[mo]){io&&io.p&&(!qn||mo&8)&&update_slot_base(io,to,uo,uo[3],qn?get_slot_changes(to,uo[3],mo,null):get_all_dirty_from_scope(uo[3]),null)},i(uo){qn||(transition_in(Hn.$$.fragment,uo),transition_in(io,uo),qn=!0)},o(uo){transition_out(Hn.$$.fragment,uo),transition_out(io,uo),qn=!1},d(uo){uo&&detach(Ce),destroy_component(Hn),io&&io.d(uo),_n[5](null),Yn=!1,Jn()}}}function instance$A(_n,Ce,ke){let{$$slots:$n={},$$scope:Hn}=Ce,zn;function Zn(Jn){Jn&&Jn.preventDefault(),zn.close()}function qn(){zn.showModal()}function Yn(Jn){binding_callbacks[Jn?"unshift":"push"](()=>{zn=Jn,ke(1,zn)})}return _n.$$set=Jn=>{"$$scope"in Jn&&ke(3,Hn=Jn.$$scope)},[Zn,zn,qn,Hn,$n,Yn]}class DialogRecord extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$A,create_fragment$A,safe_not_equal,{close:0,open:2})}get close(){return this.$$.ctx[0]}get open(){return this.$$.ctx[2]}}function get_each_context$c(_n,Ce,ke){const $n=_n.slice();return $n[18]=Ce[ke],$n}function get_each_context_1$4(_n,Ce,ke){const $n=_n.slice();return $n[18]=Ce[ke],$n}function create_else_block$a(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;return zn=new Icon({props:{icon:"magnifying-glass"}}),{c(){Ce=element("div"),ke=element("button"),ke.textContent="New",$n=space$3(),Hn=element("button"),create_component(zn.$$.fragment),attr(ke,"class","button"),attr(Hn,"class","button"),set_style(Ce,"display","flex"),set_style(Ce,"align-items","center"),set_style(Ce,"gap","4px")},m(Jn,to){insert$1(Jn,Ce,to),append(Ce,ke),append(Ce,$n),append(Ce,Hn),mount_component(zn,Hn,null),Zn=!0,qn||(Yn=[listen(ke,"click",_n[11]),listen(Hn,"click",_n[12])],qn=!0)},p:noop,i(Jn){Zn||(transition_in(zn.$$.fragment,Jn),Zn=!0)},o(Jn){transition_out(zn.$$.fragment,Jn),Zn=!1},d(Jn){Jn&&detach(Ce),destroy_component(zn),qn=!1,run_all(Yn)}}}function create_if_block_1$g(_n){let Ce,ke,$n,Hn,zn;return ke=new Dropdown({props:{$$slots:{button:[create_button_slot_1],default:[create_default_slot_2]},$$scope:{ctx:_n}}}),Hn=new Dropdown({props:{$$slots:{button:[create_button_slot$4],default:[create_default_slot_1$1]},$$scope:{ctx:_n}}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),create_component(Hn.$$.fragment),set_style(Ce,"display","flex"),set_style(Ce,"align-items","center"),set_style(Ce,"gap","4px")},m(Zn,qn){insert$1(Zn,Ce,qn),mount_component(ke,Ce,null),append(Ce,$n),mount_component(Hn,Ce,null),zn=!0},p(Zn,qn){const Yn={};qn&8388609&&(Yn.$$scope={dirty:qn,ctx:Zn}),ke.$set(Yn);const Jn={};qn&8388609&&(Jn.$$scope={dirty:qn,ctx:Zn}),Hn.$set(Jn)},i(Zn){zn||(transition_in(ke.$$.fragment,Zn),transition_in(Hn.$$.fragment,Zn),zn=!0)},o(Zn){transition_out(ke.$$.fragment,Zn),transition_out(Hn.$$.fragment,Zn),zn=!1},d(Zn){Zn&&detach(Ce),destroy_component(ke),destroy_component(Hn)}}}function create_each_block_1$4(_n){let Ce,ke=_n[18].name+"",$n,Hn,zn,Zn;function qn(...Yn){return _n[9](_n[18],...Yn)}return{c(){Ce=element("button"),$n=text(ke),Hn=space$3(),attr(Ce,"class","button")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,$n),append(Ce,Hn),zn||(Zn=listen(Ce,"click",qn),zn=!0)},p(Yn,Jn){_n=Yn,Jn&1&&ke!==(ke=_n[18].name+"")&&set_data($n,ke)},d(Yn){Yn&&detach(Ce),zn=!1,Zn()}}}function create_default_slot_2(_n){let Ce,ke=ensure_array_like(_n[0]),$n=[];for(let Hn=0;Hn{$n=null}),check_outros())},i(Hn){ke||(transition_in($n),ke=!0)},o(Hn){transition_out($n),ke=!1},d(Hn){Hn&&detach(Ce),$n&&$n.d(Hn)}}}function create_fragment$z(_n){let Ce,ke,$n,Hn,zn,Zn,qn;const Yn=[create_if_block_1$g,create_else_block$a],Jn=[];function to(mo,bo){return mo[0].length>1?0:1}Ce=to(_n),ke=Jn[Ce]=Yn[Ce](_n);let io={$$slots:{default:[create_default_slot$5]},$$scope:{ctx:_n}};Hn=new DialogRecord({props:io}),_n[14](Hn);let uo={};return Zn=new Dialog({props:uo}),_n[15](Zn),Zn.$on("insert",_n[6]),{c(){ke.c(),$n=space$3(),create_component(Hn.$$.fragment),zn=space$3(),create_component(Zn.$$.fragment)},m(mo,bo){Jn[Ce].m(mo,bo),insert$1(mo,$n,bo),mount_component(Hn,mo,bo),insert$1(mo,zn,bo),mount_component(Zn,mo,bo),qn=!0},p(mo,[bo]){let Oo=Ce;Ce=to(mo),Ce===Oo?Jn[Ce].p(mo,bo):(group_outros(),transition_out(Jn[Oo],1,1,()=>{Jn[Oo]=null}),check_outros(),ke=Jn[Ce],ke?ke.p(mo,bo):(ke=Jn[Ce]=Yn[Ce](mo),ke.c()),transition_in(ke,1),ke.m($n.parentNode,$n));const wo={};bo&8388616&&(wo.$$scope={dirty:bo,ctx:mo}),Hn.$set(wo);const $o={};Zn.$set($o)},i(mo){qn||(transition_in(ke),transition_in(Hn.$$.fragment,mo),transition_in(Zn.$$.fragment,mo),qn=!0)},o(mo){transition_out(ke),transition_out(Hn.$$.fragment,mo),transition_out(Zn.$$.fragment,mo),qn=!1},d(mo){mo&&(detach($n),detach(zn)),Jn[Ce].d(mo),_n[14](null),destroy_component(Hn,mo),_n[15](null),destroy_component(Zn,mo)}}}function instance$z(_n,Ce,ke){const $n=createEventDispatcher(),Hn=getContext$1("channel");let{schemas:zn}=Ce,{recordId:Zn}=Ce,qn,Yn,Jn;function to(Vo,Ko){Vo.preventDefault(),qn.open(Ko)}function io(Vo){Vo.preventDefault(),console.log("Save inline"),ke(3,Jn=null),Yn.close(),$n("save",{records:Vo.detail.records,after:Zn})}function uo(Vo){Vo.preventDefault(),qn.close(),$n("insert",{records:Vo.detail.records,schema:Vo.detail.schema,after:Zn})}function mo(Vo,Ko){Vo.preventDefault(),ke(3,Jn=null),axios$1.get(Hn.lucentUrl+"/records/newInline?schema="+Ko).then(Mo=>{ke(3,Jn=Mo.data),Yn.open()}).catch(Mo=>{console.log(Mo)})}const bo=(Vo,Ko)=>mo(Ko,Vo.name),Oo=(Vo,Ko)=>to(Ko,Vo.name),wo=Vo=>mo(Vo,zn[0].name),$o=Vo=>to(Vo,zn[0].name),Do=Vo=>ke(3,Jn=null);function xo(Vo){binding_callbacks[Vo?"unshift":"push"](()=>{Yn=Vo,ke(2,Yn)})}function Bo(Vo){binding_callbacks[Vo?"unshift":"push"](()=>{qn=Vo,ke(1,qn)})}return _n.$$set=Vo=>{"schemas"in Vo&&ke(0,zn=Vo.schemas),"recordId"in Vo&&ke(8,Zn=Vo.recordId)},[zn,qn,Yn,Jn,to,io,uo,mo,Zn,bo,Oo,wo,$o,Do,xo,Bo]}class ReferenceInlineButtons extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$z,create_fragment$z,safe_not_equal,{schemas:0,recordId:8})}}/**! + * Sortable 1.15.2 + * @author RubaXa + * @author owenm + * @license MIT + */function ownKeys(_n,Ce){var ke=Object.keys(_n);if(Object.getOwnPropertySymbols){var $n=Object.getOwnPropertySymbols(_n);Ce&&($n=$n.filter(function(Hn){return Object.getOwnPropertyDescriptor(_n,Hn).enumerable})),ke.push.apply(ke,$n)}return ke}function _objectSpread2(_n){for(var Ce=1;Ce=0)&&(ke[Hn]=_n[Hn]);return ke}function _objectWithoutProperties(_n,Ce){if(_n==null)return{};var ke=_objectWithoutPropertiesLoose(_n,Ce),$n,Hn;if(Object.getOwnPropertySymbols){var zn=Object.getOwnPropertySymbols(_n);for(Hn=0;Hn=0)&&Object.prototype.propertyIsEnumerable.call(_n,$n)&&(ke[$n]=_n[$n])}return ke}var version="1.15.2";function userAgent(_n){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(_n)}var IE11OrLess=userAgent(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Edge=userAgent(/Edge/i),FireFox=userAgent(/firefox/i),Safari=userAgent(/safari/i)&&!userAgent(/chrome/i)&&!userAgent(/android/i),IOS=userAgent(/iP(ad|od|hone)/i),ChromeForAndroid=userAgent(/chrome/i)&&userAgent(/android/i),captureMode={capture:!1,passive:!1};function on$1(_n,Ce,ke){_n.addEventListener(Ce,ke,!IE11OrLess&&captureMode)}function off(_n,Ce,ke){_n.removeEventListener(Ce,ke,!IE11OrLess&&captureMode)}function matches(_n,Ce){if(Ce){if(Ce[0]===">"&&(Ce=Ce.substring(1)),_n)try{if(_n.matches)return _n.matches(Ce);if(_n.msMatchesSelector)return _n.msMatchesSelector(Ce);if(_n.webkitMatchesSelector)return _n.webkitMatchesSelector(Ce)}catch{return!1}return!1}}function getParentOrHost(_n){return _n.host&&_n!==document&&_n.host.nodeType?_n.host:_n.parentNode}function closest(_n,Ce,ke,$n){if(_n){ke=ke||document;do{if(Ce!=null&&(Ce[0]===">"?_n.parentNode===ke&&matches(_n,Ce):matches(_n,Ce))||$n&&_n===ke)return _n;if(_n===ke)break}while(_n=getParentOrHost(_n))}return null}var R_SPACE=/\s+/g;function toggleClass$1(_n,Ce,ke){if(_n&&Ce)if(_n.classList)_n.classList[ke?"add":"remove"](Ce);else{var $n=(" "+_n.className+" ").replace(R_SPACE," ").replace(" "+Ce+" "," ");_n.className=($n+(ke?" "+Ce:"")).replace(R_SPACE," ")}}function css$1(_n,Ce,ke){var $n=_n&&_n.style;if($n){if(ke===void 0)return document.defaultView&&document.defaultView.getComputedStyle?ke=document.defaultView.getComputedStyle(_n,""):_n.currentStyle&&(ke=_n.currentStyle),Ce===void 0?ke:ke[Ce];!(Ce in $n)&&Ce.indexOf("webkit")===-1&&(Ce="-webkit-"+Ce),$n[Ce]=ke+(typeof ke=="string"?"":"px")}}function matrix(_n,Ce){var ke="";if(typeof _n=="string")ke=_n;else do{var $n=css$1(_n,"transform");$n&&$n!=="none"&&(ke=$n+" "+ke)}while(!Ce&&(_n=_n.parentNode));var Hn=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return Hn&&new Hn(ke)}function find$1(_n,Ce,ke){if(_n){var $n=_n.getElementsByTagName(Ce),Hn=0,zn=$n.length;if(ke)for(;Hn=zn,!Zn)return $n;if($n===getWindowScrollingElement())break;$n=getParentAutoScrollElement($n,!1)}return!1}function getChild(_n,Ce,ke,$n){for(var Hn=0,zn=0,Zn=_n.children;zn2&&arguments[2]!==void 0?arguments[2]:{},Hn=$n.evt,zn=_objectWithoutProperties($n,_excluded);PluginManager.pluginEvent.bind(Sortable)(Ce,ke,_objectSpread2({dragEl,parentEl,ghostEl,rootEl,nextEl,lastDownEl,cloneEl,cloneHidden,dragStarted:moved,putSortable,activeSortable:Sortable.active,originalEvent:Hn,oldIndex,oldDraggableIndex,newIndex,newDraggableIndex,hideGhostForTarget:_hideGhostForTarget,unhideGhostForTarget:_unhideGhostForTarget,cloneNowHidden:function(){cloneHidden=!0},cloneNowShown:function(){cloneHidden=!1},dispatchSortableEvent:function(qn){_dispatchEvent({sortable:ke,name:qn,originalEvent:Hn})}},zn))};function _dispatchEvent(_n){dispatchEvent(_objectSpread2({putSortable,cloneEl,targetEl:dragEl,rootEl,oldIndex,oldDraggableIndex,newIndex,newDraggableIndex},_n))}var dragEl,parentEl,ghostEl,rootEl,nextEl,lastDownEl,cloneEl,cloneHidden,oldIndex,newIndex,oldDraggableIndex,newDraggableIndex,activeGroup,putSortable,awaitingDragStarted=!1,ignoreNextClick=!1,sortables=[],tapEvt,touchEvt,lastDx,lastDy,tapDistanceLeft,tapDistanceTop,moved,lastTarget,lastDirection,pastFirstInvertThresh=!1,isCircumstantialInvert=!1,targetMoveDistance,ghostRelativeParent,ghostRelativeParentInitialScroll=[],_silent=!1,savedInputChecked=[],documentExists=typeof document<"u",PositionGhostAbsolutely=IOS,CSSFloatProperty=Edge||IE11OrLess?"cssFloat":"float",supportDraggable=documentExists&&!ChromeForAndroid&&!IOS&&"draggable"in document.createElement("div"),supportCssPointerEvents=function(){if(documentExists){if(IE11OrLess)return!1;var _n=document.createElement("x");return _n.style.cssText="pointer-events:auto",_n.style.pointerEvents==="auto"}}(),_detectDirection=function(Ce,ke){var $n=css$1(Ce),Hn=parseInt($n.width)-parseInt($n.paddingLeft)-parseInt($n.paddingRight)-parseInt($n.borderLeftWidth)-parseInt($n.borderRightWidth),zn=getChild(Ce,0,ke),Zn=getChild(Ce,1,ke),qn=zn&&css$1(zn),Yn=Zn&&css$1(Zn),Jn=qn&&parseInt(qn.marginLeft)+parseInt(qn.marginRight)+getRect(zn).width,to=Yn&&parseInt(Yn.marginLeft)+parseInt(Yn.marginRight)+getRect(Zn).width;if($n.display==="flex")return $n.flexDirection==="column"||$n.flexDirection==="column-reverse"?"vertical":"horizontal";if($n.display==="grid")return $n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(zn&&qn.float&&qn.float!=="none"){var io=qn.float==="left"?"left":"right";return Zn&&(Yn.clear==="both"||Yn.clear===io)?"vertical":"horizontal"}return zn&&(qn.display==="block"||qn.display==="flex"||qn.display==="table"||qn.display==="grid"||Jn>=Hn&&$n[CSSFloatProperty]==="none"||Zn&&$n[CSSFloatProperty]==="none"&&Jn+to>Hn)?"vertical":"horizontal"},_dragElInRowColumn=function(Ce,ke,$n){var Hn=$n?Ce.left:Ce.top,zn=$n?Ce.right:Ce.bottom,Zn=$n?Ce.width:Ce.height,qn=$n?ke.left:ke.top,Yn=$n?ke.right:ke.bottom,Jn=$n?ke.width:ke.height;return Hn===qn||zn===Yn||Hn+Zn/2===qn+Jn/2},_detectNearestEmptySortable=function(Ce,ke){var $n;return sortables.some(function(Hn){var zn=Hn[expando].options.emptyInsertThreshold;if(!(!zn||lastChild(Hn))){var Zn=getRect(Hn),qn=Ce>=Zn.left-zn&&Ce<=Zn.right+zn,Yn=ke>=Zn.top-zn&&ke<=Zn.bottom+zn;if(qn&&Yn)return $n=Hn}}),$n},_prepareGroup=function(Ce){function ke(zn,Zn){return function(qn,Yn,Jn,to){var io=qn.options.group.name&&Yn.options.group.name&&qn.options.group.name===Yn.options.group.name;if(zn==null&&(Zn||io))return!0;if(zn==null||zn===!1)return!1;if(Zn&&zn==="clone")return zn;if(typeof zn=="function")return ke(zn(qn,Yn,Jn,to),Zn)(qn,Yn,Jn,to);var uo=(Zn?qn:Yn).options.group.name;return zn===!0||typeof zn=="string"&&zn===uo||zn.join&&zn.indexOf(uo)>-1}}var $n={},Hn=Ce.group;(!Hn||_typeof(Hn)!="object")&&(Hn={name:Hn}),$n.name=Hn.name,$n.checkPull=ke(Hn.pull,!0),$n.checkPut=ke(Hn.put),$n.revertClone=Hn.revertClone,Ce.group=$n},_hideGhostForTarget=function(){!supportCssPointerEvents&&ghostEl&&css$1(ghostEl,"display","none")},_unhideGhostForTarget=function(){!supportCssPointerEvents&&ghostEl&&css$1(ghostEl,"display","")};documentExists&&!ChromeForAndroid&&document.addEventListener("click",function(_n){if(ignoreNextClick)return _n.preventDefault(),_n.stopPropagation&&_n.stopPropagation(),_n.stopImmediatePropagation&&_n.stopImmediatePropagation(),ignoreNextClick=!1,!1},!0);var nearestEmptyInsertDetectEvent=function(Ce){if(dragEl){Ce=Ce.touches?Ce.touches[0]:Ce;var ke=_detectNearestEmptySortable(Ce.clientX,Ce.clientY);if(ke){var $n={};for(var Hn in Ce)Ce.hasOwnProperty(Hn)&&($n[Hn]=Ce[Hn]);$n.target=$n.rootEl=ke,$n.preventDefault=void 0,$n.stopPropagation=void 0,ke[expando]._onDragOver($n)}}},_checkOutsideTargetEl=function(Ce){dragEl&&dragEl.parentNode[expando]._isOutsideThisEl(Ce.target)};function Sortable(_n,Ce){if(!(_n&&_n.nodeType&&_n.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(_n));this.el=_n,this.options=Ce=_extends({},Ce),_n[expando]=this;var ke={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(_n.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return _detectDirection(_n,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(Zn,qn){Zn.setData("Text",qn.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:Sortable.supportPointer!==!1&&"PointerEvent"in window&&!Safari,emptyInsertThreshold:5};PluginManager.initializePlugins(this,_n,ke);for(var $n in ke)!($n in Ce)&&(Ce[$n]=ke[$n]);_prepareGroup(Ce);for(var Hn in this)Hn.charAt(0)==="_"&&typeof this[Hn]=="function"&&(this[Hn]=this[Hn].bind(this));this.nativeDraggable=Ce.forceFallback?!1:supportDraggable,this.nativeDraggable&&(this.options.touchStartThreshold=1),Ce.supportPointer?on$1(_n,"pointerdown",this._onTapStart):(on$1(_n,"mousedown",this._onTapStart),on$1(_n,"touchstart",this._onTapStart)),this.nativeDraggable&&(on$1(_n,"dragover",this),on$1(_n,"dragenter",this)),sortables.push(this.el),Ce.store&&Ce.store.get&&this.sort(Ce.store.get(this)||[]),_extends(this,AnimationStateManager())}Sortable.prototype={constructor:Sortable,_isOutsideThisEl:function(Ce){!this.el.contains(Ce)&&Ce!==this.el&&(lastTarget=null)},_getDirection:function(Ce,ke){return typeof this.options.direction=="function"?this.options.direction.call(this,Ce,ke,dragEl):this.options.direction},_onTapStart:function(Ce){if(Ce.cancelable){var ke=this,$n=this.el,Hn=this.options,zn=Hn.preventOnFilter,Zn=Ce.type,qn=Ce.touches&&Ce.touches[0]||Ce.pointerType&&Ce.pointerType==="touch"&&Ce,Yn=(qn||Ce).target,Jn=Ce.target.shadowRoot&&(Ce.path&&Ce.path[0]||Ce.composedPath&&Ce.composedPath()[0])||Yn,to=Hn.filter;if(_saveInputCheckedState($n),!dragEl&&!(/mousedown|pointerdown/.test(Zn)&&Ce.button!==0||Hn.disabled)&&!Jn.isContentEditable&&!(!this.nativeDraggable&&Safari&&Yn&&Yn.tagName.toUpperCase()==="SELECT")&&(Yn=closest(Yn,Hn.draggable,$n,!1),!(Yn&&Yn.animated)&&lastDownEl!==Yn)){if(oldIndex=index(Yn),oldDraggableIndex=index(Yn,Hn.draggable),typeof to=="function"){if(to.call(this,Ce,Yn,this)){_dispatchEvent({sortable:ke,rootEl:Jn,name:"filter",targetEl:Yn,toEl:$n,fromEl:$n}),pluginEvent("filter",ke,{evt:Ce}),zn&&Ce.cancelable&&Ce.preventDefault();return}}else if(to&&(to=to.split(",").some(function(io){if(io=closest(Jn,io.trim(),$n,!1),io)return _dispatchEvent({sortable:ke,rootEl:io,name:"filter",targetEl:Yn,fromEl:$n,toEl:$n}),pluginEvent("filter",ke,{evt:Ce}),!0}),to)){zn&&Ce.cancelable&&Ce.preventDefault();return}Hn.handle&&!closest(Jn,Hn.handle,$n,!1)||this._prepareDragStart(Ce,qn,Yn)}}},_prepareDragStart:function(Ce,ke,$n){var Hn=this,zn=Hn.el,Zn=Hn.options,qn=zn.ownerDocument,Yn;if($n&&!dragEl&&$n.parentNode===zn){var Jn=getRect($n);if(rootEl=zn,dragEl=$n,parentEl=dragEl.parentNode,nextEl=dragEl.nextSibling,lastDownEl=$n,activeGroup=Zn.group,Sortable.dragged=dragEl,tapEvt={target:dragEl,clientX:(ke||Ce).clientX,clientY:(ke||Ce).clientY},tapDistanceLeft=tapEvt.clientX-Jn.left,tapDistanceTop=tapEvt.clientY-Jn.top,this._lastX=(ke||Ce).clientX,this._lastY=(ke||Ce).clientY,dragEl.style["will-change"]="all",Yn=function(){if(pluginEvent("delayEnded",Hn,{evt:Ce}),Sortable.eventCanceled){Hn._onDrop();return}Hn._disableDelayedDragEvents(),!FireFox&&Hn.nativeDraggable&&(dragEl.draggable=!0),Hn._triggerDragStart(Ce,ke),_dispatchEvent({sortable:Hn,name:"choose",originalEvent:Ce}),toggleClass$1(dragEl,Zn.chosenClass,!0)},Zn.ignore.split(",").forEach(function(to){find$1(dragEl,to.trim(),_disableDraggable)}),on$1(qn,"dragover",nearestEmptyInsertDetectEvent),on$1(qn,"mousemove",nearestEmptyInsertDetectEvent),on$1(qn,"touchmove",nearestEmptyInsertDetectEvent),on$1(qn,"mouseup",Hn._onDrop),on$1(qn,"touchend",Hn._onDrop),on$1(qn,"touchcancel",Hn._onDrop),FireFox&&this.nativeDraggable&&(this.options.touchStartThreshold=4,dragEl.draggable=!0),pluginEvent("delayStart",this,{evt:Ce}),Zn.delay&&(!Zn.delayOnTouchOnly||ke)&&(!this.nativeDraggable||!(Edge||IE11OrLess))){if(Sortable.eventCanceled){this._onDrop();return}on$1(qn,"mouseup",Hn._disableDelayedDrag),on$1(qn,"touchend",Hn._disableDelayedDrag),on$1(qn,"touchcancel",Hn._disableDelayedDrag),on$1(qn,"mousemove",Hn._delayedDragTouchMoveHandler),on$1(qn,"touchmove",Hn._delayedDragTouchMoveHandler),Zn.supportPointer&&on$1(qn,"pointermove",Hn._delayedDragTouchMoveHandler),Hn._dragStartTimer=setTimeout(Yn,Zn.delay)}else Yn()}},_delayedDragTouchMoveHandler:function(Ce){var ke=Ce.touches?Ce.touches[0]:Ce;Math.max(Math.abs(ke.clientX-this._lastX),Math.abs(ke.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){dragEl&&_disableDraggable(dragEl),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var Ce=this.el.ownerDocument;off(Ce,"mouseup",this._disableDelayedDrag),off(Ce,"touchend",this._disableDelayedDrag),off(Ce,"touchcancel",this._disableDelayedDrag),off(Ce,"mousemove",this._delayedDragTouchMoveHandler),off(Ce,"touchmove",this._delayedDragTouchMoveHandler),off(Ce,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(Ce,ke){ke=ke||Ce.pointerType=="touch"&&Ce,!this.nativeDraggable||ke?this.options.supportPointer?on$1(document,"pointermove",this._onTouchMove):ke?on$1(document,"touchmove",this._onTouchMove):on$1(document,"mousemove",this._onTouchMove):(on$1(dragEl,"dragend",this),on$1(rootEl,"dragstart",this._onDragStart));try{document.selection?_nextTick(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(Ce,ke){if(awaitingDragStarted=!1,rootEl&&dragEl){pluginEvent("dragStarted",this,{evt:ke}),this.nativeDraggable&&on$1(document,"dragover",_checkOutsideTargetEl);var $n=this.options;!Ce&&toggleClass$1(dragEl,$n.dragClass,!1),toggleClass$1(dragEl,$n.ghostClass,!0),Sortable.active=this,Ce&&this._appendGhost(),_dispatchEvent({sortable:this,name:"start",originalEvent:ke})}else this._nulling()},_emulateDragOver:function(){if(touchEvt){this._lastX=touchEvt.clientX,this._lastY=touchEvt.clientY,_hideGhostForTarget();for(var Ce=document.elementFromPoint(touchEvt.clientX,touchEvt.clientY),ke=Ce;Ce&&Ce.shadowRoot&&(Ce=Ce.shadowRoot.elementFromPoint(touchEvt.clientX,touchEvt.clientY),Ce!==ke);)ke=Ce;if(dragEl.parentNode[expando]._isOutsideThisEl(Ce),ke)do{if(ke[expando]){var $n=void 0;if($n=ke[expando]._onDragOver({clientX:touchEvt.clientX,clientY:touchEvt.clientY,target:Ce,rootEl:ke}),$n&&!this.options.dragoverBubble)break}Ce=ke}while(ke=ke.parentNode);_unhideGhostForTarget()}},_onTouchMove:function(Ce){if(tapEvt){var ke=this.options,$n=ke.fallbackTolerance,Hn=ke.fallbackOffset,zn=Ce.touches?Ce.touches[0]:Ce,Zn=ghostEl&&matrix(ghostEl,!0),qn=ghostEl&&Zn&&Zn.a,Yn=ghostEl&&Zn&&Zn.d,Jn=PositionGhostAbsolutely&&ghostRelativeParent&&getRelativeScrollOffset(ghostRelativeParent),to=(zn.clientX-tapEvt.clientX+Hn.x)/(qn||1)+(Jn?Jn[0]-ghostRelativeParentInitialScroll[0]:0)/(qn||1),io=(zn.clientY-tapEvt.clientY+Hn.y)/(Yn||1)+(Jn?Jn[1]-ghostRelativeParentInitialScroll[1]:0)/(Yn||1);if(!Sortable.active&&!awaitingDragStarted){if($n&&Math.max(Math.abs(zn.clientX-this._lastX),Math.abs(zn.clientY-this._lastY))<$n)return;this._onDragStart(Ce,!0)}if(ghostEl){Zn?(Zn.e+=to-(lastDx||0),Zn.f+=io-(lastDy||0)):Zn={a:1,b:0,c:0,d:1,e:to,f:io};var uo="matrix(".concat(Zn.a,",").concat(Zn.b,",").concat(Zn.c,",").concat(Zn.d,",").concat(Zn.e,",").concat(Zn.f,")");css$1(ghostEl,"webkitTransform",uo),css$1(ghostEl,"mozTransform",uo),css$1(ghostEl,"msTransform",uo),css$1(ghostEl,"transform",uo),lastDx=to,lastDy=io,touchEvt=zn}Ce.cancelable&&Ce.preventDefault()}},_appendGhost:function(){if(!ghostEl){var Ce=this.options.fallbackOnBody?document.body:rootEl,ke=getRect(dragEl,!0,PositionGhostAbsolutely,!0,Ce),$n=this.options;if(PositionGhostAbsolutely){for(ghostRelativeParent=Ce;css$1(ghostRelativeParent,"position")==="static"&&css$1(ghostRelativeParent,"transform")==="none"&&ghostRelativeParent!==document;)ghostRelativeParent=ghostRelativeParent.parentNode;ghostRelativeParent!==document.body&&ghostRelativeParent!==document.documentElement?(ghostRelativeParent===document&&(ghostRelativeParent=getWindowScrollingElement()),ke.top+=ghostRelativeParent.scrollTop,ke.left+=ghostRelativeParent.scrollLeft):ghostRelativeParent=getWindowScrollingElement(),ghostRelativeParentInitialScroll=getRelativeScrollOffset(ghostRelativeParent)}ghostEl=dragEl.cloneNode(!0),toggleClass$1(ghostEl,$n.ghostClass,!1),toggleClass$1(ghostEl,$n.fallbackClass,!0),toggleClass$1(ghostEl,$n.dragClass,!0),css$1(ghostEl,"transition",""),css$1(ghostEl,"transform",""),css$1(ghostEl,"box-sizing","border-box"),css$1(ghostEl,"margin",0),css$1(ghostEl,"top",ke.top),css$1(ghostEl,"left",ke.left),css$1(ghostEl,"width",ke.width),css$1(ghostEl,"height",ke.height),css$1(ghostEl,"opacity","0.8"),css$1(ghostEl,"position",PositionGhostAbsolutely?"absolute":"fixed"),css$1(ghostEl,"zIndex","100000"),css$1(ghostEl,"pointerEvents","none"),Sortable.ghost=ghostEl,Ce.appendChild(ghostEl),css$1(ghostEl,"transform-origin",tapDistanceLeft/parseInt(ghostEl.style.width)*100+"% "+tapDistanceTop/parseInt(ghostEl.style.height)*100+"%")}},_onDragStart:function(Ce,ke){var $n=this,Hn=Ce.dataTransfer,zn=$n.options;if(pluginEvent("dragStart",this,{evt:Ce}),Sortable.eventCanceled){this._onDrop();return}pluginEvent("setupClone",this),Sortable.eventCanceled||(cloneEl=clone(dragEl),cloneEl.removeAttribute("id"),cloneEl.draggable=!1,cloneEl.style["will-change"]="",this._hideClone(),toggleClass$1(cloneEl,this.options.chosenClass,!1),Sortable.clone=cloneEl),$n.cloneId=_nextTick(function(){pluginEvent("clone",$n),!Sortable.eventCanceled&&($n.options.removeCloneOnHide||rootEl.insertBefore(cloneEl,dragEl),$n._hideClone(),_dispatchEvent({sortable:$n,name:"clone"}))}),!ke&&toggleClass$1(dragEl,zn.dragClass,!0),ke?(ignoreNextClick=!0,$n._loopId=setInterval($n._emulateDragOver,50)):(off(document,"mouseup",$n._onDrop),off(document,"touchend",$n._onDrop),off(document,"touchcancel",$n._onDrop),Hn&&(Hn.effectAllowed="move",zn.setData&&zn.setData.call($n,Hn,dragEl)),on$1(document,"drop",$n),css$1(dragEl,"transform","translateZ(0)")),awaitingDragStarted=!0,$n._dragStartId=_nextTick($n._dragStarted.bind($n,ke,Ce)),on$1(document,"selectstart",$n),moved=!0,Safari&&css$1(document.body,"user-select","none")},_onDragOver:function(Ce){var ke=this.el,$n=Ce.target,Hn,zn,Zn,qn=this.options,Yn=qn.group,Jn=Sortable.active,to=activeGroup===Yn,io=qn.sort,uo=putSortable||Jn,mo,bo=this,Oo=!1;if(_silent)return;function wo(xs,Qr){pluginEvent(xs,bo,_objectSpread2({evt:Ce,isOwner:to,axis:mo?"vertical":"horizontal",revert:Zn,dragRect:Hn,targetRect:zn,canSort:io,fromSortable:uo,target:$n,completed:Do,onMove:function(ws,Fs){return _onMove(rootEl,ke,dragEl,Hn,ws,getRect(ws),Ce,Fs)},changed:xo},Qr))}function $o(){wo("dragOverAnimationCapture"),bo.captureAnimationState(),bo!==uo&&uo.captureAnimationState()}function Do(xs){return wo("dragOverCompleted",{insertion:xs}),xs&&(to?Jn._hideClone():Jn._showClone(bo),bo!==uo&&(toggleClass$1(dragEl,putSortable?putSortable.options.ghostClass:Jn.options.ghostClass,!1),toggleClass$1(dragEl,qn.ghostClass,!0)),putSortable!==bo&&bo!==Sortable.active?putSortable=bo:bo===Sortable.active&&putSortable&&(putSortable=null),uo===bo&&(bo._ignoreWhileAnimating=$n),bo.animateAll(function(){wo("dragOverAnimationComplete"),bo._ignoreWhileAnimating=null}),bo!==uo&&(uo.animateAll(),uo._ignoreWhileAnimating=null)),($n===dragEl&&!dragEl.animated||$n===ke&&!$n.animated)&&(lastTarget=null),!qn.dragoverBubble&&!Ce.rootEl&&$n!==document&&(dragEl.parentNode[expando]._isOutsideThisEl(Ce.target),!xs&&nearestEmptyInsertDetectEvent(Ce)),!qn.dragoverBubble&&Ce.stopPropagation&&Ce.stopPropagation(),Oo=!0}function xo(){newIndex=index(dragEl),newDraggableIndex=index(dragEl,qn.draggable),_dispatchEvent({sortable:bo,name:"change",toEl:ke,newIndex,newDraggableIndex,originalEvent:Ce})}if(Ce.preventDefault!==void 0&&Ce.cancelable&&Ce.preventDefault(),$n=closest($n,qn.draggable,ke,!0),wo("dragOver"),Sortable.eventCanceled)return Oo;if(dragEl.contains(Ce.target)||$n.animated&&$n.animatingX&&$n.animatingY||bo._ignoreWhileAnimating===$n)return Do(!1);if(ignoreNextClick=!1,Jn&&!qn.disabled&&(to?io||(Zn=parentEl!==rootEl):putSortable===this||(this.lastPutMode=activeGroup.checkPull(this,Jn,dragEl,Ce))&&Yn.checkPut(this,Jn,dragEl,Ce))){if(mo=this._getDirection(Ce,$n)==="vertical",Hn=getRect(dragEl),wo("dragOverValid"),Sortable.eventCanceled)return Oo;if(Zn)return parentEl=rootEl,$o(),this._hideClone(),wo("revert"),Sortable.eventCanceled||(nextEl?rootEl.insertBefore(dragEl,nextEl):rootEl.appendChild(dragEl)),Do(!0);var Bo=lastChild(ke,qn.draggable);if(!Bo||_ghostIsLast(Ce,mo,this)&&!Bo.animated){if(Bo===dragEl)return Do(!1);if(Bo&&ke===Ce.target&&($n=Bo),$n&&(zn=getRect($n)),_onMove(rootEl,ke,dragEl,Hn,$n,zn,Ce,!!$n)!==!1)return $o(),Bo&&Bo.nextSibling?ke.insertBefore(dragEl,Bo.nextSibling):ke.appendChild(dragEl),parentEl=ke,xo(),Do(!0)}else if(Bo&&_ghostIsFirst(Ce,mo,this)){var Vo=getChild(ke,0,qn,!0);if(Vo===dragEl)return Do(!1);if($n=Vo,zn=getRect($n),_onMove(rootEl,ke,dragEl,Hn,$n,zn,Ce,!1)!==!1)return $o(),ke.insertBefore(dragEl,Vo),parentEl=ke,xo(),Do(!0)}else if($n.parentNode===ke){zn=getRect($n);var Ko=0,Mo,es=dragEl.parentNode!==ke,ls=!_dragElInRowColumn(dragEl.animated&&dragEl.toRect||Hn,$n.animated&&$n.toRect||zn,mo),ps=mo?"top":"left",rs=isScrolledPast($n,"top","top")||isScrolledPast(dragEl,"top","top"),Yo=rs?rs.scrollTop:void 0;lastTarget!==$n&&(Mo=zn[ps],pastFirstInvertThresh=!1,isCircumstantialInvert=!ls&&qn.invertSwap||es),Ko=_getSwapDirection(Ce,$n,zn,mo,ls?1:qn.swapThreshold,qn.invertedSwapThreshold==null?qn.swapThreshold:qn.invertedSwapThreshold,isCircumstantialInvert,lastTarget===$n);var Ys;if(Ko!==0){var sr=index(dragEl);do sr-=Ko,Ys=parentEl.children[sr];while(Ys&&(css$1(Ys,"display")==="none"||Ys===ghostEl))}if(Ko===0||Ys===$n)return Do(!1);lastTarget=$n,lastDirection=Ko;var Js=$n.nextElementSibling,ko=!1;ko=Ko===1;var gs=_onMove(rootEl,ke,dragEl,Hn,$n,zn,Ce,ko);if(gs!==!1)return(gs===1||gs===-1)&&(ko=gs===1),_silent=!0,setTimeout(_unsilent,30),$o(),ko&&!Js?ke.appendChild(dragEl):$n.parentNode.insertBefore(dragEl,ko?Js:$n),rs&&scrollBy(rs,0,Yo-rs.scrollTop),parentEl=dragEl.parentNode,Mo!==void 0&&!isCircumstantialInvert&&(targetMoveDistance=Math.abs(Mo-getRect($n)[ps])),xo(),Do(!0)}if(ke.contains(dragEl))return Do(!1)}return!1},_ignoreWhileAnimating:null,_offMoveEvents:function(){off(document,"mousemove",this._onTouchMove),off(document,"touchmove",this._onTouchMove),off(document,"pointermove",this._onTouchMove),off(document,"dragover",nearestEmptyInsertDetectEvent),off(document,"mousemove",nearestEmptyInsertDetectEvent),off(document,"touchmove",nearestEmptyInsertDetectEvent)},_offUpEvents:function(){var Ce=this.el.ownerDocument;off(Ce,"mouseup",this._onDrop),off(Ce,"touchend",this._onDrop),off(Ce,"pointerup",this._onDrop),off(Ce,"touchcancel",this._onDrop),off(document,"selectstart",this)},_onDrop:function(Ce){var ke=this.el,$n=this.options;if(newIndex=index(dragEl),newDraggableIndex=index(dragEl,$n.draggable),pluginEvent("drop",this,{evt:Ce}),parentEl=dragEl&&dragEl.parentNode,newIndex=index(dragEl),newDraggableIndex=index(dragEl,$n.draggable),Sortable.eventCanceled){this._nulling();return}awaitingDragStarted=!1,isCircumstantialInvert=!1,pastFirstInvertThresh=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),_cancelNextTick(this.cloneId),_cancelNextTick(this._dragStartId),this.nativeDraggable&&(off(document,"drop",this),off(ke,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Safari&&css$1(document.body,"user-select",""),css$1(dragEl,"transform",""),Ce&&(moved&&(Ce.cancelable&&Ce.preventDefault(),!$n.dropBubble&&Ce.stopPropagation()),ghostEl&&ghostEl.parentNode&&ghostEl.parentNode.removeChild(ghostEl),(rootEl===parentEl||putSortable&&putSortable.lastPutMode!=="clone")&&cloneEl&&cloneEl.parentNode&&cloneEl.parentNode.removeChild(cloneEl),dragEl&&(this.nativeDraggable&&off(dragEl,"dragend",this),_disableDraggable(dragEl),dragEl.style["will-change"]="",moved&&!awaitingDragStarted&&toggleClass$1(dragEl,putSortable?putSortable.options.ghostClass:this.options.ghostClass,!1),toggleClass$1(dragEl,this.options.chosenClass,!1),_dispatchEvent({sortable:this,name:"unchoose",toEl:parentEl,newIndex:null,newDraggableIndex:null,originalEvent:Ce}),rootEl!==parentEl?(newIndex>=0&&(_dispatchEvent({rootEl:parentEl,name:"add",toEl:parentEl,fromEl:rootEl,originalEvent:Ce}),_dispatchEvent({sortable:this,name:"remove",toEl:parentEl,originalEvent:Ce}),_dispatchEvent({rootEl:parentEl,name:"sort",toEl:parentEl,fromEl:rootEl,originalEvent:Ce}),_dispatchEvent({sortable:this,name:"sort",toEl:parentEl,originalEvent:Ce})),putSortable&&putSortable.save()):newIndex!==oldIndex&&newIndex>=0&&(_dispatchEvent({sortable:this,name:"update",toEl:parentEl,originalEvent:Ce}),_dispatchEvent({sortable:this,name:"sort",toEl:parentEl,originalEvent:Ce})),Sortable.active&&((newIndex==null||newIndex===-1)&&(newIndex=oldIndex,newDraggableIndex=oldDraggableIndex),_dispatchEvent({sortable:this,name:"end",toEl:parentEl,originalEvent:Ce}),this.save()))),this._nulling()},_nulling:function(){pluginEvent("nulling",this),rootEl=dragEl=parentEl=ghostEl=nextEl=cloneEl=lastDownEl=cloneHidden=tapEvt=touchEvt=moved=newIndex=newDraggableIndex=oldIndex=oldDraggableIndex=lastTarget=lastDirection=putSortable=activeGroup=Sortable.dragged=Sortable.ghost=Sortable.clone=Sortable.active=null,savedInputChecked.forEach(function(Ce){Ce.checked=!0}),savedInputChecked.length=lastDx=lastDy=0},handleEvent:function(Ce){switch(Ce.type){case"drop":case"dragend":this._onDrop(Ce);break;case"dragenter":case"dragover":dragEl&&(this._onDragOver(Ce),_globalDragOver(Ce));break;case"selectstart":Ce.preventDefault();break}},toArray:function(){for(var Ce=[],ke,$n=this.el.children,Hn=0,zn=$n.length,Zn=this.options;HnHn.right+zn||_n.clientY>$n.bottom&&_n.clientX>$n.left:_n.clientY>Hn.bottom+zn||_n.clientX>$n.right&&_n.clientY>$n.top}function _getSwapDirection(_n,Ce,ke,$n,Hn,zn,Zn,qn){var Yn=$n?_n.clientY:_n.clientX,Jn=$n?ke.height:ke.width,to=$n?ke.top:ke.left,io=$n?ke.bottom:ke.right,uo=!1;if(!Zn){if(qn&&targetMoveDistanceto+Jn*zn/2:Ynio-targetMoveDistance)return-lastDirection}else if(Yn>to+Jn*(1-Hn)/2&&Ynio-Jn*zn/2)?Yn>to+Jn/2?1:-1:0}function _getInsertDirection(_n){return index(dragEl){Zn[to]=null}),check_outros(),ke=Zn[Ce],ke?ke.p(Yn,Jn):(ke=Zn[Ce]=zn[Ce](Yn),ke.c()),transition_in(ke,1),ke.m($n.parentNode,$n))},i(Yn){Hn||(transition_in(ke),Hn=!0)},o(Yn){transition_out(ke),Hn=!1},d(Yn){Yn&&detach($n),Zn[Ce].d(Yn)}}}function instance$y(_n,Ce,ke){let{$$slots:$n={},$$scope:Hn}=Ce,{sortableClass:zn=""}=Ce,{isTable:Zn=!1}=Ce,{sortableInstance:qn}=Ce;const Yn=createEventDispatcher();let Jn;onMount(()=>{let uo={animation:150,easing:"cubic-bezier(1, 0, 0, 1)",direction:"vertical",onUpdate(mo){Yn("update",{source:mo.oldIndex,target:mo.newIndex})}};ke(3,qn=Sortable.create(Jn,uo))});function to(uo){binding_callbacks[uo?"unshift":"push"](()=>{Jn=uo,ke(2,Jn)})}function io(uo){binding_callbacks[uo?"unshift":"push"](()=>{Jn=uo,ke(2,Jn)})}return _n.$$set=uo=>{"sortableClass"in uo&&ke(0,zn=uo.sortableClass),"isTable"in uo&&ke(1,Zn=uo.isTable),"sortableInstance"in uo&&ke(3,qn=uo.sortableInstance),"$$scope"in uo&&ke(4,Hn=uo.$$scope)},[zn,Zn,Jn,qn,Hn,$n,to,io]}class Sortable_1 extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$y,create_fragment$y,safe_not_equal,{sortableClass:0,isTable:1,sortableInstance:3})}}function create_if_block_2$6(_n){let Ce,ke,$n;return ke=new Preview({props:{record:_n[5],size:"small"}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),attr(Ce,"class","image")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p:noop,i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_if_block_1$f(_n){let Ce,ke;return Ce=new Status({props:{status:_n[0].status}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.status=$n[0].status),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block$q(_n){let Ce,ke,$n,Hn,zn,Zn;return $n=new Icon({props:{icon:"trash-can"}}),{c(){Ce=element("div"),ke=element("button"),create_component($n.$$.fragment),attr(ke,"class","button"),attr(Ce,"class","reference-action")},m(qn,Yn){insert$1(qn,Ce,Yn),append(Ce,ke),mount_component($n,ke,null),Hn=!0,zn||(Zn=listen(ke,"click",_n[6]),zn=!0)},p:noop,i(qn){Hn||(transition_in($n.$$.fragment,qn),Hn=!0)},o(qn){transition_out($n.$$.fragment,qn),Hn=!1},d(qn){qn&&detach(Ce),destroy_component($n),zn=!1,Zn()}}}function create_fragment$x(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo=_n[3].label+"",mo,bo,Oo,wo,$o=_n[5]&&create_if_block_2$6(_n),Do=_n[0].status==="draft"&&create_if_block_1$f(_n),xo=_n[1]&&create_if_block$q(_n);return{c(){Ce=element("div"),ke=element("div"),$o&&$o.c(),$n=space$3(),Hn=element("div"),zn=element("div"),Zn=element("a"),qn=text(_n[4]),Jn=space$3(),to=element("small"),io=text("from "),mo=text(uo),bo=space$3(),Do&&Do.c(),Oo=space$3(),xo&&xo.c(),attr(Zn,"class","record-title"),attr(Zn,"href",Yn=_n[2].lucentUrl+"/records/"+_n[0].id),attr(to,"class","d-block"),attr(Hn,"class","title"),set_style(ke,"display","flex"),set_style(ke,"align-items","center"),set_style(ke,"gap","10px"),attr(Ce,"class","preview-reference")},m(Bo,Vo){insert$1(Bo,Ce,Vo),append(Ce,ke),$o&&$o.m(ke,null),append(ke,$n),append(ke,Hn),append(Hn,zn),append(zn,Zn),append(Zn,qn),append(zn,Jn),append(zn,to),append(to,io),append(to,mo),append(to,bo),Do&&Do.m(to,null),append(Ce,Oo),xo&&xo.m(Ce,null),wo=!0},p(Bo,[Vo]){Bo[5]&&$o.p(Bo,Vo),(!wo||Vo&1&&Yn!==(Yn=Bo[2].lucentUrl+"/records/"+Bo[0].id))&&attr(Zn,"href",Yn),Bo[0].status==="draft"?Do?(Do.p(Bo,Vo),Vo&1&&transition_in(Do,1)):(Do=create_if_block_1$f(Bo),Do.c(),transition_in(Do,1),Do.m(to,null)):Do&&(group_outros(),transition_out(Do,1,1,()=>{Do=null}),check_outros()),Bo[1]?xo?(xo.p(Bo,Vo),Vo&2&&transition_in(xo,1)):(xo=create_if_block$q(Bo),xo.c(),transition_in(xo,1),xo.m(Ce,null)):xo&&(group_outros(),transition_out(xo,1,1,()=>{xo=null}),check_outros())},i(Bo){wo||(transition_in($o),transition_in(Do),transition_in(xo),wo=!0)},o(Bo){transition_out($o),transition_out(Do),transition_out(xo),wo=!1},d(Bo){Bo&&detach(Ce),$o&&$o.d(),Do&&Do.d(),xo&&xo.d()}}}function instance$x(_n,Ce,ke){const $n=createEventDispatcher(),Hn=getContext$1("channel");let{graph:zn}=Ce,{record:Zn}=Ce,{hasDelete:qn=!1}=Ce,Yn=Hn.schemas.find(mo=>mo.name===Zn.schema),Jn=previewTitle(Hn.schemas,Zn);const to=zn.edges.find(mo=>mo.source===Zn.id&&mo.field===Yn.cardImage);let io=zn.records.find(mo=>mo.id===(to==null?void 0:to.target));function uo(mo){mo.preventDefault(),$n("remove",Zn.id)}return _n.$$set=mo=>{"graph"in mo&&ke(7,zn=mo.graph),"record"in mo&&ke(0,Zn=mo.record),"hasDelete"in mo&&ke(1,qn=mo.hasDelete)},[Zn,qn,Hn,Yn,Jn,io,uo,zn]}class PreviewReference extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$x,create_fragment$x,safe_not_equal,{graph:7,record:0,hasDelete:1})}}function get_each_context$b(_n,Ce,ke){const $n=_n.slice();return $n[11]=Ce[ke],$n}function create_if_block_1$e(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[2]),attr(Ce,"class","invalid-feedback d-block mb-3")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&4&&set_data(ke,$n[2])},d($n){$n&&detach(Ce)}}}function create_if_block$p(_n){let Ce,ke;return Ce=new Sortable_1({props:{sortableClass:"row row-cols-3 mt-3",$$slots:{default:[create_default_slot$4]},$$scope:{ctx:_n}}}),Ce.$on("update",_n[5]),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&16387&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_each_block$b(_n,Ce){let ke,$n,Hn,zn;return $n=new PreviewReference({props:{graph:Ce[0],record:Ce[11],hasDelete:!0}}),$n.$on("remove",Ce[4]),{key:_n,first:null,c(){ke=element("div"),create_component($n.$$.fragment),Hn=space$3(),this.first=ke},m(Zn,qn){insert$1(Zn,ke,qn),mount_component($n,ke,null),append(ke,Hn),zn=!0},p(Zn,qn){Ce=Zn;const Yn={};qn&1&&(Yn.graph=Ce[0]),qn&2&&(Yn.record=Ce[11]),$n.$set(Yn)},i(Zn){zn||(transition_in($n.$$.fragment,Zn),zn=!0)},o(Zn){transition_out($n.$$.fragment,Zn),zn=!1},d(Zn){Zn&&detach(ke),destroy_component($n)}}}function create_default_slot$4(_n){let Ce=[],ke=new Map,$n,Hn,zn=ensure_array_like(_n[1]);const Zn=qn=>qn[11].id;for(let qn=0;qn0&&create_if_block$p(_n);return{c(){qn&&qn.c(),Ce=space$3(),ke=element("div"),create_component($n.$$.fragment),Hn=space$3(),Yn&&Yn.c(),zn=empty$1(),attr(ke,"class","inline-card-wrapper")},m(Jn,to){qn&&qn.m(Jn,to),insert$1(Jn,Ce,to),insert$1(Jn,ke,to),mount_component($n,ke,null),insert$1(Jn,Hn,to),Yn&&Yn.m(Jn,to),insert$1(Jn,zn,to),Zn=!0},p(Jn,[to]){Jn[2]?qn?qn.p(Jn,to):(qn=create_if_block_1$e(Jn),qn.c(),qn.m(Ce.parentNode,Ce)):qn&&(qn.d(1),qn=null),Jn[1].length>0?Yn?(Yn.p(Jn,to),to&2&&transition_in(Yn,1)):(Yn=create_if_block$p(Jn),Yn.c(),transition_in(Yn,1),Yn.m(zn.parentNode,zn)):Yn&&(group_outros(),transition_out(Yn,1,1,()=>{Yn=null}),check_outros())},i(Jn){Zn||(transition_in($n.$$.fragment,Jn),transition_in(Yn),Zn=!0)},o(Jn){transition_out($n.$$.fragment,Jn),transition_out(Yn),Zn=!1},d(Jn){Jn&&(detach(Ce),detach(ke),detach(Hn),detach(zn)),qn&&qn.d(Jn),destroy_component($n),Yn&&Yn.d(Jn)}}}function instance$w(_n,Ce,ke){let $n,Hn;const zn=getContext$1("channel");let{record:Zn}=Ce,{field:qn}=Ce,{graph:Yn}=Ce,{validationErrors:Jn}=Ce,to=zn.schemas.filter(bo=>qn.collections.includes(bo.name));function io(bo){bo.preventDefault(),ke(0,Yn.edges=Yn.edges.filter(Oo=>!(Oo.target===bo.detail&&Oo.field===qn.name)),Yn)}function uo(bo){ke(0,Yn.edges=sortByField(bo.detail.source,bo.detail.target,Yn.edges,qn.name,Hn),Yn)}function mo(bo){bo.preventDefault(),ke(0,Yn=insertEdges(Yn,Zn,bo.detail.records,qn.name,bo.detail.action))}return _n.$$set=bo=>{"record"in bo&&ke(7,Zn=bo.record),"field"in bo&&ke(8,qn=bo.field),"graph"in bo&&ke(0,Yn=bo.graph),"validationErrors"in bo&&ke(9,Jn=bo.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&768&&ke(2,$n=getErrorMessage(Jn,qn.name)),_n.$$.dirty&385&&ke(1,Hn=Yn.edges.filter(bo=>bo.field===qn.name).map(bo=>Yn.records.find(Oo=>Oo.id===bo.target&&Zn.id===bo.source)).filter(bo=>!!(bo!=null&&bo.id))??[])},[Yn,Hn,$n,to,io,uo,mo,Zn,qn,Jn]}class Reference extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$w,create_fragment$w,safe_not_equal,{record:7,field:8,graph:0,validationErrors:9})}}function create_if_block$o(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[4]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&16&&set_data(ke,$n[4])},d($n){$n&&detach(Ce)}}}function create_fragment$v(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io=_n[4]&&create_if_block$o(_n);return{c(){Ce=element("div"),ke=element("div"),$n=element("input"),zn=space$3(),Zn=element("input"),Yn=space$3(),io&&io.c(),attr($n,"type","color"),attr($n,"id",_n[3]),set_style($n,"border","none"),set_style($n,"background","transparent"),set_style($n,"padding","0"),set_style($n,"width","64px"),$n.disabled=Hn=_n[1].readonly&&!_n[2],attr(Zn,"type","text"),attr(Zn,"id",_n[3]),attr(Zn,"class","form-control"),Zn.readOnly=qn=_n[1].readonly&&!_n[2],toggle_class(Zn,"is-invalid",_n[4]),set_style(ke,"display","flex"),set_style(ke,"align-items","center"),set_style(ke,"gap","10px"),attr(Ce,"class","mb-0")},m(uo,mo){insert$1(uo,Ce,mo),append(Ce,ke),append(ke,$n),set_input_value($n,_n[0]),append(ke,zn),append(ke,Zn),set_input_value(Zn,_n[0]),append(Ce,Yn),io&&io.m(Ce,null),Jn||(to=[listen($n,"input",_n[6]),listen(Zn,"input",_n[7])],Jn=!0)},p(uo,[mo]){mo&8&&attr($n,"id",uo[3]),mo&6&&Hn!==(Hn=uo[1].readonly&&!uo[2])&&($n.disabled=Hn),mo&1&&set_input_value($n,uo[0]),mo&8&&attr(Zn,"id",uo[3]),mo&6&&qn!==(qn=uo[1].readonly&&!uo[2])&&(Zn.readOnly=qn),mo&1&&Zn.value!==uo[0]&&set_input_value(Zn,uo[0]),mo&16&&toggle_class(Zn,"is-invalid",uo[4]),uo[4]?io?io.p(uo,mo):(io=create_if_block$o(uo),io.c(),io.m(Ce,null)):io&&(io.d(1),io=null)},i:noop,o:noop,d(uo){uo&&detach(Ce),io&&io.d(),Jn=!1,run_all(to)}}}function instance$v(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce,{id:Yn}=Ce;function Jn(){zn=this.value,ke(0,zn)}function to(){zn=this.value,ke(0,zn)}return _n.$$set=io=>{"field"in io&&ke(1,Hn=io.field),"value"in io&&ke(0,zn=io.value),"isCreateMode"in io&&ke(2,Zn=io.isCreateMode),"validationErrors"in io&&ke(5,qn=io.validationErrors),"id"in io&&ke(3,Yn=io.id)},_n.$$.update=()=>{_n.$$.dirty&34&&ke(4,$n=getErrorMessage(qn,Hn.name))},[zn,Hn,Zn,Yn,$n,qn,Jn,to]}class Color extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$v,create_fragment$v,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}}function create_if_block_1$d(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io;return Jn=init_binding_group(_n[7][0]),{c(){Ce=element("div"),ke=element("input"),zn=space$3(),Zn=element("label"),qn=text("Don't Know"),attr(ke,"class","form-check-input"),attr(ke,"id",$n=_n[1]+"-3"),attr(ke,"type","radio"),ke.__value=null,set_input_value(ke,ke.__value),ke.disabled=Hn=_n[2].readonly&&!_n[3],toggle_class(ke,"is-invalid",_n[4]),attr(Zn,"class","form-check-label"),attr(Zn,"for",Yn=_n[1]+"-3"),attr(Ce,"class","form-check form-check-inline"),Jn.p(ke)},m(uo,mo){insert$1(uo,Ce,mo),append(Ce,ke),ke.checked=ke.__value===_n[0],append(Ce,zn),append(Ce,Zn),append(Zn,qn),to||(io=listen(ke,"change",_n[9]),to=!0)},p(uo,mo){mo&2&&$n!==($n=uo[1]+"-3")&&attr(ke,"id",$n),mo&12&&Hn!==(Hn=uo[2].readonly&&!uo[3])&&(ke.disabled=Hn),mo&1&&(ke.checked=ke.__value===uo[0]),mo&16&&toggle_class(ke,"is-invalid",uo[4]),mo&2&&Yn!==(Yn=uo[1]+"-3")&&attr(Zn,"for",Yn)},d(uo){uo&&detach(Ce),Jn.r(),to=!1,io()}}}function create_if_block$n(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[4]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&16&&set_data(ke,$n[4])},d($n){$n&&detach(Ce)}}}function create_fragment$u(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo,Ko,Mo,es,ls=_n[2].nullable&&create_if_block_1$d(_n),ps=_n[4]&&create_if_block$n(_n);return Ko=init_binding_group(_n[7][0]),{c(){Ce=element("div"),ke=element("div"),$n=element("input"),Zn=space$3(),qn=element("label"),Yn=text("Yes"),to=space$3(),io=element("div"),uo=element("input"),Oo=space$3(),wo=element("label"),$o=text("No"),xo=space$3(),ls&&ls.c(),Bo=space$3(),ps&&ps.c(),Vo=empty$1(),attr($n,"class","form-check-input"),attr($n,"type","radio"),attr($n,"id",Hn=_n[1]+"-1"),$n.__value=!0,set_input_value($n,$n.__value),$n.disabled=zn=_n[2].readonly&&!_n[3],toggle_class($n,"is-invalid",_n[4]),attr(qn,"class","form-check-label"),attr(qn,"for",Jn=_n[1]+"-1"),attr(ke,"class","form-check form-check-inline"),attr(uo,"class","form-check-input"),attr(uo,"type","radio"),attr(uo,"id",mo=_n[1]+"-2"),uo.__value=!1,set_input_value(uo,uo.__value),uo.disabled=bo=_n[2].readonly&&!_n[3],toggle_class(uo,"is-invalid",_n[4]),attr(wo,"class","form-check-label"),attr(wo,"for",Do=_n[1]+"-2"),attr(io,"class","form-check form-check-inline"),attr(Ce,"class","field-checkbox"),Ko.p($n,uo)},m(rs,Yo){insert$1(rs,Ce,Yo),append(Ce,ke),append(ke,$n),$n.checked=$n.__value===_n[0],append(ke,Zn),append(ke,qn),append(qn,Yn),append(Ce,to),append(Ce,io),append(io,uo),uo.checked=uo.__value===_n[0],append(io,Oo),append(io,wo),append(wo,$o),append(Ce,xo),ls&&ls.m(Ce,null),insert$1(rs,Bo,Yo),ps&&ps.m(rs,Yo),insert$1(rs,Vo,Yo),Mo||(es=[listen($n,"change",_n[6]),listen(uo,"change",_n[8])],Mo=!0)},p(rs,[Yo]){Yo&2&&Hn!==(Hn=rs[1]+"-1")&&attr($n,"id",Hn),Yo&12&&zn!==(zn=rs[2].readonly&&!rs[3])&&($n.disabled=zn),Yo&1&&($n.checked=$n.__value===rs[0]),Yo&16&&toggle_class($n,"is-invalid",rs[4]),Yo&2&&Jn!==(Jn=rs[1]+"-1")&&attr(qn,"for",Jn),Yo&2&&mo!==(mo=rs[1]+"-2")&&attr(uo,"id",mo),Yo&12&&bo!==(bo=rs[2].readonly&&!rs[3])&&(uo.disabled=bo),Yo&1&&(uo.checked=uo.__value===rs[0]),Yo&16&&toggle_class(uo,"is-invalid",rs[4]),Yo&2&&Do!==(Do=rs[1]+"-2")&&attr(wo,"for",Do),rs[2].nullable?ls?ls.p(rs,Yo):(ls=create_if_block_1$d(rs),ls.c(),ls.m(Ce,null)):ls&&(ls.d(1),ls=null),rs[4]?ps?ps.p(rs,Yo):(ps=create_if_block$n(rs),ps.c(),ps.m(Vo.parentNode,Vo)):ps&&(ps.d(1),ps=null)},i:noop,o:noop,d(rs){rs&&(detach(Ce),detach(Bo),detach(Vo)),ls&&ls.d(),ps&&ps.d(rs),Ko.r(),Mo=!1,run_all(es)}}}function instance$u(_n,Ce,ke){let $n,{id:Hn}=Ce,{field:zn}=Ce,{value:Zn}=Ce,{isCreateMode:qn}=Ce,{validationErrors:Yn}=Ce;const Jn=[[]];function to(){Zn=this.__value,ke(0,Zn)}function io(){Zn=this.__value,ke(0,Zn)}function uo(){Zn=this.__value,ke(0,Zn)}return _n.$$set=mo=>{"id"in mo&&ke(1,Hn=mo.id),"field"in mo&&ke(2,zn=mo.field),"value"in mo&&ke(0,Zn=mo.value),"isCreateMode"in mo&&ke(3,qn=mo.isCreateMode),"validationErrors"in mo&&ke(5,Yn=mo.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&36&&ke(4,$n=getErrorMessage(Yn,zn.name))},[Zn,Hn,zn,qn,$n,Yn,to,Jn,io,uo]}class Checkbox extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$u,create_fragment$u,safe_not_equal,{id:1,field:2,value:0,isCreateMode:3,validationErrors:5})}}function create_if_block$m(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[4]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&16&&set_data(ke,$n[4])},d($n){$n&&detach(Ce)}}}function create_fragment$t(_n){let Ce,ke,$n,Hn,zn,Zn,qn=_n[4]&&create_if_block$m(_n);return{c(){Ce=element("div"),ke=element("input"),Hn=space$3(),qn&&qn.c(),attr(ke,"type","number"),attr(ke,"id",_n[3]),attr(ke,"class","form-control"),attr(ke,"autocomplete","off"),ke.readOnly=$n=_n[1].readonly&&!_n[2],toggle_class(ke,"is-invalid",_n[4]),attr(Ce,"class","mb-0")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,ke),set_input_value(ke,_n[0]),append(Ce,Hn),qn&&qn.m(Ce,null),zn||(Zn=[listen(ke,"change",_n[5]),listen(ke,"input",_n[7])],zn=!0)},p(Yn,[Jn]){Jn&8&&attr(ke,"id",Yn[3]),Jn&6&&$n!==($n=Yn[1].readonly&&!Yn[2])&&(ke.readOnly=$n),Jn&1&&to_number(ke.value)!==Yn[0]&&set_input_value(ke,Yn[0]),Jn&16&&toggle_class(ke,"is-invalid",Yn[4]),Yn[4]?qn?qn.p(Yn,Jn):(qn=create_if_block$m(Yn),qn.c(),qn.m(Ce,null)):qn&&(qn.d(1),qn=null)},i:noop,o:noop,d(Yn){Yn&&detach(Ce),qn&&qn.d(),zn=!1,run_all(Zn)}}}function instance$t(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{validationErrors:Zn}=Ce,{isCreateMode:qn}=Ce,{id:Yn}=Ce;function Jn(uo){const mo=uo.currentTarget.value,bo=to(mo);ke(0,zn=isNaN(bo)?null:bo)}function to(uo){return parseFloat(uo).toFixed(Hn.decimals)}function io(){zn=to_number(this.value),ke(0,zn)}return _n.$$set=uo=>{"field"in uo&&ke(1,Hn=uo.field),"value"in uo&&ke(0,zn=uo.value),"validationErrors"in uo&&ke(6,Zn=uo.validationErrors),"isCreateMode"in uo&&ke(2,qn=uo.isCreateMode),"id"in uo&&ke(3,Yn=uo.id)},_n.$$.update=()=>{_n.$$.dirty&66&&ke(4,$n=getErrorMessage(Zn,Hn.name))},[zn,Hn,qn,Yn,$n,Jn,Zn,io]}let Number$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$t,create_fragment$t,safe_not_equal,{field:1,value:0,validationErrors:6,isCreateMode:2,id:3})}};function create_if_block$l(_n){let Ce,ke=_n[1].help+"",$n;return{c(){Ce=element("small"),$n=text(ke),attr(Ce,"class","text-primary opacity-50")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&2&&ke!==(ke=Hn[1].help+"")&&set_data($n,ke)},d(Hn){Hn&&detach(Ce)}}}function create_fragment$s(_n){let Ce,ke,$n,Hn=_n[1].label+"",zn,Zn,qn,Yn,Jn=_n[1].name+"",to,io,uo,mo,bo,Oo,wo,$o=_n[1].help&&create_if_block$l(_n);return{c(){Ce=element("div"),ke=element("div"),$n=element("label"),zn=text(Hn),Zn=space$3(),qn=element("a"),Yn=element("code"),to=text(Jn),uo=space$3(),mo=element("input"),bo=space$3(),$o&&$o.c(),attr($n,"for",_n[4]),attr($n,"class","form-label"),attr(Yn,"class","text-primary opacity-50"),attr(qn,"class","text-decoration-none"),attr(qn,"href",io=_n[3]+"/schemas/"+_n[2].name+"/fields/edit/"+_n[1].name),attr(ke,"class","d-flex justify-content-between"),attr(mo,"type","url"),attr(mo,"id",_n[4]),attr(mo,"class","form-control"),attr(mo,"placeholder","https://www.example.com"),attr(Ce,"class","mb-0")},m(Do,xo){insert$1(Do,Ce,xo),append(Ce,ke),append(ke,$n),append($n,zn),append(ke,Zn),append(ke,qn),append(qn,Yn),append(Yn,to),append(Ce,uo),append(Ce,mo),set_input_value(mo,_n[0]),append(Ce,bo),$o&&$o.m(Ce,null),Oo||(wo=listen(mo,"input",_n[5]),Oo=!0)},p(Do,[xo]){xo&2&&Hn!==(Hn=Do[1].label+"")&&set_data(zn,Hn),xo&2&&Jn!==(Jn=Do[1].name+"")&&set_data(to,Jn),xo&6&&io!==(io=Do[3]+"/schemas/"+Do[2].name+"/fields/edit/"+Do[1].name)&&attr(qn,"href",io),xo&1&&mo.value!==Do[0]&&set_input_value(mo,Do[0]),Do[1].help?$o?$o.p(Do,xo):($o=create_if_block$l(Do),$o.c(),$o.m(Ce,null)):$o&&($o.d(1),$o=null)},i:noop,o:noop,d(Do){Do&&detach(Ce),$o&&$o.d(),Oo=!1,wo()}}}function instance$s(_n,Ce,ke){const $n=getContext$1("channelurl");let{field:Hn}=Ce,{value:zn}=Ce,{schema:Zn}=Ce,qn=lodashExports.uniqueId();function Yn(){zn=this.value,ke(0,zn)}return _n.$$set=Jn=>{"field"in Jn&&ke(1,Hn=Jn.field),"value"in Jn&&ke(0,zn=Jn.value),"schema"in Jn&&ke(2,Zn=Jn.schema)},[zn,Hn,Zn,$n,qn,Yn]}class Url extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$s,create_fragment$s,safe_not_equal,{field:1,value:0,schema:2})}}var HOOKS=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],defaults$2={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:typeof window=="object"&&window.navigator.userAgent.indexOf("MSIE")===-1,ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(_n){return typeof console<"u"&&console.warn(_n)},getWeek:function(_n){var Ce=new Date(_n.getTime());Ce.setHours(0,0,0,0),Ce.setDate(Ce.getDate()+3-(Ce.getDay()+6)%7);var ke=new Date(Ce.getFullYear(),0,4);return 1+Math.round(((Ce.getTime()-ke.getTime())/864e5-3+(ke.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},english={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(_n){var Ce=_n%100;if(Ce>3&&Ce<21)return"th";switch(Ce%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},pad=function(_n,Ce){return Ce===void 0&&(Ce=2),("000"+_n).slice(Ce*-1)},int=function(_n){return _n===!0?1:0};function debounce(_n,Ce){var ke;return function(){var $n=this,Hn=arguments;clearTimeout(ke),ke=setTimeout(function(){return _n.apply($n,Hn)},Ce)}}var arrayify=function(_n){return _n instanceof Array?_n:[_n]};function toggleClass(_n,Ce,ke){if(ke===!0)return _n.classList.add(Ce);_n.classList.remove(Ce)}function createElement(_n,Ce,ke){var $n=window.document.createElement(_n);return Ce=Ce||"",ke=ke||"",$n.className=Ce,ke!==void 0&&($n.textContent=ke),$n}function clearNode(_n){for(;_n.firstChild;)_n.removeChild(_n.firstChild)}function findParent(_n,Ce){if(Ce(_n))return _n;if(_n.parentNode)return findParent(_n.parentNode,Ce)}function createNumberInput(_n,Ce){var ke=createElement("div","numInputWrapper"),$n=createElement("input","numInput "+_n),Hn=createElement("span","arrowUp"),zn=createElement("span","arrowDown");if(navigator.userAgent.indexOf("MSIE 9.0")===-1?$n.type="number":($n.type="text",$n.pattern="\\d*"),Ce!==void 0)for(var Zn in Ce)$n.setAttribute(Zn,Ce[Zn]);return ke.appendChild($n),ke.appendChild(Hn),ke.appendChild(zn),ke}function getEventTarget(_n){try{if(typeof _n.composedPath=="function"){var Ce=_n.composedPath();return Ce[0]}return _n.target}catch{return _n.target}}var doNothing=function(){},monthToStr=function(_n,Ce,ke){return ke.months[Ce?"shorthand":"longhand"][_n]},revFormat={D:doNothing,F:function(_n,Ce,ke){_n.setMonth(ke.months.longhand.indexOf(Ce))},G:function(_n,Ce){_n.setHours((_n.getHours()>=12?12:0)+parseFloat(Ce))},H:function(_n,Ce){_n.setHours(parseFloat(Ce))},J:function(_n,Ce){_n.setDate(parseFloat(Ce))},K:function(_n,Ce,ke){_n.setHours(_n.getHours()%12+12*int(new RegExp(ke.amPM[1],"i").test(Ce)))},M:function(_n,Ce,ke){_n.setMonth(ke.months.shorthand.indexOf(Ce))},S:function(_n,Ce){_n.setSeconds(parseFloat(Ce))},U:function(_n,Ce){return new Date(parseFloat(Ce)*1e3)},W:function(_n,Ce,ke){var $n=parseInt(Ce),Hn=new Date(_n.getFullYear(),0,2+($n-1)*7,0,0,0,0);return Hn.setDate(Hn.getDate()-Hn.getDay()+ke.firstDayOfWeek),Hn},Y:function(_n,Ce){_n.setFullYear(parseFloat(Ce))},Z:function(_n,Ce){return new Date(Ce)},d:function(_n,Ce){_n.setDate(parseFloat(Ce))},h:function(_n,Ce){_n.setHours((_n.getHours()>=12?12:0)+parseFloat(Ce))},i:function(_n,Ce){_n.setMinutes(parseFloat(Ce))},j:function(_n,Ce){_n.setDate(parseFloat(Ce))},l:doNothing,m:function(_n,Ce){_n.setMonth(parseFloat(Ce)-1)},n:function(_n,Ce){_n.setMonth(parseFloat(Ce)-1)},s:function(_n,Ce){_n.setSeconds(parseFloat(Ce))},u:function(_n,Ce){return new Date(parseFloat(Ce))},w:doNothing,y:function(_n,Ce){_n.setFullYear(2e3+parseFloat(Ce))}},tokenRegex={D:"",F:"",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},formats={Z:function(_n){return _n.toISOString()},D:function(_n,Ce,ke){return Ce.weekdays.shorthand[formats.w(_n,Ce,ke)]},F:function(_n,Ce,ke){return monthToStr(formats.n(_n,Ce,ke)-1,!1,Ce)},G:function(_n,Ce,ke){return pad(formats.h(_n,Ce,ke))},H:function(_n){return pad(_n.getHours())},J:function(_n,Ce){return Ce.ordinal!==void 0?_n.getDate()+Ce.ordinal(_n.getDate()):_n.getDate()},K:function(_n,Ce){return Ce.amPM[int(_n.getHours()>11)]},M:function(_n,Ce){return monthToStr(_n.getMonth(),!0,Ce)},S:function(_n){return pad(_n.getSeconds())},U:function(_n){return _n.getTime()/1e3},W:function(_n,Ce,ke){return ke.getWeek(_n)},Y:function(_n){return pad(_n.getFullYear(),4)},d:function(_n){return pad(_n.getDate())},h:function(_n){return _n.getHours()%12?_n.getHours()%12:12},i:function(_n){return pad(_n.getMinutes())},j:function(_n){return _n.getDate()},l:function(_n,Ce){return Ce.weekdays.longhand[_n.getDay()]},m:function(_n){return pad(_n.getMonth()+1)},n:function(_n){return _n.getMonth()+1},s:function(_n){return _n.getSeconds()},u:function(_n){return _n.getTime()},w:function(_n){return _n.getDay()},y:function(_n){return String(_n.getFullYear()).substring(2)}},createDateFormatter=function(_n){var Ce=_n.config,ke=Ce===void 0?defaults$2:Ce,$n=_n.l10n,Hn=$n===void 0?english:$n,zn=_n.isMobile,Zn=zn===void 0?!1:zn;return function(qn,Yn,Jn){var to=Jn||Hn;return ke.formatDate!==void 0&&!Zn?ke.formatDate(qn,Yn,to):Yn.split("").map(function(io,uo,mo){return formats[io]&&mo[uo-1]!=="\\"?formats[io](qn,to,ke):io!=="\\"?io:""}).join("")}},createDateParser=function(_n){var Ce=_n.config,ke=Ce===void 0?defaults$2:Ce,$n=_n.l10n,Hn=$n===void 0?english:$n;return function(zn,Zn,qn,Yn){if(!(zn!==0&&!zn)){var Jn=Yn||Hn,to,io=zn;if(zn instanceof Date)to=new Date(zn.getTime());else if(typeof zn!="string"&&zn.toFixed!==void 0)to=new Date(zn);else if(typeof zn=="string"){var uo=Zn||(ke||defaults$2).dateFormat,mo=String(zn).trim();if(mo==="today")to=new Date,qn=!0;else if(ke&&ke.parseDate)to=ke.parseDate(zn,uo);else if(/Z$/.test(mo)||/GMT$/.test(mo))to=new Date(zn);else{for(var bo=void 0,Oo=[],wo=0,$o=0,Do="";woMath.min(Ce,ke)&&_n=0?new Date:new Date(ke.config.minDate.getTime()),Ks=getDefaultHours(ke.config);Es.setHours(Ks.hours,Ks.minutes,Ks.seconds,Es.getMilliseconds()),ke.selectedDates=[Es],ke.latestSelectedDateObj=Es}vs!==void 0&&vs.type!=="blur"&&Su(vs);var pr=ke._input.value;io(),Rr(),ke._input.value!==pr&&ke._debouncedChange()}function Jn(vs,Es){return vs%12+12*int(Es===ke.l10n.amPM[1])}function to(vs){switch(vs%24){case 0:case 12:return 12;default:return vs%12}}function io(){if(!(ke.hourElement===void 0||ke.minuteElement===void 0)){var vs=(parseInt(ke.hourElement.value.slice(-2),10)||0)%24,Es=(parseInt(ke.minuteElement.value,10)||0)%60,Ks=ke.secondElement!==void 0?(parseInt(ke.secondElement.value,10)||0)%60:0;ke.amPM!==void 0&&(vs=Jn(vs,ke.amPM.textContent));var pr=ke.config.minTime!==void 0||ke.config.minDate&&ke.minDateHasTime&&ke.latestSelectedDateObj&&compareDates(ke.latestSelectedDateObj,ke.config.minDate,!0)===0,ia=ke.config.maxTime!==void 0||ke.config.maxDate&&ke.maxDateHasTime&&ke.latestSelectedDateObj&&compareDates(ke.latestSelectedDateObj,ke.config.maxDate,!0)===0;if(ke.config.maxTime!==void 0&&ke.config.minTime!==void 0&&ke.config.minTime>ke.config.maxTime){var ka=calculateSecondsSinceMidnight(ke.config.minTime.getHours(),ke.config.minTime.getMinutes(),ke.config.minTime.getSeconds()),Ma=calculateSecondsSinceMidnight(ke.config.maxTime.getHours(),ke.config.maxTime.getMinutes(),ke.config.maxTime.getSeconds()),Mr=calculateSecondsSinceMidnight(vs,Es,Ks);if(Mr>Ma&&Mr=12)]),ke.secondElement!==void 0&&(ke.secondElement.value=pad(Ks)))}function bo(vs){var Es=getEventTarget(vs),Ks=parseInt(Es.value)+(vs.delta||0);(Ks/1e3>1||vs.key==="Enter"&&!/[^\d]/.test(Ks.toString()))&&Qs(Ks)}function Oo(vs,Es,Ks,pr){if(Es instanceof Array)return Es.forEach(function(ia){return Oo(vs,ia,Ks,pr)});if(vs instanceof Array)return vs.forEach(function(ia){return Oo(ia,Es,Ks,pr)});vs.addEventListener(Es,Ks,pr),ke._handlers.push({remove:function(){return vs.removeEventListener(Es,Ks,pr)}})}function wo(){Ya("onChange")}function $o(){if(ke.config.wrap&&["open","close","toggle","clear"].forEach(function(Ks){Array.prototype.forEach.call(ke.element.querySelectorAll("[data-"+Ks+"]"),function(pr){return Oo(pr,"click",ke[Ks])})}),ke.isMobile){Fc();return}var vs=debounce(Il,50);if(ke._debouncedChange=debounce(wo,DEBOUNCED_CHANGE_MS),ke.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&Oo(ke.daysContainer,"mouseover",function(Ks){ke.config.mode==="range"&&za(getEventTarget(Ks))}),Oo(ke._input,"keydown",Ca),ke.calendarContainer!==void 0&&Oo(ke.calendarContainer,"keydown",Ca),!ke.config.inline&&!ke.config.static&&Oo(window,"resize",vs),window.ontouchstart!==void 0?Oo(window.document,"touchstart",hs):Oo(window.document,"mousedown",hs),Oo(window.document,"focus",hs,{capture:!0}),ke.config.clickOpens===!0&&(Oo(ke._input,"focus",ke.open),Oo(ke._input,"click",ke.open)),ke.daysContainer!==void 0&&(Oo(ke.monthNav,"click",Pl),Oo(ke.monthNav,["keyup","increment"],bo),Oo(ke.daysContainer,"click",xa)),ke.timeContainer!==void 0&&ke.minuteElement!==void 0&&ke.hourElement!==void 0){var Es=function(Ks){return getEventTarget(Ks).select()};Oo(ke.timeContainer,["increment"],Yn),Oo(ke.timeContainer,"blur",Yn,{capture:!0}),Oo(ke.timeContainer,"click",xo),Oo([ke.hourElement,ke.minuteElement],["focus","click"],Es),ke.secondElement!==void 0&&Oo(ke.secondElement,"focus",function(){return ke.secondElement&&ke.secondElement.select()}),ke.amPM!==void 0&&Oo(ke.amPM,"click",function(Ks){Yn(Ks)})}ke.config.allowInput&&Oo(ke._input,"blur",ga)}function Do(vs,Es){var Ks=vs!==void 0?ke.parseDate(vs):ke.latestSelectedDateObj||(ke.config.minDate&&ke.config.minDate>ke.now?ke.config.minDate:ke.config.maxDate&&ke.config.maxDate1),ke.calendarContainer.appendChild(vs);var ia=ke.config.appendTo!==void 0&&ke.config.appendTo.nodeType!==void 0;if((ke.config.inline||ke.config.static)&&(ke.calendarContainer.classList.add(ke.config.inline?"inline":"static"),ke.config.inline&&(!ia&&ke.element.parentNode?ke.element.parentNode.insertBefore(ke.calendarContainer,ke._input.nextSibling):ke.config.appendTo!==void 0&&ke.config.appendTo.appendChild(ke.calendarContainer)),ke.config.static)){var ka=createElement("div","flatpickr-wrapper");ke.element.parentNode&&ke.element.parentNode.insertBefore(ka,ke.element),ka.appendChild(ke.element),ke.altInput&&ka.appendChild(ke.altInput),ka.appendChild(ke.calendarContainer)}!ke.config.static&&!ke.config.inline&&(ke.config.appendTo!==void 0?ke.config.appendTo:window.document.body).appendChild(ke.calendarContainer)}function Ko(vs,Es,Ks,pr){var ia=zo(Es,!0),ka=createElement("span",vs,Es.getDate().toString());return ka.dateObj=Es,ka.$i=pr,ka.setAttribute("aria-label",ke.formatDate(Es,ke.config.ariaDateFormat)),vs.indexOf("hidden")===-1&&compareDates(Es,ke.now)===0&&(ke.todayDateElem=ka,ka.classList.add("today"),ka.setAttribute("aria-current","date")),ia?(ka.tabIndex=-1,Yl(Es)&&(ka.classList.add("selected"),ke.selectedDateElem=ka,ke.config.mode==="range"&&(toggleClass(ka,"startRange",ke.selectedDates[0]&&compareDates(Es,ke.selectedDates[0],!0)===0),toggleClass(ka,"endRange",ke.selectedDates[1]&&compareDates(Es,ke.selectedDates[1],!0)===0),vs==="nextMonthDay"&&ka.classList.add("inRange")))):ka.classList.add("flatpickr-disabled"),ke.config.mode==="range"&&rd(Es)&&!Yl(Es)&&ka.classList.add("inRange"),ke.weekNumbers&&ke.config.showMonths===1&&vs!=="prevMonthDay"&&pr%7===6&&ke.weekNumbers.insertAdjacentHTML("beforeend",""+ke.config.getWeek(Es)+""),Ya("onDayCreate",ka),ka}function Mo(vs){vs.focus(),ke.config.mode==="range"&&za(vs)}function es(vs){for(var Es=vs>0?0:ke.config.showMonths-1,Ks=vs>0?ke.config.showMonths:-1,pr=Es;pr!=Ks;pr+=vs)for(var ia=ke.daysContainer.children[pr],ka=vs>0?0:ia.children.length-1,Ma=vs>0?ia.children.length:-1,Mr=ka;Mr!=Ma;Mr+=vs){var il=ia.children[Mr];if(il.className.indexOf("hidden")===-1&&zo(il.dateObj))return il}}function ls(vs,Es){for(var Ks=vs.className.indexOf("Month")===-1?vs.dateObj.getMonth():ke.currentMonth,pr=Es>0?ke.config.showMonths:-1,ia=Es>0?1:-1,ka=Ks-ke.currentMonth;ka!=pr;ka+=ia)for(var Ma=ke.daysContainer.children[ka],Mr=Ks-ke.currentMonth===ka?vs.$i+Es:Es<0?Ma.children.length-1:0,il=Ma.children.length,Na=Mr;Na>=0&&Na0?il:-1);Na+=ia){var vl=Ma.children[Na];if(vl.className.indexOf("hidden")===-1&&zo(vl.dateObj)&&Math.abs(vs.$i-Na)>=Math.abs(Es))return Mo(vl)}ke.changeMonth(ia),ps(es(ia),0)}function ps(vs,Es){var Ks=zn(),pr=el(Ks||document.body),ia=vs!==void 0?vs:pr?Ks:ke.selectedDateElem!==void 0&&el(ke.selectedDateElem)?ke.selectedDateElem:ke.todayDateElem!==void 0&&el(ke.todayDateElem)?ke.todayDateElem:es(Es>0?1:-1);ia===void 0?ke._input.focus():pr?ls(ia,Es):Mo(ia)}function rs(vs,Es){for(var Ks=(new Date(vs,Es,1).getDay()-ke.l10n.firstDayOfWeek+7)%7,pr=ke.utils.getDaysInMonth((Es-1+12)%12,vs),ia=ke.utils.getDaysInMonth(Es,vs),ka=window.document.createDocumentFragment(),Ma=ke.config.showMonths>1,Mr=Ma?"prevMonthDay hidden":"prevMonthDay",il=Ma?"nextMonthDay hidden":"nextMonthDay",Na=pr+1-Ks,vl=0;Na<=pr;Na++,vl++)ka.appendChild(Ko("flatpickr-day "+Mr,new Date(vs,Es-1,Na),Na,vl));for(Na=1;Na<=ia;Na++,vl++)ka.appendChild(Ko("flatpickr-day",new Date(vs,Es,Na),Na,vl));for(var Rc=ia+1;Rc<=42-Ks&&(ke.config.showMonths===1||vl%7!==0);Rc++,vl++)ka.appendChild(Ko("flatpickr-day "+il,new Date(vs,Es+1,Rc%ia),Rc,vl));var Vc=createElement("div","dayContainer");return Vc.appendChild(ka),Vc}function Yo(){if(ke.daysContainer!==void 0){clearNode(ke.daysContainer),ke.weekNumbers&&clearNode(ke.weekNumbers);for(var vs=document.createDocumentFragment(),Es=0;Es1||ke.config.monthSelectorType!=="dropdown")){var vs=function(pr){return ke.config.minDate!==void 0&&ke.currentYear===ke.config.minDate.getFullYear()&&prke.config.maxDate.getMonth())};ke.monthsDropdownContainer.tabIndex=-1,ke.monthsDropdownContainer.innerHTML="";for(var Es=0;Es<12;Es++)if(vs(Es)){var Ks=createElement("option","flatpickr-monthDropdown-month");Ks.value=new Date(ke.currentYear,Es).getMonth().toString(),Ks.textContent=monthToStr(Es,ke.config.shorthandCurrentMonth,ke.l10n),Ks.tabIndex=-1,ke.currentMonth===Es&&(Ks.selected=!0),ke.monthsDropdownContainer.appendChild(Ks)}}}function sr(){var vs=createElement("div","flatpickr-month"),Es=window.document.createDocumentFragment(),Ks;ke.config.showMonths>1||ke.config.monthSelectorType==="static"?Ks=createElement("span","cur-month"):(ke.monthsDropdownContainer=createElement("select","flatpickr-monthDropdown-months"),ke.monthsDropdownContainer.setAttribute("aria-label",ke.l10n.monthAriaLabel),Oo(ke.monthsDropdownContainer,"change",function(Ma){var Mr=getEventTarget(Ma),il=parseInt(Mr.value,10);ke.changeMonth(il-ke.currentMonth),Ya("onMonthChange")}),Ys(),Ks=ke.monthsDropdownContainer);var pr=createNumberInput("cur-year",{tabindex:"-1"}),ia=pr.getElementsByTagName("input")[0];ia.setAttribute("aria-label",ke.l10n.yearAriaLabel),ke.config.minDate&&ia.setAttribute("min",ke.config.minDate.getFullYear().toString()),ke.config.maxDate&&(ia.setAttribute("max",ke.config.maxDate.getFullYear().toString()),ia.disabled=!!ke.config.minDate&&ke.config.minDate.getFullYear()===ke.config.maxDate.getFullYear());var ka=createElement("div","flatpickr-current-month");return ka.appendChild(Ks),ka.appendChild(pr),Es.appendChild(ka),vs.appendChild(Es),{container:vs,yearElement:ia,monthElement:Ks}}function Js(){clearNode(ke.monthNav),ke.monthNav.appendChild(ke.prevMonthNav),ke.config.showMonths&&(ke.yearElements=[],ke.monthElements=[]);for(var vs=ke.config.showMonths;vs--;){var Es=sr();ke.yearElements.push(Es.yearElement),ke.monthElements.push(Es.monthElement),ke.monthNav.appendChild(Es.container)}ke.monthNav.appendChild(ke.nextMonthNav)}function ko(){return ke.monthNav=createElement("div","flatpickr-months"),ke.yearElements=[],ke.monthElements=[],ke.prevMonthNav=createElement("span","flatpickr-prev-month"),ke.prevMonthNav.innerHTML=ke.config.prevArrow,ke.nextMonthNav=createElement("span","flatpickr-next-month"),ke.nextMonthNav.innerHTML=ke.config.nextArrow,Js(),Object.defineProperty(ke,"_hidePrevMonthArrow",{get:function(){return ke.__hidePrevMonthArrow},set:function(vs){ke.__hidePrevMonthArrow!==vs&&(toggleClass(ke.prevMonthNav,"flatpickr-disabled",vs),ke.__hidePrevMonthArrow=vs)}}),Object.defineProperty(ke,"_hideNextMonthArrow",{get:function(){return ke.__hideNextMonthArrow},set:function(vs){ke.__hideNextMonthArrow!==vs&&(toggleClass(ke.nextMonthNav,"flatpickr-disabled",vs),ke.__hideNextMonthArrow=vs)}}),ke.currentYearElement=ke.yearElements[0],Al(),ke.monthNav}function gs(){ke.calendarContainer.classList.add("hasTime"),ke.config.noCalendar&&ke.calendarContainer.classList.add("noCalendar");var vs=getDefaultHours(ke.config);ke.timeContainer=createElement("div","flatpickr-time"),ke.timeContainer.tabIndex=-1;var Es=createElement("span","flatpickr-time-separator",":"),Ks=createNumberInput("flatpickr-hour",{"aria-label":ke.l10n.hourAriaLabel});ke.hourElement=Ks.getElementsByTagName("input")[0];var pr=createNumberInput("flatpickr-minute",{"aria-label":ke.l10n.minuteAriaLabel});if(ke.minuteElement=pr.getElementsByTagName("input")[0],ke.hourElement.tabIndex=ke.minuteElement.tabIndex=-1,ke.hourElement.value=pad(ke.latestSelectedDateObj?ke.latestSelectedDateObj.getHours():ke.config.time_24hr?vs.hours:to(vs.hours)),ke.minuteElement.value=pad(ke.latestSelectedDateObj?ke.latestSelectedDateObj.getMinutes():vs.minutes),ke.hourElement.setAttribute("step",ke.config.hourIncrement.toString()),ke.minuteElement.setAttribute("step",ke.config.minuteIncrement.toString()),ke.hourElement.setAttribute("min",ke.config.time_24hr?"0":"1"),ke.hourElement.setAttribute("max",ke.config.time_24hr?"23":"12"),ke.hourElement.setAttribute("maxlength","2"),ke.minuteElement.setAttribute("min","0"),ke.minuteElement.setAttribute("max","59"),ke.minuteElement.setAttribute("maxlength","2"),ke.timeContainer.appendChild(Ks),ke.timeContainer.appendChild(Es),ke.timeContainer.appendChild(pr),ke.config.time_24hr&&ke.timeContainer.classList.add("time24hr"),ke.config.enableSeconds){ke.timeContainer.classList.add("hasSeconds");var ia=createNumberInput("flatpickr-second");ke.secondElement=ia.getElementsByTagName("input")[0],ke.secondElement.value=pad(ke.latestSelectedDateObj?ke.latestSelectedDateObj.getSeconds():vs.seconds),ke.secondElement.setAttribute("step",ke.minuteElement.getAttribute("step")),ke.secondElement.setAttribute("min","0"),ke.secondElement.setAttribute("max","59"),ke.secondElement.setAttribute("maxlength","2"),ke.timeContainer.appendChild(createElement("span","flatpickr-time-separator",":")),ke.timeContainer.appendChild(ia)}return ke.config.time_24hr||(ke.amPM=createElement("span","flatpickr-am-pm",ke.l10n.amPM[int((ke.latestSelectedDateObj?ke.hourElement.value:ke.config.defaultHour)>11)]),ke.amPM.title=ke.l10n.toggleTitle,ke.amPM.tabIndex=-1,ke.timeContainer.appendChild(ke.amPM)),ke.timeContainer}function xs(){ke.weekdayContainer?clearNode(ke.weekdayContainer):ke.weekdayContainer=createElement("div","flatpickr-weekdays");for(var vs=ke.config.showMonths;vs--;){var Es=createElement("div","flatpickr-weekdaycontainer");ke.weekdayContainer.appendChild(Es)}return Qr(),ke.weekdayContainer}function Qr(){if(ke.weekdayContainer){var vs=ke.l10n.firstDayOfWeek,Es=__spreadArrays(ke.l10n.weekdays.shorthand);vs>0&&vs + `+Es.join("")+` + + `}}function cr(){ke.calendarContainer.classList.add("hasWeeks");var vs=createElement("div","flatpickr-weekwrapper");vs.appendChild(createElement("span","flatpickr-weekday",ke.l10n.weekAbbreviation));var Es=createElement("div","flatpickr-weeks");return vs.appendChild(Es),{weekWrapper:vs,weekNumbers:Es}}function ws(vs,Es){Es===void 0&&(Es=!0);var Ks=Es?vs:vs-ke.currentMonth;Ks<0&&ke._hidePrevMonthArrow===!0||Ks>0&&ke._hideNextMonthArrow===!0||(ke.currentMonth+=Ks,(ke.currentMonth<0||ke.currentMonth>11)&&(ke.currentYear+=ke.currentMonth>11?1:-1,ke.currentMonth=(ke.currentMonth+12)%12,Ya("onYearChange"),Ys()),Yo(),Ya("onMonthChange"),Al())}function Fs(vs,Es){if(vs===void 0&&(vs=!0),Es===void 0&&(Es=!0),ke.input.value="",ke.altInput!==void 0&&(ke.altInput.value=""),ke.mobileInput!==void 0&&(ke.mobileInput.value=""),ke.selectedDates=[],ke.latestSelectedDateObj=void 0,Es===!0&&(ke.currentYear=ke._initialDate.getFullYear(),ke.currentMonth=ke._initialDate.getMonth()),ke.config.enableTime===!0){var Ks=getDefaultHours(ke.config),pr=Ks.hours,ia=Ks.minutes,ka=Ks.seconds;mo(pr,ia,ka)}ke.redraw(),vs&&Ya("onChange")}function Br(){ke.isOpen=!1,ke.isMobile||(ke.calendarContainer!==void 0&&ke.calendarContainer.classList.remove("open"),ke._input!==void 0&&ke._input.classList.remove("active")),Ya("onClose")}function _r(){ke.config!==void 0&&Ya("onDestroy");for(var vs=ke._handlers.length;vs--;)ke._handlers[vs].remove();if(ke._handlers=[],ke.mobileInput)ke.mobileInput.parentNode&&ke.mobileInput.parentNode.removeChild(ke.mobileInput),ke.mobileInput=void 0;else if(ke.calendarContainer&&ke.calendarContainer.parentNode)if(ke.config.static&&ke.calendarContainer.parentNode){var Es=ke.calendarContainer.parentNode;if(Es.lastChild&&Es.removeChild(Es.lastChild),Es.parentNode){for(;Es.firstChild;)Es.parentNode.insertBefore(Es.firstChild,Es);Es.parentNode.removeChild(Es)}}else ke.calendarContainer.parentNode.removeChild(ke.calendarContainer);ke.altInput&&(ke.input.type="text",ke.altInput.parentNode&&ke.altInput.parentNode.removeChild(ke.altInput),delete ke.altInput),ke.input&&(ke.input.type=ke.input._type,ke.input.classList.remove("flatpickr-input"),ke.input.removeAttribute("readonly")),["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","monthsDropdownContainer","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(Ks){try{delete ke[Ks]}catch{}})}function ha(vs){return ke.calendarContainer.contains(vs)}function hs(vs){if(ke.isOpen&&!ke.config.inline){var Es=getEventTarget(vs),Ks=ha(Es),pr=Es===ke.input||Es===ke.altInput||ke.element.contains(Es)||vs.path&&vs.path.indexOf&&(~vs.path.indexOf(ke.input)||~vs.path.indexOf(ke.altInput)),ia=!pr&&!Ks&&!ha(vs.relatedTarget),ka=!ke.config.ignoredFocusElements.some(function(Ma){return Ma.contains(Es)});ia&&ka&&(ke.config.allowInput&&ke.setDate(ke._input.value,!1,ke.config.altInput?ke.config.altFormat:ke.config.dateFormat),ke.timeContainer!==void 0&&ke.minuteElement!==void 0&&ke.hourElement!==void 0&&ke.input.value!==""&&ke.input.value!==void 0&&Yn(),ke.close(),ke.config&&ke.config.mode==="range"&&ke.selectedDates.length===1&&ke.clear(!1))}}function Qs(vs){if(!(!vs||ke.config.minDate&&vske.config.maxDate.getFullYear())){var Es=vs,Ks=ke.currentYear!==Es;ke.currentYear=Es||ke.currentYear,ke.config.maxDate&&ke.currentYear===ke.config.maxDate.getFullYear()?ke.currentMonth=Math.min(ke.config.maxDate.getMonth(),ke.currentMonth):ke.config.minDate&&ke.currentYear===ke.config.minDate.getFullYear()&&(ke.currentMonth=Math.max(ke.config.minDate.getMonth(),ke.currentMonth)),Ks&&(ke.redraw(),Ya("onYearChange"),Ys())}}function zo(vs,Es){var Ks;Es===void 0&&(Es=!0);var pr=ke.parseDate(vs,void 0,Es);if(ke.config.minDate&&pr&&compareDates(pr,ke.config.minDate,Es!==void 0?Es:!ke.minDateHasTime)<0||ke.config.maxDate&&pr&&compareDates(pr,ke.config.maxDate,Es!==void 0?Es:!ke.maxDateHasTime)>0)return!1;if(!ke.config.enable&&ke.config.disable.length===0)return!0;if(pr===void 0)return!1;for(var ia=!!ke.config.enable,ka=(Ks=ke.config.enable)!==null&&Ks!==void 0?Ks:ke.config.disable,Ma=0,Mr=void 0;Ma=Mr.from.getTime()&&pr.getTime()<=Mr.to.getTime())return ia}return!ia}function el(vs){return ke.daysContainer!==void 0?vs.className.indexOf("hidden")===-1&&vs.className.indexOf("flatpickr-disabled")===-1&&ke.daysContainer.contains(vs):!1}function ga(vs){var Es=vs.target===ke._input,Ks=ke._input.value.trimEnd()!==gd();Es&&Ks&&!(vs.relatedTarget&&ha(vs.relatedTarget))&&ke.setDate(ke._input.value,!0,vs.target===ke.altInput?ke.config.altFormat:ke.config.dateFormat)}function Ca(vs){var Es=getEventTarget(vs),Ks=ke.config.wrap?_n.contains(Es):Es===ke._input,pr=ke.config.allowInput,ia=ke.isOpen&&(!pr||!Ks),ka=ke.config.inline&&Ks&&!pr;if(vs.keyCode===13&&Ks){if(pr)return ke.setDate(ke._input.value,!0,Es===ke.altInput?ke.config.altFormat:ke.config.dateFormat),ke.close(),Es.blur();ke.open()}else if(ha(Es)||ia||ka){var Ma=!!ke.timeContainer&&ke.timeContainer.contains(Es);switch(vs.keyCode){case 13:Ma?(vs.preventDefault(),Yn(),Ml()):xa(vs);break;case 27:vs.preventDefault(),Ml();break;case 8:case 46:Ks&&!ke.config.allowInput&&(vs.preventDefault(),ke.clear());break;case 37:case 39:if(!Ma&&!Ks){vs.preventDefault();var Mr=zn();if(ke.daysContainer!==void 0&&(pr===!1||Mr&&el(Mr))){var il=vs.keyCode===39?1:-1;vs.ctrlKey?(vs.stopPropagation(),ws(il),ps(es(1),0)):ps(void 0,il)}}else ke.hourElement&&ke.hourElement.focus();break;case 38:case 40:vs.preventDefault();var Na=vs.keyCode===40?1:-1;ke.daysContainer&&Es.$i!==void 0||Es===ke.input||Es===ke.altInput?vs.ctrlKey?(vs.stopPropagation(),Qs(ke.currentYear-Na),ps(es(1),0)):Ma||ps(void 0,Na*7):Es===ke.currentYearElement?Qs(ke.currentYear-Na):ke.config.enableTime&&(!Ma&&ke.hourElement&&ke.hourElement.focus(),Yn(vs),ke._debouncedChange());break;case 9:if(Ma){var vl=[ke.hourElement,ke.minuteElement,ke.secondElement,ke.amPM].concat(ke.pluginElements).filter(function(xc){return xc}),Rc=vl.indexOf(Es);if(Rc!==-1){var Vc=vl[Rc+(vs.shiftKey?-1:1)];vs.preventDefault(),(Vc||ke._input).focus()}}else!ke.config.noCalendar&&ke.daysContainer&&ke.daysContainer.contains(Es)&&vs.shiftKey&&(vs.preventDefault(),ke._input.focus());break}}if(ke.amPM!==void 0&&Es===ke.amPM)switch(vs.key){case ke.l10n.amPM[0].charAt(0):case ke.l10n.amPM[0].charAt(0).toLowerCase():ke.amPM.textContent=ke.l10n.amPM[0],io(),Rr();break;case ke.l10n.amPM[1].charAt(0):case ke.l10n.amPM[1].charAt(0).toLowerCase():ke.amPM.textContent=ke.l10n.amPM[1],io(),Rr();break}(Ks||ha(Es))&&Ya("onKeyDown",vs)}function za(vs,Es){if(Es===void 0&&(Es="flatpickr-day"),!(ke.selectedDates.length!==1||vs&&(!vs.classList.contains(Es)||vs.classList.contains("flatpickr-disabled")))){for(var Ks=vs?vs.dateObj.getTime():ke.days.firstElementChild.dateObj.getTime(),pr=ke.parseDate(ke.selectedDates[0],void 0,!0).getTime(),ia=Math.min(Ks,ke.selectedDates[0].getTime()),ka=Math.max(Ks,ke.selectedDates[0].getTime()),Ma=!1,Mr=0,il=0,Na=ia;Naia&&NaMr)?Mr=Na:Na>pr&&(!il||Na ."+Es));vl.forEach(function(Rc){var Vc=Rc.dateObj,xc=Vc.getTime(),zc=Mr>0&&xc0&&xc>il;if(zc){Rc.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(ad){Rc.classList.remove(ad)});return}else if(Ma&&!zc)return;["startRange","inRange","endRange","notAllowed"].forEach(function(ad){Rc.classList.remove(ad)}),vs!==void 0&&(vs.classList.add(Ks<=ke.selectedDates[0].getTime()?"startRange":"endRange"),prKs&&xc===pr&&Rc.classList.add("endRange"),xc>=Mr&&(il===0||xc<=il)&&isBetween(xc,pr,Ks)&&Rc.classList.add("inRange"))})}}function Il(){ke.isOpen&&!ke.config.static&&!ke.config.inline&&Vr()}function Zs(vs,Es){if(Es===void 0&&(Es=ke._positionElement),ke.isMobile===!0){if(vs){vs.preventDefault();var Ks=getEventTarget(vs);Ks&&Ks.blur()}ke.mobileInput!==void 0&&(ke.mobileInput.focus(),ke.mobileInput.click()),Ya("onOpen");return}else if(ke._input.disabled||ke.config.inline)return;var pr=ke.isOpen;ke.isOpen=!0,pr||(ke.calendarContainer.classList.add("open"),ke._input.classList.add("active"),Ya("onOpen"),Vr(Es)),ke.config.enableTime===!0&&ke.config.noCalendar===!0&&ke.config.allowInput===!1&&(vs===void 0||!ke.timeContainer.contains(vs.relatedTarget))&&setTimeout(function(){return ke.hourElement.select()},50)}function Sr(vs){return function(Es){var Ks=ke.config["_"+vs+"Date"]=ke.parseDate(Es,ke.config.dateFormat),pr=ke.config["_"+(vs==="min"?"max":"min")+"Date"];Ks!==void 0&&(ke[vs==="min"?"minDateHasTime":"maxDateHasTime"]=Ks.getHours()>0||Ks.getMinutes()>0||Ks.getSeconds()>0),ke.selectedDates&&(ke.selectedDates=ke.selectedDates.filter(function(ia){return zo(ia)}),!ke.selectedDates.length&&vs==="min"&&uo(Ks),Rr()),ke.daysContainer&&(ra(),Ks!==void 0?ke.currentYearElement[vs]=Ks.getFullYear().toString():ke.currentYearElement.removeAttribute(vs),ke.currentYearElement.disabled=!!pr&&Ks!==void 0&&pr.getFullYear()===Ks.getFullYear())}}function Us(){var vs=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],Es=__assign(__assign({},JSON.parse(JSON.stringify(_n.dataset||{}))),Ce),Ks={};ke.config.parseDate=Es.parseDate,ke.config.formatDate=Es.formatDate,Object.defineProperty(ke.config,"enable",{get:function(){return ke.config._enable},set:function(vl){ke.config._enable=nc(vl)}}),Object.defineProperty(ke.config,"disable",{get:function(){return ke.config._disable},set:function(vl){ke.config._disable=nc(vl)}});var pr=Es.mode==="time";if(!Es.dateFormat&&(Es.enableTime||pr)){var ia=flatpickr.defaultConfig.dateFormat||defaults$2.dateFormat;Ks.dateFormat=Es.noCalendar||pr?"H:i"+(Es.enableSeconds?":S":""):ia+" H:i"+(Es.enableSeconds?":S":"")}if(Es.altInput&&(Es.enableTime||pr)&&!Es.altFormat){var ka=flatpickr.defaultConfig.altFormat||defaults$2.altFormat;Ks.altFormat=Es.noCalendar||pr?"h:i"+(Es.enableSeconds?":S K":" K"):ka+(" h:i"+(Es.enableSeconds?":S":"")+" K")}Object.defineProperty(ke.config,"minDate",{get:function(){return ke.config._minDate},set:Sr("min")}),Object.defineProperty(ke.config,"maxDate",{get:function(){return ke.config._maxDate},set:Sr("max")});var Ma=function(vl){return function(Rc){ke.config[vl==="min"?"_minTime":"_maxTime"]=ke.parseDate(Rc,"H:i:S")}};Object.defineProperty(ke.config,"minTime",{get:function(){return ke.config._minTime},set:Ma("min")}),Object.defineProperty(ke.config,"maxTime",{get:function(){return ke.config._maxTime},set:Ma("max")}),Es.mode==="time"&&(ke.config.noCalendar=!0,ke.config.enableTime=!0),Object.assign(ke.config,Ks,Es);for(var Mr=0;Mr-1?ke.config[Na]=arrayify(il[Na]).map(Zn).concat(ke.config[Na]):typeof Es[Na]>"u"&&(ke.config[Na]=il[Na])}Es.altInputClass||(ke.config.altInputClass=fs().className+" "+ke.config.altInputClass),Ya("onParseConfig")}function fs(){return ke.config.wrap?_n.querySelector("[data-input]"):_n}function dr(){typeof ke.config.locale!="object"&&typeof flatpickr.l10ns[ke.config.locale]>"u"&&ke.config.errorHandler(new Error("flatpickr: invalid locale "+ke.config.locale)),ke.l10n=__assign(__assign({},flatpickr.l10ns.default),typeof ke.config.locale=="object"?ke.config.locale:ke.config.locale!=="default"?flatpickr.l10ns[ke.config.locale]:void 0),tokenRegex.D="("+ke.l10n.weekdays.shorthand.join("|")+")",tokenRegex.l="("+ke.l10n.weekdays.longhand.join("|")+")",tokenRegex.M="("+ke.l10n.months.shorthand.join("|")+")",tokenRegex.F="("+ke.l10n.months.longhand.join("|")+")",tokenRegex.K="("+ke.l10n.amPM[0]+"|"+ke.l10n.amPM[1]+"|"+ke.l10n.amPM[0].toLowerCase()+"|"+ke.l10n.amPM[1].toLowerCase()+")";var vs=__assign(__assign({},Ce),JSON.parse(JSON.stringify(_n.dataset||{})));vs.time_24hr===void 0&&flatpickr.defaultConfig.time_24hr===void 0&&(ke.config.time_24hr=ke.l10n.time_24hr),ke.formatDate=createDateFormatter(ke),ke.parseDate=createDateParser({config:ke.config,l10n:ke.l10n})}function Vr(vs){if(typeof ke.config.position=="function")return void ke.config.position(ke,vs);if(ke.calendarContainer!==void 0){Ya("onPreCalendarPosition");var Es=vs||ke._positionElement,Ks=Array.prototype.reduce.call(ke.calendarContainer.children,function(_l,Hc){return _l+Hc.offsetHeight},0),pr=ke.calendarContainer.offsetWidth,ia=ke.config.position.split(" "),ka=ia[0],Ma=ia.length>1?ia[1]:null,Mr=Es.getBoundingClientRect(),il=window.innerHeight-Mr.bottom,Na=ka==="above"||ka!=="below"&&ilKs,vl=window.pageYOffset+Mr.top+(Na?-Ks-2:Es.offsetHeight+2);if(toggleClass(ke.calendarContainer,"arrowTop",!Na),toggleClass(ke.calendarContainer,"arrowBottom",Na),!ke.config.inline){var Rc=window.pageXOffset+Mr.left,Vc=!1,xc=!1;Ma==="center"?(Rc-=(pr-Mr.width)/2,Vc=!0):Ma==="right"&&(Rc-=pr-Mr.width,xc=!0),toggleClass(ke.calendarContainer,"arrowLeft",!Vc&&!xc),toggleClass(ke.calendarContainer,"arrowCenter",Vc),toggleClass(ke.calendarContainer,"arrowRight",xc);var zc=window.document.body.offsetWidth-(window.pageXOffset+Mr.right),ad=Rc+pr>window.document.body.offsetWidth,Bh=zc+pr>window.document.body.offsetWidth;if(toggleClass(ke.calendarContainer,"rightMost",ad),!ke.config.static)if(ke.calendarContainer.style.top=vl+"px",!ad)ke.calendarContainer.style.left=Rc+"px",ke.calendarContainer.style.right="auto";else if(!Bh)ke.calendarContainer.style.left="auto",ke.calendarContainer.style.right=zc+"px";else{var Vu=nr();if(Vu===void 0)return;var Ts=window.document.body.offsetWidth,ks=Math.max(0,Ts/2-pr/2),ir=".flatpickr-calendar.centerMost:before",br=".flatpickr-calendar.centerMost:after",Aa=Vu.cssRules.length,Ba="{left:"+Mr.left+"px;right:auto;}";toggleClass(ke.calendarContainer,"rightMost",!1),toggleClass(ke.calendarContainer,"centerMost",!0),Vu.insertRule(ir+","+br+Ba,Aa),ke.calendarContainer.style.left=ks+"px",ke.calendarContainer.style.right="auto"}}}}function nr(){for(var vs=null,Es=0;Eske.currentMonth+ke.config.showMonths-1)&&ke.config.mode!=="range";if(ke.selectedDateElem=pr,ke.config.mode==="single")ke.selectedDates=[ia];else if(ke.config.mode==="multiple"){var Ma=Yl(ia);Ma?ke.selectedDates.splice(parseInt(Ma),1):ke.selectedDates.push(ia)}else ke.config.mode==="range"&&(ke.selectedDates.length===2&&ke.clear(!1,!1),ke.latestSelectedDateObj=ia,ke.selectedDates.push(ia),compareDates(ia,ke.selectedDates[0],!0)!==0&&ke.selectedDates.sort(function(vl,Rc){return vl.getTime()-Rc.getTime()}));if(io(),ka){var Mr=ke.currentYear!==ia.getFullYear();ke.currentYear=ia.getFullYear(),ke.currentMonth=ia.getMonth(),Mr&&(Ya("onYearChange"),Ys()),Ya("onMonthChange")}if(Al(),Yo(),Rr(),!ka&&ke.config.mode!=="range"&&ke.config.showMonths===1?Mo(pr):ke.selectedDateElem!==void 0&&ke.hourElement===void 0&&ke.selectedDateElem&&ke.selectedDateElem.focus(),ke.hourElement!==void 0&&ke.hourElement!==void 0&&ke.hourElement.focus(),ke.config.closeOnSelect){var il=ke.config.mode==="single"&&!ke.config.enableTime,Na=ke.config.mode==="range"&&ke.selectedDates.length===2&&!ke.config.enableTime;(il||Na)&&Ml()}wo()}}var Nl={locale:[dr,Qr],showMonths:[Js,qn,xs],minDate:[Do],maxDate:[Do],positionElement:[Vl],clickOpens:[function(){ke.config.clickOpens===!0?(Oo(ke._input,"focus",ke.open),Oo(ke._input,"click",ke.open)):(ke._input.removeEventListener("focus",ke.open),ke._input.removeEventListener("click",ke.open))}]};function Zc(vs,Es){if(vs!==null&&typeof vs=="object"){Object.assign(ke.config,vs);for(var Ks in vs)Nl[Ks]!==void 0&&Nl[Ks].forEach(function(pr){return pr()})}else ke.config[vs]=Es,Nl[vs]!==void 0?Nl[vs].forEach(function(pr){return pr()}):HOOKS.indexOf(vs)>-1&&(ke.config[vs]=arrayify(Es));ke.redraw(),Rr(!0)}function cc(vs,Es){var Ks=[];if(vs instanceof Array)Ks=vs.map(function(pr){return ke.parseDate(pr,Es)});else if(vs instanceof Date||typeof vs=="number")Ks=[ke.parseDate(vs,Es)];else if(typeof vs=="string")switch(ke.config.mode){case"single":case"time":Ks=[ke.parseDate(vs,Es)];break;case"multiple":Ks=vs.split(ke.config.conjunction).map(function(pr){return ke.parseDate(pr,Es)});break;case"range":Ks=vs.split(ke.l10n.rangeSeparator).map(function(pr){return ke.parseDate(pr,Es)});break}else ke.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(vs)));ke.selectedDates=ke.config.allowInvalidPreload?Ks:Ks.filter(function(pr){return pr instanceof Date&&zo(pr,!1)}),ke.config.mode==="range"&&ke.selectedDates.sort(function(pr,ia){return pr.getTime()-ia.getTime()})}function gc(vs,Es,Ks){if(Es===void 0&&(Es=!1),Ks===void 0&&(Ks=ke.config.dateFormat),vs!==0&&!vs||vs instanceof Array&&vs.length===0)return ke.clear(Es);cc(vs,Ks),ke.latestSelectedDateObj=ke.selectedDates[ke.selectedDates.length-1],ke.redraw(),Do(void 0,Es),uo(),ke.selectedDates.length===0&&ke.clear(!1),Rr(Es),Es&&Ya("onChange")}function nc(vs){return vs.slice().map(function(Es){return typeof Es=="string"||typeof Es=="number"||Es instanceof Date?ke.parseDate(Es,void 0,!0):Es&&typeof Es=="object"&&Es.from&&Es.to?{from:ke.parseDate(Es.from,void 0),to:ke.parseDate(Es.to,void 0)}:Es}).filter(function(Es){return Es})}function Ed(){ke.selectedDates=[],ke.now=ke.parseDate(ke.config.now)||new Date;var vs=ke.config.defaultDate||((ke.input.nodeName==="INPUT"||ke.input.nodeName==="TEXTAREA")&&ke.input.placeholder&&ke.input.value===ke.input.placeholder?null:ke.input.value);vs&&cc(vs,ke.config.dateFormat),ke._initialDate=ke.selectedDates.length>0?ke.selectedDates[0]:ke.config.minDate&&ke.config.minDate.getTime()>ke.now.getTime()?ke.config.minDate:ke.config.maxDate&&ke.config.maxDate.getTime()0&&(ke.latestSelectedDateObj=ke.selectedDates[0]),ke.config.minTime!==void 0&&(ke.config.minTime=ke.parseDate(ke.config.minTime,"H:i")),ke.config.maxTime!==void 0&&(ke.config.maxTime=ke.parseDate(ke.config.maxTime,"H:i")),ke.minDateHasTime=!!ke.config.minDate&&(ke.config.minDate.getHours()>0||ke.config.minDate.getMinutes()>0||ke.config.minDate.getSeconds()>0),ke.maxDateHasTime=!!ke.config.maxDate&&(ke.config.maxDate.getHours()>0||ke.config.maxDate.getMinutes()>0||ke.config.maxDate.getSeconds()>0)}function Zl(){if(ke.input=fs(),!ke.input){ke.config.errorHandler(new Error("Invalid input element specified"));return}ke.input._type=ke.input.type,ke.input.type="text",ke.input.classList.add("flatpickr-input"),ke._input=ke.input,ke.config.altInput&&(ke.altInput=createElement(ke.input.nodeName,ke.config.altInputClass),ke._input=ke.altInput,ke.altInput.placeholder=ke.input.placeholder,ke.altInput.disabled=ke.input.disabled,ke.altInput.required=ke.input.required,ke.altInput.tabIndex=ke.input.tabIndex,ke.altInput.type="text",ke.input.setAttribute("type","hidden"),!ke.config.static&&ke.input.parentNode&&ke.input.parentNode.insertBefore(ke.altInput,ke.input.nextSibling)),ke.config.allowInput||ke._input.setAttribute("readonly","readonly"),Vl()}function Vl(){ke._positionElement=ke.config.positionElement||ke._input}function Fc(){var vs=ke.config.enableTime?ke.config.noCalendar?"time":"datetime-local":"date";ke.mobileInput=createElement("input",ke.input.className+" flatpickr-mobile"),ke.mobileInput.tabIndex=1,ke.mobileInput.type=vs,ke.mobileInput.disabled=ke.input.disabled,ke.mobileInput.required=ke.input.required,ke.mobileInput.placeholder=ke.input.placeholder,ke.mobileFormatStr=vs==="datetime-local"?"Y-m-d\\TH:i:S":vs==="date"?"Y-m-d":"H:i:S",ke.selectedDates.length>0&&(ke.mobileInput.defaultValue=ke.mobileInput.value=ke.formatDate(ke.selectedDates[0],ke.mobileFormatStr)),ke.config.minDate&&(ke.mobileInput.min=ke.formatDate(ke.config.minDate,"Y-m-d")),ke.config.maxDate&&(ke.mobileInput.max=ke.formatDate(ke.config.maxDate,"Y-m-d")),ke.input.getAttribute("step")&&(ke.mobileInput.step=String(ke.input.getAttribute("step"))),ke.input.type="hidden",ke.altInput!==void 0&&(ke.altInput.type="hidden");try{ke.input.parentNode&&ke.input.parentNode.insertBefore(ke.mobileInput,ke.input.nextSibling)}catch{}Oo(ke.mobileInput,"change",function(Es){ke.setDate(getEventTarget(Es).value,!1,ke.mobileFormatStr),Ya("onChange"),Ya("onClose")})}function qa(vs){if(ke.isOpen===!0)return ke.close();ke.open(vs)}function Ya(vs,Es){if(ke.config!==void 0){var Ks=ke.config[vs];if(Ks!==void 0&&Ks.length>0)for(var pr=0;Ks[pr]&&pr=0&&compareDates(vs,ke.selectedDates[1])<=0}function Al(){ke.config.noCalendar||ke.isMobile||!ke.monthNav||(ke.yearElements.forEach(function(vs,Es){var Ks=new Date(ke.currentYear,ke.currentMonth,1);Ks.setMonth(ke.currentMonth+Es),ke.config.showMonths>1||ke.config.monthSelectorType==="static"?ke.monthElements[Es].textContent=monthToStr(Ks.getMonth(),ke.config.shorthandCurrentMonth,ke.l10n)+" ":ke.monthsDropdownContainer.value=Ks.getMonth().toString(),vs.value=Ks.getFullYear().toString()}),ke._hidePrevMonthArrow=ke.config.minDate!==void 0&&(ke.currentYear===ke.config.minDate.getFullYear()?ke.currentMonth<=ke.config.minDate.getMonth():ke.currentYearke.config.maxDate.getMonth():ke.currentYear>ke.config.maxDate.getFullYear()))}function gd(vs){var Es=vs||(ke.config.altInput?ke.config.altFormat:ke.config.dateFormat);return ke.selectedDates.map(function(Ks){return ke.formatDate(Ks,Es)}).filter(function(Ks,pr,ia){return ke.config.mode!=="range"||ke.config.enableTime||ia.indexOf(Ks)===pr}).join(ke.config.mode!=="range"?ke.config.conjunction:ke.l10n.rangeSeparator)}function Rr(vs){vs===void 0&&(vs=!0),ke.mobileInput!==void 0&&ke.mobileFormatStr&&(ke.mobileInput.value=ke.latestSelectedDateObj!==void 0?ke.formatDate(ke.latestSelectedDateObj,ke.mobileFormatStr):""),ke.input.value=gd(ke.config.dateFormat),ke.altInput!==void 0&&(ke.altInput.value=gd(ke.config.altFormat)),vs!==!1&&Ya("onValueUpdate")}function Pl(vs){var Es=getEventTarget(vs),Ks=ke.prevMonthNav.contains(Es),pr=ke.nextMonthNav.contains(Es);Ks||pr?ws(Ks?-1:1):ke.yearElements.indexOf(Es)>=0?Es.select():Es.classList.contains("arrowUp")?ke.changeYear(ke.currentYear+1):Es.classList.contains("arrowDown")&&ke.changeYear(ke.currentYear-1)}function Su(vs){vs.preventDefault();var Es=vs.type==="keydown",Ks=getEventTarget(vs),pr=Ks;ke.amPM!==void 0&&Ks===ke.amPM&&(ke.amPM.textContent=ke.l10n.amPM[int(ke.amPM.textContent===ke.l10n.amPM[0])]);var ia=parseFloat(pr.getAttribute("min")),ka=parseFloat(pr.getAttribute("max")),Ma=parseFloat(pr.getAttribute("step")),Mr=parseInt(pr.value,10),il=vs.delta||(Es?vs.which===38?1:-1:0),Na=Mr+Ma*il;if(typeof pr.value<"u"&&pr.value.length===2){var vl=pr===ke.hourElement,Rc=pr===ke.minuteElement;Naka&&(Na=pr===ke.hourElement?Na-ka-int(!ke.amPM):ia,Rc&&Bo(void 0,1,ke.hourElement)),ke.amPM&&vl&&(Ma===1?Na+Mr===23:Math.abs(Na-Mr)>Ma)&&(ke.amPM.textContent=ke.l10n.amPM[int(ke.amPM.textContent===ke.l10n.amPM[0])]),pr.value=pad(Na)}}return Hn(),ke}function _flatpickr(_n,Ce){for(var ke=Array.prototype.slice.call(_n).filter(function(Zn){return Zn instanceof HTMLElement}),$n=[],Hn=0;Hn{(!Hn.readonly||qn)&&flatpickr(Jn,to)});function io(){zn=this.value,ke(0,zn)}function uo(mo){binding_callbacks[mo?"unshift":"push"](()=>{Jn=mo,ke(4,Jn)})}return _n.$$set=mo=>{"field"in mo&&ke(1,Hn=mo.field),"value"in mo&&ke(0,zn=mo.value),"id"in mo&&ke(2,Zn=mo.id),"isCreateMode"in mo&&ke(3,qn=mo.isCreateMode),"validationErrors"in mo&&ke(6,Yn=mo.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&66&&ke(5,$n=getErrorMessage(Yn,Hn.name))},[zn,Hn,Zn,qn,Jn,$n,Yn,io,uo]}let Date$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$r,create_fragment$r,safe_not_equal,{field:1,value:0,id:2,isCreateMode:3,validationErrors:6})}};var byteToHex=[];for(var i$2=0;i$2<256;++i$2)byteToHex.push((i$2+256).toString(16).slice(1));function unsafeStringify(_n,Ce=0){return(byteToHex[_n[Ce+0]]+byteToHex[_n[Ce+1]]+byteToHex[_n[Ce+2]]+byteToHex[_n[Ce+3]]+"-"+byteToHex[_n[Ce+4]]+byteToHex[_n[Ce+5]]+"-"+byteToHex[_n[Ce+6]]+byteToHex[_n[Ce+7]]+"-"+byteToHex[_n[Ce+8]]+byteToHex[_n[Ce+9]]+"-"+byteToHex[_n[Ce+10]]+byteToHex[_n[Ce+11]]+byteToHex[_n[Ce+12]]+byteToHex[_n[Ce+13]]+byteToHex[_n[Ce+14]]+byteToHex[_n[Ce+15]]).toLowerCase()}var getRandomValues,rnds8=new Uint8Array(16);function rng(){if(!getRandomValues&&(getRandomValues=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!getRandomValues))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return getRandomValues(rnds8)}var randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);const native={randomUUID};function v4(_n,Ce,ke){if(native.randomUUID&&!Ce&&!_n)return native.randomUUID();_n=_n||{};var $n=_n.random||(_n.rng||rng)();return $n[6]=$n[6]&15|64,$n[8]=$n[8]&63|128,unsafeStringify($n)}function create_if_block_1$c(_n){let Ce,ke,$n,Hn,zn;return ke=new Icon({props:{icon:"dice"}}),{c(){Ce=element("button"),create_component(ke.$$.fragment),attr(Ce,"class","btn btn-primary ms-2"),attr(Ce,"title","Generate a new UUIDv4")},m(Zn,qn){insert$1(Zn,Ce,qn),mount_component(ke,Ce,null),$n=!0,Hn||(zn=listen(Ce,"click",_n[4]),Hn=!0)},p:noop,i(Zn){$n||(transition_in(ke.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(ke.$$.fragment,Zn),$n=!1},d(Zn){Zn&&detach(Ce),destroy_component(ke),Hn=!1,zn()}}}function create_if_block$j(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[2]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&4&&set_data(ke,$n[2])},d($n){$n&&detach(Ce)}}}function create_fragment$q(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn=!_n[3]&&create_if_block_1$c(_n),to=_n[2]&&create_if_block$j(_n);return{c(){Ce=element("div"),ke=element("div"),$n=element("input"),Hn=space$3(),Jn&&Jn.c(),zn=space$3(),to&&to.c(),attr($n,"type","text"),attr($n,"id",_n[1]),attr($n,"class","form-control"),attr($n,"autocomplete","off"),$n.readOnly=_n[3],toggle_class($n,"is-invalid",_n[2]),attr(ke,"class","d-flex justify-content-between"),attr(Ce,"class","mb-0")},m(io,uo){insert$1(io,Ce,uo),append(Ce,ke),append(ke,$n),set_input_value($n,_n[0]),append(ke,Hn),Jn&&Jn.m(ke,null),append(Ce,zn),to&&to.m(Ce,null),Zn=!0,qn||(Yn=listen($n,"input",_n[8]),qn=!0)},p(io,[uo]){(!Zn||uo&2)&&attr($n,"id",io[1]),uo&1&&$n.value!==io[0]&&set_input_value($n,io[0]),(!Zn||uo&4)&&toggle_class($n,"is-invalid",io[2]),io[3]||Jn.p(io,uo),io[2]?to?to.p(io,uo):(to=create_if_block$j(io),to.c(),to.m(Ce,null)):to&&(to.d(1),to=null)},i(io){Zn||(transition_in(Jn),Zn=!0)},o(io){transition_out(Jn),Zn=!1},d(io){io&&detach(Ce),Jn&&Jn.d(),to&&to.d(),qn=!1,Yn()}}}function instance$q(_n,Ce,ke){let $n;getContext$1("channelurl");let{validationErrors:Hn}=Ce,{field:zn}=Ce,{value:Zn}=Ce,{id:qn}=Ce,{isCreateMode:Yn}=Ce,Jn=zn.readonly&&!Yn;function to(uo){uo.preventDefault(),ke(0,Zn=v4())}function io(){Zn=this.value,ke(0,Zn)}return _n.$$set=uo=>{"validationErrors"in uo&&ke(5,Hn=uo.validationErrors),"field"in uo&&ke(6,zn=uo.field),"value"in uo&&ke(0,Zn=uo.value),"id"in uo&&ke(1,qn=uo.id),"isCreateMode"in uo&&ke(7,Yn=uo.isCreateMode)},_n.$$.update=()=>{_n.$$.dirty&96&&ke(2,$n=getErrorMessage(Hn,zn.name))},[Zn,qn,$n,Jn,to,Hn,zn,Yn,io]}class UUID extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$q,create_fragment$q,safe_not_equal,{validationErrors:5,field:6,value:0,id:1,isCreateMode:7})}}function get_each_context$a(_n,Ce,ke){const $n=_n.slice();return $n[12]=Ce[ke],$n}function create_if_block_2$5(_n){let Ce,ke;return Ce=new Status({props:{status:_n[0].status}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.status=$n[0].status),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_1$b(_n){let Ce,ke,$n;return ke=new Dropdown({props:{$$slots:{button:[create_button_slot$3],default:[create_default_slot$3]},$$scope:{ctx:_n}}}),{c(){Ce=element("div"),create_component(ke.$$.fragment),attr(Ce,"class","reference-action")},m(Hn,zn){insert$1(Hn,Ce,zn),mount_component(ke,Ce,null),$n=!0},p(Hn,zn){const Zn={};zn&32768&&(Zn.$$scope={dirty:zn,ctx:Hn}),ke.$set(Zn)},i(Hn){$n||(transition_in(ke.$$.fragment,Hn),$n=!0)},o(Hn){transition_out(ke.$$.fragment,Hn),$n=!1},d(Hn){Hn&&detach(Ce),destroy_component(ke)}}}function create_each_block$a(_n){let Ce,ke,$n;function Hn(...zn){return _n[10](_n[12],...zn)}return{c(){Ce=element("button"),Ce.textContent=`${_n[12]}`,attr(Ce,"class","dropdown-item button")},m(zn,Zn){insert$1(zn,Ce,Zn),ke||($n=listen(Ce,"click",Hn),ke=!0)},p(zn,Zn){_n=zn},d(zn){zn&&detach(Ce),ke=!1,$n()}}}function create_default_slot$3(_n){let Ce,ke,$n,Hn,zn,Zn=ensure_array_like(_n[6]),qn=[];for(let Yn=0;Yn{Vo=null}),check_outros()),es[2]?Ko?(Ko.p(es,ls),ls&4&&transition_in(Ko,1)):(Ko=create_if_block_1$b(es),Ko.c(),transition_in(Ko,1),Ko.m(Do,xo)):Ko&&(group_outros(),transition_out(Ko,1,1,()=>{Ko=null}),check_outros()),es[1]?Mo?(Mo.p(es,ls),ls&2&&transition_in(Mo,1)):(Mo=create_if_block$i(es),Mo.c(),transition_in(Mo,1),Mo.m(Do,null)):Mo&&(group_outros(),transition_out(Mo,1,1,()=>{Mo=null}),check_outros())},i(es){Bo||(transition_in(Hn.$$.fragment,es),transition_in(Vo),transition_in(Ko),transition_in(Mo),Bo=!0)},o(es){transition_out(Hn.$$.fragment,es),transition_out(Vo),transition_out(Ko),transition_out(Mo),Bo=!1},d(es){es&&detach(Ce),destroy_component(Hn),Vo&&Vo.d(),Ko&&Ko.d(),Mo&&Mo.d()}}}function instance$p(_n,Ce,ke){const $n=createEventDispatcher(),Hn=getContext$1("channel");let{record:zn}=Ce,{hasDelete:Zn=!1}=Ce,{hasInsert:qn=!1}=Ce,Yn=Hn.schemas.find(Oo=>Oo.name===zn.schema),Jn=previewTitle(Hn.schemas,zn),to=Object.keys(Hn.imageFilters);function io(Oo){Oo.preventDefault(),$n("remove",zn.id)}function uo(Oo,wo){Oo.preventDefault();let $o=htmlurl(Hn,zn,wo);$n("editor-insert",{html:$o,url:Hn.filesUrl+`/templates/${wo}/${zn._file.path}`,originalUrl:Hn.filesUrl+"/"+zn._file.path,record:zn})}const mo=Oo=>uo(Oo,null),bo=(Oo,wo)=>uo(wo,Oo);return _n.$$set=Oo=>{"record"in Oo&&ke(0,zn=Oo.record),"hasDelete"in Oo&&ke(1,Zn=Oo.hasDelete),"hasInsert"in Oo&&ke(2,qn=Oo.hasInsert)},[zn,Zn,qn,Hn,Yn,Jn,to,io,uo,mo,bo]}class PreviewFile extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$p,create_fragment$p,safe_not_equal,{record:0,hasDelete:1,hasInsert:2})}}function get_each_context$9(_n,Ce,ke){const $n=_n.slice();return $n[14]=Ce[ke],$n}function get_each_context_1$3(_n,Ce,ke){const $n=_n.slice();return $n[17]=Ce[ke],$n}function create_else_block$8(_n){let Ce,ke;return Ce=new Dropdown({props:{$$slots:{button:[create_button_slot$2],default:[create_default_slot_1]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1048576&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_1$a(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.textContent="Browse",attr(Ce,"class","button")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[10]),ke=!0)},p:noop,i:noop,o:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_each_block_1$3(_n){let Ce,ke,$n;function Hn(...zn){return _n[11](_n[17],...zn)}return{c(){Ce=element("a"),Ce.textContent=`${_n[17].label}`,attr(Ce,"class","dropdown-item"),attr(Ce,"href","/")},m(zn,Zn){insert$1(zn,Ce,Zn),ke||($n=listen(Ce,"click",Hn),ke=!0)},p(zn,Zn){_n=zn},d(zn){zn&&detach(Ce),ke=!1,$n()}}}function create_default_slot_1(_n){let Ce,ke=ensure_array_like(_n[3]),$n=[];for(let Hn=0;Hnqn[14].id;for(let qn=0;qn0&&create_if_block$h(_n),uo={};return Zn=new Dialog({props:uo}),_n[12](Zn),Zn.$on("insert",_n[7]),{c(){Ce=element("div"),$n.c(),Hn=space$3(),io&&io.c(),zn=space$3(),create_component(Zn.$$.fragment),attr(Ce,"class","mb-0")},m(mo,bo){insert$1(mo,Ce,bo),Jn[ke].m(Ce,null),insert$1(mo,Hn,bo),io&&io.m(mo,bo),insert$1(mo,zn,bo),mount_component(Zn,mo,bo),qn=!0},p(mo,[bo]){let Oo=ke;ke=to(mo),ke===Oo?Jn[ke].p(mo,bo):(group_outros(),transition_out(Jn[Oo],1,1,()=>{Jn[Oo]=null}),check_outros(),$n=Jn[ke],$n?$n.p(mo,bo):($n=Jn[ke]=Yn[ke](mo),$n.c()),transition_in($n,1),$n.m(Ce,null)),mo[2].length>0?io?(io.p(mo,bo),bo&4&&transition_in(io,1)):(io=create_if_block$h(mo),io.c(),transition_in(io,1),io.m(zn.parentNode,zn)):io&&(group_outros(),transition_out(io,1,1,()=>{io=null}),check_outros());const wo={};Zn.$set(wo)},i(mo){qn||(transition_in($n),transition_in(io),transition_in(Zn.$$.fragment,mo),qn=!0)},o(mo){transition_out($n),transition_out(io),transition_out(Zn.$$.fragment,mo),qn=!1},d(mo){mo&&(detach(Ce),detach(Hn),detach(zn)),Jn[ke].d(),io&&io.d(mo),_n[12](null),destroy_component(Zn,mo)}}}function instance$o(_n,Ce,ke){let $n;const Hn=getContext$1("channel");let{field:zn}=Ce,{record:Zn}=Ce,{graph:qn}=Ce,Yn,Jn=Hn.schemas.filter($o=>zn.collections.includes($o.name));function to($o){$o.preventDefault(),ke(8,qn.edges=qn.edges.filter(Do=>!(Do.target===$o.detail&&Do.field===zn.name)),qn)}function io($o,Do){$o.preventDefault(),Yn.open(Do)}async function uo($o){ke(8,qn.edges=await sortByField($o.detail.source,$o.detail.target,qn.edges,zn.name,$n),qn)}function mo($o){$o.preventDefault(),Yn.close(),ke(8,qn=insertEdges(qn,Zn,$o.detail.records,zn.name,$o.detail.action))}const bo=$o=>io($o,Jn[0].name),Oo=($o,Do)=>io(Do,$o.name);function wo($o){binding_callbacks[$o?"unshift":"push"](()=>{Yn=$o,ke(1,Yn)})}return _n.$$set=$o=>{"field"in $o&&ke(0,zn=$o.field),"record"in $o&&ke(9,Zn=$o.record),"graph"in $o&&ke(8,qn=$o.graph)},_n.$$.update=()=>{_n.$$.dirty&769&&ke(2,$n=(qn==null?void 0:qn.edges.filter($o=>$o.field===zn.name).map($o=>qn.records.find(Do=>Do.id===$o.target&&Zn.id===$o.source)).filter($o=>!!($o!=null&&$o.id)))??[])},[zn,Yn,$n,Jn,to,io,uo,mo,qn,Zn,bo,Oo,wo]}let File$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$o,create_fragment$o,safe_not_equal,{field:0,record:9,graph:8})}};function create_if_block$g(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[5]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&32&&set_data(ke,$n[5])},d($n){$n&&detach(Ce)}}}function create_fragment$n(_n){let Ce,ke,$n,Hn,zn,Zn,qn=_n[5]&&create_if_block$g(_n);return{c(){Ce=element("div"),ke=element("textarea"),Hn=space$3(),qn&&qn.c(),attr(ke,"id",_n[3]),attr(ke,"class","form-control svelte-1er4ovm"),attr(ke,"rows","2"),ke.readOnly=$n=_n[1].readonly&&!_n[2],toggle_class(ke,"is-invalid",_n[5]),attr(Ce,"class","mb-0")},m(Yn,Jn){insert$1(Yn,Ce,Jn),append(Ce,ke),set_input_value(ke,_n[0]),_n[8](ke),append(Ce,Hn),qn&&qn.m(Ce,null),zn||(Zn=[listen(ke,"input",_n[7]),listen(ke,"input",resize),listen(ke,"focus",resize)],zn=!0)},p(Yn,[Jn]){Jn&8&&attr(ke,"id",Yn[3]),Jn&6&&$n!==($n=Yn[1].readonly&&!Yn[2])&&(ke.readOnly=$n),Jn&1&&set_input_value(ke,Yn[0]),Jn&32&&toggle_class(ke,"is-invalid",Yn[5]),Yn[5]?qn?qn.p(Yn,Jn):(qn=create_if_block$g(Yn),qn.c(),qn.m(Ce,null)):qn&&(qn.d(1),qn=null)},i:noop,o:noop,d(Yn){Yn&&detach(Ce),_n[8](null),qn&&qn.d(),zn=!1,run_all(Zn)}}}function resize(_n){let Ce;_n.target?Ce=_n.target:Ce=_n,Ce.style.overflow="hidden",Ce.style.height="1px",Ce.style.height=+Ce.scrollHeight+"px"}function instance$n(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce,Yn,{id:Jn}=Ce;onMount(()=>{resize(Yn)});function to(){zn=this.value,ke(0,zn)}function io(uo){binding_callbacks[uo?"unshift":"push"](()=>{Yn=uo,ke(4,Yn)})}return _n.$$set=uo=>{"field"in uo&&ke(1,Hn=uo.field),"value"in uo&&ke(0,zn=uo.value),"isCreateMode"in uo&&ke(2,Zn=uo.isCreateMode),"validationErrors"in uo&&ke(6,qn=uo.validationErrors),"id"in uo&&ke(3,Jn=uo.id)},_n.$$.update=()=>{_n.$$.dirty&66&&ke(5,$n=getErrorMessage(qn,Hn.name))},[zn,Hn,Zn,Jn,Yn,$n,qn,to,io]}class Textarea extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$n,create_fragment$n,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:6,id:3})}}function create_if_block$f(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[5]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&32&&set_data(ke,$n[5])},d($n){$n&&detach(Ce)}}}function create_fragment$m(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn=_n[5]&&create_if_block$f(_n);return{c(){Ce=element("div"),ke=element("input"),Hn=space$3(),zn=element("span"),zn.textContent=`Dates are displayed according to your timezone: ${_n[6]}`,Zn=space$3(),Jn&&Jn.c(),attr(ke,"type","text"),attr(ke,"id",_n[3]),attr(ke,"class","form-control"),attr(ke,"autocomplete","off"),ke.readOnly=$n=_n[1].readonly&&!_n[2],toggle_class(ke,"is-invalid",_n[5]),attr(zn,"class","system-help-text"),attr(Ce,"class","mb-0")},m(to,io){insert$1(to,Ce,io),append(Ce,ke),set_input_value(ke,_n[0]),_n[9](ke),append(Ce,Hn),append(Ce,zn),append(Ce,Zn),Jn&&Jn.m(Ce,null),qn||(Yn=listen(ke,"input",_n[8]),qn=!0)},p(to,[io]){io&8&&attr(ke,"id",to[3]),io&6&&$n!==($n=to[1].readonly&&!to[2])&&(ke.readOnly=$n),io&1&&ke.value!==to[0]&&set_input_value(ke,to[0]),io&32&&toggle_class(ke,"is-invalid",to[5]),to[5]?Jn?Jn.p(to,io):(Jn=create_if_block$f(to),Jn.c(),Jn.m(Ce,null)):Jn&&(Jn.d(1),Jn=null)},i:noop,o:noop,d(to){to&&detach(Ce),_n[9](null),Jn&&Jn.d(),qn=!1,Yn()}}}function instance$m(_n,Ce,ke){let $n,{field:Hn}=Ce,{value:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce;const Yn=Intl.DateTimeFormat().resolvedOptions().timeZone;let{id:Jn}=Ce,to,io={allowInput:!0,altInput:!0,altFormat:"Y-m-d H:i:S",dateFormat:"Z",enableTime:!0,time_24hr:!0,enableSeconds:!0};Hn.min&&(io.minDate=Hn.min),Hn.max&&(io.maxDate=Hn.max),onMount(()=>{(!Hn.readonly||Zn)&&flatpickr(to,io)});function uo(){zn=this.value,ke(0,zn)}function mo(bo){binding_callbacks[bo?"unshift":"push"](()=>{to=bo,ke(4,to)})}return _n.$$set=bo=>{"field"in bo&&ke(1,Hn=bo.field),"value"in bo&&ke(0,zn=bo.value),"isCreateMode"in bo&&ke(2,Zn=bo.isCreateMode),"validationErrors"in bo&&ke(7,qn=bo.validationErrors),"id"in bo&&ke(3,Jn=bo.id)},_n.$$.update=()=>{_n.$$.dirty&130&&ke(5,$n=getErrorMessage(qn,Hn.name))},[zn,Hn,Zn,Jn,to,$n,Yn,qn,uo,mo]}class Datetime extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$m,create_fragment$m,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:7,id:3})}}var tinymce$1={exports:{}};(function(_n){(function(){var Ce=function(Mn){if(Mn===null)return"null";if(Mn===void 0)return"undefined";var Vn=typeof Mn;return Vn==="object"&&(Array.prototype.isPrototypeOf(Mn)||Mn.constructor&&Mn.constructor.name==="Array")?"array":Vn==="object"&&(String.prototype.isPrototypeOf(Mn)||Mn.constructor&&Mn.constructor.name==="String")?"string":Vn},ke=function(Mn){return["undefined","boolean","number","string","function","xml","null"].indexOf(Mn)!==-1},$n=function(Mn,Vn){var Wn=Array.prototype.slice.call(Mn);return Wn.sort(Vn)},Hn=function(Mn,Vn){return zn(function(Wn,jn){return Mn.eq(Vn(Wn),Vn(jn))})},zn=function(Mn){return{eq:Mn}},Zn=zn(function(Mn,Vn){return Mn===Vn}),qn=Zn,Yn=function(Mn){return zn(function(Vn,Wn){if(Vn.length!==Wn.length)return!1;for(var jn=Vn.length,Gn=0;Gn{var jn;return Wn(Mn,Vn.prototype)?!0:((jn=Mn.constructor)===null||jn===void 0?void 0:jn.name)===Vn.name},bo=Mn=>{const Vn=typeof Mn;return Mn===null?"null":Vn==="object"&&Array.isArray(Mn)?"array":Vn==="object"&&mo(Mn,String,(Wn,jn)=>jn.isPrototypeOf(Wn))?"string":Vn},Oo=Mn=>Vn=>bo(Vn)===Mn,wo=Mn=>Vn=>typeof Vn===Mn,$o=Mn=>Vn=>Mn===Vn,Do=(Mn,Vn)=>Bo(Mn)&&mo(Mn,Vn,(Wn,jn)=>uo(Wn)===jn),xo=Oo("string"),Bo=Oo("object"),Vo=Mn=>Do(Mn,Object),Ko=Oo("array"),Mo=$o(null),es=wo("boolean"),ls=$o(void 0),ps=Mn=>Mn==null,rs=Mn=>!ps(Mn),Yo=wo("function"),Ys=wo("number"),sr=(Mn,Vn)=>{if(Ko(Mn)){for(let Wn=0,jn=Mn.length;Wn{},ko=(Mn,Vn)=>(...Wn)=>Mn(Vn.apply(null,Wn)),gs=(Mn,Vn)=>Wn=>Mn(Vn(Wn)),xs=Mn=>()=>Mn,Qr=Mn=>Mn,cr=(Mn,Vn)=>Mn===Vn;function ws(Mn,...Vn){return(...Wn)=>{const jn=Vn.concat(Wn);return Mn.apply(null,jn)}}const Fs=Mn=>Vn=>!Mn(Vn),Br=Mn=>()=>{throw new Error(Mn)},_r=Mn=>Mn(),ha=Mn=>{Mn()},hs=xs(!1),Qs=xs(!0);class zo{constructor(Vn,Wn){this.tag=Vn,this.value=Wn}static some(Vn){return new zo(!0,Vn)}static none(){return zo.singletonNone}fold(Vn,Wn){return this.tag?Wn(this.value):Vn()}isSome(){return this.tag}isNone(){return!this.tag}map(Vn){return this.tag?zo.some(Vn(this.value)):zo.none()}bind(Vn){return this.tag?Vn(this.value):zo.none()}exists(Vn){return this.tag&&Vn(this.value)}forall(Vn){return!this.tag||Vn(this.value)}filter(Vn){return!this.tag||Vn(this.value)?this:zo.none()}getOr(Vn){return this.tag?this.value:Vn}or(Vn){return this.tag?this:Vn}getOrThunk(Vn){return this.tag?this.value:Vn()}orThunk(Vn){return this.tag?this:Vn()}getOrDie(Vn){if(this.tag)return this.value;throw new Error(Vn??"Called getOrDie on None")}static from(Vn){return rs(Vn)?zo.some(Vn):zo.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Vn){this.tag&&Vn(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}zo.singletonNone=new zo(!1);const el=Array.prototype.slice,ga=Array.prototype.indexOf,Ca=Array.prototype.push,za=(Mn,Vn)=>ga.call(Mn,Vn),Il=(Mn,Vn)=>{const Wn=za(Mn,Vn);return Wn===-1?zo.none():zo.some(Wn)},Zs=(Mn,Vn)=>za(Mn,Vn)>-1,Sr=(Mn,Vn)=>{for(let Wn=0,jn=Mn.length;Wn{const Wn=Mn.length,jn=new Array(Wn);for(let Gn=0;Gn{for(let Wn=0,jn=Mn.length;Wn{for(let Wn=Mn.length-1;Wn>=0;Wn--){const jn=Mn[Wn];Vn(jn,Wn)}},Vr=(Mn,Vn)=>{const Wn=[],jn=[];for(let Gn=0,no=Mn.length;Gn{const Wn=[];for(let jn=0,Gn=Mn.length;jn(dr(Mn,(jn,Gn)=>{Wn=Vn(Wn,jn,Gn)}),Wn),ra=(Mn,Vn,Wn)=>(fs(Mn,(jn,Gn)=>{Wn=Vn(Wn,jn,Gn)}),Wn),Ml=(Mn,Vn,Wn)=>{for(let jn=0,Gn=Mn.length;jnMl(Mn,Vn,hs),Nl=(Mn,Vn)=>{for(let Wn=0,jn=Mn.length;Wn{const Vn=[];for(let Wn=0,jn=Mn.length;WnZc(Us(Mn,Vn)),gc=(Mn,Vn)=>{for(let Wn=0,jn=Mn.length;Wn{const Vn=el.call(Mn,0);return Vn.reverse(),Vn},Ed=(Mn,Vn)=>nr(Mn,Wn=>!Zs(Vn,Wn)),Zl=(Mn,Vn)=>{const Wn={};for(let jn=0,Gn=Mn.length;jn{const Wn=el.call(Mn,0);return Wn.sort(Vn),Wn},Fc=(Mn,Vn)=>Vn>=0&&VnFc(Mn,0),Ya=Mn=>Fc(Mn,Mn.length-1),kc=Yo(Array.from)?Array.from:Mn=>el.call(Mn),Yl=(Mn,Vn)=>{for(let Wn=0;Wn{const Wn=[],jn=Yo(Vn)?Gn=>Sr(Wn,no=>Vn(no,Gn)):Gn=>Zs(Wn,Gn);for(let Gn=0,no=Mn.length;Gn{const Wn=Al(Mn);for(let jn=0,Gn=Wn.length;jnSu(Mn,(Wn,jn)=>({k:jn,v:Vn(Wn,jn)})),Su=(Mn,Vn)=>{const Wn={};return Rr(Mn,(jn,Gn)=>{const no=Vn(jn,Gn);Wn[no.k]=no.v}),Wn},vs=Mn=>(Vn,Wn)=>{Mn[Wn]=Vn},Es=(Mn,Vn,Wn,jn)=>{Rr(Mn,(Gn,no)=>{(Vn(Gn,no)?Wn:jn)(Gn,no)})},Ks=(Mn,Vn)=>{const Wn={},jn={};return Es(Mn,Vn,vs(Wn),vs(jn)),{t:Wn,f:jn}},pr=(Mn,Vn)=>{const Wn={};return Es(Mn,Vn,vs(Wn),Js),Wn},ia=(Mn,Vn)=>{const Wn=[];return Rr(Mn,(jn,Gn)=>{Wn.push(Vn(jn,Gn))}),Wn},ka=Mn=>ia(Mn,Qr),Ma=(Mn,Vn)=>Mr(Mn,Vn)?zo.from(Mn[Vn]):zo.none(),Mr=(Mn,Vn)=>gd.call(Mn,Vn),il=(Mn,Vn)=>Mr(Mn,Vn)&&Mn[Vn]!==void 0&&Mn[Vn]!==null,Na=(Mn,Vn,Wn=io)=>to(Wn).eq(Mn,Vn),vl=Mn=>{const Vn={};return fs(Mn,Wn=>{Vn[Wn]={}}),Al(Vn)},Rc=Mn=>Mn.length!==void 0,Vc=Array.isArray,xc=Mn=>{if(Vc(Mn))return Mn;{const Vn=[];for(let Wn=0,jn=Mn.length;Wn{if(!Mn)return!1;if(Wn=Wn||Mn,Rc(Mn)){for(let jn=0,Gn=Mn.length;jn{const Wn=[];return zc(Mn,(jn,Gn)=>{Wn.push(Vn(jn,Gn,Mn))}),Wn},Bh=(Mn,Vn)=>{const Wn=[];return zc(Mn,(jn,Gn)=>{(!Vn||Vn(jn,Gn,Mn))&&Wn.push(jn)}),Wn},Vu=(Mn,Vn)=>{if(Mn){for(let Wn=0,jn=Mn.length;Wn{let Gn=ls(Wn)?Mn[0]:Wn;for(let no=0;no{for(let jn=0,Gn=Mn.length;jnMn[Mn.length-1],br=Mn=>{let Vn=!1,Wn;return(...jn)=>(Vn||(Vn=!0,Wn=Mn.apply(null,jn)),Wn)},Aa=(Mn,Vn,Wn,jn)=>{const Gn=Mn.isiOS()&&/ipad/i.test(Wn)===!0,no=Mn.isiOS()&&!Gn,ao=Mn.isiOS()||Mn.isAndroid(),po=ao||jn("(pointer:coarse)"),vo=Gn||!no&&ao&&jn("(min-device-width:768px)"),Ao=no||ao&&!vo,Fo=Vn.isSafari()&&Mn.isiOS()&&/safari/i.test(Wn)===!1,Qo=!Ao&&!vo&&!Fo;return{isiPad:xs(Gn),isiPhone:xs(no),isTablet:xs(vo),isPhone:xs(Ao),isTouch:xs(po),isAndroid:Mn.isAndroid,isiOS:Mn.isiOS,isWebView:xs(Fo),isDesktop:xs(Qo)}},Ba=(Mn,Vn)=>{for(let Wn=0;Wn{const Wn=Ba(Mn,Vn);if(!Wn)return{major:0,minor:0};const jn=Gn=>Number(Vn.replace(Wn,"$"+Gn));return tl(jn(1),jn(2))},Hc=(Mn,Vn)=>{const Wn=String(Vn).toLowerCase();return Mn.length===0?Ds():_l(Mn,Wn)},Ds=()=>tl(0,0),tl=(Mn,Vn)=>({major:Mn,minor:Vn}),wu={nu:tl,detect:Hc,unknown:Ds},qu=(Mn,Vn)=>Yl(Vn.brands,Wn=>{const jn=Wn.brand.toLowerCase();return xa(Mn,Gn=>{var no;return jn===((no=Gn.brand)===null||no===void 0?void 0:no.toLowerCase())}).map(Gn=>({current:Gn.name,version:wu.nu(parseInt(Wn.version,10),0)}))}),Md=(Mn,Vn)=>{const Wn=String(Vn).toLowerCase();return xa(Mn,jn=>jn.search(Wn))},bc=(Mn,Vn)=>Md(Mn,Vn).map(Wn=>{const jn=wu.detect(Wn.versionRegexes,Vn);return{current:Wn.name,version:jn}}),nm=(Mn,Vn)=>Md(Mn,Vn).map(Wn=>{const jn=wu.detect(Wn.versionRegexes,Vn);return{current:Wn.name,version:jn}}),Ff=(Mn,Vn)=>Mn.substring(Vn),Ud=(Mn,Vn,Wn)=>Vn===""||Mn.length>=Vn.length&&Mn.substr(Wn,Wn+Vn.length)===Vn,ld=(Mn,Vn)=>Dc(Mn,Vn)?Ff(Mn,Vn.length):Mn,oc=(Mn,Vn,Wn=0,jn)=>{const Gn=Mn.indexOf(Vn,Wn);return Gn!==-1?ls(jn)?!0:Gn+Vn.length<=jn:!1},Dc=(Mn,Vn)=>Ud(Mn,Vn,0),bd=(Mn,Vn)=>Ud(Mn,Vn,Mn.length-Vn.length),Nd=Mn=>Vn=>Vn.replace(Mn,""),ih=Nd(/^\s+|\s+$/g),om=Nd(/^\s+/g),sm=Nd(/\s+$/g),fc=Mn=>Mn.length>0,Td=Mn=>!fc(Mn),Jd=(Mn,Vn)=>Vn<=0?"":new Array(Vn+1).join(Mn),Em=(Mn,Vn=10)=>{const Wn=parseInt(Mn,Vn);return isNaN(Wn)?zo.none():zo.some(Wn)},ef=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Cu=Mn=>Vn=>oc(Vn,Mn),Qc=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:Mn=>oc(Mn,"edge/")&&oc(Mn,"chrome")&&oc(Mn,"safari")&&oc(Mn,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,ef],search:Mn=>oc(Mn,"chrome")&&!oc(Mn,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:Mn=>oc(Mn,"msie")||oc(Mn,"trident")},{name:"Opera",versionRegexes:[ef,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Cu("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Cu("firefox")},{name:"Safari",versionRegexes:[ef,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:Mn=>(oc(Mn,"safari")||oc(Mn,"mobile/"))&&oc(Mn,"applewebkit")}],Cf=[{name:"Windows",search:Cu("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:Mn=>oc(Mn,"iphone")||oc(Mn,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Cu("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Cu("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Cu("linux"),versionRegexes:[]},{name:"Solaris",search:Cu("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Cu("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Cu("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],qm={browsers:xs(Qc),oses:xs(Cf)},Oc="Edge",cd="Chromium",vd="IE",ju="Opera",Xf="Firefox",Sh="Safari",Zd=()=>ah({current:void 0,version:wu.unknown()}),ah=Mn=>{const Vn=Mn.current,Wn=Mn.version,jn=Gn=>()=>Vn===Gn;return{current:Vn,version:Wn,isEdge:jn(Oc),isChromium:jn(cd),isIE:jn(vd),isOpera:jn(ju),isFirefox:jn(Xf),isSafari:jn(Sh)}},lh={unknown:Zd,nu:ah,edge:xs(Oc),chromium:xs(cd),ie:xs(vd),opera:xs(ju),firefox:xs(Xf),safari:xs(Sh)},Bp="Windows",ch="iOS",bp="Android",kf="Linux",Fh="macOS",jm="Solaris",Fp="FreeBSD",Eg="ChromeOS",ss=()=>As({current:void 0,version:wu.unknown()}),As=Mn=>{const Vn=Mn.current,Wn=Mn.version,jn=Gn=>()=>Vn===Gn;return{current:Vn,version:Wn,isWindows:jn(Bp),isiOS:jn(ch),isAndroid:jn(bp),isMacOS:jn(Fh),isLinux:jn(kf),isSolaris:jn(jm),isFreeBSD:jn(Fp),isChromeOS:jn(Eg)}},Ws={unknown:ss,nu:As,windows:xs(Bp),ios:xs(ch),android:xs(bp),linux:xs(kf),macos:xs(Fh),solaris:xs(jm),freebsd:xs(Fp),chromeos:xs(Eg)},Fr={detect:(Mn,Vn,Wn)=>{const jn=qm.browsers(),Gn=qm.oses(),no=Vn.bind(vo=>qu(jn,vo)).orThunk(()=>bc(jn,Mn)).fold(lh.unknown,lh.nu),ao=nm(Gn,Mn).fold(Ws.unknown,Ws.nu),po=Aa(ao,no,Mn,Wn);return{browser:no,os:ao,deviceType:po}}},Wa=Mn=>window.matchMedia(Mn).matches;let Nc=br(()=>Fr.detect(navigator.userAgent,zo.from(navigator.userAgentData),Wa));const xl=()=>Nc(),ul=navigator.userAgent,lu=xl(),Gl=lu.browser,Ru=lu.os,xf=lu.deviceType,Hp=ul.indexOf("Windows Phone")!==-1,aa={transparentSrc:"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",documentMode:Gl.isIE()?document.documentMode||7:10,cacheSuffix:null,container:null,canHaveCSP:!Gl.isIE(),windowsPhone:Hp,browser:{current:Gl.current,version:Gl.version,isChromium:Gl.isChromium,isEdge:Gl.isEdge,isFirefox:Gl.isFirefox,isIE:Gl.isIE,isOpera:Gl.isOpera,isSafari:Gl.isSafari},os:{current:Ru.current,version:Ru.version,isAndroid:Ru.isAndroid,isChromeOS:Ru.isChromeOS,isFreeBSD:Ru.isFreeBSD,isiOS:Ru.isiOS,isLinux:Ru.isLinux,isMacOS:Ru.isMacOS,isSolaris:Ru.isSolaris,isWindows:Ru.isWindows},deviceType:{isDesktop:xf.isDesktop,isiPad:xf.isiPad,isiPhone:xf.isiPhone,isPhone:xf.isPhone,isTablet:xf.isTablet,isTouch:xf.isTouch,isWebView:xf.isWebView}},Qp=/^\s*|\s*$/g,Bu=Mn=>ps(Mn)?"":(""+Mn).replace(Qp,""),Uo=(Mn,Vn)=>Vn?Vn==="array"&&Vc(Mn)?!0:typeof Mn===Vn:Mn!==void 0,cs=(Mn,Vn,Wn={})=>{const jn=xo(Mn)?Mn.split(Vn||","):Mn||[];let Gn=jn.length;for(;Gn--;)Wn[jn[Gn]]={};return Wn},_s=Mr,ar=(Mn,...Vn)=>{for(let Wn=0;WnVn.call(jn,Gn,no,Wn)===!1?!1:(ta(Gn,Vn,Wn,jn),!0)))},Lr={trim:Bu,isArray:Vc,is:Uo,toArray:xc,makeMap:cs,each:zc,map:ad,grep:Bh,inArray:Vu,hasOwn:_s,extend:ar,walk:ta,resolve:(Mn,Vn=window)=>{const Wn=Mn.split(".");for(let jn=0,Gn=Wn.length;jnKo(Mn)?Mn:Mn===""?[]:ad(Mn.split(Vn||","),Bu),_addCacheSuffix:Mn=>{const Vn=aa.cacheSuffix;return Vn&&(Mn+=(Mn.indexOf("?")===-1?"?":"&")+Vn),Mn}},qc=(Mn,Vn,Wn=cr)=>Mn.exists(jn=>Wn(jn,Vn)),Ef=(Mn,Vn,Wn=cr)=>jc(Mn,Vn,Wn).getOr(Mn.isNone()&&Vn.isNone()),ku=Mn=>{const Vn=[],Wn=jn=>{Vn.push(jn)};for(let jn=0;jnMn.isSome()&&Vn.isSome()?zo.some(Wn(Mn.getOrDie(),Vn.getOrDie())):zo.none(),Tm=(Mn,Vn,Wn,jn)=>Mn.isSome()&&Vn.isSome()&&Wn.isSome()?zo.some(jn(Mn.getOrDie(),Vn.getOrDie(),Wn.getOrDie())):zo.none(),El=(Mn,Vn)=>Mn?zo.some(Vn):zo.none(),Hf=typeof window<"u"?window:Function("return this;")(),hu=(Mn,Vn)=>{let Wn=Vn??Hf;for(let jn=0;jn{const Wn=Mn.split(".");return hu(Wn,Vn)},cu=(Mn,Vn)=>Qf(Mn,Vn),Vp=(Mn,Vn)=>{const Wn=cu(Mn,Vn);if(Wn==null)throw new Error(Mn+" not available on this browser");return Wn},ud=Object.getPrototypeOf,vp=Mn=>Vp("HTMLElement",Mn),vc=Mn=>{const Vn=Qf("ownerDocument.defaultView",Mn);return Bo(Mn)&&(vp(Vn).prototype.isPrototypeOf(Mn)||/^HTML\w*Element$/.test(ud(Mn).constructor.name))},Am=8,Pm=9,uh=11,Hh=1,A1=3,ql=Mn=>Mn.dom.nodeName.toLowerCase(),dd=Mn=>Mn.dom.nodeType,yd=Mn=>Vn=>dd(Vn)===Mn,mv=Mn=>dd(Mn)===Am||ql(Mn)==="#comment",Du=Mn=>lf(Mn)&&vc(Mn.dom),lf=yd(Hh),qd=yd(A1),Eb=yd(Pm),Tb=yd(uh),Qh=Mn=>Vn=>lf(Vn)&&ql(Vn)===Mn,Xg=(Mn,Vn,Wn)=>{if(xo(Wn)||es(Wn)||Ys(Wn))Mn.setAttribute(Vn,Wn+"");else throw console.error("Invalid call to Attribute.set. Key ",Vn,":: Value ",Wn,":: Element ",Mn),new Error("Attribute value was not simple")},Gc=(Mn,Vn,Wn)=>{Xg(Mn.dom,Vn,Wn)},im=(Mn,Vn)=>{const Wn=Mn.dom;Rr(Vn,(jn,Gn)=>{Xg(Wn,Gn,jn)})},Tf=(Mn,Vn)=>{const Wn=Mn.dom.getAttribute(Vn);return Wn===null?void 0:Wn},Ld=(Mn,Vn)=>zo.from(Tf(Mn,Vn)),Od=(Mn,Vn)=>{const Wn=Mn.dom;return Wn&&Wn.hasAttribute?Wn.hasAttribute(Vn):!1},Mu=(Mn,Vn)=>{Mn.dom.removeAttribute(Vn)},Vh=Mn=>{const Vn=Mn.dom.attributes;return Vn==null||Vn.length===0},zp=Mn=>ra(Mn.dom.attributes,(Vn,Wn)=>(Vn[Wn.name]=Wn.value,Vn),{}),Tg=(Mn,Vn)=>{const Wn=Tf(Mn,Vn);return Wn===void 0||Wn===""?[]:Wn.split(" ")},Ab=(Mn,Vn,Wn)=>{const Gn=Tg(Mn,Vn).concat([Wn]);return Gc(Mn,Vn,Gn.join(" ")),!0},P1=(Mn,Vn,Wn)=>{const jn=nr(Tg(Mn,Vn),Gn=>Gn!==Wn);return jn.length>0?Gc(Mn,Vn,jn.join(" ")):Mu(Mn,Vn),!1},Yf=Mn=>Mn.dom.classList!==void 0,$1=Mn=>Tg(Mn,"class"),jd=(Mn,Vn)=>Ab(Mn,"class",Vn),$m=(Mn,Vn)=>P1(Mn,"class",Vn),R1=(Mn,Vn)=>Zs($1(Mn),Vn)?$m(Mn,Vn):jd(Mn,Vn),Xm=(Mn,Vn)=>{Yf(Mn)?Mn.dom.classList.add(Vn):jd(Mn,Vn)},Yg=Mn=>{(Yf(Mn)?Mn.dom.classList:$1(Mn)).length===0&&Mu(Mn,"class")},Vf=(Mn,Vn)=>{Yf(Mn)?Mn.dom.classList.remove(Vn):$m(Mn,Vn),Yg(Mn)},Gg=(Mn,Vn)=>{const Wn=Yf(Mn)?Mn.dom.classList.toggle(Vn):R1(Mn,Vn);return Yg(Mn),Wn},yp=(Mn,Vn)=>Yf(Mn)&&Mn.dom.classList.contains(Vn),p0=(Mn,Vn)=>{const jn=(Vn||document).createElement("div");if(jn.innerHTML=Mn,!jn.hasChildNodes()||jn.childNodes.length>1){const Gn="HTML does not have a single root node";throw console.error(Gn,Mn),new Error(Gn)}return zf(jn.childNodes[0])},g0=(Mn,Vn)=>{const jn=(Vn||document).createElement(Mn);return zf(jn)},Wp=(Mn,Vn)=>{const jn=(Vn||document).createTextNode(Mn);return zf(jn)},zf=Mn=>{if(Mn==null)throw new Error("Node cannot be null or undefined");return{dom:Mn}},Cs={fromHtml:p0,fromTag:g0,fromText:Wp,fromDom:zf,fromPoint:(Mn,Vn,Wn)=>zo.from(Mn.dom.elementFromPoint(Vn,Wn)).map(zf)},Up=(Mn,Vn)=>{const Wn=[],jn=no=>(Wn.push(no),Vn(no));let Gn=Vn(Mn);do Gn=Gn.bind(jn);while(Gn.isSome());return Wn},zh=(Mn,Vn)=>{const Wn=Mn.dom;if(Wn.nodeType!==Hh)return!1;{const jn=Wn;if(jn.matches!==void 0)return jn.matches(Vn);if(jn.msMatchesSelector!==void 0)return jn.msMatchesSelector(Vn);if(jn.webkitMatchesSelector!==void 0)return jn.webkitMatchesSelector(Vn);if(jn.mozMatchesSelector!==void 0)return jn.mozMatchesSelector(Vn);throw new Error("Browser lacks native selectors")}},Kg=Mn=>Mn.nodeType!==Hh&&Mn.nodeType!==Pm&&Mn.nodeType!==uh||Mn.childElementCount===0,v0=(Mn,Vn)=>{const Wn=Vn===void 0?document:Vn.dom;return Kg(Wn)?[]:Us(Wn.querySelectorAll(Mn),Cs.fromDom)},Jg=(Mn,Vn)=>{const Wn=Vn===void 0?document:Vn.dom;return Kg(Wn)?zo.none():zo.from(Wn.querySelector(Mn)).map(Cs.fromDom)},Vs=(Mn,Vn)=>Mn.dom===Vn.dom,Dr=(Mn,Vn)=>{const Wn=Mn.dom,jn=Vn.dom;return Wn===jn?!1:Wn.contains(jn)},Tr=Mn=>Cs.fromDom(Mn.dom.ownerDocument),Fa=Mn=>Eb(Mn)?Mn:Tr(Mn),zl=Mn=>Cs.fromDom(Fa(Mn).dom.documentElement),_c=Mn=>Cs.fromDom(Fa(Mn).dom.defaultView),Wc=Mn=>zo.from(Mn.dom.parentNode).map(Cs.fromDom),Uc=Mn=>zo.from(Mn.dom.parentElement).map(Cs.fromDom),D1=(Mn,Vn)=>{const Wn=Yo(Vn)?Vn:hs;let jn=Mn.dom;const Gn=[];for(;jn.parentNode!==null&&jn.parentNode!==void 0;){const no=jn.parentNode,ao=Cs.fromDom(no);if(Gn.push(ao),Wn(ao)===!0)break;jn=no}return Gn},pv=Mn=>{const Vn=Wn=>nr(Wn,jn=>!Vs(Mn,jn));return Wc(Mn).map(Ku).map(Vn).getOr([])},_d=Mn=>zo.from(Mn.dom.previousSibling).map(Cs.fromDom),Wh=Mn=>zo.from(Mn.dom.nextSibling).map(Cs.fromDom),y0=Mn=>nc(Up(Mn,_d)),Id=Mn=>Up(Mn,Wh),Ku=Mn=>Us(Mn.dom.childNodes,Cs.fromDom),Rm=(Mn,Vn)=>{const Wn=Mn.dom.childNodes;return zo.from(Wn[Vn]).map(Cs.fromDom)},iu=Mn=>Rm(Mn,0),am=Mn=>Rm(Mn,Mn.dom.childNodes.length-1),Af=Mn=>Mn.dom.childNodes.length,e1=Mn=>Mn.dom.hasChildNodes(),gv=Mn=>{const Vn=Mn.dom.head;if(Vn==null)throw new Error("Head is not available yet");return Cs.fromDom(Vn)},M1=Mn=>Tb(Mn)&&rs(Mn.dom.host),Pb=Yo(Element.prototype.attachShadow)&&Yo(Node.prototype.getRootNode),Op=xs(Pb),Wf=Pb?Mn=>Cs.fromDom(Mn.dom.getRootNode()):Fa,N1=Mn=>M1(Mn)?Mn:gv(Fa(Mn)),Ny=Mn=>M1(Mn)?Mn:Cs.fromDom(Fa(Mn).dom.body),t1=Mn=>{const Vn=Wf(Mn);return M1(Vn)?zo.some(Vn):zo.none()},$b=Mn=>Cs.fromDom(Mn.dom.host),Zp=Mn=>{if(Op()&&rs(Mn.target)){const Vn=Cs.fromDom(Mn.target);if(lf(Vn)&&qp(Vn)&&Mn.composed&&Mn.composedPath){const Wn=Mn.composedPath();if(Wn)return qa(Wn)}}return zo.from(Mn.target)},qp=Mn=>rs(Mn.dom.shadowRoot),Ag=Mn=>{const Vn=qd(Mn)?Mn.dom.parentNode:Mn.dom;if(Vn==null||Vn.ownerDocument===null)return!1;const Wn=Vn.ownerDocument;return t1(Cs.fromDom(Vn)).fold(()=>Wn.body.contains(Vn),gs(Ag,$b))};var Kc=(Mn,Vn,Wn,jn,Gn)=>Mn(Wn,jn)?zo.some(Wn):Yo(Gn)&&Gn(Wn)?zo.none():Vn(Wn,jn,Gn);const au=(Mn,Vn,Wn)=>{let jn=Mn.dom;const Gn=Yo(Wn)?Wn:hs;for(;jn.parentNode;){jn=jn.parentNode;const no=Cs.fromDom(jn);if(Vn(no))return zo.some(no);if(Gn(no))break}return zo.none()},cf=(Mn,Vn,Wn)=>Kc((Gn,no)=>no(Gn),au,Mn,Vn,Wn),O0=(Mn,Vn)=>{const Wn=Mn.dom;return Wn.parentNode?bv(Cs.fromDom(Wn.parentNode),jn=>!Vs(Mn,jn)&&Vn(jn)):zo.none()},bv=(Mn,Vn)=>{const Wn=Gn=>Vn(Cs.fromDom(Gn));return xa(Mn.dom.childNodes,Wn).map(Cs.fromDom)},tf=(Mn,Vn)=>{const Wn=jn=>{for(let Gn=0;Gnau(Mn,jn=>zh(jn,Vn),Wn),uf=(Mn,Vn)=>Jg(Vn,Mn),cm=(Mn,Vn,Wn)=>Kc((Gn,no)=>zh(Gn,no),lm,Mn,Vn,Wn),Rb=Mn=>cm(Mn,"[contenteditable]"),yl=(Mn,Vn=!1)=>Ag(Mn)?Mn.dom.isContentEditable:Rb(Mn).fold(xs(Vn),Wn=>dh(Wn)==="true"),dh=Mn=>Mn.dom.contentEditable,jp=Mn=>Mn.style!==void 0&&Yo(Mn.style.getPropertyValue),Sd=(Mn,Vn,Wn)=>{if(!xo(Wn))throw console.error("Invalid call to CSS.set. Property ",Vn,":: Value ",Wn,":: Element ",Mn),new Error("CSS value must be a string: "+Wn);jp(Mn)&&Mn.style.setProperty(Vn,Wn)},df=(Mn,Vn)=>{jp(Mn)&&Mn.style.removeProperty(Vn)},vv=(Mn,Vn,Wn)=>{const jn=Mn.dom;Sd(jn,Vn,Wn)},ff=(Mn,Vn)=>{const Wn=Mn.dom;Rr(Vn,(jn,Gn)=>{Sd(Wn,Gn,jn)})},Ju=(Mn,Vn)=>{const Wn=Mn.dom,Gn=window.getComputedStyle(Wn).getPropertyValue(Vn);return Gn===""&&!Ag(Mn)?wh(Wn,Vn):Gn},wh=(Mn,Vn)=>jp(Mn)?Mn.style.getPropertyValue(Vn):"",fd=(Mn,Vn)=>{const Wn=Mn.dom,jn=wh(Wn,Vn);return zo.from(jn).filter(Gn=>Gn.length>0)},Ym=Mn=>{const Vn={},Wn=Mn.dom;if(jp(Wn))for(let jn=0;jn{const Wn=Mn.dom;df(Wn,Vn),qc(Ld(Mn,"style").map(ih),"")&&Mu(Mn,"style")},xu=Mn=>Mn.dom.offsetWidth,ed=(Mn,Vn)=>{Wc(Mn).each(jn=>{jn.dom.insertBefore(Vn.dom,Mn.dom)})},fh=(Mn,Vn)=>{Wh(Mn).fold(()=>{Wc(Mn).each(Gn=>{Fu(Gn,Vn)})},jn=>{ed(jn,Vn)})},Gm=(Mn,Vn)=>{iu(Mn).fold(()=>{Fu(Mn,Vn)},jn=>{Mn.dom.insertBefore(Vn.dom,jn.dom)})},Fu=(Mn,Vn)=>{Mn.dom.appendChild(Vn.dom)},_0=(Mn,Vn)=>{ed(Mn,Vn),Fu(Vn,Mn)},yv=(Mn,Vn)=>{fs(Vn,(Wn,jn)=>{const Gn=jn===0?Mn:Vn[jn-1];fh(Gn,Wn)})},Lc=(Mn,Vn)=>{fs(Vn,Wn=>{Fu(Mn,Wn)})},Dm=Mn=>{Mn.dom.textContent="",fs(Ku(Mn),Vn=>{sc(Vn)})},sc=Mn=>{const Vn=Mn.dom;Vn.parentNode!==null&&Vn.parentNode.removeChild(Vn)},hf=Mn=>{const Vn=Ku(Mn);Vn.length>0&&yv(Mn,Vn),sc(Mn)},um=(Mn,Vn)=>{const jn=(Vn||document).createElement("div");return jn.innerHTML=Mn,Ku(Cs.fromDom(jn))},Km=Mn=>Us(Mn,Cs.fromDom),os=Mn=>Mn.dom.innerHTML,dm=(Mn,Vn)=>{const jn=Tr(Mn).dom,Gn=Cs.fromDom(jn.createDocumentFragment()),no=um(Vn,jn);Lc(Gn,no),Dm(Mn),Fu(Mn,Gn)},n1=Mn=>{const Vn=Cs.fromTag("div"),Wn=Cs.fromDom(Mn.dom.cloneNode(!0));return Fu(Vn,Wn),os(Vn)},Ch=(Mn,Vn,Wn,jn,Gn,no,ao)=>({target:Mn,x:Vn,y:Wn,stop:jn,prevent:Gn,kill:no,raw:ao}),Xc=Mn=>{const Vn=Cs.fromDom(Zp(Mn).getOr(Mn.target)),Wn=()=>Mn.stopPropagation(),jn=()=>Mn.preventDefault(),Gn=ko(jn,Wn);return Ch(Vn,Mn.clientX,Mn.clientY,Wn,jn,Gn,Mn)},Ov=(Mn,Vn)=>Wn=>{Mn(Wn)&&Vn(Xc(Wn))},Db=(Mn,Vn,Wn,jn,Gn)=>{const no=Ov(Wn,jn);return Mn.dom.addEventListener(Vn,no,Gn),{unbind:ws(Mm,Mn,Vn,no,Gn)}},S0=(Mn,Vn,Wn,jn)=>Db(Mn,Vn,Wn,jn,!1),Mm=(Mn,Vn,Wn,jn)=>{Mn.dom.removeEventListener(Vn,Wn,jn)},Eo=(Mn,Vn)=>({left:Mn,top:Vn,translate:(jn,Gn)=>Eo(Mn+jn,Vn+Gn)}),Io=Eo,Go=Mn=>{const Vn=Mn.getBoundingClientRect();return Io(Vn.left,Vn.top)},Ss=(Mn,Vn)=>Mn!==void 0?Mn:Vn!==void 0?Vn:0,Rs=Mn=>{const Vn=Mn.dom.ownerDocument,Wn=Vn.body,jn=Vn.defaultView,Gn=Vn.documentElement;if(Wn===Mn.dom)return Io(Wn.offsetLeft,Wn.offsetTop);const no=Ss(jn==null?void 0:jn.pageYOffset,Gn.scrollTop),ao=Ss(jn==null?void 0:jn.pageXOffset,Gn.scrollLeft),po=Ss(Gn.clientTop,Wn.clientTop),vo=Ss(Gn.clientLeft,Wn.clientLeft);return $r(Mn).translate(ao-vo,no-po)},$r=Mn=>{const Vn=Mn.dom,jn=Vn.ownerDocument.body;return jn===Vn?Io(jn.offsetLeft,jn.offsetTop):Ag(Mn)?Go(Vn):Io(0,0)},Ea=Mn=>{const Vn=Mn!==void 0?Mn.dom:document,Wn=Vn.body.scrollLeft||Vn.documentElement.scrollLeft,jn=Vn.body.scrollTop||Vn.documentElement.scrollTop;return Io(Wn,jn)},ll=(Mn,Vn,Wn)=>{const Gn=(Wn!==void 0?Wn.dom:document).defaultView;Gn&&Gn.scrollTo(Mn,Vn)},nl=(Mn,Vn)=>{xl().browser.isSafari()&&Yo(Mn.dom.scrollIntoViewIfNeeded)?Mn.dom.scrollIntoViewIfNeeded(!1):Mn.dom.scrollIntoView(Vn)},Xa=Mn=>{const Vn=Mn===void 0?window:Mn;return xl().browser.isFirefox()?zo.none():zo.from(Vn.visualViewport)},Nu=(Mn,Vn,Wn,jn)=>({x:Mn,y:Vn,width:Wn,height:jn,right:Mn+Wn,bottom:Vn+jn}),zu=Mn=>{const Vn=Mn===void 0?window:Mn,Wn=Vn.document,jn=Ea(Cs.fromDom(Wn));return Xa(Vn).fold(()=>{const Gn=Vn.document.documentElement,no=Gn.clientWidth,ao=Gn.clientHeight;return Nu(jn.left,jn.top,no,ao)},Gn=>Nu(Math.max(Gn.pageLeft,jn.left),Math.max(Gn.pageTop,jn.top),Gn.width,Gn.height))},kh=(Mn,Vn)=>nr(Ku(Mn),Vn),Sp=(Mn,Vn)=>{let Wn=[];return fs(Ku(Mn),jn=>{Vn(jn)&&(Wn=Wn.concat([jn])),Wn=Wn.concat(Sp(jn,Vn))}),Wn},mf=(Mn,Vn)=>v0(Vn,Mn),fS=(Mn,Vn,Wn)=>lm(Mn,Vn,Wn).isSome();class mu{constructor(Vn,Wn){this.node=Vn,this.rootNode=Wn,this.current=this.current.bind(this),this.next=this.next.bind(this),this.prev=this.prev.bind(this),this.prev2=this.prev2.bind(this)}current(){return this.node}next(Vn){return this.node=this.findSibling(this.node,"firstChild","nextSibling",Vn),this.node}prev(Vn){return this.node=this.findSibling(this.node,"lastChild","previousSibling",Vn),this.node}prev2(Vn){return this.node=this.findPreviousNode(this.node,Vn),this.node}findSibling(Vn,Wn,jn,Gn){if(Vn){if(!Gn&&Vn[Wn])return Vn[Wn];if(Vn!==this.rootNode){let no=Vn[jn];if(no)return no;for(let ao=Vn.parentNode;ao&&ao!==this.rootNode;ao=ao.parentNode)if(no=ao[jn],no)return no}}}findPreviousNode(Vn,Wn){if(Vn){const jn=Vn.previousSibling;if(this.rootNode&&jn===this.rootNode)return;if(jn){if(!Wn){for(let no=jn.lastChild;no;no=no.lastChild)if(!no.lastChild)return no}return jn}const Gn=Vn.parentNode;if(Gn&&Gn!==this.rootNode)return Gn}}}const Ta=Mn=>Vn=>!!Vn&&Vn.nodeType===Mn,Xp=Mn=>!!Mn&&!Object.getPrototypeOf(Mn),Oa=Ta(1),pf=Mn=>Oa(Mn)&&Du(Cs.fromDom(Mn)),$O=Mn=>Oa(Mn)&&Mn.namespaceURI==="http://www.w3.org/2000/svg",Yp=Mn=>{const Vn=Mn.toLowerCase();return Wn=>rs(Wn)&&Wn.nodeName.toLowerCase()===Vn},Ad=Mn=>{const Vn=Mn.map(Wn=>Wn.toLowerCase());return Wn=>{if(Wn&&Wn.nodeName){const jn=Wn.nodeName.toLowerCase();return Zs(Vn,jn)}return!1}},Pg=(Mn,Vn)=>{const Wn=Vn.toLowerCase().split(" ");return jn=>{if(Oa(jn)){const Gn=jn.ownerDocument.defaultView;if(Gn)for(let no=0;noVn=>Oa(Vn)&&Vn.hasAttribute(Mn),nf=(Mn,Vn)=>Wn=>Oa(Wn)&&Wn.getAttribute(Mn)===Vn,Jm=Mn=>Oa(Mn)&&Mn.hasAttribute("data-mce-bogus"),_v=Mn=>Oa(Mn)&&Mn.getAttribute("data-mce-bogus")==="all",Gp=Mn=>Oa(Mn)&&Mn.tagName==="TABLE",Sv=Mn=>Vn=>!!(pf(Vn)&&(Vn.contentEditable===Mn||Vn.getAttribute("data-mce-contenteditable")===Mn)),$g=Ad(["textarea","input"]),Ir=Ta(3),RO=Ta(4),Rg=Ta(7),Dg=Ta(8),Nm=Ta(9),Lu=Ta(11),Ec=Yp("br"),td=Yp("img"),Gf=Sv("true"),jl=Sv("false"),L1=Ad(["td","th"]),Bd=Ad(["td","th","caption"]),pu=Ad(["video","audio","object","embed"]),C0=Yp("li"),Er=Yp("details"),Kf=Yp("summary"),k0="\uFEFF",hc=" ",hd=Mn=>Mn===k0,wv=Mn=>Mn.replace(/\uFEFF/g,""),tp=((Mn,Vn)=>{const Wn=no=>{if(!Mn(no))throw new Error("Can only get "+Vn+" value of a "+Vn+" node");return jn(no).getOr("")},jn=no=>Mn(no)?zo.from(no.dom.nodeValue):zo.none();return{get:Wn,getOption:jn,set:(no,ao)=>{if(!Mn(no))throw new Error("Can only set raw "+Vn+" value of a "+Vn+" node");no.dom.nodeValue=ao}}})(qd,"text"),fm=Mn=>tp.get(Mn),Mb=Mn=>tp.getOption(Mn),Pf=(Mn,Vn)=>tp.set(Mn,Vn),Tc=["td","th"],Fd=["thead","tbody","tfoot"],Mg=["h1","h2","h3","h4","h5","h6","p","div","address","pre","form","blockquote","center","dir","fieldset","header","footer","article","section","hgroup","aside","nav","figure"],$f=["li","dd","dt"],Ly=["ul","ol","dl"],I1=["pre","script","textarea","style"],Ng=Mn=>{let Vn;return Wn=>(Vn=Vn||Zl(Mn,Qs),Mr(Vn,ql(Wn)))},hh=Mn=>ql(Mn)==="table",np=Mn=>lf(Mn)&&ql(Mn)==="br",Gs=Ng(Mg),xh=Ng(Ly),Lm=Ng($f),mh=Ng(Fd),Eh=Ng(Tc),Xd=Ng(I1),Hd=Mn=>{const Vn=[];let Wn=Mn.dom;for(;Wn;)Vn.push(Cs.fromDom(Wn)),Wn=Wn.lastChild;return Vn},Iy=Mn=>{const Vn=mf(Mn,"br"),Wn=nr(Hd(Mn).slice(-1),np);Vn.length===Wn.length&&fs(Wn,sc)},Th=()=>{const Mn=Cs.fromTag("br");return Gc(Mn,"data-mce-bogus","1"),Mn},Kp=Mn=>{Dm(Mn),Fu(Mn,Th())},Ua=(Mn,Vn)=>{am(Mn).each(Wn=>{_d(Wn).each(jn=>{Vn.isBlock(ql(Mn))&&np(Wn)&&Vn.isBlock(ql(jn))&&sc(Wn)})})},_o=k0,Po=hd,Xo=wv,is=Mn=>Mn.insertContent(_o,{preserve_zwsp:!0}),Ms=Oa,vr=Ir,zr=Mn=>(vr(Mn)&&(Mn=Mn.parentNode),Ms(Mn)&&Mn.hasAttribute("data-mce-caret")),Jr=Mn=>vr(Mn)&&Po(Mn.data),La=Mn=>zr(Mn)||Jr(Mn),Ol=Mn=>Mn.firstChild!==Mn.lastChild||!Ec(Mn.firstChild),Xu=(Mn,Vn)=>{var Wn;const Gn=((Wn=Mn.ownerDocument)!==null&&Wn!==void 0?Wn:document).createTextNode(_o),no=Mn.parentNode;if(Vn){const ao=Mn.previousSibling;if(vr(ao)){if(La(ao))return ao;if(hm(ao))return ao.splitText(ao.data.length-1)}no==null||no.insertBefore(Gn,Mn)}else{const ao=Mn.nextSibling;if(vr(ao)){if(La(ao))return ao;if(Jf(ao))return ao.splitText(1),ao}Mn.nextSibling?no==null||no.insertBefore(Gn,Mn.nextSibling):no==null||no.appendChild(Gn)}return Gn},Ac=Mn=>{const Vn=Mn.container();return Ir(Vn)?Vn.data.charAt(Mn.offset())===_o||Mn.isAtStart()&&Jr(Vn.previousSibling):!1},gu=Mn=>{const Vn=Mn.container();return Ir(Vn)?Vn.data.charAt(Mn.offset()-1)===_o||Mn.isAtEnd()&&Jr(Vn.nextSibling):!1},Uh=(Mn,Vn,Wn)=>{var jn;const no=((jn=Vn.ownerDocument)!==null&&jn!==void 0?jn:document).createElement(Mn);no.setAttribute("data-mce-caret",Wn?"before":"after"),no.setAttribute("data-mce-bogus","all"),no.appendChild(Th().dom);const ao=Vn.parentNode;return Wn?ao==null||ao.insertBefore(no,Vn):Vn.nextSibling?ao==null||ao.insertBefore(no,Vn.nextSibling):ao==null||ao.appendChild(no),no},Jf=Mn=>vr(Mn)&&Mn.data[0]===_o,hm=Mn=>vr(Mn)&&Mn.data[Mn.data.length-1]===_o,Jp=Mn=>{var Vn;const Wn=Mn.getElementsByTagName("br"),jn=Wn[Wn.length-1];Jm(jn)&&((Vn=jn.parentNode)===null||Vn===void 0||Vn.removeChild(jn))},wp=Mn=>Mn&&Mn.hasAttribute("data-mce-caret")?(Jp(Mn),Mn.removeAttribute("data-mce-caret"),Mn.removeAttribute("data-mce-bogus"),Mn.removeAttribute("style"),Mn.removeAttribute("data-mce-style"),Mn.removeAttribute("_moz_abspos"),Mn):null,B1=Mn=>zr(Mn.startContainer),Sc=Gf,F1=jl,x0=Ec,nd=Ir,mm=Ad(["script","style","textarea"]),Nb=Ad(["img","input","textarea","hr","iframe","video","audio","object","embed"]),H1=Ad(["table"]),Fl=La,Xl=Mn=>Fl(Mn)?!1:nd(Mn)?!mm(Mn.parentNode):Nb(Mn)||x0(Mn)||H1(Mn)||Rf(Mn),Qd=Mn=>Oa(Mn)&&Mn.getAttribute("unselectable")==="true",Rf=Mn=>!Qd(Mn)&&F1(Mn),Cv=(Mn,Vn)=>{for(let Wn=Mn.parentNode;Wn&&Wn!==Vn;Wn=Wn.parentNode){if(Rf(Wn))return!1;if(Sc(Wn))return!0}return!0},eg=Mn=>Rf(Mn)?!ra(kc(Mn.getElementsByTagName("*")),(Vn,Wn)=>Vn||Sc(Wn),!1):!1,Wu=Mn=>Nb(Mn)||eg(Mn),pm=(Mn,Vn)=>Xl(Mn)&&Cv(Mn,Vn),op=/^[ \t\r\n]*$/,Q1=Mn=>op.test(Mn),o1=Mn=>{for(const Vn of Mn)if(!hd(Vn))return!1;return!0},E0=Mn=>" \f \v".indexOf(Mn)!==-1,Lg=Mn=>Mn===` +`||Mn==="\r",lC=(Mn,Vn)=>Vn=0?Lg(Mn[Vn]):!1,V1=(Mn,Vn=4,Wn=!0,jn=!0)=>{const Gn=Jd(" ",Vn),no=Mn.replace(/\t/g,Gn);return ra(no,(po,vo)=>E0(vo)||vo===hc?po.pcIsSpace||po.str===""&&Wn||po.str.length===no.length-1&&jn||lC(no,po.str.length+1)?{pcIsSpace:!1,str:po.str+hc}:{pcIsSpace:!0,str:po.str+" "}:{pcIsSpace:Lg(vo),str:po.str+vo},{pcIsSpace:!1,str:""}).str},By=(Mn,Vn)=>{const Wn=Cs.fromDom(Vn),jn=Cs.fromDom(Mn);return fS(jn,"pre,code",ws(Vs,Wn))},z1=(Mn,Vn)=>Ir(Mn)&&Q1(Mn.data)&&!By(Mn,Vn),Pd=Mn=>Oa(Mn)&&Mn.nodeName==="A"&&!Mn.hasAttribute("href")&&(Mn.hasAttribute("name")||Mn.hasAttribute("id")),Cp=(Mn,Vn)=>Xl(Mn)&&!z1(Mn,Vn)||Pd(Mn)||tg(Mn),tg=w0("data-mce-bookmark"),W1=w0("data-mce-bogus"),U1=nf("data-mce-bogus","all"),T0=Mn=>Uc(Cs.fromDom(Mn)).exists(Vn=>!yl(Vn)),Im=(Mn,Vn)=>{let Wn=0;if(Cp(Mn,Mn))return!1;{let jn=Mn.firstChild;if(!jn)return!0;const Gn=new mu(jn,Mn);do{if(Vn){if(U1(jn)){jn=Gn.next(!0);continue}if(W1(jn)){jn=Gn.next();continue}}if(Gf(jn)&&T0(jn))return!1;if(Ec(jn)){Wn++,jn=Gn.next();continue}if(Cp(jn,Mn))return!1;jn=Gn.next()}while(jn);return Wn<=1}},md=(Mn,Vn=!0)=>Im(Mn.dom,Vn),ng=Mn=>Mn.toLowerCase()==="svg",DO=Mn=>ng(Mn.nodeName),Fy=Mn=>(Mn==null?void 0:Mn.nodeName)==="svg"?"svg":"html",Hy=["svg"],Z1=()=>{let Mn=[];const Vn=()=>Mn[Mn.length-1];return{track:no=>{DO(no)&&Mn.push(no);let ao=Vn();return ao&&!ao.contains(no)&&(Mn.pop(),ao=Vn()),Fy(ao)},current:()=>Fy(Vn()),reset:()=>{Mn=[]}}},Ah="data-mce-block",kp=Mn=>nr(Al(Mn),Vn=>!/[A-Z]/.test(Vn)),s1=Mn=>Us(kp(Mn),Vn=>`${Vn}:`+Us(Hy,Wn=>`not(${Wn} ${Vn})`).join(":")).join(","),Ig=(Mn,Vn)=>rs(Vn.querySelector(Mn))?(Vn.setAttribute(Ah,"true"),Vn.getAttribute("data-mce-selected")==="inline-boundary"&&Vn.removeAttribute("data-mce-selected"),!0):(Vn.removeAttribute(Ah),!1),Zh=(Mn,Vn)=>{const Wn=s1(Mn.getTransparentElements()),jn=s1(Mn.getBlockElements());return nr(Vn.querySelectorAll(Wn),Gn=>Ig(jn,Gn))},xp=(Mn,Vn)=>{var Wn;const jn=Vn?"lastChild":"firstChild";for(let Gn=Mn[jn];Gn;Gn=Gn[jn])if(md(Cs.fromDom(Gn))){(Wn=Gn.parentNode)===null||Wn===void 0||Wn.removeChild(Gn);return}},q1=(Mn,Vn)=>{const Wn=document.createRange(),jn=Mn.parentNode;if(jn){Wn.setStartBefore(Mn),Wn.setEndBefore(Vn);const Gn=Wn.extractContents();xp(Gn,!0),Wn.setStartAfter(Vn),Wn.setEndAfter(Mn);const no=Wn.extractContents();xp(no,!1),md(Cs.fromDom(Gn))||jn.insertBefore(Gn,Mn),md(Cs.fromDom(Vn))||jn.insertBefore(Vn,Mn),md(Cs.fromDom(no))||jn.insertBefore(no,Mn),jn.removeChild(Mn)}},hS=(Mn,Vn,Wn)=>{const jn=Mn.getBlockElements(),Gn=Cs.fromDom(Vn),no=po=>ql(po)in jn,ao=po=>Vs(po,Gn);fs(Km(Wn),po=>{au(po,no,ao).each(vo=>{const Ao=kh(po,Fo=>no(Fo)&&!Mn.isValidChild(ql(vo),ql(Fo)));if(Ao.length>0){const Fo=Uc(vo);fs(Ao,Qo=>{au(Qo,no,ao).each(qo=>{q1(qo.dom,Qo.dom)})}),Fo.each(Qo=>Zh(Mn,Qo.dom))}})})},MO=(Mn,Vn,Wn)=>{fs([...Wn,...Wl(Mn,Vn)?[Vn]:[]],jn=>fs(mf(Cs.fromDom(jn),jn.nodeName.toLowerCase()),Gn=>{Qa(Mn,Gn.dom)&&hf(Gn)}))},kv=(Mn,Vn)=>{const Wn=Zh(Mn,Vn);hS(Mn,Vn,Wn),MO(Mn,Vn,Wn)},j1=(Mn,Vn)=>{if(Tv(Mn,Vn)){const Wn=s1(Mn.getBlockElements());Ig(Wn,Vn)}},xv=(Mn,Vn,Wn)=>{const jn=no=>Vs(no,Cs.fromDom(Vn)),Gn=D1(Cs.fromDom(Wn),jn);Fc(Gn,Gn.length-2).filter(lf).fold(()=>kv(Mn,Vn),no=>kv(Mn,no.dom))},NO=Mn=>Mn.hasAttribute(Ah),Ev=(Mn,Vn)=>Mr(Mn.getTransparentElements(),Vn),Tv=(Mn,Vn)=>Oa(Vn)&&Ev(Mn,Vn.nodeName),Wl=(Mn,Vn)=>Tv(Mn,Vn)&&NO(Vn),Qa=(Mn,Vn)=>Tv(Mn,Vn)&&!NO(Vn),og=(Mn,Vn)=>Vn.type===1&&Ev(Mn,Vn.name)&&xo(Vn.attr(Ah)),Av=xl().browser,Lb=Mn=>xa(Mn,lf),T2=Mn=>Av.isFirefox()&&ql(Mn)==="table"?Lb(Ku(Mn)).filter(Vn=>ql(Vn)==="caption").bind(Vn=>Lb(Id(Vn)).map(Wn=>{const jn=Wn.dom.offsetTop,Gn=Vn.dom.offsetTop,no=Vn.dom.offsetHeight;return jn<=Gn?-no:0})).getOr(0):0,LO=(Mn,Vn)=>Mn.children&&Zs(Mn.children,Vn),Jc=(Mn,Vn,Wn)=>{let jn=0,Gn=0;const no=Mn.ownerDocument;if(Wn=Wn||Mn,Vn){if(Wn===Mn&&Vn.getBoundingClientRect&&Ju(Cs.fromDom(Mn),"position")==="static"){const po=Vn.getBoundingClientRect();return jn=po.left+(no.documentElement.scrollLeft||Mn.scrollLeft)-no.documentElement.clientLeft,Gn=po.top+(no.documentElement.scrollTop||Mn.scrollTop)-no.documentElement.clientTop,{x:jn,y:Gn}}let ao=Vn;for(;ao&&ao!==Wn&&ao.nodeType&&!LO(ao,Wn);){const po=ao;jn+=po.offsetLeft||0,Gn+=po.offsetTop||0,ao=po.offsetParent}for(ao=Vn.parentNode;ao&&ao!==Wn&&ao.nodeType&&!LO(ao,Wn);)jn-=ao.scrollLeft||0,Gn-=ao.scrollTop||0,ao=ao.parentNode;Gn+=T2(Cs.fromDom(Vn))}return{x:jn,y:Gn}},IO=(Mn,Vn={})=>{let Wn=0;const jn={},Gn=Cs.fromDom(Mn),no=Fa(Gn),ao=Ls=>{Vn.referrerPolicy=Ls},po=Ls=>{Vn.contentCssCors=Ls},vo=Ls=>{Fu(N1(Gn),Ls)},Ao=Ls=>{const zs=N1(Gn);uf(zs,"#"+Ls).each(sc)},Fo=Ls=>Ma(jn,Ls).getOrThunk(()=>({id:"mce-u"+Wn++,passed:[],failed:[],count:0})),Qo=Ls=>new Promise((zs,Hs)=>{let tr;const Pr=Lr._addCacheSuffix(Ls),Ur=Fo(Pr);jn[Pr]=Ur,Ur.count++;const fa=(wa,Va)=>{fs(wa,ha),Ur.status=Va,Ur.passed=[],Ur.failed=[],tr&&(tr.onload=null,tr.onerror=null,tr=null)},yr=()=>fa(Ur.passed,2),fr=()=>fa(Ur.failed,3);if(zs&&Ur.passed.push(zs),Hs&&Ur.failed.push(Hs),Ur.status===1)return;if(Ur.status===2){yr();return}if(Ur.status===3){fr();return}Ur.status=1;const Ar=Cs.fromTag("link",no.dom);im(Ar,{rel:"stylesheet",type:"text/css",id:Ur.id}),Vn.contentCssCors&&Gc(Ar,"crossOrigin","anonymous"),Vn.referrerPolicy&&Gc(Ar,"referrerpolicy",Vn.referrerPolicy),tr=Ar.dom,tr.onload=yr,tr.onerror=fr,vo(Ar),Gc(Ar,"href",Pr)}),qo=(Ls,zs)=>{const Hs=Fo(Ls);jn[Ls]=Hs,Hs.count++;const tr=Cs.fromTag("style",no.dom);im(tr,{rel:"stylesheet",type:"text/css",id:Hs.id}),tr.dom.innerHTML=zs,vo(tr)},ds=Ls=>Promise.allSettled(Us(Ls,Hs=>Qo(Hs).then(xs(Hs)))).then(Hs=>{const tr=Vr(Hs,Pr=>Pr.status==="fulfilled");return tr.fail.length>0?Promise.reject(Us(tr.fail,Pr=>Pr.reason)):Us(tr.pass,Pr=>Pr.value)}),bs=Ls=>{const zs=Lr._addCacheSuffix(Ls);Ma(jn,zs).each(Hs=>{--Hs.count===0&&(delete jn[zs],Ao(Hs.id))})};return{load:Qo,loadRawCss:qo,loadAll:ds,unload:bs,unloadRawCss:Ls=>{Ma(jn,Ls).each(zs=>{--zs.count===0&&(delete jn[Ls],Ao(zs.id))})},unloadAll:Ls=>{fs(Ls,zs=>{bs(zs)})},_setReferrerPolicy:ao,_setContentCssCors:po}},mS=(()=>{const Mn=new WeakMap;return{forElement:(Wn,jn)=>{const no=Wf(Wn).dom;return zo.from(Mn.get(no)).getOrThunk(()=>{const ao=IO(no,jn);return Mn.set(no,ao),ao})}}})(),wr=Mn=>Mn.nodeName.toLowerCase()==="span",sg=(Mn,Vn,Wn)=>rs(Mn)&&(Cp(Mn,Vn)||Wn.isInline(Mn.nodeName.toLowerCase())),cC=(Mn,Vn,Wn)=>{const jn=new mu(Mn,Vn).prev(!1),Gn=new mu(Mn,Vn).next(!1),no=ls(jn)||sg(jn,Vn,Wn),ao=ls(Gn)||sg(Gn,Vn,Wn);return no&&ao},Pv=Mn=>wr(Mn)&&Mn.getAttribute("data-mce-type")==="bookmark",A2=(Mn,Vn,Wn)=>Ir(Mn)&&Mn.data.length>0&&cC(Mn,Vn,Wn),A0=Mn=>Oa(Mn)?Mn.childNodes.length>0:!1,pS=Mn=>Lu(Mn)||Nm(Mn),X1=(Mn,Vn,Wn,jn)=>{var Gn;const no=jn||Vn;if(Oa(Vn)&&Pv(Vn))return Vn;const ao=Vn.childNodes;for(let po=ao.length-1;po>=0;po--)X1(Mn,ao[po],Wn,no);if(Oa(Vn)){const po=Vn.childNodes;po.length===1&&Pv(po[0])&&((Gn=Vn.parentNode)===null||Gn===void 0||Gn.insertBefore(po[0],Vn))}return!pS(Vn)&&!Cp(Vn,no)&&!A0(Vn)&&!A2(Vn,no,Wn)&&Mn.remove(Vn),Vn},Y1=Lr.makeMap,rg=/[&<>\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,eu=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ig=/[<>&\"\']/g,$v=/&#([a-z0-9]+);?|&([a-z0-9]+);/gi,qh={128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},Ll={'"':""","'":"'","<":"<",">":">","&":"&","`":"`"},Rv={"<":"<",">":">","&":"&",""":'"',"'":"'"},G1=Mn=>{const Vn=Cs.fromTag("div").dom;return Vn.innerHTML=Mn,Vn.textContent||Vn.innerText||Mn},Ib=(Mn,Vn)=>{const Wn={};if(Mn){const jn=Mn.split(",");Vn=Vn||10;for(let Gn=0;GnMn.replace(Vn?rg:eu,Wn=>Ll[Wn]||Wn),uC=Mn=>(""+Mn).replace(ig,Vn=>Ll[Vn]||Vn),Ph=(Mn,Vn)=>Mn.replace(Vn?rg:eu,Wn=>Wn.length>1?"&#"+((Wn.charCodeAt(0)-55296)*1024+(Wn.charCodeAt(1)-56320)+65536)+";":Ll[Wn]||"&#"+Wn.charCodeAt(0)+";"),r1=(Mn,Vn,Wn)=>{const jn=Wn||BO;return Mn.replace(Vn?rg:eu,Gn=>Ll[Gn]||jn[Gn]||Gn)},P0={encodeRaw:Vy,encodeAllRaw:uC,encodeNumeric:Ph,encodeNamed:r1,getEncodeFunc:(Mn,Vn)=>{const Wn=Ib(Vn)||BO,jn=(ao,po)=>ao.replace(po?rg:eu,vo=>Ll[vo]!==void 0?Ll[vo]:Wn[vo]!==void 0?Wn[vo]:vo.length>1?"&#"+((vo.charCodeAt(0)-55296)*1024+(vo.charCodeAt(1)-56320)+65536)+";":"&#"+vo.charCodeAt(0)+";"),Gn=(ao,po)=>r1(ao,po,Wn),no=Y1(Mn.replace(/\+/g,","));return no.named&&no.numeric?jn:no.named?Vn?Gn:r1:no.numeric?Ph:Vy},decode:Mn=>Mn.replace($v,(Vn,Wn)=>Wn?(Wn.charAt(0).toLowerCase()==="x"?Wn=parseInt(Wn.substr(1),16):Wn=parseInt(Wn,10),Wn>65535?(Wn-=65536,String.fromCharCode(55296+(Wn>>10),56320+(Wn&1023))):qh[Wn]||String.fromCharCode(Wn)):Rv[Vn]||BO[Vn]||G1(Vn))},Uf=(Mn,Vn)=>(Mn=Lr.trim(Mn),Mn?Mn.split(Vn||" "):[]),ba=Mn=>new RegExp("^"+Mn.replace(/([?+*])/g,".$1")+"$"),P2=Mn=>{const Vn=/^(~)?(.+)$/;return cc(Uf(Mn,","),Wn=>{const jn=Vn.exec(Wn);if(jn){const Gn=jn[1]==="~",no=Gn?"span":"div",ao=jn[2];return[{inline:Gn,cloneName:no,name:ao}]}else return[]})},gS=Mn=>{let Vn,Wn,jn;if(Vn="id accesskey class dir lang style tabindex title role",Wn="address blockquote div dl fieldset form h1 h2 h3 h4 h5 h6 hr menu ol p pre table ul",jn="a abbr b bdo br button cite code del dfn em embed i iframe img input ins kbd label map noscript object q s samp script select small span strong sub sup textarea u var #text #comment",Mn!=="html4"){const no="a ins del canvas map";Vn+=" contenteditable contextmenu draggable dropzone hidden spellcheck translate",Wn+=" article aside details dialog figure main header footer hgroup section nav "+no,jn+=" audio canvas command datalist mark meter output picture progress time wbr video ruby bdi keygen svg"}Mn!=="html5-strict"&&(Vn+=" xml:lang",jn=[jn,"acronym applet basefont big font strike tt"].join(" "),Wn=[Wn,"center dir isindex noframes"].join(" "));const Gn=[Wn,jn].join(" ");return{globalAttributes:Vn,blockContent:Wn,phrasingContent:jn,flowContent:Gn}},K1=Mn=>{const{globalAttributes:Vn,phrasingContent:Wn,flowContent:jn}=gS(Mn),Gn={},no=(vo,Ao,Fo)=>{Gn[vo]={attributes:Zl(Ao,xs({})),attributesOrder:Ao,children:Zl(Fo,xs({}))}},ao=(vo,Ao="",Fo="")=>{const Qo=Uf(Fo),qo=Uf(vo);let ds=qo.length;const bs=Uf([Vn,Ao].join(" "));for(;ds--;)no(qo[ds],bs.slice(),Qo)},po=(vo,Ao)=>{const Fo=Uf(vo),Qo=Uf(Ao);let qo=Fo.length;for(;qo--;){const ds=Gn[Fo[qo]];for(let bs=0,as=Qo.length;bs{ao(Fo,"",Wn)}),fs(Uf("center dir isindex noframes"),Fo=>{ao(Fo,"",jn)})),ao("html","manifest","head body"),ao("head","","base command link meta noscript script style title"),ao("title hr noscript br"),ao("base","href target"),ao("link","href rel media hreflang type sizes hreflang"),ao("meta","name http-equiv content charset"),ao("style","media type scoped"),ao("script","src async defer type charset"),ao("body","onafterprint onbeforeprint onbeforeunload onblur onerror onfocus onhashchange onload onmessage onoffline ononline onpagehide onpageshow onpopstate onresize onscroll onstorage onunload",jn),ao("dd div","",jn),ao("address dt caption","",Mn==="html4"?Wn:jn),ao("h1 h2 h3 h4 h5 h6 pre p abbr code var samp kbd sub sup i b u bdo span legend em strong small s cite dfn","",Wn),ao("blockquote","cite",jn),ao("ol","reversed start type","li"),ao("ul","","li"),ao("li","value",jn),ao("dl","","dt dd"),ao("a","href target rel media hreflang type",Mn==="html4"?Wn:jn),ao("q","cite",Wn),ao("ins del","cite datetime",jn),ao("img","src sizes srcset alt usemap ismap width height"),ao("iframe","src name width height",jn),ao("embed","src type width height"),ao("object","data type typemustmatch name usemap form width height",[jn,"param"].join(" ")),ao("param","name value"),ao("map","name",[jn,"area"].join(" ")),ao("area","alt coords shape href target rel media hreflang type"),ao("table","border","caption colgroup thead tfoot tbody tr"+(Mn==="html4"?" col":"")),ao("colgroup","span","col"),ao("col","span"),ao("tbody thead tfoot","","tr"),ao("tr","","td th"),ao("td","colspan rowspan headers",jn),ao("th","colspan rowspan headers scope abbr",jn),ao("form","accept-charset action autocomplete enctype method name novalidate target",jn),ao("fieldset","disabled form name",[jn,"legend"].join(" ")),ao("label","form for",Wn),ao("input","accept alt autocomplete checked dirname disabled form formaction formenctype formmethod formnovalidate formtarget height list max maxlength min multiple name pattern readonly required size src step type value width"),ao("button","disabled form formaction formenctype formmethod formnovalidate formtarget name type value",Mn==="html4"?jn:Wn),ao("select","disabled form multiple name required size","option optgroup"),ao("optgroup","disabled label","option"),ao("option","disabled label selected value"),ao("textarea","cols dirname disabled form maxlength name readonly required rows wrap"),ao("menu","type label",[jn,"li"].join(" ")),ao("noscript","",jn),Mn!=="html4"&&(ao("wbr"),ao("ruby","",[Wn,"rt rp"].join(" ")),ao("figcaption","",jn),ao("mark rt rp bdi","",Wn),ao("summary","",[Wn,"h1 h2 h3 h4 h5 h6"].join(" ")),ao("canvas","width height",jn),ao("video","src crossorigin poster preload autoplay mediagroup loop muted controls width height buffered",[jn,"track source"].join(" ")),ao("audio","src crossorigin preload autoplay mediagroup loop muted controls buffered volume",[jn,"track source"].join(" ")),ao("picture","","img source"),ao("source","src srcset type media sizes"),ao("track","kind src srclang label default"),ao("datalist","",[Wn,"option"].join(" ")),ao("article section nav aside main header footer","",jn),ao("hgroup","","h1 h2 h3 h4 h5 h6"),ao("figure","",[jn,"figcaption"].join(" ")),ao("time","datetime",Wn),ao("dialog","open",jn),ao("command","type label icon disabled checked radiogroup command"),ao("output","for form name",Wn),ao("progress","value max",Wn),ao("meter","value min max low high optimum",Wn),ao("details","open",[jn,"summary"].join(" ")),ao("keygen","autofocus challenge disabled form keytype name"),no("svg","id tabindex lang xml:space class style x y width height viewBox preserveAspectRatio zoomAndPan transform".split(" "),[])),Mn!=="html5-strict"&&(po("script","language xml:space"),po("style","xml:space"),po("object","declare classid code codebase codetype archive standby align border hspace vspace"),po("embed","align name hspace vspace"),po("param","valuetype type"),po("a","charset name rev shape coords"),po("br","clear"),po("applet","codebase archive code object alt name width height align hspace vspace"),po("img","name longdesc align border hspace vspace"),po("iframe","longdesc frameborder marginwidth marginheight scrolling align"),po("font basefont","size color face"),po("input","usemap align"),po("select"),po("textarea"),po("h1 h2 h3 h4 h5 h6 div p legend caption","align"),po("ul","type compact"),po("li","type"),po("ol dl menu dir","compact"),po("pre","width xml:space"),po("hr","align noshade size width"),po("isindex","prompt"),po("table","summary width frame rules cellspacing cellpadding align bgcolor"),po("col","width align char charoff valign"),po("colgroup","width align char charoff valign"),po("thead","align char charoff valign"),po("tr","align char charoff valign bgcolor"),po("th","axis align char charoff valign nowrap bgcolor width height"),po("form","accept"),po("td","abbr axis scope align char charoff valign nowrap bgcolor width height"),po("tfoot","align char charoff valign"),po("tbody","align char charoff valign"),po("area","nohref"),po("body","background bgcolor text link vlink alink")),Mn!=="html4"&&(po("input button select textarea","autofocus"),po("input textarea","placeholder"),po("a","download"),po("link script img","crossorigin"),po("img","loading"),po("iframe","sandbox seamless allow allowfullscreen loading")),Mn!=="html4"&&fs([Gn.video,Gn.audio],vo=>{delete vo.children.audio,delete vo.children.video}),fs(Uf("a form meter progress dfn"),vo=>{Gn[vo]&&delete Gn[vo].children[vo]}),delete Gn.caption.children.table,delete Gn.script,Gn},gm=Mn=>Mn==="-"?"remove":"add",J1=Mn=>{const Vn=/^([+\-]?)([A-Za-z0-9_\-.\u00b7\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u037d\u037f-\u1fff\u200c-\u200d\u203f-\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]+)\[([^\]]+)]$/;return cc(Uf(Mn,","),Wn=>{const jn=Vn.exec(Wn);if(jn){const Gn=jn[1],no=Gn?gm(Gn):"replace",ao=jn[2],po=Uf(jn[3],"|");return[{operation:no,name:ao,validChildren:po}]}else return[]})},Dv=(Mn,Vn)=>{const Wn=/^([!\-])?(\w+[\\:]:\w+|[^=~<]+)?(?:([=~<])(.*))?$/,jn=/[*?+]/,{attributes:Gn,attributesOrder:no}=Vn;return fs(Uf(Mn,"|"),ao=>{const po=Wn.exec(ao);if(po){const vo={},Ao=po[1],Fo=po[2].replace(/[\\:]:/g,":"),Qo=po[3],qo=po[4];if(Ao==="!"&&(Vn.attributesRequired=Vn.attributesRequired||[],Vn.attributesRequired.push(Fo),vo.required=!0),Ao==="-"){delete Gn[Fo],no.splice(Lr.inArray(no,Fo),1);return}if(Qo&&(Qo==="="?(Vn.attributesDefault=Vn.attributesDefault||[],Vn.attributesDefault.push({name:Fo,value:qo}),vo.defaultValue=qo):Qo==="~"?(Vn.attributesForced=Vn.attributesForced||[],Vn.attributesForced.push({name:Fo,value:qo}),vo.forcedValue=qo):Qo==="<"&&(vo.validValues=Lr.makeMap(qo,"?"))),jn.test(Fo)){const ds=vo;Vn.attributePatterns=Vn.attributePatterns||[],ds.pattern=ba(Fo),Vn.attributePatterns.push(ds)}else Gn[Fo]||no.push(Fo),Gn[Fo]=vo}})},$0=(Mn,Vn)=>{Rr(Mn.attributes,(Wn,jn)=>{Vn.attributes[jn]=Wn}),Vn.attributesOrder.push(...Mn.attributesOrder)},Mv=(Mn,Vn)=>{const Wn=/^([#+\-])?([^\[!\/]+)(?:\/([^\[!]+))?(?:(!?)\[([^\]]+)])?$/;return cc(Uf(Vn,","),jn=>{const Gn=Wn.exec(jn);if(Gn){const no=Gn[1],ao=Gn[2],po=Gn[3],vo=Gn[4],Ao=Gn[5],Fo={attributes:{},attributesOrder:[]};if(Mn.each(Qo=>$0(Qo,Fo)),no==="#"?Fo.paddEmpty=!0:no==="-"&&(Fo.removeEmpty=!0),vo==="!"&&(Fo.removeEmptyAttrs=!0),Ao&&Dv(Ao,Fo),po&&(Fo.outputName=ao),ao==="@")if(Mn.isNone())Mn=zo.some(Fo);else return[];return[po?{name:ao,element:Fo,aliasName:po}:{name:ao,element:Fo}]}else return[]})},HO={},Ep=Lr.makeMap,ag=Lr.each,Nv=Lr.extend,Tp=Lr.explode,QO=(Mn,Vn={})=>{const Wn=Ep(Mn," ",Ep(Mn.toUpperCase()," "));return Nv(Wn,Vn)},dC=Mn=>QO("td th li dt dd figcaption caption details summary",Mn.getTextBlockElements()),Lv=(Mn,Vn)=>{if(Mn){const Wn={};return xo(Mn)&&(Mn={"*":Mn}),ag(Mn,(jn,Gn)=>{Wn[Gn]=Wn[Gn.toUpperCase()]=Vn==="map"?Ep(jn,/[, ]/):Tp(jn,/[, ]/)}),Wn}else return},i1=(Mn={})=>{var Vn;const Wn={},jn={};let Gn=[];const no={},ao={},po=(Sl,Mc,ru)=>{const Kd=Mn[Sl];if(Kd)return Ep(Kd,/[, ]/,Ep(Kd.toUpperCase(),/[, ]/));{let xd=HO[Sl];return xd||(xd=QO(Mc,ru),HO[Sl]=xd),xd}},vo=(Vn=Mn.schema)!==null&&Vn!==void 0?Vn:"html5",Ao=K1(vo);Mn.verify_html===!1&&(Mn.valid_elements="*[*]");const Fo=Lv(Mn.valid_styles),Qo=Lv(Mn.invalid_styles,"map"),qo=Lv(Mn.valid_classes,"map"),ds=po("whitespace_elements","pre script noscript style textarea video audio iframe object code"),bs=po("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr"),as=po("void_elements","area base basefont br col frame hr img input isindex link meta param embed source wbr track"),ys=po("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls allowfullscreen"),Ls="td th iframe video audio object script code",zs=po("non_empty_elements",Ls+" pre svg",as),Hs=po("move_caret_before_on_enter_elements",Ls+" table",as),tr="h1 h2 h3 h4 h5 h6",Pr=po("text_block_elements",tr+" p div address pre form blockquote center dir fieldset header footer article section hgroup aside main nav figure"),Ur=po("block_elements","hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex option datalist select optgroup figcaption details summary html body multicol listing",Pr),fa=po("text_inline_elements","span strong b em i font s strike u var cite dfn code mark q sup sub samp"),yr=po("transparent_elements","a ins del canvas map"),fr=po("wrap_block_elements","pre "+tr);ag("script noscript iframe noframes noembed title style textarea xmp plaintext".split(" "),Sl=>{ao[Sl]=new RegExp("]*>","gi")});const Ar=Sl=>{const Mc=zo.from(Wn["@"]),ru=/[*?+]/;fs(Mv(Mc,Sl??""),({name:Kd,element:xd,aliasName:wg})=>{if(wg&&(Wn[wg]=xd),ru.test(Kd)){const dv=xd;dv.pattern=ba(Kd),Gn.push(dv)}else Wn[Kd]=xd})},wa=Sl=>{Gn=[],fs(Al(Wn),Mc=>{delete Wn[Mc]}),Ar(Sl)},Va=Sl=>{delete HO.text_block_elements,delete HO.block_elements,fs(P2(Sl??""),({inline:Mc,name:ru,cloneName:Kd})=>{if(jn[ru]=jn[Kd],no[ru]=Kd,zs[ru.toUpperCase()]={},zs[ru]={},Mc||(Ur[ru.toUpperCase()]={},Ur[ru]={}),!Wn[ru]){let xd=Wn[Kd];xd=Nv({},xd),delete xd.removeEmptyAttrs,delete xd.removeEmpty,Wn[ru]=xd}Rr(jn,(xd,wg)=>{xd[Kd]&&(jn[wg]=xd=Nv({},jn[wg]),xd[ru]=xd[Kd])})})},Tl=Sl=>{fs(J1(Sl??""),({operation:Mc,name:ru,validChildren:Kd})=>{const xd=Mc==="replace"?{"#comment":{}}:jn[ru];fs(Kd,wg=>{Mc==="remove"?delete xd[wg]:xd[wg]={}}),jn[ru]=xd})},tc=Sl=>{const Mc=Wn[Sl];if(Mc)return Mc;let ru=Gn.length;for(;ru--;){const Kd=Gn[ru];if(Kd.pattern.test(Sl))return Kd}};Mn.valid_elements?(wa(Mn.valid_elements),ag(Ao,(Sl,Mc)=>{jn[Mc]=Sl.children})):(ag(Ao,(Sl,Mc)=>{Wn[Mc]={attributes:Sl.attributes,attributesOrder:Sl.attributesOrder},jn[Mc]=Sl.children}),ag(Uf("strong/b em/i"),Sl=>{const Mc=Uf(Sl,"/");Wn[Mc[1]].outputName=Mc[0]}),ag(fa,(Sl,Mc)=>{Wn[Mc]&&(Mn.padd_empty_block_inline_children&&(Wn[Mc].paddInEmptyBlock=!0),Wn[Mc].removeEmpty=!0)}),ag(Uf("ol ul blockquote a table tbody"),Sl=>{Wn[Sl]&&(Wn[Sl].removeEmpty=!0)}),ag(Uf("p h1 h2 h3 h4 h5 h6 th td pre div address caption li summary"),Sl=>{Wn[Sl]&&(Wn[Sl].paddEmpty=!0)}),ag(Uf("span"),Sl=>{Wn[Sl].removeEmptyAttrs=!0})),delete Wn.svg,Va(Mn.custom_elements),Tl(Mn.valid_children),Ar(Mn.extended_valid_elements),Tl("+ol[ul|ol],+ul[ul|ol]"),ag({dd:"dl",dt:"dl",li:"ul ol",td:"tr",th:"tr",tr:"tbody thead tfoot",tbody:"table",thead:"table",tfoot:"table",legend:"fieldset",area:"map",param:"video audio object"},(Sl,Mc)=>{Wn[Mc]&&(Wn[Mc].parentsRequired=Uf(Sl))}),Mn.invalid_elements&&ag(Tp(Mn.invalid_elements),Sl=>{Wn[Sl]&&delete Wn[Sl]}),tc("span")||Ar("span[!data-mce-type|*]");const uu=xs(Fo),Qu=xs(Qo),Wd=xs(qo),Jh=xs(ys),_u=xs(Ur),ea=xs(Pr),pa=xs(fa),$c=xs(Object.seal(as)),ac=xs(bs),Pa=xs(zs),ml=xs(Hs),Yr=xs(ds),pl=xs(yr),pc=xs(fr),Pu=xs(Object.seal(ao)),du=(Sl,Mc)=>{const ru=jn[Sl.toLowerCase()];return!!(ru&&ru[Mc.toLowerCase()])},Oh=(Sl,Mc)=>{const ru=tc(Sl);if(ru)if(Mc){if(ru.attributes[Mc])return!0;const Kd=ru.attributePatterns;if(Kd){let xd=Kd.length;for(;xd--;)if(Kd[xd].pattern.test(Mc))return!0}}else return!0;return!1},h0=Sl=>Mr(_u(),Sl),Ay=Sl=>!Dc(Sl,"#")&&Oh(Sl)&&!h0(Sl),Ip=Sl=>Mr(pc(),Sl)||Ay(Sl),Sb=xs(no);return{type:vo,children:jn,elements:Wn,getValidStyles:uu,getValidClasses:Wd,getBlockElements:_u,getInvalidStyles:Qu,getVoidElements:$c,getTextBlockElements:ea,getTextInlineElements:pa,getBoolAttrs:Jh,getElementRule:tc,getSelfClosingElements:ac,getNonEmptyElements:Pa,getMoveCaretBeforeOnEnterElements:ml,getWhitespaceElements:Yr,getTransparentElements:pl,getSpecialElements:Pu,isValidChild:du,isValid:Oh,isBlock:h0,isInline:Ay,isWrapper:Ip,getCustomElements:Sb,addValidElements:Ar,setValidElements:wa,addCustomElements:Va,addValidChildren:Tl}},fC=Mn=>({value:Iv(Mn)}),Iv=Mn=>ld(Mn,"#").toUpperCase(),eb=Mn=>{const Vn=Mn.toString(16);return(Vn.length===1?"0"+Vn:Vn).toUpperCase()},Ap=Mn=>{const Vn=eb(Mn.red)+eb(Mn.green)+eb(Mn.blue);return fC(Vn)},ph=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,bS=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,vS=(Mn,Vn,Wn,jn)=>({red:Mn,green:Vn,blue:Wn,alpha:jn}),yS=(Mn,Vn,Wn,jn)=>{const Gn=parseInt(Mn,10),no=parseInt(Vn,10),ao=parseInt(Wn,10),po=parseFloat(jn);return vS(Gn,no,ao,po)},Bv=Mn=>{if(Mn==="transparent")return zo.some(vS(0,0,0,0));const Vn=ph.exec(Mn);if(Vn!==null)return zo.some(yS(Vn[1],Vn[2],Vn[3],"1"));const Wn=bS.exec(Mn);return Wn!==null?zo.some(yS(Wn[1],Wn[2],Wn[3],Wn[4])):zo.none()},bm=Mn=>`rgba(${Mn.red},${Mn.green},${Mn.blue},${Mn.alpha})`,Bm=Mn=>Bv(Mn).map(Ap).map(Vn=>"#"+Vn.value).getOr(Mn),a1=(Mn={},Vn)=>{const Wn=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,jn=/\s*([^:]+):\s*([^;]+);?/g,Gn=/\s+$/,no={};let ao,po;const vo=k0;Vn&&(ao=Vn.getValidStyles(),po=Vn.getInvalidStyles());const Ao=(`\\" \\' \\; \\: ; : `+vo).split(" ");for(let Qo=0;Qo{const qo={};let ds=!1;const bs=Mn.url_converter,as=Mn.url_converter_scope||Fo,ys=(yr,fr,Ar)=>{const wa=qo[yr+"-top"+fr];if(!wa)return;const Va=qo[yr+"-right"+fr];if(!Va)return;const Tl=qo[yr+"-bottom"+fr];if(!Tl)return;const tc=qo[yr+"-left"+fr];if(!tc)return;const uu=[wa,Va,Tl,tc];let Qu=uu.length-1;for(;Qu--&&uu[Qu]===uu[Qu+1];);Qu>-1&&Ar||(qo[yr+fr]=Qu===-1?uu[0]:uu.join(" "),delete qo[yr+"-top"+fr],delete qo[yr+"-right"+fr],delete qo[yr+"-bottom"+fr],delete qo[yr+"-left"+fr])},Ls=yr=>{const fr=qo[yr];if(!fr)return;const Ar=fr.indexOf(",")>-1?[fr]:fr.split(" ");let wa=Ar.length;for(;wa--;)if(Ar[wa]!==Ar[0])return!1;return qo[yr]=Ar[0],!0},zs=(yr,fr,Ar,wa)=>{Ls(fr)&&Ls(Ar)&&Ls(wa)&&(qo[yr]=qo[fr]+" "+qo[Ar]+" "+qo[wa],delete qo[fr],delete qo[Ar],delete qo[wa])},Hs=yr=>(ds=!0,no[yr]),tr=(yr,fr)=>(ds&&(yr=yr.replace(/\uFEFF[0-9]/g,Ar=>no[Ar])),fr||(yr=yr.replace(/\\([\'\";:])/g,"$1")),yr),Pr=yr=>String.fromCharCode(parseInt(yr.slice(1),16)),Ur=yr=>yr.replace(/\\[0-9a-f]+/gi,Pr),fa=(yr,fr,Ar,wa,Va,Tl)=>{if(Va=Va||Tl,Va)return Va=tr(Va),"'"+Va.replace(/\'/g,"\\'")+"'";if(fr=tr(fr||Ar||wa||""),!Mn.allow_script_urls){const tc=fr.replace(/[\s\r\n]+/g,"");if(/(java|vb)script:/i.test(tc)||!Mn.allow_svg_data_urls&&/^data:image\/svg/i.test(tc))return""}return bs&&(fr=bs.call(as,fr,"style")),"url('"+fr.replace(/\'/g,"\\'")+"')"};if(Qo){Qo=Qo.replace(/[\u0000-\u001F]/g,""),Qo=Qo.replace(/\\[\"\';:\uFEFF]/g,Hs).replace(/\"[^\"]+\"|\'[^\']+\'/g,fr=>fr.replace(/[;:]/g,Hs));let yr;for(;yr=jn.exec(Qo);){jn.lastIndex=yr.index+yr[0].length;let fr=yr[1].replace(Gn,"").toLowerCase(),Ar=yr[2].replace(Gn,"");if(fr&&Ar){if(fr=Ur(fr),Ar=Ur(Ar),fr.indexOf(vo)!==-1||fr.indexOf('"')!==-1||!Mn.allow_script_urls&&(fr==="behavior"||/expression\s*\(|\/\*|\*\//.test(Ar)))continue;fr==="font-weight"&&Ar==="700"?Ar="bold":(fr==="color"||fr==="background-color")&&(Ar=Ar.toLowerCase()),xo(Mn.force_hex_color)&&Mn.force_hex_color!=="off"&&Bv(Ar).each(wa=>{(Mn.force_hex_color==="always"||wa.alpha===1)&&(Ar=Bm(bm(wa)))}),Ar=Ar.replace(Wn,fa),qo[fr]=ds?tr(Ar,!0):Ar}}ys("border","",!0),ys("border","-width"),ys("border","-color"),ys("border","-style"),ys("padding",""),ys("margin",""),zs("border","border-width","border-style","border-color"),qo.border==="medium none"&&delete qo.border,qo["border-image"]==="none"&&delete qo["border-image"]}return qo},serialize:(Qo,qo)=>{let ds="";const bs=(ys,Ls)=>{const zs=Ls[ys];if(zs)for(let Hs=0,tr=zs.length;Hs0?" ":"")+Pr+": "+Ur+";")}},as=(ys,Ls)=>{if(!po||!Ls)return!0;let zs=po["*"];return zs&&zs[ys]?!1:(zs=po[Ls],!(zs&&zs[ys]))};return qo&&ao?(bs("*",ao),bs(qo,ao)):Rr(Qo,(ys,Ls)=>{ys&&as(Ls,qo)&&(ds+=(ds.length>0?" ":"")+Ls+": "+ys+";")}),ds}};return Fo},VO={keyLocation:!0,layerX:!0,layerY:!0,returnValue:!0,webkitMovementX:!0,webkitMovementY:!0,keyIdentifier:!0,mozPressure:!0},hC=Mn=>Mn instanceof Event||Yo(Mn.initEvent),mC=Mn=>Mn.isDefaultPrevented===Qs||Mn.isDefaultPrevented===hs,OS=Mn=>ps(Mn.preventDefault)||hC(Mn),Fv=(Mn,Vn)=>{const Wn=Vn??{};for(const jn in Mn)Mr(VO,jn)||(Wn[jn]=Mn[jn]);return rs(Mn.composedPath)&&(Wn.composedPath=()=>Mn.composedPath()),rs(Mn.getModifierState)&&(Wn.getModifierState=jn=>Mn.getModifierState(jn)),rs(Mn.getTargetRanges)&&(Wn.getTargetRanges=()=>Mn.getTargetRanges()),Wn},Hv=(Mn,Vn,Wn,jn)=>{var Gn;const no=Fv(Vn,jn);return no.type=Mn,ps(no.target)&&(no.target=(Gn=no.srcElement)!==null&&Gn!==void 0?Gn:Wn),OS(Vn)&&(no.preventDefault=()=>{no.defaultPrevented=!0,no.isDefaultPrevented=Qs,Yo(Vn.preventDefault)&&Vn.preventDefault()},no.stopPropagation=()=>{no.cancelBubble=!0,no.isPropagationStopped=Qs,Yo(Vn.stopPropagation)&&Vn.stopPropagation()},no.stopImmediatePropagation=()=>{no.isImmediatePropagationStopped=Qs,no.stopPropagation()},mC(no)||(no.isDefaultPrevented=no.defaultPrevented===!0?Qs:hs,no.isPropagationStopped=no.cancelBubble===!0?Qs:hs,no.isImmediatePropagationStopped=hs)),no},zO="mce-data-",$2=/^(?:mouse|contextmenu)|click/,WO=(Mn,Vn,Wn,jn)=>{Mn.addEventListener(Vn,Wn,jn||!1)},Qv=(Mn,Vn,Wn,jn)=>{Mn.removeEventListener(Vn,Wn,jn||!1)},R2=Mn=>rs(Mn)&&$2.test(Mn.type),zy=(Mn,Vn)=>{const Wn=Hv(Mn.type,Mn,document,Vn);if(R2(Mn)&&ls(Mn.pageX)&&!ls(Mn.clientX)){const jn=Wn.target.ownerDocument||document,Gn=jn.documentElement,no=jn.body,ao=Wn;ao.pageX=Mn.clientX+(Gn&&Gn.scrollLeft||no&&no.scrollLeft||0)-(Gn&&Gn.clientLeft||no&&no.clientLeft||0),ao.pageY=Mn.clientY+(Gn&&Gn.scrollTop||no&&no.scrollTop||0)-(Gn&&Gn.clientTop||no&&no.clientTop||0)}return Wn},_S=(Mn,Vn,Wn)=>{const jn=Mn.document,Gn={type:"ready"};if(Wn.domLoaded){Vn(Gn);return}const no=()=>jn.readyState==="complete"||jn.readyState==="interactive"&&jn.body,ao=()=>{Qv(Mn,"DOMContentLoaded",ao),Qv(Mn,"load",ao),Wn.domLoaded||(Wn.domLoaded=!0,Vn(Gn)),Mn=null};no()?ao():WO(Mn,"DOMContentLoaded",ao),Wn.domLoaded||WO(Mn,"load",ao)};class vm{constructor(){this.domLoaded=!1,this.events={},this.count=1,this.expando=zO+(+new Date).toString(32),this.hasFocusIn="onfocusin"in document.documentElement,this.count=1}bind(Vn,Wn,jn,Gn){const no=this;let ao;const po=window,vo=qo=>{no.executeHandlers(zy(qo||po.event),Ao)};if(!Vn||Ir(Vn)||Dg(Vn))return jn;let Ao;Vn[no.expando]?Ao=Vn[no.expando]:(Ao=no.count++,Vn[no.expando]=Ao,no.events[Ao]={}),Gn=Gn||Vn;const Fo=Wn.split(" ");let Qo=Fo.length;for(;Qo--;){let qo=Fo[Qo],ds=vo,bs=!1,as=!1;if(qo==="DOMContentLoaded"&&(qo="ready"),no.domLoaded&&qo==="ready"&&Vn.readyState==="complete"){jn.call(Gn,zy({type:qo}));continue}!no.hasFocusIn&&(qo==="focusin"||qo==="focusout")&&(bs=!0,as=qo==="focusin"?"focus":"blur",ds=ys=>{const Ls=zy(ys||po.event);Ls.type=Ls.type==="focus"?"focusin":"focusout",no.executeHandlers(Ls,Ao)}),ao=no.events[Ao][qo],ao?qo==="ready"&&no.domLoaded?jn(zy({type:qo})):ao.push({func:jn,scope:Gn}):(no.events[Ao][qo]=ao=[{func:jn,scope:Gn}],ao.fakeName=as,ao.capture=bs,ao.nativeHandler=ds,qo==="ready"?_S(Vn,ds,no):WO(Vn,as||qo,ds,bs))}return Vn=ao=null,jn}unbind(Vn,Wn,jn){if(!Vn||Ir(Vn)||Dg(Vn))return this;const Gn=Vn[this.expando];if(Gn){let no=this.events[Gn];if(Wn){const ao=Wn.split(" ");let po=ao.length;for(;po--;){const vo=ao[po],Ao=no[vo];if(Ao){if(jn){let Fo=Ao.length;for(;Fo--;)if(Ao[Fo].func===jn){const Qo=Ao.nativeHandler,qo=Ao.fakeName,ds=Ao.capture,bs=Ao.slice(0,Fo).concat(Ao.slice(Fo+1));bs.nativeHandler=Qo,bs.fakeName=qo,bs.capture=ds,no[vo]=bs}}(!jn||Ao.length===0)&&(delete no[vo],Qv(Vn,Ao.fakeName||vo,Ao.nativeHandler,Ao.capture))}}}else Rr(no,(ao,po)=>{Qv(Vn,ao.fakeName||po,ao.nativeHandler,ao.capture)}),no={};for(const ao in no)if(Mr(no,ao))return this;delete this.events[Gn];try{delete Vn[this.expando]}catch{Vn[this.expando]=null}}return this}fire(Vn,Wn,jn){return this.dispatch(Vn,Wn,jn)}dispatch(Vn,Wn,jn){if(!Vn||Ir(Vn)||Dg(Vn))return this;const Gn=zy({type:Wn,target:Vn},jn);do{const no=Vn[this.expando];no&&this.executeHandlers(Gn,no),Vn=Vn.parentNode||Vn.ownerDocument||Vn.defaultView||Vn.parentWindow}while(Vn&&!Gn.isPropagationStopped());return this}clean(Vn){if(!Vn||Ir(Vn)||Dg(Vn))return this;if(Vn[this.expando]&&this.unbind(Vn),Vn.getElementsByTagName||(Vn=Vn.document),Vn&&Vn.getElementsByTagName){this.unbind(Vn);const Wn=Vn.getElementsByTagName("*");let jn=Wn.length;for(;jn--;)Vn=Wn[jn],Vn[this.expando]&&this.unbind(Vn)}return this}destroy(){this.events={}}cancel(Vn){return Vn&&(Vn.preventDefault(),Vn.stopImmediatePropagation()),!1}executeHandlers(Vn,Wn){const jn=this.events[Wn],Gn=jn&&jn[Vn.type];if(Gn)for(let no=0,ao=Gn.length;no{ps(Wn)||Wn===""?Mu(Mn,Vn):Gc(Mn,Vn,Wn)},tb=Mn=>Mn.replace(/[A-Z]/g,Vn=>"-"+Vn.toLowerCase()),l1=(Mn,Vn)=>{let Wn=0;if(Mn)for(let jn=Mn.nodeType,Gn=Mn.previousSibling;Gn;Gn=Gn.previousSibling){const no=Gn.nodeType;Vn&&Ir(Gn)&&(no===jn||!Gn.data.length)||(Wn++,jn=no)}return Wn},wS=(Mn,Vn)=>{const Wn=Tf(Vn,"style"),jn=Mn.serialize(Mn.parse(Wn),ql(Vn));ZO(Vn,UO,jn)},Vv=(Mn,Vn)=>Ys(Mn)?Mr(TT,Vn)?Mn+"":Mn+"px":Mn,qO=(Mn,Vn,Wn)=>{const jn=tb(Vn);ps(Wn)||Wn===""?_p(Mn,jn):vv(Mn,jn,Vv(Wn,jn))},pC=(Mn,Vn,Wn)=>{const jn=Vn.keep_values,Gn={set:(ao,po,vo)=>{const Ao=Cs.fromDom(ao);Yo(Vn.url_converter)&&rs(po)&&(po=Vn.url_converter.call(Vn.url_converter_scope||Wn(),String(po),vo,ao));const Fo="data-mce-"+vo;ZO(Ao,Fo,po),ZO(Ao,vo,po)},get:(ao,po)=>{const vo=Cs.fromDom(ao);return Tf(vo,"data-mce-"+po)||Tf(vo,po)}},no={style:{set:(ao,po)=>{const vo=Cs.fromDom(ao);jn&&ZO(vo,UO,po),Mu(vo,"style"),xo(po)&&ff(vo,Mn.parse(po))},get:ao=>{const po=Cs.fromDom(ao),vo=Tf(po,UO)||Tf(po,"style");return Mn.serialize(Mn.parse(vo),ql(po))}}};return jn&&(no.href=no.src=Gn),no},Eu=(Mn,Vn={})=>{const Wn={},jn=window,Gn={};let no=0;const ao=!0,po=!0,vo=mS.forElement(Cs.fromDom(Mn),{contentCssCors:Vn.contentCssCors,referrerPolicy:Vn.referrerPolicy}),Ao=[],Fo=Vn.schema?Vn.schema:i1({}),Qo=a1({url_converter:Vn.url_converter,url_converter_scope:Vn.url_converter_scope,force_hex_color:Vn.force_hex_color},Vn.schema),qo=Vn.ownEvents?new vm:vm.Event,ds=Fo.getBlockElements(),bs=or=>xo(or)?Mr(ds,or):Oa(or)&&(Mr(ds,or.nodeName)||Wl(Fo,or)),as=or=>or&&Mn&&xo(or)?Mn.getElementById(or):or,ys=or=>{const ur=as(or);return rs(ur)?Cs.fromDom(ur):null},Ls=(or,ur,Gr="")=>{let Wr;const Ha=ys(or);if(rs(Ha)&&lf(Ha)){const Jl=wT[ur];Jl&&Jl.get?Wr=Jl.get(Ha.dom,ur):Wr=Tf(Ha,ur)}return rs(Wr)?Wr:Gr},zs=or=>{const ur=as(or);return ps(ur)?[]:ur.attributes},Hs=(or,ur,Gr)=>{pa(or,Wr=>{if(Oa(Wr)){const Ha=Cs.fromDom(Wr),Jl=Gr===""?null:Gr,pd=Tf(Ha,ur),gp=wT[ur];gp&&gp.set?gp.set(Ha.dom,Jl,ur):ZO(Ha,ur,Jl),pd!==Jl&&Vn.onSetAttrib&&Vn.onSetAttrib({attrElm:Ha.dom,attrName:ur,attrValue:Jl})}})},tr=(or,ur)=>or.cloneNode(ur),Pr=()=>Vn.root_element||Mn.body,Ur=or=>{const ur=zu(or);return{x:ur.x,y:ur.y,w:ur.width,h:ur.height}},fa=(or,ur)=>Jc(Mn.body,as(or),ur),yr=(or,ur,Gr)=>{pa(or,Wr=>{const Ha=Cs.fromDom(Wr);qO(Ha,ur,Gr),Vn.update_styles&&wS(Qo,Ha)})},fr=(or,ur)=>{pa(or,Gr=>{const Wr=Cs.fromDom(Gr);Rr(ur,(Ha,Jl)=>{qO(Wr,Jl,Ha)}),Vn.update_styles&&wS(Qo,Wr)})},Ar=(or,ur,Gr)=>{const Wr=as(or);if(!(ps(Wr)||!pf(Wr)&&!$O(Wr)))return Gr?Ju(Cs.fromDom(Wr),tb(ur)):(ur=ur.replace(/-(\D)/g,(Ha,Jl)=>Jl.toUpperCase()),ur==="float"&&(ur="cssFloat"),Wr.style?Wr.style[ur]:void 0)},wa=or=>{const ur=as(or);if(!ur)return{w:0,h:0};let Gr=Ar(ur,"width"),Wr=Ar(ur,"height");return(!Gr||Gr.indexOf("px")===-1)&&(Gr="0"),(!Wr||Wr.indexOf("px")===-1)&&(Wr="0"),{w:parseInt(Gr,10)||ur.offsetWidth||ur.clientWidth,h:parseInt(Wr,10)||ur.offsetHeight||ur.clientHeight}},Va=or=>{const ur=as(or),Gr=fa(ur),Wr=wa(ur);return{x:Gr.x,y:Gr.y,w:Wr.w,h:Wr.h}},Tl=(or,ur)=>{if(!or)return!1;const Gr=Ko(or)?or:[or];return Sr(Gr,Wr=>zh(Cs.fromDom(Wr),ur))},tc=(or,ur,Gr,Wr)=>{const Ha=[];let Jl=as(or);Wr=Wr===void 0;const pd=Gr||(Pr().nodeName!=="BODY"?Pr().parentNode:null);if(xo(ur))if(ur==="*")ur=Oa;else{const gp=ur;ur=em=>Tl(em,gp)}for(;Jl&&!(Jl===pd||ps(Jl.nodeType)||Nm(Jl)||Lu(Jl));){if(!ur||ur(Jl))if(Wr)Ha.push(Jl);else return[Jl];Jl=Jl.parentNode}return Wr?Ha:null},uu=(or,ur,Gr)=>{const Wr=tc(or,ur,Gr,!1);return Wr&&Wr.length>0?Wr[0]:null},Qu=(or,ur,Gr)=>{let Wr=ur;if(or){xo(ur)&&(Wr=Ha=>Tl(Ha,ur));for(let Ha=or[Gr];Ha;Ha=Ha[Gr])if(Yo(Wr)&&Wr(Ha))return Ha}return null},Wd=(or,ur)=>Qu(or,ur,"nextSibling"),Jh=(or,ur)=>Qu(or,ur,"previousSibling"),_u=or=>Yo(or.querySelectorAll),ea=(or,ur)=>{var Gr,Wr;const Ha=(Wr=(Gr=as(ur))!==null&&Gr!==void 0?Gr:Vn.root_element)!==null&&Wr!==void 0?Wr:Mn;return _u(Ha)?kc(Ha.querySelectorAll(or)):[]},pa=function(or,ur,Gr){const Wr=Gr??this;if(Ko(or)){const Ha=[];return Wy(or,(Jl,pd)=>{const gp=as(Jl);gp&&Ha.push(ur.call(Wr,gp,pd))}),Ha}else{const Ha=as(or);return Ha?ur.call(Wr,Ha):!1}},$c=(or,ur)=>{pa(or,Gr=>{Rr(ur,(Wr,Ha)=>{Hs(Gr,Ha,Wr)})})},ac=(or,ur)=>{pa(or,Gr=>{const Wr=Cs.fromDom(Gr);dm(Wr,ur)})},Pa=(or,ur,Gr,Wr,Ha)=>pa(or,Jl=>{const pd=xo(ur)?Mn.createElement(ur):ur;return rs(Gr)&&$c(pd,Gr),Wr&&(!xo(Wr)&&Wr.nodeType?pd.appendChild(Wr):xo(Wr)&&ac(pd,Wr)),Ha?pd:Jl.appendChild(pd)}),ml=(or,ur,Gr)=>Pa(Mn.createElement(or),or,ur,Gr,!0),Yr=P0.decode,pl=P0.encodeAllRaw,pc=(or,ur,Gr="")=>{let Wr="<"+or;for(const Ha in ur)il(ur,Ha)&&(Wr+=" "+Ha+'="'+pl(ur[Ha])+'"');return Td(Gr)&&Mr(Fo.getVoidElements(),or)?Wr+" />":Wr+">"+Gr+""},Pu=or=>{const ur=Mn.createElement("div"),Gr=Mn.createDocumentFragment();Gr.appendChild(ur),or&&(ur.innerHTML=or);let Wr;for(;Wr=ur.firstChild;)Gr.appendChild(Wr);return Gr.removeChild(ur),Gr},du=(or,ur)=>pa(or,Gr=>{const Wr=Cs.fromDom(Gr);return ur&&fs(Ku(Wr),Ha=>{qd(Ha)&&Ha.dom.length===0?sc(Ha):ed(Wr,Ha)}),sc(Wr),Wr.dom}),Oh=or=>pa(or,ur=>{const Gr=ur.attributes;for(let Wr=Gr.length-1;Wr>=0;Wr--)ur.removeAttributeNode(Gr.item(Wr))}),h0=or=>Qo.parse(or),Ay=(or,ur)=>Qo.serialize(or,ur),Ip=or=>{if(Ry!==Eu.DOM&&Mn===document){if(Wn[or])return;Wn[or]=!0}let ur=Mn.getElementById("mceDefaultStyles");if(!ur){ur=Mn.createElement("style"),ur.id="mceDefaultStyles",ur.type="text/css";const Gr=Mn.head;Gr.firstChild?Gr.insertBefore(ur,Gr.firstChild):Gr.appendChild(ur)}ur.styleSheet?ur.styleSheet.cssText+=or:ur.appendChild(Mn.createTextNode(or))},Sb=or=>{or||(or=""),fs(or.split(","),ur=>{Gn[ur]=!0,vo.load(ur).catch(Js)})},Sl=(or,ur,Gr)=>{pa(or,Wr=>{if(Oa(Wr)){const Ha=Cs.fromDom(Wr),Jl=ur.split(" ");fs(Jl,pd=>{rs(Gr)?(Gr?Xm:Vf)(Ha,pd):Gg(Ha,pd)})}})},Mc=(or,ur)=>{Sl(or,ur,!0)},ru=(or,ur)=>{Sl(or,ur,!1)},Kd=(or,ur)=>{const Gr=ys(or),Wr=ur.split(" ");return rs(Gr)&&gc(Wr,Ha=>yp(Gr,Ha))},xd=or=>{pa(or,ur=>_p(Cs.fromDom(ur),"display"))},wg=or=>{pa(or,ur=>vv(Cs.fromDom(ur),"display","none"))},dv=or=>{const ur=ys(or);return rs(ur)&&qc(fd(ur,"display"),"none")},AO=or=>(or||"mce_")+no++,oC=or=>{const ur=ys(or);return rs(ur)?Oa(ur.dom)?ur.dom.outerHTML:n1(ur):""},C2=(or,ur)=>{pa(or,Gr=>{Oa(Gr)&&(Gr.outerHTML=ur)})},n3=(or,ur)=>{const Gr=as(ur);return pa(or,Wr=>{const Ha=Gr==null?void 0:Gr.parentNode,Jl=Gr==null?void 0:Gr.nextSibling;return Ha&&(Jl?Ha.insertBefore(Wr,Jl):Ha.appendChild(Wr)),Wr})},sC=(or,ur,Gr)=>pa(ur,Wr=>{var Ha;const Jl=Ko(ur)?or.cloneNode(!0):or;return Gr&&Wy(SS(Wr.childNodes),pd=>{Jl.appendChild(pd)}),(Ha=Wr.parentNode)===null||Ha===void 0||Ha.replaceChild(Jl,Wr),Wr}),vT=(or,ur)=>{if(or.nodeName!==ur.toUpperCase()){const Gr=ml(ur);return Wy(zs(or),Wr=>{Hs(Gr,Wr.nodeName,Ls(or,Wr.nodeName))}),sC(Gr,or,!0),Gr}else return or},k2=(or,ur)=>{let Gr=or;for(;Gr;){let Wr=ur;for(;Wr&&Gr!==Wr;)Wr=Wr.parentNode;if(Gr===Wr)break;Gr=Gr.parentNode}return!Gr&&or.ownerDocument?or.ownerDocument.documentElement:Gr},lS=or=>{if(Oa(or)){const ur=or.nodeName.toLowerCase()==="a"&&!Ls(or,"href")&&Ls(or,"id");if(Ls(or,"name")||Ls(or,"data-mce-bookmark")||ur)return!0}return!1},fv=(or,ur,Gr)=>{let Wr=0;if(lS(or))return!1;const Ha=or.firstChild;if(Ha){const Jl=new mu(Ha,or),pd=Fo?Fo.getWhitespaceElements():{},gp=ur||(Fo?Fo.getNonEmptyElements():null);let em=Ha;do{if(Oa(em)){const uS=em.getAttribute("data-mce-bogus");if(uS){em=Jl.next(uS==="all");continue}const wb=em.nodeName.toLowerCase();if(gp&&gp[wb]){if(wb==="br"){Wr++,em=Jl.next();continue}return!1}if(lS(em))return!1}if(Dg(em)||Ir(em)&&!Q1(em.data)&&(!(Gr!=null&&Gr.includeZwsp)||!o1(em.data))||Ir(em)&&em.parentNode&&pd[em.parentNode.nodeName]&&Q1(em.data))return!1;em=Jl.next()}while(em)}return Wr<=1},Py=()=>Mn.createRange(),yT=(or,ur,Gr)=>{let Wr=Py(),Ha,Jl;if(or&&ur&&or.parentNode&&ur.parentNode){const pd=or.parentNode;return Wr.setStart(pd,l1(or)),Wr.setEnd(ur.parentNode,l1(ur)),Ha=Wr.extractContents(),Wr=Py(),Wr.setStart(ur.parentNode,l1(ur)+1),Wr.setEnd(pd,l1(or)+1),Jl=Wr.extractContents(),pd.insertBefore(X1(Ry,Ha,Fo),or),Gr?pd.insertBefore(Gr,or):pd.insertBefore(ur,or),pd.insertBefore(X1(Ry,Jl,Fo),or),du(or),Gr||ur}else return},x2=(or,ur,Gr,Wr)=>{if(Ko(or)){let Ha=or.length;const Jl=[];for(;Ha--;)Jl[Ha]=x2(or[Ha],ur,Gr,Wr);return Jl}else return Vn.collect&&(or===Mn||or===jn)&&Ao.push([or,ur,Gr,Wr]),qo.bind(or,ur,Gr,Wr||Ry)},OT=(or,ur,Gr)=>{if(Ko(or)){let Wr=or.length;const Ha=[];for(;Wr--;)Ha[Wr]=OT(or[Wr],ur,Gr);return Ha}else{if(Ao.length>0&&(or===Mn||or===jn)){let Wr=Ao.length;for(;Wr--;){const[Ha,Jl,pd]=Ao[Wr];or===Ha&&(!ur||ur===Jl)&&(!Gr||Gr===pd)&&qo.unbind(Ha,Jl,pd)}}return qo.unbind(or,ur,Gr)}},$y=(or,ur,Gr)=>qo.dispatch(or,ur,Gr),o3=(or,ur,Gr)=>qo.dispatch(or,ur,Gr),_T=or=>{if(or&&pf(or)){const ur=or.getAttribute("data-mce-contenteditable");return ur&&ur!=="inherit"?ur:or.contentEditable!=="inherit"?or.contentEditable:null}else return null},Ry={doc:Mn,settings:Vn,win:jn,files:Gn,stdMode:ao,boxModel:po,styleSheetLoader:vo,boundEvents:Ao,styles:Qo,schema:Fo,events:qo,isBlock:bs,root:null,clone:tr,getRoot:Pr,getViewPort:Ur,getRect:Va,getSize:wa,getParent:uu,getParents:tc,get:as,getNext:Wd,getPrev:Jh,select:ea,is:Tl,add:Pa,create:ml,createHTML:pc,createFragment:Pu,remove:du,setStyle:yr,getStyle:Ar,setStyles:fr,removeAllAttribs:Oh,setAttrib:Hs,setAttribs:$c,getAttrib:Ls,getPos:fa,parseStyle:h0,serializeStyle:Ay,addStyle:Ip,loadCSS:Sb,addClass:Mc,removeClass:ru,hasClass:Kd,toggleClass:Sl,show:xd,hide:wg,isHidden:dv,uniqueId:AO,setHTML:ac,getOuterHTML:oC,setOuterHTML:C2,decode:Yr,encode:pl,insertAfter:n3,replace:sC,rename:vT,findCommonAncestor:k2,run:pa,getAttribs:zs,isEmpty:fv,createRng:Py,nodeIndex:l1,split:yT,bind:x2,unbind:OT,fire:o3,dispatch:$y,getContentEditable:_T,getContentEditableParent:or=>{const ur=Pr();let Gr=null;for(let Wr=or;Wr&&Wr!==ur&&(Gr=_T(Wr),Gr===null);Wr=Wr.parentNode);return Gr},isEditable:or=>{if(rs(or)){const ur=Oa(or)?or:or.parentElement;return rs(ur)&&pf(ur)&&yl(Cs.fromDom(ur))}else return!1},destroy:()=>{if(Ao.length>0){let or=Ao.length;for(;or--;){const[ur,Gr,Wr]=Ao[or];qo.unbind(ur,Gr,Wr)}}Rr(Gn,(or,ur)=>{vo.unload(ur),delete Gn[ur]})},isChildOf:(or,ur)=>or===ur||ur.contains(or),dumpRng:or=>"startContainer: "+or.startContainer.nodeName+", startOffset: "+or.startOffset+", endContainer: "+or.endContainer.nodeName+", endOffset: "+or.endOffset},wT=pC(Qo,Vn,xs(Ry));return Ry};Eu.DOM=Eu(document),Eu.nodeIndex=l1;const lg=Eu.DOM,$d=0,gC=1,Yu=2,R0=3;class of{constructor(Vn={}){this.states={},this.queue=[],this.scriptLoadedCallbacks={},this.queueLoadedCallbacks=[],this.loading=!1,this.settings=Vn}_setReferrerPolicy(Vn){this.settings.referrerPolicy=Vn}loadScript(Vn){return new Promise((Wn,jn)=>{const Gn=lg;let no;const ao=()=>{Gn.remove(Ao),no&&(no.onerror=no.onload=no=null)},po=()=>{ao(),Wn()},vo=()=>{ao(),jn("Failed to load script: "+Vn)},Ao=Gn.uniqueId();no=document.createElement("script"),no.id=Ao,no.type="text/javascript",no.src=Lr._addCacheSuffix(Vn),this.settings.referrerPolicy&&Gn.setAttrib(no,"referrerpolicy",this.settings.referrerPolicy),no.onload=po,no.onerror=vo,(document.getElementsByTagName("head")[0]||document.body).appendChild(no)})}isDone(Vn){return this.states[Vn]===Yu}markDone(Vn){this.states[Vn]=Yu}add(Vn){const Wn=this;return Wn.queue.push(Vn),Wn.states[Vn]===void 0&&(Wn.states[Vn]=$d),new Promise((Gn,no)=>{Wn.scriptLoadedCallbacks[Vn]||(Wn.scriptLoadedCallbacks[Vn]=[]),Wn.scriptLoadedCallbacks[Vn].push({resolve:Gn,reject:no})})}load(Vn){return this.add(Vn)}remove(Vn){delete this.states[Vn],delete this.scriptLoadedCallbacks[Vn]}loadQueue(){const Vn=this.queue;return this.queue=[],this.loadScripts(Vn)}loadScripts(Vn){const Wn=this,jn=(vo,Ao)=>{Ma(Wn.scriptLoadedCallbacks,Ao).each(Fo=>{fs(Fo,Qo=>Qo[vo](Ao))}),delete Wn.scriptLoadedCallbacks[Ao]},Gn=vo=>{const Ao=nr(vo,Fo=>Fo.status==="rejected");return Ao.length>0?Promise.reject(cc(Ao,({reason:Fo})=>Ko(Fo)?Fo:[Fo])):Promise.resolve()},no=vo=>Promise.allSettled(Us(vo,Ao=>Wn.states[Ao]===Yu?(jn("resolve",Ao),Promise.resolve()):Wn.states[Ao]===R0?(jn("reject",Ao),Promise.reject(Ao)):(Wn.states[Ao]=gC,Wn.loadScript(Ao).then(()=>{Wn.states[Ao]=Yu,jn("resolve",Ao);const Fo=Wn.queue;return Fo.length>0?(Wn.queue=[],no(Fo).then(Gn)):Promise.resolve()},()=>(Wn.states[Ao]=R0,jn("reject",Ao),Promise.reject(Ao)))))),ao=vo=>(Wn.loading=!0,no(vo).then(Ao=>{Wn.loading=!1;const Fo=Wn.queueLoadedCallbacks.shift();return zo.from(Fo).each(ha),Gn(Ao)})),po=vl(Vn);return Wn.loading?new Promise((vo,Ao)=>{Wn.queueLoadedCallbacks.push(()=>{ao(po).then(vo,Ao)})}):ao(po)}}of.ScriptLoader=new of;const od=Mn=>{let Vn=Mn;return{get:()=>Vn,set:Gn=>{Vn=Gn}}},sp=(Mn,Vn)=>{const Wn=Mn.indexOf(Vn);return Wn!==-1&&Mn.indexOf(Vn,Wn+1)>Wn},CS=Mn=>Bo(Mn)&&Mr(Mn,"raw"),Df=Mn=>Ko(Mn)&&Mn.length>1,Uy={},zv=od("en"),c1=()=>Ma(Uy,zv.get()),cg={getData:()=>Pl(Uy,Mn=>({...Mn})),setCode:Mn=>{Mn&&zv.set(Mn)},getCode:()=>zv.get(),add:(Mn,Vn)=>{let Wn=Uy[Mn];Wn||(Uy[Mn]=Wn={});const jn=Us(Al(Vn),Gn=>Gn.toLowerCase());Rr(Vn,(Gn,no)=>{const ao=no.toLowerCase();ao!==no&&sp(jn,ao)?(Mr(Vn,ao)||(Wn[ao]=Gn),Wn[no]=Gn):Wn[ao]=Gn})},translate:Mn=>{const Vn=c1().getOr({}),Wn=ao=>Yo(ao)?Object.prototype.toString.call(ao):jn(ao)?"":""+ao,jn=ao=>ao===""||ao===null||ao===void 0,Gn=ao=>{const po=Wn(ao);return Mr(Vn,po)?Wn(Vn[po]):Ma(Vn,po.toLowerCase()).map(Wn).getOr(po)},no=ao=>ao.replace(/{context:\w+}$/,"");if(jn(Mn))return"";if(CS(Mn))return Wn(Mn.raw);if(Df(Mn)){const ao=Mn.slice(1),po=Gn(Mn[0]).replace(/\{([0-9]+)\}/g,(vo,Ao)=>Mr(ao,Ao)?Wn(ao[Ao]):vo);return no(po)}return no(Gn(Mn))},isRtl:()=>c1().bind(Mn=>Ma(Mn,"_dir")).exists(Mn=>Mn==="rtl"),hasCode:Mn=>Mr(Uy,Mn)},$h=()=>{const Mn=[],Vn={},Wn={},jn=[],Gn=(as,ys)=>{const Ls=nr(jn,zs=>zs.name===as&&zs.state===ys);fs(Ls,zs=>zs.resolve())},no=as=>Mr(Vn,as),ao=as=>Mr(Wn,as),po=as=>{if(Wn[as])return Wn[as].instance},vo=(as,ys)=>{const Ls=cg.getCode(),zs=","+(ys||"")+",";!Ls||ys&&zs.indexOf(","+Ls+",")===-1||of.ScriptLoader.add(Vn[as]+"/langs/"+Ls+".js")},Ao=(as,ys)=>{$h.languageLoad!==!1&&(no(as)?vo(as,ys):bs(as,"loaded").then(()=>vo(as,ys)))},Fo=(as,ys)=>(Mn.push(ys),Wn[as]={instance:ys},Gn(as,"added"),ys),Qo=as=>{delete Vn[as],delete Wn[as]},qo=(as,ys)=>xo(ys)?xo(as)?{prefix:"",resource:ys,suffix:""}:{prefix:as.prefix,resource:ys,suffix:as.suffix}:ys,ds=(as,ys)=>{if(Vn[as])return Promise.resolve();let Ls=xo(ys)?ys:ys.prefix+ys.resource+ys.suffix;Ls.indexOf("/")!==0&&Ls.indexOf("://")===-1&&(Ls=$h.baseURL+"/"+Ls),Vn[as]=Ls.substring(0,Ls.lastIndexOf("/"));const zs=()=>(Gn(as,"loaded"),Promise.resolve());return Wn[as]?zs():of.ScriptLoader.add(Ls).then(zs)},bs=(as,ys="added")=>ys==="added"&&ao(as)||ys==="loaded"&&no(as)?Promise.resolve():new Promise(Ls=>{jn.push({name:as,state:ys,resolve:Ls})});return{items:Mn,urls:Vn,lookup:Wn,get:po,requireLangPack:Ao,add:Fo,remove:Qo,createUrl:qo,load:ds,waitFor:bs}};$h.languageLoad=!0,$h.baseURL="",$h.PluginManager=$h(),$h.ThemeManager=$h(),$h.ModelManager=$h();const M2=Mn=>{const Vn=od(zo.none()),Wn=()=>Vn.get().each(Mn);return{clear:()=>{Wn(),Vn.set(zo.none())},isSet:()=>Vn.get().isSome(),get:()=>Vn.get(),set:po=>{Wn(),Vn.set(zo.some(po))}}},N2=Mn=>{const Vn=od(zo.none()),Wn=()=>Vn.get().each(po=>clearInterval(po));return{clear:()=>{Wn(),Vn.set(zo.none())},isSet:()=>Vn.get().isSome(),get:()=>Vn.get(),set:po=>{Wn(),Vn.set(zo.some(setInterval(po,Mn)))}}},Fb=()=>{const Mn=M2(Js);return{...Mn,on:Wn=>Mn.get().each(Wn)}},Zy=(Mn,Vn)=>{let Wn=null;return{cancel:()=>{Mo(Wn)||(clearTimeout(Wn),Wn=null)},throttle:(...no)=>{Mo(Wn)&&(Wn=setTimeout(()=>{Wn=null,Mn.apply(null,no)},Vn))}}},jO=(Mn,Vn)=>{let Wn=null;const jn=()=>{Mo(Wn)||(clearTimeout(Wn),Wn=null)};return{cancel:jn,throttle:(...no)=>{jn(),Wn=setTimeout(()=>{Wn=null,Mn.apply(null,no)},Vn)}}},XO=xs("mce-annotation"),u1=xs("data-mce-annotation"),Uv=xs("data-mce-annotation-uid"),Hb=xs("data-mce-annotation-active"),D0=xs("data-mce-annotation-classes"),M0=xs("data-mce-annotation-attrs"),vC=Mn=>Vn=>Vs(Vn,Mn),wd=(Mn,Vn)=>{const Wn=Mn.selection.getRng(),jn=Cs.fromDom(Wn.startContainer),Gn=Cs.fromDom(Mn.getBody()),no=Vn.fold(()=>"."+XO(),vo=>`[${u1()}="${vo}"]`),ao=Rm(jn,Wn.startOffset).getOr(jn);return cm(ao,no,vC(Gn)).bind(vo=>Ld(vo,`${Uv()}`).bind(Ao=>Ld(vo,`${u1()}`).map(Fo=>{const Qo=OC(Mn,Ao);return{uid:Ao,name:Fo,elements:Qo}})))},yC=Mn=>lf(Mn)&&yp(Mn,XO()),Zv=(Mn,Vn)=>Od(Mn,"data-mce-bogus")||fS(Mn,'[data-mce-bogus="all"]',vC(Vn)),OC=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody()),jn=mf(Wn,`[${Uv()}="${Vn}"]`);return nr(jn,Gn=>!Zv(Gn,Wn))},YO=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody()),jn=mf(Wn,`[${u1()}="${Vn}"]`),Gn={};return fs(jn,no=>{if(!Zv(no,Wn)){const ao=Tf(no,Uv()),po=Ma(Gn,ao).getOr([]);Gn[ao]=po.concat([no])}}),Gn},gh=(Mn,Vn)=>{const Wn=od({}),jn=()=>({listeners:[],previous:Fb()}),Gn=(Qo,qo)=>{no(Qo,ds=>(qo(ds),ds))},no=(Qo,qo)=>{const ds=Wn.get(),bs=Ma(ds,Qo).getOrThunk(jn),as=qo(bs);ds[Qo]=as,Wn.set(ds)},ao=(Qo,qo,ds)=>{Gn(Qo,bs=>{fs(bs.listeners,as=>as(!0,Qo,{uid:qo,nodes:Us(ds,ys=>ys.dom)}))})},po=Qo=>{Gn(Qo,qo=>{fs(qo.listeners,ds=>ds(!1,Qo))})},vo=(Qo,qo)=>{fs(OC(Mn,Qo),ds=>{qo?Gc(ds,Hb(),"true"):Mu(ds,Hb())})},Ao=jO(()=>{const Qo=Vl(Vn.getNames());fs(Qo,qo=>{no(qo,ds=>{const bs=ds.previous.get();return wd(Mn,zo.some(qo)).fold(()=>{bs.each(as=>{po(qo),ds.previous.clear(),vo(as,!1)})},({uid:as,name:ys,elements:Ls})=>{qc(bs,as)||(bs.each(zs=>vo(zs,!1)),ao(ys,as,Ls),ds.previous.set(as),vo(as,!0))}),{previous:ds.previous,listeners:ds.listeners}})})},30);return Mn.on("remove",()=>{Ao.cancel()}),Mn.on("NodeChange",()=>{Ao.throttle()}),{addListener:(Qo,qo)=>{no(Qo,ds=>({previous:ds.previous,listeners:ds.listeners.concat([qo])}))}}},Fm=(Mn,Vn)=>{const Wn=u1(),jn=no=>zo.from(no.attr(Wn)).bind(Vn.lookup),Gn=no=>{var ao,po;no.attr(Uv(),null),no.attr(u1(),null),no.attr(Hb(),null);const vo=zo.from(no.attr(M0())).map(qo=>qo.split(",")).getOr([]),Ao=zo.from(no.attr(D0())).map(qo=>qo.split(",")).getOr([]);fs(vo,qo=>no.attr(qo,null));const Fo=(po=(ao=no.attr("class"))===null||ao===void 0?void 0:ao.split(" "))!==null&&po!==void 0?po:[],Qo=Ed(Fo,[XO()].concat(Ao));no.attr("class",Qo.length>0?Qo.join(" "):null),no.attr(D0(),null),no.attr(M0(),null)};Mn.serializer.addTempAttr(Hb()),Mn.serializer.addAttributeFilter(Wn,no=>{for(const ao of no)jn(ao).each(po=>{po.persistent===!1&&(ao.name==="span"?ao.unwrap():Gn(ao))})})},_C=()=>{const Mn={};return{register:(Gn,no)=>{Mn[Gn]={name:Gn,settings:no}},lookup:Gn=>Ma(Mn,Gn).map(no=>no.settings),getNames:()=>Al(Mn)}};let N0=0;const L0=Mn=>{const Wn=new Date().getTime(),jn=Math.floor(Math.random()*1e9);return N0++,Mn+"_"+jn+N0+String(Wn)},L2=(Mn,Vn)=>{fs(Vn,Wn=>{Xm(Mn,Wn)})},SC=(Mn,Vn)=>{fs(Vn,Wn=>{Vf(Mn,Wn)})},kS=(Mn,Vn)=>Cs.fromDom(Mn.dom.cloneNode(Vn)),Hm=Mn=>kS(Mn,!1),GO=Mn=>kS(Mn,!0),Rd=(Mn,Vn)=>{const Wn=Cs.fromTag(Vn),jn=zp(Mn);return im(Wn,jn),Wn},Bg=(Mn,Vn)=>{const Wn=Rd(Mn,Vn);fh(Mn,Wn);const jn=Ku(Mn);return Lc(Wn,jn),sc(Mn),Wn},qv=(Mn,Vn,Wn=hs)=>{const jn=new mu(Mn,Vn),Gn=no=>{let ao;do ao=jn[no]();while(ao&&!Ir(ao)&&!Wn(ao));return zo.from(ao).filter(Ir)};return{current:()=>zo.from(jn.current()).filter(Ir),next:()=>Gn("next"),prev:()=>Gn("prev"),prev2:()=>Gn("prev2")}},Qb=(Mn,Vn)=>{const Wn=Vn||(ao=>Mn.isBlock(ao)||Ec(ao)||jl(ao)),jn=(ao,po,vo,Ao)=>{if(Ir(ao)){const Fo=Ao(ao,po,ao.data);if(Fo!==-1)return zo.some({container:ao,offset:Fo})}return vo().bind(Fo=>jn(Fo.container,Fo.offset,vo,Ao))};return{backwards:(ao,po,vo,Ao)=>{const Fo=qv(ao,Ao??Mn.getRoot(),Wn);return jn(ao,po,()=>Fo.prev().map(Qo=>({container:Qo,offset:Qo.length})),vo).getOrNull()},forwards:(ao,po,vo,Ao)=>{const Fo=qv(ao,Ao??Mn.getRoot(),Wn);return jn(ao,po,()=>Fo.next().map(Qo=>({container:Qo,offset:0})),vo).getOrNull()}}},I0=Math.round,B0=Mn=>Mn?{left:I0(Mn.left),top:I0(Mn.top),bottom:I0(Mn.bottom),right:I0(Mn.right),width:I0(Mn.width),height:I0(Mn.height)}:{left:0,top:0,bottom:0,right:0,width:0,height:0},ob=(Mn,Vn)=>(Mn=B0(Mn),Vn||(Mn.left=Mn.left+Mn.width),Mn.right=Mn.left,Mn.width=0,Mn),wC=(Mn,Vn)=>Mn.left===Vn.left&&Mn.top===Vn.top&&Mn.bottom===Vn.bottom&&Mn.right===Vn.right,F0=(Mn,Vn,Wn)=>Mn>=0&&Mn<=Math.min(Vn.height,Wn.height)/2,Vb=(Mn,Vn)=>{const Wn=Math.min(Vn.height/2,Mn.height/2);return Mn.bottom-WnVn.bottom?!1:F0(Vn.top-Mn.bottom,Mn,Vn)},zb=(Mn,Vn)=>Mn.top>Vn.bottom?!0:Mn.bottomVn>=Mn.left&&Vn<=Mn.right&&Wn>=Mn.top&&Wn<=Mn.bottom,I2=Mn=>ra(Mn,(Vn,Wn)=>Vn.fold(()=>zo.some(Wn),jn=>{const Gn=Math.min(Wn.left,jn.left),no=Math.min(Wn.top,jn.top),ao=Math.max(Wn.right,jn.right),po=Math.max(Wn.bottom,jn.bottom);return zo.some({top:no,right:ao,bottom:po,left:Gn,width:ao-Gn,height:po-no})}),zo.none()),ES=(Mn,Vn,Wn)=>{const jn=Math.max(Math.min(Vn,Mn.left+Mn.width),Mn.left),Gn=Math.max(Math.min(Wn,Mn.top+Mn.height),Mn.top);return Math.sqrt((Vn-jn)*(Vn-jn)+(Wn-Gn)*(Wn-Gn))},B2=(Mn,Vn)=>Math.max(0,Math.min(Mn.bottom,Vn.bottom)-Math.max(Mn.top,Vn.top)),KO=(Mn,Vn,Wn)=>Math.min(Math.max(Mn,Vn),Wn),jv=Mn=>{const Vn=Mn.startContainer,Wn=Mn.startOffset;return Vn===Mn.endContainer&&Vn.hasChildNodes()&&Mn.endOffset===Wn+1?Vn.childNodes[Wn]:null},Qm=(Mn,Vn)=>{if(Oa(Mn)&&Mn.hasChildNodes()){const Wn=Mn.childNodes,jn=KO(Vn,0,Wn.length-1);return Wn[jn]}else return Mn},CC=(Mn,Vn)=>{if(!(Vn<0&&Oa(Mn)&&Mn.hasChildNodes()))return Qm(Mn,Vn)},Xv=new RegExp("[̀-ͯ҃-҇҈-҉֑-ֽֿׁ-ׂׄ-ׇׅؐ-ًؚ-ٰٟۖ-ۜ۟-ۤۧ-۪ۨ-ܑۭܰ-݊ަ-ް߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣣ-ंऺ़ु-ै्॑-ॗॢ-ॣঁ়াু-ৄ্ৗৢ-ৣਁ-ਂ਼ੁ-ੂੇ-ੈੋ-੍ੑੰ-ੱੵઁ-ં઼ુ-ૅે-ૈ્ૢ-ૣଁ଼ାିୁ-ୄ୍ୖୗୢ-ୣஂாீ்ௗఀా-ీె-ైొ-్ౕ-ౖౢ-ౣಁ಼ಿೂೆೌ-್ೕ-ೖೢ-ೣഁാു-ൄ്ൗൢ-ൣ්ාි-ුූෟัิ-ฺ็-๎ັິ-ູົ-ຼ່-ໍ༘-ཱ༹༙༵༷-ཾྀ-྄྆-྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္-်ွ-ှၘ-ၙၞ-ၠၱ-ၴႂႅ-ႆႍႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒ-ᝓᝲ-ᝳ឴-឵ិ-ួំ៉-៓៝᠋-᠍ᢩᤠ-ᤢᤧ-ᤨᤲ᤹-᤻ᨗ-ᨘᨛᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼᪰-᪽᪾ᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀ-ᮁᮢ-ᮥᮨ-ᮩ᮫-ᮭ᯦ᯨ-ᯩᯭᯯ-ᯱᰬ-ᰳᰶ-᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸-᳹᷀-᷵᷼-᷿‌-‍⃐-⃜⃝-⃠⃡⃢-⃤⃥-⃰⳯-⵿⳱ⷠ-〪ⷿ-〭〮-゙〯-゚꙯꙰-꙲ꙴ-꙽ꚞ-ꚟ꛰-꛱ꠂ꠆ꠋꠥ-ꠦ꣄꣠-꣱ꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꧥꨩ-ꨮꨱ-ꨲꨵ-ꨶꩃꩌꩼꪰꪲ-ꪴꪷ-ꪸꪾ-꪿꫁ꫬ-ꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-゙︯-゚]"),kC=Mn=>xo(Mn)&&Mn.charCodeAt(0)>=768&&Xv.test(Mn),F2=(...Mn)=>Vn=>{for(let Wn=0;WnVn=>{for(let Wn=0;WnMn?Mn.createRange():Eu.DOM.createRng(),sb=Mn=>xo(Mn)&&/[\r\n\t ]/.test(Mn),t_=Mn=>!!Mn.setStart&&!!Mn.setEnd,jy=Mn=>{const Vn=Mn.startContainer,Wn=Mn.startOffset;if(sb(Mn.toString())&&Yv(Vn.parentNode)&&Ir(Vn)){const jn=Vn.data;if(sb(jn[Wn-1])||sb(jn[Wn+1]))return!0}return!1},Xy=Mn=>{const Vn=Mn.ownerDocument,Wn=Hg(Vn),jn=Vn.createTextNode(hc),Gn=Mn.parentNode;Gn.insertBefore(jn,Mn),Wn.setStart(jn,0),Wn.setEnd(jn,1);const no=B0(Wn.getBoundingClientRect());return Gn.removeChild(jn),no},TS=Mn=>{const Vn=Mn.startContainer,Wn=Mn.endContainer,jn=Mn.startOffset,Gn=Mn.endOffset;if(Vn===Wn&&Ir(Wn)&&jn===0&&Gn===1){const no=Mn.cloneRange();return no.setEndAfter(Wn),Pp(no)}else return null},n_=Mn=>Mn.left===0&&Mn.right===0&&Mn.top===0&&Mn.bottom===0,Pp=Mn=>{var Vn;let Wn;const jn=Mn.getClientRects();return jn.length>0?Wn=B0(jn[0]):Wn=B0(Mn.getBoundingClientRect()),!t_(Mn)&&Gv(Mn)&&n_(Wn)?Xy(Mn):n_(Wn)&&t_(Mn)&&(Vn=TS(Mn))!==null&&Vn!==void 0?Vn:Wn},ug=(Mn,Vn)=>{const Wn=ob(Mn,Vn);return Wn.width=1,Wn.right=Wn.left+1,Wn},H2=Mn=>{const Vn=[],Wn=ao=>{ao.height!==0&&(Vn.length>0&&wC(ao,Vn[Vn.length-1])||Vn.push(ao))},jn=(ao,po)=>{const vo=Hg(ao.ownerDocument);if(po0&&(vo.setStart(ao,po-1),vo.setEnd(ao,po),jy(vo)||Wn(ug(Pp(vo),!1))),po{const jn=()=>(tu(Mn),Vn===0),Gn=()=>tu(Mn)?Vn>=Mn.data.length:Vn>=Mn.childNodes.length,no=()=>{const Fo=Hg(Mn.ownerDocument);return Fo.setStart(Mn,Vn),Fo.setEnd(Mn,Vn),Fo},ao=()=>(Wn||(Wn=H2(lr(Mn,Vn))),Wn),po=()=>ao().length>0,vo=Fo=>Fo&&Mn===Fo.container()&&Vn===Fo.offset(),Ao=Fo=>Yd(Mn,Fo?Vn-1:Vn);return{container:xs(Mn),offset:xs(Vn),toRange:no,getClientRects:ao,isVisible:po,isAtStart:jn,isAtEnd:Gn,isEqual:vo,getNode:Ao}};lr.fromRangeStart=Mn=>lr(Mn.startContainer,Mn.startOffset),lr.fromRangeEnd=Mn=>lr(Mn.endContainer,Mn.endOffset),lr.after=Mn=>lr(Mn.parentNode,e_(Mn)+1),lr.before=Mn=>lr(Mn.parentNode,e_(Mn)),lr.isAbove=(Mn,Vn)=>jc(qa(Vn.getClientRects()),Ya(Mn.getClientRects()),Vb).getOr(!1),lr.isBelow=(Mn,Vn)=>jc(Ya(Vn.getClientRects()),qa(Mn.getClientRects()),zb).getOr(!1),lr.isAtStart=Mn=>Mn?Mn.isAtStart():!1,lr.isAtEnd=Mn=>Mn?Mn.isAtEnd():!1,lr.isTextPosition=Mn=>Mn?Ir(Mn.container()):!1,lr.isElementPosition=Mn=>!lr.isTextPosition(Mn);const H0=(Mn,Vn)=>{Ir(Vn)&&Vn.data.length===0&&Mn.remove(Vn)},Q0=(Mn,Vn,Wn)=>{Vn.insertNode(Wn),H0(Mn,Wn.previousSibling),H0(Mn,Wn.nextSibling)},rp=(Mn,Vn,Wn)=>{const jn=zo.from(Wn.firstChild),Gn=zo.from(Wn.lastChild);Vn.insertNode(Wn),jn.each(no=>H0(Mn,no.previousSibling)),Gn.each(no=>H0(Mn,no.nextSibling))},AS=(Mn,Vn,Wn)=>{Lu(Wn)?rp(Mn,Vn,Wn):Q0(Mn,Vn,Wn)},Uu=Ir,o_=Jm,rb=Eu.nodeIndex,PS=Mn=>{const Vn=Mn.parentNode;return o_(Vn)?PS(Vn):Vn},s_=Mn=>Mn?Ts(Mn.childNodes,(Vn,Wn)=>(o_(Wn)&&Wn.nodeName!=="BR"?Vn=Vn.concat(s_(Wn)):Vn.push(Wn),Vn),[]):[],$S=(Mn,Vn)=>{let Wn=Mn;for(;(Wn=Wn.previousSibling)&&Uu(Wn);)Vn+=Wn.data.length;return Vn},Yy=Mn=>Vn=>Mn===Vn,Kv=Mn=>{let Vn,Wn;Vn=s_(PS(Mn)),Wn=ks(Vn,Yy(Mn),Mn),Vn=Vn.slice(0,Wn+1);const jn=Ts(Vn,(Gn,no,ao)=>(Uu(no)&&Uu(Vn[ao-1])&&Gn++,Gn),0);return Vn=Bh(Vn,Ad([Mn.nodeName])),Wn=ks(Vn,Yy(Mn),Mn),Wn-jn},RS=Mn=>(Uu(Mn)?"text()":Mn.nodeName.toLowerCase())+"["+Kv(Mn)+"]",Q2=(Mn,Vn,Wn)=>{const jn=[];for(let Gn=Vn.parentNode;Gn&&Gn!==Mn;Gn=Gn.parentNode)jn.push(Gn);return jn},Dd=(Mn,Vn)=>{let Wn=[],jn=Vn.container(),Gn=Vn.offset(),no;if(Uu(jn))no=$S(jn,Gn);else{const po=jn.childNodes;Gn>=po.length?(no="after",Gn=po.length-1):no="before",jn=po[Gn]}Wn.push(RS(jn));let ao=Q2(Mn,jn);return ao=Bh(ao,Fs(Jm)),Wn=Wn.concat(ad(ao,po=>RS(po))),Wn.reverse().join("/")+","+no},gf=(Mn,Vn,Wn)=>{let jn=s_(Mn);return jn=Bh(jn,(Gn,no)=>!Uu(Gn)||!Uu(jn[no-1])),jn=Bh(jn,Ad([Vn])),jn[Wn]},eh=(Mn,Vn)=>{let Wn=Mn,jn=0;for(;Uu(Wn);){const Gn=Wn.data.length;if(Vn>=jn&&Vn<=jn+Gn){Mn=Wn,Vn=Vn-jn;break}if(!Uu(Wn.nextSibling)){Mn=Wn,Vn=Gn;break}jn+=Gn,Wn=Wn.nextSibling}return Uu(Mn)&&Vn>Mn.data.length&&(Vn=Mn.data.length),lr(Mn,Vn)},bf=(Mn,Vn)=>{if(!Vn)return null;const Wn=Vn.split(","),jn=Wn[0].split("/"),Gn=Wn.length>1?Wn[1]:"before",no=Ts(jn,(ao,po)=>{const vo=/([\w\-\(\)]+)\[([0-9]+)\]/.exec(po);return vo?(vo[1]==="text()"&&(vo[1]="#text"),gf(ao,vo[1],parseInt(vo[2],10))):null},Mn);if(!no)return null;if(!Uu(no)&&no.parentNode){let ao;return Gn==="after"?ao=rb(no)+1:ao=rb(no),lr(no.parentNode,ao)}return eh(no,parseInt(Gn,10))},$l=jl,Rh=(Mn,Vn,Wn)=>{let jn=Mn(Vn.data.slice(0,Wn)).length;for(let Gn=Vn.previousSibling;Gn&&Ir(Gn);Gn=Gn.previousSibling)jn+=Mn(Gn.data).length;return jn},bu=(Mn,Vn,Wn,jn,Gn)=>{const no=Gn?jn.startContainer:jn.endContainer;let ao=Gn?jn.startOffset:jn.endOffset;const po=[],vo=Mn.getRoot();if(Ir(no))po.push(Wn?Rh(Vn,no,ao):ao);else{let Ao=0;const Fo=no.childNodes;ao>=Fo.length&&Fo.length&&(Ao=1,ao=Math.max(0,Fo.length-1)),po.push(Mn.nodeIndex(Fo[ao],Wn)+Ao)}for(let Ao=no;Ao&&Ao!==vo;Ao=Ao.parentNode)po.push(Mn.nodeIndex(Ao,Wn));return po},vf=(Mn,Vn,Wn,jn)=>{const Gn=Vn.dom,no=bu(Gn,Mn,Wn,jn,!0),ao=Vn.isForward(),po=B1(jn)?{isFakeCaret:!0}:{};if(Vn.isCollapsed())return{start:no,forward:ao,...po};{const vo=bu(Gn,Mn,Wn,jn,!1);return{start:no,end:vo,forward:ao,...po}}},Gy=(Mn,Vn,Wn)=>{let jn=0;return Lr.each(Mn.select(Vn),Gn=>{if(Gn.getAttribute("data-mce-bogus")!=="all"){if(Gn===Wn)return!1;jn++;return}}),jn},d1=(Mn,Vn)=>{let Wn=Vn?Mn.startContainer:Mn.endContainer,jn=Vn?Mn.startOffset:Mn.endOffset;if(Oa(Wn)&&Wn.nodeName==="TR"){const Gn=Wn.childNodes;Wn=Gn[Math.min(Vn?jn:jn-1,Gn.length-1)],Wn&&(jn=Vn?0:Wn.childNodes.length,Vn?Mn.setStart(Wn,jn):Mn.setEnd(Wn,jn))}},Ky=Mn=>(d1(Mn,!0),d1(Mn,!1),Mn),DS=(Mn,Vn)=>{if(Oa(Mn)&&(Mn=Qm(Mn,Vn),$l(Mn)))return Mn;if(La(Mn)){Ir(Mn)&&zr(Mn)&&(Mn=Mn.parentNode);let Wn=Mn.previousSibling;if($l(Wn)||(Wn=Mn.nextSibling,$l(Wn)))return Wn}},xC=Mn=>DS(Mn.startContainer,Mn.startOffset)||DS(Mn.endContainer,Mn.endOffset),r_=(Mn,Vn,Wn)=>{const jn=Wn.getNode(),Gn=Wn.getRng();if(jn.nodeName==="IMG"||$l(jn)){const ao=jn.nodeName;return{name:ao,index:Gy(Wn.dom,ao,jn)}}const no=xC(Gn);if(no){const ao=no.tagName;return{name:ao,index:Gy(Wn.dom,ao,no)}}return vf(Mn,Wn,Vn,Gn)},MS=Mn=>{const Vn=Mn.getRng();return{start:Dd(Mn.dom.getRoot(),lr.fromRangeStart(Vn)),end:Dd(Mn.dom.getRoot(),lr.fromRangeEnd(Vn)),forward:Mn.isForward()}},NS=Mn=>({rng:Mn.getRng(),forward:Mn.isForward()}),V2=(Mn,Vn,Wn)=>{const jn={"data-mce-type":"bookmark",id:Vn,style:"overflow:hidden;line-height:0px"};return Wn?Mn.create("span",jn,""):Mn.create("span",jn)},f1=(Mn,Vn)=>{const Wn=Mn.dom;let jn=Mn.getRng();const Gn=Wn.uniqueId(),no=Mn.isCollapsed(),ao=Mn.getNode(),po=ao.nodeName,vo=Mn.isForward();if(po==="IMG")return{name:po,index:Gy(Wn,po,ao)};const Ao=Ky(jn.cloneRange());if(!no){Ao.collapse(!1);const Qo=V2(Wn,Gn+"_end",Vn);AS(Wn,Ao,Qo)}jn=Ky(jn),jn.collapse(!0);const Fo=V2(Wn,Gn+"_start",Vn);return AS(Wn,jn,Fo),Mn.moveToBookmark({id:Gn,keep:!0,forward:vo}),{id:Gn,forward:vo}},EC=(Mn,Vn,Wn=!1)=>Vn===2?r_(Xo,Wn,Mn):Vn===3?MS(Mn):Vn?NS(Mn):f1(Mn,!1),ib=ws(r_,Qr,!0),Vd=Mn=>{const Vn=no=>no(Mn),Wn=xs(Mn),jn=()=>Gn,Gn={tag:!0,inner:Mn,fold:(no,ao)=>ao(Mn),isValue:Qs,isError:hs,map:no=>ym.value(no(Mn)),mapError:jn,bind:Vn,exists:Vn,forall:Vn,getOr:Wn,or:jn,getOrThunk:Wn,orThunk:jn,getOrDie:Wn,each:no=>{no(Mn)},toOptional:()=>zo.some(Mn)};return Gn},yf=Mn=>{const Vn=()=>Wn,Wn={tag:!1,inner:Mn,fold:(jn,Gn)=>jn(Mn),isValue:hs,isError:Qs,map:Vn,mapError:jn=>ym.error(jn(Mn)),bind:Vn,exists:hs,forall:Qs,getOr:Qr,or:Qr,getOrThunk:_r,orThunk:_r,getOrDie:Br(String(Mn)),each:Js,toOptional:zo.none};return Wn},ym={value:Vd,error:yf,fromOption:(Mn,Vn)=>Mn.fold(()=>yf(Vn),Vd)},Qg={generate:Mn=>{if(!Ko(Mn))throw new Error("cases must be an array");if(Mn.length===0)throw new Error("there must be at least one case");const Vn=[],Wn={};return fs(Mn,(jn,Gn)=>{const no=Al(jn);if(no.length!==1)throw new Error("one and only one name per case");const ao=no[0],po=jn[ao];if(Wn[ao]!==void 0)throw new Error("duplicate key detected:"+ao);if(ao==="cata")throw new Error("cannot have a case named cata (sorry)");if(!Ko(po))throw new Error("case arguments must be an array");Vn.push(ao),Wn[ao]=(...vo)=>{const Ao=vo.length;if(Ao!==po.length)throw new Error("Wrong number of arguments to case "+ao+". Expected "+po.length+" ("+po+"), got "+Ao);return{fold:(...Qo)=>{if(Qo.length!==Mn.length)throw new Error("Wrong number of arguments to fold. Expected "+Mn.length+", got "+Qo.length);return Qo[Gn].apply(null,vo)},match:Qo=>{const qo=Al(Qo);if(Vn.length!==qo.length)throw new Error("Wrong number of arguments to match. Expected: "+Vn.join(",")+` +Actual: `+qo.join(","));if(!gc(Vn,bs=>Zs(qo,bs)))throw new Error("Not all branches were specified when using match. Specified: "+qo.join(", ")+` +Required: `+Vn.join(", "));return Qo[ao].apply(null,vo)},log:Qo=>{console.log(Qo,{constructors:Vn,constructor:ao,params:vo})}}}}),Wn}};Qg.generate([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const Zr=Mn=>{const Vn=[],Wn=[];return fs(Mn,jn=>{jn.fold(Gn=>{Vn.push(Gn)},Gn=>{Wn.push(Gn)})}),{errors:Vn,values:Wn}},LS=Mn=>Mn.type==="inline-command"||Mn.type==="inline-format",Of=Mn=>Mn.type==="block-command"||Mn.type==="block-format",IS=Mn=>{const Vn=jn=>ym.error({message:jn,pattern:Mn}),Wn=(jn,Gn,no)=>{if(Mn.format!==void 0){let ao;if(Ko(Mn.format)){if(!gc(Mn.format,xo))return Vn(jn+" pattern has non-string items in the `format` array");ao=Mn.format}else if(xo(Mn.format))ao=[Mn.format];else return Vn(jn+" pattern has non-string `format` parameter");return ym.value(Gn(ao))}else return Mn.cmd!==void 0?xo(Mn.cmd)?ym.value(no(Mn.cmd,Mn.value)):Vn(jn+" pattern has non-string `cmd` parameter"):Vn(jn+" pattern is missing both `format` and `cmd` parameters")};if(!Bo(Mn))return Vn("Raw pattern is not an object");if(!xo(Mn.start))return Vn("Raw pattern is missing `start` parameter");if(Mn.end!==void 0){if(!xo(Mn.end))return Vn("Inline pattern has non-string `end` parameter");if(Mn.start.length===0&&Mn.end.length===0)return Vn("Inline pattern has empty `start` and `end` parameters");let jn=Mn.start,Gn=Mn.end;return Gn.length===0&&(Gn=jn,jn=""),Wn("Inline",no=>({type:"inline-format",start:jn,end:Gn,format:no}),(no,ao)=>({type:"inline-command",start:jn,end:Gn,cmd:no,value:ao}))}else return Mn.replacement!==void 0?xo(Mn.replacement)?Mn.start.length===0?Vn("Replacement pattern has empty `start` parameter"):ym.value({type:"inline-command",start:"",end:Mn.start,cmd:"mceInsertContent",value:Mn.replacement}):Vn("Replacement pattern has non-string `replacement` parameter"):Mn.start.length===0?Vn("Block pattern has empty `start` parameter"):Wn("Block",jn=>({type:"block-format",start:Mn.start,format:jn[0]}),(jn,Gn)=>({type:"block-command",start:Mn.start,cmd:jn,value:Gn}))},Ub=Mn=>nr(Mn,Of),Jy=Mn=>nr(Mn,LS),Om=(Mn,Vn)=>({inlinePatterns:Jy(Mn),blockPatterns:Ub(Mn),dynamicPatternsLookup:Vn}),TC=Mn=>{const Vn=Zr(Us(Mn,IS));return fs(Vn.errors,Wn=>console.error(Wn.message,Wn.pattern)),Vn.values},eO=Mn=>Vn=>{const Wn=Mn(Vn);return TC(Wn)},Cd=xl().deviceType,Vg=Cd.isTouch(),tO=Eu.DOM,h1=Mn=>{const Vn=Mn.indexOf("=")>0?Mn.split(/[;,](?![^=;,]*(?:[;,]|$))/):Mn.split(",");return ra(Vn,(Wn,jn)=>{const Gn=jn.split("="),no=Gn[0],ao=Gn.length>1?Gn[1]:no;return Wn[ih(no)]=ih(ao),Wn},{})},dg=Mn=>Do(Mn,RegExp),ma=Mn=>Vn=>Vn.options.get(Mn),ip=Mn=>xo(Mn)||Bo(Mn),BS=(Mn,Vn="")=>Wn=>{const jn=xo(Wn);if(jn)if(Wn.indexOf("=")!==-1){const Gn=h1(Wn);return{value:Ma(Gn,Mn.id).getOr(Vn),valid:jn}}else return{value:Wn,valid:jn};else return{valid:!1,message:"Must be a string."}},m1=Mn=>{const Vn=Mn.options.register;Vn("id",{processor:"string",default:Mn.id}),Vn("selector",{processor:"string"}),Vn("target",{processor:"object"}),Vn("suffix",{processor:"string"}),Vn("cache_suffix",{processor:"string"}),Vn("base_url",{processor:"string"}),Vn("referrer_policy",{processor:"string",default:""}),Vn("language_load",{processor:"boolean",default:!0}),Vn("inline",{processor:"boolean",default:!1}),Vn("iframe_attrs",{processor:"object",default:{}}),Vn("doctype",{processor:"string",default:""}),Vn("document_base_url",{processor:"string",default:Mn.documentBaseUrl}),Vn("body_id",{processor:BS(Mn,"tinymce"),default:"tinymce"}),Vn("body_class",{processor:BS(Mn),default:""}),Vn("content_security_policy",{processor:"string",default:""}),Vn("br_in_pre",{processor:"boolean",default:!0}),Vn("forced_root_block",{processor:Wn=>{const jn=xo(Wn)&&fc(Wn);return jn?{value:Wn,valid:jn}:{valid:!1,message:"Must be a non-empty string."}},default:"p"}),Vn("forced_root_block_attrs",{processor:"object",default:{}}),Vn("newline_behavior",{processor:Wn=>{const jn=Zs(["block","linebreak","invert","default"],Wn);return jn?{value:Wn,valid:jn}:{valid:!1,message:"Must be one of: block, linebreak, invert or default."}},default:"default"}),Vn("br_newline_selector",{processor:"string",default:".mce-toc h2,figcaption,caption"}),Vn("no_newline_selector",{processor:"string",default:""}),Vn("keep_styles",{processor:"boolean",default:!0}),Vn("end_container_on_empty_block",{processor:Wn=>es(Wn)?{valid:!0,value:Wn}:xo(Wn)?{valid:!0,value:Wn}:{valid:!1,message:"Must be boolean or a string"},default:"blockquote"}),Vn("font_size_style_values",{processor:"string",default:"xx-small,x-small,small,medium,large,x-large,xx-large"}),Vn("font_size_legacy_values",{processor:"string",default:"xx-small,small,medium,large,x-large,xx-large,300%"}),Vn("font_size_classes",{processor:"string",default:""}),Vn("automatic_uploads",{processor:"boolean",default:!0}),Vn("images_reuse_filename",{processor:"boolean",default:!1}),Vn("images_replace_blob_uris",{processor:"boolean",default:!0}),Vn("icons",{processor:"string",default:""}),Vn("icons_url",{processor:"string",default:""}),Vn("images_upload_url",{processor:"string",default:""}),Vn("images_upload_base_path",{processor:"string",default:""}),Vn("images_upload_credentials",{processor:"boolean",default:!1}),Vn("images_upload_handler",{processor:"function"}),Vn("language",{processor:"string",default:"en"}),Vn("language_url",{processor:"string",default:""}),Vn("entity_encoding",{processor:"string",default:"named"}),Vn("indent",{processor:"boolean",default:!0}),Vn("indent_before",{processor:"string",default:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,details,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist"}),Vn("indent_after",{processor:"string",default:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,details,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist"}),Vn("indent_use_margin",{processor:"boolean",default:!1}),Vn("indentation",{processor:"string",default:"40px"}),Vn("content_css",{processor:Wn=>{const jn=Wn===!1||xo(Wn)||sr(Wn,xo);return jn?xo(Wn)?{value:Us(Wn.split(","),ih),valid:jn}:Ko(Wn)?{value:Wn,valid:jn}:Wn===!1?{value:[],valid:jn}:{value:Wn,valid:jn}:{valid:!1,message:"Must be false, a string or an array of strings."}},default:ZS(Mn)?[]:["default"]}),Vn("content_style",{processor:"string"}),Vn("content_css_cors",{processor:"boolean",default:!1}),Vn("font_css",{processor:Wn=>{const jn=xo(Wn)||sr(Wn,xo);return jn?{value:Ko(Wn)?Wn:Us(Wn.split(","),ih),valid:jn}:{valid:!1,message:"Must be a string or an array of strings."}},default:[]}),Vn("inline_boundaries",{processor:"boolean",default:!0}),Vn("inline_boundaries_selector",{processor:"string",default:"a[href],code,span.mce-annotation"}),Vn("object_resizing",{processor:Wn=>{const jn=es(Wn)||xo(Wn);return jn?Wn===!1||Cd.isiPhone()||Cd.isiPad()?{value:"",valid:jn}:{value:Wn===!0?"table,img,figure.image,div,video,iframe":Wn,valid:jn}:{valid:!1,message:"Must be boolean or a string"}},default:!Vg}),Vn("resize_img_proportional",{processor:"boolean",default:!0}),Vn("event_root",{processor:"object"}),Vn("service_message",{processor:"string"}),Vn("theme",{processor:Wn=>Wn===!1||xo(Wn)||Yo(Wn),default:"silver"}),Vn("theme_url",{processor:"string"}),Vn("formats",{processor:"object"}),Vn("format_empty_lines",{processor:"boolean",default:!1}),Vn("format_noneditable_selector",{processor:"string",default:""}),Vn("preview_styles",{processor:Wn=>{const jn=Wn===!1||xo(Wn);return jn?{value:Wn===!1?"":Wn,valid:jn}:{valid:!1,message:"Must be false or a string"}},default:"font-family font-size font-weight font-style text-decoration text-transform color background-color border border-radius outline text-shadow"}),Vn("custom_ui_selector",{processor:"string",default:""}),Vn("hidden_input",{processor:"boolean",default:!0}),Vn("submit_patch",{processor:"boolean",default:!0}),Vn("encoding",{processor:"string"}),Vn("add_form_submit_trigger",{processor:"boolean",default:!0}),Vn("add_unload_trigger",{processor:"boolean",default:!0}),Vn("custom_undo_redo_levels",{processor:"number",default:0}),Vn("disable_nodechange",{processor:"boolean",default:!1}),Vn("readonly",{processor:"boolean",default:!1}),Vn("editable_root",{processor:"boolean",default:!0}),Vn("plugins",{processor:"string[]",default:[]}),Vn("external_plugins",{processor:"object"}),Vn("forced_plugins",{processor:"string[]"}),Vn("model",{processor:"string",default:Mn.hasPlugin("rtc")?"plugin":"dom"}),Vn("model_url",{processor:"string"}),Vn("block_unsupported_drop",{processor:"boolean",default:!0}),Vn("visual",{processor:"boolean",default:!0}),Vn("visual_table_class",{processor:"string",default:"mce-item-table"}),Vn("visual_anchor_class",{processor:"string",default:"mce-item-anchor"}),Vn("iframe_aria_text",{processor:"string",default:"Rich Text Area. Press ALT-0 for help."}),Vn("setup",{processor:"function"}),Vn("init_instance_callback",{processor:"function"}),Vn("url_converter",{processor:"function",default:Mn.convertURL}),Vn("url_converter_scope",{processor:"object",default:Mn}),Vn("urlconverter_callback",{processor:"function"}),Vn("allow_conditional_comments",{processor:"boolean",default:!1}),Vn("allow_html_data_urls",{processor:"boolean",default:!1}),Vn("allow_svg_data_urls",{processor:"boolean"}),Vn("allow_html_in_named_anchor",{processor:"boolean",default:!1}),Vn("allow_script_urls",{processor:"boolean",default:!1}),Vn("allow_unsafe_link_target",{processor:"boolean",default:!1}),Vn("convert_fonts_to_spans",{processor:"boolean",default:!0,deprecated:!0}),Vn("fix_list_elements",{processor:"boolean",default:!1}),Vn("preserve_cdata",{processor:"boolean",default:!1}),Vn("remove_trailing_brs",{processor:"boolean",default:!0}),Vn("pad_empty_with_br",{processor:"boolean",default:!1}),Vn("inline_styles",{processor:"boolean",default:!0,deprecated:!0}),Vn("element_format",{processor:"string",default:"html"}),Vn("entities",{processor:"string"}),Vn("schema",{processor:"string",default:"html5"}),Vn("convert_urls",{processor:"boolean",default:!0}),Vn("relative_urls",{processor:"boolean",default:!0}),Vn("remove_script_host",{processor:"boolean",default:!0}),Vn("custom_elements",{processor:"string"}),Vn("extended_valid_elements",{processor:"string"}),Vn("invalid_elements",{processor:"string"}),Vn("invalid_styles",{processor:ip}),Vn("valid_children",{processor:"string"}),Vn("valid_classes",{processor:ip}),Vn("valid_elements",{processor:"string"}),Vn("valid_styles",{processor:ip}),Vn("verify_html",{processor:"boolean",default:!0}),Vn("auto_focus",{processor:Wn=>xo(Wn)||Wn===!0}),Vn("browser_spellcheck",{processor:"boolean",default:!1}),Vn("protect",{processor:"array"}),Vn("images_file_types",{processor:"string",default:"jpeg,jpg,jpe,jfi,jif,jfif,png,gif,bmp,webp"}),Vn("deprecation_warnings",{processor:"boolean",default:!0}),Vn("a11y_advanced_options",{processor:"boolean",default:!1}),Vn("api_key",{processor:"string"}),Vn("paste_block_drop",{processor:"boolean",default:!1}),Vn("paste_data_images",{processor:"boolean",default:!0}),Vn("paste_preprocess",{processor:"function"}),Vn("paste_postprocess",{processor:"function"}),Vn("paste_webkit_styles",{processor:"string",default:"none"}),Vn("paste_remove_styles_if_webkit",{processor:"boolean",default:!0}),Vn("paste_merge_formats",{processor:"boolean",default:!0}),Vn("smart_paste",{processor:"boolean",default:!0}),Vn("paste_as_text",{processor:"boolean",default:!1}),Vn("paste_tab_spaces",{processor:"number",default:4}),Vn("text_patterns",{processor:Wn=>sr(Wn,Bo)||Wn===!1?{value:TC(Wn===!1?[]:Wn),valid:!0}:{valid:!1,message:"Must be an array of objects or false."},default:[{start:"*",end:"*",format:"italic"},{start:"**",end:"**",format:"bold"},{start:"#",format:"h1"},{start:"##",format:"h2"},{start:"###",format:"h3"},{start:"####",format:"h4"},{start:"#####",format:"h5"},{start:"######",format:"h6"},{start:"1. ",cmd:"InsertOrderedList"},{start:"* ",cmd:"InsertUnorderedList"},{start:"- ",cmd:"InsertUnorderedList"}]}),Vn("text_patterns_lookup",{processor:Wn=>Yo(Wn)?{value:eO(Wn),valid:!0}:{valid:!1,message:"Must be a single function"},default:Wn=>[]}),Vn("noneditable_class",{processor:"string",default:"mceNonEditable"}),Vn("editable_class",{processor:"string",default:"mceEditable"}),Vn("noneditable_regexp",{processor:Wn=>sr(Wn,dg)?{value:Wn,valid:!0}:dg(Wn)?{value:[Wn],valid:!0}:{valid:!1,message:"Must be a RegExp or an array of RegExp."},default:[]}),Vn("table_tab_navigation",{processor:"boolean",default:!0}),Vn("highlight_on_focus",{processor:"boolean",default:!1}),Vn("xss_sanitization",{processor:"boolean",default:!0}),Vn("details_initial_state",{processor:Wn=>{const jn=Zs(["inherited","collapsed","expanded"],Wn);return jn?{value:Wn,valid:jn}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),Vn("details_serialized_state",{processor:Wn=>{const jn=Zs(["inherited","collapsed","expanded"],Wn);return jn?{value:Wn,valid:jn}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),Vn("init_content_sync",{processor:"boolean",default:!1}),Vn("newdocument_content",{processor:"string",default:""}),Vn("force_hex_color",{processor:Wn=>{const jn=["always","rgb_only","off"],Gn=Zs(jn,Wn);return Gn?{value:Wn,valid:Gn}:{valid:!1,message:`Must be one of: ${jn.join(", ")}.`}},default:"off"}),Vn("sandbox_iframes",{processor:"boolean",default:!1}),Vn("convert_unsafe_embeds",{processor:"boolean",default:!1}),Mn.on("ScriptsLoaded",()=>{Vn("directionality",{processor:"string",default:cg.isRtl()?"rtl":void 0}),Vn("placeholder",{processor:"string",default:tO.getAttrib(Mn.getElement(),"placeholder")})})},Ic=ma("iframe_attrs"),FS=ma("doctype"),ap=ma("document_base_url"),i_=ma("body_id"),W2=ma("body_class"),Zu=ma("content_security_policy"),U2=ma("br_in_pre"),bh=ma("forced_root_block"),Zb=ma("forced_root_block_attrs"),Z2=ma("newline_behavior"),q2=ma("br_newline_selector"),HS=ma("no_newline_selector"),j2=ma("keep_styles"),AC=ma("end_container_on_empty_block"),PC=ma("automatic_uploads"),nO=ma("images_reuse_filename"),$C=ma("images_replace_blob_uris"),QS=ma("icons"),V0=ma("icons_url"),X2=ma("images_upload_url"),Y2=ma("images_upload_base_path"),VS=ma("images_upload_credentials"),zS=ma("images_upload_handler"),ab=ma("content_css_cors"),Hl=ma("referrer_policy"),WS=ma("language"),Dh=ma("language_url"),a_=ma("indent_use_margin"),th=ma("indentation"),_m=ma("content_css"),l_=ma("content_style"),RC=ma("font_css"),G2=ma("directionality"),DC=ma("inline_boundaries_selector"),Jv=ma("object_resizing"),MC=ma("resize_img_proportional"),RT=ma("placeholder"),lb=ma("event_root"),K2=ma("service_message"),ey=ma("theme"),J2=ma("theme_url"),c_=ma("model"),US=ma("model_url"),z0=ma("inline_boundaries"),ex=ma("formats"),NC=ma("preview_styles"),LC=ma("format_empty_lines"),zg=ma("format_noneditable_selector"),IC=ma("custom_ui_selector"),ZS=ma("inline"),tx=ma("hidden_input"),BC=ma("submit_patch"),p1=ma("add_form_submit_trigger"),ty=ma("add_unload_trigger"),ny=ma("custom_undo_redo_levels"),u_=ma("disable_nodechange"),oO=ma("readonly"),$p=ma("editable_root"),oy=ma("content_css_cors"),sO=ma("plugins"),qb=ma("external_plugins"),d_=ma("block_unsupported_drop"),nx=ma("visual"),ox=ma("visual_table_class"),FC=ma("visual_anchor_class"),sx=ma("iframe_aria_text"),qS=ma("setup"),rx=ma("init_instance_callback"),ix=ma("urlconverter_callback"),HC=ma("auto_focus"),ax=ma("browser_spellcheck"),QC=ma("protect"),lx=ma("paste_block_drop"),f_=ma("paste_data_images"),cx=ma("paste_preprocess"),VC=ma("paste_postprocess"),sy=ma("newdocument_content"),jS=ma("paste_webkit_styles"),XS=ma("paste_remove_styles_if_webkit"),YS=ma("paste_merge_formats"),h_=ma("smart_paste"),m_=ma("paste_as_text"),zC=ma("paste_tab_spaces"),p_=ma("allow_html_data_urls"),g_=ma("text_patterns"),ux=ma("text_patterns_lookup"),rO=ma("noneditable_class"),WC=ma("editable_class"),dx=ma("noneditable_regexp"),GS=ma("preserve_cdata"),lp=ma("highlight_on_focus"),jb=ma("xss_sanitization"),fx=ma("init_content_sync"),KS=Mn=>Mn.options.isSet("text_patterns_lookup"),hx=Mn=>Lr.explode(Mn.options.get("font_size_style_values")),mx=Mn=>Lr.explode(Mn.options.get("font_size_classes")),JS=Mn=>Mn.options.get("encoding")==="xml",UC=Mn=>Lr.explode(Mn.options.get("images_file_types")),ew=ma("table_tab_navigation"),Zf=ma("details_initial_state"),DT=ma("details_serialized_state"),ry=ma("force_hex_color"),b_=ma("sandbox_iframes"),tw=Oa,nw=Ir,ZC=Mn=>{const Vn=Mn.parentNode;Vn&&Vn.removeChild(Mn)},qC=Mn=>{const Vn=Xo(Mn);return{count:Mn.length-Vn.length,text:Vn}},cb=Mn=>{let Vn;for(;(Vn=Mn.data.lastIndexOf(_o))!==-1;)Mn.deleteData(Vn,1)},W0=(Mn,Vn)=>(_f(Mn),Vn),px=(Mn,Vn)=>{const Wn=qC(Mn.data.substr(0,Vn.offset())),jn=qC(Mn.data.substr(Vn.offset()));return(Wn.text+jn.text).length>0?(cb(Mn),lr(Mn,Vn.offset()-Wn.count)):Vn},gx=(Mn,Vn)=>{const Wn=Vn.container(),jn=Il(kc(Wn.childNodes),Mn).map(Gn=>Gnnw(Mn)&&Vn.container()===Mn?px(Mn,Vn):W0(Mn,Vn),ow=(Mn,Vn)=>Vn.container()===Mn.parentNode?gx(Mn,Vn):W0(Mn,Vn),jC=(Mn,Vn)=>lr.isTextPosition(Vn)?iO(Mn,Vn):ow(Mn,Vn),_f=Mn=>{tw(Mn)&&La(Mn)&&(Ol(Mn)?Mn.removeAttribute("data-mce-caret"):ZC(Mn)),nw(Mn)&&(cb(Mn),Mn.data.length===0&&ZC(Mn))},XC=jl,sw=pu,MT=L1,iy="*[contentEditable=false],video,audio,embed,object",bx=(Mn,Vn,Wn)=>{const jn=ob(Vn.getBoundingClientRect(),Wn);let Gn,no;if(Mn.tagName==="BODY"){const po=Mn.ownerDocument.documentElement;Gn=Mn.scrollLeft||po.scrollLeft,no=Mn.scrollTop||po.scrollTop}else{const po=Mn.getBoundingClientRect();Gn=Mn.scrollLeft-po.left,no=Mn.scrollTop-po.top}jn.left+=Gn,jn.right+=Gn,jn.top+=no,jn.bottom+=no,jn.width=1;let ao=Vn.offsetWidth-Vn.clientWidth;return ao>0&&(Wn&&(ao*=-1),jn.left+=ao,jn.right+=ao),jn},YC=Mn=>{var Vn,Wn;const jn=mf(Cs.fromDom(Mn),iy);for(let Gn=0;Gn{const Gn=Fb();let no,ao;const po=bh(Mn),vo=Mn.dom,Ao=(as,ys)=>{let Ls;if(Fo(),MT(ys))return null;if(Wn(ys)){const zs=Uh(po,ys,as),Hs=bx(Vn,ys,as);vo.setStyle(zs,"top",Hs.top),ao=zs;const tr=vo.create("div",{class:"mce-visual-caret","data-mce-bogus":"all"});vo.setStyles(tr,{...Hs}),vo.add(Vn,tr),Gn.set({caret:tr,element:ys,before:as}),as&&vo.addClass(tr,"mce-visual-caret-before"),Qo(),Ls=ys.ownerDocument.createRange(),Ls.setStart(zs,0),Ls.setEnd(zs,0)}else return ao=Xu(ys,as),Ls=ys.ownerDocument.createRange(),v_(ao.nextSibling)?(Ls.setStart(ao,0),Ls.setEnd(ao,0)):(Ls.setStart(ao,1),Ls.setEnd(ao,1)),Ls;return Ls},Fo=()=>{YC(Vn),ao&&(_f(ao),ao=null),Gn.on(as=>{vo.remove(as.caret),Gn.clear()}),no&&(clearInterval(no),no=void 0)},Qo=()=>{no=setInterval(()=>{Gn.on(as=>{jn()?vo.toggleClass(as.caret,"mce-visual-caret-hidden"):vo.addClass(as.caret,"mce-visual-caret-hidden")})},500)};return{show:Ao,hide:Fo,getCss:()=>".mce-visual-caret {position: absolute;background-color: black;background-color: currentcolor;}.mce-visual-caret-hidden {display: none;}*[data-mce-caret] {position: absolute;left: -1000px;right: auto;top: 0;margin: 0;padding: 0;}",reposition:()=>{Gn.on(as=>{const ys=bx(Vn,as.element,as.before);vo.setStyles(as.caret,{...ys})})},destroy:()=>clearInterval(no)}},aO=()=>aa.browser.isFirefox(),v_=Mn=>XC(Mn)||sw(Mn),ay=Mn=>(v_(Mn)||Gp(Mn)&&aO())&&Uc(Cs.fromDom(Mn)).exists(yl),vx=Gf,Xb=jl,GC=pu,Yb=Pg("display","block table table-cell table-caption list-item"),Gb=La,so=zr,co=Oa,So=Ir,Ho=Xl,ts=Mn=>Mn>0,Os=Mn=>Mn<0,Is=(Mn,Vn)=>{let Wn;for(;Wn=Mn(Vn);)if(!so(Wn))return Wn;return null},qs=(Mn,Vn,Wn,jn,Gn)=>{const no=new mu(Mn,jn),ao=Xb(Mn)||so(Mn);let po;if(Os(Vn)){if(ao&&(po=Is(no.prev.bind(no),!0),Wn(po)))return po;for(;po=Is(no.prev.bind(no),Gn);)if(Wn(po))return po}if(ts(Vn)){if(ao&&(po=Is(no.next.bind(no),!0),Wn(po)))return po;for(;po=Is(no.next.bind(no),Gn);)if(Wn(po))return po}return null},mr=(Mn,Vn)=>{const Wn=Gn=>vx(Gn.dom),jn=Gn=>Gn.dom===Vn;return au(Cs.fromDom(Mn),Wn,jn).map(Gn=>Gn.dom).getOr(Vn)},Xr=(Mn,Vn)=>{for(;Mn&&Mn!==Vn;){if(Yb(Mn))return Mn;Mn=Mn.parentNode}return null},jr=(Mn,Vn,Wn)=>Xr(Mn.container(),Wn)===Xr(Vn.container(),Wn),ua=(Mn,Vn)=>{if(!Vn)return zo.none();const Wn=Vn.container(),jn=Vn.offset();return co(Wn)?zo.from(Wn.childNodes[jn+Mn]):zo.none()},ja=(Mn,Vn)=>{var Wn;const Gn=((Wn=Vn.ownerDocument)!==null&&Wn!==void 0?Wn:document).createRange();return Mn?(Gn.setStartBefore(Vn),Gn.setEndBefore(Vn)):(Gn.setStartAfter(Vn),Gn.setEndAfter(Vn)),Gn},wl=(Mn,Vn,Wn)=>Xr(Vn,Mn)===Xr(Wn,Mn),Kl=(Mn,Vn,Wn)=>{const jn=Mn?"previousSibling":"nextSibling";let Gn=Wn;for(;Gn&&Gn!==Vn;){let no=Gn[jn];if(no&&Gb(no)&&(no=no[jn]),Xb(no)||GC(no)){if(wl(Vn,no,Gn))return no;break}if(Ho(no))break;Gn=Gn.parentNode}return null},Pc=ws(ja,!0),Ul=ws(ja,!1),nu=(Mn,Vn,Wn)=>{let jn;const Gn=ws(Kl,!0,Vn),no=ws(Kl,!1,Vn),ao=Wn.startContainer,po=Wn.startOffset;if(zr(ao)){const vo=So(ao)?ao.parentNode:ao,Ao=vo.getAttribute("data-mce-caret");if(Ao==="before"&&(jn=vo.nextSibling,ay(jn)))return Pc(jn);if(Ao==="after"&&(jn=vo.previousSibling,ay(jn)))return Ul(jn)}if(!Wn.collapsed)return Wn;if(Ir(ao)){if(Gb(ao)){if(Mn===1){if(jn=no(ao),jn)return Pc(jn);if(jn=Gn(ao),jn)return Ul(jn)}if(Mn===-1){if(jn=Gn(ao),jn)return Ul(jn);if(jn=no(ao),jn)return Pc(jn)}return Wn}if(hm(ao)&&po>=ao.data.length-1)return Mn===1&&(jn=no(ao),jn)?Pc(jn):Wn;if(Jf(ao)&&po<=1)return Mn===-1&&(jn=Gn(ao),jn)?Ul(jn):Wn;if(po===ao.data.length)return jn=no(ao),jn?Pc(jn):Wn;if(po===0)return jn=Gn(ao),jn?Ul(jn):Wn}return Wn},vu=(Mn,Vn)=>ua(Mn?0:-1,Vn).filter(Xb),nh=(Mn,Vn,Wn)=>{const jn=nu(Mn,Vn,Wn);return Mn===-1?lr.fromRangeStart(jn):lr.fromRangeEnd(jn)},Mh=Mn=>zo.from(Mn.getNode()).map(Cs.fromDom),Rp=Mn=>zo.from(Mn.getNode(!0)).map(Cs.fromDom),Mf=(Mn,Vn)=>{let Wn=Vn;for(;Wn=Mn(Wn);)if(Wn.isVisible())return Wn;return Wn},Dp=(Mn,Vn)=>{const Wn=jr(Mn,Vn);return!Wn&&Ec(Mn.getNode())?!0:Wn};var Tu;(function(Mn){Mn[Mn.Backwards=-1]="Backwards",Mn[Mn.Forwards=1]="Forwards"})(Tu||(Tu={}));const yx=jl,U0=Ir,NT=Oa,KC=Ec,ly=Xl,jh=Wu,y_=pm,iw=(Mn,Vn)=>{const Wn=[];let jn=Mn;for(;jn&&jn!==Vn;)Wn.push(jn),jn=jn.parentNode;return Wn},O_=(Mn,Vn)=>Mn.hasChildNodes()&&Vn{if(ts(Mn)){if(ly(Vn.previousSibling)&&!U0(Vn.previousSibling))return lr.before(Vn);if(U0(Vn))return lr(Vn,0)}if(Os(Mn)){if(ly(Vn.nextSibling)&&!U0(Vn.nextSibling))return lr.after(Vn);if(U0(Vn))return lr(Vn,Vn.data.length)}return Os(Mn)?KC(Vn)?lr.before(Vn):lr.after(Vn):lr.before(Vn)},__=(Mn,Vn)=>{const Wn=Vn.nextSibling;return Wn&&ly(Wn)?U0(Wn)?lr(Wn,0):lr.before(Wn):lO(Tu.Forwards,lr.after(Vn),Mn)},lO=(Mn,Vn,Wn)=>{let jn,Gn,no,ao;if(!NT(Wn)||!Vn)return null;if(Vn.isEqual(lr.after(Wn))&&Wn.lastChild){if(ao=lr.after(Wn.lastChild),Os(Mn)&&ly(Wn.lastChild)&&NT(Wn.lastChild))return KC(Wn.lastChild)?lr.before(Wn.lastChild):ao}else ao=Vn;const po=ao.container();let vo=ao.offset();if(U0(po)){if(Os(Mn)&&vo>0)return lr(po,--vo);if(ts(Mn)&&vo0&&(Gn=O_(po,vo-1),ly(Gn)))return!jh(Gn)&&(no=qs(Gn,Mn,y_,Gn),no)?U0(no)?lr(no,no.data.length):lr.after(no):U0(Gn)?lr(Gn,Gn.data.length):lr.before(Gn);if(ts(Mn)&&vo({next:Vn=>lO(Tu.Forwards,Vn,Mn),prev:Vn=>lO(Tu.Backwards,Vn,Mn)}),h3=(Mn,Vn,Wn)=>{const jn=Mn?lr.before(Wn):lr.after(Wn);return vh(Mn,Vn,jn)},m3=Mn=>Ec(Mn)?lr.before(Mn):lr.after(Mn),cy=Mn=>lr.isTextPosition(Mn)?Mn.offset()===0:Xl(Mn.getNode()),S_=Mn=>{if(lr.isTextPosition(Mn)){const Vn=Mn.container();return Mn.offset()===Vn.data.length}else return Xl(Mn.getNode(!0))},JC=(Mn,Vn)=>!lr.isTextPosition(Mn)&&!lr.isTextPosition(Vn)&&Mn.getNode()===Vn.getNode(!0),Kb=Mn=>!lr.isTextPosition(Mn)&&Ec(Mn.getNode()),_x=(Mn,Vn,Wn)=>Mn?!JC(Vn,Wn)&&!Kb(Vn)&&S_(Vn)&&cy(Wn):!JC(Wn,Vn)&&cy(Vn)&&S_(Wn),vh=(Mn,Vn,Wn)=>{const jn=ub(Vn);return zo.from(Mn?jn.next(Wn):jn.prev(Wn))},Z0=(Mn,Vn,Wn)=>vh(Mn,Vn,Wn).bind(jn=>jr(Wn,jn,Vn)&&_x(Mn,Wn,jn)?vh(Mn,Vn,jn):zo.some(jn)),g1=(Mn,Vn,Wn,jn)=>Z0(Mn,Vn,Wn).bind(Gn=>jn(Gn)?g1(Mn,Vn,Gn,jn):zo.some(Gn)),w_=(Mn,Vn)=>{const Wn=Mn?Vn.firstChild:Vn.lastChild;return Ir(Wn)?zo.some(lr(Wn,Mn?0:Wn.data.length)):Wn?Xl(Wn)?zo.some(Mn?lr.before(Wn):m3(Wn)):h3(Mn,Vn,Wn):zo.none()},Sm=ws(vh,!0),cp=ws(vh,!1),zm=ws(w_,!0),b1=ws(w_,!1),ek="_mce_caret",fg=Mn=>Oa(Mn)&&Mn.id===ek,cO=(Mn,Vn)=>{let Wn=Vn;for(;Wn&&Wn!==Mn;){if(fg(Wn))return Wn;Wn=Wn.parentNode}return null},Sx=Mn=>xo(Mn.start),p3=Mn=>Mr(Mn,"rng"),LT=Mn=>Mr(Mn,"id"),aw=Mn=>Mr(Mn,"name"),IT=Mn=>Lr.isArray(Mn.start),lw=Mn=>!aw(Mn)&&es(Mn.forward)?Mn.forward:!0,tk=(Mn,Vn)=>(Oa(Vn)&&Mn.isBlock(Vn)&&!Vn.innerHTML&&(Vn.innerHTML='
'),Vn),g3=(Mn,Vn)=>{const Wn=zo.from(bf(Mn.getRoot(),Vn.start)),jn=zo.from(bf(Mn.getRoot(),Vn.end));return jc(Wn,jn,(Gn,no)=>{const ao=Mn.createRng();return ao.setStart(Gn.container(),Gn.offset()),ao.setEnd(no.container(),no.offset()),{range:ao,forward:lw(Vn)}})},BT=(Mn,Vn)=>{var Wn;const Gn=((Wn=Mn.ownerDocument)!==null&&Wn!==void 0?Wn:document).createTextNode(_o);Mn.appendChild(Gn),Vn.setStart(Gn,0),Vn.setEnd(Gn,0)},b3=Mn=>!Mn.hasChildNodes(),$N=(Mn,Vn)=>b1(Mn).fold(hs,Wn=>(Vn.setStart(Wn.container(),Wn.offset()),Vn.setEnd(Wn.container(),Wn.offset()),!0)),FT=(Mn,Vn,Wn)=>b3(Vn)&&cO(Mn,Vn)?(BT(Vn,Wn),!0):!1,uc=(Mn,Vn,Wn,jn)=>{const Gn=Wn[Vn?"start":"end"],no=Mn.getRoot();if(Gn){let ao=no,po=Gn[0];for(let vo=Gn.length-1;ao&&vo>=1;vo--){const Ao=ao.childNodes;if(FT(no,ao,jn))return!0;if(Gn[vo]>Ao.length-1)return FT(no,ao,jn)?!0:$N(ao,jn);ao=Ao[Gn[vo]]}Ir(ao)&&(po=Math.min(Gn[0],ao.data.length)),Oa(ao)&&(po=Math.min(Gn[0],ao.childNodes.length)),Vn?jn.setStart(ao,po):jn.setEnd(ao,po)}return!0},db=Mn=>Ir(Mn)&&Mn.data.length>0,uO=(Mn,Vn,Wn)=>{const jn=Mn.get(Wn.id+"_"+Vn),Gn=jn==null?void 0:jn.parentNode,no=Wn.keep;if(jn&&Gn){let ao,po;if(Vn==="start"?no?jn.hasChildNodes()?(ao=jn.firstChild,po=1):db(jn.nextSibling)?(ao=jn.nextSibling,po=0):db(jn.previousSibling)?(ao=jn.previousSibling,po=jn.previousSibling.data.length):(ao=Gn,po=Mn.nodeIndex(jn)+1):(ao=Gn,po=Mn.nodeIndex(jn)):no?jn.hasChildNodes()?(ao=jn.firstChild,po=1):db(jn.previousSibling)?(ao=jn.previousSibling,po=jn.previousSibling.data.length):(ao=Gn,po=Mn.nodeIndex(jn)):(ao=Gn,po=Mn.nodeIndex(jn)),!no){const vo=jn.previousSibling,Ao=jn.nextSibling;Lr.each(Lr.grep(jn.childNodes),Qo=>{Ir(Qo)&&(Qo.data=Qo.data.replace(/\uFEFF/g,""))});let Fo;for(;Fo=Mn.get(Wn.id+"_"+Vn);)Mn.remove(Fo,!0);if(Ir(Ao)&&Ir(vo)&&!aa.browser.isOpera()){const Qo=vo.data.length;vo.appendData(Ao.data),Mn.remove(Ao),ao=vo,po=Qo}}return zo.some(lr(ao,po))}else return zo.none()},wx=(Mn,Vn)=>{const Wn=Mn.createRng();return uc(Mn,!0,Vn,Wn)&&uc(Mn,!1,Vn,Wn)?zo.some({range:Wn,forward:lw(Vn)}):zo.none()},HT=(Mn,Vn)=>{const Wn=uO(Mn,"start",Vn),jn=uO(Mn,"end",Vn);return jc(Wn,jn.or(Wn),(Gn,no)=>{const ao=Mn.createRng();return ao.setStart(tk(Mn,Gn.container()),Gn.offset()),ao.setEnd(tk(Mn,no.container()),no.offset()),{range:ao,forward:lw(Vn)}})},cw=(Mn,Vn)=>zo.from(Mn.select(Vn.name)[Vn.index]).map(Wn=>{const jn=Mn.createRng();return jn.selectNode(Wn),{range:jn,forward:!0}}),v3=(Mn,Vn)=>{const Wn=Mn.dom;if(Vn){if(IT(Vn))return wx(Wn,Vn);if(Sx(Vn))return g3(Wn,Vn);if(LT(Vn))return HT(Wn,Vn);if(aw(Vn))return cw(Wn,Vn);if(p3(Vn))return zo.some({range:Vn.rng,forward:lw(Vn)})}return zo.none()},C_=(Mn,Vn,Wn)=>EC(Mn,Vn,Wn),nk=(Mn,Vn)=>{v3(Mn,Vn).each(({range:Wn,forward:jn})=>{Mn.setRng(Wn,jn)})},hg=Mn=>Oa(Mn)&&Mn.tagName==="SPAN"&&Mn.getAttribute("data-mce-type")==="bookmark",ok=(Mn=>Vn=>Mn===Vn)(hc),k_=Mn=>Mn!==""&&` \f +\r \v`.indexOf(Mn)!==-1,uy=Mn=>!k_(Mn)&&!ok(Mn)&&!hd(Mn),sk=Mn=>{const Vn=[];if(Mn)for(let Wn=0;Wncc(Mn,Vn=>{const Wn=jv(Vn);return Wn?[Cs.fromDom(Wn)]:[]}),dO=Mn=>sk(Mn).length>1,y3=Mn=>nr(rk(Mn),Eh),QT=Mn=>mf(Mn,"td[data-mce-selected],th[data-mce-selected]"),O3=(Mn,Vn)=>{const Wn=QT(Vn);return Wn.length>0?Wn:y3(Mn)},x_=Mn=>O3(sk(Mn.selection.getSel()),Cs.fromDom(Mn.getBody())),q0=(Mn,Vn)=>lm(Mn,"table",Vn),_3=Mn=>{const Vn=Mn.startContainer,Wn=Mn.startOffset;return Ir(Vn)?Wn===0?zo.some(Cs.fromDom(Vn)):zo.none():zo.from(Vn.childNodes[Wn]).map(Cs.fromDom)},S3=Mn=>{const Vn=Mn.endContainer,Wn=Mn.endOffset;return Ir(Vn)?Wn===Vn.data.length?zo.some(Cs.fromDom(Vn)):zo.none():zo.from(Vn.childNodes[Wn-1]).map(Cs.fromDom)},VT=Mn=>iu(Mn).fold(xs([Mn]),Vn=>[Mn].concat(VT(Vn))),Cx=Mn=>am(Mn).fold(xs([Mn]),Vn=>ql(Vn)==="br"?_d(Vn).map(Wn=>[Mn].concat(Cx(Wn))).getOr([]):[Mn].concat(Cx(Vn))),kx=(Mn,Vn)=>jc(_3(Vn),S3(Vn),(Wn,jn)=>{const Gn=xa(VT(Mn),ws(Vs,Wn)),no=xa(Cx(Mn),ws(Vs,jn));return Gn.isSome()&&no.isSome()}).getOr(!1),xx=(Mn,Vn,Wn,jn)=>{const Gn=Wn,no=new mu(Wn,Gn),ao=pr(Mn.schema.getMoveCaretBeforeOnEnterElements(),(vo,Ao)=>!Zs(["td","th","table"],Ao.toLowerCase()));let po=Wn;do{if(Ir(po)&&Lr.trim(po.data).length!==0){jn?Vn.setStart(po,0):Vn.setEnd(po,po.data.length);return}if(ao[po.nodeName]){jn?Vn.setStartBefore(po):po.nodeName==="BR"?Vn.setEndBefore(po):Vn.setEndAfter(po);return}}while(po=jn?no.next():no.prev());Gn.nodeName==="BODY"&&(jn?Vn.setStart(Gn,0):Vn.setEnd(Gn,Gn.childNodes.length))},ik=Mn=>{const Vn=Mn.selection.getSel();return rs(Vn)&&Vn.rangeCount>0},dy=(Mn,Vn)=>{const Wn=x_(Mn);Wn.length>0?fs(Wn,jn=>{const Gn=jn.dom,no=Mn.dom.createRng();no.setStartBefore(Gn),no.setEndAfter(Gn),Vn(no,!0)}):Vn(Mn.selection.getRng(),!1)},zT=(Mn,Vn,Wn)=>{const jn=f1(Mn,Vn);Wn(jn),Mn.moveToBookmark(jn)},uw=Mn=>Ys(Mn==null?void 0:Mn.nodeType),Ex=Mn=>Oa(Mn)&&!hg(Mn)&&!fg(Mn)&&!Jm(Mn),w3=(Mn,Vn)=>{if(Ex(Vn)&&!/^(TD|TH)$/.test(Vn.nodeName)){const Wn=Mn.getAttrib(Vn,"data-mce-selected"),jn=parseInt(Wn,10);return!isNaN(jn)&&jn>0}else return!1},dw=(Mn,Vn,Wn)=>{const{selection:jn,dom:Gn}=Mn,no=jn.getNode(),ao=jl(no);zT(jn,!0,()=>{Vn()}),ao&&jl(no)&&Gn.isChildOf(no,Mn.getBody())?Mn.selection.select(no):Wn(jn.getStart())&&C3(Gn,jn)},C3=(Mn,Vn)=>{var Wn,jn;const Gn=Vn.getRng(),{startContainer:no,startOffset:ao}=Gn,po=Vn.getNode();if(!w3(Mn,po)&&Oa(no)){const vo=no.childNodes,Ao=Mn.getRoot();let Fo;if(ao{if(Mn){const jn=Vn?"nextSibling":"previousSibling";for(Mn=Mn[jn];Mn;Mn=Mn[jn])if(Oa(Mn)||!sf(Mn))return Mn}},Nf=(Mn,Vn)=>!!Mn.getTextBlockElements()[Vn.nodeName.toLowerCase()]||Wl(Mn,Vn),j0=(Mn,Vn,Wn)=>Mn.schema.isValidChild(Vn,Wn),sf=(Mn,Vn=!1)=>{if(rs(Mn)&&Ir(Mn)){const Wn=Vn?Mn.data.replace(/ /g," "):Mn.data;return Q1(Wn)}else return!1},Wg=Mn=>rs(Mn)&&Ir(Mn)&&Mn.length===0,ak=(Mn,Vn)=>{const Wn="[data-mce-cef-wrappable]",jn=zg(Mn),Gn=Td(jn)?Wn:`${Wn},${jn}`;return zh(Cs.fromDom(Vn),Gn)},fw=(Mn,Vn)=>{const Wn=Mn.dom;return Ex(Vn)&&Wn.getContentEditable(Vn)==="false"&&ak(Mn,Vn)&&Wn.select('[contenteditable="true"]',Vn).length===0},fb=(Mn,Vn)=>Yo(Mn)?Mn(Vn):(rs(Vn)&&(Mn=Mn.replace(/%(\w+)/g,(Wn,jn)=>Vn[jn]||Wn)),Mn),lk=(Mn,Vn)=>(Mn=Mn||"",Vn=Vn||"",Mn=""+(Mn.nodeName||Mn),Vn=""+(Vn.nodeName||Vn),Mn.toLowerCase()===Vn.toLowerCase()),ck=(Mn,Vn)=>{if(ps(Mn))return null;{let Wn=String(Mn);return(Vn==="color"||Vn==="backgroundColor")&&(Wn=Bm(Wn)),Vn==="fontWeight"&&Mn===700&&(Wn="bold"),Vn==="fontFamily"&&(Wn=Wn.replace(/[\'\"]/g,"").replace(/,\s+/g,",")),Wn}},E_=(Mn,Vn,Wn)=>{const jn=Mn.getStyle(Vn,Wn);return ck(jn,Wn)},WT=(Mn,Vn)=>{let Wn;return Mn.getParent(Vn,jn=>Oa(jn)?(Wn=Mn.getStyle(jn,"text-decoration"),!!Wn&&Wn!=="none"):!1),Wn},hw=(Mn,Vn,Wn)=>Mn.getParents(Vn,Wn,Mn.getRoot()),Tx=(Mn,Vn,Wn)=>{const jn=Mn.formatter.get(Vn);return rs(jn)&&Sr(jn,Wn)},Ax=(Mn,Vn)=>Tx(Mn,Vn,jn=>{const Gn=no=>Yo(no)||no.length>1&&no.charAt(0)==="%";return Sr(["styles","attributes"],no=>Ma(jn,no).exists(ao=>{const po=Ko(ao)?ao:ka(ao);return Sr(po,Gn)}))}),k3=(Mn,Vn,Wn)=>{const jn=["inline","block","selector","attributes","styles","classes"],Gn=no=>pr(no,(ao,po)=>Sr(jn,vo=>vo===po));return Tx(Mn,Vn,no=>{const ao=Gn(no);return Tx(Mn,Wn,po=>{const vo=Gn(po);return Na(ao,vo)})})},hb=Mn=>il(Mn,"block"),uk=Mn=>hb(Mn)&&Mn.wrapper===!0,T_=Mn=>hb(Mn)&&Mn.wrapper!==!0,Nh=Mn=>il(Mn,"selector"),Sf=Mn=>il(Mn,"inline"),dk=Mn=>Nh(Mn)&&Sf(Mn)&&qc(Ma(Mn,"mixed"),!0),mw=Mn=>Nh(Mn)&&Mn.expand!==!1&&!Sf(Mn),fk=Mn=>{const Vn=[];let Wn=Mn;for(;Wn;){if(Ir(Wn)&&Wn.data!==_o||Wn.childNodes.length>1)return[];Oa(Wn)&&Vn.push(Wn),Wn=Wn.firstChild}return Vn},pw=Mn=>fk(Mn).length>0,gw=Mn=>fg(Mn.dom)&&pw(Mn.dom),A_=hg,UT=hw,bw=sf,ZT=Nf,qT=Mn=>Ec(Mn)&&Mn.getAttribute("data-mce-bogus")&&!Mn.nextSibling,jT=(Mn,Vn)=>{let Wn=Vn;for(;Wn;){if(Oa(Wn)&&Mn.getContentEditable(Wn))return Mn.getContentEditable(Wn)==="false"?Wn:Vn;Wn=Wn.parentNode}return Vn},Ug=(Mn,Vn,Wn,jn)=>{const Gn=Vn.data;if(Mn){for(let no=Wn;no>0;no--)if(jn(Gn.charAt(no-1)))return no}else for(let no=Wn;noUg(Mn,Vn,Wn,jn=>ok(jn)||k_(jn)),v1=(Mn,Vn,Wn)=>Ug(Mn,Vn,Wn,uy),up=(Mn,Vn,Wn,jn,Gn,no)=>{let ao;const po=Mn.getParent(Wn,Mn.isBlock)||Vn,vo=(Fo,Qo,qo)=>{const ds=Qb(Mn),bs=Gn?ds.backwards:ds.forwards;return zo.from(bs(Fo,Qo,(as,ys)=>A_(as.parentNode)?-1:(ao=as,qo(Gn,as,ys)),po))};return vo(Wn,jn,Xh).bind(Fo=>no?vo(Fo.container,Fo.offset+(Gn?-1:0),v1):zo.some(Fo)).orThunk(()=>ao?zo.some({container:ao,offset:Gn?0:ao.length}):zo.none())},vw=(Mn,Vn,Wn,jn,Gn)=>{const no=jn[Gn];Ir(jn)&&Td(jn.data)&&no&&(jn=no);const ao=UT(Mn,jn);for(let po=0;po{var Gn;let no=Wn;const ao=Mn.getRoot(),po=Vn[0];if(hb(po)&&(no=po.wrapper?null:Mn.getParent(Wn,po.block,ao)),!no){const vo=(Gn=Mn.getParent(Wn,"LI,TD,TH,SUMMARY"))!==null&&Gn!==void 0?Gn:ao;no=Mn.getParent(Ir(Wn)?Wn.parentNode:Wn,Ao=>Ao!==ao&&ZT(Mn.schema,Ao),vo)}if(no&&hb(po)&&po.wrapper&&(no=UT(Mn,no,"ul,ol").reverse()[0]||no),!no)for(no=Wn;no&&no[jn]&&!Mn.isBlock(no[jn])&&(no=no[jn],!lk(no,"br")););return no||Wn},XT=(Mn,Vn,Wn,jn)=>{const Gn=Wn.parentNode;return rs(Wn[jn])?!1:Gn===Vn||ps(Gn)||Mn.isBlock(Gn)?!0:XT(Mn,Vn,Gn,jn)},yw=(Mn,Vn,Wn,jn,Gn)=>{let no=Wn;const ao=Gn?"previousSibling":"nextSibling",po=Mn.getRoot();if(Ir(Wn)&&!bw(Wn)&&(Gn?jn>0:jnA_(Mn.parentNode)||A_(Mn),X0=(Mn,Vn,Wn,jn=!1)=>{let{startContainer:Gn,startOffset:no,endContainer:ao,endOffset:po}=Vn;const vo=Wn[0];return Oa(Gn)&&Gn.hasChildNodes()&&(Gn=Qm(Gn,no),Ir(Gn)&&(no=0)),Oa(ao)&&ao.hasChildNodes()&&(ao=Qm(ao,Vn.collapsed?po:po-1),Ir(ao)&&(po=ao.data.length)),Gn=jT(Mn,Gn),ao=jT(Mn,ao),x3(Gn)&&(Gn=A_(Gn)?Gn:Gn.parentNode,Vn.collapsed?Gn=Gn.previousSibling||Gn:Gn=Gn.nextSibling||Gn,Ir(Gn)&&(no=Vn.collapsed?Gn.length:0)),x3(ao)&&(ao=A_(ao)?ao:ao.parentNode,Vn.collapsed?ao=ao.nextSibling||ao:ao=ao.previousSibling||ao,Ir(ao)&&(po=Vn.collapsed?0:ao.length)),Vn.collapsed&&(up(Mn,Mn.getRoot(),Gn,no,!0,jn).each(({container:Qo,offset:qo})=>{Gn=Qo,no=qo}),up(Mn,Mn.getRoot(),ao,po,!1,jn).each(({container:Qo,offset:qo})=>{ao=Qo,po=qo})),(Sf(vo)||vo.block_expand)&&((!Sf(vo)||!Ir(Gn)||no===0)&&(Gn=yw(Mn,Wn,Gn,no,!0)),(!Sf(vo)||!Ir(ao)||po===ao.data.length)&&(ao=yw(Mn,Wn,ao,po,!1))),mw(vo)&&(Gn=vw(Mn,Wn,Vn,Gn,"previousSibling"),ao=vw(Mn,Wn,Vn,ao,"nextSibling")),(hb(vo)||Nh(vo))&&(Gn=hk(Mn,Wn,Gn,"previousSibling"),ao=hk(Mn,Wn,ao,"nextSibling"),hb(vo)&&(Mn.isBlock(Gn)||(Gn=yw(Mn,Wn,Gn,no,!0)),Mn.isBlock(ao)||(ao=yw(Mn,Wn,ao,po,!1)))),Oa(Gn)&&Gn.parentNode&&(no=Mn.nodeIndex(Gn),Gn=Gn.parentNode),Oa(ao)&&ao.parentNode&&(po=Mn.nodeIndex(ao)+1,ao=ao.parentNode),{startContainer:Gn,startOffset:no,endContainer:ao,endOffset:po}},Ow=(Mn,Vn,Wn)=>{var jn;const Gn=Vn.startOffset,no=Qm(Vn.startContainer,Gn),ao=Vn.endOffset,po=Qm(Vn.endContainer,ao-1),vo=ys=>{const Ls=ys[0];Ir(Ls)&&Ls===no&&Gn>=Ls.data.length&&ys.splice(0,1);const zs=ys[ys.length-1];return ao===0&&ys.length>0&&zs===po&&Ir(zs)&&ys.splice(ys.length-1,1),ys},Ao=(ys,Ls,zs)=>{const Hs=[];for(;ys&&ys!==zs;ys=ys[Ls])Hs.push(ys);return Hs},Fo=(ys,Ls)=>Mn.getParent(ys,zs=>zs.parentNode===Ls,Ls),Qo=(ys,Ls,zs)=>{const Hs=zs?"nextSibling":"previousSibling";for(let tr=ys,Pr=tr.parentNode;tr&&tr!==Ls;tr=Pr){Pr=tr.parentNode;const Ur=Ao(tr===ys?tr:tr[Hs],Hs);Ur.length&&(zs||Ur.reverse(),Wn(vo(Ur)))}};if(no===po)return Wn(vo([no]));const qo=(jn=Mn.findCommonAncestor(no,po))!==null&&jn!==void 0?jn:Mn.getRoot();if(Mn.isChildOf(no,po))return Qo(no,qo,!0);if(Mn.isChildOf(po,no))return Qo(po,qo);const ds=Fo(no,qo)||no,bs=Fo(po,qo)||po;Qo(no,ds,!0);const as=Ao(ds===no?ds:ds.nextSibling,"nextSibling",bs===po?bs.nextSibling:bs);as.length&&Wn(vo(as)),Qo(po,bs)},Px=['pre[class*=language-][contenteditable="false"]',"figure.image","div[data-ephox-embed-iri]","div.tiny-pageembed","div.mce-toc","div[data-mce-toc]"],YT=Mn=>qd(Mn)&&fm(Mn)===_o,GT=(Mn,Vn,Wn,jn)=>Wc(Vn).fold(()=>"skipping",Gn=>jn==="br"||YT(Vn)?"valid":yC(Vn)?"existing":fg(Vn.dom)?"caret":Sr(Px,no=>zh(Vn,no))?"valid-block":!j0(Mn,Wn,jn)||!j0(Mn,ql(Gn),Wn)?"invalid-child":"valid"),$x=(Mn,Vn)=>{const Wn=X0(Mn.dom,Vn,[{inline:"span"}]);Vn.setStart(Wn.startContainer,Wn.startOffset),Vn.setEnd(Wn.endContainer,Wn.endOffset),Mn.selection.setRng(Vn)},mk=(Mn,Vn,Wn,jn,Gn,no)=>{const{uid:ao=Vn,...po}=Wn;Xm(Mn,XO()),Gc(Mn,`${Uv()}`,ao),Gc(Mn,`${u1()}`,jn);const{attributes:vo={},classes:Ao=[]}=Gn(ao,po);if(im(Mn,vo),L2(Mn,Ao),no){Ao.length>0&&Gc(Mn,`${D0()}`,Ao.join(","));const Fo=Al(vo);Fo.length>0&&Gc(Mn,`${M0()}`,Fo.join(","))}},Au=Mn=>{Vf(Mn,XO()),Mu(Mn,`${Uv()}`),Mu(Mn,`${u1()}`),Mu(Mn,`${Hb()}`);const Vn=Ld(Mn,`${M0()}`).map(jn=>jn.split(",")).getOr([]),Wn=Ld(Mn,`${D0()}`).map(jn=>jn.split(",")).getOr([]);fs(Vn,jn=>Mu(Mn,jn)),SC(Mn,Wn),Mu(Mn,`${D0()}`),Mu(Mn,`${M0()}`)},Y0=(Mn,Vn,Wn,jn,Gn)=>{const no=Cs.fromTag("span",Mn);return mk(no,Vn,Wn,jn,Gn,!1),no},KT=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=[],po=Y0(Mn.getDoc(),Wn,no,jn,Gn),vo=Fb(),Ao=()=>{vo.clear()},Fo=()=>vo.get().getOrThunk(()=>{const bs=Hm(po);return ao.push(bs),vo.set(bs),bs}),Qo=bs=>{fs(bs,qo)},qo=bs=>{switch(GT(Mn,bs,"span",ql(bs))){case"invalid-child":{Ao();const ys=Ku(bs);Qo(ys),Ao();break}case"valid-block":{Ao(),mk(bs,Wn,no,jn,Gn,!0);break}case"valid":{const ys=Fo();_0(bs,ys);break}}},ds=bs=>{const as=Us(bs,Cs.fromDom);Qo(as)};return Ow(Mn.dom,Vn,bs=>{Ao(),ds(bs)}),ao},Rx=(Mn,Vn,Wn,jn)=>{Mn.undoManager.transact(()=>{const Gn=Mn.selection,no=Gn.getRng(),ao=x_(Mn).length>0,po=L0("mce-annotation");if(no.collapsed&&!ao&&$x(Mn,no),Gn.getRng().collapsed&&!ao){const vo=Y0(Mn.getDoc(),po,jn,Vn,Wn.decorate);dm(vo,hc),Gn.getRng().insertNode(vo.dom),Gn.select(vo.dom)}else zT(Gn,!1,()=>{dy(Mn,vo=>{KT(Mn,vo,po,Vn,Wn.decorate,jn)})})})},Dx=Mn=>{const Vn=_C();Fm(Mn,Vn);const Wn=gh(Mn,Vn),jn=Qh("span"),Gn=no=>{fs(no,ao=>{jn(ao)?hf(ao):Au(ao)})};return{register:(no,ao)=>{Vn.register(no,ao)},annotate:(no,ao)=>{Vn.lookup(no).each(po=>{Rx(Mn,no,po,ao)})},annotationChanged:(no,ao)=>{Wn.addListener(no,ao)},remove:no=>{wd(Mn,zo.some(no)).each(({elements:ao})=>{const po=Mn.selection.getBookmark();Gn(ao),Mn.selection.moveToBookmark(po)})},removeAll:no=>{const ao=Mn.selection.getBookmark();Rr(YO(Mn,no),(po,vo)=>{Gn(po)}),Mn.selection.moveToBookmark(ao)},getAll:no=>{const ao=YO(Mn,no);return Pl(ao,po=>Us(po,vo=>vo.dom))}}},fO=Mn=>({getBookmark:ws(C_,Mn),moveToBookmark:ws(nk,Mn)});fO.isBookmarkNode=hg;const Mx=(Mn,Vn,Wn)=>Wn.collapsed?!1:Sr(Wn.getClientRects(),jn=>xS(jn,Mn,Vn)),Nx=(Mn,Vn)=>Mn.dispatch("PreProcess",Vn),E3=(Mn,Vn)=>Mn.dispatch("PostProcess",Vn),P_=Mn=>{Mn.dispatch("remove")},$_=Mn=>{Mn.dispatch("detach")},Lx=(Mn,Vn)=>{Mn.dispatch("SwitchMode",{mode:Vn})},Ix=(Mn,Vn,Wn,jn,Gn)=>{Mn.dispatch("ObjectResizeStart",{target:Vn,width:Wn,height:jn,origin:Gn})},y1=(Mn,Vn,Wn,jn,Gn)=>{Mn.dispatch("ObjectResized",{target:Vn,width:Wn,height:jn,origin:Gn})},fy=Mn=>{Mn.dispatch("PreInit")},T3=Mn=>{Mn.dispatch("PostRender")},_w=Mn=>{Mn.dispatch("Init")},A3=(Mn,Vn)=>{Mn.dispatch("PlaceholderToggle",{state:Vn})},Mp=(Mn,Vn,Wn)=>{Mn.dispatch(Vn,Wn)},Yh=(Mn,Vn,Wn,jn)=>{Mn.dispatch("FormatApply",{format:Vn,node:Wn,vars:jn})},hO=(Mn,Vn,Wn,jn)=>{Mn.dispatch("FormatRemove",{format:Vn,node:Wn,vars:jn})},RN=(Mn,Vn)=>Mn.dispatch("BeforeSetContent",Vn),JT=(Mn,Vn)=>Mn.dispatch("SetContent",Vn),P3=(Mn,Vn)=>Mn.dispatch("BeforeGetContent",Vn),ic=(Mn,Vn)=>Mn.dispatch("GetContent",Vn),Bx=(Mn,Vn)=>{Mn.dispatch("AutocompleterStart",Vn)},eA=(Mn,Vn)=>{Mn.dispatch("AutocompleterUpdate",Vn)},Fx=Mn=>{Mn.dispatch("AutocompleterEnd")},$3=(Mn,Vn,Wn)=>Mn.dispatch("PastePreProcess",{content:Vn,internal:Wn}),R3=(Mn,Vn,Wn)=>Mn.dispatch("PastePostProcess",{node:Vn,internal:Wn}),tA=(Mn,Vn)=>Mn.dispatch("PastePlainTextToggle",{state:Vn}),D3=(Mn,Vn)=>Mn.dispatch("EditableRootStateChange",{state:Vn}),va={BACKSPACE:8,DELETE:46,DOWN:40,ENTER:13,ESC:27,LEFT:37,RIGHT:39,SPACEBAR:32,TAB:9,UP:38,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,modifierPressed:Mn=>Mn.shiftKey||Mn.ctrlKey||Mn.altKey||va.metaKeyPressed(Mn),metaKeyPressed:Mn=>aa.os.isMacOS()||aa.os.isiOS()?Mn.metaKey:Mn.ctrlKey&&!Mn.altKey},hy="data-mce-selected",nA="table,img,figure.image,hr,video,span.mce-preview-object,details",Sw=Math.abs,ww=Math.round,M3={nw:[0,0,-1,-1],ne:[1,0,1,-1],se:[1,1,1,1],sw:[0,1,-1,1]},DN=Mn=>Mn.type==="longpress"||Mn.type.indexOf("touch")===0,MN=(Mn,Vn)=>{const Wn=Vn.dom,jn=Vn.getDoc(),Gn=document,no=Vn.getBody();let ao,po,vo,Ao,Fo,Qo,qo,ds,bs,as,ys,Ls,zs,Hs,tr,Pr,Ur;const fa=Yr=>rs(Yr)&&(td(Yr)||Wn.is(Yr,"figure.image")),yr=Yr=>pu(Yr)||Wn.hasClass(Yr,"mce-preview-object"),fr=(Yr,pl)=>{if(DN(Yr)){const pc=Yr.touches[0];return fa(Yr.target)&&!Mx(pc.clientX,pc.clientY,pl)}else return fa(Yr.target)&&!Mx(Yr.clientX,Yr.clientY,pl)},Ar=Yr=>{const pl=Yr.target;fr(Yr,Vn.selection.getRng())&&!Yr.isDefaultPrevented()&&Vn.selection.select(pl)},wa=Yr=>Wn.hasClass(Yr,"mce-preview-object")&&rs(Yr.firstElementChild)?[Yr,Yr.firstElementChild]:Wn.is(Yr,"figure.image")?[Yr.querySelector("img")]:[Yr],Va=Yr=>{const pl=Jv(Vn);return!pl||Yr.getAttribute("data-mce-resize")==="false"||Yr===Vn.getBody()?!1:Wn.hasClass(Yr,"mce-preview-object")&&rs(Yr.firstElementChild)?zh(Cs.fromDom(Yr.firstElementChild),pl):zh(Cs.fromDom(Yr),pl)},Tl=Yr=>yr(Yr)?Wn.create("img",{src:aa.transparentSrc}):Yr.cloneNode(!0),tc=(Yr,pl,pc)=>{if(rs(pc)){const Pu=wa(Yr);fs(Pu,du=>{du.style[pl]||!Vn.schema.isValid(du.nodeName.toLowerCase(),pl)?Wn.setStyle(du,pl,pc):Wn.setAttrib(du,pl,""+pc)})}},uu=(Yr,pl,pc)=>{tc(Yr,"width",pl),tc(Yr,"height",pc)},Qu=Yr=>{let pl,pc,Pu,du,Oh;pl=Yr.screenX-Qo,pc=Yr.screenY-qo,Hs=pl*Ao[2]+as,tr=pc*Ao[3]+ys,Hs=Hs<5?5:Hs,tr=tr<5?5:tr,(fa(ao)||yr(ao))&&MC(Vn)!==!1?Pu=!va.modifierPressed(Yr):Pu=va.modifierPressed(Yr),Pu&&(Sw(pl)>Sw(pc)?(tr=ww(Hs*Ls),Hs=ww(tr/Ls)):(Hs=ww(tr/Ls),tr=ww(Hs*Ls))),uu(po,Hs,tr),du=Ao.startPos.x+pl,Oh=Ao.startPos.y+pc,du=du>0?du:0,Oh=Oh>0?Oh:0,Wn.setStyles(vo,{left:du,top:Oh,display:"block"}),vo.innerHTML=Hs+" × "+tr,Ao[2]<0&&po.clientWidth<=Hs&&Wn.setStyle(po,"left",ds+(as-Hs)),Ao[3]<0&&po.clientHeight<=tr&&Wn.setStyle(po,"top",bs+(ys-tr)),pl=no.scrollWidth-Pr,pc=no.scrollHeight-Ur,pl+pc!==0&&Wn.setStyles(vo,{left:du-pl,top:Oh-pc}),zs||(Ix(Vn,ao,as,ys,"corner-"+Ao.name),zs=!0)},Wd=()=>{const Yr=zs;zs=!1,Yr&&(tc(ao,"width",Hs),tc(ao,"height",tr)),Wn.unbind(jn,"mousemove",Qu),Wn.unbind(jn,"mouseup",Wd),Gn!==jn&&(Wn.unbind(Gn,"mousemove",Qu),Wn.unbind(Gn,"mouseup",Wd)),Wn.remove(po),Wn.remove(vo),Wn.remove(Fo),Jh(ao),Yr&&(y1(Vn,ao,Hs,tr,"corner-"+Ao.name),Wn.setAttrib(ao,"style",Wn.getAttrib(ao,"style"))),Vn.nodeChanged()},Jh=Yr=>{ac();const pl=Wn.getPos(Yr,no),pc=pl.x,Pu=pl.y,du=Yr.getBoundingClientRect(),Oh=du.width||du.right-du.left,h0=du.height||du.bottom-du.top;ao!==Yr&&(ea(),ao=Yr,Hs=tr=0);const Ay=Vn.dispatch("ObjectSelected",{target:Yr});Va(Yr)&&!Ay.isDefaultPrevented()?Rr(M3,(Ip,Sb)=>{const Sl=ru=>{const Kd=wa(ao)[0];Qo=ru.screenX,qo=ru.screenY,as=Kd.clientWidth,ys=Kd.clientHeight,Ls=ys/as,Ao=Ip,Ao.name=Sb,Ao.startPos={x:Oh*Ip[0]+pc,y:h0*Ip[1]+Pu},Pr=no.scrollWidth,Ur=no.scrollHeight,Fo=Wn.add(no,"div",{class:"mce-resize-backdrop","data-mce-bogus":"all"}),Wn.setStyles(Fo,{position:"fixed",left:"0",top:"0",width:"100%",height:"100%"}),po=Tl(ao),Wn.addClass(po,"mce-clonedresizable"),Wn.setAttrib(po,"data-mce-bogus","all"),po.contentEditable="false",Wn.setStyles(po,{left:pc,top:Pu,margin:0}),uu(po,Oh,h0),po.removeAttribute(hy),no.appendChild(po),Wn.bind(jn,"mousemove",Qu),Wn.bind(jn,"mouseup",Wd),Gn!==jn&&(Wn.bind(Gn,"mousemove",Qu),Wn.bind(Gn,"mouseup",Wd)),vo=Wn.add(no,"div",{class:"mce-resize-helper","data-mce-bogus":"all"},as+" × "+ys)};let Mc=Wn.get("mceResizeHandle"+Sb);Mc&&Wn.remove(Mc),Mc=Wn.add(no,"div",{id:"mceResizeHandle"+Sb,"data-mce-bogus":"all",class:"mce-resizehandle",unselectable:!0,style:"cursor:"+Sb+"-resize; margin:0; padding:0"}),Wn.bind(Mc,"mousedown",ru=>{ru.stopImmediatePropagation(),ru.preventDefault(),Sl(ru)}),Ip.elm=Mc,Wn.setStyles(Mc,{left:Oh*Ip[0]+pc-Mc.offsetWidth/2,top:h0*Ip[1]+Pu-Mc.offsetHeight/2})}):ea(!1)},_u=Zy(Jh,0),ea=(Yr=!0)=>{_u.cancel(),ac(),ao&&Yr&&ao.removeAttribute(hy),Rr(M3,(pl,pc)=>{const Pu=Wn.get("mceResizeHandle"+pc);Pu&&(Wn.unbind(Pu),Wn.remove(Pu))})},pa=(Yr,pl)=>Wn.isChildOf(Yr,pl),$c=Yr=>{if(zs||Vn.removed||Vn.composing)return;const pl=Yr.type==="mousedown"?Yr.target:Mn.getNode(),pc=cm(Cs.fromDom(pl),nA).map(du=>du.dom).filter(du=>Wn.isEditable(du.parentElement)||du.nodeName==="IMG"&&Wn.isEditable(du)).getOrUndefined(),Pu=rs(pc)?Wn.getAttrib(pc,hy,"1"):"1";if(fs(Wn.select(`img[${hy}],hr[${hy}]`),du=>{du.removeAttribute(hy)}),rs(pc)&&pa(pc,no)&&Vn.hasFocus()){Pa();const du=Mn.getStart(!0);if(pa(du,pc)&&pa(Mn.getEnd(!0),pc)){Wn.setAttrib(pc,hy,Pu),_u.throttle(pc);return}}ea()},ac=()=>{Rr(M3,Yr=>{Yr.elm&&(Wn.unbind(Yr.elm),delete Yr.elm)})},Pa=()=>{try{Vn.getDoc().execCommand("enableObjectResizing",!1,"false")}catch{}};return Vn.on("init",()=>{Pa(),Vn.on("NodeChange ResizeEditor ResizeWindow ResizeContent drop",$c),Vn.on("keyup compositionend",Yr=>{ao&&ao.nodeName==="TABLE"&&$c(Yr)}),Vn.on("hide blur",ea),Vn.on("contextmenu longpress",Ar,!0)}),Vn.on("remove",ac),{isResizable:Va,showResizeRect:Jh,hideResizeRect:ea,updateResizeRect:$c,destroy:()=>{_u.cancel(),ao=po=Fo=null}}},uH=(Mn,Vn)=>{Vn.fold(Wn=>{Mn.setStartBefore(Wn.dom)},(Wn,jn)=>{Mn.setStart(Wn.dom,jn)},Wn=>{Mn.setStartAfter(Wn.dom)})},N3=(Mn,Vn)=>{Vn.fold(Wn=>{Mn.setEndBefore(Wn.dom)},(Wn,jn)=>{Mn.setEnd(Wn.dom,jn)},Wn=>{Mn.setEndAfter(Wn.dom)})},oA=(Mn,Vn,Wn)=>{const jn=Mn.document.createRange();return uH(jn,Vn),N3(jn,Wn),jn},Ja=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.document.createRange();return no.setStart(Vn.dom,Wn),no.setEnd(jn.dom,Gn),no},G0=Qg.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),sA=(Mn,Vn,Wn)=>Vn(Cs.fromDom(Wn.startContainer),Wn.startOffset,Cs.fromDom(Wn.endContainer),Wn.endOffset),L3=(Mn,Vn)=>Vn.match({domRange:Wn=>({ltr:xs(Wn),rtl:zo.none}),relative:(Wn,jn)=>({ltr:br(()=>oA(Mn,Wn,jn)),rtl:br(()=>zo.some(oA(Mn,jn,Wn)))}),exact:(Wn,jn,Gn,no)=>({ltr:br(()=>Ja(Mn,Wn,jn,Gn,no)),rtl:br(()=>zo.some(Ja(Mn,Gn,no,Wn,jn)))})}),Cw=(Mn,Vn)=>{const Wn=Vn.ltr();return Wn.collapsed?Vn.rtl().filter(Gn=>Gn.collapsed===!1).map(Gn=>G0.rtl(Cs.fromDom(Gn.endContainer),Gn.endOffset,Cs.fromDom(Gn.startContainer),Gn.startOffset)).getOrThunk(()=>sA(Mn,G0.ltr,Wn)):sA(Mn,G0.ltr,Wn)},I3=(Mn,Vn)=>{const Wn=L3(Mn,Vn);return Cw(Mn,Wn)};G0.ltr,G0.rtl;const Hx={create:(Mn,Vn,Wn,jn)=>({start:Mn,soffset:Vn,finish:Wn,foffset:jn})},iA=(Mn,Vn,Wn)=>{var jn,Gn;return zo.from((Gn=(jn=Mn.dom).caretPositionFromPoint)===null||Gn===void 0?void 0:Gn.call(jn,Vn,Wn)).bind(no=>{if(no.offsetNode===null)return zo.none();const ao=Mn.dom.createRange();return ao.setStart(no.offsetNode,no.offset),ao.collapse(),zo.some(ao)})},pk=(Mn,Vn,Wn)=>{var jn,Gn;return zo.from((Gn=(jn=Mn.dom).caretRangeFromPoint)===null||Gn===void 0?void 0:Gn.call(jn,Vn,Wn))},B3=document.caretPositionFromPoint?iA:document.caretRangeFromPoint?pk:zo.none,F3=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Mn.document);return B3(jn,Vn,Wn).map(Gn=>Hx.create(Cs.fromDom(Gn.startContainer),Gn.startOffset,Cs.fromDom(Gn.endContainer),Gn.endOffset))},R_=Qg.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Qx=(Mn,Vn,Wn,jn)=>Mn.fold(Vn,Wn,jn),aA=Mn=>Mn.fold(Qr,Qr,Qr),H3=R_.before,Q3=R_.on,gk=R_.after,Jb={before:H3,on:Q3,after:gk,cata:Qx,getStart:aA},bk=Qg.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Bc=Mn=>bk.exact(Mn.start,Mn.soffset,Mn.finish,Mn.foffset),V3=Mn=>Mn.match({domRange:Vn=>Cs.fromDom(Vn.startContainer),relative:(Vn,Wn)=>Jb.getStart(Vn),exact:(Vn,Wn,jn,Gn)=>Vn}),K0=bk.domRange,e0=bk.relative,vk=bk.exact,mg=Mn=>{const Vn=V3(Mn);return _c(Vn)},yk=Hx.create,J0={domRange:K0,relative:e0,exact:vk,exactFromRange:Bc,getWin:mg,range:yk},D_=(Mn,Vn)=>{const Wn=ql(Mn);return Wn==="input"?Jb.after(Mn):Zs(["br","img"],Wn)?Vn===0?Jb.before(Mn):Jb.after(Mn):Jb.on(Mn,Vn)},kw=(Mn,Vn)=>{const Wn=Mn.fold(Jb.before,D_,Jb.after),jn=Vn.fold(Jb.before,D_,Jb.after);return J0.relative(Wn,jn)},Vx=(Mn,Vn,Wn,jn)=>{const Gn=D_(Mn,Vn),no=D_(Wn,jn);return J0.relative(Gn,no)},z3=Mn=>Mn.match({domRange:Vn=>{const Wn=Cs.fromDom(Vn.startContainer),jn=Cs.fromDom(Vn.endContainer);return Vx(Wn,Vn.startOffset,jn,Vn.endOffset)},relative:kw,exact:Vx}),zx=(Mn,Vn)=>{const jn=document.createDocumentFragment();return fs(Mn,Gn=>{jn.appendChild(Gn.dom)}),Cs.fromDom(jn)},W3=Mn=>{const Vn=J0.getWin(Mn).dom,Wn=(Gn,no,ao,po)=>Ja(Vn,Gn,no,ao,po),jn=z3(Mn);return I3(Vn,jn).match({ltr:Wn,rtl:Wn})},dc=(Mn,Vn,Wn)=>F3(Mn,Vn,Wn),pg=(Mn,Vn,Wn)=>{const jn=_c(Cs.fromDom(Wn));return dc(jn.dom,Mn,Vn).map(Gn=>{const no=Wn.createRange();return no.setStart(Gn.start.dom,Gn.soffset),no.setEnd(Gn.finish.dom,Gn.foffset),no}).getOrUndefined()},ev=(Mn,Vn)=>rs(Mn)&&rs(Vn)&&Mn.startContainer===Vn.startContainer&&Mn.startOffset===Vn.startOffset&&Mn.endContainer===Vn.endContainer&&Mn.endOffset===Vn.endOffset,U3=(Mn,Vn,Wn)=>{let jn=Mn;for(;jn&&jn!==Vn;){if(Wn(jn))return jn;jn=jn.parentNode}return null},M_=(Mn,Vn,Wn)=>U3(Mn,Vn,Wn)!==null,wc=(Mn,Vn,Wn)=>M_(Mn,Vn,jn=>jn.nodeName===Wn),Z3=(Mn,Vn)=>La(Mn)&&!M_(Mn,Vn,fg),Wx=(Mn,Vn,Wn)=>{const jn=Vn.parentNode;if(jn){const Gn=new mu(Vn,Mn.getParent(jn,Mn.isBlock)||Mn.getRoot());let no;for(;no=Gn[Wn?"prev":"next"]();)if(Ec(no))return!0}return!1},eo=(Mn,Vn)=>{var Wn;return((Wn=Mn.previousSibling)===null||Wn===void 0?void 0:Wn.nodeName)===Vn},ro=(Mn,Vn)=>{let Wn=Vn;for(;Wn&&Wn!==Mn;){if(jl(Wn))return!0;Wn=Wn.parentNode}return!1},fo=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.getRoot(),ao=Mn.schema.getNonEmptyElements(),po=Gn.parentNode;let vo,Ao;if(!po)return zo.none();const Fo=Mn.getParent(po,Mn.isBlock)||no;if(jn&&Ec(Gn)&&Vn&&Mn.isEmpty(Fo))return zo.some(lr(po,Mn.nodeIndex(Gn)));const Qo=new mu(Gn,Fo);for(;Ao=Qo[jn?"prev":"next"]();){if(Mn.getContentEditableParent(Ao)==="false"||Z3(Ao,no))return zo.none();if(Ir(Ao)&&Ao.data.length>0)return wc(Ao,no,"A")?zo.none():zo.some(lr(Ao,jn?Ao.data.length:0));if(Mn.isBlock(Ao)||ao[Ao.nodeName.toLowerCase()])return zo.none();vo=Ao}return Dg(vo)?zo.none():Wn&&vo?zo.some(lr(vo,0)):zo.none()},go=(Mn,Vn,Wn,jn)=>{const Gn=Mn.getRoot();let no,ao=!1,po=Wn?jn.startContainer:jn.endContainer,vo=Wn?jn.startOffset:jn.endOffset;const Ao=Oa(po)&&vo===po.childNodes.length,Fo=Mn.schema.getNonEmptyElements();let Qo=Wn;if(La(po))return zo.none();if(Oa(po)&&vo>po.childNodes.length-1&&(Qo=!1),Nm(po)&&(po=Gn,vo=0),po===Gn){if(Qo&&(no=po.childNodes[vo>0?vo-1:0],no&&(La(no)||Fo[no.nodeName]||Gp(no))))return zo.none();if(po.hasChildNodes()){if(vo=Math.min(!Qo&&vo>0?vo-1:vo,po.childNodes.length-1),po=po.childNodes[vo],vo=Ir(po)&&Ao?po.data.length:0,!Vn&&po===Gn.lastChild&&Gp(po)||ro(Gn,po)||La(po)||Er(po))return zo.none();if(po.hasChildNodes()&&!Gp(po)){no=po;const qo=new mu(po,Gn);do{if(jl(no)||La(no)){ao=!1;break}if(Ir(no)&&no.data.length>0){vo=Qo?0:no.data.length,po=no,ao=!0;break}if(Fo[no.nodeName.toLowerCase()]&&!Bd(no)){vo=Mn.nodeIndex(no),po=no.parentNode,Qo||vo++,ao=!0;break}}while(no=Qo?qo.next():qo.prev())}}}return Vn&&(Ir(po)&&vo===0&&fo(Mn,Ao,Vn,!0,po).each(qo=>{po=qo.container(),vo=qo.offset(),ao=!0}),Oa(po)&&(no=po.childNodes[vo],no||(no=po.childNodes[vo-1]),no&&Ec(no)&&!eo(no,"A")&&!Wx(Mn,no,!1)&&!Wx(Mn,no,!0)&&fo(Mn,Ao,Vn,!0,no).each(qo=>{po=qo.container(),vo=qo.offset(),ao=!0}))),Qo&&!Vn&&Ir(po)&&vo===po.data.length&&fo(Mn,Ao,Vn,!1,po).each(qo=>{po=qo.container(),vo=qo.offset(),ao=!0}),ao&&po?zo.some(lr(po,vo)):zo.none()},To=(Mn,Vn)=>{const Wn=Vn.collapsed,jn=Vn.cloneRange(),Gn=lr.fromRangeStart(Vn);return go(Mn,Wn,!0,jn).each(no=>{(!Wn||!lr.isAbove(Gn,no))&&jn.setStart(no.container(),no.offset())}),Wn||go(Mn,Wn,!1,jn).each(no=>{jn.setEnd(no.container(),no.offset())}),Wn&&jn.collapse(!0),ev(Vn,jn)?zo.none():zo.some(jn)},No=(Mn,Vn)=>Mn.splitText(Vn),Zo=Mn=>{let Vn=Mn.startContainer,Wn=Mn.startOffset,jn=Mn.endContainer,Gn=Mn.endOffset;if(Vn===jn&&Ir(Vn)){if(Wn>0&&WnWn){Gn=Gn-Wn;const no=No(jn,Gn).previousSibling;Vn=jn=no,Gn=no.data.length,Wn=0}else Gn=0}else if(Ir(Vn)&&Wn>0&&Wn0&&Gn({walk:(no,ao)=>Ow(Mn,no,ao),split:Zo,expand:(no,ao={type:"word"})=>{if(ao.type==="word"){const po=X0(Mn,no,[{inline:"span"}]),vo=Mn.createRng();return vo.setStart(po.startContainer,po.startOffset),vo.setEnd(po.endContainer,po.endOffset),vo}return no},normalize:no=>To(Mn,no).fold(hs,ao=>(no.setStart(ao.startContainer,ao.startOffset),no.setEnd(ao.endContainer,ao.endOffset),!0))});ns.compareRanges=ev,ns.getCaretRangeFromPoint=pg,ns.getSelectedNode=jv,ns.getNode=Qm;const $s=((Mn,Vn)=>{const Wn=(po,vo)=>{if(!Ys(vo)&&!vo.match(/^[0-9]+$/))throw new Error(Mn+".set accepts only positive integer values. Value was "+vo);const Ao=po.dom;jp(Ao)&&(Ao.style[Mn]=vo+"px")},jn=po=>{const vo=Vn(po);if(vo<=0||vo===null){const Ao=Ju(po,Mn);return parseFloat(Ao)||0}return vo},Gn=jn,no=(po,vo)=>ra(vo,(Ao,Fo)=>{const Qo=Ju(po,Fo),qo=Qo===void 0?0:parseInt(Qo,10);return isNaN(qo)?Ao:Ao+qo},0);return{set:Wn,get:jn,getOuter:Gn,aggregate:no,max:(po,vo,Ao)=>{const Fo=no(po,Ao);return vo>Fo?vo-Fo:0}}})("height",Mn=>{const Vn=Mn.dom;return Ag(Mn)?Vn.getBoundingClientRect().height:Vn.offsetHeight}),js=Mn=>$s.get(Mn),Nr=()=>Cs.fromDom(document),la=(Mn,Vn)=>Mn.view(Vn).fold(xs([]),jn=>{const Gn=Mn.owner(jn),no=la(Mn,Gn);return[jn].concat(no)}),sa=(Mn,Vn)=>{const Wn=Vn.owner(Mn);return la(Vn,Wn)};var Cr=Object.freeze({__proto__:null,view:Mn=>{var Vn;return(Mn.dom===document?zo.none():zo.from((Vn=Mn.dom.defaultView)===null||Vn===void 0?void 0:Vn.frameElement)).map(Cs.fromDom)},owner:Mn=>Fa(Mn)});const Ra=Mn=>{const Vn=Nr(),Wn=Ea(Vn),jn=sa(Mn,Cr),Gn=$r(Mn),no=Kr(jn,(ao,po)=>{const vo=$r(po);return{left:ao.left+vo.left,top:ao.top+vo.top}},{left:0,top:0});return Io(no.left+Gn.left+Wn.left,no.top+Gn.top+Wn.top)},dl=Mn=>ql(Mn)==="textarea",Bl=(Mn,Vn)=>Mn.dispatch("ScrollIntoView",Vn).isDefaultPrevented(),Gu=(Mn,Vn)=>{Mn.dispatch("AfterScrollIntoView",Vn)},qf=(Mn,Vn)=>{const Wn=Ku(Mn);if(Wn.length===0||dl(Mn))return{element:Mn,offset:Vn};if(Vn{const Wn=Rs(Mn),jn=js(Mn);return{element:Mn,bottom:Wn.top+jn,height:jn,pos:Wn,cleanup:Vn}},dp=(Mn,Vn)=>{const Wn=qf(Mn,Vn),jn=Cs.fromHtml(''+_o+"");return ed(Wn.element,jn),zd(jn,()=>sc(jn))},mO=Mn=>zd(Cs.fromDom(Mn),Js),pO=(Mn,Vn,Wn,jn)=>{wm(Mn,(Gn,no)=>Ok(Mn,Vn,Wn,jn),Wn)},Ux=(Mn,Vn,Wn,jn,Gn)=>{const no={elm:jn.element.dom,alignToTop:Gn};if(Bl(Mn,no))return;const ao=Ea(Vn).top;Wn(Mn,Vn,ao,jn,Gn),Gu(Mn,no)},Ok=(Mn,Vn,Wn,jn)=>{const Gn=Cs.fromDom(Mn.getBody()),no=Cs.fromDom(Mn.getDoc());xu(Gn);const ao=dp(Cs.fromDom(Wn.startContainer),Wn.startOffset);Ux(Mn,no,Vn,ao,jn),ao.cleanup()},yu=(Mn,Vn,Wn,jn)=>{const Gn=Cs.fromDom(Mn.getDoc());Ux(Mn,Gn,Wn,mO(Vn),jn)},wm=(Mn,Vn,Wn)=>{const jn=Wn.startContainer,Gn=Wn.startOffset,no=Wn.endContainer,ao=Wn.endOffset;Vn(Cs.fromDom(jn),Cs.fromDom(no));const po=Mn.dom.createRng();po.setStart(jn,Gn),po.setEnd(no,ao),Mn.selection.setRng(Wn)},Lh=(Mn,Vn,Wn,jn,Gn)=>{const no=Vn.pos;if(jn)ll(no.left,no.top,Gn);else{const ao=no.top-Wn+Vn.height;ll(-Mn.getBody().getBoundingClientRect().left,ao,Gn)}},gg=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=jn+Wn,po=Gn.pos.top,vo=Gn.bottom,Ao=vo-po>=jn;poao?Lh(Mn,Gn,jn,Ao?no!==!1:no===!0,Vn):vo>ao&&!Ao&&Lh(Mn,Gn,jn,no===!0,Vn)},Np=(Mn,Vn,Wn,jn,Gn)=>{const no=_c(Vn).dom.innerHeight;gg(Mn,Vn,Wn,no,jn,Gn)},my=(Mn,Vn,Wn,jn,Gn)=>{const no=_c(Vn).dom.innerHeight;gg(Mn,Vn,Wn,no,jn,Gn);const ao=Ra(jn.element),po=zu(window);ao.toppo.bottom&&nl(jn.element,Gn===!0)},Wm=(Mn,Vn,Wn)=>pO(Mn,Np,Vn,Wn),Zx=(Mn,Vn,Wn)=>yu(Mn,Vn,Np,Wn),xw=(Mn,Vn,Wn)=>pO(Mn,my,Vn,Wn),t0=(Mn,Vn,Wn)=>yu(Mn,Vn,my,Wn),Gh=(Mn,Vn,Wn)=>{(Mn.inline?Zx:t0)(Mn,Vn,Wn)},Ew=(Mn,Vn,Wn)=>{(Mn.inline?Wm:xw)(Mn,Vn,Wn)},lA=(Mn,Vn=!1)=>Mn.dom.focus({preventScroll:Vn}),cA=Mn=>{const Vn=Wf(Mn).dom;return Mn.dom===Vn.activeElement},N_=(Mn=Nr())=>zo.from(Mn.dom.activeElement).map(Cs.fromDom),uA=Mn=>N_(Wf(Mn)).filter(Vn=>Mn.dom.contains(Vn.dom)),_k=(Mn,Vn)=>{const Wn=qd(Vn)?fm(Vn).length:Ku(Vn).length+1;return Mn>Wn?Wn:Mn<0?0:Mn},dA=Mn=>J0.range(Mn.start,_k(Mn.soffset,Mn.start),Mn.finish,_k(Mn.foffset,Mn.finish)),gO=(Mn,Vn)=>!Xp(Vn.dom)&&(Dr(Mn,Vn)||Vs(Mn,Vn)),NN=Mn=>Vn=>gO(Mn,Vn.start)&&gO(Mn,Vn.finish),dH=Mn=>Mn.inline||aa.browser.isFirefox(),fH=Mn=>J0.range(Cs.fromDom(Mn.startContainer),Mn.startOffset,Cs.fromDom(Mn.endContainer),Mn.endOffset),hH=Mn=>{const Vn=Mn.getSelection();return(!Vn||Vn.rangeCount===0?zo.none():zo.from(Vn.getRangeAt(0))).map(fH)},mH=Mn=>{const Vn=_c(Mn);return hH(Vn.dom).filter(NN(Mn))},LN=(Mn,Vn)=>zo.from(Vn).filter(NN(Mn)).map(dA),IN=Mn=>{const Vn=document.createRange();try{return Vn.setStart(Mn.start.dom,Mn.soffset),Vn.setEnd(Mn.finish.dom,Mn.foffset),zo.some(Vn)}catch{return zo.none()}},Sk=Mn=>{const Vn=dH(Mn)?mH(Cs.fromDom(Mn.getBody())):zo.none();Mn.bookmark=Vn.isSome()?Vn:Mn.bookmark},q3=Mn=>(Mn.bookmark?Mn.bookmark:zo.none()).bind(Wn=>LN(Cs.fromDom(Mn.getBody()),Wn)).bind(IN),pH=Mn=>{q3(Mn).each(Vn=>Mn.selection.setRng(Vn))},FN={isEditorUIElement:Mn=>{const Vn=Mn.className.toString();return Vn.indexOf("tox-")!==-1||Vn.indexOf("mce-")!==-1}},HN=(Mn,Vn)=>(Ys(Vn)||(Vn=0),setTimeout(Mn,Vn)),QN=(Mn,Vn)=>(Ys(Vn)||(Vn=0),setInterval(Mn,Vn)),O1={setEditorTimeout:(Mn,Vn,Wn)=>HN(()=>{Mn.removed||Vn()},Wn),setEditorInterval:(Mn,Vn,Wn)=>{const jn=QN(()=>{Mn.removed?clearInterval(jn):Vn()},Wn);return jn}},gH=Mn=>Mn.type==="nodechange"&&Mn.selectionChange,bH=(Mn,Vn)=>{const Wn=()=>{Vn.throttle()};Eu.DOM.bind(document,"mouseup",Wn),Mn.on("remove",()=>{Eu.DOM.unbind(document,"mouseup",Wn)})},vH=(Mn,Vn)=>{Mn.on("mouseup touchend",Wn=>{Vn.throttle()})},yH=(Mn,Vn)=>{vH(Mn,Vn),Mn.on("keyup NodeChange AfterSetSelectionRange",Wn=>{gH(Wn)||Sk(Mn)})},fA=Mn=>{const Vn=Zy(()=>{Sk(Mn)},0);Mn.on("init",()=>{Mn.inline&&bH(Mn,Vn),yH(Mn,Vn)}),Mn.on("remove",()=>{Vn.cancel()})};let Tw;const hA=Eu.DOM,VN=Mn=>Oa(Mn)&&FN.isEditorUIElement(Mn),mA=Mn=>{const Vn=Mn.classList;return Vn!==void 0?Vn.contains("tox-edit-area")||Vn.contains("tox-edit-area__iframe")||Vn.contains("mce-content-body"):!1},pA=(Mn,Vn)=>{const Wn=IC(Mn);return hA.getParent(Vn,Gn=>VN(Gn)||(Wn?Mn.dom.is(Gn,Wn):!1))!==null},j3=Mn=>{try{const Vn=Wf(Cs.fromDom(Mn.getElement()));return N_(Vn).fold(()=>document.body,Wn=>Wn.dom)}catch{return document.body}},OH=(Mn,Vn)=>{const Wn=Vn.editor;fA(Wn);const jn=(Gn,no)=>{if(lp(Gn)&&Gn.inline!==!0){const ao=Cs.fromDom(Gn.getContainer());no(ao,"tox-edit-focus")}};Wn.on("focusin",()=>{const Gn=Mn.focusedEditor;mA(j3(Wn))&&jn(Wn,Xm),Gn!==Wn&&(Gn&&Gn.dispatch("blur",{focusedEditor:Wn}),Mn.setActive(Wn),Mn.focusedEditor=Wn,Wn.dispatch("focus",{blurredEditor:Gn}),Wn.focus(!0))}),Wn.on("focusout",()=>{O1.setEditorTimeout(Wn,()=>{const Gn=Mn.focusedEditor;(!mA(j3(Wn))||Gn!==Wn)&&jn(Wn,Vf),!pA(Wn,j3(Wn))&&Gn===Wn&&(Wn.dispatch("blur",{focusedEditor:null}),Mn.focusedEditor=null)})}),Tw||(Tw=Gn=>{const no=Mn.activeEditor;no&&Zp(Gn).each(ao=>{const po=ao;po.ownerDocument===document&&po!==document.body&&!pA(no,po)&&Mn.focusedEditor===no&&(no.dispatch("blur",{focusedEditor:null}),Mn.focusedEditor=null)})},hA.bind(document,"focusin",Tw))},_H=(Mn,Vn)=>{Mn.focusedEditor===Vn.editor&&(Mn.focusedEditor=null),!Mn.activeEditor&&Tw&&(hA.unbind(document,"focusin",Tw),Tw=null)},SH=Mn=>{Mn.on("AddEditor",ws(OH,Mn)),Mn.on("RemoveEditor",ws(_H,Mn))},wH=(Mn,Vn)=>Mn.dom.getParent(Vn,Wn=>Mn.dom.getContentEditable(Wn)==="true"),CH=Mn=>Mn.collapsed?zo.from(Qm(Mn.startContainer,Mn.startOffset)).map(Cs.fromDom):zo.none(),kH=(Mn,Vn)=>CH(Vn).bind(Wn=>mh(Wn)?zo.some(Wn):Dr(Mn,Wn)?zo.none():zo.some(Mn)),zN=(Mn,Vn)=>{kH(Cs.fromDom(Mn.getBody()),Vn).bind(Wn=>zm(Wn.dom)).fold(()=>{Mn.selection.normalize()},Wn=>Mn.selection.setRng(Wn.toRange()))},X3=Mn=>{if(Mn.setActive)try{Mn.setActive()}catch{Mn.focus()}else Mn.focus()},xH=Mn=>cA(Mn)||uA(Mn).isSome(),EH=Mn=>rs(Mn.iframeElement)&&cA(Cs.fromDom(Mn.iframeElement)),gA=Mn=>{const Vn=Mn.getBody();return Vn&&xH(Cs.fromDom(Vn))},WN=Mn=>{const Vn=Wf(Cs.fromDom(Mn.getElement()));return N_(Vn).filter(Wn=>!mA(Wn.dom)&&pA(Mn,Wn.dom)).isSome()},L_=Mn=>Mn.inline?gA(Mn):EH(Mn),UN=Mn=>L_(Mn)||WN(Mn),TH=Mn=>{const Vn=Mn.selection,Wn=Mn.getBody();let jn=Vn.getRng();Mn.quirks.refreshContentEditable(),rs(Mn.bookmark)&&!L_(Mn)&&q3(Mn).each(no=>{Mn.selection.setRng(no),jn=no});const Gn=wH(Mn,Vn.getNode());if(Gn&&Mn.dom.isChildOf(Gn,Wn)){X3(Gn),zN(Mn,jn),Y3(Mn);return}Mn.inline||(aa.browser.isOpera()||X3(Wn),Mn.getWin().focus()),(aa.browser.isFirefox()||Mn.inline)&&(X3(Wn),zN(Mn,jn)),Y3(Mn)},Y3=Mn=>Mn.editorManager.setActive(Mn),AH=(Mn,Vn)=>{Mn.removed||(Vn?Y3(Mn):TH(Mn))},ZN=(Mn,Vn)=>Vn.collapsed?Mn.isEditable(Vn.startContainer):Mn.isEditable(Vn.startContainer)&&Mn.isEditable(Vn.endContainer),qN=(Mn,Vn,Wn,jn,Gn)=>{const no=Wn?Vn.startContainer:Vn.endContainer,ao=Wn?Vn.startOffset:Vn.endOffset;return zo.from(no).map(Cs.fromDom).map(po=>!jn||!Vn.collapsed?Rm(po,Gn(po,ao)).getOr(po):po).bind(po=>lf(po)?zo.some(po):Wc(po).filter(lf)).map(po=>po.dom).getOr(Mn)},G3=(Mn,Vn,Wn=!1)=>qN(Mn,Vn,!0,Wn,(jn,Gn)=>Math.min(Af(jn),Gn)),jN=(Mn,Vn,Wn=!1)=>qN(Mn,Vn,!1,Wn,(jn,Gn)=>Gn>0?Gn-1:Gn),K3=(Mn,Vn)=>{const Wn=Mn;for(;Mn&&Ir(Mn)&&Mn.length===0;)Mn=Vn?Mn.nextSibling:Mn.previousSibling;return Mn||Wn},XN=(Mn,Vn)=>{if(!Vn)return Mn;let Wn=Vn.startContainer,jn=Vn.endContainer;const Gn=Vn.startOffset,no=Vn.endOffset;let ao=Vn.commonAncestorContainer;Vn.collapsed||(Wn===jn&&no-Gn<2&&Wn.hasChildNodes()&&(ao=Wn.childNodes[Gn]),Ir(Wn)&&Ir(jn)&&(Wn.length===Gn?Wn=K3(Wn.nextSibling,!0):Wn=Wn.parentNode,no===0?jn=K3(jn.previousSibling,!1):jn=jn.parentNode,Wn&&Wn===jn&&(ao=Wn)));const po=Ir(ao)?ao.parentNode:ao;return pf(po)?po:Mn},PH=(Mn,Vn,Wn,jn)=>{const Gn=[],no=Mn.getRoot(),ao=Mn.getParent(Wn||G3(no,Vn,Vn.collapsed),Mn.isBlock),po=Mn.getParent(jn||jN(no,Vn,Vn.collapsed),Mn.isBlock);if(ao&&ao!==no&&Gn.push(ao),ao&&po&&ao!==po){let vo;const Ao=new mu(ao,no);for(;(vo=Ao.next())&&vo!==po;)Mn.isBlock(vo)&&Gn.push(vo)}return po&&ao!==po&&po!==no&&Gn.push(po),Gn},$H=(Mn,Vn,Wn)=>zo.from(Vn).bind(jn=>zo.from(jn.parentNode).map(Gn=>{const no=Mn.nodeIndex(jn),ao=Mn.createRng();return ao.setStart(Gn,no),ao.setEnd(Gn,no+1),Wn&&(xx(Mn,ao,jn,!0),xx(Mn,ao,jn,!1)),ao})),J3=(Mn,Vn)=>Us(Vn,Wn=>{const jn=Mn.dispatch("GetSelectionRange",{range:Wn});return jn.range!==Wn?jn.range:Wn}),RH=Mn=>ql(Mn)==="img"?1:Mb(Mn).fold(()=>Ku(Mn).length,Vn=>Vn.length),DH=Mn=>Mb(Mn).filter(Vn=>Vn.trim().length!==0||Vn.indexOf(hc)>-1).isSome(),MH=Mn=>Du(Mn)&&Tf(Mn,"contenteditable")==="false",NH=["img","br"],YN=Mn=>DH(Mn)||Zs(NH,ql(Mn))||MH(Mn),LH=Mn=>tf(Mn,YN),IH=Mn=>BH(Mn,YN),BH=(Mn,Vn)=>{const Wn=jn=>{const Gn=Ku(jn);for(let no=Gn.length-1;no>=0;no--){const ao=Gn[no];if(Vn(ao))return zo.some(ao);const po=Wn(ao);if(po.isSome())return po}return zo.none()};return Wn(Mn)},GN="[data-mce-autocompleter]",FH=(Mn,Vn)=>{if(KN(Cs.fromDom(Mn.getBody())).isNone()){const Wn=Cs.fromHtml('',Mn.getDoc());Fu(Wn,Cs.fromDom(Vn.extractContents())),Vn.insertNode(Wn.dom),Wc(Wn).each(jn=>jn.dom.normalize()),IH(Wn).map(jn=>{Mn.selection.setCursorLocation(jn.dom,RH(jn))})}},HH=Mn=>cm(Mn,GN),KN=Mn=>uf(Mn,GN),QH=(Mn,Vn)=>KN(Vn).each(Wn=>{const jn=Mn.selection.getBookmark();hf(Wn),Mn.selection.moveToBookmark(jn)}),VH={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11},bA=(Mn,Vn,Wn)=>{const jn=Wn?"lastChild":"firstChild",Gn=Wn?"prev":"next";if(Mn[jn])return Mn[jn];if(Mn!==Vn){let no=Mn[Gn];if(no)return no;for(let ao=Mn.parent;ao&&ao!==Vn;ao=ao.parent)if(no=ao[Gn],no)return no}},zH=Mn=>{var Vn;const Wn=(Vn=Mn.value)!==null&&Vn!==void 0?Vn:"";if(!Q1(Wn))return!1;const jn=Mn.parent;return!(jn&&(jn.name!=="span"||jn.attr("style"))&&/^[ ]+$/.test(Wn))},Za=Mn=>{const Vn=Mn.name==="a"&&!Mn.attr("href")&&Mn.attr("id");return Mn.attr("name")||Mn.attr("id")&&!Mn.firstChild||Mn.attr("data-mce-bookmark")||Vn};class fp{static create(Vn,Wn){const jn=new fp(Vn,VH[Vn]||1);return Wn&&Rr(Wn,(Gn,no)=>{jn.attr(no,Gn)}),jn}constructor(Vn,Wn){this.name=Vn,this.type=Wn,Wn===1&&(this.attributes=[],this.attributes.map={})}replace(Vn){const Wn=this;return Vn.parent&&Vn.remove(),Wn.insert(Vn,Wn),Wn.remove(),Wn}attr(Vn,Wn){const jn=this;if(!xo(Vn))return rs(Vn)&&Rr(Vn,(no,ao)=>{jn.attr(ao,no)}),jn;const Gn=jn.attributes;if(Gn){if(Wn!==void 0){if(Wn===null){if(Vn in Gn.map){delete Gn.map[Vn];let no=Gn.length;for(;no--;)if(Gn[no].name===Vn)return Gn.splice(no,1),jn}return jn}if(Vn in Gn.map){let no=Gn.length;for(;no--;)if(Gn[no].name===Vn){Gn[no].value=Wn;break}}else Gn.push({name:Vn,value:Wn});return Gn.map[Vn]=Wn,jn}return Gn.map[Vn]}}clone(){const Vn=this,Wn=new fp(Vn.name,Vn.type),jn=Vn.attributes;if(jn){const Gn=[];Gn.map={};for(let no=0,ao=jn.length;noxo(Mn.nodeValue)&&Mn.nodeValue.includes(_o),vA=Mn=>`${Mn.length===0?"":`${Us(Mn,Vn=>`[${Vn}]`).join(",")},`}[data-mce-bogus="all"]`,WH=(Mn,Vn)=>Vn.querySelectorAll(vA(Mn)),tL=Mn=>document.createTreeWalker(Mn,NodeFilter.SHOW_COMMENT,Vn=>eL(Vn)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP),nL=Mn=>document.createTreeWalker(Mn,NodeFilter.SHOW_TEXT,Vn=>{if(eL(Vn)){const Wn=Vn.parentNode;return Wn&&Mr(JN,Wn.nodeName)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}else return NodeFilter.FILTER_SKIP}),UH=Mn=>tL(Mn).nextNode()!==null,ZH=Mn=>nL(Mn).nextNode()!==null,yA=(Mn,Vn)=>Vn.querySelector(vA(Mn))!==null,oL=(Mn,Vn)=>{fs(WH(Mn,Vn),Wn=>{const jn=Cs.fromDom(Wn);Tf(jn,"data-mce-bogus")==="all"?sc(jn):fs(Mn,Gn=>{Od(jn,Gn)&&Mu(jn,Gn)})})},qH=Mn=>{let Vn=Mn.nextNode();for(;Vn!==null;)Vn.nodeValue=null,Vn=Mn.nextNode()},jH=ko(qH,tL),Cl=ko(qH,nL),sL=(Mn,Vn)=>{const Wn=[{condition:ws(yA,Vn),action:ws(oL,Vn)},{condition:UH,action:jH},{condition:ZH,action:Cl}];let jn=Mn,Gn=!1;return fs(Wn,({condition:no,action:ao})=>{no(jn)&&(Gn||(jn=Mn.cloneNode(!0),Gn=!0),ao(jn))}),jn},Rl=Mn=>{const Vn=mf(Mn,"[data-mce-bogus]");fs(Vn,Wn=>{Tf(Wn,"data-mce-bogus")==="all"?sc(Wn):np(Wn)?(ed(Wn,Cs.fromText(k0)),sc(Wn)):hf(Wn)})},eR=Mn=>{const Vn=mf(Mn,"input");fs(Vn,Wn=>{Mu(Wn,"name")})},IY=(Mn,Vn)=>{const Wn=bh(Mn),jn=new RegExp(`^(<${Wn}[^>]*>( | |\\s| |
|)<\\/${Wn}>[\r +]*|
[\r +]*)$`);return Vn.replace(jn,"")},BY=(Mn,Vn)=>{const Wn=Mn.getDoc(),jn=Wf(Cs.fromDom(Mn.getBody())),Gn=Cs.fromTag("div",Wn);Gc(Gn,"data-mce-bogus","all"),ff(Gn,{position:"fixed",left:"-9999999px",top:"0"}),dm(Gn,Vn.innerHTML),Rl(Gn),eR(Gn);const no=Ny(jn);Fu(no,Gn);const ao=Xo(Gn.dom.innerText);return sc(Gn),ao},XH=(Mn,Vn,Wn)=>{let jn;return Vn.format==="raw"?jn=Lr.trim(Xo(sL(Wn,Mn.serializer.getTempAttrs()).innerHTML)):Vn.format==="text"?jn=BY(Mn,Wn):Vn.format==="tree"?jn=Mn.serializer.serialize(Wn,Vn):jn=IY(Mn,Mn.serializer.serialize(Wn,Vn)),Vn.format!=="text"&&!Xd(Cs.fromDom(Wn))&&xo(jn)?Lr.trim(jn):jn},FY=(Mn,Vn)=>zo.from(Mn.getBody()).fold(xs(Vn.format==="tree"?new fp("body",11):""),Wn=>XH(Mn,Vn,Wn)),YH=Lr.makeMap,rL=Mn=>{const Vn=[];Mn=Mn||{};const Wn=Mn.indent,jn=YH(Mn.indent_before||""),Gn=YH(Mn.indent_after||""),no=P0.getEncodeFunc(Mn.entity_encoding||"raw",Mn.entities),ao=Mn.element_format!=="xhtml";return{start:(po,vo,Ao)=>{if(Wn&&jn[po]&&Vn.length>0){const Fo=Vn[Vn.length-1];Fo.length>0&&Fo!==` +`&&Vn.push(` +`)}if(Vn.push("<",po),vo)for(let Fo=0,Qo=vo.length;Fo0){const Fo=Vn[Vn.length-1];Fo.length>0&&Fo!==` +`&&Vn.push(` +`)}},end:po=>{let vo;Vn.push(""),Wn&&Gn[po]&&Vn.length>0&&(vo=Vn[Vn.length-1],vo.length>0&&vo!==` +`&&Vn.push(` +`))},text:(po,vo)=>{po.length>0&&(Vn[Vn.length]=vo?po:no(po))},cdata:po=>{Vn.push("")},comment:po=>{Vn.push("")},pi:(po,vo)=>{vo?Vn.push(""):Vn.push(""),Wn&&Vn.push(` +`)},doctype:po=>{Vn.push("",Wn?` +`:"")},reset:()=>{Vn.length=0},getContent:()=>Vn.join("").replace(/\n$/,"")}},I_=(Mn={},Vn=i1())=>{const Wn=rL(Mn);return Mn.validate="validate"in Mn?Mn.validate:!0,{serialize:Gn=>{const no=Mn.validate,ao={3:vo=>{var Ao;Wn.text((Ao=vo.value)!==null&&Ao!==void 0?Ao:"",vo.raw)},8:vo=>{var Ao;Wn.comment((Ao=vo.value)!==null&&Ao!==void 0?Ao:"")},7:vo=>{Wn.pi(vo.name,vo.value)},10:vo=>{var Ao;Wn.doctype((Ao=vo.value)!==null&&Ao!==void 0?Ao:"")},4:vo=>{var Ao;Wn.cdata((Ao=vo.value)!==null&&Ao!==void 0?Ao:"")},11:vo=>{let Ao=vo;if(Ao=Ao.firstChild)do po(Ao);while(Ao=Ao.next)}};Wn.reset();const po=vo=>{var Ao;const Fo=ao[vo.type];if(Fo)Fo(vo);else{const Qo=vo.name,qo=Qo in Vn.getVoidElements();let ds=vo.attributes;if(no&&ds&&ds.length>1){const bs=[];bs.map={};const as=Vn.getElementRule(vo.name);if(as){for(let ys=0,Ls=as.attributesOrder.length;ys{ol.add(Vn)});const iL=["font","text-decoration","text-emphasis"],tR=(Mn,Vn)=>Al(Mn.parseStyle(Mn.getAttrib(Vn,"style"))),GH=Mn=>ol.has(Mn),qx=(Mn,Vn)=>gc(tR(Mn,Vn),Wn=>!GH(Wn)),aL=Mn=>nr(Mn,Vn=>Sr(iL,Wn=>Dc(Vn,Wn))),KH=(Mn,Vn,Wn)=>{const jn=tR(Mn,Vn),Gn=tR(Mn,Wn),no=ao=>{var po,vo;const Ao=(po=Mn.getStyle(Vn,ao))!==null&&po!==void 0?po:"",Fo=(vo=Mn.getStyle(Wn,ao))!==null&&vo!==void 0?vo:"";return fc(Ao)&&fc(Fo)&&Ao!==Fo};return Sr(jn,ao=>{const po=vo=>Sr(vo,Ao=>Ao===ao);if(!po(Gn)&&po(iL)){const vo=aL(Gn);return Sr(vo,no)}else return no(ao)})},lL=(Mn,Vn,Wn)=>zo.from(Wn.container()).filter(Ir).exists(jn=>{const Gn=Mn?0:-1;return Vn(jn.data.charAt(Wn.offset()+Gn))}),nR=ws(lL,!0,k_),OA=ws(lL,!1,k_),JH=Mn=>{const Vn=Mn.container();return Ir(Vn)&&(Vn.data.length===0||Po(Vn.data)&&fO.isBookmarkNode(Vn.parentNode))},Aw=(Mn,Vn)=>Wn=>ua(Mn?0:-1,Wn).filter(Vn).isSome(),e9=Mn=>td(Mn)&&Ju(Cs.fromDom(Mn),"display")==="block",cL=Mn=>jl(Mn)&&!_v(Mn),t9=Aw(!0,e9),n9=Aw(!1,e9),jx=Aw(!0,pu),wk=Aw(!1,pu),uL=Aw(!0,Gp),Ql=Aw(!1,Gp),bO=Aw(!0,cL),tv=Aw(!1,cL),dL=Mn=>Mn.slice(0,-1),fL=(Mn,Vn,Wn)=>Dr(Vn,Mn)?dL(D1(Mn,jn=>Wn(jn)||Vs(jn,Vn))):[],oR=(Mn,Vn)=>fL(Mn,Vn,hs),py=(Mn,Vn)=>[Mn].concat(oR(Mn,Vn)),_A=(Mn,Vn,Wn)=>g1(Mn,Vn,Wn,JH),o9=Mn=>Vn=>Mn.isBlock(ql(Vn)),sR=(Mn,Vn,Wn)=>xa(py(Cs.fromDom(Vn.container()),Mn),o9(Wn)),hL=(Mn,Vn,Wn,jn)=>_A(Mn,Vn.dom,Wn).forall(Gn=>sR(Vn,Wn,jn).fold(()=>!jr(Gn,Wn,Vn.dom),no=>!jr(Gn,Wn,Vn.dom)&&Dr(no,Cs.fromDom(Gn.container())))),mL=(Mn,Vn,Wn,jn)=>sR(Vn,Wn,jn).fold(()=>_A(Mn,Vn.dom,Wn).forall(Gn=>!jr(Gn,Wn,Vn.dom)),Gn=>_A(Mn,Gn.dom,Wn).isNone()),rR=ws(mL,!1),pL=ws(mL,!0),s9=ws(hL,!1),r9=ws(hL,!0),i9=Mn=>Mh(Mn).exists(np),SA=(Mn,Vn,Wn,jn)=>{const Gn=nr(py(Cs.fromDom(Wn.container()),Vn),ao=>jn.isBlock(ql(ao))),no=qa(Gn).getOr(Vn);return vh(Mn,no.dom,Wn).filter(i9)},Xx=(Mn,Vn,Wn)=>Mh(Vn).exists(np)||SA(!0,Mn,Vn,Wn).isSome(),Yx=(Mn,Vn,Wn)=>Rp(Vn).exists(np)||SA(!1,Mn,Vn,Wn).isSome(),a9=ws(SA,!1),l9=ws(SA,!0),gL=Mn=>lr.isTextPosition(Mn)&&!Mn.isAtStart()&&!Mn.isAtEnd(),bL=(Mn,Vn,Wn)=>{const jn=nr(py(Cs.fromDom(Vn.container()),Mn),Gn=>Wn.isBlock(ql(Gn)));return qa(jn).getOr(Mn)},vL=(Mn,Vn,Wn)=>gL(Vn)?OA(Vn):OA(Vn)||cp(bL(Mn,Vn,Wn).dom,Vn).exists(OA),yL=(Mn,Vn,Wn)=>gL(Vn)?nR(Vn):nR(Vn)||Sm(bL(Mn,Vn,Wn).dom,Vn).exists(nR),c9=Mn=>Zs(["pre","pre-wrap"],Mn),iR=Mn=>Mh(Mn).bind(Vn=>cf(Vn,lf)).exists(Vn=>c9(Ju(Vn,"white-space"))),OL=(Mn,Vn)=>cp(Mn.dom,Vn).isNone(),u9=(Mn,Vn)=>Sm(Mn.dom,Vn).isNone(),d9=(Mn,Vn,Wn)=>OL(Mn,Vn)||u9(Mn,Vn)||rR(Mn,Vn,Wn)||pL(Mn,Vn,Wn)||Yx(Mn,Vn,Wn)||Xx(Mn,Vn,Wn),Pw=Mn=>rs(Mn)&&jl(Mn)&&Yb(Mn),_L=(Mn,Vn)=>Wn=>Pw(new mu(Wn,Mn)[Vn]()),SL=(Mn,Vn)=>{const Wn=Sm(Mn.dom,Vn).getOr(Vn),jn=_L(Mn.dom,"next");return Vn.isAtEnd()&&(jn(Vn.container())||jn(Wn.container()))},f9=(Mn,Vn)=>{const Wn=cp(Mn.dom,Vn).getOr(Vn),jn=_L(Mn.dom,"prev");return Vn.isAtStart()&&(jn(Vn.container())||jn(Wn.container()))},wL=(Mn,Vn,Wn)=>iR(Vn)?!1:d9(Mn,Vn,Wn)||vL(Mn,Vn,Wn)||yL(Mn,Vn,Wn),Ck=(Mn,Vn,Wn)=>iR(Vn)?!1:rR(Mn,Vn,Wn)||s9(Mn,Vn,Wn)||Yx(Mn,Vn,Wn)||vL(Mn,Vn,Wn)||f9(Mn,Vn),CL=Mn=>{const Vn=Mn.container(),Wn=Mn.offset();return Ir(Vn)&&WniR(Vn)?!1:pL(Mn,Vn,Wn)||r9(Mn,Vn,Wn)||Xx(Mn,Vn,Wn)||yL(Mn,Vn,Wn)||SL(Mn,Vn),wA=(Mn,Vn,Wn)=>Ck(Mn,Vn,Wn)||kk(Mn,CL(Vn),Wn),hp=(Mn,Vn)=>ok(Mn.charAt(Vn)),kL=(Mn,Vn)=>k_(Mn.charAt(Vn)),h9=Mn=>{const Vn=Mn.container();return Ir(Vn)&&oc(Vn.data,hc)},m9=Mn=>{const Vn=Mn.split("");return Us(Vn,(Wn,jn)=>ok(Wn)&&jn>0&&jn{const Gn=Vn.data,no=lr(Vn,0);return!Wn&&hp(Gn,0)&&!wA(Mn,no,jn)?(Vn.data=" "+Gn.slice(1),!0):Wn&&kL(Gn,0)&&Ck(Mn,no,jn)?(Vn.data=hc+Gn.slice(1),!0):!1},p9=Mn=>{const Vn=Mn.data,Wn=m9(Vn);return Wn!==Vn?(Mn.data=Wn,!0):!1},B_=(Mn,Vn,Wn,jn)=>{const Gn=Vn.data,no=lr(Vn,Gn.length-1);return!Wn&&hp(Gn,Gn.length-1)&&!wA(Mn,no,jn)?(Vn.data=Gn.slice(0,-1)+" ",!0):Wn&&kL(Gn,Gn.length-1)&&kk(Mn,no,jn)?(Vn.data=Gn.slice(0,-1)+hc,!0):!1},g9=(Mn,Vn,Wn)=>{const jn=Vn.container();if(!Ir(jn))return zo.none();if(h9(Vn)){const Gn=xL(Mn,jn,!1,Wn)||p9(jn)||B_(Mn,jn,!1,Wn);return El(Gn,Vn)}else if(wA(Mn,Vn,Wn)){const Gn=xL(Mn,jn,!0,Wn)||B_(Mn,jn,!0,Wn);return El(Gn,Vn)}else return zo.none()},b9=Mn=>{const Vn=Cs.fromDom(Mn.getBody());Mn.selection.isCollapsed()&&g9(Vn,lr.fromRangeStart(Mn.selection.getRng()),Mn.schema).each(Wn=>{Mn.selection.setRng(Wn.toRange())})},kd=(Mn,Vn,Wn,jn)=>{if(Wn===0)return;const Gn=Cs.fromDom(Mn),no=au(Gn,Ao=>jn.isBlock(ql(Ao))).getOr(Gn),ao=Mn.data.slice(Vn,Vn+Wn),po=Vn+Wn>=Mn.data.length&&kk(no,lr(Mn,Mn.data.length),jn),vo=Vn===0&&Ck(no,lr(Mn,0),jn);Mn.replaceData(Vn,Wn,V1(ao,4,vo,po))},$w=(Mn,Vn,Wn)=>{const jn=Mn.data.slice(Vn),Gn=jn.length-om(jn).length;kd(Mn,Vn,Gn,Wn)},EL=(Mn,Vn,Wn)=>{const jn=Mn.data.slice(0,Vn),Gn=jn.length-sm(jn).length;kd(Mn,Vn-Gn,Gn,Wn)},yh=(Mn,Vn,Wn,jn,Gn=!0)=>{const no=sm(Mn.data).length,ao=Gn?Mn:Vn,po=Gn?Vn:Mn;return Gn?ao.appendData(po.data):ao.insertData(0,po.data),sc(Cs.fromDom(po)),jn&&$w(ao,no,Wn),ao},v9=(Mn,Vn)=>{const Wn=Mn.container(),jn=Mn.offset();return!lr.isTextPosition(Mn)&&Wn===Vn.parentNode&&jn>lr.before(Vn).offset()},y9=(Mn,Vn)=>v9(Vn,Mn)?lr(Vn.container(),Vn.offset()-1):Vn,vO=Mn=>Ir(Mn)?lr(Mn,0):lr.before(Mn),ou=Mn=>Ir(Mn)?lr(Mn,Mn.data.length):lr.after(Mn),aR=Mn=>Xl(Mn.previousSibling)?zo.some(ou(Mn.previousSibling)):Mn.previousSibling?b1(Mn.previousSibling):zo.none(),lR=Mn=>Xl(Mn.nextSibling)?zo.some(vO(Mn.nextSibling)):Mn.nextSibling?zm(Mn.nextSibling):zo.none(),O9=(Mn,Vn)=>zo.from(Vn.previousSibling?Vn.previousSibling:Vn.parentNode).bind(Wn=>cp(Mn,lr.before(Wn))).orThunk(()=>Sm(Mn,lr.after(Vn))),_9=(Mn,Vn)=>Sm(Mn,lr.after(Vn)).orThunk(()=>cp(Mn,lr.before(Vn))),S9=(Mn,Vn)=>aR(Vn).orThunk(()=>lR(Vn)).orThunk(()=>O9(Mn,Vn)),Zg=(Mn,Vn)=>lR(Vn).orThunk(()=>aR(Vn)).orThunk(()=>_9(Mn,Vn)),nv=(Mn,Vn,Wn)=>Mn?Zg(Vn,Wn):S9(Vn,Wn),w9=(Mn,Vn,Wn)=>nv(Mn,Vn,Wn).map(ws(y9,Wn)),CA=(Mn,Vn,Wn)=>{Wn.fold(()=>{Mn.focus()},jn=>{Mn.selection.setRng(jn.toRange(),Vn)})},cR=Mn=>Vn=>Vn.dom===Mn,C9=(Mn,Vn)=>Vn&&Mr(Mn.schema.getBlockElements(),ql(Vn)),k9=(Mn,Vn)=>{if(md(Mn)){const Wn=Cs.fromHtml('
');return Vn?fs(Ku(Mn),jn=>{gw(jn)||sc(jn)}):Dm(Mn),Fu(Mn,Wn),zo.some(lr.before(Wn.dom))}else return zo.none()},Gx=(Mn,Vn,Wn,jn)=>{const Gn=_d(Mn).filter(qd),no=Wh(Mn).filter(qd);return sc(Mn),Tm(Gn,no,Vn,(ao,po,vo)=>{const Ao=ao.dom,Fo=po.dom,Qo=Ao.data.length;return yh(Ao,Fo,Wn,jn),vo.container()===Fo?lr(Ao,Qo):vo}).orThunk(()=>(jn&&(Gn.each(ao=>EL(ao.dom,ao.dom.length,Wn)),no.each(ao=>$w(ao.dom,0,Wn))),Vn))},kA=(Mn,Vn)=>Mr(Mn.schema.getTextInlineElements(),ql(Vn)),yO=(Mn,Vn,Wn,jn=!0,Gn=!1)=>{const no=w9(Vn,Mn.getBody(),Wn.dom),ao=au(Wn,ws(C9,Mn),cR(Mn.getBody())),po=Gx(Wn,no,Mn.schema,kA(Mn,Wn));Mn.dom.isEmpty(Mn.getBody())?(Mn.setContent(""),Mn.selection.setCursorLocation()):ao.bind(vo=>k9(vo,Gn)).fold(()=>{jn&&CA(Mn,Vn,po)},vo=>{jn&&CA(Mn,Vn,zo.some(vo))})},x9=/[\u0591-\u07FF\uFB1D-\uFDFF\uFE70-\uFEFC]/,ov=Mn=>x9.test(Mn),Rw=(Mn,Vn)=>zh(Cs.fromDom(Vn),DC(Mn))&&!Wl(Mn.schema,Vn)&&Mn.dom.isEditable(Vn),TL=Mn=>{var Vn;return Eu.DOM.getStyle(Mn,"direction",!0)==="rtl"||ov((Vn=Mn.textContent)!==null&&Vn!==void 0?Vn:"")},mb=(Mn,Vn,Wn)=>nr(Eu.DOM.getParents(Wn.container(),"*",Vn),Mn),n0=(Mn,Vn,Wn)=>{const jn=mb(Mn,Vn,Wn);return zo.from(jn[jn.length-1])},o0=(Mn,Vn,Wn)=>{const jn=Xr(Vn,Mn),Gn=Xr(Wn,Mn);return rs(jn)&&jn===Gn},E9=Mn=>Ac(Mn)||gu(Mn),mc=(Mn,Vn)=>{const Wn=Vn.container(),jn=Vn.offset();return Mn?Jr(Wn)?Ir(Wn.nextSibling)?lr(Wn.nextSibling,0):lr.after(Wn):Ac(Vn)?lr(Wn,jn+1):Vn:Jr(Wn)?Ir(Wn.previousSibling)?lr(Wn.previousSibling,Wn.previousSibling.data.length):lr.before(Wn):gu(Vn)?lr(Wn,jn-1):Vn},Dw=ws(mc,!0),Kx=ws(mc,!1),uR=(Mn,Vn)=>{const Wn=jn=>jn.stopImmediatePropagation();Mn.on("beforeinput input",Wn,!0),Mn.getDoc().execCommand(Vn),Mn.off("beforeinput input",Wn)},dR=Mn=>{Mn.execCommand("delete")},Jx=Mn=>uR(Mn,"Delete"),T9=Mn=>uR(Mn,"ForwardDelete"),fR=Mn=>Vn=>qc(Wc(Vn),Mn,Vs),A9=Mn=>Gs(Mn)||Lm(Mn),eE=(Mn,Vn)=>Dr(Mn,Vn)?cf(Vn,A9,fR(Mn)):zo.none(),xA=(Mn,Vn=!0)=>{Mn.dom.isEmpty(Mn.getBody())&&Mn.setContent("",{no_selection:!Vn})},EA=(Mn,Vn,Wn)=>jc(zm(Wn),b1(Wn),(jn,Gn)=>{const no=mc(!0,jn),ao=mc(!1,Gn),po=mc(!1,Vn);return Mn?Sm(Wn,po).exists(vo=>vo.isEqual(ao)&&Vn.isEqual(no)):cp(Wn,po).exists(vo=>vo.isEqual(no)&&Vn.isEqual(ao))}).getOr(!0),hR=Mn=>(mv(Mn)?_d(Mn):am(Mn)).bind(hR).orThunk(()=>zo.some(Mn)),tE=(Mn,Vn,Wn,jn=!0)=>{var Gn;Vn.deleteContents();const no=hR(Wn).getOr(Wn),ao=Cs.fromDom((Gn=Mn.dom.getParent(no.dom,Mn.dom.isBlock))!==null&&Gn!==void 0?Gn:Wn.dom);if(ao.dom===Mn.getBody()?xA(Mn,jn):md(ao)&&(Kp(ao),jn&&Mn.selection.setCursorLocation(ao.dom,0)),!Vs(Wn,ao)){const po=qc(Wc(ao),Wn)?[]:pv(ao);fs(po.concat(Ku(Wn)),vo=>{!Vs(vo,ao)&&!Dr(vo,ao)&&md(vo)&&sc(vo)})}},P9=(Mn,Vn,Wn)=>au(Mn,Vn,Wn).isSome(),$9=(Mn,Vn)=>O0(Mn,Vn).isSome(),AL=(Mn,Vn)=>tf(Mn,Vn).isSome(),R9=Mn=>Vn=>Vs(Mn,Vn),mR=Mn=>mf(Mn,"td,th"),pR=(Mn,Vn)=>q0(Cs.fromDom(Mn),Vn),D9=Mn=>jc(Mn.startTable,Mn.endTable,(Vn,Wn)=>{const jn=AL(Vn,no=>Vs(no,Wn)),Gn=AL(Wn,no=>Vs(no,Vn));return!jn&&!Gn?Mn:{...Mn,startTable:jn?zo.none():Mn.startTable,endTable:Gn?zo.none():Mn.endTable,isSameTable:!1,isMultiTable:!1}}).getOr(Mn),M9=Mn=>D9(Mn),PL=(Mn,Vn)=>{const Wn=pR(Mn.startContainer,Vn),jn=pR(Mn.endContainer,Vn),Gn=Wn.isSome(),no=jn.isSome(),ao=jc(Wn,jn,Vs).getOr(!1);return M9({startTable:Wn,endTable:jn,isStartInTable:Gn,isEndInTable:no,isSameTable:ao,isMultiTable:!ao&&Gn&&no})},TA=(Mn,Vn)=>({start:Mn,end:Vn}),N9=(Mn,Vn,Wn)=>({rng:Mn,table:Vn,cells:Wn}),nE=Qg.generate([{singleCellTable:["rng","cell"]},{fullTable:["table"]},{partialTable:["cells","outsideDetails"]},{multiTable:["startTableCells","endTableCells","betweenRng"]}]),oE=(Mn,Vn)=>cm(Cs.fromDom(Mn),"td,th",Vn),$L=Mn=>!Vs(Mn.start,Mn.end),gR=(Mn,Vn)=>q0(Mn.start,Vn).bind(Wn=>q0(Mn.end,Vn).bind(jn=>El(Vs(Wn,jn),Wn))),_1=(Mn,Vn)=>!$L(Mn)&&gR(Mn,Vn).exists(Wn=>{const jn=Wn.dom.rows;return jn.length===1&&jn[0].cells.length===1}),L9=(Mn,Vn)=>{const Wn=oE(Mn.startContainer,Vn),jn=oE(Mn.endContainer,Vn);return jc(Wn,jn,TA)},RL=Mn=>Vn=>q0(Vn,Mn).bind(Wn=>Ya(mR(Wn)).map(jn=>TA(Vn,jn))),bR=Mn=>Vn=>q0(Vn,Mn).bind(Wn=>qa(mR(Wn)).map(jn=>TA(jn,Vn))),sE=Mn=>Vn=>gR(Vn,Mn).map(Wn=>N9(Vn,Wn,mR(Wn))),vR=(Mn,Vn,Wn,jn)=>{if(Wn.collapsed||!Mn.forall($L))return zo.none();if(Vn.isSameTable){const Gn=Mn.bind(sE(jn));return zo.some({start:Gn,end:Gn})}else{const Gn=oE(Wn.startContainer,jn),no=oE(Wn.endContainer,jn),ao=Gn.bind(RL(jn)).bind(sE(jn)),po=no.bind(bR(jn)).bind(sE(jn));return zo.some({start:ao,end:po})}},yR=(Mn,Vn)=>Nl(Mn,Wn=>Vs(Wn,Vn)),OR=Mn=>jc(yR(Mn.cells,Mn.rng.start),yR(Mn.cells,Mn.rng.end),(Vn,Wn)=>Mn.cells.slice(Vn,Wn+1)),I9=(Mn,Vn,Wn)=>Mn.exists(jn=>_1(jn,Wn)&&kx(jn.start,Vn)),AA=(Mn,Vn)=>{const{startTable:Wn,endTable:jn}=Vn,Gn=Mn.cloneRange();return Wn.each(no=>Gn.setStartAfter(no.dom)),jn.each(no=>Gn.setEndBefore(no.dom)),Gn},DL=(Mn,Vn,Wn,jn)=>vR(Mn,Vn,Wn,jn).bind(({start:Gn,end:no})=>Gn.or(no)).bind(Gn=>{const{isSameTable:no}=Vn,ao=OR(Gn).getOr([]);if(no&&Gn.cells.length===ao.length)return zo.some(nE.fullTable(Gn.table));if(ao.length>0){if(no)return zo.some(nE.partialTable(ao,zo.none()));{const po=AA(Wn,Vn);return zo.some(nE.partialTable(ao,zo.some({...Vn,rng:po})))}}else return zo.none()}),s0=(Mn,Vn,Wn,jn)=>vR(Mn,Vn,Wn,jn).bind(({start:Gn,end:no})=>{const ao=Gn.bind(OR).getOr([]),po=no.bind(OR).getOr([]);if(ao.length>0&&po.length>0){const vo=AA(Wn,Vn);return zo.some(nE.multiTable(ao,po,vo))}else return zo.none()}),B9=(Mn,Vn)=>{const Wn=R9(Mn),jn=L9(Vn,Wn),Gn=PL(Vn,Wn);return I9(jn,Vn,Wn)?jn.map(no=>nE.singleCellTable(Vn,no.start)):Gn.isMultiTable?s0(jn,Gn,Vn,Wn):DL(jn,Gn,Vn,Wn)},ML=Mn=>fs(Mn,Vn=>{Mu(Vn,"contenteditable"),Kp(Vn)}),HY=(Mn,Vn)=>zo.from(Mn.dom.getParent(Vn,Mn.dom.isBlock)).map(Cs.fromDom),_R=(Mn,Vn,Wn)=>{Wn.each(jn=>{Vn?sc(jn):(Kp(jn),Mn.selection.setCursorLocation(jn.dom,0))})},SR=(Mn,Vn,Wn,jn)=>{const Gn=Wn.cloneRange();jn?(Gn.setStart(Wn.startContainer,Wn.startOffset),Gn.setEndAfter(Vn.dom.lastChild)):(Gn.setStartBefore(Vn.dom.firstChild),Gn.setEnd(Wn.endContainer,Wn.endOffset)),qg(Mn,Gn,Vn,!1).each(no=>no())},Mw=Mn=>{const Vn=x_(Mn),Wn=Cs.fromDom(Mn.selection.getNode());L1(Wn.dom)&&md(Wn)?Mn.selection.setCursorLocation(Wn.dom,0):Mn.selection.collapse(!0),Vn.length>1&&Sr(Vn,jn=>Vs(jn,Wn))&&Gc(Wn,"data-mce-selected","1")},NL=(Mn,Vn,Wn)=>zo.some(()=>{const jn=Mn.selection.getRng(),Gn=Wn.bind(({rng:no,isStartInTable:ao})=>{const po=HY(Mn,ao?no.endContainer:no.startContainer);no.deleteContents(),_R(Mn,ao,po.filter(md));const vo=ao?Vn[0]:Vn[Vn.length-1];return SR(Mn,vo,jn,ao),md(vo)?zo.none():zo.some(ao?Vn.slice(1):Vn.slice(0,-1))}).getOr(Vn);ML(Gn),Mw(Mn)}),xk=(Mn,Vn,Wn,jn)=>zo.some(()=>{const Gn=Mn.selection.getRng(),no=Vn[0],ao=Wn[Wn.length-1];SR(Mn,no,Gn,!0),SR(Mn,ao,Gn,!1);const po=md(no)?Vn:Vn.slice(1),vo=md(ao)?Wn:Wn.slice(0,-1);ML(po.concat(vo)),jn.deleteContents(),Mw(Mn)}),qg=(Mn,Vn,Wn,jn=!0)=>zo.some(()=>{tE(Mn,Vn,Wn,jn)}),rE=(Mn,Vn)=>zo.some(()=>yO(Mn,!1,Vn)),Iu=(Mn,Vn,Wn)=>B9(Vn,Wn).bind(jn=>jn.fold(ws(qg,Mn),ws(rE,Mn),ws(NL,Mn),ws(xk,Mn))),iE=(Mn,Vn)=>Ek(Mn,Vn),LL=(Mn,Vn,Wn,jn)=>aE(Vn,jn).fold(()=>Iu(Mn,Vn,Wn),Gn=>iE(Mn,Gn)),IL=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Mn.getBody()),Gn=Mn.selection.getRng();return Wn.length!==0?NL(Mn,Wn,zo.none()):LL(Mn,jn,Gn,Vn)},PA=(Mn,Vn)=>xa(py(Vn,Mn),Eh),aE=(Mn,Vn)=>xa(py(Vn,Mn),Qh("caption")),wR=(Mn,Vn,Wn,jn,Gn)=>Z0(Wn,Mn.getBody(),Gn).bind(no=>PA(Vn,Cs.fromDom(no.getNode())).bind(ao=>Vs(ao,jn)?zo.none():zo.some(Js))),Ek=(Mn,Vn)=>zo.some(()=>{Kp(Vn),Mn.selection.setCursorLocation(Vn.dom,0)}),$A=(Mn,Vn,Wn,jn)=>zm(Mn.dom).bind(Gn=>b1(Mn.dom).map(no=>Vn?Wn.isEqual(Gn)&&jn.isEqual(no):Wn.isEqual(no)&&jn.isEqual(Gn))).getOr(!0),CR=(Mn,Vn)=>Ek(Mn,Vn),BL=(Mn,Vn,Wn)=>aE(Mn,Cs.fromDom(Wn.getNode())).fold(()=>zo.some(Js),jn=>El(!Vs(jn,Vn),Js)),FL=(Mn,Vn,Wn,jn,Gn)=>Z0(Wn,Mn.getBody(),Gn).fold(()=>zo.some(Js),no=>$A(jn,Wn,Gn,no)?CR(Mn,jn):BL(Vn,jn,no)),HL=(Mn,Vn,Wn,jn)=>{const Gn=lr.fromRangeStart(Mn.selection.getRng());return PA(Wn,jn).bind(no=>md(no)?Ek(Mn,no):wR(Mn,Wn,Vn,no,Gn))},QL=(Mn,Vn,Wn,jn)=>{const Gn=lr.fromRangeStart(Mn.selection.getRng());return md(jn)?Ek(Mn,jn):FL(Mn,Wn,Vn,jn,Gn)},kR=(Mn,Vn)=>Mn?uL(Vn):Ql(Vn),Tk=(Mn,Vn)=>{const Wn=lr.fromRangeStart(Mn.selection.getRng());return kR(Vn,Wn)||vh(Vn,Mn.getBody(),Wn).exists(jn=>kR(Vn,jn))},VL=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Mn.getBody());return aE(jn,Wn).fold(()=>HL(Mn,Vn,jn,Wn).orThunk(()=>El(Tk(Mn,Vn),Js)),Gn=>QL(Mn,Vn,jn,Gn))},lE=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.selection.getStart(!0)),jn=x_(Mn);return Mn.selection.isCollapsed()&&jn.length===0?VL(Mn,Vn,Wn):IL(Mn,Wn,jn)},Nw=(Mn,Vn)=>{let Wn=Vn;for(;Wn&&Wn!==Mn;){if(Gf(Wn)||jl(Wn))return Wn;Wn=Wn.parentNode}return null},F9=["data-ephox-","data-mce-","data-alloy-","data-snooker-","_"],zL=Lr.each,RA=Mn=>{const Vn=Mn.dom,Wn=new Set(Mn.serializer.getTempAttrs()),jn=(no,ao)=>{if(no.nodeName!==ao.nodeName||no.nodeType!==ao.nodeType)return!1;const po=Ao=>{const Fo={};return zL(Vn.getAttribs(Ao),Qo=>{const qo=Qo.nodeName.toLowerCase();qo!=="style"&&!Gn(qo)&&(Fo[qo]=Vn.getAttrib(Ao,qo))}),Fo},vo=(Ao,Fo)=>{for(const Qo in Ao)if(Mr(Ao,Qo)){const qo=Fo[Qo];if(ls(qo)||Ao[Qo]!==qo)return!1;delete Fo[Qo]}for(const Qo in Fo)if(Mr(Fo,Qo))return!1;return!0};return Oa(no)&&Oa(ao)&&(!vo(po(no),po(ao))||!vo(Vn.parseStyle(Vn.getAttrib(no,"style")),Vn.parseStyle(Vn.getAttrib(ao,"style"))))?!1:!hg(no)&&!hg(ao)},Gn=no=>Sr(F9,ao=>Dc(no,ao))||Wn.has(no);return{compare:jn,isAttributeInternal:Gn}},xR=Mn=>["h1","h2","h3","h4","h5","h6"].includes(Mn.name),DA=Mn=>Mn.name==="summary",WL=(Mn,Vn)=>{let Wn=Mn;for(;Wn=Wn.walk();)Vn(Wn)},ER=(Mn,Vn,Wn,jn)=>{const Gn=Wn.name;for(let no=0,ao=Mn.length;no{const jn={nodes:{},attributes:{}};return Wn.firstChild&&WL(Wn,Gn=>{ER(Mn,Vn,Gn,jn)}),jn},TR=(Mn,Vn)=>{const Wn=(jn,Gn)=>{Rr(jn,no=>{const ao=kc(no.nodes);fs(no.filter.callbacks,po=>{for(let vo=ao.length-1;vo>=0;vo--){const Ao=ao[vo];(!(Gn?Ao.attr(no.filter.name)!==void 0:Ao.name===no.filter.name)||ps(Ao.parent))&&ao.splice(vo,1)}ao.length>0&&po(ao,no.filter.name,Vn)})})};Wn(Mn.nodes,!1),Wn(Mn.attributes,!0)},AR=(Mn,Vn,Wn,jn={})=>{const Gn=UL(Mn,Vn,Wn);TR(Gn,jn)},MA=(Mn,Vn,Wn,jn)=>{if((Mn.pad_empty_with_br||Vn.insert)&&Wn(jn)){const no=new fp("br",1);Vn.insert&&no.attr("data-mce-bogus","1"),jn.empty().append(no)}else jn.empty().append(new fp("#text",3)).value=hc},ZL=Mn=>{var Vn;return PR(Mn,"#text")&&((Vn=Mn==null?void 0:Mn.firstChild)===null||Vn===void 0?void 0:Vn.value)===hc},PR=(Mn,Vn)=>{const Wn=Mn==null?void 0:Mn.firstChild;return rs(Wn)&&Wn===Mn.lastChild&&Wn.name===Vn},qL=(Mn,Vn)=>{const Wn=Mn.getElementRule(Vn.name);return(Wn==null?void 0:Wn.paddEmpty)===!0},Ak=(Mn,Vn,Wn,jn)=>jn.isEmpty(Vn,Wn,Gn=>qL(Mn,Gn)),$R=(Mn,Vn)=>rs(Mn)&&(Vn(Mn)||Mn.name==="br"),jL=Mn=>{let Vn;for(let Wn=Mn;Wn;Wn=Wn.parent){const jn=Wn.attr("contenteditable");if(jn==="false")break;jn==="true"&&(Vn=Wn)}return zo.from(Vn)},NA=(Mn,Vn,Wn=Mn.parent)=>{if(Vn.getSpecialElements()[Mn.name])Mn.empty().remove();else{const jn=Mn.children();for(const Gn of jn)Wn&&!Vn.isValidChild(Wn.name,Gn.name)&&NA(Gn,Vn,Wn);Mn.unwrap()}},LA=(Mn,Vn,Wn,jn=Js)=>{const Gn=Vn.getTextBlockElements(),no=Vn.getNonEmptyElements(),ao=Vn.getWhitespaceElements(),po=Lr.makeMap("tr,td,th,tbody,thead,tfoot,table,summary"),vo=new Set,Ao=Fo=>Fo!==Wn&&!po[Fo.name];for(let Fo=0;Fo1)if(IA(Vn,Qo,qo))NA(Qo,Vn);else{as.reverse(),ds=as[0].clone(),jn(ds);let ys=ds;for(let Ls=0;Ls0?(bs=as[Ls].clone(),jn(bs),ys.append(bs)):bs=ys;for(let zs=as[Ls].firstChild;zs&&zs!==as[Ls+1];){const Hs=zs.next;bs.append(zs),zs=Hs}ys=bs}Ak(Vn,no,ao,ds)?qo.insert(Qo,as[0],!0):(qo.insert(ds,as[0],!0),qo.insert(Qo,ds)),qo=as[0],(Ak(Vn,no,ao,qo)||PR(qo,"br"))&&qo.empty().remove()}else if(Qo.parent){if(Qo.name==="li"){let ys=Qo.prev;if(ys&&(ys.name==="ul"||ys.name==="ol")){ys.append(Qo);continue}if(ys=Qo.next,ys&&(ys.name==="ul"||ys.name==="ol")&&ys.firstChild){ys.insert(Qo,ys.firstChild,!0);continue}const Ls=new fp("ul",1);jn(Ls),Qo.wrap(Ls);continue}if(Vn.isValidChild(Qo.parent.name,"div")&&Vn.isValidChild("div",Qo.name)){const ys=new fp("div",1);jn(ys),Qo.wrap(ys)}else NA(Qo,Vn)}}},XL=(Mn,Vn)=>{let Wn=Mn;for(;Wn;){if(Wn.name===Vn)return!0;Wn=Wn.parent}return!1},IA=(Mn,Vn,Wn=Vn.parent)=>Wn?Mn.children[Vn.name]&&!Mn.isValidChild(Wn.name,Vn.name)||Vn.name==="a"&&XL(Wn,"a")?!0:DA(Wn)&&xR(Vn)?!((Wn==null?void 0:Wn.firstChild)===Vn&&(Wn==null?void 0:Wn.lastChild)===Vn):!1:!1,YL=(Mn,Vn,Wn,jn)=>{const Gn=document.createRange();return Gn.setStart(Mn,Vn),Gn.setEnd(Wn,jn),Gn},RR=Mn=>{const Vn=lr.fromRangeStart(Mn),Wn=lr.fromRangeEnd(Mn),jn=Mn.commonAncestorContainer;return vh(!1,jn,Wn).map(Gn=>!jr(Vn,Wn,jn)&&jr(Vn,Gn,jn)?YL(Vn.container(),Vn.offset(),Gn.container(),Gn.offset()):Mn).getOr(Mn)},Pk=Mn=>Mn.collapsed?Mn:RR(Mn),BA=Mn=>rs(Mn.firstChild)&&Mn.firstChild===Mn.lastChild,FA=Mn=>Mn.name==="br"||Mn.value===hc,GL=(Mn,Vn)=>Mn.getBlockElements()[Vn.name]&&BA(Vn)&&FA(Vn.firstChild),HA=(Mn,Vn)=>{const Wn=Mn.getNonEmptyElements();return rs(Vn)&&(Vn.isEmpty(Wn)||GL(Mn,Vn))},DR=(Mn,Vn)=>{let Wn=Vn.firstChild,jn=Vn.lastChild;return Wn&&Wn.name==="meta"&&(Wn=Wn.next),jn&&jn.attr("id")==="mce_marker"&&(jn=jn.prev),HA(Mn,jn)&&(jn=jn==null?void 0:jn.prev),!Wn||Wn!==jn?!1:Wn.name==="ul"||Wn.name==="ol"},cE=Mn=>{var Vn,Wn;const jn=Mn.firstChild,Gn=Mn.lastChild;return jn&&jn.nodeName==="META"&&((Vn=jn.parentNode)===null||Vn===void 0||Vn.removeChild(jn)),Gn&&Gn.id==="mce_marker"&&((Wn=Gn.parentNode)===null||Wn===void 0||Wn.removeChild(Gn)),Mn},MR=(Mn,Vn,Wn)=>{const jn=Vn.serialize(Wn),Gn=Mn.createFragment(jn);return cE(Gn)},KL=Mn=>{var Vn;return nr((Vn=Mn==null?void 0:Mn.childNodes)!==null&&Vn!==void 0?Vn:[],Wn=>Wn.nodeName==="LI")},$k=Mn=>Mn.data===hc||Ec(Mn),NR=Mn=>rs(Mn==null?void 0:Mn.firstChild)&&Mn.firstChild===Mn.lastChild&&$k(Mn.firstChild),LR=Mn=>!Mn.firstChild||NR(Mn),uE=Mn=>Mn.length>0&&LR(Mn[Mn.length-1])?Mn.slice(0,-1):Mn,gy=(Mn,Vn)=>{const Wn=Mn.getParent(Vn,Mn.isBlock);return Wn&&Wn.nodeName==="LI"?Wn:null},JL=(Mn,Vn)=>!!gy(Mn,Vn),H9=(Mn,Vn)=>{const Wn=Vn.cloneRange(),jn=Vn.cloneRange();return Wn.setStartBefore(Mn),jn.setEndAfter(Mn),[Wn.cloneContents(),jn.cloneContents()]},e5=(Mn,Vn)=>{const Wn=lr.before(Mn),Gn=ub(Vn).next(Wn);return Gn?Gn.toRange():null},IR=(Mn,Vn)=>{const Wn=lr.after(Mn),Gn=ub(Vn).prev(Wn);return Gn?Gn.toRange():null},Q9=(Mn,Vn,Wn,jn)=>{const Gn=H9(Mn,jn),no=Mn.parentNode;return no&&(no.insertBefore(Gn[0],Mn),Lr.each(Vn,ao=>{no.insertBefore(ao,Mn)}),no.insertBefore(Gn[1],Mn),no.removeChild(Mn)),IR(Vn[Vn.length-1],Wn)},QY=(Mn,Vn,Wn)=>{const jn=Mn.parentNode;return jn&&Lr.each(Vn,Gn=>{jn.insertBefore(Gn,Mn)}),e5(Mn,Wn)},V9=(Mn,Vn,Wn,jn)=>(jn.insertAfter(Vn.reverse(),Mn),IR(Vn[0],Wn)),BR=(Mn,Vn,Wn,jn)=>{const Gn=MR(Vn,Mn,jn),no=gy(Vn,Wn.startContainer),ao=uE(KL(Gn.firstChild)),po=1,vo=2,Ao=Vn.getRoot(),Fo=Qo=>{const qo=lr.fromRangeStart(Wn),ds=ub(Vn.getRoot()),bs=Qo===po?ds.prev(qo):ds.next(qo),as=bs==null?void 0:bs.getNode();return as?gy(Vn,as)!==no:!0};return no?Fo(po)?QY(no,ao,Ao):Fo(vo)?V9(no,ao,Ao,Vn):Q9(no,ao,Ao,Wn):null},sv=["pre"],FR=(Mn,Vn,Wn,jn)=>{var Gn;const no=Vn.firstChild,ao=Vn.lastChild,po=ao.attr("data-mce-type")==="bookmark"?ao.prev:ao,vo=no===po,Ao=Zs(sv,no.name);if(vo&&Ao){const Fo=no.attr("contenteditable")!=="false",Qo=((Gn=Mn.getParent(Wn,Mn.isBlock))===null||Gn===void 0?void 0:Gn.nodeName.toLowerCase())===no.name,qo=zo.from(Nw(jn,Wn)).forall(Gf);return Fo&&Qo&&qo}else return!1},Rk=L1,HR=(Mn,Vn,Wn)=>{if(rs(Wn)){const jn=Mn.getParent(Vn.endContainer,Rk);return Wn===jn&&kx(Cs.fromDom(Wn),Vn)}else return!1},z9=(Mn,Vn,Wn)=>{var jn;if(Wn.getAttribute("data-mce-bogus")==="all")(jn=Wn.parentNode)===null||jn===void 0||jn.insertBefore(Mn.dom.createFragment(Vn),Wn);else{const Gn=Wn.firstChild,no=Wn.lastChild;!Gn||Gn===no&&Gn.nodeName==="BR"?Mn.dom.setHTML(Wn,Vn):Mn.selection.setContent(Vn,{no_events:!0})}},t5=(Mn,Vn,Wn)=>{zo.from(Mn.getParent(Vn,"td,th")).map(Cs.fromDom).each(jn=>Ua(jn,Wn))},W9=(Mn,Vn)=>{const Wn=Mn.schema.getTextInlineElements(),jn=Mn.dom;if(Vn){const Gn=Mn.getBody(),no=RA(Mn);Lr.each(jn.select("*[data-mce-fragment]"),ao=>{if(rs(Wn[ao.nodeName.toLowerCase()])&&qx(jn,ao)){for(let vo=ao.parentElement;rs(vo)&&vo!==Gn&&!KH(jn,ao,vo);vo=vo.parentElement)if(no.compare(vo,ao)){jn.remove(ao,!0);break}}})}},n5=Mn=>{let Vn=Mn;for(;Vn=Vn.walk();)Vn.type===1&&Vn.attr("data-mce-fragment","1")},QR=Mn=>{Lr.each(Mn.getElementsByTagName("*"),Vn=>{Vn.removeAttribute("data-mce-fragment")})},U9=Mn=>!!Mn.getAttribute("data-mce-fragment"),o5=(Mn,Vn)=>rs(Vn)&&!Mn.schema.getVoidElements()[Vn.nodeName],Z9=(Mn,Vn)=>{var Wn,jn,Gn;let no;const ao=Mn.dom,po=Mn.selection;if(!Vn)return;po.scrollIntoView(Vn);const vo=Nw(Mn.getBody(),Vn);if(vo&&ao.getContentEditable(vo)==="false"){ao.remove(Vn),po.select(vo);return}let Ao=ao.createRng();const Fo=Vn.previousSibling;if(Ir(Fo)){Ao.setStart(Fo,(jn=(Wn=Fo.nodeValue)===null||Wn===void 0?void 0:Wn.length)!==null&&jn!==void 0?jn:0);const ds=Vn.nextSibling;Ir(ds)&&(Fo.appendData(ds.data),(Gn=ds.parentNode)===null||Gn===void 0||Gn.removeChild(ds))}else Ao.setStartBefore(Vn),Ao.setEndBefore(Vn);const Qo=ds=>{let bs=lr.fromRangeStart(ds);return bs=ub(Mn.getBody()).next(bs),bs==null?void 0:bs.toRange()},qo=ao.getParent(Vn,ao.isBlock);if(ao.remove(Vn),qo&&ao.isEmpty(qo)){const ds=Rk(qo);Dm(Cs.fromDom(qo)),Ao.setStart(qo,0),Ao.setEnd(qo,0),!ds&&!U9(qo)&&(no=Qo(Ao))?(Ao=no,ao.remove(qo)):ao.add(qo,ao.create("br",ds?{}:{"data-mce-bogus":"1"}))}po.setRng(Ao)},dE=Mn=>{const Vn=Mn.dom,Wn=Pk(Mn.selection.getRng());Mn.selection.setRng(Wn);const jn=Vn.getParent(Wn.startContainer,Rk);HR(Vn,Wn,jn)?qg(Mn,Wn,Cs.fromDom(jn)):Wn.startContainer===Wn.endContainer&&Wn.endOffset-Wn.startOffset===1&&Ir(Wn.startContainer.childNodes[Wn.startOffset])?Wn.deleteContents():Mn.getDoc().execCommand("Delete",!1)},s5=Mn=>{for(let Vn=Mn;Vn;Vn=Vn.walk())if(Vn.attr("id")==="mce_marker")return zo.some(Vn);return zo.none()},q9=(Mn,Vn,Wn)=>{var jn;return Sr(Wn.children(),xR)&&((jn=Mn.getParent(Vn,Mn.isBlock))===null||jn===void 0?void 0:jn.nodeName)==="SUMMARY"},r5=(Mn,Vn,Wn)=>{var jn,Gn;const no=Mn.selection,ao=Mn.dom,po=Mn.parser,vo=Wn.merge,Ao=I_({validate:!0},Mn.schema),Fo='';Wn.preserve_zwsp||(Vn=Xo(Vn)),Vn.indexOf("{$caret}")===-1&&(Vn+="{$caret}"),Vn=Vn.replace(/\{\$caret\}/,Fo);let Qo=no.getRng();const qo=Qo.startContainer,ds=Mn.getBody();qo===ds&&no.isCollapsed()&&ao.isBlock(ds.firstChild)&&o5(Mn,ds.firstChild)&&ao.isEmpty(ds.firstChild)&&(Qo=ao.createRng(),Qo.setStart(ds.firstChild,0),Qo.setEnd(ds.firstChild,0),no.setRng(Qo)),no.isCollapsed()||dE(Mn);const bs=no.getNode(),as={context:bs.nodeName.toLowerCase(),data:Wn.data,insert:!0},ys=po.parse(Vn,as);if(Wn.paste===!0&&DR(Mn.schema,ys)&&JL(ao,bs))return Qo=BR(Ao,ao,no.getRng(),ys),Qo&&no.setRng(Qo),Vn;Wn.paste===!0&&FR(ao,ys,bs,Mn.getBody())&&((jn=ys.firstChild)===null||jn===void 0||jn.unwrap()),n5(ys);let Ls=ys.lastChild;if(Ls&&Ls.attr("id")==="mce_marker"){const zs=Ls;for(Ls=Ls.prev;Ls;Ls=Ls.walk(!0))if(Ls.type===3||!ao.isBlock(Ls.name)){Ls.parent&&Mn.schema.isValidChild(Ls.parent.name,"span")&&Ls.parent.insert(zs,Ls,Ls.name==="br");break}}if(Mn._selectionOverrides.showBlockCaretContainer(bs),!as.invalid&&!q9(ao,bs,ys))Vn=Ao.serialize(ys),z9(Mn,Vn,bs);else{Mn.selection.setContent(Fo);let zs=no.getNode(),Hs;const tr=Mn.getBody();for(Nm(zs)?zs=Hs=tr:Hs=zs;Hs&&Hs!==tr;)zs=Hs,Hs=Hs.parentNode;Vn=zs===tr?tr.innerHTML:ao.getOuterHTML(zs);const Pr=po.parse(Vn),Ur=s5(Pr),fa=Ur.bind(jL).getOr(Pr);Ur.each(wa=>wa.replace(ys));const yr=ys.children(),fr=(Gn=ys.parent)!==null&&Gn!==void 0?Gn:Pr;ys.unwrap();const Ar=nr(yr,wa=>IA(Mn.schema,wa,fr));LA(Ar,Mn.schema,fa),AR(po.getNodeFilters(),po.getAttributeFilters(),Pr),Vn=Ao.serialize(Pr),zs===tr?ao.setHTML(tr,Vn):ao.setOuterHTML(zs,Vn)}return W9(Mn,vo),Z9(Mn,ao.get("mce_marker")),QR(Mn.getBody()),t5(ao,no.getStart(),Mn.schema),xv(Mn.schema,Mn.getBody(),no.getStart()),Vn},QA=Mn=>Mn instanceof fp,j9=Mn=>{L_(Mn)&&zm(Mn.getBody()).each(Vn=>{const Wn=Vn.getNode(),jn=Gp(Wn)?zm(Wn).getOr(Vn):Vn;Mn.selection.setRng(jn.toRange())})},VR=(Mn,Vn,Wn)=>{Mn.dom.setHTML(Mn.getBody(),Vn),Wn!==!0&&j9(Mn)},X9=(Mn,Vn,Wn,jn)=>{if(Wn=Xo(Wn),Wn.length===0||/^\s+$/.test(Wn)){const Gn='
';Vn.nodeName==="TABLE"?Wn=""+Gn+"":/^(UL|OL)$/.test(Vn.nodeName)&&(Wn="
  • "+Gn+"
  • ");const no=bh(Mn);return Mn.schema.isValidChild(Vn.nodeName.toLowerCase(),no.toLowerCase())?(Wn=Gn,Wn=Mn.dom.createHTML(no,Zb(Mn),Wn)):Wn||(Wn=Gn),VR(Mn,Wn,jn.no_selection),{content:Wn,html:Wn}}else{jn.format!=="raw"&&(Wn=I_({validate:!1},Mn.schema).serialize(Mn.parser.parse(Wn,{isRootContent:!0,insert:!0})));const Gn=Xd(Cs.fromDom(Vn))?Wn:Lr.trim(Wn);return VR(Mn,Gn,jn.no_selection),{content:Gn,html:Gn}}},Y9=(Mn,Vn,Wn,jn)=>{AR(Mn.parser.getNodeFilters(),Mn.parser.getAttributeFilters(),Wn);const Gn=I_({validate:!1},Mn.schema).serialize(Wn),no=Xo(Xd(Cs.fromDom(Vn))?Gn:Lr.trim(Gn));return VR(Mn,no,jn.no_selection),{content:Wn,html:no}},i5=(Mn,Vn,Wn)=>zo.from(Mn.getBody()).map(jn=>QA(Vn)?Y9(Mn,jn,Vn,Wn):X9(Mn,jn,Vn,Wn)).getOr({content:Vn,html:QA(Wn.content)?"":Wn.content}),a5=Mn=>Yo(Mn)?Mn:hs,zR=(Mn,Vn,Wn)=>{let jn=Mn.dom;const Gn=a5(Wn);for(;jn.parentNode;){jn=jn.parentNode;const no=Cs.fromDom(jn),ao=Vn(no);if(ao.isSome())return ao;if(Gn(no))break}return zo.none()},OO=(Mn,Vn,Wn)=>{const jn=Vn(Mn),Gn=a5(Wn);return jn.orThunk(()=>Gn(Mn)?zo.none():zR(Mn,Vn,Gn))},WR=lk,l5=(Mn,Vn,Wn)=>{const jn=Mn.formatter.get(Wn);if(jn)for(let Gn=0;Gn{const no=Mn.dom.getRoot();if(Vn===no)return!1;const ao=Mn.dom.getParent(Vn,po=>l5(Mn,po,Wn)?!0:po.parentNode===no||!!by(Mn,po,Wn,jn,!0));return!!by(Mn,ao,Wn,jn,Gn)},fE=(Mn,Vn,Wn)=>Sf(Wn)&&WR(Vn,Wn.inline)||hb(Wn)&&WR(Vn,Wn.block)?!0:Nh(Wn)?Oa(Vn)&&Mn.is(Vn,Wn.selector):!1,UR=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=Wn[jn],po=jn==="attributes";if(Yo(Wn.onmatch))return Wn.onmatch(Vn,Wn,jn);if(ao){if(Rc(ao)){for(let vo=0;vo{const no=Mn.formatter.get(Wn),ao=Mn.dom;if(no&&Oa(Vn))for(let po=0;po{if(jn)return Dk(Mn,jn,Vn,Wn,Gn);if(jn=Mn.selection.getNode(),Dk(Mn,jn,Vn,Wn,Gn))return!0;const no=Mn.selection.getStart();return!!(no!==jn&&Dk(Mn,no,Vn,Wn,Gn))},G9=(Mn,Vn,Wn)=>{const jn=[],Gn={},no=Mn.selection.getStart();return Mn.dom.getParent(no,ao=>{for(let po=0;po{const Wn=Gn=>Vs(Gn,Cs.fromDom(Mn.getBody())),jn=(Gn,no)=>by(Mn,Gn.dom,no)?zo.some(no):zo.none();return zo.from(Mn.selection.getStart(!0)).bind(Gn=>OO(Cs.fromDom(Gn),no=>Yl(Vn,ao=>jn(no,ao)),Wn)).getOrNull()},c5=(Mn,Vn)=>{const Wn=Mn.formatter.get(Vn),jn=Mn.dom;if(Wn&&Mn.selection.isEditable()){const Gn=Mn.selection.getStart(),no=hw(jn,Gn);for(let ao=Wn.length-1;ao>=0;ao--){const po=Wn[ao];if(!Nh(po))return!0;for(let vo=no.length-1;vo>=0;vo--)if(jn.is(no[vo],po.selector))return!0}}return!1},u5=(Mn,Vn,Wn)=>ra(Wn,(jn,Gn)=>{const no=Ax(Mn,Gn);return Mn.formatter.matchNode(Vn,Gn,{},no)?jn.concat([Gn]):jn},[]),Mk=_o,zA=(Mn,Vn)=>Mn.importNode(Vn,!0),ZR=Mn=>{if(Mn){const Vn=new mu(Mn,Mn);for(let Wn=Vn.current();Wn;Wn=Vn.next())if(Ir(Wn))return Wn}return null},qR=Mn=>{const Vn=Cs.fromTag("span");return im(Vn,{id:ek,"data-mce-bogus":"1","data-mce-type":"format-caret"}),Mn&&Fu(Vn,Cs.fromText(Mk)),Vn},d5=Mn=>{const Vn=ZR(Mn);return Vn&&Vn.data.charAt(0)===Mk&&Vn.deleteData(0,1),Vn},jR=(Mn,Vn,Wn)=>{const jn=Mn.dom,Gn=Mn.selection;if(pw(Vn))yO(Mn,!1,Cs.fromDom(Vn),Wn,!0);else{const no=Gn.getRng(),ao=jn.getParent(Vn,jn.isBlock),po=no.startContainer,vo=no.startOffset,Ao=no.endContainer,Fo=no.endOffset,Qo=d5(Vn);jn.remove(Vn,!0),po===Qo&&vo>0&&no.setStart(Qo,vo-1),Ao===Qo&&Fo>0&&no.setEnd(Qo,Fo-1),ao&&jn.isEmpty(ao)&&Kp(Cs.fromDom(ao)),Gn.setRng(no)}},XR=(Mn,Vn,Wn)=>{const jn=Mn.dom,Gn=Mn.selection;if(Vn)jR(Mn,Vn,Wn);else if(Vn=cO(Mn.getBody(),Gn.getStart()),!Vn)for(;Vn=jn.get(ek);)jR(Mn,Vn,Wn)},WA=(Mn,Vn,Wn)=>{var jn,Gn;const no=Mn.dom,ao=no.getParent(Wn,ws(Nf,Mn.schema));ao&&no.isEmpty(ao)?(jn=Wn.parentNode)===null||jn===void 0||jn.replaceChild(Vn,Wn):(Iy(Cs.fromDom(Wn)),no.isEmpty(Wn)?(Gn=Wn.parentNode)===null||Gn===void 0||Gn.replaceChild(Vn,Wn):no.insertAfter(Vn,Wn))},YR=(Mn,Vn)=>(Mn.appendChild(Vn),Vn),UA=(Mn,Vn)=>{var Wn;const jn=Kr(Mn,(no,ao)=>YR(no,ao.cloneNode(!1)),Vn),Gn=(Wn=jn.ownerDocument)!==null&&Wn!==void 0?Wn:document;return YR(jn,Gn.createTextNode(Mk))},K9=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=Mn.formatter,po=Mn.dom,vo=nr(Al(ao.get()),Qo=>Qo!==jn&&!oc(Qo,"removeformat")),Ao=u5(Mn,Wn,vo);if(nr(Ao,Qo=>!k3(Mn,Qo,jn)).length>0){const Qo=Wn.cloneNode(!1);return po.add(Vn,Qo),ao.remove(jn,Gn,Qo,no),po.remove(Qo),zo.some(Qo)}else return zo.none()},J9=(Mn,Vn,Wn)=>{let jn;const Gn=Mn.selection,no=Mn.formatter.get(Vn);if(!no)return;const ao=Gn.getRng();let po=ao.startOffset;const Ao=ao.startContainer.nodeValue;jn=cO(Mn.getBody(),Gn.getStart());const Fo=/[^\s\u00a0\u00ad\u200b\ufeff]/;if(Ao&&po>0&&po{const Gn=Mn.dom,no=Mn.selection;let ao=!1;const po=Mn.formatter.get(Vn);if(!po)return;const vo=no.getRng(),Ao=vo.startContainer,Fo=vo.startOffset;let Qo=Ao;Ir(Ao)&&(Fo!==Ao.data.length&&(ao=!0),Qo=Qo.parentNode);const qo=[];let ds;for(;Qo;){if(by(Mn,Qo,Vn,Wn,jn)){ds=Qo;break}Qo.nextSibling&&(ao=!0),qo.push(Qo),Qo=Qo.parentNode}if(ds)if(ao){const bs=no.getBookmark();vo.collapse(!0);let as=X0(Gn,vo,po,!0);as=Zo(as),Mn.formatter.remove(Vn,Wn,as,jn),no.moveToBookmark(bs)}else{const bs=cO(Mn.getBody(),ds),as=rs(bs)?Gn.getParents(ds.parentNode,Qs,bs):[],ys=qR(!1).dom;WA(Mn,ys,bs??ds);const Ls=K9(Mn,ys,ds,Vn,Wn,jn),zs=UA([...qo,...Ls.toArray(),...as],ys);bs&&jR(Mn,bs,rs(bs)),no.setCursorLocation(zs,1),Gn.isEmpty(ds)&&Gn.remove(ds)}},GR=(Mn,Vn,Wn)=>{const jn=Mn.selection,Gn=Mn.getBody();XR(Mn,null,Wn),(Vn===8||Vn===46)&&jn.isCollapsed()&&jn.getStart().innerHTML===Mk&&XR(Mn,cO(Gn,jn.getStart()),!0),(Vn===37||Vn===39)&&XR(Mn,cO(Gn,jn.getStart()),!0)},h5=Mn=>Ir(Mn)&&bd(Mn.data,hc),eQ=Mn=>{Mn.on("mouseup keydown",Vn=>{GR(Mn,Vn.keyCode,h5(Mn.selection.getRng().endContainer))})},m5=Mn=>{const Vn=qR(!1),Wn=UA(Mn,Vn.dom);return{caretContainer:Vn,caretPosition:lr(Wn,0)}},p5=(Mn,Vn)=>{const{caretContainer:Wn,caretPosition:jn}=m5(Vn);return ed(Cs.fromDom(Mn),Wn),sc(Cs.fromDom(Mn)),jn},ZA=(Mn,Vn)=>{const{caretContainer:Wn,caretPosition:jn}=m5(Vn);return Mn.insertNode(Wn.dom),jn},vy=(Mn,Vn)=>{if(fg(Vn.dom))return!1;const Wn=Mn.schema.getTextInlineElements();return Mr(Wn,ql(Vn))&&!fg(Vn.dom)&&!Jm(Vn.dom)},hE={},qA=Ad(["pre"]),wf=(Mn,Vn)=>{hE[Mn]||(hE[Mn]=[]),hE[Mn].push(Vn)},KR=(Mn,Vn)=>{Mr(hE,Mn)&&fs(hE[Mn],Wn=>{Wn(Vn)})};wf("pre",Mn=>{const Vn=Mn.selection.getRng(),Wn=Gn=>no=>{const ao=no.previousSibling;return qA(ao)&&Zs(Gn,ao)},jn=(Gn,no)=>{const ao=Cs.fromDom(no),po=Fa(ao).dom;sc(ao),Lc(Cs.fromDom(Gn),[Cs.fromTag("br",po),Cs.fromTag("br",po),...Ku(ao)])};if(!Vn.collapsed){const Gn=Mn.selection.getSelectedBlocks(),no=nr(nr(Gn,qA),Wn(Gn));fs(no,ao=>{jn(ao.previousSibling,ao)})}});const jA=["fontWeight","fontStyle","color","fontSize","fontFamily"],_O=Mn=>Bo(Mn.styles)&&Sr(Al(Mn.styles),Vn=>Zs(jA,Vn)),g5=Mn=>xa(Mn,Vn=>Sf(Vn)&&Vn.inline==="span"&&_O(Vn)),JR=(Mn,Vn)=>{const Wn=Mn.get(Vn);return Ko(Wn)?g5(Wn):zo.none()},Nk=(Mn,Vn)=>cp(Vn,lr.fromRangeStart(Mn)).isNone(),b5=(Mn,Vn)=>Sm(Vn,lr.fromRangeEnd(Mn)).exists(Wn=>!Ec(Wn.getNode())||Sm(Vn,Wn).isSome())===!1,v5=Mn=>Vn=>C0(Vn)&&Mn.isEditable(Vn),Lk=Mn=>{const Vn=Mn.getSelectedBlocks(),Wn=Mn.getRng();if(Mn.isCollapsed())return[];if(Vn.length===1)return Nk(Wn,Vn[0])&&b5(Wn,Vn[0])?Vn:[];{const jn=qa(Vn).filter(ao=>Nk(Wn,ao)).toArray(),Gn=Ya(Vn).filter(ao=>b5(Wn,ao)).toArray(),no=Vn.slice(1,-1);return jn.concat(no).concat(Gn)}},tQ=Mn=>nr(Lk(Mn),v5(Mn.dom)),F_=Mn=>nr(Mn.getSelectedBlocks(),v5(Mn.dom)),eD=Lr.each,yy=Mn=>Oa(Mn)&&!hg(Mn)&&!fg(Mn)&&!Jm(Mn),S1=(Mn,Vn)=>{for(let Wn=Mn;Wn;Wn=Wn[Vn]){if(Ir(Wn)&&fc(Wn.data))return Mn;if(Oa(Wn)&&!hg(Wn))return Wn}return Mn},mE=(Mn,Vn,Wn)=>{const jn=RA(Mn),Gn=pf(Vn)&&Mn.dom.isEditable(Vn),no=pf(Wn)&&Mn.dom.isEditable(Wn);if(Gn&&no){const ao=S1(Vn,"previousSibling"),po=S1(Wn,"nextSibling");if(jn.compare(ao,po)){for(let vo=ao.nextSibling;vo&&vo!==po;){const Ao=vo;vo=vo.nextSibling,ao.appendChild(Ao)}return Mn.dom.remove(po),Lr.each(Lr.grep(po.childNodes),vo=>{ao.appendChild(vo)}),ao}}return Wn},XA=(Mn,Vn,Wn,jn)=>{var Gn;if(jn&&Vn.merge_siblings!==!1){const no=(Gn=mE(Mn,da(jn),jn))!==null&&Gn!==void 0?Gn:jn;mE(Mn,no,da(no,!0))}},nQ=(Mn,Vn,Wn)=>{if(Vn.clear_child_styles){const jn=Vn.links?"*:not(a)":"*";eD(Mn.select(jn,Wn),Gn=>{yy(Gn)&&Mn.isEditable(Gn)&&eD(Vn.styles,(no,ao)=>{Mn.setStyle(Gn,ao,"")})})}},tD=(Mn,Vn,Wn)=>{eD(Mn.childNodes,jn=>{yy(jn)&&(Vn(jn)&&Wn(jn),jn.hasChildNodes()&&tD(jn,Vn,Wn))})},YA=(Mn,Vn)=>{Vn.nodeName==="SPAN"&&Mn.getAttribs(Vn).length===0&&Mn.remove(Vn,!0)},y5=(Mn,Vn)=>Wn=>!!(Wn&&E_(Mn,Wn,Vn)),pb=(Mn,Vn,Wn)=>jn=>{Mn.setStyle(jn,Vn,Wn),jn.getAttribute("style")===""&&jn.removeAttribute("style"),YA(Mn,jn)},Oy=Qg.generate([{keep:[]},{rename:["name"]},{removed:[]}]),O5=/^(src|href|style)$/,pE=Lr.each,Ik=lk,Iw=Mn=>/^(TR|TH|TD)$/.test(Mn.nodeName),GA=(Mn,Vn,Wn)=>Mn.isChildOf(Vn,Wn)&&Vn!==Wn&&!Mn.isBlock(Wn),_5=(Mn,Vn,Wn)=>{let jn=Vn[Wn?"startContainer":"endContainer"],Gn=Vn[Wn?"startOffset":"endOffset"];if(Oa(jn)){const no=jn.childNodes.length-1;!Wn&&Gn&&Gn--,jn=jn.childNodes[Gn>no?no:Gn]}return Ir(jn)&&Wn&&Gn>=jn.data.length&&(jn=new mu(jn,Mn.getBody()).next()||jn),Ir(jn)&&!Wn&&Gn===0&&(jn=new mu(jn,Mn.getBody()).prev()||jn),jn},nD=(Mn,Vn)=>{const Wn=Vn?"firstChild":"lastChild",jn=Mn[Wn];return Iw(Mn)&&jn?Mn.nodeName==="TR"&&jn[Wn]||jn:Mn},oD=(Mn,Vn,Wn,jn)=>{var Gn;const no=Mn.create(Wn,jn);return(Gn=Vn.parentNode)===null||Gn===void 0||Gn.insertBefore(no,Vn),no.appendChild(Vn),no},S5=(Mn,Vn,Wn,jn,Gn)=>{const no=Cs.fromDom(Vn),ao=Cs.fromDom(Mn.create(jn,Gn)),po=Wn?Id(no):y0(no);return Lc(ao,po),Wn?(ed(no,ao),Gm(ao,no)):(fh(no,ao),Fu(ao,no)),ao.dom},oQ=(Mn,Vn)=>Vn.links&&Mn.nodeName==="A",w5=(Mn,Vn,Wn)=>{const jn=Vn.parentNode;let Gn;const no=Mn.dom,ao=bh(Mn);hb(Wn)&&jn===no.getRoot()&&(!Wn.list_block||!Ik(Vn,Wn.list_block))&&fs(kc(Vn.childNodes),po=>{j0(Mn,ao,po.nodeName.toLowerCase())?Gn?Gn.appendChild(po):(Gn=oD(no,po,ao),no.setAttribs(Gn,Zb(Mn))):Gn=null}),!(dk(Wn)&&!Ik(Wn.inline,Vn))&&no.remove(Vn,!0)},Bk=(Mn,Vn,Wn)=>Ys(Mn)?{name:Vn,value:null}:{name:Mn,value:fb(Vn,Wn)},C5=(Mn,Vn)=>{Mn.getAttrib(Vn,"style")===""&&(Vn.removeAttribute("style"),Vn.removeAttribute("data-mce-style"))},sD=(Mn,Vn,Wn,jn,Gn)=>{let no=!1;pE(Wn.styles,(ao,po)=>{const{name:vo,value:Ao}=Bk(po,ao,jn),Fo=ck(Ao,vo);(Wn.remove_similar||Mo(Ao)||!Oa(Gn)||Ik(E_(Mn,Gn,vo),Fo))&&Mn.setStyle(Vn,vo,""),no=!0}),no&&C5(Mn,Vn)},rD=(Mn,Vn,Wn)=>{Vn==="removeformat"?fs(F_(Mn.selection),jn=>{fs(jA,Gn=>Mn.dom.setStyle(jn,Gn,"")),C5(Mn.dom,jn)}):JR(Mn.formatter,Vn).each(jn=>{fs(F_(Mn.selection),Gn=>sD(Mn.dom,Gn,jn,Wn,null))})},k5=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.dom,ao=RA(Mn),po=Mn.schema;if(Sf(Vn)&&Ev(po,Vn.inline)&&Wl(po,jn)&&jn.parentElement===Mn.getBody())return w5(Mn,jn,Vn),Oy.removed();if(!Vn.ceFalseOverride&&jn&&no.getContentEditableParent(jn)==="false"||jn&&!fE(no,jn,Vn)&&!oQ(jn,Vn))return Oy.keep();const vo=jn,Ao=Vn.preserve_attributes;if(Sf(Vn)&&Vn.remove==="all"&&Ko(Ao)){const Fo=nr(no.getAttribs(vo),Qo=>Zs(Ao,Qo.name.toLowerCase()));if(no.removeAllAttribs(vo),fs(Fo,Qo=>no.setAttrib(vo,Qo.name,Qo.value)),Fo.length>0)return Oy.rename("span")}if(Vn.remove!=="all"){sD(no,vo,Vn,Wn,Gn),pE(Vn.attributes,(Qo,qo)=>{const{name:ds,value:bs}=Bk(qo,Qo,Wn);if(Vn.remove_similar||Mo(bs)||!Oa(Gn)||Ik(no.getAttrib(Gn,ds),bs)){if(ds==="class"){const as=no.getAttrib(vo,ds);if(as){let ys="";if(fs(as.split(/\s+/),Ls=>{/mce\-\w+/.test(Ls)&&(ys+=(ys?" ":"")+Ls)}),ys){no.setAttrib(vo,ds,ys);return}}}if(O5.test(ds)&&vo.removeAttribute("data-mce-"+ds),ds==="style"&&Ad(["li"])(vo)&&no.getStyle(vo,"list-style-type")==="none"){vo.removeAttribute(ds),no.setStyle(vo,"list-style-type","none");return}ds==="class"&&vo.removeAttribute("className"),vo.removeAttribute(ds)}}),pE(Vn.classes,Qo=>{Qo=fb(Qo,Wn),(!Oa(Gn)||no.hasClass(Gn,Qo))&&no.removeClass(vo,Qo)});const Fo=no.getAttribs(vo);for(let Qo=0;Qo{let no;return Vn.parentNode&&fs(hw(Mn.dom,Vn.parentNode).reverse(),ao=>{if(!no&&Oa(ao)&&ao.id!=="_start"&&ao.id!=="_end"){const po=by(Mn,ao,Wn,jn,Gn);po&&po.split!==!1&&(no=ao)}}),no},E5=(Mn,Vn,Wn,jn)=>k5(Mn,Vn,Wn,jn,jn).fold(xs(jn),Gn=>(Mn.dom.createFragment().appendChild(jn),Mn.dom.rename(jn,Gn)),xs(null)),sQ=(Mn,Vn,Wn,jn,Gn,no,ao,po)=>{var vo,Ao;let Fo,Qo;const qo=Mn.dom;if(Wn){const ds=Wn.parentNode;for(let bs=jn.parentNode;bs&&bs!==ds;bs=bs.parentNode){let as=qo.clone(bs,!1);for(let ys=0;ys{const no=Mn.formatter.get(Vn),ao=no[0],po=Mn.dom,vo=Mn.selection,Ao=as=>{const ys=x5(Mn,as,Vn,Wn,Gn);return sQ(Mn,no,ys,as,as,!0,ao,Wn)},Fo=as=>hg(as)&&Oa(as)&&(as.id==="_start"||as.id==="_end"),Qo=as=>Sr(no,ys=>gE(Mn,ys,Wn,as,as)),qo=as=>{const ys=kc(as.childNodes),zs=Qo(as)||Sr(no,Pr=>fE(po,as,Pr)),Hs=as.parentNode;if(!zs&&rs(Hs)&&mw(ao)&&Qo(Hs),ao.deep&&ys.length)for(let Pr=0;Pr{Oa(as)&&Mn.dom.getStyle(as,"text-decoration")===Pr&&as.parentNode&&WT(po,as.parentNode)===Pr&&gE(Mn,{deep:!1,exact:!0,inline:"span",styles:{textDecoration:Pr}},void 0,as)})},ds=as=>{const ys=po.get(as?"_start":"_end");if(ys){let Ls=ys[as?"firstChild":"lastChild"];return Fo(Ls)&&(Ls=Ls[as?"firstChild":"lastChild"]),Ir(Ls)&&Ls.data.length===0&&(Ls=as?ys.previousSibling||ys.nextSibling:ys.nextSibling||ys.previousSibling),po.remove(ys,!0),Ls}else return null},bs=as=>{let ys,Ls,zs=X0(po,as,no,as.collapsed);if(ao.split){if(zs=Zo(zs),ys=_5(Mn,zs,!0),Ls=_5(Mn,zs),ys!==Ls){if(ys=nD(ys,!0),Ls=nD(Ls,!1),GA(po,ys,Ls)){const tr=zo.from(ys.firstChild).getOr(ys);Ao(S5(po,tr,!0,"span",{id:"_start","data-mce-type":"bookmark"})),ds(!0);return}if(GA(po,Ls,ys)){const tr=zo.from(Ls.lastChild).getOr(Ls);Ao(S5(po,tr,!1,"span",{id:"_end","data-mce-type":"bookmark"})),ds(!1);return}ys=oD(po,ys,"span",{id:"_start","data-mce-type":"bookmark"}),Ls=oD(po,Ls,"span",{id:"_end","data-mce-type":"bookmark"});const Hs=po.createRng();Hs.setStartAfter(ys),Hs.setEndBefore(Ls),Ow(po,Hs,tr=>{fs(tr,Pr=>{!hg(Pr)&&!hg(Pr.parentNode)&&Ao(Pr)})}),Ao(ys),Ao(Ls),ys=ds(!0),Ls=ds()}else ys=Ls=Ao(ys);zs.startContainer=ys.parentNode?ys.parentNode:ys,zs.startOffset=po.nodeIndex(ys),zs.endContainer=Ls.parentNode?Ls.parentNode:Ls,zs.endOffset=po.nodeIndex(Ls)+1}Ow(po,zs,Hs=>{fs(Hs,qo)})};if(jn){if(uw(jn)){const as=po.createRng();as.setStartBefore(jn),as.setEndAfter(jn),bs(as)}else bs(jn);hO(Mn,Vn,jn,Wn);return}!vo.isCollapsed()||!Sf(ao)||x_(Mn).length?(dw(Mn,()=>dy(Mn,bs),as=>Sf(ao)&&VA(Mn,Vn,Wn,as)),Mn.nodeChanged()):f5(Mn,Vn,Wn,Gn),rD(Mn,Vn,Wn),hO(Mn,Vn,jn,Wn)},T5=(Mn,Vn,Wn,jn,Gn)=>{(jn||Mn.selection.isEditable())&&rQ(Mn,Vn,Wn,jn,Gn)},gE=(Mn,Vn,Wn,jn,Gn)=>k5(Mn,Vn,Wn,jn,Gn).fold(hs,no=>(Mn.dom.rename(jn,no),!0),Qs),A5=Lr.each,iQ=(Mn,Vn,Wn,jn)=>{const Gn=no=>{if(pf(no)&&Oa(no.parentNode)&&Mn.isEditable(no)){const ao=WT(Mn,no.parentNode);Mn.getStyle(no,"color")&&ao?Mn.setStyle(no,"text-decoration",ao):Mn.getStyle(no,"text-decoration")===ao&&Mn.setStyle(no,"text-decoration",null)}};Vn.styles&&(Vn.styles.color||Vn.styles.textDecoration)&&(Lr.walk(jn,Gn,"childNodes"),Gn(jn))},aQ=(Mn,Vn,Wn,jn)=>{if(Vn.styles&&Vn.styles.backgroundColor){const Gn=y5(Mn,"fontSize");tD(jn,no=>Gn(no)&&Mn.isEditable(no),pb(Mn,"backgroundColor",fb(Vn.styles.backgroundColor,Wn)))}},lQ=(Mn,Vn,Wn,jn)=>{if(Sf(Vn)&&(Vn.inline==="sub"||Vn.inline==="sup")){const Gn=y5(Mn,"fontSize");tD(jn,ao=>Gn(ao)&&Mn.isEditable(ao),pb(Mn,"fontSize",""));const no=nr(Mn.select(Vn.inline==="sup"?"sub":"sup",jn),Mn.isEditable);Mn.remove(no,!0)}},cQ=(Mn,Vn,Wn,jn)=>{A5(Vn,Gn=>{Sf(Gn)&&A5(Mn.dom.select(Gn.inline,jn),no=>{yy(no)&&gE(Mn,Gn,Wn,no,Gn.exact?no:null)}),nQ(Mn.dom,Gn,jn)})},uQ=(Mn,Vn,Wn,jn,Gn)=>{const no=Gn.parentNode;by(Mn,no,Wn,jn)&&gE(Mn,Vn,jn,Gn)||Vn.merge_with_parents&&no&&Mn.dom.getParent(no,ao=>by(Mn,ao,Wn,jn)?(gE(Mn,Vn,jn,Gn),!0):!1)},KA=Lr.each,dQ=(Mn,Vn,Wn,jn)=>{if(LC(Mn)&&Sf(Vn)&&Wn.parentNode){const Gn=dC(Mn.schema),no=$9(Cs.fromDom(Wn),ao=>fg(ao.dom));return il(Gn,jn)&&md(Cs.fromDom(Wn.parentNode),!1)&&!no}else return!1},P5=(Mn,Vn,Wn,jn)=>{if(KA(Wn.styles,(Gn,no)=>{Mn.setStyle(Vn,no,fb(Gn,jn))}),Wn.styles){const Gn=Mn.getAttrib(Vn,"style");Gn&&Mn.setAttrib(Vn,"data-mce-style",Gn)}},$5=(Mn,Vn,Wn,jn)=>{const Gn=Mn.formatter.get(Vn),no=Gn[0],ao=!jn&&Mn.selection.isCollapsed(),po=Mn.dom,vo=Mn.selection,Ao=(bs,as=no)=>{Yo(as.onformat)&&as.onformat(bs,as,Wn,jn),P5(po,bs,as,Wn),KA(as.attributes,(ys,Ls)=>{po.setAttrib(bs,Ls,fb(ys,Wn))}),KA(as.classes,ys=>{const Ls=fb(ys,Wn);po.hasClass(bs,Ls)||po.addClass(bs,Ls)})},Fo=(bs,as)=>{let ys=!1;return KA(bs,Ls=>Nh(Ls)?po.getContentEditable(as)==="false"&&!Ls.ceFalseOverride||rs(Ls.collapsed)&&Ls.collapsed!==ao?!0:po.is(as,Ls.selector)&&!fg(as)?(Ao(as,Ls),ys=!0,!1):!0:!1),ys},Qo=bs=>{if(xo(bs)){const as=po.create(bs);return Ao(as),as}else return null},qo=(bs,as,ys)=>{const Ls=[];let zs=!0;const Hs=no.inline||no.block,tr=Qo(Hs),Pr=yr=>uk(no)&&by(Mn,yr,Vn,Wn),Ur=(yr,fr,Ar)=>{const wa=T_(no)&&Nf(Mn.schema,yr)&&j0(Mn,fr,Hs);return Ar&&wa},fa=(yr,fr,Ar,wa)=>{const Va=yr.nodeName.toLowerCase(),Tl=j0(Mn,Hs,Va)&&j0(Mn,fr,Hs),tc=!ys&&Ir(yr)&&Po(yr.data),uu=fg(yr),Qu=!Sf(no)||!bs.isBlock(yr);return(Ar||wa)&&Tl&&!tc&&!uu&&Qu};Ow(bs,as,yr=>{let fr;const Ar=wa=>{let Va=!1,Tl=zs,tc=!1;const uu=wa.parentNode,Qu=uu.nodeName.toLowerCase(),Wd=bs.getContentEditable(wa);rs(Wd)&&(Tl=zs,zs=Wd==="true",Va=!0,tc=fw(Mn,wa));const Jh=zs&&!Va;if(Ec(wa)&&!dQ(Mn,no,wa,Qu)){fr=null,hb(no)&&bs.remove(wa);return}if(Pr(wa)){fr=null;return}if(Ur(wa,Qu,Jh)){const _u=bs.rename(wa,Hs);Ao(_u),Ls.push(_u),fr=null;return}if(Nh(no)){let _u=Fo(Gn,wa);if(!_u&&rs(uu)&&mw(no)&&(_u=Fo(Gn,uu)),!Sf(no)||_u){fr=null;return}}rs(tr)&&fa(wa,Qu,Jh,tc)?(fr||(fr=bs.clone(tr,!1),uu.insertBefore(fr,wa),Ls.push(fr)),tc&&Va&&(zs=Tl),fr.appendChild(wa)):(fr=null,fs(kc(wa.childNodes),Ar),Va&&(zs=Tl),fr=null)};fs(yr,Ar)}),no.links===!0&&fs(Ls,yr=>{const fr=Ar=>{Ar.nodeName==="A"&&Ao(Ar,no),fs(kc(Ar.childNodes),fr)};fr(yr)}),fs(Ls,yr=>{const fr=Va=>{let Tl=0;return fs(Va.childNodes,tc=>{!Wg(tc)&&!hg(tc)&&Tl++}),Tl},Ar=Va=>xa(Va.childNodes,Ex).filter(tc=>bs.getContentEditable(tc)!=="false"&&fE(bs,tc,no)).map(tc=>{const uu=bs.clone(tc,!1);return Ao(uu),bs.replace(uu,Va,!0),bs.remove(tc,!0),uu}).getOr(Va),wa=fr(yr);if((Ls.length>1||!bs.isBlock(yr))&&wa===0){bs.remove(yr,!0);return}(Sf(no)||hb(no)&&no.wrapper)&&(!no.exact&&wa===1&&(yr=Ar(yr)),cQ(Mn,Gn,Wn,yr),uQ(Mn,no,Vn,Wn,yr),aQ(bs,no,Wn,yr),iQ(bs,no,Wn,yr),lQ(bs,no,Wn,yr),XA(Mn,no,Wn,yr))})},ds=uw(jn)?jn:vo.getNode();if(po.getContentEditable(ds)==="false"&&!fw(Mn,ds)){jn=ds,Fo(Gn,jn),Yh(Mn,Vn,jn,Wn);return}if(no){if(jn)if(uw(jn)){if(!Fo(Gn,jn)){const bs=po.createRng();bs.setStartBefore(jn),bs.setEndAfter(jn),qo(po,X0(po,bs,Gn),!0)}}else qo(po,jn,!0);else!ao||!Sf(no)||x_(Mn).length?(vo.setRng(Pk(vo.getRng())),dw(Mn,()=>{dy(Mn,(bs,as)=>{const ys=as?bs:X0(po,bs,Gn);qo(po,ys,!1)})},Qs),Mn.nodeChanged()):J9(Mn,Vn,Wn),JR(Mn.formatter,Vn).each(bs=>{fs(tQ(Mn.selection),as=>P5(po,as,bs,Wn))});KR(Vn,Mn)}Yh(Mn,Vn,jn,Wn)},R5=(Mn,Vn,Wn,jn)=>{(jn||Mn.selection.isEditable())&&$5(Mn,Vn,Wn,jn)},Bw=Mn=>Mr(Mn,"vars"),fQ=(Mn,Vn)=>{Mn.set({}),Vn.on("NodeChange",Wn=>{iD(Vn,Wn.element,Mn.get())}),Vn.on("FormatApply FormatRemove",Wn=>{const jn=zo.from(Wn.node).map(Gn=>uw(Gn)?Gn:Gn.startContainer).bind(Gn=>Oa(Gn)?zo.some(Gn):zo.from(Gn.parentElement)).getOrThunk(()=>D5(Vn));iD(Vn,jn,Mn.get())})},D5=Mn=>Mn.selection.getStart(),M5=(Mn,Vn,Wn,jn,Gn)=>Ml(Vn,po=>{const vo=Mn.formatter.matchNode(po,Wn,Gn??{},jn);return!ls(vo)},po=>l5(Mn,po,Wn)?!0:jn?!1:rs(Mn.formatter.matchNode(po,Wn,Gn,!0))),N5=(Mn,Vn)=>{const Wn=Vn??D5(Mn);return nr(hw(Mn.dom,Wn),jn=>Oa(jn)&&!Jm(jn))},iD=(Mn,Vn,Wn)=>{const jn=N5(Mn,Vn);Rr(Wn,(Gn,no)=>{const ao=po=>{const vo=M5(Mn,jn,no,po.similar,Bw(po)?po.vars:void 0),Ao=vo.isSome();if(po.state.get()!==Ao){po.state.set(Ao);const Fo=vo.getOr(Vn);Bw(po)?po.callback(Ao,{node:Fo,format:no,parents:jn}):fs(po.callbacks,Qo=>Qo(Ao,{node:Fo,format:no,parents:jn}))}};fs([Gn.withSimilar,Gn.withoutSimilar],ao),fs(Gn.withVars,ao)})},hQ=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=Vn.get();fs(Wn.split(","),po=>{const vo=Ma(ao,po).getOrThunk(()=>{const Fo={withSimilar:{state:od(!1),similar:!0,callbacks:[]},withoutSimilar:{state:od(!1),similar:!1,callbacks:[]},withVars:[]};return ao[po]=Fo,Fo}),Ao=()=>{const Fo=N5(Mn);return M5(Mn,Fo,po,Gn,no).isSome()};if(ls(no)){const Fo=Gn?vo.withSimilar:vo.withoutSimilar;Fo.callbacks.push(jn),Fo.callbacks.length===1&&Fo.state.set(Ao())}else vo.withVars.push({state:od(Ao()),similar:Gn,vars:no,callback:jn})}),Vn.set(ao)},mQ=(Mn,Vn,Wn)=>{const jn=Mn.get();fs(Vn.split(","),Gn=>Ma(jn,Gn).each(no=>{jn[Gn]={withSimilar:{...no.withSimilar,callbacks:nr(no.withSimilar.callbacks,ao=>ao!==Wn)},withoutSimilar:{...no.withoutSimilar,callbacks:nr(no.withoutSimilar.callbacks,ao=>ao!==Wn)},withVars:nr(no.withVars,ao=>ao.callback!==Wn)}})),Mn.set(jn)},pQ=(Mn,Vn,Wn,jn,Gn,no)=>(hQ(Mn,Vn,Wn,jn,Gn,no),{unbind:()=>mQ(Vn,Wn,jn)}),gQ=(Mn,Vn,Wn,jn)=>{const Gn=Mn.formatter.get(Vn);Gn&&(VA(Mn,Vn,Wn,jn)&&(!("toggle"in Gn[0])||Gn[0].toggle)?T5(Mn,Vn,Wn,jn):R5(Mn,Vn,Wn,jn))},L5=Lr.explode,I5=()=>{const Mn={};return{addFilter:(Gn,no)=>{fs(L5(Gn),ao=>{Mr(Mn,ao)||(Mn[ao]={name:ao,callbacks:[]}),Mn[ao].callbacks.push(no)})},getFilters:()=>ka(Mn),removeFilter:(Gn,no)=>{fs(L5(Gn),ao=>{if(Mr(Mn,ao))if(rs(no)){const po=Mn[ao],vo=nr(po.callbacks,Ao=>Ao!==no);vo.length>0?po.callbacks=vo:delete Mn[ao]}else delete Mn[ao]})}}},bQ=(Mn,Vn)=>{fs(Vn,Wn=>{Mn.attr(Wn,null)})},vQ=(Mn,Vn,Wn)=>{Mn.addNodeFilter("font",jn=>{fs(jn,Gn=>{const no=Vn.parse(Gn.attr("style")),ao=Gn.attr("color"),po=Gn.attr("face"),vo=Gn.attr("size");ao&&(no.color=ao),po&&(no["font-family"]=po),vo&&Em(vo).each(Ao=>{no["font-size"]=Wn[Ao-1]}),Gn.name="span",Gn.attr("style",Vn.serialize(no)),bQ(Gn,["color","face","size"])})})},yQ=(Mn,Vn,Wn)=>{Mn.addNodeFilter("strike",jn=>{const Gn=Vn.type!=="html4";fs(jn,no=>{if(Gn)no.name="s";else{const ao=Wn.parse(no.attr("style"));ao["text-decoration"]="line-through",no.name="span",no.attr("style",Wn.serialize(ao))}})})},OQ=(Mn,Vn,Wn)=>{var jn;const Gn=a1();Vn.convert_fonts_to_spans&&vQ(Mn,Gn,Lr.explode((jn=Vn.font_size_legacy_values)!==null&&jn!==void 0?jn:"")),yQ(Mn,Wn,Gn)},aD=(Mn,Vn,Wn)=>{Vn.inline_styles&&OQ(Mn,Vn,Wn)},lD=(Mn,Vn,Wn)=>{Vn.addNodeFilter("br",(jn,Gn,no)=>{const ao=Lr.extend({},Wn.getBlockElements()),po=Wn.getNonEmptyElements(),vo=Wn.getWhitespaceElements();ao.body=1;const Ao=Fo=>Fo.name in ao||og(Wn,Fo);for(let Fo=0,Qo=jn.length;Fofetch(Mn).then(Vn=>Vn.ok?Vn.blob():Promise.reject()).catch(()=>Promise.reject({message:`Cannot convert ${Mn} to Blob. Resource might not exist or is inaccessible.`,uriType:"blob"})),bE=Mn=>{const Vn=/([a-z0-9+\/=\s]+)/i.exec(Mn);return Vn?Vn[1]:""},JA=Mn=>{const[Vn,...Wn]=Mn.split(","),jn=Wn.join(","),Gn=/data:([^/]+\/[^;]+)(;.+)?/.exec(Vn);if(Gn){const no=Gn[2]===";base64",ao=no?bE(jn):decodeURIComponent(jn);return zo.some({type:Gn[1],data:ao,base64Encoded:no})}else return zo.none()},Fk=(Mn,Vn,Wn=!0)=>{let jn=Vn;if(Wn)try{jn=atob(Vn)}catch{return zo.none()}const Gn=new Uint8Array(jn.length);for(let no=0;nonew Promise((Vn,Wn)=>{JA(Mn).bind(({type:jn,data:Gn,base64Encoded:no})=>Fk(jn,Gn,no)).fold(()=>Wn("Invalid data URI"),Vn)}),B5=Mn=>Dc(Mn,"blob:")?VY(Mn):Dc(Mn,"data:")?vE(Mn):Promise.reject("Unknown URI format"),_Q=Mn=>new Promise((Vn,Wn)=>{const jn=new FileReader;jn.onloadend=()=>{Vn(jn.result)},jn.onerror=()=>{var Gn;Wn((Gn=jn.error)===null||Gn===void 0?void 0:Gn.message)},jn.readAsDataURL(Mn)});let SQ=0;const zY=Mn=>"blobid"+SQ++,F5=(Mn,Vn,Wn)=>JA(Mn).bind(({data:jn,type:Gn,base64Encoded:no})=>{if(Vn&&!no)return zo.none();{const ao=no?jn:btoa(jn);return Wn(ao,Gn)}}),H5=(Mn,Vn,Wn)=>{const jn=Mn.create(zY(),Vn,Wn);return Mn.add(jn),jn},wQ=(Mn,Vn,Wn=!1)=>F5(Vn,Wn,(jn,Gn)=>zo.from(Mn.getByData(jn,Gn)).orThunk(()=>Fk(Gn,jn).map(no=>H5(Mn,no,jn)))),CQ=(Mn,Vn)=>{const Wn=()=>Promise.reject("Invalid data URI");if(Dc(Vn,"blob:")){const jn=Mn.getByUri(Vn);return rs(jn)?Promise.resolve(jn):B5(Vn).then(Gn=>_Q(Gn).then(no=>F5(no,!1,ao=>zo.some(H5(Mn,Gn,ao))).getOrThunk(Wn)))}else return Dc(Vn,"data:")?wQ(Mn,Vn).fold(Wn,jn=>Promise.resolve(jn)):Promise.reject("Unknown image data format")},Q5=Mn=>rs(Mn.attr("data-mce-bogus")),kQ=Mn=>Mn.attr("src")===aa.transparentSrc||rs(Mn.attr("data-mce-placeholder")),V5=(Mn,Vn)=>{const{blob_cache:Wn}=Vn;if(Wn){const jn=Gn=>{const no=Gn.attr("src");kQ(Gn)||Q5(Gn)||ps(no)||wQ(Wn,no,!0).each(ao=>{Gn.attr("src",ao.blobUri())})};Mn.addAttributeFilter("src",Gn=>fs(Gn,jn))}},cD=(Mn,Vn)=>Dc(Mn,`${Vn}/`),eP=(Mn,Vn,Wn,jn,Gn)=>{let no;ls(Mn)?no="iframe":cD(Mn,"image")?no="img":cD(Mn,"video")?no="video":cD(Mn,"audio")?no="audio":no="iframe";const ao=new fp(no,1);return ao.attr(no==="audio"?{src:Vn}:{src:Vn,width:Wn,height:jn}),(no==="audio"||no==="video")&&ao.attr("controls",""),no==="iframe"&&Gn&&ao.attr("sandbox",""),ao},z5=(Mn,Vn)=>{const Wn=Mn.schema;Vn.remove_trailing_brs&&lD(Vn,Mn,Wn),Mn.addAttributeFilter("href",Gn=>{let no=Gn.length;const ao=vo=>vo.split(" ").filter(Fo=>Fo.length>0).concat(["noopener"]).sort().join(" "),po=vo=>{const Ao=vo?Lr.trim(vo):"";return/\b(noopener)\b/g.test(Ao)?Ao:ao(Ao)};if(!Vn.allow_unsafe_link_target)for(;no--;){const vo=Gn[no];vo.name==="a"&&vo.attr("target")==="_blank"&&vo.attr("rel",po(vo.attr("rel")))}}),Vn.allow_html_in_named_anchor||Mn.addAttributeFilter("id,name",Gn=>{let no=Gn.length,ao,po,vo,Ao;for(;no--;)if(Ao=Gn[no],Ao.name==="a"&&Ao.firstChild&&!Ao.attr("href"))for(vo=Ao.parent,ao=Ao.lastChild;ao&&vo;)po=ao.prev,vo.insert(ao,Ao),ao=po}),Vn.fix_list_elements&&Mn.addNodeFilter("ul,ol",Gn=>{let no=Gn.length,ao,po;for(;no--;)if(ao=Gn[no],po=ao.parent,po&&(po.name==="ul"||po.name==="ol"))if(ao.prev&&ao.prev.name==="li")ao.prev.append(ao);else{const vo=new fp("li",1);vo.attr("style","list-style-type: none"),ao.wrap(vo)}});const jn=Wn.getValidClasses();Vn.validate&&jn&&Mn.addAttributeFilter("class",Gn=>{var no;let ao=Gn.length;for(;ao--;){const po=Gn[ao],vo=(no=po.attr("class"))!==null&&no!==void 0?no:"",Ao=Lr.explode(vo," ");let Fo="";for(let Qo=0;Qofs(Gn,no=>{no.replace(eP(no.attr("type"),no.name==="object"?no.attr("data"):no.attr("src"),no.attr("width"),no.attr("height"),Vn.sandbox_iframes))})),Vn.sandbox_iframes&&Mn.addNodeFilter("iframe",Gn=>fs(Gn,no=>no.attr("sandbox","")))},{entries:jf,setPrototypeOf:xQ,isFrozen:WY,getPrototypeOf:UY,getOwnPropertyDescriptor:ZY}=Object;let{freeze:Lf,seal:w1,create:H_}=Object,{apply:_y,construct:uD}=typeof Reflect<"u"&&Reflect;_y||(_y=function(Vn,Wn,jn){return Vn.apply(Wn,jn)}),Lf||(Lf=function(Vn){return Vn}),w1||(w1=function(Vn){return Vn}),uD||(uD=function(Vn,Wn){return new Vn(...Wn)});const EQ=i0(Array.prototype.forEach),Hk=i0(Array.prototype.pop),Sy=i0(Array.prototype.push),SO=i0(String.prototype.toLowerCase),tP=i0(String.prototype.toString),dD=i0(String.prototype.match),r0=i0(String.prototype.replace),W5=i0(String.prototype.indexOf),TQ=i0(String.prototype.trim),gb=i0(RegExp.prototype.test),Qk=AQ(TypeError);function i0(Mn){return function(Vn){for(var Wn=arguments.length,jn=new Array(Wn>1?Wn-1:0),Gn=1;Gn/gm),G5=w1(/\${[\w\W]*}/gm),K5=w1(/^data-[\-\w.\u00B7-\uFFFF]/),J5=w1(/^aria-[\-\w]+$/),eI=w1(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),PQ=w1(/^(?:\w+script|data):/i),$Q=w1(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),oP=w1(/^html$/i);var zk=Object.freeze({__proto__:null,MUSTACHE_EXPR:X5,ERB_EXPR:Y5,TMPLIT_EXPR:G5,DATA_ATTR:K5,ARIA_ATTR:J5,IS_ALLOWED_URI:eI,IS_SCRIPT_OR_DATA:PQ,ATTR_WHITESPACE:$Q,DOCTYPE_NAME:oP});const tI=()=>typeof window>"u"?null:window,nI=function(Vn,Wn){if(typeof Vn!="object"||typeof Vn.createPolicy!="function")return null;let jn=null;const Gn="data-tt-policy-suffix";Wn&&Wn.hasAttribute(Gn)&&(jn=Wn.getAttribute(Gn));const no="dompurify"+(jn?"#"+jn:"");try{return Vn.createPolicy(no,{createHTML(ao){return ao},createScriptURL(ao){return ao}})}catch{return console.warn("TrustedTypes policy "+no+" could not be created."),null}};function OE(){let Mn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tI();const Vn=ec=>OE(ec);if(Vn.version="3.0.5",Vn.removed=[],!Mn||!Mn.document||Mn.document.nodeType!==9)return Vn.isSupported=!1,Vn;const Wn=Mn.document,jn=Wn.currentScript;let{document:Gn}=Mn;const{DocumentFragment:no,HTMLTemplateElement:ao,Node:po,Element:vo,NodeFilter:Ao,NamedNodeMap:Fo=Mn.NamedNodeMap||Mn.MozNamedAttrMap,HTMLFormElement:Qo,DOMParser:qo,trustedTypes:ds}=Mn,bs=vo.prototype,as=nP(bs,"cloneNode"),ys=nP(bs,"nextSibling"),Ls=nP(bs,"childNodes"),zs=nP(bs,"parentNode");if(typeof ao=="function"){const ec=Gn.createElement("template");ec.content&&ec.content.ownerDocument&&(Gn=ec.content.ownerDocument)}let Hs,tr="";const{implementation:Pr,createNodeIterator:Ur,createDocumentFragment:fa,getElementsByTagName:yr}=Gn,{importNode:fr}=Wn;let Ar={};Vn.isSupported=typeof jf=="function"&&typeof zs=="function"&&Pr&&Pr.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:wa,ERB_EXPR:Va,TMPLIT_EXPR:Tl,DATA_ATTR:tc,ARIA_ATTR:uu,IS_SCRIPT_OR_DATA:Qu,ATTR_WHITESPACE:Wd}=zk;let{IS_ALLOWED_URI:Jh}=zk,_u=null;const ea=Ou({},[...fD,...hD,...Fw,...mD,...q5]);let pa=null;const $c=Ou({},[...pD,...gD,...j5,...yE]);let ac=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Pa=null,ml=null,Yr=!0,pl=!0,pc=!1,Pu=!0,du=!1,Oh=!1,h0=!1,Ay=!1,Ip=!1,Sb=!1,Sl=!1,Mc=!0,ru=!1;const Kd="user-content-";let xd=!0,wg=!1,dv={},AO=null;const oC=Ou({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let C2=null;const n3=Ou({},["audio","video","img","source","image","track"]);let sC=null;const vT=Ou({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),k2="http://www.w3.org/1998/Math/MathML",lS="http://www.w3.org/2000/svg",fv="http://www.w3.org/1999/xhtml";let Py=fv,yT=!1,x2=null;const OT=Ou({},[k2,lS,fv],tP);let $y;const o3=["application/xhtml+xml","text/html"],_T="text/html";let xm,cS=null;const s3=Gn.createElement("form"),r3=function(hr){return hr instanceof RegExp||hr instanceof Function},ST=function(hr){if(!(cS&&cS===hr)){if((!hr||typeof hr!="object")&&(hr={}),hr=Vk(hr),$y=o3.indexOf(hr.PARSER_MEDIA_TYPE)===-1?$y=_T:$y=hr.PARSER_MEDIA_TYPE,xm=$y==="application/xhtml+xml"?tP:SO,_u="ALLOWED_TAGS"in hr?Ou({},hr.ALLOWED_TAGS,xm):ea,pa="ALLOWED_ATTR"in hr?Ou({},hr.ALLOWED_ATTR,xm):$c,x2="ALLOWED_NAMESPACES"in hr?Ou({},hr.ALLOWED_NAMESPACES,tP):OT,sC="ADD_URI_SAFE_ATTR"in hr?Ou(Vk(vT),hr.ADD_URI_SAFE_ATTR,xm):vT,C2="ADD_DATA_URI_TAGS"in hr?Ou(Vk(n3),hr.ADD_DATA_URI_TAGS,xm):n3,AO="FORBID_CONTENTS"in hr?Ou({},hr.FORBID_CONTENTS,xm):oC,Pa="FORBID_TAGS"in hr?Ou({},hr.FORBID_TAGS,xm):{},ml="FORBID_ATTR"in hr?Ou({},hr.FORBID_ATTR,xm):{},dv="USE_PROFILES"in hr?hr.USE_PROFILES:!1,Yr=hr.ALLOW_ARIA_ATTR!==!1,pl=hr.ALLOW_DATA_ATTR!==!1,pc=hr.ALLOW_UNKNOWN_PROTOCOLS||!1,Pu=hr.ALLOW_SELF_CLOSE_IN_ATTR!==!1,du=hr.SAFE_FOR_TEMPLATES||!1,Oh=hr.WHOLE_DOCUMENT||!1,Ip=hr.RETURN_DOM||!1,Sb=hr.RETURN_DOM_FRAGMENT||!1,Sl=hr.RETURN_TRUSTED_TYPE||!1,Ay=hr.FORCE_BODY||!1,Mc=hr.SANITIZE_DOM!==!1,ru=hr.SANITIZE_NAMED_PROPS||!1,xd=hr.KEEP_CONTENT!==!1,wg=hr.IN_PLACE||!1,Jh=hr.ALLOWED_URI_REGEXP||eI,Py=hr.NAMESPACE||fv,ac=hr.CUSTOM_ELEMENT_HANDLING||{},hr.CUSTOM_ELEMENT_HANDLING&&r3(hr.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ac.tagNameCheck=hr.CUSTOM_ELEMENT_HANDLING.tagNameCheck),hr.CUSTOM_ELEMENT_HANDLING&&r3(hr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ac.attributeNameCheck=hr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),hr.CUSTOM_ELEMENT_HANDLING&&typeof hr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ac.allowCustomizedBuiltInElements=hr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),du&&(pl=!1),Sb&&(Ip=!0),dv&&(_u=Ou({},[...q5]),pa=[],dv.html===!0&&(Ou(_u,fD),Ou(pa,pD)),dv.svg===!0&&(Ou(_u,hD),Ou(pa,gD),Ou(pa,yE)),dv.svgFilters===!0&&(Ou(_u,Fw),Ou(pa,gD),Ou(pa,yE)),dv.mathMl===!0&&(Ou(_u,mD),Ou(pa,j5),Ou(pa,yE))),hr.ADD_TAGS&&(_u===ea&&(_u=Vk(_u)),Ou(_u,hr.ADD_TAGS,xm)),hr.ADD_ATTR&&(pa===$c&&(pa=Vk(pa)),Ou(pa,hr.ADD_ATTR,xm)),hr.ADD_URI_SAFE_ATTR&&Ou(sC,hr.ADD_URI_SAFE_ATTR,xm),hr.FORBID_CONTENTS&&(AO===oC&&(AO=Vk(AO)),Ou(AO,hr.FORBID_CONTENTS,xm)),xd&&(_u["#text"]=!0),Oh&&Ou(_u,["html","head","body"]),_u.table&&(Ou(_u,["tbody"]),delete Pa.tbody),hr.TRUSTED_TYPES_POLICY){if(typeof hr.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qk('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof hr.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qk('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Hs=hr.TRUSTED_TYPES_POLICY,tr=Hs.createHTML("")}else Hs===void 0&&(Hs=nI(ds,jn)),Hs!==null&&typeof tr=="string"&&(tr=Hs.createHTML(""));Lf&&Lf(hr),cS=hr}},Ry=Ou({},["mi","mo","mn","ms","mtext"]),wT=Ou({},["foreignobject","desc","title","annotation-xml"]),or=Ou({},["title","style","font","a","script"]),ur=Ou({},hD);Ou(ur,Fw),Ou(ur,U5);const Gr=Ou({},mD);Ou(Gr,Z5);const Wr=function(hr){let Da=zs(hr);(!Da||!Da.tagName)&&(Da={namespaceURI:Py,tagName:"template"});const sl=SO(hr.tagName),af=SO(Da.tagName);return x2[hr.namespaceURI]?hr.namespaceURI===lS?Da.namespaceURI===fv?sl==="svg":Da.namespaceURI===k2?sl==="svg"&&(af==="annotation-xml"||Ry[af]):!!ur[sl]:hr.namespaceURI===k2?Da.namespaceURI===fv?sl==="math":Da.namespaceURI===lS?sl==="math"&&wT[af]:!!Gr[sl]:hr.namespaceURI===fv?Da.namespaceURI===lS&&!wT[af]||Da.namespaceURI===k2&&!Ry[af]?!1:!Gr[sl]&&(or[sl]||!ur[sl]):!!($y==="application/xhtml+xml"&&x2[hr.namespaceURI]):!1},Ha=function(hr){Sy(Vn.removed,{element:hr});try{hr.parentNode.removeChild(hr)}catch{hr.remove()}},Jl=function(hr,Da){try{Sy(Vn.removed,{attribute:Da.getAttributeNode(hr),from:Da})}catch{Sy(Vn.removed,{attribute:null,from:Da})}if(Da.removeAttribute(hr),hr==="is"&&!pa[hr])if(Ip||Sb)try{Ha(Da)}catch{}else try{Da.setAttribute(hr,"")}catch{}},pd=function(hr){let Da,sl;if(Ay)hr=""+hr;else{const Cb=dD(hr,/^[\r\n\t ]+/);sl=Cb&&Cb[0]}$y==="application/xhtml+xml"&&Py===fv&&(hr=''+hr+"");const af=Hs?Hs.createHTML(hr):hr;if(Py===fv)try{Da=new qo().parseFromString(af,$y)}catch{}if(!Da||!Da.documentElement){Da=Pr.createDocument(Py,"template",null);try{Da.documentElement.innerHTML=yT?tr:af}catch{}}const Zm=Da.body||Da.documentElement;return hr&&sl&&Zm.insertBefore(Gn.createTextNode(sl),Zm.childNodes[0]||null),Py===fv?yr.call(Da,Oh?"html":"body")[0]:Oh?Da.documentElement:Zm},gp=function(hr){return Ur.call(hr.ownerDocument||hr,hr,Ao.SHOW_ELEMENT|Ao.SHOW_COMMENT|Ao.SHOW_TEXT,null,!1)},em=function(hr){return hr instanceof Qo&&(typeof hr.nodeName!="string"||typeof hr.textContent!="string"||typeof hr.removeChild!="function"||!(hr.attributes instanceof Fo)||typeof hr.removeAttribute!="function"||typeof hr.setAttribute!="function"||typeof hr.namespaceURI!="string"||typeof hr.insertBefore!="function"||typeof hr.hasChildNodes!="function")},uS=function(hr){return typeof po=="object"?hr instanceof po:hr&&typeof hr=="object"&&typeof hr.nodeType=="number"&&typeof hr.nodeName=="string"},wb=function(hr,Da,sl){Ar[hr]&&EQ(Ar[hr],af=>{af.call(Vn,Da,sl,cS)})},i3=function(hr){let Da;if(wb("beforeSanitizeElements",hr,null),em(hr))return Ha(hr),!0;const sl=xm(hr.nodeName);if(wb("uponSanitizeElement",hr,{tagName:sl,allowedTags:_u}),hr.hasChildNodes()&&!uS(hr.firstElementChild)&&(!uS(hr.content)||!uS(hr.content.firstElementChild))&&gb(/<[/\w]/g,hr.innerHTML)&&gb(/<[/\w]/g,hr.textContent))return Ha(hr),!0;if(!_u[sl]||Pa[sl]){if(!Pa[sl]&&xN(sl)&&(ac.tagNameCheck instanceof RegExp&&gb(ac.tagNameCheck,sl)||ac.tagNameCheck instanceof Function&&ac.tagNameCheck(sl)))return!1;if(xd&&!AO[sl]){const af=zs(hr)||hr.parentNode,Zm=Ls(hr)||hr.childNodes;if(Zm&&af){const Cb=Zm.length;for(let _h=Cb-1;_h>=0;--_h)af.insertBefore(as(Zm[_h],!0),ys(hr))}}return Ha(hr),!0}return hr instanceof vo&&!Wr(hr)||(sl==="noscript"||sl==="noembed"||sl==="noframes")&&gb(/<\/no(script|embed|frames)/i,hr.innerHTML)?(Ha(hr),!0):(du&&hr.nodeType===3&&(Da=hr.textContent,Da=r0(Da,wa," "),Da=r0(Da,Va," "),Da=r0(Da,Tl," "),hr.textContent!==Da&&(Sy(Vn.removed,{element:hr.cloneNode()}),hr.textContent=Da)),wb("afterSanitizeElements",hr,null),!1)},kN=function(hr,Da,sl){if(Mc&&(Da==="id"||Da==="name")&&(sl in Gn||sl in s3))return!1;if(!(pl&&!ml[Da]&&gb(tc,Da))){if(!(Yr&&gb(uu,Da))){if(!pa[Da]||ml[Da]){if(!(xN(hr)&&(ac.tagNameCheck instanceof RegExp&&gb(ac.tagNameCheck,hr)||ac.tagNameCheck instanceof Function&&ac.tagNameCheck(hr))&&(ac.attributeNameCheck instanceof RegExp&&gb(ac.attributeNameCheck,Da)||ac.attributeNameCheck instanceof Function&&ac.attributeNameCheck(Da))||Da==="is"&&ac.allowCustomizedBuiltInElements&&(ac.tagNameCheck instanceof RegExp&&gb(ac.tagNameCheck,sl)||ac.tagNameCheck instanceof Function&&ac.tagNameCheck(sl))))return!1}else if(!sC[Da]){if(!gb(Jh,r0(sl,Wd,""))){if(!((Da==="src"||Da==="xlink:href"||Da==="href")&&hr!=="script"&&W5(sl,"data:")===0&&C2[hr])){if(!(pc&&!gb(Qu,r0(sl,Wd,"")))){if(sl)return!1}}}}}}return!0},xN=function(hr){return hr.indexOf("-")>0},tH=function(hr){let Da,sl,af,Zm;wb("beforeSanitizeAttributes",hr,null);const{attributes:Cb}=hr;if(!Cb)return;const _h={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:pa};for(Zm=Cb.length;Zm--;){Da=Cb[Zm];const{name:kb,namespaceURI:EN}=Da;sl=kb==="value"?Da.value:TQ(Da.value);const oH=sl;if(af=xm(kb),_h.attrName=af,_h.attrValue=sl,_h.keepAttr=!0,_h.forceKeepAttr=void 0,wb("uponSanitizeAttribute",hr,_h),sl=_h.attrValue,_h.forceKeepAttr)continue;if(!_h.keepAttr){Jl(kb,hr);continue}if(!Pu&&gb(/\/>/i,sl)){Jl(kb,hr);continue}du&&(sl=r0(sl,wa," "),sl=r0(sl,Va," "),sl=r0(sl,Tl," "));const a3=xm(hr.nodeName);if(!kN(a3,af,sl)){Jl(kb,hr);continue}if(ru&&(af==="id"||af==="name")&&(Jl(kb,hr),sl=Kd+sl),Hs&&typeof ds=="object"&&typeof ds.getAttributeType=="function"&&!EN)switch(ds.getAttributeType(a3,af)){case"TrustedHTML":{sl=Hs.createHTML(sl);break}case"TrustedScriptURL":{sl=Hs.createScriptURL(sl);break}}if(sl!==oH)try{EN?hr.setAttributeNS(EN,kb,sl):hr.setAttribute(kb,sl)}catch{Jl(kb,hr)}}wb("afterSanitizeAttributes",hr,null)},nH=function ec(hr){let Da;const sl=gp(hr);for(wb("beforeSanitizeShadowDOM",hr,null);Da=sl.nextNode();)wb("uponSanitizeShadowNode",Da,null),!i3(Da)&&(Da.content instanceof no&&ec(Da.content),tH(Da));wb("afterSanitizeShadowDOM",hr,null)};return Vn.sanitize=function(ec){let hr=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Da,sl,af,Zm;if(yT=!ec,yT&&(ec=""),typeof ec!="string"&&!uS(ec))if(typeof ec.toString=="function"){if(ec=ec.toString(),typeof ec!="string")throw Qk("dirty is not a string, aborting")}else throw Qk("toString is not a function");if(!Vn.isSupported)return ec;if(h0||ST(hr),Vn.removed=[],typeof ec=="string"&&(wg=!1),wg){if(ec.nodeName){const kb=xm(ec.nodeName);if(!_u[kb]||Pa[kb])throw Qk("root node is forbidden and cannot be sanitized in-place")}}else if(ec instanceof po)Da=pd(""),sl=Da.ownerDocument.importNode(ec,!0),sl.nodeType===1&&sl.nodeName==="BODY"||sl.nodeName==="HTML"?Da=sl:Da.appendChild(sl);else{if(!Ip&&!du&&!Oh&&ec.indexOf("<")===-1)return Hs&&Sl?Hs.createHTML(ec):ec;if(Da=pd(ec),!Da)return Ip?null:Sl?tr:""}Da&&Ay&&Ha(Da.firstChild);const Cb=gp(wg?ec:Da);for(;af=Cb.nextNode();)i3(af)||(af.content instanceof no&&nH(af.content),tH(af));if(wg)return ec;if(Ip){if(Sb)for(Zm=fa.call(Da.ownerDocument);Da.firstChild;)Zm.appendChild(Da.firstChild);else Zm=Da;return(pa.shadowroot||pa.shadowrootmode)&&(Zm=fr.call(Wn,Zm,!0)),Zm}let _h=Oh?Da.outerHTML:Da.innerHTML;return Oh&&_u["!doctype"]&&Da.ownerDocument&&Da.ownerDocument.doctype&&Da.ownerDocument.doctype.name&&gb(oP,Da.ownerDocument.doctype.name)&&(_h=" +`+_h),du&&(_h=r0(_h,wa," "),_h=r0(_h,Va," "),_h=r0(_h,Tl," ")),Hs&&Sl?Hs.createHTML(_h):_h},Vn.setConfig=function(ec){ST(ec),h0=!0},Vn.clearConfig=function(){cS=null,h0=!1},Vn.isValidAttribute=function(ec,hr,Da){cS||ST({});const sl=xm(ec),af=xm(hr);return kN(sl,af,Da)},Vn.addHook=function(ec,hr){typeof hr=="function"&&(Ar[ec]=Ar[ec]||[],Sy(Ar[ec],hr))},Vn.removeHook=function(ec){if(Ar[ec])return Hk(Ar[ec])},Vn.removeHooks=function(ec){Ar[ec]&&(Ar[ec]=[])},Vn.removeAllHooks=function(){Ar={}},Vn}var oI=OE();const sI=Lr.each,Q_=Lr.trim,bD=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],rI={ftp:21,http:80,https:443,mailto:25},_E=["img","video"],iI=(Mn,Vn)=>rs(Mn)?!Mn:rs(Vn)?!Zs(_E,Vn):!0,vD=Mn=>{try{return decodeURIComponent(Mn)}catch{return unescape(Mn)}},yD=(Mn,Vn,Wn)=>{const jn=vD(Vn).replace(/\s/g,"");return Mn.allow_script_urls?!1:/((java|vb)script|mhtml):/i.test(jn)?!0:Mn.allow_html_data_urls?!1:/^data:image\//i.test(jn)?iI(Mn.allow_svg_data_urls,Wn)&&/^data:image\/svg\+xml/i.test(jn):/^data:/i.test(jn)};class bb{static parseDataUri(Vn){let Wn;const jn=decodeURIComponent(Vn).split(","),Gn=/data:([^;]+)/.exec(jn[0]);return Gn&&(Wn=Gn[1]),{type:Wn,data:jn[1]}}static isDomSafe(Vn,Wn,jn={}){if(jn.allow_script_urls)return!0;{const Gn=P0.decode(Vn).replace(/[\s\u0000-\u001F]+/g,"");return!yD(jn,Gn,Wn)}}static getDocumentBaseUrl(Vn){var Wn;let jn;return Vn.protocol.indexOf("http")!==0&&Vn.protocol!=="file:"?jn=(Wn=Vn.href)!==null&&Wn!==void 0?Wn:"":jn=Vn.protocol+"//"+Vn.host+Vn.pathname,/^[^:]+:\/\/\/?[^\/]+\//.test(jn)&&(jn=jn.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(jn)||(jn+="/")),jn}constructor(Vn,Wn={}){this.path="",this.directory="",Vn=Q_(Vn),this.settings=Wn;const jn=Wn.base_uri,Gn=this;if(/^([\w\-]+):([^\/]{2})/i.test(Vn)||/^\s*#/.test(Vn)){Gn.source=Vn;return}const no=Vn.indexOf("//")===0;if(Vn.indexOf("/")===0&&!no&&(Vn=(jn&&jn.protocol||"http")+"://mce_host"+Vn),!/^[\w\-]*:?\/\//.test(Vn)){const po=jn?jn.path:new bb(document.location.href).directory;if((jn==null?void 0:jn.protocol)==="")Vn="//mce_host"+Gn.toAbsPath(po,Vn);else{const vo=/([^#?]*)([#?]?.*)/.exec(Vn);vo&&(Vn=(jn&&jn.protocol||"http")+"://mce_host"+Gn.toAbsPath(po,vo[1])+vo[2])}}Vn=Vn.replace(/@@/g,"(mce_at)");const ao=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?(\[[a-zA-Z0-9:.%]+\]|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(Vn);ao&&sI(bD,(po,vo)=>{let Ao=ao[vo];Ao&&(Ao=Ao.replace(/\(mce_at\)/g,"@@")),Gn[po]=Ao}),jn&&(Gn.protocol||(Gn.protocol=jn.protocol),Gn.userInfo||(Gn.userInfo=jn.userInfo),!Gn.port&&Gn.host==="mce_host"&&(Gn.port=jn.port),(!Gn.host||Gn.host==="mce_host")&&(Gn.host=jn.host),Gn.source=""),no&&(Gn.protocol="")}setPath(Vn){const Wn=/^(.*?)\/?(\w+)?$/.exec(Vn);Wn&&(this.path=Wn[0],this.directory=Wn[1],this.file=Wn[2]),this.source="",this.getURI()}toRelative(Vn){if(Vn==="./")return Vn;const Wn=new bb(Vn,{base_uri:this});if(Wn.host!=="mce_host"&&this.host!==Wn.host&&Wn.host||this.port!==Wn.port||this.protocol!==Wn.protocol&&Wn.protocol!=="")return Wn.getURI();const jn=this.getURI(),Gn=Wn.getURI();if(jn===Gn||jn.charAt(jn.length-1)==="/"&&jn.substr(0,jn.length-1)===Gn)return jn;let no=this.toRelPath(this.path,Wn.path);return Wn.query&&(no+="?"+Wn.query),Wn.anchor&&(no+="#"+Wn.anchor),no}toAbsolute(Vn,Wn){const jn=new bb(Vn,{base_uri:this});return jn.getURI(Wn&&this.isSameOrigin(jn))}isSameOrigin(Vn){if(this.host==Vn.host&&this.protocol==Vn.protocol){if(this.port==Vn.port)return!0;const Wn=this.protocol?rI[this.protocol]:null;if(Wn&&(this.port||Wn)==(Vn.port||Wn))return!0}return!1}toRelPath(Vn,Wn){let jn=0,Gn="",no,ao;const po=Vn.substring(0,Vn.lastIndexOf("/")).split("/"),vo=Wn.split("/");if(po.length>=vo.length){for(no=0,ao=po.length;no=vo.length||po[no]!==vo[no]){jn=no+1;break}}if(po.length=po.length||po[no]!==vo[no]){jn=no+1;break}}if(jn===1)return Wn;for(no=0,ao=po.length-(jn-1);no{Qo&&po.push(Qo)});const vo=[];for(let Qo=ao.length-1;Qo>=0;Qo--)if(!(ao[Qo].length===0||ao[Qo]===".")){if(ao[Qo]===".."){jn++;continue}if(jn>0){jn--;continue}vo.push(ao[Qo])}const Ao=po.length-jn;let Fo;return Ao<=0?Fo=nc(vo).join("/"):Fo=po.slice(0,Ao).join("/")+"/"+nc(vo).join("/"),Fo.indexOf("/")!==0&&(Fo="/"+Fo),Gn&&Fo.lastIndexOf("/")!==Fo.length-1&&(Fo+=Gn),Fo}getURI(Vn=!1){let Wn;return(!this.source||Vn)&&(Wn="",Vn||(this.protocol?Wn+=this.protocol+"://":Wn+="//",this.userInfo&&(Wn+=this.userInfo+"@"),this.host&&(Wn+=this.host),this.port&&(Wn+=":"+this.port)),this.path&&(Wn+=this.path),this.query&&(Wn+="?"+this.query),this.anchor&&(Wn+="#"+this.anchor),this.source=Wn),this.source}}const RQ=Lr.makeMap("src,href,data,background,action,formaction,poster,xlink:href"),OD="data-mce-type";let aI=0;const sP=(Mn,Vn,Wn,jn,Gn)=>{var no,ao,po,vo;const Ao=Vn.validate,Fo=Wn.getSpecialElements();Mn.nodeType===Am&&!Vn.allow_conditional_comments&&/^\[if/i.test((no=Mn.nodeValue)!==null&&no!==void 0?no:"")&&(Mn.nodeValue=" "+Mn.nodeValue);const Qo=(ao=Gn==null?void 0:Gn.tagName)!==null&&ao!==void 0?ao:Mn.nodeName.toLowerCase();if(jn!=="html"&&Wn.isValid(jn)){rs(Gn)&&(Gn.allowedTags[Qo]=!0);return}if(Mn.nodeType!==Hh||Qo==="body")return;const qo=Cs.fromDom(Mn),ds=Od(qo,OD),bs=Tf(qo,"data-mce-bogus");if(!ds&&xo(bs)){bs==="all"?sc(qo):hf(qo);return}const as=Wn.getElementRule(Qo);if(Ao&&!as){Mr(Fo,Qo)?sc(qo):hf(qo);return}else rs(Gn)&&(Gn.allowedTags[Qo]=!0);if(Ao&&as&&!ds){if(fs((po=as.attributesForced)!==null&&po!==void 0?po:[],ys=>{Gc(qo,ys.name,ys.value==="{$uid}"?`mce_${aI++}`:ys.value)}),fs((vo=as.attributesDefault)!==null&&vo!==void 0?vo:[],ys=>{Od(qo,ys.name)||Gc(qo,ys.name,ys.value==="{$uid}"?`mce_${aI++}`:ys.value)}),as.attributesRequired&&!Sr(as.attributesRequired,ys=>Od(qo,ys))){hf(qo);return}if(as.removeEmptyAttrs&&Vh(qo)){hf(qo);return}as.outputName&&as.outputName!==Qo&&Bg(qo,as.outputName)}},DQ=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.tagName.toLowerCase(),{attrName:ao,attrValue:po}=Gn;Gn.keepAttr=_D(Vn,Wn,jn,no,ao,po),Gn.keepAttr?(Gn.allowedAttributes[ao]=!0,cI(ao,Wn)&&(Gn.attrValue=ao),Vn.allow_svg_data_urls&&Dc(po,"data:image/svg+xml")&&(Gn.forceKeepAttr=!0)):lI(Mn,ao)&&(Gn.forceKeepAttr=!0)},_D=(Mn,Vn,Wn,jn,Gn,no)=>Wn!=="html"&&!ng(jn)?!0:!(Gn in RQ&&yD(Mn,no,jn))&&(!Mn.validate||Vn.isValid(jn,Gn)||Dc(Gn,"data-")||Dc(Gn,"aria-")),lI=(Mn,Vn)=>Mn.hasAttribute(OD)&&(Vn==="id"||Vn==="class"||Vn==="style"),cI=(Mn,Vn)=>Mn in Vn.getBoolAttrs(),MQ=(Mn,Vn,Wn,jn)=>{const{attributes:Gn}=Mn;for(let no=Gn.length-1;no>=0;no--){const ao=Gn[no],po=ao.name,vo=ao.value;!_D(Vn,Wn,jn,Mn.tagName.toLowerCase(),po,vo)&&!lI(Mn,po)?Mn.removeAttribute(po):cI(po,Wn)&&Mn.setAttribute(po,po)}},NQ=(Mn,Vn,Wn)=>{const jn=oI();return jn.addHook("uponSanitizeElement",(Gn,no)=>{sP(Gn,Mn,Vn,Wn.track(Gn),no)}),jn.addHook("uponSanitizeAttribute",(Gn,no)=>{DQ(Gn,Mn,Vn,Wn.current(),no)}),jn},LQ=(Mn,Vn)=>{const jn={...{IN_PLACE:!0,ALLOW_UNKNOWN_PROTOCOLS:!0,ALLOWED_TAGS:["#comment","#cdata-section","body"],ALLOWED_ATTR:[]}};return jn.PARSER_MEDIA_TYPE=Vn,Mn.allow_script_urls?jn.ALLOWED_URI_REGEXP=/.*/:Mn.allow_html_data_urls&&(jn.ALLOWED_URI_REGEXP=/^(?!(\w+script|mhtml):)/i),jn},IQ=Mn=>{const Vn=["type","href","role","arcrole","title","show","actuate","label","from","to"].map(jn=>`xlink:${jn}`),Wn={IN_PLACE:!0,USE_PROFILES:{html:!0,svg:!0,svgFilters:!0},ALLOWED_ATTR:Vn};return oI().sanitize(Mn,Wn),Mn.innerHTML},BQ=(Mn,Vn)=>{const Wn=Z1();if(Mn.sanitize){const jn=NQ(Mn,Vn,Wn);return{sanitizeHtmlElement:(no,ao)=>{jn.sanitize(no,LQ(Mn,ao)),jn.removed=[],Wn.reset()},sanitizeNamespaceElement:IQ}}else return{sanitizeHtmlElement:(no,ao)=>{const po=document.createNodeIterator(no,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_TEXT);let vo;for(;vo=po.nextNode();){const Ao=Wn.track(vo);sP(vo,Mn,Vn,Ao),Oa(vo)&&MQ(vo,Mn,Vn,Ao)}Wn.reset()},sanitizeNamespaceElement:Js}},uI=Lr.makeMap,dI=Lr.extend,SE=(Mn,Vn,Wn,jn)=>{const Gn=Mn.name,no=Gn in Wn&&Gn!=="title"&&Gn!=="textarea"&&Gn!=="noscript",ao=Vn.childNodes;for(let po=0,vo=ao.length;po{const jn=[];for(let Gn=Mn,no=Gn;Gn;no=Gn,Gn=Gn.walk()){const ao=Gn;fs(Vn,po=>po(ao)),ps(ao.parent)&&ao!==Mn?Gn=no:jn.push(ao)}for(let Gn=jn.length-1;Gn>=0;Gn--){const no=jn[Gn];fs(Wn,ao=>ao(no))}},FQ=(Mn,Vn,Wn,jn)=>{const Gn=Wn.validate,no=Vn.getNonEmptyElements(),ao=Vn.getWhitespaceElements(),po=dI(uI("script,style,head,html,body,title,meta,param"),Vn.getBlockElements()),vo=dC(Vn),Ao=/[ \t\r\n]+/g,Fo=/^[ \t\r\n]+/,Qo=/[ \t\r\n]+$/,qo=zs=>{let Hs=zs.parent;for(;rs(Hs);){if(Hs.name in ao)return!0;Hs=Hs.parent}return!1},ds=zs=>{let Hs=zs;for(;rs(Hs);){if(Hs.name in vo)return Ak(Vn,no,ao,Hs);Hs=Hs.parent}return!1},bs=zs=>zs.name in po||og(Vn,zs)||ng(zs.name)&&zs.parent===Mn,as=(zs,Hs)=>{const tr=Hs?zs.prev:zs.next;return rs(tr)||ps(zs.parent)?!1:bs(zs.parent)&&(zs.parent!==Mn||jn.isRootContent===!0)};return[zs=>{var Hs;if(zs.type===3&&!qo(zs)){let tr=(Hs=zs.value)!==null&&Hs!==void 0?Hs:"";tr=tr.replace(Ao," "),($R(zs.prev,bs)||as(zs,!0))&&(tr=tr.replace(Fo,"")),tr.length===0?zs.remove():zs.value=tr}},zs=>{var Hs;if(zs.type===1){const tr=Vn.getElementRule(zs.name);if(Gn&&tr){const Pr=Ak(Vn,no,ao,zs);tr.paddInEmptyBlock&&Pr&&ds(zs)?MA(Wn,jn,bs,zs):tr.removeEmpty&&Pr?bs(zs)?zs.remove():zs.unwrap():tr.paddEmpty&&(Pr||ZL(zs))&&MA(Wn,jn,bs,zs)}}else if(zs.type===3&&!qo(zs)){let tr=(Hs=zs.value)!==null&&Hs!==void 0?Hs:"";(zs.next&&bs(zs.next)||as(zs,!1))&&(tr=tr.replace(Qo,"")),tr.length===0?zs.remove():zs.value=tr}}]},rP=(Mn,Vn)=>{var Wn;const jn=(Wn=Vn.forced_root_block)!==null&&Wn!==void 0?Wn:Mn.forced_root_block;return jn===!1?"":jn===!0?"p":jn},a0=(Mn={},Vn=i1())=>{const Wn=I5(),jn=I5(),Gn={validate:!0,root_name:"body",sanitize:!0,...Mn},no=new DOMParser,ao=BQ(Gn,Vn),po=(Hs,tr,Pr="html")=>{const Ur=Pr==="xhtml"?"application/xhtml+xml":"text/html",fa=Mr(Vn.getSpecialElements(),tr.toLowerCase()),yr=fa?`<${tr}>${Hs}`:Hs,fr=Pr==="xhtml"?`${yr}`:`${yr}`,Ar=no.parseFromString(fr,Ur).body;return ao.sanitizeHtmlElement(Ar,Ur),fa?Ar.firstChild:Ar},vo=Wn.addFilter,Ao=Wn.getFilters,Fo=Wn.removeFilter,Qo=jn.addFilter,qo=jn.getFilters,ds=jn.removeFilter,bs=(Hs,tr)=>{IA(Vn,Hs)&&tr.push(Hs)},as=(Hs,tr)=>{const Pr=xo(tr.attr(OD)),Ur=tr.type===1&&!Mr(Hs,tr.name)&&!og(Vn,tr)&&!ng(tr.name);return tr.type===3||Ur&&!Pr},ys=(Hs,tr)=>{const Pr=dI(uI("script,style,head,html,body,title,meta,param"),Vn.getBlockElements()),Ur=/^[ \t\r\n]+/,fa=/[ \t\r\n]+$/;let yr=Hs.firstChild,fr=null;const Ar=wa=>{var Va,Tl;wa&&(yr=wa.firstChild,yr&&yr.type===3&&(yr.value=(Va=yr.value)===null||Va===void 0?void 0:Va.replace(Ur,"")),yr=wa.lastChild,yr&&yr.type===3&&(yr.value=(Tl=yr.value)===null||Tl===void 0?void 0:Tl.replace(fa,"")))};if(Vn.isValidChild(Hs.name,tr.toLowerCase())){for(;yr;){const wa=yr.next;as(Pr,yr)?(fr||(fr=new fp(tr,1),fr.attr(Gn.forced_root_block_attrs),Hs.insert(fr,yr)),fr.append(yr)):(Ar(fr),fr=null),yr=wa}Ar(fr)}},zs={schema:Vn,addAttributeFilter:Qo,getAttributeFilters:qo,removeAttributeFilter:ds,addNodeFilter:vo,getNodeFilters:Ao,removeNodeFilter:Fo,parse:(Hs,tr={})=>{var Pr;const Ur=Gn.validate,fa=(Pr=tr.context)!==null&&Pr!==void 0?Pr:Gn.root_name,yr=po(Hs,fa,tr.format);kv(Vn,yr);const fr=new fp(fa,11);SE(fr,yr,Vn.getSpecialElements(),ao.sanitizeNamespaceElement),yr.innerHTML="";const[Ar,wa]=FQ(fr,Vn,Gn,tr),Va=[],Tl=Ur?Wd=>bs(Wd,Va):Js,tc={nodes:{},attributes:{}},uu=Wd=>ER(Ao(),qo(),Wd,tc);if(mp(fr,[Ar,uu],[wa,Tl]),Va.reverse(),Ur&&Va.length>0)if(tr.context){const{pass:Wd,fail:Jh}=Vr(Va,_u=>_u.parent===fr);LA(Jh,Vn,fr,uu),tr.invalid=Wd.length>0}else LA(Va,Vn,fr,uu);const Qu=rP(Gn,tr);return Qu&&(fr.name==="body"||tr.isRootContent)&&ys(fr,Qu),tr.invalid||TR(tc,tr),fr}};return z5(zs,Gn),aD(zs,Gn,Vn),zs},fI=Mn=>QA(Mn)?I_({validate:!1}).serialize(Mn):Mn,bg=(Mn,Vn,Wn)=>{const jn=fI(Mn),Gn=Vn(jn);if(Gn.isDefaultPrevented())return Gn;if(QA(Mn))if(Gn.content!==jn){const no=a0({validate:!1,forced_root_block:!1,...Wn}).parse(Gn.content,{context:Mn.name});return{...Gn,content:no}}else return{...Gn,content:Mn};else return Gn},V_=(Mn,Vn)=>{if(Vn.no_events)return ym.value(Vn);{const Wn=P3(Mn,Vn);return Wn.isDefaultPrevented()?ym.error(ic(Mn,{content:"",...Wn}).content):ym.value(Wn)}},SD=(Mn,Vn,Wn)=>Wn.no_events?Vn:bg(Vn,Gn=>ic(Mn,{...Wn,content:Gn}),{sanitize:jb(Mn),sandbox_iframes:b_(Mn)}).content,wD=(Mn,Vn)=>{if(Vn.no_events)return ym.value(Vn);{const Wn=bg(Vn.content,jn=>RN(Mn,{...Vn,content:jn}),{sanitize:jb(Mn),sandbox_iframes:b_(Mn)});return Wn.isDefaultPrevented()?(JT(Mn,Wn),ym.error(void 0)):ym.value(Wn)}},iP=(Mn,Vn,Wn)=>{Wn.no_events||JT(Mn,{...Wn,content:Vn})},CD=(Mn,Vn,Wn)=>({element:Mn,width:Vn,rows:Wn}),kD=(Mn,Vn)=>({element:Mn,cells:Vn}),wE=(Mn,Vn)=>({x:Mn,y:Vn}),aP=(Mn,Vn)=>Ld(Mn,Vn).bind(Em).getOr(1),HQ=(Mn,Vn,Wn,jn,Gn)=>{const no=aP(Gn,"rowspan"),ao=aP(Gn,"colspan"),po=Mn.rows;for(let vo=Wn;vo{const jn=Mn.rows;return!!(jn[Wn]?jn[Wn].cells:[])[Vn]},QQ=(Mn,Vn,Wn)=>{for(;hI(Mn,Vn,Wn);)Vn++;return Vn},lP=Mn=>ra(Mn,(Vn,Wn)=>Wn.cells.length>Vn?Wn.cells.length:Vn,0),cP=(Mn,Vn)=>{const Wn=Mn.rows;for(let jn=0;jn{const no=[],ao=Mn.rows;for(let po=Wn;po<=Gn;po++){const vo=ao[po].cells,Ao=Vn{const jn=Vn.x,Gn=Vn.y,no=Wn.x,ao=Wn.y,po=Gn{const Wn=Hm(Mn.element),jn=Cs.fromTag("tbody");return Lc(jn,Vn),Fu(Wn,jn),Wn},xD=Mn=>Us(Mn.rows,Vn=>{const Wn=Us(Vn.cells,Gn=>{const no=GO(Gn);return Mu(no,"colspan"),Mu(no,"rowspan"),no}),jn=Hm(Vn.element);return Lc(jn,Wn),jn}),zQ=Mn=>{const Vn=CD(Hm(Mn),0,[]);return fs(mf(Mn,"tr"),(Wn,jn)=>{fs(mf(Wn,"td,th"),(Gn,no)=>{HQ(Vn,QQ(Vn,no,jn),jn,Wn,Gn)})}),CD(Vn.element,lP(Vn.rows),Vn.rows)},uP=Mn=>wy(Mn,xD(Mn)),ED=(Mn,Vn,Wn)=>cP(Mn,Vn).bind(jn=>cP(Mn,Wn).map(Gn=>VQ(Mn,jn,Gn))),pI=Mn=>xa(Mn,Vn=>ql(Vn)==="ul"||ql(Vn)==="ol"),gI=(Mn,Vn)=>xa(Mn,Wn=>ql(Wn)==="li"&&kx(Wn,Vn)).fold(xs([]),Wn=>pI(Mn).map(jn=>{const Gn=Cs.fromTag(ql(jn)),no=pr(Ym(jn),(ao,po)=>Dc(po,"list-style"));return ff(Gn,no),[Cs.fromTag("li"),Gn]}).getOr([])),bI=(Mn,Vn)=>{const Wn=ra(Vn,(jn,Gn)=>(Fu(Gn,jn),Gn),Mn);return Vn.length>0?zx([Wn]):Wn},WQ=Mn=>Lm(Mn)?Wc(Mn).filter(xh).fold(xs([]),Vn=>[Mn,Vn]):xh(Mn)?[Mn]:[],UQ=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Vn.commonAncestorContainer),Gn=py(jn,Mn),no=nr(Gn,vo=>Wn.isWrapper(ql(vo))),ao=gI(Gn,Vn),po=no.concat(ao.length?ao:WQ(jn));return Us(po,Hm)},vI=()=>zx([]),ZQ=(Mn,Vn,Wn)=>bI(Cs.fromDom(Vn.cloneContents()),UQ(Mn,Vn,Wn)),qQ=(Mn,Vn)=>lm(Vn,"table",ws(Vs,Mn)),yI=(Mn,Vn)=>qQ(Mn,Vn[0]).bind(Wn=>{const jn=Vn[0],Gn=Vn[Vn.length-1],no=zQ(Wn);return ED(no,jn,Gn).map(ao=>zx([uP(ao)]))}).getOrThunk(vI),jQ=(Mn,Vn,Wn)=>Vn.length>0&&Vn[0].collapsed?vI():ZQ(Mn,Vn[0],Wn),XQ=(Mn,Vn,Wn)=>{const jn=O3(Vn,Mn);return jn.length>0?yI(Mn,jn):jQ(Mn,Vn,Wn)},dP=(Mn,Vn)=>Vn>=0&&VnXo(Mn.innerText),AD=Mn=>Mn.map(Vn=>Vn.nodeName).getOr("div").toLowerCase(),PD=Mn=>zo.from(Mn.selection.getRng()).map(Vn=>{var Wn;const jn=zo.from(Mn.dom.getParent(Vn.commonAncestorContainer,Mn.dom.isBlock)),Gn=Mn.getBody(),no=AD(jn),ao=Cs.fromDom(Vn.cloneContents());Rl(ao),eR(ao);const po=Mn.dom.add(Gn,no,{"data-mce-bogus":"all",style:"overflow: hidden; opacity: 0;"},ao.dom),vo=TD(po),Ao=Xo((Wn=po.textContent)!==null&&Wn!==void 0?Wn:"");if(Mn.dom.remove(po),dP(Ao,0)||dP(Ao,Ao.length-1)){const Fo=jn.getOr(Gn),Qo=TD(Fo),qo=Qo.indexOf(vo);if(qo===-1)return vo;{const ds=dP(Qo,qo-1),bs=dP(Qo,qo+vo.length);return(ds?" ":"")+vo+(bs?" ":"")}}else return vo}).getOr(""),OI=(Mn,Vn)=>{const Wn=Mn.selection.getRng(),jn=Mn.dom.create("body"),Gn=Mn.selection.getSel(),no=J3(Mn,sk(Gn)),ao=Vn.contextual?XQ(Cs.fromDom(Mn.getBody()),no,Mn.schema).dom:Wn.cloneContents();return ao&&jn.appendChild(ao),Mn.selection.serializer.serialize(jn,Vn)},$D=(Mn,Vn)=>{if(Vn.format==="text")return PD(Mn);{const Wn=OI(Mn,Vn);return Vn.format==="tree"?Wn:Mn.selection.isCollapsed()?"":Wn}},_I=(Mn,Vn)=>({...Mn,format:Vn,get:!0,selection:!0,getInner:!0}),SI=(Mn,Vn,Wn={})=>{const jn=_I(Wn,Vn);return V_(Mn,jn).fold(Qr,Gn=>{const no=$D(Mn,Gn);return SD(Mn,no,Gn)})},CE=0,RD=1,DD=2,wI=(Mn,Vn)=>{const Wn=Mn.length+Vn.length+2,jn=new Array(Wn),Gn=new Array(Wn),no=(Fo,Qo,qo)=>({start:Fo,end:Qo,diag:qo}),ao=(Fo,Qo,qo,ds,bs)=>{const as=vo(Fo,Qo,qo,ds);if(as===null||as.start===Qo&&as.diag===Qo-ds||as.end===Fo&&as.diag===Fo-qo){let ys=Fo,Ls=qo;for(;ysds-qo?(bs.push([DD,Mn[ys]]),++ys):(bs.push([RD,Vn[Ls]]),++Ls)}else{ao(Fo,as.start,qo,as.start-as.diag,bs);for(let ys=as.start;ys{let bs=Fo;for(;bs-Qo{const bs=Qo-Fo,as=ds-qo;if(bs===0||as===0)return null;const ys=bs-as,Ls=as+bs,zs=(Ls%2===0?Ls:Ls+1)/2;jn[1+zs]=Fo,Gn[1+zs]=Qo+1;let Hs,tr,Pr,Ur,fa;for(Hs=0;Hs<=zs;++Hs){for(tr=-Hs;tr<=Hs;tr+=2){for(Pr=tr+zs,tr===-Hs||tr!==Hs&&jn[Pr-1]=Fo&&fa>=qo&&Mn[Ur]===Vn[fa];)Gn[Pr]=Ur--,fa--;if(ys%2===0&&-Hs<=tr&&tr<=Hs&&Gn[Pr]<=jn[Pr+ys])return po(Gn[Pr],tr+Fo-qo,Qo,ds)}}return null},Ao=[];return ao(0,Mn.length,0,Vn.length,Ao),Ao},CI=Mn=>Oa(Mn)?Mn.outerHTML:Ir(Mn)?P0.encodeRaw(Mn.data,!1):Dg(Mn)?"":"",MD=Mn=>{let Vn;const Wn=document.createElement("div"),jn=document.createDocumentFragment();for(Mn&&(Wn.innerHTML=Mn);Vn=Wn.firstChild;)jn.appendChild(Vn);return jn},YQ=(Mn,Vn,Wn)=>{const jn=MD(Vn);if(Mn.hasChildNodes()&&Wn{if(Mn.hasChildNodes()&&Vn{let Wn=0;fs(Mn,jn=>{jn[0]===CE?Wn++:jn[0]===RD?(YQ(Vn,jn[1],Wn),Wn++):jn[0]===DD&&fP(Vn,Wn)})},KQ=(Mn,Vn)=>nr(Us(kc(Mn.childNodes),ko(Xo,CI)),Wn=>Wn.length>0),JQ=(Mn,Vn)=>{const Wn=Us(kc(Vn.childNodes),CI);return GQ(wI(Wn,Mn),Vn),Vn},kI=br(()=>document.implementation.createHTMLDocument("undo")),xI=Mn=>Mn.querySelector("iframe")!==null,eV=Mn=>({type:"fragmented",fragments:Mn,content:"",bookmark:null,beforeBookmark:null}),tV=Mn=>({type:"complete",fragments:null,content:Mn,bookmark:null,beforeBookmark:null}),hP=Mn=>{const Vn=Mn.serializer.getTempAttrs(),Wn=sL(Mn.getBody(),Vn);return xI(Wn)?eV(KQ(Wn)):tV(Xo(Wn.innerHTML))},ND=(Mn,Vn,Wn)=>{const jn=Wn?Vn.beforeBookmark:Vn.bookmark;Vn.type==="fragmented"?JQ(Vn.fragments,Mn.getBody()):Mn.setContent(Vn.content,{format:"raw",no_selection:rs(jn)&&IT(jn)?!jn.isFakeCaret:!0}),jn&&(Mn.selection.moveToBookmark(jn),Mn.selection.scrollIntoView())},LD=Mn=>Mn.type==="fragmented"?Mn.fragments.join(""):Mn.content,ID=Mn=>{const Vn=Cs.fromTag("body",kI());return dm(Vn,LD(Mn)),fs(mf(Vn,"*[data-mce-bogus]"),hf),os(Vn)},qY=(Mn,Vn)=>LD(Mn)===LD(Vn),nV=(Mn,Vn)=>ID(Mn)===ID(Vn),BD=(Mn,Vn)=>!Mn||!Vn?!1:qY(Mn,Vn)?!0:nV(Mn,Vn),FD=Mn=>Mn.get()===0,mP=(Mn,Vn,Wn)=>{FD(Wn)&&(Mn.typing=Vn)},EI=(Mn,Vn)=>{Mn.typing&&(mP(Mn,!1,Vn),Mn.add())},oV=Mn=>{Mn.typing&&(Mn.typing=!1,Mn.add())},sV=(Mn,Vn,Wn)=>{FD(Vn)&&Wn.set(ib(Mn.selection))},TI=(Mn,Vn,Wn,jn,Gn,no,ao)=>{const po=hP(Mn),vo=Lr.extend(no||{},po);if(!FD(jn)||Mn.removed)return null;const Ao=Vn.data[Wn.get()];if(Mn.dispatch("BeforeAddUndo",{level:vo,lastLevel:Ao,originalEvent:ao}).isDefaultPrevented()||Ao&&BD(Ao,vo))return null;Vn.data[Wn.get()]&&Gn.get().each(qo=>{Vn.data[Wn.get()].beforeBookmark=qo});const Fo=ny(Mn);if(Fo&&Vn.data.length>Fo){for(let qo=0;qo0?(Mn.setDirty(!0),Mn.dispatch("AddUndo",Qo),Mn.dispatch("change",Qo)):Mn.dispatch("AddUndo",Qo),vo},rV=(Mn,Vn,Wn)=>{Vn.data=[],Wn.set(0),Vn.typing=!1,Mn.dispatch("ClearUndos")},iV=(Mn,Vn,Wn,jn,Gn)=>{if(Vn.transact(jn)){const no=Vn.data[Wn.get()].bookmark,ao=Vn.data[Wn.get()-1];ND(Mn,ao,!0),Vn.transact(Gn)&&(Vn.data[Wn.get()-1].beforeBookmark=no)}},aV=(Mn,Vn,Wn)=>{let jn;return Vn.get(){let Gn;return Vn.typing&&(Vn.add(),Vn.typing=!1,mP(Vn,!1,Wn)),jn.get()>0&&(jn.set(jn.get()-1),Gn=Vn.data[jn.get()],ND(Mn,Gn,!0),Mn.setDirty(!0),Mn.dispatch("Undo",{level:Gn})),Gn},cV=Mn=>{Mn.clear(),Mn.add()},jY=(Mn,Vn,Wn)=>Wn.get()>0||Vn.typing&&Vn.data[0]&&!BD(hP(Mn),Vn.data[0]),XY=(Mn,Vn)=>Vn.get()(EI(Mn,Vn),Mn.beforeChange(),Mn.ignore(Wn),Mn.add()),dV=(Mn,Vn)=>{try{Mn.set(Mn.get()+1),Vn()}finally{Mn.set(Mn.get()-1)}},YY=(Mn,Vn)=>{const Wn=Mn.dom,jn=rs(Vn)?Vn:Mn.getBody();fs(Wn.select("table,a",jn),Gn=>{switch(Gn.nodeName){case"TABLE":const no=ox(Mn),ao=Wn.getAttrib(Gn,"border");(!ao||ao==="0")&&Mn.hasVisual?Wn.addClass(Gn,no):Wn.removeClass(Gn,no);break;case"A":if(!Wn.getAttrib(Gn,"href")){const po=Wn.getAttrib(Gn,"name")||Gn.id,vo=FC(Mn);po&&Mn.hasVisual?Wn.addClass(Gn,vo):Wn.removeClass(Gn,vo)}break}}),Mn.dispatch("VisualAid",{element:Vn,hasVisual:Mn.hasVisual})},AI=Mn=>({init:{bindEvents:Js},undoManager:{beforeChange:(Vn,Wn)=>sV(Mn,Vn,Wn),add:(Vn,Wn,jn,Gn,no,ao)=>TI(Mn,Vn,Wn,jn,Gn,no,ao),undo:(Vn,Wn,jn)=>lV(Mn,Vn,Wn,jn),redo:(Vn,Wn)=>aV(Mn,Vn,Wn),clear:(Vn,Wn)=>rV(Mn,Vn,Wn),reset:Vn=>cV(Vn),hasUndo:(Vn,Wn)=>jY(Mn,Vn,Wn),hasRedo:(Vn,Wn)=>XY(Vn,Wn),transact:(Vn,Wn,jn)=>uV(Vn,Wn,jn),ignore:(Vn,Wn)=>dV(Vn,Wn),extra:(Vn,Wn,jn,Gn)=>iV(Mn,Vn,Wn,jn,Gn)},formatter:{match:(Vn,Wn,jn,Gn)=>VA(Mn,Vn,Wn,jn,Gn),matchAll:(Vn,Wn)=>G9(Mn,Vn,Wn),matchNode:(Vn,Wn,jn,Gn)=>by(Mn,Vn,Wn,jn,Gn),canApply:Vn=>c5(Mn,Vn),closest:Vn=>Lw(Mn,Vn),apply:(Vn,Wn,jn)=>R5(Mn,Vn,Wn,jn),remove:(Vn,Wn,jn,Gn)=>T5(Mn,Vn,Wn,jn,Gn),toggle:(Vn,Wn,jn)=>gQ(Mn,Vn,Wn,jn),formatChanged:(Vn,Wn,jn,Gn,no)=>pQ(Mn,Vn,Wn,jn,Gn,no)},editor:{getContent:Vn=>FY(Mn,Vn),setContent:(Vn,Wn)=>i5(Mn,Vn,Wn),insertContent:(Vn,Wn)=>r5(Mn,Vn,Wn),addVisual:Vn=>YY(Mn,Vn)},selection:{getContent:(Vn,Wn)=>SI(Mn,Vn,Wn)},autocompleter:{addDecoration:Vn=>FH(Mn,Vn),removeDecoration:()=>QH(Mn,Cs.fromDom(Mn.getBody()))},raw:{getModel:()=>zo.none()}}),Gd=Mn=>{const Vn=Ao=>Bo(Ao)?Ao:{},{init:Wn,undoManager:jn,formatter:Gn,editor:no,selection:ao,autocompleter:po,raw:vo}=Mn;return{init:{bindEvents:Wn.bindEvents},undoManager:{beforeChange:jn.beforeChange,add:jn.add,undo:jn.undo,redo:jn.redo,clear:jn.clear,reset:jn.reset,hasUndo:jn.hasUndo,hasRedo:jn.hasRedo,transact:(Ao,Fo,Qo)=>jn.transact(Qo),ignore:(Ao,Fo)=>jn.ignore(Fo),extra:(Ao,Fo,Qo,qo)=>jn.extra(Qo,qo)},formatter:{match:(Ao,Fo,Qo,qo)=>Gn.match(Ao,Vn(Fo),qo),matchAll:Gn.matchAll,matchNode:Gn.matchNode,canApply:Ao=>Gn.canApply(Ao),closest:Ao=>Gn.closest(Ao),apply:(Ao,Fo,Qo)=>Gn.apply(Ao,Vn(Fo)),remove:(Ao,Fo,Qo,qo)=>Gn.remove(Ao,Vn(Fo)),toggle:(Ao,Fo,Qo)=>Gn.toggle(Ao,Vn(Fo)),formatChanged:(Ao,Fo,Qo,qo,ds)=>Gn.formatChanged(Fo,Qo,qo,ds)},editor:{getContent:Ao=>no.getContent(Ao),setContent:(Ao,Fo)=>({content:no.setContent(Ao,Fo),html:""}),insertContent:(Ao,Fo)=>(no.insertContent(Ao),""),addVisual:no.addVisual},selection:{getContent:(Ao,Fo)=>ao.getContent(Fo)},autocompleter:{addDecoration:po.addDecoration,removeDecoration:po.removeDecoration},raw:{getModel:()=>zo.some(vo.getRawModel())}}},HD=()=>{const Mn=xs(null),Vn=xs("");return{init:{bindEvents:Js},undoManager:{beforeChange:Js,add:Mn,undo:Mn,redo:Mn,clear:Js,reset:Js,hasUndo:hs,hasRedo:hs,transact:Mn,ignore:Js,extra:Js},formatter:{match:hs,matchAll:xs([]),matchNode:xs(void 0),canApply:hs,closest:Vn,apply:Js,remove:Js,toggle:Js,formatChanged:xs({unbind:Js})},editor:{getContent:Vn,setContent:xs({content:"",html:""}),insertContent:xs(""),addVisual:Js},selection:{getContent:Vn},autocompleter:{addDecoration:Js,removeDecoration:Js},raw:{getModel:xs(zo.none())}}},wO=Mn=>Mr(Mn.plugins,"rtc"),fV=Mn=>Ma(Mn.plugins,"rtc").bind(Vn=>zo.from(Vn.setup)),hV=Mn=>{const Vn=Mn;return fV(Mn).fold(()=>(Vn.rtcInstance=AI(Mn),zo.none()),Wn=>(Vn.rtcInstance=HD(),zo.some(()=>Wn().then(jn=>(Vn.rtcInstance=Gd(jn),jn.rtc.isRemote)))))},z_=Mn=>Mn.rtcInstance?Mn.rtcInstance:AI(Mn),oh=Mn=>{const Vn=Mn.rtcInstance;if(Vn)return Vn;throw new Error("Failed to get RTC instance not yet initialized.")},GY=(Mn,Vn,Wn)=>{oh(Mn).undoManager.beforeChange(Vn,Wn)},Cm=(Mn,Vn,Wn,jn,Gn,no,ao)=>oh(Mn).undoManager.add(Vn,Wn,jn,Gn,no,ao),PI=(Mn,Vn,Wn,jn)=>oh(Mn).undoManager.undo(Vn,Wn,jn),$I=(Mn,Vn,Wn)=>oh(Mn).undoManager.redo(Vn,Wn),RI=(Mn,Vn,Wn)=>{oh(Mn).undoManager.clear(Vn,Wn)},mV=(Mn,Vn)=>{oh(Mn).undoManager.reset(Vn)},pV=(Mn,Vn,Wn)=>oh(Mn).undoManager.hasUndo(Vn,Wn),pP=(Mn,Vn,Wn)=>oh(Mn).undoManager.hasRedo(Vn,Wn),gV=(Mn,Vn,Wn,jn)=>oh(Mn).undoManager.transact(Vn,Wn,jn),QD=(Mn,Vn,Wn)=>{oh(Mn).undoManager.ignore(Vn,Wn)},bV=(Mn,Vn,Wn,jn,Gn)=>{oh(Mn).undoManager.extra(Vn,Wn,jn,Gn)},DI=(Mn,Vn,Wn,jn,Gn)=>oh(Mn).formatter.match(Vn,Wn,jn,Gn),MI=(Mn,Vn,Wn)=>oh(Mn).formatter.matchAll(Vn,Wn),VD=(Mn,Vn,Wn,jn,Gn)=>oh(Mn).formatter.matchNode(Vn,Wn,jn,Gn),NI=(Mn,Vn)=>oh(Mn).formatter.canApply(Vn),zD=(Mn,Vn)=>oh(Mn).formatter.closest(Vn),vV=(Mn,Vn,Wn,jn)=>{oh(Mn).formatter.apply(Vn,Wn,jn)},yV=(Mn,Vn,Wn,jn,Gn)=>{oh(Mn).formatter.remove(Vn,Wn,jn,Gn)},OV=(Mn,Vn,Wn,jn)=>{oh(Mn).formatter.toggle(Vn,Wn,jn)},vb=(Mn,Vn,Wn,jn,Gn,no)=>oh(Mn).formatter.formatChanged(Vn,Wn,jn,Gn,no),_V=(Mn,Vn)=>z_(Mn).editor.getContent(Vn),SV=(Mn,Vn,Wn)=>z_(Mn).editor.setContent(Vn,Wn),wV=(Mn,Vn,Wn)=>z_(Mn).editor.insertContent(Vn,Wn),CV=(Mn,Vn,Wn)=>oh(Mn).selection.getContent(Vn,Wn),kV=(Mn,Vn)=>oh(Mn).editor.addVisual(Vn),WD=Mn=>oh(Mn).init.bindEvents(),xV=(Mn,Vn)=>oh(Mn).autocompleter.addDecoration(Vn),EV=Mn=>oh(Mn).autocompleter.removeDecoration(),TV=(Mn,Vn={})=>{const Wn=Vn.format?Vn.format:"html";return CV(Mn,Wn,Vn)},kE=Mn=>Mn.dom.length===0?(sc(Mn),zo.none()):zo.some(Mn),AV=(Mn,Vn)=>Mn.filter(Wn=>fO.isBookmarkNode(Wn.dom)).bind(Vn?Wh:_d),PV=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.dom,ao=Vn.dom,po=jn?no.length:ao.length;jn?(yh(no,ao,Gn,!1,!jn),Wn.setStart(ao,po)):(yh(ao,no,Gn,!1,!jn),Wn.setEnd(ao,po))},LI=(Mn,Vn,Wn)=>{Wc(Mn).each(jn=>{const Gn=Mn.dom;Vn&&Ck(jn,lr(Gn,0),Wn)?$w(Gn,0,Wn):!Vn&&kk(jn,lr(Gn,Gn.length),Wn)&&EL(Gn,Gn.length,Wn)})},gP=(Mn,Vn,Wn,jn,Gn)=>{Mn.bind(no=>((jn?EL:$w)(no.dom,jn?no.dom.length:0,Gn),Vn.filter(qd).map(po=>PV(no,po,Wn,jn,Gn)))).orThunk(()=>AV(Vn,jn).or(Vn).filter(qd).map(ao=>LI(ao,jn,Gn)))},$V=(Mn,Vn,Wn)=>{const jn=zo.from(Vn.firstChild).map(Cs.fromDom),Gn=zo.from(Vn.lastChild).map(Cs.fromDom);Mn.deleteContents(),Mn.insertNode(Vn);const no=jn.bind(_d).filter(qd).bind(kE),ao=Gn.bind(Wh).filter(qd).bind(kE);gP(no,jn,Mn,!0,Wn),gP(ao,Gn,Mn,!1,Wn),Mn.collapse(!1)},RV=(Mn,Vn)=>({format:"html",...Mn,set:!0,selection:!0,content:Vn}),KY=(Mn,Vn)=>{if(Vn.format!=="raw"){const Wn=Mn.selection.getRng(),jn=Mn.dom.getParent(Wn.commonAncestorContainer,Mn.dom.isBlock),Gn=jn?{context:jn.nodeName.toLowerCase()}:{},no=Mn.parser.parse(Vn.content,{forced_root_block:!1,...Gn,...Vn});return I_({validate:!1},Mn.schema).serialize(no)}else return Vn.content},DV=(Mn,Vn,Wn={})=>{const jn=RV(Wn,Vn);wD(Mn,jn).each(Gn=>{const no=KY(Mn,Gn),ao=Mn.selection.getRng();$V(ao,ao.createContextualFragment(no),Mn.schema),Mn.selection.setRng(ao),Ew(Mn,ao),iP(Mn,no,Gn)})},II=(Mn,Vn,Wn)=>{if(Mr(Mn,Vn)){const jn=nr(Mn[Vn],Gn=>Gn!==Wn);jn.length===0?delete Mn[Vn]:Mn[Vn]=jn}};var BI=(Mn,Vn)=>{let Wn,jn;const Gn=(po,vo)=>xa(vo,Ao=>Mn.is(Ao,po)),no=po=>Mn.getParents(po,void 0,Mn.getRoot()),ao=()=>{Wn={},jn={},Vn.on("NodeChange",po=>{const vo=po.element,Ao=no(vo),Fo={};Rr(Wn,(Qo,qo)=>{Gn(qo,Ao).each(ds=>{jn[qo]||(fs(Qo,bs=>{bs(!0,{node:ds,selector:qo,parents:Ao})}),jn[qo]=Qo),Fo[qo]=Qo})}),Rr(jn,(Qo,qo)=>{Fo[qo]||(delete jn[qo],fs(Qo,ds=>{ds(!1,{node:vo,selector:qo,parents:Ao})}))})})};return{selectorChangedWithUnbind:(po,vo)=>(Wn||ao(),Wn[po]||(Wn[po]=[]),Wn[po].push(vo),Gn(po,no(Vn.selection.getStart())).each(()=>{jn[po]=Wn[po]}),{unbind:()=>{II(Wn,po,vo),II(jn,po,vo)}})}};const UD=Mn=>!!(Mn&&Mn.ownerDocument)&&Dr(Cs.fromDom(Mn.ownerDocument),Cs.fromDom(Mn)),MV=Mn=>Mn?UD(Mn.startContainer)&&UD(Mn.endContainer):!1,W_=(Mn,Vn,Wn,jn)=>{let Gn,no;const{selectorChangedWithUnbind:ao}=BI(Mn,jn),po=(ea,pa)=>{const $c=Mn.createRng();rs(ea)&&rs(pa)?($c.setStart(ea,pa),$c.setEnd(ea,pa),tr($c),Ls(!1)):(xx(Mn,$c,jn.getBody(),!0),tr($c))},vo=ea=>TV(jn,ea),Ao=(ea,pa)=>DV(jn,ea,pa),Fo=ea=>G3(jn.getBody(),Hs(),ea),Qo=ea=>jN(jn.getBody(),Hs(),ea),qo=(ea,pa)=>Jh.getBookmark(ea,pa),ds=ea=>Jh.moveToBookmark(ea),bs=(ea,pa)=>($H(Mn,ea,pa).each(tr),ea),as=()=>{const ea=Hs(),pa=zs();return!ea||ea.item?!1:ea.compareEndPoints?ea.compareEndPoints("StartToEnd",ea)===0:!pa||ea.collapsed},ys=()=>{const ea=Hs(),pa=jn.getBody().querySelectorAll('[data-mce-selected="1"]');return pa.length>0?gc(pa,$c=>Mn.isEditable($c.parentElement)):ZN(Mn,ea)},Ls=ea=>{const pa=Hs();pa.collapse(!!ea),tr(pa)},zs=()=>Vn.getSelection?Vn.getSelection():Vn.document.selection,Hs=()=>{let ea;const pa=(ac,Pa,ml)=>{try{return Pa.compareBoundaryPoints(ac,ml)}catch{return-1}},$c=Vn.document;if(rs(jn.bookmark)&&!L_(jn)){const ac=q3(jn);if(ac.isSome())return ac.map(Pa=>J3(jn,[Pa])[0]).getOr($c.createRange())}try{const ac=zs();ac&&!Xp(ac.anchorNode)&&(ac.rangeCount>0?ea=ac.getRangeAt(0):ea=$c.createRange(),ea=J3(jn,[ea])[0])}catch{}if(ea||(ea=$c.createRange()),Nm(ea.startContainer)&&ea.collapsed){const ac=Mn.getRoot();ea.setStart(ac,0),ea.setEnd(ac,0)}return Gn&&no&&(pa(ea.START_TO_START,ea,Gn)===0&&pa(ea.END_TO_END,ea,Gn)===0?ea=no:(Gn=null,no=null)),ea},tr=(ea,pa)=>{if(!MV(ea))return;const $c=zs();if(ea=jn.dispatch("SetSelectionRange",{range:ea,forward:pa}).range,$c){no=ea;try{$c.removeAllRanges(),$c.addRange(ea)}catch{}pa===!1&&$c.extend&&($c.collapse(ea.endContainer,ea.endOffset),$c.extend(ea.startContainer,ea.startOffset)),Gn=$c.rangeCount>0?$c.getRangeAt(0):null}if(!ea.collapsed&&ea.startContainer===ea.endContainer&&($c!=null&&$c.setBaseAndExtent)&&ea.endOffset-ea.startOffset<2&&ea.startContainer.hasChildNodes()){const Pa=ea.startContainer.childNodes[ea.startOffset];Pa&&Pa.nodeName==="IMG"&&($c.setBaseAndExtent(ea.startContainer,ea.startOffset,ea.endContainer,ea.endOffset),($c.anchorNode!==ea.startContainer||$c.focusNode!==ea.endContainer)&&$c.setBaseAndExtent(Pa,0,Pa,1))}jn.dispatch("AfterSetSelectionRange",{range:ea,forward:pa})},Pr=ea=>(Ao(Mn.getOuterHTML(ea)),ea),Ur=()=>XN(jn.getBody(),Hs()),fa=(ea,pa)=>PH(Mn,Hs(),ea,pa),yr=()=>{const ea=zs(),pa=ea==null?void 0:ea.anchorNode,$c=ea==null?void 0:ea.focusNode;if(!ea||!pa||!$c||Xp(pa)||Xp($c))return!0;const ac=Mn.createRng(),Pa=Mn.createRng();try{ac.setStart(pa,ea.anchorOffset),ac.collapse(!0),Pa.setStart($c,ea.focusOffset),Pa.collapse(!0)}catch{return!0}return ac.compareBoundaryPoints(ac.START_TO_START,Pa)<=0},Wd={dom:Mn,win:Vn,serializer:Wn,editor:jn,expand:(ea={type:"word"})=>tr(ns(Mn).expand(Hs(),ea)),collapse:Ls,setCursorLocation:po,getContent:vo,setContent:Ao,getBookmark:qo,moveToBookmark:ds,select:bs,isCollapsed:as,isEditable:ys,isForward:yr,setNode:Pr,getNode:Ur,getSel:zs,setRng:tr,getRng:Hs,getStart:Fo,getEnd:Qo,getSelectedBlocks:fa,normalize:()=>{const ea=Hs(),pa=zs();if(!dO(pa)&&ik(jn)){const $c=To(Mn,ea);return $c.each(ac=>{tr(ac,yr())}),$c.getOr(ea)}return ea},selectorChanged:(ea,pa)=>(ao(ea,pa),Wd),selectorChangedWithUnbind:ao,getScrollContainer:()=>{let ea,pa=Mn.getRoot();for(;pa&&pa.nodeName!=="BODY";){if(pa.scrollHeight>pa.clientHeight){ea=pa;break}pa=pa.parentNode}return ea},scrollIntoView:(ea,pa)=>{rs(ea)?Gh(jn,ea,pa):Ew(jn,Hs(),pa)},placeCaretAt:(ea,pa)=>tr(pg(ea,pa,jn.getDoc())),getBoundingClientRect:()=>{const ea=Hs();return ea.collapsed?lr.fromRangeStart(ea).getClientRects()[0]:ea.getBoundingClientRect()},destroy:()=>{Vn=Gn=no=null,_u.destroy()}},Jh=fO(Wd),_u=MN(Wd,jn);return Wd.bookmarkManager=Jh,Wd.controlSelection=_u,Wd},Wk=(Mn,Vn,Wn)=>{Mn.addAttributeFilter("data-mce-tabindex",(jn,Gn)=>{let no=jn.length;for(;no--;){const ao=jn[no];ao.attr("tabindex",ao.attr("data-mce-tabindex")),ao.attr(Gn,null)}}),Mn.addAttributeFilter("src,href,style",(jn,Gn)=>{const no="data-mce-"+Gn,ao=Vn.url_converter,po=Vn.url_converter_scope;let vo=jn.length;for(;vo--;){const Ao=jn[vo];let Fo=Ao.attr(no);Fo!==void 0?(Ao.attr(Gn,Fo.length>0?Fo:null),Ao.attr(no,null)):(Fo=Ao.attr(Gn),Gn==="style"?Fo=Wn.serializeStyle(Wn.parseStyle(Fo),Ao.name):ao&&(Fo=ao.call(po,Fo,Gn,Ao.name)),Ao.attr(Gn,Fo.length>0?Fo:null))}}),Mn.addAttributeFilter("class",jn=>{let Gn=jn.length;for(;Gn--;){const no=jn[Gn];let ao=no.attr("class");ao&&(ao=ao.replace(/(?:^|\s)mce-item-\w+(?!\S)/g,""),no.attr("class",ao.length>0?ao:null))}}),Mn.addAttributeFilter("data-mce-type",(jn,Gn,no)=>{let ao=jn.length;for(;ao--;){const po=jn[ao];po.attr("data-mce-type")==="bookmark"&&!no.cleanup&&(zo.from(po.firstChild).exists(Ao=>{var Fo;return!Po((Fo=Ao.value)!==null&&Fo!==void 0?Fo:"")})?po.unwrap():po.remove())}}),Mn.addNodeFilter("script,style",(jn,Gn)=>{var no;const ao=vo=>vo.replace(/()/g,` +`).replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*(()?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"");let po=jn.length;for(;po--;){const vo=jn[po],Ao=vo.firstChild,Fo=(no=Ao==null?void 0:Ao.value)!==null&&no!==void 0?no:"";if(Gn==="script"){const Qo=vo.attr("type");Qo&&vo.attr("type",Qo==="mce-no/type"?null:Qo.replace(/^mce\-/,"")),Vn.element_format==="xhtml"&&Ao&&Fo.length>0&&(Ao.value=`// `)}else Vn.element_format==="xhtml"&&Ao&&Fo.length>0&&(Ao.value=``)}}),Mn.addNodeFilter("#comment",jn=>{let Gn=jn.length;for(;Gn--;){const no=jn[Gn],ao=no.value;Vn.preserve_cdata&&(ao==null?void 0:ao.indexOf("[CDATA["))===0?(no.name="#cdata",no.type=4,no.value=Wn.decode(ao.replace(/^\[CDATA\[|\]\]$/g,""))):(ao==null?void 0:ao.indexOf("mce:protected "))===0&&(no.name="#text",no.type=3,no.raw=!0,no.value=unescape(ao).substr(14))}}),Mn.addNodeFilter("xml:namespace,input",(jn,Gn)=>{let no=jn.length;for(;no--;){const ao=jn[no];ao.type===7?ao.remove():ao.type===1&&Gn==="input"&&!ao.attr("type")&&ao.attr("type","text")}}),Mn.addAttributeFilter("data-mce-type",jn=>{fs(jn,Gn=>{Gn.attr("data-mce-type")==="format-caret"&&(Gn.isEmpty(Mn.schema.getNonEmptyElements())?Gn.remove():Gn.unwrap())})}),Mn.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style,data-mce-selected,data-mce-expando,data-mce-block,data-mce-type,data-mce-resize,data-mce-placeholder",(jn,Gn)=>{let no=jn.length;for(;no--;)jn[no].attr(Gn,null)}),Vn.remove_trailing_brs&&lD(Vn,Mn,Mn.schema)},xE=Mn=>{const Vn=jn=>(jn==null?void 0:jn.name)==="br",Wn=Mn.lastChild;if(Vn(Wn)){const jn=Wn.prev;Vn(jn)&&(Wn.remove(),jn.remove())}},FI=(Mn,Vn,Wn)=>{let jn;const Gn=Mn.dom;let no=Vn.cloneNode(!0);const ao=document.implementation;if(ao.createHTMLDocument){const po=ao.createHTMLDocument("");Lr.each(no.nodeName==="BODY"?no.childNodes:[no],vo=>{po.body.appendChild(po.importNode(vo,!0))}),no.nodeName!=="BODY"?no=po.body.firstChild:no=po.body,jn=Gn.doc,Gn.doc=po}return Nx(Mn,{...Wn,node:no}),jn&&(Gn.doc=jn),no},HI=(Mn,Vn)=>rs(Mn)&&Mn.hasEventListeners("PreProcess")&&!Vn.no_events,NV=(Mn,Vn,Wn)=>HI(Mn,Wn)?FI(Mn,Vn,Wn):Vn,QI=(Mn,Vn,Wn)=>{Lr.inArray(Vn,Wn)===-1&&(Mn.addAttributeFilter(Wn,(jn,Gn)=>{let no=jn.length;for(;no--;)jn[no].attr(Gn,null)}),Vn.push(Wn))},LV=(Mn,Vn,Wn)=>!Vn.no_events&&Mn?E3(Mn,{...Vn,content:Wn}).content:Wn,IV=(Mn,Vn,Wn)=>{const jn=Xo(Wn.getInner?Vn.innerHTML:Mn.getOuterHTML(Vn));return Wn.selection||Xd(Cs.fromDom(Vn))?jn:Lr.trim(jn)},BV=(Mn,Vn,Wn)=>{const jn=Wn.selection?{forced_root_block:!1,...Wn}:Wn,Gn=Mn.parse(Vn,jn);return xE(Gn),Gn},FV=(Mn,Vn,Wn)=>I_(Mn,Vn).serialize(Wn),VI=(Mn,Vn,Wn,jn,Gn)=>{const no=FV(Vn,Wn,jn);return LV(Mn,Gn,no)},HV=(Mn,Vn)=>{const Wn=["data-mce-selected"],jn={entity_encoding:"named",remove_trailing_brs:!0,pad_empty_with_br:!1,...Mn},Gn=Vn&&Vn.dom?Vn.dom:Eu.DOM,no=Vn&&Vn.schema?Vn.schema:i1(jn),ao=a0(jn,no);Wk(ao,jn,Gn);const po=(vo,Ao={})=>{const Fo={format:"html",...Ao},Qo=NV(Vn,vo,Fo),qo=IV(Gn,Qo,Fo),ds=BV(ao,qo,Fo);return Fo.format==="tree"?ds:VI(Vn,jn,no,ds,Fo)};return{schema:no,addNodeFilter:ao.addNodeFilter,addAttributeFilter:ao.addAttributeFilter,serialize:po,addRules:no.addValidElements,setRules:no.setValidElements,addTempAttr:ws(QI,ao,Wn),getTempAttrs:xs(Wn),getNodeFilters:ao.getNodeFilters,getAttributeFilters:ao.getAttributeFilters,removeNodeFilter:ao.removeNodeFilter,removeAttributeFilter:ao.removeAttributeFilter}},zI=(Mn,Vn)=>{const Wn=HV(Mn,Vn);return{schema:Wn.schema,addNodeFilter:Wn.addNodeFilter,addAttributeFilter:Wn.addAttributeFilter,serialize:Wn.serialize,addRules:Wn.addRules,setRules:Wn.setRules,addTempAttr:Wn.addTempAttr,getTempAttrs:Wn.getTempAttrs,getNodeFilters:Wn.getNodeFilters,getAttributeFilters:Wn.getAttributeFilters,removeNodeFilter:Wn.removeNodeFilter,removeAttributeFilter:Wn.removeAttributeFilter}},EE="html",WI=(Mn,Vn)=>({...Mn,format:Vn,get:!0,getInner:!0}),UI=(Mn,Vn={})=>{const Wn=Vn.format?Vn.format:EE,jn=WI(Vn,Wn);return V_(Mn,jn).fold(Qr,Gn=>{const no=_V(Mn,Gn);return SD(Mn,no,Gn)})},QV="html",VV=(Mn,Vn)=>({format:QV,...Mn,set:!0,content:Vn}),ZD=(Mn,Vn,Wn={})=>{const jn=VV(Wn,Vn);return wD(Mn,jn).map(Gn=>{const no=SV(Mn,Gn.content,Gn);return iP(Mn,no.html,Gn),no.content}).getOr(Vn)},ZI="autoresize_on_init,content_editable_state,padd_empty_with_br,block_elements,boolean_attributes,editor_deselector,editor_selector,elements,file_browser_callback_types,filepicker_validator_handler,force_hex_style_colors,force_p_newlines,gecko_spellcheck,images_dataimg_filter,media_scripts,mode,move_caret_before_on_enter_elements,non_empty_elements,self_closing_elements,short_ended_elements,special,spellchecker_select_languages,spellchecker_whitelist,tab_focus,tabfocus_elements,table_responsive_width,text_block_elements,text_inline_elements,toolbar_drawer,types,validate,whitespace_elements,paste_enable_default_filters,paste_filter_drop,paste_word_valid_elements,paste_retain_style_properties,paste_convert_word_fake_lists".split(","),zV="template_cdate_classes,template_mdate_classes,template_selected_content_classes,template_preview_replace_values,template_replace_values,templates,template_cdate_format,template_mdate_format".split(","),WV="bbcode,colorpicker,contextmenu,fullpage,legacyoutput,spellchecker,textcolor".split(","),qI=[{name:"template",replacedWith:"Advanced Template"},{name:"rtc"}],jI=(Mn,Vn)=>{const Wn=nr(Vn,jn=>Mr(Mn,jn));return Vl(Wn)},JY=Mn=>{const Vn=jI(Mn,ZI),Wn=Mn.forced_root_block;return(Wn===!1||Wn==="")&&Vn.push("forced_root_block (false only)"),Vl(Vn)},rv=Mn=>jI(Mn,zV),bP=(Mn,Vn)=>{const Wn=Lr.makeMap(Mn.plugins," "),Gn=nr(Vn,no=>Mr(Wn,no));return Vl(Gn)},UV=Mn=>bP(Mn,WV),ZV=Mn=>bP(Mn,qI.map(Vn=>Vn.name)),qV=(Mn,Vn)=>{const Wn=JY(Mn),jn=UV(Vn),Gn=jn.length>0,no=Wn.length>0,ao=Vn.theme==="mobile";if(Gn||no||ao){const po=` +- `,vo=ao?` + +Themes:${po}mobile`:"",Ao=Gn?` + +Plugins:${po}${jn.join(po)}`:"",Fo=no?` + +Options:${po}${Wn.join(po)}`:"";console.warn("The following deprecated features are currently enabled and have been removed in TinyMCE 6.0. These features will no longer work and should be removed from the TinyMCE configuration. See https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/ for more information."+vo+Ao+Fo)}},jV=Mn=>xa(qI,Vn=>Vn.name===Mn).fold(()=>Mn,Vn=>Vn.replacedWith?`${Mn}, replaced by ${Vn.replacedWith}`:Mn),su=(Mn,Vn)=>{const Wn=rv(Mn),jn=ZV(Vn),Gn=jn.length>0,no=Wn.length>0;if(Gn||no){const ao=` +- `,po=Gn?` + +Plugins:${ao}${jn.map(jV).join(ao)}`:"",vo=no?` + +Options:${ao}${Wn.join(ao)}`:"";console.warn("The following deprecated features are currently enabled but will be removed soon."+po+vo)}},eG=(Mn,Vn)=>{qV(Mn,Vn),su(Mn,Vn)},vP=Eu.DOM,XV=Mn=>{vP.setStyle(Mn.id,"display",Mn.orgDisplay)},sd=Mn=>zo.from(Mn).each(Vn=>Vn.destroy()),YV=Mn=>{const Vn=Mn;Vn.contentAreaContainer=Vn.formElement=Vn.container=Vn.editorContainer=null,Vn.bodyElement=Vn.contentDocument=Vn.contentWindow=null,Vn.iframeElement=Vn.targetElm=null;const Wn=Mn.selection;if(Wn){const jn=Wn.dom;Vn.selection=Wn.win=Wn.dom=jn.doc=null}},TE=Mn=>{const Vn=Mn.formElement;Vn&&(Vn._mceOldSubmit&&(Vn.submit=Vn._mceOldSubmit,delete Vn._mceOldSubmit),vP.unbind(Vn,"submit reset",Mn.formEventDelegate))},GV=Mn=>{if(!Mn.removed){const{_selectionOverrides:Vn,editorUpload:Wn}=Mn,jn=Mn.getBody(),Gn=Mn.getElement();jn&&Mn.save({is_removing:!0}),Mn.removed=!0,Mn.unbindAllNativeEvents(),Mn.hasHiddenInput&&rs(Gn==null?void 0:Gn.nextSibling)&&vP.remove(Gn.nextSibling),P_(Mn),Mn.editorManager.remove(Mn),!Mn.inline&&jn&&XV(Mn),$_(Mn),vP.remove(Mn.getContainer()),sd(Vn),sd(Wn),Mn.destroy()}},KV=(Mn,Vn)=>{const{selection:Wn,dom:jn}=Mn;if(!Mn.destroyed){if(!Vn&&!Mn.removed){Mn.remove();return}Vn||(Mn.editorManager.off("beforeunload",Mn._beforeUnload),Mn.theme&&Mn.theme.destroy&&Mn.theme.destroy(),sd(Wn),sd(jn)),TE(Mn),YV(Mn),Mn.destroyed=!0}},AE=(()=>{const Mn={};return{add:(Gn,no)=>{Mn[Gn]=no},get:Gn=>Mn[Gn]?Mn[Gn]:{icons:{}},has:Gn=>Mr(Mn,Gn)}})(),yb=$h.ModelManager,vg=(Mn,Vn)=>Vn.dom[Mn],Uk=(Mn,Vn)=>parseInt(Ju(Vn,Mn),10),U_=ws(vg,"clientWidth"),Cy=ws(vg,"clientHeight"),PE=ws(Uk,"margin-top"),qD=ws(Uk,"margin-left"),jD=Mn=>Mn.dom.getBoundingClientRect(),XI=(Mn,Vn,Wn)=>{const jn=U_(Mn),Gn=Cy(Mn);return Vn>=0&&Wn>=0&&Vn<=jn&&Wn<=Gn},YI=(Mn,Vn,Wn,jn)=>{const Gn=jD(Vn),no=Mn?Gn.left+Vn.dom.clientLeft+qD(Vn):0,ao=Mn?Gn.top+Vn.dom.clientTop+PE(Vn):0,po=Wn-no,vo=jn-ao;return{x:po,y:vo}},JV=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Mn.getBody()),Gn=Mn.inline?jn:zl(jn),no=YI(Mn.inline,Gn,Vn,Wn);return XI(Gn,no.x,no.y)},ez=Mn=>zo.from(Mn).map(Cs.fromDom),GI=Mn=>{const Vn=Mn.inline?Mn.getBody():Mn.getContentAreaContainer();return ez(Vn).map(Ag).getOr(!1)};var KI=()=>{const Mn=()=>{throw new Error("Theme did not provide a NotificationManager implementation.")};return{open:Mn,close:Mn,getArgs:Mn}};const XD=Mn=>{const Vn=[],Wn=()=>{const qo=Mn.theme;return qo&&qo.getNotificationManagerImpl?qo.getNotificationManagerImpl():KI()},jn=()=>zo.from(Vn[0]),Gn=(qo,ds)=>qo.type===ds.type&&qo.text===ds.text&&!qo.progressBar&&!qo.timeout&&!ds.progressBar&&!ds.timeout,no=()=>{fs(Vn,qo=>{qo.reposition()})},ao=qo=>{Vn.push(qo)},po=qo=>{Nl(Vn,ds=>ds===qo).each(ds=>{Vn.splice(ds,1)})},vo=(qo,ds=!0)=>Mn.removed||!GI(Mn)?{}:(ds&&Mn.dispatch("BeforeOpenNotification",{notification:qo}),xa(Vn,bs=>Gn(Wn().getArgs(bs),qo)).getOrThunk(()=>{Mn.editorManager.setActive(Mn);const bs=Wn().open(qo,()=>{po(bs),no(),UN(Mn)&&jn().fold(()=>Mn.focus(),as=>lA(Cs.fromDom(as.getEl())))});return ao(bs),no(),Mn.dispatch("OpenNotification",{notification:{...bs}}),bs})),Ao=()=>{jn().each(qo=>{Wn().close(qo),po(qo),no()})},Fo=xs(Vn);return(qo=>{qo.on("SkinLoaded",()=>{const ds=K2(qo);ds&&vo({text:ds,type:"warning",timeout:0},!1),no()}),qo.on("show ResizeEditor ResizeWindow NodeChange",()=>{requestAnimationFrame(no)}),qo.on("remove",()=>{fs(Vn.slice(),ds=>{Wn().close(ds)})})})(Mn),{open:vo,close:Ao,getNotifications:Fo}},Hw=$h.PluginManager,CO=$h.ThemeManager;var nG=()=>{const Mn=()=>{throw new Error("Theme did not provide a WindowManager implementation.")};return{open:Mn,openUrl:Mn,alert:Mn,confirm:Mn,close:Mn}};const JI=Mn=>{let Vn=[];const Wn=()=>{const as=Mn.theme;return as&&as.getWindowManagerImpl?as.getWindowManagerImpl():nG()},jn=(as,ys)=>(...Ls)=>ys?ys.apply(as,Ls):void 0,Gn=as=>{Mn.dispatch("OpenWindow",{dialog:as})},no=as=>{Mn.dispatch("CloseWindow",{dialog:as})},ao=as=>{Vn.push(as),Gn(as)},po=as=>{no(as),Vn=nr(Vn,ys=>ys!==as),Vn.length===0&&Mn.focus()},vo=()=>zo.from(Vn[Vn.length-1]),Ao=as=>{Mn.editorManager.setActive(Mn),Sk(Mn),Mn.ui.show();const ys=as();return ao(ys),ys},Fo=(as,ys)=>Ao(()=>Wn().open(as,ys,po)),Qo=as=>Ao(()=>Wn().openUrl(as,po)),qo=(as,ys,Ls)=>{const zs=Wn();zs.alert(as,jn(Ls||zs,ys))},ds=(as,ys,Ls)=>{const zs=Wn();zs.confirm(as,jn(Ls||zs,ys))},bs=()=>{vo().each(as=>{Wn().close(as),po(as)})};return Mn.on("remove",()=>{fs(Vn,as=>{Wn().close(as)})}),{open:Fo,openUrl:Qo,alert:qo,confirm:ds,close:bs}},tz=(Mn,Vn)=>{Mn.notificationManager.open({type:"error",text:Vn})},yP=(Mn,Vn)=>{Mn._skinLoaded?tz(Mn,Vn):Mn.on("SkinLoaded",()=>{tz(Mn,Vn)})},nz=(Mn,Vn)=>{yP(Mn,cg.translate(["Failed to upload image: {0}",Vn]))},C1=(Mn,Vn,Wn)=>{Mp(Mn,Vn,{message:Wn}),console.error(Wn)},OP=(Mn,Vn,Wn)=>Wn?`Failed to load ${Mn}: ${Wn} from url ${Vn}`:`Failed to load ${Mn} url: ${Vn}`,oG=(Mn,Vn,Wn)=>{C1(Mn,"PluginLoadError",OP("plugin",Vn,Wn))},oz=(Mn,Vn,Wn)=>{C1(Mn,"IconsLoadError",OP("icons",Vn,Wn))},$E=(Mn,Vn,Wn)=>{C1(Mn,"LanguageLoadError",OP("language",Vn,Wn))},sz=(Mn,Vn,Wn)=>{C1(Mn,"ThemeLoadError",OP("theme",Vn,Wn))},eB=(Mn,Vn,Wn)=>{C1(Mn,"ModelLoadError",OP("model",Vn,Wn))},tB=(Mn,Vn,Wn)=>{const jn=cg.translate(["Failed to initialize plugin: {0}",Vn]);Mp(Mn,"PluginLoadError",{message:jn}),RE(jn,Wn),yP(Mn,jn)},RE=(Mn,...Vn)=>{const Wn=window.console;Wn&&(Wn.error?Wn.error(Mn,...Vn):Wn.log(Mn,...Vn))},rz=Mn=>/^[a-z0-9\-]+$/i.test(Mn),YD=Mn=>"content/"+Mn+"/content.css",Z_=Mn=>tinymce.Resource.has(YD(Mn)),iz=Mn=>nB(Mn,_m(Mn)),az=Mn=>nB(Mn,RC(Mn)),nB=(Mn,Vn)=>{const Wn=Mn.editorManager.baseURL+"/skins/content",Gn=`content${Mn.editorManager.suffix}.css`;return Us(Vn,no=>Z_(no)?no:rz(no)&&!Mn.inline?`${Wn}/${no}/${Gn}`:Mn.documentBaseURI.toAbsolute(no))},lz=Mn=>{Mn.contentCSS=Mn.contentCSS.concat(iz(Mn),az(Mn))},cz=Mn=>Mn?kc(Mn.getElementsByTagName("img")):[],uz=(Mn,Vn)=>{const Wn={};return{findAll:(Gn,no=Qs)=>{const ao=nr(cz(Gn),vo=>{const Ao=vo.src;return vo.hasAttribute("data-mce-bogus")||vo.hasAttribute("data-mce-placeholder")||!Ao||Ao===aa.transparentSrc?!1:Dc(Ao,"blob:")?!Mn.isUploaded(Ao)&&no(vo):Dc(Ao,"data:")?no(vo):!1}),po=Us(ao,vo=>{const Ao=vo.src;if(Mr(Wn,Ao))return Wn[Ao].then(Fo=>xo(Fo)?Fo:{image:vo,blobInfo:Fo.blobInfo});{const Fo=CQ(Vn,Ao).then(Qo=>(delete Wn[Ao],{image:vo,blobInfo:Qo})).catch(Qo=>(delete Wn[Ao],Qo));return Wn[Ao]=Fo,Fo}});return Promise.all(po)}}},oB=()=>{let Wn={};const jn=(qo,ds)=>({status:qo,resultUri:ds}),Gn=qo=>qo in Wn;return{hasBlobUri:Gn,getResultUri:qo=>{const ds=Wn[qo];return ds?ds.resultUri:null},isPending:qo=>Gn(qo)?Wn[qo].status===1:!1,isUploaded:qo=>Gn(qo)?Wn[qo].status===2:!1,markPending:qo=>{Wn[qo]=jn(1,null)},markUploaded:(qo,ds)=>{Wn[qo]=jn(2,ds)},removeFailed:qo=>{delete Wn[qo]},destroy:()=>{Wn={}}}};let dz=0;const fz=()=>{const Mn=()=>Math.round(Math.random()*4294967295).toString(36);return"s"+new Date().getTime().toString(36)+Mn()+Mn()+Mn()},_P=Mn=>Mn+dz+++fz(),hz=()=>{let Mn=[];const Vn=Qo=>({"image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/png":"png","image/apng":"apng","image/avif":"avif","image/svg+xml":"svg","image/webp":"webp","image/bmp":"bmp","image/tiff":"tiff"})[Qo.toLowerCase()]||"dat",Wn=(Qo,qo,ds,bs,as)=>{if(xo(Qo))return jn({id:Qo,name:bs,filename:as,blob:qo,base64:ds});if(Bo(Qo))return jn(Qo);throw new Error("Unknown input type")},jn=Qo=>{if(!Qo.blob||!Qo.base64)throw new Error("blob and base64 representations of the image are required for BlobInfo to be created");const qo=Qo.id||_P("blobid"),ds=Qo.name||qo,bs=Qo.blob;return{id:xs(qo),name:xs(ds),filename:xs(Qo.filename||ds+"."+Vn(bs.type)),blob:xs(bs),base64:xs(Qo.base64),blobUri:xs(Qo.blobUri||URL.createObjectURL(bs)),uri:xs(Qo.uri)}},Gn=Qo=>{ao(Qo.id())||Mn.push(Qo)},no=Qo=>xa(Mn,Qo).getOrUndefined(),ao=Qo=>no(qo=>qo.id()===Qo);return{create:Wn,add:Gn,get:ao,getByUri:Qo=>no(qo=>qo.blobUri()===Qo),getByData:(Qo,qo)=>no(ds=>ds.base64()===Qo&&ds.blob().type===qo),findFirst:no,removeByUri:Qo=>{Mn=nr(Mn,qo=>qo.blobUri()===Qo?(URL.revokeObjectURL(qo.blobUri()),!1):!0)},destroy:()=>{fs(Mn,Qo=>{URL.revokeObjectURL(Qo.blobUri())}),Mn=[]}}},mz=(Mn,Vn)=>{const Wn={},jn=(as,ys)=>as?as.replace(/\/$/,"")+"/"+ys.replace(/^\//,""):ys,Gn=(as,ys)=>new Promise((Ls,zs)=>{const Hs=new XMLHttpRequest;Hs.open("POST",Vn.url),Hs.withCredentials=Vn.credentials,Hs.upload.onprogress=Pr=>{ys(Pr.loaded/Pr.total*100)},Hs.onerror=()=>{zs("Image upload failed due to a XHR Transport error. Code: "+Hs.status)},Hs.onload=()=>{if(Hs.status<200||Hs.status>=300){zs("HTTP Error: "+Hs.status);return}const Pr=JSON.parse(Hs.responseText);if(!Pr||!xo(Pr.location)){zs("Invalid JSON: "+Hs.responseText);return}Ls(jn(Vn.basePath,Pr.location))};const tr=new FormData;tr.append("file",as.blob(),as.filename()),Hs.send(tr)}),no=Yo(Vn.handler)?Vn.handler:Gn,ao=()=>new Promise(as=>{as([])}),po=(as,ys)=>({url:ys,blobInfo:as,status:!0}),vo=(as,ys)=>({url:"",blobInfo:as,status:!1,error:ys}),Ao=(as,ys)=>{Lr.each(Wn[as],Ls=>{Ls(ys)}),delete Wn[as]},Fo=(as,ys,Ls)=>(Mn.markPending(as.blobUri()),new Promise(zs=>{let Hs,tr;try{const Pr=()=>{Hs&&(Hs.close(),tr=Js)},Ur=yr=>{Pr(),Mn.markUploaded(as.blobUri(),yr),Ao(as.blobUri(),po(as,yr)),zs(po(as,yr))},fa=yr=>{Pr(),Mn.removeFailed(as.blobUri()),Ao(as.blobUri(),vo(as,yr)),zs(vo(as,yr))};tr=yr=>{yr<0||yr>100||zo.from(Hs).orThunk(()=>zo.from(Ls).map(_r)).each(fr=>{Hs=fr,fr.progressBar.value(yr)})},ys(as,tr).then(Ur,yr=>{fa(xo(yr)?{message:yr}:yr)})}catch(Pr){zs(vo(as,Pr))}})),Qo=as=>as===Gn,qo=as=>{const ys=as.blobUri();return new Promise(Ls=>{Wn[ys]=Wn[ys]||[],Wn[ys].push(Ls)})},ds=(as,ys)=>(as=Lr.grep(as,Ls=>!Mn.isUploaded(Ls.blobUri())),Promise.all(Lr.map(as,Ls=>Mn.isPending(Ls.blobUri())?qo(Ls):Fo(Ls,no,ys))));return{upload:(as,ys)=>!Vn.url&&Qo(no)?ao():ds(as,ys)}},pz=Mn=>()=>Mn.notificationManager.open({text:Mn.translate("Image uploading..."),type:"info",timeout:-1,progressBar:!0}),Zk=(Mn,Vn)=>mz(Vn,{url:X2(Mn),basePath:Y2(Mn),credentials:VS(Mn),handler:zS(Mn)}),gz=Mn=>{const Vn=oB(),Wn=Zk(Mn,Vn);return{upload:(jn,Gn=!0)=>Wn.upload(jn,Gn?pz(Mn):void 0)}},GD=(Mn,Vn)=>Mn.dom.isEmpty(Vn.dom)&&rs(Mn.schema.getTextBlockElements()[ql(Vn)]),bz=Mn=>Vn=>{GD(Mn,Vn)&&Fu(Vn,Cs.fromHtml('
    '))},vz=Mn=>{const Vn=hz();let Wn,jn;const Gn=oB(),no=[],ao=Hs=>tr=>Mn.selection?Hs(tr):[],po=Hs=>Hs+(Hs.indexOf("?")===-1?"?":"&")+new Date().getTime(),vo=(Hs,tr,Pr)=>{let Ur=0;do Ur=Hs.indexOf(tr,Ur),Ur!==-1&&(Hs=Hs.substring(0,Ur)+Pr+Hs.substr(Ur+tr.length),Ur+=Pr.length-tr.length+1);while(Ur!==-1);return Hs},Ao=(Hs,tr,Pr)=>{const Ur=`src="${Pr}"${Pr===aa.transparentSrc?' data-mce-placeholder="1"':""}`;return Hs=vo(Hs,`src="${tr}"`,Ur),Hs=vo(Hs,'data-mce-src="'+tr+'"','data-mce-src="'+Pr+'"'),Hs},Fo=(Hs,tr)=>{fs(Mn.undoManager.data,Pr=>{Pr.type==="fragmented"?Pr.fragments=Us(Pr.fragments,Ur=>Ao(Ur,Hs,tr)):Pr.content=Ao(Pr.content,Hs,tr)})},Qo=(Hs,tr)=>{const Pr=Mn.convertURL(tr,"src");Fo(Hs.src,tr),im(Cs.fromDom(Hs),{src:nO(Mn)?po(tr):tr,"data-mce-src":Pr})},qo=()=>(Wn||(Wn=Zk(Mn,Gn)),ys().then(ao(Hs=>{const tr=Us(Hs,Pr=>Pr.blobInfo);return Wn.upload(tr,pz(Mn)).then(ao(Pr=>{const Ur=[];let fa=!1;const yr=Us(Pr,(fr,Ar)=>{const{blobInfo:wa,image:Va}=Hs[Ar];let Tl=!1;return fr.status&&$C(Mn)?(fr.url&&!oc(Va.src,fr.url)&&(fa=!0),Vn.removeByUri(Va.src),wO(Mn)||Qo(Va,fr.url)):fr.error&&(fr.error.remove&&(Fo(Va.src,aa.transparentSrc),Ur.push(Va),Tl=!0),nz(Mn,fr.error.message)),{element:Va,status:fr.status,uploadUri:fr.url,blobInfo:wa,removed:Tl}});return Ur.length>0&&!wO(Mn)?Mn.undoManager.transact(()=>{fs(Km(Ur),fr=>{const Ar=Wc(fr);sc(fr),Ar.each(bz(Mn)),Vn.removeByUri(fr.dom.src)})}):fa&&Mn.undoManager.dispatchChange(),yr}))}))),ds=()=>PC(Mn)?qo():Promise.resolve([]),bs=Hs=>gc(no,tr=>tr(Hs)),as=Hs=>{no.push(Hs)},ys=()=>(jn||(jn=uz(Gn,Vn)),jn.findAll(Mn.getBody(),bs).then(ao(Hs=>{const tr=nr(Hs,Pr=>xo(Pr)?(yP(Mn,Pr),!1):Pr.uriType!=="blob");return wO(Mn)||fs(tr,Pr=>{Fo(Pr.image.src,Pr.blobInfo.blobUri()),Pr.image.src=Pr.blobInfo.blobUri(),Pr.image.removeAttribute("data-mce-src")}),tr}))),Ls=()=>{Vn.destroy(),Gn.destroy(),jn=Wn=null},zs=Hs=>Hs.replace(/src="(blob:[^"]+)"/g,(tr,Pr)=>{const Ur=Gn.getResultUri(Pr);if(Ur)return'src="'+Ur+'"';let fa=Vn.getByUri(Pr);return fa||(fa=ra(Mn.editorManager.get(),(yr,fr)=>yr||fr.editorUpload&&fr.editorUpload.blobCache.getByUri(Pr),void 0)),fa?'src="data:'+fa.blob().type+";base64,"+fa.base64()+'"':tr});return Mn.on("SetContent",()=>{PC(Mn)?ds():ys()}),Mn.on("RawSaveContent",Hs=>{Hs.content=zs(Hs.content)}),Mn.on("GetContent",Hs=>{Hs.source_view||Hs.format==="raw"||Hs.format==="tree"||(Hs.content=zs(Hs.content))}),Mn.on("PostRender",()=>{Mn.parser.addNodeFilter("img",Hs=>{fs(Hs,tr=>{const Pr=tr.attr("src");if(!Pr||Vn.getByUri(Pr))return;const Ur=Gn.getResultUri(Pr);Ur&&tr.attr("src",Ur)})})}),{blobCache:Vn,addFilter:as,uploadImages:qo,uploadImagesAuto:ds,scanForImages:ys,destroy:Ls}},yz=Mn=>{const Vn=Mn.dom,Wn=Mn.schema.type,jn={valigntop:[{selector:"td,th",styles:{verticalAlign:"top"}}],valignmiddle:[{selector:"td,th",styles:{verticalAlign:"middle"}}],valignbottom:[{selector:"td,th",styles:{verticalAlign:"bottom"}}],alignleft:[{selector:"figure.image",collapsed:!1,classes:"align-left",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"left"},inherit:!1,preview:!1},{selector:"img,audio,video",collapsed:!1,styles:{float:"left"},preview:"font-family font-size"},{selector:"table",collapsed:!1,styles:{marginLeft:"0px",marginRight:"auto"},onformat:Gn=>{Vn.setStyle(Gn,"float",null)},preview:"font-family font-size"},{selector:".mce-preview-object,[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{float:"left"}}],aligncenter:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"center"},inherit:!1,preview:"font-family font-size"},{selector:"figure.image",collapsed:!1,classes:"align-center",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"img,audio,video",collapsed:!1,styles:{display:"block",marginLeft:"auto",marginRight:"auto"},preview:!1},{selector:"table",collapsed:!1,styles:{marginLeft:"auto",marginRight:"auto"},preview:"font-family font-size"},{selector:".mce-preview-object",ceFalseOverride:!0,styles:{display:"table",marginLeft:"auto",marginRight:"auto"},preview:!1},{selector:"[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{marginLeft:"auto",marginRight:"auto"},preview:!1}],alignright:[{selector:"figure.image",collapsed:!1,classes:"align-right",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"right"},inherit:!1,preview:"font-family font-size"},{selector:"img,audio,video",collapsed:!1,styles:{float:"right"},preview:"font-family font-size"},{selector:"table",collapsed:!1,styles:{marginRight:"0px",marginLeft:"auto"},onformat:Gn=>{Vn.setStyle(Gn,"float",null)},preview:"font-family font-size"},{selector:".mce-preview-object,[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{float:"right"},preview:!1}],alignjustify:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"justify"},inherit:!1,preview:"font-family font-size"}],bold:[{inline:"strong",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all",preserve_attributes:["class","style"]}],italic:[{inline:"em",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all",preserve_attributes:["class","style"]}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:!0},{inline:"u",remove:"all",preserve_attributes:["class","style"]}],strikethrough:(()=>{const Gn={inline:"span",styles:{textDecoration:"line-through"},exact:!0},no={inline:"strike",remove:"all",preserve_attributes:["class","style"]},ao={inline:"s",remove:"all",preserve_attributes:["class","style"]};return Wn!=="html4"?[ao,Gn,no]:[Gn,ao,no]})(),forecolor:{inline:"span",styles:{color:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0},fontname:{inline:"span",toggle:!1,styles:{fontFamily:"%value"},clear_child_styles:!0},fontsize:{inline:"span",toggle:!1,styles:{fontSize:"%value"},clear_child_styles:!0},lineheight:{selector:"h1,h2,h3,h4,h5,h6,p,li,td,th,div",styles:{lineHeight:"%value"}},fontsize_class:{inline:"span",attributes:{class:"%value"}},blockquote:{block:"blockquote",wrapper:!0,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},code:{inline:"code"},link:{inline:"a",selector:"a",remove:"all",split:!0,deep:!0,onmatch:(Gn,no,ao)=>Oa(Gn)&&Gn.hasAttribute("href"),onformat:(Gn,no,ao)=>{Lr.each(ao,(po,vo)=>{Vn.setAttrib(Gn,vo,po)})}},lang:{inline:"span",clear_child_styles:!0,remove_similar:!0,attributes:{lang:"%value","data-mce-lang":Gn=>{var no;return(no=Gn==null?void 0:Gn.customValue)!==null&&no!==void 0?no:null}}},removeformat:[{selector:"b,strong,em,i,font,u,strike,s,sub,sup,dfn,code,samp,kbd,var,cite,mark,q,del,ins,small",remove:"all",split:!0,expand:!1,block_expand:!0,deep:!0},{selector:"span",attributes:["style","class"],remove:"empty",split:!0,expand:!1,deep:!0},{selector:"*",attributes:["style","class"],split:!1,expand:!1,deep:!0}]};return Lr.each("p h1 h2 h3 h4 h5 h6 div address pre dt dd samp".split(/\s/),Gn=>{jn[Gn]={block:Gn,remove:"all"}}),jn},sB={remove_similar:!0,inherit:!1},l0={selector:"td,th",...sB},Qw={tablecellbackgroundcolor:{styles:{backgroundColor:"%value"},...l0},tablecellverticalalign:{styles:{"vertical-align":"%value"},...l0},tablecellbordercolor:{styles:{borderColor:"%value"},...l0},tablecellclass:{classes:["%value"],...l0},tableclass:{selector:"table",classes:["%value"],...sB},tablecellborderstyle:{styles:{borderStyle:"%value"},...l0},tablecellborderwidth:{styles:{borderWidth:"%value"},...l0}},SP=xs(Qw),wP=Mn=>{const Vn={},Wn=ao=>rs(ao)?Vn[ao]:Vn,jn=ao=>Mr(Vn,ao),Gn=(ao,po)=>{ao&&(xo(ao)?(Ko(po)||(po=[po]),fs(po,vo=>{ls(vo.deep)&&(vo.deep=!Nh(vo)),ls(vo.split)&&(vo.split=!Nh(vo)||Sf(vo)),ls(vo.remove)&&Nh(vo)&&!Sf(vo)&&(vo.remove="none"),Nh(vo)&&Sf(vo)&&(vo.mixed=!0,vo.block_expand=!0),xo(vo.classes)&&(vo.classes=vo.classes.split(/\s+/))}),Vn[ao]=po):Rr(ao,(vo,Ao)=>{Gn(Ao,vo)}))},no=ao=>(ao&&Vn[ao]&&delete Vn[ao],Vn);return Gn(yz(Mn)),Gn(SP()),Gn(ex(Mn)),{get:Wn,has:jn,register:Gn,unregister:no}},ky=Lr.each,Um=Eu.DOM,qk=Mn=>rs(Mn)&&Bo(Mn),DE=(Mn,Vn)=>{const Wn=Vn&&Vn.schema||i1({}),jn=(vo,Ao)=>{Ao.classes.length>0&&Um.addClass(vo,Ao.classes.join(" ")),Um.setAttribs(vo,Ao.attrs)},Gn=vo=>{const Ao=xo(vo)?{name:vo,classes:[],attrs:{}}:vo,Fo=Um.create(Ao.name);return jn(Fo,Ao),Fo},no=(vo,Ao)=>{const Fo=Wn.getElementRule(vo.nodeName.toLowerCase()),Qo=Fo==null?void 0:Fo.parentsRequired;return Qo&&Qo.length?Ao&&Zs(Qo,Ao)?Ao:Qo[0]:!1},ao=(vo,Ao,Fo)=>{let Qo;const qo=Ao[0],ds=qk(qo)?qo.name:void 0,bs=no(vo,ds);if(bs)ds===bs?(Qo=qo,Ao=Ao.slice(1)):Qo=bs;else if(qo)Qo=qo,Ao=Ao.slice(1);else if(!Fo)return vo;const as=Qo?Gn(Qo):Um.create("div");as.appendChild(vo),Fo&&Lr.each(Fo,Ls=>{const zs=Gn(Ls);as.insertBefore(zs,vo)});const ys=qk(Qo)?Qo.siblings:void 0;return ao(as,Ao,ys)},po=Um.create("div");if(Mn.length>0){const vo=Mn[0],Ao=Gn(vo),Fo=qk(vo)?vo.siblings:void 0;po.appendChild(ao(Ao,Mn.slice(1),Fo))}return po},rB=Mn=>{Mn=Lr.trim(Mn);let Vn="div";const Wn={name:Vn,classes:[],attrs:{},selector:Mn};return Mn!=="*"&&(Vn=Mn.replace(/(?:([#\.]|::?)([\w\-]+)|(\[)([^\]]+)\]?)/g,(jn,Gn,no,ao,po)=>{switch(Gn){case"#":Wn.attrs.id=no;break;case".":Wn.classes.push(no);break;case":":Lr.inArray("checked disabled enabled read-only required".split(" "),no)!==-1&&(Wn.attrs[no]=no);break}if(ao==="["){const vo=po.match(/([\w\-]+)(?:\=\"([^\"]+))?/);vo&&(Wn.attrs[vo[1]]=vo[2])}return""})),Wn.name=Vn||"div",Wn},KD=Mn=>xo(Mn)?(Mn=Mn.split(/\s*,\s*/)[0],Mn=Mn.replace(/\s*(~\+|~|\+|>)\s*/g,"$1"),Lr.map(Mn.split(/(?:>|\s+(?![^\[\]]+\]))/),Vn=>{const Wn=Lr.map(Vn.split(/(?:~\+|~|\+)/),rB),jn=Wn.pop();return Wn.length&&(jn.siblings=Wn),jn}).reverse()):[],JD=(Mn,Vn)=>{let Wn="",jn=NC(Mn);if(jn==="")return"";const Gn=qo=>xo(qo)?qo.replace(/%(\w+)/g,""):"",no=(qo,ds)=>Um.getStyle(ds??Mn.getBody(),qo,!0);if(xo(Vn)){const qo=Mn.formatter.get(Vn);if(!qo)return"";Vn=qo[0]}if("preview"in Vn){const qo=Vn.preview;if(qo===!1)return"";jn=qo||jn}let ao=Vn.block||Vn.inline||"span",po;const vo=KD(Vn.selector);vo.length>0?(vo[0].name||(vo[0].name=ao),ao=Vn.selector,po=DE(vo,Mn)):po=DE([ao],Mn);const Ao=Um.select(ao,po)[0]||po.firstChild;ky(Vn.styles,(qo,ds)=>{const bs=Gn(qo);bs&&Um.setStyle(Ao,ds,bs)}),ky(Vn.attributes,(qo,ds)=>{const bs=Gn(qo);bs&&Um.setAttrib(Ao,ds,bs)}),ky(Vn.classes,qo=>{const ds=Gn(qo);Um.hasClass(Ao,ds)||Um.addClass(Ao,ds)}),Mn.dispatch("PreviewFormats"),Um.setStyles(po,{position:"absolute",left:-65535}),Mn.getBody().appendChild(po);const Fo=no("fontSize"),Qo=/px$/.test(Fo)?parseInt(Fo,10):0;return ky(jn.split(" "),qo=>{let ds=no(qo,Ao);if(!(qo==="background-color"&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(ds)&&(ds=no(qo),Bm(ds).toLowerCase()==="#ffffff"))&&!(qo==="color"&&Bm(ds).toLowerCase()==="#000000")){if(qo==="font-size"&&/em|%$/.test(ds)){if(Qo===0)return;ds=parseFloat(ds)/(/%$/.test(ds)?100:1)*Qo+"px"}qo==="border"&&ds&&(Wn+="padding:0 2px;"),Wn+=qo+":"+ds+";"}}),Mn.dispatch("AfterPreviewFormats"),Um.remove(po),Wn},iB=Mn=>{Mn.addShortcut("meta+b","","Bold"),Mn.addShortcut("meta+i","","Italic"),Mn.addShortcut("meta+u","","Underline");for(let Vn=1;Vn<=6;Vn++)Mn.addShortcut("access+"+Vn,"",["FormatBlock",!1,"h"+Vn]);Mn.addShortcut("access+7","",["FormatBlock",!1,"p"]),Mn.addShortcut("access+8","",["FormatBlock",!1,"div"]),Mn.addShortcut("access+9","",["FormatBlock",!1,"address"])},eM=Mn=>{const Vn=wP(Mn),Wn=od({});return iB(Mn),eQ(Mn),wO(Mn)||fQ(Wn,Mn),{get:Vn.get,has:Vn.has,register:Vn.register,unregister:Vn.unregister,apply:(jn,Gn,no)=>{vV(Mn,jn,Gn,no)},remove:(jn,Gn,no,ao)=>{yV(Mn,jn,Gn,no,ao)},toggle:(jn,Gn,no)=>{OV(Mn,jn,Gn,no)},match:(jn,Gn,no,ao)=>DI(Mn,jn,Gn,no,ao),closest:jn=>zD(Mn,jn),matchAll:(jn,Gn)=>MI(Mn,jn,Gn),matchNode:(jn,Gn,no,ao)=>VD(Mn,jn,Gn,no,ao),canApply:jn=>NI(Mn,jn),formatChanged:(jn,Gn,no,ao)=>vb(Mn,Wn,jn,Gn,no,ao),getCssText:ws(JD,Mn)}},Vw=Mn=>{switch(Mn.toLowerCase()){case"undo":case"redo":case"mcefocus":return!0;default:return!1}},aB=(Mn,Vn,Wn)=>{const jn=od(!1),Gn=vo=>{mP(Vn,!1,Wn),Vn.add({},vo)};Mn.on("init",()=>{Vn.add()}),Mn.on("BeforeExecCommand",vo=>{const Ao=vo.command;Vw(Ao)||(EI(Vn,Wn),Vn.beforeChange())}),Mn.on("ExecCommand",vo=>{const Ao=vo.command;Vw(Ao)||Gn(vo)}),Mn.on("ObjectResizeStart cut",()=>{Vn.beforeChange()}),Mn.on("SaveContent ObjectResized blur",Gn),Mn.on("dragend",Gn),Mn.on("keyup",vo=>{const Ao=vo.keyCode;if(vo.isDefaultPrevented())return;const Fo=aa.os.isMacOS()&&vo.key==="Meta";(Ao>=33&&Ao<=36||Ao>=37&&Ao<=40||Ao===45||vo.ctrlKey||Fo)&&(Gn(),Mn.nodeChanged()),(Ao===46||Ao===8)&&Mn.nodeChanged(),jn.get()&&Vn.typing&&!BD(hP(Mn),Vn.data[0])&&(Mn.isDirty()||Mn.setDirty(!0),Mn.dispatch("TypingUndo"),jn.set(!1),Mn.nodeChanged())}),Mn.on("keydown",vo=>{const Ao=vo.keyCode;if(vo.isDefaultPrevented())return;if(Ao>=33&&Ao<=36||Ao>=37&&Ao<=40||Ao===45){Vn.typing&&Gn(vo);return}const Fo=vo.ctrlKey&&!vo.altKey||vo.metaKey;if((Ao<16||Ao>20)&&Ao!==224&&Ao!==91&&!Vn.typing&&!Fo){Vn.beforeChange(),mP(Vn,!0,Wn),Vn.add({},vo),jn.set(!0);return}(aa.os.isMacOS()?vo.metaKey:vo.ctrlKey&&!vo.altKey)&&Vn.beforeChange()}),Mn.on("mousedown",vo=>{Vn.typing&&Gn(vo)});const no=vo=>vo.inputType==="insertReplacementText",ao=vo=>vo.inputType==="insertText"&&vo.data===null,po=vo=>vo.inputType==="insertFromPaste"||vo.inputType==="insertFromDrop";Mn.on("input",vo=>{vo.inputType&&(no(vo)||ao(vo)||po(vo))&&Gn(vo)}),Mn.on("AddUndo Undo Redo ClearUndos",vo=>{vo.isDefaultPrevented()||Mn.nodeChanged()})},lB=Mn=>{Mn.addShortcut("meta+z","","Undo"),Mn.addShortcut("meta+y,meta+shift+z","","Redo")},tM=Mn=>{const Vn=Fb(),Wn=od(0),jn=od(0),Gn={data:[],typing:!1,beforeChange:()=>{GY(Mn,Wn,Vn)},add:(no,ao)=>Cm(Mn,Gn,jn,Wn,Vn,no,ao),dispatchChange:()=>{Mn.setDirty(!0);const no=hP(Mn);no.bookmark=ib(Mn.selection),Mn.dispatch("change",{level:no,lastLevel:Fc(Gn.data,jn.get()).getOrUndefined()})},undo:()=>PI(Mn,Gn,Wn,jn),redo:()=>$I(Mn,jn,Gn.data),clear:()=>{RI(Mn,Gn,jn)},reset:()=>{mV(Mn,Gn)},hasUndo:()=>pV(Mn,Gn,jn),hasRedo:()=>pP(Mn,Gn,jn),transact:no=>gV(Mn,Gn,Wn,no),ignore:no=>{QD(Mn,Wn,no)},extra:(no,ao)=>{bV(Mn,Gn,jn,no,ao)}};return wO(Mn)||aB(Mn,Gn,Wn),lB(Mn),Gn},CP=[9,27,va.HOME,va.END,19,20,44,144,145,33,34,45,16,17,18,91,92,93,va.DOWN,va.UP,va.LEFT,va.RIGHT].concat(aa.browser.isFirefox()?[224]:[]),nM="data-mce-placeholder",oM=Mn=>Mn.type==="keydown"||Mn.type==="keyup",sM=Mn=>{const Vn=Mn.keyCode;return Vn===va.BACKSPACE||Vn===va.DELETE},cB=Mn=>{if(oM(Mn)){const Vn=Mn.keyCode;return!sM(Mn)&&(va.metaKeyPressed(Mn)||Mn.altKey||Vn>=112&&Vn<=123||Zs(CP,Vn))}else return!1},kO=Mn=>oM(Mn)&&!(sM(Mn)||Mn.type==="keyup"&&Mn.keyCode===229),q_=(Mn,Vn,Wn)=>{if(md(Cs.fromDom(Vn),!1)){const jn=Vn.firstElementChild;return jn?Mn.getStyle(Vn.firstElementChild,"padding-left")||Mn.getStyle(Vn.firstElementChild,"padding-right")?!1:Wn===jn.nodeName.toLowerCase():!0}else return!1},c0=Mn=>{var Vn;const Wn=Mn.dom,jn=bh(Mn),Gn=(Vn=RT(Mn))!==null&&Vn!==void 0?Vn:"",no=(ao,po)=>{if(cB(ao))return;const vo=Mn.getBody(),Ao=kO(ao)?!1:q_(Wn,vo,jn);(Wn.getAttrib(vo,nM)!==""!==Ao||po)&&(Wn.setAttrib(vo,nM,Ao?Gn:null),Wn.setAttrib(vo,"aria-placeholder",Ao?Gn:null),A3(Mn,Ao),Mn.on(Ao?"keydown":"keyup",no),Mn.off(Ao?"keyup":"keydown",no))};fc(Gn)&&Mn.on("init",ao=>{no(ao,!0),Mn.on("change SetContent ExecCommand",no),Mn.on("paste",po=>O1.setEditorTimeout(Mn,()=>no(po)))})},Oz=(Mn,Vn)=>({block:Mn,position:Vn}),_z=(Mn,Vn)=>({from:Mn,to:Vn}),rM=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn),jn=Cs.fromDom(Vn.container());return eE(Wn,jn).map(Gn=>Oz(Gn,Vn))},Sz=Mn=>!Vs(Mn.from.block,Mn.to.block),uB=(Mn,Vn)=>cf(Vn,Gn=>Eh(Gn)||Gf(Gn.dom),Gn=>Vs(Gn,Mn)).filter(lf).getOr(Mn),wz=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn);return Vs(uB(Wn,Vn.from.block),uB(Wn,Vn.to.block))},Cz=Mn=>jl(Mn.from.block.dom)===!1&&jl(Mn.to.block.dom)===!1,kz=Mn=>{const Vn=Wn=>Gs(Wn)||NO(Wn.dom);return Vn(Mn.from.block)&&Vn(Mn.to.block)},xz=(Mn,Vn,Wn)=>Ec(Wn.position.getNode())&&!md(Wn.block)?w_(!1,Wn.block.dom).bind(jn=>jn.isEqual(Wn.position)?vh(Vn,Mn,jn).bind(Gn=>rM(Mn,Gn)):zo.some(Wn)).getOr(Wn):Wn,Ez=(Mn,Vn,Wn)=>{const jn=rM(Mn,lr.fromRangeStart(Wn)),Gn=jn.bind(no=>vh(Vn,Mn,no.position).bind(ao=>rM(Mn,ao).map(po=>xz(Mn,Vn,po))));return jc(jn,Gn,_z).filter(no=>Sz(no)&&wz(Mn,no)&&Cz(no)&&kz(no))},Tz=(Mn,Vn,Wn)=>Wn.collapsed?Ez(Mn,Vn,Wn):zo.none(),Az=(Mn,Vn)=>{const Wn=Ku(Mn);return Nl(Wn,jn=>Vn.isBlock(ql(jn))).fold(xs(Wn),jn=>Wn.slice(0,jn))},kP=(Mn,Vn)=>{const Wn=Az(Mn,Vn);return fs(Wn,sc),Wn},xP=(Mn,Vn)=>{const Wn=py(Vn,Mn);return xa(Wn.reverse(),jn=>md(jn)).each(sc)},dB=Mn=>nr(y0(Mn),Vn=>!md(Vn)).length===0,Pz=(Mn,Vn,Wn,jn,Gn)=>{if(md(Wn))return Kp(Wn),zm(Wn.dom);dB(Gn)&&md(Vn)&&ed(Gn,Cs.fromTag("br"));const no=cp(Wn.dom,lr.before(Gn.dom));return fs(kP(Vn,jn),ao=>{ed(Gn,ao)}),xP(Mn,Vn),no},$z=(Mn,Vn)=>Mn.isInline(ql(Vn)),fB=(Mn,Vn,Wn,jn)=>{if(md(Wn)){if(md(Vn)){const ao=Kr((po=>{const vo=(Ao,Fo)=>iu(Ao).fold(()=>Fo,Qo=>$z(jn,Qo)?vo(Qo,Fo.concat(Hm(Qo))):Fo);return vo(po,[])})(Wn),(po,vo)=>(_0(po,vo),vo),Th());Dm(Vn),Fu(Vn,ao)}return sc(Wn),zm(Vn.dom)}const Gn=b1(Wn.dom);return fs(kP(Vn,jn),no=>{Fu(Wn,no)}),xP(Mn,Vn),Gn},hB=(Mn,Vn)=>{const Wn=py(Vn,Mn);return zo.from(Wn[Wn.length-1])},iM=(Mn,Vn)=>Dr(Vn,Mn)?hB(Vn,Mn):zo.none(),aM=(Mn,Vn)=>{w_(Mn,Vn.dom).bind(Wn=>zo.from(Wn.getNode())).map(Cs.fromDom).filter(np).each(sc)},lM=(Mn,Vn,Wn,jn)=>(aM(!0,Vn),aM(!1,Wn),iM(Vn,Wn).fold(ws(fB,Mn,Vn,Wn,jn),ws(Pz,Mn,Vn,Wn,jn))),EP=(Mn,Vn,Wn,jn,Gn)=>Vn?lM(Mn,jn,Wn,Gn):lM(Mn,Wn,jn,Gn),cM=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody());return Tz(Wn.dom,Vn,Mn.selection.getRng()).map(Gn=>()=>{EP(Wn,Vn,Gn.from.block,Gn.to.block,Mn.schema).each(no=>{Mn.selection.setRng(no.toRange())})})},Rz=(Mn,Vn,Wn)=>{const jn=Vn.getRng();return jc(eE(Mn,Cs.fromDom(jn.startContainer)),eE(Mn,Cs.fromDom(jn.endContainer)),(Gn,no)=>Vs(Gn,no)?zo.none():zo.some(()=>{jn.deleteContents(),EP(Mn,!0,Gn,no,Wn).each(ao=>{Vn.setRng(ao.toRange())})})).getOr(zo.none())},iv=(Mn,Vn)=>{const Wn=Cs.fromDom(Vn),jn=ws(Vs,Mn);return au(Wn,Eh,jn).isSome()},u0=(Mn,Vn)=>iv(Mn,Vn.startContainer)||iv(Mn,Vn.endContainer),TP=(Mn,Vn)=>{const Wn=cp(Mn.dom,lr.fromRangeStart(Vn)).isNone(),jn=Sm(Mn.dom,lr.fromRangeEnd(Vn)).isNone();return!u0(Mn,Vn)&&Wn&&jn},mB=Mn=>zo.some(()=>{Mn.setContent(""),Mn.selection.setCursorLocation()}),AP=Mn=>{const Vn=Cs.fromDom(Mn.getBody()),Wn=Mn.selection.getRng();return TP(Vn,Wn)?mB(Mn):Rz(Vn,Mn.selection,Mn.schema)},PP=(Mn,Vn)=>Mn.selection.isCollapsed()?zo.none():AP(Mn),xy=(Mn,Vn,Wn,jn,Gn)=>zo.from(Vn._selectionOverrides.showCaret(Mn,Wn,jn,Gn)),pB=Mn=>{const Vn=Mn.ownerDocument.createRange();return Vn.selectNode(Mn),Vn},jk=(Mn,Vn)=>Mn.dispatch("BeforeObjectSelected",{target:Vn}).isDefaultPrevented()?zo.none():zo.some(pB(Vn)),gB=(Mn,Vn,Wn)=>{const jn=nu(1,Mn.getBody(),Vn),Gn=lr.fromRangeStart(jn),no=Gn.getNode();if(v_(no))return xy(1,Mn,no,!Gn.isAtEnd(),!1);const ao=Gn.getNode(!0);if(v_(ao))return xy(1,Mn,ao,!1,!1);const po=Nw(Mn.dom.getRoot(),Gn.getNode());return v_(po)?xy(1,Mn,po,!1,Wn):zo.none()},$P=(Mn,Vn,Wn)=>Vn.collapsed?gB(Mn,Vn,Wn).getOr(Vn):Vn,RP=Mn=>bO(Mn)||jx(Mn),uM=Mn=>tv(Mn)||wk(Mn),Dz=(Mn,Vn)=>{Ir(Vn)&&Vn.data.length===0&&Mn.remove(Vn)},bB=(Mn,Vn,Wn,jn,Gn,no)=>{xy(jn,Mn,no.getNode(!Gn),Gn,!0).each(ao=>{if(Vn.collapsed){const po=Vn.cloneRange();Gn?po.setEnd(ao.startContainer,ao.startOffset):po.setStart(ao.endContainer,ao.endOffset),po.deleteContents()}else Vn.deleteContents();Mn.selection.setRng(ao)}),Dz(Mn.dom,Wn)},Mz=(Mn,Vn)=>{const Wn=Mn.selection.getRng();if(!Ir(Wn.commonAncestorContainer))return zo.none();const jn=Vn?Tu.Forwards:Tu.Backwards,Gn=ub(Mn.getBody()),no=ws(Mf,Vn?Gn.next:Gn.prev),ao=Vn?RP:uM,po=nh(jn,Mn.getBody(),Wn),vo=no(po),Ao=vo&&mc(Vn,vo);if(!Ao||!Dp(po,Ao))return zo.none();if(ao(Ao))return zo.some(()=>bB(Mn,Wn,po.getNode(),jn,Vn,Ao));const Fo=no(Ao);return Fo&&ao(Fo)&&Dp(Ao,Fo)?zo.some(()=>bB(Mn,Wn,po.getNode(),jn,Vn,Fo)):zo.none()},dM=(Mn,Vn)=>Mz(Mn,Vn),DP=(Mn,Vn)=>{const Wn=Mn.getBody();return Vn?zm(Wn).filter(bO):b1(Wn).filter(tv)},fM=Mn=>{const Vn=Mn.selection.getRng();return!Vn.collapsed&&(DP(Mn,!0).exists(Wn=>Wn.isEqual(lr.fromRangeStart(Vn)))||DP(Mn,!1).exists(Wn=>Wn.isEqual(lr.fromRangeEnd(Vn))))},Nz=Mn=>rs(Mn)&&(Eh(Cs.fromDom(Mn))||Lm(Cs.fromDom(Mn))),yg=Qg.generate([{remove:["element"]},{moveToElement:["element"]},{moveToPosition:["position"]}]),Lz=(Mn,Vn)=>{const Wn=Vn.getNode(!Mn),jn=Mn?"after":"before";return Oa(Wn)&&Wn.getAttribute("data-mce-caret")===jn},Iz=(Mn,Vn,Wn,jn,Gn)=>{const no=ao=>Gn.isInline(ao.nodeName.toLowerCase())&&!jr(Wn,jn,Mn);return vu(!Vn,Wn).fold(()=>vu(Vn,jn).fold(hs,no),no)},vB=(Mn,Vn,Wn,jn)=>{const Gn=jn.getNode(!Vn);return eE(Cs.fromDom(Mn),Cs.fromDom(Wn.getNode())).map(no=>md(no)?yg.remove(no.dom):yg.moveToElement(Gn)).orThunk(()=>zo.some(yg.moveToElement(Gn)))},yB=(Mn,Vn,Wn,jn)=>vh(Vn,Mn,Wn).bind(Gn=>Nz(Gn.getNode())||Iz(Mn,Vn,Wn,Gn,jn)?zo.none():Vn&&jl(Gn.getNode())||!Vn&&jl(Gn.getNode(!0))?vB(Mn,Vn,Wn,Gn):Vn&&tv(Wn)||!Vn&&bO(Wn)?zo.some(yg.moveToPosition(Gn)):zo.none()),Bz=(Mn,Vn)=>ps(Vn)?zo.none():Mn&&jl(Vn.nextSibling)?zo.some(yg.moveToElement(Vn.nextSibling)):!Mn&&jl(Vn.previousSibling)?zo.some(yg.moveToElement(Vn.previousSibling)):zo.none(),Fz=(Mn,Vn,Wn)=>Wn.fold(jn=>zo.some(yg.remove(jn)),jn=>zo.some(yg.moveToElement(jn)),jn=>jr(Vn,jn,Mn)?zo.none():zo.some(yg.moveToPosition(jn))),Hz=(Mn,Vn,Wn,jn)=>Lz(Vn,Wn)?Bz(Vn,Wn.getNode(!Vn)).orThunk(()=>yB(Mn,Vn,Wn,jn)):yB(Mn,Vn,Wn,jn).bind(Gn=>Fz(Mn,Wn,Gn)),MP=(Mn,Vn,Wn,jn)=>{const Gn=nu(Vn?1:-1,Mn,Wn),no=lr.fromRangeStart(Gn),ao=Cs.fromDom(Mn);return!Vn&&tv(no)?zo.some(yg.remove(no.getNode(!0))):Vn&&bO(no)?zo.some(yg.remove(no.getNode())):!Vn&&bO(no)&&Yx(ao,no,jn)?a9(ao,no,jn).map(po=>yg.remove(po.getNode())):Vn&&tv(no)&&Xx(ao,no,jn)?l9(ao,no,jn).map(po=>yg.remove(po.getNode())):Hz(Mn,Vn,no,jn)},hM=(Mn,Vn)=>Wn=>(Mn._selectionOverrides.hideFakeCaret(),yO(Mn,Vn,Cs.fromDom(Wn)),!0),Qz=(Mn,Vn)=>Wn=>{const jn=Vn?lr.before(Wn):lr.after(Wn);return Mn.selection.setRng(jn.toRange()),!0},Vz=Mn=>Vn=>(Mn.selection.setRng(Vn.toRange()),!0),OB=(Mn,Vn)=>zo.from(Nw(Mn.getBody(),Vn)),zz=(Mn,Vn)=>{const Wn=Mn.selection.getNode();return OB(Mn,Wn).filter(jl).fold(()=>MP(Mn.getBody(),Vn,Mn.selection.getRng(),Mn.schema).map(jn=>()=>jn.fold(hM(Mn,Vn),Qz(Mn,Vn),Vz(Mn))),()=>zo.some(Js))},_B=Mn=>{fs(mf(Mn,".mce-offscreen-selection"),sc)},Wz=(Mn,Vn)=>{const Wn=Mn.selection.getNode();return jl(Wn)&&!L1(Wn)?OB(Mn,Wn.parentNode).filter(jl).fold(()=>zo.some(()=>{_B(Cs.fromDom(Mn.getBody())),yO(Mn,Vn,Cs.fromDom(Mn.selection.getNode())),xA(Mn)}),()=>zo.some(Js)):fM(Mn)?zo.some(()=>{tE(Mn,Mn.selection.getRng(),Cs.fromDom(Mn.getBody()))}):zo.none()},SB=Mn=>{const Vn=Mn.dom,Wn=Mn.selection,jn=Nw(Mn.getBody(),Wn.getNode());if(Gf(jn)&&Vn.isBlock(jn)&&Vn.isEmpty(jn)){const Gn=Vn.create("br",{"data-mce-bogus":"1"});Vn.setHTML(jn,""),jn.appendChild(Gn),Wn.setRng(lr.before(Gn).toRange())}return!0},ME=(Mn,Vn)=>Mn.selection.isCollapsed()?zz(Mn,Vn):Wz(Mn,Vn),Uz=(Mn,Vn)=>{const Wn=lr.fromRangeStart(Mn.selection.getRng());return vh(Vn,Mn.getBody(),Wn).filter(jn=>Vn?t9(jn):n9(jn)).bind(jn=>ua(Vn?0:-1,jn)).map(jn=>()=>Mn.selection.select(jn))},mM=(Mn,Vn)=>Mn.selection.isCollapsed()?Uz(Mn,Vn):zo.none(),Xk=Ir,wB=Mn=>Xk(Mn)&&Mn.data[0]===_o,CB=Mn=>Xk(Mn)&&Mn.data[Mn.data.length-1]===_o,kB=Mn=>{var Vn;return((Vn=Mn.ownerDocument)!==null&&Vn!==void 0?Vn:document).createTextNode(_o)},Zz=Mn=>{var Vn;if(Xk(Mn.previousSibling))return CB(Mn.previousSibling)||Mn.previousSibling.appendData(_o),Mn.previousSibling;if(Xk(Mn))return wB(Mn)||Mn.insertData(0,_o),Mn;{const Wn=kB(Mn);return(Vn=Mn.parentNode)===null||Vn===void 0||Vn.insertBefore(Wn,Mn),Wn}},NP=Mn=>{var Vn,Wn;if(Xk(Mn.nextSibling))return wB(Mn.nextSibling)||Mn.nextSibling.insertData(0,_o),Mn.nextSibling;if(Xk(Mn))return CB(Mn)||Mn.appendData(_o),Mn;{const jn=kB(Mn);return Mn.nextSibling?(Vn=Mn.parentNode)===null||Vn===void 0||Vn.insertBefore(jn,Mn.nextSibling):(Wn=Mn.parentNode)===null||Wn===void 0||Wn.appendChild(jn),jn}},zw=(Mn,Vn)=>Mn?Zz(Vn):NP(Vn),qz=ws(zw,!0),jz=ws(zw,!1),NE=(Mn,Vn)=>Ir(Mn.container())?zw(Vn,Mn.container()):zw(Vn,Mn.getNode()),xB=(Mn,Vn)=>{const Wn=Vn.get();return Wn&&Mn.container()===Wn&&Jr(Wn)},pM=(Mn,Vn)=>Vn.fold(Wn=>{_f(Mn.get());const jn=qz(Wn);return Mn.set(jn),zo.some(lr(jn,jn.length-1))},Wn=>zm(Wn).map(jn=>{if(xB(jn,Mn)){const Gn=Mn.get();return lr(Gn,1)}else{_f(Mn.get());const Gn=NE(jn,!0);return Mn.set(Gn),lr(Gn,1)}}),Wn=>b1(Wn).map(jn=>{if(xB(jn,Mn)){const Gn=Mn.get();return lr(Gn,Gn.length-1)}else{_f(Mn.get());const Gn=NE(jn,!1);return Mn.set(Gn),lr(Gn,Gn.length-1)}}),Wn=>{_f(Mn.get());const jn=jz(Wn);return Mn.set(jn),zo.some(lr(jn,1))}),EB=(Mn,Vn)=>{for(let Wn=0;Wn{const Wn=Xr(Vn,Mn);return Wn||Mn},Xz=(Mn,Vn,Wn)=>{const jn=Dw(Wn),Gn=TB(Vn,jn.container());return n0(Mn,Gn,jn).fold(()=>Sm(Gn,jn).bind(ws(n0,Mn,Gn)).map(no=>Lp.before(no)),zo.none)},Yz=(Mn,Vn)=>cO(Mn,Vn)===null,AB=(Mn,Vn,Wn)=>n0(Mn,Vn,Wn).filter(ws(Yz,Vn)),Gz=(Mn,Vn,Wn)=>{const jn=Kx(Wn);return AB(Mn,Vn,jn).bind(Gn=>cp(Gn,jn).isNone()?zo.some(Lp.start(Gn)):zo.none())},Kz=(Mn,Vn,Wn)=>{const jn=Dw(Wn);return AB(Mn,Vn,jn).bind(Gn=>Sm(Gn,jn).isNone()?zo.some(Lp.end(Gn)):zo.none())},Jz=(Mn,Vn,Wn)=>{const jn=Kx(Wn),Gn=TB(Vn,jn.container());return n0(Mn,Gn,jn).fold(()=>cp(Gn,jn).bind(ws(n0,Mn,Gn)).map(no=>Lp.after(no)),zo.none)},eW=Mn=>!TL(LE(Mn)),Kh=(Mn,Vn,Wn)=>EB([Xz,Gz,Kz,Jz],[Mn,Vn,Wn]).filter(eW),LE=Mn=>Mn.fold(Qr,Qr,Qr,Qr),gM=Mn=>Mn.fold(xs("before"),xs("start"),xs("end"),xs("after")),IE=Mn=>Mn.fold(Lp.before,Lp.before,Lp.after,Lp.after),bM=Mn=>Mn.fold(Lp.start,Lp.start,Lp.end,Lp.end),PB=(Mn,Vn)=>gM(Mn)===gM(Vn)&&LE(Mn)===LE(Vn),tW=(Mn,Vn,Wn,jn,Gn,no)=>jc(n0(Vn,Wn,jn),n0(Vn,Wn,Gn),(ao,po)=>ao!==po&&o0(Wn,ao,po)?Lp.after(Mn?ao:po):no).getOr(no),$B=(Mn,Vn)=>Mn.fold(Qs,Wn=>!PB(Wn,Vn)),nW=(Mn,Vn,Wn,jn,Gn)=>{const no=mc(Mn,Gn);return vh(Mn,Wn,no).map(ws(mc,Mn)).fold(()=>jn.map(IE),vo=>Kh(Vn,Wn,vo).map(ws(tW,Mn,Vn,Wn,no,vo)).filter(ws($B,jn))).filter(eW)},oW=(Mn,Vn)=>Mn?Vn.fold(ko(zo.some,Lp.start),zo.none,ko(zo.some,Lp.after),zo.none):Vn.fold(zo.none,ko(zo.some,Lp.before),zo.none,ko(zo.some,Lp.end)),sW=(Mn,Vn,Wn,jn)=>{const Gn=mc(Mn,jn),no=Kh(Vn,Wn,Gn);return Kh(Vn,Wn,Gn).bind(ws(oW,Mn)).orThunk(()=>nW(Mn,Vn,Wn,no,jn))},Yk=Mn=>Yo(Mn.selection.getSel().modify),vM=(Mn,Vn,Wn)=>{const jn=Mn?1:-1;return Vn.setRng(lr(Wn.container(),Wn.offset()+jn).toRange()),Vn.getSel().modify("move",Mn?"forward":"backward","word"),!0},RB=(Mn,Vn)=>{const Wn=Vn.selection.getRng(),jn=Mn?lr.fromRangeEnd(Wn):lr.fromRangeStart(Wn);return Yk(Vn)?Mn&&Ac(jn)?vM(!0,Vn.selection,jn):!Mn&&gu(jn)?vM(!1,Vn.selection,jn):!1:!1};var av;(function(Mn){Mn[Mn.Br=0]="Br",Mn[Mn.Block=1]="Block",Mn[Mn.Wrap=2]="Wrap",Mn[Mn.Eol=3]="Eol"})(av||(av={}));const Gk=(Mn,Vn)=>Mn===Tu.Backwards?nc(Vn):Vn,rW=(Mn,Vn,Wn)=>Mn===Tu.Forwards?Vn.next(Wn):Vn.prev(Wn),iW=(Mn,Vn,Wn,jn)=>Ec(jn.getNode(Vn===Tu.Forwards))?av.Br:jr(Wn,jn)===!1?av.Block:av.Wrap,DB=(Mn,Vn,Wn,jn)=>{const Gn=ub(Wn);let no=jn;const ao=[];for(;no;){const po=rW(Vn,Gn,no);if(!po)break;if(Ec(po.getNode(!1)))return Vn===Tu.Forwards?{positions:Gk(Vn,ao).concat([po]),breakType:av.Br,breakAt:zo.some(po)}:{positions:Gk(Vn,ao),breakType:av.Br,breakAt:zo.some(po)};if(!po.isVisible()){no=po;continue}if(Mn(no,po)){const vo=iW(Wn,Vn,no,po);return{positions:Gk(Vn,ao),breakType:vo,breakAt:zo.some(po)}}ao.push(po),no=po}return{positions:Gk(Vn,ao),breakType:av.Eol,breakAt:zo.none()}},aW=(Mn,Vn,Wn,jn)=>Vn(Wn,jn).breakAt.map(Gn=>{const no=Vn(Wn,Gn).positions;return Mn===Tu.Backwards?no.concat(Gn):[Gn].concat(no)}).getOr([]),MB=(Mn,Vn)=>ra(Mn,(Wn,jn)=>Wn.fold(()=>zo.some(jn),Gn=>jc(qa(Gn.getClientRects()),qa(jn.getClientRects()),(no,ao)=>{const po=Math.abs(Vn-no.left);return Math.abs(Vn-ao.left)<=po?jn:Gn}).or(Wn)),zo.none()),yM=(Mn,Vn)=>qa(Vn.getClientRects()).bind(Wn=>MB(Mn,Wn.left)),Og=ws(DB,lr.isAbove,-1),BE=ws(DB,lr.isBelow,1),NB=ws(aW,-1,Og),j_=ws(aW,1,BE),OM=(Mn,Vn)=>Og(Mn,Vn).breakAt.isNone(),LB=(Mn,Vn)=>BE(Mn,Vn).breakAt.isNone(),LP=Mn=>zm(Mn).map(Vn=>[Vn].concat(BE(Mn,Vn).positions)).getOr([]),lW=Mn=>b1(Mn).map(Vn=>Og(Mn,Vn).positions.concat(Vn)).getOr([]),cW=(Mn,Vn)=>yM(NB(Mn,Vn),Vn),uW=(Mn,Vn)=>yM(j_(Mn,Vn),Vn),dW=jl,IB=(Mn,Vn)=>Math.abs(Mn.left-Vn),BB=(Mn,Vn)=>Math.abs(Mn.right-Vn),xO=Mn=>il(Mn,"node"),FB=(Mn,Vn)=>Ts(Mn,(Wn,jn)=>{const Gn=Math.min(IB(Wn,Vn),BB(Wn,Vn)),no=Math.min(IB(jn,Vn),BB(jn,Vn));return no===Gn&&xO(jn)&&dW(jn.node)||no{const Vn=Wn=>Us(Wn,jn=>{const Gn=B0(jn);return Gn.node=Mn,Gn});if(Oa(Mn))return Vn(Mn.getClientRects());if(Ir(Mn)){const Wn=Mn.ownerDocument.createRange();return Wn.setStart(Mn,0),Wn.setEnd(Mn,Mn.data.length),Vn(Wn.getClientRects())}else return[]},HB=Mn=>cc(Mn,fW);var FE;(function(Mn){Mn[Mn.Up=-1]="Up",Mn[Mn.Down=1]="Down"})(FE||(FE={}));const hW=(Mn,Vn,Wn,jn)=>{let Gn=jn;for(;Gn=qs(Gn,Mn,pm,Vn);)if(Wn(Gn))return},IP=(Mn,Vn,Wn,jn,Gn,no)=>{let ao=0;const po=[],vo=Qo=>{let qo=HB([Qo]);Mn===-1&&(qo=qo.reverse());for(let ds=0;ds0&&Vn(bs,ir(po))&&ao++,bs.line=ao,Gn(bs))return!0;po.push(bs)}}return!1},Ao=ir(no.getClientRects());if(!Ao)return po;const Fo=no.getNode();return Fo&&(vo(Fo),hW(Mn,jn,vo,Fo)),po},_M=(Mn,Vn)=>Vn.line>Mn,SM=(Mn,Vn)=>Vn.line===Mn,QB=ws(IP,FE.Up,Vb,zb),VB=ws(IP,FE.Down,zb,Vb),wM=Mn=>ir(Mn.getClientRects()),mW=(Mn,Vn,Wn,jn)=>{const Gn=ub(Vn);let no,ao,po,vo;const Ao=[];let Fo=0;Mn===1?(no=Gn.next,ao=zb,po=Vb,vo=lr.after(jn)):(no=Gn.prev,ao=Vb,po=zb,vo=lr.before(jn));const Qo=wM(vo);do{if(!vo.isVisible())continue;const qo=wM(vo);if(po(qo,Qo))continue;Ao.length>0&&ao(qo,ir(Ao))&&Fo++;const ds=B0(qo);if(ds.position=vo,ds.line=Fo,Wn(ds))return Ao;Ao.push(ds)}while(vo=no(vo));return Ao},Kk=Mn=>Vn=>_M(Mn,Vn),Jk=Mn=>Vn=>SM(Mn,Vn),Ey=(Mn,Vn)=>{Mn.selection.setRng(Vn),Ew(Mn,Mn.selection.getRng())},BP=(Mn,Vn,Wn)=>zo.some($P(Mn,Vn,Wn)),CM=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=Vn===Tu.Forwards,po=ub(Mn.getBody()),vo=ws(Mf,ao?po.next:po.prev),Ao=ao?jn:Gn;if(!Wn.collapsed){const bs=jv(Wn);if(no(bs))return xy(Vn,Mn,bs,Vn===Tu.Backwards,!1);if(fM(Mn)){const as=Wn.cloneRange();return as.collapse(Vn===Tu.Backwards),zo.from(as)}}const Fo=nh(Vn,Mn.getBody(),Wn);if(Ao(Fo))return jk(Mn,Fo.getNode(!ao));let Qo=vo(Fo);const qo=B1(Wn);if(Qo)Qo=mc(ao,Qo);else return qo?zo.some(Wn):zo.none();if(Ao(Qo))return xy(Vn,Mn,Qo.getNode(!ao),ao,!1);const ds=vo(Qo);return ds&&Ao(ds)&&Dp(Qo,ds)?xy(Vn,Mn,ds.getNode(!ao),ao,!1):qo?BP(Mn,Qo.toRange(),!1):zo.none()},kM=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=nh(Vn,Mn.getBody(),Wn),po=ir(ao.getClientRects()),vo=Vn===FE.Down,Ao=Mn.getBody();if(!po)return zo.none();if(fM(Mn)){const ys=vo?lr.fromRangeEnd(Wn):lr.fromRangeStart(Wn);return(vo?uW:cW)(Ao,ys).orThunk(()=>zo.from(ys)).map(zs=>zs.toRange())}const Qo=(vo?VB:QB)(Ao,Kk(1),ao),qo=nr(Qo,Jk(1)),ds=po.left,bs=FB(qo,ds);if(bs&&no(bs.node)){const ys=Math.abs(ds-bs.left),Ls=Math.abs(ds-bs.right);return xy(Vn,Mn,bs.node,ys$P(Mn,ys.toRange(),!1)):zo.none()},e2=(Mn,Vn)=>{const Wn=Mn.selection.getRng(),jn=Vn?lr.fromRangeEnd(Wn):lr.fromRangeStart(Wn),Gn=mr(jn.container(),Mn.getBody());if(Vn){const no=BE(Gn,jn);return Ya(no.positions)}else{const no=Og(Gn,jn);return qa(no.positions)}},FP=(Mn,Vn,Wn)=>e2(Mn,Vn).filter(Wn).exists(jn=>(Mn.selection.setRng(jn.toRange()),!0)),X_=(Mn,Vn)=>{const Wn=Mn.dom.createRng();Wn.setStart(Vn.container(),Vn.offset()),Wn.setEnd(Vn.container(),Vn.offset()),Mn.selection.setRng(Wn)},zB=(Mn,Vn)=>{Mn?Vn.setAttribute("data-mce-selected","inline-boundary"):Vn.removeAttribute("data-mce-selected")},xM=(Mn,Vn,Wn)=>pM(Vn,Wn).map(jn=>(X_(Mn,jn),Wn)),pW=(Mn,Vn,Wn)=>{const jn=lr.fromRangeStart(Mn);if(Mn.collapsed)return jn;{const Gn=lr.fromRangeEnd(Mn);return Wn?cp(Vn,Gn).getOr(Gn):Sm(Vn,jn).getOr(jn)}},gW=(Mn,Vn,Wn)=>{const jn=Mn.getBody(),Gn=pW(Mn.selection.getRng(),jn,Wn),no=ws(Rw,Mn);return sW(Wn,no,jn,Gn).bind(po=>xM(Mn,Vn,po))},WB=(Mn,Vn,Wn)=>{const jn=Us(mf(Cs.fromDom(Vn.getRoot()),'*[data-mce-selected="inline-boundary"]'),ao=>ao.dom),Gn=nr(jn,Mn),no=nr(Wn,Mn);fs(Ed(Gn,no),ws(zB,!1)),fs(Ed(no,Gn),ws(zB,!0))},bW=(Mn,Vn)=>{const Wn=Vn.get();if(Mn.selection.isCollapsed()&&!Mn.composing&&Wn){const jn=lr.fromRangeStart(Mn.selection.getRng());lr.isTextPosition(jn)&&!E9(jn)&&(X_(Mn,jC(Wn,jn)),Vn.set(null))}},UB=(Mn,Vn,Wn,jn)=>{if(Vn.selection.isCollapsed()){const Gn=nr(jn,Mn);fs(Gn,no=>{const ao=lr.fromRangeStart(Vn.selection.getRng());Kh(Mn,Vn.getBody(),ao).bind(po=>xM(Vn,Wn,po))})}},vW=(Mn,Vn,Wn)=>z0(Mn)?gW(Mn,Vn,Wn).isSome():!1,ZB=(Mn,Vn,Wn)=>z0(Vn)?RB(Mn,Vn):!1,yW=Mn=>{const Vn=od(null),Wn=ws(Rw,Mn);return Mn.on("NodeChange",jn=>{z0(Mn)&&(WB(Wn,Mn.dom,jn.parents),bW(Mn,Vn),UB(Wn,Mn,Vn,jn.parents))}),Vn},OW=ws(ZB,!0),_W=ws(ZB,!1),HP=(Mn,Vn,Wn)=>{if(z0(Mn)){const jn=e2(Mn,Vn).getOrThunk(()=>{const Gn=Mn.selection.getRng();return Vn?lr.fromRangeEnd(Gn):lr.fromRangeStart(Gn)});return Kh(ws(Rw,Mn),Mn.getBody(),jn).exists(Gn=>{const no=IE(Gn);return pM(Wn,no).exists(ao=>(X_(Mn,ao),!0))})}else return!1},SW=(Mn,Vn)=>{const Wn=document.createRange();return Wn.setStart(Mn.container(),Mn.offset()),Wn.setEnd(Vn.container(),Vn.offset()),Wn},wW=Mn=>jc(zm(Mn),b1(Mn),(Vn,Wn)=>{const jn=mc(!0,Vn),Gn=mc(!1,Wn);return Sm(Mn,jn).forall(no=>no.isEqual(Gn))}).getOr(!0),qB=(Mn,Vn)=>Wn=>pM(Vn,Wn).map(jn=>()=>X_(Mn,jn)),EM=(Mn,Vn,Wn,jn)=>{const Gn=Mn.getBody(),no=ws(Rw,Mn);Mn.undoManager.ignore(()=>{Mn.selection.setRng(SW(Wn,jn)),Jx(Mn),Kh(no,Gn,lr.fromRangeStart(Mn.selection.getRng())).map(bM).bind(qB(Mn,Vn)).each(ha)}),Mn.nodeChanged()},CW=(Mn,Vn)=>{const Wn=Xr(Vn,Mn);return Wn||Mn},Ww=(Mn,Vn,Wn,jn)=>{const Gn=CW(Mn.getBody(),jn.container()),no=ws(Rw,Mn),ao=Kh(no,Gn,jn);return ao.bind(vo=>Wn?vo.fold(xs(zo.some(bM(vo))),zo.none,xs(zo.some(IE(vo))),zo.none):vo.fold(zo.none,xs(zo.some(IE(vo))),zo.none,xs(zo.some(bM(vo))))).map(qB(Mn,Vn)).getOrThunk(()=>{const vo=Z0(Wn,Gn,jn),Ao=vo.bind(Fo=>Kh(no,Gn,Fo));return jc(ao,Ao,()=>n0(no,Gn,jn).bind(Fo=>wW(Fo)?zo.some(()=>{yO(Mn,Wn,Cs.fromDom(Fo))}):zo.none())).getOrThunk(()=>Ao.bind(()=>vo.map(Fo=>()=>{Wn?EM(Mn,Vn,jn,Fo):EM(Mn,Vn,Fo,jn)})))})},QP=(Mn,Vn,Wn)=>{if(Mn.selection.isCollapsed()&&z0(Mn)){const jn=lr.fromRangeStart(Mn.selection.getRng());return Ww(Mn,Vn,Wn,jn)}return zo.none()},TM=Mn=>Af(Mn)>1,AM=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody()),jn=Cs.fromDom(Mn.selection.getStart()),Gn=py(jn,Wn);return Nl(Gn,Vn).fold(xs(Gn),no=>Gn.slice(0,no))},PM=Mn=>Af(Mn)===1,Y_=Mn=>AM(Mn,Vn=>Mn.schema.isBlock(ql(Vn))||TM(Vn)),jB=Mn=>AM(Mn,Vn=>Mn.schema.isBlock(ql(Vn))),k1=(Mn,Vn)=>{const Wn=ws(vy,Mn);return cc(Vn,jn=>Wn(jn)?[jn.dom]:[])},G_=Mn=>{const Vn=jB(Mn);return k1(Mn,Vn)},$M=(Mn,Vn,Wn,jn)=>{const Gn=k1(Vn,jn);if(Gn.length===0)yO(Vn,Mn,Wn);else{const no=p5(Wn.dom,Gn);Vn.selection.setRng(no.toRange())}},kW=(Mn,Vn)=>{const Wn=nr(Y_(Mn),PM);return Ya(Wn).bind(jn=>{const Gn=lr.fromRangeStart(Mn.selection.getRng());return EA(Vn,Gn,jn.dom)&&!gw(jn)?zo.some(()=>$M(Vn,Mn,jn,Wn)):zo.none()})},XB=(Mn,Vn)=>{const Wn=Vn.parentElement;return Ec(Vn)&&!Mo(Wn)&&Mn.dom.isEmpty(Wn)},xW=Mn=>gw(Cs.fromDom(Mn)),YB=(Mn,Vn)=>{const Wn=Mn.selection.getStart(),jn=XB(Mn,Wn)||xW(Wn)?p5(Wn,Vn):ZA(Mn.selection.getRng(),Vn);Mn.selection.setRng(jn.toRange())},EW=(Mn,Vn)=>{const Wn=Ed(Vn,G_(Mn));Wn.length>0&&YB(Mn,Wn)},GB=Mn=>Ir(Mn.startContainer),TW=Mn=>Mn.startOffset===0&&GB(Mn),KB=(Mn,Vn)=>{const Wn=Vn.startContainer.parentElement;return!Mo(Wn)&&vy(Mn,Cs.fromDom(Wn))},AW=Mn=>{const Vn=Mn.startContainer.parentNode,Wn=Mn.endContainer.parentNode;return!Mo(Vn)&&!Mo(Wn)&&Vn.isEqualNode(Wn)},PW=Mn=>{const Vn=Mn.endContainer;return Mn.endOffset===(Ir(Vn)?Vn.length:Vn.childNodes.length)},t2=Mn=>AW(Mn)&&PW(Mn),RM=Mn=>!Mn.endContainer.isEqualNode(Mn.commonAncestorContainer),JB=Mn=>t2(Mn)||RM(Mn),eF=Mn=>{const Vn=Mn.selection.getRng();return TW(Vn)&&KB(Mn,Vn)&&JB(Vn)},DM=Mn=>{if(eF(Mn)){const Vn=G_(Mn);return zo.some(()=>{Jx(Mn),EW(Mn,Vn)})}else return zo.none()},MM=(Mn,Vn)=>Mn.selection.isCollapsed()?kW(Mn,Vn):DM(Mn),$W=(Mn,Vn)=>P9(Mn,Wn=>fg(Wn.dom),Wn=>Vn.isBlock(ql(Wn))),RW=Mn=>$W(Cs.fromDom(Mn.selection.getStart()),Mn.schema),DW=Mn=>{const Vn=Mn.selection.getRng();return Vn.collapsed&&(GB(Vn)||Mn.dom.isEmpty(Vn.startContainer))&&!RW(Mn)},HE=Mn=>(DW(Mn)&&YB(Mn,[]),!0),NM=(Mn,Vn,Wn)=>rs(Wn)?zo.some(()=>{Mn._selectionOverrides.hideFakeCaret(),yO(Mn,Vn,Cs.fromDom(Wn))}):zo.none(),MW=(Mn,Vn)=>{const Wn=Vn?jx:wk,jn=Vn?Tu.Forwards:Tu.Backwards,Gn=nh(jn,Mn.getBody(),Mn.selection.getRng());return Wn(Gn)?NM(Mn,Vn,Gn.getNode(!Vn)):zo.from(mc(Vn,Gn)).filter(no=>Wn(no)&&Dp(Gn,no)).bind(no=>NM(Mn,Vn,no.getNode(!Vn)))},tF=(Mn,Vn)=>{const Wn=Mn.selection.getNode();return pu(Wn)?NM(Mn,Vn,Wn):zo.none()},LM=(Mn,Vn)=>Mn.selection.isCollapsed()?MW(Mn,Vn):tF(Mn,Vn),NW=Mn=>cf(Mn,Vn=>Gf(Vn.dom)||jl(Vn.dom)).exists(Vn=>Gf(Vn.dom)),_g=Mn=>Em(Mn??"").getOr(0),nF=(Mn,Vn)=>{const Wn=Mn||hh(Vn)?"margin":"padding",jn=Ju(Vn,"direction")==="rtl"?"-right":"-left";return Wn+jn},IM=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=nF(Wn,Cs.fromDom(no)),po=_g(Mn.getStyle(no,ao));if(Vn==="outdent"){const vo=Math.max(0,po-jn);Mn.setStyle(no,ao,vo?vo+Gn:"")}else{const vo=po+jn+Gn;Mn.setStyle(no,ao,vo)}},oF=(Mn,Vn)=>gc(Vn,Wn=>{const jn=nF(a_(Mn),Wn),Gn=fd(Wn,jn).map(_g).getOr(0);return Mn.dom.getContentEditable(Wn.dom)!=="false"&&Gn>0}),VP=Mn=>{const Vn=rF(Mn);return!Mn.mode.isReadOnly()&&(Vn.length>1||oF(Mn,Vn))},sF=Mn=>xh(Mn)||Lm(Mn),LW=Mn=>Wc(Mn).exists(sF),rF=Mn=>nr(Km(Mn.selection.getSelectedBlocks()),Vn=>!sF(Vn)&&!LW(Vn)&&NW(Vn)),iF=(Mn,Vn)=>{var Wn,jn;const{dom:Gn}=Mn,no=th(Mn),ao=(jn=(Wn=/[a-z%]+$/i.exec(no))===null||Wn===void 0?void 0:Wn[0])!==null&&jn!==void 0?jn:"px",po=_g(no),vo=a_(Mn);fs(rF(Mn),Ao=>{IM(Gn,Vn,vo,po,ao,Ao.dom)})},IW=Mn=>iF(Mn,"indent"),BM=Mn=>iF(Mn,"outdent"),aF=Mn=>{if(Mn.selection.isCollapsed()&&VP(Mn)){const Vn=Mn.dom,Wn=Mn.selection.getRng(),jn=lr.fromRangeStart(Wn),Gn=Vn.getParent(Wn.startContainer,Vn.isBlock);if(Gn!==null&&rR(Cs.fromDom(Gn),jn,Mn.schema))return zo.some(()=>BM(Mn))}return zo.none()},lF=(Mn,Vn,Wn)=>Yl([aF,ME,dM,(jn,Gn)=>QP(jn,Vn,Gn),cM,lE,mM,LM,PP,MM],jn=>jn(Mn,Wn)).filter(jn=>Mn.selection.isEditable()),QE=(Mn,Vn)=>{lF(Mn,Vn,!1).fold(()=>{Mn.selection.isEditable()&&(Jx(Mn),xA(Mn))},ha)},EO=(Mn,Vn)=>{lF(Mn,Vn,!0).fold(()=>{Mn.selection.isEditable()&&T9(Mn)},ha)},Uw=(Mn,Vn)=>{Mn.addCommand("delete",()=>{QE(Mn,Vn)}),Mn.addCommand("forwardDelete",()=>{EO(Mn,Vn)})},VE=5,FM=400,zP=Mn=>Mn.touches===void 0||Mn.touches.length!==1?zo.none():zo.some(Mn.touches[0]),cF=(Mn,Vn)=>{const Wn=Math.abs(Mn.clientX-Vn.x),jn=Math.abs(Mn.clientY-Vn.y);return Wn>VE||jn>VE},BW=Mn=>{const Vn=Fb(),Wn=od(!1),jn=jO(Gn=>{Mn.dispatch("longpress",{...Gn,type:"longpress"}),Wn.set(!0)},FM);Mn.on("touchstart",Gn=>{zP(Gn).each(no=>{jn.cancel();const ao={x:no.clientX,y:no.clientY,target:Gn.target};jn.throttle(Gn),Wn.set(!1),Vn.set(ao)})},!0),Mn.on("touchmove",Gn=>{jn.cancel(),zP(Gn).each(no=>{Vn.on(ao=>{cF(no,ao)&&(Vn.clear(),Wn.set(!1),Mn.dispatch("longpresscancel"))})})},!0),Mn.on("touchend touchcancel",Gn=>{jn.cancel(),Gn.type!=="touchcancel"&&Vn.get().filter(no=>no.target.isEqualNode(Gn.target)).each(()=>{Wn.get()?Gn.preventDefault():Mn.dispatch("tap",{...Gn,type:"tap"})})},!0)},WP=(Mn,Vn)=>Mr(Mn,Vn.nodeName),uF=(Mn,Vn)=>Ir(Vn)?!0:Oa(Vn)?!WP(Mn.getBlockElements(),Vn)&&!hg(Vn)&&!Wl(Mn,Vn)&&!DO(Vn):!1,FW=(Mn,Vn,Wn)=>Sr(oR(Cs.fromDom(Wn),Cs.fromDom(Vn)),jn=>WP(Mn,jn.dom)),HW=(Mn,Vn)=>{if(Ir(Vn)){if(Vn.data.length===0)return!0;if(/^\s+$/.test(Vn.data))return!Vn.nextSibling||WP(Mn,Vn.nextSibling)||DO(Vn.nextSibling)}return!1},dF=Mn=>Mn.dom.create(bh(Mn),Zb(Mn)),QW=Mn=>{const Vn=Mn.dom,Wn=Mn.selection,jn=Mn.schema,Gn=jn.getBlockElements(),no=Wn.getStart(),ao=Mn.getBody();let po,vo,Ao=!1;const Fo=bh(Mn);if(!no||!Oa(no))return;const Qo=ao.nodeName.toLowerCase();if(!jn.isValidChild(Qo,Fo.toLowerCase())||FW(Gn,ao,no))return;const qo=Wn.getRng(),{startContainer:ds,startOffset:bs,endContainer:as,endOffset:ys}=qo,Ls=L_(Mn);let zs=ao.firstChild;for(;zs;)if(Oa(zs)&&j1(jn,zs),uF(jn,zs)){if(HW(Gn,zs)){vo=zs,zs=zs.nextSibling,Vn.remove(vo);continue}po||(po=dF(Mn),ao.insertBefore(po,zs),Ao=!0),vo=zs,zs=zs.nextSibling,po.appendChild(vo)}else po=null,zs=zs.nextSibling;Ao&&Ls&&(qo.setStart(ds,bs),qo.setEnd(as,ys),Wn.setRng(qo),Mn.nodeChanged())},fF=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(dF(Mn)),Gn=Th();Fu(jn,Gn),Wn(Vn,jn);const no=document.createRange();return no.setStartBefore(Gn.dom),no.setEndBefore(Gn.dom),no},VW=Mn=>{Mn.on("NodeChange",ws(QW,Mn))},HM=Mn=>Vn=>(" "+Vn.attr("class")+" ").indexOf(Mn)!==-1,hF=(Mn,Vn,Wn)=>function(jn){const Gn=arguments,no=Gn[Gn.length-2],ao=no>0?Vn.charAt(no-1):"";if(ao==='"')return jn;if(ao===">"){const po=Vn.lastIndexOf("<",no);if(po!==-1&&Vn.substring(po,no).indexOf('contenteditable="false"')!==-1)return jn}return''+Mn.dom.encode(typeof Gn[1]=="string"?Gn[1]:Gn[0])+""},sG=(Mn,Vn,Wn)=>{let jn=Vn.length,Gn=Wn.content;if(Wn.format!=="raw"){for(;jn--;)Gn=Gn.replace(Vn[jn],hF(Mn,Gn,rO(Mn)));Wn.content=Gn}},rG=(Mn,Vn)=>gc(Mn,Wn=>{const jn=Vn.match(Wn);return jn!==null&&jn[0].length===Vn.length}),iG=Mn=>{const Vn="contenteditable",Wn=" "+Lr.trim(WC(Mn))+" ",jn=" "+Lr.trim(rO(Mn))+" ",Gn=HM(Wn),no=HM(jn),ao=dx(Mn);ao.length>0&&Mn.on("BeforeSetContent",po=>{sG(Mn,ao,po)}),Mn.parser.addAttributeFilter("class",po=>{let vo=po.length;for(;vo--;){const Ao=po[vo];Gn(Ao)?Ao.attr(Vn,"true"):no(Ao)&&Ao.attr(Vn,"false")}}),Mn.serializer.addAttributeFilter(Vn,po=>{let vo=po.length;for(;vo--;){const Ao=po[vo];if(!Gn(Ao)&&!no(Ao))continue;const Fo=Ao.attr("data-mce-content");ao.length>0&&Fo?rG(ao,Fo)?(Ao.name="#text",Ao.type=3,Ao.raw=!0,Ao.value=Fo):Ao.remove():Ao.attr(Vn,null)}})},zW=Mn=>uf(Cs.fromDom(Mn.getBody()),"*[data-mce-caret]").map(Vn=>Vn.dom).getOrNull(),WW=(Mn,Vn)=>{Vn.hasAttribute("data-mce-caret")&&(wp(Vn),Mn.selection.setRng(Mn.selection.getRng()),Mn.selection.scrollIntoView(Vn))},aG=(Mn,Vn)=>{const Wn=zW(Mn);if(Wn){if(Vn.type==="compositionstart"){Vn.preventDefault(),Vn.stopPropagation(),WW(Mn,Wn);return}Ol(Wn)&&(WW(Mn,Wn),Mn.undoManager.add())}},UW=Mn=>{Mn.on("keyup compositionstart",ws(aG,Mn))},mF=jl,lG=(Mn,Vn,Wn)=>CM(Vn,Mn,Wn,bO,tv,mF),ZW=(Mn,Vn,Wn)=>kM(Vn,Mn,Wn,no=>bO(no)||uL(no),no=>tv(no)||Ql(no),mF),jg=Mn=>{const Vn=Mn.dom.create(bh(Mn));return Vn.innerHTML='
    ',Vn},QM=(Mn,Vn,Wn)=>{const jn=ub(Mn.getBody()),Gn=ws(Mf,Vn===1?jn.next:jn.prev);if(Wn.collapsed){const no=Mn.dom.getParent(Wn.startContainer,"PRE");if(!no)return;if(!Gn(lr.fromRangeStart(Wn))){const po=Cs.fromDom(jg(Mn));Vn===1?fh(Cs.fromDom(no),po):ed(Cs.fromDom(no),po),Mn.selection.select(po.dom,!0),Mn.selection.collapse()}}},zE=(Mn,Vn)=>{const Wn=Vn?Tu.Forwards:Tu.Backwards,jn=Mn.selection.getRng();return lG(Wn,Mn,jn).orThunk(()=>(QM(Mn,Wn,jn),zo.none()))},qW=(Mn,Vn)=>{const Wn=Vn?1:-1,jn=Mn.selection.getRng();return ZW(Wn,Mn,jn).orThunk(()=>(QM(Mn,Wn,jn),zo.none()))},pF=(Mn,Vn)=>{const Wn=Vn?Mn.getEnd(!0):Mn.getStart(!0);return TL(Wn)?!Vn:Vn},VM=(Mn,Vn)=>zE(Mn,pF(Mn.selection,Vn)).exists(Wn=>(Ey(Mn,Wn),!0)),UP=(Mn,Vn)=>qW(Mn,Vn).exists(Wn=>(Ey(Mn,Wn),!0)),gF=(Mn,Vn)=>FP(Mn,Vn,Vn?tv:bO),ZP=(Mn,Vn)=>DP(Mn,!Vn).map(Wn=>{const jn=Wn.toRange(),Gn=Mn.selection.getRng();return Vn?jn.setStart(Gn.startContainer,Gn.startOffset):jn.setEnd(Gn.endContainer,Gn.endOffset),jn}).exists(Wn=>(Ey(Mn,Wn),!0)),bF=Mn=>Zs(["figcaption"],ql(Mn)),jW=(Mn,Vn,Wn)=>{const jn=ws(Vs,Vn);return cf(Cs.fromDom(Mn.container()),Gn=>Wn.isBlock(ql(Gn)),jn).filter(bF)},XW=(Mn,Vn,Wn)=>Vn?LB(Mn.dom,Wn):OM(Mn.dom,Wn),YW=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody()),jn=lr.fromRangeStart(Mn.selection.getRng());return jW(jn,Wn,Mn.schema).exists(()=>{if(XW(Wn,Vn,jn)){const no=fF(Mn,Wn,Vn?Fu:Gm);return Mn.selection.setRng(no),!0}else return!1})},qP=(Mn,Vn)=>Mn.selection.isCollapsed()?YW(Mn,Vn):!1,GW=(Mn,Vn,Wn)=>{const jn=Mn.selection.getRng(),Gn=lr.fromRangeStart(jn);return Mn.getBody().firstChild===Vn&&OM(Wn,Gn)?(Mn.execCommand("InsertNewBlockBefore"),!0):!1},KW=(Mn,Vn)=>{const Wn=Mn.selection.getRng(),jn=lr.fromRangeStart(Wn);return Mn.getBody().lastChild===Vn&&LB(Vn,jn)?(Mn.execCommand("InsertNewBlockAfter"),!0):!1},cG=(Mn,Vn)=>Vn?zo.from(Mn.dom.getParent(Mn.selection.getNode(),"details")).map(Wn=>KW(Mn,Wn)).getOr(!1):zo.from(Mn.dom.getParent(Mn.selection.getNode(),"summary")).bind(Wn=>zo.from(Mn.dom.getParent(Wn,"details")).map(jn=>GW(Mn,jn,Wn))).getOr(!1),vF=(Mn,Vn)=>cG(Mn,Vn),zM={shiftKey:!1,altKey:!1,ctrlKey:!1,metaKey:!1,keyCode:0},uG=Mn=>Us(Mn,Vn=>({...zM,...Vn})),JW=Mn=>Us(Mn,Vn=>({...zM,...Vn})),yF=(Mn,Vn)=>Vn.keyCode===Mn.keyCode&&Vn.shiftKey===Mn.shiftKey&&Vn.altKey===Mn.altKey&&Vn.ctrlKey===Mn.ctrlKey&&Vn.metaKey===Mn.metaKey,eU=(Mn,Vn)=>cc(uG(Mn),Wn=>yF(Wn,Vn)?[Wn]:[]),WM=(Mn,Vn)=>cc(JW(Mn),Wn=>yF(Wn,Vn)?[Wn]:[]),cl=(Mn,...Vn)=>()=>Mn.apply(null,Vn),n2=(Mn,Vn)=>xa(eU(Mn,Vn),Wn=>Wn.action()),UM=(Mn,Vn)=>Yl(WM(Mn,Vn),Wn=>Wn.action()),OF=(Mn,Vn)=>{const Wn=Vn?Tu.Forwards:Tu.Backwards,jn=Mn.selection.getRng();return CM(Mn,Wn,jn,jx,wk,pu).exists(Gn=>(Ey(Mn,Gn),!0))},_F=(Mn,Vn)=>{const Wn=Vn?1:-1,jn=Mn.selection.getRng();return kM(Mn,Wn,jn,jx,wk,pu).exists(Gn=>(Ey(Mn,Gn),!0))},jP=(Mn,Vn)=>FP(Mn,Vn,Vn?wk:jx),SF=Qg.generate([{none:["current"]},{first:["current"]},{middle:["current","target"]},{last:["current"]}]),WE={...SF,none:Mn=>SF.none(Mn)},tU=(Mn,Vn)=>Ob(Mn,Vn,Qs),Ob=(Mn,Vn,Wn)=>cc(Ku(Mn),jn=>zh(jn,Vn)?Wn(jn)?[jn]:[]:Ob(jn,Vn,Wn)),wF=(Mn,Vn,Wn=hs)=>{if(Wn(Vn))return zo.none();if(Zs(Mn,ql(Vn)))return zo.some(Vn);const jn=Gn=>zh(Gn,"table")||Wn(Gn);return lm(Vn,Mn.join(","),jn)},CF=(Mn,Vn)=>wF(["td","th"],Mn,Vn),fG=Mn=>tU(Mn,"th,td"),nU=(Mn,Vn)=>cm(Mn,"table",Vn),kF=(Mn,Vn,Wn,jn,Gn=Qs)=>{const no=jn===1;if(!no&&Wn<=0)return WE.first(Mn[0]);if(no&&Wn>=Mn.length-1)return WE.last(Mn[Mn.length-1]);{const ao=Wn+jn,po=Mn[ao];return Gn(po)?WE.middle(Vn,po):kF(Mn,Vn,ao,jn,Gn)}},oU=(Mn,Vn)=>nU(Mn,Vn).bind(Wn=>{const jn=fG(Wn);return Nl(jn,no=>Vs(Mn,no)).map(no=>({index:no,all:jn}))}),sU=(Mn,Vn,Wn)=>oU(Mn,Wn).fold(()=>WE.none(Mn),Gn=>kF(Gn.all,Mn,Gn.index,1,Vn)),XP=(Mn,Vn,Wn)=>oU(Mn,Wn).fold(()=>WE.none(),Gn=>kF(Gn.all,Mn,Gn.index,-1,Vn)),rU=(Mn,Vn)=>({left:Mn.left-Vn,top:Mn.top-Vn,right:Mn.right+Vn*2,bottom:Mn.bottom+Vn*2,width:Mn.width+Vn,height:Mn.height+Vn}),ZM=(Mn,Vn)=>cc(Vn,Wn=>{const jn=rU(B0(Wn.getBoundingClientRect()),-1);return[{x:jn.left,y:Mn(jn),cell:Wn},{x:jn.right,y:Mn(jn),cell:Wn}]}),xF=(Mn,Vn,Wn)=>ra(Mn,(jn,Gn)=>jn.fold(()=>zo.some(Gn),no=>{const ao=Math.sqrt(Math.abs(no.x-Vn)+Math.abs(no.y-Wn)),po=Math.sqrt(Math.abs(Gn.x-Vn)+Math.abs(Gn.y-Wn));return zo.some(po{const no=mf(Cs.fromDom(Wn),"td,th,caption").map(po=>po.dom),ao=nr(ZM(Mn,no),po=>Vn(po,Gn));return xF(ao,jn,Gn).map(po=>po.cell)},EF=Mn=>Mn.bottom,iU=Mn=>Mn.top,aU=(Mn,Vn)=>Mn.yMn.y>Vn,cU=ws(qM,EF,aU),YP=ws(qM,iU,lU),uU=(Mn,Vn)=>qa(Vn.getClientRects()).bind(Wn=>cU(Mn,Wn.left,Wn.top)).bind(Wn=>yM(lW(Wn),Vn)),dU=(Mn,Vn)=>Ya(Vn.getClientRects()).bind(Wn=>YP(Mn,Wn.left,Wn.top)).bind(Wn=>yM(LP(Wn),Vn)),fU=(Mn,Vn,Wn)=>Wn.breakAt.exists(jn=>Mn(Vn,jn).breakAt.isSome()),jM=Mn=>Mn.breakType===av.Wrap&&Mn.positions.length===0,hU=Mn=>Mn.breakType===av.Br&&Mn.positions.length===1,TF=(Mn,Vn,Wn)=>{const jn=Mn(Vn,Wn);return jM(jn)||!Ec(Wn.getNode())&&hU(jn)?!fU(Mn,Vn,jn):jn.breakAt.isNone()},AF=ws(TF,Og),mU=ws(TF,BE),pU=(Mn,Vn,Wn)=>{const jn=lr.fromRangeStart(Vn);return w_(!Mn,Wn).exists(Gn=>Gn.isEqual(jn))},gU=(Mn,Vn,Wn,jn)=>{const Gn=Mn.selection.getRng(),no=Vn?1:-1;return aO()&&pU(Vn,Gn,Wn)?(xy(no,Mn,Wn,!Vn,!1).each(ao=>{Ey(Mn,ao)}),!0):!1},bU=(Mn,Vn,Wn)=>uU(Vn,Wn).orThunk(()=>qa(Wn.getClientRects()).bind(jn=>MB(NB(Mn,lr.before(Vn)),jn.left))).getOr(lr.before(Vn)),vU=(Mn,Vn,Wn)=>dU(Vn,Wn).orThunk(()=>qa(Wn.getClientRects()).bind(jn=>MB(j_(Mn,lr.after(Vn)),jn.left))).getOr(lr.after(Vn)),PF=(Mn,Vn)=>{const Wn=Vn.getNode(Mn);return Gp(Wn)?zo.some(Wn):zo.none()},XM=(Mn,Vn,Wn)=>{Vn.undoManager.transact(()=>{const jn=Mn?fh:ed,Gn=fF(Vn,Cs.fromDom(Wn),jn);Ey(Vn,Gn)})},$F=(Mn,Vn,Wn)=>{const jn=PF(!!Vn,Wn),Gn=Vn===!1;jn.fold(()=>Ey(Mn,Wn.toRange()),no=>w_(Gn,Mn.getBody()).filter(ao=>ao.isEqual(Wn)).fold(()=>Ey(Mn,Wn.toRange()),ao=>XM(Vn,Mn,no)))},RF=(Mn,Vn,Wn,jn)=>{const Gn=Mn.selection.getRng(),no=lr.fromRangeStart(Gn),ao=Mn.getBody();if(!Vn&&AF(jn,no)){const po=bU(ao,Wn,no);return $F(Mn,Vn,po),!0}else if(Vn&&mU(jn,no)){const po=vU(ao,Wn,no);return $F(Mn,Vn,po),!0}else return!1},DF=(Mn,Vn,Wn)=>zo.from(Mn.dom.getParent(Mn.selection.getNode(),"td,th")).bind(jn=>zo.from(Mn.dom.getParent(jn,"table")).map(Gn=>Wn(Mn,Vn,Gn,jn))).getOr(!1),MF=(Mn,Vn)=>DF(Mn,Vn,gU),YM=(Mn,Vn)=>DF(Mn,Vn,RF),yU=Mn=>{const Vn=J0.exact(Mn,0,Mn,0);return W3(Vn)},NF=(Mn,Vn,Wn)=>Wn.fold(zo.none,zo.none,(jn,Gn)=>LH(Gn).map(no=>yU(no)),jn=>(Mn.execCommand("mceTableInsertRowAfter"),LF(Mn,Vn,jn))),LF=(Mn,Vn,Wn)=>NF(Mn,Vn,sU(Wn,yl)),sh=(Mn,Vn,Wn)=>NF(Mn,Vn,XP(Wn,yl)),IF=(Mn,Vn)=>{const Wn=["table","li","dl"],jn=Cs.fromDom(Mn.getBody()),Gn=po=>{const vo=ql(po);return Vs(po,jn)||Zs(Wn,vo)},no=Mn.selection.getRng(),ao=Cs.fromDom(Vn?no.endContainer:no.startContainer);return CF(ao,Gn).map(po=>(nU(po,Gn).each(Fo=>{Mn.model.table.clearSelectedCells(Fo.dom)}),Mn.selection.collapse(!Vn),(Vn?LF:sh)(Mn,Gn,po).each(Fo=>{Mn.selection.setRng(Fo)}),!0)).getOr(!1)},OU=(Mn,Vn,Wn)=>{const jn=aa.os.isMacOS()||aa.os.isiOS();n2([{keyCode:va.RIGHT,action:cl(VM,Mn,!0)},{keyCode:va.LEFT,action:cl(VM,Mn,!1)},{keyCode:va.UP,action:cl(UP,Mn,!1)},{keyCode:va.DOWN,action:cl(UP,Mn,!0)},...jn?[{keyCode:va.UP,action:cl(ZP,Mn,!1),metaKey:!0,shiftKey:!0},{keyCode:va.DOWN,action:cl(ZP,Mn,!0),metaKey:!0,shiftKey:!0}]:[],{keyCode:va.RIGHT,action:cl(MF,Mn,!0)},{keyCode:va.LEFT,action:cl(MF,Mn,!1)},{keyCode:va.UP,action:cl(YM,Mn,!1)},{keyCode:va.DOWN,action:cl(YM,Mn,!0)},{keyCode:va.UP,action:cl(YM,Mn,!1)},{keyCode:va.UP,action:cl(vF,Mn,!1)},{keyCode:va.DOWN,action:cl(vF,Mn,!0)},{keyCode:va.RIGHT,action:cl(OF,Mn,!0)},{keyCode:va.LEFT,action:cl(OF,Mn,!1)},{keyCode:va.UP,action:cl(_F,Mn,!1)},{keyCode:va.DOWN,action:cl(_F,Mn,!0)},{keyCode:va.RIGHT,action:cl(vW,Mn,Vn,!0)},{keyCode:va.LEFT,action:cl(vW,Mn,Vn,!1)},{keyCode:va.RIGHT,ctrlKey:!jn,altKey:jn,action:cl(OW,Mn,Vn)},{keyCode:va.LEFT,ctrlKey:!jn,altKey:jn,action:cl(_W,Mn,Vn)},{keyCode:va.UP,action:cl(qP,Mn,!1)},{keyCode:va.DOWN,action:cl(qP,Mn,!0)}],Wn).each(Gn=>{Wn.preventDefault()})},_U=(Mn,Vn)=>{Mn.on("keydown",Wn=>{Wn.isDefaultPrevented()||OU(Mn,Vn,Wn)})},d0=(Mn,Vn)=>({container:Mn,offset:Vn}),o2=Eu.DOM,UE=Mn=>Vn=>Mn===Vn?-1:0,K_=Mn=>Vn=>Mn.isBlock(Vn)||Zs(["BR","IMG","HR","INPUT"],Vn.nodeName)||Mn.getContentEditable(Vn)==="false",ZE=(Mn,Vn,Wn)=>{if(Ir(Mn)&&Vn>=0)return zo.some(d0(Mn,Vn));{const jn=Qb(o2);return zo.from(jn.backwards(Mn,Vn,UE(Mn),Wn)).map(Gn=>d0(Gn.container,Gn.container.data.length))}},BF=(Mn,Vn,Wn)=>{if(Ir(Mn)&&Vn>=Mn.length)return zo.some(d0(Mn,Vn));{const jn=Qb(o2);return zo.from(jn.forwards(Mn,Vn,UE(Mn),Wn)).map(Gn=>d0(Gn.container,0))}},qE=(Mn,Vn,Wn)=>{if(!Ir(Mn))return zo.none();const jn=Mn.data;if(Vn>=0&&Vn<=jn.length)return zo.some(d0(Mn,Vn));{const Gn=Qb(o2);return zo.from(Gn.backwards(Mn,Vn,UE(Mn),Wn)).bind(no=>{const ao=no.container.data;return qE(no.container,Vn+ao.length,Wn)})}},GP=(Mn,Vn,Wn)=>{if(!Ir(Mn))return zo.none();const jn=Mn.data;if(Vn<=jn.length)return zo.some(d0(Mn,Vn));{const Gn=Qb(o2);return zo.from(Gn.forwards(Mn,Vn,UE(Mn),Wn)).bind(no=>GP(no.container,Vn-jn.length,Wn))}},jE=(Mn,Vn,Wn,jn,Gn)=>{const no=Qb(Mn,K_(Mn));return zo.from(no.backwards(Vn,Wn,jn,Gn))},FF=Mn=>Mn.collapsed&&Ir(Mn.startContainer),XE=Mn=>Xo(Mn.toString().replace(/\u00A0/g," ")),YE=Mn=>Mn!==""&&`  \f +\r \v`.indexOf(Mn)!==-1,Zw=(Mn,Vn)=>Mn.substring(Vn.length),GE=(Mn,Vn,Wn)=>{let jn;const Gn=Wn.charAt(0);for(jn=Vn-1;jn>=0;jn--){const no=Mn.charAt(jn);if(YE(no))return zo.none();if(Gn===no&&oc(Mn,Wn,jn,Vn))break}return zo.some(jn)},f0=(Mn,Vn,Wn,jn=0)=>{if(!FF(Vn))return zo.none();const Gn={text:"",offset:0},no=(po,vo,Ao)=>(Gn.text=Ao+Gn.text,Gn.offset+=vo,GE(Gn.text,Gn.offset,Wn).getOr(vo)),ao=Mn.getParent(Vn.startContainer,Mn.isBlock)||Mn.getRoot();return jE(Mn,Vn.startContainer,Vn.startOffset,no,ao).bind(po=>{const vo=Vn.cloneRange();if(vo.setStart(po.container,po.offset),vo.setEnd(Vn.endContainer,Vn.endOffset),vo.collapsed)return zo.none();const Ao=XE(vo);return Ao.lastIndexOf(Wn)!==0||Zw(Ao,Wn).lengthHH(Cs.fromDom(Vn.startContainer)).fold(()=>f0(Mn,Vn,Wn,jn),Gn=>{const no=Mn.createRng();no.selectNode(Gn.dom);const ao=XE(no);return zo.some({range:no,text:Zw(ao,Wn),trigger:Wn})}),HF=Mn=>Mn.nodeType===A1,QF=Mn=>Mn.nodeType===Hh,VF=Mn=>{if(HF(Mn))return d0(Mn,Mn.data.length);{const Vn=Mn.childNodes;return Vn.length>0?VF(Vn[Vn.length-1]):d0(Mn,Vn.length)}},GM=(Mn,Vn)=>{const Wn=Mn.childNodes;return Wn.length>0&&Vn0&&QF(Mn)&&Wn.length===Vn?VF(Wn[Wn.length-1]):d0(Mn,Vn)},SU=(Mn,Vn)=>{var Wn;const jn=(Wn=Mn.getParent(Vn.container,Mn.isBlock))!==null&&Wn!==void 0?Wn:Mn.getRoot();return jE(Mn,Vn.container,Vn.offset,(Gn,no)=>no===0?-1:no,jn).filter(Gn=>{const no=Gn.container.data.charAt(Gn.offset-1);return!YE(no)}).isSome()},wU=Mn=>Vn=>{const Wn=GM(Vn.startContainer,Vn.startOffset);return!SU(Mn,Wn)},KE=(Mn,Vn,Wn)=>Yl(Wn.triggers,jn=>s2(Mn,Vn,jn)),CU=(Mn,Vn)=>{const Wn=Vn(),jn=Mn.selection.getRng();return KE(Mn.dom,jn,Wn).bind(Gn=>zF(Mn,Vn,Gn))},zF=(Mn,Vn,Wn,jn={})=>{var Gn;const no=Vn(),po=(Gn=Mn.selection.getRng().startContainer.nodeValue)!==null&&Gn!==void 0?Gn:"",vo=nr(no.lookupByTrigger(Wn.trigger),Fo=>Wn.text.length>=Fo.minChars&&Fo.matches.getOrThunk(()=>wU(Mn.dom))(Wn.range,po,Wn.text));if(vo.length===0)return zo.none();const Ao=Promise.all(Us(vo,Fo=>Fo.fetch(Wn.text,Fo.maxResults,jn).then(qo=>({matchText:Wn.text,items:qo,columns:Fo.columns,onAction:Fo.onAction,highlightOn:Fo.highlightOn}))));return zo.some({lookupData:Ao,context:Wn})};var lv;(function(Mn){Mn[Mn.Error=0]="Error",Mn[Mn.Value=1]="Value"})(lv||(lv={}));const KM=(Mn,Vn,Wn)=>Mn.stype===lv.Error?Vn(Mn.serror):Wn(Mn.svalue),kU=Mn=>{const Vn=[],Wn=[];return fs(Mn,jn=>{KM(jn,Gn=>Wn.push(Gn),Gn=>Vn.push(Gn))}),{values:Vn,errors:Wn}},xU=(Mn,Vn)=>Mn.stype===lv.Error?{stype:lv.Error,serror:Vn(Mn.serror)}:Mn,EU=(Mn,Vn)=>Mn.stype===lv.Value?{stype:lv.Value,svalue:Vn(Mn.svalue)}:Mn,TU=(Mn,Vn)=>Mn.stype===lv.Value?Vn(Mn.svalue):Mn,AU=(Mn,Vn)=>Mn.stype===lv.Error?Vn(Mn.serror):Mn,WF=Mn=>({stype:lv.Value,svalue:Mn}),UF=Mn=>({stype:lv.Error,serror:Mn}),km={fromResult:Mn=>Mn.fold(UF,WF),toResult:Mn=>KM(Mn,ym.error,ym.value),svalue:WF,partition:kU,serror:UF,bind:TU,bindError:AU,map:EU,mapError:xU,fold:KM},KP=Mn=>Bo(Mn)&&Al(Mn).length>100?" removed due to size":JSON.stringify(Mn,null,2),ZF=Mn=>{const Vn=Mn.length>10?Mn.slice(0,10).concat([{path:[],getErrorInfo:xs("... (only showing first ten failures)")}]):Mn;return Us(Vn,Wn=>"Failed path: ("+Wn.path.join(" > ")+`) +`+Wn.getErrorInfo())},JE=(Mn,Vn)=>km.serror([{path:Mn,getErrorInfo:Vn}]),PU=(Mn,Vn,Wn)=>JE(Mn,()=>'Could not find valid *required* value for "'+Vn+'" in '+KP(Wn)),$U=(Mn,Vn)=>JE(Mn,()=>'Choice schema did not contain choice key: "'+Vn+'"'),RU=(Mn,Vn,Wn)=>JE(Mn,()=>'The chosen schema: "'+Wn+'" did not exist in branches: '+KP(Vn)),DU=(Mn,Vn)=>JE(Mn,xs(Vn)),qF=(Mn,Vn,Wn,jn)=>Ma(Wn,jn).fold(()=>RU(Mn,Wn,jn),no=>no.extract(Mn.concat(["branch: "+jn]),Vn)),MU=(Mn,Vn)=>({extract:(Gn,no)=>Ma(no,Mn).fold(()=>$U(Gn,Mn),po=>qF(Gn,no,Vn,po)),toString:()=>"chooseOn("+Mn+"). Possible values: "+Al(Vn)}),jF=(Mn,Vn)=>Vn,NU=(Mn,Vn)=>Vo(Mn)&&Vo(Vn)?eT(Mn,Vn):Vn,JM=Mn=>(...Vn)=>{if(Vn.length===0)throw new Error("Can't merge zero objects");const Wn={};for(let jn=0;jn({tag:"required",process:{}}),IU=Mn=>({tag:"defaultedThunk",process:Mn}),e4=Mn=>IU(xs(Mn)),BU=()=>({tag:"option",process:{}}),FU=(Mn,Vn)=>Mn.length>0?km.svalue(eT(Vn,LU.apply(void 0,Mn))):km.svalue(Vn),t4=Mn=>ko(km.serror,Zc)(Mn),YF={consolidateObj:(Mn,Vn)=>{const Wn=km.partition(Mn);return Wn.errors.length>0?t4(Wn.errors):FU(Wn.values,Vn)},consolidateArr:Mn=>{const Vn=km.partition(Mn);return Vn.errors.length>0?t4(Vn.errors):km.svalue(Vn.values)}},HU=(Mn,Vn,Wn,jn)=>({tag:"field",key:Mn,newKey:Vn,presence:Wn,prop:jn}),QU=(Mn,Vn)=>({tag:"custom",newKey:Mn,instantiator:Vn}),GF=(Mn,Vn,Wn)=>{switch(Mn.tag){case"field":return Vn(Mn.key,Mn.newKey,Mn.presence,Mn.prop);case"custom":return Wn(Mn.newKey,Mn.instantiator)}},JP=Mn=>{const Vn=(jn,Gn)=>km.bindError(Mn(Gn),no=>DU(jn,no)),Wn=xs("val");return{extract:Vn,toString:Wn}},KF=JP(km.svalue),VU=(Mn,Vn,Wn,jn)=>Ma(Vn,Wn).fold(()=>PU(Mn,Wn,Vn),jn),JF=(Mn,Vn,Wn,jn)=>{const Gn=Ma(Mn,Vn).getOrThunk(()=>Wn(Mn));return jn(Gn)},zU=(Mn,Vn,Wn)=>Wn(Ma(Mn,Vn)),WU=(Mn,Vn,Wn,jn)=>{const Gn=Ma(Mn,Vn).map(no=>no===!0?Wn(Mn):no);return jn(Gn)},UU=(Mn,Vn,Wn,jn,Gn)=>{const no=po=>Gn.extract(Vn.concat([jn]),po),ao=po=>po.fold(()=>km.svalue(zo.none()),vo=>{const Ao=Gn.extract(Vn.concat([jn]),vo);return km.map(Ao,zo.some)});switch(Mn.tag){case"required":return VU(Vn,Wn,jn,no);case"defaultedThunk":return JF(Wn,jn,Mn.process,no);case"option":return zU(Wn,jn,ao);case"defaultedOptionThunk":return WU(Wn,jn,Mn.process,ao);case"mergeWithThunk":return JF(Wn,jn,xs({}),po=>{const vo=eT(Mn.process(Wn),po);return no(vo)})}},ZU=(Mn,Vn,Wn)=>{const jn={},Gn=[];for(const no of Wn)GF(no,(ao,po,vo,Ao)=>{const Fo=UU(vo,Mn,Vn,ao,Ao);km.fold(Fo,Qo=>{Gn.push(...Qo)},Qo=>{jn[po]=Qo})},(ao,po)=>{jn[ao]=po(Vn)});return Gn.length>0?km.serror(Gn):km.svalue(jn)},n4=Mn=>({extract:(jn,Gn)=>ZU(jn,Gn,Mn),toString:()=>`obj{ +`+Us(Mn,Gn=>GF(Gn,(no,ao,po,vo)=>no+" -> "+vo.toString(),(no,ao)=>"state("+no+")")).join(` +`)+"}"}),e6=Mn=>({extract:(jn,Gn)=>{const no=Us(Gn,(ao,po)=>Mn.extract(jn.concat(["["+po+"]"]),ao));return YF.consolidateArr(no)},toString:()=>"array("+Mn.toString()+")"}),bG=Mn=>JP(Vn=>Mn(Vn).fold(km.serror,km.svalue)),qU=(Mn,Vn,Wn)=>{const jn=Vn.extract([Mn],Wn);return km.mapError(jn,Gn=>({input:Wn,errors:Gn}))},e$=(Mn,Vn,Wn)=>km.toResult(qU(Mn,Vn,Wn)),t6=Mn=>`Errors: +`+ZF(Mn.errors).join(` +`)+` + +Input object: `+KP(Mn.input),o4=(Mn,Vn)=>MU(Mn,Pl(Vn,n4)),jU=xs(KF),tT=(Mn,Vn)=>JP(Wn=>{const jn=typeof Wn;return Mn(Wn)?km.svalue(Wn):km.serror(`Expected type: ${Vn} but got: ${jn}`)}),n6=tT(Ys,"number"),t$=tT(xo,"string"),XU=tT(es,"boolean"),s4=tT(Yo,"function"),r2=HU,o6=QU,r4=Mn=>bG(Vn=>Zs(Mn,Vn)?ym.value(Vn):ym.error(`Unsupported value: "${Vn}", choose one of "${Mn.join(", ")}".`)),s6=(Mn,Vn)=>r2(Mn,Mn,XF(),Vn),r6=Mn=>s6(Mn,t$),i6=Mn=>s6(Mn,s4),a6=(Mn,Vn)=>r2(Mn,Mn,XF(),e6(Vn)),i4=(Mn,Vn)=>r2(Mn,Mn,BU(),Vn),n$=Mn=>i4(Mn,t$),YU=Mn=>i4(Mn,s4),GU=(Mn,Vn)=>r2(Mn,Mn,e4(Vn),jU()),i2=(Mn,Vn,Wn)=>r2(Mn,Mn,e4(Vn),Wn),rh=(Mn,Vn)=>i2(Mn,Vn,n6),Ty=(Mn,Vn)=>i2(Mn,Vn,t$),l6=(Mn,Vn,Wn)=>i2(Mn,Vn,r4(Wn)),c6=(Mn,Vn)=>i2(Mn,Vn,XU),a4=(Mn,Vn)=>i2(Mn,Vn,s4),KU=(Mn,Vn,Wn)=>i2(Mn,Vn,e6(Wn)),JU=r6("type"),eZ=i6("fetch"),o$=i6("onAction"),a2=a4("onSetup",()=>Js),vG=n$("text"),tZ=n$("icon"),nZ=n$("tooltip"),cv=n$("label"),oZ=c6("active",!1),sZ=c6("enabled",!0),l4=c6("primary",!1),rZ=Mn=>GU("columns",Mn),qw=Mn=>Ty("type",Mn),u6=n4([JU,r6("trigger"),rh("minChars",1),rZ(1),rh("maxResults",10),YU("matches"),eZ,o$,KU("highlightOn",[],t$)]),iZ=Mn=>e$("Autocompleter",u6,{trigger:Mn.ch,...Mn}),c4=[sZ,nZ,tZ,vG,a2],d6=[oZ].concat(c4),f6=[a4("predicate",hs),l6("scope","node",["node","editor"]),l6("position","selection",["node","selection","line"])],h6=c4.concat([qw("contextformbutton"),l4,o$,o6("original",Qr)]),u4=d6.concat([qw("contextformbutton"),l4,o$,o6("original",Qr)]),d4=c4.concat([qw("contextformbutton")]),f4=d6.concat([qw("contextformtogglebutton")]),aZ=o4("type",{contextformbutton:h6,contextformtogglebutton:u4});n4([qw("contextform"),a4("initValue",xs("")),cv,a6("commands",aZ),i4("launch",o4("type",{contextformbutton:d4,contextformtogglebutton:f4}))].concat(f6));const lZ=Mn=>{const Vn=Mn.ui.registry.getAll().popups,Wn=Pl(Vn,ao=>iZ(ao).fold(po=>{throw new Error(t6(po))},Qr)),jn=vl(ia(Wn,ao=>ao.trigger)),Gn=ka(Wn);return{dataset:Wn,triggers:jn,lookupByTrigger:ao=>nr(Gn,po=>po.trigger===ao)}},cZ=(Mn,Vn)=>{const Wn=jO(Vn.load,50);Mn.on("keypress compositionend",jn=>{jn.which!==27&&Wn.throttle()}),Mn.on("keydown",jn=>{const Gn=jn.which;Gn===8?Wn.throttle():Gn===27&&Vn.cancelIfNecessary()}),Mn.on("remove",Wn.cancel)},uZ=Mn=>{const Vn=Fb(),Wn=od(!1),jn=Vn.isSet,Gn=()=>{jn()&&(EV(Mn),Fx(Mn),Wn.set(!1),Vn.clear())},no=Ao=>{jn()||(xV(Mn,Ao.range),Vn.set({trigger:Ao.trigger,matchLength:Ao.text.length}))},ao=br(()=>lZ(Mn)),po=Ao=>Vn.get().map(Fo=>s2(Mn.dom,Mn.selection.getRng(),Fo.trigger).bind(Qo=>zF(Mn,ao,Qo,Ao))).getOrThunk(()=>CU(Mn,ao)),vo=Ao=>{po(Ao).fold(Gn,Fo=>{no(Fo.context),Fo.lookupData.then(Qo=>{Vn.get().map(qo=>{const ds=Fo.context;qo.trigger===ds.trigger&&(ds.text.length-qo.matchLength>=10?Gn():(Vn.set({...qo,matchLength:ds.text.length}),Wn.get()?eA(Mn,{lookupData:Qo}):(Wn.set(!0),Bx(Mn,{lookupData:Qo}))))})})})};Mn.addCommand("mceAutocompleterReload",(Ao,Fo)=>{const Qo=Bo(Fo)?Fo.fetchOptions:{};vo(Qo)}),Mn.addCommand("mceAutocompleterClose",Gn),cZ(Mn,{cancelIfNecessary:Gn,load:vo})},p6=xl().browser.isSafari(),g6=Mn=>Kp(Cs.fromDom(Mn)),h4=(Mn,Vn)=>{var Wn;return Mn.startOffset===0&&Mn.endOffset===((Wn=Vn.textContent)===null||Wn===void 0?void 0:Wn.length)},s$=(Mn,Vn)=>zo.from(Mn.getParent(Vn.container(),"details")),r$=(Mn,Vn)=>s$(Mn,Vn).isSome(),dZ=(Mn,Vn)=>{const Wn=zo.from(Mn.getParent(Vn.startContainer,"details")),jn=zo.from(Mn.getParent(Vn.endContainer,"details"));if(Wn.isSome()||jn.isSome()){const Gn=Wn.bind(no=>zo.from(Mn.select("summary",no)[0]));return zo.some({startSummary:Gn,startDetails:Wn,endDetails:jn})}else return zo.none()},fZ=(Mn,Vn)=>zm(Vn).exists(Wn=>Wn.isEqual(Mn)),hZ=(Mn,Vn)=>b1(Vn).exists(Wn=>Ec(Wn.getNode())&&cp(Vn,Wn).exists(jn=>jn.isEqual(Mn))||Wn.isEqual(Mn)),mZ=(Mn,Vn)=>Vn.startSummary.exists(Wn=>fZ(Mn,Wn)),pZ=(Mn,Vn)=>Vn.startSummary.exists(Wn=>hZ(Mn,Wn)),b6=(Mn,Vn)=>Vn.startDetails.exists(Wn=>cp(Wn,Mn).forall(jn=>Vn.startSummary.exists(Gn=>!Gn.contains(Mn.container())&&Gn.contains(jn.container())))),m4=(Mn,Vn,Wn)=>Wn.startDetails.exists(jn=>Sm(Mn,Vn).forall(Gn=>!jn.contains(Gn.container()))),p4=(Mn,Vn)=>{const Wn=Vn.getNode();ls(Wn)||Mn.selection.setCursorLocation(Wn,Vn.offset())},g4=(Mn,Vn,Wn)=>{const jn=Mn.dom.getParent(Vn.container(),"details");if(jn&&!jn.open){const Gn=Mn.dom.select("summary",jn)[0];Gn&&(Wn?zm(Gn):b1(Gn)).each(ao=>p4(Mn,ao))}else p4(Mn,Vn)},gZ=(Mn,Vn)=>{const Wn=vo=>vo.contains(Mn.startContainer),jn=vo=>vo.contains(Mn.endContainer),Gn=Vn.startSummary.exists(Wn),no=Vn.startSummary.exists(jn),ao=Vn.startDetails.forall(vo=>Vn.endDetails.forall(Ao=>vo!==Ao));return(Gn||no)&&!(Gn&&no)||ao},v6=(Mn,Vn,Wn)=>{const{dom:jn,selection:Gn}=Mn,no=Mn.getBody();if(Wn==="character"){const ao=lr.fromRangeStart(Gn.getRng()),po=jn.getParent(ao.container(),jn.isBlock),vo=s$(jn,ao),Ao=po&&jn.isEmpty(po),Fo=Mo(po==null?void 0:po.previousSibling),Qo=Mo(po==null?void 0:po.nextSibling);return Ao&&(Vn?Qo:Fo)&&Z0(!Vn,no,ao).exists(bs=>r$(jn,bs)&&!Ef(vo,s$(jn,bs)))?!0:Z0(Vn,no,ao).fold(hs,qo=>{const ds=s$(jn,qo);if(r$(jn,qo)&&!Ef(vo,ds)){if(Vn||g4(Mn,qo,!1),po&&Ao){if(Vn&&Fo)return!0;if(!Vn&&Qo)return!0;g4(Mn,qo,Vn),Mn.dom.remove(po)}return!0}else return!1})}else return!1},bZ=(Mn,Vn,Wn,jn)=>{const no=Mn.selection.getRng(),ao=lr.fromRangeStart(no),po=Mn.getBody();return jn==="selection"?gZ(no,Vn):Wn?pZ(ao,Vn)||m4(po,ao,Vn):mZ(ao,Vn)||b6(ao,Vn)},i$=(Mn,Vn,Wn)=>dZ(Mn.dom,Mn.selection.getRng()).fold(()=>v6(Mn,Vn,Wn),jn=>bZ(Mn,jn,Vn,Wn)||v6(Mn,Vn,Wn)),y6=(Mn,Vn,Wn)=>{const jn=Mn.selection,Gn=jn.getNode(),no=jn.getRng(),ao=lr.fromRangeStart(no);return Kf(Gn)?(Wn==="selection"&&h4(no,Gn)||EA(Vn,ao,Gn)?g6(Gn):Mn.undoManager.transact(()=>{const po=jn.getSel();let{anchorNode:vo,anchorOffset:Ao,focusNode:Fo,focusOffset:Qo}=po??{};const qo=()=>{rs(vo)&&rs(Ao)&&rs(Fo)&&rs(Qo)&&(po==null||po.setBaseAndExtent(vo,Ao,Fo,Qo))},ds=()=>{vo=po==null?void 0:po.anchorNode,Ao=po==null?void 0:po.anchorOffset,Fo=po==null?void 0:po.focusNode,Qo=po==null?void 0:po.focusOffset},bs=(ys,Ls)=>{fs(ys.childNodes,zs=>{uw(zs)&&Ls.appendChild(zs)})},as=Mn.dom.create("span",{"data-mce-bogus":"1"});bs(Gn,as),Gn.appendChild(as),qo(),(Wn==="word"||Wn==="line")&&(po==null||po.modify("extend",Vn?"right":"left",Wn)),!jn.isCollapsed()&&h4(jn.getRng(),as)?g6(Gn):(Mn.execCommand(Vn?"ForwardDelete":"Delete"),ds(),bs(as,Gn),qo()),Mn.dom.remove(as)}),!0):!1},J_=(Mn,Vn,Wn)=>i$(Mn,Vn,Wn)||p6&&y6(Mn,Vn,Wn)?zo.some(Js):zo.none(),O6=Mn=>(Vn,Wn,jn={})=>{const Gn=Vn.getBody(),no={bubbles:!0,composed:!0,data:null,isComposing:!1,detail:0,view:null,target:Gn,currentTarget:Gn,eventPhase:Event.AT_TARGET,originalTarget:Gn,explicitOriginalTarget:Gn,isTrusted:!1,srcElement:Gn,cancelable:!1,preventDefault:Js,inputType:Wn},ao=Fv(new InputEvent(Mn));return Vn.dispatch(Mn,{...ao,...no,...jn})},nT=O6("input"),b4=O6("beforeinput"),vZ=xl(),yZ=vZ.os,_6=yZ.isMacOS()||yZ.isiOS(),OZ=vZ.browser.isFirefox(),_Z=(Mn,Vn,Wn)=>{const jn=Wn.keyCode===va.BACKSPACE?"deleteContentBackward":"deleteContentForward",Gn=Mn.selection.isCollapsed(),no=Gn?"character":"selection",ao=po=>Gn?po?"word":"line":"selection";UM([{keyCode:va.BACKSPACE,action:cl(aF,Mn)},{keyCode:va.BACKSPACE,action:cl(ME,Mn,!1)},{keyCode:va.DELETE,action:cl(ME,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(dM,Mn,!1)},{keyCode:va.DELETE,action:cl(dM,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(QP,Mn,Vn,!1)},{keyCode:va.DELETE,action:cl(QP,Mn,Vn,!0)},{keyCode:va.BACKSPACE,action:cl(lE,Mn,!1)},{keyCode:va.DELETE,action:cl(lE,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(J_,Mn,!1,no)},{keyCode:va.DELETE,action:cl(J_,Mn,!0,no)},..._6?[{keyCode:va.BACKSPACE,altKey:!0,action:cl(J_,Mn,!1,ao(!0))},{keyCode:va.DELETE,altKey:!0,action:cl(J_,Mn,!0,ao(!0))},{keyCode:va.BACKSPACE,metaKey:!0,action:cl(J_,Mn,!1,ao(!1))}]:[{keyCode:va.BACKSPACE,ctrlKey:!0,action:cl(J_,Mn,!1,ao(!0))},{keyCode:va.DELETE,ctrlKey:!0,action:cl(J_,Mn,!0,ao(!0))}],{keyCode:va.BACKSPACE,action:cl(mM,Mn,!1)},{keyCode:va.DELETE,action:cl(mM,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(LM,Mn,!1)},{keyCode:va.DELETE,action:cl(LM,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(PP,Mn,!1)},{keyCode:va.DELETE,action:cl(PP,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(cM,Mn,!1)},{keyCode:va.DELETE,action:cl(cM,Mn,!0)},{keyCode:va.BACKSPACE,action:cl(MM,Mn,!1)},{keyCode:va.DELETE,action:cl(MM,Mn,!0)}],Wn).filter(po=>Mn.selection.isEditable()).each(po=>{Wn.preventDefault(),b4(Mn,jn).isDefaultPrevented()||(po(),nT(Mn,jn))})},yG=(Mn,Vn,Wn)=>n2([{keyCode:va.BACKSPACE,action:cl(SB,Mn)},{keyCode:va.DELETE,action:cl(SB,Mn)},..._6?[{keyCode:va.BACKSPACE,altKey:!0,action:cl(HE,Mn)},{keyCode:va.DELETE,altKey:!0,action:cl(HE,Mn)},...Wn?[{keyCode:OZ?224:91,action:cl(HE,Mn)}]:[]]:[{keyCode:va.BACKSPACE,ctrlKey:!0,action:cl(HE,Mn)},{keyCode:va.DELETE,ctrlKey:!0,action:cl(HE,Mn)}]],Vn),SZ=(Mn,Vn)=>{let Wn=!1;Mn.on("keydown",jn=>{Wn=jn.keyCode===va.BACKSPACE,jn.isDefaultPrevented()||_Z(Mn,Vn,jn)}),Mn.on("keyup",jn=>{jn.isDefaultPrevented()||yG(Mn,jn,Wn),Wn=!1})},rf=Mn=>{for(;Mn;){if(Oa(Mn)||Ir(Mn)&&Mn.data&&/[\r\n\s]/.test(Mn.data))return Mn;Mn=Mn.nextSibling}return null},eS=(Mn,Vn)=>{const Wn=Mn.dom,jn=Mn.schema.getMoveCaretBeforeOnEnterElements();if(!Vn)return;if(/^(LI|DT|DD)$/.test(Vn.nodeName)){const no=rf(Vn.firstChild);no&&/^(UL|OL|DL)$/.test(no.nodeName)&&Vn.insertBefore(Wn.doc.createTextNode(hc),Vn.firstChild)}const Gn=Wn.createRng();if(Vn.normalize(),Vn.hasChildNodes()){const no=new mu(Vn,Vn);let ao=Vn,po;for(;po=no.current();){if(Ir(po)){Gn.setStart(po,0),Gn.setEnd(po,0);break}if(jn[po.nodeName.toLowerCase()]){Gn.setStartBefore(po),Gn.setEndBefore(po);break}ao=po,po=no.next()}po||(Gn.setStart(ao,0),Gn.setEnd(ao,0))}else Ec(Vn)?Vn.nextSibling&&Wn.isBlock(Vn.nextSibling)?(Gn.setStartBefore(Vn),Gn.setEndBefore(Vn)):(Gn.setStartAfter(Vn),Gn.setEndAfter(Vn)):(Gn.setStart(Vn,0),Gn.setEnd(Vn,0));Mn.selection.setRng(Gn),Ew(Mn,Gn)},x1=(Mn,Vn)=>{const Wn=Mn.getRoot();let jn,Gn=Vn;for(;Gn!==Wn&&Gn&&Mn.getContentEditable(Gn)!=="false";){if(Mn.getContentEditable(Gn)==="true"){jn=Gn;break}Gn=Gn.parentNode}return Gn!==Wn?jn:Wn},a$=Mn=>zo.from(Mn.dom.getParent(Mn.selection.getStart(!0),Mn.dom.isBlock)),S6=Mn=>a$(Mn).fold(xs(""),Vn=>Vn.nodeName.toUpperCase()),wZ=Mn=>a$(Mn).filter(Vn=>Lm(Cs.fromDom(Vn))).isSome(),l2=Mn=>{Mn.innerHTML='
    '},y4=(Mn,Vn,Wn)=>{const jn=Mn.dom;zo.from(Wn.style).map(jn.parseStyle).each(vo=>{const Fo={...Ym(Cs.fromDom(Vn)),...vo};jn.setStyles(Vn,Fo)});const Gn=zo.from(Wn.class).map(vo=>vo.split(/\s+/)),no=zo.from(Vn.className).map(vo=>nr(vo.split(/\s+/),Ao=>Ao!==""));jc(Gn,no,(vo,Ao)=>{const Fo=nr(Ao,qo=>!Zs(vo,qo)),Qo=[...vo,...Fo];jn.setAttrib(Vn,"class",Qo.join(" "))});const ao=["style","class"],po=pr(Wn,(vo,Ao)=>!Zs(ao,Ao));jn.setAttribs(Vn,po)},c2=(Mn,Vn)=>{if(bh(Mn).toLowerCase()===Vn.tagName.toLowerCase()){const jn=Zb(Mn);y4(Mn,Vn,jn)}},O4=(Mn,Vn,Wn,jn,Gn=!0,no,ao)=>{const po=Mn.dom,vo=Mn.schema,Ao=bh(Mn),Fo=Wn?Wn.nodeName.toUpperCase():"";let Qo=Vn;const qo=vo.getTextInlineElements();let ds;no||Fo==="TABLE"||Fo==="HR"?ds=po.create(no||Ao,ao||{}):ds=Wn.cloneNode(!1);let bs=ds;if(!Gn)po.setAttrib(ds,"style",null),po.setAttrib(ds,"class",null);else do if(qo[Qo.nodeName]){if(fg(Qo)||hg(Qo))continue;const as=Qo.cloneNode(!1);po.setAttrib(as,"id",""),ds.hasChildNodes()?(as.appendChild(ds.firstChild),ds.appendChild(as)):(bs=as,ds.appendChild(as))}while((Qo=Qo.parentNode)&&Qo!==jn);return c2(Mn,ds),l2(bs),ds},CZ=(Mn,Vn)=>Mn.dom.getParent(Vn,Er),kZ=(Mn,Vn,Wn)=>{let jn=Vn;for(;jn&&jn!==Mn&&Mo(jn.nextSibling);){const Gn=jn.parentElement;if(!Gn||!Wn(Gn))return Er(Gn);jn=Gn}return!1},xZ=(Mn,Vn,Wn)=>!Vn&&Wn.nodeName.toLowerCase()===bh(Mn)&&Mn.dom.isEmpty(Wn)&&kZ(Mn.getBody(),Wn,jn=>Mr(Mn.schema.getTextBlockElements(),jn.nodeName.toLowerCase())),EZ=(Mn,Vn,Wn)=>{var jn,Gn,no;const ao=Vn(bh(Mn)),po=CZ(Mn,Wn);po&&(Mn.dom.insertAfter(ao,po),eS(Mn,ao),((no=(Gn=(jn=Wn.parentElement)===null||jn===void 0?void 0:jn.childNodes)===null||Gn===void 0?void 0:Gn.length)!==null&&no!==void 0?no:0)>1&&Mn.dom.remove(Wn))},TZ=(Mn,Vn)=>Mn.firstChild&&Mn.firstChild.nodeName===Vn,w6=Mn=>{var Vn;return((Vn=Mn.parentNode)===null||Vn===void 0?void 0:Vn.firstChild)===Mn},C6=(Mn,Vn)=>{const Wn=Mn==null?void 0:Mn.parentNode;return rs(Wn)&&Wn.nodeName===Vn},k6=Mn=>rs(Mn)&&/^(OL|UL|LI)$/.test(Mn.nodeName),_4=Mn=>rs(Mn)&&/^(LI|DT|DD)$/.test(Mn.nodeName),AZ=Mn=>k6(Mn)&&k6(Mn.parentNode),l$=Mn=>{const Vn=Mn.parentNode;return _4(Vn)?Vn:Mn},oT=(Mn,Vn,Wn)=>{let jn=Mn[Wn?"firstChild":"lastChild"];for(;jn&&!Oa(jn);)jn=jn[Wn?"nextSibling":"previousSibling"];return jn===Vn},S4=Mn=>ra(ia(Ym(Cs.fromDom(Mn)),(Vn,Wn)=>`${Wn}: ${Vn};`),(Vn,Wn)=>Vn+Wn,""),PZ=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.dom,ao=Mn.selection.getRng(),po=Wn.parentNode;if(Wn===Mn.getBody()||!po)return;AZ(Wn)&&(Gn="LI");const vo=_4(jn)?S4(jn):void 0;let Ao=_4(jn)&&vo?Vn(Gn,{style:S4(jn)}):Vn(Gn);if(oT(Wn,jn,!0)&&oT(Wn,jn,!1))if(C6(Wn,"LI")){const Fo=l$(Wn);no.insertAfter(Ao,Fo),w6(Wn)?no.remove(Fo):no.remove(Wn)}else no.replace(Ao,Wn);else if(oT(Wn,jn,!0))C6(Wn,"LI")?(no.insertAfter(Ao,l$(Wn)),Ao.appendChild(no.doc.createTextNode(" ")),Ao.appendChild(Wn)):po.insertBefore(Ao,Wn),no.remove(jn);else if(oT(Wn,jn,!1))no.insertAfter(Ao,l$(Wn)),no.remove(jn);else{Wn=l$(Wn);const Fo=ao.cloneRange();Fo.setStartAfter(jn),Fo.setEndAfter(Wn);const Qo=Fo.extractContents();if(Gn==="LI"&&TZ(Qo,"LI")){const qo=nr(Us(Ao.children,Cs.fromDom),Fs(Qh("br")));Ao=Qo.firstChild,no.insertAfter(Qo,Wn),fs(qo,ds=>Gm(Cs.fromDom(Ao),ds)),vo&&Ao.setAttribute("style",vo)}else no.insertAfter(Qo,Wn),no.insertAfter(Ao,Wn);no.remove(jn)}eS(Mn,Ao)},$Z=Mn=>{fs(Sp(Cs.fromDom(Mn),qd),Vn=>{const Wn=Vn.dom;Wn.nodeValue=Xo(Wn.data)})},OG=(Mn,Vn)=>{const Wn=Mn.dom.getParent(Vn,"ol,ul,dl");return Wn!==null&&Mn.dom.getContentEditableParent(Wn)==="false"},w4=(Mn,Vn)=>Vn&&Vn.nodeName==="A"&&Mn.isEmpty(Vn),C4=(Mn,Vn)=>Mn.nodeName===Vn||Mn.previousSibling&&Mn.previousSibling.nodeName===Vn,k4=(Mn,Vn)=>rs(Vn)&&Mn.isBlock(Vn)&&!/^(TD|TH|CAPTION|FORM)$/.test(Vn.nodeName)&&!/^(fixed|absolute)/i.test(Vn.style.position)&&Mn.isEditable(Vn.parentNode)&&Mn.getContentEditable(Vn)!=="false",RZ=(Mn,Vn,Wn)=>{var jn;const Gn=[];if(!Wn)return;let no=Wn;for(;no=no.firstChild;){if(Mn.isBlock(no))return;Oa(no)&&!Vn[no.nodeName.toLowerCase()]&&Gn.push(no)}let ao=Gn.length;for(;ao--;)no=Gn[ao],(!no.hasChildNodes()||no.firstChild===no.lastChild&&((jn=no.firstChild)===null||jn===void 0?void 0:jn.nodeValue)===""||w4(Mn,no))&&Mn.remove(no)},c$=(Mn,Vn,Wn)=>Ir(Vn)?Mn?Wn===1&&Vn.data.charAt(Wn-1)===_o?0:Wn:Wn===Vn.data.length-1&&Vn.data.charAt(Wn)===_o?Vn.data.length:Wn:Wn,DZ=Mn=>{const Vn=Mn.cloneRange();return Vn.setStart(Mn.startContainer,c$(!0,Mn.startContainer,Mn.startOffset)),Vn.setEnd(Mn.endContainer,c$(!1,Mn.endContainer,Mn.endOffset)),Vn},x6=Mn=>{let Vn=Mn;do Ir(Vn)&&(Vn.data=Vn.data.replace(/^[\r\n]+/,"")),Vn=Vn.firstChild;while(Vn)},MZ=(Mn,Vn,Wn,jn,Gn)=>{var no,ao;const po=Mn.dom,vo=(no=x1(po,jn))!==null&&no!==void 0?no:po.getRoot();let Ao=po.getParent(jn,po.isBlock);if(!Ao||!k4(po,Ao)){if(Ao=Ao||vo,!Ao.hasChildNodes()){const ds=po.create(Vn);return c2(Mn,ds),Ao.appendChild(ds),Wn.setStart(ds,0),Wn.setEnd(ds,0),ds}let Fo=jn;for(;Fo&&Fo.parentNode!==Ao;)Fo=Fo.parentNode;let Qo;for(;Fo&&!po.isBlock(Fo);)Qo=Fo,Fo=Fo.previousSibling;const qo=(ao=Qo==null?void 0:Qo.parentElement)===null||ao===void 0?void 0:ao.nodeName;if(Qo&&qo&&Mn.schema.isValidChild(qo,Vn.toLowerCase())){const ds=Qo.parentNode,bs=po.create(Vn);for(c2(Mn,bs),ds.insertBefore(bs,Qo),Fo=Qo;Fo&&!po.isBlock(Fo);){const as=Fo.nextSibling;bs.appendChild(Fo),Fo=as}Wn.setStart(jn,Gn),Wn.setEnd(jn,Gn)}}return jn},NZ=(Mn,Vn)=>{Vn.normalize();const Wn=Vn.lastChild;(!Wn||Oa(Wn)&&/^(left|right)$/gi.test(Mn.getStyle(Wn,"float",!0)))&&Mn.add(Vn,"br")},_G=(Mn,Vn)=>{const Wn=AC(Mn);return ps(Vn)?!1:xo(Wn)?Zs(Lr.explode(Wn),Vn.nodeName.toLowerCase()):Wn},E6={insert:(Mn,Vn)=>{let Wn,jn,Gn,no,ao=!1;const po=Mn.dom,vo=Mn.schema,Ao=vo.getNonEmptyElements(),Fo=Mn.selection.getRng(),Qo=bh(Mn),qo=Cs.fromDom(Fo.startContainer),ds=Rm(qo,Fo.startOffset),bs=ds.exists(Ar=>Du(Ar)&&!yl(Ar)),as=Fo.collapsed&&bs,ys=(Ar,wa)=>O4(Mn,Wn,Ur,Pr,j2(Mn),Ar,wa),Ls=Ar=>{const wa=c$(Ar,Wn,jn);if(Ir(Wn)&&(Ar?wa>0:wa{let Ar;return/^(H[1-6]|PRE|FIGURE)$/.test(Gn)&&fa!=="HGROUP"?Ar=ys(Qo):Ar=ys(),_G(Mn,no)&&k4(po,no)&&po.isEmpty(Ur,void 0,{includeZwsp:!0})?Ar=po.split(no,Ur):po.insertAfter(Ar,Ur),eS(Mn,Ar),Ar};To(po,Fo).each(Ar=>{Fo.setStart(Ar.startContainer,Ar.startOffset),Fo.setEnd(Ar.endContainer,Ar.endOffset)}),Wn=Fo.startContainer,jn=Fo.startOffset;const Hs=!!(Vn&&Vn.shiftKey),tr=!!(Vn&&Vn.ctrlKey);Oa(Wn)&&Wn.hasChildNodes()&&!as&&(ao=jn>Wn.childNodes.length-1,Wn=Wn.childNodes[Math.min(jn,Wn.childNodes.length-1)]||Wn,ao&&Ir(Wn)?jn=Wn.data.length:jn=0);const Pr=x1(po,Wn);if(!Pr||OG(Mn,Wn))return;Hs||(Wn=MZ(Mn,Qo,Fo,Wn,jn));let Ur=po.getParent(Wn,po.isBlock)||po.getRoot();no=rs(Ur==null?void 0:Ur.parentNode)?po.getParent(Ur.parentNode,po.isBlock):null,Gn=Ur?Ur.nodeName.toUpperCase():"";const fa=no?no.nodeName.toUpperCase():"";if(fa==="LI"&&!tr){const Ar=no;Ur=Ar,no=Ar.parentNode,Gn=fa}if(Oa(no)&&xZ(Mn,Hs,Ur))return EZ(Mn,ys,Ur);if(/^(LI|DT|DD)$/.test(Gn)&&Oa(no)&&po.isEmpty(Ur)){PZ(Mn,ys,no,Ur,Qo);return}if(!as&&(Ur===Mn.getBody()||!k4(po,Ur)))return;const yr=Ur.parentNode;let fr;if(as)fr=ys(Qo),ds.fold(()=>{Fu(qo,Cs.fromDom(fr))},Ar=>{ed(Ar,Cs.fromDom(fr))}),Mn.selection.setCursorLocation(fr,0);else if(zr(Ur))fr=wp(Ur),po.isEmpty(Ur)&&l2(Ur),c2(Mn,fr),eS(Mn,fr);else if(Ls(!1))fr=zs();else if(Ls(!0)&&yr){fr=yr.insertBefore(ys(),Ur);const Ar=e1(Cs.fromDom(Fo.startContainer))&&Fo.collapsed;eS(Mn,C4(Ur,"HR")||Ar?fr:Ur)}else{const Ar=DZ(Fo).cloneRange();Ar.setEndAfter(Ur);const wa=Ar.extractContents();$Z(wa),x6(wa),fr=wa.firstChild,po.insertAfter(wa,Ur),RZ(po,Ao,fr),NZ(po,Ur),po.isEmpty(Ur)&&l2(Ur),fr.normalize(),po.isEmpty(fr)?(po.remove(fr),zs()):(c2(Mn,fr),eS(Mn,fr))}po.setAttrib(fr,"id",""),Mn.dispatch("NewBlock",{newBlock:fr})},fakeEventName:"insertParagraph"},LZ=(Mn,Vn,Wn)=>{const jn=new mu(Vn,Wn);let Gn;const no=Mn.getNonEmptyElements();for(;Gn=jn.next();)if(no[Gn.nodeName.toLowerCase()]||Ir(Gn)&&Gn.length>0)return!0;return!1},T6=(Mn,Vn,Wn)=>{const jn=Mn.dom.createRng();Wn?(jn.setStartBefore(Vn),jn.setEndBefore(Vn)):(jn.setStartAfter(Vn),jn.setEndAfter(Vn)),Mn.selection.setRng(jn),Ew(Mn,jn)},IZ=(Mn,Vn)=>{const Wn=Mn.selection,jn=Mn.dom,Gn=Wn.getRng();let no,ao=!1;To(jn,Gn).each(ds=>{Gn.setStart(ds.startContainer,ds.startOffset),Gn.setEnd(ds.endContainer,ds.endOffset)});let po=Gn.startOffset,vo=Gn.startContainer;if(Oa(vo)&&vo.hasChildNodes()){const ds=po>vo.childNodes.length-1;vo=vo.childNodes[Math.min(po,vo.childNodes.length-1)]||vo,ds&&Ir(vo)?po=vo.data.length:po=0}let Ao=jn.getParent(vo,jn.isBlock);const Fo=Ao&&Ao.parentNode?jn.getParent(Ao.parentNode,jn.isBlock):null,Qo=Fo?Fo.nodeName.toUpperCase():"",qo=!!(Vn&&Vn.ctrlKey);Qo==="LI"&&!qo&&(Ao=Fo),Ir(vo)&&po>=vo.data.length&&(LZ(Mn.schema,vo,Ao||jn.getRoot())||(no=jn.create("br"),Gn.insertNode(no),Gn.setStartAfter(no),Gn.setEndAfter(no),ao=!0)),no=jn.create("br"),AS(jn,Gn,no),T6(Mn,no,ao),Mn.undoManager.add()},BZ=(Mn,Vn)=>{const Wn=Cs.fromTag("br");ed(Cs.fromDom(Vn),Wn),Mn.undoManager.add()},FZ=(Mn,Vn)=>{HZ(Mn.getBody(),Vn)||fh(Cs.fromDom(Vn),Cs.fromTag("br"));const Wn=Cs.fromTag("br");fh(Cs.fromDom(Vn),Wn),T6(Mn,Wn.dom,!1),Mn.undoManager.add()},u$=Mn=>Ec(Mn.getNode()),HZ=(Mn,Vn)=>u$(lr.after(Vn))?!0:Sm(Mn,lr.after(Vn)).map(Wn=>Ec(Wn.getNode())).getOr(!1),A6=Mn=>Mn&&Mn.nodeName==="A"&&"href"in Mn,x4=Mn=>Mn.fold(hs,A6,A6,hs),E4=Mn=>{const Vn=ws(Rw,Mn),Wn=lr.fromRangeStart(Mn.selection.getRng());return Kh(Vn,Mn.getBody(),Wn).filter(x4)},QZ=(Mn,Vn)=>{Vn.fold(Js,ws(BZ,Mn),ws(FZ,Mn),Js)},VZ={insert:(Mn,Vn)=>{const Wn=E4(Mn);Wn.isSome()?Wn.each(ws(QZ,Mn)):IZ(Mn,Vn)},fakeEventName:"insertLineBreak"},P6=(Mn,Vn)=>a$(Mn).filter(Wn=>Vn.length>0&&zh(Cs.fromDom(Wn),Vn)).isSome(),zZ=Mn=>P6(Mn,q2(Mn)),wG=Mn=>P6(Mn,HS(Mn)),E1=Qg.generate([{br:[]},{block:[]},{none:[]}]),uv=(Mn,Vn)=>wG(Mn),$6=Mn=>(Vn,Wn)=>wZ(Vn)===Mn,T4=(Mn,Vn)=>(Wn,jn)=>S6(Wn)===Mn.toUpperCase()===Vn,WZ=Mn=>{const Vn=x1(Mn.dom,Mn.selection.getStart());return ps(Vn)},sT=Mn=>T4("pre",Mn),UZ=()=>T4("summary",!0),d$=Mn=>(Vn,Wn)=>U2(Vn)===Mn,ZZ=(Mn,Vn)=>zZ(Mn),f$=(Mn,Vn)=>Vn,qZ=Mn=>{const Vn=bh(Mn),Wn=x1(Mn.dom,Mn.selection.getStart());return rs(Wn)&&Mn.schema.isValidChild(Wn.nodeName,Vn)},A4=Mn=>{const Vn=Mn.selection.getRng(),Wn=Cs.fromDom(Vn.startContainer),Gn=Rm(Wn,Vn.startOffset).map(no=>Du(no)&&!yl(no));return Vn.collapsed&&Gn.getOr(!0)},T1=(Mn,Vn)=>(Wn,jn)=>ra(Mn,(no,ao)=>no&&ao(Wn,jn),!0)?zo.some(Vn):zo.none(),h$=(Mn,Vn)=>EB([T1([uv],E1.none()),T1([sT(!0),WZ],E1.none()),T1([UZ()],E1.br()),T1([sT(!0),d$(!1),f$],E1.br()),T1([sT(!0),d$(!1)],E1.block()),T1([sT(!0),d$(!0),f$],E1.block()),T1([sT(!0),d$(!0)],E1.br()),T1([$6(!0),f$],E1.br()),T1([$6(!0)],E1.block()),T1([ZZ],E1.br()),T1([f$],E1.br()),T1([qZ],E1.block()),T1([A4],E1.block())],[Mn,!!(Vn&&Vn.shiftKey)]).getOr(E1.none()),m$=(Mn,Vn,Wn)=>{Vn.selection.isCollapsed()||dR(Vn),!(rs(Wn)&&b4(Vn,Mn.fakeEventName).isDefaultPrevented())&&(Mn.insert(Vn,Wn),rs(Wn)&&nT(Vn,Mn.fakeEventName))},R6=(Mn,Vn)=>{const Wn=()=>m$(VZ,Mn,Vn),jn=()=>m$(E6,Mn,Vn),Gn=h$(Mn,Vn);switch(Z2(Mn)){case"linebreak":Gn.fold(Wn,Wn,Js);break;case"block":Gn.fold(jn,jn,Js);break;case"invert":Gn.fold(jn,Wn,Js);break;default:Gn.fold(Wn,jn,Js);break}},D6=xl(),jZ=D6.os.isiOS()&&D6.browser.isSafari(),M6=(Mn,Vn)=>{Vn.isDefaultPrevented()||(Vn.preventDefault(),oV(Mn.undoManager),Mn.undoManager.transact(()=>{R6(Mn,Vn)}))},N6=Mn=>{if(!Mn.collapsed)return!1;const Vn=Mn.startContainer;if(Ir(Vn)){const Wn=/^[\uAC00-\uD7AF\u1100-\u11FF\u3130-\u318F\uA960-\uA97F\uD7B0-\uD7FF]$/,jn=Vn.data.charAt(Mn.startOffset-1);return Wn.test(jn)}else return!1},XZ=Mn=>{let Vn=zo.none();const Wn=Gn=>{Vn=zo.some(Gn.selection.getBookmark()),Gn.undoManager.add()},jn=(Gn,no)=>{Gn.undoManager.undo(),Vn.fold(Js,ao=>Gn.selection.moveToBookmark(ao)),M6(Gn,no),Vn=zo.none()};Mn.on("keydown",Gn=>{Gn.keyCode===va.ENTER&&(jZ&&N6(Mn.selection.getRng())?Wn(Mn):M6(Mn,Gn))}),Mn.on("keyup",Gn=>{Gn.keyCode===va.ENTER&&Vn.each(()=>jn(Mn,Gn))})},L6=(Mn,Vn,Wn)=>{const jn=aa.os.isMacOS()||aa.os.isiOS();n2([{keyCode:va.END,action:cl(gF,Mn,!0)},{keyCode:va.HOME,action:cl(gF,Mn,!1)},...jn?[]:[{keyCode:va.HOME,action:cl(ZP,Mn,!1),ctrlKey:!0,shiftKey:!0},{keyCode:va.END,action:cl(ZP,Mn,!0),ctrlKey:!0,shiftKey:!0}],{keyCode:va.END,action:cl(jP,Mn,!0)},{keyCode:va.HOME,action:cl(jP,Mn,!1)},{keyCode:va.END,action:cl(HP,Mn,!0,Vn)},{keyCode:va.HOME,action:cl(HP,Mn,!1,Vn)}],Wn).each(Gn=>{Wn.preventDefault()})},I6=(Mn,Vn)=>{Mn.on("keydown",Wn=>{Wn.isDefaultPrevented()||L6(Mn,Vn,Wn)})},YZ=Mn=>{Mn.on("input",Vn=>{Vn.isComposing||b9(Mn)})},GZ=xl(),P4=(Mn,Vn,Wn)=>{n2([{keyCode:va.PAGE_UP,action:cl(HP,Mn,!1,Vn)},{keyCode:va.PAGE_DOWN,action:cl(HP,Mn,!0,Vn)}],Wn)},B6=Mn=>Mn.stopImmediatePropagation(),F6=Mn=>Mn.keyCode===va.PAGE_UP||Mn.keyCode===va.PAGE_DOWN,rT=(Mn,Vn,Wn)=>{Wn&&!Mn.get()?Vn.on("NodeChange",B6,!0):!Wn&&Mn.get()&&Vn.off("NodeChange",B6),Mn.set(Wn)},KZ=(Mn,Vn)=>{if(GZ.os.isMacOS())return;const Wn=od(!1);Mn.on("keydown",jn=>{F6(jn)&&rT(Wn,Mn,!0)}),Mn.on("keyup",jn=>{jn.isDefaultPrevented()||P4(Mn,Vn,jn),F6(jn)&&Wn.get()&&(rT(Wn,Mn,!1),Mn.nodeChanged())})},$4=Mn=>{Mn.on("beforeinput",Vn=>{(!Mn.selection.isEditable()||Sr(Vn.getTargetRanges(),Wn=>!ZN(Mn.dom,Wn)))&&Vn.preventDefault()})},p$=(Mn,Vn)=>{const Wn=Vn.container(),jn=Vn.offset();return Ir(Wn)?(Wn.insertData(jn,Mn),zo.some(lr(Wn,jn+Mn.length))):Mh(Vn).map(Gn=>{const no=Cs.fromText(Mn);return Vn.isAtEnd()?fh(Gn,no):ed(Gn,no),lr(no.dom,Mn.length)})},R4=ws(p$,hc),H6=ws(p$," "),CG=(Mn,Vn,Wn)=>wL(Mn,Vn,Wn)?R4(Vn):H6(Vn),tS=Mn=>Vn=>Vn.fold(Wn=>cp(Mn.dom,lr.before(Wn)),Wn=>zm(Wn),Wn=>b1(Wn),Wn=>Sm(Mn.dom,lr.after(Wn))),JZ=(Mn,Vn,Wn)=>jn=>wL(Mn,jn,Wn)?R4(Vn):H6(Vn),Q6=Mn=>Vn=>{Mn.selection.setRng(Vn.toRange()),Mn.nodeChanged()},eq=(Mn,Vn)=>Mn.isEditable(Mn.getParent(Vn,"summary")),g$=Mn=>{const Vn=lr.fromRangeStart(Mn.selection.getRng()),Wn=Cs.fromDom(Mn.getBody());if(Mn.selection.isCollapsed()){const jn=ws(Rw,Mn),Gn=lr.fromRangeStart(Mn.selection.getRng());return Kh(jn,Mn.getBody(),Gn).bind(tS(Wn)).map(no=>()=>JZ(Wn,Vn,Mn.schema)(no).each(Q6(Mn)))}else return zo.none()},V6=Mn=>{const Vn=()=>{const Wn=Cs.fromDom(Mn.getBody());Mn.selection.isCollapsed()||Mn.getDoc().execCommand("Delete");const jn=lr.fromRangeStart(Mn.selection.getRng());CG(Wn,jn,Mn.schema).each(Q6(Mn))};return El(aa.browser.isFirefox()&&Mn.selection.isEditable()&&eq(Mn.dom,Mn.selection.getRng().startContainer),Vn)},z6=(Mn,Vn)=>{UM([{keyCode:va.SPACEBAR,action:cl(g$,Mn)},{keyCode:va.SPACEBAR,action:cl(V6,Mn)}],Vn).each(Wn=>{Vn.preventDefault(),b4(Mn,"insertText",{data:" "}).isDefaultPrevented()||(Wn(),nT(Mn,"insertText",{data:" "}))})},tq=Mn=>{Mn.on("keydown",Vn=>{Vn.isDefaultPrevented()||z6(Mn,Vn)})},W6=Mn=>ew(Mn)?[{keyCode:va.TAB,action:cl(IF,Mn,!0)},{keyCode:va.TAB,shiftKey:!0,action:cl(IF,Mn,!1)}]:[],nq=(Mn,Vn)=>{n2([...W6(Mn)],Vn).each(Wn=>{Vn.preventDefault()})},oq=Mn=>{Mn.on("keydown",Vn=>{Vn.isDefaultPrevented()||nq(Mn,Vn)})},sq=Mn=>{if(Mn.addShortcut("Meta+P","","mcePrint"),uZ(Mn),wO(Mn))return od(null);{const Vn=yW(Mn);return $4(Mn),UW(Mn),_U(Mn,Vn),SZ(Mn,Vn),XZ(Mn),tq(Mn),YZ(Mn),oq(Mn),I6(Mn,Vn),KZ(Mn,Vn),Vn}};class U6{constructor(Vn){this.lastPath=[],this.editor=Vn;let Wn;const jn=this;"onselectionchange"in Vn.getDoc()||Vn.on("NodeChange click mouseup keyup focus",Gn=>{const no=Vn.selection.getRng(),ao={startContainer:no.startContainer,startOffset:no.startOffset,endContainer:no.endContainer,endOffset:no.endOffset};(Gn.type==="nodechange"||!ev(ao,Wn))&&Vn.dispatch("SelectionChange"),Wn=ao}),Vn.on("contextmenu",()=>{Vn.dispatch("SelectionChange")}),Vn.on("SelectionChange",()=>{const Gn=Vn.selection.getStart(!0);Gn&&ik(Vn)&&!jn.isSameElementPath(Gn)&&Vn.dom.isChildOf(Gn,Vn.getBody())&&Vn.nodeChanged({selectionChange:!0})}),Vn.on("mouseup",Gn=>{!Gn.isDefaultPrevented()&&ik(Vn)&&(Vn.selection.getNode().nodeName==="IMG"?O1.setEditorTimeout(Vn,()=>{Vn.nodeChanged()}):Vn.nodeChanged())})}nodeChanged(Vn={}){const Wn=this.editor.selection;let jn;if(this.editor.initialized&&Wn&&!u_(this.editor)&&!this.editor.mode.isReadOnly()){const Gn=this.editor.getBody();jn=Wn.getStart(!0)||Gn,(jn.ownerDocument!==this.editor.getDoc()||!this.editor.dom.isChildOf(jn,Gn))&&(jn=Gn);const no=[];this.editor.dom.getParent(jn,ao=>ao===Gn?!0:(no.push(ao),!1)),this.editor.dispatch("NodeChange",{...Vn,element:jn,parents:no})}}isSameElementPath(Vn){let Wn;const jn=this.editor,Gn=nc(jn.dom.getParents(Vn,Qs,jn.getBody()));if(Gn.length===this.lastPath.length){for(Wn=Gn.length;Wn>=0&&Gn[Wn]===this.lastPath[Wn];Wn--);if(Wn===-1)return this.lastPath=Gn,!0}return this.lastPath=Gn,!1}}const b$=L0("image"),rq=Mn=>{const Vn=Mn;return zo.from(Vn[b$])},D4=(Mn,Vn)=>{const Wn=Mn;Wn[b$]=Vn},v$=L0("event"),y$=Mn=>{const Vn=Mn;return zo.from(Vn[v$])},iT=Mn=>Vn=>{const Wn=Vn;Wn[v$]=Mn},Z6=(Mn,Vn)=>iT(Vn)(Mn),q6=iT(0),iq=iT(2),O$=iT(1),lq=(Mn=>Vn=>{const Wn=Vn;return zo.from(Wn[v$]).exists(jn=>jn===Mn)})(0),cq=()=>Object.freeze({length:0,item:Mn=>null}),_$=L0("mode"),uq=Mn=>{const Vn=Mn;return zo.from(Vn[_$])},S$=Mn=>Vn=>{const Wn=Vn;Wn[_$]=Mn},j6=(Mn,Vn)=>S$(Vn)(Mn),X6=S$(0),M4=S$(2),Y6=S$(1),G6=Mn=>Vn=>{const Wn=Vn;return zo.from(Wn[_$]).exists(jn=>jn===Mn)},jw=G6(0),K6=G6(1),dq=(Mn,Vn)=>({...Vn,get length(){return Vn.length},add:(Wn,jn)=>{if(jw(Mn))if(xo(Wn)){if(!ls(jn))return Vn.add(Wn,jn)}else return Vn.add(Wn);return null},remove:Wn=>{jw(Mn)&&Vn.remove(Wn)},clear:()=>{jw(Mn)&&Vn.clear()}}),fq=["none","copy","link","move"],hq=["none","copy","copyLink","copyMove","link","linkMove","move","all","uninitialized"],N4=()=>{const Mn=new window.DataTransfer;let Vn="move",Wn="all";const jn={get dropEffect(){return Vn},set dropEffect(Gn){Zs(fq,Gn)&&(Vn=Gn)},get effectAllowed(){return Wn},set effectAllowed(Gn){lq(jn)&&Zs(hq,Gn)&&(Wn=Gn)},get items(){return dq(jn,Mn.items)},get files(){return K6(jn)?cq():Mn.files},get types(){return Mn.types},setDragImage:(Gn,no,ao)=>{jw(jn)&&(D4(jn,{image:Gn,x:no,y:ao}),Mn.setDragImage(Gn,no,ao))},getData:Gn=>K6(jn)?"":Mn.getData(Gn),setData:(Gn,no)=>{jw(jn)&&Mn.setData(Gn,no)},clearData:Gn=>{jw(jn)&&Mn.clearData(Gn)}};return X6(jn),jn},u2=Mn=>{const Vn=N4(),Wn=uq(Mn);return M4(Mn),q6(Vn),Vn.dropEffect=Mn.dropEffect,Vn.effectAllowed=Mn.effectAllowed,rq(Mn).each(jn=>Vn.setDragImage(jn.image,jn.x,jn.y)),fs(Mn.types,jn=>{jn!=="Files"&&Vn.setData(jn,Mn.getData(jn))}),fs(Mn.files,jn=>Vn.items.add(jn)),y$(Mn).each(jn=>{Z6(Vn,jn)}),Wn.each(jn=>{j6(Mn,jn),j6(Vn,jn)}),Vn},mq=Mn=>{const Vn=Mn.getData("text/html");return Vn===""?zo.none():zo.some(Vn)},J6=(Mn,Vn)=>Mn.setData("text/html",Vn),L4="x-tinymce/html",w$=xs(L4),I4="",pq=Mn=>I4+Mn,e7=Mn=>Mn.replace(I4,""),t7=Mn=>Mn.indexOf(I4)!==-1,gq=Mn=>!/<(?:\/?(?!(?:div|p|br|span)>)\w+|(?:(?!(?:span style="white-space:\s?pre;?">)|br\s?\/>))\w+\s[^>]+)>/i.test(Mn),kG=(Mn,Vn)=>{let Wn="<"+Mn;const jn=ia(Vn,(Gn,no)=>no+'="'+P0.encodeAllRaw(Gn)+'"');return jn.length&&(Wn+=" "+jn.join(" ")),Wn+">"},C$=(Mn,Vn,Wn)=>{const jn=Mn.split(/\n\n/),Gn=kG(Vn,Wn),no="",ao=Us(jn,vo=>vo.split(/\n/).join("
    ")),po=vo=>Gn+vo+no;return ao.length===1?ao[0]:Us(ao,po).join("")},n7="%MCEPASTEBIN%",bq=(Mn,Vn)=>{const{dom:Wn,selection:jn}=Mn,Gn=Mn.getBody();Vn.set(jn.getRng());const no=Wn.add(Mn.getBody(),"div",{id:"mcepastebin",class:"mce-pastebin",contentEditable:!0,"data-mce-bogus":"all",style:"position: fixed; top: 50%; width: 10px; height: 10px; overflow: hidden; opacity: 0"},n7);aa.browser.isFirefox()&&Wn.setStyle(no,"left",Wn.getStyle(Gn,"direction",!0)==="rtl"?65535:-65535),Wn.bind(no,"beforedeactivate focusin focusout",ao=>{ao.stopPropagation()}),no.focus(),jn.select(no,!0)},vq=(Mn,Vn)=>{const Wn=Mn.dom;if(B4(Mn)){let jn;const Gn=Vn.get();for(;jn=B4(Mn);)Wn.remove(jn),Wn.unbind(jn);Gn&&Mn.selection.setRng(Gn)}Vn.set(null)},B4=Mn=>Mn.dom.get("mcepastebin"),yq=Mn=>rs(Mn)&&Mn.id==="mcepastebin",Oq=Mn=>{const Vn=Mn.dom,Wn=(ao,po)=>{ao.appendChild(po),Vn.remove(po,!0)},[jn,...Gn]=nr(Mn.getBody().childNodes,yq);fs(Gn,ao=>{Wn(jn,ao)});const no=Vn.select("div[id=mcepastebin]",jn);for(let ao=no.length-1;ao>=0;ao--){const po=Vn.create("div");jn.insertBefore(po,no[ao]),Wn(po,no[ao])}return jn?jn.innerHTML:""},o7=Mn=>Mn===n7,_q=Mn=>{const Vn=od(null);return{create:()=>bq(Mn,Vn),remove:()=>vq(Mn,Vn),getEl:()=>B4(Mn),getHtml:()=>Oq(Mn),getLastRng:Vn.get}},s7=(Mn,Vn)=>(Lr.each(Vn,Wn=>{Do(Wn,RegExp)?Mn=Mn.replace(Wn,""):Mn=Mn.replace(Wn[0],Wn[1])}),Mn),Sq=Mn=>{const Vn=i1(),Wn=a0({},Vn);let jn="";const Gn=Vn.getVoidElements(),no=Lr.makeMap("script noscript style textarea video audio iframe object"," "),ao=Vn.getBlockElements(),po=vo=>{const Ao=vo.name,Fo=vo;if(Ao==="br"){jn+=` +`;return}if(Ao!=="wbr"){if(Gn[Ao]&&(jn+=" "),no[Ao]){jn+=" ";return}if(vo.type===3&&(jn+=vo.value),!(vo.name in Vn.getVoidElements())){let Qo=vo.firstChild;if(Qo)do po(Qo);while(Qo=Qo.next)}ao[Ao]&&Fo.next&&(jn+=` +`,Ao==="p"&&(jn+=` +`))}};return Mn=s7(Mn,[//g]),po(Wn.parse(Mn)),jn},r7=Mn=>(Mn=s7(Mn,[/^[\s\S]*]*>\s*|\s*<\/body[^>]*>[\s\S]*$/ig,/|/g,[/( ?)\u00a0<\/span>( ?)/g,(Wn,jn,Gn)=>!jn&&!Gn?" ":hc],/
    /g,/
    $/i]),Mn),wq=Mn=>{let Vn=0;return()=>Mn+Vn++},Cq=Mn=>{const Vn=Mn.toLowerCase(),Wn={jpg:"jpeg",jpe:"jpeg",jfi:"jpeg",jif:"jpeg",jfif:"jpeg",pjpeg:"jpeg",pjp:"jpeg",svg:"svg+xml"};return Lr.hasOwn(Wn,Vn)?"image/"+Wn[Vn]:"image/"+Vn},Hu=(Mn,Vn)=>{const Wn=a0({sanitize:jb(Mn),sandbox_iframes:b_(Mn)},Mn.schema);Wn.addNodeFilter("meta",Gn=>{Lr.each(Gn,no=>{no.remove()})});const jn=Wn.parse(Vn,{forced_root_block:!1,isRootContent:!0});return I_({validate:!0},Mn.schema).serialize(jn)},i7=(Mn,Vn)=>({content:Mn,cancelled:Vn}),a7=(Mn,Vn,Wn)=>{const jn=Mn.dom.create("div",{style:"display:none"},Vn),Gn=R3(Mn,jn,Wn);return i7(Gn.node.innerHTML,Gn.isDefaultPrevented())},kq=(Mn,Vn,Wn)=>{const jn=$3(Mn,Vn,Wn),Gn=Hu(Mn,jn.content);return Mn.hasEventListeners("PastePostProcess")&&!jn.isDefaultPrevented()?a7(Mn,Gn,Wn):i7(Gn,jn.isDefaultPrevented())},F4=(Mn,Vn,Wn)=>kq(Mn,Vn,Wn),k$=(Mn,Vn)=>(Mn.insertContent(Vn,{merge:YS(Mn),paste:!0}),!0),H4=Mn=>/^https?:\/\/[\w\-\/+=.,!;:&%@^~(){}?#]+$/i.test(Mn),xq=(Mn,Vn)=>H4(Vn)&&Sr(UC(Mn),Wn=>bd(Vn.toLowerCase(),`.${Wn.toLowerCase()}`)),l7=(Mn,Vn,Wn)=>(Mn.undoManager.extra(()=>{Wn(Mn,Vn)},()=>{Mn.insertContent('')}),!0),Q4=(Mn,Vn,Wn)=>(Mn.undoManager.extra(()=>{Wn(Mn,Vn)},()=>{Mn.execCommand("mceInsertLink",!1,Vn)}),!0),Eq=(Mn,Vn,Wn)=>!Mn.selection.isCollapsed()&&H4(Vn)?Q4(Mn,Vn,Wn):!1,Tq=(Mn,Vn,Wn)=>xq(Mn,Vn)?l7(Mn,Vn,Wn):!1,Aq=(Mn,Vn)=>{Lr.each([Eq,Tq,k$],Wn=>!Wn(Mn,Vn,k$))},c7=(Mn,Vn,Wn)=>{Wn||!h_(Mn)?k$(Mn,Vn):Aq(Mn,Vn)},Pq=wq("mceclip"),$q=Mn=>{const Vn=N4();return J6(Vn,Mn),M4(Vn),Vn},Xw=(Mn,Vn,Wn,jn,Gn)=>{const no=F4(Mn,Vn,Wn);if(!no.cancelled){const ao=no.content,po=()=>c7(Mn,ao,jn);Gn?b4(Mn,"insertFromPaste",{dataTransfer:$q(ao)}).isDefaultPrevented()||(po(),nT(Mn,"insertFromPaste")):po()}},x$=(Mn,Vn,Wn,jn)=>{const Gn=Wn||t7(Vn);Xw(Mn,e7(Vn),Gn,!1,jn)},nS=(Mn,Vn,Wn)=>{const jn=Mn.dom.encode(Vn).replace(/\r\n/g,` +`),Gn=V1(jn,zC(Mn)),no=C$(Gn,bh(Mn),Zb(Mn));Xw(Mn,no,!1,!0,Wn)},d2=Mn=>{const Vn={};if(Mn&&Mn.types)for(let Wn=0;WnVn in Mn&&Mn[Vn].length>0,u7=Mn=>oS(Mn,"text/html")||oS(Mn,"text/plain"),f2=(Mn,Vn)=>{const Wn=Vn.match(/([\s\S]+?)(?:\.[a-z0-9.]+)$/i);return rs(Wn)?Mn.dom.encode(Wn[1]):void 0},Rq=(Mn,Vn,Wn,jn)=>{const Gn=Pq(),no=nO(Mn)&&rs(Wn.name),ao=no?f2(Mn,Wn.name):Gn,po=no?Wn.name:void 0,vo=Vn.create(Gn,Wn,jn,ao,po);return Vn.add(vo),vo},V4=(Mn,Vn)=>{JA(Vn.uri).each(({data:Wn,type:jn,base64Encoded:Gn})=>{const no=Gn?Wn:btoa(Wn),ao=Vn.file,po=Mn.editorUpload.blobCache,vo=po.getByData(no,jn),Ao=vo??Rq(Mn,po,ao,no);x$(Mn,``,!1,!0)})},Dq=Mn=>Mn.type==="paste",d7=Mn=>Promise.all(Us(Mn,Vn=>_Q(Vn).then(Wn=>({file:Vn,uri:Wn})))),f7=Mn=>{const Vn=UC(Mn);return Wn=>Dc(Wn.type,"image/")&&Sr(Vn,jn=>Cq(jn)===Wn.type)},z4=(Mn,Vn)=>{const Wn=Vn.items?cc(kc(Vn.items),Gn=>Gn.kind==="file"?[Gn.getAsFile()]:[]):[],jn=Vn.files?kc(Vn.files):[];return nr(Wn.length>0?Wn:jn,f7(Mn))},W4=(Mn,Vn,Wn)=>{const jn=Dq(Vn)?Vn.clipboardData:Vn.dataTransfer;if(f_(Mn)&&jn){const Gn=z4(Mn,jn);if(Gn.length>0)return Vn.preventDefault(),d7(Gn).then(no=>{Wn&&Mn.selection.setRng(Wn),fs(no,ao=>{V4(Mn,ao)})}),!0}return!1},Mq=Mn=>{var Vn,Wn;return aa.os.isAndroid()&&((Wn=(Vn=Mn.clipboardData)===null||Vn===void 0?void 0:Vn.items)===null||Wn===void 0?void 0:Wn.length)===0},Nq=Mn=>va.metaKeyPressed(Mn)&&Mn.keyCode===86||Mn.shiftKey&&Mn.keyCode===45,E$=(Mn,Vn,Wn,jn,Gn)=>{let no=r7(Wn);const ao=oS(Vn,w$())||t7(Wn),po=!ao&&gq(no),vo=H4(no);(o7(no)||!no.length||po&&!vo)&&(jn=!0),(jn||vo)&&(oS(Vn,"text/plain")&&po?no=Vn["text/plain"]:no=Sq(no)),!o7(no)&&(jn?nS(Mn,no,Gn):x$(Mn,no,ao,Gn))},Lq=(Mn,Vn,Wn)=>{let jn;const Gn=()=>Vn.getLastRng()||Mn.selection.getRng();Mn.on("keydown",no=>{Nq(no)&&!no.isDefaultPrevented()&&(jn=no.shiftKey&&no.keyCode===86)}),Mn.on("paste",no=>{if(no.isDefaultPrevented()||Mq(no))return;const ao=Wn.get()==="text"||jn;jn=!1;const po=d2(no.clipboardData);!u7(po)&&W4(Mn,no,Gn())||(oS(po,"text/html")?(no.preventDefault(),E$(Mn,po,po["text/html"],ao,!0)):oS(po,"text/plain")&&oS(po,"text/uri-list")?(no.preventDefault(),E$(Mn,po,po["text/plain"],ao,!0)):(Vn.create(),O1.setEditorTimeout(Mn,()=>{const vo=Vn.getHtml();Vn.remove(),E$(Mn,po,vo,ao,!1)},0)))})},h7=Mn=>{const Vn=Gn=>Dc(Gn,"webkit-fake-url"),Wn=Gn=>Dc(Gn,"data:"),jn=Gn=>{var no;return((no=Gn.data)===null||no===void 0?void 0:no.paste)===!0};Mn.parser.addNodeFilter("img",(Gn,no,ao)=>{if(!f_(Mn)&&jn(ao))for(const po of Gn){const vo=po.attr("src");xo(vo)&&!po.attr("data-mce-object")&&vo!==aa.transparentSrc&&(Vn(vo)||!p_(Mn)&&Wn(vo))&&po.remove()}})},U4=(Mn,Vn,Wn)=>{Lq(Mn,Vn,Wn),h7(Mn)},m7=(Mn,Vn)=>{Vn.get()==="text"?(Vn.set("html"),tA(Mn,!1)):(Vn.set("text"),tA(Mn,!0)),Mn.focus()},Iq=(Mn,Vn)=>{Mn.addCommand("mceTogglePlainTextPaste",()=>{m7(Mn,Vn)}),Mn.addCommand("mceInsertClipboardContent",(Wn,jn)=>{jn.html&&x$(Mn,jn.html,jn.internal,!1),jn.text&&nS(Mn,jn.text,!1)})},Bq=(Mn,Vn,Wn)=>{if(Mn)try{return Mn.clearData(),Mn.setData("text/html",Vn),Mn.setData("text/plain",Wn),Mn.setData(w$(),Vn),!0}catch{return!1}else return!1},p7=(Mn,Vn,Wn,jn)=>{Bq(Mn.clipboardData,Vn.html,Vn.text)?(Mn.preventDefault(),jn()):Wn(Vn.html,jn)},Z4=Mn=>(Vn,Wn)=>{const{dom:jn,selection:Gn}=Mn,no=jn.create("div",{contenteditable:"false","data-mce-bogus":"all"}),ao=jn.create("div",{contenteditable:"true"},Vn);jn.setStyles(no,{position:"fixed",top:"0",left:"-3000px",width:"1000px",overflow:"hidden"}),no.appendChild(ao),jn.add(Mn.getBody(),no);const po=Gn.getRng();ao.focus();const vo=jn.createRng();vo.selectNodeContents(ao),Gn.setRng(vo),O1.setEditorTimeout(Mn,()=>{Gn.setRng(po),jn.remove(no),Wn()},0)},T$=Mn=>({html:pq(Mn.selection.getContent({contextual:!0})),text:Mn.selection.getContent({format:"text"})}),Fq=Mn=>!!Mn.dom.getParent(Mn.selection.getStart(),"td[data-mce-selected],th[data-mce-selected]",Mn.getBody()),q4=Mn=>!Mn.selection.isCollapsed()||Fq(Mn),g7=Mn=>Vn=>{!Vn.isDefaultPrevented()&&q4(Mn)&&Mn.selection.isEditable()&&p7(Vn,T$(Mn),Z4(Mn),()=>{if(aa.browser.isChromium()||aa.browser.isFirefox()){const Wn=Mn.selection.getRng();O1.setEditorTimeout(Mn,()=>{Mn.selection.setRng(Wn),Mn.execCommand("Delete")},0)}else Mn.execCommand("Delete")})},Hq=Mn=>Vn=>{!Vn.isDefaultPrevented()&&q4(Mn)&&p7(Vn,T$(Mn),Z4(Mn),Js)},b7=Mn=>{Mn.on("cut",g7(Mn)),Mn.on("copy",Hq(Mn))},v7=(Mn,Vn)=>{var Wn,jn;return ns.getCaretRangeFromPoint((Wn=Vn.clientX)!==null&&Wn!==void 0?Wn:0,(jn=Vn.clientY)!==null&&jn!==void 0?jn:0,Mn.getDoc())},Qq=Mn=>{const Vn=Mn["text/plain"];return Vn?Vn.indexOf("file://")===0:!1},y7=(Mn,Vn)=>{Mn.focus(),Vn&&Mn.selection.setRng(Vn)},Vq=Mn=>Sr(Mn.files,Vn=>/^image\//.test(Vn.type)),zq=(Mn,Vn,Wn,jn)=>{const Gn=Mn.getParent(Wn,ao=>Wl(Vn,ao));if(!Mo(Mn.getParent(Wn,"summary")))return!0;if(Gn&&Mr(jn,"text/html")){const ao=new DOMParser().parseFromString(jn["text/html"],"text/html").body;return!Mo(ao.querySelector(Gn.nodeName.toLowerCase()))}else return!1},A$=Mn=>{Mn.on("input",Vn=>{const Wn=jn=>Mo(jn.querySelector("summary"));if(Vn.inputType==="deleteByDrag"){const jn=nr(Mn.dom.select("details"),Wn);fs(jn,Gn=>{Ec(Gn.firstChild)&&Gn.firstChild.remove();const no=Mn.dom.create("summary");no.appendChild(Th().dom),Gn.prepend(no)})}})},Wq=(Mn,Vn)=>{lx(Mn)&&Mn.on("dragend dragover draggesture dragdrop drop drag",Wn=>{Wn.preventDefault(),Wn.stopPropagation()}),f_(Mn)||Mn.on("drop",Wn=>{const jn=Wn.dataTransfer;jn&&Vq(jn)&&Wn.preventDefault()}),Mn.on("drop",Wn=>{if(Wn.isDefaultPrevented())return;const jn=v7(Mn,Wn);if(ps(jn))return;const Gn=d2(Wn.dataTransfer),no=oS(Gn,w$());if((!u7(Gn)||Qq(Gn))&&W4(Mn,Wn,jn))return;const ao=Gn[w$()],po=ao||Gn["text/html"]||Gn["text/plain"],vo=zq(Mn.dom,Mn.schema,jn.startContainer,Gn),Ao=Vn.get();Ao&&!vo||po&&(Wn.preventDefault(),O1.setEditorTimeout(Mn,()=>{Mn.undoManager.transact(()=>{(ao||Ao&&vo)&&Mn.execCommand("Delete"),y7(Mn,jn);const Fo=r7(po);Gn["text/html"]?x$(Mn,Fo,no,!0):nS(Mn,Fo,!0)})}))}),Mn.on("dragstart",Wn=>{Vn.set(!0)}),Mn.on("dragover dragend",Wn=>{f_(Mn)&&!Vn.get()&&(Wn.preventDefault(),y7(Mn,v7(Mn,Wn))),Wn.type==="dragend"&&Vn.set(!1)}),A$(Mn)},O7=Mn=>{const Vn=Gn=>no=>{Gn(Mn,no)},Wn=cx(Mn);Yo(Wn)&&Mn.on("PastePreProcess",Vn(Wn));const jn=VC(Mn);Yo(jn)&&Mn.on("PastePostProcess",Vn(jn))},Uq=(Mn,Vn)=>{Mn.on("PastePreProcess",Wn=>{Wn.content=Vn(Mn,Wn.content,Wn.internal)})},Zq=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,j4=Mn=>Lr.trim(Mn).replace(Zq,Bm).toLowerCase(),_7=(Mn,Vn,Wn)=>{const jn=jS(Mn);if(Wn||jn==="all"||!XS(Mn))return Vn;const Gn=jn?jn.split(/[, ]/):[];if(Gn&&jn!=="none"){const no=Mn.dom,ao=Mn.selection.getNode();Vn=Vn.replace(/(<[^>]+) style="([^"]*)"([^>]*>)/gi,(po,vo,Ao,Fo)=>{const Qo=no.parseStyle(no.decode(Ao)),qo={};for(let bs=0;bs]+) style="([^"]*)"([^>]*>)/gi,"$1$3");return Vn=Vn.replace(/(<[^>]+) data-mce-style="([^"]+)"([^>]*>)/gi,(no,ao,po,vo)=>ao+' style="'+po+'"'+vo),Vn},qq=Mn=>{(aa.browser.isChromium()||aa.browser.isSafari())&&Uq(Mn,_7)},jq=Mn=>{const Vn=od(!1),Wn=od(m_(Mn)?"text":"html"),jn=_q(Mn);qq(Mn),Iq(Mn,Wn),O7(Mn),Mn.on("PreInit",()=>{b7(Mn),Wq(Mn,Vn),U4(Mn,jn,Wn)})},Xq=Mn=>{Mn.on("click",Vn=>{Mn.dom.getParent(Vn.target,"details")&&Vn.preventDefault()})},Yq=Mn=>{Mn.parser.addNodeFilter("details",Vn=>{const Wn=Zf(Mn);fs(Vn,jn=>{Wn==="expanded"?jn.attr("open","open"):Wn==="collapsed"&&jn.attr("open",null)})}),Mn.serializer.addNodeFilter("details",Vn=>{const Wn=DT(Mn);fs(Vn,jn=>{Wn==="expanded"?jn.attr("open","open"):Wn==="collapsed"&&jn.attr("open",null)})})},Gq=Mn=>{Xq(Mn),Yq(Mn)},S7=Ec,w7=Ir,Kq=Mn=>jl(Mn.dom),Jq=Mn=>Gf(Mn.dom),C7=Mn=>Vn=>Vs(Cs.fromDom(Mn),Vn),ej=(Mn,Vn,Wn)=>cf(Cs.fromDom(Mn),jn=>Jq(jn)||Wn.isBlock(ql(jn)),C7(Vn)).getOr(Cs.fromDom(Vn)).dom,k7=(Mn,Vn)=>cf(Cs.fromDom(Mn),Kq,C7(Vn)),x7=(Mn,Vn,Wn)=>{const jn=new mu(Mn,Vn),Gn=Wn?jn.next.bind(jn):jn.prev.bind(jn);let no=Mn;for(let ao=Wn?Mn:Gn();ao&&!S7(ao);ao=Gn())Xl(ao)&&(no=ao);return no},tj=(Mn,Vn,Wn)=>{const Gn=lr.fromRangeStart(Mn).getNode(),no=ej(Gn,Vn,Wn),ao=x7(Gn,no,!1),po=x7(Gn,no,!0),vo=document.createRange();return k7(ao,no).fold(()=>{w7(ao)?vo.setStart(ao,0):vo.setStartBefore(ao)},Ao=>vo.setStartBefore(Ao.dom)),k7(po,no).fold(()=>{w7(po)?vo.setEnd(po,po.data.length):vo.setEndAfter(po)},Ao=>vo.setEndAfter(Ao.dom)),vo},E7=Mn=>{const Vn=tj(Mn.selection.getRng(),Mn.getBody(),Mn.schema);Mn.selection.setRng(Pk(Vn))},T7=Mn=>{Mn.on("mousedown",Vn=>{Vn.detail>=3&&(Vn.preventDefault(),E7(Mn))})};var h2;(function(Mn){Mn.Before="before",Mn.After="after"})(h2||(h2={}));const nj=(Mn,Vn)=>Math.abs(Mn.left-Vn),oj=(Mn,Vn)=>Math.abs(Mn.right-Vn),sj=(Mn,Vn)=>Mn>=Vn.top&&Mn<=Vn.bottom,rj=(Mn,Vn)=>Mn.topVn.top,ij=(Mn,Vn)=>{const Wn=B2(Mn,Vn)/Math.min(Mn.height,Vn.height);return rj(Mn,Vn)&&Wn>.5},aj=(Mn,Vn)=>{const Wn=nr(Mn,jn=>sj(Vn,jn));return I2(Wn).fold(()=>[[],Mn],jn=>{const{pass:Gn,fail:no}=Vr(Mn,ao=>ij(ao,jn));return[Gn,no]})},P$=(Mn,Vn)=>({node:Mn.node,position:nj(Mn,Vn)Vn>Mn.left&&Vn{const Gn=Qo=>Xl(Qo.node)?zo.some(Qo):Oa(Qo.node)?X4(kc(Qo.node.childNodes),Vn,Wn,!1):zo.none(),no=(Qo,qo,ds)=>Gn(qo).filter(bs=>Math.abs(ds(Qo,Vn,Wn)-ds(bs,Vn,Wn))<2&&Ir(bs.node)),ao=(Qo,qo)=>{const ds=Vl(Qo,(bs,as)=>qo(bs,Vn,Wn)-qo(as,Vn,Wn));return Yl(ds,Gn).map(bs=>jn&&!Ir(bs.node)&&ds.length>1?no(bs,ds[1],qo).getOr(bs):bs)},[po,vo]=aj(HB(Mn),Wn),{pass:Ao,fail:Fo}=Vr(vo,Qo=>Qo.topao(Fo,ES)).orThunk(()=>ao(Ao,ES))},P7=(Mn,Vn,Wn,jn)=>{const Gn=(no,ao)=>{const po=Ao=>Oa(Ao)&&Ao.classList.contains("mce-drag-container"),vo=nr(no.dom.childNodes,Fs(po));return ao.fold(()=>X4(vo,Wn,jn,!0),Ao=>{const Fo=nr(vo,Qo=>Qo!==Ao.dom);return X4(Fo,Wn,jn,!0)}).orThunk(()=>(Vs(no,Mn)?zo.none():Uc(no)).bind(Fo=>Gn(Fo,zo.some(no))))};return Gn(Vn,zo.none())},$7=(Mn,Vn,Wn)=>{const jn=Cs.fromDom(Mn),Gn=Fa(jn),ao=Cs.fromPoint(Gn,Vn,Wn).filter(po=>Dr(jn,po)).getOr(jn);return P7(jn,ao,Vn,Wn)},$$=(Mn,Vn,Wn)=>$7(Mn,Vn,Wn).filter(jn=>ay(jn.node)).map(jn=>P$(jn,Vn)),R7=Mn=>{var Vn,Wn;const jn=Mn.getBoundingClientRect(),Gn=Mn.ownerDocument,no=Gn.documentElement,ao=Gn.defaultView;return{top:jn.top+((Vn=ao==null?void 0:ao.scrollY)!==null&&Vn!==void 0?Vn:0)-no.clientTop,left:jn.left+((Wn=ao==null?void 0:ao.scrollX)!==null&&Wn!==void 0?Wn:0)-no.clientLeft}},D7=Mn=>Mn.inline?R7(Mn.getBody()):{left:0,top:0},lj=Mn=>{const Vn=Mn.getBody();return Mn.inline?{left:Vn.scrollLeft,top:Vn.scrollTop}:{left:0,top:0}},M7=Mn=>{const Vn=Mn.getBody(),Wn=Mn.getDoc().documentElement,jn={left:Vn.scrollLeft,top:Vn.scrollTop},Gn={left:Vn.scrollLeft||Wn.scrollLeft,top:Vn.scrollTop||Wn.scrollTop};return Mn.inline?jn:Gn},cj=(Mn,Vn)=>{if(Vn.target.ownerDocument!==Mn.getDoc()){const Wn=R7(Mn.getContentAreaContainer()),jn=M7(Mn);return{left:Vn.pageX-Wn.left+jn.left,top:Vn.pageY-Wn.top+jn.top}}return{left:Vn.pageX,top:Vn.pageY}},N7=(Mn,Vn,Wn)=>({pageX:Wn.left-Mn.left+Vn.left,pageY:Wn.top-Mn.top+Vn.top}),uj=(Mn,Vn)=>N7(D7(Mn),lj(Mn),cj(Mn,Vn)),L7=Mn=>({target:Mn,srcElement:Mn}),dj=(Mn,Vn,Wn,jn)=>({...Vn,dataTransfer:jn,type:Mn,...L7(Wn)}),aT=(Mn,Vn,Wn)=>{const jn=Br("Function not supported on simulated event.");return{bubbles:!0,cancelBubble:!1,cancelable:!0,composed:!1,currentTarget:null,defaultPrevented:!1,eventPhase:0,isTrusted:!0,returnValue:!1,timeStamp:0,type:Mn,composedPath:jn,initEvent:jn,preventDefault:Js,stopImmediatePropagation:Js,stopPropagation:Js,AT_TARGET:window.Event.AT_TARGET,BUBBLING_PHASE:window.Event.BUBBLING_PHASE,CAPTURING_PHASE:window.Event.CAPTURING_PHASE,NONE:window.Event.NONE,altKey:!1,button:0,buttons:0,clientX:0,clientY:0,ctrlKey:!1,metaKey:!1,movementX:0,movementY:0,offsetX:0,offsetY:0,pageX:0,pageY:0,relatedTarget:null,screenX:0,screenY:0,shiftKey:!1,x:0,y:0,detail:0,view:null,which:0,initUIEvent:jn,initMouseEvent:jn,getModifierState:jn,dataTransfer:Wn,...L7(Vn)}},fj=(Mn,Vn)=>{const Wn=u2(Mn);return Vn==="dragstart"?(q6(Wn),X6(Wn)):Vn==="drop"?(iq(Wn),M4(Wn)):(O$(Wn),Y6(Wn)),Wn},hj=(Mn,Vn,Wn,jn)=>{const Gn=fj(Wn,Mn);return ls(jn)?aT(Mn,Vn,Gn):dj(Mn,jn,Vn,Gn)},lT=32,mj=100,R$=8,D$=16,I7=jl,pj=F2(I7,Gf),M$=(Mn,Vn,Wn)=>I7(Wn)&&Wn!==Vn&&Mn.isEditable(Wn.parentElement),B7=(Mn,Vn,Wn)=>ps(Vn)||Vn===Wn||Mn.dom.isChildOf(Vn,Wn)?!1:Mn.dom.isEditable(Vn),F7=(Mn,Vn,Wn,jn)=>{const Gn=Mn.dom,no=Vn.cloneNode(!0);Gn.setStyles(no,{width:Wn,height:jn}),Gn.setAttrib(no,"data-mce-selected",null);const ao=Gn.create("div",{class:"mce-drag-container","data-mce-bogus":"all",unselectable:"on",contenteditable:"false"});return Gn.setStyles(ao,{position:"absolute",opacity:.5,overflow:"hidden",border:0,padding:0,margin:0,width:Wn,height:jn}),Gn.setStyles(no,{margin:0,boxSizing:"border-box"}),ao.appendChild(no),ao},gj=(Mn,Vn)=>{Mn.parentNode!==Vn&&Vn.appendChild(Mn)},N$=(Mn,Vn)=>Wn=>()=>{const jn=Mn==="left"?Wn.scrollX:Wn.scrollY;Wn.scroll({[Mn]:jn+Vn,behavior:"smooth"})},H7=N$("left",-lT),bj=N$("left",lT),Q7=N$("top",-lT),L$=N$("top",lT),Y4=(Mn,Vn,Wn,jn,Gn,no,ao,po,vo,Ao,Fo,Qo)=>{let qo=0,ds=0;Mn.style.left=Vn.pageX+"px",Mn.style.top=Vn.pageY+"px",Vn.pageX+Wn>Gn&&(qo=Vn.pageX+Wn-Gn),Vn.pageY+jn>no&&(ds=Vn.pageY+jn-no),Mn.style.width=Wn-qo+"px",Mn.style.height=jn-ds+"px";const bs=vo.clientHeight,as=vo.clientWidth,ys=ao+vo.getBoundingClientRect().top,Ls=po+vo.getBoundingClientRect().left;Fo.on(zs=>{zs.intervalId.clear(),zs.dragging&&Qo&&(ao+R$>=bs?zs.intervalId.set(L$(Ao)):ao-R$<=0?zs.intervalId.set(Q7(Ao)):po+R$>=as?zs.intervalId.set(bj(Ao)):po-R$<=0?zs.intervalId.set(H7(Ao)):ys+D$>=window.innerHeight?zs.intervalId.set(L$(window)):ys-D$<=0?zs.intervalId.set(Q7(window)):Ls+D$>=window.innerWidth?zs.intervalId.set(bj(window)):Ls-D$<=0&&zs.intervalId.set(H7(window)))})},cT=Mn=>{Mn&&Mn.parentNode&&Mn.parentNode.removeChild(Mn)},vj=(Mn,Vn)=>{const Wn=Mn.getParent(Vn.parentNode,Mn.isBlock);cT(Vn),Wn&&Wn!==Mn.getRoot()&&Mn.isEmpty(Wn)&&Kp(Cs.fromDom(Wn))},yj=Mn=>Mn.button===0,V7=(Mn,Vn)=>({pageX:Vn.pageX-Mn.relX,pageY:Vn.pageY+5}),Oj=(Mn,Vn)=>Wn=>{if(yj(Wn)){const jn=xa(Vn.dom.getParents(Wn.target),pj).getOr(null);if(rs(jn)&&M$(Vn.dom,Vn.getBody(),jn)){const Gn=Vn.dom.getPos(jn),no=Vn.getBody(),ao=Vn.getDoc().documentElement;Mn.set({element:jn,dataTransfer:N4(),dragging:!1,screenX:Wn.screenX,screenY:Wn.screenY,maxX:(Vn.inline?no.scrollWidth:ao.offsetWidth)-2,maxY:(Vn.inline?no.scrollHeight:ao.offsetHeight)-2,relX:Wn.pageX-Gn.x,relY:Wn.pageY-Gn.y,width:jn.offsetWidth,height:jn.offsetHeight,ghost:F7(Vn,jn,jn.offsetWidth,jn.offsetHeight),intervalId:N2(mj)})}}},G4=(Mn,Vn,Wn)=>{Mn._selectionOverrides.hideFakeCaret(),$$(Mn.getBody(),Vn,Wn).fold(()=>Mn.selection.placeCaretAt(Vn,Wn),jn=>{const Gn=Mn._selectionOverrides.showCaret(1,jn.node,jn.position===h2.Before,!1);Gn?Mn.selection.setRng(Gn):Mn.selection.placeCaretAt(Vn,Wn)})},m2=(Mn,Vn,Wn,jn,Gn)=>{Vn==="dragstart"&&J6(jn,Mn.dom.getOuterHTML(Wn));const no=hj(Vn,Wn,jn,Gn);return Mn.dispatch(Vn,no)},_j=(Mn,Vn)=>{const Wn=Zy((Gn,no)=>G4(Vn,Gn,no),0);Vn.on("remove",Wn.cancel);const jn=Mn;return Gn=>Mn.on(no=>{const ao=Math.max(Math.abs(Gn.screenX-no.screenX),Math.abs(Gn.screenY-no.screenY));if(!no.dragging&&ao>10){const po=m2(Vn,"dragstart",no.element,no.dataTransfer,Gn);if(rs(po.dataTransfer)&&(no.dataTransfer=po.dataTransfer),po.isDefaultPrevented())return;no.dragging=!0,Vn.focus()}if(no.dragging){const po=Gn.currentTarget===Vn.getDoc().documentElement,vo=V7(no,uj(Vn,Gn));gj(no.ghost,Vn.getBody()),Y4(no.ghost,vo,no.width,no.height,no.maxX,no.maxY,Gn.clientY,Gn.clientX,Vn.getContentAreaContainer(),Vn.getWin(),jn,po),Wn.throttle(Gn.clientX,Gn.clientY)}})},Sj=Mn=>{const Vn=Mn.getSel();if(rs(Vn)){const jn=Vn.getRangeAt(0).startContainer;return Ir(jn)?jn.parentNode:jn}else return null},z7=(Mn,Vn)=>Wn=>{Mn.on(jn=>{var Gn;if(jn.intervalId.clear(),jn.dragging){if(B7(Vn,Sj(Vn.selection),jn.element)){const no=(Gn=Vn.getDoc().elementFromPoint(Wn.clientX,Wn.clientY))!==null&&Gn!==void 0?Gn:Vn.getBody();m2(Vn,"drop",no,jn.dataTransfer,Wn).isDefaultPrevented()||Vn.undoManager.transact(()=>{vj(Vn.dom,jn.element),mq(jn.dataTransfer).each(po=>Vn.insertContent(po)),Vn._selectionOverrides.hideFakeCaret()})}m2(Vn,"dragend",Vn.getBody(),jn.dataTransfer,Wn)}}),U7(Mn)},W7=(Mn,Vn,Wn)=>{Mn.on(jn=>{jn.intervalId.clear(),jn.dragging&&Wn.fold(()=>m2(Vn,"dragend",jn.element,jn.dataTransfer),Gn=>m2(Vn,"dragend",jn.element,jn.dataTransfer,Gn))}),U7(Mn)},xG=(Mn,Vn)=>Wn=>W7(Mn,Vn,zo.some(Wn)),U7=Mn=>{Mn.on(Vn=>{Vn.intervalId.clear(),cT(Vn.ghost)}),Mn.clear()},wj=Mn=>{const Vn=Fb(),Wn=Eu.DOM,jn=document,Gn=Oj(Vn,Mn),no=_j(Vn,Mn),ao=z7(Vn,Mn),po=xG(Vn,Mn);Mn.on("mousedown",Gn),Mn.on("mousemove",no),Mn.on("mouseup",ao),Wn.bind(jn,"mousemove",no),Wn.bind(jn,"mouseup",po),Mn.on("remove",()=>{Wn.unbind(jn,"mousemove",no),Wn.unbind(jn,"mouseup",po)}),Mn.on("keydown",vo=>{vo.keyCode===va.ESC&&W7(Vn,Mn,zo.none())})},Cj=Mn=>{const Vn=Gn=>{if(!Gn.isDefaultPrevented()){const no=Gn.dataTransfer;no&&(Zs(no.types,"Files")||no.files.length>0)&&(Gn.preventDefault(),Gn.type==="drop"&&yP(Mn,"Dropped file type is not supported"))}},Wn=Gn=>{pA(Mn,Gn.target)&&Vn(Gn)},jn=()=>{const Gn=Eu.DOM,no=Mn.dom,ao=document,po=Mn.inline?Mn.getBody():Mn.getDoc(),vo=["drop","dragover"];fs(vo,Ao=>{Gn.bind(ao,Ao,Wn),no.bind(po,Ao,Vn)}),Mn.on("remove",()=>{fs(vo,Ao=>{Gn.unbind(ao,Ao,Wn),no.unbind(po,Ao,Vn)})})};Mn.on("init",()=>{O1.setEditorTimeout(Mn,jn,0)})},Z7=Mn=>{wj(Mn),d_(Mn)&&Cj(Mn)},kj=Mn=>{const Vn=Zy(()=>{if(!Mn.removed&&Mn.getBody().contains(document.activeElement)){const Wn=Mn.selection.getRng();if(Wn.collapsed){const jn=$P(Mn,Wn,!1);Mn.selection.setRng(jn)}}},0);Mn.on("focus",()=>{Vn.throttle()}),Mn.on("blur",()=>{Vn.cancel()})},q7=Mn=>{Mn.on("init",()=>{Mn.on("focusin",Vn=>{const Wn=Vn.target;if(pu(Wn)){const jn=Nw(Mn.getBody(),Wn),Gn=jl(jn)?jn:Wn;Mn.selection.getNode()!==Gn&&jk(Mn,Gn).each(no=>Mn.selection.setRng(no))}})})},uT=jl,j7=(Mn,Vn)=>Nw(Mn.getBody(),Vn),xj=Mn=>{const Vn=Mn.selection,Wn=Mn.dom,jn=Mn.getBody(),Gn=rw(Mn,jn,Wn.isBlock,()=>L_(Mn)),no="sel-"+Wn.uniqueId(),ao="data-mce-selected";let po;const vo=fa=>rs(fa)&&Wn.hasClass(fa,"mce-offscreen-selection"),Ao=fa=>fa!==jn&&(uT(fa)||pu(fa))&&Wn.isChildOf(fa,jn)&&Wn.isEditable(fa.parentNode),Fo=fa=>{fa&&Vn.setRng(fa)},Qo=(fa,yr,fr,Ar=!0)=>Mn.dispatch("ShowCaret",{target:yr,direction:fa,before:fr}).isDefaultPrevented()?null:(Ar&&Vn.scrollIntoView(yr,fa===-1),Gn.show(fr,yr)),qo=fa=>{fa.hasAttribute("data-mce-caret")&&(wp(fa),Vn.scrollIntoView(fa))},ds=()=>{Mn.on("click",yr=>{Wn.isEditable(yr.target)||(yr.preventDefault(),Mn.focus())}),Mn.on("blur NewBlock",tr),Mn.on("ResizeWindow FullscreenStateChanged",Gn.reposition),Mn.on("tap",yr=>{const fr=yr.target,Ar=j7(Mn,fr);uT(Ar)?(yr.preventDefault(),jk(Mn,Ar).each(Hs)):Ao(fr)&&jk(Mn,fr).each(Hs)},!0),Mn.on("mousedown",yr=>{const fr=yr.target;if(fr!==jn&&fr.nodeName!=="HTML"&&!Wn.isChildOf(fr,jn)||!JV(Mn,yr.clientX,yr.clientY))return;tr(),Ur();const Ar=j7(Mn,fr);uT(Ar)?(yr.preventDefault(),jk(Mn,Ar).each(Hs)):$$(jn,yr.clientX,yr.clientY).each(wa=>{yr.preventDefault();const Va=Qo(1,wa.node,wa.position===h2.Before,!1);Fo(Va),pf(Ar)?Ar.focus():Mn.getBody().focus()})}),Mn.on("keypress",yr=>{va.modifierPressed(yr)||uT(Vn.getNode())&&yr.preventDefault()}),Mn.on("GetSelectionRange",yr=>{let fr=yr.range;if(po){if(!po.parentNode){po=null;return}fr=fr.cloneRange(),fr.selectNode(po),yr.range=fr}}),Mn.on("SetSelectionRange",yr=>{yr.range=ys(yr.range);const fr=Hs(yr.range,yr.forward);fr&&(yr.range=fr)});const fa=yr=>Oa(yr)&&yr.id==="mcepastebin";Mn.on("AfterSetSelectionRange",yr=>{const fr=yr.range,Ar=fr.startContainer.parentElement;!as(fr)&&!fa(Ar)&&Ur(),vo(Ar)||tr()}),Z7(Mn),kj(Mn),q7(Mn)},bs=fa=>La(fa)||Jf(fa)||hm(fa),as=fa=>bs(fa.startContainer)||bs(fa.endContainer),ys=fa=>{const yr=Mn.schema.getVoidElements(),fr=Wn.createRng(),Ar=fa.startContainer,wa=fa.startOffset,Va=fa.endContainer,Tl=fa.endOffset;return Mr(yr,Ar.nodeName.toLowerCase())?wa===0?fr.setStartBefore(Ar):fr.setStartAfter(Ar):fr.setStart(Ar,wa),Mr(yr,Va.nodeName.toLowerCase())?Tl===0?fr.setEndBefore(Va):fr.setEndAfter(Va):fr.setEnd(Va,Tl),fr},Ls=(fa,yr)=>{const fr=Cs.fromDom(Mn.getBody()),Ar=Mn.getDoc(),wa=uf(fr,"#"+no).getOrThunk(()=>{const tc=Cs.fromHtml('
    ',Ar);return Gc(tc,"id",no),Fu(fr,tc),tc}),Va=Wn.createRng();Dm(wa),Lc(wa,[Cs.fromText(hc,Ar),Cs.fromDom(yr),Cs.fromText(hc,Ar)]),Va.setStart(wa.dom.firstChild,1),Va.setEnd(wa.dom.lastChild,0),ff(wa,{top:Wn.getPos(fa,Mn.getBody()).y+"px"}),lA(wa);const Tl=Vn.getSel();return Tl&&(Tl.removeAllRanges(),Tl.addRange(Va)),Va},zs=fa=>{const yr=fa.cloneNode(!0),fr=Mn.dispatch("ObjectSelected",{target:fa,targetClone:yr});if(fr.isDefaultPrevented())return null;const Ar=Ls(fa,fr.targetClone),wa=Cs.fromDom(fa);return fs(mf(Cs.fromDom(Mn.getBody()),`*[${ao}]`),Va=>{Vs(wa,Va)||Mu(Va,ao)}),Wn.getAttrib(fa,ao)||fa.setAttribute(ao,"1"),po=fa,Ur(),Ar},Hs=(fa,yr)=>{if(!fa)return null;if(fa.collapsed){if(!as(fa)){const Va=yr?1:-1,Tl=nh(Va,jn,fa),tc=Tl.getNode(!yr);if(rs(tc)){if(ay(tc))return Qo(Va,tc,yr?!Tl.isAtEnd():!1,!1);if(Jr(tc)&&jl(tc.nextSibling)){const Qu=Wn.createRng();return Qu.setStart(tc,0),Qu.setEnd(tc,0),Qu}}const uu=Tl.getNode(yr);if(rs(uu)){if(ay(uu))return Qo(Va,uu,yr?!1:!Tl.isAtEnd(),!1);if(Jr(uu)&&jl(uu.previousSibling)){const Qu=Wn.createRng();return Qu.setStart(uu,1),Qu.setEnd(uu,1),Qu}}}return null}let fr=fa.startContainer,Ar=fa.startOffset;const wa=fa.endOffset;if(Ir(fr)&&Ar===0&&uT(fr.parentNode)&&(fr=fr.parentNode,Ar=Wn.nodeIndex(fr),fr=fr.parentNode),!Oa(fr))return null;if(wa===Ar+1&&fr===fa.endContainer){const Va=fr.childNodes[Ar];if(Ao(Va))return zs(Va)}return null},tr=()=>{po&&po.removeAttribute(ao),uf(Cs.fromDom(Mn.getBody()),"#"+no).each(sc),po=null},Pr=()=>{Gn.destroy(),po=null},Ur=()=>{Gn.hide()};return wO(Mn)||ds(),{showCaret:Qo,showBlockCaretContainer:qo,hideFakeCaret:Ur,destroy:Pr}},Ej=(Mn,Vn)=>{let Wn=Vn;for(let jn=Mn.previousSibling;Ir(jn);jn=jn.previousSibling)Wn+=jn.data.length;return Wn},X7=(Mn,Vn,Wn,jn,Gn)=>{if(Ir(Wn)&&(jn<0||jn>Wn.data.length))return[];const no=Gn&&Ir(Wn)?[Ej(Wn,jn)]:[jn];let ao=Wn;for(;ao!==Vn&&ao.parentNode;)no.push(Mn.nodeIndex(ao,Gn)),ao=ao.parentNode;return ao===Vn?no.reverse():[]},I$=(Mn,Vn,Wn,jn,Gn,no,ao=!1)=>{const po=X7(Mn,Vn,Wn,jn,ao),vo=X7(Mn,Vn,Gn,no,ao);return{start:po,end:vo}},Tj=(Mn,Vn)=>{const Wn=Vn.slice(),jn=Wn.pop();return Ys(jn)?ra(Wn,(no,ao)=>no.bind(po=>zo.from(po.childNodes[ao])),zo.some(Mn)).bind(no=>Ir(no)&&(jn<0||jn>no.data.length)?zo.none():zo.some({node:no,offset:jn})):zo.none()},Y7=(Mn,Vn)=>Tj(Mn,Vn.start).bind(({node:Wn,offset:jn})=>Tj(Mn,Vn.end).map(({node:Gn,offset:no})=>{const ao=document.createRange();return ao.setStart(Wn,jn),ao.setEnd(Gn,no),ao})),G7=(Mn,Vn,Wn,jn=!1)=>I$(Mn,Vn,Wn.startContainer,Wn.startOffset,Wn.endContainer,Wn.endOffset,jn),p2=(Mn,Vn,Wn)=>{if(Vn&&Mn.isEmpty(Vn)&&!Wn(Vn)){const jn=Vn.parentNode;Mn.remove(Vn,Ir(Vn.firstChild)&&Q1(Vn.firstChild.data)),p2(Mn,jn,Wn)}},g2=(Mn,Vn,Wn,jn=!0)=>{const Gn=Vn.startContainer.parentNode,no=Vn.endContainer.parentNode;Vn.deleteContents(),jn&&!Wn(Vn.startContainer)&&(Ir(Vn.startContainer)&&Vn.startContainer.data.length===0&&Mn.remove(Vn.startContainer),Ir(Vn.endContainer)&&Vn.endContainer.data.length===0&&Mn.remove(Vn.endContainer),p2(Mn,Gn,Wn),Gn!==no&&p2(Mn,no,Wn))},K4=(Mn,Vn)=>zo.from(Mn.dom.getParent(Vn.startContainer,Mn.dom.isBlock)),K7=(Mn,Vn,Wn)=>{const jn=Mn.dynamicPatternsLookup({text:Wn,block:Vn});return{...Mn,blockPatterns:Ub(jn).concat(Mn.blockPatterns),inlinePatterns:Jy(jn).concat(Mn.inlinePatterns)}},J7=(Mn,Vn,Wn,jn)=>{const Gn=Mn.createRng();return Gn.setStart(Vn,0),Gn.setEnd(Wn,jn),Gn.toString()},e8=Mn=>/^\s[^\s]/.test(Mn),dT=(Mn,Vn,Wn)=>{BF(Vn,0,Vn).each(Gn=>{const no=Gn.container;GP(no,Wn.start.length,Vn).each(vo=>{const Ao=Mn.createRng();Ao.setStart(no,0),Ao.setEnd(vo.container,vo.offset),g2(Mn,Ao,Fo=>Fo===Vn)});const ao=Cs.fromDom(no),po=fm(ao);e8(po)&&Pf(ao,po.slice(1))})},t8=(Mn,Vn)=>{const Wn=Mn.dom,jn=Vn.pattern,Gn=Y7(Wn.getRoot(),Vn.range).getOrDie("Unable to resolve path range"),no=(ao,po)=>{const vo=po.get(ao);return Ko(vo)&&qa(vo).exists(Ao=>Mr(Ao,"block"))};return K4(Mn,Gn).each(ao=>{jn.type==="block-format"?no(jn.format,Mn.formatter)&&Mn.undoManager.transact(()=>{dT(Mn.dom,ao,jn),Mn.formatter.apply(jn.format)}):jn.type==="block-command"&&Mn.undoManager.transact(()=>{dT(Mn.dom,ao,jn),Mn.execCommand(jn.cmd,!1,jn.value)})}),!0},n8=Mn=>Vl(Mn,(Vn,Wn)=>Wn.start.length-Vn.start.length),Aj=(Mn,Vn)=>{const Wn=n8(Mn),jn=Vn.replace(hc," ");return xa(Wn,Gn=>Vn.indexOf(Gn.start)===0||jn.indexOf(Gn.start)===0)},Pj=(Mn,Vn,Wn,jn)=>{var Gn;const no=Mn.dom,ao=bh(Mn);if(!no.is(Vn,ao))return[];const po=(Gn=Vn.textContent)!==null&&Gn!==void 0?Gn:"";return Aj(Wn.blockPatterns,po).map(vo=>Lr.trim(po).length===vo.start.length?[]:[{pattern:vo,range:I$(no,no.getRoot(),Vn,0,Vn,0,jn)}]).getOr([])},o8=(Mn,Vn)=>{if(Vn.length===0)return;const Wn=Mn.selection.getBookmark();fs(Vn,jn=>t8(Mn,jn)),Mn.selection.moveToBookmark(Wn)},s8=(Mn,Vn)=>Mn.create("span",{"data-mce-type":"bookmark",id:Vn}),B$=(Mn,Vn)=>{const Wn=Mn.createRng();return Wn.setStartAfter(Vn.start),Wn.setEndBefore(Vn.end),Wn},r8=(Mn,Vn,Wn)=>{const jn=Y7(Mn.getRoot(),Wn).getOrDie("Unable to resolve path range"),Gn=jn.startContainer,no=jn.endContainer,ao=jn.endOffset===0?no:no.splitText(jn.endOffset),po=jn.startOffset===0?Gn:Gn.splitText(jn.startOffset),vo=po.parentNode,Ao=ao.parentNode;return{prefix:Vn,end:Ao.insertBefore(s8(Mn,Vn+"-end"),ao),start:vo.insertBefore(s8(Mn,Vn+"-start"),po)}},F$=(Mn,Vn,Wn)=>{p2(Mn,Mn.get(Vn.prefix+"-end"),Wn),p2(Mn,Mn.get(Vn.prefix+"-start"),Wn)},J4=Mn=>Mn.start.length===0,$j=Mn=>(Vn,Wn)=>{const Gn=Vn.data.substring(0,Wn),no=Gn.lastIndexOf(Mn.charAt(Mn.length-1)),ao=Gn.lastIndexOf(Mn);return ao!==-1?ao+Mn.length:no!==-1?no+1:-1},i8=(Mn,Vn,Wn,jn)=>{const Gn=Vn.start;return jE(Mn,jn.container,jn.offset,$j(Gn),Wn).bind(ao=>{var po,vo;const Ao=(vo=(po=Wn.textContent)===null||po===void 0?void 0:po.indexOf(Gn))!==null&&vo!==void 0?vo:-1;if(Ao!==-1&&ao.offset>=Ao+Gn.length){const Qo=Mn.createRng();return Qo.setStart(ao.container,ao.offset-Gn.length),Qo.setEnd(ao.container,ao.offset),zo.some(Qo)}else{const Qo=ao.offset-Gn.length;return qE(ao.container,Qo,Wn).map(qo=>{const ds=Mn.createRng();return ds.setStart(qo.container,qo.offset),ds.setEnd(ao.container,ao.offset),ds}).filter(qo=>qo.toString()===Gn).orThunk(()=>i8(Mn,Vn,Wn,d0(ao.container,0)))}})},Rj=(Mn,Vn,Wn,jn,Gn,no=!1)=>{if(Vn.start.length===0&&!no){const ao=Mn.createRng();return ao.setStart(Wn,jn),ao.setEnd(Wn,jn),zo.some(ao)}return ZE(Wn,jn,Gn).bind(ao=>i8(Mn,Vn,Gn,ao).bind(vo=>{var Ao;if(no){if(vo.endContainer===ao.container&&vo.endOffset===ao.offset)return zo.none();if(ao.offset===0&&((Ao=vo.endContainer.textContent)===null||Ao===void 0?void 0:Ao.length)===vo.endOffset)return zo.none()}return zo.some(vo)}))},Dj=(Mn,Vn,Wn,jn)=>{const Gn=Mn.dom,no=Gn.getRoot(),ao=Wn.pattern,po=Wn.position.container,vo=Wn.position.offset;return qE(po,vo-Wn.pattern.end.length,Vn).bind(Ao=>{const Fo=I$(Gn,no,Ao.container,Ao.offset,po,vo,jn);if(J4(ao))return zo.some({matches:[{pattern:ao,startRng:Fo,endRng:Fo}],position:Ao});{const Qo=H$(Mn,Wn.remainingPatterns,Ao.container,Ao.offset,Vn,jn),qo=Qo.getOr({matches:[],position:Ao}),ds=qo.position;return Rj(Gn,ao,ds.container,ds.offset,Vn,Qo.isNone()).map(as=>{const ys=G7(Gn,no,as,jn);return{matches:qo.matches.concat([{pattern:ao,startRng:ys,endRng:Fo}]),position:d0(as.startContainer,as.startOffset)}})}})},H$=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=Mn.dom;return ZE(Wn,jn,ao.getRoot()).bind(po=>{const vo=J7(ao,Gn,Wn,jn);for(let Ao=0;Ao0)return H$(Mn,Vn,Wn,jn-1,Gn,no);if(qo.isSome())return qo}return zo.none()})},eN=(Mn,Vn,Wn)=>{Mn.selection.setRng(Wn),Vn.type==="inline-format"?fs(Vn.format,jn=>{Mn.formatter.apply(jn)}):Mn.execCommand(Vn.cmd,!1,Vn.value)},a8=(Mn,Vn,Wn,jn)=>{const Gn=B$(Mn.dom,Wn);g2(Mn.dom,Gn,jn),eN(Mn,Vn,Gn)},tN=(Mn,Vn,Wn,jn,Gn)=>{const no=Mn.dom,ao=B$(no,jn),po=B$(no,Wn);g2(no,po,Gn),g2(no,ao,Gn);const vo={prefix:Wn.prefix,start:Wn.end,end:jn.start},Ao=B$(no,vo);eN(Mn,Vn,Ao)},nN=(Mn,Vn)=>{const Wn=L0("mce_textpattern"),jn=Kr(Vn,(Gn,no)=>{const ao=r8(Mn,Wn+`_end${Gn.length}`,no.endRng);return Gn.concat([{...no,endMarker:ao}])},[]);return Kr(jn,(Gn,no)=>{const ao=jn.length-Gn.length-1,po=J4(no.pattern)?no.endMarker:r8(Mn,Wn+`_start${ao}`,no.startRng);return Gn.concat([{...no,startMarker:po}])},[])},Mj=Mn=>Vl(Mn,(Vn,Wn)=>Wn.end.length-Vn.end.length),oN=(Mn,Vn)=>{const Wn=gc(Mn,jn=>Sr(Vn,Gn=>jn.pattern.start===Gn.pattern.start&&jn.pattern.end===Gn.pattern.end));return Mn.length===Vn.length?Wn?Mn:Vn:Mn.length>Vn.length?Mn:Vn},l8=(Mn,Vn,Wn,jn,Gn,no)=>{const ao=H$(Mn,Gn.inlinePatterns,Wn,jn,Vn,no).fold(()=>[],vo=>vo.matches),po=H$(Mn,Mj(Gn.inlinePatterns),Wn,jn,Vn,no).fold(()=>[],vo=>vo.matches);return oN(ao,po)},c8=(Mn,Vn)=>{if(Vn.length===0)return;const Wn=Mn.dom,jn=Mn.selection.getBookmark(),Gn=nN(Wn,Vn);fs(Gn,no=>{const ao=Wn.getParent(no.startMarker.start,Wn.isBlock),po=vo=>vo===ao;J4(no.pattern)?a8(Mn,no.pattern,no.endMarker,po):tN(Mn,no.pattern,no.startMarker,no.endMarker,po),F$(Wn,no.endMarker,po),F$(Wn,no.startMarker,po)}),Mn.selection.moveToBookmark(jn)},u8=(Mn,Vn)=>{const Wn=Mn.selection.getRng();return K4(Mn,Wn).map(jn=>{var Gn;const no=Math.max(0,Wn.startOffset),ao=K7(Vn,jn,(Gn=jn.textContent)!==null&&Gn!==void 0?Gn:""),po=l8(Mn,jn,Wn.startContainer,no,ao,!0),vo=Pj(Mn,jn,ao,!0);return vo.length>0||po.length>0?(Mn.undoManager.add(),Mn.undoManager.extra(()=>{Mn.execCommand("mceInsertNewLine")},()=>{is(Mn),c8(Mn,po),o8(Mn,vo);const Ao=Mn.selection.getRng(),Fo=ZE(Ao.startContainer,Ao.startOffset,Mn.dom.getRoot());Mn.execCommand("mceInsertNewLine"),Fo.each(Qo=>{const qo=Qo.container;qo.data.charAt(Qo.offset-1)===k0&&(qo.deleteData(Qo.offset-1,1),p2(Mn.dom,qo.parentNode,ds=>ds===Mn.dom.getRoot()))})}),!0):!1}).getOr(!1)},Nj=(Mn,Vn)=>{const Wn=Mn.selection.getRng();K4(Mn,Wn).map(jn=>{const Gn=Math.max(0,Wn.startOffset-1),no=J7(Mn.dom,jn,Wn.startContainer,Gn),ao=K7(Vn,jn,no),po=l8(Mn,jn,Wn.startContainer,Gn,ao,!1);po.length>0&&Mn.undoManager.transact(()=>{c8(Mn,po)})})},d8=(Mn,Vn,Wn)=>{for(let jn=0;jnd8(Mn,Vn,(Wn,jn)=>Wn===jn.keyCode&&!va.modifierPressed(jn)),Ij=(Mn,Vn)=>d8(Mn,Vn,(Wn,jn)=>Wn.charCodeAt(0)===jn.charCode),Bj=Mn=>{const Vn=[",",".",";",":","!","?"],Wn=[32],jn=()=>Om(g_(Mn),ux(Mn)),Gn=()=>KS(Mn);Mn.on("keydown",ao=>{if(ao.keyCode===13&&!va.modifierPressed(ao)&&Mn.selection.isCollapsed()){const po=jn();(po.inlinePatterns.length>0||po.blockPatterns.length>0||Gn())&&u8(Mn,po)&&ao.preventDefault()}},!0);const no=()=>{if(Mn.selection.isCollapsed()){const ao=jn();(ao.inlinePatterns.length>0||Gn())&&Nj(Mn,ao)}};Mn.on("keyup",ao=>{Lj(Wn,ao)&&no()}),Mn.on("keypress",ao=>{Ij(Vn,ao)&&O1.setEditorTimeout(Mn,no)})},Fj=Mn=>{Bj(Mn)},Hj=Mn=>{const Vn=Lr.each,Wn=va.BACKSPACE,jn=va.DELETE,Gn=Mn.dom,no=Mn.selection,ao=Mn.parser,po=aa.browser,vo=po.isFirefox(),Ao=po.isChromium()||po.isSafari(),Fo=aa.deviceType.isiPhone()||aa.deviceType.isiPad(),Qo=aa.os.isMacOS()||aa.os.isiOS(),qo=(Pa,ml)=>{try{Mn.getDoc().execCommand(Pa,!1,String(ml))}catch{}},ds=Pa=>Pa.isDefaultPrevented(),bs=()=>{const Pa=Yr=>{const pl=Gn.create("body"),pc=Yr.cloneContents();return pl.appendChild(pc),no.serializer.serialize(pl,{format:"html"})},ml=Yr=>{const pl=Pa(Yr),pc=Gn.createRng();pc.selectNode(Mn.getBody());const Pu=Pa(pc);return pl===Pu};Mn.on("keydown",Yr=>{const pl=Yr.keyCode;if(!ds(Yr)&&(pl===jn||pl===Wn)&&Mn.selection.isEditable()){const pc=Mn.selection.isCollapsed(),Pu=Mn.getBody();if(pc&&!md(Cs.fromDom(Pu))||!pc&&!ml(Mn.selection.getRng()))return;Yr.preventDefault(),Mn.setContent(""),Pu.firstChild&&Gn.isBlock(Pu.firstChild)?Mn.selection.setCursorLocation(Pu.firstChild,0):Mn.selection.setCursorLocation(Pu,0),Mn.nodeChanged()}})},as=()=>{Mn.shortcuts.add("meta+a",null,"SelectAll")},ys=()=>{Mn.inline||Gn.bind(Mn.getDoc(),"mousedown mouseup",Pa=>{let ml;if(Pa.target===Mn.getDoc().documentElement)if(ml=no.getRng(),Mn.getBody().focus(),Pa.type==="mousedown"){if(La(ml.startContainer))return;no.placeCaretAt(Pa.clientX,Pa.clientY)}else no.setRng(ml)})},Ls=()=>{Mn.on("keydown",Pa=>{if(!ds(Pa)&&Pa.keyCode===Wn){if(!Mn.getBody().getElementsByTagName("hr").length)return;if(no.isCollapsed()&&no.getRng().startOffset===0){const ml=no.getNode(),Yr=ml.previousSibling;if(ml.nodeName==="HR"){Gn.remove(ml),Pa.preventDefault();return}Yr&&Yr.nodeName&&Yr.nodeName.toLowerCase()==="hr"&&(Gn.remove(Yr),Pa.preventDefault())}}})},zs=()=>{Range.prototype.getClientRects||Mn.on("mousedown",Pa=>{if(!ds(Pa)&&Pa.target.nodeName==="HTML"){const ml=Mn.getBody();ml.blur(),O1.setEditorTimeout(Mn,()=>{ml.focus()})}})},Hs=()=>{const Pa=FC(Mn);Mn.on("click",ml=>{const Yr=ml.target;/^(IMG|HR)$/.test(Yr.nodeName)&&Gn.isEditable(Yr)&&(ml.preventDefault(),Mn.selection.select(Yr),Mn.nodeChanged()),Yr.nodeName==="A"&&Gn.hasClass(Yr,Pa)&&Yr.childNodes.length===0&&Gn.isEditable(Yr.parentNode)&&(ml.preventDefault(),no.select(Yr))})},tr=()=>{const Pa=()=>{const Yr=Gn.getAttribs(no.getStart().cloneNode(!1));return()=>{const pl=no.getStart();pl!==Mn.getBody()&&(Gn.setAttrib(pl,"style",null),Vn(Yr,pc=>{pl.setAttributeNode(pc.cloneNode(!0))}))}},ml=()=>!no.isCollapsed()&&Gn.getParent(no.getStart(),Gn.isBlock)!==Gn.getParent(no.getEnd(),Gn.isBlock);Mn.on("keypress",Yr=>{let pl;return!ds(Yr)&&(Yr.keyCode===8||Yr.keyCode===46)&&ml()?(pl=Pa(),Mn.getDoc().execCommand("delete",!1),pl(),Yr.preventDefault(),!1):!0}),Gn.bind(Mn.getDoc(),"cut",Yr=>{if(!ds(Yr)&&ml()){const pl=Pa();O1.setEditorTimeout(Mn,()=>{pl()})}})},Pr=()=>{Mn.on("keydown",Pa=>{if(!ds(Pa)&&Pa.keyCode===Wn&&no.isCollapsed()&&no.getRng().startOffset===0){const ml=no.getNode().previousSibling;if(ml&&ml.nodeName&&ml.nodeName.toLowerCase()==="table")return Pa.preventDefault(),!1}return!0})},Ur=()=>{Mn.on("keydown",Pa=>{if(ds(Pa)||Pa.keyCode!==va.BACKSPACE)return;let ml=no.getRng();const Yr=ml.startContainer,pl=ml.startOffset,pc=Gn.getRoot();let Pu=Yr;if(!(!ml.collapsed||pl!==0)){for(;Pu.parentNode&&Pu.parentNode.firstChild===Pu&&Pu.parentNode!==pc;)Pu=Pu.parentNode;Pu.nodeName==="BLOCKQUOTE"&&(Mn.formatter.toggle("blockquote",void 0,Pu),ml=Gn.createRng(),ml.setStart(Yr,0),ml.setEnd(Yr,0),no.setRng(ml))}})},fa=()=>{const Pa=()=>{qo("StyleWithCSS",!1),qo("enableInlineTableEditing",!1),Jv(Mn)||qo("enableObjectResizing",!1)};oO(Mn)||Mn.on("BeforeExecCommand mousedown",Pa)},yr=()=>{const Pa=()=>{Vn(Gn.select("a:not([data-mce-block])"),ml=>{var Yr;let pl=ml.parentNode;const pc=Gn.getRoot();if((pl==null?void 0:pl.lastChild)===ml){for(;pl&&!Gn.isBlock(pl);){if(((Yr=pl.parentNode)===null||Yr===void 0?void 0:Yr.lastChild)!==pl||pl===pc)return;pl=pl.parentNode}Gn.add(pl,"br",{"data-mce-bogus":1})}})};Mn.on("SetContent ExecCommand",ml=>{(ml.type==="setcontent"||ml.command==="mceInsertLink")&&Pa()})},fr=()=>{Mn.on("init",()=>{qo("DefaultParagraphSeparator",bh(Mn))})},Ar=Pa=>{const ml=Pa.getBody(),Yr=Pa.selection.getRng();return Yr.startContainer===Yr.endContainer&&Yr.startContainer===ml&&Yr.startOffset===0&&Yr.endOffset===ml.childNodes.length},wa=()=>{Mn.on("keyup focusin mouseup",Pa=>{!va.modifierPressed(Pa)&&!Ar(Mn)&&no.normalize()},!0)},Va=()=>{Mn.contentStyles.push("img:-moz-broken {-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}")},Tl=()=>{Mn.inline||Mn.on("keydown",()=>{document.activeElement===document.body&&Mn.getWin().focus()})},tc=()=>{Mn.inline||(Mn.contentStyles.push("body {min-height: 150px}"),Mn.on("click",Pa=>{let ml;Pa.target.nodeName==="HTML"&&(ml=Mn.selection.getRng(),Mn.getBody().focus(),Mn.selection.setRng(ml),Mn.selection.normalize(),Mn.nodeChanged())}))},uu=()=>{Qo&&Mn.on("keydown",Pa=>{va.metaKeyPressed(Pa)&&!Pa.shiftKey&&(Pa.keyCode===37||Pa.keyCode===39)&&(Pa.preventDefault(),Mn.selection.getSel().modify("move",Pa.keyCode===37?"backward":"forward","lineboundary"))})},Qu=()=>{Mn.on("click",Pa=>{let ml=Pa.target;do if(ml.tagName==="A"){Pa.preventDefault();return}while(ml=ml.parentNode)}),Mn.contentStyles.push(".mce-content-body {-webkit-touch-callout: none}")},Wd=()=>{Mn.on("init",()=>{Mn.dom.bind(Mn.getBody(),"submit",Pa=>{Pa.preventDefault()})})},Jh=()=>{ao.addNodeFilter("br",Pa=>{let ml=Pa.length;for(;ml--;)Pa[ml].attr("class")==="Apple-interchange-newline"&&Pa[ml].remove()})},_u=Js,ea=()=>{if(!vo||Mn.removed)return!1;const Pa=Mn.selection.getSel();return!Pa||!Pa.rangeCount||Pa.rangeCount===0},pa=()=>{Ao&&(ys(),Hs(),Wd(),as(),Fo&&(Tl(),tc(),Qu())),vo&&(zs(),fa(),Va(),uu())},$c=()=>{Mn.on("drop",Pa=>{var ml;const Yr=(ml=Pa.dataTransfer)===null||ml===void 0?void 0:ml.getData("text/html");xo(Yr)&&/^]*>$/.test(Yr)&&Mn.dispatch("dragend",new window.DragEvent("dragend",Pa))})},ac=()=>{Ur(),bs(),aa.windowsPhone||wa(),Ao&&(ys(),Hs(),fr(),Wd(),Pr(),Jh(),Fo?(Tl(),tc(),Qu()):as()),vo&&(Ls(),zs(),tr(),fa(),yr(),Va(),uu(),Pr(),$c())};return wO(Mn)?pa():ac(),{refreshContentEditable:_u,isHidden:ea}},Q$=Eu.DOM,Qj=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody()),jn=N1(Wf(Wn)),Gn=Cs.fromTag("style");Gc(Gn,"type","text/css"),Fu(Gn,Cs.fromText(Vn)),Fu(jn,Gn),Mn.on("remove",()=>{sc(Gn)})},sN=Mn=>Mn.inline?Mn.getElement().nodeName.toLowerCase():void 0,rN=Mn=>pr(Mn,Vn=>ls(Vn)===!1),f8=Mn=>{const Vn=Mn.options.get,Wn=Mn.editorUpload.blobCache;return rN({allow_conditional_comments:Vn("allow_conditional_comments"),allow_html_data_urls:Vn("allow_html_data_urls"),allow_svg_data_urls:Vn("allow_svg_data_urls"),allow_html_in_named_anchor:Vn("allow_html_in_named_anchor"),allow_script_urls:Vn("allow_script_urls"),allow_unsafe_link_target:Vn("allow_unsafe_link_target"),convert_unsafe_embeds:Vn("convert_unsafe_embeds"),convert_fonts_to_spans:Vn("convert_fonts_to_spans"),fix_list_elements:Vn("fix_list_elements"),font_size_legacy_values:Vn("font_size_legacy_values"),forced_root_block:Vn("forced_root_block"),forced_root_block_attrs:Vn("forced_root_block_attrs"),preserve_cdata:Vn("preserve_cdata"),inline_styles:Vn("inline_styles"),root_name:sN(Mn),sandbox_iframes:Vn("sandbox_iframes"),sanitize:Vn("xss_sanitization"),validate:!0,blob_cache:Wn,document:Mn.getDoc()})},h8=Mn=>{const Vn=Mn.options.get;return rN({custom_elements:Vn("custom_elements"),extended_valid_elements:Vn("extended_valid_elements"),invalid_elements:Vn("invalid_elements"),invalid_styles:Vn("invalid_styles"),schema:Vn("schema"),valid_children:Vn("valid_children"),valid_classes:Vn("valid_classes"),valid_elements:Vn("valid_elements"),valid_styles:Vn("valid_styles"),verify_html:Vn("verify_html"),padd_empty_block_inline_children:Vn("format_empty_lines")})},Vj=Mn=>{const Vn=Mn.options.get;return{...f8(Mn),...h8(Mn),...rN({remove_trailing_brs:Vn("remove_trailing_brs"),pad_empty_with_br:Vn("pad_empty_with_br"),url_converter:Vn("url_converter"),url_converter_scope:Vn("url_converter_scope"),element_format:Vn("element_format"),entities:Vn("entities"),entity_encoding:Vn("entity_encoding"),indent:Vn("indent"),indent_after:Vn("indent_after"),indent_before:Vn("indent_before")})}},zj=Mn=>{const Vn=a0(f8(Mn),Mn.schema);return Vn.addAttributeFilter("src,href,style,tabindex",(Wn,jn)=>{const Gn=Mn.dom,no="data-mce-"+jn;let ao=Wn.length;for(;ao--;){const po=Wn[ao];let vo=po.attr(jn);if(vo&&!po.attr(no)){if(vo.indexOf("data:")===0||vo.indexOf("blob:")===0)continue;jn==="style"?(vo=Gn.serializeStyle(Gn.parseStyle(vo),po.name),vo.length||(vo=null),po.attr(no,vo),po.attr(jn,vo)):jn==="tabindex"?(po.attr(no,vo),po.attr(jn,null)):po.attr(no,Mn.convertURL(vo,jn,po.name))}}}),Vn.addNodeFilter("script",Wn=>{let jn=Wn.length;for(;jn--;){const Gn=Wn[jn],no=Gn.attr("type")||"no/type";no.indexOf("mce-")!==0&&Gn.attr("type","mce-"+no)}}),GS(Mn)&&Vn.addNodeFilter("#cdata",Wn=>{var jn;let Gn=Wn.length;for(;Gn--;){const no=Wn[Gn];no.type=8,no.name="#comment",no.value="[CDATA["+Mn.dom.encode((jn=no.value)!==null&&jn!==void 0?jn:"")+"]]"}}),Vn.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",Wn=>{let jn=Wn.length;const Gn=Mn.schema.getNonEmptyElements();for(;jn--;){const no=Wn[jn];no.isEmpty(Gn)&&no.getAll("br").length===0&&no.append(new fp("br",1))}}),Vn},Wj=Mn=>{const Vn=HC(Mn);Vn&&O1.setEditorTimeout(Mn,()=>{let Wn;Vn===!0?Wn=Mn:Wn=Mn.editorManager.get(Vn),Wn&&!Wn.destroyed&&(Wn.focus(),Wn.selection.scrollIntoView())},100)},V$=Mn=>{const Vn=Mn.dom.getRoot();!Mn.inline&&(!ik(Mn)||Mn.selection.getStart(!0)===Vn)&&zm(Vn).each(Wn=>{const jn=Wn.getNode(),Gn=Gp(jn)?zm(jn).getOr(Wn):Wn;Mn.selection.setRng(Gn.toRange())})},Uj=Mn=>{Mn.bindPendingEventDelegates(),Mn.initialized=!0,_w(Mn),Mn.focus(!0),V$(Mn),Mn.nodeChanged({initial:!0});const Vn=rx(Mn);Yo(Vn)&&Vn.call(Mn,Mn),Wj(Mn)},iN=Mn=>Mn.inline?Mn.ui.styleSheetLoader:Mn.dom.styleSheetLoader,Zj=(Mn,Vn,Wn)=>{const{pass:jn,fail:Gn}=Vr(Vn,po=>tinymce.Resource.has(YD(po))),ao=[...jn.map(po=>{const vo=tinymce.Resource.get(YD(po));return xo(vo)?Promise.resolve(iN(Mn).loadRawCss(po,vo)):Promise.resolve()}),iN(Mn).loadAll(Gn)];return Mn.inline?ao:ao.concat([Mn.ui.styleSheetLoader.loadAll(Wn)])},m8=Mn=>{const Vn=iN(Mn),Wn=RC(Mn),jn=Mn.contentCSS,Gn=()=>{Vn.unloadAll(jn),Mn.inline||Mn.ui.styleSheetLoader.unloadAll(Wn)},no=()=>{Mn.removed?Gn():Mn.on("remove",Gn)};if(Mn.contentStyles.length>0){let vo="";Lr.each(Mn.contentStyles,Ao=>{vo+=Ao+`\r +`}),Mn.dom.addStyle(vo)}const ao=Promise.all(Zj(Mn,jn,Wn)).then(no).catch(no),po=l_(Mn);return po&&Qj(Mn,po),ao},qj=Mn=>{const Vn=Mn.getDoc(),Wn=Mn.getBody();fy(Mn),ax(Mn)||(Vn.body.spellcheck=!1,Q$.setAttrib(Wn,"spellcheck","false")),Mn.quirks=Hj(Mn),T3(Mn);const jn=G2(Mn);jn!==void 0&&(Wn.dir=jn);const Gn=QC(Mn);Gn&&Mn.on("BeforeSetContent",no=>{Lr.each(Gn,ao=>{no.content=no.content.replace(ao,po=>"")})}),Mn.on("SetContent",()=>{Mn.addVisual(Mn.getBody())}),Mn.on("compositionstart compositionend",no=>{Mn.composing=no.type==="compositionstart"})},jj=Mn=>{wO(Mn)||Mn.load({initial:!0,format:"html"}),Mn.startContent=Mn.getContent({format:"raw"})},aN=Mn=>{Mn.removed!==!0&&(jj(Mn),Uj(Mn))},Xj=Mn=>{let Vn=!1;const Wn=setTimeout(()=>{Vn||Mn.setProgressState(!0)},500);return()=>{clearTimeout(Wn),Vn=!0,Mn.setProgressState(!1)}},p8=Mn=>{const Vn=Mn.getElement();let Wn=Mn.getDoc();Mn.inline&&(Q$.addClass(Vn,"mce-content-body"),Mn.contentDocument=Wn=document,Mn.contentWindow=window,Mn.bodyElement=Vn,Mn.contentAreaContainer=Vn);const jn=Mn.getBody();jn.disabled=!0,Mn.readonly=oO(Mn),Mn._editableRoot=$p(Mn),!Mn.readonly&&Mn.hasEditableRoot()&&(Mn.inline&&Q$.getStyle(jn,"position",!0)==="static"&&(jn.style.position="relative"),jn.contentEditable="true"),jn.disabled=!1,Mn.editorUpload=vz(Mn),Mn.schema=i1(h8(Mn)),Mn.dom=Eu(Wn,{keep_values:!0,url_converter:Mn.convertURL,url_converter_scope:Mn,update_styles:!0,root_element:Mn.inline?Mn.getBody():null,collect:Mn.inline,schema:Mn.schema,contentCssCors:ab(Mn),referrerPolicy:Hl(Mn),onSetAttrib:ao=>{Mn.dispatch("SetAttrib",ao)},force_hex_color:ry(Mn)}),Mn.parser=zj(Mn),Mn.serializer=zI(Vj(Mn),Mn),Mn.selection=W_(Mn.dom,Mn.getWin(),Mn.serializer,Mn),Mn.annotator=Dx(Mn),Mn.formatter=eM(Mn),Mn.undoManager=tM(Mn),Mn._nodeChangeDispatcher=new U6(Mn),Mn._selectionOverrides=xj(Mn),BW(Mn),Gq(Mn),iG(Mn),wO(Mn)||(T7(Mn),Fj(Mn));const Gn=sq(Mn);Uw(Mn,Gn),VW(Mn),c0(Mn),jq(Mn);const no=hV(Mn);qj(Mn),no.fold(()=>{const ao=Xj(Mn);m8(Mn).then(()=>{aN(Mn),ao()})},ao=>{Mn.setProgressState(!0),m8(Mn).then(()=>{ao().then(po=>{Mn.setProgressState(!1),aN(Mn),WD(Mn)},po=>{Mn.notificationManager.open({type:"error",text:String(po)}),aN(Mn),WD(Mn)})})})},g8=Qs,Yj=(Mn,Vn,Wn)=>S0(Mn,Vn,g8,Wn),z$=Eu.DOM,Gj=(Mn,Vn,Wn,jn)=>{const Gn=Cs.fromTag("iframe");return jn.each(no=>Gc(Gn,"tabindex",no)),im(Gn,Wn),im(Gn,{id:Mn+"_ifr",frameBorder:"0",allowTransparency:"true",title:Vn}),Xm(Gn,"tox-edit-area__iframe"),Gn},Kj=Mn=>{let Vn=FS(Mn)+"";ap(Mn)!==Mn.documentBaseUrl&&(Vn+=''),Vn+='';const Wn=i_(Mn),jn=W2(Mn),Gn=Mn.translate(sx(Mn));return Zu(Mn)&&(Vn+=''),Vn+=`
    `,Vn},b8=(Mn,Vn)=>{const Wn=Mn.translate("Rich Text Area"),jn=Ld(Cs.fromDom(Mn.getElement()),"tabindex").bind(Em),Gn=Gj(Mn.id,Wn,Ic(Mn),jn).dom;Gn.onload=()=>{Gn.onload=null,Mn.dispatch("load")},Mn.contentAreaContainer=Vn.iframeContainer,Mn.iframeElement=Gn,Mn.iframeHTML=Kj(Mn),z$.add(Vn.iframeContainer,Gn)},fT=Mn=>{const Vn=Mn.iframeElement,Wn=()=>{Mn.contentDocument=Vn.contentDocument,p8(Mn)};if(fx(Mn)||aa.browser.isFirefox()){const jn=Mn.getDoc();jn.open(),jn.write(Mn.iframeHTML),jn.close(),Wn()}else{const jn=Yj(Cs.fromDom(Vn),"load",()=>{jn.unbind(),Wn()});Vn.srcdoc=Mn.iframeHTML}},Jj=(Mn,Vn)=>{b8(Mn,Vn),Vn.editorContainer&&(Vn.editorContainer.style.display=Mn.orgDisplay,Mn.hidden=z$.isHidden(Vn.editorContainer)),Mn.getElement().style.display="none",z$.setAttrib(Mn.id,"aria-hidden","true"),Mn.getElement().style.visibility=Mn.orgVisibility,fT(Mn)},lN=Eu.DOM,eX=(Mn,Vn,Wn)=>{const jn=Hw.get(Wn),Gn=Hw.urls[Wn]||Mn.documentBaseUrl.replace(/\/$/,"");if(Wn=Lr.trim(Wn),jn&&Lr.inArray(Vn,Wn)===-1){if(Mn.plugins[Wn])return;try{const no=jn(Mn,Gn)||{};Mn.plugins[Wn]=no,Yo(no.init)&&(no.init(Mn,Gn),Vn.push(Wn))}catch(no){tB(Mn,Wn,no)}}},tX=Mn=>Mn.replace(/^\-/,""),nX=Mn=>{const Vn=[];fs(sO(Mn),Wn=>{eX(Mn,Vn,tX(Wn))})},oX=Mn=>{const Vn=Lr.trim(QS(Mn)),Wn=Mn.ui.registry.getAll().icons,jn={...AE.get("default").icons,...AE.get(Vn).icons};Rr(jn,(Gn,no)=>{Mr(Wn,no)||Mn.ui.registry.addIcon(no,Gn)})},v8=Mn=>{const Vn=ey(Mn);if(xo(Vn)){const Wn=CO.get(Vn);Mn.theme=Wn(Mn,CO.urls[Vn])||{},Yo(Mn.theme.init)&&Mn.theme.init(Mn,CO.urls[Vn]||Mn.documentBaseUrl.replace(/\/$/,""))}else Mn.theme={}},sX=Mn=>{const Vn=c_(Mn),Wn=yb.get(Vn);Mn.model=Wn(Mn,yb.urls[Vn])},y8=Mn=>{const Vn=Mn.theme.renderUI;return Vn?Vn():_8(Mn)},rX=Mn=>{const Vn=Mn.getElement(),jn=ey(Mn)(Mn,Vn);return jn.editorContainer.nodeType&&(jn.editorContainer.id=jn.editorContainer.id||Mn.id+"_parent"),jn.iframeContainer&&jn.iframeContainer.nodeType&&(jn.iframeContainer.id=jn.iframeContainer.id||Mn.id+"_iframecontainer"),jn.height=jn.iframeHeight?jn.iframeHeight:Vn.offsetHeight,jn},O8=(Mn,Vn)=>({editorContainer:Mn,iframeContainer:Vn,api:{}}),iX=Mn=>{const Vn=lN.create("div");return lN.insertAfter(Vn,Mn),O8(Vn,Vn)},_8=Mn=>{const Vn=Mn.getElement();return Mn.inline?O8(null):iX(Vn)},aX=Mn=>{const Vn=Mn.getElement();return Mn.orgDisplay=Vn.style.display,xo(ey(Mn))?y8(Mn):Yo(ey(Mn))?rX(Mn):_8(Mn)},lX=(Mn,Vn)=>{const Wn={show:zo.from(Vn.show).getOr(Js),hide:zo.from(Vn.hide).getOr(Js),isEnabled:zo.from(Vn.isEnabled).getOr(Qs),setEnabled:jn=>{Mn.mode.isReadOnly()||zo.from(Vn.setEnabled).each(Gn=>Gn(jn))}};Mn.ui={...Mn.ui,...Wn}},cX=async Mn=>{Mn.dispatch("ScriptsLoaded"),oX(Mn),v8(Mn),sX(Mn),nX(Mn);const Vn=await aX(Mn);lX(Mn,zo.from(Vn.api).getOr({})),Mn.editorContainer=Vn.editorContainer,lz(Mn),Mn.inline?p8(Mn):Jj(Mn,{editorContainer:Vn.editorContainer,iframeContainer:Vn.iframeContainer})},Yw=Eu.DOM,S8=Mn=>Mn.charAt(0)==="-",w8=(Mn,Vn)=>{const Wn=WS(Vn),jn=Dh(Vn);if(!cg.hasCode(Wn)&&Wn!=="en"){const Gn=fc(jn)?jn:`${Vn.editorManager.baseURL}/langs/${Wn}.js`;Mn.add(Gn).catch(()=>{$E(Vn,Gn,Wn)})}},cN=(Mn,Vn)=>{const Wn=ey(Mn);if(xo(Wn)&&!S8(Wn)&&!Mr(CO.urls,Wn)){const jn=J2(Mn),Gn=jn?Mn.documentBaseURI.toAbsolute(jn):`themes/${Wn}/theme${Vn}.js`;CO.load(Wn,Gn).catch(()=>{sz(Mn,Gn,Wn)})}},C8=(Mn,Vn)=>{const Wn=c_(Mn);if(Wn!=="plugin"&&!Mr(yb.urls,Wn)){const jn=US(Mn),Gn=xo(jn)?Mn.documentBaseURI.toAbsolute(jn):`models/${Wn}/model${Vn}.js`;yb.load(Wn,Gn).catch(()=>{eB(Mn,Gn,Wn)})}},k8=Mn=>zo.from(V0(Mn)).filter(fc).map(Vn=>({url:Vn,name:zo.none()})),x8=(Mn,Vn,Wn)=>zo.from(Vn).filter(jn=>fc(jn)&&!AE.has(jn)).map(jn=>({url:`${Mn.editorManager.baseURL}/icons/${jn}/icons${Wn}.js`,name:zo.some(jn)})),uX=(Mn,Vn,Wn)=>{const jn=x8(Vn,"default",Wn),Gn=k8(Vn).orThunk(()=>x8(Vn,QS(Vn),""));fs(ku([jn,Gn]),no=>{Mn.add(no.url).catch(()=>{oz(Vn,no.url,no.name.getOrUndefined())})})},dX=(Mn,Vn)=>{const Wn=(jn,Gn)=>{Hw.load(jn,Gn).catch(()=>{oG(Mn,Gn,jn)})};Rr(qb(Mn),(jn,Gn)=>{Wn(Gn,jn),Mn.options.set("plugins",sO(Mn).concat(Gn))}),fs(sO(Mn),jn=>{jn=Lr.trim(jn),jn&&!Hw.urls[jn]&&!S8(jn)&&Wn(jn,`plugins/${jn}/plugin${Vn}.js`)})},E8=Mn=>{const Vn=ey(Mn);return!xo(Vn)||rs(CO.get(Vn))},T8=Mn=>{const Vn=c_(Mn);return rs(yb.get(Vn))},fX=(Mn,Vn)=>{const Wn=of.ScriptLoader,jn=()=>{!Mn.removed&&E8(Mn)&&T8(Mn)&&cX(Mn)};cN(Mn,Vn),C8(Mn,Vn),w8(Wn,Mn),uX(Wn,Mn,Vn),dX(Mn,Vn),Wn.loadQueue().then(jn,jn)},hX=(Mn,Vn)=>mS.forElement(Mn,{contentCssCors:oy(Vn),referrerPolicy:Hl(Vn)}),uN=Mn=>{const Vn=Mn.id;cg.setCode(WS(Mn));const Wn=()=>{Yw.unbind(window,"ready",Wn),Mn.render()};if(!vm.Event.domLoaded){Yw.bind(window,"ready",Wn);return}if(!Mn.getElement())return;const jn=Cs.fromDom(Mn.getElement()),Gn=zp(jn);Mn.on("remove",()=>{dr(jn.dom.attributes,ao=>Mu(jn,ao.name)),im(jn,Gn)}),Mn.ui.styleSheetLoader=hX(jn,Mn),ZS(Mn)?Mn.inline=!0:(Mn.orgVisibility=Mn.getElement().style.visibility,Mn.getElement().style.visibility="hidden");const no=Mn.getElement().form||Yw.getParent(Vn,"form");no&&(Mn.formElement=no,tx(Mn)&&!$g(Mn.getElement())&&(Yw.insertAfter(Yw.create("input",{type:"hidden",name:Vn}),Vn),Mn.hasHiddenInput=!0),Mn.formEventDelegate=ao=>{Mn.dispatch(ao.type,ao)},Yw.bind(no,"submit reset",Mn.formEventDelegate),Mn.on("reset",()=>{Mn.resetContent()}),BC(Mn)&&!no.submit.nodeType&&!no.submit.length&&!no._mceOldSubmit&&(no._mceOldSubmit=no.submit,no.submit=()=>(Mn.editorManager.triggerSave(),Mn.setDirty(!1),no._mceOldSubmit(no)))),Mn.windowManager=JI(Mn),Mn.notificationManager=XD(Mn),JS(Mn)&&Mn.on("GetContent",ao=>{ao.save&&(ao.content=Yw.encode(ao.content))}),p1(Mn)&&Mn.on("submit",()=>{Mn.initialized&&Mn.save()}),ty(Mn)&&(Mn._beforeUnload=()=>{Mn.initialized&&!Mn.destroyed&&!Mn.isHidden()&&Mn.save({format:"raw",no_events:!0,set_dirty:!1})},Mn.editorManager.on("BeforeUnload",Mn._beforeUnload)),Mn.editorManager.add(Mn),fX(Mn,Mn.suffix)},W$=(Mn,Vn)=>{Mn._editableRoot!==Vn&&(Mn._editableRoot=Vn,Mn.readonly||(Mn.getBody().contentEditable=String(Mn.hasEditableRoot()),Mn.nodeChanged()),D3(Mn,Vn))},U$=Mn=>Mn._editableRoot,TO=(Mn,Vn)=>({sections:xs(Mn),options:xs(Vn)}),hT=xl().deviceType,Gw=hT.isPhone(),A8=hT.isTablet(),mT=Mn=>{if(ps(Mn))return[];{const Vn=Ko(Mn)?Mn:Mn.split(/[ ,]/),Wn=Us(Vn,ih);return nr(Wn,fc)}},mX=(Mn,Vn)=>{const Wn=Ks(Vn,(jn,Gn)=>Zs(Mn,Gn));return TO(Wn.t,Wn.f)},P8=(Mn,Vn,Wn={})=>{const jn=Mn.sections(),Gn=Ma(jn,Vn).getOr({});return Lr.extend({},Wn,Gn)},dN=(Mn,Vn)=>Mr(Mn.sections(),Vn),fN=(Mn,Vn)=>dN(Mn,Vn)?Mn.sections()[Vn]:{},Z$=(Mn,Vn)=>({...{table_grid:!1,object_resizing:!1,resize:!1,toolbar_mode:Ma(Mn,"toolbar_mode").getOr("scrolling"),toolbar_sticky:!1},...Vn?{menubar:!1}:{}}),sS=(Mn,Vn)=>{var Wn;const jn=(Wn=Vn.external_plugins)!==null&&Wn!==void 0?Wn:{};return Mn&&Mn.external_plugins?Lr.extend({},Mn.external_plugins,jn):jn},Kw=(Mn,Vn)=>[...mT(Mn),...mT(Vn)],$8=(Mn,Vn,Wn,jn)=>Mn&&dN(Vn,"mobile")?jn:Wn,pX=(Mn,Vn,Wn,jn)=>{const Gn=mT(Wn.forced_plugins),no=mT(jn.plugins),ao=fN(Vn,"mobile"),po=ao.plugins?mT(ao.plugins):no,vo=$8(Mn,Vn,no,po),Ao=Kw(Gn,vo);return Lr.extend(jn,{forced_plugins:Gn,plugins:Ao})},gX=(Mn,Vn)=>Mn&&dN(Vn,"mobile"),bX=(Mn,Vn,Wn,jn,Gn)=>{var no;const ao=Mn?{mobile:Z$((no=Gn.mobile)!==null&&no!==void 0?no:{},Vn)}:{},po=mX(["mobile"],eT(ao,Gn)),vo=Lr.extend(Wn,jn,po.options(),gX(Mn,po)?P8(po,"mobile"):{},{external_plugins:sS(jn,po.options())});return pX(Mn,po,jn,vo)},vX=(Mn,Vn)=>bX(Gw||A8,Gw,Vn,Mn,Vn),yX=(Mn,Vn)=>kV(Mn,Vn),OX=Mn=>{const Vn=(jn,Gn)=>{Mn.formatter.toggle(jn,Gn),Mn.nodeChanged()},Wn=jn=>()=>{fs("left,center,right,justify".split(","),Gn=>{jn!==Gn&&Mn.formatter.remove("align"+Gn)}),jn!=="none"&&Vn("align"+jn)};Mn.editorCommands.addCommands({JustifyLeft:Wn("left"),JustifyCenter:Wn("center"),JustifyRight:Wn("right"),JustifyFull:Wn("justify"),JustifyNone:Wn("none")})},R8=Mn=>{const Vn=Wn=>()=>{const jn=Mn.selection,Gn=jn.isCollapsed()?[Mn.dom.getParent(jn.getNode(),Mn.dom.isBlock)]:jn.getSelectedBlocks();return Sr(Gn,no=>rs(Mn.formatter.matchNode(no,Wn)))};Mn.editorCommands.addCommands({JustifyLeft:Vn("alignleft"),JustifyCenter:Vn("aligncenter"),JustifyRight:Vn("alignright"),JustifyFull:Vn("alignjustify")},"state")},_X=Mn=>{OX(Mn),R8(Mn)},SX=Mn=>{Mn.editorCommands.addCommands({"Cut,Copy,Paste":Vn=>{const Wn=Mn.getDoc();let jn;try{Wn.execCommand(Vn)}catch{jn=!0}if(Vn==="paste"&&!Wn.queryCommandEnabled(Vn)&&(jn=!0),jn||!Wn.queryCommandSupported(Vn)){let Gn=Mn.translate("Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead.");(aa.os.isMacOS()||aa.os.isiOS())&&(Gn=Gn.replace(/Ctrl\+/g,"⌘+")),Mn.notificationManager.open({text:Gn,type:"error"})}}})},wX=(Mn,Vn,Wn,jn)=>{const Gn=Cs.fromDom(Mn.getRoot());return Ck(Gn,lr.fromRangeStart(Vn),jn)?Wn=Wn.replace(/^ /," "):Wn=Wn.replace(/^ /," "),kk(Gn,lr.fromRangeEnd(Vn),jn)?Wn=Wn.replace(/( | )()?$/," "):Wn=Wn.replace(/ ()?$/," "),Wn},EG=Mn=>{if(typeof Mn!="string"){const Vn=Lr.extend({paste:Mn.paste,data:{paste:Mn.paste}},Mn);return{content:Mn.content,details:Vn}}return{content:Mn,details:{}}},CX=(Mn,Vn)=>{const Wn=Mn.selection,jn=Mn.dom;return/^ | $/.test(Vn)?wX(jn,Wn.getRng(),Vn,Mn.schema):Vn},b2=(Mn,Vn)=>{if(Mn.selection.isEditable()){const{content:Wn,details:jn}=EG(Vn);wD(Mn,{...jn,content:CX(Mn,Wn),format:"html",set:!1,selection:!0}).each(Gn=>{const no=wV(Mn,Gn.content,jn);iP(Mn,no,Gn),Mn.addVisual()})}},kX=Mn=>{Mn.editorCommands.addCommands({mceCleanup:()=>{const Vn=Mn.selection.getBookmark();Mn.setContent(Mn.getContent()),Mn.selection.moveToBookmark(Vn)},insertImage:(Vn,Wn,jn)=>{b2(Mn,Mn.dom.createHTML("img",{src:jn}))},insertHorizontalRule:()=>{Mn.execCommand("mceInsertContent",!1,"
    ")},insertText:(Vn,Wn,jn)=>{b2(Mn,Mn.dom.encode(jn))},insertHTML:(Vn,Wn,jn)=>{b2(Mn,jn)},mceInsertContent:(Vn,Wn,jn)=>{b2(Mn,jn)},mceSetContent:(Vn,Wn,jn)=>{Mn.setContent(jn)},mceReplaceContent:(Vn,Wn,jn)=>{Mn.execCommand("mceInsertContent",!1,jn.replace(/\{\$selection\}/g,Mn.selection.getContent({format:"text"})))},mceNewDocument:()=>{Mn.setContent(sy(Mn))}})},xX={"font-size":"size","font-family":"face"},D8=Qh("font"),EX=(Mn,Vn,Wn)=>{const jn=no=>fd(no,Mn).orThunk(()=>D8(no)?Ma(xX,Mn).bind(ao=>Ld(no,ao)):zo.none()),Gn=no=>Vs(Cs.fromDom(Vn),no);return OO(Cs.fromDom(Wn),no=>jn(no),Gn)},M8=Mn=>Mn.replace(/[\'\"\\]/g,"").replace(/,\s+/g,","),TX=(Mn,Vn)=>zo.from(Eu.DOM.getStyle(Vn,Mn,!0)),q$=Mn=>(Vn,Wn)=>zo.from(Wn).map(Cs.fromDom).filter(lf).bind(jn=>EX(Mn,Vn,jn.dom).or(TX(Mn,jn.dom))).getOr(""),AX=q$("font-size"),PX=ko(M8,q$("font-family")),$X=Mn=>zm(Mn.getBody()).bind(Vn=>{const Wn=Vn.container();return zo.from(Ir(Wn)?Wn.parentNode:Wn)}),RX=Mn=>zo.from(Mn.selection.getRng()).bind(Vn=>{const Wn=Mn.getBody();return Vn.startContainer===Wn&&Vn.startOffset===0?zo.none():zo.from(Mn.selection.getStart(!0))}),N8=(Mn,Vn)=>RX(Mn).orThunk(ws($X,Mn)).map(Cs.fromDom).filter(lf).bind(Vn),pT=(Mn,Vn)=>N8(Mn,gs(zo.some,Vn)),hN=(Mn,Vn)=>{if(/^[0-9.]+$/.test(Vn)){const Wn=parseInt(Vn,10);if(Wn>=1&&Wn<=7){const jn=hx(Mn),Gn=mx(Mn);return Gn.length>0?Gn[Wn-1]||Vn:jn[Wn-1]||Vn}else return Vn}else return Vn},mN=Mn=>{const Vn=Mn.split(/\s*,\s*/);return Us(Vn,Wn=>Wn.indexOf(" ")!==-1&&!(Dc(Wn,'"')||Dc(Wn,"'"))?`'${Wn}'`:Wn).join(",")},DX=(Mn,Vn)=>{const Wn=hN(Mn,Vn);Mn.formatter.toggle("fontname",{value:mN(Wn)}),Mn.nodeChanged()},TG=Mn=>pT(Mn,Vn=>PX(Mn.getBody(),Vn.dom)).getOr(""),AG=(Mn,Vn)=>{Mn.formatter.toggle("fontsize",{value:hN(Mn,Vn)}),Mn.nodeChanged()},MX=Mn=>pT(Mn,Vn=>AX(Mn.getBody(),Vn.dom)).getOr(""),L8=Mn=>pT(Mn,Vn=>{const Wn=Cs.fromDom(Mn.getBody()),jn=OO(Vn,no=>fd(no,"line-height"),ws(Vs,Wn)),Gn=()=>{const no=parseFloat(Ju(Vn,"line-height")),ao=parseFloat(Ju(Vn,"font-size"));return String(no/ao)};return jn.getOrThunk(Gn)}).getOr(""),NX=(Mn,Vn)=>{Mn.formatter.toggle("lineheight",{value:String(Vn)}),Mn.nodeChanged()},LX=Mn=>{const Vn=(Wn,jn)=>{Mn.formatter.toggle(Wn,jn),Mn.nodeChanged()};Mn.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":Wn=>{Vn(Wn)},"ForeColor,HiliteColor":(Wn,jn,Gn)=>{Vn(Wn,{value:Gn})},BackColor:(Wn,jn,Gn)=>{Vn("hilitecolor",{value:Gn})},FontName:(Wn,jn,Gn)=>{DX(Mn,Gn)},FontSize:(Wn,jn,Gn)=>{AG(Mn,Gn)},LineHeight:(Wn,jn,Gn)=>{NX(Mn,Gn)},Lang:(Wn,jn,Gn)=>{var no;Vn(Wn,{value:Gn.code,customValue:(no=Gn.customCode)!==null&&no!==void 0?no:null})},RemoveFormat:Wn=>{Mn.formatter.remove(Wn)},mceBlockQuote:()=>{Vn("blockquote")},FormatBlock:(Wn,jn,Gn)=>{Vn(xo(Gn)?Gn:"p")},mceToggleFormat:(Wn,jn,Gn)=>{Vn(Gn)}})},IX=Mn=>{const Vn=Wn=>Mn.formatter.match(Wn);Mn.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":Wn=>Vn(Wn),mceBlockQuote:()=>Vn("blockquote")},"state"),Mn.editorCommands.addQueryValueHandler("FontName",()=>TG(Mn)),Mn.editorCommands.addQueryValueHandler("FontSize",()=>MX(Mn)),Mn.editorCommands.addQueryValueHandler("LineHeight",()=>L8(Mn))},PG=Mn=>{LX(Mn),IX(Mn)},$G=Mn=>{Mn.editorCommands.addCommands({mceAddUndoLevel:()=>{Mn.undoManager.add()},mceEndUndoLevel:()=>{Mn.undoManager.add()},Undo:()=>{Mn.undoManager.undo()},Redo:()=>{Mn.undoManager.redo()}})},I8=Mn=>{Mn.editorCommands.addCommands({Indent:()=>{IW(Mn)},Outdent:()=>{BM(Mn)}}),Mn.editorCommands.addCommands({Outdent:()=>VP(Mn)},"state")},B8=Mn=>{const Vn=(Wn,jn,Gn)=>{const no=xo(Gn)?{href:Gn}:Gn,ao=Mn.dom.getParent(Mn.selection.getNode(),"a");Bo(no)&&xo(no.href)&&(no.href=no.href.replace(/ /g,"%20"),(!ao||!no.href)&&Mn.formatter.remove("link"),no.href&&Mn.formatter.apply("link",no,ao))};Mn.editorCommands.addCommands({unlink:()=>{if(Mn.selection.isEditable()){if(Mn.selection.isCollapsed()){const Wn=Mn.dom.getParent(Mn.selection.getStart(),"a");Wn&&Mn.dom.remove(Wn,!0);return}Mn.formatter.remove("link")}},mceInsertLink:Vn,createLink:Vn})},BX=Mn=>{Mn.editorCommands.addCommands({"InsertUnorderedList,InsertOrderedList":Vn=>{Mn.getDoc().execCommand(Vn);const Wn=Mn.dom.getParent(Mn.selection.getNode(),"ol,ul");if(Wn){const jn=Wn.parentNode;if(jn&&/^(H[1-6]|P|ADDRESS|PRE)$/.test(jn.nodeName)){const Gn=Mn.selection.getBookmark();Mn.dom.split(jn,Wn),Mn.selection.moveToBookmark(Gn)}}}})},FX=Mn=>{Mn.editorCommands.addCommands({"InsertUnorderedList,InsertOrderedList":Vn=>{const Wn=Mn.dom.getParent(Mn.selection.getNode(),"ul,ol");return Wn&&(Vn==="insertunorderedlist"&&Wn.tagName==="UL"||Vn==="insertorderedlist"&&Wn.tagName==="OL")}},"state")},HX=Mn=>{BX(Mn),FX(Mn)},RG=(Mn,Vn,Wn,jn)=>{const Gn=Mn.dom,no=po=>Gn.isBlock(po)&&po.parentElement===Wn,ao=no(Vn)?Vn:Gn.getParent(jn,no,Wn);return zo.from(ao).map(Cs.fromDom)},QX=(Mn,Vn)=>{const Wn=Mn.dom,jn=Mn.selection.getRng(),Gn=Vn?Mn.selection.getStart():Mn.selection.getEnd(),no=Vn?jn.startContainer:jn.endContainer,ao=x1(Wn,no);if(!ao||!ao.isContentEditable)return;const po=Vn?ed:fh,vo=bh(Mn);RG(Mn,Gn,ao,no).each(Ao=>{const Fo=O4(Mn,no,Ao.dom,ao,!1,vo);po(Ao,Cs.fromDom(Fo)),Mn.selection.setCursorLocation(Fo,0),Mn.dispatch("NewBlock",{newBlock:Fo}),nT(Mn,"insertParagraph")})},DG=Mn=>QX(Mn,!0),VX=Mn=>QX(Mn,!1),MG=Mn=>{Mn.editorCommands.addCommands({InsertNewBlockBefore:()=>{DG(Mn)},InsertNewBlockAfter:()=>{VX(Mn)}})},zX=Mn=>{Mn.editorCommands.addCommands({insertParagraph:()=>{m$(E6,Mn)},mceInsertNewLine:(Vn,Wn,jn)=>{R6(Mn,jn)},InsertLineBreak:(Vn,Wn,jn)=>{m$(VZ,Mn)}})},Jw=Mn=>{Mn.editorCommands.addCommands({mceSelectNodeDepth:(Vn,Wn,jn)=>{let Gn=0;Mn.dom.getParent(Mn.selection.getNode(),no=>Oa(no)&&Gn++===jn?(Mn.selection.select(no),!1):!0,Mn.getBody())},mceSelectNode:(Vn,Wn,jn)=>{Mn.selection.select(jn)},selectAll:()=>{const Vn=Mn.dom.getParent(Mn.selection.getStart(),Gf);if(Vn){const Wn=Mn.dom.createRng();Wn.selectNodeContents(Vn),Mn.selection.setRng(Wn)}}})},pN=Mn=>{Mn.editorCommands.addCommands({mceRemoveNode:(Vn,Wn,jn)=>{const Gn=jn??Mn.selection.getNode();if(Gn!==Mn.getBody()){const no=Mn.selection.getBookmark();Mn.dom.remove(Gn,!0),Mn.selection.moveToBookmark(no)}},mcePrint:()=>{Mn.getWin().print()},mceFocus:(Vn,Wn,jn)=>{AH(Mn,jn===!0)},mceToggleVisualAid:()=>{Mn.hasVisual=!Mn.hasVisual,Mn.addVisual()}})},j$=Mn=>{_X(Mn),SX(Mn),$G(Mn),Jw(Mn),kX(Mn),B8(Mn),I8(Mn),MG(Mn),zX(Mn),HX(Mn),PG(Mn),pN(Mn)},F8=["toggleview"],gN=Mn=>Zs(F8,Mn.toLowerCase());class bN{constructor(Vn){this.commands={state:{},exec:{},value:{}},this.editor=Vn}execCommand(Vn,Wn=!1,jn,Gn){const no=this.editor,ao=Vn.toLowerCase(),po=Gn==null?void 0:Gn.skip_focus;if(no.removed||(ao!=="mcefocus"&&(!/^(mceAddUndoLevel|mceEndUndoLevel)$/i.test(ao)&&!po?no.focus():pH(no)),no.dispatch("BeforeExecCommand",{command:Vn,ui:Wn,value:jn}).isDefaultPrevented()))return!1;const Ao=this.commands.exec[ao];return Yo(Ao)?(Ao(ao,Wn,jn),no.dispatch("ExecCommand",{command:Vn,ui:Wn,value:jn}),!0):!1}queryCommandState(Vn){if(!gN(Vn)&&this.editor.quirks.isHidden()||this.editor.removed)return!1;const Wn=Vn.toLowerCase(),jn=this.commands.state[Wn];return Yo(jn)?jn(Wn):!1}queryCommandValue(Vn){if(!gN(Vn)&&this.editor.quirks.isHidden()||this.editor.removed)return"";const Wn=Vn.toLowerCase(),jn=this.commands.value[Wn];return Yo(jn)?jn(Wn):""}addCommands(Vn,Wn="exec"){const jn=this.commands;Rr(Vn,(Gn,no)=>{fs(no.toLowerCase().split(","),ao=>{jn[Wn][ao]=Gn})})}addCommand(Vn,Wn,jn){const Gn=Vn.toLowerCase();this.commands.exec[Gn]=(no,ao,po)=>Wn.call(jn??this.editor,ao,po)}queryCommandSupported(Vn){const Wn=Vn.toLowerCase();return!!this.commands.exec[Wn]}addQueryStateHandler(Vn,Wn,jn){this.commands.state[Vn.toLowerCase()]=()=>Wn.call(jn??this.editor)}addQueryValueHandler(Vn,Wn,jn){this.commands.value[Vn.toLowerCase()]=()=>Wn.call(jn??this.editor)}}const eC="data-mce-contenteditable",WX=(Mn,Vn,Wn)=>{yp(Mn,Vn)&&!Wn?Vf(Mn,Vn):Wn&&Xm(Mn,Vn)},vN=(Mn,Vn,Wn)=>{try{Mn.getDoc().execCommand(Vn,!1,String(Wn))}catch{}},X$=(Mn,Vn)=>{Mn.dom.contentEditable=Vn?"true":"false"},rS=Mn=>{fs(mf(Mn,'*[contenteditable="true"]'),Vn=>{Gc(Vn,eC,"true"),X$(Vn,!1)})},UX=Mn=>{fs(mf(Mn,`*[${eC}="true"]`),Vn=>{Mu(Vn,eC),X$(Vn,!0)})},H8=Mn=>{zo.from(Mn.selection.getNode()).each(Vn=>{Vn.removeAttribute("data-mce-selected")})},ZX=Mn=>{Mn.selection.setRng(Mn.selection.getRng())},Y$=(Mn,Vn)=>{const Wn=Cs.fromDom(Mn.getBody());WX(Wn,"mce-content-readonly",Vn),Vn?(Mn.selection.controlSelection.hideResizeRect(),Mn._selectionOverrides.hideFakeCaret(),H8(Mn),Mn.readonly=!0,X$(Wn,!1),rS(Wn)):(Mn.readonly=!1,Mn.hasEditableRoot()&&X$(Wn,!0),UX(Wn),vN(Mn,"StyleWithCSS",!1),vN(Mn,"enableInlineTableEditing",!1),vN(Mn,"enableObjectResizing",!1),UN(Mn)&&Mn.focus(),ZX(Mn),Mn.nodeChanged())},tC=Mn=>Mn.readonly,Q8=Mn=>{Mn.parser.addAttributeFilter("contenteditable",Vn=>{tC(Mn)&&fs(Vn,Wn=>{Wn.attr(eC,Wn.attr("contenteditable")),Wn.attr("contenteditable","false")})}),Mn.serializer.addAttributeFilter(eC,Vn=>{tC(Mn)&&fs(Vn,Wn=>{Wn.attr("contenteditable",Wn.attr(eC))})}),Mn.serializer.addTempAttr(eC)},qX=Mn=>{Mn.serializer?Q8(Mn):Mn.on("PreInit",()=>{Q8(Mn)})},V8=Mn=>Mn.type==="click",jX=["copy"],XX=Mn=>Zs(jX,Mn.type),YX=(Mn,Vn)=>cm(Vn,"a",jn=>Vs(jn,Cs.fromDom(Mn.getBody()))).bind(jn=>Ld(jn,"href")),yN=(Mn,Vn)=>{if(V8(Vn)&&!va.metaKeyPressed(Vn)){const Wn=Cs.fromDom(Vn.target);YX(Mn,Wn).each(jn=>{if(Vn.preventDefault(),/^#/.test(jn)){const Gn=Mn.dom.select(`${jn},[name="${ld(jn,"#")}"]`);Gn.length&&Mn.selection.scrollIntoView(Gn[0],!0)}else window.open(jn,"_blank","rel=noopener noreferrer,menubar=yes,toolbar=yes,location=yes,status=yes,resizable=yes,scrollbars=yes")})}else XX(Vn)&&Mn.dispatch(Vn.type,Vn)},GX=Mn=>{Mn.on("ShowCaret",Vn=>{tC(Mn)&&Vn.preventDefault()}),Mn.on("ObjectSelected",Vn=>{tC(Mn)&&Vn.preventDefault()})},KX=Lr.makeMap("focus blur focusin focusout click dblclick mousedown mouseup mousemove mouseover beforepaste paste cut copy selectionchange mouseout mouseenter mouseleave wheel keydown keypress keyup input beforeinput contextmenu dragstart dragend dragover draggesture dragdrop drop drag submit compositionstart compositionend compositionupdate touchstart touchmove touchend touchcancel"," ");class If{static isNative(Vn){return!!KX[Vn.toLowerCase()]}constructor(Vn){this.bindings={},this.settings=Vn||{},this.scope=this.settings.scope||this,this.toggleEvent=this.settings.toggleEvent||hs}fire(Vn,Wn){return this.dispatch(Vn,Wn)}dispatch(Vn,Wn){const jn=Vn.toLowerCase(),Gn=Hv(jn,Wn??{},this.scope);this.settings.beforeFire&&this.settings.beforeFire(Gn);const no=this.bindings[jn];if(no)for(let ao=0,po=no.length;ao{this.toggleEvent(vo,!1),delete this.bindings[vo]}),this;if(ao){if(!Wn)ao.length=0;else{const po=Vr(ao,vo=>vo.func===Wn);ao=po.fail,this.bindings[no]=ao,fs(po.pass,vo=>{vo.removed=!0})}ao.length||(this.toggleEvent(Vn,!1),delete this.bindings[no])}}}else Rr(this.bindings,(jn,Gn)=>{this.toggleEvent(Gn,!1)}),this.bindings={};return this}once(Vn,Wn,jn){return this.on(Vn,Wn,jn,{once:!0})}has(Vn){Vn=Vn.toLowerCase();const Wn=this.bindings[Vn];return!(!Wn||Wn.length===0)}}const gT=Mn=>(Mn._eventDispatcher||(Mn._eventDispatcher=new If({scope:Mn,toggleEvent:(Vn,Wn)=>{If.isNative(Vn)&&Mn.toggleNativeEvent&&Mn.toggleNativeEvent(Vn,Wn)}})),Mn._eventDispatcher),ON={fire(Mn,Vn,Wn){return this.dispatch(Mn,Vn,Wn)},dispatch(Mn,Vn,Wn){const jn=this;if(jn.removed&&Mn!=="remove"&&Mn!=="detach")return Hv(Mn.toLowerCase(),Vn??{},jn);const Gn=gT(jn).dispatch(Mn,Vn);if(Wn!==!1&&jn.parent){let no=jn.parent();for(;no&&!Gn.isPropagationStopped();)no.dispatch(Mn,Gn,!1),no=no.parent?no.parent():void 0}return Gn},on(Mn,Vn,Wn){return gT(this).on(Mn,Vn,Wn)},off(Mn,Vn){return gT(this).off(Mn,Vn)},once(Mn,Vn){return gT(this).once(Mn,Vn)},hasEventListeners(Mn){return gT(this).has(Mn)}},v2=Eu.DOM;let iS;const y2=(Mn,Vn)=>{if(Vn==="selectionchange")return Mn.getDoc();if(!Mn.inline&&/^(?:mouse|touch|click|contextmenu|drop|dragover|dragend)/.test(Vn))return Mn.getDoc().documentElement;const Wn=lb(Mn);return Wn?(Mn.eventRoot||(Mn.eventRoot=v2.select(Wn)[0]),Mn.eventRoot):Mn.getBody()},JX=Mn=>!Mn.hidden&&!tC(Mn),z8=(Mn,Vn,Wn)=>{JX(Mn)?Mn.dispatch(Vn,Wn):tC(Mn)&&yN(Mn,Wn)},W8=(Mn,Vn)=>{if(Mn.delegates||(Mn.delegates={}),Mn.delegates[Vn]||Mn.removed)return;const Wn=y2(Mn,Vn);if(lb(Mn)){if(iS||(iS={},Mn.editorManager.on("removeEditor",()=>{Mn.editorManager.activeEditor||iS&&(Rr(iS,(Gn,no)=>{Mn.dom.unbind(y2(Mn,no))}),iS=null)})),iS[Vn])return;const jn=Gn=>{const no=Gn.target,ao=Mn.editorManager.get();let po=ao.length;for(;po--;){const vo=ao[po].getBody();(vo===no||v2.isChildOf(no,vo))&&z8(ao[po],Vn,Gn)}};iS[Vn]=jn,v2.bind(Wn,Vn,jn)}else{const jn=Gn=>{z8(Mn,Vn,Gn)};v2.bind(Wn,Vn,jn),Mn.delegates[Vn]=jn}},U8={...ON,bindPendingEventDelegates(){const Mn=this;Lr.each(Mn._pendingNativeEvents,Vn=>{W8(Mn,Vn)})},toggleNativeEvent(Mn,Vn){const Wn=this;Mn==="focus"||Mn==="blur"||Wn.removed||(Vn?Wn.initialized?W8(Wn,Mn):Wn._pendingNativeEvents?Wn._pendingNativeEvents.push(Mn):Wn._pendingNativeEvents=[Mn]:Wn.initialized&&Wn.delegates&&(Wn.dom.unbind(y2(Wn,Mn),Mn,Wn.delegates[Mn]),delete Wn.delegates[Mn]))},unbindAllNativeEvents(){const Mn=this,Vn=Mn.getBody(),Wn=Mn.dom;Mn.delegates&&(Rr(Mn.delegates,(jn,Gn)=>{Mn.dom.unbind(y2(Mn,Gn),Gn,jn)}),delete Mn.delegates),!Mn.inline&&Vn&&Wn&&(Vn.onload=null,Wn.unbind(Mn.getWin()),Wn.unbind(Mn.getDoc())),Wn&&(Wn.unbind(Vn),Wn.unbind(Mn.getContainer()))}},eY=Mn=>xo(Mn)?{value:Mn.split(/[ ,]/),valid:!0}:sr(Mn,xo)?{value:Mn,valid:!0}:{valid:!1,message:"The value must be a string[] or a comma/space separated string."},tY=Mn=>{const Vn=(()=>{switch(Mn){case"array":return Ko;case"boolean":return es;case"function":return Yo;case"number":return Ys;case"object":return Bo;case"string":return xo;case"string[]":return eY;case"object[]":return Wn=>sr(Wn,Bo);case"regexp":return Wn=>Do(Wn,RegExp);default:return Qs}})();return Wn=>_b(Wn,Vn,`The value must be a ${Mn}.`)},nY=Mn=>xo(Mn.processor),Z8=(Mn,Vn)=>{const Wn=Td(Vn.message)?"":`. ${Vn.message}`;return Mn+Wn},nC=Mn=>Mn.valid,_b=(Mn,Vn,Wn="")=>{const jn=Vn(Mn);return es(jn)?jn?{value:Mn,valid:!0}:{valid:!1,message:Wn}:jn},oY=(Mn,Vn,Wn)=>{if(!ls(Vn)){const jn=_b(Vn,Wn);if(nC(jn))return jn.value;console.error(Z8(`Invalid default value passed for the "${Mn}" option`,jn))}},sY=(Mn,Vn)=>{const Wn={},jn={},Gn=(Qo,qo,ds)=>{const bs=_b(qo,ds);return nC(bs)?(jn[Qo]=bs.value,!0):(console.warn(Z8(`Invalid value passed for the ${Qo} option`,bs)),!1)},no=(Qo,qo)=>{const ds=nY(qo)?tY(qo.processor):qo.processor,bs=oY(Qo,qo.default,ds);Wn[Qo]={...qo,default:bs,processor:ds},Ma(jn,Qo).orThunk(()=>Ma(Vn,Qo)).each(ys=>Gn(Qo,ys,ds))},ao=Qo=>Mr(Wn,Qo);return{register:no,isRegistered:ao,get:Qo=>Ma(jn,Qo).orThunk(()=>Ma(Wn,Qo).map(qo=>qo.default)).getOrUndefined(),set:(Qo,qo)=>{if(ao(Qo)){const ds=Wn[Qo];return ds.immutable?(console.error(`"${Qo}" is an immutable option and cannot be updated`),!1):Gn(Qo,qo,ds.processor)}else return console.warn(`"${Qo}" is not a registered option. Ensure the option has been registered before setting a value.`),!1},unset:Qo=>{const qo=ao(Qo);return qo&&delete jn[Qo],qo},isSet:Qo=>Mr(jn,Qo)}},rY=["design","readonly"],q8=(Mn,Vn,Wn,jn)=>{const Gn=Wn[Vn.get()],no=Wn[jn];try{no.activate()}catch(ao){console.error(`problem while activating editor mode ${jn}:`,ao);return}Gn.deactivate(),Gn.editorReadOnly!==no.editorReadOnly&&Y$(Mn,no.editorReadOnly),Vn.set(jn),Lx(Mn,jn)},iY=(Mn,Vn,Wn,jn)=>{if(jn!==Wn.get()){if(!Mr(Vn,jn))throw new Error(`Editor mode '${jn}' is invalid`);Mn.initialized?q8(Mn,Wn,Vn,jn):Mn.on("init",()=>q8(Mn,Wn,Vn,jn))}},aY=(Mn,Vn,Wn)=>{if(Zs(rY,Vn))throw new Error(`Cannot override default mode ${Vn}`);return{...Mn,[Vn]:{...Wn,deactivate:()=>{try{Wn.deactivate()}catch(jn){console.error(`problem while deactivating editor mode ${Vn}:`,jn)}}}}},lY=Mn=>{const Vn=od("design"),Wn=od({design:{activate:Js,deactivate:Js,editorReadOnly:!1},readonly:{activate:Js,deactivate:Js,editorReadOnly:!0}});return qX(Mn),GX(Mn),{isReadOnly:()=>tC(Mn),set:jn=>iY(Mn,Wn.get(),Vn,jn),get:()=>Vn.get(),register:(jn,Gn)=>{Wn.set(aY(Wn.get(),jn,Gn))}}},_N=Lr.each,SN=Lr.explode,NG={f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},j8=Lr.makeMap("alt,ctrl,shift,meta,access"),cY=Mn=>Mn in j8,uY=Mn=>{const Vn={},Wn=aa.os.isMacOS()||aa.os.isiOS();_N(SN(Mn.toLowerCase(),"+"),no=>{cY(no)?Vn[no]=!0:/^[0-9]{2,}$/.test(no)?Vn.keyCode=parseInt(no,10):(Vn.charCode=no.charCodeAt(0),Vn.keyCode=NG[no]||no.toUpperCase().charCodeAt(0))});const jn=[Vn.keyCode];let Gn;for(Gn in j8)Vn[Gn]?jn.push(Gn):Vn[Gn]=!1;return Vn.id=jn.join(","),Vn.access&&(Vn.alt=!0,Wn?Vn.ctrl=!0:Vn.shift=!0),Vn.meta&&(Wn?Vn.meta=!0:(Vn.ctrl=!0,Vn.meta=!1)),Vn};class X8{constructor(Vn){this.shortcuts={},this.pendingPatterns=[],this.editor=Vn;const Wn=this;Vn.on("keyup keypress keydown",jn=>{(Wn.hasModifier(jn)||Wn.isFunctionKey(jn))&&!jn.isDefaultPrevented()&&(_N(Wn.shortcuts,Gn=>{Wn.matchShortcut(jn,Gn)&&(Wn.pendingPatterns=Gn.subpatterns.slice(0),jn.type==="keydown"&&Wn.executeShortcutAction(Gn))}),Wn.matchShortcut(jn,Wn.pendingPatterns[0])&&(Wn.pendingPatterns.length===1&&jn.type==="keydown"&&Wn.executeShortcutAction(Wn.pendingPatterns[0]),Wn.pendingPatterns.shift()))})}add(Vn,Wn,jn,Gn){const no=this,ao=no.normalizeCommandFunc(jn);return _N(SN(Lr.trim(Vn)),po=>{const vo=no.createShortcut(po,Wn,ao,Gn);no.shortcuts[vo.id]=vo}),!0}remove(Vn){const Wn=this.createShortcut(Vn);return this.shortcuts[Wn.id]?(delete this.shortcuts[Wn.id],!0):!1}normalizeCommandFunc(Vn){const Wn=this,jn=Vn;return typeof jn=="string"?()=>{Wn.editor.execCommand(jn,!1,null)}:Lr.isArray(jn)?()=>{Wn.editor.execCommand(jn[0],jn[1],jn[2])}:jn}createShortcut(Vn,Wn,jn,Gn){const no=Lr.map(SN(Vn,">"),uY);return no[no.length-1]=Lr.extend(no[no.length-1],{func:jn,scope:Gn||this.editor}),Lr.extend(no[0],{desc:this.editor.translate(Wn),subpatterns:no.slice(1)})}hasModifier(Vn){return Vn.altKey||Vn.ctrlKey||Vn.metaKey}isFunctionKey(Vn){return Vn.type==="keydown"&&Vn.keyCode>=112&&Vn.keyCode<=123}matchShortcut(Vn,Wn){return!Wn||Wn.ctrl!==Vn.ctrlKey||Wn.meta!==Vn.metaKey||Wn.alt!==Vn.altKey||Wn.shift!==Vn.shiftKey?!1:Vn.keyCode===Wn.keyCode||Vn.charCode&&Vn.charCode===Wn.charCode?(Vn.preventDefault(),!0):!1}executeShortcutAction(Vn){return Vn.func?Vn.func.call(Vn.scope):null}}const dY=()=>{const Mn={},Vn={},Wn={},jn={},Gn={},no={},ao={},po={},vo=(Fo,Qo)=>(qo,ds)=>{Fo[qo.toLowerCase()]={...ds,type:Qo}},Ao=(Fo,Qo)=>jn[Fo.toLowerCase()]=Qo;return{addButton:vo(Mn,"button"),addGroupToolbarButton:vo(Mn,"grouptoolbarbutton"),addToggleButton:vo(Mn,"togglebutton"),addMenuButton:vo(Mn,"menubutton"),addSplitButton:vo(Mn,"splitbutton"),addMenuItem:vo(Vn,"menuitem"),addNestedMenuItem:vo(Vn,"nestedmenuitem"),addToggleMenuItem:vo(Vn,"togglemenuitem"),addAutocompleter:vo(Wn,"autocompleter"),addContextMenu:vo(Gn,"contextmenu"),addContextToolbar:vo(no,"contexttoolbar"),addContextForm:vo(no,"contextform"),addSidebar:vo(ao,"sidebar"),addView:vo(po,"views"),addIcon:Ao,getAll:()=>({buttons:Mn,menuItems:Vn,icons:jn,popups:Wn,contextMenus:Gn,contextToolbars:no,sidebars:ao,views:po})}},fY=()=>{const Mn=dY();return{addAutocompleter:Mn.addAutocompleter,addButton:Mn.addButton,addContextForm:Mn.addContextForm,addContextMenu:Mn.addContextMenu,addContextToolbar:Mn.addContextToolbar,addIcon:Mn.addIcon,addMenuButton:Mn.addMenuButton,addMenuItem:Mn.addMenuItem,addNestedMenuItem:Mn.addNestedMenuItem,addSidebar:Mn.addSidebar,addSplitButton:Mn.addSplitButton,addToggleButton:Mn.addToggleButton,addGroupToolbarButton:Mn.addGroupToolbarButton,addToggleMenuItem:Mn.addToggleMenuItem,addView:Mn.addView,getAll:Mn.getAll}},O2=Eu.DOM,Y8=Lr.extend,hY=Lr.each;class G${constructor(Vn,Wn,jn){this.plugins={},this.contentCSS=[],this.contentStyles=[],this.loadedCSS={},this.isNotDirty=!1,this.composing=!1,this.destroyed=!1,this.hasHiddenInput=!1,this.iframeElement=null,this.initialized=!1,this.readonly=!1,this.removed=!1,this.startContent="",this._pendingNativeEvents=[],this._skinLoaded=!1,this._editableRoot=!0,this.editorManager=jn,this.documentBaseUrl=jn.documentBaseURL,Y8(this,U8);const Gn=this;this.id=Vn,this.hidden=!1;const no=vX(jn.defaultOptions,Wn);this.options=sY(Gn,no),m1(Gn);const ao=this.options.get;ao("deprecation_warnings")&&eG(Wn,no);const po=ao("suffix");po&&(jn.suffix=po),this.suffix=jn.suffix;const vo=ao("base_url");vo&&jn._setBaseUrl(vo),this.baseUri=jn.baseURI;const Ao=Hl(Gn);Ao&&(of.ScriptLoader._setReferrerPolicy(Ao),Eu.DOM.styleSheetLoader._setReferrerPolicy(Ao));const Fo=oy(Gn);rs(Fo)&&Eu.DOM.styleSheetLoader._setContentCssCors(Fo),$h.languageLoad=ao("language_load"),$h.baseURL=jn.baseURL,this.setDirty(!1),this.documentBaseURI=new bb(ap(Gn),{base_uri:this.baseUri}),this.baseURI=this.baseUri,this.inline=ZS(Gn),this.hasVisual=nx(Gn),this.shortcuts=new X8(this),this.editorCommands=new bN(this),j$(this);const Qo=ao("cache_suffix");Qo&&(aa.cacheSuffix=Qo.replace(/^[\?\&]+/,"")),this.ui={registry:fY(),styleSheetLoader:void 0,show:Js,hide:Js,setEnabled:Js,isEnabled:Qs},this.mode=lY(Gn),jn.dispatch("SetupEditor",{editor:this});const qo=qS(Gn);Yo(qo)&&qo.call(Gn,Gn)}render(){uN(this)}focus(Vn){this.execCommand("mceFocus",!1,Vn)}hasFocus(){return L_(this)}translate(Vn){return cg.translate(Vn)}getParam(Vn,Wn,jn){const Gn=this.options;return Gn.isRegistered(Vn)||(rs(jn)?Gn.register(Vn,{processor:jn,default:Wn}):Gn.register(Vn,{processor:Qs,default:Wn})),!Gn.isSet(Vn)&&!ls(Wn)?Wn:Gn.get(Vn)}hasPlugin(Vn,Wn){return Zs(sO(this),Vn)?Wn?Hw.get(Vn)!==void 0:!0:!1}nodeChanged(Vn){this._nodeChangeDispatcher.nodeChanged(Vn)}addCommand(Vn,Wn,jn){this.editorCommands.addCommand(Vn,Wn,jn)}addQueryStateHandler(Vn,Wn,jn){this.editorCommands.addQueryStateHandler(Vn,Wn,jn)}addQueryValueHandler(Vn,Wn,jn){this.editorCommands.addQueryValueHandler(Vn,Wn,jn)}addShortcut(Vn,Wn,jn,Gn){this.shortcuts.add(Vn,Wn,jn,Gn)}execCommand(Vn,Wn,jn,Gn){return this.editorCommands.execCommand(Vn,Wn,jn,Gn)}queryCommandState(Vn){return this.editorCommands.queryCommandState(Vn)}queryCommandValue(Vn){return this.editorCommands.queryCommandValue(Vn)}queryCommandSupported(Vn){return this.editorCommands.queryCommandSupported(Vn)}show(){const Vn=this;Vn.hidden&&(Vn.hidden=!1,Vn.inline?Vn.getBody().contentEditable="true":(O2.show(Vn.getContainer()),O2.hide(Vn.id)),Vn.load(),Vn.dispatch("show"))}hide(){const Vn=this;Vn.hidden||(Vn.save(),Vn.inline?(Vn.getBody().contentEditable="false",Vn===Vn.editorManager.focusedEditor&&(Vn.editorManager.focusedEditor=null)):(O2.hide(Vn.getContainer()),O2.setStyle(Vn.id,"display",Vn.orgDisplay)),Vn.hidden=!0,Vn.dispatch("hide"))}isHidden(){return this.hidden}setProgressState(Vn,Wn){this.dispatch("ProgressState",{state:Vn,time:Wn})}load(Vn={}){const Wn=this,jn=Wn.getElement();if(Wn.removed)return"";if(jn){const Gn={...Vn,load:!0},no=$g(jn)?jn.value:jn.innerHTML,ao=Wn.setContent(no,Gn);return Gn.no_events||Wn.dispatch("LoadContent",{...Gn,element:jn}),ao}else return""}save(Vn={}){const Wn=this;let jn=Wn.getElement();if(!jn||!Wn.initialized||Wn.removed)return"";const Gn={...Vn,save:!0,element:jn};let no=Wn.getContent(Gn);const ao={...Gn,content:no};if(ao.no_events||Wn.dispatch("SaveContent",ao),ao.format==="raw"&&Wn.dispatch("RawSaveContent",ao),no=ao.content,$g(jn))jn.value=no;else{(Vn.is_removing||!Wn.inline)&&(jn.innerHTML=no);const po=O2.getParent(Wn.id,"form");po&&hY(po.elements,vo=>vo.name===Wn.id?(vo.value=no,!1):!0)}return ao.element=Gn.element=jn=null,ao.set_dirty!==!1&&Wn.setDirty(!1),no}setContent(Vn,Wn){return ZD(this,Vn,Wn)}getContent(Vn){return UI(this,Vn)}insertContent(Vn,Wn){Wn&&(Vn=Y8({content:Vn},Wn)),this.execCommand("mceInsertContent",!1,Vn)}resetContent(Vn){Vn===void 0?ZD(this,this.startContent,{format:"raw"}):ZD(this,Vn),this.undoManager.reset(),this.setDirty(!1),this.nodeChanged()}isDirty(){return!this.isNotDirty}setDirty(Vn){const Wn=!this.isNotDirty;this.isNotDirty=!Vn,Vn&&Vn!==Wn&&this.dispatch("dirty")}getContainer(){const Vn=this;return Vn.container||(Vn.container=Vn.editorContainer||O2.get(Vn.id+"_parent")),Vn.container}getContentAreaContainer(){return this.contentAreaContainer}getElement(){return this.targetElm||(this.targetElm=O2.get(this.id)),this.targetElm}getWin(){const Vn=this;if(!Vn.contentWindow){const Wn=Vn.iframeElement;Wn&&(Vn.contentWindow=Wn.contentWindow)}return Vn.contentWindow}getDoc(){const Vn=this;if(!Vn.contentDocument){const Wn=Vn.getWin();Wn&&(Vn.contentDocument=Wn.document)}return Vn.contentDocument}getBody(){var Vn,Wn;const jn=this.getDoc();return(Wn=(Vn=this.bodyElement)!==null&&Vn!==void 0?Vn:jn==null?void 0:jn.body)!==null&&Wn!==void 0?Wn:null}convertURL(Vn,Wn,jn){const Gn=this,no=Gn.options.get,ao=ix(Gn);if(Yo(ao))return ao.call(Gn,Vn,jn,!0,Wn);if(!no("convert_urls")||jn==="link"||Bo(jn)&&jn.nodeName==="LINK"||Vn.indexOf("file:")===0||Vn.length===0)return Vn;const po=new bb(Vn);return po.protocol!=="http"&&po.protocol!=="https"&&po.protocol!==""?Vn:no("relative_urls")?Gn.documentBaseURI.toRelative(Vn):(Vn=Gn.documentBaseURI.toAbsolute(Vn,no("remove_script_host")),Vn)}addVisual(Vn){yX(this,Vn)}setEditableRoot(Vn){W$(this,Vn)}hasEditableRoot(){return U$(this)}remove(){GV(this)}destroy(Vn){KV(this,Vn)}uploadImages(){return this.editorUpload.uploadImages()}_scanForImages(){return this.editorUpload.scanForImages()}}const _2=Eu.DOM,K$=Lr.each;let G8=!1,J$,Sg=[];const e3=Mn=>{const Vn=Mn.type;K$(aS.get(),Wn=>{switch(Vn){case"scroll":Wn.dispatch("ScrollWindow",Mn);break;case"resize":Wn.dispatch("ResizeWindow",Mn);break}})},K8=Mn=>{if(Mn!==G8){const Vn=Eu.DOM;Mn?(Vn.bind(window,"resize",e3),Vn.bind(window,"scroll",e3)):(Vn.unbind(window,"resize",e3),Vn.unbind(window,"scroll",e3)),G8=Mn}},J8=Mn=>{const Vn=Sg;return Sg=nr(Sg,Wn=>Mn!==Wn),aS.activeEditor===Mn&&(aS.activeEditor=Sg.length>0?Sg[0]:null),aS.focusedEditor===Mn&&(aS.focusedEditor=null),Vn.length!==Sg.length},mY=Mn=>{Mn&&Mn.initialized&&!(Mn.getContainer()||Mn.getBody()).parentNode&&(J8(Mn),Mn.unbindAllNativeEvents(),Mn.destroy(!0),Mn.removed=!0)},pY=document.compatMode!=="CSS1Compat",aS={...ON,baseURI:null,baseURL:null,defaultOptions:{},documentBaseURL:null,suffix:null,majorVersion:"6",minorVersion:"8.4",releaseDate:"2024-06-19",i18n:cg,activeEditor:null,focusedEditor:null,setup(){const Mn=this;let Vn="",Wn="",jn=bb.getDocumentBaseUrl(document.location);/^[^:]+:\/\/\/?[^\/]+\//.test(jn)&&(jn=jn.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(jn)||(jn+="/"));const Gn=window.tinymce||window.tinyMCEPreInit;if(Gn)Vn=Gn.base||Gn.baseURL,Wn=Gn.suffix;else{const no=document.getElementsByTagName("script");for(let ao=0;ao{$h.PluginManager.urls[no]=Gn})},init(Mn){const Vn=this;let Wn;const jn=Lr.makeMap("area base basefont br col frame hr img input isindex link meta param embed source wbr track colgroup option table tbody tfoot thead tr th td script noscript style textarea video audio iframe object menu"," "),Gn=(Fo,Qo)=>Fo.inline&&Qo.tagName.toLowerCase()in jn,no=Fo=>{let Qo=Fo.id;return Qo||(Qo=Ma(Fo,"name").filter(qo=>!_2.get(qo)).getOrThunk(_2.uniqueId),Fo.setAttribute("id",Qo)),Qo},ao=Fo=>{const Qo=Mn[Fo];if(Qo)return Qo.apply(Vn,[])},po=Fo=>aa.browser.isIE()||aa.browser.isEdge()?(RE("TinyMCE does not support the browser you are using. For a list of supported browsers please see: https://www.tiny.cloud/docs/tinymce/6/support/#supportedwebbrowsers"),[]):pY?(RE("Failed to initialize the editor as the document is not in standards mode. TinyMCE requires standards mode."),[]):xo(Fo.selector)?_2.select(Fo.selector):rs(Fo.target)?[Fo.target]:[];let vo=Fo=>{Wn=Fo};const Ao=()=>{let Fo=0;const Qo=[];let qo;const ds=(bs,as,ys)=>{const Ls=new G$(bs,as,Vn);Qo.push(Ls),Ls.on("init",()=>{++Fo===qo.length&&vo(Qo)}),Ls.targetElm=Ls.targetElm||ys,Ls.render()};_2.unbind(window,"ready",Ao),ao("onpageload"),qo=rd(po(Mn)),Lr.each(qo,bs=>{mY(Vn.get(bs.id))}),qo=Lr.grep(qo,bs=>!Vn.get(bs.id)),qo.length===0?vo([]):K$(qo,bs=>{Gn(Mn,bs)?RE("Could not initialize inline editor on invalid inline target element",bs):ds(no(bs),Mn,bs)})};return _2.bind(window,"ready",Ao),new Promise(Fo=>{Wn?Fo(Wn):vo=Qo=>{Fo(Qo)}})},get(Mn){return arguments.length===0?Sg.slice(0):xo(Mn)?xa(Sg,Vn=>Vn.id===Mn).getOr(null):Ys(Mn)&&Sg[Mn]?Sg[Mn]:null},add(Mn){const Vn=this,Wn=Vn.get(Mn.id);return Wn===Mn||(Wn===null&&Sg.push(Mn),K8(!0),Vn.activeEditor=Mn,Vn.dispatch("AddEditor",{editor:Mn}),J$||(J$=jn=>{const Gn=Vn.dispatch("BeforeUnload");if(Gn.returnValue)return jn.preventDefault(),jn.returnValue=Gn.returnValue,Gn.returnValue},window.addEventListener("beforeunload",J$))),Mn},createEditor(Mn,Vn){return this.add(new G$(Mn,Vn,this))},remove(Mn){const Vn=this;let Wn;if(!Mn){for(let jn=Sg.length-1;jn>=0;jn--)Vn.remove(Sg[jn]);return}if(xo(Mn)){K$(_2.select(Mn),jn=>{Wn=Vn.get(jn.id),Wn&&Vn.remove(Wn)});return}return Wn=Mn,Mo(Vn.get(Wn.id))?null:(J8(Wn)&&Vn.dispatch("RemoveEditor",{editor:Wn}),Sg.length===0&&window.removeEventListener("beforeunload",J$),Wn.remove(),K8(Sg.length>0),Wn)},execCommand(Mn,Vn,Wn){var jn;const Gn=this,no=Bo(Wn)?(jn=Wn.id)!==null&&jn!==void 0?jn:Wn.index:Wn;switch(Mn){case"mceAddEditor":{if(!Gn.get(no)){const ao=Wn.options;new G$(no,ao,Gn).render()}return!0}case"mceRemoveEditor":{const ao=Gn.get(no);return ao&&ao.remove(),!0}case"mceToggleEditor":{const ao=Gn.get(no);return ao?(ao.isHidden()?ao.show():ao.hide(),!0):(Gn.execCommand("mceAddEditor",!1,Wn),!0)}}return Gn.activeEditor?Gn.activeEditor.execCommand(Mn,Vn,Wn):!1},triggerSave:()=>{K$(Sg,Mn=>{Mn.save()})},addI18n:(Mn,Vn)=>{cg.add(Mn,Vn)},translate:Mn=>cg.translate(Mn),setActive(Mn){const Vn=this.activeEditor;this.activeEditor!==Mn&&(Vn&&Vn.dispatch("deactivate",{relatedTarget:Mn}),Mn.dispatch("activate",{relatedTarget:Vn})),this.activeEditor=Mn},_setBaseUrl(Mn){this.baseURL=new bb(this.documentBaseURL).toAbsolute(Mn.replace(/\/+$/,"")),this.baseURI=new bb(this.baseURL)}};aS.setup();const gY=(()=>{const Mn=Fb(),Vn=no=>({items:no,types:Al(no),getType:ao=>Ma(no,ao).getOrUndefined()}),Wn=no=>{Mn.set(no)},jn=()=>Mn.get().getOrUndefined(),Gn=Mn.clear;return{FakeClipboardItem:Vn,write:Wn,read:jn,clear:Gn}})(),wN=Math.min,S2=Math.max,t3=Math.round,eH=(Mn,Vn,Wn)=>{let jn=Vn.x,Gn=Vn.y;const no=Mn.w,ao=Mn.h,po=Vn.w,vo=Vn.h,Ao=(Wn||"").split("");return Ao[0]==="b"&&(Gn+=vo),Ao[1]==="r"&&(jn+=po),Ao[0]==="c"&&(Gn+=t3(vo/2)),Ao[1]==="c"&&(jn+=t3(po/2)),Ao[3]==="b"&&(Gn-=ao),Ao[4]==="r"&&(jn-=no),Ao[3]==="c"&&(Gn-=t3(ao/2)),Ao[4]==="c"&&(jn-=t3(no/2)),w2(jn,Gn,no,ao)},bY=(Mn,Vn,Wn,jn)=>{for(let Gn=0;Gn=Wn.x&&no.x+no.w<=Wn.w+Wn.x&&no.y>=Wn.y&&no.y+no.h<=Wn.h+Wn.y)return jn[Gn]}return null},vY=(Mn,Vn,Wn)=>w2(Mn.x-Vn,Mn.y-Wn,Mn.w+Vn*2,Mn.h+Wn*2),yY=(Mn,Vn)=>{const Wn=S2(Mn.x,Vn.x),jn=S2(Mn.y,Vn.y),Gn=wN(Mn.x+Mn.w,Vn.x+Vn.w),no=wN(Mn.y+Mn.h,Vn.y+Vn.h);return Gn-Wn<0||no-jn<0?null:w2(Wn,jn,Gn-Wn,no-jn)},OY=(Mn,Vn,Wn)=>{let jn=Mn.x,Gn=Mn.y,no=Mn.x+Mn.w,ao=Mn.y+Mn.h;const po=Vn.x+Vn.w,vo=Vn.y+Vn.h,Ao=S2(0,Vn.x-jn),Fo=S2(0,Vn.y-Gn),Qo=S2(0,no-po),qo=S2(0,ao-vo);return jn+=Ao,Gn+=Fo,Wn&&(no+=Ao,ao+=Fo,jn-=Qo,Gn-=qo),no-=Qo,ao-=qo,w2(jn,Gn,no-jn,ao-Gn)},w2=(Mn,Vn,Wn,jn)=>({x:Mn,y:Vn,w:Wn,h:jn}),SY={inflate:vY,relativePosition:eH,findBestRelativePosition:bY,intersect:yY,clamp:OY,create:w2,fromClientRect:Mn=>w2(Mn.left,Mn.top,Mn.width,Mn.height)},wY=(Mn,Vn,Wn=1e3)=>{let jn=!1,Gn=null;const no=Ao=>(...Fo)=>{jn||(jn=!0,Gn!==null&&(clearTimeout(Gn),Gn=null),Ao.apply(null,Fo))},ao=no(Mn),po=no(Vn);return{start:(...Ao)=>{!jn&&Gn===null&&(Gn=setTimeout(()=>po.apply(null,Ao),Wn))},resolve:ao,reject:po}},CY=(()=>{const Mn={},Vn={},Wn={};return{load:(vo,Ao)=>{const Fo=`Script at URL "${Ao}" failed to load`,Qo=`Script at URL "${Ao}" did not call \`tinymce.Resource.add('${vo}', data)\` within 1 second`;if(Mn[vo]!==void 0)return Mn[vo];{const qo=new Promise((ds,bs)=>{const as=wY(ds,bs);Vn[vo]=as.resolve,of.ScriptLoader.loadScript(Ao).then(()=>as.start(Qo),()=>as.reject(Fo))});return Mn[vo]=qo,qo}},add:(vo,Ao)=>{Vn[vo]!==void 0&&(Vn[vo](Ao),delete Vn[vo]),Mn[vo]=Promise.resolve(Ao),Wn[vo]=Ao},has:vo=>vo in Wn,get:vo=>Wn[vo],unload:vo=>{delete Mn[vo]}}})(),kY=()=>(()=>{let Mn={},Vn=[];const Wn={getItem:jn=>{const Gn=Mn[jn];return Gn||null},setItem:(jn,Gn)=>{Vn.push(jn),Mn[jn]=String(Gn)},key:jn=>Vn[jn],removeItem:jn=>{Vn=Vn.filter(Gn=>Gn===jn),delete Mn[jn]},clear:()=>{Vn=[],Mn={}},length:0};return Object.defineProperty(Wn,"length",{get:()=>Vn.length,configurable:!1,enumerable:!1}),Wn})();let bT;try{const Mn="__storage_test__";bT=window.localStorage,bT.setItem(Mn,Mn),bT.removeItem(Mn)}catch{bT=kY()}var xY=bT;const EY={geom:{Rect:SY},util:{Delay:O1,Tools:Lr,VK:va,URI:bb,EventDispatcher:If,Observable:ON,I18n:cg,LocalStorage:xY,ImageUploader:gz},dom:{EventUtils:vm,TreeWalker:mu,TextSeeker:Qb,DOMUtils:Eu,ScriptLoader:of,RangeUtils:ns,Serializer:zI,StyleSheetLoader:IO,ControlSelection:MN,BookmarkManager:fO,Selection:W_,Event:vm.Event},html:{Styles:a1,Entities:P0,Node:fp,Schema:i1,DomParser:a0,Writer:rL,Serializer:I_},Env:aa,AddOnManager:$h,Annotator:Dx,Formatter:eM,UndoManager:tM,EditorCommands:bN,WindowManager:JI,NotificationManager:XD,EditorObservable:U8,Shortcuts:X8,Editor:G$,FocusManager:FN,EditorManager:aS,DOM:Eu.DOM,ScriptLoader:of.ScriptLoader,PluginManager:Hw,ThemeManager:CO,ModelManager:yb,IconManager:AE,Resource:CY,FakeClipboard:gY,trim:Lr.trim,isArray:Lr.isArray,is:Lr.is,toArray:Lr.toArray,makeMap:Lr.makeMap,each:Lr.each,map:Lr.map,grep:Lr.grep,inArray:Lr.inArray,extend:Lr.extend,walk:Lr.walk,resolve:Lr.resolve,explode:Lr.explode,_addCacheSuffix:Lr._addCacheSuffix},CN=Lr.extend(aS,EY),BG=Mn=>{try{_n.exports=Mn}catch{}};(Mn=>{window.tinymce=Mn,window.tinyMCE=Mn})(CN),BG(CN)})()})(tinymce$1);(function(){var _n=tinymce.util.Tools.resolve("tinymce.ModelManager");const Ce=(eo,ro,fo)=>{var go;return fo(eo,ro.prototype)?!0:((go=eo.constructor)===null||go===void 0?void 0:go.name)===ro.name},ke=eo=>{const ro=typeof eo;return eo===null?"null":ro==="object"&&Array.isArray(eo)?"array":ro==="object"&&Ce(eo,String,(fo,go)=>go.isPrototypeOf(fo))?"string":ro},$n=eo=>ro=>ke(ro)===eo,Hn=eo=>ro=>typeof ro===eo,zn=eo=>ro=>eo===ro,Zn=$n("string"),qn=$n("object"),Yn=$n("array"),Jn=zn(null),to=Hn("boolean"),io=zn(void 0),uo=eo=>eo==null,mo=eo=>!uo(eo),bo=Hn("function"),Oo=Hn("number"),wo=()=>{},$o=(eo,ro)=>(...fo)=>eo(ro.apply(null,fo)),Do=(eo,ro)=>fo=>eo(ro(fo)),xo=eo=>()=>eo,Bo=eo=>eo,Vo=(eo,ro)=>eo===ro;function Ko(eo,...ro){return(...fo)=>{const go=ro.concat(fo);return eo.apply(null,go)}}const Mo=eo=>ro=>!eo(ro),es=eo=>()=>{throw new Error(eo)},ls=eo=>eo(),ps=xo(!1),rs=xo(!0);class Yo{constructor(ro,fo){this.tag=ro,this.value=fo}static some(ro){return new Yo(!0,ro)}static none(){return Yo.singletonNone}fold(ro,fo){return this.tag?fo(this.value):ro()}isSome(){return this.tag}isNone(){return!this.tag}map(ro){return this.tag?Yo.some(ro(this.value)):Yo.none()}bind(ro){return this.tag?ro(this.value):Yo.none()}exists(ro){return this.tag&&ro(this.value)}forall(ro){return!this.tag||ro(this.value)}filter(ro){return!this.tag||ro(this.value)?this:Yo.none()}getOr(ro){return this.tag?this.value:ro}or(ro){return this.tag?this:ro}getOrThunk(ro){return this.tag?this.value:ro()}orThunk(ro){return this.tag?this:ro()}getOrDie(ro){if(this.tag)return this.value;throw new Error(ro??"Called getOrDie on None")}static from(ro){return mo(ro)?Yo.some(ro):Yo.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(ro){this.tag&&ro(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Yo.singletonNone=new Yo(!1);const Ys=Array.prototype.slice,sr=Array.prototype.indexOf,Js=Array.prototype.push,ko=(eo,ro)=>sr.call(eo,ro),gs=(eo,ro)=>ko(eo,ro)>-1,xs=(eo,ro)=>{for(let fo=0,go=eo.length;fo{const fo=[];for(let go=0;go{const fo=eo.length,go=new Array(fo);for(let To=0;To{for(let fo=0,go=eo.length;fo{for(let fo=eo.length-1;fo>=0;fo--){const go=eo[fo];ro(go,fo)}},Br=(eo,ro)=>{const fo=[],go=[];for(let To=0,No=eo.length;To{const fo=[];for(let go=0,To=eo.length;go(Fs(eo,(go,To)=>{fo=ro(fo,go,To)}),fo),hs=(eo,ro,fo)=>(ws(eo,(go,To)=>{fo=ro(fo,go,To)}),fo),Qs=(eo,ro,fo)=>{for(let go=0,To=eo.length;goQs(eo,ro,ps),el=(eo,ro)=>{for(let fo=0,go=eo.length;fo{const ro=[];for(let fo=0,go=eo.length;foga(cr(eo,ro)),za=(eo,ro)=>{for(let fo=0,go=eo.length;fo{const ro=Ys.call(eo,0);return ro.reverse(),ro},Zs=(eo,ro)=>{const fo={};for(let go=0,To=eo.length;go{const fo=Ys.call(eo,0);return fo.sort(ro),fo},Us=(eo,ro)=>ro>=0&&roUs(eo,0),dr=eo=>Us(eo,eo.length-1),Vr=(eo,ro)=>{for(let fo=0;fo{const fo=nr(eo);for(let go=0,To=fo.length;goxa(eo,(fo,go)=>({k:go,v:ro(fo,go)})),xa=(eo,ro)=>{const fo={};return ra(eo,(go,To)=>{const No=ro(go,To);fo[No.k]=No.v}),fo},Nl=eo=>(ro,fo)=>{eo[fo]=ro},Zc=(eo,ro,fo,go)=>{ra(eo,(To,No)=>{(ro(To,No)?fo:go)(To,No)})},cc=(eo,ro)=>{const fo={};return Zc(eo,ro,Nl(fo),wo),fo},gc=(eo,ro)=>{const fo=[];return ra(eo,(go,To)=>{fo.push(ro(go,To))}),fo},nc=eo=>gc(eo,Bo),Ed=(eo,ro)=>Zl(eo,ro)?Yo.from(eo[ro]):Yo.none(),Zl=(eo,ro)=>Kr.call(eo,ro),Vl=(eo,ro)=>Zl(eo,ro)&&eo[ro]!==void 0&&eo[ro]!==null,Fc=eo=>{for(const ro in eo)if(Kr.call(eo,ro))return!1;return!0},qa=typeof window<"u"?window:Function("return this;")(),Ya=(eo,ro)=>{let fo=ro??qa;for(let go=0;go{const fo=eo.split(".");return Ya(fo,ro)},Yl=(eo,ro)=>kc(eo,ro),rd=(eo,ro)=>{const fo=Yl(eo,ro);if(fo==null)throw new Error(eo+" not available on this browser");return fo},Al=Object.getPrototypeOf,gd=eo=>rd("HTMLElement",eo),Rr=eo=>{const ro=kc("ownerDocument.defaultView",eo);return qn(eo)&&(gd(ro).prototype.isPrototypeOf(eo)||/^HTML\w*Element$/.test(Al(eo).constructor.name))},Pl=8,Su=9,vs=11,Es=1,Ks=3,pr=eo=>eo.dom.nodeName.toLowerCase(),ia=eo=>eo.dom.nodeType,ka=eo=>ro=>ia(ro)===eo,Ma=eo=>ia(eo)===Pl||pr(eo)==="#comment",Mr=eo=>il(eo)&&Rr(eo.dom),il=ka(Es),Na=ka(Ks),vl=ka(Su),Rc=ka(vs),Vc=eo=>ro=>il(ro)&&pr(ro)===eo,xc=(eo,ro,fo)=>{if(Zn(fo)||to(fo)||Oo(fo))eo.setAttribute(ro,fo+"");else throw console.error("Invalid call to Attribute.set. Key ",ro,":: Value ",fo,":: Element ",eo),new Error("Attribute value was not simple")},zc=(eo,ro,fo)=>{xc(eo.dom,ro,fo)},ad=(eo,ro)=>{const fo=eo.dom;ra(ro,(go,To)=>{xc(fo,To,go)})},Bh=(eo,ro)=>{ra(ro,(fo,go)=>{fo.fold(()=>{ks(eo,go)},To=>{xc(eo.dom,go,To)})})},Vu=(eo,ro)=>{const fo=eo.dom.getAttribute(ro);return fo===null?void 0:fo},Ts=(eo,ro)=>Yo.from(Vu(eo,ro)),ks=(eo,ro)=>{eo.dom.removeAttribute(ro)},ir=eo=>hs(eo.dom.attributes,(ro,fo)=>(ro[fo.name]=fo.value,ro),{}),br=(eo,ro)=>{const go=(ro||document).createElement("div");if(go.innerHTML=eo,!go.hasChildNodes()||go.childNodes.length>1){const To="HTML does not have a single root node";throw console.error(To,eo),new Error(To)}return _l(go.childNodes[0])},Aa=(eo,ro)=>{const go=(ro||document).createElement(eo);return _l(go)},Ba=(eo,ro)=>{const go=(ro||document).createTextNode(eo);return _l(go)},_l=eo=>{if(eo==null)throw new Error("Node cannot be null or undefined");return{dom:eo}},Ds={fromHtml:br,fromTag:Aa,fromText:Ba,fromDom:_l,fromPoint:(eo,ro,fo)=>Yo.from(eo.dom.elementFromPoint(ro,fo)).map(_l)},tl=(eo,ro)=>{const fo=eo.dom;if(fo.nodeType!==Es)return!1;{const go=fo;if(go.matches!==void 0)return go.matches(ro);if(go.msMatchesSelector!==void 0)return go.msMatchesSelector(ro);if(go.webkitMatchesSelector!==void 0)return go.webkitMatchesSelector(ro);if(go.mozMatchesSelector!==void 0)return go.mozMatchesSelector(ro);throw new Error("Browser lacks native selectors")}},wu=eo=>eo.nodeType!==Es&&eo.nodeType!==Su&&eo.nodeType!==vs||eo.childElementCount===0,qu=(eo,ro)=>{const fo=ro===void 0?document:ro.dom;return wu(fo)?[]:cr(fo.querySelectorAll(eo),Ds.fromDom)},Md=(eo,ro)=>{const fo=ro===void 0?document:ro.dom;return wu(fo)?Yo.none():Yo.from(fo.querySelector(eo)).map(Ds.fromDom)},bc=(eo,ro)=>eo.dom===ro.dom,nm=(eo,ro)=>{const fo=eo.dom,go=ro.dom;return fo===go?!1:fo.contains(go)},Ff=tl,Ud=eo=>Ds.fromDom(eo.dom.ownerDocument),ld=eo=>vl(eo)?eo:Ud(eo),oc=eo=>Ds.fromDom(ld(eo).dom.documentElement),Dc=eo=>Ds.fromDom(ld(eo).dom.defaultView),bd=eo=>Yo.from(eo.dom.parentNode).map(Ds.fromDom),Nd=eo=>Yo.from(eo.dom.parentElement).map(Ds.fromDom),ih=(eo,ro)=>{const fo=bo(ro)?ro:ps;let go=eo.dom;const To=[];for(;go.parentNode!==null&&go.parentNode!==void 0;){const No=go.parentNode,Zo=Ds.fromDom(No);if(To.push(Zo),fo(Zo)===!0)break;go=No}return To},om=eo=>Yo.from(eo.dom.previousSibling).map(Ds.fromDom),sm=eo=>Yo.from(eo.dom.nextSibling).map(Ds.fromDom),fc=eo=>cr(eo.dom.childNodes,Ds.fromDom),Td=(eo,ro)=>{const fo=eo.dom.childNodes;return Yo.from(fo[ro]).map(Ds.fromDom)},Jd=eo=>Td(eo,0),Em=(eo,ro)=>{bd(eo).each(go=>{go.dom.insertBefore(ro.dom,eo.dom)})},ef=(eo,ro)=>{sm(eo).fold(()=>{bd(eo).each(To=>{Qc(To,ro)})},go=>{Em(go,ro)})},Cu=(eo,ro)=>{Jd(eo).fold(()=>{Qc(eo,ro)},go=>{eo.dom.insertBefore(ro.dom,go.dom)})},Qc=(eo,ro)=>{eo.dom.appendChild(ro.dom)},Cf=(eo,ro,fo)=>{Td(eo,fo).fold(()=>{Qc(eo,ro)},go=>{Em(go,ro)})},qm=(eo,ro)=>{Em(eo,ro),Qc(ro,eo)},Oc=(eo,ro)=>{ws(ro,(fo,go)=>{const To=go===0?eo:ro[go-1];ef(To,fo)})},cd=(eo,ro)=>{ws(ro,fo=>{Qc(eo,fo)})},vd=eo=>{eo.dom.textContent="",ws(fc(eo),ro=>{ju(ro)})},ju=eo=>{const ro=eo.dom;ro.parentNode!==null&&ro.parentNode.removeChild(ro)},Xf=eo=>{const ro=fc(eo);ro.length>0&&Oc(eo,ro),ju(eo)},Sh=(eo,ro)=>Ds.fromDom(eo.dom.cloneNode(ro)),Zd=eo=>Sh(eo,!1),ah=eo=>Sh(eo,!0),lh=(eo,ro)=>{const fo=Ds.fromTag(ro),go=ir(eo);return ad(fo,go),fo},Bp=(eo,ro)=>{const fo=lh(eo,ro),go=fc(ah(eo));return cd(fo,go),fo},ch=(eo,ro)=>{const fo=lh(eo,ro);ef(eo,fo);const go=fc(eo);return cd(fo,go),ju(eo),fo},bp=["tfoot","thead","tbody","colgroup"],kf=eo=>gs(bp,eo),Fh=(eo,ro)=>({rows:eo,columns:ro}),jm=(eo,ro)=>({row:eo,column:ro}),Fp=(eo,ro,fo)=>({element:eo,rowspan:ro,colspan:fo}),Eg=(eo,ro,fo,go)=>({element:eo,rowspan:ro,colspan:fo,isNew:go}),ss=(eo,ro,fo,go,To,No)=>({element:eo,rowspan:ro,colspan:fo,row:go,column:To,isLocked:No}),As=(eo,ro,fo)=>({element:eo,cells:ro,section:fo}),Ws=(eo,ro,fo,go)=>({element:eo,cells:ro,section:fo,isNew:go}),rr=(eo,ro,fo)=>({element:eo,isNew:ro,isLocked:fo}),Fr=(eo,ro,fo,go)=>({element:eo,cells:ro,section:fo,isNew:go}),Wa=(eo,ro,fo,go)=>({startRow:eo,startCol:ro,finishRow:fo,finishCol:go}),Nc=(eo,ro,fo)=>({element:eo,colspan:ro,column:fo}),xl=(eo,ro)=>({element:eo,columns:ro}),ul=eo=>Rc(eo)&&mo(eo.dom.host),lu=bo(Element.prototype.attachShadow)&&bo(Node.prototype.getRootNode),Gl=xo(lu),Ru=lu?eo=>Ds.fromDom(eo.dom.getRootNode()):ld,xf=eo=>{const ro=Ru(eo);return ul(ro)?Yo.some(ro):Yo.none()},Hp=eo=>Ds.fromDom(eo.dom.host),aa=eo=>{if(Gl()&&mo(eo.target)){const ro=Ds.fromDom(eo.target);if(il(ro)&&Qp(ro)&&eo.composed&&eo.composedPath){const fo=eo.composedPath();if(fo)return fs(fo)}}return Yo.from(eo.target)},Qp=eo=>mo(eo.dom.shadowRoot),Bu=eo=>{const ro=Na(eo)?eo.dom.parentNode:eo.dom;if(ro==null||ro.ownerDocument===null)return!1;const fo=ro.ownerDocument;return xf(Ds.fromDom(ro)).fold(()=>fo.body.contains(ro),Do(Bu,Hp))},Uo=()=>cs(Ds.fromDom(document)),cs=eo=>{const ro=eo.dom.body;if(ro==null)throw new Error("Body is not available yet");return Ds.fromDom(ro)},_s=(eo,ro,fo)=>_r(ih(eo,fo),ro),ar=(eo,ro)=>_r(fc(eo),ro),ta=(eo,ro)=>{let fo=[];return ws(fc(eo),go=>{ro(go)&&(fo=fo.concat([go])),fo=fo.concat(ta(go,ro))}),fo},al=(eo,ro,fo)=>_s(eo,go=>tl(go,ro),fo),ya=(eo,ro)=>ar(eo,fo=>tl(fo,ro)),fu=(eo,ro)=>qu(ro,eo);var Lr=(eo,ro,fo,go,To)=>eo(fo,go)?Yo.some(fo):bo(To)&&To(fo)?Yo.none():ro(fo,go,To);const qc=(eo,ro,fo)=>{let go=eo.dom;const To=bo(fo)?fo:ps;for(;go.parentNode;){go=go.parentNode;const No=Ds.fromDom(go);if(ro(No))return Yo.some(No);if(To(No))break}return Yo.none()},Ef=(eo,ro,fo)=>Lr((To,No)=>No(To),qc,eo,ro,fo),ku=(eo,ro)=>{const fo=To=>ro(Ds.fromDom(To));return zo(eo.dom.childNodes,fo).map(Ds.fromDom)},jc=(eo,ro)=>{const fo=go=>{for(let To=0;Toqc(eo,go=>tl(go,ro),fo),El=(eo,ro)=>ku(eo,fo=>tl(fo,ro)),Hf=(eo,ro)=>Md(ro,eo),hu=(eo,ro,fo)=>Lr((To,No)=>tl(To,No),Tm,eo,ro,fo),Qf=(eo,ro,fo=Vo)=>eo.exists(go=>fo(go,ro)),cu=eo=>{const ro=[],fo=go=>{ro.push(go)};for(let go=0;goeo!=null?ro(eo):Yo.none(),ud=(eo,ro)=>eo?Yo.some(ro):Yo.none(),vp=(eo,ro,fo)=>ro===""||eo.length>=ro.length&&eo.substr(fo,fo+ro.length)===ro,vc=(eo,ro,fo=0,go)=>{const To=eo.indexOf(ro,fo);return To!==-1?io(go)?!0:To+ro.length<=go:!1},Am=(eo,ro)=>vp(eo,ro,0),Pm=(eo,ro)=>vp(eo,ro,eo.length-ro.length),Hh=(eo=>ro=>ro.replace(eo,""))(/^\s+|\s+$/g),A1=eo=>eo.length>0,ql=eo=>{const ro=parseFloat(eo);return isNaN(ro)?Yo.none():Yo.some(ro)},dd=eo=>eo.style!==void 0&&bo(eo.style.getPropertyValue),yd=(eo,ro,fo)=>{if(!Zn(fo))throw console.error("Invalid call to CSS.set. Property ",ro,":: Value ",fo,":: Element ",eo),new Error("CSS value must be a string: "+fo);dd(eo)&&eo.style.setProperty(ro,fo)},mv=(eo,ro)=>{dd(eo)&&eo.style.removeProperty(ro)},Du=(eo,ro,fo)=>{const go=eo.dom;yd(go,ro,fo)},lf=(eo,ro)=>{const fo=eo.dom;ra(ro,(go,To)=>{yd(fo,To,go)})},qd=(eo,ro)=>{const fo=eo.dom,To=window.getComputedStyle(fo).getPropertyValue(ro);return To===""&&!Bu(eo)?Eb(fo,ro):To},Eb=(eo,ro)=>dd(eo)?eo.style.getPropertyValue(ro):"",Tb=(eo,ro)=>{const fo=eo.dom,go=Eb(fo,ro);return Yo.from(go).filter(To=>To.length>0)},Qh=(eo,ro)=>{const fo=eo.dom;mv(fo,ro),Qf(Ts(eo,"style").map(Hh),"")&&ks(eo,"style")},Xg=(eo,ro)=>{const fo=eo.dom,go=ro.dom;dd(fo)&&dd(go)&&(go.style.cssText=fo.style.cssText)},Gc=(eo,ro,fo=0)=>Ts(eo,ro).map(go=>parseInt(go,10)).getOr(fo),im=(eo,ro)=>Gc(eo,ro,1),Tf=eo=>Vc("col")(eo)?Gc(eo,"span",1)>1:im(eo,"colspan")>1,Ld=eo=>im(eo,"rowspan")>1,Od=(eo,ro)=>parseInt(qd(eo,ro),10),Mu=xo(10),Vh=xo(10),zp=(eo,ro)=>Tg(eo,ro,rs),Tg=(eo,ro,fo)=>Ca(fc(eo),go=>tl(go,ro)?fo(go)?[go]:[]:Tg(go,ro,fo)),Ab=(eo,ro,fo=ps)=>{if(fo(ro))return Yo.none();if(gs(eo,pr(ro)))return Yo.some(ro);const go=To=>tl(To,"table")||fo(To);return Tm(ro,eo.join(","),go)},P1=(eo,ro)=>Ab(["td","th"],eo,ro),Yf=eo=>zp(eo,"th,td"),$1=eo=>tl(eo,"colgroup")?ya(eo,"col"):Ca(R1(eo),ro=>ya(ro,"col")),jd=(eo,ro)=>hu(eo,"table",ro),$m=eo=>zp(eo,"tr"),R1=eo=>jd(eo).fold(xo([]),ro=>ya(ro,"colgroup")),Xm=(eo,ro)=>cr(eo,fo=>{if(pr(fo)==="colgroup"){const go=cr($1(fo),To=>{const No=Gc(To,"span",1);return Fp(To,1,No)});return As(fo,go,"colgroup")}else{const go=cr(Yf(fo),To=>{const No=Gc(To,"rowspan",1),Zo=Gc(To,"colspan",1);return Fp(To,No,Zo)});return As(fo,go,ro(fo))}}),Yg=eo=>bd(eo).map(ro=>{const fo=pr(ro);return kf(fo)?fo:"tbody"}).getOr("tbody"),Vf=eo=>{const ro=$m(eo),go=[...R1(eo),...ro];return Xm(go,Yg)},Gg=(eo,ro)=>Xm(eo,()=>ro),yp=eo=>{let ro=!1,fo;return(...go)=>(ro||(ro=!0,fo=eo.apply(null,go)),fo)},p0=(eo,ro,fo,go)=>{const To=eo.isiOS()&&/ipad/i.test(fo)===!0,No=eo.isiOS()&&!To,Zo=eo.isiOS()||eo.isAndroid(),ns=Zo||go("(pointer:coarse)"),ms=To||!No&&Zo&&go("(min-device-width:768px)"),$s=No||Zo&&!ms,js=ro.isSafari()&&eo.isiOS()&&/safari/i.test(fo)===!1,Nr=!$s&&!ms&&!js;return{isiPad:xo(To),isiPhone:xo(No),isTablet:xo(ms),isPhone:xo($s),isTouch:xo(ns),isAndroid:eo.isAndroid,isiOS:eo.isiOS,isWebView:xo(js),isDesktop:xo(Nr)}},g0=(eo,ro)=>{for(let fo=0;fo{const fo=g0(eo,ro);if(!fo)return{major:0,minor:0};const go=To=>Number(ro.replace(fo,"$"+To));return Cs(go(1),go(2))},zf=(eo,ro)=>{const fo=String(ro).toLowerCase();return eo.length===0?b0():Wp(eo,fo)},b0=()=>Cs(0,0),Cs=(eo,ro)=>({major:eo,minor:ro}),Up={nu:Cs,detect:zf,unknown:b0},zh=(eo,ro)=>Vr(ro.brands,fo=>{const go=fo.brand.toLowerCase();return zo(eo,To=>{var No;return go===((No=To.brand)===null||No===void 0?void 0:No.toLowerCase())}).map(To=>({current:To.name,version:Up.nu(parseInt(fo.version,10),0)}))}),Kg=(eo,ro)=>{const fo=String(ro).toLowerCase();return zo(eo,go=>go.search(fo))},v0=(eo,ro)=>Kg(eo,ro).map(fo=>{const go=Up.detect(fo.versionRegexes,ro);return{current:fo.name,version:go}}),Jg=(eo,ro)=>Kg(eo,ro).map(fo=>{const go=Up.detect(fo.versionRegexes,ro);return{current:fo.name,version:go}}),Vs=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Dr=eo=>ro=>vc(ro,eo),Tr=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:eo=>vc(eo,"edge/")&&vc(eo,"chrome")&&vc(eo,"safari")&&vc(eo,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Vs],search:eo=>vc(eo,"chrome")&&!vc(eo,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:eo=>vc(eo,"msie")||vc(eo,"trident")},{name:"Opera",versionRegexes:[Vs,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Dr("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Dr("firefox")},{name:"Safari",versionRegexes:[Vs,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:eo=>(vc(eo,"safari")||vc(eo,"mobile/"))&&vc(eo,"applewebkit")}],Fa=[{name:"Windows",search:Dr("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:eo=>vc(eo,"iphone")||vc(eo,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Dr("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Dr("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Dr("linux"),versionRegexes:[]},{name:"Solaris",search:Dr("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Dr("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Dr("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],zl={browsers:xo(Tr),oses:xo(Fa)},_c="Edge",Wc="Chromium",Uc="IE",D1="Opera",pv="Firefox",_d="Safari",Wh=()=>y0({current:void 0,version:Up.unknown()}),y0=eo=>{const ro=eo.current,fo=eo.version,go=To=>()=>ro===To;return{current:ro,version:fo,isEdge:go(_c),isChromium:go(Wc),isIE:go(Uc),isOpera:go(D1),isFirefox:go(pv),isSafari:go(_d)}},Id={unknown:Wh,nu:y0,edge:xo(_c),chromium:xo(Wc),ie:xo(Uc),opera:xo(D1),firefox:xo(pv),safari:xo(_d)},Ku="Windows",Rm="iOS",iu="Android",am="Linux",Af="macOS",e1="Solaris",gv="FreeBSD",M1="ChromeOS",Pb=()=>Op({current:void 0,version:Up.unknown()}),Op=eo=>{const ro=eo.current,fo=eo.version,go=To=>()=>ro===To;return{current:ro,version:fo,isWindows:go(Ku),isiOS:go(Rm),isAndroid:go(iu),isMacOS:go(Af),isLinux:go(am),isSolaris:go(e1),isFreeBSD:go(gv),isChromeOS:go(M1)}},Wf={unknown:Pb,nu:Op,windows:xo(Ku),ios:xo(Rm),android:xo(iu),linux:xo(am),macos:xo(Af),solaris:xo(e1),freebsd:xo(gv),chromeos:xo(M1)},Ny={detect:(eo,ro,fo)=>{const go=zl.browsers(),To=zl.oses(),No=ro.bind(ms=>zh(go,ms)).orThunk(()=>v0(go,eo)).fold(Id.unknown,Id.nu),Zo=Jg(To,eo).fold(Wf.unknown,Wf.nu),ns=p0(Zo,No,eo,fo);return{browser:No,os:Zo,deviceType:ns}}},t1=eo=>window.matchMedia(eo).matches;let $b=yp(()=>Ny.detect(navigator.userAgent,Yo.from(navigator.userAgentData),t1));const Zp=()=>$b(),qp=(eo,ro)=>{const fo=(ns,ms)=>{if(!Oo(ms)&&!ms.match(/^[0-9]+$/))throw new Error(eo+".set accepts only positive integer values. Value was "+ms);const $s=ns.dom;dd($s)&&($s.style[eo]=ms+"px")},go=ns=>{const ms=ro(ns);if(ms<=0||ms===null){const $s=qd(ns,eo);return parseFloat($s)||0}return ms},To=go,No=(ns,ms)=>hs(ms,($s,js)=>{const Nr=qd(ns,js),la=Nr===void 0?0:parseInt(Nr,10);return isNaN(la)?$s:$s+la},0);return{set:fo,get:go,getOuter:To,aggregate:No,max:(ns,ms,$s)=>{const js=No(ns,$s);return ms>js?ms-js:0}}},Ag=(eo,ro)=>ql(eo).getOr(ro),Kc=(eo,ro,fo)=>Ag(qd(eo,ro),fo),au=(eo,ro,fo,go)=>{const To=Kc(eo,`padding-${fo}`,0),No=Kc(eo,`padding-${go}`,0),Zo=Kc(eo,`border-${fo}-width`,0),ns=Kc(eo,`border-${go}-width`,0);return ro-To-No-Zo-ns},cf=(eo,ro)=>{const fo=eo.dom,go=fo.getBoundingClientRect().width||fo.offsetWidth;return ro==="border-box"?go:au(eo,go,"left","right")},O0=eo=>Kc(eo,"height",eo.dom.offsetHeight),bv=eo=>Kc(eo,"width",eo.dom.offsetWidth),tf=eo=>cf(eo,"content-box"),lm=qp("width",eo=>eo.dom.offsetWidth),uf=eo=>lm.get(eo),cm=eo=>lm.getOuter(eo),Rb=tf,yl=bv,dh=(eo,ro,fo)=>{const go=eo.cells,To=go.slice(0,ro),No=go.slice(ro),Zo=To.concat(fo).concat(No);return df(eo,Zo)},jp=(eo,ro,fo)=>dh(eo,ro,[fo]),Sd=(eo,ro,fo)=>{const go=eo.cells;go[ro]=fo},df=(eo,ro)=>Fr(eo.element,ro,eo.section,eo.isNew),vv=(eo,ro)=>{const fo=eo.cells,go=cr(fo,ro);return Fr(eo.element,go,eo.section,eo.isNew)},ff=(eo,ro)=>eo.cells[ro],Ju=(eo,ro)=>ff(eo,ro).element,wh=eo=>eo.cells.length,fd=eo=>{const ro=Br(eo,fo=>fo.section==="colgroup");return{rows:ro.fail,cols:ro.pass}},Ym=(eo,ro,fo)=>{const go=cr(eo.cells,fo);return Fr(ro(eo.element),go,eo.section,!0)},_p="data-snooker-locked-cols",xu=eo=>Ts(eo,_p).bind(ro=>Yo.from(ro.match(/\d+/g))).map(ro=>Zs(ro,rs)),ed=eo=>{const ro=hs(fd(eo).rows,(go,To)=>(ws(To.cells,(No,Zo)=>{No.isLocked&&(go[Zo]=!0)}),go),{}),fo=gc(ro,(go,To)=>parseInt(To,10));return Sr(fo)},fh=(eo,ro)=>eo+","+ro,Gm=(eo,ro,fo)=>Yo.from(eo.access[fh(ro,fo)]),Fu=(eo,ro,fo)=>{const go=_0(eo,To=>fo(ro,To.element));return go.length>0?Yo.some(go[0]):Yo.none()},_0=(eo,ro)=>{const fo=Ca(eo.all,go=>go.cells);return _r(fo,ro)},yv=eo=>{const ro={};let fo=0;return ws(eo.cells,go=>{const To=go.colspan;Qr(To,No=>{const Zo=fo+No;ro[Zo]=Nc(go.element,To,Zo)}),fo+=To}),ro},Lc=eo=>{const ro={},fo=[],To=fs(eo).map(sa=>sa.element).bind(jd).bind(xu).getOr({});let No=0,Zo=0,ns=0;const{pass:ms,fail:$s}=Br(eo,sa=>sa.section==="colgroup");ws($s,sa=>{const xr=[];ws(sa.cells,ca=>{let Cr=0;for(;ro[fh(ns,Cr)]!==void 0;)Cr++;const Ra=Vl(To,Cr.toString()),dl=ss(ca.element,ca.rowspan,ca.colspan,ns,Cr,Ra);for(let Bl=0;Bl{const xr=yv(sa);return{colgroups:[xl(sa.element,nc(xr))],columns:xr}}).getOrThunk(()=>({colgroups:[],columns:{}}));return{grid:Fh(No,Zo),access:ro,all:fo,columns:js,colgroups:Nr}},os={fromTable:eo=>{const ro=Vf(eo);return Lc(ro)},generate:Lc,getAt:Gm,findItem:Fu,filterItems:_0,justCells:eo=>Ca(eo.all,ro=>ro.cells),justColumns:eo=>nc(eo.columns),hasColumns:eo=>nr(eo.columns).length>0,getColumnAt:(eo,ro)=>Yo.from(eo.columns[ro])},dm=(eo,ro=rs)=>{const fo=eo.grid,go=Qr(fo.columns,Bo),To=Qr(fo.rows,Bo);return cr(go,No=>n1(()=>Ca(To,$s=>os.getAt(eo,$s,No).filter(js=>js.column===No).toArray()),$s=>$s.colspan===1&&ro($s.element),()=>os.getAt(eo,0,No)))},n1=(eo,ro,fo)=>{const go=eo();return zo(go,ro).orThunk(()=>Yo.from(go[0]).orThunk(fo)).map(Zo=>Zo.element)},Ch=eo=>{const ro=eo.grid,fo=Qr(ro.rows,Bo),go=Qr(ro.columns,Bo);return cr(fo,To=>n1(()=>Ca(go,ms=>os.getAt(eo,To,ms).filter($s=>$s.row===To).fold(xo([]),$s=>[$s])),ms=>ms.rowspan===1,()=>os.getAt(eo,To,0)))},Xc=(eo,ro)=>{if(ro<0||ro>=eo.length-1)return Yo.none();const fo=eo[ro].fold(()=>{const To=Il(eo.slice(0,ro));return Vr(To,(No,Zo)=>No.map(ns=>({value:ns,delta:Zo+1})))},To=>Yo.some({value:To,delta:0})),go=eo[ro+1].fold(()=>{const To=eo.slice(ro+1);return Vr(To,(No,Zo)=>No.map(ns=>({value:ns,delta:Zo+1})))},To=>Yo.some({value:To,delta:1}));return fo.bind(To=>go.map(No=>{const Zo=No.delta+To.delta;return Math.abs(No.value-To.value)/Zo}))},Ov=(eo,ro)=>fo=>Db(fo)==="rtl"?ro:eo,Db=eo=>qd(eo,"direction")==="rtl"?"rtl":"ltr",S0=qp("height",eo=>{const ro=eo.dom;return Bu(eo)?ro.getBoundingClientRect().height:ro.offsetHeight}),Mm=eo=>S0.get(eo),Eo=eo=>S0.getOuter(eo),Io=O0,Go=(eo,ro)=>({left:eo,top:ro,translate:(go,To)=>Go(eo+go,ro+To)}),Ss=Go,Rs=eo=>{const ro=eo.getBoundingClientRect();return Ss(ro.left,ro.top)},$r=(eo,ro)=>eo!==void 0?eo:ro!==void 0?ro:0,Ea=eo=>{const ro=eo.dom.ownerDocument,fo=ro.body,go=ro.defaultView,To=ro.documentElement;if(fo===eo.dom)return Ss(fo.offsetLeft,fo.offsetTop);const No=$r(go==null?void 0:go.pageYOffset,To.scrollTop),Zo=$r(go==null?void 0:go.pageXOffset,To.scrollLeft),ns=$r(To.clientTop,fo.clientTop),ms=$r(To.clientLeft,fo.clientLeft);return ll(eo).translate(Zo-ms,No-ns)},ll=eo=>{const ro=eo.dom,go=ro.ownerDocument.body;return go===ro?Ss(go.offsetLeft,go.offsetTop):Bu(eo)?Rs(ro):Ss(0,0)},nl=(eo,ro)=>({row:eo,y:ro}),Xa=(eo,ro)=>({col:eo,x:ro}),Nu=eo=>Ea(eo).left+cm(eo),zu=eo=>Ea(eo).left,kh=(eo,ro)=>Xa(eo,zu(ro)),Sp=(eo,ro)=>Xa(eo,Nu(ro)),mf=eo=>Ea(eo).top,fS=(eo,ro)=>nl(eo,mf(ro)),mu=(eo,ro)=>nl(eo,mf(ro)+Eo(ro)),Ta=(eo,ro,fo)=>{if(fo.length===0)return[];const go=cr(fo.slice(1),(No,Zo)=>No.map(ns=>eo(Zo,ns))),To=fo[fo.length-1].map(No=>ro(fo.length-1,No));return go.concat([To])},Xp=eo=>-eo,Oa={delta:Bo,positions:eo=>Ta(fS,mu,eo),edge:mf},Yp=Ov({delta:Bo,edge:zu,positions:eo=>Ta(kh,Sp,eo)},{delta:Xp,edge:Nu,positions:eo=>Ta(Sp,kh,eo)}),Ad={delta:(eo,ro)=>Yp(ro).delta(eo,ro),positions:(eo,ro)=>Yp(ro).positions(eo,ro),edge:eo=>Yp(eo).edge(eo)},Pg={unsupportedLength:["em","ex","cap","ch","ic","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","cm","mm","Q","in","pc","pt","px"],fixed:["px","pt"],relative:["%"],empty:[""]},w0=(()=>{const eo="[0-9]+",fo="[eE]"+("[+-]?"+eo),go="\\.",To=ns=>`(?:${ns})?`,Zo=`[+-]?(?:${["Infinity",eo+go+To(eo)+To(fo),go+eo+To(fo),eo+To(fo)].join("|")})`;return new RegExp(`^(${Zo})(.*)$`)})(),nf=(eo,ro)=>xs(ro,fo=>xs(Pg[fo],go=>eo===go)),Jm=(eo,ro)=>Yo.from(w0.exec(eo)).bind(go=>{const To=Number(go[1]),No=go[2];return nf(No,ro)?Yo.some({value:To,unit:No}):Yo.none()}),_v=/(\d+(\.\d+)?)%/,Gp=/(\d+(\.\d+)?)px|em/,Sv=Vc("col"),$g=(eo,ro,fo)=>{const go=Nd(eo).getOrThunk(()=>cs(Ud(eo)));return ro(eo)/fo(go)*100},Ir=(eo,ro)=>{Du(eo,"width",ro+"px")},RO=(eo,ro)=>{Du(eo,"width",ro+"%")},Rg=(eo,ro)=>{Du(eo,"height",ro+"px")},Dg=eo=>Io(eo)+"px",Nm=(eo,ro,fo,go)=>{const To=jd(eo).map(No=>{const Zo=fo(No);return Math.floor(ro/100*Zo)}).getOr(ro);return go(eo,To),To},Lu=(eo,ro,fo,go)=>{const To=parseFloat(eo);return Pm(eo,"%")&&pr(ro)!=="table"?Nm(ro,To,fo,go):To},Ec=eo=>{const ro=Dg(eo);return ro?Lu(ro,eo,Mm,Rg):Mm(eo)},td=(eo,ro,fo)=>{const go=fo(eo),To=im(eo,ro);return go/To},Gf=(eo,ro)=>Tb(eo,ro).orThunk(()=>Ts(eo,ro).map(fo=>fo+"px")),jl=eo=>Gf(eo,"width"),L1=eo=>Gf(eo,"height"),Bd=eo=>$g(eo,uf,Rb),pu=eo=>Sv(eo)?uf(eo):yl(eo),C0=eo=>td(eo,"rowspan",Ec),Er=eo=>jl(eo).bind(fo=>Jm(fo,["fixed","relative","empty"])),Kf=(eo,ro,fo)=>{Du(eo,"width",ro+fo)},k0=eo=>uf(eo)+"px",hc=eo=>$g(eo,uf,Rb)+"%",hd=eo=>jl(eo).exists(ro=>_v.test(ro)),wv=eo=>jl(eo).exists(ro=>Gp.test(ro)),ep=eo=>jl(eo).isNone(),tp=xo(_v),fm=Vc("col"),Mb=eo=>jl(eo).getOrThunk(()=>pu(eo)+"px"),Pf=eo=>L1(eo).getOrThunk(()=>C0(eo)+"px"),Tc=eo=>cr(os.justColumns(eo),ro=>Yo.from(ro.element)),Fd=eo=>{const ro=Zp().browser,fo=ro.isChromium()||ro.isFirefox();return fm(eo)?fo:!0},Mg=(eo,ro,fo,go,To,No)=>eo.filter(go).fold(()=>No(Xc(fo,ro)),Zo=>To(Zo)),$f=(eo,ro,fo,go)=>{const To=dm(eo),No=os.hasColumns(eo)?Tc(eo):To,Zo=[Yo.some(Ad.edge(ro))].concat(cr(Ad.positions(To,ro),ms=>ms.map($s=>$s.x))),ns=Mo(Tf);return cr(No,(ms,$s)=>Mg(ms,$s,Zo,ns,js=>{if(Fd(js))return fo(js);{const Nr=Vp(To[$s],Bo);return Mg(Nr,$s,Zo,ns,la=>go(Yo.some(uf(la))),go)}},go))},Ly=eo=>eo.map(ro=>ro+"px").getOr(""),I1=(eo,ro)=>$f(eo,ro,Mb,Ly),Ng=(eo,ro,fo)=>$f(eo,ro,Bd,go=>go.fold(()=>fo.minCellWidth(),To=>To/fo.pixelWidth()*100)),hh=(eo,ro,fo)=>$f(eo,ro,pu,go=>go.getOrThunk(fo.minCellWidth)),np=(eo,ro,fo,go,To)=>{const No=Ch(eo),Zo=[Yo.some(fo.edge(ro))].concat(cr(fo.positions(No,ro),ns=>ns.map(ms=>ms.y)));return cr(No,(ns,ms)=>Mg(ns,ms,Zo,Mo(Ld),go,To))},Gs=(eo,ro,fo)=>np(eo,ro,fo,C0,go=>go.getOrThunk(Vh)),xh=(eo,ro,fo)=>np(eo,ro,fo,Pf,Ly),Lm=(eo,ro)=>()=>Bu(eo)?ro(eo):parseFloat(Tb(eo,"width").getOr("0")),mh=eo=>{const ro=Lm(eo,uf),fo=xo(0);return{width:ro,pixelWidth:ro,getWidths:(To,No)=>hh(To,eo,No),getCellDelta:fo,singleColumnWidth:xo([0]),minCellWidth:fo,setElementWidth:wo,adjustTableWidth:wo,isRelative:!0,label:"none"}},Eh=eo=>{const ro=Lm(eo,ms=>parseFloat(hc(ms))),fo=Lm(eo,uf);return{width:ro,pixelWidth:fo,getWidths:(ms,$s)=>Ng(ms,eo,$s),getCellDelta:ms=>ms/fo()*100,singleColumnWidth:(ms,$s)=>[100-ms],minCellWidth:()=>Mu()/fo()*100,setElementWidth:RO,adjustTableWidth:ms=>{const $s=ro(),js=ms/100*$s,Nr=$s+js;RO(eo,Nr)},isRelative:!0,label:"percent"}},Xd=eo=>{const ro=Lm(eo,uf);return{width:ro,pixelWidth:ro,getWidths:(Zo,ns)=>hh(Zo,eo,ns),getCellDelta:Bo,singleColumnWidth:(Zo,ns)=>[Math.max(Mu(),Zo+ns)-Zo],minCellWidth:Mu,setElementWidth:Ir,adjustTableWidth:Zo=>{const ns=ro()+Zo;Ir(eo,ns)},isRelative:!1,label:"pixel"}},Hd=(eo,ro)=>tp().exec(ro)!==null?Eh(eo):Xd(eo),Th={getTableSize:eo=>jl(eo).fold(()=>mh(eo),fo=>Hd(eo,fo)),pixelSize:Xd,percentageSize:Eh,noneSize:mh},Kp=(eo,ro,fo,go,To,No)=>({minRow:eo,minCol:ro,maxRow:fo,maxCol:go,allCells:To,selectedCells:No}),Ua=(eo,ro)=>{const fo=eo.grid.columns;let To=eo.grid.rows,No=fo,Zo=0,ns=0;const ms=[],$s=[];return ra(eo.access,js=>{if(ms.push(js),ro(js)){$s.push(js);const Nr=js.row,la=Nr+js.rowspan-1,sa=js.column,xr=sa+js.colspan-1;NrZo&&(Zo=la),sans&&(ns=xr)}}),Kp(To,No,Zo,ns,ms,$s)},_o=(eo,ro,fo)=>{const go=eo[fo].element,To=Ds.fromTag("td");Qc(To,Ds.fromTag("br")),(ro?Qc:Cu)(go,To)},Po=(eo,ro,fo,go)=>{const To=_r(eo,ns=>ns.section!=="colgroup"),No=ro.grid.columns,Zo=ro.grid.rows;for(let ns=0;nsfo.maxRow||$sfo.maxCol||(os.getAt(ro,ns,$s).filter(go).isNone()?_o(To,ms,ns):ms=!0)}},Xo=(eo,ro,fo,go)=>{ra(fo.columns,Zo=>{(Zo.columnro.maxCol)&&ju(Zo.element)});const To=_r(zp(eo,"tr"),Zo=>Zo.dom.childElementCount===0);ws(To,ju),(ro.minCol===ro.maxCol||ro.minRow===ro.maxRow)&&ws(zp(eo,"th,td"),Zo=>{ks(Zo,"rowspan"),ks(Zo,"colspan")}),ks(eo,_p),ks(eo,"data-snooker-col-series"),Th.getTableSize(eo).adjustTableWidth(go)},is=(eo,ro,fo,go)=>{if(go.minCol===0&&ro.grid.columns===go.maxCol+1)return 0;const To=hh(ro,eo,fo),No=hs(To,($s,js)=>$s+js,0),ms=hs(To.slice(go.minCol,go.maxCol+1),($s,js)=>$s+js,0)/No*fo.pixelWidth()-fo.pixelWidth();return fo.getCellDelta(ms)},Ms=(eo,ro)=>{const fo=la=>tl(la.element,ro),go=ah(eo),To=Vf(go),No=Th.getTableSize(eo),Zo=os.generate(To),ns=Ua(Zo,fo),ms="th:not("+ro+"),td:not("+ro+")",$s=Tg(go,"th,td",la=>tl(la,ms));ws($s,ju),Po(To,Zo,ns,fo);const js=os.fromTable(eo),Nr=is(eo,js,No,ns);return Xo(go,ns,Zo,Nr),go},vr=" ",Jr=((eo,ro)=>{const fo=No=>{if(!eo(No))throw new Error("Can only get "+ro+" value of a "+ro+" node");return go(No).getOr("")},go=No=>eo(No)?Yo.from(No.dom.nodeValue):Yo.none();return{get:fo,getOption:go,set:(No,Zo)=>{if(!eo(No))throw new Error("Can only set raw "+ro+" value of a "+ro+" node");No.dom.nodeValue=Zo}}})(Na,"text"),La=eo=>Jr.get(eo),Ol=eo=>Jr.getOption(eo),Xu=(eo,ro)=>Jr.set(eo,ro),Ac=eo=>pr(eo)==="img"?1:Ol(eo).fold(()=>fc(eo).length,ro=>ro.length),gu=eo=>Ol(eo).filter(ro=>ro.trim().length!==0||ro.indexOf(vr)>-1).isSome(),Uh=eo=>Mr(eo)&&Vu(eo,"contenteditable")==="false",Jf=["img","br"],hm=eo=>gu(eo)||gs(Jf,pr(eo))||Uh(eo),Jp=eo=>jc(eo,hm),wp=eo=>B1(eo,hm),B1=(eo,ro)=>{const fo=go=>{const To=fc(go);for(let No=To.length-1;No>=0;No--){const Zo=To[No];if(ro(Zo))return Yo.some(Zo);const ns=fo(Zo);if(ns.isSome())return ns}return Yo.none()};return fo(eo)},Sc={scope:["row","col"]},F1=eo=>()=>{const ro=Ds.fromTag("td",eo.dom);return Qc(ro,Ds.fromTag("br",eo.dom)),ro},x0=eo=>()=>Ds.fromTag("col",eo.dom),nd=eo=>()=>Ds.fromTag("colgroup",eo.dom),mm=eo=>()=>Ds.fromTag("tr",eo.dom),Nb=(eo,ro,fo)=>{const go=Bp(eo,ro);return ra(fo,(To,No)=>{To===null?ks(go,No):zc(go,No,To)}),go},H1=eo=>eo,Fl=(eo,ro,fo)=>Jp(eo).map(To=>{const No=fo.join(","),Zo=al(To,No,ns=>bc(ns,eo));return ha(Zo,(ns,ms)=>{const $s=Zd(ms);return Qc(ns,$s),$s},ro)}).getOr(ro),Xl=(eo,ro)=>{ra(Sc,(fo,go)=>Ts(eo,go).filter(To=>gs(fo,To)).each(To=>zc(ro,go,To)))},Qd=(eo,ro,fo)=>{const go=(Zo,ns)=>{Xg(Zo.element,ns),Qh(ns,"height"),Zo.colspan!==1&&Qh(ns,"width")},To=Zo=>{const ns=Ds.fromTag(pr(Zo.element),ro.dom),ms=fo.getOr(["strong","em","b","i","span","font","h1","h2","h3","h4","h5","h6","p","div"]),$s=ms.length>0?Fl(Zo.element,ns,ms):ns;return Qc($s,Ds.fromTag("br")),go(Zo,ns),Xl(Zo.element,ns),eo(Zo.element,ns),ns};return{col:Zo=>{const ns=Ds.fromTag(pr(Zo.element),ro.dom);return go(Zo,ns),eo(Zo.element,ns),ns},colgroup:nd(ro),row:mm(ro),cell:To,replace:Nb,colGap:x0(ro),gap:F1(ro)}},Rf=eo=>({col:x0(eo),colgroup:nd(eo),row:mm(eo),cell:F1(eo),replace:H1,colGap:x0(eo),gap:F1(eo)}),Cv=(eo,ro)=>{const go=document.createElement("div");return go.innerHTML=eo,fc(Ds.fromDom(go))},eg=eo=>cr(eo,Ds.fromDom),Wu=eo=>ro=>ro.options.get(eo),pm="100%",op=eo=>{var ro;const fo=eo.dom,go=(ro=fo.getParent(eo.selection.getStart(),fo.isBlock))!==null&&ro!==void 0?ro:eo.getBody();return Rb(Ds.fromDom(go))+"px"},Q1=(eo,ro)=>U1(eo)||!Im(eo)?ro:W1(eo)?{...ro,width:op(eo)}:{...ro,width:pm},o1=(eo,ro)=>U1(eo)||Im(eo)?ro:W1(eo)?{...ro,width:op(eo)}:{...ro,width:pm},E0=eo=>{const ro=eo.options.register;ro("table_clone_elements",{processor:"string[]"}),ro("table_use_colgroups",{processor:"boolean",default:!0}),ro("table_header_type",{processor:fo=>{const go=gs(["section","cells","sectionCells","auto"],fo);return go?{value:fo,valid:go}:{valid:!1,message:"Must be one of: section, cells, sectionCells or auto."}},default:"section"}),ro("table_sizing_mode",{processor:"string",default:"auto"}),ro("table_default_attributes",{processor:"object",default:{border:"1"}}),ro("table_default_styles",{processor:"object",default:{"border-collapse":"collapse"}}),ro("table_column_resizing",{processor:fo=>{const go=gs(["preservetable","resizetable"],fo);return go?{value:fo,valid:go}:{valid:!1,message:"Must be preservetable, or resizetable."}},default:"preservetable"}),ro("table_resize_bars",{processor:"boolean",default:!0}),ro("table_style_by_css",{processor:"boolean",default:!0}),ro("table_merge_content_on_paste",{processor:"boolean",default:!0})},Lg=eo=>Yo.from(eo.options.get("table_clone_elements")),lC=eo=>{const ro=eo.options.get("object_resizing");return gs(ro.split(","),"table")},V1=Wu("table_header_type"),By=Wu("table_column_resizing"),z1=eo=>By(eo)==="preservetable",Pd=eo=>By(eo)==="resizetable",Cp=Wu("table_sizing_mode"),tg=eo=>Cp(eo)==="relative",W1=eo=>Cp(eo)==="fixed",U1=eo=>Cp(eo)==="responsive",T0=Wu("table_resize_bars"),Im=Wu("table_style_by_css"),md=Wu("table_merge_content_on_paste"),ng=eo=>{const ro=eo.options,fo=ro.get("table_default_attributes");return ro.isSet("table_default_attributes")?fo:o1(eo,fo)},DO=eo=>{const ro=eo.options,fo=ro.get("table_default_styles");return ro.isSet("table_default_styles")?fo:Q1(eo,fo)},Fy=Wu("table_use_colgroups"),Hy=eo=>hu(eo,"[contenteditable]"),Z1=(eo,ro=!1)=>Bu(eo)?eo.dom.isContentEditable:Hy(eo).fold(xo(ro),fo=>Ah(fo)==="true"),Ah=eo=>eo.dom.contentEditable,kp=eo=>Ds.fromDom(eo.getBody()),s1=eo=>ro=>bc(ro,kp(eo)),Ig=eo=>{ks(eo,"data-mce-style");const ro=fo=>ks(fo,"data-mce-style");ws(Yf(eo),ro),ws($1(eo),ro),ws($m(eo),ro)},Zh=eo=>Ds.fromDom(eo.selection.getStart()),xp=eo=>eo.getBoundingClientRect().width,q1=eo=>eo.getBoundingClientRect().height,hS=(eo,ro)=>{const fo=eo.dom.getStyle(ro,"width")||eo.dom.getAttrib(ro,"width");return Yo.from(fo).filter(A1)},MO=eo=>/^(\d+(\.\d+)?)%$/.test(eo),kv=eo=>/^(\d+(\.\d+)?)px$/.test(eo),j1=eo=>Ef(eo,Vc("table")).exists(Z1),xv=(eo,ro)=>{const fo=ro.column,go=ro.column+ro.colspan-1,To=ro.row,No=ro.row+ro.rowspan-1;return fo<=eo.finishCol&&go>=eo.startCol&&To<=eo.finishRow&&No>=eo.startRow},NO=(eo,ro)=>ro.column>=eo.startCol&&ro.column+ro.colspan-1<=eo.finishCol&&ro.row>=eo.startRow&&ro.row+ro.rowspan-1<=eo.finishRow,Ev=(eo,ro)=>{let fo=!0;const go=Ko(NO,ro);for(let To=ro.startRow;To<=ro.finishRow;To++)for(let No=ro.startCol;No<=ro.finishCol;No++)fo=fo&&os.getAt(eo,To,No).exists(go);return fo?Yo.some(ro):Yo.none()},Tv=(eo,ro)=>Wa(Math.min(eo.row,ro.row),Math.min(eo.column,ro.column),Math.max(eo.row+eo.rowspan-1,ro.row+ro.rowspan-1),Math.max(eo.column+eo.colspan-1,ro.column+ro.colspan-1)),Wl=(eo,ro,fo)=>{const go=os.findItem(eo,ro,bc),To=os.findItem(eo,fo,bc);return go.bind(No=>To.map(Zo=>Tv(No,Zo)))},Qa=(eo,ro,fo)=>Wl(eo,ro,fo).bind(go=>Ev(eo,go)),og=(eo,ro,fo,go)=>os.findItem(eo,ro,bc).bind(To=>{const No=fo>0?To.row+To.rowspan-1:To.row,Zo=go>0?To.column+To.colspan-1:To.column;return os.getAt(eo,No+fo,Zo+go).map(ms=>ms.element)}),Av=(eo,ro,fo)=>Wl(eo,ro,fo).map(go=>{const To=os.filterItems(eo,Ko(xv,go));return cr(To,No=>No.element)}),Lb=(eo,ro)=>{const fo=(go,To)=>nm(To,go);return os.findItem(eo,ro,fo).map(go=>go.element)},T2=(eo,ro,fo)=>jd(eo).bind(go=>{const To=Qy(go);return og(To,eo,ro,fo)}),LO=(eo,ro,fo)=>{const go=Qy(eo);return Av(go,ro,fo)},Jc=(eo,ro,fo,go,To)=>{const No=Qy(eo),Zo=bc(eo,fo)?Yo.some(ro):Lb(No,ro),ns=bc(eo,To)?Yo.some(go):Lb(No,go);return Zo.bind(ms=>ns.bind($s=>Av(No,ms,$s)))},IO=(eo,ro,fo)=>{const go=Qy(eo);return Qa(go,ro,fo)},Qy=os.fromTable;var mS=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","li","table","thead","tbody","tfoot","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],wr=()=>{const eo=$s=>Ds.fromDom($s.dom.cloneNode(!1)),ro=$s=>ld($s).dom,fo=$s=>il($s)?pr($s)==="body"?!0:gs(mS,pr($s)):!1,go=$s=>il($s)?gs(["br","img","hr","input"],pr($s)):!1,To=$s=>il($s)&&Vu($s,"contenteditable")==="false",No=($s,js)=>$s.dom.compareDocumentPosition(js.dom),Zo=($s,js)=>{const Nr=ir($s);ad(js,Nr)},ns=$s=>{const js=pr($s);return gs(["script","noscript","iframe","noframes","noembed","title","style","textarea","xmp"],js)},ms=$s=>il($s)?Ts($s,"lang"):Yo.none();return{up:xo({selector:Tm,closest:hu,predicate:qc,all:ih}),down:xo({selector:fu,predicate:ta}),styles:xo({get:qd,getRaw:Tb,set:Du,remove:Qh}),attrs:xo({get:Vu,set:zc,remove:ks,copyTo:Zo}),insert:xo({before:Em,after:ef,afterAll:Oc,append:Qc,appendAll:cd,prepend:Cu,wrap:qm}),remove:xo({unwrap:Xf,remove:ju}),create:xo({nu:Ds.fromTag,clone:eo,text:Ds.fromText}),query:xo({comparePosition:No,prevSibling:om,nextSibling:sm}),property:xo({children:fc,name:pr,parent:bd,document:ro,isText:Na,isComment:Ma,isElement:il,isSpecial:ns,getLanguage:ms,getText:La,setText:Xu,isBoundary:fo,isEmptyTag:go,isNonEditable:To}),eq:bc,is:Ff}};const sg=(eo,ro,fo,go)=>{const To=fo[0],No=fo.slice(1);return go(eo,ro,To,No)},cC=(eo,ro,fo)=>fo.length>0?sg(eo,ro,fo,Pv):Yo.none(),Pv=(eo,ro,fo,go)=>{const To=ro(eo,fo);return ha(go,(No,Zo)=>{const ns=ro(eo,Zo);return A2(eo,No,ns)},To)},A2=(eo,ro,fo)=>ro.bind(go=>fo.filter(Ko(eo.eq,go))),A0=(eo,ro)=>Ko(eo.eq,ro),pS=(eo,ro,fo,go=ps)=>{const To=[ro].concat(eo.up().all(ro)),No=[fo].concat(eo.up().all(fo)),Zo=js=>el(js,go).fold(()=>js,la=>js.slice(0,la+1)),ns=Zo(To),ms=Zo(No),$s=zo(ns,js=>xs(ms,A0(eo,js)));return{firstpath:ns,secondpath:ms,shared:$s}},X1=cC,Y1=pS,rg=wr(),eu=(eo,ro)=>X1(rg,(fo,go)=>eo(go),ro),ig=(eo,ro,fo)=>Y1(rg,eo,ro,fo),$v=eo=>Tm(eo,"table"),qh=(eo,ro,fo)=>{const go=To=>No=>fo!==void 0&&fo(No)||bc(No,To);return bc(eo,ro)?Yo.some({boxes:Yo.some([eo]),start:eo,finish:ro}):$v(eo).bind(To=>$v(ro).bind(No=>{if(bc(To,No))return Yo.some({boxes:LO(To,eo,ro),start:eo,finish:ro});if(nm(To,No)){const Zo=al(ro,"td,th",go(To)),ns=Zo.length>0?Zo[Zo.length-1]:ro;return Yo.some({boxes:Jc(To,eo,To,ro,No),start:eo,finish:ns})}else if(nm(No,To)){const Zo=al(eo,"td,th",go(No)),ns=Zo.length>0?Zo[Zo.length-1]:eo;return Yo.some({boxes:Jc(No,eo,To,ro,No),start:eo,finish:ns})}else return ig(eo,ro).shared.bind(Zo=>hu(Zo,"table",fo).bind(ns=>{const ms=al(ro,"td,th",go(ns)),$s=ms.length>0?ms[ms.length-1]:ro,js=al(eo,"td,th",go(ns)),Nr=js.length>0?js[js.length-1]:eo;return Yo.some({boxes:Jc(ns,eo,To,ro,No),start:Nr,finish:$s})}))}))},Ll=(eo,ro)=>{const fo=fu(eo,ro);return fo.length>0?Yo.some(fo):Yo.none()},Rv=(eo,ro)=>zo(eo,fo=>tl(fo,ro)),G1=(eo,ro,fo)=>Hf(eo,ro).bind(go=>Hf(eo,fo).bind(To=>eu($v,[go,To]).map(No=>({first:go,last:To,table:No})))),Ib=(eo,ro)=>Tm(eo,"table").bind(fo=>Hf(fo,ro).bind(go=>qh(go,eo).bind(To=>To.boxes.map(No=>({boxes:No,start:To.start,finish:To.finish}))))),BO=(eo,ro,fo,go,To)=>Rv(eo,To).bind(No=>T2(No,ro,fo).bind(Zo=>Ib(Zo,go))),Vy=(eo,ro)=>Ll(eo,ro),uC=(eo,ro,fo)=>G1(eo,ro,fo).bind(go=>{const To=ms=>bc(eo,ms),No="thead,tfoot,tbody,table",Zo=Tm(go.first,No,To),ns=Tm(go.last,No,To);return Zo.bind(ms=>ns.bind($s=>bc(ms,$s)?IO(go.table,go.first,go.last):Yo.none()))}),Ph=Bo,r1=eo=>{const ro=(go,To)=>Ts(go,To).exists(No=>parseInt(No,10)>1),fo=go=>ro(go,"rowspan")||ro(go,"colspan");return eo.length>0&&za(eo,fo)?Yo.some(eo):Yo.none()},ET=(eo,ro,fo)=>ro.length<=1?Yo.none():uC(eo,fo.firstSelectedSelector,fo.lastSelectedSelector).map(go=>({bounds:go,cells:ro})),FO="data-mce-selected",P0="td["+FO+"],th["+FO+"]",Uf="["+FO+"]",ba="data-mce-first-selected",P2="td["+ba+"],th["+ba+"]",gS="data-mce-last-selected",K1="td["+gS+"],th["+gS+"]",gm=Uf,J1={selected:FO,selectedSelector:P0,firstSelected:ba,firstSelectedSelector:P2,lastSelected:gS,lastSelectedSelector:K1},Dv=(eo,ro,fo)=>({element:fo,mergable:ET(ro,eo,J1),unmergable:r1(eo),selection:Ph(eo)}),$0=(eo,ro,fo)=>({element:eo,clipboard:ro,generators:fo}),Mv=(eo,ro,fo,go)=>({selection:Ph(eo),clipboard:fo,generators:go}),HO=eo=>jd(eo).bind(ro=>Vy(ro,J1.firstSelectedSelector)).fold(xo(eo),ro=>ro[0]),Ep=eo=>(ro,fo)=>{const go=pr(ro),To=go==="col"||go==="colgroup"?HO(ro):ro;return hu(To,eo,fo)},ag=Ep("th,td,caption"),Nv=Ep("th,td"),Tp=eo=>eg(eo.model.table.getSelectedCells()),QO=eo=>_r(Tp(eo),ro=>tl(ro,J1.selectedSelector)),dC=eo=>jd(eo[0]).map(ro=>{const fo=Ms(ro,gm);return Ig(fo),[fo]}),Lv=(eo,ro)=>cr(ro,fo=>eo.selection.serializer.serialize(fo.dom,{})).join(""),i1=eo=>cr(eo,ro=>ro.dom.innerText).join(""),fC=(eo,ro)=>{eo.on("BeforeGetContent",fo=>{const go=To=>{fo.preventDefault(),dC(To).each(No=>{fo.content=fo.format==="text"?i1(No):Lv(eo,No)})};if(fo.selection===!0){const To=QO(eo);To.length>=1&&go(To)}}),eo.on("BeforeSetContent",fo=>{if(fo.selection===!0&&fo.paste===!0){const go=Tp(eo);fs(go).each(To=>{jd(To).each(No=>{const Zo=_r(Cv(fo.content),ms=>pr(ms)!=="meta"),ns=Vc("table");if(md(eo)&&Zo.length===1&&ns(Zo[0])){fo.preventDefault();const ms=Ds.fromDom(eo.getDoc()),$s=Rf(ms),js=$0(To,Zo[0],$s);ro.pasteCells(No,js).each(()=>{eo.focus()})}})})}})},Iv=(eo,ro)=>({element:eo,offset:ro}),eb=(eo,ro,fo)=>eo.property().isText(ro)&&eo.property().getText(ro).trim().length===0||eo.property().isComment(ro)?fo(ro).bind(go=>eb(eo,go,fo).orThunk(()=>Yo.some(go))):Yo.none(),Ap=(eo,ro)=>eo.property().isText(ro)?eo.property().getText(ro).length:eo.property().children(ro).length,ph=(eo,ro)=>{const fo=eb(eo,ro,eo.query().prevSibling).getOr(ro);if(eo.property().isText(fo))return Iv(fo,Ap(eo,fo));const go=eo.property().children(fo);return go.length>0?ph(eo,go[go.length-1]):Iv(fo,Ap(eo,fo))},bS=ph,vS=wr(),yS=eo=>bS(vS,eo),Bv=(eo,ro)=>{Tf(eo)||Er(eo).each(go=>{const To=go.value/2;Kf(eo,To,go.unit),Kf(ro,To,go.unit)})},bm=eo=>cr(eo,xo(0)),Bm=(eo,ro,fo,go,To)=>To(eo.slice(0,ro)).concat(go).concat(To(eo.slice(fo))),a1=eo=>(ro,fo,go,To)=>{if(eo(go)){const No=Math.max(To,ro[fo]-Math.abs(go)),Zo=Math.abs(No-ro[fo]);return go>=0?Zo:-Zo}else return go},VO=a1(eo=>eo<0),hC=a1(rs),mC=()=>{const eo=(ns,ms,$s,js,Nr)=>{const la=VO(ns,ms,js,Nr);return Bm(ns,ms,$s+1,[la,0],bm)},ro=(ns,ms,$s,js)=>{const Nr=(100+$s)/100,la=Math.max(js,(ns[ms]+$s)/Nr);return cr(ns,(sa,xr)=>(xr===ms?la:sa/Nr)-sa)},fo=(ns,ms,$s,js,Nr,la)=>la?ro(ns,ms,js,Nr):eo(ns,ms,$s,js,Nr);return{resizeTable:(ns,ms)=>ns(ms),clampTableDelta:VO,calcLeftEdgeDeltas:fo,calcMiddleDeltas:(ns,ms,$s,js,Nr,la,sa)=>fo(ns,$s,js,Nr,la,sa),calcRightEdgeDeltas:(ns,ms,$s,js,Nr,la)=>{if(la)return ro(ns,$s,js,Nr);{const sa=VO(ns,$s,js,Nr);return bm(ns.slice(0,$s)).concat([sa])}},calcRedestributedWidths:(ns,ms,$s,js)=>{if(js){const la=(ms+$s)/ms,sa=cr(ns,xr=>xr/la);return{delta:la*100-100,newSizes:sa}}else return{delta:$s,newSizes:ns}}}},OS=()=>{const eo=(Zo,ns,ms,$s,js)=>{const Nr=$s>=0?ms:ns,la=hC(Zo,Nr,$s,js);return Bm(Zo,ns,ms+1,[la,-la],bm)};return{resizeTable:(Zo,ns,ms)=>{ms&&Zo(ns)},clampTableDelta:(Zo,ns,ms,$s,js)=>{if(js){if(ms>=0)return ms;{const Nr=hs(Zo,(la,sa)=>la+sa-$s,0);return Math.max(-Nr,ms)}}else return VO(Zo,ns,ms,$s)},calcLeftEdgeDeltas:eo,calcMiddleDeltas:(Zo,ns,ms,$s,js,Nr)=>eo(Zo,ms,$s,js,Nr),calcRightEdgeDeltas:(Zo,ns,ms,$s,js,Nr)=>{if(Nr)return bm(Zo);{const la=$s/Zo.length;return cr(Zo,xo(la))}},calcRedestributedWidths:(Zo,ns,ms,$s)=>({delta:0,newSizes:Zo})}},Fv=eo=>os.fromTable(eo).grid,Hv=Vc("th"),zO=eo=>za(eo,ro=>Hv(ro.element)),$2=(eo,ro)=>eo&&ro?"sectionCells":eo?"section":"cells",WO=eo=>{const ro=eo.section==="thead",fo=Qf(Qv(eo.cells),"th");return eo.section==="tfoot"?{type:"footer"}:ro||fo?{type:"header",subType:$2(ro,fo)}:{type:"body"}},Qv=eo=>{const ro=_r(eo,fo=>Hv(fo.element));return ro.length===0?Yo.some("td"):ro.length===eo.length?Yo.some("th"):Yo.none()},R2=eo=>{const ro=cr(eo,To=>WO(To).type),fo=gs(ro,"header"),go=gs(ro,"footer");if(!fo&&!go)return Yo.some("body");{const To=gs(ro,"body");return fo&&!To&&!go?Yo.some("header"):!fo&&!To&&go?Yo.some("footer"):Yo.none()}},zy=eo=>Vr(eo.all,ro=>{const fo=WO(ro);return fo.type==="header"?Yo.from(fo.subType):Yo.none()}),_S=(eo,ro,fo)=>rr(fo(eo.element,ro),!0,eo.isLocked),vm=(eo,ro)=>eo.section!==ro?Fr(eo.element,eo.cells,ro,eo.isNew):eo,Wy=()=>({transformRow:vm,transformCell:(eo,ro,fo)=>{const go=fo(eo.element,ro),To=pr(go)!=="td"?ch(go,"td"):go;return rr(To,eo.isNew,eo.isLocked)}}),SS=()=>({transformRow:vm,transformCell:_S}),UO=()=>({transformRow:(eo,ro)=>vm(eo,ro==="thead"?"tbody":ro),transformCell:_S}),tb={getTableSectionType:(eo,ro)=>{const fo=os.fromTable(eo);switch(zy(fo).getOr(ro)){case"section":return Wy();case"sectionCells":return SS();case"cells":return UO()}},section:Wy,sectionCells:SS,cells:UO,fallback:()=>({transformRow:Bo,transformCell:_S})},l1=(eo,ro,fo,go)=>{fo===go?ks(eo,ro):zc(eo,ro,fo)},wS=(eo,ro,fo)=>{dr(ya(eo,ro)).fold(()=>Cu(eo,fo),go=>ef(go,fo))},Vv=(eo,ro)=>{const fo=El(eo,ro).getOrThunk(()=>{const go=Ds.fromTag(ro,Ud(eo).dom);return ro==="thead"?wS(eo,"caption,colgroup",go):ro==="colgroup"?wS(eo,"caption",go):Qc(eo,go),go});return vd(fo),fo},qO=(eo,ro)=>{const fo=[],go=[],To=sa=>cr(sa,xr=>{xr.isNew&&fo.push(xr.element);const ca=xr.element;return vd(ca),ws(xr.cells,Cr=>{Cr.isNew&&go.push(Cr.element),l1(Cr.element,"colspan",Cr.colspan,1),l1(Cr.element,"rowspan",Cr.rowspan,1),Qc(ca,Cr.element)}),ca}),No=sa=>Ca(sa,xr=>cr(xr.cells,ca=>(l1(ca.element,"span",ca.colspan,1),ca.element))),Zo=(sa,xr)=>{const ca=Vv(eo,xr),Ra=(xr==="colgroup"?No:To)(sa);cd(ca,Ra)},ns=sa=>{El(eo,sa).each(ju)},ms=(sa,xr)=>{sa.length>0?Zo(sa,xr):ns(xr)},$s=[],js=[],Nr=[],la=[];return ws(ro,sa=>{switch(sa.section){case"thead":$s.push(sa);break;case"tbody":js.push(sa);break;case"tfoot":Nr.push(sa);break;case"colgroup":la.push(sa);break}}),ms(la,"colgroup"),ms($s,"thead"),ms(js,"tbody"),ms(Nr,"tfoot"),{newRows:fo,newCells:go}},pC=eo=>cr(eo,ro=>{const fo=Zd(ro.element);return ws(ro.cells,go=>{const To=ah(go.element);l1(To,"colspan",go.colspan,1),l1(To,"rowspan",go.rowspan,1),Qc(fo,To)}),fo}),Eu=(eo,ro)=>cr(eo,fo=>ff(fo,ro)),lg=(eo,ro)=>eo[ro],$d=(eo,ro)=>{if(eo.length===0)return 0;const fo=eo[0];return el(eo,To=>!ro(fo.element,To.element)).getOr(eo.length)},gC=(eo,ro,fo,go)=>{const To=lg(eo,ro),No=To.section==="colgroup",Zo=$d(To.cells.slice(fo),go),ns=No?1:$d(Eu(eo.slice(ro),fo),go);return{colspan:Zo,rowspan:ns}},Yu=(eo,ro)=>{const fo=cr(eo,To=>cr(To.cells,ps)),go=(To,No,Zo,ns)=>{for(let ms=To;ms{const Zo=Ca(To.cells,(ns,ms)=>{if(fo[No][ms]===!1){const $s=gC(eo,No,ms,ro);return go(No,ms,$s.rowspan,$s.colspan),[Eg(ns.element,$s.rowspan,$s.colspan,ns.isNew)]}else return[]});return Ws(To.element,Zo,To.section,To.isNew)})},R0=(eo,ro,fo)=>{const go=[];ws(eo.colgroups,To=>{const No=[];for(let Zo=0;Zorr(ms.element,fo,!1)).getOrThunk(()=>rr(ro.colGap(),!0,!1));No.push(ns)}go.push(Fr(To.element,No,"colgroup",fo))});for(let To=0;Torr(js.element,fo,js.isLocked)).getOrThunk(()=>rr(ro.gap(),!0,!1));No.push($s)}const Zo=eo.all[To],ns=Fr(Zo.element,No,Zo.section,fo);go.push(ns)}return go},of=(eo,ro)=>R0(eo,ro,!1),od=eo=>Yu(eo,bc),sp=(eo,ro)=>Vr(eo.all,fo=>zo(fo.cells,go=>bc(ro,go.element))),CS=(eo,ro,fo)=>{const go=cr(ro.selection,No=>P1(No).bind(Zo=>sp(eo,Zo)).filter(fo)),To=cu(go);return ud(To.length>0,To)},Df=(eo,ro,fo,go,To)=>(No,Zo,ns,ms)=>{const $s=os.fromTable(No),js=Yo.from(ms==null?void 0:ms.section).getOrThunk(tb.fallback);return ro($s,Zo).map(la=>{const sa=of($s,ns),xr=eo(sa,la,bc,To(ns),js),ca=ed(xr.grid),Cr=od(xr.grid);return{info:la,grid:Cr,cursor:xr.cursor,lockedColumns:ca}}).bind(la=>{const sa=qO(No,la.grid),xr=Yo.from(ms==null?void 0:ms.sizing).getOrThunk(()=>Th.getTableSize(No)),ca=Yo.from(ms==null?void 0:ms.resize).getOrThunk(OS);return fo(No,la.grid,la.info,{sizing:xr,resize:ca,section:js}),go(No),ks(No,_p),la.lockedColumns.length>0&&zc(No,_p,la.lockedColumns.join(",")),Yo.some({cursor:la.cursor,newRows:sa.newRows,newCells:sa.newCells})})},Uy=(eo,ro)=>P1(ro.element).bind(fo=>sp(eo,fo).map(go=>({...go,generators:ro.generators,clipboard:ro.clipboard}))),zv=(eo,ro)=>CS(eo,ro,rs).map(fo=>({cells:fo,generators:ro.generators,clipboard:ro.clipboard})),c1=(eo,ro)=>ro.mergable,Wv=(eo,ro)=>ro.unmergable,Bb=(eo,ro)=>CS(eo,ro,rs),nb=(eo,ro)=>CS(eo,ro,fo=>!fo.isLocked),D2=(eo,ro)=>sp(eo,ro).exists(fo=>!fo.isLocked),bC=(eo,ro)=>za(ro,fo=>D2(eo,fo)),AT=(eo,ro)=>c1(eo,ro).filter(fo=>bC(eo,fo.cells)),PT=(eo,ro)=>Wv(eo,ro).filter(fo=>bC(eo,fo)),cg=(eo,ro,fo,go)=>{const To=fd(eo).rows;if(To.length===0)return eo;for(let No=ro.startRow;No<=ro.finishRow;No++)for(let Zo=ro.startCol;Zo<=ro.finishCol;Zo++){const ns=To[No],ms=ff(ns,Zo).isLocked;Sd(ns,Zo,rr(go(),!1,ms))}return eo},$h=(eo,ro,fo,go)=>{const To=fd(eo).rows;let No=!0;for(let Zo=0;Zohs(eo,(fo,go)=>xs(fo,To=>ro(To.element,go.element))?fo:fo.concat([go]),[]),N2=(eo,ro,fo,go)=>(ro>0&&ro{const No=To.cells[ro-1];let Zo=0;const ns=go();for(;To.cells.length>ro+Zo&&fo(No.element,To.cells[ro+Zo].element);)Sd(To,ro+Zo,rr(ns,!0,To.cells[ro+Zo].isLocked)),Zo++}),eo),Fb=(eo,ro,fo,go)=>{const To=fd(eo).rows;if(ro>0&&ro{let ms=Yo.none();for(let $s=ro;$s{Sd(Nr,js,rr(xr,!0,la.isLocked))}))}})}return eo},Zy=eo=>{const ro=No=>No(eo),fo=xo(eo),go=()=>To,To={tag:!0,inner:eo,fold:(No,Zo)=>Zo(eo),isValue:rs,isError:ps,map:No=>u1.value(No(eo)),mapError:go,bind:ro,exists:ro,forall:ro,getOr:fo,or:go,getOrThunk:fo,orThunk:go,getOrDie:fo,each:No=>{No(eo)},toOptional:()=>Yo.some(eo)};return To},jO=eo=>{const ro=()=>fo,fo={tag:!1,inner:eo,fold:(go,To)=>go(eo),isValue:ps,isError:rs,map:ro,mapError:go=>u1.error(go(eo)),bind:ro,exists:ps,forall:rs,getOr:Bo,or:Bo,getOrThunk:ls,orThunk:ls,getOrDie:es(String(eo)),each:wo,toOptional:Yo.none};return fo},u1={value:Zy,error:jO,fromOption:(eo,ro)=>eo.fold(()=>jO(ro),Zy)},Uv=(eo,ro,fo)=>{if(eo.row>=ro.length||eo.column>wh(ro[0]))return u1.error("invalid start address out of table bounds, row: "+eo.row+", column: "+eo.column);const go=ro.slice(eo.row),To=go[0].cells.slice(eo.column),No=wh(fo[0]),Zo=fo.length;return u1.value({rowDelta:go.length-Zo,colDelta:To.length-No})},Hb=(eo,ro)=>{const fo=wh(eo[0]),go=wh(ro[0]);return{rowDelta:0,colDelta:fo-go}},D0=(eo,ro)=>{const fo=eo.length,go=ro.length;return{rowDelta:fo-go,colDelta:0}},M0=(eo,ro,fo,go)=>{const To=ro.section==="colgroup"?fo.col:fo.cell;return Qr(eo,No=>rr(To(),!0,go(No)))},vC=(eo,ro,fo,go)=>{const To=eo[eo.length-1];return eo.concat(Qr(ro,()=>{const No=To.section==="colgroup"?fo.colgroup:fo.row,Zo=Ym(To,No,Bo),ns=M0(Zo.cells.length,Zo,fo,ms=>Zl(go,ms.toString()));return df(Zo,ns)}))},wd=(eo,ro,fo,go)=>cr(eo,To=>{const No=M0(ro,To,fo,ps);return dh(To,go,No)}),yC=(eo,ro,fo)=>cr(eo,go=>hs(fo,(To,No)=>{const Zo=M0(1,go,ro,rs)[0];return jp(To,No,Zo)},go)),Zv=(eo,ro,fo)=>{const go=ro.colDelta<0?wd:Bo,To=ro.rowDelta<0?vC:Bo,No=ed(eo),Zo=wh(eo[0]),ns=xs(No,js=>js===Zo-1),ms=go(eo,Math.abs(ro.colDelta),fo,ns?Zo-1:Zo),$s=ed(ms);return To(ms,Math.abs(ro.rowDelta),fo,Zs($s,rs))},OC=(eo,ro,fo,go)=>{const To=ff(eo[ro],fo),No=Ko(go,To.element),Zo=eo[ro];return eo.length>1&&wh(Zo)>1&&(fo>0&&No(Ju(Zo,fo-1))||fo0&&No(Ju(eo[ro-1],fo))||ro{const Zo=eo.row,ns=eo.column,ms=fo.length,$s=wh(fo[0]),js=Zo+ms,Nr=ns+$s+No.length,la=Zs(No,rs);for(let sa=Zo;sa{const go=wh(ro[0]),To=fd(ro).cols.length+eo.row,No=Qr(go-eo.column,ns=>ns+eo.column),Zo=zo(No,ns=>za(fo,ms=>ms!==ns)).getOr(go-1);return{row:To,column:Zo}},Fm=(eo,ro,fo)=>_r(fo,go=>go>=eo.column&&go<=wh(ro[0])+eo.column),_C=(eo,ro,fo,go,To)=>{const No=ed(ro),Zo=gh(eo,ro,No),ns=fd(fo).rows,ms=Fm(Zo,ns,No);return Uv(Zo,ro,ns).map(js=>{const Nr={...js,colDelta:js.colDelta-ms.length},la=Zv(ro,Nr,go),sa=ed(la),xr=Fm(Zo,ns,sa);return YO(Zo,la,ns,go,To,xr)})},N0=(eo,ro,fo,go,To)=>{N2(ro,eo,To,go.cell);const No=D0(fo,ro),Zo=Zv(fo,No,go),ns=D0(ro,Zo),ms=Zv(ro,ns,go);return cr(ms,($s,js)=>dh($s,eo,Zo[js].cells))},L0=(eo,ro,fo,go,To)=>{Fb(ro,eo,To,go.cell);const No=ed(ro),Zo=Hb(ro,fo),ns={...Zo,colDelta:Zo.colDelta-No.length},ms=Zv(ro,ns,go),{cols:$s,rows:js}=fd(ms),Nr=ed(ms),la=Hb(fo,ro),sa={...la,colDelta:la.colDelta+Nr.length},xr=yC(fo,go,Nr),ca=Zv(xr,sa,go);return[...$s,...js.slice(0,eo),...ca,...js.slice(eo,js.length)]},L2=(eo,ro,fo,go)=>Ym(eo,To=>go(To,fo),ro),SC=(eo,ro,fo,go,To)=>{const{rows:No,cols:Zo}=fd(eo),ns=No.slice(0,ro),ms=No.slice(ro),$s=L2(No[fo],(js,Nr)=>ro>0&&ro{if(fo==="colgroup"||!go){const ns=ff(eo,To);return rr(Zo(ns.element,No),!0,!1)}else return ff(eo,ro)},Hm=(eo,ro,fo,go,To)=>cr(eo,No=>{const Zo=ro>0&&roCa(eo,fo=>{const go=fo.cells,To=ha(ro,(No,Zo)=>Zo>=0&&Zo0?[Fr(fo.element,To,fo.section,fo.isNew)]:[]}),Rd=(eo,ro,fo)=>{const{rows:go,cols:To}=fd(eo);return[...To,...go.slice(0,ro),...go.slice(fo+1)]},Bg=(eo,ro,fo,go)=>Ju(eo[ro],fo)!==void 0&&ro>0&&go(Ju(eo[ro-1],fo),Ju(eo[ro],fo)),qv=(eo,ro,fo)=>ro>0&&fo(Ju(eo,ro-1),Ju(eo,ro)),Qb=(eo,ro,fo,go)=>Bg(eo,ro,fo,go)||qv(eo[ro],fo,go),I0=(eo,ro)=>za(ro,Bo)&&zO(eo.cells)?rs:(go,To,No)=>!(pr(go.element)==="th"&&ro[No]),B0=(eo,ro)=>za(ro,Bo)&&zO(eo)?rs:(go,To,No)=>!(pr(go.element)==="th"&&ro[To]),ob=(eo,ro,fo,go)=>{const To=Zo=>Zo==="row"?Ld(ro):Tf(ro),No=Zo=>To(Zo)?`${Zo}group`:Zo;return eo?Hv(ro)?No(fo):null:go&&Hv(ro)?No(fo==="row"?"col":"row"):null},wC=(eo,ro)=>(fo,go,To)=>Yo.some(ob(eo,fo.element,"col",ro[To])),F0=(eo,ro)=>(fo,go)=>Yo.some(ob(eo,fo.element,"row",ro[go])),Vb=(eo,ro,fo)=>rr(fo(eo.element,ro),!0,eo.isLocked),zb=(eo,ro,fo,go,To,No,Zo)=>{const ns=ms=>xs(ro,$s=>fo(ms.element,$s.element));return cr(eo,(ms,$s)=>vv(ms,(js,Nr)=>{if(ns(js)){const la=Zo(js,$s,Nr)?To(js,fo,go):js;return No(la,$s,Nr).each(sa=>{Bh(la.element,{scope:Yo.from(sa)})}),la}else return js}))},xS=(eo,ro,fo)=>Ca(eo,(go,To)=>Qb(eo,To,ro,fo)?[]:[ff(go,ro)]),I2=(eo,ro,fo)=>{const go=eo[ro];return Ca(go.cells,(To,No)=>Qb(eo,ro,No,fo)?[]:[To])},ES=(eo,ro,fo,go,To)=>{const No=fd(eo).rows,Zo=Ca(ro,js=>xS(No,js,go)),ns=cr(No,js=>zO(js.cells)),ms=B0(Zo,ns),$s=F0(fo,ns);return zb(eo,Zo,go,To,Vb,$s,ms)},B2=(eo,ro,fo,go,To,No,Zo)=>{const{cols:ns,rows:ms}=fd(eo),$s=ms[ro[0]],js=Ca(ro,Cr=>I2(ms,Cr,To)),Nr=cr($s.cells,(Cr,Ra)=>zO(xS(ms,Ra,To))),la=[...ms];ws(ro,Cr=>{la[Cr]=Zo.transformRow(ms[Cr],fo)});const sa=[...ns,...la],xr=I0($s,Nr),ca=wC(go,Nr);return zb(sa,js,To,No,Zo.transformCell,ca,xr)},KO=(eo,ro,fo,go)=>{const To=fd(eo).rows,No=cr(ro,Zo=>ff(To[Zo.row],Zo.column));return zb(eo,No,fo,go,Vb,Yo.none,rs)},Qm={generate:eo=>{if(!Yn(eo))throw new Error("cases must be an array");if(eo.length===0)throw new Error("there must be at least one case");const ro=[],fo={};return ws(eo,(go,To)=>{const No=nr(go);if(No.length!==1)throw new Error("one and only one name per case");const Zo=No[0],ns=go[Zo];if(fo[Zo]!==void 0)throw new Error("duplicate key detected:"+Zo);if(Zo==="cata")throw new Error("cannot have a case named cata (sorry)");if(!Yn(ns))throw new Error("case arguments must be an array");ro.push(Zo),fo[Zo]=(...ms)=>{const $s=ms.length;if($s!==ns.length)throw new Error("Wrong number of arguments to case "+Zo+". Expected "+ns.length+" ("+ns+"), got "+$s);return{fold:(...Nr)=>{if(Nr.length!==eo.length)throw new Error("Wrong number of arguments to fold. Expected "+eo.length+", got "+Nr.length);return Nr[To].apply(null,ms)},match:Nr=>{const la=nr(Nr);if(ro.length!==la.length)throw new Error("Wrong number of arguments to match. Expected: "+ro.join(",")+` +Actual: `+la.join(","));if(!za(ro,xr=>gs(la,xr)))throw new Error("Not all branches were specified when using match. Specified: "+la.join(", ")+` +Required: `+ro.join(", "));return Nr[Zo].apply(null,ms)},log:Nr=>{console.log(Nr,{constructors:ro,constructor:Zo,params:ms})}}}}),fo}},Xv={...Qm.generate([{none:[]},{only:["index"]},{left:["index","next"]},{middle:["prev","index","next"]},{right:["prev","index"]}])},kC=(eo,ro)=>eo.length===0?Xv.none():eo.length===1?Xv.only(0):ro===0?Xv.left(0,1):ro===eo.length-1?Xv.right(ro-1,ro):ro>0&&ro{const No=eo.slice(0),Zo=kC(eo,ro),ns=xo(cr(No,xo(0))),ms=la=>go.singleColumnWidth(No[la],fo),$s=(la,sa)=>To.calcLeftEdgeDeltas(No,la,sa,fo,go.minCellWidth(),go.isRelative),js=(la,sa,xr)=>To.calcMiddleDeltas(No,la,sa,xr,fo,go.minCellWidth(),go.isRelative),Nr=(la,sa)=>To.calcRightEdgeDeltas(No,la,sa,fo,go.minCellWidth(),go.isRelative);return Zo.fold(ns,ms,$s,js,Nr)},qy=(eo,ro,fo)=>{let go=0;for(let To=eo;To{const fo=os.justCells(eo);return cr(fo,go=>{const To=qy(go.column,go.column+go.colspan,ro);return{element:go.element,width:To,colspan:go.colspan}})},JO=(eo,ro)=>{const fo=os.justColumns(eo);return cr(fo,(go,To)=>({element:go.element,width:ro[To],colspan:go.colspan}))},rc=(eo,ro)=>{const fo=os.justCells(eo);return cr(fo,go=>{const To=qy(go.row,go.row+go.rowspan,ro);return{element:go.element,height:To,rowspan:go.rowspan}})},Vm=(eo,ro)=>cr(eo.all,(fo,go)=>({element:fo.element,height:ro[go]})),Fg=eo=>ha(eo,(ro,fo)=>ro+fo,0),Yv=(eo,ro)=>os.hasColumns(eo)?JO(eo,ro):Wb(eo,ro),tu=(eo,ro,fo)=>{const go=Yv(eo,ro);ws(go,To=>{fo.setElementWidth(To.element,To.width)})},Gv=(eo,ro,fo,go,To)=>{const No=os.fromTable(eo),Zo=To.getCellDelta(ro),ns=To.getWidths(No,To),ms=fo===No.grid.columns-1,$s=go.clampTableDelta(ns,fo,Zo,To.minCellWidth(),ms),js=F2(ns,fo,$s,To,go),Nr=cr(js,(la,sa)=>la+ns[sa]);tu(No,Nr,To),go.resizeTable(To.adjustTableWidth,$s,ms)},e_=(eo,ro,fo,go)=>{const To=os.fromTable(eo),No=Gs(To,eo,go),Zo=cr(No,(js,Nr)=>fo===Nr?Math.max(ro+js,Vh()):js),ns=rc(To,Zo),ms=Vm(To,Zo);ws(ms,js=>{Rg(js.element,js.height)}),ws(ns,js=>{Rg(js.element,js.height)});const $s=Fg(Zo);Rg(eo,$s)},Yd=(eo,ro,fo,go,To)=>{const No=os.generate(ro),Zo=go.getWidths(No,go),ns=go.pixelWidth(),{newSizes:ms,delta:$s}=To.calcRedestributedWidths(Zo,ns,fo.pixelDelta,go.isRelative);tu(No,ms,go),go.adjustTableWidth($s)},Hg=(eo,ro,fo,go)=>{const To=os.generate(ro),No=go.getWidths(To,go);tu(To,No,go)},sb=eo=>hs(eo,(fo,go)=>xs(fo,No=>No.column===go.column)?fo:fo.concat([go]),[]).sort((fo,go)=>fo.column-go.column),t_=Vc("col"),jy=Vc("colgroup"),Xy=eo=>pr(eo)==="tr"||jy(eo),TS=eo=>{const ro=Gc(eo,"colspan",1),fo=Gc(eo,"rowspan",1);return{element:eo,colspan:ro,rowspan:fo}},n_=(eo,ro=TS)=>{const fo=ns=>t_(ns.element)?eo.col(ns):eo.cell(ns),go=ns=>jy(ns.element)?eo.colgroup(ns):eo.row(ns),To=ns=>{if(Xy(ns))return go({element:ns});{const ms=ns,$s=fo(ro(ms));return No=Yo.some({item:ms,replacement:$s}),$s}};let No=Yo.none();return{getOrInit:(ns,ms)=>No.fold(()=>To(ns),$s=>ms(ns,$s.item)?$s.replacement:To(ns))}},Pp=eo=>ro=>{const fo=[],go=(Zo,ns)=>zo(fo,ms=>ns(ms.item,Zo)),To=Zo=>{const ns=eo==="td"?{scope:null}:{},ms=ro.replace(Zo,eo,ns);return fo.push({item:Zo,sub:ms}),ms};return{replaceOrInit:(Zo,ns)=>{if(Xy(Zo)||t_(Zo))return Zo;{const ms=Zo;return go(ms,ns).fold(()=>To(ms),$s=>ns(Zo,$s.item)?$s.sub:To(ms))}}}},ug=eo=>Ts(eo,"scope").map(ro=>ro.substr(0,3)),lr={modification:n_,transform:Pp,merging:eo=>({unmerge:go=>{const To=ug(go);return To.each(No=>zc(go,"scope",No)),()=>{const No=eo.cell({element:go,colspan:1,rowspan:1});return Qh(No,"width"),Qh(go,"width"),To.each(Zo=>zc(No,"scope",Zo)),No}},merge:go=>{const To=()=>{const No=cu(cr(go,ug));if(No.length===0)return Yo.none();{const Zo=No[0],ns=["row","col"];return xs(No,$s=>$s!==Zo&&gs(ns,$s))?Yo.none():Yo.from(Zo)}};return Qh(go[0],"width"),To().fold(()=>ks(go[0],"scope"),No=>zc(go[0],"scope",No+"group")),xo(go[0])}})},H0=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","table","thead","tfoot","tbody","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],Q0=(eo,ro)=>{const fo=eo.property().name(ro);return gs(["ol","ul"],fo)},rp=(eo,ro)=>{const fo=eo.property().name(ro);return gs(H0,fo)},AS=(eo,ro)=>gs(["br","img","hr","input"],eo.property().name(ro)),Uu=wr(),o_=eo=>rp(Uu,eo),rb=eo=>Q0(Uu,eo),PS=eo=>AS(Uu,eo),s_=eo=>{const ro=Vc("br"),fo=ms=>za(ms,$s=>ro($s)||Na($s)&&La($s).trim().length===0),go=ms=>pr(ms)==="li"||qc(ms,rb).isSome(),To=ms=>sm(ms).map($s=>o_($s)?!0:PS($s)?pr($s)!=="img":!1).getOr(!1),No=ms=>wp(ms).bind($s=>{const js=To($s);return bd($s).map(Nr=>js===!0||go(Nr)||ro($s)||o_(Nr)&&!bc(ms,Nr)?[]:[Ds.fromTag("br")])}).getOr([]),ns=(()=>{const ms=Ca(eo,$s=>{const js=fc($s);return fo(js)?[]:js.concat(No($s))});return ms.length===0?[Ds.fromTag("br")]:ms})();vd(eo[0]),cd(eo[0],ns)},$S=eo=>Z1(eo,!0),Yy=eo=>{Yf(eo).length===0&&ju(eo)},Kv=(eo,ro)=>({grid:eo,cursor:ro}),RS=eo=>Vr(eo,ro=>Vr(ro.cells,fo=>{const go=fo.element;return ud($S(go),go)})),Q2=(eo,ro,fo)=>{var go,To;const No=fd(eo).rows;return Yo.from((To=(go=No[ro])===null||go===void 0?void 0:go.cells[fo])===null||To===void 0?void 0:To.element).filter($S).orThunk(()=>RS(No))},Dd=(eo,ro,fo)=>{const go=Q2(eo,ro,fo);return Kv(eo,go)},gf=eo=>hs(eo,(fo,go)=>xs(fo,No=>No.row===go.row)?fo:fo.concat([go]),[]).sort((fo,go)=>fo.row-go.row),eh=(eo,ro,fo,go)=>{const To=ro[0].row,No=gf(ro),Zo=ha(No,(ns,ms)=>({grid:SC(ns.grid,To,ms.row+ns.delta,fo,go.getOrInit),delta:ns.delta+1}),{grid:eo,delta:0}).grid;return Dd(Zo,To,ro[0].column)},bf=(eo,ro,fo,go)=>{const To=gf(ro),No=To[To.length-1],Zo=No.row+No.rowspan,ns=ha(To,(ms,$s)=>SC(ms,Zo,$s.row,fo,go.getOrInit),eo);return Dd(ns,Zo,ro[0].column)},$l=(eo,ro,fo,go)=>{const To=ro.details,No=sb(To),Zo=No[0].column,ns=ha(No,(ms,$s)=>({grid:Hm(ms.grid,Zo,$s.column+ms.delta,fo,go.getOrInit),delta:ms.delta+1}),{grid:eo,delta:0}).grid;return Dd(ns,To[0].row,Zo)},Rh=(eo,ro,fo,go)=>{const To=ro.details,No=To[To.length-1],Zo=No.column+No.colspan,ns=sb(To),ms=ha(ns,($s,js)=>Hm($s,Zo,js.column,fo,go.getOrInit),eo);return Dd(ms,To[0].row,Zo)},bu=(eo,ro,fo,go)=>{const To=sb(ro),No=cr(To,ns=>ns.column),Zo=ES(eo,No,!0,fo,go.replaceOrInit);return Dd(Zo,ro[0].row,ro[0].column)},vf=(eo,ro,fo,go)=>{const To=KO(eo,ro,fo,go.replaceOrInit);return Dd(To,ro[0].row,ro[0].column)},Gy=(eo,ro,fo,go)=>{const To=sb(ro),No=cr(To,ns=>ns.column),Zo=ES(eo,No,!1,fo,go.replaceOrInit);return Dd(Zo,ro[0].row,ro[0].column)},d1=(eo,ro,fo,go)=>{const To=KO(eo,ro,fo,go.replaceOrInit);return Dd(To,ro[0].row,ro[0].column)},Ky=(eo,ro)=>(fo,go,To,No,Zo)=>{const ns=gf(go),ms=cr(ns,js=>js.row),$s=B2(fo,ms,eo,ro,To,No.replaceOrInit,Zo);return Dd($s,go[0].row,go[0].column)},DS=Ky("thead",!0),xC=Ky("tbody",!1),r_=Ky("tfoot",!1),MS=(eo,ro,fo,go)=>{const To=sb(ro.details),No=GO(eo,cr(To,ns=>ns.column)),Zo=No.length>0?No[0].cells.length-1:0;return Dd(No,To[0].row,Math.min(To[0].column,Zo))},NS=(eo,ro,fo,go)=>{const To=gf(ro),No=Rd(eo,To[0].row,To[To.length-1].row),Zo=No.length>0?No.length-1:0;return Dd(No,Math.min(ro[0].row,Zo),ro[0].column)},V2=(eo,ro,fo,go)=>{const To=ro.cells;s_(To);const No=cg(eo,ro.bounds,fo,go.merge(To));return Kv(No,Yo.from(To[0]))},f1=(eo,ro,fo,go)=>{const No=ha(ro,(Zo,ns)=>$h(Zo,ns,fo,go.unmerge(ns)),eo);return Kv(No,Yo.from(ro[0]))},EC=(eo,ro,fo,go)=>{const No=((ms,$s)=>{const js=os.fromTable(ms);return R0(js,$s,!0)})(ro.clipboard,ro.generators),Zo=jm(ro.row,ro.column);return _C(Zo,eo,No,ro.generators,fo).fold(()=>Kv(eo,Yo.some(ro.element)),ms=>Dd(ms,ro.row,ro.column))},ib=(eo,ro,fo)=>{const go=Gg(eo,fo.section),To=os.generate(go);return R0(To,ro,!0)},Vd=(eo,ro,fo,go)=>{const To=fd(eo).rows,No=ro.cells[0].column,Zo=To[ro.cells[0].row],ns=ib(ro.clipboard,ro.generators,Zo),ms=N0(No,eo,ns,ro.generators,fo);return Dd(ms,ro.cells[0].row,ro.cells[0].column)},yf=(eo,ro,fo,go)=>{const To=fd(eo).rows,No=ro.cells[ro.cells.length-1].column+ro.cells[ro.cells.length-1].colspan,Zo=To[ro.cells[0].row],ns=ib(ro.clipboard,ro.generators,Zo),ms=N0(No,eo,ns,ro.generators,fo);return Dd(ms,ro.cells[0].row,ro.cells[0].column)},z2=(eo,ro,fo,go)=>{const To=fd(eo).rows,No=ro.cells[0].row,Zo=To[No],ns=ib(ro.clipboard,ro.generators,Zo),ms=L0(No,eo,ns,ro.generators,fo);return Dd(ms,ro.cells[0].row,ro.cells[0].column)},ym=(eo,ro,fo,go)=>{const To=fd(eo).rows,No=ro.cells[ro.cells.length-1].row+ro.cells[ro.cells.length-1].rowspan,Zo=To[ro.cells[0].row],ns=ib(ro.clipboard,ro.generators,Zo),ms=L0(No,eo,ns,ro.generators,fo);return Dd(ms,ro.cells[0].row,ro.cells[0].column)},$T=(eo,ro)=>{const fo=os.fromTable(eo);return Bb(fo,ro).bind(To=>{const No=To[To.length-1],Zo=To[0].column,ns=No.column+No.colspan,ms=ga(cr(fo.all,$s=>_r($s.cells,js=>js.column>=Zo&&js.column{const fo=os.fromTable(eo);return Bb(fo,ro).bind(Qv).getOr("")},Zr=(eo,ro)=>{const fo=os.fromTable(eo);return Bb(fo,ro).bind(To=>{const No=To[To.length-1],Zo=To[0].row,ns=No.row+No.rowspan,ms=fo.all.slice(Zo,ns);return R2(ms)}).getOr("")},LS=(eo,ro,fo,go)=>Hg(eo,ro,fo,go.sizing),Of=(eo,ro,fo,go)=>Yd(eo,ro,fo,go.sizing,go.resize),IS=(eo,ro)=>xs(ro,fo=>fo.column===0&&fo.isLocked),Ub=(eo,ro)=>xs(ro,fo=>fo.column+fo.colspan>=eo.grid.columns&&fo.isLocked),Jy=(eo,ro)=>{const fo=dm(eo),go=sb(ro);return hs(go,(To,No)=>{const ns=fo[No.column].map(cm).getOr(0);return To+ns},0)},Om=eo=>(ro,fo)=>Bb(ro,fo).filter(go=>!(eo?IS:Ub)(ro,go)).map(go=>({details:go,pixelDelta:Jy(ro,go)})),TC=(eo,ro)=>nb(eo,ro).map(fo=>({details:fo,pixelDelta:-Jy(eo,fo)})),eO=eo=>(ro,fo)=>zv(ro,fo).filter(go=>!(eo?IS:Ub)(ro,go.cells)),Cd=lr.transform("th"),Vg=lr.transform("td"),tO=Df(eh,Bb,wo,wo,lr.modification),h1=Df(bf,Bb,wo,wo,lr.modification),dg=Df($l,Om(!0),Of,wo,lr.modification),ma=Df(Rh,Om(!1),Of,wo,lr.modification),ip=Df(MS,TC,Of,Yy,lr.modification),BS=Df(NS,Bb,wo,Yy,lr.modification),m1=Df(bu,nb,wo,wo,Cd),Ic=Df(Gy,nb,wo,wo,Vg),FS=Df(DS,nb,wo,wo,Cd),ap=Df(xC,nb,wo,wo,Vg),i_=Df(r_,nb,wo,wo,Vg),W2=Df(vf,nb,wo,wo,Cd),Zu=Df(d1,nb,wo,wo,Vg),U2=Df(V2,AT,LS,wo,lr.merging),bh=Df(f1,PT,LS,wo,lr.merging),Zb=Df(EC,Uy,LS,wo,lr.modification),Z2=Df(Vd,eO(!0),wo,wo,lr.modification),q2=Df(yf,eO(!1),wo,wo,lr.modification),HS=Df(z2,zv,wo,wo,lr.modification),j2=Df(ym,zv,wo,wo,lr.modification),AC=$T,PC=Qg,nO=Zr,$C=(eo,ro)=>eo.dispatch("NewRow",{node:ro}),QS=(eo,ro)=>eo.dispatch("NewCell",{node:ro}),V0=(eo,ro,fo)=>{eo.dispatch("TableModified",{...fo,table:ro})},X2=(eo,ro,fo,go,To)=>{eo.dispatch("TableSelectionChange",{cells:ro,start:fo,finish:go,otherCells:To})},Y2=eo=>{eo.dispatch("TableSelectionClear")},VS=(eo,ro,fo,go,To)=>{eo.dispatch("ObjectResizeStart",{target:ro,width:fo,height:go,origin:To})},zS=(eo,ro,fo,go,To)=>{eo.dispatch("ObjectResized",{target:ro,width:fo,height:go,origin:To})},ab={structure:!1,style:!0},Hl={structure:!0,style:!1},WS={structure:!0,style:!0},Dh=(eo,ro)=>tg(eo)?Th.percentageSize(ro):W1(eo)?Th.pixelSize(ro):Th.getTableSize(ro),a_=(eo,ro,fo)=>{const go=Wm=>pr(kp(Wm))==="table",To=Wm=>!go(eo)||Fv(Wm).rows>1,No=Wm=>!go(eo)||Fv(Wm).columns>1,Zo=Lg(eo),ns=Pd(eo)?wo:Bv,ms=Wm=>{switch(V1(eo)){case"section":return tb.section();case"sectionCells":return tb.sectionCells();case"cells":return tb.cells();default:return tb.getTableSectionType(Wm,"section")}},$s=(Wm,Zx)=>Zx.cursor.fold(()=>{const xw=Yf(Wm);return fs(xw).filter(Bu).map(t0=>{fo.clearSelectedCells(Wm.dom);const Gh=eo.dom.createRng();return Gh.selectNode(t0.dom),eo.selection.setRng(Gh),zc(t0,"data-mce-selected","1"),Gh})},xw=>{const t0=yS(xw),Gh=eo.dom.createRng();return Gh.setStart(t0.element.dom,t0.offset),Gh.setEnd(t0.element.dom,t0.offset),eo.selection.setRng(Gh),fo.clearSelectedCells(Wm.dom),Yo.some(Gh)}),js=(Wm,Zx,xw,t0)=>(Gh,Ew,lA=!1)=>{Ig(Gh);const cA=Ds.fromDom(eo.getDoc()),N_=Qd(xw,cA,Zo),uA={sizing:Dh(eo,Gh),resize:Pd(eo)?mC():OS(),section:ms(Gh)};return Zx(Gh)?Wm(Gh,Ew,N_,uA).bind(_k=>{ro.refresh(Gh.dom),ws(_k.newRows,gO=>{$C(eo,gO.dom)}),ws(_k.newCells,gO=>{QS(eo,gO.dom)});const dA=$s(Gh,_k);return Bu(Gh)&&(Ig(Gh),lA||V0(eo,Gh.dom,t0)),dA.map(gO=>({rng:gO,effect:t0}))}):Yo.none()},Nr=js(BS,To,wo,Hl),la=js(ip,No,wo,Hl),sa=js(tO,rs,wo,Hl),xr=js(h1,rs,wo,Hl),ca=js(dg,rs,ns,Hl),Cr=js(ma,rs,ns,Hl),Ra=js(U2,rs,wo,Hl),dl=js(bh,rs,wo,Hl),Bl=js(Z2,rs,wo,Hl),Gu=js(q2,rs,wo,Hl),qf=js(HS,rs,wo,Hl),zd=js(j2,rs,wo,Hl),dp=js(Zb,rs,wo,WS),mO=js(W2,rs,wo,Hl),pO=js(Zu,rs,wo,Hl),Ux=js(m1,rs,wo,Hl),Ok=js(Ic,rs,wo,Hl),yu=js(FS,rs,wo,Hl),wm=js(ap,rs,wo,Hl),Lh=js(i_,rs,wo,Hl);return{deleteRow:Nr,deleteColumn:la,insertRowsBefore:sa,insertRowsAfter:xr,insertColumnsBefore:ca,insertColumnsAfter:Cr,mergeCells:Ra,unmergeCells:dl,pasteColsBefore:Bl,pasteColsAfter:Gu,pasteRowsBefore:qf,pasteRowsAfter:zd,pasteCells:dp,makeCellsHeader:mO,unmakeCellsHeader:pO,makeColumnsHeader:Ux,unmakeColumnsHeader:Ok,makeRowsHeader:yu,makeRowsBody:wm,makeRowsFooter:Lh,getTableRowType:nO,getTableCellType:PC,getTableColType:AC}},th=(eo,ro,fo)=>{const go=Gc(eo,ro,1);fo===1||go<=1?ks(eo,ro):zc(eo,ro,Math.min(fo,go))},_m=(eo,ro)=>fo=>{const go=fo.column+fo.colspan-1,To=fo.column;return go>=eo&&To{if(os.hasColumns(eo)){const go=_r(os.justColumns(eo),_m(ro,fo)),To=cr(go,Zo=>{const ns=ah(Zo.element);return th(ns,"span",fo-ro),ns}),No=Ds.fromTag("colgroup");return cd(No,To),[No]}else return[]},RC=(eo,ro,fo)=>cr(eo.all,go=>{const To=_r(go.cells,_m(ro,fo)),No=cr(To,ns=>{const ms=ah(ns.element);return th(ms,"colspan",fo-ro),ms}),Zo=Ds.fromTag("tr");return cd(Zo,No),Zo}),G2=(eo,ro)=>{const fo=os.fromTable(eo);return nb(fo,ro).map(To=>{const No=To[To.length-1],Zo=To[0].column,ns=No.column+No.colspan,ms=l_(fo,Zo,ns),$s=RC(fo,Zo,ns);return[...ms,...$s]})},DC=(eo,ro,fo)=>{const go=os.fromTable(eo);return Bb(go,ro).bind(No=>{const Zo=R0(go,fo,!1),ms=fd(Zo).rows.slice(No[0].row,No[No.length-1].row+No[No.length-1].rowspan),$s=Ca(ms,Nr=>{const la=_r(Nr.cells,sa=>!sa.isLocked);return la.length>0?[{...Nr,cells:la}]:[]}),js=od($s);return ud(js.length>0,js)}).map(No=>pC(No))},Jv=Qm.generate([{invalid:["raw"]},{pixels:["value"]},{percent:["value"]}]),MC=(eo,ro,fo)=>{const go=fo.substring(0,fo.length-eo.length),To=parseFloat(go);return go===To.toString()?ro(To):Jv.invalid(fo)},lb={...Jv,from:eo=>Pm(eo,"%")?MC("%",Jv.percent,eo):Pm(eo,"px")?MC("px",Jv.pixels,eo):Jv.invalid(eo)},K2=(eo,ro)=>cr(eo,fo=>lb.from(fo).fold(()=>fo,To=>To/ro*100+"%",To=>To+"%")),ey=(eo,ro,fo)=>{const go=fo/ro;return cr(eo,To=>lb.from(To).fold(()=>To,Zo=>Zo*go+"px",Zo=>Zo/100*fo+"px"))},J2=(eo,ro)=>{const fo=eo.fold(()=>xo(""),go=>{const To=go/ro;return xo(To+"px")},()=>{const go=100/ro;return xo(go+"%")});return Qr(ro,fo)},c_=(eo,ro,fo)=>eo.fold(()=>ro,go=>ey(ro,fo,go),go=>K2(ro,fo)),US=(eo,ro,fo)=>{const go=lb.from(fo),To=za(eo,No=>No==="0px")?J2(go,eo.length):c_(go,eo,ro);return LC(To)},z0=(eo,ro)=>eo.length===0?ro:ha(eo,(fo,go)=>lb.from(go).fold(xo(0),Bo,Bo)+fo,0),ex=(eo,ro)=>{const fo=Math.floor(eo);return{value:fo+ro,remainder:eo-fo}},NC=(eo,ro)=>lb.from(eo).fold(xo(eo),fo=>fo+ro+"px",fo=>fo+ro+"%"),LC=eo=>{if(eo.length===0)return eo;const ro=ha(eo,(go,To)=>{const No=lb.from(To).fold(()=>({value:To,remainder:0}),Zo=>ex(Zo,"px"),Zo=>({value:Zo+"%",remainder:0}));return{output:[No.value].concat(go.output),remainder:go.remainder+No.remainder}},{output:[],remainder:0}),fo=ro.output;return fo.slice(0,fo.length-1).concat([NC(fo[fo.length-1],Math.round(ro.remainder))])},zg=lb.from,IC=(eo,ro,fo)=>{ws(ro,go=>{const To=eo.slice(go.column,go.colspan+go.column),No=z0(To,Mu());Du(go.element,"width",No+fo)})},ZS=(eo,ro,fo)=>{ws(ro,(go,To)=>{const No=z0([eo[To]],Mu());Du(go.element,"width",No+fo)})},tx=(eo,ro,fo,go)=>{ws(fo,To=>{const No=eo.slice(To.row,To.rowspan+To.row),Zo=z0(No,Vh());Du(To.element,"height",Zo+go)}),ws(ro,(To,No)=>{Du(To.element,"height",eo[No])})},BC=eo=>zg(eo).fold(xo("px"),xo("px"),xo("%")),p1=(eo,ro,fo)=>{const go=os.fromTable(eo),To=go.all,No=os.justCells(go),Zo=os.justColumns(go);ro.each(ns=>{const ms=BC(ns),$s=uf(eo),js=I1(go,eo),Nr=US(js,$s,ns);os.hasColumns(go)?ZS(Nr,Zo,ms):IC(Nr,No,ms),Du(eo,"width",ns)}),fo.each(ns=>{const ms=BC(ns),$s=Mm(eo),js=xh(go,eo,Oa),Nr=US(js,$s,ns);tx(Nr,To,No,ms),Du(eo,"height",ns)})},ty=hd,ny=wv,u_=ep,oO=eo=>{ks(eo,"width")},$p=eo=>{const ro=hc(eo);p1(eo,Yo.some(ro),Yo.none()),oO(eo)},oy=eo=>{const ro=k0(eo);p1(eo,Yo.some(ro),Yo.none()),oO(eo)},sO=eo=>{Qh(eo,"width");const ro=$1(eo),fo=ro.length>0?ro:Yf(eo);ws(fo,go=>{Qh(go,"width"),oO(go)}),oO(eo)},qb={styles:{"border-collapse":"collapse",width:"100%"},attributes:{border:"1"},colGroups:!1},d_=()=>Ds.fromTag("th"),nx=()=>Ds.fromTag("td"),ox=()=>Ds.fromTag("col"),FC=(eo,ro,fo,go)=>{const To=Ds.fromTag("tr");for(let No=0;No{const ro=Ds.fromTag("colgroup");return Qr(eo,()=>Qc(ro,ox())),ro},qS=(eo,ro,fo,go)=>Qr(eo,To=>FC(ro,fo,go,To)),rx=(eo,ro,fo,go,To,No=qb)=>{const Zo=Ds.fromTag("table"),ns=To!=="cells";lf(Zo,No.styles),ad(Zo,No.attributes),No.colGroups&&Qc(Zo,sx(ro));const ms=Math.min(eo,fo);if(ns&&fo>0){const sa=Ds.fromTag("thead");Qc(Zo,sa);const ca=qS(fo,ro,To==="sectionCells"?ms:0,go);cd(sa,ca)}const $s=Ds.fromTag("tbody");Qc(Zo,$s);const js=ns?eo-ms:eo,la=qS(js,ro,ns?0:fo,go);return cd($s,la),Zo},ix=eo=>eo.dom.innerHTML,HC=eo=>{const ro=Ds.fromTag("div"),fo=Ds.fromDom(eo.dom.cloneNode(!0));return Qc(ro,fo),ix(ro)},ax=(eo,ro)=>{eo.selection.select(ro.dom,!0),eo.selection.collapse(!0)},QC=(eo,ro)=>{Hf(ro,"td,th").each(Ko(ax,eo))},lx=(eo,ro)=>{ws(fu(ro,"tr"),fo=>{$C(eo,fo.dom),ws(fu(fo,"th,td"),go=>{QS(eo,go.dom)})})},f_=eo=>Zn(eo)&&eo.indexOf("%")!==-1,cx=(eo,ro,fo,go,To)=>{const No=DO(eo),Zo={styles:No,attributes:ng(eo),colGroups:Fy(eo)};return eo.undoManager.ignore(()=>{const ns=rx(fo,ro,To,go,V1(eo),Zo);zc(ns,"data-mce-id","__mce");const ms=HC(ns);eo.insertContent(ms),eo.addVisual()}),Hf(kp(eo),'table[data-mce-id="__mce"]').map(ns=>(W1(eo)?oy(ns):U1(eo)?sO(ns):(tg(eo)||f_(No.width))&&$p(ns),Ig(ns),ks(ns,"data-mce-id"),lx(eo,ns),QC(eo,ns),ns.dom)).getOrNull()},VC=(eo,ro,fo,go={})=>{const To=No=>Oo(No)&&No>0;if(To(ro)&&To(fo)){const No=go.headerRows||0,Zo=go.headerColumns||0;return cx(eo,fo,ro,Zo,No)}else return console.error("Invalid values for mceInsertTable - rows and columns values are required to insert a table."),null};var sy=tinymce.util.Tools.resolve("tinymce.FakeClipboard");const jS="x-tinymce/dom-table-",XS=jS+"rows",YS=jS+"columns",h_=eo=>{const ro=sy.FakeClipboardItem(eo);sy.write([ro])},m_=eo=>{var ro;const fo=(ro=sy.read())!==null&&ro!==void 0?ro:[];return Vr(fo,go=>Yo.from(go.getType(eo)))},zC=eo=>{m_(eo).isSome()&&sy.clear()},p_=eo=>{eo.fold(ux,ro=>h_({[XS]:ro}))},g_=()=>m_(XS),ux=()=>zC(XS),rO=eo=>{eo.fold(dx,ro=>h_({[YS]:ro}))},WC=()=>m_(YS),dx=()=>zC(YS),GS=eo=>ag(Zh(eo),s1(eo)).filter(j1),lp=eo=>Nv(Zh(eo),s1(eo)).filter(j1),jb=(eo,ro)=>{const fo=s1(eo),go=()=>GS(eo).each(Cr=>{jd(Cr,fo).filter(Mo(fo)).each(Ra=>{const dl=Ds.fromText("");if(ef(Ra,dl),ju(Ra),eo.dom.isEmpty(eo.getBody()))eo.setContent(""),eo.selection.setCursorLocation();else{const Bl=eo.dom.createRng();Bl.setStart(dl.dom,0),Bl.setEnd(dl.dom,0),eo.selection.setRng(Bl),eo.nodeChanged()}})}),To=Cr=>GS(eo).each(Ra=>{U1(eo)||W1(eo)||tg(eo)||jd(Ra,fo).each(Bl=>{Cr==="relative"&&!ty(Bl)?$p(Bl):Cr==="fixed"&&!ny(Bl)?oy(Bl):Cr==="responsive"&&!u_(Bl)&&sO(Bl),Ig(Bl),V0(eo,Bl.dom,Hl)})}),No=Cr=>jd(Cr,fo),Zo=Cr=>lp(eo).bind(Ra=>No(Ra).map(dl=>Cr(dl,Ra))),ns=(Cr,Ra)=>{Zo(dl=>{eo.formatter.toggle("tableclass",{value:Ra},dl.dom),V0(eo,dl.dom,ab)})},ms=(Cr,Ra)=>{Zo(dl=>{const Bl=Tp(eo),qf=za(Bl,zd=>eo.formatter.match("tablecellclass",{value:Ra},zd.dom))?eo.formatter.remove:eo.formatter.apply;ws(Bl,zd=>qf("tablecellclass",{value:Ra},zd.dom)),V0(eo,dl.dom,ab)})},$s=()=>{GS(eo).each(Cr=>{jd(Cr,fo).each(Ra=>{El(Ra,"caption").fold(()=>{const dl=Ds.fromTag("caption");Qc(dl,Ds.fromText("Caption")),Cf(Ra,dl,0),eo.selection.setCursorLocation(dl.dom,0)},dl=>{Vc("caption")(Cr)&&Md("td",Ra).each(Bl=>eo.selection.setCursorLocation(Bl.dom,0)),ju(dl)}),V0(eo,Ra.dom,Hl)})})},js=Cr=>{eo.focus()},Nr=(Cr,Ra=!1)=>Zo((dl,Bl)=>{const Gu=Dv(Tp(eo),dl,Bl);Cr(dl,Gu,Ra).each(js)}),la=()=>Zo((Cr,Ra)=>{const dl=Dv(Tp(eo),Cr,Ra),Bl=Qd(wo,Ds.fromDom(eo.getDoc()),Yo.none());return DC(Cr,dl,Bl)}),sa=()=>Zo((Cr,Ra)=>{const dl=Dv(Tp(eo),Cr,Ra);return G2(Cr,dl)}),xr=(Cr,Ra)=>Ra().each(dl=>{const Bl=cr(dl,Gu=>ah(Gu));Zo((Gu,qf)=>{const zd=Rf(Ds.fromDom(eo.getDoc())),dp=Mv(Tp(eo),qf,Bl,zd);Cr(Gu,dp).each(js)})}),ca=Cr=>(Ra,dl)=>Ed(dl,"type").each(Bl=>{Nr(Cr(Bl),dl.no_events)});ra({mceTableSplitCells:()=>Nr(ro.unmergeCells),mceTableMergeCells:()=>Nr(ro.mergeCells),mceTableInsertRowBefore:()=>Nr(ro.insertRowsBefore),mceTableInsertRowAfter:()=>Nr(ro.insertRowsAfter),mceTableInsertColBefore:()=>Nr(ro.insertColumnsBefore),mceTableInsertColAfter:()=>Nr(ro.insertColumnsAfter),mceTableDeleteCol:()=>Nr(ro.deleteColumn),mceTableDeleteRow:()=>Nr(ro.deleteRow),mceTableCutCol:()=>sa().each(Cr=>{rO(Cr),Nr(ro.deleteColumn)}),mceTableCutRow:()=>la().each(Cr=>{p_(Cr),Nr(ro.deleteRow)}),mceTableCopyCol:()=>sa().each(Cr=>rO(Cr)),mceTableCopyRow:()=>la().each(Cr=>p_(Cr)),mceTablePasteColBefore:()=>xr(ro.pasteColsBefore,WC),mceTablePasteColAfter:()=>xr(ro.pasteColsAfter,WC),mceTablePasteRowBefore:()=>xr(ro.pasteRowsBefore,g_),mceTablePasteRowAfter:()=>xr(ro.pasteRowsAfter,g_),mceTableDelete:go,mceTableCellToggleClass:ms,mceTableToggleClass:ns,mceTableToggleCaption:$s,mceTableSizingMode:(Cr,Ra)=>To(Ra),mceTableCellType:ca(Cr=>Cr==="th"?ro.makeCellsHeader:ro.unmakeCellsHeader),mceTableColType:ca(Cr=>Cr==="th"?ro.makeColumnsHeader:ro.unmakeColumnsHeader),mceTableRowType:ca(Cr=>{switch(Cr){case"header":return ro.makeRowsHeader;case"footer":return ro.makeRowsFooter;default:return ro.makeRowsBody}})},(Cr,Ra)=>eo.addCommand(Ra,Cr)),eo.addCommand("mceInsertTable",(Cr,Ra)=>{VC(eo,Ra.rows,Ra.columns,Ra.options)}),eo.addCommand("mceTableApplyCellStyle",(Cr,Ra)=>{const dl=qf=>"tablecell"+qf.toLowerCase().replace("-","");if(!qn(Ra))return;const Bl=_r(Tp(eo),j1);if(Bl.length===0)return;const Gu=cc(Ra,(qf,zd)=>eo.formatter.has(dl(zd))&&Zn(qf));Fc(Gu)||(ra(Gu,(qf,zd)=>{const dp=dl(zd);ws(Bl,mO=>{qf===""?eo.formatter.remove(dp,{value:null},mO.dom,!0):eo.formatter.apply(dp,{value:qf},mO.dom)})}),No(Bl[0]).each(qf=>V0(eo,qf.dom,ab)))})},fx=(eo,ro)=>{const fo=s1(eo),go=To=>Nv(Zh(eo)).bind(No=>jd(No,fo).map(Zo=>{const ns=Dv(Tp(eo),Zo,No);return To(Zo,ns)})).getOr("");ra({mceTableRowType:()=>go(ro.getTableRowType),mceTableCellType:()=>go(ro.getTableCellType),mceTableColType:()=>go(ro.getTableColType)},(To,No)=>eo.addQueryValueHandler(No,To))},KS=Qm.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),hx=(eo,ro,fo,go)=>eo.fold(ro,fo,go),mx=eo=>eo.fold(Bo,Bo,Bo),JS=KS.before,UC=KS.on,ew=KS.after,Zf={before:JS,on:UC,after:ew,cata:hx,getStart:mx},ry={create:(eo,ro)=>({selection:eo,kill:ro})},b_=(eo,ro)=>{const fo=eo.document.createRange();return fo.selectNode(ro.dom),fo},tw=(eo,ro)=>{const fo=eo.document.createRange();return nw(fo,ro),fo},nw=(eo,ro)=>eo.selectNodeContents(ro.dom),ZC=(eo,ro)=>{ro.fold(fo=>{eo.setStartBefore(fo.dom)},(fo,go)=>{eo.setStart(fo.dom,go)},fo=>{eo.setStartAfter(fo.dom)})},qC=(eo,ro)=>{ro.fold(fo=>{eo.setEndBefore(fo.dom)},(fo,go)=>{eo.setEnd(fo.dom,go)},fo=>{eo.setEndAfter(fo.dom)})},cb=(eo,ro,fo)=>{const go=eo.document.createRange();return ZC(go,ro),qC(go,fo),go},W0=(eo,ro,fo,go,To)=>{const No=eo.document.createRange();return No.setStart(ro.dom,fo),No.setEnd(go.dom,To),No},px=eo=>({left:eo.left,top:eo.top,right:eo.right,bottom:eo.bottom,width:eo.width,height:eo.height}),gx=eo=>{const ro=eo.getClientRects(),fo=ro.length>0?ro[0]:eo.getBoundingClientRect();return fo.width>0||fo.height>0?Yo.some(fo).map(px):Yo.none()},iO=Qm.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),ow=(eo,ro,fo)=>ro(Ds.fromDom(fo.startContainer),fo.startOffset,Ds.fromDom(fo.endContainer),fo.endOffset),jC=(eo,ro)=>ro.match({domRange:fo=>({ltr:xo(fo),rtl:Yo.none}),relative:(fo,go)=>({ltr:yp(()=>cb(eo,fo,go)),rtl:yp(()=>Yo.some(cb(eo,go,fo)))}),exact:(fo,go,To,No)=>({ltr:yp(()=>W0(eo,fo,go,To,No)),rtl:yp(()=>Yo.some(W0(eo,To,No,fo,go)))})}),_f=(eo,ro)=>{const fo=ro.ltr();return fo.collapsed?ro.rtl().filter(To=>To.collapsed===!1).map(To=>iO.rtl(Ds.fromDom(To.endContainer),To.endOffset,Ds.fromDom(To.startContainer),To.startOffset)).getOrThunk(()=>ow(eo,iO.ltr,fo)):ow(eo,iO.ltr,fo)},XC=(eo,ro)=>{const fo=jC(eo,ro);return _f(eo,fo)},sw=(eo,ro)=>XC(eo,ro).match({ltr:(go,To,No,Zo)=>{const ns=eo.document.createRange();return ns.setStart(go.dom,To),ns.setEnd(No.dom,Zo),ns},rtl:(go,To,No,Zo)=>{const ns=eo.document.createRange();return ns.setStart(No.dom,Zo),ns.setEnd(go.dom,To),ns}});iO.ltr,iO.rtl;const iy={create:(eo,ro,fo,go)=>({start:eo,soffset:ro,finish:fo,foffset:go})},YC={create:(eo,ro,fo,go)=>({start:Zf.on(eo,ro),finish:Zf.on(fo,go)})},rw=(eo,ro)=>{const fo=sw(eo,ro);return iy.create(Ds.fromDom(fo.startContainer),fo.startOffset,Ds.fromDom(fo.endContainer),fo.endOffset)},aO=YC.create,v_=(eo,ro,fo,go,To,No,Zo)=>bc(fo,To)&&go===No?Yo.none():hu(fo,"td,th",ro).bind(ns=>hu(To,"td,th",ro).bind(ms=>ay(eo,ro,ns,ms,Zo))),ay=(eo,ro,fo,go,To)=>bc(fo,go)?Yo.none():qh(fo,go,ro).bind(No=>{const Zo=No.boxes.getOr([]);return Zo.length>1?(To(eo,Zo,No.start,No.finish),Yo.some(ry.create(Yo.some(aO(fo,0,fo,Ac(fo))),!0))):Yo.none()}),vx=(eo,ro,fo,go,To)=>{const No=Zo=>(To.clearBeforeUpdate(fo),To.selectRange(fo,Zo.boxes,Zo.start,Zo.finish),Zo.boxes);return BO(go,eo,ro,To.firstSelectedSelector,To.lastSelectedSelector).map(No)},Xb=(eo,ro)=>({item:eo,mode:ro}),GC=(eo,ro,fo,go=Yb)=>eo.property().parent(ro).map(To=>Xb(To,go)),Yb=(eo,ro,fo,go=Gb)=>fo.sibling(eo,ro).map(To=>Xb(To,go)),Gb=(eo,ro,fo,go=Gb)=>{const To=eo.property().children(ro);return fo.first(To).map(Zo=>Xb(Zo,go))},so=[{current:GC,next:Yb,fallback:Yo.none()},{current:Yb,next:Gb,fallback:Yo.some(GC)},{current:Gb,next:Gb,fallback:Yo.some(Yb)}],co=(eo,ro,fo,go,To=so)=>zo(To,Zo=>Zo.current===fo).bind(Zo=>Zo.current(eo,ro,go,Zo.next).orThunk(()=>Zo.fallback.bind(ns=>co(eo,ro,ns,go)))),ts={left:()=>({sibling:(fo,go)=>fo.query().prevSibling(go),first:fo=>fo.length>0?Yo.some(fo[fo.length-1]):Yo.none()}),right:()=>({sibling:(fo,go)=>fo.query().nextSibling(go),first:fo=>fo.length>0?Yo.some(fo[0]):Yo.none()})},Os=(eo,ro,fo,go,To,No)=>co(eo,ro,go,To).bind(ns=>No(ns.item)?Yo.none():fo(ns.item)?Yo.some(ns.item):Os(eo,ns.item,fo,ns.mode,To,No)),Is=(eo,ro,fo,go)=>Os(eo,ro,fo,Yb,ts.left(),go),qs=(eo,ro,fo,go)=>Os(eo,ro,fo,Yb,ts.right(),go),mr=eo=>ro=>eo.property().children(ro).length===0,Xr=(eo,ro,fo)=>ua(eo,ro,mr(eo),fo),jr=(eo,ro,fo)=>ja(eo,ro,mr(eo),fo),ua=Is,ja=qs,wl=wr(),Kl=(eo,ro)=>Xr(wl,eo,ro),Pc=(eo,ro)=>jr(wl,eo,ro),Ul=(eo,ro,fo)=>ua(wl,eo,ro,fo),nu=(eo,ro,fo)=>ja(wl,eo,ro,fo),vu=(eo,ro,fo)=>qc(eo,ro,fo).isSome(),nh=Qm.generate([{none:["message"]},{success:[]},{failedUp:["cell"]},{failedDown:["cell"]}]),Mh=(eo,ro,fo)=>{const go=eo.getRect(ro),To=eo.getRect(fo);return To.right>go.left&&To.lefthu(eo,"tr"),Tu={...nh,verify:(eo,ro,fo,go,To,No,Zo)=>hu(go,"td,th",Zo).bind(ns=>hu(ro,"td,th",Zo).map(ms=>bc(ns,ms)?bc(go,ns)&&Ac(ns)===To?No(ms):nh.none("in same cell"):eu(Rp,[ns,ms]).fold(()=>Mh(eo,ms,ns)?nh.success():No(ms),$s=>No(ms)))).getOr(nh.none("default")),cata:(eo,ro,fo,go,To)=>eo.fold(ro,fo,go,To)},yx=(eo,ro,fo,go)=>({parent:eo,children:ro,element:fo,index:go}),U0=eo=>bd(eo).bind(ro=>{const fo=fc(ro);return NT(fo,eo).map(go=>yx(ro,fo,eo,go))}),NT=(eo,ro)=>el(eo,Ko(bc,ro)),KC=Vc("br"),ly=(eo,ro,fo)=>ro(eo,fo).bind(go=>Na(go)&&La(go).trim().length===0?ly(go,ro,fo):Yo.some(go)),jh=(eo,ro,fo)=>fo.traverse(ro).orThunk(()=>ly(ro,fo.gather,eo)).map(fo.relative),y_=(eo,ro)=>Td(eo,ro).filter(KC).orThunk(()=>Td(eo,ro-1).filter(KC)),iw=(eo,ro,fo,go)=>y_(ro,fo).bind(To=>go.traverse(To).fold(()=>ly(To,go.gather,eo).map(go.relative),No=>U0(No).map(Zo=>Zf.on(Zo.parent,Zo.index)))),O_=(eo,ro,fo,go)=>(KC(ro)?jh(eo,ro,go):iw(eo,ro,fo,go)).map(No=>({start:No,finish:No})),Ox=eo=>Tu.cata(eo,ro=>Yo.none(),()=>Yo.none(),ro=>Yo.some(Iv(ro,0)),ro=>Yo.some(Iv(ro,Ac(ro)))),__=(eo,ro)=>({left:eo.left,top:eo.top+ro,right:eo.right,bottom:eo.bottom+ro}),lO=(eo,ro)=>({left:eo.left,top:eo.top-ro,right:eo.right,bottom:eo.bottom-ro}),ub=(eo,ro,fo)=>({left:eo.left+ro,top:eo.top+fo,right:eo.right+ro,bottom:eo.bottom+fo}),h3=eo=>eo.top,m3=eo=>eo.bottom,cy=(eo,ro,fo)=>fo>=0&&fo0?eo.getRangedRect(ro,fo-1,ro,fo):Yo.none(),S_=eo=>({left:eo.left,top:eo.top,right:eo.right,bottom:eo.bottom}),JC=(eo,ro)=>Yo.some(eo.getRect(ro)),Kb=(eo,ro,fo)=>il(ro)?JC(eo,ro).map(S_):Na(ro)?cy(eo,ro,fo).map(S_):Yo.none(),_x=(eo,ro)=>il(ro)?JC(eo,ro).map(S_):Na(ro)?eo.getRangedRect(ro,0,ro,Ac(ro)).map(S_):Yo.none(),vh=5,Z0=100,g1=Qm.generate([{none:[]},{retry:["caret"]}]),w_=(eo,ro)=>eo.leftro.right,Sm=(eo,ro,fo)=>Ef(ro,o_).fold(ps,go=>_x(eo,go).exists(To=>w_(fo,To))),cp=(eo,ro,fo,go,To)=>{const No=__(To,vh);return Math.abs(fo.bottom-go.bottom)<1||fo.top>To.bottom?g1.retry(No):fo.top===To.bottom?g1.retry(__(To,1)):Sm(eo,ro,To)?g1.retry(ub(No,vh,0)):g1.none()},b1={point:h3,adjuster:(eo,ro,fo,go,To)=>{const No=lO(To,vh);return Math.abs(fo.top-go.top)<1||fo.bottomeo.elementFromPoint(ro,fo).filter(go=>pr(go)==="table").isSome(),cO=(eo,ro,fo,go,To)=>Sx(eo,ro,fo,ro.move(go,vh),To),Sx=(eo,ro,fo,go,To)=>To===0?Yo.some(go):fg(eo,go.left,ro.point(go))?cO(eo,ro,fo,go,To-1):eo.situsFromPoint(go.left,ro.point(go)).bind(No=>No.start.fold(Yo.none,Zo=>_x(eo,Zo).bind(ns=>ro.adjuster(eo,Zo,ns,fo,go).fold(Yo.none,ms=>Sx(eo,ro,fo,ms,To-1))).orThunk(()=>Yo.some(go)),Yo.none)),p3=(eo,ro,fo)=>eo.point(ro)>fo.getInnerHeight()?Yo.some(eo.point(ro)-fo.getInnerHeight()):eo.point(ro)<0?Yo.some(-eo.point(ro)):Yo.none(),LT=(eo,ro,fo)=>{const go=eo.move(fo,vh),To=Sx(ro,eo,fo,go,Z0).getOr(go);return p3(eo,To,ro).fold(()=>ro.situsFromPoint(To.left,eo.point(To)),No=>(ro.scrollBy(0,No),ro.situsFromPoint(To.left,eo.point(To)-No)))},aw={tryUp:Ko(LT,b1),tryDown:Ko(LT,ek),getJumpSize:xo(vh)},IT=20,lw=(eo,ro,fo)=>eo.getSelection().bind(go=>O_(ro,go.finish,go.foffset,fo).fold(()=>Yo.some(Iv(go.finish,go.foffset)),To=>{const No=eo.fromSitus(To),Zo=Tu.verify(eo,go.finish,go.foffset,No.finish,No.foffset,fo.failure,ro);return Ox(Zo)})),tk=(eo,ro,fo,go,To,No)=>No===0?Yo.none():b3(eo,ro,fo,go,To).bind(Zo=>{const ns=eo.fromSitus(Zo),ms=Tu.verify(eo,fo,go,ns.finish,ns.foffset,To.failure,ro);return Tu.cata(ms,()=>Yo.none(),()=>Yo.some(Zo),$s=>bc(fo,$s)&&go===0?g3(eo,fo,go,lO,To):tk(eo,ro,$s,0,To,No-1),$s=>bc(fo,$s)&&go===Ac($s)?g3(eo,fo,go,__,To):tk(eo,ro,$s,Ac($s),To,No-1))}),g3=(eo,ro,fo,go,To)=>Kb(eo,ro,fo).bind(No=>BT(eo,To,go(No,aw.getJumpSize()))),BT=(eo,ro,fo)=>{const go=Zp().browser;return go.isChromium()||go.isSafari()||go.isFirefox()?ro.retry(eo,fo):Yo.none()},b3=(eo,ro,fo,go,To)=>Kb(eo,fo,go).bind(No=>BT(eo,To,No)),$N=(eo,ro,fo)=>lw(eo,ro,fo).bind(go=>tk(eo,ro,go.element,go.offset,fo,IT).map(eo.fromSitus)),FT=(eo,ro)=>vu(eo,fo=>bd(fo).exists(go=>bc(go,ro))),uc=(eo,ro,fo,go,To)=>hu(go,"td,th",ro).bind(No=>hu(No,"table",ro).bind(Zo=>FT(To,Zo)?$N(eo,ro,fo).bind(ns=>hu(ns.finish,"td,th",ro).map(ms=>({start:No,finish:ms,range:ns}))):Yo.none())),db=(eo,ro,fo,go,To,No)=>No(go,ro).orThunk(()=>uc(eo,ro,fo,go,To).map(Zo=>{const ns=Zo.range;return ry.create(Yo.some(aO(ns.start,ns.soffset,ns.finish,ns.foffset)),!0)})),uO=(eo,ro)=>hu(eo,"tr",ro).bind(fo=>hu(fo,"table",ro).bind(go=>{const To=fu(go,"tr");return bc(fo,To[0])?Ul(go,No=>wp(No).isSome(),ro).map(No=>{const Zo=Ac(No);return ry.create(Yo.some(aO(No,Zo,No,Zo)),!0)}):Yo.none()})),wx=(eo,ro)=>hu(eo,"tr",ro).bind(fo=>hu(fo,"table",ro).bind(go=>{const To=fu(go,"tr");return bc(fo,To[To.length-1])?nu(go,No=>Jp(No).isSome(),ro).map(No=>ry.create(Yo.some(aO(No,0,No,0)),!0)):Yo.none()})),HT=(eo,ro,fo,go,To,No,Zo)=>uc(eo,fo,go,To,No).bind(ns=>ay(ro,fo,ns.start,ns.finish,Zo)),cw=eo=>{let ro=eo;return{get:()=>ro,set:To=>{ro=To}}},v3=eo=>{const ro=cw(Yo.none()),fo=()=>ro.get().each(eo);return{clear:()=>{fo(),ro.set(Yo.none())},isSet:()=>ro.get().isSome(),get:()=>ro.get(),set:ns=>{fo(),ro.set(Yo.some(ns))}}},C_=()=>{const eo=v3(wo);return{...eo,on:fo=>eo.get().each(fo)}},nk=(eo,ro)=>hu(eo,"td,th",ro),hg=eo=>Nd(eo).exists(Z1),cH=(eo,ro,fo,go)=>{const To=C_(),No=To.clear,Zo=js=>{To.on(Nr=>{go.clearBeforeUpdate(ro),nk(js.target,fo).each(la=>{qh(Nr,la,fo).each(sa=>{const xr=sa.boxes.getOr([]);if(xr.length===1){const ca=xr[0],Cr=Ah(ca)==="false",Ra=Qf(Hy(js.target),ca,bc);Cr&&Ra&&(go.selectRange(ro,xr,ca,ca),eo.selectContents(ca))}else xr.length>1&&(go.selectRange(ro,xr,sa.start,sa.finish),eo.selectContents(la))})})})};return{clearstate:No,mousedown:js=>{go.clear(ro),nk(js.target,fo).filter(hg).each(To.set)},mouseover:js=>{Zo(js)},mouseup:js=>{Zo(js),No()}}},ok={traverse:sm,gather:Pc,relative:Zf.before,retry:aw.tryDown,failure:Tu.failedDown},k_={traverse:om,gather:Kl,relative:Zf.before,retry:aw.tryUp,failure:Tu.failedUp},uy=eo=>ro=>ro===eo,sk=uy(38),rk=uy(40),dO=eo=>eo>=37&&eo<=40,y3={isBackward:uy(37),isForward:uy(39)},QT={isBackward:uy(39),isForward:uy(37)},O3=eo=>{const ro=eo!==void 0?eo.dom:document,fo=ro.body.scrollLeft||ro.documentElement.scrollLeft,go=ro.body.scrollTop||ro.documentElement.scrollTop;return Ss(fo,go)},x_=(eo,ro,fo)=>{const To=(fo!==void 0?fo.dom:document).defaultView;To&&To.scrollBy(eo,ro)},q0=Qm.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),_3=eo=>q0.exact(eo.start,eo.soffset,eo.finish,eo.foffset),S3=eo=>eo.match({domRange:ro=>Ds.fromDom(ro.startContainer),relative:(ro,fo)=>Zf.getStart(ro),exact:(ro,fo,go,To)=>ro}),VT=q0.domRange,Cx=q0.relative,kx=q0.exact,xx=eo=>{const ro=S3(eo);return Dc(ro)},ik=iy.create,dy={domRange:VT,relative:Cx,exact:kx,exactFromRange:_3,getWin:xx,range:ik},zT=(eo,ro,fo)=>{var go,To;return Yo.from((To=(go=eo.dom).caretPositionFromPoint)===null||To===void 0?void 0:To.call(go,ro,fo)).bind(No=>{if(No.offsetNode===null)return Yo.none();const Zo=eo.dom.createRange();return Zo.setStart(No.offsetNode,No.offset),Zo.collapse(),Yo.some(Zo)})},uw=(eo,ro,fo)=>{var go,To;return Yo.from((To=(go=eo.dom).caretRangeFromPoint)===null||To===void 0?void 0:To.call(go,ro,fo))},Ex=document.caretPositionFromPoint?zT:document.caretRangeFromPoint?uw:Yo.none,w3=(eo,ro,fo)=>{const go=Ds.fromDom(eo.document);return Ex(go,ro,fo).map(To=>iy.create(Ds.fromDom(To.startContainer),To.startOffset,Ds.fromDom(To.endContainer),To.endOffset))},dw=(eo,ro)=>{const fo=pr(eo);return fo==="input"?Zf.after(eo):gs(["br","img"],fo)?ro===0?Zf.before(eo):Zf.after(eo):Zf.on(eo,ro)},C3=(eo,ro)=>{const fo=eo.fold(Zf.before,dw,Zf.after),go=ro.fold(Zf.before,dw,Zf.after);return dy.relative(fo,go)},da=(eo,ro,fo,go)=>{const To=dw(eo,ro),No=dw(fo,go);return dy.relative(To,No)},Nf=(eo,ro,fo,go)=>{const No=Ud(eo).dom.createRange();return No.setStart(eo.dom,ro),No.setEnd(fo.dom,go),No},j0=(eo,ro,fo,go)=>{const To=Nf(eo,ro,fo,go),No=bc(eo,fo)&&ro===go;return To.collapsed&&!No},sf=eo=>Yo.from(eo.getSelection()),Wg=(eo,ro)=>{sf(eo).each(fo=>{fo.removeAllRanges(),fo.addRange(ro)})},ak=(eo,ro,fo,go,To)=>{const No=W0(eo,ro,fo,go,To);Wg(eo,No)},fw=(eo,ro,fo,go,To,No)=>{ro.collapse(fo.dom,go),ro.extend(To.dom,No)},fb=(eo,ro)=>XC(eo,ro).match({ltr:(fo,go,To,No)=>{ak(eo,fo,go,To,No)},rtl:(fo,go,To,No)=>{sf(eo).each(Zo=>{if(Zo.setBaseAndExtent)Zo.setBaseAndExtent(fo.dom,go,To.dom,No);else if(Zo.extend)try{fw(eo,Zo,fo,go,To,No)}catch{ak(eo,To,No,fo,go)}else ak(eo,To,No,fo,go)})}}),lk=(eo,ro,fo,go,To)=>{const No=da(ro,fo,go,To);fb(eo,No)},ck=(eo,ro,fo)=>{const go=C3(ro,fo);fb(eo,go)},E_=eo=>{if(eo.rangeCount>0){const ro=eo.getRangeAt(0),fo=eo.getRangeAt(eo.rangeCount-1);return Yo.some(iy.create(Ds.fromDom(ro.startContainer),ro.startOffset,Ds.fromDom(fo.endContainer),fo.endOffset))}else return Yo.none()},WT=eo=>{if(eo.anchorNode===null||eo.focusNode===null)return E_(eo);{const ro=Ds.fromDom(eo.anchorNode),fo=Ds.fromDom(eo.focusNode);return j0(ro,eo.anchorOffset,fo,eo.focusOffset)?Yo.some(iy.create(ro,eo.anchorOffset,fo,eo.focusOffset)):E_(eo)}},hw=(eo,ro,fo=!0)=>{const To=(fo?tw:b_)(eo,ro);Wg(eo,To)},Tx=eo=>sf(eo).filter(ro=>ro.rangeCount>0).bind(WT),Ax=eo=>Tx(eo).map(ro=>dy.exact(ro.start,ro.soffset,ro.finish,ro.foffset)),k3=(eo,ro)=>{const fo=sw(eo,ro);return gx(fo)},hb=(eo,ro,fo)=>w3(eo,ro,fo),uk=eo=>{sf(eo).each(ro=>ro.removeAllRanges())},T_=eo=>({elementFromPoint:(Cr,Ra)=>Ds.fromPoint(Ds.fromDom(eo.document),Cr,Ra),getRect:Cr=>Cr.dom.getBoundingClientRect(),getRangedRect:(Cr,Ra,dl,Bl)=>{const Gu=dy.exact(Cr,Ra,dl,Bl);return k3(eo,Gu)},getSelection:()=>Ax(eo).map(Cr=>rw(eo,Cr)),fromSitus:Cr=>{const Ra=dy.relative(Cr.start,Cr.finish);return rw(eo,Ra)},situsFromPoint:(Cr,Ra)=>hb(eo,Cr,Ra).map(dl=>YC.create(dl.start,dl.soffset,dl.finish,dl.foffset)),clearSelection:()=>{uk(eo)},collapseSelection:(Cr=!1)=>{Ax(eo).each(Ra=>Ra.fold(dl=>dl.collapse(Cr),(dl,Bl)=>{const Gu=Cr?dl:Bl;ck(eo,Gu,Gu)},(dl,Bl,Gu,qf)=>{const zd=Cr?dl:Gu,dp=Cr?Bl:qf;lk(eo,zd,dp,zd,dp)}))},setSelection:Cr=>{lk(eo,Cr.start,Cr.soffset,Cr.finish,Cr.foffset)},setRelativeSelection:(Cr,Ra)=>{ck(eo,Cr,Ra)},selectNode:Cr=>{hw(eo,Cr,!1)},selectContents:Cr=>{hw(eo,Cr)},getInnerHeight:()=>eo.innerHeight,getScrollY:()=>O3(Ds.fromDom(eo.document)).top,scrollBy:(Cr,Ra)=>{x_(Cr,Ra,Ds.fromDom(eo.document))}}),Nh=(eo,ro)=>({rows:eo,cols:ro}),Sf=(eo,ro,fo,go)=>{const To=T_(eo),No=cH(To,ro,fo,go);return{clearstate:No.clearstate,mousedown:No.mousedown,mouseover:No.mouseover,mouseup:No.mouseup}},dk=eo=>Ef(eo,Mr).exists(Z1),mw=(eo,ro)=>dk(eo)||dk(ro),fk=(eo,ro,fo,go)=>{const To=T_(eo),No=()=>(go.clear(ro),Yo.none());return{keydown:(ms,$s,js,Nr,la,sa)=>{const xr=ms.raw,ca=xr.which,Cr=xr.shiftKey===!0;return Ll(ro,go.selectedSelector).fold(()=>(dO(ca)&&!Cr&&go.clearBeforeUpdate(ro),dO(ca)&&Cr&&!mw($s,Nr)?Yo.none:rk(ca)&&Cr?Ko(HT,To,ro,fo,ok,Nr,$s,go.selectRange):sk(ca)&&Cr?Ko(HT,To,ro,fo,k_,Nr,$s,go.selectRange):rk(ca)?Ko(db,To,fo,ok,Nr,$s,wx):sk(ca)?Ko(db,To,fo,k_,Nr,$s,uO):Yo.none),dl=>{const Bl=Gu=>()=>Vr(Gu,zd=>vx(zd.rows,zd.cols,ro,dl,go)).fold(()=>G1(ro,go.firstSelectedSelector,go.lastSelectedSelector).map(zd=>{const dp=rk(ca)||sa.isForward(ca)?Zf.after:Zf.before;return To.setRelativeSelection(Zf.on(zd.first,0),dp(zd.table)),go.clear(ro),ry.create(Yo.none(),!0)}),zd=>Yo.some(ry.create(Yo.none(),!0)));return dO(ca)&&Cr&&!mw($s,Nr)?Yo.none:rk(ca)&&Cr?Bl([Nh(1,0)]):sk(ca)&&Cr?Bl([Nh(-1,0)]):sa.isBackward(ca)&&Cr?Bl([Nh(0,-1),Nh(-1,0)]):sa.isForward(ca)&&Cr?Bl([Nh(0,1),Nh(1,0)]):dO(ca)&&!Cr?No:Yo.none})()},keyup:(ms,$s,js,Nr,la)=>Ll(ro,go.selectedSelector).fold(()=>{const sa=ms.raw,xr=sa.which;return sa.shiftKey===!0&&dO(xr)&&mw($s,Nr)?v_(ro,fo,$s,js,Nr,la,go.selectRange):Yo.none()},Yo.none)}},pw=(eo,ro,fo,go)=>{const To=T_(eo);return(No,Zo)=>{go.clearBeforeUpdate(ro),qh(No,Zo,fo).each(ns=>{const ms=ns.boxes.getOr([]);go.selectRange(ro,ms,ns.start,ns.finish),To.selectContents(Zo),To.collapseSelection()})}},gw=(eo,ro)=>{const fo=Vu(eo,ro);return fo===void 0||fo===""?[]:fo.split(" ")},A_=(eo,ro,fo)=>{const To=gw(eo,ro).concat([fo]);return zc(eo,ro,To.join(" ")),!0},UT=(eo,ro,fo)=>{const go=_r(gw(eo,ro),To=>To!==fo);return go.length>0?zc(eo,ro,go.join(" ")):ks(eo,ro),!1},bw=eo=>eo.dom.classList!==void 0,ZT=eo=>gw(eo,"class"),qT=(eo,ro)=>A_(eo,"class",ro),jT=(eo,ro)=>UT(eo,"class",ro),Ug=(eo,ro)=>{bw(eo)?eo.dom.classList.add(ro):qT(eo,ro)},Xh=eo=>{(bw(eo)?eo.dom.classList:ZT(eo)).length===0&&ks(eo,"class")},v1=(eo,ro)=>{bw(eo)?eo.dom.classList.remove(ro):jT(eo,ro),Xh(eo)},up=(eo,ro)=>bw(eo)&&eo.dom.classList.contains(ro),vw=(eo,ro)=>{ws(ro,fo=>{v1(eo,fo)})},hk=eo=>ro=>{Ug(ro,eo)},XT=eo=>ro=>{vw(ro,eo)},X0={byClass:eo=>{const ro=hk(eo.selected),fo=XT([eo.selected,eo.lastSelected,eo.firstSelected]),go=No=>{const Zo=fu(No,eo.selectedSelector);ws(Zo,fo)};return{clearBeforeUpdate:go,clear:go,selectRange:(No,Zo,ns,ms)=>{go(No),ws(Zo,ro),Ug(ns,eo.firstSelected),Ug(ms,eo.lastSelected)},selectedSelector:eo.selectedSelector,firstSelectedSelector:eo.firstSelectedSelector,lastSelectedSelector:eo.lastSelectedSelector}},byAttr:(eo,ro,fo)=>{const go=ms=>{ks(ms,eo.selected),ks(ms,eo.firstSelected),ks(ms,eo.lastSelected)},To=ms=>{zc(ms,eo.selected,"1")},No=ms=>{Zo(ms),fo()},Zo=ms=>{const $s=fu(ms,`${eo.selectedSelector},${eo.firstSelectedSelector},${eo.lastSelectedSelector}`);ws($s,go)};return{clearBeforeUpdate:Zo,clear:No,selectRange:(ms,$s,js,Nr)=>{No(ms),ws($s,To),zc(js,eo.firstSelected,"1"),zc(Nr,eo.lastSelected,"1"),ro($s,js,Nr)},selectedSelector:eo.selectedSelector,firstSelectedSelector:eo.firstSelectedSelector,lastSelectedSelector:eo.lastSelectedSelector}}},Ow=(eo,ro,fo,go)=>{switch(eo.tag){case"none":return ro();case"single":return go(eo.element);case"multiple":return fo(eo.elements)}},Px=()=>({tag:"none"}),YT=eo=>({tag:"multiple",elements:eo}),GT=eo=>({tag:"single",element:eo}),$x=(eo,ro,fo)=>({get:()=>Vy(eo(),fo).fold(()=>ro().fold(Px,GT),YT)}),mk=(eo,ro)=>{const fo=eo.slice(0,ro[ro.length-1].row+1),go=od(fo);return Ca(go,To=>{const No=To.cells.slice(0,ro[ro.length-1].column+1);return cr(No,Zo=>Zo.element)})},Au=(eo,ro)=>{const fo=eo.slice(ro[0].row+ro[0].rowspan-1,eo.length),go=od(fo);return Ca(go,To=>{const No=To.cells.slice(ro[0].column+ro[0].colspan-1,To.cells.length);return cr(No,Zo=>Zo.element)})},Y0=(eo,ro,fo)=>{const go=os.fromTable(eo);return Bb(go,ro).map(No=>{const Zo=R0(go,fo,!1),{rows:ns}=fd(Zo),ms=mk(ns,No),$s=Au(ns,No);return{upOrLeftCells:ms,downOrRightCells:$s}})},KT=(eo,ro,fo,go,To,No,Zo)=>({target:eo,x:ro,y:fo,stop:go,prevent:To,kill:No,raw:Zo}),Rx=eo=>{const ro=Ds.fromDom(aa(eo).getOr(eo.target)),fo=()=>eo.stopPropagation(),go=()=>eo.preventDefault(),To=$o(go,fo);return KT(ro,eo.clientX,eo.clientY,fo,go,To,eo)},Dx=(eo,ro)=>fo=>{eo(fo)&&ro(Rx(fo))},fO=(eo,ro,fo,go,To)=>{const No=Dx(fo,go);return eo.dom.addEventListener(ro,No,To),{unbind:Ko(Nx,eo,ro,No,To)}},Mx=(eo,ro,fo,go)=>fO(eo,ro,fo,go,!1),Nx=(eo,ro,fo,go)=>{eo.dom.removeEventListener(ro,fo,go)},E3=rs,P_=(eo,ro,fo)=>Mx(eo,ro,E3,fo),$_=Rx,Lx=eo=>!up(Ds.fromDom(eo.target),"ephox-snooker-resizer-bar"),Ix=(eo,ro)=>{const fo=$x(()=>Ds.fromDom(eo.getBody()),()=>Nv(Zh(eo),s1(eo)),J1.selectedSelector),go=(ms,$s,js)=>{jd($s).each(la=>{const sa=Lg(eo),xr=Qd(wo,Ds.fromDom(eo.getDoc()),sa),ca=Tp(eo),Cr=Y0(la,{selection:ca},xr);X2(eo,ms,$s,js,Cr)})},To=()=>Y2(eo),No=X0.byAttr(J1,go,To);return eo.on("init",ms=>{const $s=eo.getWin(),js=kp(eo),Nr=s1(eo),la=()=>{const yu=eo.selection,wm=Ds.fromDom(yu.getStart()),Lh=Ds.fromDom(yu.getEnd());eu(jd,[wm,Lh]).fold(()=>No.clear(js),wo)},sa=Sf($s,js,Nr,No),xr=fk($s,js,Nr,No),ca=pw($s,js,Nr,No),Cr=yu=>yu.raw.shiftKey===!0;eo.on("TableSelectorChange",yu=>ca(yu.start,yu.finish));const Ra=(yu,wm)=>{Cr(yu)&&(wm.kill&&yu.kill(),wm.selection.each(Lh=>{const gg=dy.relative(Lh.start,Lh.finish),Np=sw($s,gg);eo.selection.setRng(Np)}))},dl=yu=>{const wm=$_(yu);if(wm.raw.shiftKey&&dO(wm.raw.which)){const Lh=eo.selection.getRng(),gg=Ds.fromDom(Lh.startContainer),Np=Ds.fromDom(Lh.endContainer);xr.keyup(wm,gg,Lh.startOffset,Np,Lh.endOffset).each(my=>{Ra(wm,my)})}},Bl=yu=>{const wm=$_(yu);ro.hide();const Lh=eo.selection.getRng(),gg=Ds.fromDom(Lh.startContainer),Np=Ds.fromDom(Lh.endContainer),my=Ov(y3,QT)(Ds.fromDom(eo.selection.getStart()));xr.keydown(wm,gg,Lh.startOffset,Np,Lh.endOffset,my).each(Wm=>{Ra(wm,Wm)}),ro.show()},Gu=yu=>yu.button===0,qf=yu=>yu.buttons===void 0?!0:(yu.buttons&1)!==0,zd=yu=>{sa.clearstate()},dp=yu=>{Gu(yu)&&Lx(yu)&&sa.mousedown($_(yu))},mO=yu=>{qf(yu)&&Lx(yu)&&sa.mouseover($_(yu))},pO=yu=>{Gu(yu)&&Lx(yu)&&sa.mouseup($_(yu))},Ok=(()=>{const yu=cw(Ds.fromDom(js)),wm=cw(0);return{touchEnd:gg=>{const Np=Ds.fromDom(gg.target);if(Vc("td")(Np)||Vc("th")(Np)){const my=yu.get(),Wm=wm.get();bc(my,Np)&&gg.timeStamp-Wm<300&&(gg.preventDefault(),ca(Np,Np))}yu.set(Np),wm.set(gg.timeStamp)}}})();eo.on("dragstart",zd),eo.on("mousedown",dp),eo.on("mouseover",mO),eo.on("mouseup",pO),eo.on("touchend",Ok.touchEnd),eo.on("keyup",dl),eo.on("keydown",Bl),eo.on("NodeChange",la)}),eo.on("PreInit",()=>{eo.serializer.addTempAttr(J1.firstSelected),eo.serializer.addTempAttr(J1.lastSelected)}),{getSelectedCells:()=>Ow(fo.get(),xo([]),ms=>cr(ms,$s=>$s.dom),ms=>[ms.dom]),clearSelectedCells:ms=>No.clear(Ds.fromDom(ms))}},y1=eo=>{let ro=[];return{bind:No=>{if(No===void 0)throw new Error("Event bind error: undefined handler");ro.push(No)},unbind:No=>{ro=_r(ro,Zo=>Zo!==No)},trigger:(...No)=>{const Zo={};ws(eo,(ns,ms)=>{Zo[ns]=No[ms]}),ws(ro,ns=>{ns(Zo)})}}},fy=eo=>{const ro=Ml(eo,go=>({bind:go.bind,unbind:go.unbind})),fo=Ml(eo,go=>go.trigger);return{registry:ro,trigger:fo}},T3=(eo,ro)=>{let fo=null;const go=()=>{Jn(fo)||(clearTimeout(fo),fo=null)};return{cancel:go,throttle:(...No)=>{go(),fo=setTimeout(()=>{fo=null,eo.apply(null,No)},ro)}}},_w=eo=>eo.slice(0).sort(),A3=(eo,ro)=>{throw new Error("All required keys ("+_w(eo).join(", ")+") were not specified. Specified keys were: "+_w(ro).join(", ")+".")},Mp=eo=>{throw new Error("Unsupported keys for object: "+_w(eo).join(", "))},Yh=(eo,ro)=>{if(!Yn(ro))throw new Error("The "+eo+" fields must be an array. Was: "+ro+".");ws(ro,fo=>{if(!Zn(fo))throw new Error("The value "+fo+" in the "+eo+" fields was not a string.")})},hO=(eo,ro)=>{throw new Error("All values need to be of type: "+ro+". Keys ("+_w(eo).join(", ")+") were not.")},RN=eo=>{const ro=_w(eo);zo(ro,(go,To)=>To{throw new Error("The field: "+go+" occurs more than once in the combined fields: ["+ro.join(", ")+"].")})},JT=(eo,ro)=>P3(eo,ro,{validate:bo,label:"function"}),P3=(eo,ro,fo)=>{if(ro.length===0)throw new Error("You must specify at least one required field.");return Yh("required",ro),RN(ro),go=>{const To=nr(go);za(ro,ns=>gs(To,ns))||A3(ro,To),eo(ro,To);const Zo=_r(ro,ns=>!fo.validate(go[ns],ns));return Zo.length>0&&hO(Zo,fo.label),go}},ic=(eo,ro)=>{const fo=_r(ro,go=>!gs(eo,go));fo.length>0&&Mp(fo)},Bx=eo=>JT(ic,eo),eA=Bx(["compare","extract","mutate","sink"]),Fx=Bx(["element","start","stop","destroy"]),$3=Bx(["forceDrop","drop","move","delayDrop"]),R3=()=>{let eo=Yo.none();const ro=()=>{eo=Yo.none()},fo=(No,Zo)=>{const ns=eo.map(ms=>No.compare(ms,Zo));return eo=Yo.some(Zo),ns},go=(No,Zo)=>{Zo.extract(No).each(ms=>{fo(Zo,ms).each(js=>{To.trigger.move(js)})})},To=fy({move:y1(["info"])});return{onEvent:go,reset:ro,events:To.registry}},tA=()=>{const eo=fy({move:y1(["info"])});return{onEvent:wo,reset:wo,events:eo.registry}},D3=()=>{const eo=tA(),ro=R3();let fo=eo;return{on:()=>{fo.reset(),fo=ro},off:()=>{fo.reset(),fo=eo},isOn:()=>fo===ro,onEvent:(ns,ms)=>{fo.onEvent(ns,ms)},events:ro.events}},va=(eo,ro,fo)=>{let go=!1;const To=fy({start:y1([]),stop:y1([])}),No=D3(),Zo=()=>{xr.stop(),No.isOn()&&(No.off(),To.trigger.stop())},ns=T3(Zo,200),ms=Cr=>{xr.start(Cr),No.on(),To.trigger.start()},$s=Cr=>{ns.cancel(),No.onEvent(Cr,ro)};No.events.move.bind(Cr=>{ro.mutate(eo,Cr.info)});const js=()=>{go=!0},Nr=()=>{go=!1},la=()=>go,sa=Cr=>(...Ra)=>{go&&Cr.apply(null,Ra)},xr=ro.sink($3({forceDrop:Zo,drop:sa(Zo),move:sa($s),delayDrop:sa(ns.throttle)}),fo),ca=()=>{xr.destroy()};return{element:xr.element,go:ms,on:js,off:Nr,isActive:la,destroy:ca,events:To.registry}},hy=eo=>{const ro=eo.replace(/\./g,"-");return{resolve:go=>ro+"-"+go}},Sw=hy("ephox-dragster").resolve,ww=eo=>{const ro={layerClass:Sw("blocker"),...eo},fo=Ds.fromTag("div");return zc(fo,"role","presentation"),lf(fo,{position:"fixed",left:"0px",top:"0px",width:"100%",height:"100%"}),Ug(fo,Sw("blocker")),Ug(fo,ro.layerClass),{element:xo(fo),destroy:()=>{ju(fo)}}};var N3=eA({compare:(eo,ro)=>Ss(ro.left-eo.left,ro.top-eo.top),extract:eo=>Yo.some(Ss(eo.x,eo.y)),sink:(eo,ro)=>{const fo=ww(ro),go=P_(fo.element(),"mousedown",eo.forceDrop),To=P_(fo.element(),"mouseup",eo.drop),No=P_(fo.element(),"mousemove",eo.move),Zo=P_(fo.element(),"mouseout",eo.delayDrop),ns=()=>{fo.destroy(),To.unbind(),No.unbind(),Zo.unbind(),go.unbind()},ms=js=>{Qc(js,fo.element())},$s=()=>{ju(fo.element())};return Fx({element:fo.element,start:ms,stop:$s,destroy:ns})},mutate:(eo,ro)=>{eo.mutate(ro.left,ro.top)}});const oA=(eo,ro={})=>{var fo;const go=(fo=ro.mode)!==null&&fo!==void 0?fo:N3;return va(eo,go,ro)},G0=hy("ephox-snooker").resolve,sA=()=>{const eo=fy({drag:y1(["xDelta","yDelta"])});return{mutate:(fo,go)=>{eo.trigger.drag(fo,go)},events:eo.registry}},L3=()=>{const eo=fy({drag:y1(["xDelta","yDelta","target"])});let ro=Yo.none();const fo=sA();return fo.events.drag.bind(No=>{ro.each(Zo=>{eo.trigger.drag(No.xDelta,No.yDelta,Zo)})}),{assign:No=>{ro=Yo.some(No)},get:()=>ro,mutate:fo.mutate,events:eo.registry}},Cw=(eo,ro,fo,go,To)=>{const No=Ds.fromTag("div");return lf(No,{position:"absolute",left:ro-go/2+"px",top:fo+"px",height:To+"px",width:go+"px"}),ad(No,{"data-column":eo,role:"presentation"}),No},I3=(eo,ro,fo,go,To)=>{const No=Ds.fromTag("div");return lf(No,{position:"absolute",left:ro+"px",top:fo-To/2+"px",height:To+"px",width:go+"px"}),ad(No,{"data-row":eo,role:"presentation"}),No},rA=G0("resizer-bar"),Hx=G0("resizer-rows"),iA=G0("resizer-cols"),pk=7,B3=(eo,ro)=>Ca(eo.all,(fo,go)=>ro(fo.element)?[go]:[]),F3=(eo,ro)=>{const fo=[];return Qr(eo.grid.columns,go=>{os.getColumnAt(eo,go).map(No=>No.element).forall(ro)&&fo.push(go)}),_r(fo,go=>{const To=os.filterItems(eo,No=>No.column===go);return za(To,No=>ro(No.element))})},R_=eo=>{const ro=fu(eo.parent(),"."+rA);ws(ro,ju)},Qx=(eo,ro,fo)=>{const go=eo.origin();ws(ro,To=>{To.each(No=>{const Zo=fo(go,No);Ug(Zo,rA),Qc(eo.parent(),Zo)})})},aA=(eo,ro,fo,go)=>{Qx(eo,ro,(To,No)=>{const Zo=Cw(No.col,No.x-To.left,fo.top-To.top,pk,go);return Ug(Zo,iA),Zo})},H3=(eo,ro,fo,go)=>{Qx(eo,ro,(To,No)=>{const Zo=I3(No.row,fo.left-To.left,No.y-To.top,go,pk);return Ug(Zo,Hx),Zo})},Q3=(eo,ro,fo,go,To)=>{const No=Ea(fo),Zo=ro.isResizable,ns=go.length>0?Oa.positions(go,fo):[],ms=ns.length>0?B3(eo,Zo):[],$s=_r(ns,(sa,xr)=>xs(ms,ca=>xr===ca));H3(ro,$s,No,cm(fo));const js=To.length>0?Ad.positions(To,fo):[],Nr=js.length>0?F3(eo,Zo):[],la=_r(js,(sa,xr)=>xs(Nr,ca=>xr===ca));aA(ro,la,No,Eo(fo))},gk=(eo,ro)=>{if(R_(eo),eo.isResizable(ro)){const fo=os.fromTable(ro),go=Ch(fo),To=dm(fo);Q3(fo,eo,ro,go,To)}},Jb=(eo,ro)=>{const fo=fu(eo.parent(),"."+rA);ws(fo,ro)},bk=eo=>{Jb(eo,ro=>{Du(ro,"display","none")})},Bc=eo=>{Jb(eo,ro=>{Du(ro,"display","block")})},V3=eo=>up(eo,Hx),K0=eo=>up(eo,iA),e0=G0("resizer-bar-dragging"),vk=eo=>{const ro=L3(),fo=oA(ro,{});let go=Yo.none();const To=(xr,ca)=>Yo.from(Vu(xr,ca));ro.events.drag.bind(xr=>{To(xr.target,"data-row").each(ca=>{const Cr=Od(xr.target,"top");Du(xr.target,"top",Cr+xr.yDelta+"px")}),To(xr.target,"data-column").each(ca=>{const Cr=Od(xr.target,"left");Du(xr.target,"left",Cr+xr.xDelta+"px")})});const No=(xr,ca)=>{const Cr=Od(xr,ca),Ra=Gc(xr,"data-initial-"+ca,0);return Cr-Ra};fo.events.stop.bind(()=>{ro.get().each(xr=>{go.each(ca=>{To(xr,"data-row").each(Cr=>{const Ra=No(xr,"top");ks(xr,"data-initial-top"),sa.trigger.adjustHeight(ca,Ra,parseInt(Cr,10))}),To(xr,"data-column").each(Cr=>{const Ra=No(xr,"left");ks(xr,"data-initial-left"),sa.trigger.adjustWidth(ca,Ra,parseInt(Cr,10))}),gk(eo,ca)})})});const Zo=(xr,ca)=>{sa.trigger.startAdjust(),ro.assign(xr),zc(xr,"data-initial-"+ca,Od(xr,ca)),Ug(xr,e0),Du(xr,"opacity","0.2"),fo.go(eo.parent())},ns=P_(eo.parent(),"mousedown",xr=>{V3(xr.target)&&Zo(xr.target,"top"),K0(xr.target)&&Zo(xr.target,"left")}),ms=xr=>bc(xr,eo.view()),$s=xr=>hu(xr,"table",ms).filter(Z1),js=P_(eo.view(),"mouseover",xr=>{$s(xr.target).fold(()=>{Bu(xr.target)&&R_(eo)},ca=>{fo.isActive()&&(go=Yo.some(ca),gk(eo,ca))})}),Nr=()=>{ns.unbind(),js.unbind(),fo.destroy(),R_(eo)},la=xr=>{gk(eo,xr)},sa=fy({adjustHeight:y1(["table","delta","row"]),adjustWidth:y1(["table","delta","column"]),startAdjust:y1([])});return{destroy:Nr,refresh:la,on:fo.on,off:fo.off,hideBars:Ko(bk,eo),showBars:Ko(Bc,eo),events:sa.registry}},yk={create:(eo,ro,fo)=>{const go=Oa,To=Ad,No=vk(eo),Zo=fy({beforeResize:y1(["table","type"]),afterResize:y1(["table","type"]),startDrag:y1([])});return No.events.adjustHeight.bind(ns=>{const ms=ns.table;Zo.trigger.beforeResize(ms,"row");const $s=go.delta(ns.delta,ms);e_(ms,$s,ns.row,go),Zo.trigger.afterResize(ms,"row")}),No.events.startAdjust.bind(ns=>{Zo.trigger.startDrag()}),No.events.adjustWidth.bind(ns=>{const ms=ns.table;Zo.trigger.beforeResize(ms,"col");const $s=To.delta(ns.delta,ms),js=fo(ms);Gv(ms,$s,ns.column,ro,js),Zo.trigger.afterResize(ms,"col")}),{on:No.on,off:No.off,refreshBars:No.refresh,hideBars:No.hideBars,showBars:No.showBars,destroy:No.destroy,events:Zo.registry}}},Vx={only:(eo,ro)=>{const fo=vl(eo)?oc(eo):eo;return{parent:xo(fo),view:xo(eo),origin:xo(Ss(0,0)),isResizable:ro}},detached:(eo,ro,fo)=>{const go=()=>Ea(ro);return{parent:xo(ro),view:xo(eo),origin:go,isResizable:fo}},body:(eo,ro,fo)=>({parent:xo(ro),view:xo(eo),origin:xo(Ss(0,0)),isResizable:fo})},z3=()=>{const eo=Ds.fromTag("div");return lf(eo,{position:"static",height:"0",width:"0",padding:"0",margin:"0",border:"0"}),Qc(Uo(),eo),eo},zx=(eo,ro)=>eo.inline?Vx.body(Ds.fromDom(eo.getBody()),z3(),ro):Vx.only(Ds.fromDom(eo.getDoc()),ro),W3=(eo,ro)=>{eo.inline&&ju(ro.parent())},dc=eo=>mo(eo)&&eo.nodeName==="TABLE",pg="bar-",ev=eo=>Vu(eo,"data-mce-resize")!=="false",U3=eo=>{const ro=os.fromTable(eo);os.hasColumns(ro)||ws(Yf(eo),fo=>{const go=qd(fo,"width");Du(fo,"width",go),ks(fo,"width")})},M_=eo=>{const ro=C_(),fo=C_(),go=C_();let To,No;const Zo=xr=>Dh(eo,xr),ns=()=>z1(eo)?OS():mC(),ms=xr=>Fv(xr).columns,$s=(xr,ca,Cr)=>{const Ra=Pm(ca,"e");if(No===""&&$p(xr),Cr!==To&&No!==""){Du(xr,"width",No);const dl=ns(),Bl=Zo(xr),Gu=z1(eo)||Ra?ms(xr)-1:0;Gv(xr,Cr-To,Gu,dl,Bl)}else if(MO(No)){const dl=parseFloat(No.replace("%","")),Bl=Cr*dl/To;Du(xr,"width",Bl+"%")}kv(No)&&U3(xr)},js=()=>{fo.on(xr=>{xr.destroy()}),go.on(xr=>{W3(eo,xr)})};return eo.on("init",()=>{const xr=zx(eo,ev);if(go.set(xr),lC(eo)&&T0(eo)){const ca=ns(),Cr=yk.create(xr,ca,Zo);Cr.on(),Cr.events.startDrag.bind(Ra=>{ro.set(eo.selection.getRng())}),Cr.events.beforeResize.bind(Ra=>{const dl=Ra.table.dom;VS(eo,dl,xp(dl),q1(dl),pg+Ra.type)}),Cr.events.afterResize.bind(Ra=>{const dl=Ra.table,Bl=dl.dom;Ig(dl),ro.on(Gu=>{eo.selection.setRng(Gu),eo.focus()}),zS(eo,Bl,xp(Bl),q1(Bl),pg+Ra.type),eo.undoManager.add()}),fo.set(Cr)}}),eo.on("ObjectResizeStart",xr=>{const ca=xr.target;if(dc(ca)){const Cr=Ds.fromDom(ca);ws(eo.dom.select(".mce-clonedresizable"),Ra=>{eo.dom.addClass(Ra,"mce-"+By(eo)+"-columns")}),!ny(Cr)&&W1(eo)?oy(Cr):!ty(Cr)&&tg(eo)&&$p(Cr),u_(Cr)&&Am(xr.origin,pg)&&$p(Cr),To=xr.width,No=U1(eo)?"":hS(eo,ca).getOr("")}}),eo.on("ObjectResized",xr=>{const ca=xr.target;if(dc(ca)){const Cr=Ds.fromDom(ca),Ra=xr.origin;Am(Ra,"corner-")&&$s(Cr,Ra,xr.width),Ig(Cr),V0(eo,Cr.dom,ab)}}),eo.on("SwitchMode",()=>{fo.on(xr=>{eo.mode.isReadOnly()?xr.hideBars():xr.showBars()})}),eo.on("dragstart dragend",xr=>{fo.on(ca=>{xr.type==="dragstart"?(ca.hideBars(),ca.off()):(ca.on(),ca.showBars())})}),eo.on("remove",()=>{js()}),{refresh:xr=>{fo.on(ca=>ca.refreshBars(Ds.fromDom(xr)))},hide:()=>{fo.on(xr=>xr.hideBars())},show:()=>{fo.on(xr=>xr.showBars())}}},wc=eo=>{E0(eo);const ro=M_(eo),fo=Ix(eo,ro),go=a_(eo,ro,fo);return jb(eo,go),fx(eo,go),fC(eo,go),{getSelectedCells:fo.getSelectedCells,clearSelectedCells:fo.clearSelectedCells}},Z3=eo=>({table:wc(eo)});var Wx=()=>{_n.add("dom",Z3)};Wx()})();tinymce.IconManager.add("default",{icons:{"accessibility-check":'',"accordion-toggle":'',accordion:'',"action-next":'',"action-prev":'',addtag:'',"ai-prompt":'',ai:'',"align-center":'',"align-justify":'',"align-left":'',"align-none":'',"align-right":'',"arrow-left":'',"arrow-right":'',bold:'',bookmark:'',"border-style":'',"border-width":'',brightness:'',browse:'',cancel:'',"cell-background-color":'',"cell-border-color":'',"change-case":'',"character-count":'',"checklist-rtl":'',checklist:'',checkmark:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',close:'',"code-sample":'',"color-levels":'',"color-picker":'',"color-swatch-remove-color":'',"color-swatch":'',"comment-add":'',comment:'',contrast:'',copy:'',crop:'',"cut-column":'',"cut-row":'',cut:'',"document-properties":'',drag:'',"duplicate-column":'',"duplicate-row":'',duplicate:'',"edit-block":'',"edit-image":'',"embed-page":'',embed:'',emoji:'',export:'',fill:'',"flip-horizontally":'',"flip-vertically":'',footnote:'',"format-painter":'',format:'',fullscreen:'',gallery:'',gamma:'',help:'',"highlight-bg-color":'',home:'',"horizontal-rule":'',"image-options":'',image:'',indent:'',info:'',"insert-character":'',"insert-time":'',invert:'',italic:'',language:'',"line-height":'',line:'',link:'',"list-bull-circle":'',"list-bull-default":'',"list-bull-square":'',"list-num-default-rtl":'',"list-num-default":'',"list-num-lower-alpha-rtl":'',"list-num-lower-alpha":'',"list-num-lower-greek-rtl":'',"list-num-lower-greek":'',"list-num-lower-roman-rtl":'',"list-num-lower-roman":'',"list-num-upper-alpha-rtl":'',"list-num-upper-alpha":'',"list-num-upper-roman-rtl":'',"list-num-upper-roman":'',lock:'',ltr:'',minus:'',"more-drawer":'',"new-document":'',"new-tab":'',"non-breaking":'',notice:'',"ordered-list-rtl":'',"ordered-list":'',orientation:'',outdent:'',"page-break":'',paragraph:'',"paste-column-after":'',"paste-column-before":'',"paste-row-after":'',"paste-row-before":'',"paste-text":'',paste:'',"permanent-pen":'',plus:'',preferences:'',preview:'',print:'',quote:'',redo:'',reload:'',"remove-formatting":'',remove:'',"resize-handle":'',resize:'',"restore-draft":'',"rotate-left":'',"rotate-right":'',rtl:'',save:'',search:'',"select-all":'',selected:'',send:'',settings:'',sharpen:'',sourcecode:'',"spell-check":'',"strike-through":'',subscript:'',superscript:'',"table-caption":'',"table-cell-classes":'',"table-cell-properties":'',"table-cell-select-all":'',"table-cell-select-inner":'',"table-classes":'',"table-delete-column":'',"table-delete-row":'',"table-delete-table":'',"table-insert-column-after":'',"table-insert-column-before":'',"table-insert-row-above":'',"table-insert-row-after":'',"table-left-header":'',"table-merge-cells":'',"table-row-numbering-rtl":'',"table-row-numbering":'',"table-row-properties":'',"table-split-cells":'',"table-top-header":'',table:'',"template-add":'',template:'',"temporary-placeholder":'',"text-color":'',"text-size-decrease":'',"text-size-increase":'',toc:'',translate:'',typography:'',underline:'',undo:'',unlink:'',unlock:'',"unordered-list":'',unselected:'',upload:'',user:'',"vertical-align":'',visualblocks:'',visualchars:'',warning:'',"zoom-in":'',"zoom-out":''}});(function(){const _n=Object.getPrototypeOf,Ce=(Qn,Un,Xn)=>{var Kn;return Xn(Qn,Un.prototype)?!0:((Kn=Qn.constructor)===null||Kn===void 0?void 0:Kn.name)===Un.name},ke=Qn=>{const Un=typeof Qn;return Qn===null?"null":Un==="object"&&Array.isArray(Qn)?"array":Un==="object"&&Ce(Qn,String,(Xn,Kn)=>Kn.isPrototypeOf(Xn))?"string":Un},$n=Qn=>Un=>ke(Un)===Qn,Hn=Qn=>Un=>typeof Un===Qn,zn=Qn=>Un=>Qn===Un,Zn=(Qn,Un)=>Yn(Qn)&&Ce(Qn,Un,(Xn,Kn)=>_n(Xn)===Kn),qn=$n("string"),Yn=$n("object"),Jn=Qn=>Zn(Qn,Object),to=$n("array"),io=zn(null),uo=Hn("boolean"),mo=zn(void 0),bo=Qn=>Qn==null,Oo=Qn=>!bo(Qn),wo=Hn("function"),$o=Hn("number"),Do=(Qn,Un)=>{if(to(Qn)){for(let Xn=0,Kn=Qn.length;Xn{},Bo=Qn=>()=>Qn(),Vo=(Qn,Un)=>(...Xn)=>Qn(Un.apply(null,Xn)),Ko=(Qn,Un)=>Xn=>Qn(Un(Xn)),Mo=Qn=>()=>Qn,es=Qn=>Qn,ls=(Qn,Un)=>Qn===Un;function ps(Qn,...Un){return(...Xn)=>{const Kn=Un.concat(Xn);return Qn.apply(null,Kn)}}const rs=Qn=>Un=>!Qn(Un),Yo=Qn=>()=>{throw new Error(Qn)},Ys=Qn=>Qn(),sr=Mo(!1),Js=Mo(!0);class ko{constructor(Un,Xn){this.tag=Un,this.value=Xn}static some(Un){return new ko(!0,Un)}static none(){return ko.singletonNone}fold(Un,Xn){return this.tag?Xn(this.value):Un()}isSome(){return this.tag}isNone(){return!this.tag}map(Un){return this.tag?ko.some(Un(this.value)):ko.none()}bind(Un){return this.tag?Un(this.value):ko.none()}exists(Un){return this.tag&&Un(this.value)}forall(Un){return!this.tag||Un(this.value)}filter(Un){return!this.tag||Un(this.value)?this:ko.none()}getOr(Un){return this.tag?this.value:Un}or(Un){return this.tag?this:Un}getOrThunk(Un){return this.tag?this.value:Un()}orThunk(Un){return this.tag?this:Un()}getOrDie(Un){if(this.tag)return this.value;throw new Error(Un??"Called getOrDie on None")}static from(Un){return Oo(Un)?ko.some(Un):ko.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Un){this.tag&&Un(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}ko.singletonNone=new ko(!1);const gs=Array.prototype.slice,xs=Array.prototype.indexOf,Qr=Array.prototype.push,cr=(Qn,Un)=>xs.call(Qn,Un),ws=(Qn,Un)=>{const Xn=cr(Qn,Un);return Xn===-1?ko.none():ko.some(Xn)},Fs=(Qn,Un)=>cr(Qn,Un)>-1,Br=(Qn,Un)=>{for(let Xn=0,Kn=Qn.length;Xn{const Xn=[];for(let Kn=0;Kn{const Xn=[];for(let Kn=0;Kn{const Xn=Qn.length,Kn=new Array(Xn);for(let oo=0;oo{for(let Xn=0,Kn=Qn.length;Xn{for(let Xn=Qn.length-1;Xn>=0;Xn--){const Kn=Qn[Xn];Un(Kn,Xn)}},el=(Qn,Un)=>{const Xn=[],Kn=[];for(let oo=0,lo=Qn.length;oo{const Xn=[];for(let Kn=0,oo=Qn.length;Kn(zo(Qn,(Kn,oo)=>{Xn=Un(Xn,Kn,oo)}),Xn),za=(Qn,Un,Xn)=>(Qs(Qn,(Kn,oo)=>{Xn=Un(Xn,Kn,oo)}),Xn),Il=(Qn,Un,Xn)=>{for(let Kn=0,oo=Qn.length;KnIl(Qn,Un,sr),Sr=(Qn,Un)=>{for(let Xn=0,Kn=Qn.length;Xn{const Un=[];for(let Xn=0,Kn=Qn.length;XnUs(hs(Qn,Un)),dr=(Qn,Un)=>{for(let Xn=0,Kn=Qn.length;Xn{const Un=gs.call(Qn,0);return Un.reverse(),Un},nr=(Qn,Un)=>ga(Qn,Xn=>!Fs(Un,Xn)),Kr=(Qn,Un)=>{const Xn={};for(let Kn=0,oo=Qn.length;Kn[Qn],Ml=(Qn,Un)=>{const Xn=gs.call(Qn,0);return Xn.sort(Un),Xn},xa=(Qn,Un)=>Un>=0&&Unxa(Qn,0),Zc=Qn=>xa(Qn,Qn.length-1),cc=wo(Array.from)?Array.from:Qn=>gs.call(Qn),gc=(Qn,Un)=>{for(let Xn=0;Xn{const Xn=nc(Qn);for(let Kn=0,oo=Xn.length;KnFc(Qn,(Xn,Kn)=>({k:Kn,v:Un(Xn,Kn)})),Fc=(Qn,Un)=>{const Xn={};return Zl(Qn,(Kn,oo)=>{const lo=Un(Kn,oo);Xn[lo.k]=lo.v}),Xn},qa=Qn=>(Un,Xn)=>{Qn[Xn]=Un},Ya=(Qn,Un,Xn,Kn)=>{Zl(Qn,(oo,lo)=>{(Un(oo,lo)?Xn:Kn)(oo,lo)})},kc=(Qn,Un)=>{const Xn={},Kn={};return Ya(Qn,Un,qa(Xn),qa(Kn)),{t:Xn,f:Kn}},Yl=(Qn,Un)=>{const Xn={};return Ya(Qn,Un,qa(Xn),xo),Xn},rd=(Qn,Un)=>{const Xn=[];return Zl(Qn,(Kn,oo)=>{Xn.push(Un(Kn,oo))}),Xn},Al=(Qn,Un)=>{const Xn=nc(Qn);for(let Kn=0,oo=Xn.length;Knrd(Qn,es),Rr=(Qn,Un)=>Pl(Qn,Un)?ko.from(Qn[Un]):ko.none(),Pl=(Qn,Un)=>Ed.call(Qn,Un),Su=(Qn,Un)=>Pl(Qn,Un)&&Qn[Un]!==void 0&&Qn[Un]!==null,vs=(Qn,Un,Xn=ls)=>Qn.exists(Kn=>Xn(Kn,Un)),Es=(Qn,Un,Xn=ls)=>ia(Qn,Un,Xn).getOr(Qn.isNone()&&Un.isNone()),Ks=Qn=>{const Un=[],Xn=Kn=>{Un.push(Kn)};for(let Kn=0;Kn{const Un=[];for(let Xn=0;XnQn.isSome()&&Un.isSome()?ko.some(Xn(Qn.getOrDie(),Un.getOrDie())):ko.none(),ka=(Qn,Un,Xn,Kn)=>Qn.isSome()&&Un.isSome()&&Xn.isSome()?ko.some(Kn(Qn.getOrDie(),Un.getOrDie(),Xn.getOrDie())):ko.none(),Ma=(Qn,Un)=>Qn!=null?ko.some(Un(Qn)):ko.none(),Mr=(Qn,Un)=>Qn?ko.some(Un):ko.none(),il=(Qn,Un)=>Qn+Un,Na=(Qn,Un)=>Qn.substring(Un),vl=(Qn,Un,Xn)=>Un===""||Qn.length>=Un.length&&Qn.substr(Xn,Xn+Un.length)===Un,Rc=(Qn,Un)=>zc(Qn,Un)?Na(Qn,Un.length):Qn,Vc=(Qn,Un)=>ad(Qn,Un)?Qn:il(Qn,Un),xc=(Qn,Un,Xn=0,Kn)=>{const oo=Qn.indexOf(Un,Xn);return oo!==-1?mo(Kn)?!0:oo+Un.length<=Kn:!1},zc=(Qn,Un)=>vl(Qn,Un,0),ad=(Qn,Un)=>vl(Qn,Un,Qn.length-Un.length),Vu=(Qn=>Un=>Un.replace(Qn,""))(/^\s+|\s+$/g),Ts=Qn=>Qn.length>0,ks=Qn=>!Ts(Qn),ir=Qn=>Qn.style!==void 0&&wo(Qn.style.getPropertyValue),br=(Qn,Un)=>{const Kn=(Un||document).createElement("div");if(Kn.innerHTML=Qn,!Kn.hasChildNodes()||Kn.childNodes.length>1){const oo="HTML does not have a single root node";throw console.error(oo,Qn),new Error(oo)}return _l(Kn.childNodes[0])},Aa=(Qn,Un)=>{const Kn=(Un||document).createElement(Qn);return _l(Kn)},Ba=(Qn,Un)=>{const Kn=(Un||document).createTextNode(Qn);return _l(Kn)},_l=Qn=>{if(Qn==null)throw new Error("Node cannot be null or undefined");return{dom:Qn}},Ds={fromHtml:br,fromTag:Aa,fromText:Ba,fromDom:_l,fromPoint:(Qn,Un,Xn)=>ko.from(Qn.dom.elementFromPoint(Un,Xn)).map(_l)},tl=typeof window<"u"?window:Function("return this;")(),wu=(Qn,Un)=>{let Xn=Un??tl;for(let Kn=0;Kn{const Xn=Qn.split(".");return wu(Xn,Un)},Md=(Qn,Un)=>qu(Qn,Un),bc=(Qn,Un)=>{const Xn=Md(Qn,Un);if(Xn==null)throw new Error(Qn+" not available on this browser");return Xn},nm=Object.getPrototypeOf,Ff=Qn=>bc("HTMLElement",Qn),Ud=Qn=>{const Un=qu("ownerDocument.defaultView",Qn);return Yn(Qn)&&(Ff(Un).prototype.isPrototypeOf(Qn)||/^HTML\w*Element$/.test(nm(Qn).constructor.name))},ld=9,oc=11,Dc=1,bd=3,Nd=Qn=>Qn.dom.nodeName.toLowerCase(),ih=Qn=>Qn.dom.nodeType,om=Qn=>Un=>ih(Un)===Qn,sm=Qn=>fc(Qn)&&Ud(Qn.dom),fc=om(Dc),Td=om(bd),Jd=om(ld),Em=om(oc),ef=Qn=>Un=>fc(Un)&&Nd(Un)===Qn,Cu=(Qn,Un)=>{const Xn=Qn.dom;if(Xn.nodeType!==Dc)return!1;{const Kn=Xn;if(Kn.matches!==void 0)return Kn.matches(Un);if(Kn.msMatchesSelector!==void 0)return Kn.msMatchesSelector(Un);if(Kn.webkitMatchesSelector!==void 0)return Kn.webkitMatchesSelector(Un);if(Kn.mozMatchesSelector!==void 0)return Kn.mozMatchesSelector(Un);throw new Error("Browser lacks native selectors")}},Qc=Qn=>Qn.nodeType!==Dc&&Qn.nodeType!==ld&&Qn.nodeType!==oc||Qn.childElementCount===0,Cf=(Qn,Un)=>{const Xn=Un===void 0?document:Un.dom;return Qc(Xn)?[]:hs(Xn.querySelectorAll(Qn),Ds.fromDom)},qm=(Qn,Un)=>{const Xn=Un===void 0?document:Un.dom;return Qc(Xn)?ko.none():ko.from(Xn.querySelector(Qn)).map(Ds.fromDom)},Oc=(Qn,Un)=>Qn.dom===Un.dom,cd=(Qn,Un)=>{const Xn=Qn.dom,Kn=Un.dom;return Xn===Kn?!1:Xn.contains(Kn)},vd=Qn=>Ds.fromDom(Qn.dom.ownerDocument),ju=Qn=>Jd(Qn)?Qn:vd(Qn),Xf=Qn=>Ds.fromDom(ju(Qn).dom.documentElement),Sh=Qn=>Ds.fromDom(ju(Qn).dom.defaultView),Zd=Qn=>ko.from(Qn.dom.parentNode).map(Ds.fromDom),ah=Qn=>Zd(Qn),lh=Qn=>ko.from(Qn.dom.parentElement).map(Ds.fromDom),Bp=(Qn,Un)=>{const Xn=wo(Un)?Un:sr;let Kn=Qn.dom;const oo=[];for(;Kn.parentNode!==null&&Kn.parentNode!==void 0;){const lo=Kn.parentNode,ho=Ds.fromDom(lo);if(oo.push(ho),Xn(ho)===!0)break;Kn=lo}return oo},ch=Qn=>ko.from(Qn.dom.offsetParent).map(Ds.fromDom),bp=Qn=>ko.from(Qn.dom.nextSibling).map(Ds.fromDom),kf=Qn=>hs(Qn.dom.childNodes,Ds.fromDom),Fh=(Qn,Un)=>{const Xn=Qn.dom.childNodes;return ko.from(Xn[Un]).map(Ds.fromDom)},jm=Qn=>Fh(Qn,0),Fp=(Qn,Un)=>({element:Qn,offset:Un}),Eg=(Qn,Un)=>{const Xn=kf(Qn);return Xn.length>0&&UnEm(Qn)&&Oo(Qn.dom.host),As=wo(Element.prototype.attachShadow)&&wo(Node.prototype.getRootNode),Ws=Mo(As),rr=As?Qn=>Ds.fromDom(Qn.dom.getRootNode()):ju,Fr=Qn=>ss(Qn)?Qn:Ds.fromDom(ju(Qn).dom.body),Wa=Qn=>Nc(Qn).isSome(),Nc=Qn=>{const Un=rr(Qn);return ss(Un)?ko.some(Un):ko.none()},xl=Qn=>Ds.fromDom(Qn.dom.host),ul=Qn=>{if(Ws()&&Oo(Qn.target)){const Un=Ds.fromDom(Qn.target);if(fc(Un)&&lu(Un)&&Qn.composed&&Qn.composedPath){const Xn=Qn.composedPath();if(Xn)return Nl(Xn)}}return ko.from(Qn.target)},lu=Qn=>Oo(Qn.dom.shadowRoot),Gl=Qn=>{const Un=Td(Qn)?Qn.dom.parentNode:Qn.dom;if(Un==null||Un.ownerDocument===null)return!1;const Xn=Un.ownerDocument;return Nc(Ds.fromDom(Un)).fold(()=>Xn.body.contains(Un),Ko(Gl,xl))},Ru=()=>xf(Ds.fromDom(document)),xf=Qn=>{const Un=Qn.dom.body;if(Un==null)throw new Error("Body is not available yet");return Ds.fromDom(Un)},Hp=(Qn,Un,Xn)=>{if(qn(Xn)||uo(Xn)||$o(Xn))Qn.setAttribute(Un,Xn+"");else throw console.error("Invalid call to Attribute.set. Key ",Un,":: Value ",Xn,":: Element ",Qn),new Error("Attribute value was not simple")},aa=(Qn,Un,Xn)=>{Hp(Qn.dom,Un,Xn)},Qp=(Qn,Un)=>{const Xn=Qn.dom;Zl(Un,(Kn,oo)=>{Hp(Xn,oo,Kn)})},Bu=(Qn,Un)=>{const Xn=Qn.dom.getAttribute(Un);return Xn===null?void 0:Xn},Uo=(Qn,Un)=>ko.from(Bu(Qn,Un)),cs=(Qn,Un)=>{const Xn=Qn.dom;return Xn&&Xn.hasAttribute?Xn.hasAttribute(Un):!1},_s=(Qn,Un)=>{Qn.dom.removeAttribute(Un)},ar=Qn=>za(Qn.dom.attributes,(Un,Xn)=>(Un[Xn.name]=Xn.value,Un),{}),ta=(Qn,Un,Xn)=>{if(!qn(Xn))throw console.error("Invalid call to CSS.set. Property ",Un,":: Value ",Xn,":: Element ",Qn),new Error("CSS value must be a string: "+Xn);ir(Qn)&&Qn.style.setProperty(Un,Xn)},al=(Qn,Un)=>{ir(Qn)&&Qn.style.removeProperty(Un)},ya=(Qn,Un,Xn)=>{const Kn=Qn.dom;ta(Kn,Un,Xn)},fu=(Qn,Un)=>{const Xn=Qn.dom;Zl(Un,(Kn,oo)=>{ta(Xn,oo,Kn)})},Lr=(Qn,Un)=>{const Xn=Qn.dom;Zl(Un,(Kn,oo)=>{Kn.fold(()=>{al(Xn,oo)},lo=>{ta(Xn,oo,lo)})})},qc=(Qn,Un)=>{const Xn=Qn.dom,oo=window.getComputedStyle(Xn).getPropertyValue(Un);return oo===""&&!Gl(Qn)?Ef(Xn,Un):oo},Ef=(Qn,Un)=>ir(Qn)?Qn.style.getPropertyValue(Un):"",ku=(Qn,Un)=>{const Xn=Qn.dom,Kn=Ef(Xn,Un);return ko.from(Kn).filter(oo=>oo.length>0)},jc=Qn=>{const Un={},Xn=Qn.dom;if(ir(Xn))for(let Kn=0;Kn{const Kn=Ds.fromTag(Qn);return ya(Kn,Un,Xn),ku(Kn,Un).isSome()},El=(Qn,Un)=>{const Xn=Qn.dom;al(Xn,Un),vs(Uo(Qn,"style").map(Vu),"")&&_s(Qn,"style")},Hf=Qn=>Qn.dom.offsetWidth,hu=(Qn,Un)=>{const Xn=(yo,Co)=>{if(!$o(Co)&&!Co.match(/^[0-9]+$/))throw new Error(Qn+".set accepts only positive integer values. Value was "+Co);const Ro=yo.dom;ir(Ro)&&(Ro.style[Qn]=Co+"px")},Kn=yo=>{const Co=Un(yo);if(Co<=0||Co===null){const Ro=qc(yo,Qn);return parseFloat(Ro)||0}return Co},oo=Kn,lo=(yo,Co)=>za(Co,(Ro,Lo)=>{const Wo=qc(yo,Lo),jo=Wo===void 0?0:parseInt(Wo,10);return isNaN(jo)?Ro:Ro+jo},0);return{set:Xn,get:Kn,getOuter:oo,aggregate:lo,max:(yo,Co,Ro)=>{const Lo=lo(yo,Ro);return Co>Lo?Co-Lo:0}}},Qf=hu("height",Qn=>{const Un=Qn.dom;return Gl(Qn)?Un.getBoundingClientRect().height:Un.offsetHeight}),cu=Qn=>Qf.get(Qn),Vp=Qn=>Qf.getOuter(Qn),ud=(Qn,Un)=>{const Xn=["margin-top","border-top-width","padding-top","padding-bottom","border-bottom-width","margin-bottom"],Kn=Qf.max(Qn,Un,Xn);ya(Qn,"max-height",Kn+"px")},vp=(Qn,Un)=>({left:Qn,top:Un,translate:(Kn,oo)=>vp(Qn+Kn,Un+oo)}),vc=vp,Am=Qn=>{const Un=Qn.getBoundingClientRect();return vc(Un.left,Un.top)},Pm=(Qn,Un)=>Qn!==void 0?Qn:Un!==void 0?Un:0,uh=Qn=>{const Un=Qn.dom.ownerDocument,Xn=Un.body,Kn=Un.defaultView,oo=Un.documentElement;if(Xn===Qn.dom)return vc(Xn.offsetLeft,Xn.offsetTop);const lo=Pm(Kn==null?void 0:Kn.pageYOffset,oo.scrollTop),ho=Pm(Kn==null?void 0:Kn.pageXOffset,oo.scrollLeft),yo=Pm(oo.clientTop,Xn.clientTop),Co=Pm(oo.clientLeft,Xn.clientLeft);return Hh(Qn).translate(ho-Co,lo-yo)},Hh=Qn=>{const Un=Qn.dom,Kn=Un.ownerDocument.body;return Kn===Un?vc(Kn.offsetLeft,Kn.offsetTop):Gl(Qn)?Am(Un):vc(0,0)},A1=hu("width",Qn=>Qn.dom.offsetWidth),ql=(Qn,Un)=>A1.set(Qn,Un),dd=Qn=>A1.get(Qn),yd=Qn=>A1.getOuter(Qn),mv=(Qn,Un)=>{const Xn=["margin-left","border-left-width","padding-left","padding-right","border-right-width","margin-right"],Kn=A1.max(Qn,Un,Xn);ya(Qn,"max-width",Kn+"px")},Du=Qn=>{let Un=!1,Xn;return(...Kn)=>(Un||(Un=!0,Xn=Qn.apply(null,Kn)),Xn)},lf=(Qn,Un,Xn,Kn)=>{const oo=Qn.isiOS()&&/ipad/i.test(Xn)===!0,lo=Qn.isiOS()&&!oo,ho=Qn.isiOS()||Qn.isAndroid(),yo=ho||Kn("(pointer:coarse)"),Co=oo||!lo&&ho&&Kn("(min-device-width:768px)"),Ro=lo||ho&&!Co,Lo=Un.isSafari()&&Qn.isiOS()&&/safari/i.test(Xn)===!1,Wo=!Ro&&!Co&&!Lo;return{isiPad:Mo(oo),isiPhone:Mo(lo),isTablet:Mo(Co),isPhone:Mo(Ro),isTouch:Mo(yo),isAndroid:Qn.isAndroid,isiOS:Qn.isiOS,isWebView:Mo(Lo),isDesktop:Mo(Wo)}},qd=(Qn,Un)=>{for(let Xn=0;Xn{const Xn=qd(Qn,Un);if(!Xn)return{major:0,minor:0};const Kn=oo=>Number(Un.replace(Xn,"$"+oo));return Xg(Kn(1),Kn(2))},Tb=(Qn,Un)=>{const Xn=String(Un).toLowerCase();return Qn.length===0?Qh():Eb(Qn,Xn)},Qh=()=>Xg(0,0),Xg=(Qn,Un)=>({major:Qn,minor:Un}),Gc={nu:Xg,detect:Tb,unknown:Qh},im=(Qn,Un)=>gc(Un.brands,Xn=>{const Kn=Xn.brand.toLowerCase();return Zs(Qn,oo=>{var lo;return Kn===((lo=oo.brand)===null||lo===void 0?void 0:lo.toLowerCase())}).map(oo=>({current:oo.name,version:Gc.nu(parseInt(Xn.version,10),0)}))}),Tf=(Qn,Un)=>{const Xn=String(Un).toLowerCase();return Zs(Qn,Kn=>Kn.search(Xn))},Ld=(Qn,Un)=>Tf(Qn,Un).map(Xn=>{const Kn=Gc.detect(Xn.versionRegexes,Un);return{current:Xn.name,version:Kn}}),Od=(Qn,Un)=>Tf(Qn,Un).map(Xn=>{const Kn=Gc.detect(Xn.versionRegexes,Un);return{current:Xn.name,version:Kn}}),Mu=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Vh=Qn=>Un=>xc(Un,Qn),zp=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:Qn=>xc(Qn,"edge/")&&xc(Qn,"chrome")&&xc(Qn,"safari")&&xc(Qn,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Mu],search:Qn=>xc(Qn,"chrome")&&!xc(Qn,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:Qn=>xc(Qn,"msie")||xc(Qn,"trident")},{name:"Opera",versionRegexes:[Mu,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Vh("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Vh("firefox")},{name:"Safari",versionRegexes:[Mu,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:Qn=>(xc(Qn,"safari")||xc(Qn,"mobile/"))&&xc(Qn,"applewebkit")}],Tg=[{name:"Windows",search:Vh("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:Qn=>xc(Qn,"iphone")||xc(Qn,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Vh("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Vh("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Vh("linux"),versionRegexes:[]},{name:"Solaris",search:Vh("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Vh("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Vh("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],Ab={browsers:Mo(zp),oses:Mo(Tg)},P1="Edge",Yf="Chromium",$1="IE",jd="Opera",$m="Firefox",R1="Safari",Xm=()=>Yg({current:void 0,version:Gc.unknown()}),Yg=Qn=>{const Un=Qn.current,Xn=Qn.version,Kn=oo=>()=>Un===oo;return{current:Un,version:Xn,isEdge:Kn(P1),isChromium:Kn(Yf),isIE:Kn($1),isOpera:Kn(jd),isFirefox:Kn($m),isSafari:Kn(R1)}},Vf={unknown:Xm,nu:Yg,edge:Mo(P1),chromium:Mo(Yf),ie:Mo($1),opera:Mo(jd),firefox:Mo($m),safari:Mo(R1)},Gg="Windows",yp="iOS",p0="Android",g0="Linux",Wp="macOS",zf="Solaris",b0="FreeBSD",Cs="ChromeOS",Up=()=>zh({current:void 0,version:Gc.unknown()}),zh=Qn=>{const Un=Qn.current,Xn=Qn.version,Kn=oo=>()=>Un===oo;return{current:Un,version:Xn,isWindows:Kn(Gg),isiOS:Kn(yp),isAndroid:Kn(p0),isMacOS:Kn(Wp),isLinux:Kn(g0),isSolaris:Kn(zf),isFreeBSD:Kn(b0),isChromeOS:Kn(Cs)}},Kg={unknown:Up,nu:zh,windows:Mo(Gg),ios:Mo(yp),android:Mo(p0),linux:Mo(g0),macos:Mo(Wp),solaris:Mo(zf),freebsd:Mo(b0),chromeos:Mo(Cs)},Jg={detect:(Qn,Un,Xn)=>{const Kn=Ab.browsers(),oo=Ab.oses(),lo=Un.bind(Co=>im(Kn,Co)).orThunk(()=>Ld(Kn,Qn)).fold(Vf.unknown,Vf.nu),ho=Od(oo,Qn).fold(Kg.unknown,Kg.nu),yo=lf(ho,lo,Qn,Xn);return{browser:lo,os:ho,deviceType:yo}}},Vs=Qn=>window.matchMedia(Qn).matches;let Dr=Du(()=>Jg.detect(navigator.userAgent,ko.from(navigator.userAgentData),Vs));const Tr=()=>Dr(),Fa=(Qn,Un,Xn,Kn,oo,lo,ho)=>({target:Qn,x:Un,y:Xn,stop:Kn,prevent:oo,kill:lo,raw:ho}),zl=Qn=>{const Un=Ds.fromDom(ul(Qn).getOr(Qn.target)),Xn=()=>Qn.stopPropagation(),Kn=()=>Qn.preventDefault(),oo=Vo(Kn,Xn);return Fa(Un,Qn.clientX,Qn.clientY,Xn,Kn,oo,Qn)},_c=(Qn,Un)=>Xn=>{Qn(Xn)&&Un(zl(Xn))},Wc=(Qn,Un,Xn,Kn,oo)=>{const lo=_c(Xn,Kn);return Qn.dom.addEventListener(Un,lo,oo),{unbind:ps(pv,Qn,Un,lo,oo)}},Uc=(Qn,Un,Xn,Kn)=>Wc(Qn,Un,Xn,Kn,!1),D1=(Qn,Un,Xn,Kn)=>Wc(Qn,Un,Xn,Kn,!0),pv=(Qn,Un,Xn,Kn)=>{Qn.dom.removeEventListener(Un,Xn,Kn)},_d=(Qn,Un)=>{Zd(Qn).each(Kn=>{Kn.dom.insertBefore(Un.dom,Qn.dom)})},Wh=(Qn,Un)=>{bp(Qn).fold(()=>{Zd(Qn).each(oo=>{Id(oo,Un)})},Kn=>{_d(Kn,Un)})},y0=(Qn,Un)=>{jm(Qn).fold(()=>{Id(Qn,Un)},Kn=>{Qn.dom.insertBefore(Un.dom,Kn.dom)})},Id=(Qn,Un)=>{Qn.dom.appendChild(Un.dom)},Ku=(Qn,Un,Xn)=>{Fh(Qn,Xn).fold(()=>{Id(Qn,Un)},Kn=>{_d(Kn,Un)})},Rm=(Qn,Un)=>{Qs(Un,Xn=>{Id(Qn,Xn)})},iu=Qn=>{Qn.dom.textContent="",Qs(kf(Qn),Un=>{am(Un)})},am=Qn=>{const Un=Qn.dom;Un.parentNode!==null&&Un.parentNode.removeChild(Un)},Af=Qn=>{const Un=Qn!==void 0?Qn.dom:document,Xn=Un.body.scrollLeft||Un.documentElement.scrollLeft,Kn=Un.body.scrollTop||Un.documentElement.scrollTop;return vc(Xn,Kn)},e1=(Qn,Un,Xn)=>{const oo=(Xn!==void 0?Xn.dom:document).defaultView;oo&&oo.scrollTo(Qn,Un)},gv=Qn=>{const Un=Qn===void 0?window:Qn;return Tr().browser.isFirefox()?ko.none():ko.from(Un.visualViewport)},M1=(Qn,Un,Xn,Kn)=>({x:Qn,y:Un,width:Xn,height:Kn,right:Qn+Xn,bottom:Un+Kn}),Pb=Qn=>{const Un=Qn===void 0?window:Qn,Xn=Un.document,Kn=Af(Ds.fromDom(Xn));return gv(Un).fold(()=>{const oo=Un.document.documentElement,lo=oo.clientWidth,ho=oo.clientHeight;return M1(Kn.left,Kn.top,lo,ho)},oo=>M1(Math.max(oo.pageLeft,Kn.left),Math.max(oo.pageTop,Kn.top),oo.width,oo.height))},Op=()=>Ds.fromDom(document),Wf=(Qn,Un)=>Qn.view(Un).fold(Mo([]),Kn=>{const oo=Qn.owner(Kn),lo=Wf(Qn,oo);return[Kn].concat(lo)}),N1=(Qn,Un)=>{const Xn=Un.owner(Qn),Kn=Wf(Un,Xn);return ko.some(Kn)};var $b=Object.freeze({__proto__:null,view:Qn=>{var Un;return(Qn.dom===document?ko.none():ko.from((Un=Qn.dom.defaultView)===null||Un===void 0?void 0:Un.frameElement)).map(Ds.fromDom)},owner:Qn=>vd(Qn)});const Zp=Qn=>{const Un=Op(),Xn=Af(Un);return N1(Qn,$b).fold(ps(uh,Qn),oo=>{const lo=Hh(Qn),ho=Ca(oo,(yo,Co)=>{const Ro=Hh(Co);return{left:yo.left+Ro.left,top:yo.top+Ro.top}},{left:0,top:0});return vc(ho.left+lo.left+Xn.left,ho.top+lo.top+Xn.top)})},qp=(Qn,Un,Xn)=>({point:Qn,width:Un,height:Xn}),Ag=(Qn,Un,Xn,Kn)=>({x:Qn,y:Un,width:Xn,height:Kn}),Kc=(Qn,Un,Xn,Kn)=>({x:Qn,y:Un,width:Xn,height:Kn,right:Qn+Xn,bottom:Un+Kn}),au=Qn=>{const Un=uh(Qn),Xn=yd(Qn),Kn=Vp(Qn);return Kc(Un.left,Un.top,Xn,Kn)},cf=Qn=>{const Un=Zp(Qn),Xn=yd(Qn),Kn=Vp(Qn);return Kc(Un.left,Un.top,Xn,Kn)},O0=(Qn,Un)=>{const Xn=Math.max(Qn.x,Un.x),Kn=Math.max(Qn.y,Un.y),oo=Math.min(Qn.right,Un.right),lo=Math.min(Qn.bottom,Un.bottom),ho=oo-Xn,yo=lo-Kn;return Kc(Xn,Kn,ho,yo)},bv=(Qn,Un)=>za(Un,(Xn,Kn)=>O0(Xn,Kn),Qn),tf=()=>Pb(window);var lm=tinymce.util.Tools.resolve("tinymce.ThemeManager");const uf=Qn=>{const Un=lo=>lo(Qn),Xn=Mo(Qn),Kn=()=>oo,oo={tag:!0,inner:Qn,fold:(lo,ho)=>ho(Qn),isValue:Js,isError:sr,map:lo=>yl.value(lo(Qn)),mapError:Kn,bind:Un,exists:Un,forall:Un,getOr:Xn,or:Kn,getOrThunk:Xn,orThunk:Kn,getOrDie:Xn,each:lo=>{lo(Qn)},toOptional:()=>ko.some(Qn)};return oo},cm=Qn=>{const Un=()=>Xn,Xn={tag:!1,inner:Qn,fold:(Kn,oo)=>Kn(Qn),isValue:sr,isError:Js,map:Un,mapError:Kn=>yl.error(Kn(Qn)),bind:Un,exists:sr,forall:Js,getOr:es,or:es,getOrThunk:Ys,orThunk:Ys,getOrDie:Yo(String(Qn)),each:xo,toOptional:ko.none};return Xn},yl={value:uf,error:cm,fromOption:(Qn,Un)=>Qn.fold(()=>cm(Un),uf)};var dh;(function(Qn){Qn[Qn.Error=0]="Error",Qn[Qn.Value=1]="Value"})(dh||(dh={}));const jp=(Qn,Un,Xn)=>Qn.stype===dh.Error?Un(Qn.serror):Xn(Qn.svalue),Sd=Qn=>{const Un=[],Xn=[];return Qs(Qn,Kn=>{jp(Kn,oo=>Xn.push(oo),oo=>Un.push(oo))}),{values:Un,errors:Xn}},df=(Qn,Un)=>Qn.stype===dh.Error?{stype:dh.Error,serror:Un(Qn.serror)}:Qn,vv=(Qn,Un)=>Qn.stype===dh.Value?{stype:dh.Value,svalue:Un(Qn.svalue)}:Qn,ff=(Qn,Un)=>Qn.stype===dh.Value?Un(Qn.svalue):Qn,Ju=(Qn,Un)=>Qn.stype===dh.Error?Un(Qn.serror):Qn,wh=Qn=>({stype:dh.Value,svalue:Qn}),fd=Qn=>({stype:dh.Error,serror:Qn}),xu={fromResult:Qn=>Qn.fold(fd,wh),toResult:Qn=>jp(Qn,yl.error,yl.value),svalue:wh,partition:Sd,serror:fd,bind:ff,bindError:Ju,map:vv,mapError:df,fold:jp},ed=(Qn,Un,Xn,Kn)=>({tag:"field",key:Qn,newKey:Un,presence:Xn,prop:Kn}),fh=(Qn,Un)=>({tag:"custom",newKey:Qn,instantiator:Un}),Gm=(Qn,Un,Xn)=>{switch(Qn.tag){case"field":return Un(Qn.key,Qn.newKey,Qn.presence,Qn.prop);case"custom":return Xn(Qn.newKey,Qn.instantiator)}},Fu=(Qn,Un)=>Un,_0=(Qn,Un)=>Jn(Qn)&&Jn(Un)?Lc(Qn,Un):Un,yv=Qn=>(...Un)=>{if(Un.length===0)throw new Error("Can't merge zero objects");const Xn={};for(let Kn=0;Kn({tag:"required",process:{}}),hf=Qn=>({tag:"defaultedThunk",process:Qn}),um=Qn=>hf(Mo(Qn)),Km=()=>({tag:"option",process:{}}),os=Qn=>({tag:"mergeWithThunk",process:Qn}),dm=Qn=>os(Mo(Qn)),n1=(Qn,Un)=>Qn.length>0?xu.svalue(Lc(Un,Dm.apply(void 0,Qn))):xu.svalue(Un),Ch=Qn=>Vo(xu.serror,Us)(Qn),Db={consolidateObj:(Qn,Un)=>{const Xn=xu.partition(Qn);return Xn.errors.length>0?Ch(Xn.errors):n1(Xn.values,Un)},consolidateArr:Qn=>{const Un=xu.partition(Qn);return Un.errors.length>0?Ch(Un.errors):xu.svalue(Un.values)}},S0=Qn=>Yn(Qn)&&nc(Qn).length>100?" removed due to size":JSON.stringify(Qn,null,2),Mm=Qn=>{const Un=Qn.length>10?Qn.slice(0,10).concat([{path:[],getErrorInfo:Mo("... (only showing first ten failures)")}]):Qn;return hs(Un,Xn=>"Failed path: ("+Xn.path.join(" > ")+`) +`+Xn.getErrorInfo())},Eo=(Qn,Un)=>xu.serror([{path:Qn,getErrorInfo:Un}]),Io=(Qn,Un,Xn)=>Eo(Qn,()=>'Could not find valid *required* value for "'+Un+'" in '+S0(Xn)),Go=(Qn,Un)=>Eo(Qn,()=>'Choice schema did not contain choice key: "'+Un+'"'),Ss=(Qn,Un,Xn)=>Eo(Qn,()=>'The chosen schema: "'+Xn+'" did not exist in branches: '+S0(Un)),Rs=(Qn,Un)=>Eo(Qn,()=>"There are unsupported fields: ["+Un.join(", ")+"] specified"),$r=(Qn,Un)=>Eo(Qn,Mo(Un)),Ea=Qn=>{const Un=(Kn,oo)=>xu.bindError(Qn(oo),lo=>$r(Kn,lo)),Xn=Mo("val");return{extract:Un,toString:Xn}},ll=Ea(xu.svalue),nl=(Qn,Un,Xn,Kn)=>Rr(Un,Xn).fold(()=>Io(Qn,Xn,Un),Kn),Xa=(Qn,Un,Xn,Kn)=>{const oo=Rr(Qn,Un).getOrThunk(()=>Xn(Qn));return Kn(oo)},Nu=(Qn,Un,Xn)=>Xn(Rr(Qn,Un)),zu=(Qn,Un,Xn,Kn)=>{const oo=Rr(Qn,Un).map(lo=>lo===!0?Xn(Qn):lo);return Kn(oo)},kh=(Qn,Un,Xn,Kn,oo)=>{const lo=yo=>oo.extract(Un.concat([Kn]),yo),ho=yo=>yo.fold(()=>xu.svalue(ko.none()),Co=>{const Ro=oo.extract(Un.concat([Kn]),Co);return xu.map(Ro,ko.some)});switch(Qn.tag){case"required":return nl(Un,Xn,Kn,lo);case"defaultedThunk":return Xa(Xn,Kn,Qn.process,lo);case"option":return Nu(Xn,Kn,ho);case"defaultedOptionThunk":return zu(Xn,Kn,Qn.process,ho);case"mergeWithThunk":return Xa(Xn,Kn,Mo({}),yo=>{const Co=Lc(Qn.process(Xn),yo);return lo(Co)})}},Sp=(Qn,Un,Xn)=>{const Kn={},oo=[];for(const lo of Xn)Gm(lo,(ho,yo,Co,Ro)=>{const Lo=kh(Co,Qn,Un,ho,Ro);xu.fold(Lo,Wo=>{oo.push(...Wo)},Wo=>{Kn[yo]=Wo})},(ho,yo)=>{Kn[ho]=yo(Un)});return oo.length>0?xu.serror(oo):xu.svalue(Kn)},mf=Qn=>({extract:(Kn,oo)=>Qn().extract(Kn,oo),toString:()=>Qn().toString()}),fS=Qn=>nc(Yl(Qn,Oo)),mu=Qn=>{const Un=Ta(Qn),Xn=Ca(Qn,(oo,lo)=>Gm(lo,ho=>Lc(oo,{[ho]:!0}),Mo(oo)),{});return{extract:(oo,lo)=>{const ho=uo(lo)?[]:fS(lo),yo=ga(ho,Co=>!Su(Xn,Co));return yo.length===0?Un.extract(oo,lo):Rs(oo,yo)},toString:Un.toString}},Ta=Qn=>({extract:(Kn,oo)=>Sp(Kn,oo,Qn),toString:()=>`obj{ +`+hs(Qn,oo=>Gm(oo,(lo,ho,yo,Co)=>lo+" -> "+Co.toString(),(lo,ho)=>"state("+lo+")")).join(` +`)+"}"}),Xp=Qn=>({extract:(Kn,oo)=>{const lo=hs(oo,(ho,yo)=>Qn.extract(Kn.concat(["["+yo+"]"]),ho));return Db.consolidateArr(lo)},toString:()=>"array("+Qn.toString()+")"}),Oa=(Qn,Un)=>{const Xn=Un!==void 0?Un:es;return{extract:(lo,ho)=>{const yo=[];for(const Co of Qn){const Ro=Co.extract(lo,ho);if(Ro.stype===dh.Value)return{stype:dh.Value,svalue:Xn(Ro.svalue)};yo.push(Ro)}return Db.consolidateArr(yo)},toString:()=>"oneOf("+hs(Qn,lo=>lo.toString()).join(", ")+")"}},pf=(Qn,Un)=>{const Xn=(lo,ho)=>Xp(Ea(Qn)).extract(lo,ho);return{extract:(lo,ho)=>{const yo=nc(ho),Co=Xn(lo,yo);return xu.bind(Co,Ro=>{const Lo=hs(Ro,Wo=>ed(Wo,Wo,sc(),Un));return Ta(Lo).extract(lo,ho)})},toString:()=>"setOf("+Un.toString()+")"}},$O=(Qn,Un)=>{const Xn=Du(Un);return{extract:(lo,ho)=>Xn().extract(lo,ho),toString:()=>Xn().toString()}},Yp=Vo(Xp,Ta),Ad=Mo(ll),Pg=(Qn,Un)=>Ea(Xn=>{const Kn=typeof Xn;return Qn(Xn)?xu.svalue(Xn):xu.serror(`Expected type: ${Un} but got: ${Kn}`)}),w0=Pg($o,"number"),nf=Pg(qn,"string"),Jm=Pg(uo,"boolean"),_v=Pg(wo,"function"),Gp=Qn=>{if(Object(Qn)!==Qn)return!0;switch({}.toString.call(Qn).slice(8,-1)){case"Boolean":case"Number":case"String":case"Date":case"RegExp":case"Blob":case"FileList":case"ImageData":case"ImageBitmap":case"ArrayBuffer":return!0;case"Array":case"Object":return Object.keys(Qn).every(Un=>Gp(Qn[Un]));default:return!1}},Sv=Ea(Qn=>Gp(Qn)?xu.svalue(Qn):xu.serror("Expected value to be acceptable for sending via postMessage")),$g=(Qn,Un,Xn,Kn)=>Rr(Xn,Kn).fold(()=>Ss(Qn,Xn,Kn),lo=>lo.extract(Qn.concat(["branch: "+Kn]),Un)),Ir=(Qn,Un)=>({extract:(oo,lo)=>Rr(lo,Qn).fold(()=>Go(oo,Qn),yo=>$g(oo,lo,Un,yo)),toString:()=>"chooseOn("+Qn+"). Possible values: "+nc(Un)}),RO=()=>Xp(ll),Rg=Qn=>Ea(Un=>Qn(Un).fold(xu.serror,xu.svalue)),Dg=(Qn,Un)=>pf(Xn=>xu.fromResult(Qn(Xn)),Un),Nm=(Qn,Un,Xn)=>{const Kn=Un.extract([Qn],Xn);return xu.mapError(Kn,oo=>({input:Xn,errors:oo}))},Lu=(Qn,Un,Xn)=>xu.toResult(Nm(Qn,Un,Xn)),Ec=Qn=>Qn.fold(Un=>{throw new Error(Gf(Un))},es),td=(Qn,Un,Xn)=>Ec(Lu(Qn,Un,Xn)),Gf=Qn=>`Errors: +`+Mm(Qn.errors).join(` +`)+` + +Input object: `+S0(Qn.input),jl=(Qn,Un)=>Ir(Qn,Vl(Un,Ta)),L1=(Qn,Un)=>$O(Qn,Un),Bd=ed,pu=fh,C0=Qn=>Rg(Un=>Fs(Qn,Un)?yl.value(Un):yl.error(`Unsupported value: "${Un}", choose one of "${Qn.join(", ")}".`)),Er=Qn=>Bd(Qn,Qn,sc(),Ad()),Kf=(Qn,Un)=>Bd(Qn,Qn,sc(),Un),k0=Qn=>Kf(Qn,w0),hc=Qn=>Kf(Qn,nf),hd=(Qn,Un)=>Bd(Qn,Qn,sc(),C0(Un)),wv=Qn=>Kf(Qn,Jm),ep=Qn=>Kf(Qn,_v),tp=(Qn,Un)=>Bd(Qn,Qn,Km(),Ea(Xn=>xu.serror("The field: "+Qn+" is forbidden. "+Un))),fm=(Qn,Un)=>Bd(Qn,Qn,sc(),Ta(Un)),Mb=(Qn,Un)=>Bd(Qn,Qn,sc(),Yp(Un)),Pf=(Qn,Un)=>Bd(Qn,Qn,sc(),Xp(Un)),Tc=Qn=>Bd(Qn,Qn,Km(),Ad()),Fd=(Qn,Un)=>Bd(Qn,Qn,Km(),Un),Mg=Qn=>Fd(Qn,w0),$f=Qn=>Fd(Qn,nf),Ly=(Qn,Un)=>Fd(Qn,C0(Un)),I1=Qn=>Fd(Qn,_v),Ng=(Qn,Un)=>Fd(Qn,Xp(Un)),hh=(Qn,Un)=>Fd(Qn,Ta(Un)),np=(Qn,Un)=>Fd(Qn,mu(Un)),Gs=(Qn,Un)=>Bd(Qn,Qn,um(Un),Ad()),xh=(Qn,Un,Xn)=>Bd(Qn,Qn,um(Un),Xn),Lm=(Qn,Un)=>xh(Qn,Un,w0),mh=(Qn,Un)=>xh(Qn,Un,nf),Eh=(Qn,Un,Xn)=>xh(Qn,Un,C0(Xn)),Xd=(Qn,Un)=>xh(Qn,Un,Jm),Hd=(Qn,Un)=>xh(Qn,Un,_v),Iy=(Qn,Un)=>xh(Qn,Un,Sv),Th=(Qn,Un,Xn)=>xh(Qn,Un,Xp(Xn)),Kp=(Qn,Un,Xn)=>xh(Qn,Un,Ta(Xn)),Ua=Qn=>{let Un=Qn;return{get:()=>Un,set:oo=>{Un=oo}}},Po={generate:Qn=>{if(!to(Qn))throw new Error("cases must be an array");if(Qn.length===0)throw new Error("there must be at least one case");const Un=[],Xn={};return Qs(Qn,(Kn,oo)=>{const lo=nc(Kn);if(lo.length!==1)throw new Error("one and only one name per case");const ho=lo[0],yo=Kn[ho];if(Xn[ho]!==void 0)throw new Error("duplicate key detected:"+ho);if(ho==="cata")throw new Error("cannot have a case named cata (sorry)");if(!to(yo))throw new Error("case arguments must be an array");Un.push(ho),Xn[ho]=(...Co)=>{const Ro=Co.length;if(Ro!==yo.length)throw new Error("Wrong number of arguments to case "+ho+". Expected "+yo.length+" ("+yo+"), got "+Ro);return{fold:(...Wo)=>{if(Wo.length!==Qn.length)throw new Error("Wrong number of arguments to fold. Expected "+Qn.length+", got "+Wo.length);return Wo[oo].apply(null,Co)},match:Wo=>{const jo=nc(Wo);if(Un.length!==jo.length)throw new Error("Wrong number of arguments to match. Expected: "+Un.join(",")+` +Actual: `+jo.join(","));if(!dr(Un,us=>Fs(jo,us)))throw new Error("Not all branches were specified when using match. Specified: "+jo.join(", ")+` +Required: `+Un.join(", "));return Wo[ho].apply(null,Co)},log:Wo=>{console.log(Wo,{constructors:Un,constructor:ho,params:Co})}}}}),Xn}};Po.generate([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const Xo=Qn=>{const Un=[],Xn=[];return Qs(Qn,Kn=>{Kn.fold(oo=>{Un.push(oo)},oo=>{Xn.push(oo)})}),{errors:Un,values:Xn}},is=(Qn,Un)=>{const Xn={};return Zl(Qn,(Kn,oo)=>{Fs(Un,oo)||(Xn[oo]=Kn)}),Xn},Ms=(Qn,Un)=>({[Qn]:Un}),vr=Qn=>{const Un={};return Qs(Qn,Xn=>{Un[Xn.key]=Xn.value}),Un},zr=(Qn,Un)=>is(Qn,Un),Jr=(Qn,Un)=>Ms(Qn,Un),La=Qn=>vr(Qn),Ol=(Qn,Un)=>Qn.length===0?yl.value(Un):yl.value(Lc(Un,Dm.apply(void 0,Qn))),Xu=Qn=>yl.error(Us(Qn)),Ac=(Qn,Un)=>{const Xn=Xo(Qn);return Xn.errors.length>0?Xu(Xn.errors):Ol(Xn.values,Un)},gu=Qn=>wo(Qn)?Qn:sr,Uh=(Qn,Un,Xn)=>{let Kn=Qn.dom;const oo=gu(Xn);for(;Kn.parentNode;){Kn=Kn.parentNode;const lo=Ds.fromDom(Kn),ho=Un(lo);if(ho.isSome())return ho;if(oo(lo))break}return ko.none()},Jf=(Qn,Un,Xn)=>{const Kn=Un(Qn),oo=gu(Xn);return Kn.orThunk(()=>oo(Qn)?ko.none():Uh(Qn,Un,oo))},hm=(Qn,Un)=>Oc(Qn.element,Un.event.target),Jp={can:Js,abort:sr,run:xo},wp=Qn=>{if(!Su(Qn,"can")&&!Su(Qn,"abort")&&!Su(Qn,"run"))throw new Error("EventHandler defined by: "+JSON.stringify(Qn,null,2)+" does not have can, abort, or run!");return{...Jp,...Qn}},B1=(Qn,Un)=>(...Xn)=>za(Qn,(Kn,oo)=>Kn&&Un(oo).apply(void 0,Xn),!0),Sc=(Qn,Un)=>(...Xn)=>za(Qn,(Kn,oo)=>Kn||Un(oo).apply(void 0,Xn),!1),F1=Qn=>wo(Qn)?{can:Js,abort:sr,run:Qn}:Qn,x0=Qn=>{const Un=B1(Qn,oo=>oo.can),Xn=Sc(Qn,oo=>oo.abort);return{can:Un,abort:Xn,run:(...oo)=>{Qs(Qn,lo=>{lo.run.apply(void 0,oo)})}}},nd=Mo,mm=nd("touchstart"),Nb=nd("touchmove"),H1=nd("touchend"),Fl=nd("touchcancel"),Xl=nd("mousedown"),Qd=nd("mousemove"),Rf=nd("mouseout"),Cv=nd("mouseup"),eg=nd("mouseover"),Wu=nd("focusin"),pm=nd("focusout"),op=nd("keydown"),Q1=nd("keyup"),o1=nd("input"),E0=nd("change"),Lg=nd("click"),lC=nd("transitioncancel"),V1=nd("transitionend"),By=nd("transitionstart"),z1=nd("selectstart"),Pd=Qn=>Mo("alloy."+Qn),Cp={tap:Pd("tap")},tg=Pd("focus"),W1=Pd("blur.post"),U1=Pd("paste.post"),T0=Pd("receive"),Im=Pd("execute"),md=Pd("focus.item"),ng=Cp.tap,DO=Pd("longpress"),Fy=Pd("sandbox.close"),Hy=Pd("typeahead.cancel"),Z1=Pd("system.init"),Ah=Pd("system.touchmove"),kp=Pd("system.touchend"),s1=Pd("system.scroll"),Ig=Pd("system.resize"),Zh=Pd("system.attached"),xp=Pd("system.detached"),q1=Pd("system.dismissRequested"),hS=Pd("system.repositionRequested"),MO=Pd("focusmanager.shifted"),kv=Pd("slotcontainer.visibility"),j1=Pd("system.external.element.scroll"),xv=Pd("change.tab"),NO=Pd("dismiss.tab"),Ev=Pd("highlight"),Tv=Pd("dehighlight"),Wl=(Qn,Un)=>{Lb(Qn,Qn.element,Un,{})},Qa=(Qn,Un,Xn)=>{Lb(Qn,Qn.element,Un,Xn)},og=Qn=>{Wl(Qn,Im())},Av=(Qn,Un,Xn)=>{Lb(Qn,Un,Xn,{})},Lb=(Qn,Un,Xn,Kn)=>{const oo={target:Un,...Kn};Qn.getSystem().triggerEvent(Xn,Un,oo)},T2=(Qn,Un,Xn,Kn)=>{const oo={...Kn,target:Un};Qn.getSystem().triggerEvent(Xn,Un,oo)},LO=(Qn,Un,Xn,Kn)=>{Qn.getSystem().triggerEvent(Xn,Un,Kn.event)},Jc=Qn=>La(Qn),IO=(Qn,Un)=>({key:Qn,value:wp({abort:Un})}),Qy=(Qn,Un)=>({key:Qn,value:wp({can:Un})}),mS=Qn=>({key:Qn,value:wp({run:(Un,Xn)=>{Xn.event.prevent()}})}),wr=(Qn,Un)=>({key:Qn,value:wp({run:Un})}),sg=(Qn,Un,Xn)=>({key:Qn,value:wp({run:(Kn,oo)=>{Un.apply(void 0,[Kn,oo].concat(Xn))}})}),cC=Qn=>Un=>wr(Qn,Un),Pv=Qn=>Un=>({key:Qn,value:wp({run:(Xn,Kn)=>{hm(Xn,Kn)&&Un(Xn,Kn)}})}),A2=(Qn,Un)=>wr(Qn,(Xn,Kn)=>{Xn.getSystem().getByUid(Un).each(oo=>{LO(oo,oo.element,Qn,Kn)})}),A0=(Qn,Un,Xn)=>{const Kn=Un.partUids[Xn];return A2(Qn,Kn)},pS=(Qn,Un)=>wr(Qn,(Xn,Kn)=>{const oo=Kn.event,lo=Xn.getSystem().getByDom(oo.target).getOrThunk(()=>Jf(oo.target,yo=>Xn.getSystem().getByDom(yo).toOptional(),sr).getOr(Xn));Un(Xn,lo,Kn)}),X1=Qn=>wr(Qn,(Un,Xn)=>{Xn.cut()}),Y1=Qn=>wr(Qn,(Un,Xn)=>{Xn.stop()}),rg=(Qn,Un)=>Pv(Qn)(Un),eu=Pv(Zh()),ig=Pv(xp()),$v=Pv(Z1()),qh=cC(Im()),Ll=(Qn,Un)=>{const Kn=(Un||document).createElement("div");return Kn.innerHTML=Qn,kf(Ds.fromDom(Kn))},Rv=Qn=>Qn.dom.innerHTML,G1=(Qn,Un)=>{const Kn=vd(Qn).dom,oo=Ds.fromDom(Kn.createDocumentFragment()),lo=Ll(Un,Kn);Rm(oo,lo),iu(Qn),Id(Qn,oo)},Ib=Qn=>{const Un=Ds.fromTag("div"),Xn=Ds.fromDom(Qn.dom.cloneNode(!0));return Id(Un,Xn),Rv(Un)},BO=(Qn,Un)=>Ds.fromDom(Qn.dom.cloneNode(Un)),Vy=Qn=>BO(Qn,!1),uC=Qn=>BO(Qn,!0),Ph=Qn=>{if(ss(Qn))return"#shadow-root";{const Un=Vy(Qn);return Ib(Un)}},r1=Qn=>Ph(Qn),ET=(Qn,Un,Xn)=>Oc(Un,Qn.element)&&!Oc(Un,Xn),FO=Jc([Qy(tg(),(Qn,Un)=>{const Xn=Un.event,Kn=Xn.originator,oo=Xn.target;return ET(Qn,Kn,oo)?(console.warn(tg()+` did not get interpreted by the desired target. +Originator: `+r1(Kn)+` +Target: `+r1(oo)+` +Check the `+tg()+" event handlers"),!1):!0})]);var P0=Object.freeze({__proto__:null,events:FO});let Uf=0;const ba=Qn=>{const Xn=new Date().getTime(),Kn=Math.floor(Math.random()*1e9);return Uf++,Qn+"_"+Kn+Uf+String(Xn)},P2=Mo("alloy-id-"),gS=Mo("data-alloy-id"),K1=P2(),gm=gS(),J1=(Qn,Un)=>{const Xn=ba(K1+Qn);return Dv(Un,Xn),Xn},Dv=(Qn,Un)=>{Object.defineProperty(Qn.dom,gm,{value:Un,writable:!0})},$0=Qn=>{const Un=fc(Qn)?Qn.dom[gm]:null;return ko.from(Un)},Mv=Qn=>ba(Qn),HO=es,Ep=Qn=>{const Un=oo=>`The component must be in a context to execute: ${oo}`+(Qn?` +`+r1(Qn().element)+" is not in context.":""),Xn=oo=>()=>{throw new Error(Un(oo))},Kn=oo=>()=>{console.warn(Un(oo))};return{debugInfo:Mo("fake"),triggerEvent:Kn("triggerEvent"),triggerFocus:Kn("triggerFocus"),triggerEscape:Kn("triggerEscape"),broadcast:Kn("broadcast"),broadcastOn:Kn("broadcastOn"),broadcastEvent:Kn("broadcastEvent"),build:Xn("build"),buildOrPatch:Xn("buildOrPatch"),addToWorld:Xn("addToWorld"),removeFromWorld:Xn("removeFromWorld"),addToGui:Xn("addToGui"),removeFromGui:Xn("removeFromGui"),getByUid:Xn("getByUid"),getByDom:Xn("getByDom"),isConnected:sr}},ag=Ep(),Nv=(Qn,Un,Xn)=>{const Kn=Xn.toString(),oo=Kn.indexOf(")")+1,lo=Kn.indexOf("("),ho=Kn.substring(lo+1,oo-1).split(/,\s*/);return Qn.toFunctionAnnotation=()=>({name:Un,parameters:Tp(ho.slice(0,1).concat(ho.slice(3)))}),Qn},Tp=Qn=>hs(Qn,Un=>ad(Un,"/*")?Un.substring(0,Un.length-2):Un),QO=(Qn,Un)=>{const Xn=Qn.toString(),Kn=Xn.indexOf(")")+1,oo=Xn.indexOf("("),lo=Xn.substring(oo+1,Kn-1).split(/,\s*/);return Qn.toFunctionAnnotation=()=>({name:Un,parameters:Tp(lo)}),Qn},dC=(Qn,Un)=>{const Xn=Un.toString(),Kn=Xn.indexOf(")")+1,oo=Xn.indexOf("("),lo=Xn.substring(oo+1,Kn-1).split(/,\s*/);return Qn.toFunctionAnnotation=()=>({name:"OVERRIDE",parameters:Tp(lo.slice(1))}),Qn},Lv=ba("alloy-premade"),i1=Qn=>(Object.defineProperty(Qn.element.dom,Lv,{value:Qn.uid,writable:!0}),Jr(Lv,Qn)),fC=Qn=>Pl(Qn.dom,Lv),Iv=Qn=>Rr(Qn,Lv),eb=Qn=>dC((Un,...Xn)=>Qn(Un.getApis(),Un,...Xn),Qn),Ap={init:()=>ph({readState:Mo("No State required")})},ph=Qn=>Qn,bS=(Qn,Un)=>{const Xn=hs(Un,oo=>hh(oo.name(),[Er("config"),Gs("state",Ap)])),Kn=Lu("component.behaviours",Ta(Xn),Qn.behaviours).fold(oo=>{throw new Error(Gf(oo)+` +Complete spec: +`+JSON.stringify(Qn,null,2))},es);return{list:Un,data:Vl(Kn,oo=>{const lo=oo.map(ho=>({config:ho.config,state:ho.state.init(ho.config)}));return Mo(lo)})}},vS=Qn=>Qn.list,yS=Qn=>Qn.data,Bv=(Qn,Un)=>{const Xn={};return Zl(Qn,(Kn,oo)=>{Zl(Kn,(lo,ho)=>{const yo=Rr(Xn,ho).getOr([]);Xn[ho]=yo.concat([Un(oo,lo)])})}),Xn},bm=Qn=>({classes:mo(Qn.classes)?[]:Qn.classes,attributes:mo(Qn.attributes)?{}:Qn.attributes,styles:mo(Qn.styles)?{}:Qn.styles}),Bm=(Qn,Un)=>({...Qn,attributes:{...Qn.attributes,...Un.attributes},styles:{...Qn.styles,...Un.styles},classes:Qn.classes.concat(Un.classes)}),a1=(Qn,Un,Xn,Kn)=>{const oo={...Un};Qs(Xn,Lo=>{oo[Lo.name()]=Lo.exhibit(Qn,Kn)});const lo=Bv(oo,(Lo,Wo)=>({name:Lo,modification:Wo})),ho=Lo=>Ca(Lo,(Wo,jo)=>({...jo.modification,...Wo}),{}),yo=Ca(lo.classes,(Lo,Wo)=>Wo.modification.concat(Lo),[]),Co=ho(lo.attributes),Ro=ho(lo.styles);return bm({classes:yo,attributes:Co,styles:Ro})},VO=(Qn,Un,Xn,Kn)=>{try{const oo=Ml(Xn,(lo,ho)=>{const yo=lo[Un],Co=ho[Un],Ro=Kn.indexOf(yo),Lo=Kn.indexOf(Co);if(Ro===-1)throw new Error("The ordering for "+Qn+" does not have an entry for "+yo+`. +Order specified: `+JSON.stringify(Kn,null,2));if(Lo===-1)throw new Error("The ordering for "+Qn+" does not have an entry for "+Co+`. +Order specified: `+JSON.stringify(Kn,null,2));return Ro({handler:Qn,purpose:Un}),mC=(Qn,Un)=>({cHandler:Qn,purpose:Un}),OS=(Qn,Un)=>mC(ps.apply(void 0,[Qn.handler].concat(Un)),Qn.purpose),Fv=Qn=>Qn.cHandler,Hv=(Qn,Un)=>({name:Qn,handler:Un}),zO=(Qn,Un)=>{const Xn={};return Qs(Qn,Kn=>{Xn[Kn.name()]=Kn.handlers(Un)}),Xn},$2=(Qn,Un,Xn)=>{const Kn={...Xn,...zO(Un,Qn)};return Bv(Kn,Hv)},WO=(Qn,Un,Xn,Kn)=>{const oo=$2(Qn,Xn,Kn);return _S(oo,Un)},Qv=Qn=>{const Un=F1(Qn);return(Xn,Kn,...oo)=>{const lo=[Xn,Kn].concat(oo);Un.abort.apply(void 0,lo)?Kn.stop():Un.can.apply(void 0,lo)&&Un.run.apply(void 0,lo)}},R2=(Qn,Un)=>yl.error(["The event ("+Qn+`) has more than one behaviour that listens to it. +When this occurs, you must specify an event ordering for the behaviours in your spec (e.g. [ "listing", "toggling" ]). +The behaviours that can trigger it are: `+JSON.stringify(hs(Un,Xn=>Xn.name),null,2)]),zy=(Qn,Un,Xn)=>{const Kn=Un[Xn];return Kn?VO("Event: "+Xn,"name",Qn,Kn).map(oo=>{const lo=hs(oo,ho=>ho.handler);return x0(lo)}):R2(Xn,Qn)},_S=(Qn,Un)=>{const Xn=rd(Qn,(Kn,oo)=>(Kn.length===1?yl.value(Kn[0].handler):zy(Kn,Un,oo)).map(ho=>{const yo=Qv(ho),Co=Kn.length>1?ga(Un[oo],Ro=>Br(Kn,Lo=>Lo.name===Ro)).join(" > "):Kn[0].name;return Jr(oo,hC(yo,Co))}));return Ac(Xn,{})},vm="alloy.base.behaviour",Wy=Ta([Bd("dom","dom",sc(),Ta([Er("tag"),Gs("styles",{}),Gs("classes",[]),Gs("attributes",{}),Tc("value"),Tc("innerHtml")])),Er("components"),Er("uid"),Gs("events",{}),Gs("apis",{}),Bd("eventOrder","eventOrder",dm({[Im()]:["disabling",vm,"toggling","typeaheadevents"],[tg()]:[vm,"focusing","keying"],[Z1()]:[vm,"disabling","toggling","representing"],[o1()]:[vm,"representing","streaming","invalidating"],[xp()]:[vm,"representing","item-events","tooltipping"],[Xl()]:["focusing",vm,"item-type-events"],[mm()]:["focusing",vm,"item-type-events"],[eg()]:["item-type-events","tooltipping"],[T0()]:["receiving","reflecting","tooltipping"]}),Ad()),Tc("domModification")]),SS=Qn=>Lu("custom.definition",Wy,Qn),UO=Qn=>({...Qn.dom,uid:Qn.uid,domChildren:hs(Qn.components,Un=>Un.element)}),TT=Qn=>Qn.domModification.fold(()=>bm({}),bm),ZO=Qn=>Qn.events,tb=(Qn,Un)=>{const Xn=Bu(Qn,Un);return Xn===void 0||Xn===""?[]:Xn.split(" ")},l1=(Qn,Un,Xn)=>{const oo=tb(Qn,Un).concat([Xn]);return aa(Qn,Un,oo.join(" ")),!0},wS=(Qn,Un,Xn)=>{const Kn=ga(tb(Qn,Un),oo=>oo!==Xn);return Kn.length>0?aa(Qn,Un,Kn.join(" ")):_s(Qn,Un),!1},Vv=Qn=>Qn.dom.classList!==void 0,qO=Qn=>tb(Qn,"class"),pC=(Qn,Un)=>l1(Qn,"class",Un),Eu=(Qn,Un)=>wS(Qn,"class",Un),lg=(Qn,Un)=>Fs(qO(Qn),Un)?Eu(Qn,Un):pC(Qn,Un),$d=(Qn,Un)=>{Vv(Qn)?Qn.dom.classList.add(Un):pC(Qn,Un)},gC=Qn=>{(Vv(Qn)?Qn.dom.classList:qO(Qn)).length===0&&_s(Qn,"class")},Yu=(Qn,Un)=>{Vv(Qn)?Qn.dom.classList.remove(Un):Eu(Qn,Un),gC(Qn)},R0=(Qn,Un)=>{const Xn=Vv(Qn)?Qn.dom.classList.toggle(Un):lg(Qn,Un);return gC(Qn),Xn},of=(Qn,Un)=>Vv(Qn)&&Qn.dom.classList.contains(Un),od=(Qn,Un)=>{Qs(Un,Xn=>{$d(Qn,Xn)})},sp=(Qn,Un)=>{Qs(Un,Xn=>{Yu(Qn,Xn)})},CS=(Qn,Un)=>{Qs(Un,Xn=>{R0(Qn,Xn)})},Df=(Qn,Un)=>dr(Un,Xn=>of(Qn,Xn)),Uy=Qn=>{const Un=Qn.dom.classList,Xn=new Array(Un.length);for(let Kn=0;KnVv(Qn)?Uy(Qn):qO(Qn),c1=Qn=>Qn.dom.value,Wv=(Qn,Un)=>{if(Un===void 0)throw new Error("Value.set was undefined");Qn.dom.value=Un},Bb=(Qn,Un,Xn)=>Fh(Qn,Un).map(oo=>{if(Xn.exists(ho=>!Oc(ho,oo))){const ho=Xn.map(Nd).getOr("span"),yo=Ds.fromTag(ho);return _d(oo,yo),yo}else return oo}),nb=(Qn,Un,Xn)=>{Xn.fold(()=>Id(Qn,Un),Kn=>{Oc(Kn,Un)||(_d(Kn,Un),am(Kn))})},D2=(Qn,Un,Xn)=>{const Kn=hs(Un,Xn),oo=kf(Qn);return Qs(oo.slice(Kn.length),am),Kn},bC=(Qn,Un,Xn,Kn)=>{const oo=Fh(Qn,Un),lo=Kn(Xn,oo),ho=Bb(Qn,Un,oo);return nb(Qn,lo.element,ho),lo},AT=(Qn,Un,Xn)=>D2(Qn,Un,(Kn,oo)=>bC(Qn,oo,Kn,Xn)),PT=(Qn,Un)=>D2(Qn,Un,(Xn,Kn)=>{const oo=Fh(Qn,Kn);return nb(Qn,Xn,oo),Xn}),cg=(Qn,Un)=>{const Xn=nc(Qn),Kn=nc(Un),oo=nr(Kn,Xn),lo=kc(Qn,(ho,yo)=>!Pl(Un,yo)||ho!==Un[yo]).t;return{toRemove:oo,toSet:lo}},$h=(Qn,Un)=>{const{class:Xn,style:Kn,...oo}=ar(Un),{toSet:lo,toRemove:ho}=cg(Qn.attributes,oo),yo=()=>{Qs(ho,Xs=>_s(Un,Xs)),Qp(Un,lo)},Co=jc(Un),{toSet:Ro,toRemove:Lo}=cg(Qn.styles,Co),Wo=()=>{Qs(Lo,Xs=>El(Un,Xs)),fu(Un,Ro)},jo=zv(Un),Jo=nr(jo,Qn.classes),us=nr(Qn.classes,jo),Ps=()=>{od(Un,us),sp(Un,Jo)},er=Xs=>{G1(Un,Xs)},Bs=()=>{const Xs=Qn.domChildren;PT(Un,Xs)},Ns=()=>{const Xs=Un,Hr=Qn.value.getOrUndefined();Hr!==c1(Xs)&&Wv(Xs,Hr??"")};return yo(),Ps(),Wo(),Qn.innerHtml.fold(Bs,er),Ns(),Un},M2=Qn=>{const Un=Ds.fromTag(Qn.tag);Qp(Un,Qn.attributes),od(Un,Qn.classes),fu(Un,Qn.styles),Qn.innerHtml.each(Kn=>G1(Un,Kn));const Xn=Qn.domChildren;return Rm(Un,Xn),Qn.value.each(Kn=>{Wv(Un,Kn)}),Un},N2=(Qn,Un)=>{try{const Xn=$h(Qn,Un);return ko.some(Xn)}catch{return ko.none()}},Fb=Qn=>Qn.innerHtml.isSome()&&Qn.domChildren.length>0,Zy=(Qn,Un)=>{const Xn=oo=>Nd(oo)===Qn.tag&&!Fb(Qn)&&!fC(oo),Kn=Un.filter(Xn).bind(oo=>N2(Qn,oo)).getOrThunk(()=>M2(Qn));return Dv(Kn,Qn.uid),Kn},jO=Qn=>{const Un=Rr(Qn,"behaviours").getOr({});return fs(nc(Un),Xn=>{const Kn=Un[Xn];return Oo(Kn)?[Kn.me]:[]})},XO=(Qn,Un)=>bS(Qn,Un),u1=Qn=>{const Un=jO(Qn);return XO(Qn,Un)},Uv=(Qn,Un,Xn)=>{const Kn=UO(Qn),oo=TT(Qn),lo={"alloy.base.modification":oo},ho=Un.length>0?a1(Xn,lo,Un,Kn):oo;return Bm(Kn,ho)},Hb=(Qn,Un,Xn)=>{const Kn={"alloy.base.behaviour":ZO(Qn)};return WO(Xn,Qn.eventOrder,Un,Kn).getOrDie()},D0=(Qn,Un)=>{const Xn=()=>Xs,Kn=Ua(ag),oo=Ec(SS(Qn)),lo=u1(Qn),ho=vS(lo),yo=yS(lo),Co=Uv(oo,ho,yo),Ro=Zy(Co,Un),Lo=Hb(oo,ho,yo),Wo=Ua(oo.components),jo=Hr=>{Kn.set(Hr)},Jo=()=>{Kn.set(Ep(Xn))},us=()=>{const Hr=kf(Ro),kr=fs(Hr,Or=>Kn.get().getByDom(Or).fold(()=>[],ra));Wo.set(kr)},Ps=Hr=>{const kr=yo;return(wo(kr[Hr.name()])?kr[Hr.name()]:()=>{throw new Error("Could not find "+Hr.name()+" in "+JSON.stringify(Qn,null,2))})()},er=Hr=>wo(yo[Hr.name()]),Bs=()=>oo.apis,Ns=Hr=>yo[Hr]().map(kr=>kr.state.readState()).getOr("not enabled"),Xs={uid:Qn.uid,getSystem:Kn.get,config:Ps,hasConfigured:er,spec:Qn,readState:Ns,getApis:Bs,connect:jo,disconnect:Jo,element:Ro,syncComponents:us,components:Wo.get,events:Lo};return Xs},M0=(Qn,Un)=>{const Xn=Rr(Qn,"components").getOr([]);return Un.fold(()=>hs(Xn,gh),Kn=>hs(Xn,(oo,lo)=>YO(oo,Fh(Kn,lo))))},vC=(Qn,Un)=>{const{events:Xn,...Kn}=HO(Qn),oo=M0(Kn,Un),lo={...Kn,events:{...P0,...Xn},components:oo};return yl.value(D0(lo,Un))},wd=Qn=>{const Un=Ds.fromText(Qn);return yC({element:Un})},yC=Qn=>{const Un=td("external.component",mu([Er("element"),Tc("uid")]),Qn),Xn=Ua(Ep()),Kn=yo=>{Xn.set(yo)},oo=()=>{Xn.set(Ep(()=>ho))},lo=Un.uid.getOrThunk(()=>Mv("external"));Dv(Un.element,lo);const ho={uid:lo,getSystem:Xn.get,config:ko.none,hasConfigured:sr,connect:Kn,disconnect:oo,getApis:()=>({}),element:Un.element,spec:Qn,readState:Mo("No state"),syncComponents:xo,components:Mo([]),events:{}};return i1(ho)},Zv=Mv,OC=Qn=>Pl(Qn,"uid"),YO=(Qn,Un)=>Iv(Qn).getOrThunk(()=>{const Xn=OC(Qn)?Qn:{uid:Zv(""),...Qn};return vC(Xn,Un).getOrDie()}),gh=Qn=>YO(Qn,ko.none()),Fm=i1;var _C=(Qn,Un,Xn,Kn,oo)=>Qn(Xn,Kn)?ko.some(Xn):wo(oo)&&oo(Xn)?ko.none():Un(Xn,Kn,oo);const N0=(Qn,Un,Xn)=>{let Kn=Qn.dom;const oo=wo(Xn)?Xn:sr;for(;Kn.parentNode;){Kn=Kn.parentNode;const lo=Ds.fromDom(Kn);if(Un(lo))return ko.some(lo);if(oo(lo))break}return ko.none()},L0=(Qn,Un,Xn)=>_C((oo,lo)=>lo(oo),N0,Qn,Un,Xn),L2=(Qn,Un)=>{const Xn=oo=>Un(Ds.fromDom(oo));return Zs(Qn.dom.childNodes,Xn).map(Ds.fromDom)},SC=(Qn,Un)=>{const Xn=Kn=>{for(let oo=0;ooL0(Qn,Un,Xn).isSome(),Hm=(Qn,Un,Xn)=>N0(Qn,Kn=>Cu(Kn,Un),Xn),GO=(Qn,Un)=>L2(Qn,Xn=>Cu(Xn,Un)),Rd=(Qn,Un)=>qm(Un,Qn),Bg=(Qn,Un,Xn)=>_C((oo,lo)=>Cu(oo,lo),Hm,Qn,Un,Xn),qv="aria-controls",Qb=Qn=>L0(Qn,Xn=>{if(!fc(Xn))return!1;const Kn=Bu(Xn,"id");return Kn!==void 0&&Kn.indexOf(qv)>-1}).bind(Xn=>{const Kn=Bu(Xn,"id"),oo=rr(Xn);return Rd(oo,`[${qv}="${Kn}"]`)}),I0=()=>{const Qn=ba(qv);return{id:Qn,link:Kn=>{aa(Kn,qv,Qn)},unlink:Kn=>{_s(Kn,qv)}}},B0=(Qn,Un)=>Qb(Un).exists(Xn=>ob(Qn,Xn)),ob=(Qn,Un)=>kS(Un,Xn=>Oc(Xn,Qn.element),sr)||B0(Qn,Un),wC="unknown";var F0;(function(Qn){Qn[Qn.STOP=0]="STOP",Qn[Qn.NORMAL=1]="NORMAL",Qn[Qn.LOGGING=2]="LOGGING"})(F0||(F0={}));const Vb=Ua({}),zb=(Qn,Un)=>{const Xn=[],Kn=new Date().getTime();return{logEventCut:(oo,lo,ho)=>{Xn.push({outcome:"cut",target:lo,purpose:ho})},logEventStopped:(oo,lo,ho)=>{Xn.push({outcome:"stopped",target:lo,purpose:ho})},logNoParent:(oo,lo,ho)=>{Xn.push({outcome:"no-parent",target:lo,purpose:ho})},logEventNoHandlers:(oo,lo)=>{Xn.push({outcome:"no-handlers-left",target:lo})},logEventResponse:(oo,lo,ho)=>{Xn.push({outcome:"response",purpose:ho,target:lo})},write:()=>{const oo=new Date().getTime();Fs(["mousemove","mouseover","mouseout",Z1()],Qn)||console.log(Qn,{event:Qn,time:oo-Kn,target:Un.dom,sequence:hs(Xn,lo=>Fs(["cut","stopped","response"],lo.outcome)?"{"+lo.purpose+"} "+lo.outcome+" at ("+r1(lo.target)+")":lo.outcome)})}}},xS=(Qn,Un,Xn)=>{switch(Rr(Vb.get(),Qn).orThunk(()=>{const oo=nc(Vb.get());return gc(oo,lo=>Qn.indexOf(lo)>-1?ko.some(Vb.get()[lo]):ko.none())}).getOr(F0.NORMAL)){case F0.NORMAL:return Xn(jv());case F0.LOGGING:{const oo=zb(Qn,Un),lo=Xn(oo);return oo.write(),lo}case F0.STOP:return!0}},I2=["alloy/data/Fields","alloy/debugging/Debugging"],ES=()=>{const Qn=new Error;if(Qn.stack!==void 0){const Un=Qn.stack.split(` +`);return Zs(Un,Xn=>Xn.indexOf("alloy")>0&&!Br(I2,Kn=>Xn.indexOf(Kn)>-1)).getOr(wC)}else return wC},B2={logEventCut:xo,logEventStopped:xo,logNoParent:xo,logEventNoHandlers:xo,logEventResponse:xo,write:xo},KO=(Qn,Un,Xn)=>xS(Qn,Un,Xn),jv=Mo(B2),Qm=Mo([Er("menu"),Er("selectedMenu")]),CC=Mo([Er("item"),Er("selectedItem")]);Mo(Ta(CC().concat(Qm())));const Xv=Mo(Ta(CC())),kC=fm("initSize",[Er("numColumns"),Er("numRows")]),F2=()=>Kf("markers",Xv()),qy=()=>fm("markers",[Er("backgroundMenu")].concat(Qm()).concat(CC())),Wb=Qn=>fm("markers",hs(Qn,Er)),JO=(Qn,Un,Xn)=>(ES(),Bd(Un,Un,Xn,Rg(Kn=>yl.value((...oo)=>Kn.apply(void 0,oo))))),rc=Qn=>JO("onHandler",Qn,um(xo)),Vm=Qn=>JO("onKeyboardHandler",Qn,um(ko.none)),Fg=Qn=>JO("onHandler",Qn,sc()),Yv=Qn=>JO("onKeyboardHandler",Qn,sc()),tu=(Qn,Un)=>pu(Qn,Mo(Un)),Gv=Qn=>pu(Qn,es),e_=Mo(kC),Yd=(Qn,Un,Xn,Kn,oo,lo,ho,yo=!1)=>({x:Qn,y:Un,bubble:Xn,direction:Kn,placement:oo,restriction:lo,label:`${ho}-${oo}`,alwaysFit:yo}),Hg=Po.generate([{southeast:[]},{southwest:[]},{northeast:[]},{northwest:[]},{south:[]},{north:[]},{east:[]},{west:[]}]),sb=(Qn,Un,Xn,Kn,oo,lo,ho,yo,Co)=>Qn.fold(Un,Xn,Kn,oo,lo,ho,yo,Co),t_=(Qn,Un,Xn,Kn)=>Qn.fold(Un,Un,Kn,Kn,Un,Kn,Xn,Xn),jy=(Qn,Un,Xn,Kn)=>Qn.fold(Un,Kn,Un,Kn,Xn,Xn,Un,Kn),Xy=Hg.southeast,TS=Hg.southwest,n_=Hg.northeast,Pp=Hg.northwest,ug=Hg.south,H2=Hg.north,lr=Hg.east,H0=Hg.west,Q0=(Qn,Un,Xn,Kn)=>{const oo=Qn+Un;return oo>Kn?Xn:ooMath.min(Math.max(Qn,Un),Xn),AS=(Qn,Un)=>{switch(Un){case 1:return Qn.x;case 0:return Qn.x+Qn.width;case 2:return Qn.y;case 3:return Qn.y+Qn.height}},Uu=(Qn,Un)=>Kr(["left","right","top","bottom"],Xn=>Rr(Un,Xn).map(Kn=>AS(Qn,Kn))),o_=(Qn,Un,Xn)=>{const Kn=(Co,Ro)=>Un[Co].map(Lo=>{const Wo=Co==="top"||Co==="bottom",jo=Wo?Xn.top:Xn.left,us=(Co==="left"||Co==="top"?Math.max:Math.min)(Lo,Ro)+jo;return Wo?rp(us,Qn.y,Qn.bottom):rp(us,Qn.x,Qn.right)}).getOr(Ro),oo=Kn("left",Qn.x),lo=Kn("top",Qn.y),ho=Kn("right",Qn.right),yo=Kn("bottom",Qn.bottom);return Kc(oo,lo,ho-oo,yo-lo)},rb="layout",PS=Qn=>Qn.x,s_=(Qn,Un)=>Qn.x+Qn.width/2-Un.width/2,$S=(Qn,Un)=>Qn.x+Qn.width-Un.width,Yy=(Qn,Un)=>Qn.y-Un.height,Kv=Qn=>Qn.y+Qn.height,RS=(Qn,Un)=>Qn.y+Qn.height/2-Un.height/2,Q2=Qn=>Qn.x+Qn.width,Dd=(Qn,Un)=>Qn.x-Un.width,gf=(Qn,Un,Xn)=>Yd(PS(Qn),Kv(Qn),Xn.southeast(),Xy(),"southeast",Uu(Qn,{left:1,top:3}),rb),eh=(Qn,Un,Xn)=>Yd($S(Qn,Un),Kv(Qn),Xn.southwest(),TS(),"southwest",Uu(Qn,{right:0,top:3}),rb),bf=(Qn,Un,Xn)=>Yd(PS(Qn),Yy(Qn,Un),Xn.northeast(),n_(),"northeast",Uu(Qn,{left:1,bottom:2}),rb),$l=(Qn,Un,Xn)=>Yd($S(Qn,Un),Yy(Qn,Un),Xn.northwest(),Pp(),"northwest",Uu(Qn,{right:0,bottom:2}),rb),Rh=(Qn,Un,Xn)=>Yd(s_(Qn,Un),Yy(Qn,Un),Xn.north(),H2(),"north",Uu(Qn,{bottom:2}),rb),bu=(Qn,Un,Xn)=>Yd(s_(Qn,Un),Kv(Qn),Xn.south(),ug(),"south",Uu(Qn,{top:3}),rb),vf=(Qn,Un,Xn)=>Yd(Q2(Qn),RS(Qn,Un),Xn.east(),lr(),"east",Uu(Qn,{left:0}),rb),Gy=(Qn,Un,Xn)=>Yd(Dd(Qn,Un),RS(Qn,Un),Xn.west(),H0(),"west",Uu(Qn,{right:1}),rb),d1=()=>[gf,eh,bf,$l,bu,Rh,vf,Gy],Ky=()=>[eh,gf,$l,bf,bu,Rh,vf,Gy],DS=()=>[bf,$l,gf,eh,Rh,bu],xC=()=>[$l,bf,eh,gf,Rh,bu],r_=()=>[gf,eh,bf,$l,bu,Rh],MS=()=>[eh,gf,$l,bf,bu,Rh],NS=(Qn,Un)=>Un.universal?Qn:ga(Qn,Xn=>Fs(Un.channels,Xn));var f1=Object.freeze({__proto__:null,events:Qn=>Jc([wr(T0(),(Un,Xn)=>{const Kn=Qn.channels,oo=nc(Kn),lo=Xn,ho=NS(oo,lo);Qs(ho,yo=>{const Co=Kn[yo],Ro=Co.schema,Lo=td("channel["+yo+`] data +Receiver: `+r1(Un.element),Ro,lo.data);Co.onReceive(Un,Lo)})})])}),EC=[Kf("channels",Dg(yl.value,mu([Fg("onReceive"),Gs("schema",Ad())])))];const ib=(Qn,Un,Xn)=>qh(Kn=>{Xn(Kn,Qn,Un)}),Vd=(Qn,Un,Xn)=>$v((Kn,oo)=>{Xn(Kn,Qn,Un)}),yf=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=mu(Qn),yo=hh(Un,[np("config",Qn)]);return Qg(ho,yo,Un,Xn,Kn,oo,lo)},z2=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Qn,yo=hh(Un,[Fd("config",Qn)]);return Qg(ho,yo,Un,Xn,Kn,oo,lo)},ym=(Qn,Un,Xn)=>Nv((oo,...lo)=>{const ho=[oo].concat(lo);return oo.config({name:Mo(Qn)}).fold(()=>{throw new Error("We could not find any behaviour configuration for: "+Qn+". Using API: "+Xn)},yo=>{const Co=Array.prototype.slice.call(ho,1);return Un.apply(void 0,[oo,yo.config,yo.state].concat(Co))})},Xn,Un),$T=Qn=>({key:Qn,value:void 0}),Qg=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=Wo=>Su(Wo,Xn)?Wo[Xn]():ko.none(),Co=Vl(oo,(Wo,jo)=>ym(Xn,Wo,jo)),Lo={...Vl(lo,(Wo,jo)=>QO(Wo,jo)),...Co,revoke:ps($T,Xn),config:Wo=>{const jo=td(Xn+"-config",Qn,Wo);return{key:Xn,value:{config:jo,me:Lo,configAsRaw:Du(()=>td(Xn+"-config",Qn,Wo)),initialConfig:Wo,state:ho}}},schema:Mo(Un),exhibit:(Wo,jo)=>ia(yo(Wo),Rr(Kn,"exhibit"),(Jo,us)=>us(jo,Jo.config,Jo.state)).getOrThunk(()=>bm({})),name:Mo(Xn),handlers:Wo=>yo(Wo).map(jo=>Rr(Kn,"events").getOr(()=>({}))(jo.config,jo.state)).getOr({})};return Lo},Zr=Qn=>La(Qn),LS=mu([Er("fields"),Er("name"),Gs("active",{}),Gs("apis",{}),Gs("state",Ap),Gs("extra",{})]),Of=Qn=>{const Un=td("Creating behaviour: "+Qn.name,LS,Qn);return yf(Un.fields,Un.name,Un.active,Un.apis,Un.extra,Un.state)},IS=mu([Er("branchKey"),Er("branches"),Er("name"),Gs("active",{}),Gs("apis",{}),Gs("state",Ap),Gs("extra",{})]),Ub=Qn=>{const Un=td("Creating behaviour: "+Qn.name,IS,Qn);return z2(jl(Un.branchKey,Un.branches),Un.name,Un.active,Un.apis,Un.extra,Un.state)},Jy=Mo(void 0),Om=Of({fields:EC,name:"receiving",active:f1});var eO=Object.freeze({__proto__:null,exhibit:(Qn,Un)=>bm({classes:[],styles:Un.useFixed()?{}:{position:"relative"}})});const Cd=(Qn,Un=!1)=>Qn.dom.focus({preventScroll:Un}),Vg=Qn=>Qn.dom.blur(),tO=Qn=>{const Un=rr(Qn).dom;return Qn.dom===Un.activeElement},h1=(Qn=Op())=>ko.from(Qn.dom.activeElement).map(Ds.fromDom),dg=Qn=>h1(rr(Qn)).filter(Un=>Qn.dom.contains(Un.dom)),ma=(Qn,Un)=>{const Xn=rr(Un),Kn=h1(Xn).bind(lo=>{const ho=yo=>Oc(lo,yo);return ho(Un)?ko.some(Un):SC(Un,ho)}),oo=Qn(Un);return Kn.each(lo=>{h1(Xn).filter(ho=>Oc(ho,lo)).fold(()=>{Cd(lo)},xo)}),oo},ip=(Qn,Un,Xn,Kn,oo)=>{const lo=ho=>ho+"px";return{position:Qn,left:Un.map(lo),top:Xn.map(lo),right:Kn.map(lo),bottom:oo.map(lo)}},BS=Qn=>({...Qn,position:ko.some(Qn.position)}),m1=(Qn,Un)=>{Lr(Qn,BS(Un))},Ic=Po.generate([{none:[]},{relative:["x","y","width","height"]},{fixed:["x","y","width","height"]}]),FS=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Un.rect,yo=ho.x-Xn,Co=ho.y-Kn,Ro=ho.width,Lo=ho.height,Wo=oo-(yo+Ro),jo=lo-(Co+Lo),Jo=ko.some(yo),us=ko.some(Co),Ps=ko.some(Wo),er=ko.some(jo),Bs=ko.none();return sb(Un.direction,()=>ip(Qn,Jo,us,Bs,Bs),()=>ip(Qn,Bs,us,Ps,Bs),()=>ip(Qn,Jo,Bs,Bs,er),()=>ip(Qn,Bs,Bs,Ps,er),()=>ip(Qn,Jo,us,Bs,Bs),()=>ip(Qn,Jo,Bs,Bs,er),()=>ip(Qn,Jo,us,Bs,Bs),()=>ip(Qn,Bs,us,Ps,Bs))},ap=(Qn,Un)=>Qn.fold(()=>{const Xn=Un.rect;return ip("absolute",ko.some(Xn.x),ko.some(Xn.y),ko.none(),ko.none())},(Xn,Kn,oo,lo)=>FS("absolute",Un,Xn,Kn,oo,lo),(Xn,Kn,oo,lo)=>FS("fixed",Un,Xn,Kn,oo,lo)),i_=(Qn,Un)=>{const Xn=ps(Zp,Un),Kn=Qn.fold(Xn,Xn,()=>{const ho=Af();return Zp(Un).translate(-ho.left,-ho.top)}),oo=yd(Un),lo=Vp(Un);return Kc(Kn.left,Kn.top,oo,lo)},W2=(Qn,Un)=>Un.fold(()=>Qn.fold(tf,tf,Kc),Xn=>Qn.fold(Mo(Xn),Mo(Xn),()=>{const Kn=Zu(Qn,Xn.x,Xn.y);return Kc(Kn.left,Kn.top,Xn.width,Xn.height)})),Zu=(Qn,Un,Xn)=>{const Kn=vc(Un,Xn),oo=()=>{const lo=Af();return Kn.translate(-lo.left,-lo.top)};return Qn.fold(Mo(Kn),Mo(Kn),oo)},U2=(Qn,Un,Xn,Kn)=>Qn.fold(Un,Xn,Kn);Ic.none;const bh=Ic.relative,Zb=Ic.fixed,Z2=(Qn,Un)=>({anchorBox:Qn,origin:Un}),q2=(Qn,Un)=>Z2(Qn,Un),HS="data-alloy-placement",j2=(Qn,Un)=>{aa(Qn,HS,Un)},AC=Qn=>Uo(Qn,HS),PC=Qn=>_s(Qn,HS),nO=Po.generate([{fit:["reposition"]},{nofit:["reposition","visibleW","visibleH","isVisible"]}]),$C=(Qn,Un)=>{const{x:Xn,y:Kn,right:oo,bottom:lo}=Un,{x:ho,y:yo,right:Co,bottom:Ro,width:Lo,height:Wo}=Qn,jo=ho>=Xn&&ho<=oo,Jo=yo>=Kn&&yo<=lo,us=jo&&Jo,Ps=Co<=oo&&Co>=Xn,er=Ro<=lo&&Ro>=Kn,Bs=Ps&&er,Ns=Math.min(Lo,ho>=Xn?oo-ho:Co-Xn),Xs=Math.min(Wo,yo>=Kn?lo-yo:Ro-Kn);return{originInBounds:us,sizeInBounds:Bs,visibleW:Ns,visibleH:Xs}},QS=(Qn,Un)=>{const{x:Xn,y:Kn,right:oo,bottom:lo}=Un,{x:ho,y:yo,width:Co,height:Ro}=Qn,Lo=Math.max(Xn,oo-Co),Wo=Math.max(Kn,lo-Ro),jo=rp(ho,Xn,Lo),Jo=rp(yo,Kn,Wo),us=Math.min(jo+Co,oo)-jo,Ps=Math.min(Jo+Ro,lo)-Jo;return Kc(jo,Jo,us,Ps)},V0=(Qn,Un,Xn)=>{const Kn=Mo(Un.bottom-Xn.y),oo=Mo(Xn.bottom-Un.y),lo=t_(Qn,oo,oo,Kn),ho=Mo(Un.right-Xn.x),yo=Mo(Xn.right-Un.x);return{maxWidth:jy(Qn,yo,yo,ho),maxHeight:lo}},X2=(Qn,Un,Xn,Kn)=>{const oo=Qn.bubble,lo=oo.offset,ho=o_(Kn,Qn.restriction,lo),yo=Qn.x+lo.left,Co=Qn.y+lo.top,Ro=Kc(yo,Co,Un,Xn),{originInBounds:Lo,sizeInBounds:Wo,visibleW:jo,visibleH:Jo}=$C(Ro,ho),us=Lo&&Wo,Ps=us?Ro:QS(Ro,ho),er=Ps.width>0&&Ps.height>0,{maxWidth:Bs,maxHeight:Ns}=V0(Qn.direction,Ps,Kn),Xs={rect:Ps,maxHeight:Ns,maxWidth:Bs,direction:Qn.direction,placement:Qn.placement,classes:{on:oo.classesOn,off:oo.classesOff},layout:Qn.label,testY:Co};return us||Qn.alwaysFit?nO.fit(Xs):nO.nofit(Xs,jo,Jo,er)},Y2=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Kn.width,yo=Kn.height,Co=(Lo,Wo,jo,Jo,us)=>{const Ps=Lo(Xn,Kn,oo,Qn,lo),er=X2(Ps,ho,yo,lo);return er.fold(Mo(er),(Bs,Ns,Xs,Hr)=>(us===Hr?Xs>Jo||Ns>jo:!us&&Hr)?er:nO.nofit(Wo,jo,Jo,us))};return za(Un,(Lo,Wo)=>{const jo=ps(Co,Wo);return Lo.fold(Mo(Lo),jo)},nO.nofit({rect:Xn,maxHeight:Kn.height,maxWidth:Kn.width,direction:Xy(),placement:"southeast",classes:{on:[],off:[]},layout:"none",testY:Xn.y},-1,-1,!1)).fold(es,es)},VS=Qn=>{const Un=Ua(ko.none()),Xn=()=>Un.get().each(Qn);return{clear:()=>{Xn(),Un.set(ko.none())},isSet:()=>Un.get().isSome(),get:()=>Un.get(),set:yo=>{Xn(),Un.set(ko.some(yo))}}},zS=()=>VS(Qn=>Qn.destroy()),ab=()=>VS(Qn=>Qn.unbind()),Hl=()=>{const Qn=VS(xo);return{...Qn,on:Xn=>Qn.get().each(Xn)}},WS=Js,Dh=(Qn,Un,Xn)=>Uc(Qn,Un,WS,Xn),a_=(Qn,Un,Xn)=>D1(Qn,Un,WS,Xn),th=zl,_m=["top","bottom","right","left"],l_="data-alloy-transition-timer",RC=(Qn,Un)=>Df(Qn,Un.classes),G2=(Qn,Un,Xn)=>Xn.exists(Kn=>{const oo=Qn.mode;return oo==="all"?!0:Kn[oo]!==Un[oo]}),DC=(Qn,Un)=>{const Xn=Kn=>parseFloat(Kn).toFixed(3);return Al(Un,(Kn,oo)=>{const lo=Qn[oo].map(Xn),ho=Kn.map(Xn);return!Es(lo,ho)}).isSome()},Jv=Qn=>{const Un=lo=>{const yo=qc(Qn,lo).split(/\s*,\s*/);return ga(yo,Ts)},Xn=lo=>{if(qn(lo)&&/^[\d.]+/.test(lo)){const ho=parseFloat(lo);return ad(lo,"ms")?ho:ho*1e3}else return 0},Kn=Un("transition-delay"),oo=Un("transition-duration");return za(oo,(lo,ho,yo)=>{const Co=Xn(Kn[yo])+Xn(ho);return Math.max(lo,Co)},0)},MC=(Qn,Un)=>{const Xn=ab(),Kn=ab();let oo;const lo=Ro=>{var Lo;const Wo=(Lo=Ro.raw.pseudoElement)!==null&&Lo!==void 0?Lo:"";return Oc(Ro.target,Qn)&&ks(Wo)&&Fs(_m,Ro.raw.propertyName)},ho=Ro=>{if(bo(Ro)||lo(Ro)){Xn.clear(),Kn.clear();const Lo=Ro==null?void 0:Ro.raw.type;(bo(Lo)||Lo===V1())&&(clearTimeout(oo),_s(Qn,l_),sp(Qn,Un.classes))}},yo=Dh(Qn,By(),Ro=>{lo(Ro)&&(yo.unbind(),Xn.set(Dh(Qn,V1(),ho)),Kn.set(Dh(Qn,lC(),ho)))}),Co=Jv(Qn);requestAnimationFrame(()=>{oo=setTimeout(ho,Co+17),aa(Qn,l_,oo)})},RT=(Qn,Un)=>{od(Qn,Un.classes),Uo(Qn,l_).each(Xn=>{clearTimeout(parseInt(Xn,10)),_s(Qn,l_)}),MC(Qn,Un)},lb=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=G2(Kn,oo,lo);if(ho||RC(Qn,Kn)){ya(Qn,"position",Xn.position);const yo=i_(Un,Qn),Co=ap(Un,{...oo,rect:yo}),Ro=Kr(_m,Lo=>Co[Lo]);DC(Xn,Ro)&&(Lr(Qn,Ro),ho&&RT(Qn,Kn),Hf(Qn))}else sp(Qn,Kn.classes)},K2=Qn=>({width:yd(Qn),height:Vp(Qn)}),ey=(Qn,Un,Xn,Kn)=>{El(Un,"max-height"),El(Un,"max-width");const oo=K2(Un);return Y2(Un,Kn.preference,Qn,oo,Xn,Kn.bounds)},J2=(Qn,Un)=>{const Xn=Un.classes;sp(Qn,Xn.off),od(Qn,Xn.on)},c_=(Qn,Un,Xn)=>{const Kn=Xn.maxHeightFunction;Kn(Qn,Un.maxHeight)},US=(Qn,Un,Xn)=>{const Kn=Xn.maxWidthFunction;Kn(Qn,Un.maxWidth)},z0=(Qn,Un,Xn)=>{const Kn=ap(Xn.origin,Un);Xn.transition.each(oo=>{lb(Qn,Xn.origin,Kn,oo,Un,Xn.lastPlacement)}),m1(Qn,Kn)},ex=(Qn,Un)=>{j2(Qn,Un.placement)},NC=(Qn,Un)=>{ud(Qn,Math.floor(Un))},LC=Mo((Qn,Un)=>{NC(Qn,Un),fu(Qn,{"overflow-x":"hidden","overflow-y":"auto"})}),zg=Mo((Qn,Un)=>{NC(Qn,Un)}),IC=(Qn,Un,Xn)=>Qn[Un]===void 0?Xn:Qn[Un],ZS=(Qn,Un,Xn,Kn,oo,lo,ho,yo)=>{const Co=IC(ho,"maxHeightFunction",LC()),Ro=IC(ho,"maxWidthFunction",xo),Lo=Qn.anchorBox,Wo=Qn.origin,jo={bounds:W2(Wo,lo),origin:Wo,preference:Kn,maxHeightFunction:Co,maxWidthFunction:Ro,lastPlacement:oo,transition:yo};return tx(Lo,Un,Xn,jo)},tx=(Qn,Un,Xn,Kn)=>{const oo=ey(Qn,Un,Xn,Kn);return z0(Un,oo,Kn),ex(Un,oo),J2(Un,oo),c_(Un,oo,Kn),US(Un,oo,Kn),{layout:oo.layout,placement:oo.placement}},BC=["valignCentre","alignLeft","alignRight","alignCentre","top","bottom","left","right","inset"],p1=(Qn,Un,Xn,Kn=1)=>{const oo=Qn*Kn,lo=Un*Kn,ho=Co=>Rr(Xn,Co).getOr([]),yo=(Co,Ro,Lo)=>{const Wo=nr(BC,Lo);return{offset:vc(Co,Ro),classesOn:fs(Lo,ho),classesOff:fs(Wo,ho)}};return{southeast:()=>yo(-Qn,Un,["top","alignLeft"]),southwest:()=>yo(Qn,Un,["top","alignRight"]),south:()=>yo(-Qn/2,Un,["top","alignCentre"]),northeast:()=>yo(-Qn,-Un,["bottom","alignLeft"]),northwest:()=>yo(Qn,-Un,["bottom","alignRight"]),north:()=>yo(-Qn/2,-Un,["bottom","alignCentre"]),east:()=>yo(Qn,-Un/2,["valignCentre","left"]),west:()=>yo(-Qn,-Un/2,["valignCentre","right"]),insetNortheast:()=>yo(oo,lo,["top","alignLeft","inset"]),insetNorthwest:()=>yo(-oo,lo,["top","alignRight","inset"]),insetNorth:()=>yo(-oo/2,lo,["top","alignCentre","inset"]),insetSoutheast:()=>yo(oo,-lo,["bottom","alignLeft","inset"]),insetSouthwest:()=>yo(-oo,-lo,["bottom","alignRight","inset"]),insetSouth:()=>yo(-oo/2,-lo,["bottom","alignCentre","inset"]),insetEast:()=>yo(-oo,-lo/2,["valignCentre","right","inset"]),insetWest:()=>yo(oo,-lo/2,["valignCentre","left","inset"])}},ty=()=>p1(0,0,{}),ny=es,u_=(Qn,Un)=>Xn=>oO(Xn)==="rtl"?Un:Qn,oO=Qn=>qc(Qn,"direction")==="rtl"?"rtl":"ltr";var $p;(function(Qn){Qn.TopToBottom="toptobottom",Qn.BottomToTop="bottomtotop"})($p||($p={}));const oy="data-alloy-vertical-dir",sO=Qn=>kS(Qn,Un=>fc(Un)&&Bu(Un,"data-alloy-vertical-dir")===$p.BottomToTop),qb=()=>hh("layouts",[Er("onLtr"),Er("onRtl"),Tc("onBottomLtr"),Tc("onBottomRtl")]),d_=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=ho.map(sO).getOr(!1),Co=Un.layouts.map(Jo=>Jo.onLtr(Qn)),Ro=Un.layouts.map(Jo=>Jo.onRtl(Qn)),Lo=yo?Un.layouts.bind(Jo=>Jo.onBottomLtr.map(us=>us(Qn))).or(Co).getOr(oo):Co.getOr(Xn),Wo=yo?Un.layouts.bind(Jo=>Jo.onBottomRtl.map(us=>us(Qn))).or(Ro).getOr(lo):Ro.getOr(Kn);return u_(Lo,Wo)(Qn)},nx=(Qn,Un,Xn)=>{const Kn=Un.hotspot,oo=i_(Xn,Kn.element),lo=d_(Qn.element,Un,r_(),MS(),DS(),xC(),ko.some(Un.hotspot.element));return ko.some(ny({anchorBox:oo,bubble:Un.bubble.getOr(ty()),overrides:Un.overrides,layouts:lo}))};var ox=[Er("hotspot"),Tc("bubble"),Gs("overrides",{}),qb(),tu("placement",nx)];const FC=(Qn,Un,Xn)=>{const Kn=Zu(Xn,Un.x,Un.y),oo=Kc(Kn.left,Kn.top,Un.width,Un.height),lo=d_(Qn.element,Un,d1(),Ky(),d1(),Ky(),ko.none());return ko.some(ny({anchorBox:oo,bubble:Un.bubble,overrides:Un.overrides,layouts:lo}))};var sx=[Er("x"),Er("y"),Gs("height",0),Gs("width",0),Gs("bubble",ty()),Gs("overrides",{}),qb(),tu("placement",FC)];const qS=Po.generate([{screen:["point"]},{absolute:["point","scrollLeft","scrollTop"]}]),rx=Qn=>Qn.fold(es,(Un,Xn,Kn)=>Un.translate(-Xn,-Kn)),ix=Qn=>Qn.fold(es,es),HC=Qn=>za(Qn,(Un,Xn)=>Un.translate(Xn.left,Xn.top),vc(0,0)),ax=Qn=>{const Un=hs(Qn,rx);return HC(Un)},QC=Qn=>{const Un=hs(Qn,ix);return HC(Un)},lx=qS.screen,f_=qS.absolute,cx=(Qn,Un,Xn)=>{const Kn=Sh(Xn.root).dom,oo=lo=>{const ho=vd(lo),yo=vd(Qn.element);return Oc(ho,yo)};return ko.from(Kn.frameElement).map(Ds.fromDom).filter(oo).map(uh)},VC=(Qn,Un,Xn)=>{const Kn=vd(Qn.element),oo=Af(Kn),lo=cx(Qn,Un,Xn).getOr(oo);return f_(lo,oo.left,oo.top)},sy=(Qn,Un,Xn,Kn)=>{const oo=lx(vc(Qn,Un));return ko.some(qp(oo,Xn,Kn))},jS=(Qn,Un,Xn,Kn,oo)=>Qn.map(lo=>{const ho=[Un,lo.point],yo=U2(Kn,()=>QC(ho),()=>QC(ho),()=>ax(ho)),Co=Ag(yo.left,yo.top,lo.width,lo.height),Ro=Xn.showAbove?DS():r_(),Lo=Xn.showAbove?xC():MS(),Wo=d_(oo,Xn,Ro,Lo,Ro,Lo,ko.none());return ny({anchorBox:Co,bubble:Xn.bubble.getOr(ty()),overrides:Xn.overrides,layouts:Wo})}),XS=(Qn,Un,Xn)=>{const Kn=VC(Qn,Xn,Un);return Un.node.filter(Gl).bind(oo=>{const lo=oo.dom.getBoundingClientRect(),ho=sy(lo.left,lo.top,lo.width,lo.height),yo=Un.node.getOr(Qn.element);return jS(ho,Kn,Un,Xn,yo)})};var YS=[Er("node"),Er("root"),Tc("bubble"),qb(),Gs("overrides",{}),Gs("showAbove",!1),tu("placement",XS)];const h_="\uFEFF",m_=" ",p_={create:(Qn,Un,Xn,Kn)=>({start:Qn,soffset:Un,finish:Xn,foffset:Kn})},g_=Po.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),ux=(Qn,Un,Xn,Kn)=>Qn.fold(Un,Xn,Kn),rO=Qn=>Qn.fold(es,es,es),WC=g_.before,dx=g_.on,GS=g_.after,lp={before:WC,on:dx,after:GS,cata:ux,getStart:rO},jb=Po.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),fx=Qn=>jb.exact(Qn.start,Qn.soffset,Qn.finish,Qn.foffset),KS=Qn=>Qn.match({domRange:Un=>Ds.fromDom(Un.startContainer),relative:(Un,Xn)=>lp.getStart(Un),exact:(Un,Xn,Kn,oo)=>Un}),hx=jb.domRange,mx=jb.relative,JS=jb.exact,UC=Qn=>{const Un=KS(Qn);return Sh(Un)},ew=p_.create,Zf={domRange:hx,relative:mx,exact:JS,exactFromRange:fx,getWin:UC,range:ew},DT=(Qn,Un)=>{Un.fold(Xn=>{Qn.setStartBefore(Xn.dom)},(Xn,Kn)=>{Qn.setStart(Xn.dom,Kn)},Xn=>{Qn.setStartAfter(Xn.dom)})},ry=(Qn,Un)=>{Un.fold(Xn=>{Qn.setEndBefore(Xn.dom)},(Xn,Kn)=>{Qn.setEnd(Xn.dom,Kn)},Xn=>{Qn.setEndAfter(Xn.dom)})},b_=(Qn,Un,Xn)=>{const Kn=Qn.document.createRange();return DT(Kn,Un),ry(Kn,Xn),Kn},tw=(Qn,Un,Xn,Kn,oo)=>{const lo=Qn.document.createRange();return lo.setStart(Un.dom,Xn),lo.setEnd(Kn.dom,oo),lo},nw=Qn=>({left:Qn.left,top:Qn.top,right:Qn.right,bottom:Qn.bottom,width:Qn.width,height:Qn.height}),ZC=Qn=>{const Un=Qn.getClientRects(),Xn=Un.length>0?Un[0]:Qn.getBoundingClientRect();return Xn.width>0||Xn.height>0?ko.some(Xn).map(nw):ko.none()},qC=Qn=>{const Un=Qn.getBoundingClientRect();return Un.width>0||Un.height>0?ko.some(Un).map(nw):ko.none()},cb=Po.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),W0=(Qn,Un,Xn)=>Un(Ds.fromDom(Xn.startContainer),Xn.startOffset,Ds.fromDom(Xn.endContainer),Xn.endOffset),px=(Qn,Un)=>Un.match({domRange:Xn=>({ltr:Mo(Xn),rtl:ko.none}),relative:(Xn,Kn)=>({ltr:Du(()=>b_(Qn,Xn,Kn)),rtl:Du(()=>ko.some(b_(Qn,Kn,Xn)))}),exact:(Xn,Kn,oo,lo)=>({ltr:Du(()=>tw(Qn,Xn,Kn,oo,lo)),rtl:Du(()=>ko.some(tw(Qn,oo,lo,Xn,Kn)))})}),gx=(Qn,Un)=>{const Xn=Un.ltr();return Xn.collapsed?Un.rtl().filter(oo=>oo.collapsed===!1).map(oo=>cb.rtl(Ds.fromDom(oo.endContainer),oo.endOffset,Ds.fromDom(oo.startContainer),oo.startOffset)).getOrThunk(()=>W0(Qn,cb.ltr,Xn)):W0(Qn,cb.ltr,Xn)},iO=(Qn,Un)=>{const Xn=px(Qn,Un);return gx(Qn,Xn)},ow=(Qn,Un)=>iO(Qn,Un).match({ltr:(Kn,oo,lo,ho)=>{const yo=Qn.document.createRange();return yo.setStart(Kn.dom,oo),yo.setEnd(lo.dom,ho),yo},rtl:(Kn,oo,lo,ho)=>{const yo=Qn.document.createRange();return yo.setStart(lo.dom,ho),yo.setEnd(Kn.dom,oo),yo}});cb.ltr,cb.rtl;const jC=(Qn,Un,Xn)=>ga(Bp(Qn,Xn),Un),_f=(Qn,Un)=>Cf(Un,Qn),XC=(Qn,Un,Xn,Kn)=>{const lo=vd(Qn).dom.createRange();return lo.setStart(Qn.dom,Un),lo.setEnd(Xn.dom,Kn),lo},sw=(Qn,Un,Xn,Kn)=>{const oo=XC(Qn,Un,Xn,Kn),lo=Oc(Qn,Xn)&&Un===Kn;return oo.collapsed&&!lo},MT=Qn=>ko.from(Qn.getSelection()),iy=Qn=>{if(Qn.rangeCount>0){const Un=Qn.getRangeAt(0),Xn=Qn.getRangeAt(Qn.rangeCount-1);return ko.some(p_.create(Ds.fromDom(Un.startContainer),Un.startOffset,Ds.fromDom(Xn.endContainer),Xn.endOffset))}else return ko.none()},bx=Qn=>{if(Qn.anchorNode===null||Qn.focusNode===null)return iy(Qn);{const Un=Ds.fromDom(Qn.anchorNode),Xn=Ds.fromDom(Qn.focusNode);return sw(Un,Qn.anchorOffset,Xn,Qn.focusOffset)?ko.some(p_.create(Un,Qn.anchorOffset,Xn,Qn.focusOffset)):iy(Qn)}},YC=Qn=>MT(Qn).filter(Un=>Un.rangeCount>0).bind(bx),rw=(Qn,Un)=>{const Xn=ow(Qn,Un);return ZC(Xn)},aO=(Qn,Un)=>{const Xn=ow(Qn,Un);return qC(Xn)},ay=((Qn,Un)=>{const Xn=lo=>{if(!Qn(lo))throw new Error("Can only get "+Un+" value of a "+Un+" node");return Kn(lo).getOr("")},Kn=lo=>Qn(lo)?ko.from(lo.dom.nodeValue):ko.none();return{get:Xn,getOption:Kn,set:(lo,ho)=>{if(!Qn(lo))throw new Error("Can only set raw "+Un+" value of a "+Un+" node");lo.dom.nodeValue=ho}}})(Td,"text"),vx=Qn=>ay.get(Qn),Xb=(Qn,Un)=>({element:Qn,offset:Un}),GC=(Qn,Un)=>{const Xn=kf(Qn);if(Xn.length===0)return Xb(Qn,Un);if(UnTd(Qn)?Xb(Qn,Un):GC(Qn,Un),Gb=Qn=>Qn.foffset!==void 0,so=(Qn,Un)=>Un.getSelection.getOrThunk(()=>()=>YC(Qn))().map(Kn=>{if(Gb(Kn)){const oo=Yb(Kn.start,Kn.soffset),lo=Yb(Kn.finish,Kn.foffset);return Zf.range(oo.element,oo.offset,lo.element,lo.offset)}else return Kn}),co=(Qn,Un,Xn)=>{const Kn=Sh(Un.root).dom,oo=VC(Qn,Xn,Un),lo=so(Kn,Un).bind(Co=>{if(Gb(Co))return aO(Kn,Zf.exactFromRange(Co)).orThunk(()=>{const Lo=Ds.fromText(h_);_d(Co.start,Lo);const Wo=rw(Kn,Zf.exact(Lo,0,Lo,1));return am(Lo),Wo}).bind(Lo=>sy(Lo.left,Lo.top,Lo.width,Lo.height));{const Ro=Vl(Co,Wo=>Wo.dom.getBoundingClientRect()),Lo={left:Math.min(Ro.firstCell.left,Ro.lastCell.left),right:Math.max(Ro.firstCell.right,Ro.lastCell.right),top:Math.min(Ro.firstCell.top,Ro.lastCell.top),bottom:Math.max(Ro.firstCell.bottom,Ro.lastCell.bottom)};return sy(Lo.left,Lo.top,Lo.right-Lo.left,Lo.bottom-Lo.top)}}),yo=so(Kn,Un).bind(Co=>Gb(Co)?fc(Co.start)?ko.some(Co.start):lh(Co.start):ko.some(Co.firstCell)).getOr(Qn.element);return jS(lo,oo,Un,Xn,yo)};var So=[Tc("getSelection"),Er("root"),Tc("bubble"),qb(),Gs("overrides",{}),Gs("showAbove",!1),tu("placement",co)];const Ho="link-layout",ts=Qn=>Qn.x+Qn.width,Os=(Qn,Un)=>Qn.x-Un.width,Is=(Qn,Un)=>Qn.y-Un.height+Qn.height,qs=Qn=>Qn.y,mr=(Qn,Un,Xn)=>Yd(ts(Qn),qs(Qn),Xn.southeast(),Xy(),"southeast",Uu(Qn,{left:0,top:2}),Ho),Xr=(Qn,Un,Xn)=>Yd(Os(Qn,Un),qs(Qn),Xn.southwest(),TS(),"southwest",Uu(Qn,{right:1,top:2}),Ho),jr=(Qn,Un,Xn)=>Yd(ts(Qn),Is(Qn,Un),Xn.northeast(),n_(),"northeast",Uu(Qn,{left:0,bottom:3}),Ho),ua=(Qn,Un,Xn)=>Yd(Os(Qn,Un),Is(Qn,Un),Xn.northwest(),Pp(),"northwest",Uu(Qn,{right:1,bottom:3}),Ho),ja=()=>[mr,Xr,jr,ua],wl=()=>[Xr,mr,ua,jr],Kl=(Qn,Un,Xn)=>{const Kn=i_(Xn,Un.item.element),oo=d_(Qn.element,Un,ja(),wl(),ja(),wl(),ko.none());return ko.some(ny({anchorBox:Kn,bubble:ty(),overrides:Un.overrides,layouts:oo}))};var Pc=[Er("item"),qb(),Gs("overrides",{}),tu("placement",Kl)],Ul=jl("type",{selection:So,node:YS,hotspot:ox,submenu:Pc,makeshift:sx});const nu=[Pf("classes",nf),Eh("mode","all",["all","layout","placement"])],vu=[Gs("useFixed",sr),Tc("getBounds")],nh=[Kf("anchor",Ul),hh("transition",nu)],Mh=()=>{const Qn=document.documentElement;return Zb(0,0,Qn.clientWidth,Qn.clientHeight)},Rp=Qn=>{const Un=uh(Qn.element),Xn=Qn.element.dom.getBoundingClientRect();return bh(Un.left,Un.top,Xn.width,Xn.height)},Mf=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=q2(Un.anchorBox,Qn);return ZS(ho,Kn.element,Un.bubble,Un.layouts,oo,Xn,Un.overrides,lo)},Dp=(Qn,Un,Xn,Kn,oo)=>{const lo=ko.none();Tu(Qn,Un,Xn,Kn,oo,lo)},Tu=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=td("placement.info",Ta(nh),oo),yo=ho.anchor,Co=Kn.element,Ro=Xn.get(Kn.uid);ma(()=>{ya(Co,"position","fixed");const Lo=ku(Co,"visibility");ya(Co,"visibility","hidden");const Wo=Un.useFixed()?Mh():Rp(Qn);yo.placement(Qn,yo,Wo).each(jo=>{const Jo=lo.orThunk(()=>Un.getBounds.map(Ys)),us=Mf(Wo,jo,Jo,Kn,Ro,ho.transition);Xn.set(Kn.uid,us)}),Lo.fold(()=>{El(Co,"visibility")},jo=>{ya(Co,"visibility",jo)}),ku(Co,"left").isNone()&&ku(Co,"top").isNone()&&ku(Co,"right").isNone()&&ku(Co,"bottom").isNone()&&vs(ku(Co,"position"),"fixed")&&El(Co,"position")},Co)};var NT=Object.freeze({__proto__:null,position:Dp,positionWithinBounds:Tu,getMode:(Qn,Un,Xn)=>Un.useFixed()?"fixed":"absolute",reset:(Qn,Un,Xn,Kn)=>{const oo=Kn.element;Qs(["position","left","right","top","bottom"],lo=>El(oo,lo)),PC(oo),Xn.clear(Kn.uid)}}),ly=Object.freeze({__proto__:null,init:()=>{let Qn={};return ph({readState:()=>Qn,clear:oo=>{Oo(oo)?delete Qn[oo]:Qn={}},set:(oo,lo)=>{Qn[oo]=lo},get:oo=>Rr(Qn,oo)})}});const jh=Of({fields:vu,name:"positioning",active:eO,apis:NT,state:ly}),y_=Qn=>Qn.getSystem().isConnected(),iw=Qn=>{Wl(Qn,xp());const Un=Qn.components();Qs(Un,iw)},O_=Qn=>{const Un=Qn.components();Qs(Un,O_),Wl(Qn,Zh())},Ox=(Qn,Un)=>{Qn.getSystem().addToWorld(Un),Gl(Qn.element)&&O_(Un)},__=Qn=>{iw(Qn),Qn.getSystem().removeFromWorld(Qn)},lO=(Qn,Un)=>{Id(Qn.element,Un.element)},ub=Qn=>{Qs(Qn.components(),Un=>am(Un.element)),iu(Qn.element),Qn.syncComponents()},h3=(Qn,Un,Xn)=>{const Kn=Qn.components();ub(Qn);const oo=Xn(Un),lo=nr(Kn,oo);Qs(lo,ho=>{iw(ho),Qn.getSystem().removeFromWorld(ho)}),Qs(oo,ho=>{y_(ho)?lO(Qn,ho):(Qn.getSystem().addToWorld(ho),lO(Qn,ho),Gl(Qn.element)&&O_(ho))}),Qn.syncComponents()},m3=(Qn,Un,Xn)=>{const Kn=Qn.components(),oo=fs(Un,yo=>Iv(yo).toArray());Qs(Kn,yo=>{Fs(oo,yo)||__(yo)});const lo=Xn(Un),ho=nr(Kn,lo);Qs(ho,yo=>{y_(yo)&&__(yo)}),Qs(lo,yo=>{y_(yo)||Ox(Qn,yo)}),Qn.syncComponents()},cy=(Qn,Un)=>{S_(Qn,Un,Id)},S_=(Qn,Un,Xn)=>{Qn.getSystem().addToWorld(Un),Xn(Qn.element,Un.element),Gl(Qn.element)&&O_(Un),Qn.syncComponents()},JC=Qn=>{iw(Qn),am(Qn.element),Qn.getSystem().removeFromWorld(Qn)},Kb=Qn=>{const Un=Zd(Qn.element).bind(Xn=>Qn.getSystem().getByDom(Xn).toOptional());JC(Qn),Un.each(Xn=>{Xn.syncComponents()})},_x=Qn=>{const Un=Qn.components();Qs(Un,JC),iu(Qn.element),Qn.syncComponents()},vh=(Qn,Un)=>{g1(Qn,Un,Id)},Z0=(Qn,Un)=>{g1(Qn,Un,Wh)},g1=(Qn,Un,Xn)=>{Xn(Qn,Un.element);const Kn=kf(Un.element);Qs(Kn,oo=>{Un.getByDom(oo).each(O_)})},w_=Qn=>{const Un=kf(Qn.element);Qs(Un,Xn=>{Qn.getByDom(Xn).each(iw)}),am(Qn.element)},Sm=(Qn,Un,Xn,Kn)=>{Xn.get().each(ho=>{_x(Qn)});const oo=Un.getAttachPoint(Qn);cy(oo,Qn);const lo=Qn.getSystem().build(Kn);return cy(Qn,lo),Xn.set(lo),lo},cp=(Qn,Un,Xn,Kn)=>{const oo=Sm(Qn,Un,Xn,Kn);return Un.onOpen(Qn,oo),oo},zm=(Qn,Un,Xn,Kn)=>Xn.get().map(()=>Sm(Qn,Un,Xn,Kn)),b1=(Qn,Un,Xn,Kn,oo)=>{aw(Qn,Un),cp(Qn,Un,Xn,Kn),oo(),lw(Qn,Un)},ek=(Qn,Un,Xn)=>{Xn.get().each(Kn=>{_x(Qn),Kb(Qn),Un.onClose(Qn,Kn),Xn.clear()})},fg=(Qn,Un,Xn)=>Xn.isOpen(),cO=(Qn,Un,Xn,Kn)=>fg(Qn,Un,Xn)&&Xn.get().exists(oo=>Un.isPartOf(Qn,oo,Kn)),Sx=(Qn,Un,Xn)=>Xn.get(),p3=(Qn,Un,Xn,Kn)=>{ku(Qn.element,Un).fold(()=>{_s(Qn.element,Xn)},oo=>{aa(Qn.element,Xn,oo)}),ya(Qn.element,Un,Kn)},LT=(Qn,Un,Xn)=>{Uo(Qn.element,Xn).fold(()=>El(Qn.element,Un),Kn=>ya(Qn.element,Un,Kn))},aw=(Qn,Un,Xn)=>{const Kn=Un.getAttachPoint(Qn);ya(Qn.element,"position",jh.getMode(Kn)),p3(Qn,"visibility",Un.cloakVisibilityAttr,"hidden")},IT=Qn=>Br(["top","left","right","bottom"],Un=>ku(Qn,Un).isSome()),lw=(Qn,Un,Xn)=>{IT(Qn.element)||El(Qn.element,"position"),LT(Qn,"visibility",Un.cloakVisibilityAttr)};var tk=Object.freeze({__proto__:null,cloak:aw,decloak:lw,open:cp,openWhileCloaked:b1,close:ek,isOpen:fg,isPartOf:cO,getState:Sx,setContent:zm}),BT=Object.freeze({__proto__:null,events:(Qn,Un)=>Jc([wr(Fy(),(Xn,Kn)=>{ek(Xn,Qn,Un)})])}),b3=[rc("onOpen"),rc("onClose"),Er("isPartOf"),Er("getAttachPoint"),Gs("cloakVisibilityAttr","data-precloak-visibility")],FT=Object.freeze({__proto__:null,init:()=>{const Qn=Hl(),Un=Mo("not-implemented");return ph({readState:Un,isOpen:Qn.isSet,clear:Qn.clear,set:Qn.set,get:Qn.get})}});const uc=Of({fields:b3,name:"sandboxing",active:BT,apis:tk,state:FT}),db=Mo("dismiss.popups"),uO=Mo("reposition.popups"),wx=Mo("mouse.released"),HT=mu([Gs("isExtraPart",sr),hh("fireEventInstead",[Gs("event",q1())])]),cw=Qn=>{const Un=td("Dismissal",HT,Qn);return{[db()]:{schema:mu([Er("target")]),onReceive:(Xn,Kn)=>{uc.isOpen(Xn)&&(uc.isPartOf(Xn,Kn.target)||Un.isExtraPart(Xn,Kn.target)||Un.fireEventInstead.fold(()=>uc.close(Xn),lo=>Wl(Xn,lo.event)))}}}},v3=mu([hh("fireEventInstead",[Gs("event",hS())]),ep("doReposition")]),C_=Qn=>{const Un=td("Reposition",v3,Qn);return{[uO()]:{onReceive:Xn=>{uc.isOpen(Xn)&&Un.fireEventInstead.fold(()=>Un.doReposition(Xn),Kn=>Wl(Xn,Kn.event))}}}},nk=(Qn,Un,Xn)=>{Un.store.manager.onLoad(Qn,Un,Xn)},hg=(Qn,Un,Xn)=>{Un.store.manager.onUnload(Qn,Un,Xn)};var uy=Object.freeze({__proto__:null,onLoad:nk,onUnload:hg,setValue:(Qn,Un,Xn,Kn)=>{Un.store.manager.setValue(Qn,Un,Xn,Kn)},getValue:(Qn,Un,Xn)=>Un.store.manager.getValue(Qn,Un,Xn),getState:(Qn,Un,Xn)=>Xn}),rk=Object.freeze({__proto__:null,events:(Qn,Un)=>{const Xn=Qn.resetOnDom?[eu((Kn,oo)=>{nk(Kn,Qn,Un)}),ig((Kn,oo)=>{hg(Kn,Qn,Un)})]:[Vd(Qn,Un,nk)];return Jc(Xn)}});const dO=()=>{const Qn=Ua(null),Un=()=>({mode:"memory",value:Qn.get()}),Xn=()=>Qn.get()===null,Kn=()=>{Qn.set(null)};return ph({set:Qn.set,get:Qn.get,isNotSet:Xn,clear:Kn,readState:Un})},y3=()=>ph({readState:xo}),QT=()=>{const Qn=Ua({}),Un=Ua({});return ph({readState:()=>({mode:"dataset",dataByValue:Qn.get(),dataByText:Un.get()}),lookup:ho=>Rr(Qn.get(),ho).orThunk(()=>Rr(Un.get(),ho)),update:ho=>{const yo=Qn.get(),Co=Un.get(),Ro={},Lo={};Qs(ho,Wo=>{Ro[Wo.value]=Wo,Rr(Wo,"meta").each(jo=>{Rr(jo,"text").each(Jo=>{Lo[Jo]=Wo})})}),Qn.set({...yo,...Ro}),Un.set({...Co,...Lo})},clear:()=>{Qn.set({}),Un.set({})}})};var x_=Object.freeze({__proto__:null,memory:dO,dataset:QT,manual:y3,init:Qn=>Qn.store.manager.state(Qn)});const q0=(Qn,Un,Xn,Kn)=>{const oo=Un.store;Xn.update([Kn]),oo.setValue(Qn,Kn),Un.onSetValue(Qn,Kn)},_3=(Qn,Un,Xn)=>{const Kn=Un.store,oo=Kn.getDataKey(Qn);return Xn.lookup(oo).getOrThunk(()=>Kn.getFallbackEntry(oo))},S3=(Qn,Un,Xn)=>{Un.store.initialValue.each(oo=>{q0(Qn,Un,Xn,oo)})},VT=(Qn,Un,Xn)=>{Xn.clear()};var Cx=[Tc("initialValue"),Er("getFallbackEntry"),Er("getDataKey"),Er("setValue"),tu("manager",{setValue:q0,getValue:_3,onLoad:S3,onUnload:VT,state:QT})];const kx=(Qn,Un,Xn)=>Un.store.getValue(Qn),xx=(Qn,Un,Xn,Kn)=>{Un.store.setValue(Qn,Kn),Un.onSetValue(Qn,Kn)},ik=(Qn,Un,Xn)=>{Un.store.initialValue.each(Kn=>{Un.store.setValue(Qn,Kn)})};var dy=[Er("getValue"),Gs("setValue",xo),Tc("initialValue"),tu("manager",{setValue:xx,getValue:kx,onLoad:ik,onUnload:xo,state:Ap.init})];const zT=(Qn,Un,Xn,Kn)=>{Xn.set(Kn),Un.onSetValue(Qn,Kn)},uw=(Qn,Un,Xn)=>Xn.get(),Ex=(Qn,Un,Xn)=>{Un.store.initialValue.each(Kn=>{Xn.isNotSet()&&Xn.set(Kn)})},w3=(Qn,Un,Xn)=>{Xn.clear()};var dw=[Tc("initialValue"),tu("manager",{setValue:zT,getValue:uw,onLoad:Ex,onUnload:w3,state:dO})],C3=[xh("store",{mode:"memory"},jl("mode",{memory:dw,manual:dy,dataset:Cx})),rc("onSetValue"),Gs("resetOnDom",!1)];const da=Of({fields:C3,name:"representing",active:rk,apis:uy,extra:{setValueFrom:(Qn,Un)=>{const Xn=da.getValue(Un);da.setValue(Qn,Xn)}},state:x_}),Nf=(Qn,Un)=>Kp(Qn,{},hs(Un,Xn=>tp(Xn.name(),"Cannot configure "+Xn.name()+" for "+Qn)).concat([pu("dump",es)])),j0=Qn=>Qn.dump,sf=(Qn,Un)=>({...Zr(Un),...Qn.dump}),Wg={field:Nf,augment:sf,get:j0},ak="placeholder",fw=Po.generate([{single:["required","valueThunk"]},{multiple:["required","valueThunks"]}]),fb=Qn=>Pl(Qn,"uiType"),lk=(Qn,Un,Xn,Kn)=>Qn.exists(oo=>oo!==Xn.owner)?fw.single(!0,Mo(Xn)):Rr(Kn,Xn.name).fold(()=>{throw new Error("Unknown placeholder component: "+Xn.name+` +Known: [`+nc(Kn)+`] +Namespace: `+Qn.getOr("none")+` +Spec: `+JSON.stringify(Xn,null,2))},oo=>oo.replace()),ck=(Qn,Un,Xn,Kn)=>fb(Xn)&&Xn.uiType===ak?lk(Qn,Un,Xn,Kn):fw.single(!1,Mo(Xn)),E_=(Qn,Un,Xn,Kn)=>ck(Qn,Un,Xn,Kn).fold((lo,ho)=>{const yo=fb(Xn)?ho(Un,Xn.config,Xn.validated):ho(Un),Co=Rr(yo,"components").getOr([]),Ro=fs(Co,Lo=>E_(Qn,Un,Lo,Kn));return[{...yo,components:Ro}]},(lo,ho)=>{if(fb(Xn)){const yo=ho(Un,Xn.config,Xn.validated);return Xn.validated.preprocess.getOr(es)(yo)}else return ho(Un)}),WT=(Qn,Un,Xn,Kn)=>fs(Xn,oo=>E_(Qn,Un,oo,Kn)),hw=(Qn,Un)=>{let Xn=!1;const Kn=()=>Xn,oo=()=>{if(Xn)throw new Error("Trying to use the same placeholder more than once: "+Qn);return Xn=!0,Un},lo=()=>Un.fold((ho,yo)=>ho,(ho,yo)=>ho);return{name:Mo(Qn),required:lo,used:Kn,replace:oo}},Tx=(Qn,Un,Xn,Kn)=>{const oo=Vl(Kn,(ho,yo)=>hw(yo,ho)),lo=WT(Qn,Un,Xn,oo);return Zl(oo,ho=>{if(ho.used()===!1&&ho.required())throw new Error("Placeholder: "+ho.name()+` was not found in components list +Namespace: `+Qn.getOr("none")+` +Components: `+JSON.stringify(Un.components,null,2))}),lo},Ax=fw.single,k3=fw.multiple,hb=Mo(ak),uk=Po.generate([{required:["data"]},{external:["data"]},{optional:["data"]},{group:["data"]}]),T_=Gs("factory",{sketch:es}),Nh=Gs("schema",[]),Sf=Er("name"),dk=Bd("pname","pname",hf(Qn=>""),Ad()),mw=pu("schema",()=>[Tc("preprocess")]),fk=Gs("defaults",Mo({})),pw=Gs("overrides",Mo({})),gw=Ta([T_,Nh,Sf,dk,fk,pw]),A_=Ta([T_,Nh,Sf,fk,pw]),UT=Ta([T_,Nh,Sf,dk,fk,pw]),bw=Ta([T_,mw,Sf,Er("unit"),dk,fk,pw]),ZT=Qn=>Qn.fold(ko.some,ko.none,ko.some,ko.some),qT=Qn=>{const Un=Xn=>Xn.name;return Qn.fold(Un,Un,Un,Un)},jT=Qn=>Qn.fold(es,es,es,es),Ug=(Qn,Un)=>Xn=>{const Kn=td("Converting part type",Un,Xn);return Qn(Kn)},Xh=Ug(uk.required,gw),v1=Ug(uk.external,A_),up=Ug(uk.optional,UT),vw=Ug(uk.group,bw),hk=Mo("entirety");var XT=Object.freeze({__proto__:null,required:Xh,external:v1,optional:up,group:vw,asNamedPart:ZT,name:qT,asCommon:jT,original:hk});const yw=(Qn,Un,Xn,Kn)=>Lc(Un.defaults(Qn,Xn,Kn),Xn,{uid:Qn.partUids[Un.name]},Un.overrides(Qn,Xn,Kn)),x3=(Qn,Un,Xn)=>{const Kn={},oo={};return Qs(Xn,lo=>{lo.fold(ho=>{Kn[ho.pname]=Ax(!0,(yo,Co,Ro)=>ho.factory.sketch(yw(yo,ho,Co,Ro)))},ho=>{const yo=Un.parts[ho.name];oo[ho.name]=Mo(ho.factory.sketch(yw(Un,ho,yo[hk()]),yo))},ho=>{Kn[ho.pname]=Ax(!1,(yo,Co,Ro)=>ho.factory.sketch(yw(yo,ho,Co,Ro)))},ho=>{Kn[ho.pname]=k3(!0,(yo,Co,Ro)=>{const Lo=yo[ho.name];return hs(Lo,Wo=>ho.factory.sketch(Lc(ho.defaults(yo,Wo,Ro),Wo,ho.overrides(yo,Wo))))})})}),{internals:Mo(Kn),externals:Mo(oo)}},X0=(Qn,Un)=>{const Xn={};return Qs(Un,Kn=>{ZT(Kn).each(oo=>{const lo=Ow(Qn,oo.pname);Xn[oo.name]=ho=>{const yo=td("Part: "+oo.name+" in "+Qn,Ta(oo.schema),ho);return{...lo,config:ho,validated:yo}}})}),Xn},Ow=(Qn,Un)=>({uiType:hb(),owner:Qn,name:Un}),Px=(Qn,Un,Xn)=>({uiType:hb(),owner:Qn,name:Un,config:Xn,validated:{}}),YT=Qn=>fs(Qn,Un=>Un.fold(ko.none,ko.some,ko.none,ko.none).map(Xn=>fm(Xn.name,Xn.schema.concat([Gv(hk())]))).toArray()),GT=Qn=>hs(Qn,qT),$x=(Qn,Un,Xn)=>x3(Qn,Un,Xn),mk=(Qn,Un,Xn)=>Tx(ko.some(Qn),Un,Un.components,Xn),Au=(Qn,Un,Xn)=>{const Kn=Un.partUids[Xn];return Qn.getSystem().getByUid(Kn).toOptional()},Y0=(Qn,Un,Xn)=>Au(Qn,Un,Xn).getOrDie("Could not find part: "+Xn),KT=(Qn,Un,Xn)=>{const Kn={},oo=Un.partUids,lo=Qn.getSystem();return Qs(Xn,ho=>{Kn[ho]=Mo(lo.getByUid(oo[ho]))}),Kn},Rx=(Qn,Un)=>{const Xn=Qn.getSystem();return Vl(Un.partUids,(Kn,oo)=>Mo(Xn.getByUid(Kn)))},Dx=Qn=>nc(Qn.partUids),fO=(Qn,Un,Xn)=>{const Kn={},oo=Un.partUids,lo=Qn.getSystem();return Qs(Xn,ho=>{Kn[ho]=Mo(lo.getByUid(oo[ho]).getOrDie())}),Kn},Mx=(Qn,Un)=>{const Xn=GT(Un);return La(hs(Xn,Kn=>({key:Kn,value:Qn+"-"+Kn})))},Nx=Qn=>Bd("partUids","partUids",os(Un=>Mx(Un.uid,Qn)),Ad());var E3=Object.freeze({__proto__:null,generate:X0,generateOne:Px,schemas:YT,names:GT,substitutes:$x,components:mk,defaultUids:Mx,defaultUidsSchema:Nx,getAllParts:Rx,getAllPartNames:Dx,getPart:Au,getPartOrDie:Y0,getParts:KT,getPartsOrDie:fO});const P_=(Qn,Un)=>(Qn.length>0?[fm("parts",Qn)]:[]).concat([Er("uid"),Gs("dom",{}),Gs("components",[]),Gv("originalSpec"),Gs("debug.sketcher",{})]).concat(Un),$_=(Qn,Un,Xn,Kn,oo)=>{const lo=P_(Kn,oo);return td(Qn+" [SpecSchema]",mu(lo.concat(Un)),Xn)},Lx=(Qn,Un,Xn,Kn)=>{const oo=fy(Kn),lo=$_(Qn,Un,oo,[],[]);return Xn(lo,oo)},Ix=(Qn,Un,Xn,Kn,oo)=>{const lo=fy(oo),ho=YT(Xn),yo=Nx(Xn),Co=$_(Qn,Un,lo,ho,[yo]),Ro=$x(Qn,Co,Xn),Lo=mk(Qn,Co,Ro.internals());return Kn(Co,Lo,lo,Ro.externals())},y1=Qn=>Pl(Qn,"uid"),fy=Qn=>y1(Qn)?Qn:{...Qn,uid:Mv("uid")},T3=Qn=>Qn.uid!==void 0,_w=mu([Er("name"),Er("factory"),Er("configFields"),Gs("apis",{}),Gs("extraApis",{})]),A3=mu([Er("name"),Er("factory"),Er("configFields"),Er("partFields"),Gs("apis",{}),Gs("extraApis",{})]),Mp=Qn=>{const Un=td("Sketcher for "+Qn.name,_w,Qn),Xn=lo=>Lx(Un.name,Un.configFields,Un.factory,lo),Kn=Vl(Un.apis,eb),oo=Vl(Un.extraApis,(lo,ho)=>QO(lo,ho));return{name:Un.name,configFields:Un.configFields,sketch:Xn,...Kn,...oo}},Yh=Qn=>{const Un=td("Sketcher for "+Qn.name,A3,Qn),Xn=ho=>Ix(Un.name,Un.configFields,Un.partFields,Un.factory,ho),Kn=X0(Un.name,Un.partFields),oo=Vl(Un.apis,eb),lo=Vl(Un.extraApis,(ho,yo)=>QO(ho,yo));return{name:Un.name,partFields:Un.partFields,configFields:Un.configFields,sketch:Xn,parts:Kn,...oo,...lo}},hO=Qn=>ef("input")(Qn)&&Bu(Qn,"type")!=="radio"||ef("textarea")(Qn);var JT=Object.freeze({__proto__:null,getCurrent:(Qn,Un,Xn)=>Un.find(Qn)});const P3=[Er("find")],ic=Of({fields:P3,name:"composing",apis:JT}),Bx=["input","button","textarea","select"],eA=(Qn,Un,Xn)=>{(Un.disabled()?nA:Sw)(Qn,Un)},Fx=(Qn,Un)=>Un.useNative===!0&&Fs(Bx,Nd(Qn.element)),$3=Qn=>cs(Qn.element,"disabled"),R3=Qn=>{aa(Qn.element,"disabled","disabled")},tA=Qn=>{_s(Qn.element,"disabled")},D3=Qn=>Bu(Qn.element,"aria-disabled")==="true",va=Qn=>{aa(Qn.element,"aria-disabled","true")},hy=Qn=>{aa(Qn.element,"aria-disabled","false")},nA=(Qn,Un,Xn)=>{Un.disableClass.each(oo=>{$d(Qn.element,oo)}),(Fx(Qn,Un)?R3:va)(Qn),Un.onDisabled(Qn)},Sw=(Qn,Un,Xn)=>{Un.disableClass.each(oo=>{Yu(Qn.element,oo)}),(Fx(Qn,Un)?tA:hy)(Qn),Un.onEnabled(Qn)},ww=(Qn,Un)=>Fx(Qn,Un)?$3(Qn):D3(Qn);var DN=Object.freeze({__proto__:null,enable:Sw,disable:nA,isDisabled:ww,onLoad:eA,set:(Qn,Un,Xn,Kn)=>{(Kn?nA:Sw)(Qn,Un)}}),N3=Object.freeze({__proto__:null,exhibit:(Qn,Un)=>bm({classes:Un.disabled()?Un.disableClass.toArray():[]}),events:(Qn,Un)=>Jc([IO(Im(),(Xn,Kn)=>ww(Xn,Qn)),Vd(Qn,Un,eA)])}),oA=[Hd("disabled",sr),Gs("useNative",!0),Tc("disableClass"),rc("onDisabled"),rc("onEnabled")];const Ja=Of({fields:oA,name:"disabling",active:N3,apis:DN}),G0=(Qn,Un,Xn,Kn)=>{const oo=_f(Qn.element,"."+Un.highlightClass);Qs(oo,lo=>{Br(Kn,yo=>Oc(yo.element,lo))||(Yu(lo,Un.highlightClass),Qn.getSystem().getByDom(lo).each(yo=>{Un.onDehighlight(Qn,yo),Wl(yo,Tv())}))})},sA=(Qn,Un,Xn)=>G0(Qn,Un,Xn,[]),L3=(Qn,Un,Xn,Kn)=>{pk(Qn,Un,Xn,Kn)&&(Yu(Kn.element,Un.highlightClass),Un.onDehighlight(Qn,Kn),Wl(Kn,Tv()))},Cw=(Qn,Un,Xn,Kn)=>{G0(Qn,Un,Xn,[Kn]),pk(Qn,Un,Xn,Kn)||($d(Kn.element,Un.highlightClass),Un.onHighlight(Qn,Kn),Wl(Kn,Ev()))},I3=(Qn,Un,Xn)=>{R_(Qn,Un).each(Kn=>{Cw(Qn,Un,Xn,Kn)})},rA=(Qn,Un,Xn)=>{Qx(Qn,Un).each(Kn=>{Cw(Qn,Un,Xn,Kn)})},Hx=(Qn,Un,Xn,Kn)=>{F3(Qn,Un,Xn,Kn).fold(oo=>{throw oo},oo=>{Cw(Qn,Un,Xn,oo)})},iA=(Qn,Un,Xn,Kn)=>{const oo=gk(Qn,Un);Zs(oo,Kn).each(ho=>{Cw(Qn,Un,Xn,ho)})},pk=(Qn,Un,Xn,Kn)=>of(Kn.element,Un.highlightClass),B3=(Qn,Un,Xn)=>Rd(Qn.element,"."+Un.highlightClass).bind(Kn=>Qn.getSystem().getByDom(Kn).toOptional()),F3=(Qn,Un,Xn,Kn)=>{const oo=_f(Qn.element,"."+Un.itemClass);return ko.from(oo[Kn]).fold(()=>yl.error(new Error("No element found with index "+Kn)),Qn.getSystem().getByDom)},R_=(Qn,Un,Xn)=>Rd(Qn.element,"."+Un.itemClass).bind(Kn=>Qn.getSystem().getByDom(Kn).toOptional()),Qx=(Qn,Un,Xn)=>{const Kn=_f(Qn.element,"."+Un.itemClass);return(Kn.length>0?ko.some(Kn[Kn.length-1]):ko.none()).bind(lo=>Qn.getSystem().getByDom(lo).toOptional())},aA=(Qn,Un,Xn,Kn)=>{const oo=_f(Qn.element,"."+Un.itemClass);return Sr(oo,ho=>of(ho,Un.highlightClass)).bind(ho=>{const yo=Q0(ho,Kn,0,oo.length-1);return Qn.getSystem().getByDom(oo[yo]).toOptional()})},H3=(Qn,Un,Xn)=>aA(Qn,Un,Xn,-1),Q3=(Qn,Un,Xn)=>aA(Qn,Un,Xn,1),gk=(Qn,Un,Xn)=>{const Kn=_f(Qn.element,"."+Un.itemClass);return Ks(hs(Kn,oo=>Qn.getSystem().getByDom(oo).toOptional()))};var Jb=Object.freeze({__proto__:null,dehighlightAll:sA,dehighlight:L3,highlight:Cw,highlightFirst:I3,highlightLast:rA,highlightAt:Hx,highlightBy:iA,isHighlighted:pk,getHighlighted:B3,getFirst:R_,getLast:Qx,getPrevious:H3,getNext:Q3,getCandidates:gk}),bk=[Er("highlightClass"),Er("itemClass"),rc("onHighlight"),rc("onDehighlight")];const Bc=Of({fields:bk,name:"highlighting",apis:Jb}),V3=[8],K0=[9],e0=[13],vk=[27],mg=[32],yk=[37],J0=[38],D_=[39],kw=[40],Vx=(Qn,Un,Xn)=>{const Kn=Vr(Qn.slice(0,Un)),oo=Vr(Qn.slice(Un+1));return Zs(Kn.concat(oo),Xn)},z3=(Qn,Un,Xn)=>{const Kn=Vr(Qn.slice(0,Un));return Zs(Kn,Xn)},zx=(Qn,Un,Xn)=>{const Kn=Qn.slice(0,Un),oo=Qn.slice(Un+1);return Zs(oo.concat(Kn),Xn)},W3=(Qn,Un,Xn)=>{const Kn=Qn.slice(Un+1);return Zs(Kn,Xn)},dc=Qn=>Un=>{const Xn=Un.raw;return Fs(Qn,Xn.which)},pg=Qn=>Un=>dr(Qn,Xn=>Xn(Un)),ev=Qn=>Qn.raw.shiftKey===!0,U3=Qn=>Qn.raw.ctrlKey===!0,M_=rs(ev),wc=(Qn,Un)=>({matches:Qn,classification:Un}),Z3=(Qn,Un)=>Zs(Qn,Kn=>Kn.matches(Un)).map(Kn=>Kn.classification),Wx=(Qn,Un,Xn)=>{Un.exists(oo=>Xn.exists(lo=>Oc(lo,oo)))||Qa(Qn,MO(),{prevFocus:Un,newFocus:Xn})},eo=()=>{const Qn=Xn=>dg(Xn.element);return{get:Qn,set:(Xn,Kn)=>{const oo=Qn(Xn);Xn.getSystem().triggerFocus(Kn,Xn.element);const lo=Qn(Xn);Wx(Xn,oo,lo)}}},ro=()=>{const Qn=Xn=>Bc.getHighlighted(Xn).map(Kn=>Kn.element);return{get:Qn,set:(Xn,Kn)=>{const oo=Qn(Xn);Xn.getSystem().getByDom(Kn).fold(xo,ho=>{Bc.highlight(Xn,ho)});const lo=Qn(Xn);Wx(Xn,oo,lo)}}};var fo;(function(Qn){Qn.OnFocusMode="onFocus",Qn.OnEnterOrSpaceMode="onEnterOrSpace",Qn.OnApiMode="onApi"})(fo||(fo={}));const go=(Qn,Un,Xn,Kn,oo)=>{const lo=()=>Qn.concat([Gs("focusManager",eo()),xh("focusInside","onFocus",Rg(Ro=>Fs(["onFocus","onEnterOrSpace","onApi"],Ro)?yl.value(Ro):yl.error("Invalid value for focusInside"))),tu("handler",Co),tu("state",Un),tu("sendFocusIn",oo)]),ho=(Ro,Lo,Wo,jo,Jo)=>{const us=Wo(Ro,Lo,jo,Jo);return Z3(us,Lo.event).bind(Ps=>Ps(Ro,Lo,jo,Jo))},Co={schema:lo,processKey:ho,toEvents:(Ro,Lo)=>{const Wo=Ro.focusInside!==fo.OnFocusMode?ko.none():oo(Ro).map(us=>wr(tg(),(Ps,er)=>{us(Ps,Ro,Lo),er.stop()})),jo=(us,Ps)=>{const er=dc(mg.concat(e0))(Ps.event);Ro.focusInside===fo.OnEnterOrSpaceMode&&er&&hm(us,Ps)&&oo(Ro).each(Bs=>{Bs(us,Ro,Lo),Ps.stop()})},Jo=[wr(op(),(us,Ps)=>{ho(us,Ps,Xn,Ro,Lo).fold(()=>{jo(us,Ps)},er=>{Ps.stop()})}),wr(Q1(),(us,Ps)=>{ho(us,Ps,Kn,Ro,Lo).each(er=>{Ps.stop()})})];return Jc(Wo.toArray().concat(Jo))}};return Co},To=Qn=>{const Un=[Tc("onEscape"),Tc("onEnter"),Gs("selector",'[data-alloy-tabstop="true"]:not(:disabled)'),Gs("firstTabstop",0),Gs("useTabstopAt",Js),Tc("visibilitySelector")].concat([Qn]),Xn=(Bs,Ns)=>{const Xs=Bs.visibilitySelector.bind(Hr=>Bg(Ns,Hr)).getOr(Ns);return cu(Xs)>0},Kn=(Bs,Ns)=>{const Xs=_f(Bs.element,Ns.selector),Hr=ga(Xs,kr=>Xn(Ns,kr));return ko.from(Hr[Ns.firstTabstop])},oo=(Bs,Ns)=>Ns.focusManager.get(Bs).bind(Xs=>Bg(Xs,Ns.selector)),lo=(Bs,Ns)=>Xn(Bs,Ns)&&Bs.useTabstopAt(Ns),ho=(Bs,Ns,Xs)=>{Kn(Bs,Ns).each(Hr=>{Ns.focusManager.set(Bs,Hr)})},yo=(Bs,Ns,Xs,Hr,kr)=>kr(Ns,Xs,Or=>lo(Hr,Or)).fold(()=>Hr.cyclic?ko.some(!0):ko.none(),Or=>(Hr.focusManager.set(Bs,Or),ko.some(!0))),Co=(Bs,Ns,Xs,Hr)=>{const kr=_f(Bs.element,Xs.selector);return oo(Bs,Xs).bind(Or=>Sr(kr,ps(Oc,Or)).bind(na=>yo(Bs,kr,na,Xs,Hr)))},Ro=(Bs,Ns,Xs)=>{const Hr=Xs.cyclic?Vx:z3;return Co(Bs,Ns,Xs,Hr)},Lo=(Bs,Ns,Xs)=>{const Hr=Xs.cyclic?zx:W3;return Co(Bs,Ns,Xs,Hr)},Wo=Bs=>ah(Bs).bind(jm).exists(Ns=>Oc(Ns,Bs)),jo=(Bs,Ns,Xs)=>oo(Bs,Xs).filter(Hr=>!Xs.useTabstopAt(Hr)).bind(Hr=>(Wo(Hr)?Ro:Lo)(Bs,Ns,Xs)),Jo=(Bs,Ns,Xs)=>Xs.onEnter.bind(Hr=>Hr(Bs,Ns)),us=(Bs,Ns,Xs)=>Xs.onEscape.bind(Hr=>Hr(Bs,Ns)),Ps=Mo([wc(pg([ev,dc(K0)]),Ro),wc(dc(K0),Lo),wc(pg([M_,dc(e0)]),Jo)]),er=Mo([wc(dc(vk),us),wc(dc(K0),jo)]);return go(Un,Ap.init,Ps,er,()=>ko.some(ho))};var No=To(pu("cyclic",sr)),Zo=To(pu("cyclic",Js));const ns=(Qn,Un,Xn)=>(Av(Qn,Xn,Im()),ko.some(!0)),ms=(Qn,Un,Xn)=>hO(Xn)&&dc(mg)(Un.event)?ko.none():ns(Qn,Un,Xn),$s=(Qn,Un)=>ko.some(!0),js=[Gs("execute",ms),Gs("useSpace",!1),Gs("useEnter",!0),Gs("useControlEnter",!1),Gs("useDown",!1)],Nr=(Qn,Un,Xn)=>Xn.execute(Qn,Un,Qn.element),la=(Qn,Un,Xn,Kn)=>{const oo=Xn.useSpace&&!hO(Qn.element)?mg:[],lo=Xn.useEnter?e0:[],ho=Xn.useDown?kw:[],yo=oo.concat(lo).concat(ho);return[wc(dc(yo),Nr)].concat(Xn.useControlEnter?[wc(pg([U3,dc(e0)]),Nr)]:[])},sa=(Qn,Un,Xn,Kn)=>Xn.useSpace&&!hO(Qn.element)?[wc(dc(mg),$s)]:[];var xr=go(js,Ap.init,la,sa,()=>ko.none());const ca=()=>{const Qn=Hl();return ph({readState:()=>Qn.get().map(oo=>({numRows:String(oo.numRows),numColumns:String(oo.numColumns)})).getOr({numRows:"?",numColumns:"?"}),setGridSize:(oo,lo)=>{Qn.set({numRows:oo,numColumns:lo})},getNumRows:()=>Qn.get().map(oo=>oo.numRows),getNumColumns:()=>Qn.get().map(oo=>oo.numColumns)})};var Ra=Object.freeze({__proto__:null,flatgrid:ca,init:Qn=>Qn.state(Qn)});const dl=Qn=>(Un,Xn,Kn,oo)=>{const lo=Qn(Un.element);return zd(lo,Un,Xn,Kn,oo)},Bl=(Qn,Un)=>{const Xn=u_(Qn,Un);return dl(Xn)},Gu=(Qn,Un)=>{const Xn=u_(Un,Qn);return dl(Xn)},qf=Qn=>(Un,Xn,Kn,oo)=>zd(Qn,Un,Xn,Kn,oo),zd=(Qn,Un,Xn,Kn,oo)=>Kn.focusManager.get(Un).bind(ho=>Qn(Un.element,ho,Kn,oo)).map(ho=>(Kn.focusManager.set(Un,ho),!0)),dp=qf,mO=qf,pO=qf,Ux=Qn=>Qn.offsetWidth<=0&&Qn.offsetHeight<=0,Ok=Qn=>!Ux(Qn.dom),yu=(Qn,Un)=>Sr(Qn,Un).map(Xn=>({index:Xn,candidates:Qn})),wm=(Qn,Un,Xn)=>{const Kn=ho=>Oc(ho,Un),oo=_f(Qn,Xn),lo=ga(oo,Ok);return yu(lo,Kn)},Lh=(Qn,Un)=>Sr(Qn,Xn=>Oc(Un,Xn)),gg=(Qn,Un,Xn,Kn)=>{const oo=Math.floor(Un/Xn),lo=Un%Xn;return Kn(oo,lo).bind(ho=>{const yo=ho.row*Xn+ho.column;return yo>=0&&yogg(Qn,Un,Kn,(lo,ho)=>{const Co=lo===Xn-1?Qn.length-lo*Kn:Kn,Ro=Q0(ho,oo,0,Co-1);return ko.some({row:lo,column:Ro})}),my=(Qn,Un,Xn,Kn,oo)=>gg(Qn,Un,Kn,(lo,ho)=>{const yo=Q0(lo,oo,0,Xn-1),Ro=yo===Xn-1?Qn.length-yo*Kn:Kn,Lo=rp(ho,0,Ro-1);return ko.some({row:yo,column:Lo})}),Wm=(Qn,Un,Xn,Kn)=>Np(Qn,Un,Xn,Kn,1),Zx=(Qn,Un,Xn,Kn)=>Np(Qn,Un,Xn,Kn,-1),xw=(Qn,Un,Xn,Kn)=>my(Qn,Un,Xn,Kn,-1),t0=(Qn,Un,Xn,Kn)=>my(Qn,Un,Xn,Kn,1),Gh=[Er("selector"),Gs("execute",ms),Vm("onEscape"),Gs("captureTab",!1),e_()],Ew=(Qn,Un,Xn)=>{Rd(Qn.element,Un.selector).each(Kn=>{Un.focusManager.set(Qn,Kn)})},lA=(Qn,Un)=>Un.focusManager.get(Qn).bind(Xn=>Bg(Xn,Un.selector)),cA=(Qn,Un,Xn,Kn)=>lA(Qn,Xn).bind(oo=>Xn.execute(Qn,Un,oo)),N_=Qn=>(Un,Xn,Kn,oo)=>wm(Un,Xn,Kn.selector).bind(lo=>Qn(lo.candidates,lo.index,oo.getNumRows().getOr(Kn.initSize.numRows),oo.getNumColumns().getOr(Kn.initSize.numColumns))),uA=(Qn,Un,Xn)=>Xn.captureTab?ko.some(!0):ko.none(),_k=(Qn,Un,Xn)=>Xn.onEscape(Qn,Un),dA=N_(Zx),gO=N_(Wm),NN=N_(xw),dH=N_(t0),fH=Mo([wc(dc(yk),Bl(dA,gO)),wc(dc(D_),Gu(dA,gO)),wc(dc(J0),dp(NN)),wc(dc(kw),mO(dH)),wc(pg([ev,dc(K0)]),uA),wc(pg([M_,dc(K0)]),uA),wc(dc(mg.concat(e0)),cA)]),hH=Mo([wc(dc(vk),_k),wc(dc(mg),$s)]);var mH=go(Gh,ca,fH,hH,()=>ko.some(Ew));const LN=(Qn,Un,Xn,Kn,oo)=>{const lo=yo=>Nd(yo)==="button"&&Bu(yo,"disabled")==="disabled",ho=(yo,Co,Ro)=>oo(yo,Co,Kn,0,Ro.length-1,Ro[Co],Lo=>lo(Ro[Lo])?ho(yo,Lo,Ro):ko.from(Ro[Lo]));return wm(Qn,Xn,Un).bind(yo=>{const Co=yo.index,Ro=yo.candidates;return ho(Co,Co,Ro)})},IN=(Qn,Un,Xn,Kn)=>LN(Qn,Un,Xn,Kn,(oo,lo,ho,yo,Co,Ro,Lo)=>{const Wo=rp(lo+ho,yo,Co);return Wo===oo?ko.from(Ro):Lo(Wo)}),Sk=(Qn,Un,Xn,Kn)=>LN(Qn,Un,Xn,Kn,(oo,lo,ho,yo,Co,Ro,Lo)=>{const Wo=Q0(lo,ho,yo,Co);return Wo===oo?ko.none():Lo(Wo)}),q3=[Er("selector"),Gs("getInitial",ko.none),Gs("execute",ms),Vm("onEscape"),Gs("executeOnMove",!1),Gs("allowVertical",!0),Gs("allowHorizontal",!0),Gs("cycles",!0)],pH=(Qn,Un)=>Un.focusManager.get(Qn).bind(Xn=>Bg(Xn,Un.selector)),BN=(Qn,Un,Xn)=>pH(Qn,Xn).bind(Kn=>Xn.execute(Qn,Un,Kn)),FN=(Qn,Un,Xn)=>{Un.getInitial(Qn).orThunk(()=>Rd(Qn.element,Un.selector)).each(Kn=>{Un.focusManager.set(Qn,Kn)})},HN=(Qn,Un,Xn)=>(Xn.cycles?Sk:IN)(Qn,Xn.selector,Un,-1),QN=(Qn,Un,Xn)=>(Xn.cycles?Sk:IN)(Qn,Xn.selector,Un,1),O1=Qn=>(Un,Xn,Kn,oo)=>Qn(Un,Xn,Kn,oo).bind(()=>Kn.executeOnMove?BN(Un,Xn,Kn):ko.some(!0)),gH=(Qn,Un,Xn)=>Xn.onEscape(Qn,Un),bH=(Qn,Un,Xn,Kn)=>{const oo=[...Xn.allowHorizontal?yk:[]].concat(Xn.allowVertical?J0:[]),lo=[...Xn.allowHorizontal?D_:[]].concat(Xn.allowVertical?kw:[]);return[wc(dc(oo),O1(Bl(HN,QN))),wc(dc(lo),O1(Gu(HN,QN))),wc(dc(e0),BN),wc(dc(mg),BN)]},vH=Mo([wc(dc(mg),$s),wc(dc(vk),gH)]);var yH=go(q3,Ap.init,bH,vH,()=>ko.some(FN));const fA=(Qn,Un,Xn)=>ko.from(Qn[Un]).bind(Kn=>ko.from(Kn[Xn]).map(oo=>({rowIndex:Un,columnIndex:Xn,cell:oo}))),Tw=(Qn,Un,Xn,Kn)=>{const lo=Qn[Un].length,ho=Q0(Xn,Kn,0,lo-1);return fA(Qn,Un,ho)},hA=(Qn,Un,Xn,Kn)=>{const oo=Q0(Xn,Kn,0,Qn.length-1),lo=Qn[oo].length,ho=rp(Un,0,lo-1);return fA(Qn,oo,ho)},VN=(Qn,Un,Xn,Kn)=>{const lo=Qn[Un].length,ho=rp(Xn+Kn,0,lo-1);return fA(Qn,Un,ho)},mA=(Qn,Un,Xn,Kn)=>{const oo=rp(Xn+Kn,0,Qn.length-1),lo=Qn[oo].length,ho=rp(Un,0,lo-1);return fA(Qn,oo,ho)},pA=(Qn,Un,Xn)=>Tw(Qn,Un,Xn,1),j3=(Qn,Un,Xn)=>Tw(Qn,Un,Xn,-1),OH=(Qn,Un,Xn)=>hA(Qn,Xn,Un,-1),_H=(Qn,Un,Xn)=>hA(Qn,Xn,Un,1),SH=(Qn,Un,Xn)=>VN(Qn,Un,Xn,-1),wH=(Qn,Un,Xn)=>VN(Qn,Un,Xn,1),CH=(Qn,Un,Xn)=>mA(Qn,Xn,Un,-1),kH=(Qn,Un,Xn)=>mA(Qn,Xn,Un,1),zN=[fm("selectors",[Er("row"),Er("cell")]),Gs("cycles",!0),Gs("previousSelector",ko.none),Gs("execute",ms)],X3=(Qn,Un,Xn)=>{Un.previousSelector(Qn).orThunk(()=>{const oo=Un.selectors;return Rd(Qn.element,oo.cell)}).each(oo=>{Un.focusManager.set(Qn,oo)})},xH=(Qn,Un,Xn)=>dg(Qn.element).bind(Kn=>Xn.execute(Qn,Un,Kn)),EH=(Qn,Un)=>hs(Qn,Xn=>_f(Xn,Un.selectors.cell)),gA=(Qn,Un)=>(Xn,Kn,oo)=>{const lo=oo.cycles?Qn:Un;return Bg(Kn,oo.selectors.row).bind(ho=>{const yo=_f(ho,oo.selectors.cell);return Lh(yo,Kn).bind(Co=>{const Ro=_f(Xn,oo.selectors.row);return Lh(Ro,ho).bind(Lo=>{const Wo=EH(Ro,oo);return lo(Wo,Lo,Co).map(jo=>jo.cell)})})})},WN=gA(j3,SH),L_=gA(pA,wH),UN=gA(OH,CH),TH=gA(_H,kH),Y3=Mo([wc(dc(yk),Bl(WN,L_)),wc(dc(D_),Gu(WN,L_)),wc(dc(J0),dp(UN)),wc(dc(kw),mO(TH)),wc(dc(mg.concat(e0)),xH)]),AH=Mo([wc(dc(mg),$s)]);var ZN=go(zN,Ap.init,Y3,AH,()=>ko.some(X3));const qN=[Er("selector"),Gs("execute",ms),Gs("moveOnTab",!1)],G3=(Qn,Un,Xn)=>Xn.focusManager.get(Qn).bind(Kn=>Xn.execute(Qn,Un,Kn)),jN=(Qn,Un,Xn)=>{Rd(Qn.element,Un.selector).each(Kn=>{Un.focusManager.set(Qn,Kn)})},K3=(Qn,Un,Xn)=>Sk(Qn,Xn.selector,Un,-1),XN=(Qn,Un,Xn)=>Sk(Qn,Xn.selector,Un,1),PH=(Qn,Un,Xn,Kn)=>Xn.moveOnTab?pO(K3)(Qn,Un,Xn,Kn):ko.none(),$H=(Qn,Un,Xn,Kn)=>Xn.moveOnTab?pO(XN)(Qn,Un,Xn,Kn):ko.none(),J3=Mo([wc(dc(J0),pO(K3)),wc(dc(kw),pO(XN)),wc(pg([ev,dc(K0)]),PH),wc(pg([M_,dc(K0)]),$H),wc(dc(e0),G3),wc(dc(mg),G3)]),RH=Mo([wc(dc(mg),$s)]);var DH=go(qN,Ap.init,J3,RH,()=>ko.some(jN));const MH=[Vm("onSpace"),Vm("onEnter"),Vm("onShiftEnter"),Vm("onLeft"),Vm("onRight"),Vm("onTab"),Vm("onShiftTab"),Vm("onUp"),Vm("onDown"),Vm("onEscape"),Gs("stopSpaceKeyup",!1),Tc("focusIn")],NH=(Qn,Un,Xn)=>[wc(dc(mg),Xn.onSpace),wc(pg([M_,dc(e0)]),Xn.onEnter),wc(pg([ev,dc(e0)]),Xn.onShiftEnter),wc(pg([ev,dc(K0)]),Xn.onShiftTab),wc(pg([M_,dc(K0)]),Xn.onTab),wc(dc(J0),Xn.onUp),wc(dc(kw),Xn.onDown),wc(dc(yk),Xn.onLeft),wc(dc(D_),Xn.onRight),wc(dc(mg),Xn.onSpace)],YN=(Qn,Un,Xn)=>[...Xn.stopSpaceKeyup?[wc(dc(mg),$s)]:[],wc(dc(vk),Xn.onEscape)];var LH=go(MH,Ap.init,NH,YN,Qn=>Qn.focusIn);const IH=No.schema(),BH=Zo.schema(),GN=yH.schema(),FH=mH.schema(),HH=ZN.schema(),KN=xr.schema(),QH=DH.schema(),VH=LH.schema();var bA=Object.freeze({__proto__:null,acyclic:IH,cyclic:BH,flow:GN,flatgrid:FH,matrix:HH,execution:KN,menu:QH,special:VH});const zH=Qn=>Su(Qn,"setGridSize"),Za=Ub({branchKey:"mode",branches:bA,name:"keying",active:{events:(Qn,Un)=>Qn.handler.toEvents(Qn,Un)},apis:{focusIn:(Qn,Un,Xn)=>{Un.sendFocusIn(Un).fold(()=>{Qn.getSystem().triggerFocus(Qn.element,Qn.element)},Kn=>{Kn(Qn,Un,Xn)})},setGridSize:(Qn,Un,Xn,Kn,oo)=>{zH(Xn)?Xn.setGridSize(Kn,oo):console.error("Layout does not support setGridSize")}},state:Ra}),fp=(Qn,Un)=>{ma(()=>{h3(Qn,Un,()=>hs(Un,Qn.getSystem().build))},Qn.element)},JN=(Qn,Un)=>{ma(()=>{m3(Qn,Un,()=>AT(Qn.element,Un,Qn.getSystem().buildOrPatch))},Qn.element)},eL=(Qn,Un,Xn,Kn)=>{__(Un);const oo=bC(Qn.element,Xn,Kn,Qn.getSystem().buildOrPatch);Ox(Qn,oo),Qn.syncComponents()},vA=(Qn,Un,Xn)=>{const Kn=Qn.getSystem().build(Xn);S_(Qn,Kn,Un)},WH=(Qn,Un,Xn,Kn)=>{Kb(Un),vA(Qn,(oo,lo)=>Ku(oo,lo,Xn),Kn)},tL=(Qn,Un,Xn,Kn)=>(Un.reuseDom?JN:fp)(Qn,Kn),nL=(Qn,Un,Xn,Kn)=>{vA(Qn,Id,Kn)},UH=(Qn,Un,Xn,Kn)=>{vA(Qn,y0,Kn)},ZH=(Qn,Un,Xn,Kn)=>{const oo=yA(Qn);Zs(oo,ho=>Oc(Kn.element,ho.element)).each(Kb)},yA=(Qn,Un)=>Qn.components(),oL=(Qn,Un,Xn,Kn,oo)=>{const lo=yA(Qn);return ko.from(lo[Kn]).map(ho=>(oo.fold(()=>Kb(ho),yo=>{(Un.reuseDom?eL:WH)(Qn,ho,Kn,yo)}),ho))};var jH=Object.freeze({__proto__:null,append:nL,prepend:UH,remove:ZH,replaceAt:oL,replaceBy:(Qn,Un,Xn,Kn,oo)=>{const lo=yA(Qn);return Sr(lo,Kn).bind(ho=>oL(Qn,Un,Xn,ho,oo))},set:tL,contents:yA});const Cl=Of({fields:[Xd("reuseDom",!0)],name:"replacing",apis:jH}),sL=(Qn,Un)=>{const Xn=Jc(Un);return Of({fields:[Er("enabled")],name:Qn,active:{events:Mo(Xn)}})},Rl=(Qn,Un)=>{const Xn=sL(Qn,Un);return{key:Qn,value:{config:{},me:Xn,configAsRaw:Mo({}),initialConfig:{},state:Ap}}},eR=(Qn,Un)=>{Un.ignore||(Cd(Qn.element),Un.onFocus(Qn))};var XH=Object.freeze({__proto__:null,focus:eR,blur:(Qn,Un)=>{Un.ignore||Vg(Qn.element)},isFocused:Qn=>tO(Qn.element)}),rL=Object.freeze({__proto__:null,exhibit:(Qn,Un)=>{const Xn=Un.ignore?{}:{attributes:{tabindex:"-1"}};return bm(Xn)},events:Qn=>Jc([wr(tg(),(Un,Xn)=>{eR(Un,Qn),Xn.stop()})].concat(Qn.stopMousedown?[wr(Xl(),(Un,Xn)=>{Xn.event.prevent()})]:[]))}),I_=[rc("onFocus"),Gs("stopMousedown",!1),Gs("ignore",!1)];const ol=Of({fields:I_,name:"focusing",active:rL,apis:XH}),iL=Qn=>({init:()=>{const Xn=Ua(Qn);return{get:()=>Xn.get(),set:yo=>Xn.set(yo),clear:()=>Xn.set(Qn),readState:()=>Xn.get()}}}),tR=(Qn,Un,Xn)=>{const Kn=Un.aria;Kn.update(Qn,Kn,Xn.get())},GH=(Qn,Un,Xn)=>{Un.toggleClass.each(Kn=>{Xn.get()?$d(Qn.element,Kn):Yu(Qn.element,Kn)})},qx=(Qn,Un,Xn,Kn)=>{const oo=Xn.get();Xn.set(Kn),GH(Qn,Un,Xn),tR(Qn,Un,Xn),oo!==Kn&&Un.onToggled(Qn,Kn)},aL=(Qn,Un,Xn)=>{qx(Qn,Un,Xn,!Xn.get())},KH=(Qn,Un,Xn)=>{qx(Qn,Un,Xn,!0)},lL=(Qn,Un,Xn)=>{qx(Qn,Un,Xn,!1)},nR=(Qn,Un,Xn)=>Xn.get(),OA=(Qn,Un,Xn)=>{qx(Qn,Un,Xn,Un.selected)};var JH=Object.freeze({__proto__:null,onLoad:OA,toggle:aL,isOn:nR,on:KH,off:lL,set:qx}),cL=Object.freeze({__proto__:null,exhibit:()=>bm({}),events:(Qn,Un)=>{const Xn=ib(Qn,Un,aL),Kn=Vd(Qn,Un,OA);return Jc(Us([Qn.toggleOnExecute?[Xn]:[],[Kn]]))}});const t9=(Qn,Un,Xn)=>{aa(Qn.element,"aria-pressed",Xn),Un.syncWithExpanded&&wk(Qn,Un,Xn)},n9=(Qn,Un,Xn)=>{aa(Qn.element,"aria-selected",Xn)},jx=(Qn,Un,Xn)=>{aa(Qn.element,"aria-checked",Xn)},wk=(Qn,Un,Xn)=>{aa(Qn.element,"aria-expanded",Xn)};var uL=[Gs("selected",!1),Tc("toggleClass"),Gs("toggleOnExecute",!0),rc("onToggled"),xh("aria",{mode:"none"},jl("mode",{pressed:[Gs("syncWithExpanded",!1),tu("update",t9)],checked:[tu("update",jx)],expanded:[tu("update",wk)],selected:[tu("update",n9)],none:[tu("update",xo)]}))];const Ql=Of({fields:uL,name:"toggling",active:cL,apis:JH,state:iL(!1)}),bO=()=>{const Qn=(Un,Xn)=>{Xn.stop(),og(Un)};return[wr(Lg(),Qn),wr(ng(),Qn),X1(mm()),X1(Xl())]},tv=Qn=>{const Un=Xn=>qh((Kn,oo)=>{Xn(Kn),oo.stop()});return Jc(Us([Qn.map(Un).toArray(),bO()]))},dL="alloy.item-hover",fL="alloy.item-focus",oR="alloy.item-toggled",py=Qn=>{(dg(Qn.element).isNone()||ol.isFocused(Qn))&&(ol.isFocused(Qn)||ol.focus(Qn),Qa(Qn,dL,{item:Qn}))},_A=Qn=>{Qa(Qn,fL,{item:Qn})},o9=(Qn,Un)=>{Qa(Qn,oR,{item:Qn,state:Un})},sR=Mo(dL),hL=Mo(fL),mL=Mo(oR),rR=Qn=>Qn.toggling.map(Un=>Un.exclusive?"menuitemradio":"menuitemcheckbox").getOr("menuitem"),pL=Qn=>({aria:{mode:"checked"},...Yl(Qn,(Un,Xn)=>Xn!=="exclusive"),onToggled:(Un,Xn)=>{wo(Qn.onToggled)&&Qn.onToggled(Un,Xn),o9(Un,Xn)}}),s9=Qn=>({dom:Qn.dom,domModification:{...Qn.domModification,attributes:{role:rR(Qn),...Qn.domModification.attributes,"aria-haspopup":Qn.hasSubmenu,...Qn.hasSubmenu?{"aria-expanded":!1}:{}}},behaviours:Wg.augment(Qn.itemBehaviours,[Qn.toggling.fold(Ql.revoke,Un=>Ql.config(pL(Un))),ol.config({ignore:Qn.ignoreFocus,stopMousedown:Qn.ignoreFocus,onFocus:Un=>{_A(Un)}}),Za.config({mode:"execution"}),da.config({store:{mode:"memory",initialValue:Qn.data}}),Rl("item-type-events",[...bO(),wr(eg(),py),wr(md(),ol.focus)])]),components:Qn.components,eventOrder:Qn.eventOrder}),r9=[Er("data"),Er("components"),Er("dom"),Gs("hasSubmenu",!1),Tc("toggling"),Wg.field("itemBehaviours",[Ql,ol,Za,da]),Gs("ignoreFocus",!1),Gs("domModification",{}),tu("builder",s9),Gs("eventOrder",{})],i9=Qn=>({dom:Qn.dom,components:Qn.components,events:Jc([Y1(md())])}),SA=[Er("dom"),Er("components"),tu("builder",i9)],Xx=Mo("item-widget"),Yx=Mo([Xh({name:"widget",overrides:Qn=>({behaviours:Zr([da.config({store:{mode:"manual",getValue:Un=>Qn.data,setValue:xo}})])})})]),a9=Qn=>{const Un=$x(Xx(),Qn,Yx()),Xn=mk(Xx(),Qn,Un.internals()),Kn=lo=>Au(lo,Qn,"widget").map(ho=>(Za.focusIn(ho),ho)),oo=(lo,ho)=>hO(ho.event.target)?ko.none():(Qn.autofocus&&ho.setSource(lo.element),ko.none());return{dom:Qn.dom,components:Xn,domModification:Qn.domModification,events:Jc([qh((lo,ho)=>{Kn(lo).each(yo=>{ho.stop()})}),wr(eg(),py),wr(md(),(lo,ho)=>{Qn.autofocus?Kn(lo):ol.focus(lo)})]),behaviours:Wg.augment(Qn.widgetBehaviours,[da.config({store:{mode:"memory",initialValue:Qn.data}}),ol.config({ignore:Qn.ignoreFocus,onFocus:lo=>{_A(lo)}}),Za.config({mode:"special",focusIn:Qn.autofocus?lo=>{Kn(lo)}:Jy(),onLeft:oo,onRight:oo,onEscape:(lo,ho)=>!ol.isFocused(lo)&&!Qn.autofocus?(ol.focus(lo),ko.some(!0)):(Qn.autofocus&&ho.setSource(lo.element),ko.none())})])}},l9=[Er("uid"),Er("data"),Er("components"),Er("dom"),Gs("autofocus",!1),Gs("ignoreFocus",!1),Wg.field("widgetBehaviours",[da,ol,Za]),Gs("domModification",{}),Nx(Yx()),tu("builder",a9)],gL=jl("type",{widget:l9,item:r9,separator:SA}),bL=(Qn,Un)=>({mode:"flatgrid",selector:"."+Qn.markers.item,initSize:{numColumns:Un.initSize.numColumns,numRows:Un.initSize.numRows},focusManager:Qn.focusManager}),vL=(Qn,Un)=>({mode:"matrix",selectors:{row:Un.rowSelector,cell:"."+Qn.markers.item},previousSelector:Un.previousSelector,focusManager:Qn.focusManager}),yL=(Qn,Un)=>({mode:"menu",selector:"."+Qn.markers.item,moveOnTab:Un.moveOnTab,focusManager:Qn.focusManager}),c9=Mo([vw({factory:{sketch:Qn=>{const Un=td("menu.spec item",gL,Qn);return Un.builder(Un)}},name:"items",unit:"item",defaults:(Qn,Un)=>Pl(Un,"uid")?Un:{...Un,uid:Mv("item")},overrides:(Qn,Un)=>({type:Un.type,ignoreFocus:Qn.fakeFocus,domModification:{classes:[Qn.markers.item]}})})]),iR=Mo([Er("value"),Er("items"),Er("dom"),Er("components"),Gs("eventOrder",{}),Nf("menuBehaviours",[Bc,da,ic,Za]),xh("movement",{mode:"menu",moveOnTab:!0},jl("mode",{grid:[e_(),tu("config",bL)],matrix:[tu("config",vL),Er("rowSelector"),Gs("previousSelector",ko.none)],menu:[Gs("moveOnTab",!0),tu("config",yL)]})),F2(),Gs("fakeFocus",!1),Gs("focusManager",eo()),rc("onHighlight"),rc("onDehighlight")]),OL=Mo("alloy.menu-focus"),u9=(Qn,Un)=>{const Xn=_f(Qn.element,'[role="menuitemradio"][aria-checked="true"]');Qs(Xn,Kn=>{Oc(Kn,Un.element)||Qn.getSystem().getByDom(Kn).each(oo=>{Ql.off(oo)})})},d9=(Qn,Un,Xn,Kn)=>({uid:Qn.uid,dom:Qn.dom,markers:Qn.markers,behaviours:sf(Qn.menuBehaviours,[Bc.config({highlightClass:Qn.markers.selectedItem,itemClass:Qn.markers.item,onHighlight:Qn.onHighlight,onDehighlight:Qn.onDehighlight}),da.config({store:{mode:"memory",initialValue:Qn.value}}),ic.config({find:ko.some}),Za.config(Qn.movement.config(Qn,Qn.movement))]),events:Jc([wr(hL(),(oo,lo)=>{const ho=lo.event;oo.getSystem().getByDom(ho.target).each(yo=>{Bc.highlight(oo,yo),lo.stop(),Qa(oo,OL(),{menu:oo,item:yo})})}),wr(sR(),(oo,lo)=>{const ho=lo.event.item;Bc.highlight(oo,ho)}),wr(mL(),(oo,lo)=>{const{item:ho,state:yo}=lo.event;yo&&Bu(ho.element,"role")==="menuitemradio"&&u9(oo,ho)})]),components:Un,eventOrder:Qn.eventOrder,domModification:{attributes:{role:"menu"}}}),Pw=Yh({name:"Menu",configFields:iR(),partFields:c9(),factory:d9}),_L=Qn=>Fc(Qn,(Un,Xn)=>({k:Un,v:Xn})),SL=(Qn,Un,Xn,Kn)=>Rr(Xn,Kn).bind(oo=>Rr(Qn,oo).bind(lo=>{const ho=SL(Qn,Un,Xn,lo);return ko.some([lo].concat(ho))})).getOr([]),f9=(Qn,Un)=>{const Xn={};Zl(Qn,(ho,yo)=>{Qs(ho,Co=>{Xn[Co]=yo})});const Kn=Un,oo=_L(Un),lo=Vl(oo,(ho,yo)=>[yo].concat(SL(Xn,Kn,oo,yo)));return Vl(Xn,ho=>Rr(lo,ho).getOr([ho]))},wL=()=>{const Qn=Ua({}),Un=Ua({}),Xn=Ua({}),Kn=Hl(),oo=Ua({}),lo=()=>{Qn.set({}),Un.set({}),Xn.set({}),Kn.clear()},ho=()=>Kn.get().isNone(),yo=(kr,Or)=>{Un.set({...Un.get(),[kr]:{type:"prepared",menu:Or}})},Co=(kr,Or,qr,na)=>{Kn.set(kr),Qn.set(qr),Un.set(Or),oo.set(na);const Dl=f9(na,qr);Xn.set(Dl)},Ro=kr=>Al(Qn.get(),(Or,qr)=>Or===kr),Lo=(kr,Or,qr)=>Ps(kr).bind(na=>Ro(kr).bind(Dl=>Or(Dl).map(Sa=>({triggeredMenu:na,triggeringItem:Sa,triggeringPath:qr})))),Wo=(kr,Or)=>{const qr=ga(Bs(kr).toArray(),na=>Ps(na).isSome());return Rr(Xn.get(),kr).bind(na=>{const Dl=Vr(qr.concat(na)),Sa=fs(Dl,(fl,rl)=>Lo(fl,Or,Dl.slice(0,rl+1)).fold(()=>vs(Kn.get(),fl)?[]:[ko.none()],Yc=>[ko.some(Yc)]));return pr(Sa)})},jo=kr=>Rr(Qn.get(),kr).map(Or=>{const qr=Rr(Xn.get(),kr).getOr([]);return[Or].concat(qr)}),Jo=kr=>Rr(Xn.get(),kr).bind(Or=>Or.length>1?ko.some(Or.slice(1)):ko.none()),us=kr=>Rr(Xn.get(),kr),Ps=kr=>er(kr).bind(Ck),er=kr=>Rr(Un.get(),kr),Bs=kr=>Rr(Qn.get(),kr);return{setMenuBuilt:yo,setContents:Co,expand:jo,refresh:us,collapse:Jo,lookupMenu:er,lookupItem:Bs,otherMenus:kr=>{const Or=oo.get();return nr(nc(Or),kr)},getPrimary:()=>Kn.get().bind(Ps),getMenus:()=>Un.get(),clear:lo,isClear:ho,getTriggeringPath:Wo}},Ck=Qn=>Qn.type==="prepared"?ko.some(Qn.menu):ko.none(),CL={init:wL,extractPreparedMenu:Ck},kk=ba("tiered-menu-item-highlight"),wA=ba("tiered-menu-item-dehighlight");var hp;(function(Qn){Qn[Qn.HighlightMenuAndItem=0]="HighlightMenuAndItem",Qn[Qn.HighlightJustMenu=1]="HighlightJustMenu",Qn[Qn.HighlightNone=2]="HighlightNone"})(hp||(hp={}));const kL=(Qn,Un)=>{const Xn=Hl(),Kn=(oa,$a,hl)=>Vl(hl,(gl,Ka)=>{const kl=()=>Pw.sketch({...gl,value:Ka,markers:Qn.markers,fakeFocus:Qn.fakeFocus,onHighlight:($u,Cc)=>{Qa($u,kk,{menuComp:$u,itemComp:Cc})},onDehighlight:($u,Cc)=>{Qa($u,wA,{menuComp:$u,itemComp:Cc})},focusManager:Qn.fakeFocus?ro():eo()});return Ka===$a?{type:"prepared",menu:oa.getSystem().build(kl())}:{type:"notbuilt",nbMenu:kl}}),oo=CL.init(),lo=oa=>{const $a=Kn(oa,Qn.data.primary,Qn.data.menus),hl=Co();return oo.setContents(Qn.data.primary,$a,Qn.data.expansions,hl),oo.getPrimary()},ho=oa=>da.getValue(oa).value,yo=(oa,$a,hl)=>gc($a,gl=>{if(!gl.getSystem().isConnected())return ko.none();const Ka=Bc.getCandidates(gl);return Zs(Ka,kl=>ho(kl)===hl)}),Co=oa=>Vl(Qn.data.menus,($a,hl)=>fs($a.items,gl=>gl.type==="separator"?[]:[gl.data.value])),Ro=Bc.highlight,Lo=(oa,$a)=>{Ro(oa,$a),Bc.getHighlighted($a).orThunk(()=>Bc.getFirst($a)).each(hl=>{Qn.fakeFocus?Bc.highlight($a,hl):Av(oa,hl.element,md())})},Wo=(oa,$a)=>Ks(hs($a,hl=>oa.lookupMenu(hl).bind(gl=>gl.type==="prepared"?ko.some(gl.menu):ko.none()))),jo=(oa,$a,hl)=>{const gl=Wo($a,$a.otherMenus(hl));Qs(gl,Ka=>{sp(Ka.element,[Qn.markers.backgroundMenu]),Qn.stayInDom||Cl.remove(oa,Ka)})},Jo=oa=>Xn.get().getOrThunk(()=>{const $a={},hl=_f(oa.element,`.${Qn.markers.item}`),gl=ga(hl,Ka=>Bu(Ka,"aria-haspopup")==="true");return Qs(gl,Ka=>{oa.getSystem().getByDom(Ka).each(kl=>{const $u=ho(kl);$a[$u]=kl})}),Xn.set($a),$a}),us=(oa,$a)=>{const hl=Jo(oa);Zl(hl,(gl,Ka)=>{const kl=Fs($a,Ka);aa(gl.element,"aria-expanded",kl)})},Ps=(oa,$a,hl)=>ko.from(hl[0]).bind(gl=>$a.lookupMenu(gl).bind(Ka=>{if(Ka.type==="notbuilt")return ko.none();{const kl=Ka.menu,$u=Wo($a,hl.slice(1));return Qs($u,Cc=>{$d(Cc.element,Qn.markers.backgroundMenu)}),Gl(kl.element)||Cl.append(oa,Fm(kl)),sp(kl.element,[Qn.markers.backgroundMenu]),Lo(oa,kl),jo(oa,$a,hl),ko.some(kl)}}));let er;(function(oa){oa[oa.HighlightSubmenu=0]="HighlightSubmenu",oa[oa.HighlightParent=1]="HighlightParent"})(er||(er={}));const Bs=(oa,$a,hl)=>{if(hl.type==="notbuilt"){const gl=oa.getSystem().build(hl.nbMenu());return oo.setMenuBuilt($a,gl),gl}else return hl.menu},Ns=(oa,$a,hl=er.HighlightSubmenu)=>{if($a.hasConfigured(Ja)&&Ja.isDisabled($a))return ko.some($a);{const gl=ho($a);return oo.expand(gl).bind(Ka=>(us(oa,Ka),ko.from(Ka[0]).bind(kl=>oo.lookupMenu(kl).bind($u=>{const Cc=Bs(oa,kl,$u);return Gl(Cc.element)||Cl.append(oa,Fm(Cc)),Qn.onOpenSubmenu(oa,$a,Cc,Vr(Ka)),hl===er.HighlightSubmenu?(Bc.highlightFirst(Cc),Ps(oa,oo,Ka)):(Bc.dehighlightAll(Cc),ko.some($a))}))))}},Xs=(oa,$a)=>{const hl=ho($a);return oo.collapse(hl).bind(gl=>(us(oa,gl),Ps(oa,oo,gl).map(Ka=>(Qn.onCollapseMenu(oa,$a,Ka),Ka))))},Hr=(oa,$a)=>{const hl=ho($a);return oo.refresh(hl).bind(gl=>(us(oa,gl),Ps(oa,oo,gl)))},kr=(oa,$a)=>hO($a.element)?ko.none():Ns(oa,$a,er.HighlightSubmenu),Or=(oa,$a)=>hO($a.element)?ko.none():Xs(oa,$a),qr=(oa,$a)=>Xs(oa,$a).orThunk(()=>Qn.onEscape(oa,$a).map(()=>oa)),na=oa=>($a,hl)=>Bg(hl.getSource(),`.${Qn.markers.item}`).bind(gl=>$a.getSystem().getByDom(gl).toOptional().bind(Ka=>oa($a,Ka).map(Js))),Dl=Jc([wr(OL(),(oa,$a)=>{const hl=$a.event.item;oo.lookupItem(ho(hl)).each(()=>{const gl=$a.event.menu;Bc.highlight(oa,gl);const Ka=ho($a.event.item);oo.refresh(Ka).each(kl=>jo(oa,oo,kl))})}),qh((oa,$a)=>{const hl=$a.event.target;oa.getSystem().getByDom(hl).each(gl=>{ho(gl).indexOf("collapse-item")===0&&Xs(oa,gl),Ns(oa,gl,er.HighlightSubmenu).fold(()=>{Qn.onExecute(oa,gl)},xo)})}),eu((oa,$a)=>{lo(oa).each(hl=>{Cl.append(oa,Fm(hl)),Qn.onOpenMenu(oa,hl),Qn.highlightOnOpen===hp.HighlightMenuAndItem?Lo(oa,hl):Qn.highlightOnOpen===hp.HighlightJustMenu&&Ro(oa,hl)})}),wr(kk,(oa,$a)=>{Qn.onHighlightItem(oa,$a.event.menuComp,$a.event.itemComp)}),wr(wA,(oa,$a)=>{Qn.onDehighlightItem(oa,$a.event.menuComp,$a.event.itemComp)}),...Qn.navigateOnHover?[wr(sR(),(oa,$a)=>{const hl=$a.event.item;Hr(oa,hl),Ns(oa,hl,er.HighlightParent),Qn.onHover(oa,hl)})]:[]]),Sa=oa=>Bc.getHighlighted(oa).bind(Bc.getHighlighted),fl=oa=>{Sa(oa).each($a=>{Xs(oa,$a)})},rl=oa=>{oo.getPrimary().each($a=>{Lo(oa,$a)})},Yc=oa=>ko.from(oa.components()[0]).filter($a=>Bu($a.element,"role")==="menu"),yc={collapseMenu:fl,highlightPrimary:rl,repositionMenus:oa=>{oo.getPrimary().bind(hl=>Sa(oa).bind(gl=>{const Ka=ho(gl),kl=gd(oo.getMenus()),$u=Ks(hs(kl,CL.extractPreparedMenu));return oo.getTriggeringPath(Ka,Cc=>yo(oa,$u,Cc))}).map(gl=>({primary:hl,triggeringPath:gl}))).fold(()=>{Yc(oa).each(hl=>{Qn.onRepositionMenu(oa,hl,[])})},({primary:hl,triggeringPath:gl})=>{Qn.onRepositionMenu(oa,hl,gl)})}};return{uid:Qn.uid,dom:Qn.dom,markers:Qn.markers,behaviours:sf(Qn.tmenuBehaviours,[Za.config({mode:"special",onRight:na(kr),onLeft:na(Or),onEscape:na(qr),focusIn:(oa,$a)=>{oo.getPrimary().each(hl=>{Av(oa,hl.element,md())})}}),Bc.config({highlightClass:Qn.markers.selectedMenu,itemClass:Qn.markers.menu}),ic.config({find:oa=>Bc.getHighlighted(oa)}),Cl.config({})]),eventOrder:Qn.eventOrder,apis:yc,events:Dl}},h9=Mo("collapse-item"),m9=(Qn,Un,Xn)=>({primary:Qn,menus:Un,expansions:Xn}),xL=(Qn,Un)=>({primary:Qn,menus:Jr(Qn,Un),expansions:{}}),p9=Qn=>({value:ba(h9()),meta:{text:Qn}}),B_=Mp({name:"TieredMenu",configFields:[Yv("onExecute"),Yv("onEscape"),Fg("onOpenMenu"),Fg("onOpenSubmenu"),rc("onRepositionMenu"),rc("onCollapseMenu"),Gs("highlightOnOpen",hp.HighlightMenuAndItem),fm("data",[Er("primary"),Er("menus"),Er("expansions")]),Gs("fakeFocus",!1),rc("onHighlightItem"),rc("onDehighlightItem"),rc("onHover"),qy(),Er("dom"),Gs("navigateOnHover",!0),Gs("stayInDom",!1),Nf("tmenuBehaviours",[Za,Bc,ic,Cl]),Gs("eventOrder",{})],apis:{collapseMenu:(Qn,Un)=>{Qn.collapseMenu(Un)},highlightPrimary:(Qn,Un)=>{Qn.highlightPrimary(Un)},repositionMenus:(Qn,Un)=>{Qn.repositionMenus(Un)}},factory:kL,extraApis:{tieredData:m9,singleData:xL,collapseItem:p9}}),g9=(Qn,Un,Xn,Kn,oo)=>{const lo=()=>Qn.lazySink(Un),ho=Kn.type==="horizontal"?{layouts:{onLtr:()=>r_(),onRtl:()=>MS()}}:{},yo=Ro=>Ro.length===2,Co=Ro=>yo(Ro)?ho:{};return B_.sketch({dom:{tag:"div"},data:Kn.data,markers:Kn.menu.markers,highlightOnOpen:Kn.menu.highlightOnOpen,fakeFocus:Kn.menu.fakeFocus,onEscape:()=>(uc.close(Un),Qn.onEscape.map(Ro=>Ro(Un)),ko.some(!0)),onExecute:()=>ko.some(!0),onOpenMenu:(Ro,Lo)=>{jh.positionWithinBounds(lo().getOrDie(),Lo,Xn,oo())},onOpenSubmenu:(Ro,Lo,Wo,jo)=>{const Jo=lo().getOrDie();jh.position(Jo,Wo,{anchor:{type:"submenu",item:Lo,...Co(jo)}})},onRepositionMenu:(Ro,Lo,Wo)=>{const jo=lo().getOrDie();jh.positionWithinBounds(jo,Lo,Xn,oo()),Qs(Wo,Jo=>{const us=Co(Jo.triggeringPath);jh.position(jo,Jo.triggeredMenu,{anchor:{type:"submenu",item:Jo.triggeringItem,...us}})})}})},b9=(Qn,Un)=>{const Xn=(jo,Jo)=>Qn.getRelated(jo).exists(Ps=>ob(Ps,Jo)),Kn=(jo,Jo)=>{uc.setContent(jo,Jo)},oo=(jo,Jo,us)=>{const Ps=ko.none;lo(jo,Jo,us,Ps)},lo=(jo,Jo,us,Ps)=>{const er=Qn.lazySink(jo).getOrDie();uc.openWhileCloaked(jo,Jo,()=>jh.positionWithinBounds(er,jo,us,Ps())),da.setValue(jo,ko.some({mode:"position",config:us,getBounds:Ps}))},ho=(jo,Jo,us)=>{yo(jo,Jo,us,ko.none)},yo=(jo,Jo,us,Ps)=>{const er=g9(Qn,jo,Jo,us,Ps);uc.open(jo,er),da.setValue(jo,ko.some({mode:"menu",menu:er}))},Co=jo=>{uc.isOpen(jo)&&(da.setValue(jo,ko.none()),uc.close(jo))},Ro=jo=>uc.getState(jo),Lo=jo=>{uc.isOpen(jo)&&da.getValue(jo).each(Jo=>{switch(Jo.mode){case"menu":uc.getState(jo).each(B_.repositionMenus);break;case"position":const us=Qn.lazySink(jo).getOrDie();jh.positionWithinBounds(us,jo,Jo.config,Jo.getBounds());break}})},Wo={setContent:Kn,showAt:oo,showWithinBounds:lo,showMenuAt:ho,showMenuWithinBounds:yo,hide:Co,getContent:Ro,reposition:Lo,isOpen:uc.isOpen};return{uid:Qn.uid,dom:Qn.dom,behaviours:sf(Qn.inlineBehaviours,[uc.config({isPartOf:(jo,Jo,us)=>ob(Jo,us)||Xn(jo,us),getAttachPoint:jo=>Qn.lazySink(jo).getOrDie(),onOpen:jo=>{Qn.onShow(jo)},onClose:jo=>{Qn.onHide(jo)}}),da.config({store:{mode:"memory",initialValue:ko.none()}}),Om.config({channels:{...cw({isExtraPart:Un.isExtraPart,...Qn.fireDismissalEventInstead.map(jo=>({fireEventInstead:{event:jo.event}})).getOr({})}),...C_({...Qn.fireRepositionEventInstead.map(jo=>({fireEventInstead:{event:jo.event}})).getOr({}),doReposition:Lo})}})]),eventOrder:Qn.eventOrder,apis:Wo}},kd=Mp({name:"InlineView",configFields:[Er("lazySink"),rc("onShow"),rc("onHide"),I1("onEscape"),Nf("inlineBehaviours",[uc,da,Om]),hh("fireDismissalEventInstead",[Gs("event",q1())]),hh("fireRepositionEventInstead",[Gs("event",hS())]),Gs("getRelated",ko.none),Gs("isExtraPart",sr),Gs("eventOrder",ko.none)],factory:b9,apis:{showAt:(Qn,Un,Xn,Kn)=>{Qn.showAt(Un,Xn,Kn)},showWithinBounds:(Qn,Un,Xn,Kn,oo)=>{Qn.showWithinBounds(Un,Xn,Kn,oo)},showMenuAt:(Qn,Un,Xn,Kn)=>{Qn.showMenuAt(Un,Xn,Kn)},showMenuWithinBounds:(Qn,Un,Xn,Kn,oo)=>{Qn.showMenuWithinBounds(Un,Xn,Kn,oo)},hide:(Qn,Un)=>{Qn.hide(Un)},isOpen:(Qn,Un)=>Qn.isOpen(Un),getContent:(Qn,Un)=>Qn.getContent(Un),setContent:(Qn,Un,Xn)=>{Qn.setContent(Un,Xn)},reposition:(Qn,Un)=>{Qn.reposition(Un)}}});var $w=tinymce.util.Tools.resolve("tinymce.util.Delay");const yh=Mp({name:"Button",factory:Qn=>{const Un=tv(Qn.action),Xn=Qn.dom.tag,Kn=lo=>Rr(Qn.dom,"attributes").bind(ho=>Rr(ho,lo)),oo=()=>{if(Xn==="button"){const lo=Kn("type").getOr("button"),ho=Kn("role").map(yo=>({role:yo})).getOr({});return{type:lo,...ho}}else return{role:Qn.role.getOr(Kn("role").getOr("button"))}};return{uid:Qn.uid,dom:Qn.dom,components:Qn.components,events:Un,behaviours:Wg.augment(Qn.buttonBehaviours,[ol.config({}),Za.config({mode:"execution",useSpace:!0,useEnter:!0})]),domModification:{attributes:oo()},eventOrder:Qn.eventOrder}},configFields:[Gs("uid",void 0),Er("dom"),Gs("components",[]),Wg.field("buttonBehaviours",[ol,Za]),Tc("action"),Tc("role"),Gs("eventOrder",{})]}),v9=Qn=>{const Un=Qn.dom.attributes!==void 0?Qn.dom.attributes:[];return za(Un,(Xn,Kn)=>Kn.name==="class"?Xn:{...Xn,[Kn.name]:Kn.value},{})},y9=Qn=>Array.prototype.slice.call(Qn.dom.classList,0),vO=Qn=>{const Un=Ds.fromHtml(Qn),Xn=kf(Un),Kn=v9(Un),oo=y9(Un),lo=Xn.length===0?{}:{innerHtml:Rv(Un)};return{tag:Nd(Un),classes:oo,attributes:Kn,...lo}},ou=Qn=>{const Un=T3(Qn)&&Su(Qn,"uid")?Qn.uid:Mv("memento");return{get:lo=>lo.getSystem().getByUid(Un).getOrDie(),getOpt:lo=>lo.getSystem().getByUid(Un).toOptional(),asSpec:()=>({...Qn,uid:Un})}},{entries:aR,setPrototypeOf:lR,isFrozen:O9,getPrototypeOf:_9,getOwnPropertyDescriptor:S9}=Object;let{freeze:Zg,seal:nv,create:w9}=Object,{apply:CA,construct:cR}=typeof Reflect<"u"&&Reflect;CA||(CA=function(Un,Xn,Kn){return Un.apply(Xn,Kn)}),Zg||(Zg=function(Un){return Un}),nv||(nv=function(Un){return Un}),cR||(cR=function(Un,Xn){return new Un(...Xn)});const C9=o0(Array.prototype.forEach),k9=o0(Array.prototype.pop),Gx=o0(Array.prototype.push),kA=o0(String.prototype.toLowerCase),yO=o0(String.prototype.toString),x9=o0(String.prototype.match),ov=o0(String.prototype.replace),Rw=o0(String.prototype.indexOf),TL=o0(String.prototype.trim),mb=o0(RegExp.prototype.test),n0=E9(TypeError);function o0(Qn){return function(Un){for(var Xn=arguments.length,Kn=new Array(Xn>1?Xn-1:0),oo=1;oo/gm),AL=nv(/\${[\w\W]*}/gm),R9=nv(/^data-[\-\w.\u00B7-\uFFFF]/),mR=nv(/^aria-[\-\w]+$/),pR=nv(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),D9=nv(/^(?:\w+script|data):/i),M9=nv(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),PL=nv(/^html$/i);var TA=Object.freeze({__proto__:null,MUSTACHE_EXPR:P9,ERB_EXPR:$9,TMPLIT_EXPR:AL,DATA_ATTR:R9,ARIA_ATTR:mR,IS_ALLOWED_URI:pR,IS_SCRIPT_OR_DATA:D9,ATTR_WHITESPACE:M9,DOCTYPE_NAME:PL});const N9=()=>typeof window>"u"?null:window,nE=function(Un,Xn){if(typeof Un!="object"||typeof Un.createPolicy!="function")return null;let Kn=null;const oo="data-tt-policy-suffix";Xn&&Xn.hasAttribute(oo)&&(Kn=Xn.getAttribute(oo));const lo="dompurify"+(Kn?"#"+Kn:"");try{return Un.createPolicy(lo,{createHTML(ho){return ho},createScriptURL(ho){return ho}})}catch{return console.warn("TrustedTypes policy "+lo+" could not be created."),null}};function oE(){let Qn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:N9();const Un=lc=>oE(lc);if(Un.version="3.0.5",Un.removed=[],!Qn||!Qn.document||Qn.document.nodeType!==9)return Un.isSupported=!1,Un;const Xn=Qn.document,Kn=Xn.currentScript;let{document:oo}=Qn;const{DocumentFragment:lo,HTMLTemplateElement:ho,Node:yo,Element:Co,NodeFilter:Ro,NamedNodeMap:Lo=Qn.NamedNodeMap||Qn.MozNamedAttrMap,HTMLFormElement:Wo,DOMParser:jo,trustedTypes:Jo}=Qn,us=Co.prototype,Ps=Kx(us,"cloneNode"),er=Kx(us,"nextSibling"),Bs=Kx(us,"childNodes"),Ns=Kx(us,"parentNode");if(typeof ho=="function"){const lc=oo.createElement("template");lc.content&&lc.content.ownerDocument&&(oo=lc.content.ownerDocument)}let Xs,Hr="";const{implementation:kr,createNodeIterator:Or,createDocumentFragment:qr,getElementsByTagName:na}=oo,{importNode:Dl}=Xn;let Sa={};Un.isSupported=typeof aR=="function"&&typeof Ns=="function"&&kr&&kr.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:fl,ERB_EXPR:rl,TMPLIT_EXPR:Yc,DATA_ATTR:Ga,ARIA_ATTR:yc,IS_SCRIPT_OR_DATA:oa,ATTR_WHITESPACE:$a}=TA;let{IS_ALLOWED_URI:hl}=TA,gl=null;const Ka=mc({},[...uR,...dR,...Jx,...fR,...eE]);let kl=null;const $u=mc({},[...xA,...EA,...hR,...tE]);let Cc=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ih=null,Cg=null,xb=!0,m0=!0,dS=!1,rC=!0,hv=!1,PO=!1,CT=!1,TN=!1,E2=!1,l3=!1,sH=!1,zG=!0,WG=!1;const yK="user-content-";let AY=!0,AN=!1,c3={},u3=null;const UG=mc({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let ZG=null;const qG=mc({},["audio","video","img","source","image","track"]);let PY=null;const jG=mc({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),rH="http://www.w3.org/1998/Math/MathML",iH="http://www.w3.org/2000/svg",iC="http://www.w3.org/1999/xhtml";let d3=iC,$Y=!1,RY=null;const OK=mc({},[rH,iH,iC],yO);let kT;const _K=["application/xhtml+xml","text/html"],SK="text/html";let kg,f3=null;const wK=oo.createElement("form"),XG=function(gr){return gr instanceof RegExp||gr instanceof Function},DY=function(gr){if(!(f3&&f3===gr)){if((!gr||typeof gr!="object")&&(gr={}),gr=Dw(gr),kT=_K.indexOf(gr.PARSER_MEDIA_TYPE)===-1?kT=SK:kT=gr.PARSER_MEDIA_TYPE,kg=kT==="application/xhtml+xml"?yO:kA,gl="ALLOWED_TAGS"in gr?mc({},gr.ALLOWED_TAGS,kg):Ka,kl="ALLOWED_ATTR"in gr?mc({},gr.ALLOWED_ATTR,kg):$u,RY="ALLOWED_NAMESPACES"in gr?mc({},gr.ALLOWED_NAMESPACES,yO):OK,PY="ADD_URI_SAFE_ATTR"in gr?mc(Dw(jG),gr.ADD_URI_SAFE_ATTR,kg):jG,ZG="ADD_DATA_URI_TAGS"in gr?mc(Dw(qG),gr.ADD_DATA_URI_TAGS,kg):qG,u3="FORBID_CONTENTS"in gr?mc({},gr.FORBID_CONTENTS,kg):UG,Ih="FORBID_TAGS"in gr?mc({},gr.FORBID_TAGS,kg):{},Cg="FORBID_ATTR"in gr?mc({},gr.FORBID_ATTR,kg):{},c3="USE_PROFILES"in gr?gr.USE_PROFILES:!1,xb=gr.ALLOW_ARIA_ATTR!==!1,m0=gr.ALLOW_DATA_ATTR!==!1,dS=gr.ALLOW_UNKNOWN_PROTOCOLS||!1,rC=gr.ALLOW_SELF_CLOSE_IN_ATTR!==!1,hv=gr.SAFE_FOR_TEMPLATES||!1,PO=gr.WHOLE_DOCUMENT||!1,E2=gr.RETURN_DOM||!1,l3=gr.RETURN_DOM_FRAGMENT||!1,sH=gr.RETURN_TRUSTED_TYPE||!1,TN=gr.FORCE_BODY||!1,zG=gr.SANITIZE_DOM!==!1,WG=gr.SANITIZE_NAMED_PROPS||!1,AY=gr.KEEP_CONTENT!==!1,AN=gr.IN_PLACE||!1,hl=gr.ALLOWED_URI_REGEXP||pR,d3=gr.NAMESPACE||iC,Cc=gr.CUSTOM_ELEMENT_HANDLING||{},gr.CUSTOM_ELEMENT_HANDLING&&XG(gr.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Cc.tagNameCheck=gr.CUSTOM_ELEMENT_HANDLING.tagNameCheck),gr.CUSTOM_ELEMENT_HANDLING&&XG(gr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Cc.attributeNameCheck=gr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),gr.CUSTOM_ELEMENT_HANDLING&&typeof gr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Cc.allowCustomizedBuiltInElements=gr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),hv&&(m0=!1),l3&&(E2=!0),c3&&(gl=mc({},[...eE]),kl=[],c3.html===!0&&(mc(gl,uR),mc(kl,xA)),c3.svg===!0&&(mc(gl,dR),mc(kl,EA),mc(kl,tE)),c3.svgFilters===!0&&(mc(gl,Jx),mc(kl,EA),mc(kl,tE)),c3.mathMl===!0&&(mc(gl,fR),mc(kl,hR),mc(kl,tE))),gr.ADD_TAGS&&(gl===Ka&&(gl=Dw(gl)),mc(gl,gr.ADD_TAGS,kg)),gr.ADD_ATTR&&(kl===$u&&(kl=Dw(kl)),mc(kl,gr.ADD_ATTR,kg)),gr.ADD_URI_SAFE_ATTR&&mc(PY,gr.ADD_URI_SAFE_ATTR,kg),gr.FORBID_CONTENTS&&(u3===UG&&(u3=Dw(u3)),mc(u3,gr.FORBID_CONTENTS,kg)),AY&&(gl["#text"]=!0),PO&&mc(gl,["html","head","body"]),gl.table&&(mc(gl,["tbody"]),delete Ih.tbody),gr.TRUSTED_TYPES_POLICY){if(typeof gr.TRUSTED_TYPES_POLICY.createHTML!="function")throw n0('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof gr.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw n0('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Xs=gr.TRUSTED_TYPES_POLICY,Hr=Xs.createHTML("")}else Xs===void 0&&(Xs=nE(Jo,Kn)),Xs!==null&&typeof Hr=="string"&&(Hr=Xs.createHTML(""));Zg&&Zg(gr),f3=gr}},YG=mc({},["mi","mo","mn","ms","mtext"]),GG=mc({},["foreignobject","desc","title","annotation-xml"]),CK=mc({},["title","style","font","a","script"]),aH=mc({},dR);mc(aH,Jx),mc(aH,T9);const MY=mc({},fR);mc(MY,A9);const kK=function(gr){let Ia=Ns(gr);(!Ia||!Ia.tagName)&&(Ia={namespaceURI:d3,tagName:"template"});const bl=kA(gr.tagName),Bf=kA(Ia.tagName);return RY[gr.namespaceURI]?gr.namespaceURI===iH?Ia.namespaceURI===iC?bl==="svg":Ia.namespaceURI===rH?bl==="svg"&&(Bf==="annotation-xml"||YG[Bf]):!!aH[bl]:gr.namespaceURI===rH?Ia.namespaceURI===iC?bl==="math":Ia.namespaceURI===iH?bl==="math"&&GG[Bf]:!!MY[bl]:gr.namespaceURI===iC?Ia.namespaceURI===iH&&!GG[Bf]||Ia.namespaceURI===rH&&!YG[Bf]?!1:!MY[bl]&&(CK[bl]||!aH[bl]):!!(kT==="application/xhtml+xml"&&RY[gr.namespaceURI]):!1},xT=function(gr){Gx(Un.removed,{element:gr});try{gr.parentNode.removeChild(gr)}catch{gr.remove()}},PN=function(gr,Ia){try{Gx(Un.removed,{attribute:Ia.getAttributeNode(gr),from:Ia})}catch{Gx(Un.removed,{attribute:null,from:Ia})}if(Ia.removeAttribute(gr),gr==="is"&&!kl[gr])if(E2||l3)try{xT(Ia)}catch{}else try{Ia.setAttribute(gr,"")}catch{}},KG=function(gr){let Ia,bl;if(TN)gr=""+gr;else{const Dy=x9(gr,/^[\r\n\t ]+/);bl=Dy&&Dy[0]}kT==="application/xhtml+xml"&&d3===iC&&(gr=''+gr+"");const Bf=Xs?Xs.createHTML(gr):gr;if(d3===iC)try{Ia=new jo().parseFromString(Bf,kT)}catch{}if(!Ia||!Ia.documentElement){Ia=kr.createDocument(d3,"template",null);try{Ia.documentElement.innerHTML=$Y?Hr:Bf}catch{}}const xg=Ia.body||Ia.documentElement;return gr&&bl&&xg.insertBefore(oo.createTextNode(bl),xg.childNodes[0]||null),d3===iC?na.call(Ia,PO?"html":"body")[0]:PO?Ia.documentElement:xg},JG=function(gr){return Or.call(gr.ownerDocument||gr,gr,Ro.SHOW_ELEMENT|Ro.SHOW_COMMENT|Ro.SHOW_TEXT,null,!1)},xK=function(gr){return gr instanceof Wo&&(typeof gr.nodeName!="string"||typeof gr.textContent!="string"||typeof gr.removeChild!="function"||!(gr.attributes instanceof Lo)||typeof gr.removeAttribute!="function"||typeof gr.setAttribute!="function"||typeof gr.namespaceURI!="string"||typeof gr.insertBefore!="function"||typeof gr.hasChildNodes!="function")},lH=function(gr){return typeof yo=="object"?gr instanceof yo:gr&&typeof gr=="object"&&typeof gr.nodeType=="number"&&typeof gr.nodeName=="string"},aC=function(gr,Ia,bl){Sa[gr]&&C9(Sa[gr],Bf=>{Bf.call(Un,Ia,bl,f3)})},eK=function(gr){let Ia;if(aC("beforeSanitizeElements",gr,null),xK(gr))return xT(gr),!0;const bl=kg(gr.nodeName);if(aC("uponSanitizeElement",gr,{tagName:bl,allowedTags:gl}),gr.hasChildNodes()&&!lH(gr.firstElementChild)&&(!lH(gr.content)||!lH(gr.content.firstElementChild))&&mb(/<[/\w]/g,gr.innerHTML)&&mb(/<[/\w]/g,gr.textContent))return xT(gr),!0;if(!gl[bl]||Ih[bl]){if(!Ih[bl]&&nK(bl)&&(Cc.tagNameCheck instanceof RegExp&&mb(Cc.tagNameCheck,bl)||Cc.tagNameCheck instanceof Function&&Cc.tagNameCheck(bl)))return!1;if(AY&&!u3[bl]){const Bf=Ns(gr)||gr.parentNode,xg=Bs(gr)||gr.childNodes;if(xg&&Bf){const Dy=xg.length;for(let tm=Dy-1;tm>=0;--tm)Bf.insertBefore(Ps(xg[tm],!0),er(gr))}}return xT(gr),!0}return gr instanceof Co&&!kK(gr)||(bl==="noscript"||bl==="noembed"||bl==="noframes")&&mb(/<\/no(script|embed|frames)/i,gr.innerHTML)?(xT(gr),!0):(hv&&gr.nodeType===3&&(Ia=gr.textContent,Ia=ov(Ia,fl," "),Ia=ov(Ia,rl," "),Ia=ov(Ia,Yc," "),gr.textContent!==Ia&&(Gx(Un.removed,{element:gr.cloneNode()}),gr.textContent=Ia)),aC("afterSanitizeElements",gr,null),!1)},tK=function(gr,Ia,bl){if(zG&&(Ia==="id"||Ia==="name")&&(bl in oo||bl in wK))return!1;if(!(m0&&!Cg[Ia]&&mb(Ga,Ia))){if(!(xb&&mb(yc,Ia))){if(!kl[Ia]||Cg[Ia]){if(!(nK(gr)&&(Cc.tagNameCheck instanceof RegExp&&mb(Cc.tagNameCheck,gr)||Cc.tagNameCheck instanceof Function&&Cc.tagNameCheck(gr))&&(Cc.attributeNameCheck instanceof RegExp&&mb(Cc.attributeNameCheck,Ia)||Cc.attributeNameCheck instanceof Function&&Cc.attributeNameCheck(Ia))||Ia==="is"&&Cc.allowCustomizedBuiltInElements&&(Cc.tagNameCheck instanceof RegExp&&mb(Cc.tagNameCheck,bl)||Cc.tagNameCheck instanceof Function&&Cc.tagNameCheck(bl))))return!1}else if(!PY[Ia]){if(!mb(hl,ov(bl,$a,""))){if(!((Ia==="src"||Ia==="xlink:href"||Ia==="href")&&gr!=="script"&&Rw(bl,"data:")===0&&ZG[gr])){if(!(dS&&!mb(oa,ov(bl,$a,"")))){if(bl)return!1}}}}}}return!0},nK=function(gr){return gr.indexOf("-")>0},oK=function(gr){let Ia,bl,Bf,xg;aC("beforeSanitizeAttributes",gr,null);const{attributes:Dy}=gr;if(!Dy)return;const tm={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:kl};for(xg=Dy.length;xg--;){Ia=Dy[xg];const{name:My,namespaceURI:NY}=Ia;bl=My==="value"?Ia.value:TL(Ia.value);const TK=bl;if(Bf=kg(My),tm.attrName=Bf,tm.attrValue=bl,tm.keepAttr=!0,tm.forceKeepAttr=void 0,aC("uponSanitizeAttribute",gr,tm),bl=tm.attrValue,tm.forceKeepAttr)continue;if(!tm.keepAttr){PN(My,gr);continue}if(!rC&&mb(/\/>/i,bl)){PN(My,gr);continue}hv&&(bl=ov(bl,fl," "),bl=ov(bl,rl," "),bl=ov(bl,Yc," "));const sK=kg(gr.nodeName);if(!tK(sK,Bf,bl)){PN(My,gr);continue}if(WG&&(Bf==="id"||Bf==="name")&&(PN(My,gr),bl=yK+bl),Xs&&typeof Jo=="object"&&typeof Jo.getAttributeType=="function"&&!NY)switch(Jo.getAttributeType(sK,Bf)){case"TrustedHTML":{bl=Xs.createHTML(bl);break}case"TrustedScriptURL":{bl=Xs.createScriptURL(bl);break}}if(bl!==TK)try{NY?gr.setAttributeNS(NY,My,bl):gr.setAttribute(My,bl)}catch{PN(My,gr)}}aC("afterSanitizeAttributes",gr,null)},EK=function lc(gr){let Ia;const bl=JG(gr);for(aC("beforeSanitizeShadowDOM",gr,null);Ia=bl.nextNode();)aC("uponSanitizeShadowNode",Ia,null),!eK(Ia)&&(Ia.content instanceof lo&&lc(Ia.content),oK(Ia));aC("afterSanitizeShadowDOM",gr,null)};return Un.sanitize=function(lc){let gr=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Ia,bl,Bf,xg;if($Y=!lc,$Y&&(lc=""),typeof lc!="string"&&!lH(lc))if(typeof lc.toString=="function"){if(lc=lc.toString(),typeof lc!="string")throw n0("dirty is not a string, aborting")}else throw n0("toString is not a function");if(!Un.isSupported)return lc;if(CT||DY(gr),Un.removed=[],typeof lc=="string"&&(AN=!1),AN){if(lc.nodeName){const My=kg(lc.nodeName);if(!gl[My]||Ih[My])throw n0("root node is forbidden and cannot be sanitized in-place")}}else if(lc instanceof yo)Ia=KG(""),bl=Ia.ownerDocument.importNode(lc,!0),bl.nodeType===1&&bl.nodeName==="BODY"||bl.nodeName==="HTML"?Ia=bl:Ia.appendChild(bl);else{if(!E2&&!hv&&!PO&&lc.indexOf("<")===-1)return Xs&&sH?Xs.createHTML(lc):lc;if(Ia=KG(lc),!Ia)return E2?null:sH?Hr:""}Ia&&TN&&xT(Ia.firstChild);const Dy=JG(AN?lc:Ia);for(;Bf=Dy.nextNode();)eK(Bf)||(Bf.content instanceof lo&&EK(Bf.content),oK(Bf));if(AN)return lc;if(E2){if(l3)for(xg=qr.call(Ia.ownerDocument);Ia.firstChild;)xg.appendChild(Ia.firstChild);else xg=Ia;return(kl.shadowroot||kl.shadowrootmode)&&(xg=Dl.call(Xn,xg,!0)),xg}let tm=PO?Ia.outerHTML:Ia.innerHTML;return PO&&gl["!doctype"]&&Ia.ownerDocument&&Ia.ownerDocument.doctype&&Ia.ownerDocument.doctype.name&&mb(PL,Ia.ownerDocument.doctype.name)&&(tm=" +`+tm),hv&&(tm=ov(tm,fl," "),tm=ov(tm,rl," "),tm=ov(tm,Yc," ")),Xs&&sH?Xs.createHTML(tm):tm},Un.setConfig=function(lc){DY(lc),CT=!0},Un.clearConfig=function(){f3=null,CT=!1},Un.isValidAttribute=function(lc,gr,Ia){f3||DY({});const bl=kg(lc),Bf=kg(gr);return tK(bl,Bf,Ia)},Un.addHook=function(lc,gr){typeof gr=="function"&&(Sa[lc]=Sa[lc]||[],Gx(Sa[lc],gr))},Un.removeHook=function(lc){if(Sa[lc])return k9(Sa[lc])},Un.removeHooks=function(lc){Sa[lc]&&(Sa[lc]=[])},Un.removeAllHooks=function(){Sa={}},Un}var $L=oE();const gR=Qn=>$L().sanitize(Qn);var _1=tinymce.util.Tools.resolve("tinymce.util.I18n");const L9={indent:!0,outdent:!0,"table-insert-column-after":!0,"table-insert-column-before":!0,"paste-column-after":!0,"paste-column-before":!0,"unordered-list":!0,"list-bull-circle":!0,"list-bull-default":!0,"list-bull-square":!0},RL="temporary-placeholder",bR=Qn=>()=>Rr(Qn,RL).getOr("!not found!"),sE=(Qn,Un)=>{const Xn=Qn.toLowerCase();if(_1.isRtl()){const Kn=Vc(Xn,"-rtl");return Pl(Un,Kn)?Kn:Xn}else return Xn},vR=(Qn,Un)=>Rr(Un,sE(Qn,Un)),yR=(Qn,Un)=>{const Xn=Un();return vR(Qn,Xn).getOrThunk(bR(Xn))},OR=(Qn,Un,Xn)=>{const Kn=Un();return vR(Qn,Kn).or(Xn).getOrThunk(bR(Kn))},I9=Qn=>_1.isRtl()?Pl(L9,Qn):!1,AA=()=>Rl("add-focusable",[eu(Qn=>{GO(Qn.element,"svg").each(Un=>aa(Un,"focusable","false"))})]),DL=(Qn,Un,Xn,Kn)=>{var oo,lo;const ho=I9(Un)?["tox-icon--flip"]:[],yo=Rr(Xn,sE(Un,Xn)).or(Kn).getOrThunk(bR(Xn));return{dom:{tag:Qn.tag,attributes:(oo=Qn.attributes)!==null&&oo!==void 0?oo:{},classes:Qn.classes.concat(ho),innerHtml:yo},behaviours:Zr([...(lo=Qn.behaviours)!==null&&lo!==void 0?lo:[],AA()])}},s0=(Qn,Un,Xn,Kn=ko.none())=>DL(Un,Qn,Xn(),Kn),B9=(Qn,Un,Xn)=>{const Kn=Xn(),oo=Zs(Qn,lo=>Pl(Kn,sE(lo,Kn)));return DL(Un,oo.getOr(RL),Kn,ko.none())},ML={success:"checkmark",error:"warning",err:"error",warning:"warning",warn:"warning",info:"info"},_R=Mp({name:"Notification",factory:Qn=>{const Un=ou({dom:vO(`

    ${gR(Qn.translationProvider(Qn.text))}

    `),behaviours:Zr([Cl.config({})])}),Xn=Jo=>({dom:{tag:"div",classes:["tox-bar"],styles:{width:`${Jo}%`}}}),Kn=Jo=>({dom:{tag:"div",classes:["tox-text"],innerHtml:`${Jo}%`}}),oo=ou({dom:{tag:"div",classes:Qn.progress?["tox-progress-bar","tox-progress-indicator"]:["tox-progress-bar"]},components:[{dom:{tag:"div",classes:["tox-bar-container"]},components:[Xn(0)]},Kn(0)],behaviours:Zr([Cl.config({})])}),yo={updateProgress:(Jo,us)=>{Jo.getSystem().isConnected()&&oo.getOpt(Jo).each(Ps=>{Cl.set(Ps,[{dom:{tag:"div",classes:["tox-bar-container"]},components:[Xn(us)]},Kn(us)])})},updateText:(Jo,us)=>{if(Jo.getSystem().isConnected()){const Ps=Un.get(Jo);Cl.set(Ps,[wd(us)])}}},Co=Us([Qn.icon.toArray(),Qn.level.toArray(),Qn.level.bind(Jo=>ko.from(ML[Jo])).toArray()]),Ro=ou(yh.sketch({dom:{tag:"button",classes:["tox-notification__dismiss","tox-button","tox-button--naked","tox-button--icon"]},components:[s0("close",{tag:"span",classes:["tox-icon"],attributes:{"aria-label":Qn.translationProvider("Close")}},Qn.iconProvider)],action:Jo=>{Qn.onAction(Jo)}})),Lo=B9(Co,{tag:"div",classes:["tox-notification__icon"]},Qn.iconProvider),Wo={dom:{tag:"div",classes:["tox-notification__body"]},components:[Un.asSpec()],behaviours:Zr([Cl.config({})])},jo=[Lo,Wo];return{uid:Qn.uid,dom:{tag:"div",attributes:{role:"alert"},classes:Qn.level.map(Jo=>["tox-notification","tox-notification--in",`tox-notification--${Jo}`]).getOr(["tox-notification","tox-notification--in"])},behaviours:Zr([ol.config({}),Rl("notification-events",[wr(Wu(),Jo=>{Ro.getOpt(Jo).each(ol.focus)})])]),components:jo.concat(Qn.progress?[oo.asSpec()]:[]).concat(Qn.closeButton?[Ro.asSpec()]:[]),apis:yo}},configFields:[Tc("level"),Er("progress"),Tc("icon"),Er("onAction"),Er("text"),Er("iconProvider"),Er("translationProvider"),Xd("closeButton",!0)],apis:{updateProgress:(Qn,Un,Xn)=>{Qn.updateProgress(Un,Xn)},updateText:(Qn,Un,Xn)=>{Qn.updateText(Un,Xn)}}});var SR=(Qn,Un,Xn)=>{const Kn=Un.backstage.shared,oo=()=>{const Co=au(Ds.fromDom(Qn.getContentAreaContainer())),Ro=tf(),Lo=rp(Ro.x,Co.x,Co.right),Wo=rp(Ro.y,Co.y,Co.bottom),jo=Math.max(Co.right,Ro.right),Jo=Math.max(Co.bottom,Ro.bottom);return ko.some(Kc(Lo,Wo,jo-Lo,Jo-Wo))};return{open:(Co,Ro)=>{const Lo=()=>{Ro(),kd.hide(jo)},Wo=gh(_R.sketch({text:Co.text,level:Fs(["success","error","warning","warn","info"],Co.type)?Co.type:void 0,progress:Co.progressBar===!0,icon:Co.icon,closeButton:Co.closeButton,onAction:Lo,iconProvider:Kn.providers.icons,translationProvider:Kn.providers.translate})),jo=gh(kd.sketch({dom:{tag:"div",classes:["tox-notifications-container"]},lazySink:Kn.getSink,fireDismissalEventInstead:{},...Kn.header.isPositionedAtTop()?{}:{fireRepositionEventInstead:{}}}));Xn.add(jo),$o(Co.timeout)&&Co.timeout>0&&$w.setEditorTimeout(Qn,()=>{Lo()},Co.timeout);const us={close:Lo,reposition:()=>{const Ps=Fm(Wo),er={maxHeightFunction:zg()},Bs=Qn.notificationManager.getNotifications();if(Bs[0]===us){const Ns={...Kn.anchors.banner(),overrides:er};kd.showWithinBounds(jo,Ps,{anchor:Ns},oo)}else ws(Bs,us).each(Ns=>{const Xs=Bs[Ns-1].getEl(),Hr={type:"node",root:Ru(),node:ko.some(Ds.fromDom(Xs)),overrides:er,layouts:{onRtl:()=>[bu],onLtr:()=>[bu]}};kd.showWithinBounds(jo,Ps,{anchor:Hr},oo)})},text:Ps=>{_R.updateText(Wo,Ps)},settings:Co,getEl:()=>Wo.element.dom,progressBar:{value:Ps=>{_R.updateProgress(Wo,Ps)}}};return us},close:Co=>{Co.close()},getArgs:Co=>Co.settings}},Mw=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),NL=tinymce.util.Tools.resolve("tinymce.EditorManager"),xk=tinymce.util.Tools.resolve("tinymce.Env"),qg;(function(Qn){Qn.default="wrap",Qn.floating="floating",Qn.sliding="sliding",Qn.scrolling="scrolling"})(qg||(qg={}));var rE;(function(Qn){Qn.auto="auto",Qn.top="top",Qn.bottom="bottom"})(rE||(rE={}));const Iu=Qn=>Un=>Un.options.get(Qn),iE=Qn=>Un=>ko.from(Qn(Un)),LL=Qn=>{const Un=xk.deviceType.isPhone(),Xn=xk.deviceType.isTablet()||Un,Kn=Qn.options.register,oo=ho=>qn(ho)||ho===!1,lo=ho=>qn(ho)||$o(ho);Kn("skin",{processor:ho=>qn(ho)||ho===!1,default:"oxide"}),Kn("skin_url",{processor:"string"}),Kn("height",{processor:lo,default:Math.max(Qn.getElement().offsetHeight,400)}),Kn("width",{processor:lo,default:Mw.DOM.getStyle(Qn.getElement(),"width")}),Kn("min_height",{processor:"number",default:100}),Kn("min_width",{processor:"number"}),Kn("max_height",{processor:"number"}),Kn("max_width",{processor:"number"}),Kn("style_formats",{processor:"object[]"}),Kn("style_formats_merge",{processor:"boolean",default:!1}),Kn("style_formats_autohide",{processor:"boolean",default:!1}),Kn("line_height_formats",{processor:"string",default:"1 1.1 1.2 1.3 1.4 1.5 2"}),Kn("font_family_formats",{processor:"string",default:"Andale Mono=andale mono,monospace;Arial=arial,helvetica,sans-serif;Arial Black=arial black,sans-serif;Book Antiqua=book antiqua,palatino,serif;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,palatino,serif;Helvetica=helvetica,arial,sans-serif;Impact=impact,sans-serif;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco,monospace;Times New Roman=times new roman,times,serif;Trebuchet MS=trebuchet ms,geneva,sans-serif;Verdana=verdana,geneva,sans-serif;Webdings=webdings;Wingdings=wingdings,zapf dingbats"}),Kn("font_size_formats",{processor:"string",default:"8pt 10pt 12pt 14pt 18pt 24pt 36pt"}),Kn("font_size_input_default_unit",{processor:"string",default:"pt"}),Kn("block_formats",{processor:"string",default:"Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h3;Heading 4=h4;Heading 5=h5;Heading 6=h6;Preformatted=pre"}),Kn("content_langs",{processor:"object[]"}),Kn("removed_menuitems",{processor:"string",default:""}),Kn("menubar",{processor:ho=>qn(ho)||uo(ho),default:!Un}),Kn("menu",{processor:"object",default:{}}),Kn("toolbar",{processor:ho=>uo(ho)||qn(ho)||to(ho)?{value:ho,valid:!0}:{valid:!1,message:"Must be a boolean, string or array."},default:!0}),_r(9,ho=>{Kn("toolbar"+(ho+1),{processor:"string"})}),Kn("toolbar_mode",{processor:"string",default:Xn?"scrolling":"floating"}),Kn("toolbar_groups",{processor:"object",default:{}}),Kn("toolbar_location",{processor:"string",default:rE.auto}),Kn("toolbar_persist",{processor:"boolean",default:!1}),Kn("toolbar_sticky",{processor:"boolean",default:Qn.inline}),Kn("toolbar_sticky_offset",{processor:"number",default:0}),Kn("fixed_toolbar_container",{processor:"string",default:""}),Kn("fixed_toolbar_container_target",{processor:"object"}),Kn("ui_mode",{processor:"string",default:"combined"}),Kn("file_picker_callback",{processor:"function"}),Kn("file_picker_validator_handler",{processor:"function"}),Kn("file_picker_types",{processor:"string"}),Kn("typeahead_urls",{processor:"boolean",default:!0}),Kn("anchor_top",{processor:oo,default:"#top"}),Kn("anchor_bottom",{processor:oo,default:"#bottom"}),Kn("draggable_modal",{processor:"boolean",default:!1}),Kn("statusbar",{processor:"boolean",default:!0}),Kn("elementpath",{processor:"boolean",default:!0}),Kn("branding",{processor:"boolean",default:!0}),Kn("promotion",{processor:"boolean",default:!0}),Kn("resize",{processor:ho=>ho==="both"||uo(ho),default:!xk.deviceType.isTouch()}),Kn("sidebar_show",{processor:"string"}),Kn("help_accessibility",{processor:"boolean",default:Qn.hasPlugin("help")}),Kn("default_font_stack",{processor:"string[]",default:[]})},IL=Iu("readonly"),PA=Iu("height"),aE=Iu("width"),wR=iE(Iu("min_width")),Ek=iE(Iu("min_height")),$A=iE(Iu("max_width")),CR=iE(Iu("max_height")),BL=iE(Iu("style_formats")),FL=Iu("style_formats_merge"),HL=Iu("style_formats_autohide"),QL=Iu("content_langs"),kR=Iu("removed_menuitems"),Tk=Iu("toolbar_mode"),VL=Iu("toolbar_groups"),lE=Iu("toolbar_location"),Nw=Iu("fixed_toolbar_container"),F9=Iu("fixed_toolbar_container_target"),zL=Iu("toolbar_persist"),RA=Iu("toolbar_sticky_offset"),xR=Iu("menubar"),DA=Iu("toolbar"),WL=Iu("file_picker_callback"),ER=Iu("file_picker_validator_handler"),UL=Iu("font_size_input_default_unit"),TR=Iu("file_picker_types"),AR=Iu("typeahead_urls"),MA=Iu("anchor_top"),ZL=Iu("anchor_bottom"),PR=Iu("draggable_modal"),qL=Iu("statusbar"),Ak=Iu("elementpath"),$R=Iu("branding"),jL=Iu("resize"),NA=Iu("paste_as_text"),LA=Iu("sidebar_show"),XL=Iu("promotion"),IA=Iu("help_accessibility"),YL=Iu("default_font_stack"),RR=Qn=>Qn.options.get("skin")===!1,Pk=Qn=>Qn.options.get("menubar")!==!1,BA=Qn=>{const Un=Qn.options.get("skin_url");if(RR(Qn))return Un;if(Un)return Qn.documentBaseURI.toAbsolute(Un);{const Xn=Qn.options.get("skin");return NL.baseURL+"/skins/ui/"+Xn}},FA=Qn=>ko.from(Qn.options.get("skin_url")),GL=Qn=>Qn.options.get("line_height_formats").split(" "),HA=Qn=>{const Un=DA(Qn),Xn=qn(Un),Kn=to(Un)&&Un.length>0;return!cE(Qn)&&(Kn||Xn||Un===!0)},DR=Qn=>{const Un=_r(9,Kn=>Qn.options.get("toolbar"+(Kn+1))),Xn=ga(Un,qn);return Mr(Xn.length>0,Xn)},cE=Qn=>DR(Qn).fold(()=>{const Un=DA(Qn);return Do(Un,qn)&&Un.length>0},Js),MR=Qn=>lE(Qn)===rE.bottom,KL=Qn=>{var Un;if(!Qn.inline)return ko.none();const Xn=(Un=Nw(Qn))!==null&&Un!==void 0?Un:"";if(Xn.length>0)return Rd(Ru(),Xn);const Kn=F9(Qn);return Oo(Kn)?ko.some(Ds.fromDom(Kn)):ko.none()},$k=Qn=>Qn.inline&&KL(Qn).isSome(),NR=Qn=>KL(Qn).getOrThunk(()=>Fr(rr(Ds.fromDom(Qn.getElement())))),LR=Qn=>Qn.inline&&!Pk(Qn)&&!HA(Qn)&&!cE(Qn),uE=Qn=>(Qn.options.get("toolbar_sticky")||Qn.inline)&&!$k(Qn)&&!LR(Qn),gy=Qn=>!$k(Qn)&&Qn.options.get("ui_mode")==="split",JL=Qn=>{const Un=Qn.options.get("menu");return Vl(Un,Xn=>({...Xn,items:Xn.items}))};var H9=Object.freeze({__proto__:null,get ToolbarMode(){return qg},get ToolbarLocation(){return rE},register:LL,getSkinUrl:BA,getSkinUrlOption:FA,isReadOnly:IL,isSkinDisabled:RR,getHeightOption:PA,getWidthOption:aE,getMinWidthOption:wR,getMinHeightOption:Ek,getMaxWidthOption:$A,getMaxHeightOption:CR,getUserStyleFormats:BL,shouldMergeStyleFormats:FL,shouldAutoHideStyleFormats:HL,getLineHeightFormats:GL,getContentLanguages:QL,getRemovedMenuItems:kR,isMenubarEnabled:Pk,isMultipleToolbars:cE,isToolbarEnabled:HA,isToolbarPersist:zL,getMultipleToolbarsOption:DR,getUiContainer:NR,useFixedContainer:$k,isSplitUiMode:gy,getToolbarMode:Tk,isDraggableModal:PR,isDistractionFree:LR,isStickyToolbar:uE,getStickyToolbarOffset:RA,getToolbarLocation:lE,isToolbarLocationBottom:MR,getToolbarGroups:VL,getMenus:JL,getMenubar:xR,getToolbar:DA,getFilePickerCallback:WL,getFilePickerTypes:TR,useTypeaheadUrls:AR,getAnchorTop:MA,getAnchorBottom:ZL,getFilePickerValidatorHandler:ER,getFontSizeInputDefaultUnit:UL,useStatusBar:qL,useElementPath:Ak,promotionEnabled:XL,useBranding:$R,getResize:jL,getPasteAsText:NA,getSidebarShow:LA,useHelpAccessibility:IA,getDefaultFontStack:YL});const e5="[data-mce-autocompleter]",IR=Qn=>Bg(Qn,e5),Q9=Qn=>Rd(Qn,e5),V9={setup:(Qn,Un)=>{const Xn=(oo,lo)=>{Qa(oo,op(),{raw:lo})},Kn=()=>Qn.getMenu().bind(Bc.getHighlighted);Un.on("keydown",oo=>{const lo=oo.which;Qn.isActive()&&(Qn.isMenuOpen()?lo===13?(Kn().each(og),oo.preventDefault()):lo===40?(Kn().fold(()=>{Qn.getMenu().each(Bc.highlightFirst)},ho=>{Xn(ho,oo)}),oo.preventDefault(),oo.stopImmediatePropagation()):(lo===37||lo===38||lo===39)&&Kn().each(ho=>{Xn(ho,oo),oo.preventDefault(),oo.stopImmediatePropagation()}):(lo===13||lo===38||lo===40)&&Qn.cancelIfNecessary())}),Un.on("NodeChange",oo=>{Qn.isActive()&&!Qn.isProcessingAction()&&IR(Ds.fromDom(oo.element)).isNone()&&Qn.cancelIfNecessary()})}};var BR;(function(Qn){Qn[Qn.CLOSE_ON_EXECUTE=0]="CLOSE_ON_EXECUTE",Qn[Qn.BUBBLE_TO_SANDBOX=1]="BUBBLE_TO_SANDBOX"})(BR||(BR={}));var sv=BR;const FR="tox-menu-nav__js",Rk="tox-collection__item",HR="tox-swatch",z9={normal:FR,color:HR},t5="tox-collection__item--enabled",W9="tox-collection__group-heading",n5="tox-collection__item-icon",QR="tox-collection__item-label",U9="tox-collection__item-accessory",o5="tox-collection__item-caret",Z9="tox-collection__item-checkmark",dE="tox-collection__item--active",s5="tox-collection__item-container",q9="tox-collection__item-container--column",r5="tox-collection__item-container--row",QA="tox-collection__item-container--align-right",j9="tox-collection__item-container--align-left",VR="tox-collection__item-container--valign-top",X9="tox-collection__item-container--valign-middle",Y9="tox-collection__item-container--valign-bottom",i5=Qn=>Rr(z9,Qn).getOr(FR),a5=Qn=>Qn==="color"?"tox-swatches":"tox-menu",zR=Qn=>({backgroundMenu:"tox-background-menu",selectedMenu:"tox-selected-menu",selectedItem:"tox-collection__item--active",hasIcons:"tox-menu--has-icons",menu:a5(Qn),tieredMenu:"tox-tiered-menu"}),OO=Qn=>{const Un=zR(Qn);return{backgroundMenu:Un.backgroundMenu,selectedMenu:Un.selectedMenu,menu:Un.menu,selectedItem:Un.selectedItem,item:i5(Qn)}},WR=(Qn,Un,Xn)=>{const Kn=zR(Xn);return{tag:"div",classes:Us([[Kn.menu,`tox-menu-${Un}-column`],Qn?[Kn.hasIcons]:[]])}},l5=[Pw.parts.items({})],Dk=(Qn,Un,Xn)=>{const Kn=zR(Xn);return{dom:{tag:"div",classes:Us([[Kn.tieredMenu]])},markers:OO(Xn)}},fE=Mo([Tc("data"),Gs("inputAttributes",{}),Gs("inputStyles",{}),Gs("tag","input"),Gs("inputClasses",[]),rc("onSetValue"),Gs("styles",{}),Gs("eventOrder",{}),Nf("inputBehaviours",[da,ol]),Gs("selectOnFocus",!0)]),UR=Qn=>Zr([ol.config({onFocus:Qn.selectOnFocus?Un=>{const Xn=Un.element,Kn=c1(Xn);Xn.dom.setSelectionRange(0,Kn.length)}:xo})]),by=Qn=>({...UR(Qn),...sf(Qn.inputBehaviours,[da.config({store:{mode:"manual",...Qn.data.map(Un=>({initialValue:Un})).getOr({}),getValue:Un=>c1(Un.element),setValue:(Un,Xn)=>{c1(Un.element)!==Xn&&Wv(Un.element,Xn)}},onSetValue:Qn.onSetValue})])}),VA=Qn=>({tag:Qn.tag,attributes:{type:"text",...Qn.inputAttributes},styles:Qn.inputStyles,classes:Qn.inputClasses}),G9=(Qn,Un)=>({uid:Qn.uid,dom:VA(Qn),components:[],behaviours:by(Qn),eventOrder:Qn.eventOrder}),Lw=Mp({name:"Input",configFields:fE(),factory:G9}),c5=ba("refetch-trigger-event"),u5=ba("redirect-menu-item-interaction"),Mk="tox-menu__searcher",zA=Qn=>Rd(Qn.element,`.${Mk}`).bind(Un=>Qn.getSystem().getByDom(Un).toOptional()),ZR=zA,qR=(Qn,Un)=>{da.setValue(Qn,Un.fetchPattern),Qn.element.dom.selectionStart=Un.selectionStart,Qn.element.dom.selectionEnd=Un.selectionEnd},d5=Qn=>{const Un=da.getValue(Qn),Xn=Qn.element.dom.selectionStart,Kn=Qn.element.dom.selectionEnd;return{fetchPattern:Un,selectionStart:Xn,selectionEnd:Kn}},jR=(Qn,Un)=>{Uo(Un.element,"id").each(Xn=>aa(Qn.element,"aria-activedescendant",Xn))},XR=Qn=>{const Un=(oo,lo)=>(lo.cut(),ko.none()),Xn=(oo,lo)=>{const ho={interactionEvent:lo.event,eventType:lo.event.raw.type};return Qa(oo,u5,ho),ko.some(!0)},Kn="searcher-events";return{dom:{tag:"div",classes:[Rk]},components:[Lw.sketch({inputClasses:[Mk,"tox-textfield"],inputAttributes:{...Qn.placeholder.map(oo=>({placeholder:Qn.i18n(oo)})).getOr({}),type:"search","aria-autocomplete":"list"},inputBehaviours:Zr([Rl(Kn,[wr(o1(),oo=>{Wl(oo,c5)}),wr(op(),(oo,lo)=>{lo.event.raw.key==="Escape"&&lo.stop()})]),Za.config({mode:"special",onLeft:Un,onRight:Un,onSpace:Un,onEnter:Xn,onEscape:Xn,onUp:Xn,onDown:Xn})]),eventOrder:{keydown:[Kn,Za.name()]}})]}},WA="tox-collection--results__js",YR=Qn=>{var Un;return Qn.dom?{...Qn,dom:{...Qn.dom,attributes:{...(Un=Qn.dom.attributes)!==null&&Un!==void 0?Un:{},id:ba("aria-item-search-result-id"),"aria-selected":"false"}}}:Qn},UA=(Qn,Un)=>Xn=>{const Kn=ha(Xn,Un);return hs(Kn,oo=>({dom:Qn,components:oo}))},K9=Qn=>({dom:{tag:"div",classes:["tox-menu","tox-swatches-menu"]},components:[{dom:{tag:"div",classes:["tox-swatches"]},components:[Pw.parts.items({preprocess:Qn!=="auto"?UA({tag:"div",classes:["tox-swatches__row"]},Qn):es})]}]}),J9=Qn=>({dom:{tag:"div",classes:["tox-menu","tox-collection","tox-collection--toolbar","tox-collection--toolbar-lg"]},components:[Pw.parts.items({preprocess:UA({tag:"div",classes:["tox-collection__group"]},Qn)})]}),f5=(Qn,Un)=>{const Xn=[];let Kn=[];return Qs(Qn,(oo,lo)=>{Un(oo,lo)?(Kn.length>0&&Xn.push(Kn),Kn=[],(Pl(oo.dom,"innerHtml")||oo.components&&oo.components.length>0)&&Kn.push(oo)):Kn.push(oo)}),Kn.length>0&&Xn.push(Kn),hs(Xn,oo=>({dom:{tag:"div",classes:["tox-collection__group"]},components:oo}))},GR=(Qn,Un,Xn)=>Pw.parts.items({preprocess:Kn=>{const oo=hs(Kn,Xn);return Qn!=="auto"&&Qn>1?UA({tag:"div",classes:["tox-collection__group"]},Qn)(oo):f5(oo,(lo,ho)=>Un[ho].type==="separator")}}),h5=(Qn,Un,Xn=!0)=>({dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(Qn===1?["tox-collection--list"]:["tox-collection--grid"])},components:[GR(Qn,Un,es)]}),eQ=(Qn,Un,Xn=!0)=>{const Kn=ba("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection",WA].concat(Qn===1?["tox-collection--list"]:["tox-collection--grid"]),attributes:{id:Kn}},components:[GR(Qn,Un,YR)]}},m5=(Qn,Un,Xn)=>{const Kn=ba("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(Qn===1?["tox-collection--list"]:["tox-collection--grid"])},components:[XR({i18n:_1.translate,placeholder:Xn.placeholder}),{dom:{tag:"div",classes:[...Qn===1?["tox-collection--list"]:["tox-collection--grid"],WA],attributes:{id:Kn}},components:[GR(Qn,Un,YR)]}]}},p5=(Qn,Un=!0)=>({dom:{tag:"div",classes:["tox-collection","tox-collection--horizontal"]},components:[Pw.parts.items({preprocess:Xn=>f5(Xn,(Kn,oo)=>Qn[oo].type==="separator")})]}),ZA=Qn=>Br(Qn,Un=>"icon"in Un&&Un.icon!==void 0),vy=Qn=>(console.error(Gf(Qn)),console.log(Qn),ko.none()),hE=(Qn,Un,Xn,Kn,oo)=>{const lo=p5(Xn);return{value:Qn,dom:lo.dom,components:lo.components,items:Xn}},qA=(Qn,Un,Xn,Kn,oo)=>{const lo=()=>oo.menuType!=="searchable"?h5(Kn,Xn):oo.searchMode.searchMode==="search-with-field"?m5(Kn,Xn,oo.searchMode):eQ(Kn,Xn);if(oo.menuType==="color"){const ho=K9(Kn);return{value:Qn,dom:ho.dom,components:ho.components,items:Xn}}else if(oo.menuType==="normal"&&Kn==="auto"){const ho=h5(Kn,Xn);return{value:Qn,dom:ho.dom,components:ho.components,items:Xn}}else if(oo.menuType==="normal"||oo.menuType==="searchable"){const ho=lo();return{value:Qn,dom:ho.dom,components:ho.components,items:Xn}}else if(oo.menuType==="listpreview"&&Kn!=="auto"){const ho=J9(Kn);return{value:Qn,dom:ho.dom,components:ho.components,items:Xn}}else return{value:Qn,dom:WR(Un,Kn,oo.menuType),components:l5,items:Xn}},wf=hc("type"),KR=hc("name"),jA=hc("label"),_O=hc("text"),g5=hc("title"),JR=hc("icon"),Nk=hc("value"),b5=ep("fetch"),v5=ep("getSubmenuItems"),Lk=ep("onAction"),tQ=ep("onItemAction"),F_=Hd("onSetup",()=>xo),eD=$f("name"),yy=$f("text"),S1=$f("icon"),mE=$f("tooltip"),XA=$f("label"),nQ=$f("shortcut"),tD=I1("select"),YA=Xd("active",!1),y5=Xd("borderless",!1),pb=Xd("enabled",!0),Oy=Xd("primary",!1),O5=Qn=>Gs("columns",Qn),pE=Gs("meta",{}),Ik=Hd("onAction",xo),Iw=Qn=>mh("type",Qn),GA=Qn=>Bd("name","name",hf(()=>ba(`${Qn}-name`)),nf),_5=Qn=>Bd("value","value",hf(()=>ba(`${Qn}-value`)),Ad()),nD=Ta([wf,yy]),oD=Qn=>Lu("separatormenuitem",nD,Qn),S5=Ta([Iw("autocompleteitem"),YA,pb,pE,Nk,yy,S1]),oQ=Qn=>Lu("Autocompleter.Separator",nD,Qn),w5=Qn=>Lu("Autocompleter.Item",S5,Qn),Bk=[pb,mE,S1,yy,F_],C5=Ta([wf,Lk].concat(Bk)),sD=Qn=>Lu("toolbarbutton",C5,Qn),rD=[YA].concat(Bk),k5=Ta(rD.concat([wf,Lk])),x5=Qn=>Lu("ToggleButton",k5,Qn),E5=[Hd("predicate",sr),Eh("scope","node",["node","editor"]),Eh("position","selection",["node","selection","line"])],sQ=Bk.concat([Iw("contextformbutton"),Oy,Lk,pu("original",es)]),rQ=rD.concat([Iw("contextformbutton"),Oy,Lk,pu("original",es)]),T5=Bk.concat([Iw("contextformbutton")]),gE=rD.concat([Iw("contextformtogglebutton")]),A5=jl("type",{contextformbutton:sQ,contextformtogglebutton:rQ}),iQ=Ta([Iw("contextform"),Hd("initValue",Mo("")),XA,Pf("commands",A5),Fd("launch",jl("type",{contextformbutton:T5,contextformtogglebutton:gE}))].concat(E5)),aQ=Qn=>Lu("ContextForm",iQ,Qn),lQ=Ta([Iw("contexttoolbar"),hc("items")].concat(E5)),cQ=Qn=>Lu("ContextToolbar",lQ,Qn),uQ=[wf,hc("src"),$f("alt"),Th("classes",[],nf)],KA=Ta(uQ),dQ=[wf,_O,eD,Th("classes",["tox-collection__item-label"],nf)],P5=Ta(dQ),$5=mf(()=>Ir("type",{cardimage:KA,cardtext:P5,cardcontainer:R5})),R5=Ta([wf,mh("direction","horizontal"),mh("align","left"),mh("valign","middle"),Pf("items",$5)]),Bw=[pb,yy,nQ,_5("menuitem"),pE],fQ=Ta([wf,XA,Pf("items",$5),F_,Ik].concat(Bw)),D5=Qn=>Lu("cardmenuitem",fQ,Qn),M5=Ta([wf,YA,S1].concat(Bw)),N5=Qn=>Lu("choicemenuitem",M5,Qn),iD=[wf,hc("fancytype"),Ik],hQ=[Gs("initData",{})].concat(iD),mQ=[I1("select"),Kp("initData",{},[Xd("allowCustomColors",!0),mh("storageKey","default"),Ng("colors",Ad())])].concat(iD),pQ=jl("fancytype",{inserttable:hQ,colorswatch:mQ}),gQ=Qn=>Lu("fancymenuitem",pQ,Qn),L5=Ta([wf,F_,Ik,S1].concat(Bw)),I5=Qn=>Lu("menuitem",L5,Qn),bQ=Ta([wf,v5,F_,S1].concat(Bw)),vQ=Qn=>Lu("nestedmenuitem",bQ,Qn),yQ=Ta([wf,S1,YA,F_,Lk].concat(Bw)),OQ=Qn=>Lu("togglemenuitem",yQ,Qn),aD=(Qn,Un,Xn)=>{const Kn=_f(Qn.element,"."+Xn);if(Kn.length>0){const oo=Sr(Kn,lo=>{const ho=lo.dom.getBoundingClientRect().top,yo=Kn[0].dom.getBoundingClientRect().top;return Math.abs(ho-yo)>Un}).getOr(Kn.length);return ko.some({numColumns:oo,numRows:Math.ceil(Kn.length/oo)})}else return ko.none()},lD=(Qn,Un)=>Zr([Rl(Qn,Un)]),bE={namedEvents:lD,unnamedEvents:Qn=>lD(ba("unnamed-events"),Qn)},JA=ba("tooltip.exclusive"),Fk=ba("tooltip.show"),vE=ba("tooltip.hide"),B5=(Qn,Un,Xn)=>{Qn.getSystem().broadcastOn([JA],{})};var SQ=Object.freeze({__proto__:null,hideAllExclusive:B5,setComponents:(Qn,Un,Xn,Kn)=>{Xn.getTooltip().each(oo=>{oo.getSystem().isConnected()&&Cl.set(oo,Kn)})}}),F5=Object.freeze({__proto__:null,events:(Qn,Un)=>{const Xn=oo=>{Un.getTooltip().each(lo=>{Kb(lo),Qn.onHide(oo,lo),Un.clearTooltip()}),Un.clearTimer()},Kn=oo=>{if(!Un.isShowing()){B5(oo);const lo=Qn.lazySink(oo).getOrDie(),ho=oo.getSystem().build({dom:Qn.tooltipDom,components:Qn.tooltipComponents,events:Jc(Qn.mode==="normal"?[wr(eg(),yo=>{Wl(oo,Fk)}),wr(Rf(),yo=>{Wl(oo,vE)})]:[]),behaviours:Zr([Cl.config({})])});Un.setTooltip(ho),cy(lo,ho),Qn.onShow(oo,ho),jh.position(lo,ho,{anchor:Qn.anchor(oo)})}};return Jc(Us([[wr(Fk,oo=>{Un.resetTimer(()=>{Kn(oo)},Qn.delay)}),wr(vE,oo=>{Un.resetTimer(()=>{Xn(oo)},Qn.delay)}),wr(T0(),(oo,lo)=>{const ho=lo;ho.universal||Fs(ho.channels,JA)&&Xn(oo)}),ig(oo=>{Xn(oo)})],Qn.mode==="normal"?[wr(Wu(),oo=>{Wl(oo,Fk)}),wr(W1(),oo=>{Wl(oo,vE)}),wr(eg(),oo=>{Wl(oo,Fk)}),wr(Rf(),oo=>{Wl(oo,vE)})]:[wr(Ev(),(oo,lo)=>{Wl(oo,Fk)}),wr(Tv(),oo=>{Wl(oo,vE)})]]))}}),H5=[Er("lazySink"),Er("tooltipDom"),Gs("exclusive",!0),Gs("tooltipComponents",[]),Gs("delay",300),Eh("mode","normal",["normal","follow-highlight"]),Gs("anchor",Qn=>({type:"hotspot",hotspot:Qn,layouts:{onLtr:Mo([bu,Rh,gf,bf,eh,$l]),onRtl:Mo([bu,Rh,gf,bf,eh,$l])}})),rc("onHide"),rc("onShow")],CQ=Object.freeze({__proto__:null,init:()=>{const Qn=Hl(),Un=Hl(),Xn=()=>{Qn.on(clearTimeout)},Kn=(lo,ho)=>{Xn(),Qn.set(setTimeout(lo,ho))},oo=Mo("not-implemented");return ph({getTooltip:Un.get,isShowing:Un.isSet,setTooltip:Un.set,clearTooltip:Un.clear,clearTimer:Xn,resetTimer:Kn,readState:oo})}});const Q5=Of({fields:H5,name:"tooltipping",active:F5,state:CQ,apis:SQ}),kQ=Qn=>Qn.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),V5="silver.readonly",cD=Ta([wv("readonly")]),eP=(Qn,Un)=>{const Kn=Qn.mainUi.outerContainer.element,oo=[Qn.mainUi.mothership,...Qn.uiMotherships];Un&&Qs(oo,lo=>{lo.broadcastOn([db()],{target:Kn})}),Qs(oo,lo=>{lo.broadcastOn([V5],{readonly:Un})})},z5=(Qn,Un)=>{Qn.on("init",()=>{Qn.mode.isReadOnly()&&eP(Un,!0)}),Qn.on("SwitchMode",()=>eP(Un,Qn.mode.isReadOnly())),IL(Qn)&&Qn.mode.set("readonly")},jf=()=>Om.config({channels:{[V5]:{schema:cD,onReceive:(Qn,Un)=>{Ja.set(Qn,Un.readonly)}}}}),Lf={item:Qn=>Ja.config({disabled:Qn,disableClass:"tox-collection__item--state-disabled"}),button:Qn=>Ja.config({disabled:Qn}),splitButton:Qn=>Ja.config({disabled:Qn,disableClass:"tox-tbtn--disabled"}),toolbarButton:Qn=>Ja.config({disabled:Qn,disableClass:"tox-tbtn--disabled",useNative:!1})},w1=(Qn,Un)=>{const Xn=Qn.getApi(Un);return Kn=>{Kn(Xn)}},H_=(Qn,Un)=>eu(Xn=>{w1(Qn,Xn)(oo=>{const lo=Qn.onSetup(oo);wo(lo)&&Un.set(lo)})}),_y=(Qn,Un)=>ig(Xn=>w1(Qn,Xn)(Un.get())),uD=(Qn,Un)=>qh((Xn,Kn)=>{w1(Qn,Xn)(Qn.onAction),!Qn.triggersSubmenu&&Un===sv.CLOSE_ON_EXECUTE&&(Xn.getSystem().isConnected()&&Wl(Xn,Fy()),Kn.stop())}),EQ={[Im()]:["disabling","alloy.base.behaviour","toggling","item-events"]},Hk=Ks,Sy=(Qn,Un,Xn,Kn)=>{const oo=Ua(xo);return{type:"item",dom:Un.dom,components:Hk(Un.optComponents),data:Qn.data,eventOrder:EQ,hasSubmenu:Qn.triggersSubmenu,itemBehaviours:Zr([Rl("item-events",[uD(Qn,Xn),H_(Qn,oo),_y(Qn,oo)]),Lf.item(()=>!Qn.enabled||Kn.isDisabled()),jf(),Cl.config({})].concat(Qn.itemBehaviours))}},SO=Qn=>({value:Qn.value,meta:{text:Qn.text.getOr(""),...Qn.meta}}),tP=Qn=>{const Un=xk.os.isMacOS()||xk.os.isiOS(),oo=Un?{alt:"⌥",ctrl:"⌃",shift:"⇧",meta:"⌘",access:"⌃⌥"}:{meta:"Ctrl",access:"Shift+Alt"},lo=Qn.split("+"),ho=hs(lo,yo=>{const Co=yo.toLowerCase().trim();return Pl(oo,Co)?oo[Co]:yo});return Un?ho.join(""):ho.join("+")},dD=(Qn,Un,Xn=[n5])=>s0(Qn,{tag:"div",classes:Xn},Un),r0=Qn=>({dom:{tag:"div",classes:[QR]},components:[wd(_1.translate(Qn))]}),W5=(Qn,Un)=>({dom:{tag:"div",classes:Un,innerHtml:Qn}}),TQ=(Qn,Un)=>({dom:{tag:"div",classes:[QR]},components:[{dom:{tag:Qn.tag,styles:Qn.styles},components:[wd(_1.translate(Un))]}]}),gb=Qn=>({dom:{tag:"div",classes:[U9]},components:[wd(tP(Qn))]}),Qk=Qn=>dD("checkmark",Qn,[Z9]),i0=Qn=>dD("chevron-right",Qn,[o5]),AQ=Qn=>dD("chevron-down",Qn,[o5]),Ou=(Qn,Un)=>{const Xn=Qn.direction==="vertical"?q9:r5,Kn=Qn.align==="left"?j9:QA;return{dom:{tag:"div",classes:[s5,Xn,Kn,(()=>{switch(Qn.valign){case"top":return VR;case"middle":return X9;case"bottom":return Y9}})()]},components:Un}},Vk=(Qn,Un,Xn)=>({dom:{tag:"img",classes:Un,attributes:{src:Qn,alt:Xn.getOr("")}}}),nP=(Qn,Un,Xn)=>{const Kn="custom",oo="remove",lo=Qn.ariaLabel,ho=Qn.value,yo=Qn.iconContent.map(Ro=>OR(Ro,Un.icons,Xn));return{dom:(()=>{const Ro=HR,Lo=yo.getOr(""),jo={tag:"div",attributes:lo.map(Jo=>({title:Un.translate(Jo)})).getOr({}),classes:[Ro]};return ho===Kn?{...jo,tag:"button",classes:[...jo.classes,"tox-swatches__picker-btn"],innerHtml:Lo}:ho===oo?{...jo,classes:[...jo.classes,"tox-swatch--remove"],innerHtml:Lo}:Oo(ho)?{...jo,attributes:{...jo.attributes,"data-mce-color":ho},styles:{"background-color":ho},innerHtml:Lo}:jo})(),optComponents:[]}},fD=Qn=>{const Un=Qn.map(Xn=>({attributes:{title:_1.translate(Xn),id:ba("menu-item")}})).getOr({});return{tag:"div",classes:[FR,Rk],...Un}},hD=(Qn,Un,Xn,Kn)=>{const oo={tag:"div",classes:[n5]},lo=jo=>s0(jo,oo,Un.icons,Kn),ho=()=>ko.some({dom:oo}),yo=Xn?Qn.iconContent.map(lo).orThunk(ho):ko.none(),Co=Qn.checkMark,Ro=ko.from(Qn.meta).fold(()=>r0,jo=>Pl(jo,"style")?ps(TQ,jo.style):r0),Lo=Qn.htmlContent.fold(()=>Qn.textContent.map(Ro),jo=>ko.some(W5(jo,[QR])));return{dom:fD(Qn.ariaLabel),optComponents:[yo,Lo,Qn.shortcutContent.map(gb),Co,Qn.caret]}},Fw=(Qn,Un,Xn,Kn=ko.none())=>Qn.presets==="color"?nP(Qn,Un,Kn):hD(Qn,Un,Xn,Kn),U5=(Qn,Un)=>Rr(Qn,"tooltipWorker").map(Xn=>[Q5.config({lazySink:Un.getSink,tooltipDom:{tag:"div",classes:["tox-tooltip-worker-container"]},tooltipComponents:[],anchor:Kn=>({type:"submenu",item:Kn,overrides:{maxHeightFunction:zg}}),mode:"follow-highlight",onShow:(Kn,oo)=>{Xn(lo=>{Q5.setComponents(Kn,[yC({element:Ds.fromDom(lo)})])})}})]).getOr([]),mD=Qn=>Mw.DOM.encode(Qn),Z5=(Qn,Un)=>{const Xn=_1.translate(Qn),Kn=mD(Xn);if(Un.length>0){const oo=new RegExp(kQ(Un),"gi");return Kn.replace(oo,lo=>`${lo}`)}else return Kn},q5=(Qn,Un,Xn,Kn,oo,lo,ho,yo=!0)=>{const Co=Fw({presets:Kn,textContent:ko.none(),htmlContent:Xn?Qn.text.map(Ro=>Z5(Ro,Un)):ko.none(),ariaLabel:Qn.text,iconContent:Qn.icon,shortcutContent:ko.none(),checkMark:ko.none(),caret:ko.none(),value:Qn.value},ho.providers,yo,Qn.icon);return Sy({data:SO(Qn),enabled:Qn.enabled,getApi:Mo({}),onAction:Ro=>oo(Qn.value,Qn.meta),onSetup:Mo(xo),triggersSubmenu:!1,itemBehaviours:U5(Qn.meta,ho)},Co,lo,ho.providers)},pD=(Qn,Un)=>hs(Qn,Xn=>{switch(Xn.type){case"cardcontainer":return Ou(Xn,pD(Xn.items,Un));case"cardimage":return Vk(Xn.src,Xn.classes,Xn.alt);case"cardtext":const oo=Xn.name.exists(lo=>Fs(Un.cardText.highlightOn,lo))?ko.from(Un.cardText.matchText).getOr(""):"";return W5(Z5(Xn.text,oo),Xn.classes)}}),gD=(Qn,Un,Xn,Kn)=>{const oo=ho=>({isEnabled:()=>!Ja.isDisabled(ho),setEnabled:yo=>{Ja.set(ho,!yo),Qs(_f(ho.element,"*"),Co=>{ho.getSystem().getByDom(Co).each(Ro=>{Ro.hasConfigured(Ja)&&Ja.set(Ro,!yo)})})}}),lo={dom:fD(Qn.label),optComponents:[ko.some({dom:{tag:"div",classes:[s5,r5]},components:pD(Qn.items,Kn)})]};return Sy({data:SO({text:ko.none(),...Qn}),enabled:Qn.enabled,getApi:oo,onAction:Qn.onAction,onSetup:Qn.onSetup,triggersSubmenu:!1,itemBehaviours:ko.from(Kn.itemBehaviours).getOr([])},lo,Un,Xn.providers)},j5=(Qn,Un,Xn,Kn,oo,lo,ho,yo=!0)=>{const Co=Lo=>({setActive:Wo=>{Ql.set(Lo,Wo)},isActive:()=>Ql.isOn(Lo),isEnabled:()=>!Ja.isDisabled(Lo),setEnabled:Wo=>Ja.set(Lo,!Wo)}),Ro=Fw({presets:Xn,textContent:Un?Qn.text:ko.none(),htmlContent:ko.none(),ariaLabel:Qn.text,iconContent:Qn.icon,shortcutContent:Un?Qn.shortcut:ko.none(),checkMark:Un?ko.some(Qk(ho.icons)):ko.none(),caret:ko.none(),value:Qn.value},ho,yo);return Lc(Sy({data:SO(Qn),enabled:Qn.enabled,getApi:Co,onAction:Lo=>Kn(Qn.value),onSetup:Lo=>(Lo.setActive(oo),xo),triggersSubmenu:!1,itemBehaviours:[]},Ro,lo,ho),{toggling:{toggleClass:t5,toggleOnExecute:!1,selected:Qn.active,exclusive:!0}})},yE=X0(Xx(),Yx()),X5=Qn=>({value:J5(Qn)}),Y5=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,G5=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,K5=Qn=>Y5.test(Qn)||G5.test(Qn),J5=Qn=>Rc(Qn,"#").toUpperCase(),eI=Qn=>K5(Qn)?ko.some({value:J5(Qn)}):ko.none(),PQ=Qn=>({value:Qn.value.replace(Y5,(Xn,Kn,oo,lo)=>Kn+Kn+oo+oo+lo+lo)}),$Q=Qn=>{const Un=PQ(Qn),Xn=G5.exec(Un.value);return Xn===null?["FFFFFF","FF","FF","FF"]:Xn},oP=Qn=>{const Un=Qn.toString(16);return(Un.length===1?"0"+Un:Un).toUpperCase()},zk=Qn=>{const Un=oP(Qn.red)+oP(Qn.green)+oP(Qn.blue);return X5(Un)},tI=Math.min,nI=Math.max,OE=Math.round,oI=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,sI=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,Q_=(Qn,Un,Xn,Kn)=>({red:Qn,green:Un,blue:Xn,alpha:Kn}),bD=Qn=>{const Un=parseInt(Qn,10);return Un.toString()===Qn&&Un>=0&&Un<=255},rI=Qn=>{let Un,Xn,Kn;const oo=(Qn.hue||0)%360;let lo=Qn.saturation/100,ho=Qn.value/100;if(lo=nI(0,tI(lo,1)),ho=nI(0,tI(ho,1)),lo===0)return Un=Xn=Kn=OE(255*ho),Q_(Un,Xn,Kn,1);const yo=oo/60,Co=ho*lo,Ro=Co*(1-Math.abs(yo%2-1)),Lo=ho-Co;switch(Math.floor(yo)){case 0:Un=Co,Xn=Ro,Kn=0;break;case 1:Un=Ro,Xn=Co,Kn=0;break;case 2:Un=0,Xn=Co,Kn=Ro;break;case 3:Un=0,Xn=Ro,Kn=Co;break;case 4:Un=Ro,Xn=0,Kn=Co;break;case 5:Un=Co,Xn=0,Kn=Ro;break;default:Un=Xn=Kn=0}return Un=OE(255*(Un+Lo)),Xn=OE(255*(Xn+Lo)),Kn=OE(255*(Kn+Lo)),Q_(Un,Xn,Kn,1)},_E=Qn=>{const Un=$Q(Qn),Xn=parseInt(Un[1],16),Kn=parseInt(Un[2],16),oo=parseInt(Un[3],16);return Q_(Xn,Kn,oo,1)},iI=(Qn,Un,Xn,Kn)=>{const oo=parseInt(Qn,10),lo=parseInt(Un,10),ho=parseInt(Xn,10),yo=parseFloat(Kn);return Q_(oo,lo,ho,yo)},vD=Qn=>{if(Qn==="transparent")return ko.some(Q_(0,0,0,0));const Un=oI.exec(Qn);if(Un!==null)return ko.some(iI(Un[1],Un[2],Un[3],"1"));const Xn=sI.exec(Qn);return Xn!==null?ko.some(iI(Xn[1],Xn[2],Xn[3],Xn[4])):ko.none()},yD=Qn=>`rgba(${Qn.red},${Qn.green},${Qn.blue},${Qn.alpha})`,bb=Q_(255,0,0,1),RQ=Qn=>{Qn.dispatch("SkinLoaded")},OD=(Qn,Un)=>{Qn.dispatch("SkinLoadError",Un)},aI=Qn=>{Qn.dispatch("ResizeEditor")},sP=(Qn,Un)=>{Qn.dispatch("ResizeContent",Un)},DQ=(Qn,Un)=>{Qn.dispatch("ScrollContent",Un)},_D=(Qn,Un)=>{Qn.dispatch("TextColorChange",Un)},lI=(Qn,Un)=>{Qn.dispatch("AfterProgressState",{state:Un})},cI=(Qn,Un)=>Qn.dispatch("ResolveName",{name:Un.nodeName.toLowerCase(),target:Un}),MQ=(Qn,Un)=>{Qn.dispatch("ToggleToolbarDrawer",{state:Un})},NQ=(Qn,Un)=>{Qn.dispatch("StylesTextUpdate",Un)},LQ=(Qn,Un)=>{Qn.dispatch("AlignTextUpdate",Un)},IQ=(Qn,Un)=>{Qn.dispatch("FontSizeTextUpdate",Un)},BQ=(Qn,Un)=>{Qn.dispatch("FontSizeInputTextUpdate",Un)},uI=(Qn,Un)=>{Qn.dispatch("BlocksTextUpdate",Un)},dI=(Qn,Un)=>{Qn.dispatch("FontFamilyTextUpdate",Un)},SE=(Qn,Un)=>()=>{Qn(),Un()},mp=Qn=>a0(Qn,"NodeChange",Un=>{Un.setEnabled(Qn.selection.isEditable())}),FQ=(Qn,Un)=>Xn=>{const Kn=ab(),oo=()=>{Xn.setActive(Qn.formatter.match(Un));const lo=Qn.formatter.formatChanged(Un,Xn.setActive);Kn.set(lo)};return Qn.initialized?oo():Qn.once("init",oo),()=>{Qn.off("init",oo),Kn.clear()}},rP=(Qn,Un)=>Xn=>{const Kn=mp(Qn)(Xn),oo=FQ(Qn,Un)(Xn);return()=>{Kn(),oo()}},a0=(Qn,Un,Xn)=>Kn=>{const oo=()=>Xn(Kn),lo=()=>{Xn(Kn),Qn.on(Un,oo)};return Qn.initialized?lo():Qn.once("init",lo),()=>{Qn.off("init",lo),Qn.off(Un,oo)}},fI=Qn=>Un=>()=>{Qn.undoManager.transact(()=>{Qn.focus(),Qn.execCommand("mceToggleFormat",!1,Un.format)})},bg=(Qn,Un)=>()=>Qn.execCommand(Un);var V_=tinymce.util.Tools.resolve("tinymce.util.LocalStorage");const SD={},wD=(Qn,Un=10)=>{const Xn=V_.getItem(Qn),Kn=qn(Xn)?JSON.parse(Xn):[],lo=(Ro=>Un-Ro.length<0?Ro.slice(0,Un):Ro)(Kn),ho=Ro=>{ws(lo,Ro).each(yo),lo.unshift(Ro),lo.length>Un&&lo.pop(),V_.setItem(Qn,JSON.stringify(lo))},yo=Ro=>{lo.splice(Ro,1)};return{add:ho,state:()=>lo.slice(0)}},iP=Qn=>Rr(SD,Qn).getOrThunk(()=>{const Un=`tinymce-custom-colors-${Qn}`,Xn=V_.getItem(Un);if(bo(Xn)){const oo=V_.getItem("tinymce-custom-colors");V_.setItem(Un,Oo(oo)?oo:"[]")}const Kn=wD(Un,10);return SD[Qn]=Kn,Kn}),CD=Qn=>hs(iP(Qn).state(),Un=>({type:"choiceitem",text:Un,icon:"checkmark",value:Un})),kD=(Qn,Un)=>{iP(Qn).add(Un)},wE=(Qn,Un,Xn)=>({hue:Qn,saturation:Un,value:Xn}),aP=Qn=>{let Un=0,Xn=0,Kn=0;const oo=Qn.red/255,lo=Qn.green/255,ho=Qn.blue/255,yo=Math.min(oo,Math.min(lo,ho)),Co=Math.max(oo,Math.max(lo,ho));if(yo===Co)return Kn=yo,wE(0,0,Kn*100);const Ro=oo===yo?lo-ho:ho===yo?oo-lo:ho-oo;return Un=oo===yo?3:ho===yo?1:5,Un=60*(Un-Ro/(Co-yo)),Xn=(Co-yo)/Co,Kn=Co,wE(Math.round(Un),Math.round(Xn*100),Math.round(Kn*100))},HQ=Qn=>aP(_E(Qn)),hI=Qn=>zk(rI(Qn)),QQ=Qn=>eI(Qn).orThunk(()=>vD(Qn).map(zk)).getOrThunk(()=>{const Un=document.createElement("canvas");Un.height=1,Un.width=1;const Xn=Un.getContext("2d");Xn.clearRect(0,0,Un.width,Un.height),Xn.fillStyle="#FFFFFF",Xn.fillStyle=Qn,Xn.fillRect(0,0,1,1);const Kn=Xn.getImageData(0,0,1,1).data,oo=Kn[0],lo=Kn[1],ho=Kn[2],yo=Kn[3];return zk(Q_(oo,lo,ho,yo))}),lP="forecolor",cP="hilitecolor",mI=5,VQ=Qn=>{const Un=[];for(let Xn=0;XnUn=>Un.options.get(Qn),xD="#000000",zQ=Qn=>{const Un=Qn.options.register,Xn=oo=>Do(oo,qn)?{value:VQ(oo),valid:!0}:{valid:!1,message:"Must be an array of strings."},Kn=oo=>$o(oo)&&oo>0?{value:oo,valid:!0}:{valid:!1,message:"Must be a positive number."};Un("color_map",{processor:Xn,default:["#BFEDD2","Light Green","#FBEEB8","Light Yellow","#F8CAC6","Light Red","#ECCAFA","Light Purple","#C2E0F4","Light Blue","#2DC26B","Green","#F1C40F","Yellow","#E03E2D","Red","#B96AD9","Purple","#3598DB","Blue","#169179","Dark Turquoise","#E67E23","Orange","#BA372A","Dark Red","#843FA1","Dark Purple","#236FA1","Dark Blue","#ECF0F1","Light Gray","#CED4D9","Medium Gray","#95A5A6","Gray","#7E8C8D","Dark Gray","#34495E","Navy Blue","#000000","Black","#ffffff","White"]}),Un("color_map_background",{processor:Xn}),Un("color_map_foreground",{processor:Xn}),Un("color_cols",{processor:Kn,default:ED(Qn)}),Un("color_cols_foreground",{processor:Kn,default:pI(Qn,lP)}),Un("color_cols_background",{processor:Kn,default:pI(Qn,cP)}),Un("custom_colors",{processor:"boolean",default:!0}),Un("color_default_foreground",{processor:"string",default:xD}),Un("color_default_background",{processor:"string",default:xD})},uP=(Qn,Un)=>Un===lP&&Qn.options.isSet("color_map_foreground")?wy("color_map_foreground")(Qn):Un===cP&&Qn.options.isSet("color_map_background")?wy("color_map_background")(Qn):wy("color_map")(Qn),ED=(Qn,Un="default")=>Math.max(mI,Math.ceil(Math.sqrt(uP(Qn,Un).length))),pI=(Qn,Un)=>{const Xn=wy("color_cols")(Qn),Kn=ED(Qn,Un);return Xn===ED(Qn)?Kn:Xn},gI=(Qn,Un="default")=>Math.round(Un===lP?wy("color_cols_foreground")(Qn):Un===cP?wy("color_cols_background")(Qn):wy("color_cols")(Qn)),bI=wy("custom_colors"),WQ=wy("color_default_foreground"),UQ=wy("color_default_background"),vI="rgba(0, 0, 0, 0)",ZQ=Qn=>vD(Qn).exists(Un=>Un.alpha!==0),qQ=Qn=>Jf(Qn,Un=>{if(fc(Un)){const Xn=qc(Un,"background-color");return Mr(ZQ(Xn),Xn)}else return ko.none()}).getOr(vI),yI=(Qn,Un)=>{const Xn=Ds.fromDom(Qn.selection.getStart()),Kn=Un==="hilitecolor"?qQ(Xn):qc(Xn,"color");return vD(Kn).map(oo=>"#"+zk(oo).value)},jQ=(Qn,Un,Xn)=>{Qn.undoManager.transact(()=>{Qn.focus(),Qn.formatter.apply(Un,{value:Xn}),Qn.nodeChanged()})},XQ=(Qn,Un)=>{Qn.undoManager.transact(()=>{Qn.focus(),Qn.formatter.remove(Un,{value:null},void 0,!0),Qn.nodeChanged()})},dP=Qn=>{Qn.addCommand("mceApplyTextcolor",(Un,Xn)=>{jQ(Qn,Un,Xn)}),Qn.addCommand("mceRemoveTextcolor",Un=>{XQ(Qn,Un)})},TD=Qn=>{const Un="choiceitem",Xn={type:Un,text:"Remove color",icon:"color-swatch-remove-color",value:"remove"};return Qn?[Xn,{type:Un,text:"Custom color",icon:"color-picker",value:"custom"}]:[Xn]},AD=(Qn,Un,Xn,Kn)=>{Xn==="custom"?wI(Qn)(lo=>{lo.each(ho=>{kD(Un,ho),Qn.execCommand("mceApplyTextcolor",Un,ho),Kn(ho)})},yI(Qn,Un).getOr(xD)):Xn==="remove"?(Kn(""),Qn.execCommand("mceRemoveTextcolor",Un)):(Kn(Xn),Qn.execCommand("mceApplyTextcolor",Un,Xn))},PD=(Qn,Un,Xn)=>Qn.concat(CD(Un).concat(TD(Xn))),OI=(Qn,Un,Xn)=>Kn=>{Kn(PD(Qn,Un,Xn))},$D=(Qn,Un,Xn)=>{const Kn=Un==="forecolor"?"tox-icon-text-color__color":"tox-icon-highlight-bg-color__color";Qn.setIconFill(Kn,Xn)},_I=(Qn,Un)=>{Qn.setTooltip(Un)},SI=(Qn,Un)=>Xn=>{const Kn=yI(Qn,Un);return vs(Kn,Xn.toUpperCase())},CE=(Qn,Un,Xn)=>{if(ks(Xn))return Un==="forecolor"?"Text color":"Background color";const Kn=Un==="forecolor"?"Text color {0}":"Background color {0}",oo=PD(uP(Qn,Un),Un,!1),lo=Zs(oo,ho=>ho.value===Xn).getOr({text:""}).text;return Qn.translate([Kn,Qn.translate(lo)])},RD=(Qn,Un,Xn,Kn)=>{Qn.ui.registry.addSplitButton(Un,{tooltip:CE(Qn,Xn,Kn.get()),presets:"color",icon:Un==="forecolor"?"text-color":"highlight-bg-color",select:SI(Qn,Xn),columns:gI(Qn,Xn),fetch:OI(uP(Qn,Xn),Xn,bI(Qn)),onAction:oo=>{AD(Qn,Xn,Kn.get(),xo)},onItemAction:(oo,lo)=>{AD(Qn,Xn,lo,ho=>{Kn.set(ho),_D(Qn,{name:Un,color:ho})})},onSetup:oo=>{$D(oo,Un,Kn.get());const lo=ho=>{ho.name===Un&&($D(oo,ho.name,ho.color),_I(oo,CE(Qn,Xn,ho.color)))};return Qn.on("TextColorChange",lo),SE(mp(Qn)(oo),()=>{Qn.off("TextColorChange",lo)})}})},DD=(Qn,Un,Xn,Kn,oo)=>{Qn.ui.registry.addNestedMenuItem(Un,{text:Kn,icon:Un==="forecolor"?"text-color":"highlight-bg-color",onSetup:lo=>(_I(lo,CE(Qn,Xn,oo.get())),$D(lo,Un,oo.get()),mp(Qn)(lo)),getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"colorswatch",select:SI(Qn,Xn),initData:{storageKey:Xn},onAction:lo=>{AD(Qn,Xn,lo.value,ho=>{oo.set(ho),_D(Qn,{name:Un,color:ho})})}}]})},wI=Qn=>(Un,Xn)=>{let Kn=!1;const oo=yo=>{const Ro=yo.getData().colorpicker;Kn?(Un(ko.from(Ro)),yo.close()):Qn.windowManager.alert(Qn.translate(["Invalid hex color code: {0}",Ro]))},lo=(yo,Co)=>{Co.name==="hex-valid"&&(Kn=Co.value)},ho={colorpicker:Xn};Qn.windowManager.open({title:"Color Picker",size:"normal",body:{type:"panel",items:[{type:"colorpicker",name:"colorpicker",label:"Color"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:ho,onAction:lo,onSubmit:oo,onClose:xo,onCancel:()=>{Un(ko.none())}})},CI=Qn=>{dP(Qn);const Un=WQ(Qn),Xn=UQ(Qn),Kn=Ua(Un),oo=Ua(Xn);RD(Qn,"forecolor","forecolor",Kn),RD(Qn,"backcolor","hilitecolor",oo),DD(Qn,"forecolor","forecolor","Text color",Kn),DD(Qn,"backcolor","hilitecolor","Background color",oo)},MD=(Qn,Un,Xn,Kn,oo,lo,ho,yo)=>{const Co=ZA(Un),Lo=YQ(Un,Xn,Kn,oo!=="color"?"normal":"color",lo,ho,yo);return qA(Qn,Co,Lo,Kn,{menuType:oo})},YQ=(Qn,Un,Xn,Kn,oo,lo,ho)=>Ks(hs(Qn,yo=>yo.type==="choiceitem"?N5(yo).fold(vy,Co=>ko.some(j5(Co,Xn===1,Kn,Un,lo(Co.value),oo,ho,ZA(Qn)))):ko.none())),fP=(Qn,Un)=>{const Xn=OO(Un);return Qn===1?{mode:"menu",moveOnTab:!0}:Qn==="auto"?{mode:"grid",selector:"."+Xn.item,initSize:{numColumns:1,numRows:1}}:{mode:"matrix",rowSelector:"."+(Un==="color"?"tox-swatches__row":"tox-collection__group"),previousSelector:oo=>Un==="color"?Rd(oo.element,"[aria-checked=true]"):ko.none()}},GQ=(Qn,Un)=>Qn===1?{mode:"menu",moveOnTab:!1,selector:".tox-collection__item"}:Qn==="auto"?{mode:"flatgrid",selector:".tox-collection__item",initSize:{numColumns:1,numRows:1}}:{mode:"matrix",selectors:{row:Un==="color"?".tox-swatches__row":".tox-collection__group",cell:Un==="color"?`.${HR}`:`.${Rk}`}},KQ=(Qn,Un)=>{const Xn=JQ(Qn,Un),Kn=Un.colorinput.getColorCols(Qn.initData.storageKey),oo="color",ho={...MD(ba("menu-value"),Xn,yo=>{Qn.onAction({value:yo})},Kn,oo,sv.CLOSE_ON_EXECUTE,Qn.select.getOr(sr),Un.shared.providers),markers:OO(oo),movement:fP(Kn,oo)};return{type:"widget",data:{value:ba("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[yE.widget(Pw.sketch(ho))]}},JQ=(Qn,Un)=>{const Xn=Qn.initData.allowCustomColors&&Un.colorinput.hasCustomColors();return Qn.initData.colors.fold(()=>PD(Un.colorinput.getColors(Qn.initData.storageKey),Qn.initData.storageKey,Xn),Kn=>Kn.concat(TD(Xn)))},kI=ba("cell-over"),xI=ba("cell-execute"),eV=Qn=>(Un,Xn)=>Qn.shared.providers.translate(["{0} columns, {1} rows",Xn,Un]),tV=(Qn,Un,Xn)=>{const Kn=ho=>Qa(ho,kI,{row:Qn,col:Un}),oo=ho=>Qa(ho,xI,{row:Qn,col:Un}),lo=(ho,yo)=>{yo.stop(),oo(ho)};return gh({dom:{tag:"div",attributes:{role:"button","aria-label":Xn}},behaviours:Zr([Rl("insert-table-picker-cell",[wr(eg(),ol.focus),wr(Im(),oo),wr(Lg(),lo),wr(ng(),lo)]),Ql.config({toggleClass:"tox-insert-table-picker__selected",toggleOnExecute:!1}),ol.config({onFocus:Kn})])})},hP=(Qn,Un,Xn)=>{const Kn=[];for(let oo=0;oo{for(let lo=0;lofs(Qn,Un=>hs(Un,Fm)),ID=(Qn,Un)=>wd(`${Un}x${Qn}`),nV={inserttable:(Qn,Un)=>{const oo=eV(Un),lo=hP(oo,10,10),ho=ID(0,0),yo=ou({dom:{tag:"span",classes:["tox-insert-table-picker__label"]},components:[ho],behaviours:Zr([Cl.config({})])});return{type:"widget",data:{value:ba("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[yE.widget({dom:{tag:"div",classes:["tox-insert-table-picker"]},components:LD(lo).concat(yo.asSpec()),behaviours:Zr([Rl("insert-table-picker",[eu(Co=>{Cl.set(yo.get(Co),[ho])}),pS(kI,(Co,Ro,Lo)=>{const{row:Wo,col:jo}=Lo.event;ND(lo,Wo,jo,10,10),Cl.set(yo.get(Co),[ID(Wo+1,jo+1)])}),pS(xI,(Co,Ro,Lo)=>{const{row:Wo,col:jo}=Lo.event;Qn.onAction({numRows:Wo+1,numColumns:jo+1}),Wl(Co,Fy())})]),Za.config({initSize:{numRows:10,numColumns:10},mode:"flatgrid",selector:'[role="button"]'})])})]}},colorswatch:KQ},BD=(Qn,Un)=>Rr(nV,Qn.fancytype).map(Xn=>Xn(Qn,Un)),FD=(Qn,Un,Xn,Kn=!0,oo=!1)=>{const lo=oo?AQ(Xn.icons):i0(Xn.icons),ho=Co=>({isEnabled:()=>!Ja.isDisabled(Co),setEnabled:Ro=>Ja.set(Co,!Ro),setIconFill:(Ro,Lo)=>{Rd(Co.element,`svg path[class="${Ro}"], rect[class="${Ro}"]`).each(Wo=>{aa(Wo,"fill",Lo)})},setTooltip:Ro=>{const Lo=Xn.translate(Ro);Qp(Co.element,{"aria-label":Lo,title:Lo})}}),yo=Fw({presets:"normal",iconContent:Qn.icon,textContent:Qn.text,htmlContent:ko.none(),ariaLabel:Qn.text,caret:ko.some(lo),checkMark:ko.none(),shortcutContent:Qn.shortcut},Xn,Kn);return Sy({data:SO(Qn),getApi:ho,enabled:Qn.enabled,onAction:xo,onSetup:Qn.onSetup,triggersSubmenu:!0,itemBehaviours:[]},yo,Un,Xn)},mP=(Qn,Un,Xn,Kn=!0)=>{const oo=ho=>({isEnabled:()=>!Ja.isDisabled(ho),setEnabled:yo=>Ja.set(ho,!yo)}),lo=Fw({presets:"normal",iconContent:Qn.icon,textContent:Qn.text,htmlContent:ko.none(),ariaLabel:Qn.text,caret:ko.none(),checkMark:ko.none(),shortcutContent:Qn.shortcut},Xn,Kn);return Sy({data:SO(Qn),getApi:oo,enabled:Qn.enabled,onAction:Qn.onAction,onSetup:Qn.onSetup,triggersSubmenu:!1,itemBehaviours:[]},lo,Un,Xn)},EI=Qn=>({type:"separator",dom:{tag:"div",classes:[Rk,W9]},components:Qn.text.map(wd).toArray()}),oV=(Qn,Un,Xn,Kn=!0)=>{const oo=ho=>({setActive:yo=>{Ql.set(ho,yo)},isActive:()=>Ql.isOn(ho),isEnabled:()=>!Ja.isDisabled(ho),setEnabled:yo=>Ja.set(ho,!yo)}),lo=Fw({iconContent:Qn.icon,textContent:Qn.text,htmlContent:ko.none(),ariaLabel:Qn.text,checkMark:ko.some(Qk(Xn.icons)),caret:ko.none(),shortcutContent:Qn.shortcut,presets:"normal",meta:Qn.meta},Xn,Kn);return Lc(Sy({data:SO(Qn),enabled:Qn.enabled,getApi:oo,onAction:Qn.onAction,onSetup:Qn.onSetup,triggersSubmenu:!1,itemBehaviours:[]},lo,Un,Xn),{toggling:{toggleClass:t5,toggleOnExecute:!1,selected:Qn.active}})},sV=q5,TI=EI,rV=mP,iV=FD,aV=oV,lV=BD,cV=gD;var uV=Object.freeze({__proto__:null,getCoupled:(Qn,Un,Xn,Kn)=>Xn.getOrCreate(Qn,Un,Kn),getExistingCoupled:(Qn,Un,Xn,Kn)=>Xn.getExisting(Qn,Un,Kn)}),dV=[Kf("others",Dg(yl.value,Ad()))],AI=Object.freeze({__proto__:null,init:()=>{const Qn={},Un=(lo,ho)=>{if(nc(lo.others).length===0)throw new Error("Cannot find any known coupled components");return Rr(Qn,ho)},Xn=(lo,ho,yo)=>Un(ho,yo).getOrThunk(()=>{const Ro=Rr(ho.others,yo).getOrDie("No information found for coupled component: "+yo)(lo),Lo=lo.getSystem().build(Ro);return Qn[yo]=Lo,Lo}),Kn=(lo,ho,yo)=>Un(ho,yo).orThunk(()=>(Rr(ho.others,yo).getOrDie("No information found for coupled component: "+yo),ko.none())),oo=Mo({});return ph({readState:oo,getExisting:Kn,getOrCreate:Xn})}});const Gd=Of({fields:dV,name:"coupling",apis:uV,state:AI}),HD=Qn=>{let Un=ko.none(),Xn=[];const Kn=Ro=>HD(Lo=>{oo(Wo=>{Lo(Ro(Wo))})}),oo=Ro=>{ho()?Co(Ro):Xn.push(Ro)},lo=Ro=>{ho()||(Un=ko.some(Ro),yo(Xn),Xn=[])},ho=()=>Un.isSome(),yo=Ro=>{Qs(Ro,Co)},Co=Ro=>{Un.each(Lo=>{setTimeout(()=>{Ro(Lo)},0)})};return Qn(lo),{get:oo,map:Kn,isReady:ho}},fV={nu:HD,pure:Qn=>HD(Un=>{Un(Qn)})},hV=Qn=>{setTimeout(()=>{throw Qn},0)},z_=Qn=>{const Un=Co=>{Qn().then(Co,hV)};return{map:Co=>z_(()=>Qn().then(Co)),bind:Co=>z_(()=>Qn().then(Ro=>Co(Ro).toPromise())),anonBind:Co=>z_(()=>Qn().then(()=>Co.toPromise())),toLazy:()=>fV.nu(Un),toCached:()=>{let Co=null;return z_(()=>(Co===null&&(Co=Qn()),Co))},toPromise:Qn,get:Un}},Cm={nu:Qn=>z_(()=>new Promise(Qn)),pure:Qn=>z_(()=>Promise.resolve(Qn))},PI=Mo("sink"),$I=Mo(up({name:PI(),overrides:Mo({dom:{tag:"div"},behaviours:Zr([jh.config({useFixed:Js})]),events:Jc([X1(op()),X1(Xl()),X1(Lg())])})})),RI=(Qn,Un)=>{const Xn=Qn.getHotspot(Un).getOr(Un),Kn="hotspot",oo=Qn.getAnchorOverrides();return Qn.layouts.fold(()=>({type:Kn,hotspot:Xn,overrides:oo}),lo=>({type:Kn,hotspot:Xn,overrides:oo,layouts:lo}))},mV=(Qn,Un,Xn)=>{const Kn=Qn.fetch;return Kn(Xn).map(Un)},pV=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=mV(Qn,Un,Kn),Co=DI(Kn,Qn);return yo.map(Ro=>Ro.bind(Lo=>ko.from(B_.sketch({...lo.menu(),uid:Mv(""),data:Lo,highlightOnOpen:ho,onOpenMenu:(Wo,jo)=>{const Jo=Co().getOrDie();jh.position(Jo,jo,{anchor:Xn}),uc.decloak(oo)},onOpenSubmenu:(Wo,jo,Jo)=>{const us=Co().getOrDie();jh.position(us,Jo,{anchor:{type:"submenu",item:jo}}),uc.decloak(oo)},onRepositionMenu:(Wo,jo,Jo)=>{const us=Co().getOrDie();jh.position(us,jo,{anchor:Xn}),Qs(Jo,Ps=>{jh.position(us,Ps.triggeredMenu,{anchor:{type:"submenu",item:Ps.triggeringItem}})})},onEscape:()=>(ol.focus(Kn),uc.close(oo),ko.some(!0))}))))},pP=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=RI(Qn,Xn);return pV(Qn,Un,yo,Xn,Kn,oo,ho).map(Ro=>(Ro.fold(()=>{uc.isOpen(Kn)&&uc.close(Kn)},Lo=>{uc.cloak(Kn),uc.open(Kn,Lo),lo(Kn)}),Kn))},gV=(Qn,Un,Xn,Kn,oo,lo,ho)=>(uc.close(Kn),Cm.pure(Kn)),QD=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Gd.getCoupled(Xn,"sandbox");return(uc.isOpen(ho)?gV:pP)(Qn,Un,Xn,ho,Kn,oo,lo)},bV=(Qn,Un,Xn)=>{const Kn=ic.getCurrent(Un).getOr(Un),oo=dd(Qn.element);Xn?ya(Kn.element,"min-width",oo+"px"):ql(Kn.element,oo)},DI=(Qn,Un)=>Qn.getSystem().getByUid(Un.uid+"-"+PI()).map(Xn=>()=>yl.value(Xn)).getOrThunk(()=>Un.lazySink.fold(()=>()=>yl.error(new Error("No internal sink is specified, nor could an external sink be found")),Xn=>()=>Xn(Qn))),MI=Qn=>{uc.getState(Qn).each(Un=>{B_.repositionMenus(Un)})},VD=(Qn,Un,Xn)=>{const Kn=I0(),oo=(yo,Co)=>{const Ro=RI(Qn,Un);Kn.link(Un.element),Qn.matchWidth&&bV(Ro.hotspot,Co,Qn.useMinWidth),Qn.onOpen(Ro,yo,Co),Xn!==void 0&&Xn.onOpen!==void 0&&Xn.onOpen(yo,Co)},lo=(yo,Co)=>{Kn.unlink(Un.element),Xn!==void 0&&Xn.onClose!==void 0&&Xn.onClose(yo,Co)},ho=DI(Un,Qn);return{dom:{tag:"div",classes:Qn.sandboxClasses,attributes:{id:Kn.id,role:"listbox"}},behaviours:Wg.augment(Qn.sandboxBehaviours,[da.config({store:{mode:"memory",initialValue:Un}}),uc.config({onOpen:oo,onClose:lo,isPartOf:(yo,Co,Ro)=>ob(Co,Ro)||ob(Un,Ro),getAttachPoint:()=>ho().getOrDie()}),ic.config({find:yo=>uc.getState(yo).bind(Co=>ic.getCurrent(Co))}),Om.config({channels:{...cw({isExtraPart:sr}),...C_({doReposition:MI})}})])}},NI=Qn=>{const Un=Gd.getCoupled(Qn,"sandbox");MI(Un)},zD=()=>[Gs("sandboxClasses",[]),Wg.field("sandboxBehaviours",[ic,Om,uc,da])],vV=Mo([Er("dom"),Er("fetch"),rc("onOpen"),Vm("onExecute"),Gs("getHotspot",ko.some),Gs("getAnchorOverrides",Mo({})),qb(),Nf("dropdownBehaviours",[Ql,Gd,Za,ol]),Er("toggleClass"),Gs("eventOrder",{}),Tc("lazySink"),Gs("matchWidth",!1),Gs("useMinWidth",!1),Tc("role")].concat(zD())),yV=Mo([v1({schema:[qy(),Gs("fakeFocus",!1)],name:"menu",defaults:Qn=>({onExecute:Qn.onExecute})}),$I()]),OV=(Qn,Un,Xn,Kn)=>{const oo=Lo=>Rr(Qn.dom,"attributes").bind(Wo=>Rr(Wo,Lo)),lo=Lo=>{uc.getState(Lo).each(Wo=>{B_.highlightPrimary(Wo)})},ho=(Lo,Wo,jo)=>QD(Qn,es,Lo,Kn,Wo,jo),yo=Lo=>{ho(Lo,lo,hp.HighlightMenuAndItem).get(xo)},Co={expand:Lo=>{Ql.isOn(Lo)||ho(Lo,xo,hp.HighlightNone).get(xo)},open:Lo=>{Ql.isOn(Lo)||ho(Lo,xo,hp.HighlightMenuAndItem).get(xo)},refetch:Lo=>Gd.getExistingCoupled(Lo,"sandbox").fold(()=>ho(Lo,xo,hp.HighlightMenuAndItem).map(xo),jo=>pP(Qn,es,Lo,jo,Kn,xo,hp.HighlightMenuAndItem).map(xo)),isOpen:Ql.isOn,close:Lo=>{Ql.isOn(Lo)&&ho(Lo,xo,hp.HighlightMenuAndItem).get(xo)},repositionMenus:Lo=>{Ql.isOn(Lo)&&NI(Lo)}},Ro=(Lo,Wo)=>(og(Lo),ko.some(!0));return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.dropdownBehaviours,[Ql.config({toggleClass:Qn.toggleClass,aria:{mode:"expanded"}}),Gd.config({others:{sandbox:Lo=>VD(Qn,Lo,{onOpen:()=>Ql.on(Lo),onClose:()=>Ql.off(Lo)})}}),Za.config({mode:"special",onSpace:Ro,onEnter:Ro,onDown:(Lo,Wo)=>{if(vb.isOpen(Lo)){const jo=Gd.getCoupled(Lo,"sandbox");lo(jo)}else vb.open(Lo);return ko.some(!0)},onEscape:(Lo,Wo)=>vb.isOpen(Lo)?(vb.close(Lo),ko.some(!0)):ko.none()}),ol.config({})]),events:tv(ko.some(yo)),eventOrder:{...Qn.eventOrder,[Im()]:["disabling","toggling","alloy.base.behaviour"]},apis:Co,domModification:{attributes:{"aria-haspopup":"true",...Qn.role.fold(()=>({}),Lo=>({role:Lo})),...Qn.dom.tag==="button"?{type:oo("type").getOr("button")}:{}}}}},vb=Yh({name:"Dropdown",configFields:vV(),partFields:yV(),factory:OV,apis:{open:(Qn,Un)=>Qn.open(Un),refetch:(Qn,Un)=>Qn.refetch(Un),expand:(Qn,Un)=>Qn.expand(Un),close:(Qn,Un)=>Qn.close(Un),isOpen:(Qn,Un)=>Qn.isOpen(Un),repositionMenus:(Qn,Un)=>Qn.repositionMenus(Un)}}),_V=Qn=>{switch(Qn.searchMode){case"no-search":return{menuType:"normal"};default:return{menuType:"searchable",searchMode:Qn}}},SV=Qn=>{const Un=da.getValue(Qn),Xn=zA(Qn).map(d5);vb.refetch(Un).get(()=>{const Kn=Gd.getCoupled(Un,"sandbox");Xn.each(oo=>zA(Kn).each(lo=>qR(lo,oo)))})},wV=(Qn,Un)=>{CV(Qn).each(Xn=>{T2(Qn,Xn.element,Un.event.eventType,Un.event.interactionEvent)})},CV=Qn=>uc.getState(Qn).bind(Bc.getHighlighted).bind(Bc.getHighlighted),kV=Qn=>of(Qn.element,WA)?ko.some(Qn.element):Rd(Qn.element,"."+WA),WD=(Qn,Un,Xn)=>{ZR(Qn).each(Kn=>{jR(Kn,Xn),kV(Un).each(lo=>{Uo(lo,"id").each(ho=>aa(Kn.element,"aria-controls",ho))})}),aa(Xn.element,"aria-selected","true")},xV=(Qn,Un,Xn)=>{aa(Xn.element,"aria-selected","false")},EV=Qn=>{ZR(Qn).each(Un=>ol.focus(Un))},TV=Qn=>Gd.getExistingCoupled(Qn,"sandbox").bind(zA).map(d5).map(Xn=>Xn.fetchPattern).getOr("");var kE;(function(Qn){Qn[Qn.ContentFocus=0]="ContentFocus",Qn[Qn.UiFocus=1]="UiFocus"})(kE||(kE={}));const AV=(Qn,Un,Xn,Kn,oo)=>{const lo=Xn.shared.providers,ho=yo=>oo?{...yo,shortcut:ko.none(),icon:yo.text.isSome()?ko.none():yo.icon}:yo;switch(Qn.type){case"menuitem":return I5(Qn).fold(vy,yo=>ko.some(rV(ho(yo),Un,lo,Kn)));case"nestedmenuitem":return vQ(Qn).fold(vy,yo=>ko.some(iV(ho(yo),Un,lo,Kn,oo)));case"togglemenuitem":return OQ(Qn).fold(vy,yo=>ko.some(aV(ho(yo),Un,lo,Kn)));case"separator":return oD(Qn).fold(vy,yo=>ko.some(TI(yo)));case"fancymenuitem":return gQ(Qn).fold(vy,yo=>lV(yo,Xn));default:return console.error("Unknown item in general menu",Qn),ko.none()}},PV=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=Kn===1,Co=!yo||ZA(Qn);return Ks(hs(Qn,Ro=>{switch(Ro.type){case"separator":return oQ(Ro).fold(vy,Lo=>ko.some(TI(Lo)));case"cardmenuitem":return D5(Ro).fold(vy,Lo=>ko.some(cV({...Lo,onAction:Wo=>{Lo.onAction(Wo),Xn(Lo.value,Lo.meta)}},oo,lo,{itemBehaviours:U5(Lo.meta,lo),cardText:{matchText:Un,highlightOn:ho}})));case"autocompleteitem":default:return w5(Ro).fold(vy,Lo=>ko.some(sV(Lo,Un,yo,"normal",Xn,oo,lo,Co)))}}))},LI=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=ZA(Un),yo=Ks(hs(Un,Lo=>{const Wo=Jo=>oo?!Pl(Jo,"text"):ho,jo=Jo=>AV(Jo,Xn,Kn,Wo(Jo),oo);return Lo.type==="nestedmenuitem"&&Lo.getSubmenuItems().length<=0?jo({...Lo,enabled:!1}):jo(Lo)})),Co=_V(lo);return(oo?hE:qA)(Qn,ho,yo,1,Co)},gP=Qn=>B_.singleData(Qn.value,Qn),$V=(Qn,Un,Xn,Kn)=>{const oo=fP(Un,Kn),lo=OO(Kn);return{data:gP({...Qn,movement:oo,menuBehaviours:bE.unnamedEvents(Un!=="auto"?[]:[eu((ho,yo)=>{aD(ho,4,lo.item).each(({numColumns:Co,numRows:Ro})=>{Za.setGridSize(ho,Ro,Co)})})])}),menu:{markers:OO(Kn),fakeFocus:Xn===kE.ContentFocus}}},RV=(Qn,Un)=>IR(Ds.fromDom(Un.startContainer)).map(Xn=>{const Kn=Qn.createRng();return Kn.selectNode(Xn.dom),Kn}),DV={register:(Qn,Un)=>{const Xn=ba("autocompleter"),Kn=Ua(!1),oo=Ua(!1),lo=gh(kd.sketch({dom:{tag:"div",classes:["tox-autocompleter"],attributes:{id:Xn}},components:[],fireDismissalEventInstead:{},inlineBehaviours:Zr([Rl("dismissAutocompleter",[wr(q1(),()=>Lo()),wr(Ev(),(er,Bs)=>{Uo(Bs.event.target,"id").each(Ns=>aa(Ds.fromDom(Qn.getBody()),"aria-activedescendant",Ns))})])]),lazySink:Un.getSink})),ho=()=>kd.isOpen(lo),yo=oo.get,Co=()=>{if(ho()){kd.hide(lo),Qn.dom.remove(Xn,!1);const er=Ds.fromDom(Qn.getBody());Uo(er,"aria-owns").filter(Bs=>Bs===Xn).each(()=>{_s(er,"aria-owns"),_s(er,"aria-activedescendant")})}},Ro=()=>kd.getContent(lo).bind(er=>xa(er.components(),0)),Lo=()=>Qn.execCommand("mceAutocompleterClose"),Wo=er=>{const Bs=gc(er,Ns=>ko.from(Ns.columns)).getOr(1);return fs(er,Ns=>{const Xs=Ns.items;return PV(Xs,Ns.matchText,(Hr,kr)=>{const Or=Qn.selection.getRng();RV(Qn.dom,Or).each(qr=>{const na={hide:()=>Lo(),reload:Dl=>{Co(),Qn.execCommand("mceAutocompleterReload",!1,{fetchOptions:Dl})}};Kn.set(!0),Ns.onAction(na,qr,Hr,kr),Kn.set(!1)})},Bs,sv.BUBBLE_TO_SANDBOX,Un,Ns.highlightOn)})},jo=(er,Bs)=>{Q9(Ds.fromDom(Qn.getBody())).each(Ns=>{const Xs=gc(er,Hr=>ko.from(Hr.columns)).getOr(1);kd.showMenuAt(lo,{anchor:{type:"node",root:Ds.fromDom(Qn.getBody()),node:ko.from(Ns)}},$V(qA("autocompleter-value",!0,Bs,Xs,{menuType:"normal"}),Xs,kE.ContentFocus,"normal"))}),Ro().each(Bc.highlightFirst)},Jo=er=>{const Bs=Wo(er);Bs.length>0?(jo(er,Bs),aa(Ds.fromDom(Qn.getBody()),"aria-owns",Xn),Qn.inline||us()):Co()},us=()=>{Qn.dom.get(Xn)&&Qn.dom.remove(Xn,!1);const er=Qn.getDoc().documentElement,Bs=Qn.selection.getNode(),Ns=uC(lo.element);fu(Ns,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px",top:`${Bs.offsetTop}px`,left:`${Bs.offsetLeft}px`}),Qn.dom.add(er,Ns.dom),Rd(Ns,'[role="menu"]').each(Xs=>{El(Xs,"position"),El(Xs,"max-height")})};Qn.on("AutocompleterStart",({lookupData:er})=>{oo.set(!0),Kn.set(!1),Jo(er)}),Qn.on("AutocompleterUpdate",({lookupData:er})=>Jo(er)),Qn.on("AutocompleterEnd",()=>{Co(),oo.set(!1),Kn.set(!1)});const Ps={cancelIfNecessary:Lo,isMenuOpen:ho,isActive:yo,isProcessingAction:Kn.get,getMenu:Ro};V9.setup(Ps,Qn)}},II=["visible","hidden","clip"],BI=Qn=>Vu(Qn).length>0&&!Fs(II,Qn),UD=Qn=>{if(sm(Qn)){const Un=qc(Qn,"overflow-x"),Xn=qc(Qn,"overflow-y");return BI(Un)||BI(Xn)}else return!1},MV=Qn=>{const Un=jC(Qn,UD),Xn=Un.length===0?Nc(Qn).map(xl).map(Kn=>jC(Kn,UD)).getOr([]):Un;return Nl(Xn).map(Kn=>({element:Kn,others:Xn.slice(1)}))},W_=(Qn,Un)=>gy(Qn)?MV(Un):ko.none(),Wk=Qn=>{const Un=[...hs(Qn.others,au),tf()];return bv(au(Qn.element),Un)},xE=(Qn,Un,Xn)=>Bg(Qn,Un,Xn).isSome(),FI=(Qn,Un)=>{let Xn=null;return{cancel:()=>{Xn!==null&&(clearTimeout(Xn),Xn=null)},schedule:(...lo)=>{Xn=setTimeout(()=>{Qn.apply(null,lo),Xn=null},Un)}}},HI=5,NV=400,QI=Qn=>{const Un=Qn.raw;return Un.touches===void 0||Un.touches.length!==1?ko.none():ko.some(Un.touches[0])},LV=(Qn,Un)=>{const Xn=Math.abs(Qn.clientX-Un.x),Kn=Math.abs(Qn.clientY-Un.y);return Xn>HI||Kn>HI},IV=Qn=>{const Un=Hl(),Xn=Ua(!1),Kn=FI(Ro=>{Qn.triggerEvent(DO(),Ro),Xn.set(!0)},NV),oo=Ro=>(QI(Ro).each(Lo=>{Kn.cancel();const Wo={x:Lo.clientX,y:Lo.clientY,target:Ro.target};Kn.schedule(Ro),Xn.set(!1),Un.set(Wo)}),ko.none()),lo=Ro=>(Kn.cancel(),QI(Ro).each(Lo=>{Un.on(Wo=>{LV(Lo,Wo)&&Un.clear()})}),ko.none()),ho=Ro=>{Kn.cancel();const Lo=Wo=>Oc(Wo.target,Ro.target);return Un.get().filter(Lo).map(Wo=>Xn.get()?(Ro.prevent(),!1):Qn.triggerEvent(ng(),Ro))},yo=La([{key:mm(),value:oo},{key:Nb(),value:lo},{key:H1(),value:ho}]);return{fireIfReady:(Ro,Lo)=>Rr(yo,Lo).bind(Wo=>Wo(Ro))}},BV=Qn=>Qn.raw.which===V3[0]&&!Fs(["input","textarea"],Nd(Qn.target))&&!xE(Qn.target,'[contenteditable="true"]'),FV=(Qn,Un)=>{const Xn={stopBackspace:!0,...Un},Kn=["touchstart","touchmove","touchend","touchcancel","gesturestart","mousedown","mouseup","mouseover","mousemove","mouseout","click"],oo=IV(Xn),lo=hs(Kn.concat(["selectstart","input","contextmenu","change","transitionend","transitioncancel","drag","dragstart","dragend","dragenter","dragleave","dragover","drop","keyup"]),Jo=>Dh(Qn,Jo,us=>{oo.fireIfReady(us,Jo).each(er=>{er&&us.kill()}),Xn.triggerEvent(Jo,us)&&us.kill()})),ho=Hl(),yo=Dh(Qn,"paste",Jo=>{oo.fireIfReady(Jo,"paste").each(Ps=>{Ps&&Jo.kill()}),Xn.triggerEvent("paste",Jo)&&Jo.kill(),ho.set(setTimeout(()=>{Xn.triggerEvent(U1(),Jo)},0))}),Co=Dh(Qn,"keydown",Jo=>{Xn.triggerEvent("keydown",Jo)?Jo.kill():Xn.stopBackspace&&BV(Jo)&&Jo.prevent()}),Ro=Dh(Qn,"focusin",Jo=>{Xn.triggerEvent("focusin",Jo)&&Jo.kill()}),Lo=Hl(),Wo=Dh(Qn,"focusout",Jo=>{Xn.triggerEvent("focusout",Jo)&&Jo.kill(),Lo.set(setTimeout(()=>{Xn.triggerEvent(W1(),Jo)},0))});return{unbind:()=>{Qs(lo,Jo=>{Jo.unbind()}),Co.unbind(),Ro.unbind(),Wo.unbind(),yo.unbind(),ho.on(clearTimeout),Lo.on(clearTimeout)}}},VI=(Qn,Un)=>{const Xn=Rr(Qn,"target").getOr(Un);return Ua(Xn)},HV=(Qn,Un)=>{const Xn=Ua(!1),Kn=Ua(!1);return{stop:()=>{Xn.set(!0)},cut:()=>{Kn.set(!0)},isStopped:Xn.get,isCut:Kn.get,event:Qn,setSource:Un.set,getSource:Un.get}},zI=Qn=>{const Un=Ua(!1);return{stop:()=>{Un.set(!0)},cut:xo,isStopped:Un.get,isCut:sr,event:Qn,setSource:Yo("Cannot set source of a broadcasted event"),getSource:Yo("Cannot get source of a broadcasted event")}},EE=Po.generate([{stopped:[]},{resume:["element"]},{complete:[]}]),WI=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Qn(Un,Kn),yo=HV(Xn,oo);return ho.fold(()=>(lo.logEventNoHandlers(Un,Kn),EE.complete()),Co=>{const Ro=Co.descHandler;return Fv(Ro)(yo),yo.isStopped()?(lo.logEventStopped(Un,Co.element,Ro.purpose),EE.stopped()):yo.isCut()?(lo.logEventCut(Un,Co.element,Ro.purpose),EE.complete()):Zd(Co.element).fold(()=>(lo.logNoParent(Un,Co.element,Ro.purpose),EE.complete()),Wo=>(lo.logEventResponse(Un,Co.element,Ro.purpose),EE.resume(Wo)))})},UI=(Qn,Un,Xn,Kn,oo,lo)=>WI(Qn,Un,Xn,Kn,oo,lo).fold(Js,ho=>UI(Qn,Un,Xn,ho,oo,lo),sr),QV=(Qn,Un,Xn,Kn,oo)=>{const lo=VI(Xn,Kn);return WI(Qn,Un,Xn,Kn,lo,oo)},VV=(Qn,Un,Xn)=>{const Kn=zI(Un);return Qs(Qn,oo=>{const lo=oo.descHandler;Fv(lo)(Kn)}),Kn.isStopped()},ZD=(Qn,Un,Xn,Kn)=>ZI(Qn,Un,Xn,Xn.target,Kn),ZI=(Qn,Un,Xn,Kn,oo)=>{const lo=VI(Xn,Kn);return UI(Qn,Un,Xn,Kn,lo,oo)},zV=(Qn,Un)=>({element:Qn,descHandler:Un}),WV=(Qn,Un)=>({id:Qn,descHandler:Un}),qI=()=>{const Qn={},Un=(ho,yo,Co)=>{Zl(Co,(Ro,Lo)=>{const Wo=Qn[Lo]!==void 0?Qn[Lo]:{};Wo[yo]=OS(Ro,ho),Qn[Lo]=Wo})},Xn=(ho,yo)=>$0(yo).bind(Co=>Rr(ho,Co)).map(Co=>zV(yo,Co));return{registerId:Un,unregisterId:ho=>{Zl(Qn,(yo,Co)=>{Pl(yo,ho)&&delete yo[ho]})},filterByType:ho=>Rr(Qn,ho).map(yo=>rd(yo,(Co,Ro)=>WV(Ro,Co))).getOr([]),find:(ho,yo,Co)=>Rr(Qn,yo).bind(Ro=>Jf(Co,Lo=>Xn(Ro,Lo),ho))}},jI=()=>{const Qn=qI(),Un={},Xn=Ro=>{const Lo=Ro.element;return $0(Lo).getOrThunk(()=>J1("uid-",Ro.element))},Kn=(Ro,Lo)=>{const Wo=Un[Lo];if(Wo===Ro)lo(Ro);else throw new Error('The tagId "'+Lo+'" is already used by: '+r1(Wo.element)+` +Cannot use it for: `+r1(Ro.element)+` +The conflicting element is`+(Gl(Wo.element)?" ":" not ")+"already in the DOM")},oo=Ro=>{const Lo=Xn(Ro);Su(Un,Lo)&&Kn(Ro,Lo);const Wo=[Ro];Qn.registerId(Wo,Lo,Ro.events),Un[Lo]=Ro},lo=Ro=>{$0(Ro.element).each(Lo=>{delete Un[Lo],Qn.unregisterId(Lo)})};return{find:(Ro,Lo,Wo)=>Qn.find(Ro,Lo,Wo),filter:Ro=>Qn.filterByType(Ro),register:oo,unregister:lo,getById:Ro=>Rr(Un,Ro)}},rv=Mp({name:"Container",factory:Qn=>{const{attributes:Un,...Xn}=Qn.dom;return{uid:Qn.uid,dom:{tag:"div",attributes:{role:"presentation",...Un},...Xn},components:Qn.components,behaviours:j0(Qn.containerBehaviours),events:Qn.events,domModification:Qn.domModification,eventOrder:Qn.eventOrder}},configFields:[Gs("components",[]),Nf("containerBehaviours",[]),Gs("events",{}),Gs("domModification",{}),Gs("eventOrder",{})]}),bP=Qn=>{const Un=Bs=>Zd(Qn.element).fold(Js,Ns=>Oc(Bs,Ns)),Xn=jI(),Kn=(Bs,Ns)=>Xn.find(Un,Bs,Ns),oo=FV(Qn.element,{triggerEvent:(Bs,Ns)=>KO(Bs,Ns.target,Xs=>ZD(Kn,Bs,Ns,Xs))}),lo={debugInfo:Mo("real"),triggerEvent:(Bs,Ns,Xs)=>{KO(Bs,Ns,Hr=>ZI(Kn,Bs,Xs,Ns,Hr))},triggerFocus:(Bs,Ns)=>{$0(Bs).fold(()=>{Cd(Bs)},Xs=>{KO(tg(),Bs,Hr=>(QV(Kn,tg(),{originator:Ns,kill:xo,prevent:xo,target:Bs},Bs,Hr),!1))})},triggerEscape:(Bs,Ns)=>{lo.triggerEvent("keydown",Bs.element,Ns.event)},getByUid:Bs=>Ps(Bs),getByDom:Bs=>er(Bs),build:gh,buildOrPatch:YO,addToGui:Bs=>{Co(Bs)},removeFromGui:Bs=>{Ro(Bs)},addToWorld:Bs=>{ho(Bs)},removeFromWorld:Bs=>{yo(Bs)},broadcast:Bs=>{jo(Bs)},broadcastOn:(Bs,Ns)=>{Jo(Bs,Ns)},broadcastEvent:(Bs,Ns)=>{us(Bs,Ns)},isConnected:Js},ho=Bs=>{Bs.connect(lo),Td(Bs.element)||(Xn.register(Bs),Qs(Bs.components(),ho),lo.triggerEvent(Z1(),Bs.element,{target:Bs.element}))},yo=Bs=>{Td(Bs.element)||(Qs(Bs.components(),yo),Xn.unregister(Bs)),Bs.disconnect()},Co=Bs=>{cy(Qn,Bs)},Ro=Bs=>{Kb(Bs)},Lo=()=>{oo.unbind(),am(Qn.element)},Wo=Bs=>{const Ns=Xn.filter(T0());Qs(Ns,Xs=>{const Hr=Xs.descHandler;Fv(Hr)(Bs)})},jo=Bs=>{Wo({universal:!0,data:Bs})},Jo=(Bs,Ns)=>{Wo({universal:!1,channels:Bs,data:Ns})},us=(Bs,Ns)=>{const Xs=Xn.filter(Bs);return VV(Xs,Ns)},Ps=Bs=>Xn.getById(Bs).fold(()=>yl.error(new Error('Could not find component with uid: "'+Bs+'" in system.')),yl.value),er=Bs=>{const Ns=$0(Bs).getOr("not found");return Ps(Ns)};return ho(Qn),{root:Qn,element:Qn.element,destroy:Lo,add:Co,remove:Ro,getByUid:Ps,getByDom:er,addToWorld:ho,removeFromWorld:yo,broadcast:jo,broadcastOn:Jo,broadcastEvent:us}},UV=(Qn,Un)=>({dom:{tag:"div",classes:["tox-bar","tox-form__controls-h-stack"]},components:hs(Qn.items,Un.interpreter)}),ZV=Mo([Gs("prefix","form-field"),Nf("fieldBehaviours",[ic,da])]),qV=Mo([up({schema:[Er("dom")],name:"label"}),up({factory:{sketch:Qn=>({uid:Qn.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:Qn.text}})},schema:[Er("text")],name:"aria-descriptor"}),Xh({factory:{sketch:Qn=>{const Un=zr(Qn,["factory"]);return Qn.factory.sketch(Un)}},schema:[Er("factory")],name:"field"})]),jV=(Qn,Un,Xn,Kn)=>{const oo=sf(Qn.fieldBehaviours,[ic.config({find:yo=>Au(yo,Qn,"field")}),da.config({store:{mode:"manual",getValue:yo=>ic.getCurrent(yo).bind(da.getValue),setValue:(yo,Co)=>{ic.getCurrent(yo).each(Ro=>{da.setValue(Ro,Co)})}}})]),lo=Jc([eu((yo,Co)=>{const Ro=KT(yo,Qn,["label","field","aria-descriptor"]);Ro.field().each(Lo=>{const Wo=ba(Qn.prefix);Ro.label().each(jo=>{aa(jo.element,"for",Wo),aa(Lo.element,"id",Wo)}),Ro["aria-descriptor"]().each(jo=>{const Jo=ba(Qn.prefix);aa(jo.element,"id",Jo),aa(Lo.element,"aria-describedby",Jo)})})})]),ho={getField:yo=>Au(yo,Qn,"field"),getLabel:yo=>Au(yo,Qn,"label")};return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:oo,events:lo,apis:ho}},su=Yh({name:"FormField",configFields:ZV(),partFields:qV(),factory:jV,apis:{getField:(Qn,Un)=>Qn.getField(Un),getLabel:(Qn,Un)=>Qn.getLabel(Un)}});var vP=Object.freeze({__proto__:null,exhibit:(Qn,Un)=>bm({attributes:La([{key:Un.tabAttr,value:"true"}])})}),XV=[Gs("tabAttr","data-alloy-tabstop")];const sd=Of({fields:XV,name:"tabstopping",active:vP});var YV=tinymce.util.Tools.resolve("tinymce.html.Entities");const TE=(Qn,Un,Xn,Kn)=>{const oo=KV(Qn,Un,Xn,Kn);return su.sketch(oo)},GV=(Qn,Un)=>TE(Qn,Un,[],[]),KV=(Qn,Un,Xn,Kn)=>({dom:AE(Xn),components:Qn.toArray().concat([Un]),fieldBehaviours:Zr(Kn)}),tG=()=>AE([]),AE=Qn=>({tag:"div",classes:["tox-form__group"].concat(Qn)}),yb=(Qn,Un)=>su.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[wd(Un.translate(Qn))]}),vg=ba("form-component-change"),Uk=ba("form-close"),U_=ba("form-cancel"),Cy=ba("form-action"),PE=ba("form-submit"),qD=ba("form-block"),jD=ba("form-unblock"),XI=ba("form-tabchange"),YI=ba("form-resize"),JV=(Qn,Un,Xn)=>{const Kn=Qn.label.map(Jo=>yb(Jo,Un)),oo=Un.icons(),lo=Jo=>{var us;return(us=oo[Jo])!==null&&us!==void 0?us:Jo},ho=Jo=>(us,Ps)=>{Bg(Ps.event.target,"[data-collection-item-value]").each(er=>{Jo(us,Ps,er,Bu(er,"data-collection-item-value"))})},yo=(Jo,us)=>{const Ps=hs(us,Ns=>{const Xs=_1.translate(Ns.text),Hr=Qn.columns===1?`
    ${Xs}
    `:"",kr=`
    ${lo(Ns.icon)}
    `,Or={_:" "," - ":" ","-":" "},qr=Xs.replace(/\_| \- |\-/g,Dl=>Or[Dl]);return`
    ${kr}${Hr}
    `}),er=Qn.columns!=="auto"&&Qn.columns>1?ha(Ps,Qn.columns):[Ps],Bs=hs(er,Ns=>`
    ${Ns.join("")}
    `);G1(Jo.element,Bs.join(""))},Co=ho((Jo,us,Ps,er)=>{us.stop(),Un.isDisabled()||Qa(Jo,Cy,{name:Qn.name,value:er})}),Ro=[wr(eg(),ho((Jo,us,Ps)=>{Cd(Ps)})),wr(Lg(),Co),wr(ng(),Co),wr(Wu(),ho((Jo,us,Ps)=>{Rd(Jo.element,"."+dE).each(er=>{Yu(er,dE)}),$d(Ps,dE)})),wr(pm(),ho(Jo=>{Rd(Jo.element,"."+dE).each(us=>{Yu(us,dE)})})),qh(ho((Jo,us,Ps,er)=>{Qa(Jo,Cy,{name:Qn.name,value:er})}))],Lo=(Jo,us)=>hs(_f(Jo.element,".tox-collection__item"),us),Wo=su.parts.field({dom:{tag:"div",classes:["tox-collection"].concat(Qn.columns!==1?["tox-collection--grid"]:["tox-collection--list"])},components:[],factory:{sketch:es},behaviours:Zr([Ja.config({disabled:Un.isDisabled,onDisabled:Jo=>{Lo(Jo,us=>{$d(us,"tox-collection__item--state-disabled"),aa(us,"aria-disabled",!0)})},onEnabled:Jo=>{Lo(Jo,us=>{Yu(us,"tox-collection__item--state-disabled"),_s(us,"aria-disabled")})}}),jf(),Cl.config({}),da.config({store:{mode:"memory",initialValue:Xn.getOr([])},onSetValue:(Jo,us)=>{yo(Jo,us),Qn.columns==="auto"&&aD(Jo,5,"tox-collection__item").each(({numRows:Ps,numColumns:er})=>{Za.setGridSize(Jo,Ps,er)}),Wl(Jo,YI)}}),sd.config({}),Za.config(GQ(Qn.columns,"normal")),Rl("collection-events",Ro)]),eventOrder:{[Im()]:["disabling","alloy.base.behaviour","collection-events"]}});return TE(Kn,Wo,["tox-form__group--collection"],[])},ez=["input","textarea"],GI=Qn=>{const Un=Nd(Qn);return Fs(ez,Un)},KI=(Qn,Un)=>{const Xn=Un.getRoot(Qn).getOr(Qn.element);Yu(Xn,Un.invalidClass),Un.notify.each(Kn=>{GI(Qn.element)&&aa(Qn.element,"aria-invalid",!1),Kn.getContainer(Qn).each(oo=>{G1(oo,Kn.validHtml)}),Kn.onValid(Qn)})},XD=(Qn,Un,Xn,Kn)=>{const oo=Un.getRoot(Qn).getOr(Qn.element);$d(oo,Un.invalidClass),Un.notify.each(lo=>{GI(Qn.element)&&aa(Qn.element,"aria-invalid",!0),lo.getContainer(Qn).each(ho=>{G1(ho,Kn)}),lo.onInvalid(Qn,Kn)})},Hw=(Qn,Un,Xn)=>Un.validator.fold(()=>Cm.pure(yl.value(!0)),Kn=>Kn.validate(Qn)),CO=(Qn,Un,Xn)=>(Un.notify.each(Kn=>{Kn.onValidate(Qn)}),Hw(Qn,Un).map(Kn=>Qn.getSystem().isConnected()?Kn.fold(oo=>(XD(Qn,Un,Xn,oo),yl.error(oo)),oo=>(KI(Qn,Un),yl.value(oo))):yl.error("No longer in system")));var JI=Object.freeze({__proto__:null,markValid:KI,markInvalid:XD,query:Hw,run:CO,isInvalid:(Qn,Un)=>{const Xn=Un.getRoot(Qn).getOr(Qn.element);return of(Xn,Un.invalidClass)}}),yP=Object.freeze({__proto__:null,events:(Qn,Un)=>Qn.validator.map(Xn=>Jc([wr(Xn.onEvent,Kn=>{CO(Kn,Qn,Un).get(es)})].concat(Xn.validateOnLoad?[eu(Kn=>{CO(Kn,Qn,Un).get(xo)})]:[]))).getOr({})}),nz=[Er("invalidClass"),Gs("getRoot",ko.none),hh("notify",[Gs("aria","alert"),Gs("getContainer",ko.none),Gs("validHtml",""),rc("onValid"),rc("onInvalid"),rc("onValidate")]),hh("validator",[Er("validate"),Gs("onEvent","input"),Gs("validateOnLoad",!0)])];const C1=Of({fields:nz,name:"invalidating",active:yP,apis:JI,extra:{validation:Qn=>Un=>{const Xn=da.getValue(Un);return Cm.pure(Qn(Xn))}}});var oz=Object.freeze({__proto__:null,events:()=>Jc([IO(z1(),Js)]),exhibit:()=>bm({styles:{"-webkit-user-select":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"-moz-none"},attributes:{unselectable:"on"}})});const $E=Of({fields:[],name:"unselecting",active:oz}),sz=(Qn,Un)=>vb.sketch({dom:Qn.dom,components:Qn.components,toggleClass:"mce-active",dropdownBehaviours:Zr([Lf.button(Un.providers.isDisabled),jf(),$E.config({}),sd.config({})]),layouts:Qn.layouts,sandboxClasses:["tox-dialog__popups"],lazySink:Un.getSink,fetch:Xn=>Cm.nu(Kn=>Qn.fetch(Kn)).map(Kn=>ko.from(gP(Lc(MD(ba("menu-value"),Kn,oo=>{Qn.onItemAction(Xn,oo)},Qn.columns,Qn.presets,sv.CLOSE_ON_EXECUTE,sr,Un.providers),{movement:fP(Qn.columns,Qn.presets)})))),parts:{menu:Dk(!1,1,Qn.presets)}}),eB=ba("color-input-change"),tB=ba("color-swatch-change"),RE=ba("color-picker-cancel"),rz=(Qn,Un,Xn,Kn)=>{const oo=su.parts.field({factory:Lw,inputClasses:["tox-textfield"],data:Kn,onSetValue:Ro=>C1.run(Ro).get(xo),inputBehaviours:Zr([Ja.config({disabled:Un.providers.isDisabled}),jf(),sd.config({}),C1.config({invalidClass:"tox-textbox-field-invalid",getRoot:Ro=>lh(Ro.element),notify:{onValid:Ro=>{const Lo=da.getValue(Ro);Qa(Ro,eB,{color:Lo})}},validator:{validateOnLoad:!1,validate:Ro=>{const Lo=da.getValue(Ro);if(Lo.length===0)return Cm.pure(yl.value(!0));{const Wo=Ds.fromTag("span");ya(Wo,"background-color",Lo);const jo=ku(Wo,"background-color").fold(()=>yl.error("blah"),Jo=>yl.value(Lo));return Cm.pure(jo)}}}})]),selectOnFocus:!1}),lo=Qn.label.map(Ro=>yb(Ro,Un.providers)),ho=(Ro,Lo)=>{Qa(Ro,tB,{value:Lo})},yo=(Ro,Lo)=>{Co.getOpt(Ro).each(Wo=>{Lo==="custom"?Xn.colorPicker(jo=>{jo.fold(()=>Wl(Wo,RE),Jo=>{ho(Wo,Jo),kD(Qn.storageKey,Jo)})},"#ffffff"):Lo==="remove"?ho(Wo,""):ho(Wo,Lo)})},Co=ou(sz({dom:{tag:"span",attributes:{"aria-label":Un.providers.translate("Color swatch")}},layouts:{onRtl:()=>[eh,gf,bu],onLtr:()=>[gf,eh,bu]},components:[],fetch:OI(Xn.getColors(Qn.storageKey),Qn.storageKey,Xn.hasCustomColors()),columns:Xn.getColorCols(Qn.storageKey),presets:"color",onItemAction:yo},Un));return su.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:lo.toArray().concat([{dom:{tag:"div",classes:["tox-color-input"]},components:[oo,Co.asSpec()]}]),fieldBehaviours:Zr([Rl("form-field-events",[wr(eB,(Ro,Lo)=>{Co.getOpt(Ro).each(Wo=>{ya(Wo.element,"background-color",Lo.event.color)}),Qa(Ro,vg,{name:Qn.name})}),wr(tB,(Ro,Lo)=>{su.getField(Ro).each(Wo=>{da.setValue(Wo,Lo.event.value),ic.getCurrent(Ro).each(ol.focus)})}),wr(RE,(Ro,Lo)=>{su.getField(Ro).each(Wo=>{ic.getCurrent(Ro).each(ol.focus)})})])])})},YD=up({schema:[Er("dom")],name:"label"}),Z_=Qn=>up({name:""+Qn+"-edge",overrides:Un=>Un.model.manager.edgeActions[Qn].fold(()=>({}),Kn=>({events:Jc([sg(mm(),(oo,lo,ho)=>Kn(oo,ho),[Un]),sg(Xl(),(oo,lo,ho)=>Kn(oo,ho),[Un]),sg(Qd(),(oo,lo,ho)=>{ho.mouseIsDown.get()&&Kn(oo,ho)},[Un])])}))}),iz=Z_("top-left"),az=Z_("top"),nB=Z_("top-right"),lz=Z_("right"),cz=Z_("bottom-right"),uz=Z_("bottom"),oB=Z_("bottom-left"),dz=Z_("left"),fz=Xh({name:"thumb",defaults:Mo({dom:{styles:{position:"absolute"}}}),overrides:Qn=>({events:Jc([A0(mm(),Qn,"spectrum"),A0(Nb(),Qn,"spectrum"),A0(H1(),Qn,"spectrum"),A0(Xl(),Qn,"spectrum"),A0(Qd(),Qn,"spectrum"),A0(Cv(),Qn,"spectrum")])})}),_P=Qn=>ev(Qn.event),hz=Xh({schema:[pu("mouseIsDown",()=>Ua(!1))],name:"spectrum",overrides:Qn=>{const Xn=Qn.model.manager,Kn=(oo,lo)=>Xn.getValueFromEvent(lo).map(ho=>Xn.setValueFrom(oo,Qn,ho));return{behaviours:Zr([Za.config({mode:"special",onLeft:(oo,lo)=>Xn.onLeft(oo,Qn,_P(lo)),onRight:(oo,lo)=>Xn.onRight(oo,Qn,_P(lo)),onUp:(oo,lo)=>Xn.onUp(oo,Qn,_P(lo)),onDown:(oo,lo)=>Xn.onDown(oo,Qn,_P(lo))}),sd.config({}),ol.config({})]),events:Jc([wr(mm(),Kn),wr(Nb(),Kn),wr(Xl(),Kn),wr(Qd(),(oo,lo)=>{Qn.mouseIsDown.get()&&Kn(oo,lo)})])}}});var mz=[YD,dz,lz,az,uz,iz,nB,oB,cz,fz,hz];const Zk=Mo("slider.change.value"),gz=Qn=>Qn.type.indexOf("touch")!==-1,GD=Qn=>{const Un=Qn.event.raw;if(gz(Un)){const Xn=Un;return Xn.touches!==void 0&&Xn.touches.length===1?ko.some(Xn.touches[0]).map(Kn=>vc(Kn.clientX,Kn.clientY)):ko.none()}else{const Xn=Un;return Xn.clientX!==void 0?ko.some(Xn).map(Kn=>vc(Kn.clientX,Kn.clientY)):ko.none()}},bz="top",vz="right",yz="bottom",sB="left",l0=Qn=>Qn.model.minX,Qw=Qn=>Qn.model.minY,SP=Qn=>Qn.model.minX-1,wP=Qn=>Qn.model.minY-1,ky=Qn=>Qn.model.maxX,Um=Qn=>Qn.model.maxY,qk=Qn=>Qn.model.maxX+1,DE=Qn=>Qn.model.maxY+1,rB=(Qn,Un,Xn)=>Un(Qn)-Xn(Qn),KD=Qn=>rB(Qn,ky,l0),JD=Qn=>rB(Qn,Um,Qw),iB=Qn=>KD(Qn)/2,eM=Qn=>JD(Qn)/2,Vw=(Qn,Un)=>Un?Qn.stepSize*Qn.speedMultiplier:Qn.stepSize,aB=Qn=>Qn.snapToGrid,lB=Qn=>Qn.snapStart,tM=Qn=>Qn.rounded,CP=(Qn,Un)=>Qn[Un+"-edge"]!==void 0,nM=Qn=>CP(Qn,sB),oM=Qn=>CP(Qn,vz),sM=Qn=>CP(Qn,bz),cB=Qn=>CP(Qn,yz),kO=Qn=>Qn.model.value.get(),q_=(Qn,Un)=>({x:Qn,y:Un}),c0=(Qn,Un)=>{Qa(Qn,Zk(),{value:Un})},Oz=(Qn,Un)=>{c0(Qn,q_(SP(Un),wP(Un)))},_z=(Qn,Un)=>{c0(Qn,wP(Un))},rM=(Qn,Un)=>{c0(Qn,q_(iB(Un),wP(Un)))},Sz=(Qn,Un)=>{c0(Qn,q_(qk(Un),wP(Un)))},uB=(Qn,Un)=>{c0(Qn,qk(Un))},wz=(Qn,Un)=>{c0(Qn,q_(qk(Un),eM(Un)))},Cz=(Qn,Un)=>{c0(Qn,q_(qk(Un),DE(Un)))},kz=(Qn,Un)=>{c0(Qn,DE(Un))},xz=(Qn,Un)=>{c0(Qn,q_(iB(Un),DE(Un)))},Ez=(Qn,Un)=>{c0(Qn,q_(SP(Un),DE(Un)))},Tz=(Qn,Un)=>{c0(Qn,SP(Un))},Az=(Qn,Un)=>{c0(Qn,q_(SP(Un),eM(Un)))},kP=(Qn,Un,Xn,Kn)=>QnXn?Xn:Qn===Un?Un-1:Math.max(Un,Qn-Kn),xP=(Qn,Un,Xn,Kn)=>Qn>Xn?Qn:QnMath.max(Un,Math.min(Xn,Qn)),Pz=(Qn,Un,Xn,Kn,oo)=>oo.fold(()=>{const lo=Qn-Un,ho=Math.round(lo/Kn)*Kn;return dB(Un+ho,Un-1,Xn+1)},lo=>{const ho=(Qn-lo)%Kn,yo=Math.round(ho/Kn),Co=Math.floor((Qn-lo)/Kn),Ro=Math.floor((Xn-lo)/Kn),Lo=Math.min(Ro,Co+yo),Wo=lo+Lo*Kn;return Math.max(lo,Wo)}),$z=(Qn,Un,Xn)=>Math.min(Xn,Math.max(Qn,Un))-Un,fB=Qn=>{const{min:Un,max:Xn,range:Kn,value:oo,step:lo,snap:ho,snapStart:yo,rounded:Co,hasMinEdge:Ro,hasMaxEdge:Lo,minBound:Wo,maxBound:jo,screenRange:Jo}=Qn,us=Ro?Un-1:Un,Ps=Lo?Xn+1:Xn;if(oojo)return Ps;{const er=$z(oo,Wo,jo),Bs=dB(er/Jo*Kn+Un,us,Ps);return ho&&Bs>=Un&&Bs<=Xn?Pz(Bs,Un,Xn,lo,yo):Co?Math.round(Bs):Bs}},hB=Qn=>{const{min:Un,max:Xn,range:Kn,value:oo,hasMinEdge:lo,hasMaxEdge:ho,maxBound:yo,maxOffset:Co,centerMinEdge:Ro,centerMaxEdge:Lo}=Qn;return ooXn?ho?yo:Lo:(oo-Un)/Kn*Co},iM="top",aM="right",lM="bottom",EP="left",cM="width",Rz="height",iv=Qn=>Qn.element.dom.getBoundingClientRect(),u0=(Qn,Un)=>Qn[Un],TP=Qn=>{const Un=iv(Qn);return u0(Un,EP)},mB=Qn=>{const Un=iv(Qn);return u0(Un,aM)},AP=Qn=>{const Un=iv(Qn);return u0(Un,iM)},PP=Qn=>{const Un=iv(Qn);return u0(Un,lM)},xy=Qn=>{const Un=iv(Qn);return u0(Un,cM)},pB=Qn=>{const Un=iv(Qn);return u0(Un,Rz)},jk=(Qn,Un,Xn)=>(Qn+Un)/2-Xn,gB=(Qn,Un)=>{const Xn=iv(Qn),Kn=iv(Un),oo=u0(Xn,EP),lo=u0(Xn,aM),ho=u0(Kn,EP);return jk(oo,lo,ho)},$P=(Qn,Un)=>{const Xn=iv(Qn),Kn=iv(Un),oo=u0(Xn,iM),lo=u0(Xn,lM),ho=u0(Kn,iM);return jk(oo,lo,ho)},RP=(Qn,Un)=>{Qa(Qn,Zk(),{value:Un})},uM=(Qn,Un,Xn)=>{const Kn={min:l0(Un),max:ky(Un),range:KD(Un),value:Xn,step:Vw(Un),snap:aB(Un),snapStart:lB(Un),rounded:tM(Un),hasMinEdge:nM(Un),hasMaxEdge:oM(Un),minBound:TP(Qn),maxBound:mB(Qn),screenRange:xy(Qn)};return fB(Kn)},Dz=(Qn,Un,Xn)=>{const Kn=uM(Qn,Un,Xn);return RP(Qn,Kn),Kn},bB=(Qn,Un)=>{const Xn=l0(Un);RP(Qn,Xn)},Mz=(Qn,Un)=>{const Xn=ky(Un);RP(Qn,Xn)},dM=(Qn,Un,Xn,Kn)=>{const lo=(Qn>0?xP:kP)(kO(Xn),l0(Xn),ky(Xn),Vw(Xn,Kn));return RP(Un,lo),ko.some(lo)},DP=Qn=>(Un,Xn,Kn)=>dM(Qn,Un,Xn,Kn).map(Js),fM=Qn=>GD(Qn).map(Xn=>Xn.left),Nz=(Qn,Un,Xn,Kn,oo)=>{const ho=xy(Qn),yo=Kn.bind(Lo=>ko.some(gB(Lo,Qn))).getOr(0),Co=oo.bind(Lo=>ko.some(gB(Lo,Qn))).getOr(ho),Ro={min:l0(Un),max:ky(Un),range:KD(Un),value:Xn,hasMinEdge:nM(Un),hasMaxEdge:oM(Un),minBound:TP(Qn),minOffset:0,maxBound:mB(Qn),maxOffset:ho,centerMinEdge:yo,centerMaxEdge:Co};return hB(Ro)},yg=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Nz(Un,lo,Xn,Kn,oo);return TP(Un)-TP(Qn)+ho},Lz=(Qn,Un,Xn,Kn)=>{const oo=kO(Xn),lo=yg(Qn,Kn.getSpectrum(Qn),oo,Kn.getLeftEdge(Qn),Kn.getRightEdge(Qn),Xn),ho=dd(Un.element)/2;ya(Un.element,"left",lo-ho+"px")},Iz=DP(-1),vB=DP(1),yB=ko.none,Bz=ko.none,Fz={"top-left":ko.none(),top:ko.none(),"top-right":ko.none(),right:ko.some(uB),"bottom-right":ko.none(),bottom:ko.none(),"bottom-left":ko.none(),left:ko.some(Tz)};var Hz=Object.freeze({__proto__:null,setValueFrom:Dz,setToMin:bB,setToMax:Mz,findValueOfOffset:uM,getValueFromEvent:fM,findPositionOfValue:yg,setPositionFromValue:Lz,onLeft:Iz,onRight:vB,onUp:yB,onDown:Bz,edgeActions:Fz});const MP=(Qn,Un)=>{Qa(Qn,Zk(),{value:Un})},hM=(Qn,Un,Xn)=>{const Kn={min:Qw(Un),max:Um(Un),range:JD(Un),value:Xn,step:Vw(Un),snap:aB(Un),snapStart:lB(Un),rounded:tM(Un),hasMinEdge:sM(Un),hasMaxEdge:cB(Un),minBound:AP(Qn),maxBound:PP(Qn),screenRange:pB(Qn)};return fB(Kn)},Qz=(Qn,Un,Xn)=>{const Kn=hM(Qn,Un,Xn);return MP(Qn,Kn),Kn},Vz=(Qn,Un)=>{const Xn=Qw(Un);MP(Qn,Xn)},OB=(Qn,Un)=>{const Xn=Um(Un);MP(Qn,Xn)},zz=(Qn,Un,Xn,Kn)=>{const lo=(Qn>0?xP:kP)(kO(Xn),Qw(Xn),Um(Xn),Vw(Xn,Kn));return MP(Un,lo),ko.some(lo)},_B=Qn=>(Un,Xn,Kn)=>zz(Qn,Un,Xn,Kn).map(Js),Wz=Qn=>GD(Qn).map(Xn=>Xn.top),SB=(Qn,Un,Xn,Kn,oo)=>{const ho=pB(Qn),yo=Kn.bind(Lo=>ko.some($P(Lo,Qn))).getOr(0),Co=oo.bind(Lo=>ko.some($P(Lo,Qn))).getOr(ho),Ro={min:Qw(Un),max:Um(Un),range:JD(Un),value:Xn,hasMinEdge:sM(Un),hasMaxEdge:cB(Un),minBound:AP(Qn),minOffset:0,maxBound:PP(Qn),maxOffset:ho,centerMinEdge:yo,centerMaxEdge:Co};return hB(Ro)},ME=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=SB(Un,lo,Xn,Kn,oo);return AP(Un)-AP(Qn)+ho},Uz=(Qn,Un,Xn,Kn)=>{const oo=kO(Xn),lo=ME(Qn,Kn.getSpectrum(Qn),oo,Kn.getTopEdge(Qn),Kn.getBottomEdge(Qn),Xn),ho=cu(Un.element)/2;ya(Un.element,"top",lo-ho+"px")},mM=ko.none,Xk=ko.none,wB=_B(-1),CB=_B(1),kB={"top-left":ko.none(),top:ko.some(_z),"top-right":ko.none(),right:ko.none(),"bottom-right":ko.none(),bottom:ko.some(kz),"bottom-left":ko.none(),left:ko.none()};var Zz=Object.freeze({__proto__:null,setValueFrom:Qz,setToMin:Vz,setToMax:OB,findValueOfOffset:hM,getValueFromEvent:Wz,findPositionOfValue:ME,setPositionFromValue:Uz,onLeft:mM,onRight:Xk,onUp:wB,onDown:CB,edgeActions:kB});const NP=(Qn,Un)=>{Qa(Qn,Zk(),{value:Un})},zw=(Qn,Un)=>({x:Qn,y:Un}),qz=(Qn,Un,Xn)=>{const Kn=uM(Qn,Un,Xn.left),oo=hM(Qn,Un,Xn.top),lo=zw(Kn,oo);return NP(Qn,lo),lo},jz=(Qn,Un,Xn,Kn,oo)=>{const lo=Qn>0?xP:kP,ho=Un?kO(Kn).x:lo(kO(Kn).x,l0(Kn),ky(Kn),Vw(Kn,oo)),yo=Un?lo(kO(Kn).y,Qw(Kn),Um(Kn),Vw(Kn,oo)):kO(Kn).y;return NP(Xn,zw(ho,yo)),ko.some(ho)},NE=(Qn,Un)=>(Xn,Kn,oo)=>jz(Qn,Un,Xn,Kn,oo).map(Js),xB=(Qn,Un)=>{const Xn=l0(Un),Kn=Qw(Un);NP(Qn,zw(Xn,Kn))},pM=(Qn,Un)=>{const Xn=ky(Un),Kn=Um(Un);NP(Qn,zw(Xn,Kn))},EB=Qn=>GD(Qn),Lp=(Qn,Un,Xn,Kn)=>{const oo=kO(Xn),lo=yg(Qn,Kn.getSpectrum(Qn),oo.x,Kn.getLeftEdge(Qn),Kn.getRightEdge(Qn),Xn),ho=ME(Qn,Kn.getSpectrum(Qn),oo.y,Kn.getTopEdge(Qn),Kn.getBottomEdge(Qn),Xn),yo=dd(Un.element)/2,Co=cu(Un.element)/2;ya(Un.element,"left",lo-yo+"px"),ya(Un.element,"top",ho-Co+"px")},TB=NE(-1,!1),Xz=NE(1,!1),Yz=NE(-1,!0),AB=NE(1,!0),Gz={"top-left":ko.some(Oz),top:ko.some(rM),"top-right":ko.some(Sz),right:ko.some(wz),"bottom-right":ko.some(Cz),bottom:ko.some(xz),"bottom-left":ko.some(Ez),left:ko.some(Az)};var Kz=Object.freeze({__proto__:null,setValueFrom:qz,setToMin:xB,setToMax:pM,getValueFromEvent:EB,setPositionFromValue:Lp,onLeft:TB,onRight:Xz,onUp:Yz,onDown:AB,edgeActions:Gz});const Jz=[Gs("stepSize",1),Gs("speedMultiplier",10),Gs("onChange",xo),Gs("onChoose",xo),Gs("onInit",xo),Gs("onDragStart",xo),Gs("onDragEnd",xo),Gs("snapToGrid",!1),Gs("rounded",!0),Tc("snapStart"),Kf("model",jl("mode",{x:[Gs("minX",0),Gs("maxX",100),pu("value",Qn=>Ua(Qn.mode.minX)),Er("getInitialValue"),tu("manager",Hz)],y:[Gs("minY",0),Gs("maxY",100),pu("value",Qn=>Ua(Qn.mode.minY)),Er("getInitialValue"),tu("manager",Zz)],xy:[Gs("minX",0),Gs("maxX",100),Gs("minY",0),Gs("maxY",100),pu("value",Qn=>Ua({x:Qn.mode.minX,y:Qn.mode.minY})),Er("getInitialValue"),tu("manager",Kz)]})),Nf("sliderBehaviours",[Za,da]),pu("mouseIsDown",()=>Ua(!1))],Kh=Yh({name:"Slider",configFields:Jz,partFields:mz,factory:(Qn,Un,Xn,Kn)=>{const oo=kr=>Y0(kr,Qn,"thumb"),lo=kr=>Y0(kr,Qn,"spectrum"),ho=kr=>Au(kr,Qn,"left-edge"),yo=kr=>Au(kr,Qn,"right-edge"),Co=kr=>Au(kr,Qn,"top-edge"),Ro=kr=>Au(kr,Qn,"bottom-edge"),Lo=Qn.model,Wo=Lo.manager,jo=(kr,Or)=>{Wo.setPositionFromValue(kr,Or,Qn,{getLeftEdge:ho,getRightEdge:yo,getTopEdge:Co,getBottomEdge:Ro,getSpectrum:lo})},Jo=(kr,Or)=>{Lo.value.set(Or);const qr=oo(kr);jo(kr,qr)},us=(kr,Or)=>{Jo(kr,Or);const qr=oo(kr);return Qn.onChange(kr,qr,Or),ko.some(!0)},Ps=kr=>{Wo.setToMin(kr,Qn)},er=kr=>{Wo.setToMax(kr,Qn)},Bs=kr=>{const Or=()=>{Au(kr,Qn,"thumb").each(na=>{const Dl=Lo.value.get();Qn.onChoose(kr,na,Dl)})},qr=Qn.mouseIsDown.get();Qn.mouseIsDown.set(!1),qr&&Or()},Ns=(kr,Or)=>{Or.stop(),Qn.mouseIsDown.set(!0),Qn.onDragStart(kr,oo(kr))},Xs=(kr,Or)=>{Or.stop(),Qn.onDragEnd(kr,oo(kr)),Bs(kr)},Hr=kr=>{Au(kr,Qn,"spectrum").map(Za.focusIn)};return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.sliderBehaviours,[Za.config({mode:"special",focusIn:Hr}),da.config({store:{mode:"manual",getValue:kr=>Lo.value.get(),setValue:Jo}}),Om.config({channels:{[wx()]:{onReceive:Bs}}})]),events:Jc([wr(Zk(),(kr,Or)=>{us(kr,Or.event.value)}),eu((kr,Or)=>{const qr=Lo.getInitialValue();Lo.value.set(qr);const na=oo(kr);jo(kr,na);const Dl=lo(kr);Qn.onInit(kr,na,Dl,Lo.value.get())}),wr(mm(),Ns),wr(H1(),Xs),wr(Xl(),(kr,Or)=>{Hr(kr),Ns(kr,Or)}),wr(Cv(),Xs)]),apis:{resetToMin:Ps,resetToMax:er,setValue:Jo,refresh:jo},domModification:{styles:{position:"relative"}}}},apis:{setValue:(Qn,Un,Xn)=>{Qn.setValue(Un,Xn)},resetToMin:(Qn,Un)=>{Qn.resetToMin(Un)},resetToMax:(Qn,Un)=>{Qn.resetToMax(Un)},refresh:(Qn,Un)=>{Qn.refresh(Un)}}}),LE=ba("rgb-hex-update"),gM=ba("slider-update"),IE=ba("palette-update"),bM=(Qn,Un)=>{const Xn=Kh.parts.spectrum({dom:{tag:"div",classes:[Un("hue-slider-spectrum")],attributes:{role:"presentation"}}}),Kn=Kh.parts.thumb({dom:{tag:"div",classes:[Un("hue-slider-thumb")],attributes:{role:"presentation"}}});return Kh.sketch({dom:{tag:"div",classes:[Un("hue-slider")],attributes:{role:"slider","aria-valuemin":0,"aria-valuemax":360,"aria-valuenow":120}},rounded:!1,model:{mode:"y",getInitialValue:Mo(0)},components:[Xn,Kn],sliderBehaviours:Zr([ol.config({})]),onChange:(oo,lo,ho)=>{aa(oo.element,"aria-valuenow",Math.floor(360-ho*3.6)),Qa(oo,gM,{value:ho})}})},PB="form",tW=[Nf("formBehaviours",[da])],$B=Qn=>"",nW=Qn=>{const Un=(()=>{const lo=[];return{field:(yo,Co)=>(lo.push(yo),Px(PB,$B(yo),Co)),record:Mo(lo)}})(),Xn=Qn(Un),Kn=Un.record(),oo=hs(Kn,lo=>Xh({name:lo,pname:$B(lo)}));return Ix(PB,tW,oo,sW,Xn)},oW=(Qn,Un)=>Qn.fold(()=>yl.error(Un),yl.value),sW=(Qn,Un)=>({uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.formBehaviours,[da.config({store:{mode:"manual",getValue:Xn=>{const Kn=Rx(Xn,Qn);return Vl(Kn,(oo,lo)=>oo().bind(ho=>{const yo=ic.getCurrent(ho);return oW(yo,new Error(`Cannot find a current component to extract the value from for form part '${lo}': `+r1(ho.element)))}).map(da.getValue))},setValue:(Xn,Kn)=>{Zl(Kn,(oo,lo)=>{Au(Xn,Qn,lo).each(ho=>{ic.getCurrent(ho).each(yo=>{da.setValue(yo,oo)})})})}}})]),apis:{getField:(Xn,Kn)=>Au(Xn,Qn,Kn).bind(ic.getCurrent)}}),Yk={getField:eb((Qn,Un,Xn)=>Qn.getField(Un,Xn)),sketch:nW},vM=ba("valid-input"),RB=ba("invalid-input"),av=ba("validating-input"),Gk="colorcustom.rgb.",rW=(Qn,Un,Xn,Kn)=>{const oo=(jo,Jo)=>C1.config({invalidClass:Un("invalid"),notify:{onValidate:us=>{Qa(us,av,{type:jo})},onValid:us=>{Qa(us,vM,{type:jo,value:da.getValue(us)})},onInvalid:us=>{Qa(us,RB,{type:jo,value:da.getValue(us)})}},validator:{validate:us=>{const Ps=da.getValue(us),er=Jo(Ps)?yl.value(!0):yl.error(Qn("aria.input.invalid"));return Cm.pure(er)},validateOnLoad:!1}}),lo=(jo,Jo,us,Ps,er)=>{const Bs=Qn(Gk+"range"),Ns=su.parts.label({dom:{tag:"label",attributes:{"aria-label":Ps}},components:[wd(us)]}),Xs=su.parts.field({data:er,factory:Lw,inputAttributes:{type:"text",...Jo==="hex"?{"aria-live":"polite"}:{}},inputClasses:[Un("textfield")],inputBehaviours:Zr([oo(Jo,jo),sd.config({})]),onSetValue:qr=>{C1.isInvalid(qr)&&C1.run(qr).get(xo)}}),Hr=[Ns,Xs],kr=Jo!=="hex"?[su.parts["aria-descriptor"]({text:Bs})]:[],Or=Hr.concat(kr);return{dom:{tag:"div",attributes:{role:"presentation"}},components:Or}},ho=(jo,Jo)=>{const us=zk(Jo);return Yk.getField(jo,"hex").each(Ps=>{ol.isFocused(Ps)||da.setValue(jo,{hex:us.value})}),us},yo=(jo,Jo)=>{const us=Jo.red,Ps=Jo.green,er=Jo.blue;da.setValue(jo,{red:us,green:Ps,blue:er})},Co=ou({dom:{tag:"div",classes:[Un("rgba-preview")],styles:{"background-color":"white"},attributes:{role:"presentation"}}}),Ro=(jo,Jo)=>{Co.getOpt(jo).each(us=>{ya(us.element,"background-color","#"+Jo.value)})};return Mp({factory:()=>{const jo={red:Ua(ko.some(255)),green:Ua(ko.some(255)),blue:Ua(ko.some(255)),hex:Ua(ko.some("ffffff"))},Jo=(rl,Yc)=>{const Ga=_E(Yc);yo(rl,Ga),Bs(Ga)},us=rl=>jo[rl].get(),Ps=(rl,Yc)=>{jo[rl].set(Yc)},er=()=>us("red").bind(rl=>us("green").bind(Yc=>us("blue").map(Ga=>Q_(rl,Yc,Ga,1)))),Bs=rl=>{const Yc=rl.red,Ga=rl.green,yc=rl.blue;Ps("red",ko.some(Yc)),Ps("green",ko.some(Ga)),Ps("blue",ko.some(yc))},Ns=(rl,Yc)=>{const Ga=Yc.event;Ga.type!=="hex"?Ps(Ga.type,ko.none()):Kn(rl)},Xs=(rl,Yc)=>{Xn(rl);const Ga=X5(Yc);Ps("hex",ko.some(Ga.value));const yc=_E(Ga);yo(rl,yc),Bs(yc),Qa(rl,LE,{hex:Ga}),Ro(rl,Ga)},Hr=(rl,Yc,Ga)=>{const yc=parseInt(Ga,10);Ps(Yc,ko.some(yc)),er().each(oa=>{const $a=ho(rl,oa);Qa(rl,LE,{hex:$a}),Ro(rl,$a)})},kr=rl=>rl.type==="hex",Or=(rl,Yc)=>{const Ga=Yc.event;kr(Ga)?Xs(rl,Ga.value):Hr(rl,Ga.type,Ga.value)},qr=rl=>({label:Qn(Gk+rl+".label"),description:Qn(Gk+rl+".description")}),na=qr("red"),Dl=qr("green"),Sa=qr("blue"),fl=qr("hex");return Lc(Yk.sketch(rl=>({dom:{tag:"form",classes:[Un("rgb-form")],attributes:{"aria-label":Qn("aria.color.picker")}},components:[rl.field("red",su.sketch(lo(bD,"red",na.label,na.description,255))),rl.field("green",su.sketch(lo(bD,"green",Dl.label,Dl.description,255))),rl.field("blue",su.sketch(lo(bD,"blue",Sa.label,Sa.description,255))),rl.field("hex",su.sketch(lo(K5,"hex",fl.label,fl.description,"ffffff"))),Co.asSpec()],formBehaviours:Zr([C1.config({invalidClass:Un("form-invalid")}),Rl("rgb-form-events",[wr(vM,Or),wr(RB,Ns),wr(av,Ns)])])})),{apis:{updateHex:(rl,Yc)=>{da.setValue(rl,{hex:Yc.value}),Jo(rl,Yc),Ro(rl,Yc)}}})},name:"RgbForm",configFields:[],apis:{updateHex:(jo,Jo,us)=>{jo.updateHex(Jo,us)}},extraApis:{}})},iW=(Qn,Un)=>{const Xn=Kh.parts.spectrum({dom:{tag:"canvas",attributes:{role:"presentation"},classes:[Un("sv-palette-spectrum")]}}),Kn=Kh.parts.thumb({dom:{tag:"div",attributes:{role:"presentation"},classes:[Un("sv-palette-thumb")],innerHtml:``}}),oo=(Ro,Lo)=>{const{width:Wo,height:jo}=Ro,Jo=Ro.getContext("2d");if(Jo===null)return;Jo.fillStyle=Lo,Jo.fillRect(0,0,Wo,jo);const us=Jo.createLinearGradient(0,0,Wo,0);us.addColorStop(0,"rgba(255,255,255,1)"),us.addColorStop(1,"rgba(255,255,255,0)"),Jo.fillStyle=us,Jo.fillRect(0,0,Wo,jo);const Ps=Jo.createLinearGradient(0,0,0,jo);Ps.addColorStop(0,"rgba(0,0,0,0)"),Ps.addColorStop(1,"rgba(0,0,0,1)"),Jo.fillStyle=Ps,Jo.fillRect(0,0,Wo,jo)},lo=(Ro,Lo)=>{const Wo=Ro.components()[0].element.dom,jo=wE(Lo,100,100),Jo=rI(jo);oo(Wo,yD(Jo))},ho=(Ro,Lo)=>{const Wo=aP(_E(Lo));Kh.setValue(Ro,{x:Wo.saturation,y:100-Wo.value}),aa(Ro.element,"aria-valuetext",Qn(["Saturation {0}%, Brightness {1}%",Wo.saturation,Wo.value]))};return Mp({factory:Ro=>{const Lo=Mo({x:0,y:0}),Wo=(us,Ps,er)=>{$o(er)||aa(us.element,"aria-valuetext",Qn(["Saturation {0}%, Brightness {1}%",Math.floor(er.x),Math.floor(100-er.y)])),Qa(us,IE,{value:er})},jo=(us,Ps,er,Bs)=>{oo(er.element.dom,yD(bb))},Jo=Zr([ic.config({find:ko.some}),ol.config({})]);return Kh.sketch({dom:{tag:"div",attributes:{role:"slider","aria-valuetext":Qn(["Saturation {0}%, Brightness {1}%",0,0])},classes:[Un("sv-palette")]},model:{mode:"xy",getInitialValue:Lo},rounded:!1,components:[Xn,Kn],onChange:Wo,onInit:jo,sliderBehaviours:Jo})},name:"SaturationBrightnessPalette",configFields:[],apis:{setHue:(Ro,Lo,Wo)=>{lo(Lo,Wo)},setThumb:(Ro,Lo,Wo)=>{ho(Lo,Wo)}},extraApis:{}})},DB=(Qn,Un)=>{const Xn=oo=>{const lo=rW(Qn,Un,oo.onValidHex,oo.onInvalidHex),ho=iW(Qn,Un),yo=Or=>(100-Or)/100*360,Co=Or=>100-Or/360*100,Ro={paletteRgba:Ua(bb),paletteHue:Ua(0)},Lo=ou(bM(Qn,Un)),Wo=ou(ho.sketch({})),jo=ou(lo.sketch({})),Jo=(Or,qr,na)=>{Wo.getOpt(Or).each(Dl=>{ho.setHue(Dl,na)})},us=(Or,qr)=>{jo.getOpt(Or).each(na=>{lo.updateHex(na,qr)})},Ps=(Or,qr,na)=>{Lo.getOpt(Or).each(Dl=>{Kh.setValue(Dl,Co(na))})},er=(Or,qr)=>{Wo.getOpt(Or).each(na=>{ho.setThumb(na,qr)})},Bs=(Or,qr)=>{const na=_E(Or);Ro.paletteRgba.set(na),Ro.paletteHue.set(qr)},Ns=(Or,qr,na,Dl)=>{Bs(qr,na),Qs(Dl,Sa=>{Sa(Or,qr,na)})},Xs=()=>{const Or=[us];return(qr,na)=>{const Dl=na.event.value,Sa=Ro.paletteHue.get(),fl=wE(Sa,Dl.x,100-Dl.y),rl=hI(fl);Ns(qr,rl,Sa,Or)}},Hr=()=>{const Or=[Jo,us];return(qr,na)=>{const Dl=yo(na.event.value),Sa=Ro.paletteRgba.get(),fl=aP(Sa),rl=wE(Dl,fl.saturation,fl.value),Yc=hI(rl);Ns(qr,Yc,Dl,Or)}},kr=()=>{const Or=[Jo,Ps,er];return(qr,na)=>{const Dl=na.event.hex,Sa=HQ(Dl);Ns(qr,Dl,Sa.hue,Or)}};return{uid:oo.uid,dom:oo.dom,components:[Wo.asSpec(),Lo.asSpec(),jo.asSpec()],behaviours:Zr([Rl("colour-picker-events",[wr(LE,kr()),wr(IE,Xs()),wr(gM,Hr())]),ic.config({find:Or=>jo.getOpt(Or)}),Za.config({mode:"acyclic"})])}};return Mp({name:"ColourPicker",configFields:[Er("dom"),Gs("onValidHex",xo),Gs("onInvalidHex",xo)],factory:Xn})},Og={self:()=>ic.config({find:ko.some}),memento:Qn=>ic.config({find:Qn.getOpt}),childAt:Qn=>ic.config({find:Un=>Fh(Un.element,Qn).bind(Xn=>Un.getSystem().getByDom(Xn).toOptional())})},BE=Ta([Gs("preprocess",es),Gs("postprocess",es)]),NB=(Qn,Un)=>{const Xn=td("RepresentingConfigs.memento processors",BE,Un);return da.config({store:{mode:"manual",getValue:Kn=>{const oo=Qn.get(Kn),lo=da.getValue(oo);return Xn.postprocess(lo)},setValue:(Kn,oo)=>{const lo=Xn.preprocess(oo),ho=Qn.get(Kn);da.setValue(ho,lo)}}})},j_=(Qn,Un,Xn)=>da.config({store:{mode:"manual",...Qn.map(Kn=>({initialValue:Kn})).getOr({}),getValue:Un,setValue:Xn}}),OM=(Qn,Un,Xn)=>j_(Qn,Kn=>Un(Kn.element),(Kn,oo)=>Xn(Kn.element,oo)),LB=Qn=>OM(Qn,Rv,G1),LP=Qn=>da.config({store:{mode:"memory",initialValue:Qn}}),lW={"colorcustom.rgb.red.label":"R","colorcustom.rgb.red.description":"Red component","colorcustom.rgb.green.label":"G","colorcustom.rgb.green.description":"Green component","colorcustom.rgb.blue.label":"B","colorcustom.rgb.blue.description":"Blue component","colorcustom.rgb.hex.label":"#","colorcustom.rgb.hex.description":"Hex color code","colorcustom.rgb.range":"Range 0 to 255","aria.color.picker":"Color Picker","aria.input.invalid":"Invalid input"},cW=Qn=>Un=>qn(Un)?Qn.translate(lW[Un]):Qn.translate(Un),uW=(Qn,Un,Xn)=>{const Kn=Co=>"tox-"+Co,oo=DB(cW(Un),Kn),lo=Co=>{Qa(Co,Cy,{name:"hex-valid",value:!0})},ho=Co=>{Qa(Co,Cy,{name:"hex-valid",value:!1})},yo=ou(oo.sketch({dom:{tag:"div",classes:[Kn("color-picker-container")],attributes:{role:"presentation"}},onValidHex:lo,onInvalidHex:ho}));return{dom:{tag:"div"},components:[yo.asSpec()],behaviours:Zr([j_(Xn,Co=>{const Ro=yo.get(Co);return ic.getCurrent(Ro).bind(jo=>da.getValue(jo).hex).map(jo=>"#"+Rc(jo,"#")).getOr("")},(Co,Ro)=>{const Lo=/^#([a-fA-F0-9]{3}(?:[a-fA-F0-9]{3})?)/,Wo=ko.from(Lo.exec(Ro)).bind(us=>xa(us,1)),jo=yo.get(Co);ic.getCurrent(jo).fold(()=>{console.log("Can not find form")},us=>{da.setValue(us,{hex:Wo.getOr("")}),Yk.getField(us,"hex").each(Ps=>{Wl(Ps,o1())})})}),Og.self()])}};var dW=tinymce.util.Tools.resolve("tinymce.Resource");const IB=Qn=>Pl(Qn,"init"),BB=Qn=>{const Un=Hl(),Xn=ou({dom:{tag:Qn.tag}}),Kn=Hl();return{dom:{tag:"div",classes:["tox-custom-editor"]},behaviours:Zr([Rl("custom-editor-events",[eu(oo=>{Xn.getOpt(oo).each(lo=>{(IB(Qn)?Qn.init(lo.element.dom):dW.load(Qn.scriptId,Qn.scriptUrl).then(ho=>ho(lo.element.dom,Qn.settings))).then(ho=>{Kn.on(yo=>{ho.setValue(yo)}),Kn.clear(),Un.set(ho)})})})]),j_(ko.none(),()=>Un.get().fold(()=>Kn.get().getOr(""),oo=>oo.getValue()),(oo,lo)=>{Un.get().fold(()=>Kn.set(lo),ho=>ho.setValue(lo))}),Og.self()]),components:[Xn.asSpec()]}};var xO=tinymce.util.Tools.resolve("tinymce.util.Tools");const FB=(Qn,Un)=>{const Xn=xO.explode(Un.getOption("images_file_types")),Kn=oo=>Br(Xn,lo=>ad(oo.name.toLowerCase(),`.${lo.toLowerCase()}`));return ga(cc(Qn),Kn)},fW=(Qn,Un,Xn)=>{const Kn=(jo,Jo)=>{Jo.stop()},oo=jo=>(Jo,us)=>{Qs(jo,Ps=>{Ps(Jo,us)})},lo=(jo,Jo)=>{var us;if(!Ja.isDisabled(jo)){const Ps=Jo.event.raw;yo(jo,(us=Ps.dataTransfer)===null||us===void 0?void 0:us.files)}},ho=(jo,Jo)=>{const us=Jo.event.raw.target;yo(jo,us.files)},yo=(jo,Jo)=>{Jo&&(da.setValue(jo,FB(Jo,Un)),Qa(jo,vg,{name:Qn.name}))},Co=ou({dom:{tag:"input",attributes:{type:"file",accept:"image/*"},styles:{display:"none"}},behaviours:Zr([Rl("input-file-events",[X1(Lg()),X1(ng())])])}),Ro=jo=>({uid:jo.uid,dom:{tag:"div",classes:["tox-dropzone-container"]},behaviours:Zr([LP(Xn.getOr([])),Og.self(),Ja.config({}),Ql.config({toggleClass:"dragenter",toggleOnExecute:!1}),Rl("dropzone-events",[wr("dragenter",oo([Kn,Ql.toggle])),wr("dragleave",oo([Kn,Ql.toggle])),wr("dragover",Kn),wr("drop",oo([Kn,lo])),wr(E0(),ho)])]),components:[{dom:{tag:"div",classes:["tox-dropzone"],styles:{}},components:[{dom:{tag:"p"},components:[wd(Un.translate("Drop an image here"))]},yh.sketch({dom:{tag:"button",styles:{position:"relative"},classes:["tox-button","tox-button--secondary"]},components:[wd(Un.translate("Browse for an image")),Co.asSpec()],action:Jo=>{Co.get(Jo).element.dom.click()},buttonBehaviours:Zr([sd.config({}),Lf.button(Un.isDisabled),jf()])})]}]}),Lo=Qn.label.map(jo=>yb(jo,Un)),Wo=su.parts.field({factory:{sketch:Ro}});return TE(Lo,Wo,["tox-form__group--stretched"],[])},HB=(Qn,Un)=>({dom:{tag:"div",classes:["tox-form__grid",`tox-form__grid--${Qn.columns}col`]},components:hs(Qn.items,Un.interpreter)}),FE=(Qn,Un)=>{let Xn=null,Kn=null;return{cancel:()=>{io(Xn)||(clearTimeout(Xn),Xn=null,Kn=null)},throttle:(...ho)=>{Kn=ho,io(Xn)&&(Xn=setTimeout(()=>{const yo=Kn;Xn=null,Kn=null,Qn.apply(null,yo)},Un))}}},hW=(Qn,Un)=>{let Xn=null;return{cancel:()=>{io(Xn)||(clearTimeout(Xn),Xn=null)},throttle:(...lo)=>{io(Xn)&&(Xn=setTimeout(()=>{Xn=null,Qn.apply(null,lo)},Un))}}},IP=(Qn,Un)=>{let Xn=null;const Kn=()=>{io(Xn)||(clearTimeout(Xn),Xn=null)};return{cancel:Kn,throttle:(...lo)=>{Kn(),Xn=setTimeout(()=>{Xn=null,Qn.apply(null,lo)},Un)}}},_M=ba("alloy-fake-before-tabstop"),SM=ba("alloy-fake-after-tabstop"),QB=Qn=>({dom:{tag:"div",styles:{width:"1px",height:"1px",outline:"none"},attributes:{tabindex:"0"},classes:Qn},behaviours:Zr([ol.config({ignore:!0}),sd.config({})])}),VB=(Qn,Un)=>({dom:{tag:"div",classes:["tox-navobj",...Qn.getOr([])]},components:[QB([_M]),Un,QB([SM])],behaviours:Zr([Og.childAt(1)])}),wM=(Qn,Un)=>{Qa(Qn,op(),{raw:{which:9,shiftKey:Un}})},mW=(Qn,Un)=>{const Xn=Un.element;of(Xn,_M)?wM(Qn,!0):of(Xn,SM)&&wM(Qn,!1)},Kk=Qn=>xE(Qn,["."+_M,"."+SM].join(","),sr),Jk=ba("update-dialog"),Ey=ba("update-title"),BP=ba("update-body"),CM=ba("update-footer"),kM=ba("body-send-message"),e2=ba("dialog-focus-shifted"),FP=Tr().browser,X_=FP.isSafari(),zB=FP.isFirefox(),xM=X_||zB,pW=FP.isChromium(),gW=({scrollTop:Qn,scrollHeight:Un,clientHeight:Xn})=>Math.ceil(Qn)+Xn>=Un,WB=(Qn,Un)=>Qn.scrollTo(0,Un==="bottom"?99999999:Un),bW=(Qn,Un)=>{const Xn=Qn.body;return ko.from(!/^1))?Xn:Qn.documentElement)},UB=(Qn,Un,Xn)=>{const Kn=Qn.dom;ko.from(Kn.contentDocument).fold(Xn,oo=>{let lo=0;const ho=bW(oo,Un).map(Co=>(lo=Co.scrollTop,Co)).forall(gW),yo=()=>{const Co=Kn.contentWindow;Oo(Co)&&(ho?WB(Co,"bottom"):!ho&&xM&&lo!==0&&WB(Co,lo))};X_&&Kn.addEventListener("load",yo,{once:!0}),oo.open(),oo.write(Un),oo.close(),X_||yo()})},ZB=Mr(xM,X_?500:200).map(Qn=>FE(UB,Qn)),yW=(Qn,Un)=>{const Xn=Ua(Qn.getOr(""));return{getValue:Kn=>Xn.get(),setValue:(Kn,oo)=>{if(Xn.get()!==oo){const lo=Kn.element,ho=()=>aa(lo,"srcdoc",oo);Un?ZB.fold(Mo(UB),yo=>yo.throttle)(lo,oo,ho):ho()}Xn.set(oo)}}},OW=(Qn,Un,Xn)=>{const Kn="tox-dialog__iframe",oo=Qn.transparent?[]:[`${Kn}--opaque`],lo=Qn.border?["tox-navobj-bordered"]:[],ho={...Qn.label.map(Wo=>({title:Wo})).getOr({}),...Xn.map(Wo=>({srcdoc:Wo})).getOr({}),...Qn.sandboxed?{sandbox:"allow-scripts allow-same-origin"}:{}},yo=yW(Xn,Qn.streamContent),Co=Qn.label.map(Wo=>yb(Wo,Un)),Ro=Wo=>VB(ko.from(lo),{uid:Wo.uid,dom:{tag:"iframe",attributes:ho,classes:[Kn,...oo]},behaviours:Zr([sd.config({}),ol.config({}),j_(Xn,yo.getValue,yo.setValue),Om.config({channels:{[e2]:{onReceive:(jo,Jo)=>{Jo.newFocus.each(us=>{lh(jo.element).each(Ps=>{(Oc(jo.element,us)?$d:Yu)(Ps,"tox-navobj-bordered-focus")})})}}}})])}),Lo=su.parts.field({factory:{sketch:Ro}});return TE(Co,Lo,["tox-form__group--stretched"],[])},_W=Qn=>new Promise((Un,Xn)=>{const Kn=()=>{lo(),Un(Qn)},oo=[Dh(Qn,"load",Kn),Dh(Qn,"error",()=>{lo(),Xn("Unable to load data from image: "+Qn.dom.src)})],lo=()=>Qs(oo,ho=>ho.unbind());Qn.dom.complete&&Kn()}),HP=(Qn,Un,Xn,Kn,oo)=>{const lo=Xn*oo,ho=Kn*oo,yo=Math.max(0,Qn/2-lo/2),Co=Math.max(0,Un/2-ho/2);return{left:yo.toString()+"px",top:Co.toString()+"px",width:lo.toString()+"px",height:ho.toString()+"px"}},SW=(Qn,Un,Xn)=>{const Kn=dd(Qn),oo=cu(Qn);return Math.min(Kn/Un,oo/Xn,1)},wW=(Qn,Un)=>{const Xn=Ua(Un.getOr({url:""})),Kn=ou({dom:{tag:"img",classes:["tox-imagepreview__image"],attributes:Un.map(Co=>({src:Co.url})).getOr({})}}),oo=ou({dom:{tag:"div",classes:["tox-imagepreview__container"],attributes:{role:"presentation"}},components:[Kn.asSpec()]}),lo=(Co,Ro)=>{const Lo={url:Ro.url};Ro.zoom.each(jo=>Lo.zoom=jo),Ro.cachedWidth.each(jo=>Lo.cachedWidth=jo),Ro.cachedHeight.each(jo=>Lo.cachedHeight=jo),Xn.set(Lo);const Wo=()=>{const{cachedWidth:jo,cachedHeight:Jo,zoom:us}=Lo;if(!mo(jo)&&!mo(Jo)){if(mo(us)){const er=SW(Co.element,jo,Jo);Lo.zoom=er}const Ps=HP(dd(Co.element),cu(Co.element),jo,Jo,Lo.zoom);oo.getOpt(Co).each(er=>{fu(er.element,Ps)})}};Kn.getOpt(Co).each(jo=>{const Jo=jo.element;Ro.url!==Bu(Jo,"src")&&(aa(Jo,"src",Ro.url),Yu(Co.element,"tox-imagepreview__loaded")),Wo(),_W(Jo).then(us=>{Co.getSystem().isConnected()&&($d(Co.element,"tox-imagepreview__loaded"),Lo.cachedWidth=us.dom.naturalWidth,Lo.cachedHeight=us.dom.naturalHeight,Wo())})})},ho={};Qn.height.each(Co=>ho.height=Co);const yo=Un.map(Co=>({url:Co.url,zoom:ko.from(Co.zoom),cachedWidth:ko.from(Co.cachedWidth),cachedHeight:ko.from(Co.cachedHeight)}));return{dom:{tag:"div",classes:["tox-imagepreview"],styles:ho,attributes:{role:"presentation"}},components:[oo.asSpec()],behaviours:Zr([Og.self(),j_(yo,()=>Xn.get(),lo)])}},qB=(Qn,Un)=>{const Xn="tox-label",Kn=Qn.align==="center"?[`${Xn}--center`]:[],oo=Qn.align==="end"?[`${Xn}--end`]:[],lo={dom:{tag:"label",classes:[Xn,...Kn,...oo]},components:[wd(Un.providers.translate(Qn.label))]},ho=hs(Qn.items,Un.interpreter);return{dom:{tag:"div",classes:["tox-form__group"]},components:[lo,...ho],behaviours:Zr([Og.self(),Cl.config({}),LB(ko.none()),Za.config({mode:"acyclic"})])}},EM=ba("toolbar.button.execute"),CW=Qn=>qh((Un,Xn)=>{w1(Qn,Un)(Kn=>{Qa(Un,EM,{buttonApi:Kn}),Qn.onAction(Kn)})}),Ww=ba("common-button-display-events"),QP={[Im()]:["disabling","alloy.base.behaviour","toggling","toolbar-button-events"],[Zh()]:["toolbar-button-events",Ww],[Xl()]:["focusing","alloy.base.behaviour",Ww]},TM=Qn=>ya(Qn.element,"width",qc(Qn.element,"width")),AM=(Qn,Un,Xn)=>s0(Qn,{tag:"span",classes:["tox-icon","tox-tbtn__icon-wrap"],behaviours:Xn},Un),PM=(Qn,Un)=>AM(Qn,Un,[]),Y_=(Qn,Un)=>AM(Qn,Un,[Cl.config({})]),jB=(Qn,Un,Xn)=>({dom:{tag:"span",classes:[`${Un}__select-label`]},components:[wd(Xn.translate(Qn))],behaviours:Zr([Cl.config({})])}),k1=ba("update-menu-text"),G_=ba("update-menu-icon"),$M=(Qn,Un,Xn)=>{const Kn=Ua(xo),oo=Qn.text.map(jo=>ou(jB(jo,Un,Xn.providers))),lo=Qn.icon.map(jo=>ou(Y_(jo,Xn.providers.icons))),ho=(jo,Jo)=>{const us=da.getValue(jo);return ol.focus(us),Qa(us,"keydown",{raw:Jo.event.raw}),vb.close(us),ko.some(!0)},yo=Qn.role.fold(()=>({}),jo=>({role:jo})),Co=Qn.tooltip.fold(()=>({}),jo=>{const Jo=Xn.providers.translate(jo);return{title:Jo,"aria-label":Jo}}),Ro=s0("chevron-down",{tag:"div",classes:[`${Un}__select-chevron`]},Xn.providers.icons),Lo=ba("common-button-display-events");return ou(vb.sketch({...Qn.uid?{uid:Qn.uid}:{},...yo,dom:{tag:"button",classes:[Un,`${Un}--select`].concat(hs(Qn.classes,jo=>`${Un}--${jo}`)),attributes:{...Co}},components:Hk([lo.map(jo=>jo.asSpec()),oo.map(jo=>jo.asSpec()),ko.some(Ro)]),matchWidth:!0,useMinWidth:!0,onOpen:(jo,Jo,us)=>{Qn.searchable&&EV(us)},dropdownBehaviours:Zr([...Qn.dropdownBehaviours,Lf.button(()=>Qn.disabled||Xn.providers.isDisabled()),jf(),$E.config({}),Cl.config({}),Rl("dropdown-events",[H_(Qn,Kn),_y(Qn,Kn)]),Rl(Lo,[eu((jo,Jo)=>TM(jo))]),Rl("menubutton-update-display-text",[wr(k1,(jo,Jo)=>{oo.bind(us=>us.getOpt(jo)).each(us=>{Cl.set(us,[wd(Xn.providers.translate(Jo.event.text))])})}),wr(G_,(jo,Jo)=>{lo.bind(us=>us.getOpt(jo)).each(us=>{Cl.set(us,[Y_(Jo.event.icon,Xn.providers.icons)])})})])]),eventOrder:Lc(QP,{mousedown:["focusing","alloy.base.behaviour","item-type-events","normal-dropdown-events"],[Zh()]:["toolbar-button-events","dropdown-events",Lo]}),sandboxBehaviours:Zr([Za.config({mode:"special",onLeft:ho,onRight:ho}),Rl("dropdown-sandbox-events",[wr(c5,(jo,Jo)=>{SV(jo),Jo.stop()}),wr(u5,(jo,Jo)=>{wV(jo,Jo),Jo.stop()})])]),lazySink:Xn.getSink,toggleClass:`${Un}--active`,parts:{menu:{...Dk(!1,Qn.columns,Qn.presets),fakeFocus:Qn.searchable,onHighlightItem:WD,onCollapseMenu:(jo,Jo,us)=>{Bc.getHighlighted(us).each(Ps=>{WD(jo,us,Ps)})},onDehighlightItem:xV}},getAnchorOverrides:()=>({maxHeightFunction:(jo,Jo)=>{LC()(jo,Jo-10)}}),fetch:jo=>Cm.nu(ps(Qn.fetch,jo))})).asSpec()},kW=Qn=>qn(Qn),XB=Qn=>Qn.type==="separator",xW=Qn=>Pl(Qn,"getSubmenuItems"),YB={type:"separator"},EW=(Qn,Un)=>{const Xn=za(Qn,(Kn,oo)=>kW(oo)?oo===""?Kn:oo==="|"?Kn.length>0&&!XB(Kn[Kn.length-1])?Kn.concat([YB]):Kn:Pl(Un,oo.toLowerCase())?Kn.concat([Un[oo.toLowerCase()]]):Kn:Kn.concat([oo]),[]);return Xn.length>0&&XB(Xn[Xn.length-1])&&Xn.pop(),Xn},GB=(Qn,Un)=>{const Xn=Qn.getSubmenuItems(),Kn=KB(Xn,Un),oo=Lc(Kn.menus,{[Qn.value]:Kn.items}),lo=Lc(Kn.expansions,{[Qn.value]:Qn.value});return{item:Qn,menus:oo,expansions:lo}},TW=Qn=>{const Un=Rr(Qn,"value").getOrThunk(()=>ba("generated-menu-item"));return Lc({value:Un},Qn)},KB=(Qn,Un)=>{const Xn=EW(qn(Qn)?Qn.split(" "):Qn,Un);return Ca(Xn,(Kn,oo)=>{if(xW(oo)){const lo=TW(oo),ho=GB(lo,Un);return{menus:Lc(Kn.menus,ho.menus),items:[ho.item,...Kn.items],expansions:Lc(Kn.expansions,ho.expansions)}}else return{...Kn,items:[oo,...Kn.items]}},{menus:{},expansions:{},items:[]})},AW=Qn=>Qn.search.fold(()=>({searchMode:"no-search"}),Un=>({searchMode:"search-with-field",placeholder:Un.placeholder})),PW=Qn=>Qn.search.fold(()=>({searchMode:"no-search"}),Un=>({searchMode:"search-with-results"})),t2=(Qn,Un,Xn,Kn)=>{const oo=ba("primary-menu"),lo=KB(Qn,Xn.shared.providers.menuItems());if(lo.items.length===0)return ko.none();const ho=AW(Kn),yo=LI(oo,lo.items,Un,Xn,Kn.isHorizontalMenu,ho),Co=PW(Kn),Ro=Vl(lo.menus,(Wo,jo)=>LI(jo,Wo,Un,Xn,!1,Co)),Lo=Lc(Ro,Jr(oo,yo));return ko.from(B_.tieredData(oo,Lo,lo.expansions))},RM=Qn=>!Pl(Qn,"items"),JB="data-value",eF=(Qn,Un,Xn,Kn)=>hs(Xn,oo=>RM(oo)?{type:"togglemenuitem",text:oo.text,value:oo.value,active:oo.value===Kn,onAction:()=>{da.setValue(Qn,oo.value),Qa(Qn,vg,{name:Un}),ol.focus(Qn)}}:{type:"nestedmenuitem",text:oo.text,getSubmenuItems:()=>eF(Qn,Un,oo.items,Kn)}),DM=(Qn,Un)=>gc(Qn,Xn=>RM(Xn)?Mr(Xn.value===Un,Xn):DM(Xn.items,Un)),MM=(Qn,Un,Xn)=>{const Kn=Un.shared.providers,oo=Xn.bind(Co=>DM(Qn.items,Co)).orThunk(()=>Nl(Qn.items).filter(RM)),lo=Qn.label.map(Co=>yb(Co,Kn)),ho=su.parts.field({dom:{},factory:{sketch:Co=>$M({uid:Co.uid,text:oo.map(Ro=>Ro.text),icon:ko.none(),tooltip:Qn.label,role:ko.none(),fetch:(Ro,Lo)=>{const Wo=eF(Ro,Qn.name,Qn.items,da.getValue(Ro));Lo(t2(Wo,sv.CLOSE_ON_EXECUTE,Un,{isHorizontalMenu:!1,search:ko.none()}))},onSetup:Mo(xo),getApi:Mo({}),columns:1,presets:"normal",classes:[],dropdownBehaviours:[sd.config({}),j_(oo.map(Ro=>Ro.value),Ro=>Bu(Ro.element,JB),(Ro,Lo)=>{DM(Qn.items,Lo).each(Wo=>{aa(Ro.element,JB,Wo.value),Qa(Ro,k1,{text:Wo.text})})})]},"tox-listbox",Un.shared)}}),yo={dom:{tag:"div",classes:["tox-listboxfield"]},components:[ho]};return su.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:Us([lo.toArray(),[yo]]),fieldBehaviours:Zr([Ja.config({disabled:Mo(!Qn.enabled),onDisabled:Co=>{su.getField(Co).each(Ja.disable)},onEnabled:Co=>{su.getField(Co).each(Ja.enable)}})])})},$W=(Qn,Un)=>({dom:{tag:"div",classes:Qn.classes},components:hs(Qn.items,Un.shared.interpreter)}),RW=(Qn,Un)=>{const Xn=hs(Qn.options,oo=>({dom:{tag:"option",value:oo.value,innerHtml:oo.text}})),Kn=Qn.data.map(oo=>Jr("initialValue",oo)).getOr({});return{uid:Qn.uid,dom:{tag:"select",classes:Qn.selectClasses,attributes:Qn.selectAttributes},components:Xn,behaviours:sf(Qn.selectBehaviours,[ol.config({}),da.config({store:{mode:"manual",getValue:oo=>c1(oo.element),setValue:(oo,lo)=>{const ho=Nl(Qn.options);Zs(Qn.options,Co=>Co.value===lo).isSome()?Wv(oo.element,lo):oo.element.dom.selectedIndex===-1&&lo===""&&ho.each(Co=>Wv(oo.element,Co.value))},...Kn}})])}},DW=Mp({name:"HtmlSelect",configFields:[Er("options"),Nf("selectBehaviours",[ol,da]),Gs("selectClasses",[]),Gs("selectAttributes",{}),Tc("data")],factory:RW}),HE=(Qn,Un,Xn)=>{const Kn=hs(Qn.items,Co=>({text:Un.translate(Co.text),value:Co.value})),oo=Qn.label.map(Co=>yb(Co,Un)),lo=su.parts.field({dom:{},...Xn.map(Co=>({data:Co})).getOr({}),selectAttributes:{size:Qn.size},options:Kn,factory:DW,selectBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled()}),sd.config({}),Rl("selectbox-change",[wr(E0(),(Co,Ro)=>{Qa(Co,vg,{name:Qn.name})})])])}),ho=Qn.size>1?ko.none():ko.some(s0("chevron-down",{tag:"div",classes:["tox-selectfield__icon-js"]},Un.icons)),yo={dom:{tag:"div",classes:["tox-selectfield"]},components:Us([[lo],ho.toArray()])};return su.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:Us([oo.toArray(),[yo]]),fieldBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled(),onDisabled:Co=>{su.getField(Co).each(Ja.disable)},onEnabled:Co=>{su.getField(Co).each(Ja.enable)}}),jf()])})},NM=Mo([Gs("field1Name","field1"),Gs("field2Name","field2"),Fg("onLockedChange"),Wb(["lockClass"]),Gs("locked",!1),Wg.field("coupledFieldBehaviours",[ic,da])]),MW=(Qn,Un,Xn)=>Au(Qn,Un,Xn).bind(ic.getCurrent),tF=(Qn,Un)=>Xh({factory:su,name:Qn,overrides:Xn=>({fieldBehaviours:Zr([Rl("coupled-input-behaviour",[wr(o1(),Kn=>{MW(Kn,Xn,Un).each(oo=>{Au(Kn,Xn,"lock").each(lo=>{Ql.isOn(lo)&&Xn.onLockedChange(Kn,oo,lo)})})})])])})}),LM=Mo([tF("field1","field2"),tF("field2","field1"),Xh({factory:yh,schema:[Er("dom")],name:"lock",overrides:Qn=>({buttonBehaviours:Zr([Ql.config({selected:Qn.locked,toggleClass:Qn.markers.lockClass,aria:{mode:"pressed"}})])})})]),NW=(Qn,Un,Xn,Kn)=>({uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:Wg.augment(Qn.coupledFieldBehaviours,[ic.config({find:ko.some}),da.config({store:{mode:"manual",getValue:oo=>{const lo=fO(oo,Qn,["field1","field2"]);return{[Qn.field1Name]:da.getValue(lo.field1()),[Qn.field2Name]:da.getValue(lo.field2())}},setValue:(oo,lo)=>{const ho=fO(oo,Qn,["field1","field2"]);Su(lo,Qn.field1Name)&&da.setValue(ho.field1(),lo[Qn.field1Name]),Su(lo,Qn.field2Name)&&da.setValue(ho.field2(),lo[Qn.field2Name])}}})]),apis:{getField1:oo=>Au(oo,Qn,"field1"),getField2:oo=>Au(oo,Qn,"field2"),getLock:oo=>Au(oo,Qn,"lock")}}),_g=Yh({name:"FormCoupledInputs",configFields:NM(),partFields:LM(),factory:NW,apis:{getField1:(Qn,Un)=>Qn.getField1(Un),getField2:(Qn,Un)=>Qn.getField2(Un),getLock:(Qn,Un)=>Qn.getLock(Un)}}),nF=Qn=>{const Un={"":0,px:0,pt:1,mm:1,pc:2,ex:2,em:2,ch:2,rem:2,cm:3,in:4,"%":4},Xn=oo=>oo in Un?Un[oo]:1;let Kn=Qn.value.toFixed(Xn(Qn.unit));return Kn.indexOf(".")!==-1&&(Kn=Kn.replace(/\.?0*$/,"")),Kn+Qn.unit},IM=Qn=>{const Xn=/^\s*(\d+(?:\.\d+)?)\s*(|cm|mm|in|px|pt|pc|em|ex|ch|rem|vw|vh|vmin|vmax|%)\s*$/.exec(Qn);if(Xn!==null){const Kn=parseFloat(Xn[1]),oo=Xn[2];return yl.value({value:Kn,unit:oo})}else return yl.error(Qn)},oF=(Qn,Un)=>{const Xn={"":96,px:96,pt:72,cm:2.54,pc:12,mm:25.4,in:1},Kn=oo=>Pl(Xn,oo);return Qn.unit===Un?ko.some(Qn.value):Kn(Qn.unit)&&Kn(Un)?Xn[Qn.unit]===Xn[Un]?ko.some(Qn.value):ko.some(Qn.value/Xn[Qn.unit]*Xn[Un]):ko.none()},VP=Qn=>ko.none(),sF=(Qn,Un)=>Xn=>oF(Xn,Un).map(Kn=>({value:Kn*Qn,unit:Un})),LW=(Qn,Un)=>{const Xn=IM(Qn).toOptional(),Kn=IM(Un).toOptional();return ia(Xn,Kn,(oo,lo)=>oF(oo,lo.unit).map(ho=>lo.value/ho).map(ho=>sF(ho,lo.unit)).getOr(VP)).getOr(VP)},rF=(Qn,Un)=>{let Xn=VP;const Kn=ba("ratio-event"),oo=Wo=>s0(Wo,{tag:"span",classes:["tox-icon","tox-lock-icon__"+Wo]},Un.icons),lo=_g.parts.lock({dom:{tag:"button",classes:["tox-lock","tox-button","tox-button--naked","tox-button--icon"],attributes:{title:Un.translate(Qn.label.getOr("Constrain proportions"))}},components:[oo("lock"),oo("unlock")],buttonBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled()}),jf(),sd.config({})])}),ho=Wo=>({dom:{tag:"div",classes:["tox-form__group"]},components:Wo}),yo=Wo=>su.parts.field({factory:Lw,inputClasses:["tox-textfield"],inputBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled()}),jf(),sd.config({}),Rl("size-input-events",[wr(Wu(),(jo,Jo)=>{Qa(jo,Kn,{isField1:Wo})}),wr(E0(),(jo,Jo)=>{Qa(jo,vg,{name:Qn.name})})])]),selectOnFocus:!1}),Co=Wo=>({dom:{tag:"label",classes:["tox-label"]},components:[wd(Un.translate(Wo))]}),Ro=_g.parts.field1(ho([su.parts.label(Co("Width")),yo(!0)])),Lo=_g.parts.field2(ho([su.parts.label(Co("Height")),yo(!1)]));return _g.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:[{dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:[Ro,Lo,ho([Co(m_),lo])]}],field1Name:"width",field2Name:"height",locked:!0,markers:{lockClass:"tox-locked"},onLockedChange:(Wo,jo,Jo)=>{IM(da.getValue(Wo)).each(us=>{Xn(us).each(Ps=>{da.setValue(jo,nF(Ps))})})},coupledFieldBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled(),onDisabled:Wo=>{_g.getField1(Wo).bind(su.getField).each(Ja.disable),_g.getField2(Wo).bind(su.getField).each(Ja.disable),_g.getLock(Wo).each(Ja.disable)},onEnabled:Wo=>{_g.getField1(Wo).bind(su.getField).each(Ja.enable),_g.getField2(Wo).bind(su.getField).each(Ja.enable),_g.getLock(Wo).each(Ja.enable)}}),jf(),Rl("size-input-events2",[wr(Kn,(Wo,jo)=>{const Jo=jo.event.isField1,us=Jo?_g.getField1(Wo):_g.getField2(Wo),Ps=Jo?_g.getField2(Wo):_g.getField1(Wo),er=us.map(da.getValue).getOr(""),Bs=Ps.map(da.getValue).getOr("");Xn=LW(er,Bs)})])])})},iF=(Qn,Un,Xn)=>{const Kn=Kh.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[wd(Un.translate(Qn.label))]}),oo=Kh.parts.spectrum({dom:{tag:"div",classes:["tox-slider__rail"],attributes:{role:"presentation"}}}),lo=Kh.parts.thumb({dom:{tag:"div",classes:["tox-slider__handle"],attributes:{role:"presentation"}}});return Kh.sketch({dom:{tag:"div",classes:["tox-slider"],attributes:{role:"presentation"}},model:{mode:"x",minX:Qn.min,maxX:Qn.max,getInitialValue:Mo(Xn.getOrThunk(()=>(Math.abs(Qn.max)-Math.abs(Qn.min))/2))},components:[Kn,oo,lo],sliderBehaviours:Zr([Og.self(),ol.config({})]),onChoose:(ho,yo,Co)=>{Qa(ho,vg,{name:Qn.name,value:Co})}})},IW=(Qn,Un)=>{const Xn=yo=>({dom:{tag:"th",innerHtml:Un.translate(yo)}}),Kn=yo=>({dom:{tag:"thead"},components:[{dom:{tag:"tr"},components:hs(yo,Xn)}]}),oo=yo=>({dom:{tag:"td",innerHtml:Un.translate(yo)}}),lo=yo=>({dom:{tag:"tr"},components:hs(yo,oo)}),ho=yo=>({dom:{tag:"tbody"},components:hs(yo,lo)});return{dom:{tag:"table",classes:["tox-dialog__table"]},components:[Kn(Qn.header),ho(Qn.cells)],behaviours:Zr([sd.config({}),ol.config({})])}},BM=(Qn,Un)=>{const Xn=Qn.label.map(Jo=>yb(Jo,Un)),Kn=[Ja.config({disabled:()=>Qn.disabled||Un.isDisabled()}),jf(),Za.config({mode:"execution",useEnter:Qn.multiline!==!0,useControlEnter:Qn.multiline===!0,execute:Jo=>(Wl(Jo,PE),ko.some(!0))}),Rl("textfield-change",[wr(o1(),(Jo,us)=>{Qa(Jo,vg,{name:Qn.name})}),wr(U1(),(Jo,us)=>{Qa(Jo,vg,{name:Qn.name})})]),sd.config({})],oo=Qn.validation.map(Jo=>C1.config({getRoot:us=>lh(us.element),invalidClass:"tox-invalid",validator:{validate:us=>{const Ps=da.getValue(us),er=Jo.validator(Ps);return Cm.pure(er===!0?yl.value(Ps):yl.error(er))},validateOnLoad:Jo.validateOnLoad}})).toArray(),lo=Qn.placeholder.fold(Mo({}),Jo=>({placeholder:Un.translate(Jo)})),ho=Qn.inputMode.fold(Mo({}),Jo=>({inputmode:Jo})),yo={...lo,...ho},Co=su.parts.field({tag:Qn.multiline===!0?"textarea":"input",...Qn.data.map(Jo=>({data:Jo})).getOr({}),inputAttributes:yo,inputClasses:[Qn.classname],inputBehaviours:Zr(Us([Kn,oo])),selectOnFocus:!1,factory:Lw}),Ro=Qn.multiline?{dom:{tag:"div",classes:["tox-textarea-wrap"]},components:[Co]}:Co,Wo=(Qn.flex?["tox-form__group--stretched"]:[]).concat(Qn.maximized?["tox-form-group--maximize"]:[]),jo=[Ja.config({disabled:()=>Qn.disabled||Un.isDisabled(),onDisabled:Jo=>{su.getField(Jo).each(Ja.disable)},onEnabled:Jo=>{su.getField(Jo).each(Ja.enable)}}),jf()];return TE(Xn,Ro,Wo,jo)},aF=(Qn,Un,Xn)=>BM({name:Qn.name,multiline:!1,label:Qn.label,inputMode:Qn.inputMode,placeholder:Qn.placeholder,flex:!1,disabled:!Qn.enabled,classname:"tox-textfield",validation:ko.none(),maximized:Qn.maximized,data:Xn},Un),lF=(Qn,Un,Xn)=>BM({name:Qn.name,multiline:!0,label:Qn.label,inputMode:ko.none(),placeholder:Qn.placeholder,flex:!0,disabled:!Qn.enabled,classname:"tox-textarea",validation:ko.none(),maximized:Qn.maximized,data:Xn},Un),QE=(Qn,Un)=>Un.getAnimationRoot.fold(()=>Qn.element,Xn=>Xn(Qn)),EO=Qn=>Qn.dimension.property,Uw=(Qn,Un)=>Qn.dimension.getDimension(Un),VE=(Qn,Un)=>{const Xn=QE(Qn,Un);sp(Xn,[Un.shrinkingClass,Un.growingClass])},FM=(Qn,Un)=>{Yu(Qn.element,Un.openClass),$d(Qn.element,Un.closedClass),ya(Qn.element,EO(Un),"0px"),Hf(Qn.element)},zP=(Qn,Un)=>{Yu(Qn.element,Un.closedClass),$d(Qn.element,Un.openClass),El(Qn.element,EO(Un))},cF=(Qn,Un,Xn,Kn)=>{Xn.setCollapsed(),ya(Qn.element,EO(Un),Uw(Un,Qn.element)),VE(Qn,Un),FM(Qn,Un),Un.onStartShrink(Qn),Un.onShrunk(Qn)},BW=(Qn,Un,Xn,Kn)=>{const oo=Kn.getOrThunk(()=>Uw(Un,Qn.element));Xn.setCollapsed(),ya(Qn.element,EO(Un),oo),Hf(Qn.element);const lo=QE(Qn,Un);Yu(lo,Un.growingClass),$d(lo,Un.shrinkingClass),FM(Qn,Un),Un.onStartShrink(Qn)},WP=(Qn,Un,Xn)=>{const Kn=Uw(Un,Qn.element);(Kn==="0px"?cF:BW)(Qn,Un,Xn,ko.some(Kn))},uF=(Qn,Un,Xn)=>{const Kn=QE(Qn,Un),oo=of(Kn,Un.shrinkingClass),lo=Uw(Un,Qn.element);zP(Qn,Un);const ho=Uw(Un,Qn.element);(oo?()=>{ya(Qn.element,EO(Un),lo),Hf(Qn.element)}:()=>{FM(Qn,Un)})(),Yu(Kn,Un.shrinkingClass),$d(Kn,Un.growingClass),zP(Qn,Un),ya(Qn.element,EO(Un),ho),Xn.setExpanded(),Un.onStartGrow(Qn)},FW=(Qn,Un,Xn)=>{if(Xn.isExpanded()){El(Qn.element,EO(Un));const Kn=Uw(Un,Qn.element);ya(Qn.element,EO(Un),Kn)}},HW=(Qn,Un,Xn)=>{Xn.isExpanded()||uF(Qn,Un,Xn)},dF=(Qn,Un,Xn)=>{Xn.isExpanded()&&WP(Qn,Un,Xn)},QW=(Qn,Un,Xn)=>{Xn.isExpanded()&&cF(Qn,Un,Xn)},fF=(Qn,Un,Xn)=>Xn.isExpanded(),VW=(Qn,Un,Xn)=>Xn.isCollapsed(),HM=(Qn,Un,Xn)=>{const Kn=QE(Qn,Un);return of(Kn,Un.growingClass)===!0},hF=(Qn,Un,Xn)=>{const Kn=QE(Qn,Un);return of(Kn,Un.shrinkingClass)===!0};var zW=Object.freeze({__proto__:null,refresh:FW,grow:HW,shrink:dF,immediateShrink:QW,hasGrown:fF,hasShrunk:VW,isGrowing:HM,isShrinking:hF,isTransitioning:(Qn,Un,Xn)=>HM(Qn,Un)||hF(Qn,Un),toggleGrow:(Qn,Un,Xn)=>{(Xn.isExpanded()?WP:uF)(Qn,Un,Xn)},disableTransitions:VE,immediateGrow:(Qn,Un,Xn)=>{Xn.isExpanded()||(zP(Qn,Un),ya(Qn.element,EO(Un),Uw(Un,Qn.element)),VE(Qn,Un),Xn.setExpanded(),Un.onStartGrow(Qn),Un.onGrown(Qn))}}),UW=Object.freeze({__proto__:null,exhibit:(Qn,Un,Xn)=>{const Kn=Un.expanded;return bm(Kn?{classes:[Un.openClass],styles:{}}:{classes:[Un.closedClass],styles:Jr(Un.dimension.property,"0px")})},events:(Qn,Un)=>Jc([rg(V1(),(Xn,Kn)=>{Kn.event.raw.propertyName===Qn.dimension.property&&(VE(Xn,Qn),Un.isExpanded()&&El(Xn.element,Qn.dimension.property),(Un.isExpanded()?Qn.onGrown:Qn.onShrunk)(Xn))})])}),mF=[Er("closedClass"),Er("openClass"),Er("shrinkingClass"),Er("growingClass"),Tc("getAnimationRoot"),rc("onShrunk"),rc("onStartShrink"),rc("onGrown"),rc("onStartGrow"),Gs("expanded",!1),Kf("dimension",jl("property",{width:[tu("property","width"),tu("getDimension",Qn=>dd(Qn)+"px")],height:[tu("property","height"),tu("getDimension",Qn=>cu(Qn)+"px")]}))],ZW=Object.freeze({__proto__:null,init:Qn=>{const Un=Ua(Qn.expanded),Xn=()=>"expanded: "+Un.get();return ph({isExpanded:()=>Un.get()===!0,isCollapsed:()=>Un.get()===!1,setCollapsed:ps(Un.set,!1),setExpanded:ps(Un.set,!0),readState:Xn})}});const jg=Of({fields:mF,name:"sliding",active:UW,apis:zW,state:ZW}),QM=Qn=>({isEnabled:()=>!Ja.isDisabled(Qn),setEnabled:Un=>Ja.set(Qn,!Un),setActive:Un=>{const Xn=Qn.element;Un?($d(Xn,"tox-tbtn--enabled"),aa(Xn,"aria-pressed",!0)):(Yu(Xn,"tox-tbtn--enabled"),_s(Xn,"aria-pressed"))},isActive:()=>of(Qn.element,"tox-tbtn--enabled"),setText:Un=>{Qa(Qn,k1,{text:Un})},setIcon:Un=>Qa(Qn,G_,{icon:Un})}),zE=(Qn,Un,Xn,Kn,oo=!0)=>$M({text:Qn.text,icon:Qn.icon,tooltip:Qn.tooltip,searchable:Qn.search.isSome(),role:Kn,fetch:(lo,ho)=>{const yo={pattern:Qn.search.isSome()?TV(lo):""};Qn.fetch(Co=>{ho(t2(Co,sv.CLOSE_ON_EXECUTE,Xn,{isHorizontalMenu:!1,search:Qn.search}))},yo,QM(lo))},onSetup:Qn.onSetup,getApi:QM,columns:1,presets:"normal",classes:[],dropdownBehaviours:[...oo?[sd.config({})]:[]]},Un,Xn.shared),qW=(Qn,Un,Xn)=>{const Kn=lo=>ho=>{const yo=!ho.isActive();ho.setActive(yo),lo.storage.set(yo),Xn.shared.getSink().each(Co=>{Un().getOpt(Co).each(Ro=>{Cd(Ro.element),Qa(Ro,Cy,{name:lo.name,value:lo.storage.get()})})})},oo=lo=>ho=>{ho.setActive(lo.storage.get())};return lo=>{lo(hs(Qn,ho=>{const yo=ho.text.fold(()=>({}),Co=>({text:Co}));return{type:ho.type,active:!1,...yo,onAction:Kn(ho),onSetup:oo(ho)}}))}},pF=Qn=>({dom:{tag:"span",classes:["tox-tree__label"],attributes:{title:Qn,"aria-label":Qn}},components:[wd(Qn)]}),VM=ba("leaf-label-event-id"),UP=({leaf:Qn,onLeafAction:Un,visible:Xn,treeId:Kn,selectedId:oo,backstage:lo})=>{const ho=Qn.menu.map(Co=>zE(Co,"tox-mbtn",lo,ko.none(),Xn)),yo=[pF(Qn.title)];return ho.each(Co=>yo.push(Co)),yh.sketch({dom:{tag:"div",classes:["tox-tree--leaf__label","tox-trbtn"].concat(Xn?["tox-tree--leaf__label--visible"]:[])},components:yo,role:"treeitem",action:Co=>{Un(Qn.id),Co.getSystem().broadcastOn([`update-active-item-${Kn}`],{value:Qn.id})},eventOrder:{[op()]:[VM,"keying"]},buttonBehaviours:Zr([...Xn?[sd.config({})]:[],Ql.config({toggleClass:"tox-trbtn--enabled",toggleOnExecute:!1,aria:{mode:"selected"}}),Om.config({channels:{[`update-active-item-${Kn}`]:{onReceive:(Co,Ro)=>{(Ro.value===Qn.id?Ql.on:Ql.off)(Co)}}}}),Rl(VM,[eu((Co,Ro)=>{oo.each(Lo=>{(Lo===Qn.id?Ql.on:Ql.off)(Co)})}),wr(op(),(Co,Ro)=>{const Lo=Ro.event.raw.code==="ArrowLeft",Wo=Ro.event.raw.code==="ArrowRight";Lo?(Hm(Co.element,".tox-tree--directory").each(jo=>{Co.getSystem().getByDom(jo).each(Jo=>{GO(jo,".tox-tree--directory__label").each(us=>{Jo.getSystem().getByDom(us).each(ol.focus)})})}),Ro.stop()):Wo&&Ro.stop()})])])})},gF=(Qn,Un,Xn)=>s0(Qn,{tag:"span",classes:["tox-tree__icon-wrap","tox-icon"],behaviours:Xn},Un),ZP=(Qn,Un)=>gF(Qn,Un,[]),bF=ba("directory-label-event-id"),jW=({directory:Qn,visible:Un,noChildren:Xn,backstage:Kn})=>{const oo=Qn.menu.map(yo=>zE(yo,"tox-mbtn",Kn,ko.none())),lo=[{dom:{tag:"div",classes:["tox-chevron"]},components:[ZP("chevron-right",Kn.shared.providers.icons)]},pF(Qn.title)];oo.each(yo=>{lo.push(yo)});const ho=yo=>{Hm(yo.element,".tox-tree--directory").each(Co=>{yo.getSystem().getByDom(Co).each(Ro=>{const Lo=!Ql.isOn(Ro);Ql.toggle(Ro),Qa(yo,"expand-tree-node",{expanded:Lo,node:Qn.id})})})};return yh.sketch({dom:{tag:"div",classes:["tox-tree--directory__label","tox-trbtn"].concat(Un?["tox-tree--directory__label--visible"]:[])},components:lo,action:ho,eventOrder:{[op()]:[bF,"keying"]},buttonBehaviours:Zr([...Un?[sd.config({})]:[],Rl(bF,[wr(op(),(yo,Co)=>{const Ro=Co.event.raw.code==="ArrowRight",Lo=Co.event.raw.code==="ArrowLeft";Ro&&Xn&&Co.stop(),(Ro||Lo)&&Hm(yo.element,".tox-tree--directory").each(Wo=>{yo.getSystem().getByDom(Wo).each(jo=>{!Ql.isOn(jo)&&Ro||Ql.isOn(jo)&&Lo?(ho(yo),Co.stop()):Lo&&!Ql.isOn(jo)&&(Hm(jo.element,".tox-tree--directory").each(Jo=>{GO(Jo,".tox-tree--directory__label").each(us=>{jo.getSystem().getByDom(us).each(ol.focus)})}),Co.stop())})})})])])})},XW=({children:Qn,onLeafAction:Un,visible:Xn,treeId:Kn,expandedIds:oo,selectedId:lo,backstage:ho})=>({dom:{tag:"div",classes:["tox-tree--directory__children"]},components:Qn.map(yo=>yo.type==="leaf"?UP({leaf:yo,selectedId:lo,onLeafAction:Un,visible:Xn,treeId:Kn,backstage:ho}):qP({directory:yo,expandedIds:oo,selectedId:lo,onLeafAction:Un,labelTabstopping:Xn,treeId:Kn,backstage:ho})),behaviours:Zr([jg.config({dimension:{property:"height"},closedClass:"tox-tree--directory__children--closed",openClass:"tox-tree--directory__children--open",growingClass:"tox-tree--directory__children--growing",shrinkingClass:"tox-tree--directory__children--shrinking",expanded:Xn}),Cl.config({})])}),YW=ba("directory-event-id"),qP=({directory:Qn,onLeafAction:Un,labelTabstopping:Xn,treeId:Kn,backstage:oo,expandedIds:lo,selectedId:ho})=>{const{children:yo}=Qn,Co=Ua(lo),Ro=Wo=>yo.map(jo=>jo.type==="leaf"?UP({leaf:jo,selectedId:ho,onLeafAction:Un,visible:Wo,treeId:Kn,backstage:oo}):qP({directory:jo,expandedIds:Co.get(),selectedId:ho,onLeafAction:Un,labelTabstopping:Wo,treeId:Kn,backstage:oo})),Lo=lo.includes(Qn.id);return{dom:{tag:"div",classes:["tox-tree--directory"],attributes:{role:"treeitem"}},components:[jW({directory:Qn,visible:Xn,noChildren:Qn.children.length===0,backstage:oo}),XW({children:yo,expandedIds:lo,selectedId:ho,onLeafAction:Un,visible:Lo,treeId:Kn,backstage:oo})],behaviours:Zr([Rl(YW,[eu((Wo,jo)=>{Ql.set(Wo,Lo)}),wr("expand-tree-node",(Wo,jo)=>{const{expanded:Jo,node:us}=jo.event;Co.set(Jo?[...Co.get(),us]:Co.get().filter(Ps=>Ps!==us))})]),Ql.config({...Qn.children.length>0?{aria:{mode:"expanded"}}:{},toggleClass:"tox-tree--directory--expanded",onToggled:(Wo,jo)=>{const Jo=Wo.components()[1],us=Ro(jo);jo?jg.grow(Jo):jg.shrink(Jo),Cl.set(Jo,us)}})])}},GW=ba("tree-event-id"),KW=(Qn,Un)=>{const Xn=Qn.onLeafAction.getOr(xo),Kn=Qn.onToggleExpand.getOr(xo),oo=Qn.defaultExpandedIds,lo=Ua(oo),ho=Ua(Qn.defaultSelectedId),yo=ba("tree-id"),Co=(Ro,Lo)=>Qn.items.map(Wo=>Wo.type==="leaf"?UP({leaf:Wo,selectedId:Ro,onLeafAction:Xn,visible:!0,treeId:yo,backstage:Un}):qP({directory:Wo,selectedId:Ro,onLeafAction:Xn,expandedIds:Lo,labelTabstopping:!0,treeId:yo,backstage:Un}));return{dom:{tag:"div",classes:["tox-tree"],attributes:{role:"tree"}},components:Co(ho.get(),lo.get()),behaviours:Zr([Za.config({mode:"flow",selector:".tox-tree--leaf__label--visible, .tox-tree--directory__label--visible",cycles:!1}),Rl(GW,[wr("expand-tree-node",(Ro,Lo)=>{const{expanded:Wo,node:jo}=Lo.event;lo.set(Wo?[...lo.get(),jo]:lo.get().filter(Jo=>Jo!==jo)),Kn(lo.get(),{expanded:Wo,node:jo})})]),Om.config({channels:{[`update-active-item-${yo}`]:{onReceive:(Ro,Lo)=>{ho.set(ko.some(Lo.value)),Cl.set(Ro,Co(ko.some(Lo.value),lo.get()))}}}}),Cl.config({})])}};var vF=Object.freeze({__proto__:null,events:(Qn,Un)=>{const Kn=Qn.stream.streams.setup(Qn,Un);return Jc([wr(Qn.event,Kn),ig(()=>Un.cancel())].concat(Qn.cancelEvent.map(oo=>[wr(oo,()=>Un.cancel())]).getOr([])))}});const zM=Qn=>{const Un=Ua(null);return ph({readState:()=>({timer:Un.get()!==null?"set":"unset"}),setTimer:lo=>{Un.set(lo)},cancel:()=>{const lo=Un.get();lo!==null&&lo.cancel()}})};var JW=Object.freeze({__proto__:null,throttle:zM,init:Qn=>Qn.stream.streams.state(Qn)});const yF=(Qn,Un)=>{const Xn=Qn.stream,Kn=IP(Qn.onStream,Xn.delay);return Un.setTimer(Kn),(oo,lo)=>{Kn.throttle(oo,lo),Xn.stopEvent&&lo.stop()}};var eU=[Kf("stream",jl("mode",{throttle:[Er("delay"),Gs("stopEvent",!0),tu("streams",{setup:yF,state:zM})]})),Gs("event","input"),Tc("cancelEvent"),Fg("onStream")];const WM=Of({fields:eU,name:"streaming",active:vF,state:JW}),cl=(Qn,Un,Xn)=>{const Kn=da.getValue(Xn);da.setValue(Un,Kn),UM(Un)},n2=(Qn,Un)=>{const Xn=Qn.element,Kn=c1(Xn),oo=Xn.dom;Bu(Xn,"type")!=="number"&&Un(oo,Kn)},UM=Qn=>{n2(Qn,(Un,Xn)=>Un.setSelectionRange(Xn.length,Xn.length))},OF=(Qn,Un)=>{n2(Qn,(Xn,Kn)=>Xn.setSelectionRange(Un,Kn.length))},_F=(Qn,Un,Xn)=>{if(Qn.selectsOver){const Kn=da.getValue(Un),oo=Qn.getDisplayText(Kn),lo=da.getValue(Xn);return Qn.getDisplayText(lo).indexOf(oo)===0?ko.some(()=>{cl(Qn,Un,Xn),OF(Un,oo.length)}):ko.none()}else return ko.none()},jP=Mo("alloy.typeahead.itemexecute"),SF=(Qn,Un,Xn,Kn)=>{const oo=(Wo,jo,Jo)=>{Qn.previewing.set(!1);const us=Gd.getCoupled(Wo,"sandbox");if(uc.isOpen(us))ic.getCurrent(us).each(Ps=>{Bc.getHighlighted(Ps).fold(()=>{Jo(Ps)},()=>{LO(us,Ps.element,"keydown",jo)})});else{const Ps=er=>{ic.getCurrent(er).each(Jo)};pP(Qn,ho(Wo),Wo,us,Kn,Ps,hp.HighlightMenuAndItem).get(xo)}},lo=UR(Qn),ho=Wo=>jo=>jo.map(Jo=>{const us=gd(Jo.menus),Ps=fs(us,Bs=>ga(Bs.items,Ns=>Ns.type==="item"));return da.getState(Wo).update(hs(Ps,Bs=>Bs.data)),Jo}),yo=Wo=>ic.getCurrent(Wo),Co="typeaheadevents",Ro=[ol.config({}),da.config({onSetValue:Qn.onSetValue,store:{mode:"dataset",getDataKey:Wo=>c1(Wo.element),getFallbackEntry:Wo=>({value:Wo,meta:{}}),setValue:(Wo,jo)=>{Wv(Wo.element,Qn.model.getDisplayText(jo))},...Qn.initialData.map(Wo=>Jr("initialValue",Wo)).getOr({})}}),WM.config({stream:{mode:"throttle",delay:Qn.responseTime,stopEvent:!1},onStream:(Wo,jo)=>{const Jo=Gd.getCoupled(Wo,"sandbox");if(ol.isFocused(Wo)&&c1(Wo.element).length>=Qn.minChars){const Ps=yo(Jo).bind(Bs=>Bc.getHighlighted(Bs).map(da.getValue));Qn.previewing.set(!0);const er=Bs=>{yo(Jo).each(Ns=>{Ps.fold(()=>{Qn.model.selectsOver&&Bc.highlightFirst(Ns)},Xs=>{Bc.highlightBy(Ns,Hr=>da.getValue(Hr).value===Xs.value),Bc.getHighlighted(Ns).orThunk(()=>(Bc.highlightFirst(Ns),ko.none()))})})};pP(Qn,ho(Wo),Wo,Jo,Kn,er,hp.HighlightJustMenu).get(xo)}},cancelEvent:Hy()}),Za.config({mode:"special",onDown:(Wo,jo)=>(oo(Wo,jo,Bc.highlightFirst),ko.some(!0)),onEscape:Wo=>{const jo=Gd.getCoupled(Wo,"sandbox");return uc.isOpen(jo)?(uc.close(jo),ko.some(!0)):ko.none()},onUp:(Wo,jo)=>(oo(Wo,jo,Bc.highlightLast),ko.some(!0)),onEnter:Wo=>{const jo=Gd.getCoupled(Wo,"sandbox"),Jo=uc.isOpen(jo);if(Jo&&!Qn.previewing.get())return yo(jo).bind(us=>Bc.getHighlighted(us)).map(us=>(Qa(Wo,jP(),{item:us}),!0));{const us=da.getValue(Wo);return Wl(Wo,Hy()),Qn.onExecute(jo,Wo,us),Jo&&uc.close(jo),ko.some(!0)}}}),Ql.config({toggleClass:Qn.markers.openClass,aria:{mode:"expanded"}}),Gd.config({others:{sandbox:Wo=>VD(Qn,Wo,{onOpen:()=>Ql.on(Wo),onClose:()=>{Qn.lazyTypeaheadComp.get().each(jo=>_s(jo.element,"aria-activedescendant")),Ql.off(Wo)}})}}),Rl(Co,[eu(Wo=>{Qn.lazyTypeaheadComp.set(ko.some(Wo))}),ig(Wo=>{Qn.lazyTypeaheadComp.set(ko.none())}),qh(Wo=>{const jo=xo;QD(Qn,ho(Wo),Wo,Kn,jo,hp.HighlightMenuAndItem).get(xo)}),wr(jP(),(Wo,jo)=>{const Jo=Gd.getCoupled(Wo,"sandbox");cl(Qn.model,Wo,jo.event.item),Wl(Wo,Hy()),Qn.onItemExecute(Wo,Jo,jo.event.item,da.getValue(Wo)),uc.close(Jo),UM(Wo)})].concat(Qn.dismissOnBlur?[wr(W1(),Wo=>{const jo=Gd.getCoupled(Wo,"sandbox");dg(jo.element).isNone()&&uc.close(jo)})]:[]))],Lo={[xp()]:[da.name(),WM.name(),Co],...Qn.eventOrder};return{uid:Qn.uid,dom:VA(Lc(Qn,{inputAttributes:{role:"combobox","aria-autocomplete":"list","aria-haspopup":"true"}})),behaviours:{...lo,...sf(Qn.typeaheadBehaviours,Ro)},eventOrder:Lo}},dG=Mo([Tc("lazySink"),Er("fetch"),Gs("minChars",5),Gs("responseTime",1e3),rc("onOpen"),Gs("getHotspot",ko.some),Gs("getAnchorOverrides",Mo({})),Gs("layouts",ko.none()),Gs("eventOrder",{}),Kp("model",{},[Gs("getDisplayText",Qn=>Qn.meta!==void 0&&Qn.meta.text!==void 0?Qn.meta.text:Qn.value),Gs("selectsOver",!0),Gs("populateFromBrowse",!0)]),rc("onSetValue"),Vm("onExecute"),rc("onItemExecute"),Gs("inputClasses",[]),Gs("inputAttributes",{}),Gs("inputStyles",{}),Gs("matchWidth",!0),Gs("useMinWidth",!1),Gs("dismissOnBlur",!0),Wb(["openClass"]),Tc("initialData"),Nf("typeaheadBehaviours",[ol,da,WM,Za,Ql,Gd]),pu("lazyTypeaheadComp",()=>Ua(ko.none)),pu("previewing",()=>Ua(!0))].concat(fE()).concat(zD())),WE=Mo([v1({schema:[qy()],name:"menu",overrides:Qn=>({fakeFocus:!0,onHighlightItem:(Un,Xn,Kn)=>{Qn.previewing.get()?Qn.lazyTypeaheadComp.get().each(oo=>{_F(Qn.model,oo,Kn).fold(()=>{Qn.model.selectsOver?(Bc.dehighlight(Xn,Kn),Qn.previewing.set(!0)):Qn.previewing.set(!1)},lo=>{lo(),Qn.previewing.set(!1)})}):Qn.lazyTypeaheadComp.get().each(oo=>{Qn.model.populateFromBrowse&&cl(Qn.model,oo,Kn),Uo(Kn.element,"id").each(lo=>aa(oo.element,"aria-activedescendant",lo))})},onExecute:(Un,Xn)=>Qn.lazyTypeaheadComp.get().map(Kn=>(Qa(Kn,jP(),{item:Xn}),!0)),onHover:(Un,Xn)=>{Qn.previewing.set(!1),Qn.lazyTypeaheadComp.get().each(Kn=>{Qn.model.populateFromBrowse&&cl(Qn.model,Kn,Xn)})}})})]),tU=Yh({name:"Typeahead",configFields:dG(),partFields:WE(),factory:SF}),Ob=Qn=>({...Qn,toCached:()=>Ob(Qn.toCached()),bindFuture:Co=>Ob(Qn.bind(Ro=>Ro.fold(Lo=>Cm.pure(yl.error(Lo)),Lo=>Co(Lo)))),bindResult:Co=>Ob(Qn.map(Ro=>Ro.bind(Co))),mapResult:Co=>Ob(Qn.map(Ro=>Ro.map(Co))),mapError:Co=>Ob(Qn.map(Ro=>Ro.mapError(Co))),foldResult:(Co,Ro)=>Qn.map(Lo=>Lo.fold(Co,Ro)),withTimeout:(Co,Ro)=>Ob(Cm.nu(Lo=>{let Wo=!1;const jo=setTimeout(()=>{Wo=!0,Lo(yl.error(Ro()))},Co);Qn.get(Jo=>{Wo||(clearTimeout(jo),Lo(Jo))})}))}),wF=Qn=>Ob(Cm.nu(Qn)),CF=Qn=>Ob(Cm.pure(yl.value(Qn))),sU={nu:wF,wrap:Ob,pure:CF,value:CF,error:Qn=>Ob(Cm.pure(yl.error(Qn))),fromResult:Qn=>Ob(Cm.pure(Qn)),fromFuture:Qn=>Ob(Qn.map(yl.value)),fromPromise:Qn=>wF(Un=>{Qn.then(Xn=>{Un(yl.value(Xn))},Xn=>{Un(yl.error(Xn))})})},XP=(Qn,Un,Xn=[],Kn,oo,lo)=>{const ho=Un.fold(()=>({}),Ro=>({action:Ro})),yo={buttonBehaviours:Zr([Lf.button(()=>!Qn.enabled||lo.isDisabled()),jf(),sd.config({}),Rl("button press",[mS("click"),mS("mousedown")])].concat(Xn)),eventOrder:{click:["button press","alloy.base.behaviour"],mousedown:["button press","alloy.base.behaviour"]},...ho},Co=Lc(yo,{dom:Kn});return Lc(Co,{components:oo})},rU=(Qn,Un,Xn,Kn=[])=>{const oo=Qn.tooltip.map(Co=>({"aria-label":Xn.translate(Co),title:Xn.translate(Co)})).getOr({}),lo={tag:"button",classes:["tox-tbtn"],attributes:oo},ho=Qn.icon.map(Co=>PM(Co,Xn.icons)),yo=Hk([ho]);return XP(Qn,Un,Kn,lo,yo,Xn)},ZM=Qn=>{switch(Qn){case"primary":return["tox-button"];case"toolbar":return["tox-tbtn"];case"secondary":default:return["tox-button","tox-button--secondary"]}},xF=(Qn,Un,Xn,Kn=[],oo=[])=>{const lo=Xn.translate(Qn.text),ho=Qn.icon.map(jo=>PM(jo,Xn.icons)),yo=[ho.getOrThunk(()=>wd(lo))],Co=Qn.buttonType.getOr(!Qn.primary&&!Qn.borderless?"secondary":"primary"),Wo={tag:"button",classes:[...ZM(Co),...ho.isSome()?["tox-button--icon"]:[],...Qn.borderless?["tox-button--naked"]:[],...oo],attributes:{title:lo}};return XP(Qn,Un,Kn,Wo,yo,Xn)},qM=(Qn,Un,Xn,Kn=[],oo=[])=>{const lo=xF(Qn,ko.some(Un),Xn,Kn,oo);return yh.sketch(lo)},EF=(Qn,Un)=>Xn=>{Un==="custom"?Qa(Xn,Cy,{name:Qn,value:{}}):Un==="submit"?Wl(Xn,PE):Un==="cancel"?Wl(Xn,U_):console.error("Unknown button type: ",Un)},iU=(Qn,Un)=>Un==="menu",aU=(Qn,Un)=>Un==="custom"||Un==="cancel"||Un==="submit",lU=(Qn,Un)=>Un==="togglebutton",cU=(Qn,Un)=>{var Xn,Kn;const oo=Qn.icon.map(Ns=>Y_(Ns,Un.icons)).map(ou),lo=Ns=>{Qa(Ns,Cy,{name:Qn.name,value:{setIcon:Xs=>{oo.map(Hr=>Hr.getOpt(Ns).each(kr=>{Cl.set(kr,[Y_(Xs,Un.icons)])}))}}})},ho=Qn.buttonType.getOr(Qn.primary?"primary":"secondary"),yo={...Qn,name:(Xn=Qn.name)!==null&&Xn!==void 0?Xn:"",primary:ho==="primary",tooltip:ko.from(Qn.tooltip),enabled:(Kn=Qn.enabled)!==null&&Kn!==void 0?Kn:!1,borderless:!1},Co=yo.tooltip.map(Ns=>({"aria-label":Un.translate(Ns),title:Un.translate(Ns)})).getOr({}),Ro=ZM(ho??"secondary"),Lo=Qn.icon.isSome()&&Qn.text.isSome(),Wo={tag:"button",classes:[...Ro.concat(Qn.icon.isSome()?["tox-button--icon"]:[]),...Qn.active?["tox-button--enabled"]:[],...Lo?["tox-button--icon-and-text"]:[]],attributes:Co},jo=[],Jo=Un.translate(Qn.text.getOr("")),us=wd(Jo),er=[...Hk([oo.map(Ns=>Ns.asSpec())]),...Qn.text.isSome()?[us]:[]],Bs=XP(yo,ko.some(lo),jo,Wo,er,Un);return yh.sketch(Bs)},YP=(Qn,Un,Xn)=>{if(iU(Qn,Un)){const Kn=()=>ho,oo=Qn,lo={...Qn,type:"menubutton",search:ko.none(),onSetup:yo=>(yo.setEnabled(Qn.enabled),xo),fetch:qW(oo.items,Kn,Xn)},ho=ou(zE(lo,"tox-tbtn",Xn,ko.none()));return ho.asSpec()}else if(aU(Qn,Un)){const Kn=EF(Qn.name,Un),oo={...Qn,borderless:!1};return qM(oo,Kn,Xn.shared.providers,[])}else{if(lU(Qn,Un))return cU(Qn,Xn.shared.providers);throw console.error("Unknown footer button type: ",Un),new Error("Unknown footer button type")}},uU=(Qn,Un)=>{const Xn=EF(Qn.name,"custom");return GV(ko.none(),su.parts.field({factory:yh,...xF(Qn,ko.some(Xn),Un,[LP(""),Og.self()])}))},dU={type:"separator"},fU=Qn=>({type:"menuitem",value:Qn.url,text:Qn.title,meta:{attach:Qn.attach},onAction:xo}),jM=(Qn,Un)=>({type:"menuitem",value:Un,text:Qn,meta:{attach:void 0},onAction:xo}),hU=Qn=>hs(Qn,fU),TF=(Qn,Un)=>ga(Un,Xn=>Xn.type===Qn),AF=(Qn,Un)=>hU(TF(Qn,Un)),mU=Qn=>AF("header",Qn.targets),pU=Qn=>AF("anchor",Qn.targets),gU=Qn=>ko.from(Qn.anchorTop).map(Un=>jM("",Un)).toArray(),bU=Qn=>ko.from(Qn.anchorBottom).map(Un=>jM("",Un)).toArray(),vU=Qn=>hs(Qn,Un=>jM(Un,Un)),PF=Qn=>za(Qn,(Un,Xn)=>Un.length===0||Xn.length===0?Un.concat(Xn):Un.concat(dU,Xn),[]),XM=(Qn,Un)=>{const Xn=Qn.toLowerCase();return ga(Un,Kn=>{var oo;const lo=Kn.meta!==void 0&&Kn.meta.text!==void 0?Kn.meta.text:Kn.text,ho=(oo=Kn.value)!==null&&oo!==void 0?oo:"";return xc(lo.toLowerCase(),Xn)||xc(ho.toLowerCase(),Xn)})},$F=(Qn,Un,Xn)=>{var Kn,oo;const lo=da.getValue(Un),ho=(oo=(Kn=lo==null?void 0:lo.meta)===null||Kn===void 0?void 0:Kn.text)!==null&&oo!==void 0?oo:lo.value;return Xn.getLinkInformation().fold(()=>[],Co=>{const Ro=XM(ho,vU(Xn.getHistory(Qn)));return Qn==="file"?PF([Ro,XM(ho,mU(Co)),XM(ho,Us([gU(Co),pU(Co),bU(Co)]))]):Ro})},RF=ba("aria-invalid"),DF=(Qn,Un,Xn,Kn)=>{const oo=Un.shared.providers,lo=Ns=>{const Xs=da.getValue(Ns);Xn.addToHistory(Xs.value,Qn.filetype)},ho={...Kn.map(Ns=>({initialData:Ns})).getOr({}),dismissOnBlur:!0,inputClasses:["tox-textfield"],sandboxClasses:["tox-dialog__popups"],inputAttributes:{"aria-errormessage":RF,type:"url"},minChars:0,responseTime:0,fetch:Ns=>{const Xs=$F(Qn.filetype,Ns,Xn),Hr=t2(Xs,sv.BUBBLE_TO_SANDBOX,Un,{isHorizontalMenu:!1,search:ko.none()});return Cm.pure(Hr)},getHotspot:Ns=>us.getOpt(Ns),onSetValue:(Ns,Xs)=>{Ns.hasConfigured(C1)&&C1.run(Ns).get(xo)},typeaheadBehaviours:Zr([...Xn.getValidationHandler().map(Ns=>C1.config({getRoot:Xs=>lh(Xs.element),invalidClass:"tox-control-wrap--status-invalid",notify:{onInvalid:(Xs,Hr)=>{Lo.getOpt(Xs).each(kr=>{aa(kr.element,"title",oo.translate(Hr))})}},validator:{validate:Xs=>{const Hr=da.getValue(Xs);return sU.nu(kr=>{Ns({type:Qn.filetype,url:Hr.value},Or=>{if(Or.status==="invalid"){const qr=yl.error(Or.message);kr(qr)}else{const qr=yl.value(Or.message);kr(qr)}})})},validateOnLoad:!1}})).toArray(),Ja.config({disabled:()=>!Qn.enabled||oo.isDisabled()}),sd.config({}),Rl("urlinput-events",[wr(o1(),Ns=>{const Xs=c1(Ns.element),Hr=Xs.trim();Hr!==Xs&&Wv(Ns.element,Hr),Qn.filetype==="file"&&Qa(Ns,vg,{name:Qn.name})}),wr(E0(),Ns=>{Qa(Ns,vg,{name:Qn.name}),lo(Ns)}),wr(U1(),Ns=>{Qa(Ns,vg,{name:Qn.name}),lo(Ns)})])]),eventOrder:{[o1()]:["streaming","urlinput-events","invalidating"]},model:{getDisplayText:Ns=>Ns.value,selectsOver:!1,populateFromBrowse:!1},markers:{openClass:"tox-textfield--popup-open"},lazySink:Un.shared.getSink,parts:{menu:Dk(!1,1,"normal")},onExecute:(Ns,Xs,Hr)=>{Qa(Xs,PE,{})},onItemExecute:(Ns,Xs,Hr,kr)=>{lo(Ns),Qa(Ns,vg,{name:Qn.name})}},yo=su.parts.field({...ho,factory:tU}),Co=Qn.label.map(Ns=>yb(Ns,oo)),Lo=ou(((Ns,Xs,Hr=Ns,kr=Ns)=>s0(Hr,{tag:"div",classes:["tox-icon","tox-control-wrap__status-icon-"+Ns],attributes:{title:oo.translate(kr),"aria-live":"polite",...Xs.fold(()=>({}),Or=>({id:Or}))}},oo.icons))("invalid",ko.some(RF),"warning")),Wo=ou({dom:{tag:"div",classes:["tox-control-wrap__status-icon-wrap"]},components:[Lo.asSpec()]}),jo=Xn.getUrlPicker(Qn.filetype),Jo=ba("browser.url.event"),us=ou({dom:{tag:"div",classes:["tox-control-wrap"]},components:[yo,Wo.asSpec()],behaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||oo.isDisabled()})])}),Ps=ou(qM({name:Qn.name,icon:ko.some("browse"),text:Qn.picker_text.or(Qn.label).getOr(""),enabled:Qn.enabled,primary:!1,buttonType:ko.none(),borderless:!0},Ns=>Wl(Ns,Jo),oo,[],["tox-browse-url"])),er=()=>({dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:Us([[us.asSpec()],jo.map(()=>Ps.asSpec()).toArray()])}),Bs=Ns=>{ic.getCurrent(Ns).each(Xs=>{const Hr=da.getValue(Xs),kr={fieldname:Qn.name,...Hr};jo.each(Or=>{Or(kr).get(qr=>{da.setValue(Xs,qr),Qa(Ns,vg,{name:Qn.name})})})})};return su.sketch({dom:tG(),components:Co.toArray().concat([er()]),fieldBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||oo.isDisabled(),onDisabled:Ns=>{su.getField(Ns).each(Ja.disable),Ps.getOpt(Ns).each(Ja.disable)},onEnabled:Ns=>{su.getField(Ns).each(Ja.enable),Ps.getOpt(Ns).each(Ja.enable)}}),jf(),Rl("url-input-events",[wr(Jo,Bs)])])})},MF=(Qn,Un)=>{const Xn=yR(Qn.icon,Un.icons);return rv.sketch({dom:{tag:"div",attributes:{role:"alert"},classes:["tox-notification","tox-notification--in",`tox-notification--${Qn.level}`]},components:[{dom:{tag:"div",classes:["tox-notification__icon"],innerHtml:Qn.url?void 0:Xn},components:Qn.url?[yh.sketch({dom:{tag:"button",classes:["tox-button","tox-button--naked","tox-button--icon"],innerHtml:Xn,attributes:{title:Un.translate(Qn.iconTooltip)}},action:Kn=>Qa(Kn,Cy,{name:"alert-banner",value:Qn.url}),buttonBehaviours:Zr([AA()])})]:void 0},{dom:{tag:"div",classes:["tox-notification__body"],innerHtml:Un.translate(Qn.text)}}]})},YM=(Qn,Un)=>{Qn.dom.checked=Un},yU=Qn=>Qn.dom.checked,NF=(Qn,Un,Xn)=>{const Kn=Co=>(Co.element.dom.click(),ko.some(!0)),oo=su.parts.field({factory:{sketch:es},dom:{tag:"input",classes:["tox-checkbox__input"],attributes:{type:"checkbox"}},behaviours:Zr([Og.self(),Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled(),onDisabled:Co=>{lh(Co.element).each(Ro=>$d(Ro,"tox-checkbox--disabled"))},onEnabled:Co=>{lh(Co.element).each(Ro=>Yu(Ro,"tox-checkbox--disabled"))}}),sd.config({}),ol.config({}),OM(Xn,yU,YM),Za.config({mode:"special",onEnter:Kn,onSpace:Kn,stopSpaceKeyup:!0}),Rl("checkbox-events",[wr(E0(),(Co,Ro)=>{Qa(Co,vg,{name:Qn.name})})])])}),lo=su.parts.label({dom:{tag:"span",classes:["tox-checkbox__label"]},components:[wd(Un.translate(Qn.label))],behaviours:Zr([$E.config({})])}),ho=Co=>s0(Co==="checked"?"selected":"unselected",{tag:"span",classes:["tox-icon","tox-checkbox-icon__"+Co]},Un.icons),yo=ou({dom:{tag:"div",classes:["tox-checkbox__icons"]},components:[ho("checked"),ho("unchecked")]});return su.sketch({dom:{tag:"label",classes:["tox-checkbox"]},components:[oo,yo.asSpec(),lo],fieldBehaviours:Zr([Ja.config({disabled:()=>!Qn.enabled||Un.isDisabled()}),jf()])})},LF=Qn=>Qn.presets==="presentation"?rv.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:Qn.html}}):rv.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:Qn.html,attributes:{role:"document"}},containerBehaviours:Zr([sd.config({}),ol.config({})])}),sh=Qn=>(Un,Xn,Kn,oo)=>Rr(Xn,"name").fold(()=>Qn(Xn,oo,ko.none()),lo=>Un.field(lo,Qn(Xn,oo,Rr(Kn,lo)))),IF=Qn=>(Un,Xn,Kn,oo)=>{const lo=Lc(Xn,{source:"dynamic"});return sh(Qn)(Un,lo,Kn,oo)},OU={bar:sh((Qn,Un)=>UV(Qn,Un.shared)),collection:sh((Qn,Un,Xn)=>JV(Qn,Un.shared.providers,Xn)),alertbanner:sh((Qn,Un)=>MF(Qn,Un.shared.providers)),input:sh((Qn,Un,Xn)=>aF(Qn,Un.shared.providers,Xn)),textarea:sh((Qn,Un,Xn)=>lF(Qn,Un.shared.providers,Xn)),label:sh((Qn,Un)=>qB(Qn,Un.shared)),iframe:IF((Qn,Un,Xn)=>OW(Qn,Un.shared.providers,Xn)),button:sh((Qn,Un)=>uU(Qn,Un.shared.providers)),checkbox:sh((Qn,Un,Xn)=>NF(Qn,Un.shared.providers,Xn)),colorinput:sh((Qn,Un,Xn)=>rz(Qn,Un.shared,Un.colorinput,Xn)),colorpicker:sh((Qn,Un,Xn)=>uW(Qn,Un.shared.providers,Xn)),dropzone:sh((Qn,Un,Xn)=>fW(Qn,Un.shared.providers,Xn)),grid:sh((Qn,Un)=>HB(Qn,Un.shared)),listbox:sh((Qn,Un,Xn)=>MM(Qn,Un,Xn)),selectbox:sh((Qn,Un,Xn)=>HE(Qn,Un.shared.providers,Xn)),sizeinput:sh((Qn,Un)=>rF(Qn,Un.shared.providers)),slider:sh((Qn,Un,Xn)=>iF(Qn,Un.shared.providers,Xn)),urlinput:sh((Qn,Un,Xn)=>DF(Qn,Un,Un.urlinput,Xn)),customeditor:sh(BB),htmlpanel:sh(LF),imagepreview:sh((Qn,Un,Xn)=>wW(Qn,Xn)),table:sh((Qn,Un)=>IW(Qn,Un.shared.providers)),tree:sh((Qn,Un)=>KW(Qn,Un)),panel:sh((Qn,Un)=>$W(Qn,Un))},_U={field:(Qn,Un)=>Un,record:Mo([])},d0=(Qn,Un,Xn,Kn)=>{const oo=Lc(Kn,{shared:{interpreter:lo=>o2(Qn,lo,Xn,oo)}});return o2(Qn,Un,Xn,oo)},o2=(Qn,Un,Xn,Kn)=>Rr(OU,Un.type).fold(()=>(console.error(`Unknown factory type "${Un.type}", defaulting to container: `,Un),Un),oo=>oo(Qn,Un,Xn,Kn)),UE=(Qn,Un,Xn)=>o2(_U,Qn,Un,Xn),K_="layout-inset",ZE=Qn=>Qn.x,BF=(Qn,Un)=>Qn.x+Qn.width/2-Un.width/2,qE=(Qn,Un)=>Qn.x+Qn.width-Un.width,GP=Qn=>Qn.y,jE=(Qn,Un)=>Qn.y+Qn.height-Un.height,FF=(Qn,Un)=>Qn.y+Qn.height/2-Un.height/2,XE=(Qn,Un,Xn)=>Yd(qE(Qn,Un),jE(Qn,Un),Xn.insetSouthwest(),Pp(),"southwest",Uu(Qn,{right:0,bottom:3}),K_),YE=(Qn,Un,Xn)=>Yd(ZE(Qn),jE(Qn,Un),Xn.insetSoutheast(),n_(),"southeast",Uu(Qn,{left:1,bottom:3}),K_),Zw=(Qn,Un,Xn)=>Yd(qE(Qn,Un),GP(Qn),Xn.insetNorthwest(),TS(),"northwest",Uu(Qn,{right:0,top:2}),K_),GE=(Qn,Un,Xn)=>Yd(ZE(Qn),GP(Qn),Xn.insetNortheast(),Xy(),"northeast",Uu(Qn,{left:1,top:2}),K_),f0=(Qn,Un,Xn)=>Yd(BF(Qn,Un),GP(Qn),Xn.insetNorth(),ug(),"north",Uu(Qn,{top:2}),K_),s2=(Qn,Un,Xn)=>Yd(BF(Qn,Un),jE(Qn,Un),Xn.insetSouth(),H2(),"south",Uu(Qn,{bottom:3}),K_),HF=(Qn,Un,Xn)=>Yd(qE(Qn,Un),FF(Qn,Un),Xn.insetEast(),H0(),"east",Uu(Qn,{right:0}),K_),QF=(Qn,Un,Xn)=>Yd(ZE(Qn),FF(Qn,Un),Xn.insetWest(),lr(),"west",Uu(Qn,{left:1}),K_),VF=Qn=>{switch(Qn){case"north":return f0;case"northeast":return GE;case"northwest":return Zw;case"south":return s2;case"southeast":return YE;case"southwest":return XE;case"east":return HF;case"west":return QF}},GM=(Qn,Un,Xn,Kn,oo)=>AC(Kn).map(VF).getOr(f0)(Qn,Un,Xn,Kn,oo),SU=Qn=>{switch(Qn){case"north":return s2;case"northeast":return YE;case"northwest":return XE;case"south":return f0;case"southeast":return GE;case"southwest":return Zw;case"east":return QF;case"west":return HF}},wU=(Qn,Un,Xn,Kn,oo)=>AC(Kn).map(SU).getOr(f0)(Qn,Un,Xn,Kn,oo),KE={valignCentre:[],alignCentre:[],alignLeft:[],alignRight:[],right:[],left:[],bottom:[],top:[]},CU=(Qn,Un,Xn)=>{const oo={maxHeightFunction:zg()},lo=()=>({type:"node",root:Fr(rr(Qn())),node:ko.from(Qn()),bubble:p1(12,12,KE),layouts:{onRtl:()=>[GE],onLtr:()=>[Zw]},overrides:oo}),ho=()=>({type:"hotspot",hotspot:Un(),bubble:p1(-12,12,KE),layouts:{onRtl:()=>[gf,eh,bu],onLtr:()=>[eh,gf,bu]},overrides:oo});return()=>Xn()?lo():ho()},zF=(Qn,Un,Xn,Kn)=>{const lo={maxHeightFunction:zg()},ho=()=>({type:"node",root:Fr(rr(Un())),node:ko.from(Un()),bubble:p1(12,12,KE),layouts:{onRtl:()=>[f0],onLtr:()=>[f0]},overrides:lo}),yo=()=>Qn?{type:"node",root:Fr(rr(Un())),node:ko.from(Un()),bubble:p1(0,-Vp(Un()),KE),layouts:{onRtl:()=>[Rh],onLtr:()=>[Rh]},overrides:lo}:{type:"hotspot",hotspot:Xn(),bubble:p1(0,0,KE),layouts:{onRtl:()=>[Rh],onLtr:()=>[Rh]},overrides:lo};return()=>Kn()?ho():yo()},lv=(Qn,Un,Xn)=>{const Kn=()=>({type:"node",root:Fr(rr(Qn())),node:ko.from(Qn()),layouts:{onRtl:()=>[f0],onLtr:()=>[f0]}}),oo=()=>({type:"hotspot",hotspot:Un(),layouts:{onRtl:()=>[bu],onLtr:()=>[bu]}});return()=>Xn()?Kn():oo()},KM=(Qn,Un)=>()=>({type:"selection",root:Un(),getSelection:()=>{const Xn=Qn.selection.getRng(),Kn=Qn.model.table.getSelectedCells();if(Kn.length>1){const oo=Kn[0],lo=Kn[Kn.length-1],ho={firstCell:Ds.fromDom(oo),lastCell:Ds.fromDom(lo)};return ko.some(ho)}return ko.some(Zf.range(Ds.fromDom(Xn.startContainer),Xn.startOffset,Ds.fromDom(Xn.endContainer),Xn.endOffset))}}),kU=Qn=>Un=>({type:"node",root:Qn(),node:Un}),xU=(Qn,Un,Xn,Kn)=>{const oo=$k(Qn),lo=()=>Ds.fromDom(Qn.getBody()),ho=()=>Ds.fromDom(Qn.getContentAreaContainer()),yo=()=>oo||!Kn();return{inlineDialog:CU(ho,Un,yo),inlineBottomDialog:zF(Qn.inline,ho,Xn,yo),banner:lv(ho,Un,yo),cursor:KM(Qn,lo),node:kU(lo)}},EU=Qn=>(Un,Xn)=>{wI(Qn)(Un,Xn)},TU=Qn=>()=>bI(Qn),AU=Qn=>Un=>uP(Qn,Un),WF=Qn=>Un=>gI(Qn,Un),UF=Qn=>({colorPicker:EU(Qn),hasCustomColors:TU(Qn),getColors:AU(Qn),getColorCols:WF(Qn)}),hG=Qn=>()=>PR(Qn),mG=Qn=>({isDraggableModal:hG(Qn)}),km=Qn=>{const Un=Ua(MR(Qn)?"bottom":"top");return{isPositionedAtTop:()=>Un.get()==="top",getDockingMode:Un.get,setDockingMode:Un.set}},KP=Qn=>Su(Qn,"items"),ZF=Qn=>Su(Qn,"format"),JE=[{title:"Headings",items:[{title:"Heading 1",format:"h1"},{title:"Heading 2",format:"h2"},{title:"Heading 3",format:"h3"},{title:"Heading 4",format:"h4"},{title:"Heading 5",format:"h5"},{title:"Heading 6",format:"h6"}]},{title:"Inline",items:[{title:"Bold",format:"bold"},{title:"Italic",format:"italic"},{title:"Underline",format:"underline"},{title:"Strikethrough",format:"strikethrough"},{title:"Superscript",format:"superscript"},{title:"Subscript",format:"subscript"},{title:"Code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Align",items:[{title:"Left",format:"alignleft"},{title:"Center",format:"aligncenter"},{title:"Right",format:"alignright"},{title:"Justify",format:"alignjustify"}]}],PU=Qn=>Pl(Qn,"items"),$U=Qn=>Pl(Qn,"block"),RU=Qn=>Pl(Qn,"inline"),DU=Qn=>Pl(Qn,"selector"),qF=Qn=>za(Qn,(Un,Xn)=>{if(PU(Xn)){const Kn=qF(Xn.items);return{customFormats:Un.customFormats.concat(Kn.customFormats),formats:Un.formats.concat([{title:Xn.title,items:Kn.formats}])}}else if(RU(Xn)||$U(Xn)||DU(Xn)){const oo=`custom-${qn(Xn.name)?Xn.name:Xn.title.toLowerCase()}`;return{customFormats:Un.customFormats.concat([{name:oo,format:Xn}]),formats:Un.formats.concat([{title:Xn.title,format:oo,icon:Xn.icon}])}}else return{...Un,formats:Un.formats.concat(Xn)}},{customFormats:[],formats:[]}),MU=(Qn,Un)=>{const Xn=qF(Un),Kn=oo=>{Qs(oo,lo=>{Qn.formatter.has(lo.name)||Qn.formatter.register(lo.name,lo.format)})};return Qn.formatter?Kn(Xn.customFormats):Qn.on("init",()=>{Kn(Xn.customFormats)}),Xn.formats},jF=Qn=>BL(Qn).map(Un=>{const Xn=MU(Qn,Un);return FL(Qn)?JE.concat(Xn):Xn}).getOr(JE),NU=Qn=>{const Un=nc(Qn);return Un.length===1&&Fs(Un,"title")},JM=(Qn,Un,Xn)=>({...Qn,type:"formatter",isSelected:Un(Qn.format),getStylePreview:Xn(Qn.format)}),eT=(Qn,Un,Xn,Kn)=>{const oo=Co=>JM(Co,Xn,Kn),lo=Co=>{const Ro=yo(Co.items);return{...Co,type:"submenu",getStyleItems:Mo(Ro)}},ho=Co=>{const Ro=qn(Co.name)?Co.name:ba(Co.title),Lo=`custom-${Ro}`,Wo={...Co,type:"formatter",format:Lo,isSelected:Xn(Lo),getStylePreview:Kn(Lo)};return Qn.formatter.register(Ro,Wo),Wo},yo=Co=>hs(Co,Ro=>KP(Ro)?lo(Ro):ZF(Ro)?oo(Ro):NU(Ro)?{...Ro,type:"separator"}:ho(Ro));return yo(Un)},LU=Qn=>{const Un=yo=>()=>Qn.formatter.match(yo),Xn=yo=>()=>{const Co=Qn.formatter.get(yo);return Co!==void 0?ko.some({tag:Co.length>0&&(Co[0].inline||Co[0].block)||"div",styles:Qn.dom.parseStyle(Qn.formatter.getCssText(yo))}):ko.none()},Kn=Ua([]),oo=Ua([]),lo=Ua(!1);return Qn.on("PreInit",yo=>{const Co=jF(Qn),Ro=eT(Qn,Co,Un,Xn);Kn.set(Ro)}),Qn.on("addStyleModifications",yo=>{const Co=eT(Qn,yo.items,Un,Xn);oo.set(Co),lo.set(yo.replace)}),{getData:()=>{const yo=lo.get()?[]:Kn.get(),Co=oo.get();return yo.concat(Co)}}},XF=Qn=>Oo(Qn)&&Qn.nodeType===1,IU=xO.trim,e4=Qn=>Un=>!!(XF(Un)&&(Un.contentEditable===Qn||Un.getAttribute("data-mce-contenteditable")===Qn)),BU=e4("true"),FU=e4("false"),t4=(Qn,Un,Xn,Kn,oo)=>({type:Qn,title:Un,url:Xn,level:Kn,attach:oo}),pG=Qn=>{let Un=Qn;for(;Un=Un.parentNode;){const Xn=Un.contentEditable;if(Xn&&Xn!=="inherit")return BU(Un)}return!1},gG=(Qn,Un)=>hs(_f(Ds.fromDom(Un),Qn),Xn=>Xn.dom),YF=Qn=>Qn.innerText||Qn.textContent,HU=Qn=>Qn.id?Qn.id:ba("h"),QU=Qn=>Qn&&Qn.nodeName==="A"&&(Qn.id||Qn.name)!==void 0,GF=Qn=>QU(Qn)&&KF(Qn),JP=Qn=>Qn&&/^(H[1-6])$/.test(Qn.nodeName),KF=Qn=>pG(Qn)&&!FU(Qn),VU=Qn=>JP(Qn)&&KF(Qn),JF=Qn=>JP(Qn)?parseInt(Qn.nodeName.substr(1),10):0,zU=Qn=>{var Un;const Xn=HU(Qn),Kn=()=>{Qn.id=Xn};return t4("header",(Un=YF(Qn))!==null&&Un!==void 0?Un:"","#"+Xn,JF(Qn),Kn)},WU=Qn=>{const Un=Qn.id||Qn.name,Xn=YF(Qn);return t4("anchor",Xn||"#"+Un,"#"+Un,0,xo)},UU=Qn=>hs(ga(Qn,VU),zU),ZU=Qn=>hs(ga(Qn,GF),WU),n4=Qn=>gG("h1,h2,h3,h4,h5,h6,a:not([href])",Qn),e6=Qn=>IU(Qn.title).length>0,qU={find:Qn=>{const Un=n4(Qn);return ga(UU(Un).concat(ZU(Un)),e6)}},e$="tinymce-url-history",t6=5,o4=Qn=>qn(Qn)&&/^https?/.test(Qn),jU=Qn=>to(Qn)&&Qn.length<=t6&&dr(Qn,o4),tT=Qn=>Yn(Qn)&&Al(Qn,Un=>!jU(Un)).isNone(),n6=()=>{const Qn=V_.getItem(e$);if(Qn===null)return{};let Un;try{Un=JSON.parse(Qn)}catch(Xn){if(Xn instanceof SyntaxError)return console.log("Local storage "+e$+" was not valid JSON",Xn),{};throw Xn}return tT(Un)?Un:(console.log("Local storage "+e$+" was not valid format",Un),{})},t$=Qn=>{if(!tT(Qn))throw new Error(`Bad format for history: +`+JSON.stringify(Qn));V_.setItem(e$,JSON.stringify(Qn))},XU=Qn=>{const Un=n6();return Rr(Un,Qn).getOr([])},s4=(Qn,Un)=>{if(!o4(Qn))return;const Xn=n6(),Kn=Rr(Xn,Un).getOr([]),oo=ga(Kn,lo=>lo!==Qn);Xn[Un]=[Qn].concat(oo).slice(0,t6),t$(Xn)},r2=Qn=>!!Qn,o6=Qn=>Vl(xO.makeMap(Qn,/[, ]/),r2),r4=Qn=>ko.from(WL(Qn)),s6=Qn=>{const Un=ko.from(TR(Qn)).filter(r2).map(o6);return r4(Qn).fold(sr,Xn=>Un.fold(Js,Kn=>nc(Kn).length>0?Kn:!1))},r6=(Qn,Un)=>{const Xn=s6(Qn);return uo(Xn)?Xn?r4(Qn):ko.none():Xn[Un]?r4(Qn):ko.none()},i6=(Qn,Un)=>r6(Qn,Un).map(Xn=>Kn=>Cm.nu(oo=>{const lo=(yo,Co)=>{if(!qn(yo))throw new Error("Expected value to be string");if(Co!==void 0&&!Yn(Co))throw new Error("Expected meta to be a object");oo({value:yo,meta:Co})},ho={filetype:Un,fieldname:Kn.fieldname,...ko.from(Kn.meta).getOr({})};Xn.call(Qn,lo,Kn.value,ho)})),a6=Qn=>ko.from(Qn).filter(qn).getOrUndefined(),i4=Qn=>AR(Qn)?ko.some({targets:qU.find(Qn.getBody()),anchorTop:a6(MA(Qn)),anchorBottom:a6(ZL(Qn))}):ko.none(),n$=Qn=>ko.from(ER(Qn)),YU=Qn=>({getHistory:XU,addToHistory:s4,getLinkInformation:()=>i4(Qn),getValidationHandler:()=>n$(Qn),getUrlPicker:Un=>i6(Qn,Un)}),GU=(Qn,Un,Xn,Kn)=>{const oo=Ua(!1),lo=km(Un),ho={icons:()=>Un.ui.registry.getAll().icons,menuItems:()=>Un.ui.registry.getAll().menuItems,translate:_1.translate,isDisabled:()=>Un.mode.isReadOnly()||!Un.ui.isEnabled(),getOption:Un.options.get},yo=YU(Un),Co=LU(Un),Ro=UF(Un),Lo=mG(Un),Wo=()=>oo.get(),jo=er=>oo.set(er),Jo={shared:{providers:ho,anchors:xU(Un,Xn,Kn,lo.isPositionedAtTop),header:lo},urlinput:yo,styles:Co,colorinput:Ro,dialog:Lo,isContextMenuOpen:Wo,setContextMenuState:jo},us={...Jo,shared:{...Jo.shared,interpreter:er=>UE(er,{},us),getSink:Qn.popup}},Ps={...Jo,shared:{...Jo.shared,interpreter:er=>UE(er,{},Ps),getSink:Qn.dialog}};return{popup:us,dialog:Ps}},i2=(Qn,Un,Xn)=>{const Kn=(Or,qr)=>{Qs([Un,...Xn],na=>{na.broadcastEvent(Or,qr)})},oo=(Or,qr)=>{Qs([Un,...Xn],na=>{na.broadcastOn([Or],qr)})},lo=Or=>oo(db(),{target:Or.target}),ho=Op(),yo=Dh(ho,"touchstart",lo),Co=Dh(ho,"touchmove",Or=>Kn(Ah(),Or)),Ro=Dh(ho,"touchend",Or=>Kn(kp(),Or)),Lo=Dh(ho,"mousedown",lo),Wo=Dh(ho,"mouseup",Or=>{Or.raw.button===0&&oo(wx(),{target:Or.target})}),jo=Or=>oo(db(),{target:Ds.fromDom(Or.target)}),Jo=Or=>{Or.button===0&&oo(wx(),{target:Ds.fromDom(Or.target)})},us=()=>{Qs(Qn.editorManager.get(),Or=>{Qn!==Or&&Or.dispatch("DismissPopups",{relatedTarget:Qn})})},Ps=Or=>Kn(s1(),th(Or)),er=Or=>{oo(uO(),{}),Kn(Ig(),th(Or))},Bs=rr(Ds.fromDom(Qn.getElement())),Ns=a_(Bs,"scroll",Or=>{requestAnimationFrame(()=>{const qr=Qn.getContainer();if(qr!=null){const Dl=W_(Qn,Un.element).map(Sa=>[Sa.element,...Sa.others]).getOr([]);Br(Dl,Sa=>Oc(Sa,Or.target))&&(Qn.dispatch("ElementScroll",{target:Or.target.dom}),Kn(j1(),Or))}})}),Xs=()=>oo(uO(),{}),Hr=Or=>{Or.state&&oo(db(),{target:Ds.fromDom(Qn.getContainer())})},kr=Or=>{oo(db(),{target:Ds.fromDom(Or.relatedTarget.getContainer())})};Qn.on("PostRender",()=>{Qn.on("click",jo),Qn.on("tap",jo),Qn.on("mouseup",Jo),Qn.on("mousedown",us),Qn.on("ScrollWindow",Ps),Qn.on("ResizeWindow",er),Qn.on("ResizeEditor",Xs),Qn.on("AfterProgressState",Hr),Qn.on("DismissPopups",kr)}),Qn.on("remove",()=>{Qn.off("click",jo),Qn.off("tap",jo),Qn.off("mouseup",Jo),Qn.off("mousedown",us),Qn.off("ScrollWindow",Ps),Qn.off("ResizeWindow",er),Qn.off("ResizeEditor",Xs),Qn.off("AfterProgressState",Hr),Qn.off("DismissPopups",kr),Lo.unbind(),yo.unbind(),Co.unbind(),Ro.unbind(),Wo.unbind(),Ns.unbind()}),Qn.on("detach",()=>{Qs([Un,...Xn],w_),Qs([Un,...Xn],Or=>Or.destroy())})},rh=E3,Ty=XT,l6=Mo([Gs("shell",!1),Er("makeItem"),Gs("setupItem",xo),Wg.field("listBehaviours",[Cl])]),a4=up({name:"items",overrides:()=>({behaviours:Zr([Cl.config({})])})}),KU=Mo([a4]),JU=Mo("CustomList"),eZ=(Qn,Un,Xn,Kn)=>{const oo=(yo,Co)=>{ho(yo).fold(()=>{throw console.error("Custom List was defined to not be a shell, but no item container was specified in components"),new Error("Custom List was defined to not be a shell, but no item container was specified in components")},Ro=>{const Lo=Cl.contents(Ro),Wo=Co.length,jo=Wo-Lo.length,Jo=jo>0?_r(jo,()=>Qn.makeItem()):[],us=Lo.slice(Wo);Qs(us,er=>Cl.remove(Ro,er)),Qs(Jo,er=>Cl.append(Ro,er));const Ps=Cl.contents(Ro);Qs(Ps,(er,Bs)=>{Qn.setupItem(yo,er,Co[Bs],Bs)})})},lo=Qn.shell?{behaviours:[Cl.config({})],components:[]}:{behaviours:[],components:Un},ho=yo=>Qn.shell?ko.some(yo):Au(yo,Qn,"items");return{uid:Qn.uid,dom:Qn.dom,components:lo.components,behaviours:sf(Qn.listBehaviours,lo.behaviours),apis:{setItems:oo}}},o$=Yh({name:JU(),configFields:l6(),partFields:KU(),factory:eZ,apis:{setItems:(Qn,Un,Xn)=>{Qn.setItems(Un,Xn)}}}),a2=Mo([Er("dom"),Gs("shell",!0),Nf("toolbarBehaviours",[Cl])]),tZ=Mo([up({name:"groups",overrides:()=>({behaviours:Zr([Cl.config({})])})})]),nZ=(Qn,Un,Xn,Kn)=>{const oo=(yo,Co)=>{lo(yo).fold(()=>{throw console.error("Toolbar was defined to not be a shell, but no groups container was specified in components"),new Error("Toolbar was defined to not be a shell, but no groups container was specified in components")},Ro=>{Cl.set(Ro,Co)})},lo=yo=>Qn.shell?ko.some(yo):Au(yo,Qn,"groups"),ho=Qn.shell?{behaviours:[Cl.config({})],components:[]}:{behaviours:[],components:Un};return{uid:Qn.uid,dom:Qn.dom,components:ho.components,behaviours:sf(Qn.toolbarBehaviours,ho.behaviours),apis:{setGroups:oo,refresh:xo},domModification:{attributes:{role:"group"}}}},cv=Yh({name:"Toolbar",configFields:a2(),partFields:tZ(),factory:nZ,apis:{setGroups:(Qn,Un,Xn)=>{Qn.setGroups(Un,Xn)}}}),oZ=xo,sZ=sr,l4=Mo([]);var rZ=Object.freeze({__proto__:null,setup:oZ,isDocked:sZ,getBehaviours:l4});const qw=Qn=>(vs(ku(Qn,"position"),"fixed")?ko.none():ch(Qn)).orThunk(()=>{const Kn=Ds.fromTag("span");return Zd(Qn).bind(oo=>{Id(oo,Kn);const lo=ch(Kn);return am(Kn),lo})}),u6=Qn=>qw(Qn).map(uh).getOrThunk(()=>vc(0,0)),iZ=(Qn,Un)=>{const Xn=Qn.element;$d(Xn,Un.transitionClass),Yu(Xn,Un.fadeOutClass),$d(Xn,Un.fadeInClass),Un.onShow(Qn)},c4=(Qn,Un)=>{const Xn=Qn.element;$d(Xn,Un.transitionClass),Yu(Xn,Un.fadeInClass),$d(Xn,Un.fadeOutClass),Un.onHide(Qn)},d6=(Qn,Un)=>Qn.yUn.y,f6=(Qn,Un)=>Qn.y>=Un.y,h6=(Qn,Un)=>Qn.bottom<=Un.bottom,u4=(Qn,Un,Xn)=>({location:"top",leftX:Un,topY:Xn.bounds.y-Qn.y}),d4=(Qn,Un,Xn)=>({location:"bottom",leftX:Un,bottomY:Qn.bottom-Xn.bounds.bottom}),f4=Qn=>Qn.box.x-Qn.win.x,aZ=(Qn,Un,Xn)=>{const Kn=Un.win,oo=Un.box,lo=f4(Un);return gc(Qn,ho=>{switch(ho){case"bottom":return h6(oo,Xn.bounds)?ko.none():ko.some(d4(Kn,lo,Xn));case"top":return f6(oo,Xn.bounds)?ko.none():ko.some(u4(Kn,lo,Xn));default:return ko.none()}}).getOr({location:"no-dock"})},lZ=(Qn,Un,Xn)=>dr(Qn,Kn=>{switch(Kn){case"bottom":return h6(Un,Xn.bounds);case"top":return f6(Un,Xn.bounds)}}),cZ=(Qn,Un)=>{const Xn=Un.optScrollEnv.fold(Mo(Qn.bounds.y),Kn=>Kn.scrollElmTop+(Qn.bounds.y-Kn.currentScrollTop));return vc(Qn.bounds.x,Xn)},uZ=(Qn,Un)=>{const Xn=Un.optScrollEnv.fold(Mo(Qn.y),Kn=>Qn.y+Kn.currentScrollTop-Kn.scrollElmTop);return vc(Qn.x,Xn)},m6=(Qn,Un,Xn)=>Xn.getInitialPos().map(Kn=>{const oo=cZ(Kn,Un);return{box:Kc(oo.left,oo.top,dd(Qn),cu(Qn)),location:Kn.location}}),p6=(Qn,Un,Xn,Kn,oo)=>{const lo=uZ(Un,Xn),ho=Kc(lo.left,lo.top,Un.width,Un.height);Kn.setInitialPos({style:jc(Qn),position:qc(Qn,"position")||"static",bounds:ho,location:oo.location})},g6=(Qn,Un,Xn,Kn,oo)=>{Kn.getInitialPos().fold(()=>p6(Qn,Un,Xn,Kn,oo),()=>xo)},h4=(Qn,Un,Xn)=>Xn.getInitialPos().bind(Kn=>{var oo;switch(Xn.clearInitialPos(),Kn.position){case"static":return ko.some({morph:"static"});case"absolute":const lo=qw(Qn).getOr(Ru()),ho=au(lo),yo=(oo=lo.dom.scrollTop)!==null&&oo!==void 0?oo:0;return ko.some({morph:"absolute",positionCss:ip("absolute",Rr(Kn.style,"left").map(Co=>Un.x-ho.x),Rr(Kn.style,"top").map(Co=>Un.y-ho.y+yo),Rr(Kn.style,"right").map(Co=>ho.right-Un.right),Rr(Kn.style,"bottom").map(Co=>ho.bottom-Un.bottom))});default:return ko.none()}}),s$=(Qn,Un,Xn)=>m6(Qn,Un,Xn).filter(({box:Kn})=>lZ(Xn.getModes(),Kn,Un)).bind(({box:Kn})=>h4(Qn,Kn,Xn)),r$=Qn=>{switch(Qn.location){case"top":return ko.some({morph:"fixed",positionCss:ip("fixed",ko.some(Qn.leftX),ko.some(Qn.topY),ko.none(),ko.none())});case"bottom":return ko.some({morph:"fixed",positionCss:ip("fixed",ko.some(Qn.leftX),ko.none(),ko.none(),ko.some(Qn.bottomY))});default:return ko.none()}},dZ=(Qn,Un,Xn)=>{const Kn=au(Qn),oo=tf(),lo=aZ(Xn.getModes(),{win:oo,box:Kn},Un);return lo.location==="top"||lo.location==="bottom"?(p6(Qn,Kn,Un,Xn,lo),r$(lo)):ko.none()},fZ=(Qn,Un,Xn)=>s$(Qn,Un,Xn).orThunk(()=>Un.optScrollEnv.bind(Kn=>m6(Qn,Un,Xn)).bind(({box:Kn,location:oo})=>{const lo=tf(),ho=f4({win:lo,box:Kn}),yo=oo==="top"?u4(lo,ho,Un):d4(lo,ho,Un);return r$(yo)})),hZ=(Qn,Un,Xn)=>{const Kn=Qn.element;return vs(ku(Kn,"position"),"fixed")?fZ(Kn,Un,Xn):dZ(Kn,Un,Xn)},mZ=(Qn,Un,Xn)=>{const Kn=Qn.element;return m6(Kn,Un,Xn).bind(({box:oo})=>h4(Kn,oo,Xn))},pZ=(Qn,Un,Xn,Kn)=>{const oo=au(Qn),lo=tf(),ho=f4({win:lo,box:oo}),yo=Kn(lo,ho,Un);return yo.location==="bottom"||yo.location==="top"?(g6(Qn,oo,Un,Xn,yo),r$(yo)):ko.none()},b6=(Qn,Un,Xn)=>{Xn.setDocked(!1),Qs(["left","right","top","bottom","position"],Kn=>El(Qn.element,Kn)),Un.onUndocked(Qn)},m4=(Qn,Un,Xn,Kn)=>{const oo=Kn.position==="fixed";Xn.setDocked(oo),m1(Qn.element,Kn),(oo?Un.onDocked:Un.onUndocked)(Qn)},p4=(Qn,Un,Xn,Kn,oo=!1)=>{Un.contextual.each(lo=>{lo.lazyContext(Qn).each(ho=>{const yo=d6(ho,Kn.bounds);yo!==Xn.isVisible()&&(Xn.setVisible(yo),oo&&!yo?(od(Qn.element,[lo.fadeOutClass]),lo.onHide(Qn)):(yo?iZ:c4)(Qn,lo))})})},g4=(Qn,Un,Xn,Kn,oo)=>{p4(Qn,Un,Xn,Kn,!0),m4(Qn,Un,Xn,oo.positionCss)},gZ=(Qn,Un,Xn,Kn,oo)=>{switch(oo.morph){case"static":return b6(Qn,Un,Xn);case"absolute":return m4(Qn,Un,Xn,oo.positionCss);case"fixed":return g4(Qn,Un,Xn,Kn,oo)}},v6=(Qn,Un,Xn)=>{const Kn=Un.lazyViewport(Qn);p4(Qn,Un,Xn,Kn),hZ(Qn,Kn,Xn).each(oo=>{gZ(Qn,Un,Xn,Kn,oo)})},bZ=(Qn,Un,Xn)=>{const Kn=Qn.element;Xn.setDocked(!1);const oo=Un.lazyViewport(Qn);mZ(Qn,oo,Xn).each(lo=>{switch(lo.morph){case"static":{b6(Qn,Un,Xn);break}case"absolute":{m4(Qn,Un,Xn,lo.positionCss);break}}}),Xn.setVisible(!0),Un.contextual.each(lo=>{sp(Kn,[lo.fadeInClass,lo.fadeOutClass,lo.transitionClass]),lo.onShow(Qn)}),i$(Qn,Un,Xn)},i$=(Qn,Un,Xn)=>{Qn.getSystem().isConnected()&&v6(Qn,Un,Xn)},y6=(Qn,Un,Xn)=>{Xn.isDocked()&&bZ(Qn,Un,Xn)},J_=Qn=>(Un,Xn,Kn)=>{const oo=Xn.lazyViewport(Un);pZ(Un.element,oo,Kn,Qn).each(ho=>{g4(Un,Xn,Kn,oo,ho)})},O6=J_(u4),nT=J_(d4);var _6=Object.freeze({__proto__:null,refresh:i$,reset:y6,isDocked:(Qn,Un,Xn)=>Xn.isDocked(),getModes:(Qn,Un,Xn)=>Xn.getModes(),setModes:(Qn,Un,Xn,Kn)=>Xn.setModes(Kn),forceDockToTop:O6,forceDockToBottom:nT}),OZ=Object.freeze({__proto__:null,events:(Qn,Un)=>Jc([rg(V1(),(Xn,Kn)=>{Qn.contextual.each(oo=>{of(Xn.element,oo.transitionClass)&&(sp(Xn.element,[oo.transitionClass,oo.fadeInClass]),(Un.isVisible()?oo.onShown:oo.onHidden)(Xn)),Kn.stop()})}),wr(s1(),(Xn,Kn)=>{i$(Xn,Qn,Un)}),wr(j1(),(Xn,Kn)=>{i$(Xn,Qn,Un)}),wr(Ig(),(Xn,Kn)=>{y6(Xn,Qn,Un)})])}),_Z=[hh("contextual",[hc("fadeInClass"),hc("fadeOutClass"),hc("transitionClass"),ep("lazyContext"),rc("onShow"),rc("onShown"),rc("onHide"),rc("onHidden")]),Hd("lazyViewport",()=>({bounds:tf(),optScrollEnv:ko.none()})),Th("modes",["top","bottom"],nf),rc("onDocked"),rc("onUndocked")],SZ=Object.freeze({__proto__:null,init:Qn=>{const Un=Ua(!1),Xn=Ua(!0),Kn=Hl(),oo=Ua(Qn.modes),lo=()=>`docked: ${Un.get()}, visible: ${Xn.get()}, modes: ${oo.get().join(",")}`;return ph({isDocked:Un.get,setDocked:Un.set,getInitialPos:Kn.get,setInitialPos:Kn.set,clearInitialPos:Kn.clear,isVisible:Xn.get,setVisible:Xn.set,getModes:oo.get,setModes:oo.set,readState:lo})}});const rf=Of({fields:_Z,name:"docking",active:OZ,apis:_6,state:SZ}),eS=Mo(ba("toolbar-height-change")),x1={fadeInClass:"tox-editor-dock-fadein",fadeOutClass:"tox-editor-dock-fadeout",transitionClass:"tox-editor-dock-transition"},a$="tox-tinymce--toolbar-sticky-on",S6="tox-tinymce--toolbar-sticky-off",wZ=(Qn,Un)=>{const Xn=vd(Un),oo=Sh(Un).dom.innerHeight,lo=Af(Xn),ho=Ds.fromDom(Qn.elm),yo=cf(ho),Co=cu(ho),Ro=yo.y,Lo=Ro+Co,Wo=uh(Un),jo=cu(Un),Jo=Wo.top,us=Jo+jo,Ps=Math.abs(Jo-lo.top)<2,er=Math.abs(us-(lo.top+oo))<2;if(Ps&&RoJo){const Bs=Ro-oo+Co+jo;e1(lo.left,Bs,Xn)}},l2=(Qn,Un)=>Fs(rf.getModes(Qn),Un),y4=Qn=>{const Un=Kn=>Vp(Kn)+(parseInt(qc(Kn,"margin-top"),10)||0)+(parseInt(qc(Kn,"margin-bottom"),10)||0),Xn=Qn.element;lh(Xn).each(Kn=>{const oo="padding-"+rf.getModes(Qn)[0];if(rf.isDocked(Qn)){const lo=dd(Kn);ya(Xn,"width",lo+"px"),ya(Kn,oo,Un(Xn)+"px")}else El(Xn,"width"),El(Kn,oo)})},c2=(Qn,Un)=>{Un?(Yu(Qn,x1.fadeOutClass),od(Qn,[x1.transitionClass,x1.fadeInClass])):(Yu(Qn,x1.fadeInClass),od(Qn,[x1.fadeOutClass,x1.transitionClass]))},O4=(Qn,Un)=>{const Xn=Ds.fromDom(Qn.getContainer());Un?($d(Xn,a$),Yu(Xn,S6)):($d(Xn,S6),Yu(Xn,a$))},CZ=(Qn,Un)=>{const Xn=vd(Un);h1(Xn).filter(Kn=>!Oc(Un,Kn)).filter(Kn=>Oc(Kn,Ds.fromDom(Xn.dom.body))||cd(Qn,Kn)).each(()=>Cd(Un))},kZ=(Qn,Un)=>dg(Qn).orThunk(()=>Un().toOptional().bind(Xn=>dg(Xn.element))),xZ=(Qn,Un,Xn)=>{Qn.inline||(Un.header.isPositionedAtTop()||Qn.on("ResizeEditor",()=>{Xn().each(rf.reset)}),Qn.on("ResizeWindow ResizeEditor",()=>{Xn().each(y4)}),Qn.on("SkinLoaded",()=>{Xn().each(Kn=>{rf.isDocked(Kn)?rf.reset(Kn):rf.refresh(Kn)})}),Qn.on("FullscreenStateChanged",()=>{Xn().each(rf.reset)})),Qn.on("AfterScrollIntoView",Kn=>{Xn().each(oo=>{rf.refresh(oo);const lo=oo.element;Ok(lo)&&wZ(Kn,lo)})}),Qn.on("PostRender",()=>{O4(Qn,!1)})},EZ=Qn=>Qn().map(rf.isDocked).getOr(!1),TZ=()=>[Om.config({channels:{[eS()]:{onReceive:y4}}})],w6=(Qn,Un)=>{const Xn=Hl(),Kn=Un.getSink,oo=yo=>{Kn().each(Co=>yo(Co.element))},lo=yo=>{Qn.inline||y4(yo),O4(Qn,rf.isDocked(yo)),yo.getSystem().broadcastOn([uO()],{}),Kn().each(Co=>Co.getSystem().broadcastOn([uO()],{}))},ho=Qn.inline?[]:TZ();return[ol.config({}),rf.config({contextual:{lazyContext:yo=>{const Co=Vp(yo.element),Ro=Qn.inline?Qn.getContentAreaContainer():Qn.getContainer();return ko.from(Ro).map(Lo=>{const Wo=au(Ds.fromDom(Lo));return W_(Qn,yo.element).fold(()=>{const Jo=Wo.height-Co,us=Wo.y+(l2(yo,"top")?0:Co);return Kc(Wo.x,us,Wo.width,Jo)},Jo=>{const us=O0(Wo,Wk(Jo)),Ps=l2(yo,"top")?us.y:us.y+Co;return Kc(us.x,Ps,us.width,us.height-Co)})})},onShow:()=>{oo(yo=>c2(yo,!0))},onShown:yo=>{oo(Co=>sp(Co,[x1.transitionClass,x1.fadeInClass])),Xn.get().each(Co=>{CZ(yo.element,Co),Xn.clear()})},onHide:yo=>{kZ(yo.element,Kn).fold(Xn.clear,Xn.set),oo(Co=>c2(Co,!1))},onHidden:()=>{oo(yo=>sp(yo,[x1.transitionClass]))},...x1},lazyViewport:yo=>W_(Qn,yo.element).fold(()=>{const Ro=tf(),Lo=RA(Qn),Wo=Ro.y+(l2(yo,"top")?Lo:0),jo=Ro.height-(l2(yo,"bottom")?Lo:0);return{bounds:Kc(Ro.x,Wo,Ro.width,jo),optScrollEnv:ko.none()}},Ro=>({bounds:Wk(Ro),optScrollEnv:ko.some({currentScrollTop:Ro.element.dom.scrollTop,scrollElmTop:uh(Ro.element).top})})),modes:[Un.header.getDockingMode()],onDocked:lo,onUndocked:lo}),...ho]};var C6=Object.freeze({__proto__:null,setup:xZ,isDocked:EZ,getBehaviours:w6});const k6=Qn=>{const Un=Qn.editor,Xn=Qn.sticky?w6:l4;return{uid:Qn.uid,dom:Qn.dom,components:Qn.components,behaviours:Zr(Xn(Un,Qn.sharedBackstage))}},_4=Ta([wf,Kf("items",Oa([Yp([KR,Pf("items",nf)]),nf]))].concat(Bk)),AZ=Qn=>Lu("GroupToolbarButton",_4,Qn),l$=[$f("text"),$f("tooltip"),$f("icon"),xh("search",!1,Oa([Jm,Ta([$f("placeholder")])],Qn=>uo(Qn)?Qn?ko.some({placeholder:ko.none()}):ko.none():ko.some(Qn))),ep("fetch"),Hd("onSetup",()=>xo)],oT=Ta([wf,...l$]),S4=Qn=>Lu("menubutton",oT,Qn),PZ=Ta([wf,mE,S1,yy,tD,b5,F_,Eh("presets","normal",["normal","color","listpreview"]),O5(1),Lk,tQ]),$Z=Qn=>Lu("SplitButton",PZ,Qn);var w4=Mp({factory:(Qn,Un)=>{const Xn=(oo,lo)=>{const ho=hs(lo,yo=>{const Co={type:"menubutton",text:yo.text,fetch:Lo=>{Lo(yo.getItems())}},Ro=S4(Co).mapError(Lo=>Gf(Lo)).getOrDie();return zE(Ro,"tox-mbtn",Un.backstage,ko.some("menuitem"))});Cl.set(oo,ho)},Kn={focus:Za.focusIn,setMenus:Xn};return{uid:Qn.uid,dom:Qn.dom,components:[],behaviours:Zr([Cl.config({}),Rl("menubar-events",[eu(oo=>{Qn.onSetup(oo)}),wr(eg(),(oo,lo)=>{Rd(oo.element,".tox-mbtn--active").each(ho=>{Bg(lo.event.target,".tox-mbtn").each(yo=>{Oc(ho,yo)||oo.getSystem().getByDom(ho).each(Co=>{oo.getSystem().getByDom(yo).each(Ro=>{vb.expand(Ro),vb.close(Co),ol.focus(Ro)})})})})}),wr(MO(),(oo,lo)=>{lo.event.prevFocus.bind(ho=>oo.getSystem().getByDom(ho).toOptional()).each(ho=>{lo.event.newFocus.bind(yo=>oo.getSystem().getByDom(yo).toOptional()).each(yo=>{vb.isOpen(ho)&&(vb.expand(yo),vb.close(ho))})})})]),Za.config({mode:"flow",selector:".tox-mbtn",onEscape:oo=>(Qn.onEscape(oo),ko.some(!0))}),sd.config({})]),apis:Kn,domModification:{attributes:{role:"menubar"}}}},name:"silver.Menubar",configFields:[Er("dom"),Er("uid"),Er("onEscape"),Er("backstage"),Gs("onSetup",xo)],apis:{focus:(Qn,Un)=>{Qn.focus(Un)},setMenus:(Qn,Un,Xn)=>{Qn.setMenus(Un,Xn)}}});const C4="⚡️Upgrade",k4="https://www.tiny.cloud/tinymce-self-hosted-premium-features/?utm_campaign=self_hosted_upgrade_promo&utm_source=tiny&utm_medium=referral",RZ=Qn=>({uid:Qn.uid,dom:Qn.dom,components:[{dom:{tag:"a",attributes:{href:k4,rel:"noopener",target:"_blank","aria-hidden":"true"},classes:["tox-promotion-link"],innerHtml:C4}}]}),c$="container",DZ=[Nf("slotBehaviours",[])],x6=Qn=>"",MZ=Qn=>{const Un=(()=>{const lo=[];return{slot:(yo,Co)=>(lo.push(yo),Px(c$,x6(yo),Co)),record:Mo(lo)}})(),Xn=Qn(Un),Kn=Un.record(),oo=hs(Kn,lo=>Xh({name:lo,pname:x6(lo)}));return Ix(c$,DZ,oo,NZ,Xn)},NZ=(Qn,Un)=>{const Xn=Ps=>Dx(Qn),Kn=(Ps,er)=>Au(Ps,Qn,er),oo=(Ps,er)=>(Bs,Ns)=>Au(Bs,Qn,Ns).map(Xs=>Ps(Xs,Ns)).getOr(er),lo=Ps=>(er,Bs)=>{Qs(Bs,Ns=>Ps(er,Ns))},ho=(Ps,er)=>Bu(Ps.element,"aria-hidden")!=="true",yo=(Ps,er)=>{if(!ho(Ps)){const Bs=Ps.element;El(Bs,"display"),_s(Bs,"aria-hidden"),Qa(Ps,kv(),{name:er,visible:!0})}},Co=(Ps,er)=>{if(ho(Ps)){const Bs=Ps.element;ya(Bs,"display","none"),aa(Bs,"aria-hidden","true"),Qa(Ps,kv(),{name:er,visible:!1})}},Ro=oo(ho,!1),Lo=oo(Co),Wo=lo(Lo),jo=Ps=>Wo(Ps,Xn()),Jo=oo(yo),us={getSlotNames:Xn,getSlot:Kn,isShowing:Ro,hideSlot:Lo,hideAllSlots:jo,showSlot:Jo};return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:j0(Qn.slotBehaviours),apis:us}},pp={...Vl({getSlotNames:(Qn,Un)=>Qn.getSlotNames(Un),getSlot:(Qn,Un,Xn)=>Qn.getSlot(Un,Xn),isShowing:(Qn,Un,Xn)=>Qn.isShowing(Un,Xn),hideSlot:(Qn,Un,Xn)=>Qn.hideSlot(Un,Xn),hideAllSlots:(Qn,Un)=>Qn.hideAllSlots(Un),showSlot:(Qn,Un,Xn)=>Qn.showSlot(Un,Xn)},Qn=>eb(Qn)),sketch:MZ},SG=Ta([S1,mE,Hd("onShow",xo),Hd("onHide",xo),F_]),E6=Qn=>Lu("sidebar",SG,Qn),LZ=Qn=>{const{sidebars:Un}=Qn.ui.registry.getAll();Qs(nc(Un),Xn=>{const Kn=Un[Xn],oo=()=>vs(ko.from(Qn.queryCommandValue("ToggleSidebar")),Xn);Qn.ui.registry.addToggleButton(Xn,{icon:Kn.icon,tooltip:Kn.tooltip,onAction:lo=>{Qn.execCommand("ToggleSidebar",!1,Xn),lo.setActive(oo())},onSetup:lo=>{lo.setActive(oo());const ho=()=>lo.setActive(oo());return Qn.on("ToggleSidebar",ho),()=>{Qn.off("ToggleSidebar",ho)}}})})},T6=Qn=>({element:()=>Qn.element.dom}),IZ=(Qn,Un)=>{const Xn=hs(nc(Un),Kn=>{const oo=Un[Kn],lo=Ec(E6(oo));return{name:Kn,getApi:T6,onSetup:lo.onSetup,onShow:lo.onShow,onHide:lo.onHide}});return hs(Xn,Kn=>{const oo=Ua(xo);return Qn.slot(Kn.name,{dom:{tag:"div",classes:["tox-sidebar__pane"]},behaviours:bE.unnamedEvents([H_(Kn,oo),_y(Kn,oo),wr(kv(),(lo,ho)=>{const yo=ho.event;Zs(Xn,Ro=>Ro.name===yo.name).each(Ro=>{(yo.visible?Ro.onShow:Ro.onHide)(Ro.getApi(lo))})})])})})},BZ=Qn=>pp.sketch(Un=>({dom:{tag:"div",classes:["tox-sidebar__pane-container"]},components:IZ(Un,Qn),slotBehaviours:bE.unnamedEvents([eu(Xn=>pp.hideAllSlots(Xn))])})),FZ=(Qn,Un,Xn)=>{ic.getCurrent(Qn).each(oo=>{Cl.set(oo,[BZ(Un)]);const lo=Xn==null?void 0:Xn.toLowerCase();qn(lo)&&Pl(Un,lo)&&ic.getCurrent(oo).each(ho=>{pp.showSlot(ho,lo),jg.immediateGrow(oo),El(oo.element,"width"),u$(Qn.element,"region")})})},u$=(Qn,Un)=>{aa(Qn,"role",Un)},HZ=(Qn,Un)=>{ic.getCurrent(Qn).each(Kn=>{ic.getCurrent(Kn).each(lo=>{jg.hasGrown(Kn)?pp.isShowing(lo,Un)?(jg.shrink(Kn),u$(Qn.element,"presentation")):(pp.hideAllSlots(lo),pp.showSlot(lo,Un),u$(Qn.element,"region")):(pp.hideAllSlots(lo),pp.showSlot(lo,Un),jg.grow(Kn),u$(Qn.element,"region"))})})},A6=Qn=>ic.getCurrent(Qn).bind(Xn=>jg.isGrowing(Xn)||jg.hasGrown(Xn)?ic.getCurrent(Xn).bind(lo=>Zs(pp.getSlotNames(lo),ho=>pp.isShowing(lo,ho))):ko.none()),x4=ba("FixSizeEvent"),E4=ba("AutoSizeEvent"),QZ=Qn=>({uid:Qn.uid,dom:{tag:"div",classes:["tox-sidebar"],attributes:{role:"presentation"}},components:[{dom:{tag:"div",classes:["tox-sidebar__slider"]},components:[],behaviours:Zr([sd.config({}),ol.config({}),jg.config({dimension:{property:"width"},closedClass:"tox-sidebar--sliding-closed",openClass:"tox-sidebar--sliding-open",shrinkingClass:"tox-sidebar--sliding-shrinking",growingClass:"tox-sidebar--sliding-growing",onShrunk:Un=>{ic.getCurrent(Un).each(pp.hideAllSlots),Wl(Un,E4)},onGrown:Un=>{Wl(Un,E4)},onStartGrow:Un=>{Qa(Un,x4,{width:ku(Un.element,"width").getOr("")})},onStartShrink:Un=>{Qa(Un,x4,{width:dd(Un.element)+"px"})}}),Cl.config({}),ic.config({find:Un=>{const Xn=Cl.contents(Un);return Nl(Xn)}})])}],behaviours:Zr([Og.childAt(0),Rl("sidebar-sliding-events",[wr(x4,(Un,Xn)=>{ya(Un.element,"width",Xn.event.width)}),wr(E4,(Un,Xn)=>{El(Un.element,"width")})])])});var P6=Object.freeze({__proto__:null,block:(Qn,Un,Xn,Kn)=>{aa(Qn.element,"aria-busy",!0);const oo=Un.getRoot(Qn).getOr(Qn),lo=Zr([Za.config({mode:"special",onTab:()=>ko.some(!0),onShiftTab:()=>ko.some(!0)}),ol.config({})]),ho=Kn(oo,lo),yo=oo.getSystem().build(ho);Cl.append(oo,Fm(yo)),yo.hasConfigured(Za)&&Un.focus&&Za.focusIn(yo),Xn.isBlocked()||Un.onBlock(Qn),Xn.blockWith(()=>Cl.remove(oo,yo))},unblock:(Qn,Un,Xn)=>{_s(Qn.element,"aria-busy"),Xn.isBlocked()&&Un.onUnblock(Qn),Xn.clear()},isBlocked:(Qn,Un,Xn)=>Xn.isBlocked()}),zZ=[Hd("getRoot",ko.none),Xd("focus",!0),rc("onBlock"),rc("onUnblock")],E1=Object.freeze({__proto__:null,init:()=>{const Qn=zS(),Un=Xn=>{Qn.set({destroy:Xn})};return ph({readState:Qn.isSet,blockWith:Un,clear:Qn.clear,isBlocked:Qn.isSet})}});const uv=Of({fields:zZ,name:"blocking",apis:P6,state:E1}),$6=Qn=>(Un,Xn)=>({dom:{tag:"div",attributes:{"aria-label":Qn.translate("Loading..."),tabindex:"0"},classes:["tox-throbber__busy-spinner"]},components:[{dom:vO('
    ')}]}),T4=Qn=>ic.getCurrent(Qn).each(Un=>Cd(Un.element,!0)),WZ=(Qn,Un)=>{const Xn="tabindex",Kn=`data-mce-${Xn}`;ko.from(Qn.iframeElement).map(Ds.fromDom).each(oo=>{Un?(Uo(oo,Xn).each(lo=>aa(oo,Kn,lo)),aa(oo,Xn,-1)):(_s(oo,Xn),Uo(oo,Kn).each(lo=>{aa(oo,Xn,lo),_s(oo,Kn)}))})},sT=(Qn,Un,Xn,Kn)=>{const oo=Un.element;if(WZ(Qn,Xn),Xn)uv.block(Un,$6(Kn)),El(oo,"display"),_s(oo,"aria-hidden"),Qn.hasFocus()&&T4(Un);else{const lo=ic.getCurrent(Un).exists(ho=>tO(ho.element));uv.unblock(Un),ya(oo,"display","none"),aa(oo,"aria-hidden","true"),lo&&Qn.focus()}},UZ=Qn=>({uid:Qn.uid,dom:{tag:"div",attributes:{"aria-hidden":"true"},classes:["tox-throbber"],styles:{display:"none"}},behaviours:Zr([Cl.config({}),uv.config({focus:!1}),ic.config({find:Un=>Nl(Un.components())})]),components:[]}),d$=Qn=>Qn.type==="focusin",ZZ=Qn=>d$(Qn)?(Qn.composed?Nl(Qn.composedPath()):ko.from(Qn.target)).map(Ds.fromDom).filter(fc).exists(Xn=>of(Xn,"mce-pastebin")):!1,f$=(Qn,Un,Xn)=>{const Kn=Ua(!1),oo=Hl(),lo=yo=>{Kn.get()&&!ZZ(yo)&&(yo.preventDefault(),T4(Un()),Qn.editorManager.setActive(Qn))};Qn.inline||Qn.on("PreInit",()=>{Qn.dom.bind(Qn.getWin(),"focusin",lo),Qn.on("BeforeExecCommand",yo=>{yo.command.toLowerCase()==="mcefocus"&&yo.value!==!0&&lo(yo)})});const ho=yo=>{yo!==Kn.get()&&(Kn.set(yo),sT(Qn,Un(),yo,Xn.providers),lI(Qn,yo))};Qn.on("ProgressState",yo=>{if(oo.on(clearTimeout),$o(yo.time)){const Co=$w.setEditorTimeout(Qn,()=>ho(yo.state),yo.time);oo.set(Co)}else ho(yo.state),oo.clear()})},qZ=(Qn,Un)=>za(Qn,(oo,lo)=>Un(lo,oo.len).fold(Mo(oo),yo=>({len:yo.finish,list:oo.list.concat([yo])})),{len:0,list:[]}).list,A4=(Qn,Un,Xn)=>({within:Qn,extra:Un,withinWidth:Xn}),T1=(Qn,Un,Xn)=>{const Kn=qZ(Qn,(yo,Co)=>{const Ro=Xn(yo);return ko.some({element:yo,start:Co,finish:Co+Ro,width:Ro})}),oo=ga(Kn,yo=>yo.finish<=Un),lo=Ca(oo,(yo,Co)=>yo+Co.width,0),ho=Kn.slice(oo.length);return{within:oo,extra:ho,withinWidth:lo}},h$=Qn=>hs(Qn,Un=>Un.element),m$=(Qn,Un,Xn)=>{const Kn=h$(Qn.concat(Un));return A4(Kn,[],Xn)},R6=(Qn,Un,Xn,Kn)=>{const oo=h$(Qn).concat([Xn]);return A4(oo,h$(Un),Kn)},D6=(Qn,Un,Xn)=>A4(h$(Qn),[],Xn),jZ=(Qn,Un,Xn)=>{const Kn=T1(Un,Qn,Xn);return Kn.extra.length===0?ko.some(Kn):ko.none()},M6=(Qn,Un,Xn,Kn)=>{const oo=jZ(Qn,Un,Xn).getOrThunk(()=>T1(Un,Qn-Xn(Kn),Xn)),lo=oo.within,ho=oo.extra,yo=oo.withinWidth;return ho.length===1&&ho[0].width<=Xn(Kn)?m$(lo,ho,yo):ho.length>=1?R6(lo,ho,Kn,yo):D6(lo,ho,yo)},N6=(Qn,Un)=>{const Xn=hs(Un,Kn=>Fm(Kn));cv.setGroups(Qn,Xn)},XZ=Qn=>gc(Qn,Un=>dg(Un.element).bind(Xn=>Un.getSystem().getByDom(Xn).toOptional())),L6=(Qn,Un,Xn)=>{const Kn=Un.builtGroups.get();if(Kn.length===0)return;const oo=Y0(Qn,Un,"primary"),lo=Gd.getCoupled(Qn,"overflowGroup");ya(oo.element,"visibility","hidden");const ho=Kn.concat([lo]),yo=XZ(ho);Xn([]),N6(oo,ho);const Co=dd(oo.element),Ro=M6(Co,Un.builtGroups.get(),Lo=>dd(Lo.element),lo);Ro.extra.length===0?(Cl.remove(oo,lo),Xn([])):(N6(oo,Ro.within),Xn(Ro.extra)),El(oo.element,"visibility"),Hf(oo.element),yo.each(ol.focus)},I6=Mo([Nf("splitToolbarBehaviours",[Gd]),pu("builtGroups",()=>Ua([]))]),YZ=Mo([Wb(["overflowToggledClass"]),I1("getOverflowBounds"),Er("lazySink"),pu("overflowGroups",()=>Ua([])),rc("onOpened"),rc("onClosed")].concat(I6())),GZ=Mo([Xh({factory:cv,schema:a2(),name:"primary"}),v1({schema:a2(),name:"overflow"}),v1({name:"overflow-button"}),v1({name:"overflow-group"})]),P4=Mo((Qn,Un)=>{mv(Qn,Math.floor(Un))}),B6=Mo([Wb(["toggledClass"]),Er("lazySink"),ep("fetch"),I1("getBounds"),hh("fireDismissalEventInstead",[Gs("event",q1())]),qb(),rc("onToggled")]),F6=Mo([v1({name:"button",overrides:Qn=>({dom:{attributes:{"aria-haspopup":"true"}},buttonBehaviours:Zr([Ql.config({toggleClass:Qn.markers.toggledClass,aria:{mode:"expanded"},toggleOnExecute:!1,onToggled:Qn.onToggled})])})}),v1({factory:cv,schema:a2(),name:"toolbar",overrides:Qn=>({toolbarBehaviours:Zr([Za.config({mode:"cyclic",onEscape:Un=>(Au(Un,Qn,"button").each(ol.focus),ko.none())})])})})]),rT=Hl(),KZ=(Qn,Un)=>{rT.set(!0),$4(Qn,Un),rT.clear()},$4=(Qn,Un)=>{const Xn=Gd.getCoupled(Qn,"toolbarSandbox");uc.isOpen(Xn)?uc.close(Xn):uc.open(Xn,Un.toolbar())},p$=(Qn,Un,Xn,Kn)=>{const oo=Xn.getBounds.map(ho=>ho()),lo=Xn.lazySink(Qn).getOrDie();jh.positionWithinBounds(lo,Un,{anchor:{type:"hotspot",hotspot:Qn,layouts:Kn,overrides:{maxWidthFunction:P4()}}},oo)},R4=(Qn,Un,Xn,Kn,oo)=>{cv.setGroups(Un,oo),p$(Qn,Un,Xn,Kn),Ql.on(Qn)},H6=(Qn,Un,Xn)=>{const Kn=I0(),oo=(ho,yo)=>{const Co=rT.get().getOr(!1);Xn.fetch().get(Ro=>{R4(Qn,yo,Xn,Un.layouts,Ro),Kn.link(Qn.element),Co||Za.focusIn(yo)})},lo=()=>{Ql.off(Qn),rT.get().getOr(!1)||ol.focus(Qn),Kn.unlink(Qn.element)};return{dom:{tag:"div",attributes:{id:Kn.id}},behaviours:Zr([Za.config({mode:"special",onEscape:ho=>(uc.close(ho),ko.some(!0))}),uc.config({onOpen:oo,onClose:lo,isPartOf:(ho,yo,Co)=>ob(yo,Co)||ob(Qn,Co),getAttachPoint:()=>Xn.lazySink(Qn).getOrDie()}),Om.config({channels:{...cw({isExtraPart:sr,...Xn.fireDismissalEventInstead.map(ho=>({fireEventInstead:{event:ho.event}})).getOr({})}),...C_({doReposition:()=>{uc.getState(Gd.getCoupled(Qn,"toolbarSandbox")).each(ho=>{p$(Qn,ho,Xn,Un.layouts)})}})}})])}},tS=Yh({name:"FloatingToolbarButton",factory:(Qn,Un,Xn,Kn)=>({...yh.sketch({...Kn.button(),action:oo=>{$4(oo,Kn)},buttonBehaviours:Wg.augment({dump:Kn.button().buttonBehaviours},[Gd.config({others:{toolbarSandbox:oo=>H6(oo,Xn,Qn)}})])}),apis:{setGroups:(oo,lo)=>{uc.getState(Gd.getCoupled(oo,"toolbarSandbox")).each(ho=>{R4(oo,ho,Qn,Xn.layouts,lo)})},reposition:oo=>{uc.getState(Gd.getCoupled(oo,"toolbarSandbox")).each(lo=>{p$(oo,lo,Qn,Xn.layouts)})},toggle:oo=>{$4(oo,Kn)},toggleWithoutFocusing:oo=>{KZ(oo,Kn)},getToolbar:oo=>uc.getState(Gd.getCoupled(oo,"toolbarSandbox")),isOpen:oo=>uc.isOpen(Gd.getCoupled(oo,"toolbarSandbox"))}}),configFields:B6(),partFields:F6(),apis:{setGroups:(Qn,Un,Xn)=>{Qn.setGroups(Un,Xn)},reposition:(Qn,Un)=>{Qn.reposition(Un)},toggle:(Qn,Un)=>{Qn.toggle(Un)},toggleWithoutFocusing:(Qn,Un)=>{Qn.toggleWithoutFocusing(Un)},getToolbar:(Qn,Un)=>Qn.getToolbar(Un),isOpen:(Qn,Un)=>Qn.isOpen(Un)}}),JZ=Mo([Er("items"),Wb(["itemSelector"]),Nf("tgroupBehaviours",[Za])]),Q6=Mo([vw({name:"items",unit:"item"})]),eq=(Qn,Un,Xn,Kn)=>({uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.tgroupBehaviours,[Za.config({mode:"flow",selector:Qn.markers.itemSelector})]),domModification:{attributes:{role:"toolbar"}}}),g$=Yh({name:"ToolbarGroup",configFields:JZ(),partFields:Q6(),factory:eq}),V6=Qn=>hs(Qn,Un=>Fm(Un)),z6=(Qn,Un,Xn)=>{L6(Qn,Xn,Kn=>{Xn.overflowGroups.set(Kn),Un.getOpt(Qn).each(oo=>{tS.setGroups(oo,V6(Kn))})})},tq=(Qn,Un,Xn,Kn)=>{const oo=ou(tS.sketch({fetch:()=>Cm.nu(lo=>{lo(V6(Qn.overflowGroups.get()))}),layouts:{onLtr:()=>[eh,gf],onRtl:()=>[gf,eh],onBottomLtr:()=>[$l,bf],onBottomRtl:()=>[bf,$l]},getBounds:Xn.getOverflowBounds,lazySink:Qn.lazySink,fireDismissalEventInstead:{},markers:{toggledClass:Qn.markers.overflowToggledClass},parts:{button:Kn["overflow-button"](),toolbar:Kn.overflow()},onToggled:(lo,ho)=>Qn[ho?"onOpened":"onClosed"](lo)}));return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.splitToolbarBehaviours,[Gd.config({others:{overflowGroup:()=>g$.sketch({...Kn["overflow-group"](),items:[oo.asSpec()]})}})]),apis:{setGroups:(lo,ho)=>{Qn.builtGroups.set(hs(ho,lo.getSystem().build)),z6(lo,oo,Qn)},refresh:lo=>z6(lo,oo,Qn),toggle:lo=>{oo.getOpt(lo).each(ho=>{tS.toggle(ho)})},toggleWithoutFocusing:lo=>{oo.getOpt(lo).each(tS.toggleWithoutFocusing)},isOpen:lo=>oo.getOpt(lo).map(tS.isOpen).getOr(!1),reposition:lo=>{oo.getOpt(lo).each(ho=>{tS.reposition(ho)})},getOverflow:lo=>oo.getOpt(lo).bind(tS.getToolbar)},domModification:{attributes:{role:"group"}}}},W6=Yh({name:"SplitFloatingToolbar",configFields:YZ(),partFields:GZ(),factory:tq,apis:{setGroups:(Qn,Un,Xn)=>{Qn.setGroups(Un,Xn)},refresh:(Qn,Un)=>{Qn.refresh(Un)},reposition:(Qn,Un)=>{Qn.reposition(Un)},toggle:(Qn,Un)=>{Qn.toggle(Un)},toggleWithoutFocusing:(Qn,Un)=>{Qn.toggle(Un)},isOpen:(Qn,Un)=>Qn.isOpen(Un),getOverflow:(Qn,Un)=>Qn.getOverflow(Un)}}),nq=Mo([Wb(["closedClass","openClass","shrinkingClass","growingClass","overflowToggledClass"]),rc("onOpened"),rc("onClosed")].concat(I6())),oq=Mo([Xh({factory:cv,schema:a2(),name:"primary"}),Xh({factory:cv,schema:a2(),name:"overflow",overrides:Qn=>({toolbarBehaviours:Zr([jg.config({dimension:{property:"height"},closedClass:Qn.markers.closedClass,openClass:Qn.markers.openClass,shrinkingClass:Qn.markers.shrinkingClass,growingClass:Qn.markers.growingClass,onShrunk:Un=>{Au(Un,Qn,"overflow-button").each(Xn=>{Ql.off(Xn),ol.focus(Xn)}),Qn.onClosed(Un)},onGrown:Un=>{Za.focusIn(Un),Qn.onOpened(Un)},onStartGrow:Un=>{Au(Un,Qn,"overflow-button").each(Ql.on)}}),Za.config({mode:"acyclic",onEscape:Un=>(Au(Un,Qn,"overflow-button").each(ol.focus),ko.some(!0))})])})}),v1({name:"overflow-button",overrides:Qn=>({buttonBehaviours:Zr([Ql.config({toggleClass:Qn.markers.overflowToggledClass,aria:{mode:"pressed"},toggleOnExecute:!1})])})}),v1({name:"overflow-group"})]),sq=(Qn,Un)=>Au(Qn,Un,"overflow").map(jg.hasGrown).getOr(!1),U6=(Qn,Un)=>{Au(Qn,Un,"overflow-button").bind(()=>Au(Qn,Un,"overflow")).each(Xn=>{b$(Qn,Un),jg.toggleGrow(Xn)})},b$=(Qn,Un)=>{Au(Qn,Un,"overflow").each(Xn=>{L6(Qn,Un,Kn=>{const oo=hs(Kn,lo=>Fm(lo));cv.setGroups(Xn,oo)}),Au(Qn,Un,"overflow-button").each(Kn=>{jg.hasGrown(Xn)&&Ql.on(Kn)}),jg.refresh(Xn)})},rq=(Qn,Un,Xn,Kn)=>{const oo="alloy.toolbar.toggle",lo=(ho,yo)=>{const Co=hs(yo,ho.getSystem().build);Qn.builtGroups.set(Co)};return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:sf(Qn.splitToolbarBehaviours,[Gd.config({others:{overflowGroup:ho=>g$.sketch({...Kn["overflow-group"](),items:[yh.sketch({...Kn["overflow-button"](),action:yo=>{Wl(ho,oo)}})]})}}),Rl("toolbar-toggle-events",[wr(oo,ho=>{U6(ho,Qn)})])]),apis:{setGroups:(ho,yo)=>{lo(ho,yo),b$(ho,Qn)},refresh:ho=>b$(ho,Qn),toggle:ho=>U6(ho,Qn),isOpen:ho=>sq(ho,Qn)},domModification:{attributes:{role:"group"}}}},D4=Yh({name:"SplitSlidingToolbar",configFields:nq(),partFields:oq(),factory:rq,apis:{setGroups:(Qn,Un,Xn)=>{Qn.setGroups(Un,Xn)},refresh:(Qn,Un)=>{Qn.refresh(Un)},toggle:(Qn,Un)=>{Qn.toggle(Un)},isOpen:(Qn,Un)=>Qn.isOpen(Un)}}),v$=Qn=>{const Un=Qn.title.fold(()=>({}),Xn=>({attributes:{title:Xn}}));return{dom:{tag:"div",classes:["tox-toolbar__group"],...Un},components:[g$.parts.items({})],items:Qn.items,markers:{itemSelector:"*:not(.tox-split-button) > .tox-tbtn:not([disabled]), .tox-split-button:not([disabled]), .tox-toolbar-nav-js:not([disabled]), .tox-number-input:not([disabled])"},tgroupBehaviours:Zr([sd.config({}),ol.config({})])}},y$=Qn=>g$.sketch(v$(Qn)),iT=(Qn,Un)=>{const Xn=eu(Kn=>{const oo=hs(Qn.initGroups,y$);cv.setGroups(Kn,oo)});return Zr([Lf.toolbarButton(Qn.providers.isDisabled),jf(),Za.config({mode:Un,onEscape:Qn.onEscape,selector:".tox-toolbar__group"}),Rl("toolbar-events",[Xn])])},Z6=Qn=>{const Un=Qn.cyclicKeying?"cyclic":"acyclic";return{uid:Qn.uid,dom:{tag:"div",classes:["tox-toolbar-overlord"]},parts:{"overflow-group":v$({title:ko.none(),items:[]}),"overflow-button":rU({name:"more",icon:ko.some("more-drawer"),enabled:!0,tooltip:ko.some("Reveal or hide additional toolbar items"),primary:!1,buttonType:ko.none(),borderless:!1},ko.none(),Qn.providers)},splitToolbarBehaviours:iT(Qn,Un)}},q6=Qn=>{const Un=Z6(Qn),Xn=4,Kn=W6.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}});return W6.sketch({...Un,lazySink:Qn.getSink,getOverflowBounds:()=>{const oo=Qn.moreDrawerData.lazyHeader().element,lo=cf(oo),ho=Xf(oo),yo=cf(ho),Co=Math.max(ho.dom.scrollHeight,yo.height);return Kc(lo.x+Xn,yo.y,lo.width-Xn*2,Co)},parts:{...Un.parts,overflow:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:Qn.attributes}}},components:[Kn],markers:{overflowToggledClass:"tox-tbtn--enabled"},onOpened:oo=>Qn.onToggled(oo,!0),onClosed:oo=>Qn.onToggled(oo,!1)})},iq=Qn=>{const Un=D4.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}}),Xn=D4.parts.overflow({dom:{tag:"div",classes:["tox-toolbar__overflow"]}}),Kn=Z6(Qn);return D4.sketch({...Kn,components:[Un,Xn],markers:{openClass:"tox-toolbar__overflow--open",closedClass:"tox-toolbar__overflow--closed",growingClass:"tox-toolbar__overflow--growing",shrinkingClass:"tox-toolbar__overflow--shrinking",overflowToggledClass:"tox-tbtn--enabled"},onOpened:oo=>{oo.getSystem().broadcastOn([eS()],{type:"opened"}),Qn.onToggled(oo,!0)},onClosed:oo=>{oo.getSystem().broadcastOn([eS()],{type:"closed"}),Qn.onToggled(oo,!1)}})},O$=Qn=>{const Un=Qn.cyclicKeying?"cyclic":"acyclic";return cv.sketch({uid:Qn.uid,dom:{tag:"div",classes:["tox-toolbar"].concat(Qn.type===qg.scrolling?["tox-toolbar--scrolling"]:[])},components:[cv.parts.groups({})],toolbarBehaviours:iT(Qn,Un)})},aq=[yy,S1,$f("tooltip"),Eh("buttonType","secondary",["primary","secondary"]),Xd("borderless",!1),ep("onAction")],lq=[...aq,_O,hd("type",["button"])],cq=[...aq,Xd("active",!1),hd("type",["togglebutton"])],_$={button:lq,togglebutton:cq},uq=[hd("type",["group"]),Th("buttons",[],jl("type",_$))],S$=jl("type",{..._$,group:uq}),j6=Ta([Th("buttons",[],S$),ep("onShow"),ep("onHide")]),X6=Qn=>Lu("view",j6,Qn),M4=(Qn,Un)=>{var Xn,Kn;const oo=Qn.type==="togglebutton",lo=Qn.icon.map(Xs=>Y_(Xs,Un.icons)).map(ou),yo=Xs=>{const Hr=qr=>{lo.map(na=>na.getOpt(Xs).each(Dl=>{Cl.set(Dl,[Y_(qr,Un.icons)])}))},kr=qr=>{const na=Xs.element;qr?($d(na,"tox-button--enabled"),aa(na,"aria-pressed",!0)):(Yu(na,"tox-button--enabled"),_s(na,"aria-pressed"))},Or=()=>of(Xs.element,"tox-button--enabled");if(oo)return Qn.onAction({setIcon:Hr,setActive:kr,isActive:Or});if(Qn.type==="button")return Qn.onAction({setIcon:Hr})},Co={...Qn,name:oo?Qn.text.getOr(Qn.icon.getOr("")):(Xn=Qn.text)!==null&&Xn!==void 0?Xn:Qn.icon.getOr(""),primary:Qn.buttonType==="primary",buttonType:ko.from(Qn.buttonType),tooltip:Qn.tooltip,icon:Qn.icon,enabled:!0,borderless:Qn.borderless},Ro=ZM((Kn=Qn.buttonType)!==null&&Kn!==void 0?Kn:"secondary"),Lo=oo?Qn.text.map(Un.translate):ko.some(Un.translate(Qn.text)),Wo=Lo.map(wd),jo=Co.tooltip.or(Lo).map(Xs=>({"aria-label":Un.translate(Xs),title:Un.translate(Xs)})).getOr({}),Jo=lo.map(Xs=>Xs.asSpec()),us=Hk([Jo,Wo]),Ps=Qn.icon.isSome()&&Wo.isSome(),er={tag:"button",classes:Ro.concat(...Qn.icon.isSome()&&!Ps?["tox-button--icon"]:[]).concat(...Ps?["tox-button--icon-and-text"]:[]).concat(...Qn.borderless?["tox-button--naked"]:[]).concat(...Qn.type==="togglebutton"&&Qn.active?["tox-button--enabled"]:[]),attributes:jo},Bs=[],Ns=XP(Co,ko.some(yo),Bs,er,us,Un);return yh.sketch(Ns)},Y6=(Qn,Un)=>M4(Qn,Un),G6=(Qn,Un)=>({dom:{tag:"div",classes:["tox-view__toolbar__group"]},components:hs(Qn.buttons,Xn=>Y6(Xn,Un))}),jw=Tr().deviceType,K6=jw.isPhone(),dq=jw.isTablet(),fq=Qn=>{let Un=!1;const Xn=hs(Qn.buttons,Kn=>Kn.type==="group"?(Un=!0,G6(Kn,Qn.providers)):Y6(Kn,Qn.providers));return{uid:Qn.uid,dom:{tag:"div",classes:[Un?"tox-view__toolbar":"tox-view__header",...K6||dq?["tox-view--mobile","tox-view--scrolling"]:[]]},behaviours:Zr([ol.config({}),Za.config({mode:"flow",selector:"button, .tox-button",focusInside:fo.OnEnterOrSpaceMode})]),components:Un?Xn:[rv.sketch({dom:{tag:"div",classes:["tox-view__header-start"]},components:[]}),rv.sketch({dom:{tag:"div",classes:["tox-view__header-end"]},components:Xn})]}},hq=Qn=>({uid:Qn.uid,dom:{tag:"div",classes:["tox-view__pane"]}}),N4=(Qn,Un,Xn,Kn)=>{const oo={getPane:lo=>rh.getPart(lo,Qn,"pane"),getOnShow:lo=>Qn.viewConfig.onShow,getOnHide:lo=>Qn.viewConfig.onHide};return{uid:Qn.uid,dom:Qn.dom,components:Un,apis:oo}};var u2=Yh({name:"silver.View",configFields:[Er("viewConfig")],partFields:[up({factory:{sketch:fq},schema:[Er("buttons"),Er("providers")],name:"header"}),up({factory:{sketch:hq},schema:[],name:"pane"})],factory:N4,apis:{getPane:(Qn,Un)=>Qn.getPane(Un),getOnShow:(Qn,Un)=>Qn.getOnShow(Un),getOnHide:(Qn,Un)=>Qn.getOnHide(Un)}});const mq=(Qn,Un,Xn)=>rd(Un,(Kn,oo)=>{const lo=Ec(X6(Kn));return Qn.slot(oo,u2.sketch({dom:{tag:"div",classes:["tox-view"]},viewConfig:lo,components:[...lo.buttons.length>0?[u2.parts.header({buttons:lo.buttons,providers:Xn})]:[],u2.parts.pane({})]}))}),J6=(Qn,Un)=>pp.sketch(Xn=>({dom:{tag:"div",classes:["tox-view-wrap__slot-container"]},components:mq(Xn,Qn,Un),slotBehaviours:bE.unnamedEvents([eu(Kn=>pp.hideAllSlots(Kn))])})),L4=Qn=>Zs(pp.getSlotNames(Qn),Un=>pp.isShowing(Qn,Un)),w$=Qn=>{const Un=Qn.element;ya(Un,"display","none"),aa(Un,"aria-hidden","true")},I4=Qn=>{const Un=Qn.element;El(Un,"display"),_s(Un,"aria-hidden")},pq=Qn=>({getContainer:Mo(Qn)}),e7=(Qn,Un,Xn)=>{pp.getSlot(Qn,Un).each(Kn=>{u2.getPane(Kn).each(oo=>{Xn(Kn)(pq(oo.element.dom))})})},t7=(Qn,Un)=>e7(Qn,Un,u2.getOnShow),gq=(Qn,Un)=>e7(Qn,Un,u2.getOnHide);var C$=Mp({factory:(Qn,Un)=>{const lo={setViews:(ho,yo)=>{Cl.set(ho,[J6(yo,Un.backstage.shared.providers)])},whichView:ho=>ic.getCurrent(ho).bind(L4),toggleView:(ho,yo,Co,Ro)=>ic.getCurrent(ho).exists(Lo=>{const Wo=L4(Lo),jo=Wo.exists(us=>Ro===us),Jo=pp.getSlot(Lo,Ro).isSome();return Jo&&(pp.hideAllSlots(Lo),jo?(w$(ho),yo()):(Co(),I4(ho),pp.showSlot(Lo,Ro),t7(Lo,Ro)),Wo.each(us=>gq(Lo,us))),Jo})};return{uid:Qn.uid,dom:{tag:"div",classes:["tox-view-wrap"],attributes:{"aria-hidden":"true"},styles:{display:"none"}},components:[],behaviours:Zr([Cl.config({}),ic.config({find:ho=>{const yo=Cl.contents(ho);return Nl(yo)}})]),apis:lo}},name:"silver.ViewWrapper",configFields:[Er("backstage")],apis:{setViews:(Qn,Un,Xn)=>Qn.setViews(Un,Xn),toggleView:(Qn,Un,Xn,Kn,oo)=>Qn.toggleView(Un,Xn,Kn,oo),whichView:(Qn,Un)=>Qn.whichView(Un)}});const n7=(Qn,Un,Xn)=>{let Kn=!1;const oo={getSocket:lo=>rh.getPart(lo,Qn,"socket"),setSidebar:(lo,ho,yo)=>{rh.getPart(lo,Qn,"sidebar").each(Co=>FZ(Co,ho,yo))},toggleSidebar:(lo,ho)=>{rh.getPart(lo,Qn,"sidebar").each(yo=>HZ(yo,ho))},whichSidebar:lo=>rh.getPart(lo,Qn,"sidebar").bind(A6).getOrNull(),getHeader:lo=>rh.getPart(lo,Qn,"header"),getToolbar:lo=>rh.getPart(lo,Qn,"toolbar"),setToolbar:(lo,ho)=>{rh.getPart(lo,Qn,"toolbar").each(yo=>{const Co=hs(ho,y$);yo.getApis().setGroups(yo,Co)})},setToolbars:(lo,ho)=>{rh.getPart(lo,Qn,"multiple-toolbar").each(yo=>{const Co=hs(ho,Ro=>hs(Ro,y$));o$.setItems(yo,Co)})},refreshToolbar:lo=>{rh.getPart(lo,Qn,"toolbar").each(yo=>yo.getApis().refresh(yo))},toggleToolbarDrawer:lo=>{rh.getPart(lo,Qn,"toolbar").each(ho=>{Ma(ho.getApis().toggle,yo=>yo(ho))})},toggleToolbarDrawerWithoutFocusing:lo=>{rh.getPart(lo,Qn,"toolbar").each(ho=>{Ma(ho.getApis().toggleWithoutFocusing,yo=>yo(ho))})},isToolbarDrawerToggled:lo=>rh.getPart(lo,Qn,"toolbar").bind(ho=>ko.from(ho.getApis().isOpen).map(yo=>yo(ho))).getOr(!1),getThrobber:lo=>rh.getPart(lo,Qn,"throbber"),focusToolbar:lo=>{rh.getPart(lo,Qn,"toolbar").orThunk(()=>rh.getPart(lo,Qn,"multiple-toolbar")).each(yo=>{Za.focusIn(yo)})},setMenubar:(lo,ho)=>{rh.getPart(lo,Qn,"menubar").each(yo=>{w4.setMenus(yo,ho)})},focusMenubar:lo=>{rh.getPart(lo,Qn,"menubar").each(ho=>{w4.focus(ho)})},setViews:(lo,ho)=>{rh.getPart(lo,Qn,"viewWrapper").each(yo=>{C$.setViews(yo,ho)})},toggleView:(lo,ho)=>rh.getPart(lo,Qn,"viewWrapper").exists(yo=>C$.toggleView(yo,()=>oo.showMainView(lo),()=>oo.hideMainView(lo),ho)),whichView:lo=>rh.getPart(lo,Qn,"viewWrapper").bind(C$.whichView).getOrNull(),hideMainView:lo=>{Kn=oo.isToolbarDrawerToggled(lo),Kn&&oo.toggleToolbarDrawer(lo),rh.getPart(lo,Qn,"editorContainer").each(ho=>{const yo=ho.element;ya(yo,"display","none"),aa(yo,"aria-hidden","true")})},showMainView:lo=>{Kn&&oo.toggleToolbarDrawer(lo),rh.getPart(lo,Qn,"editorContainer").each(ho=>{const yo=ho.element;El(yo,"display"),_s(yo,"aria-hidden")})}};return{uid:Qn.uid,dom:Qn.dom,components:Un,apis:oo,behaviours:Qn.behaviours}},bq=Ty.optional({factory:w4,name:"menubar",schema:[Er("backstage")]}),vq=Qn=>Qn.type===qg.sliding?iq:Qn.type===qg.floating?q6:O$,B4=Ty.optional({factory:{sketch:Qn=>o$.sketch({uid:Qn.uid,dom:Qn.dom,listBehaviours:Zr([Za.config({mode:"acyclic",selector:".tox-toolbar"})]),makeItem:()=>O$({type:Qn.type,uid:ba("multiple-toolbar-item"),cyclicKeying:!1,initGroups:[],providers:Qn.providers,onEscape:()=>(Qn.onEscape(),ko.some(!0))}),setupItem:(Un,Xn,Kn,oo)=>{cv.setGroups(Xn,Kn)},shell:!0})},name:"multiple-toolbar",schema:[Er("dom"),Er("onEscape")]}),yq=Ty.optional({factory:{sketch:Qn=>{const Un=vq(Qn),Xn={type:Qn.type,uid:Qn.uid,onEscape:()=>(Qn.onEscape(),ko.some(!0)),onToggled:(Kn,oo)=>Qn.onToolbarToggled(oo),cyclicKeying:!1,initGroups:[],getSink:Qn.getSink,providers:Qn.providers,moreDrawerData:{lazyToolbar:Qn.lazyToolbar,lazyMoreButton:Qn.lazyMoreButton,lazyHeader:Qn.lazyHeader},attributes:Qn.attributes};return Un(Xn)}},name:"toolbar",schema:[Er("dom"),Er("onEscape"),Er("getSink")]}),Oq=Ty.optional({factory:{sketch:k6},name:"header",schema:[Er("dom")]}),o7=Ty.optional({factory:{sketch:RZ},name:"promotion",schema:[Er("dom")]}),_q=Ty.optional({name:"socket",schema:[Er("dom")]}),s7=Ty.optional({factory:{sketch:QZ},name:"sidebar",schema:[Er("dom")]}),Sq=Ty.optional({factory:{sketch:UZ},name:"throbber",schema:[Er("dom")]}),r7=Ty.optional({factory:C$,name:"viewWrapper",schema:[Er("backstage")]}),wq=Qn=>({uid:Qn.uid,dom:{tag:"div",classes:["tox-editor-container"]},components:Qn.components}),Cq=Ty.optional({factory:{sketch:wq},name:"editorContainer",schema:[]});var Hu=Yh({name:"OuterContainer",factory:n7,configFields:[Er("dom"),Er("behaviours")],partFields:[Oq,bq,yq,B4,_q,s7,o7,Sq,r7,Cq],apis:{getSocket:(Qn,Un)=>Qn.getSocket(Un),setSidebar:(Qn,Un,Xn,Kn)=>{Qn.setSidebar(Un,Xn,Kn)},toggleSidebar:(Qn,Un,Xn)=>{Qn.toggleSidebar(Un,Xn)},whichSidebar:(Qn,Un)=>Qn.whichSidebar(Un),getHeader:(Qn,Un)=>Qn.getHeader(Un),getToolbar:(Qn,Un)=>Qn.getToolbar(Un),setToolbar:(Qn,Un,Xn)=>{Qn.setToolbar(Un,Xn)},setToolbars:(Qn,Un,Xn)=>{Qn.setToolbars(Un,Xn)},refreshToolbar:(Qn,Un)=>Qn.refreshToolbar(Un),toggleToolbarDrawer:(Qn,Un)=>{Qn.toggleToolbarDrawer(Un)},toggleToolbarDrawerWithoutFocusing:(Qn,Un)=>{Qn.toggleToolbarDrawerWithoutFocusing(Un)},isToolbarDrawerToggled:(Qn,Un)=>Qn.isToolbarDrawerToggled(Un),getThrobber:(Qn,Un)=>Qn.getThrobber(Un),setMenubar:(Qn,Un,Xn)=>{Qn.setMenubar(Un,Xn)},focusMenubar:(Qn,Un)=>{Qn.focusMenubar(Un)},focusToolbar:(Qn,Un)=>{Qn.focusToolbar(Un)},setViews:(Qn,Un,Xn)=>{Qn.setViews(Un,Xn)},toggleView:(Qn,Un,Xn)=>Qn.toggleView(Un,Xn),whichView:(Qn,Un)=>Qn.whichView(Un)}});const i7="file edit view insert format tools table help",a7={file:{title:"File",items:"newdocument restoredraft | preview | export print | deleteallconversations"},edit:{title:"Edit",items:"undo redo | cut copy paste pastetext | selectall | searchreplace"},view:{title:"View",items:"code | visualaid visualchars visualblocks | spellchecker | preview fullscreen | showcomments"},insert:{title:"Insert",items:"image link media addcomment pageembed template inserttemplate codesample inserttable accordion | charmap emoticons hr | pagebreak nonbreaking anchor tableofcontents footnotes | mergetags | insertdatetime"},format:{title:"Format",items:"bold italic underline strikethrough superscript subscript codeformat | styles blocks fontfamily fontsize align lineheight | forecolor backcolor | language | removeformat"},tools:{title:"Tools",items:"aidialog aishortcuts | spellchecker spellcheckerlanguage | autocorrect capitalization | a11ycheck code typography wordcount addtemplate"},table:{title:"Table",items:"inserttable | cell row column | advtablesort | tableprops deletetable"},help:{title:"Help",items:"help"}},kq=(Qn,Un,Xn)=>{const Kn=kR(Xn).split(/[ ,]/);return{text:Qn.title,getItems:()=>fs(Qn.items,oo=>{const lo=oo.toLowerCase();return lo.trim().length===0?[]:Br(Kn,ho=>ho===lo)?[]:lo==="separator"||lo==="|"?[{type:"separator"}]:Un.menuItems[lo]?[Un.menuItems[lo]]:[]})}},F4=Qn=>Qn.split(" "),k$=(Qn,Un)=>{const Xn={...a7,...Un.menus},Kn=nc(Un.menus).length>0,oo=Un.menubar===void 0||Un.menubar===!0?F4(i7):F4(Un.menubar===!1?"":Un.menubar),lo=ga(oo,yo=>{const Co=Pl(a7,yo);return Kn?Co||Rr(Un.menus,yo).exists(Ro=>Pl(Ro,"items")):Co}),ho=hs(lo,yo=>{const Co=Xn[yo];return kq({title:Co.title,items:F4(Co.items)},Un,Qn)});return ga(ho,yo=>{const Co=Ro=>qn(Ro)||Ro.type!=="separator";return yo.getItems().length>0&&Br(yo.getItems(),Co)})},H4=Qn=>{const Un=()=>{Qn._skinLoaded=!0,RQ(Qn)};return()=>{Qn.initialized?Un():Qn.on("init",Un)}},xq=(Qn,Un)=>()=>OD(Qn,{message:Un}),l7=(Qn,Un,Xn)=>(Qn.on("remove",()=>Xn.unload(Un)),Xn.load(Un)),Q4=(Qn,Un,Xn,Kn)=>(Qn.on("remove",()=>Kn.unloadRawCss(Un)),Kn.loadRawCss(Un,Xn)),Eq=async(Qn,Un)=>{const Kn="ui/"+FA(Qn).getOr("default")+"/skin.css",oo=tinymce.Resource.get(Kn);if(qn(oo))return Promise.resolve(Q4(Qn,Kn,oo,Qn.ui.styleSheetLoader));{const lo=Un+"/skin.min.css";return l7(Qn,lo,Qn.ui.styleSheetLoader)}},Tq=async(Qn,Un)=>{if(Wa(Ds.fromDom(Qn.getElement()))){const oo="ui/"+FA(Qn).getOr("default")+"/skin.shadowdom.css",lo=tinymce.Resource.get(oo);if(qn(lo))return Q4(Qn,oo,lo,Mw.DOM.styleSheetLoader),Promise.resolve();{const ho=Un+"/skin.shadowdom.min.css";return l7(Qn,ho,Mw.DOM.styleSheetLoader)}}},Aq=async(Qn,Un)=>{FA(Un).fold(()=>{const Kn=BA(Un);Kn&&Un.contentCSS.push(Kn+(Qn?"/content.inline":"/content")+".min.css")},Kn=>{const oo="ui/"+Kn+(Qn?"/content.inline":"/content")+".css",lo=tinymce.Resource.get(oo);if(qn(lo))Q4(Un,oo,lo,Un.ui.styleSheetLoader);else{const ho=BA(Un);ho&&Un.contentCSS.push(ho+(Qn?"/content.inline":"/content")+".min.css")}});const Xn=BA(Un);if(!RR(Un)&&qn(Xn))return Promise.all([Eq(Un,Xn),Tq(Un,Xn)]).then()},c7=(Qn,Un)=>Aq(Qn,Un).then(H4(Un),xq(Un,"Skin could not be loaded")),Pq=ps(c7,!1),$q=ps(c7,!0),Xw=(Qn,Un,Xn)=>Qn.translate([Un,Qn.translate(Xn)]),x$=(Qn,Un)=>{const Xn=(ho,yo,Co,Ro)=>{const Lo=Qn.shared.providers.translate(ho.title);if(ho.type==="separator")return ko.some({type:"separator",text:Lo});if(ho.type==="submenu"){const Wo=fs(ho.getStyleItems(),jo=>Kn(jo,yo,Ro));return yo===0&&Wo.length<=0?ko.none():ko.some({type:"nestedmenuitem",text:Lo,enabled:Wo.length>0,getSubmenuItems:()=>fs(ho.getStyleItems(),jo=>Kn(jo,yo,Ro))})}else return ko.some({type:"togglemenuitem",text:Lo,icon:ho.icon,active:ho.isSelected(Ro),enabled:!Co,onAction:Un.onAction(ho),...ho.getStylePreview().fold(()=>({}),Wo=>({meta:{style:Wo}}))})},Kn=(ho,yo,Co)=>{const Ro=ho.type==="formatter"&&Un.isInvalid(ho);return yo===0?Ro?[]:Xn(ho,yo,!1,Co).toArray():Xn(ho,yo,Ro,Co).toArray()},oo=ho=>{const yo=Un.getCurrentValue(),Co=Un.shouldHide?0:1;return fs(ho,Ro=>Kn(Ro,Co,yo))};return{validateItems:oo,getFetch:(ho,yo)=>(Co,Ro)=>{const Lo=yo(),Wo=oo(Lo),jo=t2(Wo,sv.CLOSE_ON_EXECUTE,ho,{isHorizontalMenu:!1,search:ko.none()});Ro(jo)}}},nS=(Qn,Un,Xn)=>{const Kn=Xn.dataset,oo=Kn.type==="basic"?()=>hs(Kn.data,lo=>JM(lo,Xn.isSelectedFor,Xn.getPreviewFor)):Kn.getData;return{items:x$(Un,Xn),getStyleItems:oo}},d2=(Qn,Un,Xn,Kn,oo)=>{const{items:lo,getStyleItems:ho}=nS(Qn,Un,Xn),yo=Ro=>({getComponent:Mo(Ro),setTooltip:Lo=>{const Wo=Un.shared.providers.translate(Lo);Qp(Ro.element,{"aria-label":Wo,title:Wo})}}),Co=Ro=>{const Lo=Wo=>Ro.setTooltip(Xw(Qn,Kn,Wo.value));return Qn.on(oo,Lo),SE(a0(Qn,"NodeChange",Wo=>{const jo=Wo.getComponent();Xn.updateText(jo),Ja.set(Wo.getComponent(),!Qn.selection.isEditable())})(Ro),()=>Qn.off(oo,Lo))};return $M({text:Xn.icon.isSome()?ko.none():Xn.text,icon:Xn.icon,tooltip:ko.from(Xn.tooltip),role:ko.none(),fetch:lo.getFetch(Un,ho),onSetup:Co,getApi:yo,columns:1,presets:"normal",classes:Xn.icon.isSome()?[]:["bespoke"],dropdownBehaviours:[]},"tox-tbtn",Un.shared)},oS=Qn=>hs(Qn,Un=>{let Xn=Un,Kn=Un;const oo=Un.split("=");return oo.length>1&&(Xn=oo[0],Kn=oo[1]),{title:Xn,format:Kn}}),u7=Qn=>({type:"basic",data:Qn});var f2;(function(Qn){Qn[Qn.SemiColon=0]="SemiColon",Qn[Qn.Space=1]="Space"})(f2||(f2={}));const Rq=(Qn,Un)=>Un===f2.SemiColon?Qn.replace(/;$/,"").split(";"):Qn.split(" "),V4=(Qn,Un,Xn)=>{const Kn=Qn.options.get(Un);return{type:"basic",data:oS(Rq(Kn,Xn))}},Dq="Align",d7="Alignment {0}",f7="left",z4=[{title:"Left",icon:"align-left",format:"alignleft",command:"JustifyLeft"},{title:"Center",icon:"align-center",format:"aligncenter",command:"JustifyCenter"},{title:"Right",icon:"align-right",format:"alignright",command:"JustifyRight"},{title:"Justify",icon:"align-justify",format:"alignjustify",command:"JustifyFull"}],W4=Qn=>{const Un=()=>Zs(z4,yo=>Qn.formatter.match(yo.format)),Xn=yo=>()=>Qn.formatter.match(yo),Kn=yo=>ko.none,oo=yo=>{const Ro=Un().fold(Mo(f7),Lo=>Lo.title.toLowerCase());Qa(yo,G_,{icon:`align-${Ro}`}),LQ(Qn,{value:Ro})},lo=u7(z4),ho=yo=>()=>Zs(z4,Co=>Co.format===yo.format).each(Co=>Qn.execCommand(Co.command));return{tooltip:Xw(Qn,d7,f7),text:ko.none(),icon:ko.some("align-left"),isSelectedFor:Xn,getCurrentValue:ko.none,getPreviewFor:Kn,onAction:ho,updateText:oo,dataset:lo,shouldHide:!1,isInvalid:yo=>!Qn.formatter.canApply(yo.format)}},Mq=(Qn,Un)=>d2(Qn,Un,W4(Qn),d7,"AlignTextUpdate"),Nq=(Qn,Un)=>{const Xn=nS(Qn,Un,W4(Qn));Qn.ui.registry.addNestedMenuItem("align",{text:Un.shared.providers.translate(Dq),onSetup:mp(Qn),getSubmenuItems:()=>Xn.items.validateItems(Xn.getStyleItems())})},E$=(Qn,Un)=>{const Xn=Un(),Kn=hs(Xn,oo=>oo.format);return ko.from(Qn.formatter.closest(Kn)).bind(oo=>Zs(Xn,lo=>lo.format===oo)).orThunk(()=>Mr(Qn.formatter.match("p"),{title:"Paragraph",format:"p"}))},Lq="Blocks",h7="Block {0}",U4="Paragraph",m7=Qn=>{const Un=lo=>()=>Qn.formatter.match(lo),Xn=lo=>()=>{const ho=Qn.formatter.get(lo);return ho?ko.some({tag:ho.length>0&&(ho[0].inline||ho[0].block)||"div",styles:Qn.dom.parseStyle(Qn.formatter.getCssText(lo))}):ko.none()},Kn=lo=>{const yo=E$(Qn,()=>oo.data).fold(Mo(U4),Co=>Co.title);Qa(lo,k1,{text:yo}),uI(Qn,{value:yo})},oo=V4(Qn,"block_formats",f2.SemiColon);return{tooltip:Xw(Qn,h7,U4),text:ko.some(U4),icon:ko.none(),isSelectedFor:Un,getCurrentValue:ko.none,getPreviewFor:Xn,onAction:fI(Qn),updateText:Kn,dataset:oo,shouldHide:!1,isInvalid:lo=>!Qn.formatter.canApply(lo.format)}},Iq=(Qn,Un)=>d2(Qn,Un,m7(Qn),h7,"BlocksTextUpdate"),Bq=(Qn,Un)=>{const Xn=nS(Qn,Un,m7(Qn));Qn.ui.registry.addNestedMenuItem("blocks",{text:Lq,onSetup:mp(Qn),getSubmenuItems:()=>Xn.items.validateItems(Xn.getStyleItems())})},p7="Fonts",Z4="Font {0}",T$="System Font",Fq=["-apple-system","Segoe UI","Roboto","Helvetica Neue","sans-serif"],q4=Qn=>{const Un=Qn.split(/\s*,\s*/);return hs(Un,Xn=>Xn.replace(/^['"]+|['"]+$/g,""))},g7=(Qn,Un)=>Un.length>0&&dr(Un,Xn=>Qn.indexOf(Xn.toLowerCase())>-1),Hq=(Qn,Un)=>{if(Qn.indexOf("-apple-system")===0||Un.length>0){const Xn=q4(Qn.toLowerCase());return g7(Xn,Fq)||g7(Xn,Un)}else return!1},b7=Qn=>{const Un=()=>{const Co=us=>us?q4(us)[0]:"",Ro=Qn.queryCommandValue("FontName"),Lo=yo.data,Wo=Ro?Ro.toLowerCase():"",jo=YL(Qn);return{matchOpt:Zs(Lo,us=>{const Ps=us.format;return Ps.toLowerCase()===Wo||Co(Ps).toLowerCase()===Co(Wo).toLowerCase()}).orThunk(()=>Mr(Hq(Wo,jo),{title:T$,format:Wo})),font:Ro}},Xn=Co=>Ro=>Ro.exists(Lo=>Lo.format===Co),Kn=()=>{const{matchOpt:Co}=Un();return Co},oo=Co=>()=>ko.some({tag:"div",styles:Co.indexOf("dings")===-1?{"font-family":Co}:{}}),lo=Co=>()=>{Qn.undoManager.transact(()=>{Qn.focus(),Qn.execCommand("FontName",!1,Co.format)})},ho=Co=>{const{matchOpt:Ro,font:Lo}=Un(),Wo=Ro.fold(Mo(Lo),jo=>jo.title);Qa(Co,k1,{text:Wo}),dI(Qn,{value:Wo})},yo=V4(Qn,"font_family_formats",f2.SemiColon);return{tooltip:Xw(Qn,Z4,T$),text:ko.some(T$),icon:ko.none(),isSelectedFor:Xn,getCurrentValue:Kn,getPreviewFor:oo,onAction:lo,updateText:ho,dataset:yo,shouldHide:!1,isInvalid:sr}},v7=(Qn,Un)=>d2(Qn,Un,b7(Qn),Z4,"FontFamilyTextUpdate"),Qq=(Qn,Un)=>{const Xn=nS(Qn,Un,b7(Qn));Qn.ui.registry.addNestedMenuItem("fontfamily",{text:Un.shared.providers.translate(p7),onSetup:mp(Qn),getSubmenuItems:()=>Xn.items.validateItems(Xn.getStyleItems())})},y7={unsupportedLength:["em","ex","cap","ch","ic","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","cm","mm","Q","in","pc","pt","px"],fixed:["px","pt"],relative:["%"],empty:[""]},Vq=(()=>{const Qn="[0-9]+",Xn="[eE]"+("[+-]?"+Qn),Kn="\\.",oo=yo=>`(?:${yo})?`,ho=`[+-]?(?:${["Infinity",Qn+Kn+oo(Qn)+oo(Xn),Kn+Qn+oo(Xn),Qn+oo(Xn)].join("|")})`;return new RegExp(`^(${ho})(.*)$`)})(),zq=(Qn,Un)=>Br(Un,Xn=>Br(y7[Xn],Kn=>Qn===Kn)),A$=(Qn,Un)=>ko.from(Vq.exec(Qn)).bind(Kn=>{const oo=Number(Kn[1]),lo=Kn[2];return zq(lo,Un)?ko.some({value:oo,unit:lo}):ko.none()}),Wq=(Qn,Un)=>A$(Qn,Un).map(({value:Xn,unit:Kn})=>Xn+Kn),O7={tab:Mo(9),escape:Mo(27),enter:Mo(13),backspace:Mo(8),delete:Mo(46),left:Mo(37),up:Mo(38),right:Mo(39),down:Mo(40),space:Mo(32),home:Mo(36),end:Mo(35),pageUp:Mo(33),pageDown:Mo(34)},Uq=(Qn,Un,Xn)=>{let Kn=ko.none();const oo=Ns=>Ns.map(Xs=>da.getValue(Xs)).getOr(""),lo=a0(Qn,"NodeChange SwitchMode",Ns=>{const Xs=Ns.getComponent();Kn=ko.some(Xs),Xn.updateInputValue(Xs),Ja.set(Xs,!Qn.selection.isEditable())}),ho=Ns=>({getComponent:Mo(Ns)}),yo=Ua(xo),Co=ba("custom-number-input-events"),Ro=(Ns,Xs,Hr)=>{const kr=oo(Kn),Or=Xn.getNewValue(kr,Ns),qr=kr.length-`${Or}`.length,na=Kn.map(Sa=>Sa.element.dom.selectionStart-qr),Dl=Kn.map(Sa=>Sa.element.dom.selectionEnd-qr);Xn.onAction(Or,Hr),Kn.each(Sa=>{da.setValue(Sa,Or),Xs&&(na.each(fl=>Sa.element.dom.selectionStart=fl),Dl.each(fl=>Sa.element.dom.selectionEnd=fl))})},Lo=(Ns,Xs)=>Ro((Hr,kr)=>Hr-kr,Ns,Xs),Wo=(Ns,Xs)=>Ro((Hr,kr)=>Hr+kr,Ns,Xs),jo=Ns=>lh(Ns.element).fold(ko.none,Xs=>(Cd(Xs),ko.some(!0))),Jo=Ns=>tO(Ns.element)?(jm(Ns.element).each(Xs=>Cd(Xs)),ko.some(!0)):ko.none(),us=(Ns,Xs,Hr,kr)=>{const Or=Ua(xo),qr=Un.shared.providers.translate(Hr),na=ba("altExecuting"),Dl=a0(Qn,"NodeChange SwitchMode",fl=>{Ja.set(fl.getComponent(),!Qn.selection.isEditable())}),Sa=fl=>{Ja.isDisabled(fl)||Ns(!0)};return yh.sketch({dom:{tag:"button",attributes:{title:qr,"aria-label":qr},classes:kr.concat(Xs)},components:[PM(Xs,Un.shared.providers.icons)],buttonBehaviours:Zr([Ja.config({}),Rl(na,[H_({onSetup:Dl,getApi:ho},Or),_y({getApi:ho},Or),wr(op(),(fl,rl)=>{(rl.event.raw.keyCode===O7.space()||rl.event.raw.keyCode===O7.enter())&&(Ja.isDisabled(fl)||Ns(!1))}),wr(Lg(),Sa),wr(H1(),Sa)])]),eventOrder:{[op()]:[na,"keying"],[Lg()]:[na,"alloy.base.behaviour"],[H1()]:[na,"alloy.base.behaviour"]}})},Ps=ou(us(Ns=>Lo(!1,Ns),"minus","Decrease font size",[])),er=ou(us(Ns=>Wo(!1,Ns),"plus","Increase font size",[])),Bs=ou({dom:{tag:"div",classes:["tox-input-wrapper"]},components:[Lw.sketch({inputBehaviours:Zr([Ja.config({}),Rl(Co,[H_({onSetup:lo,getApi:ho},yo),_y({getApi:ho},yo)]),Rl("input-update-display-text",[wr(k1,(Ns,Xs)=>{da.setValue(Ns,Xs.event.text)}),wr(pm(),Ns=>{Xn.onAction(da.getValue(Ns))}),wr(E0(),Ns=>{Xn.onAction(da.getValue(Ns))})]),Za.config({mode:"special",onEnter:Ns=>(Ro(es,!0,!0),ko.some(!0)),onEscape:jo,onUp:Ns=>(Wo(!0,!1),ko.some(!0)),onDown:Ns=>(Lo(!0,!1),ko.some(!0)),onLeft:(Ns,Xs)=>(Xs.cut(),ko.none()),onRight:(Ns,Xs)=>(Xs.cut(),ko.none())})])})],behaviours:Zr([ol.config({}),Za.config({mode:"special",onEnter:Jo,onSpace:Jo,onEscape:jo}),Rl("input-wrapper-events",[wr(eg(),Ns=>{Qs([Ps,er],Xs=>{const Hr=Ds.fromDom(Xs.get(Ns).element.dom);tO(Hr)&&Vg(Hr)})})])])});return{dom:{tag:"div",classes:["tox-number-input"]},components:[Ps.asSpec(),Bs.asSpec(),er.asSpec()],behaviours:Zr([ol.config({}),Za.config({mode:"flow",focusInside:fo.OnEnterOrSpaceMode,cycles:!1,selector:"button, .tox-input-wrapper",onEscape:Ns=>tO(Ns.element)?ko.none():(Cd(Ns.element),ko.some(!0))})])}},Zq="Font sizes",j4="Font size {0}",_7="12pt",qq={"8pt":"1","10pt":"2","12pt":"3","14pt":"4","18pt":"5","24pt":"6","36pt":"7"},jq={"xx-small":"7pt","x-small":"8pt",small:"10pt",medium:"12pt",large:"14pt","x-large":"18pt","xx-large":"24pt"},Xq=(Qn,Un)=>{const Xn=Math.pow(10,Un);return Math.round(Qn*Xn)/Xn},Yq=(Qn,Un)=>/[0-9.]+px$/.test(Qn)?Xq(parseInt(Qn,10)*72/96,Un||0)+"pt":Rr(jq,Qn).getOr(Qn),Gq=Qn=>Rr(qq,Qn).getOr(""),S7=Qn=>{const Un=()=>{let Co=ko.none();const Ro=yo.data,Lo=Qn.queryCommandValue("FontSize");if(Lo)for(let Wo=3;Co.isNone()&&Wo>=0;Wo--){const jo=Yq(Lo,Wo),Jo=Gq(jo);Co=Zs(Ro,us=>us.format===Lo||us.format===jo||us.format===Jo)}return{matchOpt:Co,size:Lo}},Xn=Co=>Ro=>Ro.exists(Lo=>Lo.format===Co),Kn=()=>{const{matchOpt:Co}=Un();return Co},oo=Mo(ko.none),lo=Co=>()=>{Qn.undoManager.transact(()=>{Qn.focus(),Qn.execCommand("FontSize",!1,Co.format)})},ho=Co=>{const{matchOpt:Ro,size:Lo}=Un(),Wo=Ro.fold(Mo(Lo),jo=>jo.title);Qa(Co,k1,{text:Wo}),IQ(Qn,{value:Wo})},yo=V4(Qn,"font_size_formats",f2.Space);return{tooltip:Xw(Qn,j4,_7),text:ko.some(_7),icon:ko.none(),isSelectedFor:Xn,getPreviewFor:oo,getCurrentValue:Kn,onAction:lo,updateText:ho,dataset:yo,shouldHide:!1,isInvalid:sr}},w7=(Qn,Un)=>d2(Qn,Un,S7(Qn),j4,"FontSizeTextUpdate"),Kq=Qn=>{var Un;const Xn={step:1};return(Un={em:{step:.1},cm:{step:.1},in:{step:.1},pc:{step:.1},ch:{step:.1},rem:{step:.1}}[Qn])!==null&&Un!==void 0?Un:Xn},Jq=16,C7=Qn=>Qn>=0,ej=Qn=>{const Un=()=>Qn.queryCommandValue("FontSize");return{updateInputValue:Kn=>Qa(Kn,k1,{text:Un()}),onAction:(Kn,oo)=>Qn.execCommand("FontSize",!1,Kn,{skip_focus:!oo}),getNewValue:(Kn,oo)=>{A$(Kn,["unsupportedLength","empty"]);const lo=Un(),ho=A$(Kn,["unsupportedLength","empty"]).or(A$(lo,["unsupportedLength","empty"])),yo=ho.map(jo=>jo.value).getOr(Jq),Co=UL(Qn),Ro=ho.map(jo=>jo.unit).filter(jo=>jo!=="").getOr(Co),Lo=oo(yo,Kq(Ro).step),Wo=`${C7(Lo)?Lo:yo}${Ro}`;return Wo!==lo&&BQ(Qn,{value:Wo}),Wo}}},k7=(Qn,Un)=>Uq(Qn,Un,ej(Qn)),x7=(Qn,Un)=>{const Xn=nS(Qn,Un,S7(Qn));Qn.ui.registry.addNestedMenuItem("fontsize",{text:Zq,onSetup:mp(Qn),getSubmenuItems:()=>Xn.items.validateItems(Xn.getStyleItems())})},tj="Formats",E7="Format {0}",T7=(Qn,Un)=>{const Xn="Paragraph",Kn=ho=>()=>Qn.formatter.match(ho),oo=ho=>()=>{const yo=Qn.formatter.get(ho);return yo!==void 0?ko.some({tag:yo.length>0&&(yo[0].inline||yo[0].block)||"div",styles:Qn.dom.parseStyle(Qn.formatter.getCssText(ho))}):ko.none()},lo=ho=>{const yo=Wo=>KP(Wo)?fs(Wo.items,yo):ZF(Wo)?[{title:Wo.title,format:Wo.format}]:[],Co=fs(jF(Qn),yo),Lo=E$(Qn,Mo(Co)).fold(Mo(Xn),Wo=>Wo.title);Qa(ho,k1,{text:Lo}),NQ(Qn,{value:Lo})};return{tooltip:Xw(Qn,E7,Xn),text:ko.some(Xn),icon:ko.none(),isSelectedFor:Kn,getCurrentValue:ko.none,getPreviewFor:oo,onAction:fI(Qn),updateText:lo,shouldHide:HL(Qn),isInvalid:ho=>!Qn.formatter.canApply(ho.format),dataset:Un}},h2=(Qn,Un)=>{const Xn={type:"advanced",...Un.styles};return d2(Qn,Un,T7(Qn,Xn),E7,"StylesTextUpdate")},nj=(Qn,Un)=>{const Xn={type:"advanced",...Un.styles},Kn=nS(Qn,Un,T7(Qn,Xn));Qn.ui.registry.addNestedMenuItem("styles",{text:tj,onSetup:mp(Qn),getSubmenuItems:()=>Kn.items.validateItems(Kn.getStyleItems())})},oj=Mo([Er("toggleClass"),Er("fetch"),Fg("onExecute"),Gs("getHotspot",ko.some),Gs("getAnchorOverrides",Mo({})),qb(),Fg("onItemExecute"),Tc("lazySink"),Er("dom"),rc("onOpen"),Nf("splitDropdownBehaviours",[Gd,Za,ol]),Gs("matchWidth",!1),Gs("useMinWidth",!1),Gs("eventOrder",{}),Tc("role")].concat(zD())),sj=Xh({factory:yh,schema:[Er("dom")],name:"arrow",defaults:()=>({buttonBehaviours:Zr([ol.revoke()])}),overrides:Qn=>({dom:{tag:"span",attributes:{role:"presentation"}},action:Un=>{Un.getSystem().getByUid(Qn.uid).each(og)},buttonBehaviours:Zr([Ql.config({toggleOnExecute:!1,toggleClass:Qn.toggleClass})])})}),rj=Xh({factory:yh,schema:[Er("dom")],name:"button",defaults:()=>({buttonBehaviours:Zr([ol.revoke()])}),overrides:Qn=>({dom:{tag:"span",attributes:{role:"presentation"}},action:Un=>{Un.getSystem().getByUid(Qn.uid).each(Xn=>{Qn.onExecute(Xn,Un)})}})}),ij=Mo([sj,rj,up({factory:{sketch:Qn=>({uid:Qn.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:Qn.text}})},schema:[Er("text")],name:"aria-descriptor"}),v1({schema:[qy()],name:"menu",defaults:Qn=>({onExecute:(Un,Xn)=>{Un.getSystem().getByUid(Qn.uid).each(Kn=>{Qn.onItemExecute(Kn,Un,Xn)})}})}),$I()]),aj=(Qn,Un,Xn,Kn)=>{const oo=Lo=>{ic.getCurrent(Lo).each(Wo=>{Bc.highlightFirst(Wo),Za.focusIn(Wo)})},lo=Lo=>{QD(Qn,es,Lo,Kn,oo,hp.HighlightMenuAndItem).get(xo)},ho=Lo=>(lo(Lo),ko.some(!0)),yo=Lo=>{const Wo=Y0(Lo,Qn,"button");return og(Wo),ko.some(!0)},Co={...Jc([eu((Lo,Wo)=>{Au(Lo,Qn,"aria-descriptor").each(Jo=>{const us=ba("aria");aa(Jo.element,"id",us),aa(Lo.element,"aria-describedby",us)})})]),...tv(ko.some(lo))},Ro={repositionMenus:Lo=>{Ql.isOn(Lo)&&NI(Lo)}};return{uid:Qn.uid,dom:Qn.dom,components:Un,apis:Ro,eventOrder:{...Qn.eventOrder,[Im()]:["disabling","toggling","alloy.base.behaviour"]},events:Co,behaviours:sf(Qn.splitDropdownBehaviours,[Gd.config({others:{sandbox:Lo=>{const Wo=Y0(Lo,Qn,"arrow");return VD(Qn,Lo,{onOpen:()=>{Ql.on(Wo),Ql.on(Lo)},onClose:()=>{Ql.off(Wo),Ql.off(Lo)}})}}}),Za.config({mode:"special",onSpace:yo,onEnter:yo,onDown:ho}),ol.config({}),Ql.config({toggleOnExecute:!1,aria:{mode:"expanded"}})]),domModification:{attributes:{role:Qn.role.getOr("button"),"aria-haspopup":!0}}}},P$=Yh({name:"SplitDropdown",configFields:oj(),partFields:ij(),factory:aj,apis:{repositionMenus:(Qn,Un)=>Qn.repositionMenus(Un)}}),A7=Qn=>({isEnabled:()=>!Ja.isDisabled(Qn),setEnabled:Un=>Ja.set(Qn,!Un),setText:Un=>Qa(Qn,k1,{text:Un}),setIcon:Un=>Qa(Qn,G_,{icon:Un})}),X4=Qn=>({setActive:Un=>{Ql.set(Qn,Un)},isActive:()=>Ql.isOn(Qn),isEnabled:()=>!Ja.isDisabled(Qn),setEnabled:Un=>Ja.set(Qn,!Un),setText:Un=>Qa(Qn,k1,{text:Un}),setIcon:Un=>Qa(Qn,G_,{icon:Un})}),P7=(Qn,Un)=>Qn.map(Xn=>({"aria-label":Un.translate(Xn),title:Un.translate(Xn)})).getOr({}),$7=ba("focus-button"),$$=(Qn,Un,Xn,Kn,oo)=>{const lo=Un.map(yo=>ou(jB(yo,"tox-tbtn",oo))),ho=Qn.map(yo=>ou(Y_(yo,oo.icons)));return{dom:{tag:"button",classes:["tox-tbtn"].concat(Un.isSome()?["tox-tbtn--select"]:[]),attributes:P7(Xn,oo)},components:Hk([ho.map(yo=>yo.asSpec()),lo.map(yo=>yo.asSpec())]),eventOrder:{[Xl()]:["focusing","alloy.base.behaviour",Ww],[Zh()]:[Ww,"toolbar-group-button-events"]},buttonBehaviours:Zr([Lf.toolbarButton(oo.isDisabled),jf(),Rl(Ww,[eu((yo,Co)=>TM(yo)),wr(k1,(yo,Co)=>{lo.bind(Ro=>Ro.getOpt(yo)).each(Ro=>{Cl.set(Ro,[wd(oo.translate(Co.event.text))])})}),wr(G_,(yo,Co)=>{ho.bind(Ro=>Ro.getOpt(yo)).each(Ro=>{Cl.set(Ro,[Y_(Co.event.icon,oo.icons)])})}),wr(Xl(),(yo,Co)=>{Co.event.prevent(),Wl(yo,$7)})])].concat(Kn.getOr([])))}},R7=(Qn,Un,Xn,Kn)=>{const oo=Un.shared,lo=Ua(xo),ho={toolbarButtonBehaviours:[],getApi:A7,onSetup:Qn.onSetup},yo=[Rl("toolbar-group-button-events",[H_(ho,lo),_y(ho,lo)])];return tS.sketch({lazySink:oo.getSink,fetch:()=>Cm.nu(Co=>{Co(hs(Xn(Qn.items),y$))}),markers:{toggledClass:"tox-tbtn--enabled"},parts:{button:$$(Qn.icon,Qn.text,Qn.tooltip,ko.some(yo),oo.providers),toolbar:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:Kn}}}})},D7=(Qn,Un,Xn)=>{var Kn;const oo=Ua(xo),lo=$$(Qn.icon,Qn.text,Qn.tooltip,ko.none(),Xn);return yh.sketch({dom:lo.dom,components:lo.components,eventOrder:QP,buttonBehaviours:{...Zr([Rl("toolbar-button-events",[CW({onAction:Qn.onAction,getApi:Un.getApi}),H_(Un,oo),_y(Un,oo)]),Lf.toolbarButton(()=>!Qn.enabled||Xn.isDisabled()),jf()].concat(Un.toolbarButtonBehaviours)),[Ww]:(Kn=lo.buttonBehaviours)===null||Kn===void 0?void 0:Kn[Ww]}})},lj=(Qn,Un)=>M7(Qn,Un,[]),M7=(Qn,Un,Xn)=>D7(Qn,{toolbarButtonBehaviours:Xn.length>0?[Rl("toolbarButtonWith",Xn)]:[],getApi:A7,onSetup:Qn.onSetup},Un),cj=(Qn,Un)=>N7(Qn,Un,[]),N7=(Qn,Un,Xn)=>D7(Qn,{toolbarButtonBehaviours:[Cl.config({}),Ql.config({toggleClass:"tox-tbtn--enabled",aria:{mode:"pressed"},toggleOnExecute:!1})].concat(Xn.length>0?[Rl("toolbarToggleButtonWith",Xn)]:[]),getApi:X4,onSetup:Qn.onSetup},Un),uj=(Qn,Un,Xn)=>Kn=>Cm.nu(oo=>Un.fetch(oo)).map(oo=>ko.from(gP(Lc(MD(ba("menu-value"),oo,lo=>{Un.onItemAction(Qn(Kn),lo)},Un.columns,Un.presets,sv.CLOSE_ON_EXECUTE,Un.select.getOr(sr),Xn),{movement:fP(Un.columns,Un.presets),menuBehaviours:bE.unnamedEvents(Un.columns!=="auto"?[]:[eu((lo,ho)=>{aD(lo,4,i5(Un.presets)).each(({numRows:yo,numColumns:Co})=>{Za.setGridSize(lo,yo,Co)})})])})))),L7=(Qn,Un)=>{const Xn=lo=>({isEnabled:()=>!Ja.isDisabled(lo),setEnabled:ho=>Ja.set(lo,!ho),setIconFill:(ho,yo)=>{Rd(lo.element,`svg path[class="${ho}"], rect[class="${ho}"]`).each(Co=>{aa(Co,"fill",yo)})},setActive:ho=>{aa(lo.element,"aria-pressed",ho),Rd(lo.element,"span").each(yo=>{lo.getSystem().getByDom(yo).each(Co=>Ql.set(Co,ho))})},isActive:()=>Rd(lo.element,"span").exists(ho=>lo.getSystem().getByDom(ho).exists(Ql.isOn)),setText:ho=>Rd(lo.element,"span").each(yo=>lo.getSystem().getByDom(yo).each(Co=>Qa(Co,k1,{text:ho}))),setIcon:ho=>Rd(lo.element,"span").each(yo=>lo.getSystem().getByDom(yo).each(Co=>Qa(Co,G_,{icon:ho}))),setTooltip:ho=>{const yo=Un.providers.translate(ho);Qp(lo.element,{"aria-label":yo,title:yo})}}),Kn=Ua(xo),oo={getApi:Xn,onSetup:Qn.onSetup};return P$.sketch({dom:{tag:"div",classes:["tox-split-button"],attributes:{"aria-pressed":!1,...P7(Qn.tooltip,Un.providers)}},onExecute:lo=>{const ho=Xn(lo);ho.isEnabled()&&Qn.onAction(ho)},onItemExecute:(lo,ho,yo)=>{},splitDropdownBehaviours:Zr([Lf.splitButton(Un.providers.isDisabled),jf(),Rl("split-dropdown-events",[eu((lo,ho)=>TM(lo)),wr($7,ol.focus),H_(oo,Kn),_y(oo,Kn)]),$E.config({})]),eventOrder:{[Zh()]:["alloy.base.behaviour","split-dropdown-events"]},toggleClass:"tox-tbtn--enabled",lazySink:Un.getSink,fetch:uj(Xn,Qn,Un.providers),parts:{menu:Dk(!1,Qn.columns,Qn.presets)},components:[P$.parts.button($$(Qn.icon,Qn.text,ko.none(),ko.some([Ql.config({toggleClass:"tox-tbtn--enabled",toggleOnExecute:!1})]),Un.providers)),P$.parts.arrow({dom:{tag:"button",classes:["tox-tbtn","tox-split-button__chevron"],innerHtml:yR("chevron-down",Un.providers.icons)},buttonBehaviours:Zr([Lf.splitButton(Un.providers.isDisabled),jf(),AA()])}),P$.parts["aria-descriptor"]({text:Un.providers.translate("To open the popup, press Shift+Enter")})]})},dj=[{name:"history",items:["undo","redo"]},{name:"ai",items:["aidialog","aishortcuts"]},{name:"styles",items:["styles"]},{name:"formatting",items:["bold","italic"]},{name:"alignment",items:["alignleft","aligncenter","alignright","alignjustify"]},{name:"indentation",items:["outdent","indent"]},{name:"permanent pen",items:["permanentpen"]},{name:"comments",items:["addcomment"]}],aT=(Qn,Un)=>(Xn,Kn,oo)=>{const lo=Qn(Xn).mapError(ho=>Gf(ho)).getOrDie();return Un(lo,Kn,oo)},fj={button:aT(sD,(Qn,Un)=>lj(Qn,Un.shared.providers)),togglebutton:aT(x5,(Qn,Un)=>cj(Qn,Un.shared.providers)),menubutton:aT(S4,(Qn,Un)=>zE(Qn,"tox-tbtn",Un,ko.none(),!1)),splitbutton:aT($Z,(Qn,Un)=>L7(Qn,Un.shared)),grouptoolbarbutton:aT(AZ,(Qn,Un,Xn)=>{const Kn=Xn.ui.registry.getAll().buttons,oo=ho=>M$(Xn,{buttons:Kn,toolbar:ho,allowToolbarGroups:!1},Un,ko.none()),lo={[oy]:Un.shared.header.isPositionedAtTop()?$p.TopToBottom:$p.BottomToTop};switch(Tk(Xn)){case qg.floating:return R7(Qn,Un,oo,lo);default:throw new Error("Toolbar groups are only supported when using floating toolbar mode")}})},hj=(Qn,Un,Xn)=>Rr(fj,Qn.type).fold(()=>(console.error("skipping button defined by",Qn),ko.none()),Kn=>ko.some(Kn(Qn,Un,Xn))),lT={styles:h2,fontsize:w7,fontsizeinput:k7,fontfamily:v7,blocks:Iq,align:Mq},mj=Qn=>{const Un=hs(dj,Xn=>{const Kn=ga(Xn.items,oo=>Pl(Qn,oo)||Pl(lT,oo));return{name:Xn.name,items:Kn}});return ga(Un,Xn=>Xn.items.length>0)},R$=Qn=>{const Un=Qn.split("|");return hs(Un,Xn=>({items:Xn.trim().split(" ")}))},D$=Qn=>Do(Qn,Un=>Pl(Un,"name")&&Pl(Un,"items")),I7=Qn=>{const Un=Qn.toolbar,Xn=Qn.buttons;return Un===!1?[]:Un===void 0||Un===!0?mj(Xn):qn(Un)?R$(Un):D$(Un)?Un:(console.error("Toolbar type should be string, string[], boolean or ToolbarGroup[]"),[])},pj=(Qn,Un,Xn,Kn,oo,lo)=>Rr(Un,Xn.toLowerCase()).orThunk(()=>lo.bind(ho=>gc(ho,yo=>Rr(Un,yo+Xn.toLowerCase())))).fold(()=>Rr(lT,Xn.toLowerCase()).map(ho=>ho(Qn,oo)),ho=>ho.type==="grouptoolbarbutton"&&!Kn?(console.warn(`Ignoring the '${Xn}' toolbar button. Group toolbar buttons are only supported when using floating toolbar mode and cannot be nested.`),ko.none()):hj(ho,oo,Qn)),M$=(Qn,Un,Xn,Kn)=>{const oo=I7(Un),lo=hs(oo,ho=>{const yo=fs(ho.items,Co=>Co.trim().length===0?[]:pj(Qn,Un.buttons,Co,Un.allowToolbarGroups,Xn,Kn).toArray());return{title:ko.from(Qn.translate(ho.name)),items:yo}});return ga(lo,ho=>ho.items.length>0)},B7=(Qn,Un,Xn,Kn)=>{const oo=Un.mainUi.outerContainer,lo=Xn.toolbar,ho=Xn.buttons;if(Do(lo,qn)){const yo=lo.map(Co=>{const Ro={toolbar:Co,buttons:ho,allowToolbarGroups:Xn.allowToolbarGroups};return M$(Qn,Ro,Kn,ko.none())});Hu.setToolbars(oo,yo)}else Hu.setToolbar(oo,M$(Qn,Xn,Kn,ko.none()))},F7=Tr(),gj=F7.os.isiOS()&&F7.os.version.major<=12,N$=(Qn,Un)=>{const{uiMotherships:Xn}=Un,Kn=Qn.dom;let oo=Qn.getWin();const lo=Qn.getDoc().documentElement,ho=Ua(vc(oo.innerWidth,oo.innerHeight)),yo=Ua(vc(lo.offsetWidth,lo.offsetHeight)),Co=()=>{const jo=ho.get();(jo.left!==oo.innerWidth||jo.top!==oo.innerHeight)&&(ho.set(vc(oo.innerWidth,oo.innerHeight)),sP(Qn))},Ro=()=>{const jo=Qn.getDoc().documentElement,Jo=yo.get();(Jo.left!==jo.offsetWidth||Jo.top!==jo.offsetHeight)&&(yo.set(vc(jo.offsetWidth,jo.offsetHeight)),sP(Qn))},Lo=jo=>{DQ(Qn,jo)};Kn.bind(oo,"resize",Co),Kn.bind(oo,"scroll",Lo);const Wo=a_(Ds.fromDom(Qn.getBody()),"load",Ro);Qn.on("hide",()=>{Qs(Xn,jo=>{ya(jo.element,"display","none")})}),Qn.on("show",()=>{Qs(Xn,jo=>{El(jo.element,"display")})}),Qn.on("NodeChange",Ro),Qn.on("remove",()=>{Wo.unbind(),Kn.unbind(oo,"resize",Co),Kn.unbind(oo,"scroll",Lo),oo=null})},H7=(Qn,Un,Xn)=>{gy(Qn)&&Z0(Xn.mainUi.mothership.element,Xn.popupUi.mothership),vh(Un,Xn.dialogUi.mothership)};var Q7=Object.freeze({__proto__:null,render:(Qn,Un,Xn,Kn,oo)=>{const{mainUi:lo,uiMotherships:ho}=Un,yo=Ua(0),Co=lo.outerContainer;Pq(Qn);const Ro=Ds.fromDom(oo.targetNode),Lo=Fr(rr(Ro));Z0(Ro,lo.mothership),H7(Qn,Lo,Un),Qn.on("SkinLoaded",()=>{Hu.setSidebar(Co,Xn.sidebar,LA(Qn)),B7(Qn,Un,Xn,Kn),yo.set(Qn.getWin().innerWidth),Hu.setMenubar(Co,k$(Qn,Xn)),Hu.setViews(Co,Xn.views),N$(Qn,Un)});const Wo=Hu.getSocket(Co).getOrDie("Could not find expected socket element");if(gj){fu(Wo.element,{overflow:"scroll","-webkit-overflow-scrolling":"touch"});const Ps=hW(()=>{Qn.dispatch("ScrollContent")},20),er=Dh(Wo.element,"scroll",Ps.throttle);Qn.on("remove",er.unbind)}z5(Qn,Un),Qn.addCommand("ToggleSidebar",(Ps,er)=>{Hu.toggleSidebar(Co,er),Qn.dispatch("ToggleSidebar")}),Qn.addQueryValueHandler("ToggleSidebar",()=>{var Ps;return(Ps=Hu.whichSidebar(Co))!==null&&Ps!==void 0?Ps:""}),Qn.addCommand("ToggleView",(Ps,er)=>{if(Hu.toggleView(Co,er)){const Bs=Co.element;lo.mothership.broadcastOn([db()],{target:Bs}),Qs(ho,Ns=>{Ns.broadcastOn([db()],{target:Bs})}),io(Hu.whichView(Co))&&(Qn.focus(),Qn.nodeChanged(),Hu.refreshToolbar(Co))}}),Qn.addQueryValueHandler("ToggleView",()=>{var Ps;return(Ps=Hu.whichView(Co))!==null&&Ps!==void 0?Ps:""});const jo=Tk(Qn),Jo=()=>{Hu.refreshToolbar(Un.mainUi.outerContainer)};(jo===qg.sliding||jo===qg.floating)&&Qn.on("ResizeWindow ResizeEditor ResizeContent",()=>{const Ps=Qn.getWin().innerWidth;Ps!==yo.get()&&(Jo(),yo.set(Ps))});const us={setEnabled:Ps=>{eP(Un,!Ps)},isEnabled:()=>!Ja.isDisabled(Co)};return{iframeContainer:Wo.element.dom,editorContainer:Co.element.dom,api:us}}});const L$=Qn=>/^[0-9\.]+(|px)$/i.test(""+Qn)?ko.some(parseInt(""+Qn,10)):ko.none(),Y4=Qn=>$o(Qn)?Qn+"px":Qn,cT=(Qn,Un,Xn)=>{const Kn=Un.filter(lo=>QnQn>lo);return Kn.or(oo).getOr(Qn)},vj=Qn=>{const Un=PA(Qn),Xn=Ek(Qn),Kn=CR(Qn);return L$(Un).map(oo=>cT(oo,Xn,Kn))},yj=Qn=>vj(Qn).getOr(PA(Qn)),V7=Qn=>{const Un=aE(Qn),Xn=wR(Qn),Kn=$A(Qn);return L$(Un).map(oo=>cT(oo,Xn,Kn))},Oj=Qn=>V7(Qn).getOr(aE(Qn)),{ToolbarLocation:G4,ToolbarMode:m2}=H9,_j=40,Sj=(Qn,Un,Xn,Kn,oo)=>{const{mainUi:lo,uiMotherships:ho}=Xn,yo=Mw.DOM,Co=$k(Qn),Ro=uE(Qn),Lo=$A(Qn).or(V7(Qn)),Wo=Kn.shared.header,jo=Wo.isPositionedAtTop,Jo=Tk(Qn),us=Jo===m2.sliding||Jo===m2.floating,Ps=Ua(!1),er=()=>Ps.get()&&!Qn.removed,Bs=Ga=>us?Ga.fold(Mo(0),yc=>yc.components().length>1?cu(yc.components()[1].element):0):0,Ns=Ga=>{switch(lE(Qn)){case G4.auto:const yc=Hu.getToolbar(lo.outerContainer),oa=Bs(yc),$a=cu(Ga.element)-oa,hl=au(Un);if(hl.y>$a)return"top";{const Ka=Xf(Un),kl=Math.max(Ka.dom.scrollHeight,cu(Ka));return hl.bottom{oo.on(yc=>{rf.setModes(yc,[Ga]),Wo.setDockingMode(Ga);const oa=jo()?$p.TopToBottom:$p.BottomToTop;aa(yc.element,oy,oa)})},Hr=()=>{oo.on(Ga=>{const yc=Lo.getOrThunk(()=>{const oa=L$(qc(Ru(),"margin-left")).getOr(0);return dd(Ru())-uh(Un).left+oa});ya(Ga.element,"max-width",yc+"px")})},kr=Ga=>{oo.on(yc=>{const oa=Hu.getToolbar(lo.outerContainer),$a=Bs(oa),hl=au(Un),{top:gl,left:Ka}=Or(Qn,lo.outerContainer.element).fold(()=>({top:jo()?Math.max(hl.y-cu(yc.element)+$a,0):hl.bottom,left:hl.x}),Cc=>{var Ih;const Cg=au(Cc),xb=(Ih=Cc.dom.scrollTop)!==null&&Ih!==void 0?Ih:0,m0=Oc(Cc,Ru()),dS=m0?Math.max(hl.y-cu(yc.element)+$a,0):hl.y-Cg.y+xb-cu(yc.element)+$a;return{top:jo()?dS:hl.bottom,left:m0?hl.x:hl.x-Cg.x}}),kl={position:"absolute",left:Math.round(Ka)+"px",top:Math.round(gl)+"px"},$u=Ga.map(Cc=>{const Ih=Af(),Cg=150,xb=window.innerWidth-(Ka-Ih.left);return{width:Math.max(Math.min(Cc,xb),Cg)+"px"}}).getOr({});fu(lo.outerContainer.element,{...kl,...$u})})},Or=(Ga,yc)=>gy(Ga)?qw(yc):ko.none(),qr=()=>{Qs(ho,Ga=>{Ga.broadcastOn([uO()],{})})},na=()=>{if(Co)return ko.none();if(uh(lo.outerContainer.element).left+yd(lo.outerContainer.element)>=window.innerWidth-_j||ku(lo.outerContainer.element,"width").isSome()){ya(lo.outerContainer.element,"position","absolute"),ya(lo.outerContainer.element,"left","0px"),El(lo.outerContainer.element,"width");const yc=yd(lo.outerContainer.element);return ko.some(yc)}else return ko.none()},Dl=Ga=>{if(!er())return;Co||Hr();const yc=Co?ko.none():na();us&&Hu.refreshToolbar(lo.outerContainer),Co||kr(yc),Ro&&oo.on(Ga),qr()},Sa=()=>Co||!Ro||!er()?!1:oo.get().exists(Ga=>{const yc=Wo.getDockingMode(),oa=Ns(Ga);return oa!==yc?(Xs(oa),!0):!1});return{isVisible:er,isPositionedAtTop:jo,show:()=>{Ps.set(!0),ya(lo.outerContainer.element,"display","flex"),yo.addClass(Qn.getBody(),"mce-edit-focus"),Qs(ho,Ga=>{El(Ga.element,"display")}),Sa(),gy(Qn)?Dl(Ga=>rf.isDocked(Ga)?rf.reset(Ga):rf.refresh(Ga)):Dl(rf.refresh)},hide:()=>{Ps.set(!1),ya(lo.outerContainer.element,"display","none"),yo.removeClass(Qn.getBody(),"mce-edit-focus"),Qs(ho,Ga=>{ya(Ga.element,"display","none")})},update:Dl,updateMode:()=>{Sa()&&Dl(rf.reset)},repositionPopups:qr}},z7=(Qn,Un)=>{const Xn=au(Qn);return{pos:Un?Xn.y:Xn.bottom,bounds:Xn}},W7=(Qn,Un,Xn,Kn)=>{const oo=Ua(z7(Un,Xn.isPositionedAtTop())),lo=Ro=>{const{pos:Lo,bounds:Wo}=z7(Un,Xn.isPositionedAtTop()),{pos:jo,bounds:Jo}=oo.get(),us=Wo.height!==Jo.height||Wo.width!==Jo.width;oo.set({pos:Lo,bounds:Wo}),us&&sP(Qn,Ro),Xn.isVisible()&&(jo!==Lo?Xn.update(rf.reset):us&&(Xn.updateMode(),Xn.repositionPopups()))};Kn||(Qn.on("activate",Xn.show),Qn.on("deactivate",Xn.hide)),Qn.on("SkinLoaded ResizeWindow",()=>Xn.update(rf.reset)),Qn.on("NodeChange keydown",Ro=>{requestAnimationFrame(()=>lo(Ro))});let ho=0;const yo=IP(()=>Xn.update(rf.refresh),33);Qn.on("ScrollWindow",()=>{const Ro=Af().left;Ro!==ho&&(ho=Ro,yo.throttle()),Xn.updateMode()}),gy(Qn)&&Qn.on("ElementScroll",Ro=>{Xn.update(rf.refresh)});const Co=ab();Co.set(a_(Ds.fromDom(Qn.getBody()),"load",Ro=>lo(Ro.raw))),Qn.on("remove",()=>{Co.clear()})};var U7=Object.freeze({__proto__:null,render:(Qn,Un,Xn,Kn,oo)=>{const{mainUi:lo}=Un,ho=Hl(),yo=Ds.fromDom(oo.targetNode),Co=Sj(Qn,yo,Un,Kn,ho),Ro=zL(Qn);$q(Qn);const Lo=()=>{if(ho.isSet()){Co.show();return}ho.set(Hu.getHeader(lo.outerContainer).getOrDie());const jo=NR(Qn);gy(Qn)?(Z0(yo,lo.mothership),Z0(yo,Un.popupUi.mothership)):vh(jo,lo.mothership),vh(jo,Un.dialogUi.mothership),B7(Qn,Un,Xn,Kn),Hu.setMenubar(lo.outerContainer,k$(Qn,Xn)),Co.show(),W7(Qn,yo,Co,Ro),Qn.nodeChanged()};Qn.on("show",Lo),Qn.on("hide",Co.hide),Ro||(Qn.on("focus",Lo),Qn.on("blur",Co.hide)),Qn.on("init",()=>{(Qn.hasFocus()||Ro)&&Lo()}),z5(Qn,Un);const Wo={show:Lo,hide:Co.hide,setEnabled:jo=>{eP(Un,!jo)},isEnabled:()=>!Ja.isDisabled(lo.outerContainer)};return{editorContainer:lo.outerContainer.element.dom,api:Wo}}});const wj=()=>{const Qn=Hl(),Un=Hl(),Xn=Hl();return{dialogUi:Qn,popupUi:Un,mainUi:Xn,getUiMotherships:()=>{const lo=Qn.get().map(yo=>yo.mothership),ho=Un.get().map(yo=>yo.mothership);return lo.fold(()=>ho.toArray(),yo=>ho.fold(()=>[yo],Co=>Oc(yo.element,Co.element)?[yo]:[yo,Co]))},lazyGetInOuterOrDie:(lo,ho)=>()=>Xn.get().bind(yo=>ho(yo.outerContainer)).getOrDie(`Could not find ${lo} element in OuterContainer`)}},Cj="contexttoolbar-show",Z7="contexttoolbar-hide",kj=Qn=>({hide:()=>Wl(Qn,Fy()),getValue:()=>da.getValue(Qn)}),q7=(Qn,Un)=>wr(EM,(Xn,Kn)=>{const oo=Qn.get(Xn),lo=kj(oo);Un.onAction(lo,Kn.event.buttonApi)}),uT=(Qn,Un,Xn)=>{const{primary:Kn,...oo}=Un.original,lo=Ec(sD({...oo,type:"button",onAction:xo}));return M7(lo,Xn,[q7(Qn,Un)])},j7=(Qn,Un,Xn)=>{const{primary:Kn,...oo}=Un.original,lo=Ec(x5({...oo,type:"togglebutton",onAction:xo}));return N7(lo,Xn,[q7(Qn,Un)])},xj=Qn=>Qn.type==="contextformtogglebutton",Ej=(Qn,Un,Xn)=>xj(Un)?j7(Qn,Un,Xn):uT(Qn,Un,Xn),X7=(Qn,Un,Xn)=>{const Kn=hs(Un,ho=>ou(Ej(Qn,ho,Xn)));return{asSpecs:()=>hs(Kn,ho=>ho.asSpec()),findPrimary:ho=>gc(Un,(yo,Co)=>yo.primary?ko.from(Kn[Co]).bind(Ro=>Ro.getOpt(ho)).filter(rs(Ja.isDisabled)):ko.none())}},I$=(Qn,Un)=>{const Xn=Qn.label.fold(()=>({}),lo=>({"aria-label":lo})),Kn=ou(Lw.sketch({inputClasses:["tox-toolbar-textfield","tox-toolbar-nav-js"],data:Qn.initValue(),inputAttributes:Xn,selectOnFocus:!0,inputBehaviours:Zr([Za.config({mode:"special",onEnter:lo=>oo.findPrimary(lo).map(ho=>(og(ho),!0)),onLeft:(lo,ho)=>(ho.cut(),ko.none()),onRight:(lo,ho)=>(ho.cut(),ko.none())})])})),oo=X7(Kn,Qn.commands,Un);return[{title:ko.none(),items:[Kn.asSpec()]},{title:ko.none(),items:oo.asSpecs()}]},Y7={renderContextForm:(Qn,Un,Xn)=>O$({type:Qn,uid:ba("context-toolbar"),initGroups:I$(Un,Xn),onEscape:ko.none,cyclicKeying:!0,providers:Xn}),buildInitGroups:I$},G7=(Qn,Un,Xn)=>Un.bottom-Qn.y>=Xn&&Qn.bottom-Un.y>=Xn,p2=Qn=>{const Un=Qn.getBoundingClientRect();if(Un.height<=0&&Un.width<=0){const Xn=Eg(Ds.fromDom(Qn.startContainer),Qn.startOffset).element;return(Td(Xn)?Zd(Xn):ko.some(Xn)).filter(fc).map(oo=>oo.dom.getBoundingClientRect()).getOr(Un)}else return Un},g2=Qn=>{const Un=Qn.selection.getRng(),Xn=p2(Un);if(Qn.inline){const Kn=Af();return Kc(Kn.left+Xn.left,Kn.top+Xn.top,Xn.width,Xn.height)}else{const Kn=cf(Ds.fromDom(Qn.getBody()));return Kc(Kn.x+Xn.left,Kn.y+Xn.top,Xn.width,Xn.height)}},K4=(Qn,Un)=>Un.filter(Xn=>Gl(Xn)&&sm(Xn)).map(cf).getOrThunk(()=>g2(Qn)),K7=(Qn,Un,Xn)=>{const Kn=Math.max(Qn.x+Xn,Un.x),oo=Math.min(Qn.right-Xn,Un.right);return{x:Kn,width:oo-Kn}},J7=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Ds.fromDom(Qn.getContainer()),yo=Rd(ho,".tox-editor-header").getOr(ho),Co=au(yo),Ro=Co.y>=Un.bottom,Lo=Kn&&!Ro;if(Qn.inline&&Lo)return{y:Math.max(Co.bottom+lo,Xn.y),bottom:Xn.bottom};if(Qn.inline&&!Lo)return{y:Xn.y,bottom:Math.min(Co.y-lo,Xn.bottom)};const Wo=oo==="line"?au(ho):Un;return Lo?{y:Math.max(Co.bottom+lo,Xn.y),bottom:Math.min(Wo.bottom-lo,Xn.bottom)}:{y:Math.max(Wo.y+lo,Xn.y),bottom:Math.min(Co.y-lo,Xn.bottom)}},e8=(Qn,Un,Xn,Kn=0)=>{const oo=Pb(window),lo=au(Ds.fromDom(Qn.getContentAreaContainer())),ho=Pk(Qn)||HA(Qn)||cE(Qn),{x:yo,width:Co}=K7(lo,oo,Kn);if(Qn.inline&&!ho)return Kc(yo,oo.y,Co,oo.height);{const Ro=Un.header.isPositionedAtTop(),{y:Lo,bottom:Wo}=J7(Qn,lo,oo,Ro,Xn,Kn);return Kc(yo,Lo,Co,Wo-Lo)}},dT=12,t8={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"],inset:["tox-pop--inset"]},n8={maxHeightFunction:zg(),maxWidthFunction:P4()},Aj=(Qn,Un)=>{const Xn=Qn.selection.getRng(),Kn=Eg(Ds.fromDom(Xn.startContainer),Xn.startOffset);return Xn.startContainer===Xn.endContainer&&Xn.startOffset===Xn.endOffset-1&&Oc(Kn.element,Un)},Pj=(Qn,Un,Xn)=>{const Kn=ku(Qn,"position");ya(Qn,"position",Un);const oo=Xn(Qn);return Kn.each(lo=>ya(Qn,"position",lo)),oo},o8=Qn=>Qn==="node",s8=(Qn,Un,Xn,Kn,oo)=>{const lo=g2(Qn),ho=Kn.lastElement().exists(yo=>Oc(Xn,yo));if(Aj(Qn,Xn))return ho?GM:f0;if(ho)return Pj(Un,Kn.getMode(),()=>G7(lo,au(Un),-20)&&!Kn.isReposition()?wU:GM);{const yo=Kn.getMode()==="fixed"?oo.y+Af().top:oo.y,Co=cu(Un)+dT;return yo+Co<=lo.y?f0:s2}},B$=(Qn,Un,Xn,Kn)=>{const oo=Co=>(Ro,Lo,Wo,jo,Jo)=>{const us=s8(Qn,jo,Co,Xn,Jo),Ps={...Ro,y:Jo.y,height:Jo.height};return{...us(Ps,Lo,Wo,jo,Jo),alwaysFit:!0}},lo=Co=>o8(Kn)?[oo(Co)]:[];return Un?{onLtr:Co=>[bu,gf,eh,bf,$l,Rh].concat(lo(Co)),onRtl:Co=>[bu,eh,gf,$l,bf,Rh].concat(lo(Co))}:{onLtr:Co=>[Rh,bu,bf,gf,$l,eh].concat(lo(Co)),onRtl:Co=>[Rh,bu,$l,eh,bf,gf].concat(lo(Co))}},r8=(Qn,Un,Xn,Kn)=>Un==="line"?{bubble:p1(dT,0,t8),layouts:{onLtr:()=>[vf],onRtl:()=>[Gy]},overrides:n8}:{bubble:p1(0,dT,t8,1/dT),layouts:B$(Qn,Xn,Kn,Un),overrides:n8},F$=(Qn,Un)=>{const Xn=ga(Un,lo=>lo.predicate(Qn.dom)),{pass:Kn,fail:oo}=el(Xn,lo=>lo.type==="contexttoolbar");return{contextToolbars:Kn,contextForms:oo}},J4=Qn=>{if(Qn.length<=1)return Qn;{const Un=lo=>Br(Qn,ho=>ho.position===lo),Xn=lo=>ga(Qn,ho=>ho.position===lo),Kn=Un("selection"),oo=Un("node");if(Kn||oo)if(oo&&Kn){const lo=Xn("node"),ho=hs(Xn("selection"),yo=>({...yo,position:"node"}));return lo.concat(ho)}else return Xn(Kn?"selection":"node");else return Xn("line")}},$j=Qn=>{if(Qn.length<=1)return Qn;{const Un=Kn=>Zs(Qn,oo=>oo.position===Kn);return Un("selection").orThunk(()=>Un("node")).orThunk(()=>Un("line")).map(Kn=>Kn.position).fold(()=>[],Kn=>ga(Qn,oo=>oo.position===Kn))}},i8=(Qn,Un,Xn)=>{const Kn=F$(Qn,Un);if(Kn.contextForms.length>0)return ko.some({elem:Qn,toolbars:[Kn.contextForms[0]]});{const oo=F$(Qn,Xn);if(oo.contextForms.length>0)return ko.some({elem:Qn,toolbars:[oo.contextForms[0]]});if(Kn.contextToolbars.length>0||oo.contextToolbars.length>0){const lo=J4(Kn.contextToolbars.concat(oo.contextToolbars));return ko.some({elem:Qn,toolbars:lo})}else return ko.none()}},Rj=(Qn,Un,Xn)=>Qn(Un)?ko.none():Uh(Un,Kn=>{if(fc(Kn)){const{contextToolbars:oo,contextForms:lo}=F$(Kn,Xn.inNodeScope),ho=lo.length>0?lo:$j(oo);return ho.length>0?ko.some({elem:Kn,toolbars:ho}):ko.none()}else return ko.none()},Qn),Dj=(Qn,Un)=>{const Xn=Ds.fromDom(Un.getBody()),Kn=ho=>Oc(ho,Xn),oo=ho=>!Kn(ho)&&!cd(Xn,ho),lo=Ds.fromDom(Un.selection.getNode());return oo(lo)?ko.none():i8(lo,Qn.inNodeScope,Qn.inEditorScope).orThunk(()=>Rj(Kn,lo,Qn))},H$=(Qn,Un)=>{const Xn={},Kn=[],oo=[],lo={},ho={},yo=(Lo,Wo)=>{const jo=Ec(aQ(Wo));Xn[Lo]=jo,jo.launch.map(Jo=>{lo["form:"+Lo]={...Wo.launch,type:Jo.type==="contextformtogglebutton"?"togglebutton":"button",onAction:()=>{Un(jo)}}}),jo.scope==="editor"?oo.push(jo):Kn.push(jo),ho[Lo]=jo},Co=(Lo,Wo)=>{cQ(Wo).each(jo=>{Wo.scope==="editor"?oo.push(jo):Kn.push(jo),ho[Lo]=jo})},Ro=nc(Qn);return Qs(Ro,Lo=>{const Wo=Qn[Lo];Wo.type==="contextform"?yo(Lo,Wo):Wo.type==="contexttoolbar"&&Co(Lo,Wo)}),{forms:Xn,inNodeScope:Kn,inEditorScope:oo,lookupTable:ho,formNavigators:lo}},eN=ba("forward-slide"),a8=ba("backward-slide"),tN=ba("change-slide-event"),nN="tox-pop--resizing",Mj=Qn=>{const Un=Ua([]);return kd.sketch({dom:{tag:"div",classes:["tox-pop"]},fireDismissalEventInstead:{event:"doNotDismissYet"},onShow:Xn=>{Un.set([]),kd.getContent(Xn).each(Kn=>{El(Kn.element,"visibility")}),Yu(Xn.element,nN),El(Xn.element,"width")},inlineBehaviours:Zr([Rl("context-toolbar-events",[rg(V1(),(Xn,Kn)=>{Kn.event.raw.propertyName==="width"&&(Yu(Xn.element,nN),El(Xn.element,"width"))}),wr(tN,(Xn,Kn)=>{const oo=Xn.element;El(oo,"width");const lo=dd(oo);kd.setContent(Xn,Kn.event.contents),$d(oo,nN);const ho=dd(oo);ya(oo,"width",lo+"px"),kd.getContent(Xn).each(yo=>{Kn.event.focus.bind(Co=>(Cd(Co),dg(oo))).orThunk(()=>(Za.focusIn(yo),h1(rr(oo))))}),setTimeout(()=>{ya(Xn.element,"width",ho+"px")},0)}),wr(eN,(Xn,Kn)=>{kd.getContent(Xn).each(oo=>{Un.set(Un.get().concat([{bar:oo,focus:h1(rr(Xn.element))}]))}),Qa(Xn,tN,{contents:Kn.event.forwardContents,focus:ko.none()})}),wr(a8,(Xn,Kn)=>{Zc(Un.get()).each(oo=>{Un.set(Un.get().slice(0,Un.get().length-1)),Qa(Xn,tN,{contents:Fm(oo.bar),focus:oo.focus})})})]),Za.config({mode:"special",onEscape:Xn=>Zc(Un.get()).fold(()=>Qn.onEscape(),Kn=>(Wl(Xn,a8),ko.some(!0)))})]),lazySink:()=>yl.value(Qn.sink)})},oN="tox-pop--transition",l8=(Qn,Un,Xn,Kn)=>{const oo=Kn.backstage,lo=oo.shared,ho=Tr().deviceType.isTouch,yo=Hl(),Co=Hl(),Ro=Hl(),Lo=gh(Mj({sink:Xn,onEscape:()=>(Qn.focus(),ko.some(!0))})),Wo=()=>{const Sa=Ro.get().getOr("node"),fl=o8(Sa)?1:0;return e8(Qn,lo,Sa,fl)},jo=()=>!Qn.removed&&!(ho()&&oo.isContextMenuOpen()),Jo=Sa=>vs(ia(Sa,yo.get(),Oc),!0),us=()=>{if(jo()){const Sa=Wo(),fl=vs(Ro.get(),"node")?K4(Qn,yo.get()):g2(Qn);return Sa.height<=0||!G7(fl,Sa,.01)}else return!0},Ps=()=>{yo.clear(),Co.clear(),Ro.clear(),kd.hide(Lo)},er=()=>{if(kd.isOpen(Lo)){const Sa=Lo.element;El(Sa,"display"),us()?ya(Sa,"display","none"):(Co.set(0),kd.reposition(Lo))}},Bs=Sa=>({dom:{tag:"div",classes:["tox-pop__dialog"]},components:[Sa],behaviours:Zr([Za.config({mode:"acyclic"}),Rl("pop-dialog-wrap-events",[eu(fl=>{Qn.shortcuts.add("ctrl+F9","focus statusbar",()=>Za.focusIn(fl))}),ig(fl=>{Qn.shortcuts.remove("ctrl+F9")})])])}),Ns=Du(()=>H$(Un,Sa=>{const fl=kr([Sa]);Qa(Lo,eN,{forwardContents:Bs(fl)})})),Xs=(Sa,fl)=>M$(Qn,{buttons:Sa,toolbar:fl.items,allowToolbarGroups:!1},Kn.backstage,ko.some(["form:"])),Hr=(Sa,fl)=>Y7.buildInitGroups(Sa,fl),kr=Sa=>{const{buttons:fl}=Qn.ui.registry.getAll(),rl=Ns(),Yc={...fl,...rl.formNavigators},Ga=Tk(Qn)===qg.scrolling?qg.scrolling:qg.default,yc=Us(hs(Sa,oa=>oa.type==="contexttoolbar"?Xs(Yc,oa):Hr(oa,lo.providers)));return O$({type:Ga,uid:ba("context-toolbar"),initGroups:yc,onEscape:ko.none,cyclicKeying:!0,providers:lo.providers})},Or=(Sa,fl)=>{const rl=Sa==="node"?lo.anchors.node(fl):lo.anchors.cursor(),Yc=r8(Qn,Sa,ho(),{lastElement:yo.get,isReposition:()=>vs(Co.get(),0),getMode:()=>jh.getMode(Xn)});return Lc(rl,Yc)},qr=(Sa,fl)=>{if(Dl.cancel(),!jo())return;const rl=kr(Sa),Yc=Sa[0].position,Ga=Or(Yc,fl);Ro.set(Yc),Co.set(1);const yc=Lo.element;El(yc,"display"),Jo(fl)||(Yu(yc,oN),jh.reset(Xn,Lo)),kd.showWithinBounds(Lo,Bs(rl),{anchor:Ga,transition:{classes:[oN],mode:"placement"}},()=>ko.some(Wo())),fl.fold(yo.clear,yo.set),us()&&ya(yc,"display","none")};let na=!1;const Dl=IP(()=>{if(!(!Qn.hasFocus()||Qn.removed||na))if(of(Lo.element,oN))Dl.throttle();else{const Sa=Ns();Dj(Sa,Qn).fold(Ps,fl=>{qr(fl.toolbars,ko.some(fl.elem))})}},17);Qn.on("init",()=>{Qn.on("remove",Ps),Qn.on("ScrollContent ScrollWindow ObjectResized ResizeEditor longpress",er),Qn.on("click keyup focus SetContent",Dl.throttle),Qn.on(Z7,Ps),Qn.on(Cj,Sa=>{const fl=Ns();Rr(fl.lookupTable,Sa.toolbarKey).each(rl=>{qr([rl],Mr(Sa.target!==Qn,Sa.target)),kd.getContent(Lo).each(Za.focusIn)})}),Qn.on("focusout",Sa=>{$w.setEditorTimeout(Qn,()=>{dg(Xn.element).isNone()&&dg(Lo.element).isNone()&&Ps()},0)}),Qn.on("SwitchMode",()=>{Qn.mode.isReadOnly()&&Ps()}),Qn.on("AfterProgressState",Sa=>{Sa.state?Ps():Qn.hasFocus()&&Dl.throttle()}),Qn.on("dragstart",()=>{na=!0}),Qn.on("dragend drop",()=>{na=!1}),Qn.on("NodeChange",Sa=>{dg(Lo.element).fold(Dl.throttle,xo)})})},c8=Qn=>{Qs([{name:"alignleft",text:"Align left",cmd:"JustifyLeft",icon:"align-left"},{name:"aligncenter",text:"Align center",cmd:"JustifyCenter",icon:"align-center"},{name:"alignright",text:"Align right",cmd:"JustifyRight",icon:"align-right"},{name:"alignjustify",text:"Justify",cmd:"JustifyFull",icon:"align-justify"}],Xn=>{Qn.ui.registry.addToggleButton(Xn.name,{tooltip:Xn.text,icon:Xn.icon,onAction:bg(Qn,Xn.cmd),onSetup:rP(Qn,Xn.name)})}),Qn.ui.registry.addButton("alignnone",{tooltip:"No alignment",icon:"align-none",onSetup:mp(Qn),onAction:bg(Qn,"JustifyNone")})},u8=(Qn,Un)=>{const Xn=()=>{const Kn=Un.getOptions(Qn),oo=Un.getCurrent(Qn).map(Un.hash),lo=Hl();return hs(Kn,ho=>({type:"togglemenuitem",text:Un.display(ho),onSetup:yo=>{const Co=Lo=>{Lo&&(lo.on(Wo=>Wo.setActive(!1)),lo.set(yo)),yo.setActive(Lo)};Co(vs(oo,Un.hash(ho)));const Ro=Un.watcher(Qn,ho,Co);return()=>{lo.clear(),Ro()}},onAction:()=>Un.setCurrent(Qn,ho)}))};Qn.ui.registry.addMenuButton(Un.name,{tooltip:Un.text,icon:Un.icon,fetch:Kn=>Kn(Xn()),onSetup:Un.onToolbarSetup}),Qn.ui.registry.addNestedMenuItem(Un.name,{type:"nestedmenuitem",text:Un.text,getSubmenuItems:Xn,onSetup:Un.onMenuSetup})},Nj=Qn=>({name:"lineheight",text:"Line height",icon:"line-height",getOptions:GL,hash:Un=>Wq(Un,["fixed","relative","empty"]).getOr(Un),display:es,watcher:(Un,Xn,Kn)=>Un.formatter.formatChanged("lineheight",Kn,!1,{value:Xn}).unbind,getCurrent:Un=>ko.from(Un.queryCommandValue("LineHeight")),setCurrent:(Un,Xn)=>Un.execCommand("LineHeight",!1,Xn),onToolbarSetup:mp(Qn),onMenuSetup:mp(Qn)}),d8=Qn=>ko.from(QL(Qn)).map(Xn=>({name:"language",text:"Language",icon:"language",getOptions:Mo(Xn),hash:Kn=>mo(Kn.customCode)?Kn.code:`${Kn.code}/${Kn.customCode}`,display:Kn=>Kn.title,watcher:(Kn,oo,lo)=>{var ho;return Kn.formatter.formatChanged("lang",lo,!1,{value:oo.code,customValue:(ho=oo.customCode)!==null&&ho!==void 0?ho:null}).unbind},getCurrent:Kn=>{const oo=Ds.fromDom(Kn.selection.getNode());return Jf(oo,lo=>ko.some(lo).filter(fc).bind(ho=>Uo(ho,"lang").map(Co=>{const Ro=Uo(ho,"data-mce-lang").getOrUndefined();return{code:Co,customCode:Ro,title:""}})))},setCurrent:(Kn,oo)=>Kn.execCommand("Lang",!1,oo),onToolbarSetup:Kn=>{const oo=ab();return Kn.setActive(Qn.formatter.match("lang",{},void 0,!0)),oo.set(Qn.formatter.formatChanged("lang",Kn.setActive,!0)),SE(oo.clear,mp(Qn)(Kn))},onMenuSetup:mp(Qn)})),Lj=Qn=>{u8(Qn,Nj(Qn)),d8(Qn).each(Un=>u8(Qn,Un))},Ij=(Qn,Un)=>{Nq(Qn,Un),Qq(Qn,Un),nj(Qn,Un),Bq(Qn,Un),x7(Qn,Un)},Bj=Qn=>a0(Qn,"NodeChange",Un=>{Un.setEnabled(Qn.queryCommandState("outdent")&&Qn.selection.isEditable())}),Fj=Qn=>{Qn.ui.registry.addButton("outdent",{tooltip:"Decrease indent",icon:"outdent",onSetup:Bj(Qn),onAction:bg(Qn,"outdent")}),Qn.ui.registry.addButton("indent",{tooltip:"Increase indent",icon:"indent",onSetup:mp(Qn),onAction:bg(Qn,"indent")})},Hj=Qn=>{Fj(Qn)},Q$=(Qn,Un)=>Xn=>{Xn.setActive(Un.get());const Kn=oo=>{Un.set(oo.state),Xn.setActive(oo.state)};return Qn.on("PastePlainTextToggle",Kn),SE(()=>Qn.off("PastePlainTextToggle",Kn),mp(Qn)(Xn))},Qj=Qn=>{const Un=Ua(NA(Qn)),Xn=()=>Qn.execCommand("mceTogglePlainTextPaste");Qn.ui.registry.addToggleButton("pastetext",{active:!1,icon:"paste-text",tooltip:"Paste as text",onAction:Xn,onSetup:Q$(Qn,Un)}),Qn.ui.registry.addToggleMenuItem("pastetext",{text:"Paste as text",icon:"paste-text",onAction:Xn,onSetup:Q$(Qn,Un)})},sN=(Qn,Un)=>()=>{Qn.execCommand("mceToggleFormat",!1,Un)},rN=Qn=>{xO.each([{name:"bold",text:"Bold",icon:"bold"},{name:"italic",text:"Italic",icon:"italic"},{name:"underline",text:"Underline",icon:"underline"},{name:"strikethrough",text:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",icon:"superscript"}],(Un,Xn)=>{Qn.ui.registry.addToggleButton(Un.name,{tooltip:Un.text,icon:Un.icon,onSetup:rP(Qn,Un.name),onAction:sN(Qn,Un.name)})});for(let Un=1;Un<=6;Un++){const Xn="h"+Un;Qn.ui.registry.addToggleButton(Xn,{text:Xn.toUpperCase(),tooltip:"Heading "+Un,onSetup:rP(Qn,Xn),onAction:sN(Qn,Xn)})}},f8=Qn=>{xO.each([{name:"copy",text:"Copy",action:"Copy",icon:"copy"},{name:"help",text:"Help",action:"mceHelp",icon:"help"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all"},{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"print",text:"Print",action:"mcePrint",icon:"print"}],Un=>{Qn.ui.registry.addButton(Un.name,{tooltip:Un.text,icon:Un.icon,onAction:bg(Qn,Un.action)})}),xO.each([{name:"cut",text:"Cut",action:"Cut",icon:"cut"},{name:"paste",text:"Paste",action:"Paste",icon:"paste"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"remove",text:"Remove",action:"Delete",icon:"remove"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],Un=>{Qn.ui.registry.addButton(Un.name,{tooltip:Un.text,icon:Un.icon,onSetup:mp(Qn),onAction:bg(Qn,Un.action)})})},h8=Qn=>{xO.each([{name:"blockquote",text:"Blockquote",action:"mceBlockQuote",icon:"quote"}],Un=>{Qn.ui.registry.addToggleButton(Un.name,{tooltip:Un.text,icon:Un.icon,onAction:bg(Qn,Un.action),onSetup:rP(Qn,Un.name)})})},Vj=Qn=>{rN(Qn),f8(Qn),h8(Qn)},zj=Qn=>{xO.each([{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"copy",text:"Copy",action:"Copy",icon:"copy",shortcut:"Meta+C"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all",shortcut:"Meta+A"},{name:"print",text:"Print...",action:"mcePrint",icon:"print",shortcut:"Meta+P"}],Un=>{Qn.ui.registry.addMenuItem(Un.name,{text:Un.text,icon:Un.icon,shortcut:Un.shortcut,onAction:bg(Qn,Un.action)})}),xO.each([{name:"bold",text:"Bold",action:"Bold",icon:"bold",shortcut:"Meta+B"},{name:"italic",text:"Italic",action:"Italic",icon:"italic",shortcut:"Meta+I"},{name:"underline",text:"Underline",action:"Underline",icon:"underline",shortcut:"Meta+U"},{name:"strikethrough",text:"Strikethrough",action:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",action:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",action:"Superscript",icon:"superscript"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"cut",text:"Cut",action:"Cut",icon:"cut",shortcut:"Meta+X"},{name:"paste",text:"Paste",action:"Paste",icon:"paste",shortcut:"Meta+V"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],Un=>{Qn.ui.registry.addMenuItem(Un.name,{text:Un.text,icon:Un.icon,shortcut:Un.shortcut,onSetup:mp(Qn),onAction:bg(Qn,Un.action)})}),Qn.ui.registry.addMenuItem("codeformat",{text:"Code",icon:"sourcecode",onSetup:mp(Qn),onAction:sN(Qn,"code")})},Wj=Qn=>{Vj(Qn),zj(Qn)},V$=(Qn,Un)=>a0(Qn,"Undo Redo AddUndo TypingUndo ClearUndos SwitchMode",Xn=>{Xn.setEnabled(!Qn.mode.isReadOnly()&&Qn.undoManager[Un]())}),Uj=Qn=>{Qn.ui.registry.addMenuItem("undo",{text:"Undo",icon:"undo",shortcut:"Meta+Z",onSetup:V$(Qn,"hasUndo"),onAction:bg(Qn,"undo")}),Qn.ui.registry.addMenuItem("redo",{text:"Redo",icon:"redo",shortcut:"Meta+Y",onSetup:V$(Qn,"hasRedo"),onAction:bg(Qn,"redo")})},iN=Qn=>{Qn.ui.registry.addButton("undo",{tooltip:"Undo",icon:"undo",enabled:!1,onSetup:V$(Qn,"hasUndo"),onAction:bg(Qn,"undo")}),Qn.ui.registry.addButton("redo",{tooltip:"Redo",icon:"redo",enabled:!1,onSetup:V$(Qn,"hasRedo"),onAction:bg(Qn,"redo")})},Zj=Qn=>{Uj(Qn),iN(Qn)},m8=Qn=>a0(Qn,"VisualAid",Un=>{Un.setActive(Qn.hasVisual)}),qj=Qn=>{Qn.ui.registry.addToggleMenuItem("visualaid",{text:"Visual aids",onSetup:m8(Qn),onAction:bg(Qn,"mceToggleVisualAid")})},jj=Qn=>{Qn.ui.registry.addButton("visualaid",{tooltip:"Visual aids",text:"Visual aids",onAction:bg(Qn,"mceToggleVisualAid")})},aN=Qn=>{jj(Qn),qj(Qn)},Xj=(Qn,Un)=>{c8(Qn),Wj(Qn),Ij(Qn,Un),Zj(Qn),CI(Qn),aN(Qn),Hj(Qn),Lj(Qn),Qj(Qn)},p8=Qn=>qn(Qn)?Qn.split(/[ ,]/):Qn,g8=Qn=>Un=>Un.options.get(Qn),Yj=Qn=>{const Un=Qn.options.register;Un("contextmenu_avoid_overlap",{processor:"string",default:""}),Un("contextmenu_never_use_native",{processor:"boolean",default:!1}),Un("contextmenu",{processor:Xn=>Xn===!1?{value:[],valid:!0}:qn(Xn)||Do(Xn,qn)?{value:p8(Xn),valid:!0}:{valid:!1,message:"Must be false or a string."},default:"link linkchecker image editimage table spellchecker configurepermanentpen"})},z$=g8("contextmenu_never_use_native"),Gj=g8("contextmenu_avoid_overlap"),Kj=Qn=>b8(Qn).length===0,b8=Qn=>{const Un=Qn.ui.registry.getAll().contextMenus,Xn=Qn.options.get("contextmenu");return Qn.options.isSet("contextmenu")?Xn:ga(Xn,Kn=>Pl(Un,Kn))},fT=(Qn,Un)=>({type:"makeshift",x:Qn,y:Un}),Jj=(Qn,Un,Xn)=>fT(Qn.x+Un,Qn.y+Xn),lN=Qn=>Qn.type==="longpress"||Qn.type.indexOf("touch")===0,eX=Qn=>{if(lN(Qn)){const Un=Qn.touches[0];return fT(Un.pageX,Un.pageY)}else return fT(Qn.pageX,Qn.pageY)},tX=Qn=>{if(lN(Qn)){const Un=Qn.touches[0];return fT(Un.clientX,Un.clientY)}else return fT(Qn.clientX,Qn.clientY)},nX=(Qn,Un)=>{const Xn=Mw.DOM.getPos(Qn);return Jj(Un,Xn.x,Xn.y)},oX=(Qn,Un)=>Un.type==="contextmenu"||Un.type==="longpress"?Qn.inline?eX(Un):nX(Qn.getContentAreaContainer(),tX(Un)):v8(Qn),v8=Qn=>({type:"selection",root:Ds.fromDom(Qn.selection.getNode())}),sX=Qn=>({type:"node",node:ko.some(Ds.fromDom(Qn.selection.getNode())),root:Ds.fromDom(Qn.getBody())}),y8=(Qn,Un,Xn)=>{switch(Xn){case"node":return sX(Qn);case"point":return oX(Qn,Un);case"selection":return v8(Qn)}},rX=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Xn(),yo=y8(Qn,Un,lo);t2(ho,sv.CLOSE_ON_EXECUTE,Kn,{isHorizontalMenu:!1,search:ko.none()}).map(Co=>{Un.preventDefault(),kd.showMenuAt(oo,{anchor:yo},{menu:{markers:OO("normal")},data:Co})})},O8={onLtr:()=>[bu,gf,eh,bf,$l,Rh,f0,s2,GE,YE,Zw,XE],onRtl:()=>[bu,eh,gf,$l,bf,Rh,f0,s2,Zw,XE,GE,YE]},iX=12,_8={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"]},aX=(Qn,Un)=>{const Xn=Qn.selection;if(Xn.isCollapsed()||Un.touches.length<1)return!1;{const Kn=Un.touches[0],oo=Xn.getRng();return rw(Qn.getWin(),Zf.domRange(oo)).exists(ho=>ho.left<=Kn.clientX&&ho.right>=Kn.clientX&&ho.top<=Kn.clientY&&ho.bottom>=Kn.clientY)}},lX=Qn=>{const Un=Qn.selection.getRng(),Xn=()=>{$w.setEditorTimeout(Qn,()=>{Qn.selection.setRng(Un)},10),lo()};Qn.once("touchend",Xn);const Kn=ho=>{ho.preventDefault(),ho.stopImmediatePropagation()};Qn.on("mousedown",Kn,!0);const oo=()=>lo();Qn.once("longpresscancel",oo);const lo=()=>{Qn.off("touchend",Xn),Qn.off("longpresscancel",oo),Qn.off("mousedown",Kn)}},cX=(Qn,Un,Xn)=>{const Kn=y8(Qn,Un,Xn);return{bubble:p1(0,Xn==="point"?iX:0,_8),layouts:O8,overrides:{maxWidthFunction:P4(),maxHeightFunction:zg()},...Kn}},Yw=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=cX(Qn,Un,lo);t2(Xn,sv.CLOSE_ON_EXECUTE,Kn,{isHorizontalMenu:!0,search:ko.none()}).map(Co=>{Un.preventDefault();const Ro=ho?hp.HighlightMenuAndItem:hp.HighlightNone;kd.showMenuWithinBounds(oo,{anchor:yo},{menu:{markers:OO("normal"),highlightOnOpen:Ro},data:Co,type:"horizontal"},()=>ko.some(e8(Qn,Kn.shared,lo==="node"?"node":"selection"))),Qn.dispatch(Z7)})},S8=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Tr(),yo=ho.os.isiOS(),Co=ho.os.isMacOS(),Ro=ho.os.isAndroid(),Lo=ho.deviceType.isTouch(),Wo=()=>!(Ro||yo||Co&&Lo),jo=()=>{const Jo=Xn();Yw(Qn,Un,Jo,Kn,oo,lo,Wo())};if((Co||yo)&&lo!=="node"){const Jo=()=>{lX(Qn),jo()};aX(Qn,Un)?Jo():(Qn.once("selectionchange",Jo),Qn.once("touchend",()=>Qn.off("selectionchange",Jo)))}else jo()},w8=Qn=>qn(Qn)?Qn==="|":Qn.type==="separator",cN={type:"separator"},C8=Qn=>{const Un=Xn=>({text:Xn.text,icon:Xn.icon,enabled:Xn.enabled,shortcut:Xn.shortcut});if(qn(Qn))return Qn;switch(Qn.type){case"separator":return cN;case"submenu":return{type:"nestedmenuitem",...Un(Qn),getSubmenuItems:()=>{const Kn=Qn.getSubmenuItems();return qn(Kn)?Kn:hs(Kn,C8)}};default:const Xn=Qn;return{type:"menuitem",...Un(Xn),onAction:Bo(Xn.onAction)}}},k8=(Qn,Un)=>{if(Un.length===0)return Qn;const Kn=Zc(Qn).filter(oo=>!w8(oo)).fold(()=>[],oo=>[cN]);return Qn.concat(Kn).concat(Un).concat([cN])},x8=(Qn,Un,Xn)=>{const Kn=za(Un,(oo,lo)=>Rr(Qn,lo.toLowerCase()).map(ho=>{const yo=ho.update(Xn);if(qn(yo)&&Ts(Vu(yo)))return k8(oo,yo.split(" "));if(to(yo)&&yo.length>0){const Co=hs(yo,C8);return k8(oo,Co)}else return oo}).getOrThunk(()=>oo.concat([lo])),[]);return Kn.length>0&&w8(Kn[Kn.length-1])&&Kn.pop(),Kn},uX=(Qn,Un)=>Un.ctrlKey&&!z$(Qn),dX=Qn=>Qn.type==="longpress"||Pl(Qn,"touches"),E8=(Qn,Un)=>!dX(Un)&&(Un.button!==2||Un.target===Qn.getBody()&&Un.pointerType===""),T8=(Qn,Un)=>E8(Qn,Un)?Qn.selection.getStart(!0):Un.target,fX=(Qn,Un)=>{const Xn=Gj(Qn),Kn=E8(Qn,Un)?"selection":"point";if(Ts(Xn)){const oo=T8(Qn,Un);return xE(Ds.fromDom(oo),Xn)?"node":Kn}else return Kn},hX=(Qn,Un,Xn)=>{const oo=Tr().deviceType.isTouch,lo=gh(kd.sketch({dom:{tag:"div"},lazySink:Un,onEscape:()=>Qn.focus(),onShow:()=>Xn.setContextMenuState(!0),onHide:()=>Xn.setContextMenuState(!1),fireDismissalEventInstead:{},inlineBehaviours:Zr([Rl("dismissContextMenu",[wr(q1(),(Co,Ro)=>{uc.close(Co),Qn.focus()})])])})),ho=()=>kd.hide(lo),yo=Co=>{if(z$(Qn)&&Co.preventDefault(),uX(Qn,Co)||Kj(Qn))return;const Ro=fX(Qn,Co),Lo=()=>{const jo=T8(Qn,Co),Jo=Qn.ui.registry.getAll(),us=b8(Qn);return x8(Jo.contextMenus,us,jo)};(oo()?S8:rX)(Qn,Co,Lo,Xn,lo,Ro)};Qn.on("init",()=>{const Co="ResizeEditor ScrollContent ScrollWindow longpresscancel"+(oo()?"":" ResizeWindow");Qn.on(Co,ho),Qn.on("longpress contextmenu",yo)})},uN=Po.generate([{offset:["x","y"]},{absolute:["x","y"]},{fixed:["x","y"]}]),W$=Qn=>Un=>Un.translate(-Qn.left,-Qn.top),U$=Qn=>Un=>Un.translate(Qn.left,Qn.top),TO=Qn=>(Un,Xn)=>za(Qn,(Kn,oo)=>oo(Kn),vc(Un,Xn)),hT=(Qn,Un,Xn)=>Qn.fold(TO([U$(Xn),W$(Un)]),TO([W$(Un)]),TO([])),Gw=(Qn,Un,Xn)=>Qn.fold(TO([U$(Xn)]),TO([]),TO([U$(Un)])),A8=(Qn,Un,Xn)=>Qn.fold(TO([]),TO([W$(Xn)]),TO([U$(Un),W$(Xn)])),mT=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Gw(Qn,oo,lo),yo=Gw(Un,oo,lo);return Math.abs(ho.left-yo.left)<=Xn&&Math.abs(ho.top-yo.top)<=Kn},mX=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=Gw(Qn,oo,lo),yo=Gw(Un,oo,lo),Co=Math.abs(ho.left-yo.left),Ro=Math.abs(ho.top-yo.top);return vc(Co,Ro)},P8=(Qn,Un,Xn)=>{const Kn=Qn.fold((oo,lo)=>({position:ko.some("absolute"),left:ko.some(oo+"px"),top:ko.some(lo+"px")}),(oo,lo)=>({position:ko.some("absolute"),left:ko.some(oo-Xn.left+"px"),top:ko.some(lo-Xn.top+"px")}),(oo,lo)=>({position:ko.some("fixed"),left:ko.some(oo+"px"),top:ko.some(lo+"px")}));return{right:ko.none(),bottom:ko.none(),...Kn}},dN=(Qn,Un,Xn)=>Qn.fold((Kn,oo)=>Z$(Kn+Un,oo+Xn),(Kn,oo)=>sS(Kn+Un,oo+Xn),(Kn,oo)=>Kw(Kn+Un,oo+Xn)),fN=(Qn,Un,Xn,Kn)=>{const oo=(lo,ho)=>(yo,Co)=>{const Ro=lo(Un,Xn,Kn);return ho(yo.getOr(Ro.left),Co.getOr(Ro.top))};return Qn.fold(oo(A8,Z$),oo(Gw,sS),oo(hT,Kw))},Z$=uN.offset,sS=uN.absolute,Kw=uN.fixed,$8=(Qn,Un)=>{const Xn=Bu(Qn,Un);return mo(Xn)?NaN:parseInt(Xn,10)},pX=(Qn,Un)=>{const Xn=Qn.element,Kn=$8(Xn,Un.leftAttr),oo=$8(Xn,Un.topAttr);return isNaN(Kn)||isNaN(oo)?ko.none():ko.some(vc(Kn,oo))},gX=(Qn,Un,Xn)=>{const Kn=Qn.element;aa(Kn,Un.leftAttr,Xn.left+"px"),aa(Kn,Un.topAttr,Xn.top+"px")},bX=(Qn,Un)=>{const Xn=Qn.element;_s(Xn,Un.leftAttr),_s(Xn,Un.topAttr)},vX=(Qn,Un,Xn,Kn)=>pX(Qn,Un).fold(()=>Xn,oo=>Kw(oo.left+Kn.left,oo.top+Kn.top)),yX=(Qn,Un,Xn,Kn,oo,lo)=>{const ho=vX(Qn,Un,Xn,Kn),yo=Un.mustSnap?_X(Qn,Un,ho,oo,lo):SX(Qn,Un,ho,oo,lo),Co=hT(ho,oo,lo);return gX(Qn,Un,Co),yo.fold(()=>({coord:Kw(Co.left,Co.top),extra:ko.none()}),Ro=>({coord:Ro.output,extra:Ro.extra}))},OX=(Qn,Un)=>{bX(Qn,Un)},R8=(Qn,Un,Xn,Kn)=>gc(Qn,oo=>{const lo=oo.sensor;return mT(Un,lo,oo.range.left,oo.range.top,Xn,Kn)?ko.some({output:fN(oo.output,Un,Xn,Kn),extra:oo.extra}):ko.none()}),_X=(Qn,Un,Xn,Kn,oo)=>{const lo=Un.getSnapPoints(Qn);return R8(lo,Xn,Kn,oo).orThunk(()=>za(lo,(Co,Ro)=>{const Lo=Ro.sensor,Wo=mX(Xn,Lo,Ro.range.left,Ro.range.top,Kn,oo);return Co.deltas.fold(()=>({deltas:ko.some(Wo),snap:ko.some(Ro)}),jo=>{const Jo=(Wo.left+Wo.top)/2,us=(jo.left+jo.top)/2;return Jo<=us?{deltas:ko.some(Wo),snap:ko.some(Ro)}:Co})},{deltas:ko.none(),snap:ko.none()}).snap.map(Co=>({output:fN(Co.output,Xn,Kn,oo),extra:Co.extra})))},SX=(Qn,Un,Xn,Kn,oo)=>{const lo=Un.getSnapPoints(Qn);return R8(lo,Xn,Kn,oo)},wX=(Qn,Un,Xn)=>({coord:fN(Qn.output,Qn.output,Un,Xn),extra:Qn.extra});var CX=Object.freeze({__proto__:null,snapTo:(Qn,Un,Xn,Kn)=>{const oo=Un.getTarget(Qn.element);if(Un.repositionTarget){const lo=vd(Qn.element),ho=Af(lo),yo=u6(oo),Co=wX(Kn,ho,yo),Ro=P8(Co.coord,ho,yo);Lr(oo,Ro)}}});const b2="data-initial-z-index",kX=Qn=>{Zd(Qn.element).filter(fc).each(Un=>{Uo(Un,b2).fold(()=>El(Un,"z-index"),Xn=>ya(Un,"z-index",Xn)),_s(Un,b2)})},xX=Qn=>{Zd(Qn.element).filter(fc).each(Un=>{ku(Un,"z-index").each(Xn=>{aa(Un,b2,Xn)}),ya(Un,"z-index",qc(Qn.element,"z-index"))})},D8=(Qn,Un)=>{Qn.getSystem().addToGui(Un),xX(Un)},EX=Qn=>{kX(Qn),Qn.getSystem().removeFromGui(Qn)},M8=(Qn,Un,Xn)=>Qn.getSystem().build(rv.sketch({dom:{styles:{left:"0px",top:"0px",width:"100%",height:"100%",position:"fixed","z-index":"1000000000000000"},classes:[Un]},events:Xn}));var TX=hh("snaps",[Er("getSnapPoints"),rc("onSensor"),Er("leftAttr"),Er("topAttr"),Gs("lazyViewport",tf),Gs("mustSnap",!1)]);const q$=[Gs("useFixed",sr),Er("blockerClass"),Gs("getTarget",es),Gs("onDrag",xo),Gs("repositionTarget",!0),Gs("onDrop",xo),Hd("getBounds",tf),TX],AX=Qn=>ka(ku(Qn,"left"),ku(Qn,"top"),ku(Qn,"position"),(Un,Xn,Kn)=>(Kn==="fixed"?Kw:Z$)(parseInt(Un,10),parseInt(Xn,10))).getOrThunk(()=>{const Un=uh(Qn);return sS(Un.left,Un.top)}),PX=(Qn,Un,Xn,Kn,oo)=>{const lo=oo.bounds,ho=Gw(Un,Xn,Kn),yo=rp(ho.left,lo.x,lo.x+lo.width-oo.width),Co=rp(ho.top,lo.y,lo.y+lo.height-oo.height),Ro=sS(yo,Co);return Un.fold(()=>{const Lo=A8(Ro,Xn,Kn);return Z$(Lo.left,Lo.top)},Mo(Ro),()=>{const Lo=hT(Ro,Xn,Kn);return Kw(Lo.left,Lo.top)})},$X=(Qn,Un,Xn,Kn,oo,lo,ho)=>{const yo=Un.fold(()=>{const Co=dN(Xn,lo.left,lo.top),Ro=hT(Co,Kn,oo);return Kw(Ro.left,Ro.top)},Co=>{const Ro=yX(Qn,Co,Xn,lo,Kn,oo);return Ro.extra.each(Lo=>{Co.onSensor(Qn,Lo)}),Ro.coord});return PX(Qn,yo,Kn,oo,ho)},RX=(Qn,Un,Xn,Kn)=>{const oo=Un.getTarget(Qn.element);if(Un.repositionTarget){const lo=vd(Qn.element),ho=Af(lo),yo=u6(oo),Co=AX(oo),Ro=$X(Qn,Un.snaps,Co,ho,yo,Kn,Xn),Lo=P8(Ro,ho,yo);Lr(oo,Lo)}Un.onDrag(Qn,oo,Kn)},N8=(Qn,Un)=>({bounds:Qn.getBounds(),height:Vp(Un.element),width:yd(Un.element)}),pT=(Qn,Un,Xn,Kn,oo)=>{const lo=Xn.update(Kn,oo),ho=Xn.getStartData().getOrThunk(()=>N8(Un,Qn));lo.each(yo=>{RX(Qn,Un,ho,yo)})},hN=(Qn,Un,Xn,Kn)=>{Un.each(EX),Xn.snaps.each(lo=>{OX(Qn,lo)});const oo=Xn.getTarget(Qn.element);Kn.reset(),Xn.onDrop(Qn,oo)},mN=Qn=>(Un,Xn)=>{const Kn=oo=>{Xn.setStartData(N8(Un,oo))};return Jc([wr(s1(),oo=>{Xn.getStartData().each(()=>Kn(oo))}),...Qn(Un,Xn,Kn)])},DX=Qn=>Jc([wr(Xl(),Qn.forceDrop),wr(Cv(),Qn.drop),wr(Qd(),(Un,Xn)=>{Qn.move(Xn.event)}),wr(Rf(),Qn.delayDrop)]);var MX=Object.freeze({__proto__:null,getData:Qn=>ko.from(vc(Qn.x,Qn.y)),getDelta:(Qn,Un)=>vc(Un.left-Qn.left,Un.top-Qn.top)});const L8=(Qn,Un,Xn)=>[wr(Xl(),(Kn,oo)=>{if(oo.event.raw.button!==0)return;oo.stop();const ho=()=>hN(Kn,ko.some(Ro),Qn,Un),yo=FI(ho,200),Co={drop:ho,delayDrop:yo.schedule,forceDrop:ho,move:Wo=>{yo.cancel(),pT(Kn,Qn,Un,MX,Wo)}},Ro=M8(Kn,Qn.blockerClass,DX(Co));(()=>{Xn(Kn),D8(Kn,Ro)})()})],NX=[...q$,tu("dragger",{handlers:mN(L8)})],LX=Qn=>Jc([wr(mm(),Qn.forceDrop),wr(H1(),Qn.drop),wr(Fl(),Qn.drop),wr(Nb(),(Un,Xn)=>{Qn.move(Xn.event)})]),IX=Qn=>{const Un=Qn[0];return ko.some(vc(Un.clientX,Un.clientY))};var I8=Object.freeze({__proto__:null,getData:Qn=>{const Xn=Qn.raw.touches;return Xn.length===1?IX(Xn):ko.none()},getDelta:(Qn,Un)=>vc(Un.left-Qn.left,Un.top-Qn.top)});const B8=(Qn,Un,Xn)=>{const Kn=Hl(),oo=lo=>{hN(lo,Kn.get(),Qn,Un),Kn.clear()};return[wr(mm(),(lo,ho)=>{ho.stop();const yo=()=>oo(lo),Co={drop:yo,delayDrop:xo,forceDrop:yo,move:Wo=>{pT(lo,Qn,Un,I8,Wo)}},Ro=M8(lo,Qn.blockerClass,LX(Co));Kn.set(Ro),(()=>{Xn(lo),D8(lo,Ro)})()}),wr(Nb(),(lo,ho)=>{ho.stop(),pT(lo,Qn,Un,I8,ho.event)}),wr(H1(),(lo,ho)=>{ho.stop(),oo(lo)}),wr(Fl(),oo)]},BX=[...q$,tu("dragger",{handlers:mN(B8)})],FX=(Qn,Un,Xn)=>[...L8(Qn,Un,Xn),...B8(Qn,Un,Xn)],HX=[...q$,tu("dragger",{handlers:mN(FX)})];var VX=Object.freeze({__proto__:null,mouse:NX,touch:BX,mouseOrTouch:HX}),zX=Object.freeze({__proto__:null,init:()=>{let Qn=ko.none(),Un=ko.none();const Xn=()=>{Qn=ko.none(),Un=ko.none()},Kn=(Co,Ro)=>{const Lo=Qn.map(Wo=>Co.getDelta(Wo,Ro));return Qn=ko.some(Ro),Lo},oo=(Co,Ro)=>Co.getData(Ro).bind(Lo=>Kn(Co,Lo)),lo=Co=>{Un=ko.some(Co)},ho=()=>Un,yo=Mo({});return ph({readState:yo,reset:Xn,update:oo,getStartData:ho,setStartData:lo})}});const Jw=Ub({branchKey:"mode",branches:VX,name:"dragging",active:{events:(Qn,Un)=>Qn.dragger.handlers(Qn,Un)},extra:{snap:Qn=>({sensor:Qn.sensor,range:Qn.range,output:Qn.output,extra:ko.from(Qn.extra)})},state:zX,apis:CX}),pN=40,j$=pN/2,F8=(Qn,Un,Xn,Kn,oo,lo)=>Qn.fold(()=>Jw.snap({sensor:sS(Xn-j$,Kn-j$),range:vc(oo,lo),output:sS(ko.some(Xn),ko.some(Kn)),extra:{td:Un}}),ho=>{const yo=Xn-j$,Co=Kn-j$,Ro=pN,Lo=pN,Wo=ho.element.dom.getBoundingClientRect();return Jw.snap({sensor:sS(yo,Co),range:vc(Ro,Lo),output:sS(ko.some(Xn-Wo.width/2),ko.some(Kn-Wo.height/2)),extra:{td:Un}})}),gN=(Qn,Un,Xn)=>{const Kn=(oo,lo)=>oo.exists(ho=>Oc(ho,lo));return{getSnapPoints:Qn,leftAttr:"data-drag-left",topAttr:"data-drag-top",onSensor:(oo,lo)=>{const ho=lo.td;Kn(Un.get(),ho)||(Un.set(ho),Xn(ho))},mustSnap:!0}},bN=Qn=>ou(yh.sketch({dom:{tag:"div",classes:["tox-selector"]},buttonBehaviours:Zr([Jw.config({mode:"mouseOrTouch",blockerClass:"blocker",snaps:Qn}),$E.config({})]),eventOrder:{mousedown:["dragging","alloy.base.behaviour"],touchstart:["dragging","alloy.base.behaviour"]}})),eC=(Qn,Un)=>{const Xn=Ua([]),Kn=Ua([]),oo=Ua(!1),lo=Hl(),ho=Hl(),yo=qr=>{const na=cf(qr);return F8(Jo.getOpt(Un),qr,na.x,na.y,na.width,na.height)},Co=()=>hs(Xn.get(),qr=>yo(qr)),Ro=qr=>{const na=cf(qr);return F8(us.getOpt(Un),qr,na.right,na.bottom,na.width,na.height)},Lo=()=>hs(Kn.get(),qr=>Ro(qr)),Wo=gN(Co,lo,qr=>{ho.get().each(na=>{Qn.dispatch("TableSelectorChange",{start:qr,finish:na})})}),jo=gN(Lo,ho,qr=>{lo.get().each(na=>{Qn.dispatch("TableSelectorChange",{start:na,finish:qr})})}),Jo=bN(Wo),us=bN(jo),Ps=gh(Jo.asSpec()),er=gh(us.asSpec()),Bs=(qr,na,Dl,Sa)=>{const fl=na.dom.getBoundingClientRect();El(qr.element,"display");const rl=Sh(Ds.fromDom(Qn.getBody())).dom.innerHeight,Yc=Dl(fl),Ga=Sa(fl,rl);(Yc||Ga)&&ya(qr.element,"display","none")},Ns=(qr,na,Dl,Sa)=>{const fl=Dl(na);Jw.snapTo(qr,fl),Bs(qr,na,Ga=>Ga[Sa]<0,(Ga,yc)=>Ga[Sa]>yc)},Xs=qr=>Ns(Ps,qr,yo,"top"),Hr=()=>lo.get().each(Xs),kr=qr=>Ns(er,qr,Ro,"bottom"),Or=()=>ho.get().each(kr);Tr().deviceType.isTouch()&&(Qn.on("TableSelectionChange",qr=>{oo.get()||(cy(Un,Ps),cy(Un,er),oo.set(!0)),lo.set(qr.start),ho.set(qr.finish),qr.otherCells.each(na=>{Xn.set(na.upOrLeftCells),Kn.set(na.downOrRightCells),Xs(qr.start),kr(qr.finish)})}),Qn.on("ResizeEditor ResizeWindow ScrollContent",()=>{Hr(),Or()}),Qn.on("TableSelectionClear",()=>{oo.get()&&(Kb(Ps),Kb(er),oo.set(!1)),lo.clear(),ho.clear()}))};var WX=` + + +`;const vN=Qn=>Qn.nodeName==="BR"||!!Qn.getAttribute("data-mce-bogus")||Qn.getAttribute("data-mce-type")==="bookmark",X$=(Qn,Un,Xn)=>{var Kn;const oo=(Kn=Un.delimiter)!==null&&Kn!==void 0?Kn:"›",lo=(Ro,Lo,Wo)=>yh.sketch({dom:{tag:"div",classes:["tox-statusbar__path-item"],attributes:{"data-index":Wo,"aria-level":Wo+1}},components:[wd(Ro)],action:jo=>{Qn.focus(),Qn.selection.select(Lo),Qn.nodeChanged()},buttonBehaviours:Zr([Lf.button(Xn.isDisabled),jf()])}),ho=()=>({dom:{tag:"div",classes:["tox-statusbar__path-divider"],attributes:{"aria-hidden":!0}},components:[wd(` ${oo} `)]}),yo=Ro=>za(Ro,(Lo,Wo,jo)=>{const Jo=lo(Wo.name,Wo.element,jo);return jo===0?Lo.concat([Jo]):Lo.concat([ho(),Jo])},[]),Co=Ro=>{const Lo=[];let Wo=Ro.length;for(;Wo-- >0;){const jo=Ro[Wo];if(jo.nodeType===1&&!vN(jo)){const Jo=cI(Qn,jo);if(Jo.isDefaultPrevented()||Lo.push({name:Jo.name,element:jo}),Jo.isPropagationStopped())break}}return Lo};return{dom:{tag:"div",classes:["tox-statusbar__path"],attributes:{role:"navigation"}},behaviours:Zr([Za.config({mode:"flow",selector:"div[role=button]"}),Ja.config({disabled:Xn.isDisabled}),jf(),sd.config({}),Cl.config({}),Rl("elementPathEvents",[eu((Ro,Lo)=>{Qn.shortcuts.add("alt+F11","focus statusbar elementpath",()=>Za.focusIn(Ro)),Qn.on("NodeChange",Wo=>{const jo=Co(Wo.parents),Jo=jo.length>0?yo(jo):[];Cl.set(Ro,Jo)})})])]),components:[]}};var rS;(function(Qn){Qn[Qn.None=0]="None",Qn[Qn.Both=1]="Both",Qn[Qn.Vertical=2]="Vertical"})(rS||(rS={}));const UX=(Qn,Un,Xn,Kn,oo)=>{const lo={height:cT(Kn+Un.top,Ek(Qn),CR(Qn))};return Xn===rS.Both&&(lo.width=cT(oo+Un.left,wR(Qn),$A(Qn))),lo},H8=(Qn,Un,Xn)=>{const Kn=Ds.fromDom(Qn.getContainer()),oo=UX(Qn,Un,Xn,cu(Kn),dd(Kn));Zl(oo,(lo,ho)=>{$o(lo)&&ya(Kn,ho,Y4(lo))}),aI(Qn)},ZX=Qn=>{const Un=jL(Qn);return Un===!1?rS.None:Un==="both"?rS.Both:rS.Vertical},Y$=(Qn,Un,Xn,Kn)=>{const lo=vc(Xn*20,Kn*20);return H8(Qn,lo,Un),ko.some(!0)},tC=(Qn,Un)=>{const Xn=ZX(Qn);if(Xn===rS.None)return ko.none();const Kn=Xn===rS.Both?"Press the arrow keys to resize the editor.":"Press the Up and Down arrow keys to resize the editor.";return ko.some(s0("resize-handle",{tag:"div",classes:["tox-statusbar__resize-handle"],attributes:{title:Un.translate("Resize"),"aria-label":Un.translate(Kn)},behaviours:[Jw.config({mode:"mouse",repositionTarget:!1,onDrag:(oo,lo,ho)=>H8(Qn,ho,Xn),blockerClass:"tox-blocker"}),Za.config({mode:"special",onLeft:()=>Y$(Qn,Xn,-1,0),onRight:()=>Y$(Qn,Xn,1,0),onUp:()=>Y$(Qn,Xn,0,-1),onDown:()=>Y$(Qn,Xn,0,1)}),sd.config({}),ol.config({})]},Un.icons))},Q8=(Qn,Un)=>{const Xn=(Kn,oo,lo)=>Cl.set(Kn,[wd(Un.translate(["{0} "+lo,oo[lo]]))]);return yh.sketch({dom:{tag:"button",classes:["tox-statusbar__wordcount"]},components:[],buttonBehaviours:Zr([Lf.button(Un.isDisabled),jf(),sd.config({}),Cl.config({}),da.config({store:{mode:"memory",initialValue:{mode:"words",count:{words:0,characters:0}}}}),Rl("wordcount-events",[qh(Kn=>{const oo=da.getValue(Kn),lo=oo.mode==="words"?"characters":"words";da.setValue(Kn,{mode:lo,count:oo.count}),Xn(Kn,oo.count,lo)}),eu(Kn=>{Qn.on("wordCountUpdate",oo=>{const{mode:lo}=da.getValue(Kn);da.setValue(Kn,{mode:lo,count:oo.wordCount}),Xn(Kn,oo.wordCount,lo)})})])]),eventOrder:{[Im()]:["disabling","alloy.base.behaviour","wordcount-events"]}})},qX=(Qn,Un)=>{const Xn=()=>({dom:{tag:"span",classes:["tox-statusbar__branding"]},components:[{dom:{tag:"a",attributes:{href:"https://www.tiny.cloud/powered-by-tiny?utm_campaign=poweredby&utm_source=tiny&utm_medium=referral&utm_content=v6",rel:"noopener",target:"_blank","aria-label":_1.translate(["Powered by {0}","Tiny"])},innerHtml:WX.trim()},behaviours:Zr([ol.config({})])}]}),Kn=()=>{const yo=tP("Alt+0");return{dom:{tag:"div",classes:["tox-statusbar__help-text"]},components:[wd(_1.translate(["Press {0} for help",yo]))]}},oo=()=>{const yo=[];return Qn.hasPlugin("wordcount")&&yo.push(Q8(Qn,Un)),$R(Qn)&&yo.push(Xn()),{dom:{tag:"div",classes:["tox-statusbar__right-container"]},components:yo}},lo=()=>{const yo=[],Co=IA(Qn),Ro=Ak(Qn),Lo=$R(Qn)||Qn.hasPlugin("wordcount"),Wo=()=>{const jo="tox-statusbar__text-container--flex-start",Jo="tox-statusbar__text-container--flex-end",us="tox-statusbar__text-container--space-around";if(Co){const Ps="tox-statusbar__text-container-3-cols";return!Lo&&!Ro?[Ps,us]:Lo&&!Ro?[Ps,Jo]:[Ps,jo]}return[Lo&&!Ro?Jo:jo]};return Ro&&yo.push(X$(Qn,{},Un)),Co&&yo.push(Kn()),Lo&&yo.push(oo()),yo.length>0?[{dom:{tag:"div",classes:["tox-statusbar__text-container",...Wo()]},components:yo}]:[]};return{dom:{tag:"div",classes:["tox-statusbar"]},components:(()=>{const yo=lo(),Co=tC(Qn,Un);return yo.concat(Co.toArray())})()}},V8=(Qn,Un)=>Un.get().getOrDie(`UI for ${Qn} has not been rendered`),jX=(Qn,Un)=>{const Xn=Qn.inline,Kn=Xn?U7:Q7,oo=uE(Qn)?C6:rZ,lo=wj(),ho=Hl(),yo=Hl(),Co=Hl(),jo=Tr().deviceType.isTouch()?["tox-platform-touch"]:[],Jo=MR(Qn),us=Tk(Qn),Ps=ou({dom:{tag:"div",classes:["tox-anchorbar"]}}),er=ou({dom:{tag:"div",classes:["tox-bottom-anchorbar"]}}),Bs=()=>lo.mainUi.get().map(Ka=>Ka.outerContainer).bind(Hu.getHeader),Ns=()=>yl.fromOption(lo.dialogUi.get().map(Ka=>Ka.sink),"UI has not been rendered"),Xs=()=>yl.fromOption(lo.popupUi.get().map(Ka=>Ka.sink),"(popup) UI has not been rendered"),Hr=lo.lazyGetInOuterOrDie("anchor bar",Ps.getOpt),kr=lo.lazyGetInOuterOrDie("bottom anchor bar",er.getOpt),Or=lo.lazyGetInOuterOrDie("toolbar",Hu.getToolbar),qr=lo.lazyGetInOuterOrDie("throbber",Hu.getThrobber),na=GU({popup:Xs,dialog:Ns},Qn,Hr,kr),Dl=()=>{const Ka={attributes:{[oy]:Jo?$p.BottomToTop:$p.TopToBottom}},kl=Hu.parts.menubar({dom:{tag:"div",classes:["tox-menubar"]},backstage:na.popup,onEscape:()=>{Qn.focus()}}),$u=Hu.parts.toolbar({dom:{tag:"div",classes:["tox-toolbar"]},getSink:na.popup.shared.getSink,providers:na.popup.shared.providers,onEscape:()=>{Qn.focus()},onToolbarToggled:CT=>{MQ(Qn,CT)},type:us,lazyToolbar:Or,lazyHeader:()=>Bs().getOrDie("Could not find header element"),...Ka}),Cc=Hu.parts["multiple-toolbar"]({dom:{tag:"div",classes:["tox-toolbar-overlord"]},providers:na.popup.shared.providers,onEscape:()=>{Qn.focus()},type:us}),Ih=cE(Qn),Cg=HA(Qn),xb=Pk(Qn),m0=XL(Qn),dS=Sa(),rC=Ih||Cg||xb,hv=()=>Ih?[Cc]:Cg?[$u]:[],PO=m0?[dS,kl]:[kl];return Hu.parts.header({dom:{tag:"div",classes:["tox-editor-header"].concat(rC?[]:["tox-editor-header--empty"]),...Ka},components:Us([xb?PO:[],hv(),$k(Qn)?[]:[Ps.asSpec()]]),sticky:uE(Qn),editor:Qn,sharedBackstage:na.popup.shared})},Sa=()=>Hu.parts.promotion({dom:{tag:"div",classes:["tox-promotion"]}}),fl=()=>{const Ka=Hu.parts.socket({dom:{tag:"div",classes:["tox-edit-area"]}}),kl=Hu.parts.sidebar({dom:{tag:"div",classes:["tox-sidebar"]}});return{dom:{tag:"div",classes:["tox-sidebar-wrap"]},components:[Ka,kl]}},rl=()=>{const Ka=NR(Qn),kl=Oc(Ru(),Ka)&&qc(Ka,"display")==="grid",$u={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-tinymce-aux"].concat(jo),attributes:{..._1.isRtl()?{dir:"rtl"}:{}}},behaviours:Zr([jh.config({useFixed:()=>oo.isDocked(Bs)})])},Cc={dom:{styles:{width:document.body.clientWidth+"px"}},events:Jc([wr(Ig(),xb=>{ya(xb.element,"width",document.body.clientWidth+"px")})])},Ih=gh(Lc($u,kl?Cc:{})),Cg=bP(Ih);return yo.set(Cg),{sink:Ih,mothership:Cg}},Yc=()=>{const Ka={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-silver-popup-sink","tox-tinymce-aux"].concat(jo),attributes:{..._1.isRtl()?{dir:"rtl"}:{}}},behaviours:Zr([jh.config({useFixed:()=>oo.isDocked(Bs),getBounds:()=>Un.getPopupSinkBounds()})])},kl=gh(Ka),$u=bP(kl);return Co.set($u),{sink:kl,mothership:$u}},Ga=()=>{const Ka=Dl(),kl=fl(),$u=Hu.parts.throbber({dom:{tag:"div",classes:["tox-throbber"]},backstage:na.popup}),Cc=Hu.parts.viewWrapper({backstage:na.popup}),Ih=qL(Qn)&&!Xn?ko.some(qX(Qn,na.popup.shared.providers)):ko.none(),Cg=Us([Jo?[]:[Ka],Xn?[]:[kl],Jo?[Ka]:[]]),xb=Hu.parts.editorContainer({components:Us([Cg,Xn?[]:[er.asSpec(),...Ih.toArray()]])}),m0=LR(Qn),dS={role:"application",..._1.isRtl()?{dir:"rtl"}:{},...m0?{"aria-hidden":"true"}:{}},rC=gh(Hu.sketch({dom:{tag:"div",classes:["tox","tox-tinymce"].concat(Xn?["tox-tinymce-inline"]:[]).concat(Jo?["tox-tinymce--toolbar-bottom"]:[]).concat(jo),styles:{visibility:"hidden",...m0?{opacity:"0",border:"0"}:{}},attributes:dS},components:[xb,...Xn?[]:[Cc],$u],behaviours:Zr([jf(),Ja.config({disableClass:"tox-tinymce--disabled"}),Za.config({mode:"cyclic",selector:".tox-menubar, .tox-toolbar, .tox-toolbar__primary, .tox-toolbar__overflow--open, .tox-sidebar__overflow--open, .tox-statusbar__path, .tox-statusbar__wordcount, .tox-statusbar__branding a, .tox-statusbar__resize-handle"})])})),hv=bP(rC);return ho.set(hv),{mothership:hv,outerContainer:rC}},yc=Ka=>{const kl=Y4(yj(Qn)),$u=Y4(Oj(Qn));return Qn.inline||(Tm("div","width",$u)&&ya(Ka.element,"width",$u),Tm("div","height",kl)?ya(Ka.element,"height",kl):ya(Ka.element,"height","400px")),kl},oa=Ka=>{Qn.addShortcut("alt+F9","focus menubar",()=>{Hu.focusMenubar(Ka)}),Qn.addShortcut("alt+F10","focus toolbar",()=>{Hu.focusToolbar(Ka)}),Qn.addCommand("ToggleToolbarDrawer",(kl,$u)=>{$u!=null&&$u.skipFocus?Hu.toggleToolbarDrawerWithoutFocusing(Ka):Hu.toggleToolbarDrawer(Ka)}),Qn.addQueryStateHandler("ToggleToolbarDrawer",()=>Hu.isToolbarDrawerToggled(Ka))},$a=Ka=>{const{mainUi:kl,popupUi:$u,uiMotherships:Cc}=Ka;Vl(VL(Qn),(E2,l3)=>{Qn.ui.registry.addGroupToolbarButton(l3,E2)});const{buttons:Ih,menuItems:Cg,contextToolbars:xb,sidebars:m0,views:dS}=Qn.ui.registry.getAll(),rC=DR(Qn),hv={menuItems:Cg,menus:JL(Qn),menubar:xR(Qn),toolbar:rC.getOrThunk(()=>DA(Qn)),allowToolbarGroups:us===qg.floating,buttons:Ih,sidebar:m0,views:dS};oa(kl.outerContainer),i2(Qn,kl.mothership,Cc),oo.setup(Qn,na.popup.shared,Bs),Xj(Qn,na.popup),hX(Qn,na.popup.shared.getSink,na.popup),LZ(Qn),f$(Qn,qr,na.popup.shared),l8(Qn,xb,$u.sink,{backstage:na.popup}),eC(Qn,$u.sink);const PO=Qn.getElement(),CT=yc(kl.outerContainer),TN={targetNode:PO,height:CT};return Kn.render(Qn,Ka,hv,na.popup,TN)},hl=Ka=>(Co.set(Ka.mothership),Ka),gl=()=>{const Ka=Ga(),kl=rl(),$u=gy(Qn)?Yc():hl(kl);lo.dialogUi.set(kl),lo.popupUi.set($u),lo.mainUi.set(Ka);const Cc={popupUi:$u,dialogUi:kl,mainUi:Ka,uiMotherships:lo.getUiMotherships()};return $a(Cc)};return{popups:{backstage:na.popup,getMothership:()=>V8("popups",Co)},dialogs:{backstage:na.dialog,getMothership:()=>V8("dialogs",yo)},renderUI:gl}},XX=(Qn,Un)=>{const Xn=Uo(Qn,"id").fold(()=>{const Kn=ba("dialog-label");return aa(Un,"id",Kn),Kn},es);aa(Qn,"aria-labelledby",Xn)},YX=Mo([Er("lazySink"),Tc("dragBlockClass"),Hd("getBounds",tf),Gs("useTabstopAt",Js),Gs("firstTabstop",0),Gs("eventOrder",{}),Nf("modalBehaviours",[Za]),Vm("onExecute"),Yv("onEscape")]),yN={sketch:es},GX=Mo([up({name:"draghandle",overrides:(Qn,Un)=>({behaviours:Zr([Jw.config({mode:"mouse",getTarget:Xn=>Hm(Xn,'[role="dialog"]').getOr(Xn),blockerClass:Qn.dragBlockClass.getOrDie(new Error(`The drag blocker class was not specified for a dialog with a drag handle: +`+JSON.stringify(Un,null,2)).message),getBounds:Qn.getDragBounds})])})}),Xh({schema:[Er("dom")],name:"title"}),Xh({factory:yN,schema:[Er("dom")],name:"close"}),Xh({factory:yN,schema:[Er("dom")],name:"body"}),up({factory:yN,schema:[Er("dom")],name:"footer"}),v1({factory:{sketch:(Qn,Un)=>({...Qn,dom:Un.dom,components:Un.components})},schema:[Gs("dom",{tag:"div",styles:{position:"fixed",left:"0px",top:"0px",right:"0px",bottom:"0px"}}),Gs("components",[])],name:"blocker"})]),KX=(Qn,Un,Xn,Kn)=>{const oo=Hl(),lo=Jo=>{oo.set(Jo);const us=Qn.lazySink(Jo).getOrDie(),Ps=Kn.blocker(),er=us.getSystem().build({...Ps,components:Ps.components.concat([Fm(Jo)]),behaviours:Zr([ol.config({}),Rl("dialog-blocker-events",[rg(Wu(),()=>{uv.isBlocked(Jo)?xo():Za.focusIn(Jo)})])])});cy(us,er),Za.focusIn(Jo)},ho=Jo=>{oo.clear(),Zd(Jo.element).each(us=>{Jo.getSystem().getByDom(us).each(Ps=>{Kb(Ps)})})},yo=Jo=>Y0(Jo,Qn,"body"),Co=Jo=>Au(Jo,Qn,"footer"),Ro=(Jo,us)=>{uv.block(Jo,us)},Lo=Jo=>{uv.unblock(Jo)},Wo=ba("modal-events"),jo={...Qn.eventOrder,[Zh()]:[Wo].concat(Qn.eventOrder["alloy.system.attached"]||[])};return{uid:Qn.uid,dom:Qn.dom,components:Un,apis:{show:lo,hide:ho,getBody:yo,getFooter:Co,setIdle:Lo,setBusy:Ro},eventOrder:jo,domModification:{attributes:{role:"dialog","aria-modal":"true"}},behaviours:sf(Qn.modalBehaviours,[Cl.config({}),Za.config({mode:"cyclic",onEnter:Qn.onExecute,onEscape:Qn.onEscape,useTabstopAt:Qn.useTabstopAt,firstTabstop:Qn.firstTabstop}),uv.config({getRoot:oo.get}),Rl(Wo,[eu(Jo=>{XX(Jo.element,Y0(Jo,Qn,"title").element)})])])}},If=Yh({name:"ModalDialog",configFields:YX(),partFields:GX(),factory:KX,apis:{show:(Qn,Un)=>{Qn.show(Un)},hide:(Qn,Un)=>{Qn.hide(Un)},getBody:(Qn,Un)=>Qn.getBody(Un),getFooter:(Qn,Un)=>Qn.getFooter(Un),setBusy:(Qn,Un,Xn)=>{Qn.setBusy(Un,Xn)},setIdle:(Qn,Un)=>{Qn.setIdle(Un)}}}),gT=Ta([wf,KR].concat(Bw)),ON=Jm,v2=[GA("button"),S1,Eh("align","end",["start","end"]),Oy,pb,Ly("buttonType",["primary","secondary"])],iS=[...v2,_O],y2=[hd("type",["submit","cancel","custom"]),...iS],JX=[hd("type",["menu"]),yy,mE,S1,Pf("items",gT),...v2],z8=[...v2,hd("type",["togglebutton"]),hc("tooltip"),S1,yy,Xd("active",!1)],W8=jl("type",{submit:y2,cancel:y2,custom:y2,menu:JX,togglebutton:z8}),U8=[wf,_O,hd("level",["info","warn","error","success"]),JR,Gs("url","")],eY=Ta(U8),tY=Qn=>[wf,Qn],nY=[wf,_O,pb,GA("button"),S1,y5,Ly("buttonType",["primary","secondary","toolbar"]),Oy],Z8=Ta(nY),nC=[wf,KR],_b=nC.concat([XA]),oY=nC.concat([jA,pb]),sY=Ta(oY),rY=Jm,q8=_b.concat([O5("auto")]),iY=Ta(q8),aY=Yp([Nk,_O,JR]),lY=_b.concat([mh("storageKey","default")]),_N=Ta(lY),SN=nf,j8=Ta(_b),cY=nf,uY=nC.concat([mh("tag","textarea"),hc("scriptId"),hc("scriptUrl"),Iy("settings",void 0)]),X8=nC.concat([mh("tag","textarea"),ep("init")]),dY=Rg(Qn=>Lu("customeditor.old",mu(X8),Qn).orThunk(()=>Lu("customeditor.new",mu(uY),Qn))),fY=nf,Y8=Ta(_b),hY=RO(),G$=Qn=>[wf,k0("columns"),Qn],_2=[wf,hc("html"),Eh("presets","presentation",["presentation","document"])],K$=Ta(_2),G8=_b.concat([Xd("border",!1),Xd("sandboxed",!0),Xd("streamContent",!1),Xd("transparent",!0)]),J$=Ta(G8),Sg=nf,e3=Ta(nC.concat([$f("height")])),K8=Ta([hc("url"),Mg("zoom"),Mg("cachedWidth"),Mg("cachedHeight")]),J8=_b.concat([$f("inputMode"),$f("placeholder"),Xd("maximized",!1),pb]),mY=Ta(J8),pY=nf,aS=Qn=>[wf,jA,Qn,Eh("align","start",["start","center","end"])],LG=[_O,Nk],gY=[_O,Pf("items",L1("items",()=>wN))],wN=Oa([Ta(LG),Ta(gY)]),S2=_b.concat([Pf("items",wN),pb]),t3=Ta(S2),eH=nf,bY=_b.concat([Mb("items",[_O,Nk]),Lm("size",1),pb]),vY=Ta(bY),yY=nf,OY=_b.concat([Xd("constrain",!0),pb]),w2=Ta(OY),_Y=Ta([hc("width"),hc("height")]),SY=nC.concat([jA,Lm("min",0),Lm("max",0)]),wY=Ta(SY),IG=w0,CY=[wf,Pf("header",nf),Pf("cells",Xp(nf))],kY=Ta(CY),bT=_b.concat([$f("placeholder"),Xd("maximized",!1),pb]),xY=Ta(bT),EY=nf,CN=[hd("type",["directory","leaf"]),g5,hc("id"),Fd("menu",oT)],TY=Ta(CN),Mn=CN.concat([Pf("children",L1("children",()=>Ir("type",{directory:Vn,leaf:TY})))]),Vn=Ta(Mn),Wn=Ir("type",{directory:Vn,leaf:TY}),jn=[wf,Pf("items",Wn),I1("onLeafAction"),I1("onToggleExpand"),Th("defaultExpandedIds",[],nf),$f("defaultSelectedId")],Gn=Ta(jn),no=_b.concat([Eh("filetype","file",["image","media","file"]),pb,$f("picker_text")]),ao=Ta(no),po=Ta([Nk,pE]),vo=Qn=>Bd("items","items",sc(),Xp(Rg(Un=>Lu(`Checking item of ${Qn}`,Ao,Un).fold(Xn=>yl.error(Gf(Xn)),Xn=>yl.value(Xn))))),Ao=mf(()=>Ir("type",{alertbanner:eY,bar:Ta(tY(vo("bar"))),button:Z8,checkbox:sY,colorinput:_N,colorpicker:j8,dropzone:Y8,grid:Ta(G$(vo("grid"))),iframe:J$,input:mY,listbox:t3,selectbox:vY,sizeinput:w2,slider:wY,textarea:xY,urlinput:ao,customeditor:dY,htmlpanel:K$,imagepreview:e3,collection:iY,label:Ta(aS(vo("label"))),table:kY,tree:Gn,panel:Qo})),Fo=[wf,Gs("classes",[]),Pf("items",Ao)],Qo=Ta(Fo),qo=[GA("tab"),g5,Pf("items",Ao)],ds=[wf,Mb("tabs",qo)],bs=Ta(ds),as=iS,ys=W8,Ls=Ta([hc("title"),Kf("body",Ir("type",{panel:Qo,tabpanel:bs})),mh("size","normal"),Th("buttons",[],ys),Gs("initialData",{}),Hd("onAction",xo),Hd("onChange",xo),Hd("onSubmit",xo),Hd("onClose",xo),Hd("onCancel",xo),Hd("onTabChange",xo)]),zs=Qn=>Lu("dialog",Ls,Qn),Hs=Ta([hd("type",["cancel","custom"]),...as]),tr=Ta([hc("title"),hc("url"),Mg("height"),Mg("width"),Ng("buttons",Hs),Hd("onAction",xo),Hd("onCancel",xo),Hd("onClose",xo),Hd("onMessage",xo)]),Pr=Qn=>Lu("dialog",tr,Qn),Ur=Qn=>Yn(Qn)?[Qn].concat(fs(gd(Qn),Ur)):to(Qn)?fs(Qn,Ur):[],fa=Qn=>qn(Qn.type)&&qn(Qn.name),yr={checkbox:rY,colorinput:SN,colorpicker:cY,dropzone:hY,input:pY,iframe:Sg,imagepreview:K8,selectbox:yY,sizeinput:_Y,slider:IG,listbox:eH,size:_Y,textarea:EY,urlinput:po,customeditor:fY,collection:aY,togglemenuitem:ON},fr=Qn=>ko.from(yr[Qn.type]),Ar=Qn=>ga(Ur(Qn),fa),wa=Qn=>{const Un=Ar(Qn),Xn=fs(Un,Kn=>fr(Kn).fold(()=>[],oo=>[Kf(Kn.name,oo)]));return Ta(Xn)},Va=Qn=>{var Un;const Xn=Ec(zs(Qn)),Kn=wa(Qn),oo=(Un=Qn.initialData)!==null&&Un!==void 0?Un:{};return{internalDialog:Xn,dataValidator:Kn,initialData:oo}},Tl={open:(Qn,Un)=>{const Xn=Va(Un);return Qn(Xn.internalDialog,Xn.initialData,Xn.dataValidator)},openUrl:(Qn,Un)=>{const Xn=Ec(Pr(Un));return Qn(Xn)},redial:Qn=>Va(Qn)};var uu=Object.freeze({__proto__:null,events:(Qn,Un)=>{const Xn=(Kn,oo)=>{Qn.updateState.each(lo=>{const ho=lo(Kn,oo);Un.set(ho)}),Qn.renderComponents.each(lo=>{const ho=lo(oo,Un.get());(Qn.reuseDom?JN:fp)(Kn,ho)})};return Jc([wr(T0(),(Kn,oo)=>{const lo=oo;if(!lo.universal){const ho=Qn.channel;Fs(lo.channels,ho)&&Xn(Kn,lo.data)}}),eu((Kn,oo)=>{Qn.initialData.each(lo=>{Xn(Kn,lo)})})])}}),Wd=Object.freeze({__proto__:null,getState:(Qn,Un,Xn)=>Xn}),Jh=[Er("channel"),Tc("renderComponents"),Tc("updateState"),Tc("initialData"),Xd("reuseDom",!0)],ea=Object.freeze({__proto__:null,init:()=>{const Qn=Ua(ko.none()),Un=()=>Qn.set(ko.none());return{readState:()=>Qn.get().getOr("none"),get:Qn.get,set:Qn.set,clear:Un}}});const pa=Of({fields:Jh,name:"reflecting",active:uu,apis:Wd,state:ea}),$c=Qn=>{const Un=[],Xn={};return Zl(Qn,(Kn,oo)=>{Kn.fold(()=>{Un.push(oo)},lo=>{Xn[oo]=lo})}),Un.length>0?yl.error(Un):yl.value(Xn)},ac=(Qn,Un,Xn)=>{const Kn=ou(Yk.sketch(oo=>({dom:{tag:"div",classes:["tox-form"].concat(Qn.classes)},components:hs(Qn.items,lo=>d0(oo,lo,Un,Xn))})));return{dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[Kn.asSpec()]}],behaviours:Zr([Za.config({mode:"acyclic",useTabstopAt:rs(Kk)}),Og.memento(Kn),NB(Kn,{postprocess:oo=>$c(oo).fold(lo=>(console.error(lo),{}),es)}),Rl("dialog-body-panel",[wr(Wu(),(oo,lo)=>{oo.getSystem().broadcastOn([e2],{newFocus:ko.some(lo.event.target)})})])])}},Pa=(Qn,Un)=>({uid:Qn.uid,dom:Qn.dom,components:Qn.components,events:tv(Qn.action),behaviours:sf(Qn.tabButtonBehaviours,[ol.config({}),Za.config({mode:"execution",useSpace:!0,useEnter:!0}),da.config({store:{mode:"memory",initialValue:Qn.value}})]),domModification:Qn.domModification}),ml=Mp({name:"TabButton",configFields:[Gs("uid",void 0),Er("value"),Bd("dom","dom",os(()=>({attributes:{role:"tab",id:ba("aria"),"aria-selected":"false"}})),Ad()),Tc("action"),Gs("domModification",{}),Nf("tabButtonBehaviours",[ol,Za,da]),Er("view")],factory:Pa}),Yr=Mo([Er("tabs"),Er("dom"),Gs("clickToDismiss",!1),Nf("tabbarBehaviours",[Bc,Za]),Wb(["tabClass","selectedClass"])]),pl=vw({factory:ml,name:"tabs",unit:"tab",overrides:Qn=>{const Un=(Kn,oo)=>{Bc.dehighlight(Kn,oo),Qa(Kn,NO(),{tabbar:Kn,button:oo})},Xn=(Kn,oo)=>{Bc.highlight(Kn,oo),Qa(Kn,xv(),{tabbar:Kn,button:oo})};return{action:Kn=>{const oo=Kn.getSystem().getByUid(Qn.uid).getOrDie(),lo=Bc.isHighlighted(oo,Kn);(lo&&Qn.clickToDismiss?Un:lo?xo:Xn)(oo,Kn)},domModification:{classes:[Qn.markers.tabClass]}}}}),pc=Mo([pl]),Pu=(Qn,Un,Xn,Kn)=>({uid:Qn.uid,dom:Qn.dom,components:Un,"debug.sketcher":"Tabbar",domModification:{attributes:{role:"tablist"}},behaviours:sf(Qn.tabbarBehaviours,[Bc.config({highlightClass:Qn.markers.selectedClass,itemClass:Qn.markers.tabClass,onHighlight:(oo,lo)=>{aa(lo.element,"aria-selected","true")},onDehighlight:(oo,lo)=>{aa(lo.element,"aria-selected","false")}}),Za.config({mode:"flow",getInitial:oo=>Bc.getHighlighted(oo).map(lo=>lo.element),selector:"."+Qn.markers.tabClass,executeOnMove:!0})])}),du=Yh({name:"Tabbar",configFields:Yr(),partFields:pc(),factory:Pu}),Oh=(Qn,Un)=>({uid:Qn.uid,dom:Qn.dom,behaviours:sf(Qn.tabviewBehaviours,[Cl.config({})]),domModification:{attributes:{role:"tabpanel"}}}),h0=Mp({name:"Tabview",configFields:[Nf("tabviewBehaviours",[Cl])],factory:Oh}),Ay=Mo([Gs("selectFirst",!0),rc("onChangeTab"),rc("onDismissTab"),Gs("tabs",[]),Nf("tabSectionBehaviours",[])]),Ip=Xh({factory:du,schema:[Er("dom"),fm("markers",[Er("tabClass"),Er("selectedClass")])],name:"tabbar",defaults:Qn=>({tabs:Qn.tabs})}),Sb=Xh({factory:h0,name:"tabview"}),Sl=Mo([Ip,Sb]),Mc=(Qn,Un,Xn,Kn)=>{const oo=ho=>{const yo=da.getValue(ho);Au(ho,Qn,"tabview").each(Co=>{Zs(Qn.tabs,Lo=>Lo.value===yo).each(Lo=>{const Wo=Lo.view();Uo(ho.element,"id").each(jo=>{aa(Co.element,"aria-labelledby",jo)}),Cl.set(Co,Wo),Qn.onChangeTab(Co,ho,Wo)})})},lo=(ho,yo)=>{Au(ho,Qn,"tabbar").each(Co=>{yo(Co).each(og)})};return{uid:Qn.uid,dom:Qn.dom,components:Un,behaviours:j0(Qn.tabSectionBehaviours),events:Jc(Us([Qn.selectFirst?[eu((ho,yo)=>{lo(ho,Bc.getFirst)})]:[],[wr(xv(),(ho,yo)=>{const Co=yo.event.button;oo(Co)}),wr(NO(),(ho,yo)=>{const Co=yo.event.button;Qn.onDismissTab(ho,Co)})]])),apis:{getViewItems:ho=>Au(ho,Qn,"tabview").map(yo=>Cl.contents(yo)).getOr([]),showTab:(ho,yo)=>{lo(ho,Ro=>{const Lo=Bc.getCandidates(Ro);return Zs(Lo,jo=>da.getValue(jo)===yo).filter(jo=>!Bc.isHighlighted(Ro,jo))})}}}},ru=Yh({name:"TabSection",configFields:Ay(),partFields:Sl(),factory:Mc,apis:{getViewItems:(Qn,Un)=>Qn.getViewItems(Un),showTab:(Qn,Un,Xn)=>{Qn.showTab(Un,Xn)}}}),Kd=(Qn,Un,Xn)=>hs(Qn,(Kn,oo)=>{Cl.set(Xn,Qn[oo].view());const lo=Un.dom.getBoundingClientRect();return Cl.set(Xn,[]),lo.height}),xd=Qn=>Nl(Ml(Qn,(Un,Xn)=>Un>Xn?-1:Un{const Kn=Xf(Qn).dom,oo=Hm(Qn,".tox-dialog-wrap").getOr(Qn),lo=qc(oo,"position")==="fixed";let ho;lo?ho=Math.max(Kn.clientHeight,window.innerHeight):ho=Math.max(Kn.offsetHeight,Kn.scrollHeight);const yo=cu(Un),Ro=Un.dom.offsetLeft>=Xn.dom.offsetLeft+dd(Xn)?Math.max(cu(Xn),yo):yo,Lo=parseInt(qc(Qn,"margin-top"),10)||0,Wo=parseInt(qc(Qn,"margin-bottom"),10)||0,Jo=cu(Qn)+Lo+Wo-Ro;return ho-Jo},dv=(Qn,Un)=>{Nl(Qn).each(Xn=>ru.showTab(Un,Xn.value))},AO=(Qn,Un)=>{ya(Qn,"height",Un+"px"),ya(Qn,"flex-basis",Un+"px")},oC=(Qn,Un,Xn)=>{Hm(Qn,'[role="dialog"]').each(Kn=>{Rd(Kn,'[role="tablist"]').each(oo=>{Xn.get().map(lo=>(ya(Un,"height","0"),ya(Un,"flex-basis","0"),Math.min(lo,wg(Kn,Un,oo)))).each(lo=>{AO(Un,lo)})})})},C2=Qn=>Rd(Qn,'[role="tabpanel"]'),n3=Qn=>{const Un=Hl();return{extraEvents:[eu(oo=>{const lo=oo.element;C2(lo).each(ho=>{ya(ho,"visibility","hidden"),oo.getSystem().getByDom(ho).toOptional().each(yo=>{const Co=Kd(Qn,ho,yo);xd(Co).fold(Un.clear,Un.set)}),oC(lo,ho,Un),El(ho,"visibility"),dv(Qn,oo),requestAnimationFrame(()=>{oC(lo,ho,Un)})})}),wr(Ig(),oo=>{const lo=oo.element;C2(lo).each(ho=>{oC(lo,ho,Un)})}),wr(YI,(oo,lo)=>{const ho=oo.element;C2(ho).each(yo=>{const Co=h1(rr(yo));ya(yo,"visibility","hidden");const Ro=ku(yo,"height").map(jo=>parseInt(jo,10));El(yo,"height"),El(yo,"flex-basis");const Lo=yo.dom.getBoundingClientRect().height;Ro.forall(jo=>Lo>jo)?(Un.set(Lo),oC(ho,yo,Un)):Ro.each(jo=>{AO(yo,jo)}),El(yo,"visibility"),Co.each(Cd)})})],selectFirst:!1}},sC="send-data-to-section",vT="send-data-to-view",k2=(Qn,Un,Xn)=>{const Kn=Ua({}),oo=Ro=>{const Lo=da.getValue(Ro),Wo=$c(Lo).getOr({}),jo=Kn.get(),Jo=Lc(jo,Wo);Kn.set(Jo)},lo=Ro=>{const Lo=Kn.get();da.setValue(Ro,Lo)},ho=Ua(null),yo=hs(Qn.tabs,Ro=>({value:Ro.name,dom:{tag:"div",classes:["tox-dialog__body-nav-item"]},components:[wd(Xn.shared.providers.translate(Ro.title))],view:()=>[Yk.sketch(Lo=>({dom:{tag:"div",classes:["tox-form"]},components:hs(Ro.items,Wo=>d0(Lo,Wo,Un,Xn)),formBehaviours:Zr([Za.config({mode:"acyclic",useTabstopAt:rs(Kk)}),Rl("TabView.form.events",[eu(lo),ig(oo)]),Om.config({channels:La([{key:sC,value:{onReceive:oo}},{key:vT,value:{onReceive:lo}}])})])}))]})),Co=n3(yo);return ru.sketch({dom:{tag:"div",classes:["tox-dialog__body"]},onChangeTab:(Ro,Lo,Wo)=>{const jo=da.getValue(Lo);Qa(Ro,XI,{name:jo,oldName:ho.get()}),ho.set(jo)},tabs:yo,components:[ru.parts.tabbar({dom:{tag:"div",classes:["tox-dialog__body-nav"]},components:[du.parts.tabs({})],markers:{tabClass:"tox-tab",selectedClass:"tox-dialog__body-nav-item--active"},tabbarBehaviours:Zr([sd.config({})])}),ru.parts.tabview({dom:{tag:"div",classes:["tox-dialog__body-content"]}})],selectFirst:Co.selectFirst,tabSectionBehaviours:Zr([Rl("tabpanel",Co.extraEvents),Za.config({mode:"acyclic"}),ic.config({find:Ro=>Nl(ru.getViewItems(Ro))}),j_(ko.none(),Ro=>(Ro.getSystem().broadcastOn([sC],{}),Kn.get()),(Ro,Lo)=>{Kn.set(Lo),Ro.getSystem().broadcastOn([vT],{})})])})},lS=(Qn,Un,Xn,Kn,oo)=>{const lo=Co=>{const Ro=Co.body;switch(Ro.type){case"tabpanel":return[k2(Ro,Co.initialData,Kn)];default:return[ac(Ro,Co.initialData,Kn)]}},ho=(Co,Ro)=>ko.some({isTabPanel:()=>Ro.body.type==="tabpanel"}),yo={"aria-live":"polite"};return{dom:{tag:"div",classes:["tox-dialog__content-js"],attributes:{...Xn.map(Co=>({id:Co})).getOr({}),...oo?yo:{}}},components:[],behaviours:Zr([Og.childAt(0),pa.config({channel:`${BP}-${Un}`,updateState:ho,renderComponents:lo,initialData:Qn})])}},fv=(Qn,Un,Xn,Kn,oo)=>lS(Qn,Un,ko.some(Xn),Kn,oo),Py=(Qn,Un,Xn)=>{const Kn=lS(Qn,Un,ko.none(),Xn,!1);return If.parts.body(Kn)},yT=Qn=>{const Un={dom:{tag:"div",classes:["tox-dialog__content-js"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-iframe"]},components:[VB(ko.none(),{dom:{tag:"iframe",attributes:{src:Qn.url}},behaviours:Zr([sd.config({}),ol.config({})])})]}],behaviours:Zr([Za.config({mode:"acyclic",useTabstopAt:rs(Kk)})])};return If.parts.body(Un)},x2=xk.deviceType.isTouch(),OT=(Qn,Un)=>({dom:{tag:"div",styles:{display:"none"},classes:["tox-dialog__header"]},components:[Qn,Un]}),$y=(Qn,Un)=>If.parts.close(yh.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":Un.translate("Close")}},action:Qn,buttonBehaviours:Zr([sd.config({})])})),o3=()=>If.parts.title({dom:{tag:"div",classes:["tox-dialog__title"],innerHtml:"",styles:{display:"none"}}}),_T=(Qn,Un)=>If.parts.body({dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[{dom:vO(`

    ${gR(Un.translate(Qn))}

    `)}]}]}),xm=Qn=>If.parts.footer({dom:{tag:"div",classes:["tox-dialog__footer"]},components:Qn}),cS=(Qn,Un)=>[rv.sketch({dom:{tag:"div",classes:["tox-dialog__footer-start"]},components:Qn}),rv.sketch({dom:{tag:"div",classes:["tox-dialog__footer-end"]},components:Un})],s3=Qn=>{const Un="tox-dialog",Xn=Un+"-wrap",Kn=Xn+"__backdrop",oo=Un+"__disable-scroll";return If.sketch({lazySink:Qn.lazySink,onEscape:lo=>(Qn.onEscape(lo),ko.some(!0)),useTabstopAt:lo=>!Kk(lo),firstTabstop:Qn.firstTabstop,dom:{tag:"div",classes:[Un].concat(Qn.extraClasses),styles:{position:"relative",...Qn.extraStyles}},components:[Qn.header,Qn.body,...Qn.footer.toArray()],parts:{blocker:{dom:vO(`
    `),components:[{dom:{tag:"div",classes:x2?[Kn,Kn+"--opaque"]:[Kn]}}]}},dragBlockClass:Xn,modalBehaviours:Zr([ol.config({}),Rl("dialog-events",Qn.dialogEvents.concat([rg(Wu(),(lo,ho)=>{uv.isBlocked(lo)?xo():Za.focusIn(lo)}),wr(MO(),(lo,ho)=>{lo.getSystem().broadcastOn([e2],{newFocus:ho.event.newFocus})})])),Rl("scroll-lock",[eu(()=>{$d(Ru(),oo)}),ig(()=>{Yu(Ru(),oo)})]),...Qn.extraBehaviours]),eventOrder:{[Im()]:["dialog-events"],[Zh()]:["scroll-lock","dialog-events","alloy.base.behaviour"],[xp()]:["alloy.base.behaviour","dialog-events","scroll-lock"],...Qn.eventOrder}})},r3=Qn=>yh.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":Qn.translate("Close"),title:Qn.translate("Close")}},buttonBehaviours:Zr([sd.config({})]),components:[s0("close",{tag:"span",classes:["tox-icon"]},Qn.icons)],action:Un=>{Wl(Un,U_)}}),ST=(Qn,Un,Xn,Kn)=>{const oo=lo=>[wd(Kn.translate(lo.title))];return{dom:{tag:"div",classes:["tox-dialog__title"],attributes:{...Xn.map(lo=>({id:lo})).getOr({})}},components:[],behaviours:Zr([pa.config({channel:`${Ey}-${Un}`,initialData:Qn,renderComponents:oo})])}},Ry=()=>({dom:vO('
    ')}),wT=(Qn,Un,Xn,Kn)=>rv.sketch({dom:vO('
    '),components:[ST(Qn,Un,ko.some(Xn),Kn),Ry(),r3(Kn)],containerBehaviours:Zr([Jw.config({mode:"mouse",blockerClass:"blocker",getTarget:oo=>Bg(oo,'[role="dialog"]').getOrDie(),snaps:{getSnapPoints:()=>[],leftAttr:"data-drag-left",topAttr:"data-drag-top"}})])}),or=(Qn,Un,Xn)=>{const Kn=If.parts.title(ST(Qn,Un,ko.none(),Xn)),oo=If.parts.draghandle(Ry()),lo=If.parts.close(r3(Xn)),ho=[Kn].concat(Qn.draggable?[oo]:[]).concat([lo]);return rv.sketch({dom:vO('
    '),components:ho})},ur=(Qn,Un,Xn)=>or({title:Xn.shared.providers.translate(Qn),draggable:Xn.dialog.isDraggableModal()},Un,Xn.shared.providers),Gr=(Qn,Un,Xn,Kn)=>({dom:{tag:"div",classes:["tox-dialog__busy-spinner"],attributes:{"aria-label":Xn.translate(Qn)},styles:{left:"0px",right:"0px",bottom:"0px",top:`${Kn.getOr(0)}px`,position:"absolute"}},behaviours:Un,components:[{dom:vO('
    ')}]}),Wr=(Qn,Un,Xn)=>({onClose:()=>Xn.closeWindow(),onBlock:Kn=>{const oo=Rd(Qn().element,".tox-dialog__header").map(lo=>cu(lo));If.setBusy(Qn(),(lo,ho)=>Gr(Kn.message,ho,Un,oo))},onUnblock:()=>{If.setIdle(Qn())}}),Ha="tox-dialog--fullscreen",Jl="tox-dialog--width-lg",pd="tox-dialog--width-md",gp=Qn=>{switch(Qn){case"large":return ko.some(Jl);case"medium":return ko.some(pd);default:return ko.none()}},em=(Qn,Un)=>{const Xn=Ds.fromDom(Un.element.dom);of(Xn,Ha)||(sp(Xn,[Jl,pd]),gp(Qn).each(Kn=>$d(Xn,Kn)))},uS=(Qn,Un)=>{const Xn=Ds.fromDom(Qn.element.dom),Kn=zv(Xn),oo=Zs(Kn,lo=>lo===Jl||lo===pd).or(gp(Un));CS(Xn,[Ha,...oo.toArray()])},wb=(Qn,Un,Xn)=>gh(s3({...Qn,firstTabstop:1,lazySink:Xn.shared.getSink,extraBehaviours:[LP({}),...Qn.extraBehaviours],onEscape:Kn=>{Wl(Kn,U_)},dialogEvents:Un,eventOrder:{[T0()]:[pa.name(),Om.name()],[Zh()]:["scroll-lock",pa.name(),"messages","dialog-events","alloy.base.behaviour"],[xp()]:["alloy.base.behaviour","dialog-events","messages",pa.name(),"scroll-lock"]}})),i3=(Qn,Un={})=>{const Xn=Kn=>{const oo=hs(Kn.items,lo=>{const ho=Rr(Un,lo.name).getOr(Ua(!1));return{...lo,storage:ho}});return{...Kn,items:oo}};return hs(Qn,Kn=>Kn.type==="menu"?Xn(Kn):Kn)},kN=Qn=>za(Qn,(Un,Xn)=>Xn.type==="menu"?za(Xn.items,(oo,lo)=>(oo[lo.name]=lo.storage,oo),Un):Un,{}),xN=(Qn,Un)=>[pS(Wu(),mW),Qn(Uk,(Xn,Kn,oo,lo)=>{h1(rr(lo.element)).fold(xo,Vg),Un.onClose(),Kn.onClose()}),Qn(U_,(Xn,Kn,oo,lo)=>{Kn.onCancel(Xn),Wl(lo,Uk)}),wr(jD,(Xn,Kn)=>Un.onUnblock()),wr(qD,(Xn,Kn)=>Un.onBlock(Kn.event))],tH=(Qn,Un)=>{const Xn=(oo,lo)=>wr(oo,(ho,yo)=>{Kn(ho,(Co,Ro)=>{lo(Qn(),Co,yo.event,ho)})}),Kn=(oo,lo)=>{pa.getState(oo).get().each(ho=>{lo(ho,oo)})};return[...xN(Xn,Un),Xn(Cy,(oo,lo,ho)=>{lo.onAction(oo,{name:ho.name})})]},nH=(Qn,Un,Xn)=>{const Kn=(lo,ho)=>wr(lo,(yo,Co)=>{oo(yo,(Ro,Lo)=>{ho(Qn(),Ro,Co.event,yo)})}),oo=(lo,ho)=>{pa.getState(lo).get().each(yo=>{ho(yo.internalDialog,lo)})};return[...xN(Kn,Un),Kn(PE,(lo,ho)=>ho.onSubmit(lo)),Kn(vg,(lo,ho,yo)=>{ho.onChange(lo,{name:yo.name})}),Kn(Cy,(lo,ho,yo,Co)=>{const Ro=()=>Co.getSystem().isConnected()?Za.focusIn(Co):void 0,Lo=Jo=>cs(Jo,"disabled")||Uo(Jo,"aria-disabled").exists(us=>us==="true"),Wo=rr(Co.element),jo=h1(Wo);ho.onAction(lo,{name:yo.name,value:yo.value}),h1(Wo).fold(Ro,Jo=>{Lo(Jo)||jo.exists(us=>cd(Jo,us)&&Lo(us))?Ro():Xn().toOptional().filter(us=>!cd(us.element,Jo)).each(Ro)})}),Kn(XI,(lo,ho,yo)=>{ho.onTabChange(lo,{newTabName:yo.name,oldTabName:yo.oldName})}),ig(lo=>{const ho=Qn();da.setValue(lo,ho.getData())})]},ec=(Qn,Un)=>YP(Qn,Qn.type,Un),hr=(Qn,Un,Xn)=>Zs(Un,Kn=>Kn.name===Xn).bind(Kn=>Kn.memento.getOpt(Qn)),Da=(Qn,Un)=>{const Xn=Un.map(yo=>yo.footerButtons).getOr([]),Kn=el(Xn,yo=>yo.align==="start"),oo=(yo,Co)=>rv.sketch({dom:{tag:"div",classes:[`tox-dialog__footer-${yo}`]},components:hs(Co,Ro=>Ro.memento.asSpec())}),lo=oo("start",Kn.pass),ho=oo("end",Kn.fail);return[lo,ho]},sl=(Qn,Un,Xn)=>{const Kn=(oo,lo)=>{const ho=hs(lo.buttons,Co=>{const Ro=ou(ec(Co,Xn));return{name:Co.name,align:Co.align,memento:Ro}}),yo=Co=>hr(oo,ho,Co);return ko.some({lookupByName:yo,footerButtons:ho})};return{dom:vO(''),components:[],behaviours:Zr([pa.config({channel:`${CM}-${Un}`,initialData:Qn,updateState:Kn,renderComponents:Da})])}},af=(Qn,Un,Xn)=>sl(Qn,Un,Xn),Zm=(Qn,Un,Xn)=>If.parts.footer(sl(Qn,Un,Xn)),Cb=(Qn,Un)=>{if(Qn.getRoot().getSystem().isConnected()){const Kn=ic.getCurrent(Qn.getFormWrapper()).getOr(Qn.getFormWrapper());return Yk.getField(Kn,Un).orThunk(()=>Qn.getFooter().bind(ho=>pa.getState(ho).get()).bind(ho=>ho.lookupByName(Un)))}else return ko.none()},_h=(Qn,Un)=>{const Xn=Qn.getRoot();return pa.getState(Xn).get().map(Kn=>Ec(Lu("data",Kn.dataValidator,Un))).getOr(Un)},kb=(Qn,Un,Xn)=>{const Kn=us=>{const Ps=Qn.getRoot();Ps.getSystem().isConnected()&&us(Ps)},Jo={getData:()=>{const us=Qn.getRoot(),Ps=us.getSystem().isConnected()?Qn.getFormWrapper():us,er=da.getValue(Ps),Bs=Vl(Xn,Ns=>Ns.get());return{...er,...Bs}},setData:us=>{Kn(Ps=>{const er=Jo.getData(),Bs=Lc(er,us),Ns=_h(Qn,Bs),Xs=Qn.getFormWrapper();da.setValue(Xs,Ns),Zl(Xn,(Hr,kr)=>{Pl(Bs,kr)&&Hr.set(Bs[kr])})})},setEnabled:(us,Ps)=>{Cb(Qn,us).each(Ps?Ja.enable:Ja.disable)},focus:us=>{Cb(Qn,us).each(ol.focus)},block:us=>{if(!qn(us))throw new Error("The dialogInstanceAPI.block function should be passed a blocking message of type string as an argument");Kn(Ps=>{Qa(Ps,qD,{message:us})})},unblock:()=>{Kn(us=>{Wl(us,jD)})},showTab:us=>{Kn(Ps=>{const er=Qn.getBody();pa.getState(er).get().exists(Ns=>Ns.isTabPanel())&&ic.getCurrent(er).each(Ns=>{ru.showTab(Ns,us)})})},redial:us=>{Kn(Ps=>{const er=Qn.getId(),Bs=Un(us),Ns=i3(Bs.internalDialog.buttons,Xn);Ps.getSystem().broadcastOn([`${Jk}-${er}`],Bs),Ps.getSystem().broadcastOn([`${Ey}-${er}`],Bs.internalDialog),Ps.getSystem().broadcastOn([`${BP}-${er}`],Bs.internalDialog),Ps.getSystem().broadcastOn([`${CM}-${er}`],{...Bs.internalDialog,buttons:Ns}),Jo.setData(Bs.initialData)})},close:()=>{Kn(us=>{Wl(us,Uk)})},toggleFullscreen:Qn.toggleFullscreen};return Jo},EN=(Qn,Un,Xn)=>{const Kn=ba("dialog"),oo=Qn.internalDialog,lo=ur(oo.title,Kn,Xn),ho=Ua(oo.size),yo=gp(ho.get()).toArray(),Co=(Ns,Xs)=>(ho.set(Xs.internalDialog.size),em(Xs.internalDialog.size,Ns),ko.some(Xs)),Ro=Py({body:oo.body,initialData:oo.initialData},Kn,Xn),Lo=i3(oo.buttons),Wo=kN(Lo),jo=Mr(Lo.length!==0,Zm({buttons:Lo},Kn,Xn)),Jo=nH(()=>Bs,Wr(()=>Ps,Xn.shared.providers,Un),Xn.shared.getSink),us={id:Kn,header:lo,body:Ro,footer:jo,extraClasses:yo,extraBehaviours:[pa.config({channel:`${Jk}-${Kn}`,updateState:Co,initialData:Qn})],extraStyles:{}},Ps=wb(us,Jo,Xn),er=(()=>{const Ns=()=>{const Hr=If.getBody(Ps);return ic.getCurrent(Hr).getOr(Hr)},Xs=()=>{uS(Ps,ho.get())};return{getId:Mo(Kn),getRoot:Mo(Ps),getBody:()=>If.getBody(Ps),getFooter:()=>If.getFooter(Ps),getFormWrapper:Ns,toggleFullscreen:Xs}})(),Bs=kb(er,Un.redial,Wo);return{dialog:Ps,instanceApi:Bs}},oH=(Qn,Un,Xn,Kn=!1,oo)=>{const lo=ba("dialog"),ho=ba("dialog-label"),yo=ba("dialog-content"),Co=Qn.internalDialog,Ro=Ua(Co.size),Lo=gp(Ro.get()).toArray(),Wo=(Or,qr)=>(Ro.set(qr.internalDialog.size),em(qr.internalDialog.size,Or),oo(),ko.some(qr)),jo=ou(wT({title:Co.title,draggable:!0},lo,ho,Xn.shared.providers)),Jo=ou(fv({body:Co.body,initialData:Co.initialData},lo,yo,Xn,Kn)),us=i3(Co.buttons),Ps=kN(us),er=Mr(us.length!==0,ou(af({buttons:us},lo,Xn))),Bs=nH(()=>kr,{onBlock:Or=>{uv.block(Xs,(qr,na)=>{const Dl=jo.getOpt(Xs).map(Sa=>cu(Sa.element));return Gr(Or.message,na,Xn.shared.providers,Dl)})},onUnblock:()=>{uv.unblock(Xs)},onClose:()=>Un.closeWindow()},Xn.shared.getSink),Xs=gh({dom:{tag:"div",classes:["tox-dialog","tox-dialog-inline",...Lo],attributes:{role:"dialog","aria-labelledby":ho}},eventOrder:{[T0()]:[pa.name(),Om.name()],[Im()]:["execute-on-form"],[Zh()]:["reflecting","execute-on-form"]},behaviours:Zr([Za.config({mode:"cyclic",onEscape:Or=>(Wl(Or,Uk),ko.some(!0)),useTabstopAt:Or=>!Kk(Or)&&(Nd(Or)!=="button"||Bu(Or,"disabled")!=="disabled"),firstTabstop:1}),pa.config({channel:`${Jk}-${lo}`,updateState:Wo,initialData:Qn}),ol.config({}),Rl("execute-on-form",Bs.concat([rg(Wu(),(Or,qr)=>{Za.focusIn(Or)}),wr(MO(),(Or,qr)=>{Or.getSystem().broadcastOn([e2],{newFocus:qr.event.newFocus})})])),uv.config({getRoot:()=>ko.some(Xs)}),Cl.config({}),LP({})]),components:[jo.asSpec(),Jo.asSpec(),...er.map(Or=>Or.asSpec()).toArray()]}),Hr=()=>{uS(Xs,Ro.get())},kr=kb({getId:Mo(lo),getRoot:Mo(Xs),getFooter:()=>er.map(Or=>Or.get(Xs)),getBody:()=>Jo.get(Xs),getFormWrapper:()=>{const Or=Jo.get(Xs);return ic.getCurrent(Or).getOr(Or)},toggleFullscreen:Hr},Un.redial,Ps);return{dialog:Xs,instanceApi:kr}};var a3=tinymce.util.Tools.resolve("tinymce.util.URI");const FG=Qn=>{const Un=ho=>{Qn.getSystem().isConnected()&&ho(Qn)};return{block:ho=>{if(!qn(ho))throw new Error("The urlDialogInstanceAPI.block function should be passed a blocking message of type string as an argument");Un(yo=>{Qa(yo,qD,{message:ho})})},unblock:()=>{Un(ho=>{Wl(ho,jD)})},close:()=>{Un(ho=>{Wl(ho,Uk)})},sendMessage:ho=>{Un(yo=>{yo.getSystem().broadcastOn([kM],ho)})}}},cK=["insertContent","setContent","execCommand","close","block","unblock"],HG=Qn=>Yn(Qn)&&cK.indexOf(Qn.mceAction)!==-1,uK=Qn=>!HG(Qn)&&Yn(Qn)&&Pl(Qn,"mceAction"),dK=(Qn,Un,Xn)=>{switch(Xn.mceAction){case"insertContent":Qn.insertContent(Xn.content);break;case"setContent":Qn.setContent(Xn.content);break;case"execCommand":const Kn=uo(Xn.ui)?Xn.ui:!1;Qn.execCommand(Xn.cmd,Kn,Xn.value);break;case"close":Un.close();break;case"block":Un.block(Xn.message);break;case"unblock":Un.unblock();break}},fK=(Qn,Un,Xn,Kn)=>{const oo=ba("dialog"),lo=ur(Qn.title,oo,Kn),ho=yT(Qn),yo=Qn.buttons.bind(Xs=>Xs.length===0?ko.none():ko.some(Zm({buttons:Xs},oo,Kn))),Co=tH(()=>Ns,Wr(()=>Bs,Kn.shared.providers,Un)),Ro={...Qn.height.fold(()=>({}),Xs=>({height:Xs+"px","max-height":Xs+"px"})),...Qn.width.fold(()=>({}),Xs=>({width:Xs+"px","max-width":Xs+"px"}))},Lo=Qn.width.isNone()&&Qn.height.isNone()?["tox-dialog--width-lg"]:[],Wo=new a3(Qn.url,{base_uri:new a3(window.location.href)}),jo=`${Wo.protocol}://${Wo.host}${Wo.port?":"+Wo.port:""}`,Jo=ab(),us=(Xs,Hr)=>ko.some(Hr),Ps=[pa.config({channel:`${Jk}-${oo}`,updateState:us,initialData:Qn}),Rl("messages",[eu(()=>{const Xs=Dh(Ds.fromDom(window),"message",Hr=>{if(Wo.isSameOrigin(new a3(Hr.raw.origin))){const kr=Hr.raw.data;HG(kr)?dK(Xn,Ns,kr):uK(kr)&&Qn.onMessage(Ns,kr)}});Jo.set(Xs)}),ig(Jo.clear)]),Om.config({channels:{[kM]:{onReceive:(Xs,Hr)=>{Rd(Xs.element,"iframe").each(kr=>{const Or=kr.dom.contentWindow;Oo(Or)&&Or.postMessage(Hr,jo)})}}}})],Bs=wb({id:oo,header:lo,body:ho,footer:yo,extraClasses:Lo,extraBehaviours:Ps,extraStyles:Ro},Co,Kn),Ns=FG(Bs);return{dialog:Bs,instanceApi:Ns}},hK=Qn=>{const Un=Qn.shared;return{open:(Kn,oo)=>{const lo=()=>{If.hide(Ro),oo()},ho=ou(YP({name:"close-alert",text:"OK",primary:!0,buttonType:ko.some("primary"),align:"end",enabled:!0,icon:ko.none()},"cancel",Qn)),yo=o3(),Co=$y(lo,Un.providers),Ro=gh(s3({lazySink:()=>Un.getSink(),header:OT(yo,Co),body:_T(Kn,Un.providers),footer:ko.some(xm(cS([],[ho.asSpec()]))),onEscape:lo,extraClasses:["tox-alert-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[wr(U_,lo)],eventOrder:{}}));If.show(Ro);const Lo=ho.get(Ro);ol.focus(Lo)}}},mK=Qn=>{const Un=Qn.shared;return{open:(Kn,oo)=>{const lo=jo=>{If.hide(Lo),oo(jo)},ho=ou(YP({name:"yes",text:"Yes",primary:!0,buttonType:ko.some("primary"),align:"end",enabled:!0,icon:ko.none()},"submit",Qn)),yo=YP({name:"no",text:"No",primary:!1,buttonType:ko.some("secondary"),align:"end",enabled:!0,icon:ko.none()},"cancel",Qn),Co=o3(),Ro=$y(()=>lo(!1),Un.providers),Lo=gh(s3({lazySink:()=>Un.getSink(),header:OT(Co,Ro),body:_T(Kn,Un.providers),footer:ko.some(xm(cS([],[yo,ho.asSpec()]))),onEscape:()=>lo(!1),extraClasses:["tox-confirm-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[wr(U_,()=>lo(!1)),wr(PE,()=>lo(!0))],eventOrder:{}}));If.show(Lo);const Wo=ho.get(Lo);ol.focus(Wo)}}},QG=(Qn,Un)=>Ec(Lu("data",Un,Qn)),VG=Qn=>xE(Qn,".tox-alert-dialog")||xE(Qn,".tox-confirm-dialog"),pK=(Qn,Un,Xn)=>Un&&Xn?[]:[rf.config({contextual:{lazyContext:()=>ko.some(au(Ds.fromDom(Qn.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition"},modes:["top"],lazyViewport:Kn=>W_(Qn,Kn.element).map(lo=>({bounds:Wk(lo),optScrollEnv:ko.some({currentScrollTop:lo.element.dom.scrollTop,scrollElmTop:uh(lo.element).top})})).getOrThunk(()=>({bounds:tf(),optScrollEnv:ko.none()}))})],gK=Qn=>{const Un=Qn.editor,Xn=uE(Un),Kn=hK(Qn.backstages.dialog),oo=mK(Qn.backstages.dialog),lo=(us,Ps,er)=>{if(!mo(Ps)){if(Ps.inline==="toolbar")return Ro(us,Qn.backstages.popup.shared.anchors.inlineDialog(),er,Ps);if(Ps.inline==="bottom")return Lo(us,Qn.backstages.popup.shared.anchors.inlineBottomDialog(),er,Ps);if(Ps.inline==="cursor")return Ro(us,Qn.backstages.popup.shared.anchors.cursor(),er,Ps)}return Co(us,er)},ho=(us,Ps)=>yo(us,Ps),yo=(us,Ps)=>{const er=Bs=>{const Ns=fK(Bs,{closeWindow:()=>{If.hide(Ns.dialog),Ps(Ns.instanceApi)}},Un,Qn.backstages.dialog);return If.show(Ns.dialog),Ns.instanceApi};return Tl.openUrl(er,us)},Co=(us,Ps)=>{const er=(Bs,Ns,Xs)=>{const Hr=Ns,Or=EN({dataValidator:Xs,initialData:Hr,internalDialog:Bs},{redial:Tl.redial,closeWindow:()=>{If.hide(Or.dialog),Ps(Or.instanceApi)}},Qn.backstages.dialog);return If.show(Or.dialog),Or.instanceApi.setData(Hr),Or.instanceApi};return Tl.open(er,us)},Ro=(us,Ps,er,Bs)=>{const Ns=(Xs,Hr,kr)=>{const Or=QG(Hr,kr),qr=Hl(),na=Qn.backstages.popup.shared.header.isPositionedAtTop(),Dl={dataValidator:kr,initialData:Or,internalDialog:Xs},Sa=()=>qr.on(Ga=>{kd.reposition(Ga),(!Xn||!na)&&rf.refresh(Ga)}),fl=oH(Dl,{redial:Tl.redial,closeWindow:()=>{qr.on(kd.hide),Un.off("ResizeEditor",Sa),qr.clear(),er(fl.instanceApi)}},Qn.backstages.popup,Bs.ariaAttrs,Sa),rl=gh(kd.sketch({lazySink:Qn.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:Bs.persistent?{event:"doNotDismissYet"}:{},...na?{}:{fireRepositionEventInstead:{}},inlineBehaviours:Zr([Rl("window-manager-inline-events",[wr(q1(),(Ga,yc)=>{Wl(fl.dialog,U_)})]),...pK(Un,Xn,na)]),isExtraPart:(Ga,yc)=>VG(yc)}));qr.set(rl);const Yc=()=>{const Ga=Un.inline?Ru():Ds.fromDom(Un.getContainer()),yc=au(Ga);return ko.some(yc)};return kd.showWithinBounds(rl,Fm(fl.dialog),{anchor:Ps},Yc),(!Xn||!na)&&(rf.refresh(rl),Un.on("ResizeEditor",Sa)),fl.instanceApi.setData(Or),Za.focusIn(fl.dialog),fl.instanceApi};return Tl.open(Ns,us)},Lo=(us,Ps,er,Bs)=>{const Ns=(Xs,Hr,kr)=>{const Or=QG(Hr,kr),qr=Hl(),na=Qn.backstages.popup.shared.header.isPositionedAtTop(),Dl={dataValidator:kr,initialData:Or,internalDialog:Xs},Sa=()=>qr.on(Ga=>{kd.reposition(Ga),rf.refresh(Ga)}),fl=oH(Dl,{redial:Tl.redial,closeWindow:()=>{qr.on(kd.hide),Un.off("ResizeEditor ScrollWindow ElementScroll",Sa),qr.clear(),er(fl.instanceApi)}},Qn.backstages.popup,Bs.ariaAttrs,Sa),rl=gh(kd.sketch({lazySink:Qn.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:Bs.persistent?{event:"doNotDismissYet"}:{},...na?{}:{fireRepositionEventInstead:{}},inlineBehaviours:Zr([Rl("window-manager-inline-events",[wr(q1(),(Ga,yc)=>{Wl(fl.dialog,U_)})]),rf.config({contextual:{lazyContext:()=>ko.some(au(Ds.fromDom(Un.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition"},modes:["top","bottom"],lazyViewport:Ga=>W_(Un,Ga.element).map(oa=>({bounds:Wk(oa),optScrollEnv:ko.some({currentScrollTop:oa.element.dom.scrollTop,scrollElmTop:uh(oa.element).top})})).getOrThunk(()=>({bounds:tf(),optScrollEnv:ko.none()}))})]),isExtraPart:(Ga,yc)=>VG(yc)}));qr.set(rl);const Yc=()=>Qn.backstages.popup.shared.getSink().toOptional().bind(Ga=>{const yc=W_(Un,Ga.element),oa=15,$a=yc.map(Ka=>Wk(Ka)).getOr(tf()),hl=au(Ds.fromDom(Un.getContentAreaContainer())),gl=O0(hl,$a);return ko.some(Kc(gl.x,gl.y,gl.width,gl.height-oa))});return kd.showWithinBounds(rl,Fm(fl.dialog),{anchor:Ps},Yc),rf.refresh(rl),Un.on("ResizeEditor ScrollWindow ElementScroll ResizeWindow",Sa),fl.instanceApi.setData(Or),Za.focusIn(fl.dialog),fl.instanceApi};return Tl.open(Ns,us)};return{open:lo,openUrl:ho,alert:(us,Ps)=>{Kn.open(us,Ps)},close:us=>{us.close()},confirm:(us,Ps)=>{oo.open(us,Ps)}}},bK=Qn=>{LL(Qn),zQ(Qn),Yj(Qn)};var vK=()=>{lm.add("silver",Qn=>{bK(Qn);let Un=()=>tf();const{dialogs:Xn,popups:Kn,renderUI:oo}=jX(Qn,{getPopupSinkBounds:()=>Un()}),lo=()=>{const Co=oo();return W_(Qn,Kn.getMothership().element).each(Lo=>{Un=()=>Wk(Lo)}),Co};DV.register(Qn,Kn.backstage.shared);const ho=gK({editor:Qn,backstages:{popup:Kn.backstage,dialog:Xn.backstage}}),yo=()=>SR(Qn,{backstage:Kn.backstage},Kn.getMothership());return{renderUI:lo,getWindowManagerImpl:Mo(ho),getNotificationManagerImpl:yo}})};vK()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=(ss,As,Ws)=>{var rr;return Ws(ss,As.prototype)?!0:((rr=ss.constructor)===null||rr===void 0?void 0:rr.name)===As.name},ke=ss=>{const As=typeof ss;return ss===null?"null":As==="object"&&Array.isArray(ss)?"array":As==="object"&&Ce(ss,String,(Ws,rr)=>rr.isPrototypeOf(Ws))?"string":As},$n=ss=>As=>ke(As)===ss,Hn=ss=>As=>typeof As===ss,zn=ss=>As=>ss===As,Zn=$n("string"),qn=$n("object"),Yn=$n("array"),Jn=zn(null),to=Hn("boolean"),io=ss=>ss==null,uo=ss=>!io(ss),mo=Hn("function"),bo=(ss,As)=>{if(Yn(ss)){for(let Ws=0,rr=ss.length;Ws{},wo=ss=>()=>ss,$o=(ss,As)=>ss===As;class Do{constructor(As,Ws){this.tag=As,this.value=Ws}static some(As){return new Do(!0,As)}static none(){return Do.singletonNone}fold(As,Ws){return this.tag?Ws(this.value):As()}isSome(){return this.tag}isNone(){return!this.tag}map(As){return this.tag?Do.some(As(this.value)):Do.none()}bind(As){return this.tag?As(this.value):Do.none()}exists(As){return this.tag&&As(this.value)}forall(As){return!this.tag||As(this.value)}filter(As){return!this.tag||As(this.value)?this:Do.none()}getOr(As){return this.tag?this.value:As}or(As){return this.tag?this:As}getOrThunk(As){return this.tag?this.value:As()}orThunk(As){return this.tag?this:As()}getOrDie(As){if(this.tag)return this.value;throw new Error(As??"Called getOrDie on None")}static from(As){return uo(As)?Do.some(As):Do.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(As){this.tag&&As(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Do.singletonNone=new Do(!1);const xo=Array.prototype.indexOf,Bo=Array.prototype.push,Vo=(ss,As)=>xo.call(ss,As),Ko=(ss,As)=>Vo(ss,As)>-1,Mo=(ss,As)=>{const Ws=ss.length,rr=new Array(Ws);for(let Fr=0;Fr{for(let Ws=0,rr=ss.length;Ws(es(ss,(rr,Fr)=>{Ws=As(Ws,rr,Fr)}),Ws),ps=ss=>{const As=[];for(let Ws=0,rr=ss.length;Wsps(Mo(ss,As)),Yo=(ss,As)=>{for(let Ws=0;Wsss.exists(rr=>Ws(rr,As)),sr=ss=>{const As=[],Ws=rr=>{As.push(rr)};for(let rr=0;rrss?Do.some(As):Do.none(),ko=ss=>As=>As.options.get(ss),gs=ss=>{const As=ss.options.register;As("link_assume_external_targets",{processor:Ws=>{const rr=Zn(Ws)||to(Ws);return rr?Ws===!0?{value:1,valid:rr}:Ws==="http"||Ws==="https"?{value:Ws,valid:rr}:{value:0,valid:rr}:{valid:!1,message:"Must be a string or a boolean."}},default:!1}),As("link_context_toolbar",{processor:"boolean",default:!1}),As("link_list",{processor:Ws=>Zn(Ws)||mo(Ws)||bo(Ws,qn)}),As("link_default_target",{processor:"string"}),As("link_default_protocol",{processor:"string",default:"https"}),As("link_target_list",{processor:Ws=>to(Ws)||bo(Ws,qn),default:!0}),As("link_rel_list",{processor:"object[]",default:[]}),As("link_class_list",{processor:"object[]",default:[]}),As("link_title",{processor:"boolean",default:!0}),As("allow_unsafe_link_target",{processor:"boolean",default:!1}),As("link_quicklink",{processor:"boolean",default:!1})},xs=ko("link_assume_external_targets"),Qr=ko("link_context_toolbar"),cr=ko("link_list"),ws=ko("link_default_target"),Fs=ko("link_default_protocol"),Br=ko("link_target_list"),_r=ko("link_rel_list"),ha=ko("link_class_list"),hs=ko("link_title"),Qs=ko("allow_unsafe_link_target"),zo=ko("link_quicklink");var el=tinymce.util.Tools.resolve("tinymce.util.Tools");const ga=ss=>Zn(ss.value)?ss.value:"",Ca=ss=>Zn(ss.text)?ss.text:Zn(ss.title)?ss.title:"",za=(ss,As)=>{const Ws=[];return el.each(ss,rr=>{const Fr=Ca(rr);if(rr.menu!==void 0){const Wa=za(rr.menu,As);Ws.push({text:Fr,items:Wa})}else{const Wa=As(rr);Ws.push({text:Fr,value:Wa})}}),Ws},Il=(ss=ga)=>As=>Do.from(As).map(Ws=>za(Ws,ss)),Us={sanitize:ss=>Il(ga)(ss),sanitizeWith:Il,createUi:(ss,As)=>Ws=>({name:ss,type:"listbox",label:As,items:Ws}),getValue:ga},fs=Object.keys,dr=Object.hasOwnProperty,Vr=(ss,As)=>{const Ws=fs(ss);for(let rr=0,Fr=Ws.length;rr(As,Ws)=>{ss[Ws]=As},Kr=(ss,As,Ws,rr)=>{Vr(ss,(Fr,Wa)=>{(As(Fr,Wa)?Ws:rr)(Fr,Wa)})},ra=(ss,As)=>{const Ws={};return Kr(ss,As,nr(Ws),Oo),Ws},Ml=(ss,As)=>dr.call(ss,As),xa=(ss,As)=>Ml(ss,As)&&ss[As]!==void 0&&ss[As]!==null;var Nl=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker"),Zc=tinymce.util.Tools.resolve("tinymce.util.URI");const cc=ss=>uo(ss)&&ss.nodeName.toLowerCase()==="a",gc=ss=>cc(ss)&&!!Zl(ss),nc=(ss,As)=>{if(ss.collapsed)return[];{const Ws=ss.cloneContents(),rr=Ws.firstChild,Fr=new Nl(rr,Ws),Wa=[];let Nc=rr;do As(Nc)&&Wa.push(Nc);while(Nc=Fr.next());return Wa}},Ed=ss=>/^\w+:/i.test(ss),Zl=ss=>{var As,Ws;return(Ws=(As=ss.getAttribute("data-mce-href"))!==null&&As!==void 0?As:ss.getAttribute("href"))!==null&&Ws!==void 0?Ws:""},Vl=(ss,As)=>{const Ws=["noopener"],rr=ss?ss.split(/\s+/):[],Fr=ul=>el.trim(ul.sort().join(" ")),Wa=ul=>(ul=Nc(ul),ul.length>0?ul.concat(Ws):Ws),Nc=ul=>ul.filter(lu=>el.inArray(Ws,lu)===-1),xl=As?Wa(rr):Nc(rr);return xl.length>0?Fr(xl):""},Fc=ss=>ss.replace(/\uFEFF/g,""),qa=(ss,As)=>(As=As||Yl(ss.selection.getRng())[0]||ss.selection.getNode(),Pl(As)?Do.from(ss.dom.select("a[href]",As)[0]):Do.from(ss.dom.getParent(As,"a[href]"))),Ya=(ss,As)=>qa(ss,As).isSome(),kc=(ss,As)=>{const Ws=As.fold(()=>ss.getContent({format:"text"}),rr=>rr.innerText||rr.textContent||"");return Fc(Ws)},Yl=ss=>nc(ss,gc),rd=ss=>el.grep(ss,gc),Al=ss=>rd(ss).length>0,gd=ss=>Yl(ss).length>0,Rr=ss=>{const As=ss.schema.getTextInlineElements(),Ws=Wa=>Wa.nodeType===1&&!cc(Wa)&&!Ml(As,Wa.nodeName.toLowerCase());if(qa(ss).exists(Wa=>Wa.hasAttribute("data-mce-block")))return!1;const Fr=ss.selection.getRng();return Fr.collapsed?!0:nc(Fr,Ws).length===0},Pl=ss=>uo(ss)&&ss.nodeName==="FIGURE"&&/\bimage\b/i.test(ss.className),Su=ss=>ls(["title","rel","class","target"],(Ws,rr)=>(ss[rr].each(Fr=>{Ws[rr]=Fr.length>0?Fr:null}),Ws),{href:ss.href}),vs=(ss,As)=>(As==="http"||As==="https")&&!Ed(ss)?As+"://"+ss:ss,Es=(ss,As)=>{const Ws={...As};if(_r(ss).length===0&&!Qs(ss)){const rr=Vl(Ws.rel,Ws.target==="_blank");Ws.rel=rr||null}return Do.from(Ws.target).isNone()&&Br(ss)===!1&&(Ws.target=ws(ss)),Ws.href=vs(Ws.href,xs(ss)),Ws},Ks=(ss,As,Ws,rr)=>{Ws.each(Fr=>{Ml(As,"innerText")?As.innerText=Fr:As.textContent=Fr}),ss.dom.setAttribs(As,rr),ss.selection.select(As)},pr=(ss,As,Ws,rr)=>{const Fr=ss.dom;Pl(As)?Vc(Fr,As,rr):Ws.fold(()=>{ss.execCommand("mceInsertLink",!1,rr)},Wa=>{ss.insertContent(Fr.createHTML("a",rr,Fr.encode(Wa)))})},ia=(ss,As,Ws)=>{const rr=ss.selection.getNode(),Fr=qa(ss,rr),Wa=Es(ss,Su(Ws));ss.undoManager.transact(()=>{Ws.href===As.href&&As.attach(),Fr.fold(()=>{pr(ss,rr,Ws.text,Wa)},Nc=>{ss.focus(),Ks(ss,Nc,Ws.text,Wa)})})},ka=ss=>{const As=ss.dom,Ws=ss.selection,rr=Ws.getBookmark(),Fr=Ws.getRng().cloneRange(),Wa=As.getParent(Fr.startContainer,"a[href]",ss.getBody()),Nc=As.getParent(Fr.endContainer,"a[href]",ss.getBody());Wa&&Fr.setStartBefore(Wa),Nc&&Fr.setEndAfter(Nc),Ws.setRng(Fr),ss.execCommand("unlink"),Ws.moveToBookmark(rr)},Ma=ss=>{ss.undoManager.transact(()=>{const As=ss.selection.getNode();Pl(As)?Rc(ss,As):ka(ss),ss.focus()})},Mr=ss=>{const{class:As,href:Ws,rel:rr,target:Fr,text:Wa,title:Nc}=ss;return ra({class:As.getOrNull(),href:Ws,rel:rr.getOrNull(),target:Fr.getOrNull(),text:Wa.getOrNull(),title:Nc.getOrNull()},(xl,ul)=>Jn(xl)===!1)},il=(ss,As)=>{const Ws=ss.options.get,rr={allow_html_data_urls:Ws("allow_html_data_urls"),allow_script_urls:Ws("allow_script_urls"),allow_svg_data_urls:Ws("allow_svg_data_urls")},Fr=As.href;return{...As,href:Zc.isDomSafe(Fr,"a",rr)?Fr:""}},Na=(ss,As,Ws)=>{const rr=il(ss,Ws);ss.hasPlugin("rtc",!0)?ss.execCommand("createlink",!1,Mr(rr)):ia(ss,As,rr)},vl=ss=>{ss.hasPlugin("rtc",!0)?ss.execCommand("unlink"):Ma(ss)},Rc=(ss,As)=>{var Ws;const rr=ss.dom.select("img",As)[0];if(rr){const Fr=ss.dom.getParents(rr,"a[href]",As)[0];Fr&&((Ws=Fr.parentNode)===null||Ws===void 0||Ws.insertBefore(rr,Fr),ss.dom.remove(Fr))}},Vc=(ss,As,Ws)=>{var rr;const Fr=ss.select("img",As)[0];if(Fr){const Wa=ss.create("a",Ws);(rr=Fr.parentNode)===null||rr===void 0||rr.insertBefore(Wa,Fr),Wa.appendChild(Fr)}},xc=ss=>xa(ss,"items"),zc=(ss,As)=>Yo(As,Ws=>xc(Ws)?zc(ss,Ws.items):Js(Ws.value===ss,Ws)),ad=(ss,As,Ws,rr)=>{const Fr=rr[As],Wa=ss.length>0;return Fr!==void 0?zc(Fr,Ws).map(Nc=>({url:{value:Nc.value,meta:{text:Wa?ss:Nc.text,attach:Oo}},text:Wa?ss:Nc.text})):Do.none()},Bh=(ss,As)=>As==="link"?ss.link:As==="anchor"?ss.anchor:Do.none(),Ts={init:(ss,As)=>{const Ws={text:ss.text,title:ss.title},rr=ul=>{var lu;return Js(Ws.title.length<=0,Do.from((lu=ul.meta)===null||lu===void 0?void 0:lu.title).getOr(""))},Fr=ul=>{var lu;return Js(Ws.text.length<=0,Do.from((lu=ul.meta)===null||lu===void 0?void 0:lu.text).getOr(ul.value))},Wa=ul=>{const lu=Fr(ul.url),Gl=rr(ul.url);return lu.isSome()||Gl.isSome()?Do.some({...lu.map(Ru=>({text:Ru})).getOr({}),...Gl.map(Ru=>({title:Ru})).getOr({})}):Do.none()},Nc=(ul,lu)=>{const Gl=Bh(As,lu).getOr([]);return ad(Ws.text,lu,Gl,ul)};return{onChange:(ul,lu)=>{const Gl=lu.name;return Gl==="url"?Wa(ul()):Ko(["anchor","link"],Gl)?Nc(ul(),Gl):((Gl==="text"||Gl==="title")&&(Ws[Gl]=ul()[Gl]),Do.none())}}},getDelta:ad};var ks=tinymce.util.Tools.resolve("tinymce.util.Delay");const ir=(ss,As,Ws)=>{const rr=ss.selection.getRng();ks.setEditorTimeout(ss,()=>{ss.windowManager.confirm(As,Fr=>{ss.selection.setRng(rr),Ws(Fr)})})},br=ss=>{const As=ss.href;return As.indexOf("@")>0&&As.indexOf("/")===-1&&As.indexOf("mailto:")===-1?Do.some({message:"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",preprocess:rr=>({...rr,href:"mailto:"+As})}):Do.none()},Aa=(ss,As)=>Ws=>{const rr=Ws.href;return ss===1&&!Ed(rr)||ss===0&&/^\s*www(\.|\d\.)/i.test(rr)?Do.some({message:`The URL you entered seems to be an external link. Do you want to add the required ${As}:// prefix?`,preprocess:Wa=>({...Wa,href:As+"://"+rr})}):Do.none()},_l={preprocess:(ss,As)=>Yo([br,Aa(xs(ss),Fs(ss))],Ws=>Ws(As)).fold(()=>Promise.resolve(As),Ws=>new Promise(rr=>{ir(ss,Ws.message,Fr=>{rr(Fr?Ws.preprocess(As):As)})}))},Ds={getAnchors:ss=>{const As=ss.dom.select("a:not([href])"),Ws=rs(As,rr=>{const Fr=rr.name||rr.id;return Fr?[{text:Fr,value:"#"+Fr}]:[]});return Ws.length>0?Do.some([{text:"None",value:""}].concat(Ws)):Do.none()}},wu={getClasses:ss=>{const As=ha(ss);return As.length>0?Us.sanitize(As):Do.none()}},qu=ss=>{try{return Do.some(JSON.parse(ss))}catch{return Do.none()}},bc={getLinks:ss=>{const As=rr=>ss.convertURL(rr.value||rr.url||"","href"),Ws=cr(ss);return new Promise(rr=>{Zn(Ws)?fetch(Ws).then(Fr=>Fr.ok?Fr.text().then(qu):Promise.reject()).then(rr,()=>rr(Do.none())):mo(Ws)?Ws(Fr=>rr(Do.some(Fr))):rr(Do.from(Ws))}).then(rr=>rr.bind(Us.sanitizeWith(As)).map(Fr=>Fr.length>0?[{text:"None",value:""}].concat(Fr):Fr))}},Ff={getRels:(ss,As)=>{const Ws=_r(ss);if(Ws.length>0){const rr=Ys(As,"_blank"),Fr=Qs(ss)===!1,Wa=xl=>Vl(Us.getValue(xl),rr);return(Fr?Us.sanitizeWith(Wa):Us.sanitize)(Ws)}return Do.none()}},Ud=[{text:"Current window",value:""},{text:"New window",value:"_blank"}],oc={getTargets:ss=>{const As=Br(ss);return Yn(As)?Us.sanitize(As).orThunk(()=>Do.some(Ud)):As===!1?Do.none():Do.some(Ud)}},Dc=(ss,As,Ws)=>{const rr=ss.getAttrib(As,Ws);return rr!==null&&rr.length>0?Do.some(rr):Do.none()},bd=(ss,As)=>{const Ws=ss.dom,Fr=Rr(ss)?Do.some(kc(ss.selection,As)):Do.none(),Wa=As.bind(Gl=>Do.from(Ws.getAttrib(Gl,"href"))),Nc=As.bind(Gl=>Do.from(Ws.getAttrib(Gl,"target"))),xl=As.bind(Gl=>Dc(Ws,Gl,"rel")),ul=As.bind(Gl=>Dc(Ws,Gl,"class")),lu=As.bind(Gl=>Dc(Ws,Gl,"title"));return{url:Wa,text:Fr,title:lu,target:Nc,rel:xl,linkClass:ul}},ih={collect:(ss,As)=>bc.getLinks(ss).then(Ws=>{const rr=bd(ss,As);return{anchor:rr,catalogs:{targets:oc.getTargets(ss),rels:Ff.getRels(ss,rr.target),classes:wu.getClasses(ss),anchor:Ds.getAnchors(ss),link:Ws},optNode:As,flags:{titleEnabled:hs(ss)}}})},om=(ss,As)=>Ws=>{const rr=Ws.getData();if(!rr.url.value){vl(ss),Ws.close();return}const Fr=xl=>Do.from(rr[xl]).filter(ul=>!Ys(As.anchor[xl],ul)),Wa={href:rr.url.value,text:Fr("text"),target:Fr("target"),rel:Fr("rel"),class:Fr("linkClass"),title:Fr("title")},Nc={href:rr.url.value,attach:rr.url.meta!==void 0&&rr.url.meta.attach?rr.url.meta.attach:Oo};_l.preprocess(ss,Wa).then(xl=>{Na(ss,Nc,xl)}),Ws.close()},sm=ss=>{const As=qa(ss);return ih.collect(ss,As)},fc=(ss,As)=>{const Ws=ss.anchor,rr=Ws.url.getOr("");return{url:{value:rr,meta:{original:{value:rr}}},text:Ws.text.getOr(""),title:Ws.title.getOr(""),anchor:rr,link:rr,rel:Ws.rel.getOr(""),target:Ws.target.or(As).getOr(""),linkClass:Ws.linkClass.getOr("")}},Td=(ss,As,Ws)=>{const rr=[{name:"url",type:"urlinput",filetype:"file",label:"URL",picker_text:"Browse links"}],Fr=ss.anchor.text.map(()=>({name:"text",type:"input",label:"Text to display"})).toArray(),Wa=ss.flags.titleEnabled?[{name:"title",type:"input",label:"Title"}]:[],Nc=Do.from(ws(Ws)),xl=fc(ss,Nc),ul=ss.catalogs,lu=Ts.init(xl,ul);return{title:"Insert/Edit Link",size:"normal",body:{type:"panel",items:ps([rr,Fr,Wa,sr([ul.anchor.map(Us.createUi("anchor","Anchors")),ul.rels.map(Us.createUi("rel","Rel")),ul.targets.map(Us.createUi("target","Open link in...")),ul.link.map(Us.createUi("link","Link list")),ul.classes.map(Us.createUi("linkClass","Class"))])])},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:xl,onChange:(Ru,{name:xf})=>{lu.onChange(Ru.getData,{name:xf}).each(Hp=>{Ru.setData(Hp)})},onSubmit:As}},Jd=ss=>{sm(ss).then(Ws=>{const rr=om(ss,Ws);return Td(Ws,rr,ss)}).then(Ws=>{ss.windowManager.open(Ws)})},Em=ss=>{ss.addCommand("mceLink",(As,Ws)=>{(Ws==null?void 0:Ws.dialog)===!0||!zo(ss)?Jd(ss):ss.dispatch("contexttoolbar-show",{toolbarKey:"quicklink"})})};var ef=tinymce.util.Tools.resolve("tinymce.util.VK");const Cu=(ss,As)=>{document.body.appendChild(ss),ss.dispatchEvent(As),document.body.removeChild(ss)},Qc=ss=>{const As=document.createElement("a");As.target="_blank",As.href=ss,As.rel="noreferrer noopener";const Ws=document.createEvent("MouseEvents");Ws.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),Cu(As,Ws)},Cf=(ss,As)=>ss.dom.getParent(As,"a[href]"),qm=ss=>Cf(ss,ss.selection.getStart()),Oc=ss=>ss.altKey===!0&&ss.shiftKey===!1&&ss.ctrlKey===!1&&ss.metaKey===!1,cd=(ss,As)=>{if(As){const Ws=Zl(As);if(/^#/.test(Ws)){const rr=ss.dom.select(Ws);rr.length&&ss.selection.scrollIntoView(rr[0],!0)}else Qc(As.href)}},vd=ss=>()=>{ss.execCommand("mceLink",!1,{dialog:!0})},ju=ss=>()=>{cd(ss,qm(ss))},Xf=ss=>{ss.on("click",As=>{const Ws=Cf(ss,As.target);Ws&&ef.metaKeyPressed(As)&&(As.preventDefault(),cd(ss,Ws))}),ss.on("keydown",As=>{if(!As.isDefaultPrevented()&&As.keyCode===13&&Oc(As)){const Ws=qm(ss);Ws&&(As.preventDefault(),cd(ss,Ws))}})},Sh=(ss,As)=>(ss.on("NodeChange",As),()=>ss.off("NodeChange",As)),Zd=ss=>As=>{const Ws=()=>{As.setActive(!ss.mode.isReadOnly()&&Ya(ss,ss.selection.getNode())),As.setEnabled(ss.selection.isEditable())};return Ws(),Sh(ss,Ws)},ah=ss=>As=>{const Ws=()=>{As.setEnabled(ss.selection.isEditable())};return Ws(),Sh(ss,Ws)},lh=ss=>(ss.selection.isCollapsed()?rd(ss.dom.getParents(ss.selection.getStart())):Yl(ss.selection.getRng())).length===1,Bp=ss=>As=>{const Ws=()=>As.setEnabled(lh(ss));return Ws(),Sh(ss,Ws)},ch=ss=>As=>{const Ws=Wa=>Al(Wa)||gd(ss.selection.getRng()),rr=ss.dom.getParents(ss.selection.getStart()),Fr=Wa=>{As.setEnabled(Ws(Wa)&&ss.selection.isEditable())};return Fr(rr),Sh(ss,Wa=>Fr(Wa.parents))},bp=ss=>{ss.addShortcut("Meta+K","",()=>{ss.execCommand("mceLink")})},kf=ss=>{ss.ui.registry.addToggleButton("link",{icon:"link",tooltip:"Insert/edit link",onAction:vd(ss),onSetup:Zd(ss)}),ss.ui.registry.addButton("openlink",{icon:"new-tab",tooltip:"Open link",onAction:ju(ss),onSetup:Bp(ss)}),ss.ui.registry.addButton("unlink",{icon:"unlink",tooltip:"Remove link",onAction:()=>vl(ss),onSetup:ch(ss)})},Fh=ss=>{ss.ui.registry.addMenuItem("openlink",{text:"Open link",icon:"new-tab",onAction:ju(ss),onSetup:Bp(ss)}),ss.ui.registry.addMenuItem("link",{icon:"link",text:"Link...",shortcut:"Meta+K",onSetup:ah(ss),onAction:vd(ss)}),ss.ui.registry.addMenuItem("unlink",{icon:"unlink",text:"Remove link",onAction:()=>vl(ss),onSetup:ch(ss)})},jm=ss=>{const As="link unlink openlink",Ws="link";ss.ui.registry.addContextMenu("link",{update:rr=>ss.dom.isEditable(rr)?Al(ss.dom.getParents(rr,"a"))?As:Ws:""})},Fp=ss=>{const As=Fr=>{Fr.selection.collapse(!1)},Ws=Fr=>{const Wa=ss.selection.getNode();return Fr.setEnabled(Ya(ss,Wa)),Oo},rr=Fr=>{const Wa=qa(ss),Nc=Rr(ss);if(Wa.isNone()&&Nc){const xl=kc(ss.selection,Wa);return Js(xl.length===0,Fr)}else return Do.none()};ss.ui.registry.addContextForm("quicklink",{launch:{type:"contextformtogglebutton",icon:"link",tooltip:"Link",onSetup:Zd(ss)},label:"Link",predicate:Fr=>Qr(ss)&&Ya(ss,Fr),initValue:()=>qa(ss).fold(wo(""),Zl),commands:[{type:"contextformtogglebutton",icon:"link",tooltip:"Link",primary:!0,onSetup:Fr=>{const Wa=ss.selection.getNode();return Fr.setActive(Ya(ss,Wa)),Zd(ss)(Fr)},onAction:Fr=>{const Wa=Fr.getValue(),Nc=rr(Wa);Na(ss,{href:Wa,attach:Oo},{href:Wa,text:Nc,title:Do.none(),rel:Do.none(),target:Do.none(),class:Do.none()}),As(ss),Fr.hide()}},{type:"contextformbutton",icon:"unlink",tooltip:"Remove link",onSetup:Ws,onAction:Fr=>{vl(ss),Fr.hide()}},{type:"contextformbutton",icon:"new-tab",tooltip:"Open link",onSetup:Ws,onAction:Fr=>{ju(ss)(),Fr.hide()}}]})};var Eg=()=>{_n.add("link",ss=>{gs(ss),kf(ss),Fh(ss),jm(ss),Fp(ss),Xf(ss),Em(ss),bp(ss)})};Eg()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=(qn,Yn)=>{qn.focus(),qn.undoManager.transact(()=>{qn.setContent(Yn)}),qn.selection.setCursorLocation(),qn.nodeChanged()},ke=qn=>qn.getContent({source_view:!0}),$n=qn=>{const Yn=ke(qn);qn.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:Yn},onSubmit:Jn=>{Ce(qn,Jn.getData().code),Jn.close()}})},Hn=qn=>{qn.addCommand("mceCodeEditor",()=>{$n(qn)})},zn=qn=>{const Yn=()=>qn.execCommand("mceCodeEditor");qn.ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:Yn}),qn.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:Yn})};var Zn=()=>{_n.add("code",qn=>(Hn(qn),zn(qn),{}))};Zn()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=Object.getPrototypeOf,ke=(Uo,cs,_s)=>{var ar;return _s(Uo,cs.prototype)?!0:((ar=Uo.constructor)===null||ar===void 0?void 0:ar.name)===cs.name},$n=Uo=>{const cs=typeof Uo;return Uo===null?"null":cs==="object"&&Array.isArray(Uo)?"array":cs==="object"&&ke(Uo,String,(_s,ar)=>ar.isPrototypeOf(_s))?"string":cs},Hn=Uo=>cs=>$n(cs)===Uo,zn=Uo=>cs=>typeof cs===Uo,Zn=Uo=>cs=>Uo===cs,qn=(Uo,cs)=>Jn(Uo)&&ke(Uo,cs,(_s,ar)=>Ce(_s)===ar),Yn=Hn("string"),Jn=Hn("object"),to=Uo=>qn(Uo,Object),io=Hn("array"),uo=Zn(null),mo=zn("boolean"),bo=Uo=>Uo==null,Oo=Uo=>!bo(Uo),wo=zn("function"),$o=zn("number"),Do=(Uo,cs)=>{if(io(Uo)){for(let _s=0,ar=Uo.length;_s{};class Bo{constructor(cs,_s){this.tag=cs,this.value=_s}static some(cs){return new Bo(!0,cs)}static none(){return Bo.singletonNone}fold(cs,_s){return this.tag?_s(this.value):cs()}isSome(){return this.tag}isNone(){return!this.tag}map(cs){return this.tag?Bo.some(cs(this.value)):Bo.none()}bind(cs){return this.tag?cs(this.value):Bo.none()}exists(cs){return this.tag&&cs(this.value)}forall(cs){return!this.tag||cs(this.value)}filter(cs){return!this.tag||cs(this.value)?this:Bo.none()}getOr(cs){return this.tag?this.value:cs}or(cs){return this.tag?this:cs}getOrThunk(cs){return this.tag?this.value:cs()}orThunk(cs){return this.tag?this:cs()}getOrDie(cs){if(this.tag)return this.value;throw new Error(cs??"Called getOrDie on None")}static from(cs){return Oo(cs)?Bo.some(cs):Bo.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(cs){this.tag&&cs(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Bo.singletonNone=new Bo(!1);const Vo=Object.keys,Ko=Object.hasOwnProperty,Mo=(Uo,cs)=>{const _s=Vo(Uo);for(let ar=0,ta=_s.length;ar(cs,_s)=>{Uo[_s]=cs},ls=(Uo,cs,_s,ar)=>{Mo(Uo,(ta,al)=>{(cs(ta,al)?_s:ar)(ta,al)})},ps=(Uo,cs)=>{const _s={};return ls(Uo,cs,es(_s),xo),_s},rs=(Uo,cs)=>Ko.call(Uo,cs),Yo=(Uo,cs)=>rs(Uo,cs)&&Uo[cs]!==void 0&&Uo[cs]!==null,Ys=Array.prototype.push,sr=Uo=>{const cs=[];for(let _s=0,ar=Uo.length;_scs>=0&&csJs(Uo,0),gs=(Uo,cs)=>{for(let _s=0;_s{if(Yn(_s)||mo(_s)||$o(_s))Uo.setAttribute(cs,_s+"");else throw console.error("Invalid call to Attribute.set. Key ",cs,":: Value ",_s,":: Element ",Uo),new Error("Attribute value was not simple")},Qr=(Uo,cs,_s)=>{xs(Uo.dom,cs,_s)},cr=(Uo,cs)=>{Uo.dom.removeAttribute(cs)},ws=(Uo,cs)=>{const ar=(cs||document).createElement("div");if(ar.innerHTML=Uo,!ar.hasChildNodes()||ar.childNodes.length>1){const ta="HTML does not have a single root node";throw console.error(ta,Uo),new Error(ta)}return _r(ar.childNodes[0])},Fs=(Uo,cs)=>{const ar=(cs||document).createElement(Uo);return _r(ar)},Br=(Uo,cs)=>{const ar=(cs||document).createTextNode(Uo);return _r(ar)},_r=Uo=>{if(Uo==null)throw new Error("Node cannot be null or undefined");return{dom:Uo}},hs={fromHtml:ws,fromTag:Fs,fromText:Br,fromDom:_r,fromPoint:(Uo,cs,_s)=>Bo.from(Uo.dom.elementFromPoint(cs,_s)).map(_r)};var Qs=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),zo=tinymce.util.Tools.resolve("tinymce.util.URI");const el=Uo=>Uo.length>0,ga=Uo=>cs=>cs.options.get(Uo),Ca=Uo=>{const cs=Uo.options.register;cs("image_dimensions",{processor:"boolean",default:!0}),cs("image_advtab",{processor:"boolean",default:!1}),cs("image_uploadtab",{processor:"boolean",default:!0}),cs("image_prepend_url",{processor:"string",default:""}),cs("image_class_list",{processor:"object[]"}),cs("image_description",{processor:"boolean",default:!0}),cs("image_title",{processor:"boolean",default:!1}),cs("image_caption",{processor:"boolean",default:!1}),cs("image_list",{processor:_s=>{const ar=_s===!1||Yn(_s)||Do(_s,Jn)||wo(_s);return ar?{value:_s,valid:ar}:{valid:!1,message:"Must be false, a string, an array or a function."}},default:!1})},za=ga("image_dimensions"),Il=ga("image_advtab"),Zs=ga("image_uploadtab"),Sr=ga("image_prepend_url"),Us=ga("image_class_list"),fs=ga("image_description"),dr=ga("image_title"),Vr=ga("image_caption"),nr=ga("image_list"),Kr=ga("a11y_advanced_options"),ra=ga("automatic_uploads"),Ml=Uo=>el(Uo.options.get("images_upload_url")),xa=Uo=>Oo(Uo.options.get("images_upload_handler")),Nl=(Uo,cs)=>Math.max(parseInt(Uo,10),parseInt(cs,10)),Zc=Uo=>new Promise(cs=>{const _s=document.createElement("img"),ar=al=>{_s.onload=_s.onerror=null,_s.parentNode&&_s.parentNode.removeChild(_s),cs(al)};_s.onload=()=>{const al=Nl(_s.width,_s.clientWidth),ya=Nl(_s.height,_s.clientHeight),fu={width:al,height:ya};ar(Promise.resolve(fu))},_s.onerror=()=>{ar(Promise.reject(`Failed to get image dimensions for: ${Uo}`))};const ta=_s.style;ta.visibility="hidden",ta.position="fixed",ta.bottom=ta.left="0px",ta.width=ta.height="auto",document.body.appendChild(_s),_s.src=Uo}),cc=Uo=>(Uo&&(Uo=Uo.replace(/px$/,"")),Uo),gc=Uo=>(Uo.length>0&&/^[0-9]+$/.test(Uo)&&(Uo+="px"),Uo),nc=Uo=>{if(Uo.margin){const cs=String(Uo.margin).split(" ");switch(cs.length){case 1:Uo["margin-top"]=Uo["margin-top"]||cs[0],Uo["margin-right"]=Uo["margin-right"]||cs[0],Uo["margin-bottom"]=Uo["margin-bottom"]||cs[0],Uo["margin-left"]=Uo["margin-left"]||cs[0];break;case 2:Uo["margin-top"]=Uo["margin-top"]||cs[0],Uo["margin-right"]=Uo["margin-right"]||cs[1],Uo["margin-bottom"]=Uo["margin-bottom"]||cs[0],Uo["margin-left"]=Uo["margin-left"]||cs[1];break;case 3:Uo["margin-top"]=Uo["margin-top"]||cs[0],Uo["margin-right"]=Uo["margin-right"]||cs[1],Uo["margin-bottom"]=Uo["margin-bottom"]||cs[2],Uo["margin-left"]=Uo["margin-left"]||cs[1];break;case 4:Uo["margin-top"]=Uo["margin-top"]||cs[0],Uo["margin-right"]=Uo["margin-right"]||cs[1],Uo["margin-bottom"]=Uo["margin-bottom"]||cs[2],Uo["margin-left"]=Uo["margin-left"]||cs[3]}delete Uo.margin}return Uo},Ed=(Uo,cs)=>{const _s=nr(Uo);Yn(_s)?fetch(_s).then(ar=>{ar.ok&&ar.json().then(cs)}):wo(_s)?_s(cs):cs(_s)},Zl=(Uo,cs,_s)=>{const ar=()=>{_s.onload=_s.onerror=null,Uo.selection&&(Uo.selection.select(_s),Uo.nodeChanged())};_s.onload=()=>{!cs.width&&!cs.height&&za(Uo)&&Uo.dom.setAttribs(_s,{width:String(_s.clientWidth),height:String(_s.clientHeight)}),ar()},_s.onerror=ar},Vl=Uo=>new Promise((cs,_s)=>{const ar=new FileReader;ar.onload=()=>{cs(ar.result)},ar.onerror=()=>{var ta;_s((ta=ar.error)===null||ta===void 0?void 0:ta.message)},ar.readAsDataURL(Uo)}),Fc=Uo=>Uo.nodeName==="IMG"&&(Uo.hasAttribute("data-mce-object")||Uo.hasAttribute("data-mce-placeholder")),qa=(Uo,cs)=>{const _s=Uo.options.get;return zo.isDomSafe(cs,"img",{allow_html_data_urls:_s("allow_html_data_urls"),allow_script_urls:_s("allow_script_urls"),allow_svg_data_urls:_s("allow_svg_data_urls")})},Ya=Qs.DOM,kc=Uo=>Uo.style.marginLeft&&Uo.style.marginRight&&Uo.style.marginLeft===Uo.style.marginRight?cc(Uo.style.marginLeft):"",Yl=Uo=>Uo.style.marginTop&&Uo.style.marginBottom&&Uo.style.marginTop===Uo.style.marginBottom?cc(Uo.style.marginTop):"",rd=Uo=>Uo.style.borderWidth?cc(Uo.style.borderWidth):"",Al=(Uo,cs)=>{var _s;return Uo.hasAttribute(cs)&&(_s=Uo.getAttribute(cs))!==null&&_s!==void 0?_s:""},gd=Uo=>Uo.parentNode!==null&&Uo.parentNode.nodeName==="FIGURE",Rr=(Uo,cs,_s)=>{_s===""||_s===null?Uo.removeAttribute(cs):Uo.setAttribute(cs,_s)},Pl=Uo=>{const cs=Ya.create("figure",{class:"image"});Ya.insertAfter(cs,Uo),cs.appendChild(Uo),cs.appendChild(Ya.create("figcaption",{contentEditable:"true"},"Caption")),cs.contentEditable="false"},Su=Uo=>{const cs=Uo.parentNode;Oo(cs)&&(Ya.insertAfter(Uo,cs),Ya.remove(cs))},vs=Uo=>{gd(Uo)?Su(Uo):Pl(Uo)},Es=(Uo,cs)=>{const _s=Uo.getAttribute("style"),ar=cs(_s!==null?_s:"");ar.length>0?(Uo.setAttribute("style",ar),Uo.setAttribute("data-mce-style",ar)):Uo.removeAttribute("style")},Ks=(Uo,cs)=>(_s,ar,ta)=>{const al=_s.style;al[ar]?(al[ar]=gc(ta),Es(_s,cs)):Rr(_s,ar,ta)},pr=(Uo,cs)=>Uo.style[cs]?cc(Uo.style[cs]):Al(Uo,cs),ia=(Uo,cs)=>{const _s=gc(cs);Uo.style.marginLeft=_s,Uo.style.marginRight=_s},ka=(Uo,cs)=>{const _s=gc(cs);Uo.style.marginTop=_s,Uo.style.marginBottom=_s},Ma=(Uo,cs)=>{const _s=gc(cs);Uo.style.borderWidth=_s},Mr=(Uo,cs)=>{Uo.style.borderStyle=cs},il=Uo=>{var cs;return(cs=Uo.style.borderStyle)!==null&&cs!==void 0?cs:""},Na=Uo=>Oo(Uo)&&Uo.nodeName==="FIGURE",vl=Uo=>Uo.nodeName==="IMG",Rc=Uo=>Ya.getAttrib(Uo,"alt").length===0&&Ya.getAttrib(Uo,"role")==="presentation",Vc=Uo=>Rc(Uo)?"":Al(Uo,"alt"),xc=()=>({src:"",alt:"",title:"",width:"",height:"",class:"",style:"",caption:!1,hspace:"",vspace:"",border:"",borderStyle:"",isDecorative:!1}),zc=(Uo,cs)=>{var _s;const ar=document.createElement("img");return Rr(ar,"style",cs.style),(kc(ar)||cs.hspace!=="")&&ia(ar,cs.hspace),(Yl(ar)||cs.vspace!=="")&&ka(ar,cs.vspace),(rd(ar)||cs.border!=="")&&Ma(ar,cs.border),(il(ar)||cs.borderStyle!=="")&&Mr(ar,cs.borderStyle),Uo((_s=ar.getAttribute("style"))!==null&&_s!==void 0?_s:"")},ad=(Uo,cs)=>{const _s=document.createElement("img");if(br(Uo,{...cs,caption:!1},_s),Ts(_s,cs.alt,cs.isDecorative),cs.caption){const ar=Ya.create("figure",{class:"image"});return ar.appendChild(_s),ar.appendChild(Ya.create("figcaption",{contentEditable:"true"},"Caption")),ar.contentEditable="false",ar}else return _s},Bh=(Uo,cs)=>({src:Al(cs,"src"),alt:Vc(cs),title:Al(cs,"title"),width:pr(cs,"width"),height:pr(cs,"height"),class:Al(cs,"class"),style:Uo(Al(cs,"style")),caption:gd(cs),hspace:kc(cs),vspace:Yl(cs),border:rd(cs),borderStyle:il(cs),isDecorative:Rc(cs)}),Vu=(Uo,cs,_s,ar,ta)=>{_s[ar]!==cs[ar]&&ta(Uo,ar,String(_s[ar]))},Ts=(Uo,cs,_s)=>{if(_s){Ya.setAttrib(Uo,"role","presentation");const ar=hs.fromDom(Uo);Qr(ar,"alt","")}else{if(uo(cs)){const ar=hs.fromDom(Uo);cr(ar,"alt")}else{const ar=hs.fromDom(Uo);Qr(ar,"alt",cs)}Ya.getAttrib(Uo,"role")==="presentation"&&Ya.setAttrib(Uo,"role","")}},ks=(Uo,cs,_s)=>{(_s.alt!==cs.alt||_s.isDecorative!==cs.isDecorative)&&Ts(Uo,_s.alt,_s.isDecorative)},ir=(Uo,cs)=>(_s,ar,ta)=>{Uo(_s,ta),Es(_s,cs)},br=(Uo,cs,_s)=>{const ar=Bh(Uo,_s);Vu(_s,ar,cs,"caption",(ta,al,ya)=>vs(ta)),Vu(_s,ar,cs,"src",Rr),Vu(_s,ar,cs,"title",Rr),Vu(_s,ar,cs,"width",Ks("width",Uo)),Vu(_s,ar,cs,"height",Ks("height",Uo)),Vu(_s,ar,cs,"class",Rr),Vu(_s,ar,cs,"style",ir((ta,al)=>Rr(ta,"style",al),Uo)),Vu(_s,ar,cs,"hspace",ir(ia,Uo)),Vu(_s,ar,cs,"vspace",ir(ka,Uo)),Vu(_s,ar,cs,"border",ir(Ma,Uo)),Vu(_s,ar,cs,"borderStyle",ir(Mr,Uo)),ks(_s,ar,cs)},Aa=(Uo,cs)=>{const _s=Uo.dom.styles.parse(cs),ar=nc(_s),ta=Uo.dom.styles.parse(Uo.dom.styles.serialize(ar));return Uo.dom.styles.serialize(ta)},Ba=Uo=>{const cs=Uo.selection.getNode(),_s=Uo.dom.getParent(cs,"figure.image");return _s?Uo.dom.select("img",_s)[0]:cs&&(cs.nodeName!=="IMG"||Fc(cs))?null:cs},_l=(Uo,cs)=>{var _s;const ar=Uo.dom,ta=ps(Uo.schema.getTextBlockElements(),(ya,fu)=>!Uo.schema.isValidChild(fu,"figure")),al=ar.getParent(cs.parentNode,ya=>Yo(ta,ya.nodeName),Uo.getBody());return al&&(_s=ar.split(al,cs))!==null&&_s!==void 0?_s:cs},Hc=Uo=>{const cs=Ba(Uo);return cs?Bh(_s=>Aa(Uo,_s),cs):xc()},Ds=(Uo,cs)=>{const _s=ad(ta=>Aa(Uo,ta),cs);Uo.dom.setAttrib(_s,"data-mce-id","__mcenew"),Uo.focus(),Uo.selection.setContent(_s.outerHTML);const ar=Uo.dom.select('*[data-mce-id="__mcenew"]')[0];if(Uo.dom.setAttrib(ar,"data-mce-id",null),Na(ar)){const ta=_l(Uo,ar);Uo.selection.select(ta)}else Uo.selection.select(ar)},tl=(Uo,cs)=>{Uo.dom.setAttrib(cs,"src",cs.getAttribute("src"))},wu=(Uo,cs)=>{if(cs){const _s=Uo.dom.is(cs.parentNode,"figure.image")?cs.parentNode:cs;Uo.dom.remove(_s),Uo.focus(),Uo.nodeChanged(),Uo.dom.isEmpty(Uo.getBody())&&(Uo.setContent(""),Uo.selection.setCursorLocation())}},qu=(Uo,cs)=>{const _s=Ba(Uo);if(_s)if(br(ar=>Aa(Uo,ar),cs,_s),tl(Uo,_s),Na(_s.parentNode)){const ar=_s.parentNode;_l(Uo,ar),Uo.selection.select(_s.parentNode)}else Uo.selection.select(_s),Zl(Uo,cs,_s)},Md=(Uo,cs)=>{const _s=cs.src;return{...cs,src:qa(Uo,_s)?_s:""}},bc=(Uo,cs)=>{const _s=Ba(Uo);if(_s){const ta={...Bh(ya=>Aa(Uo,ya),_s),...cs},al=Md(Uo,ta);ta.src?qu(Uo,al):wu(Uo,_s)}else cs.src&&Ds(Uo,{...xc(),...cs})},Ud=(Uo=>(...cs)=>{if(cs.length===0)throw new Error("Can't merge zero objects");const _s={};for(let ar=0;arto(Uo)&&to(cs)?Ud(Uo,cs):cs);var ld=tinymce.util.Tools.resolve("tinymce.util.ImageUploader"),oc=tinymce.util.Tools.resolve("tinymce.util.Tools");const Dc=Uo=>Yn(Uo.value)?Uo.value:"",bd=Uo=>Yn(Uo.text)?Uo.text:Yn(Uo.title)?Uo.title:"",Nd=(Uo,cs)=>{const _s=[];return oc.each(Uo,ar=>{const ta=bd(ar);if(ar.menu!==void 0){const al=Nd(ar.menu,cs);_s.push({text:ta,items:al})}else{const al=cs(ar);_s.push({text:ta,value:al})}}),_s},ih=(Uo=Dc)=>cs=>cs?Bo.from(cs).map(_s=>Nd(_s,Uo)):Bo.none(),om=Uo=>ih(Dc)(Uo),sm=Uo=>rs(Uo,"items"),fc=(Uo,cs)=>gs(Uo,_s=>sm(_s)?fc(_s.items,cs):_s.value===cs?Bo.some(_s):Bo.none()),Jd={sanitizer:ih,sanitize:om,findEntry:(Uo,cs)=>Uo.bind(_s=>fc(_s,cs))},ef={makeTab:Uo=>({title:"Advanced",name:"advanced",items:[{type:"grid",columns:2,items:[{type:"input",label:"Vertical space",name:"vspace",inputMode:"numeric"},{type:"input",label:"Horizontal space",name:"hspace",inputMode:"numeric"},{type:"input",label:"Border width",name:"border",inputMode:"numeric"},{type:"listbox",name:"borderstyle",label:"Border style",items:[{text:"Select...",value:""},{text:"Solid",value:"solid"},{text:"Dotted",value:"dotted"},{text:"Dashed",value:"dashed"},{text:"Double",value:"double"},{text:"Groove",value:"groove"},{text:"Ridge",value:"ridge"},{text:"Inset",value:"inset"},{text:"Outset",value:"outset"},{text:"None",value:"none"},{text:"Hidden",value:"hidden"}]}]}]})},Cu=Uo=>{const cs=Jd.sanitizer(hu=>Uo.convertURL(hu.value||hu.url||"","src")),_s=new Promise(hu=>{Ed(Uo,Qf=>{hu(cs(Qf).map(cu=>sr([[{text:"None",value:""}],cu])))})}),ar=Jd.sanitize(Us(Uo)),ta=Il(Uo),al=Zs(Uo),ya=Ml(Uo),fu=xa(Uo),Lr=Hc(Uo),qc=fs(Uo),Ef=dr(Uo),ku=za(Uo),jc=Vr(Uo),Tm=Kr(Uo),El=ra(Uo),Hf=Bo.some(Sr(Uo)).filter(hu=>Yn(hu)&&hu.length>0);return _s.then(hu=>({image:Lr,imageList:hu,classList:ar,hasAdvTab:ta,hasUploadTab:al,hasUploadUrl:ya,hasUploadHandler:fu,hasDescription:qc,hasImageTitle:Ef,hasDimensions:ku,hasImageCaption:jc,prependURL:Hf,hasAccessibilityOptions:Tm,automaticUploads:El}))},Qc=Uo=>{const cs={name:"src",type:"urlinput",filetype:"image",label:"Source",picker_text:"Browse files"},_s=Uo.imageList.map(Ef=>({name:"images",type:"listbox",label:"Image list",items:Ef})),ar={name:"alt",type:"input",label:"Alternative description",enabled:!(Uo.hasAccessibilityOptions&&Uo.image.isDecorative)},ta={name:"title",type:"input",label:"Image title"},al={name:"dimensions",type:"sizeinput"},ya={type:"label",label:"Accessibility",items:[{name:"isDecorative",type:"checkbox",label:"Image is decorative"}]},fu=Uo.classList.map(Ef=>({name:"classes",type:"listbox",label:"Class",items:Ef})),Lr={type:"label",label:"Caption",items:[{type:"checkbox",name:"caption",label:"Show caption"}]},qc=Ef=>Ef?{type:"grid",columns:2}:{type:"panel"};return sr([[cs],_s.toArray(),Uo.hasAccessibilityOptions&&Uo.hasDescription?[ya]:[],Uo.hasDescription?[ar]:[],Uo.hasImageTitle?[ta]:[],Uo.hasDimensions?[al]:[],[{...qc(Uo.classList.isSome()&&Uo.hasImageCaption),items:sr([fu.toArray(),Uo.hasImageCaption?[Lr]:[]])}]])},qm={makeTab:Uo=>({title:"General",name:"general",items:Qc(Uo)}),makeItems:Qc},cd={makeTab:Uo=>({title:"Upload",name:"upload",items:[{type:"dropzone",name:"fileinput"}]})},vd=Uo=>({prevImage:Jd.findEntry(Uo.imageList,Uo.image.src),prevAlt:Uo.image.alt,open:!0}),ju=Uo=>({src:{value:Uo.src,meta:{}},images:Uo.src,alt:Uo.alt,title:Uo.title,dimensions:{width:Uo.width,height:Uo.height},classes:Uo.class,caption:Uo.caption,style:Uo.style,vspace:Uo.vspace,border:Uo.border,hspace:Uo.hspace,borderstyle:Uo.borderStyle,fileinput:[],isDecorative:Uo.isDecorative}),Xf=(Uo,cs)=>({src:Uo.src.value,alt:(Uo.alt===null||Uo.alt.length===0)&&cs?null:Uo.alt,title:Uo.title,width:Uo.dimensions.width,height:Uo.dimensions.height,class:Uo.classes,style:Uo.style,caption:Uo.caption,hspace:Uo.hspace,vspace:Uo.vspace,border:Uo.border,borderStyle:Uo.borderstyle,isDecorative:Uo.isDecorative}),Sh=(Uo,cs)=>/^(?:[a-zA-Z]+:)?\/\//.test(cs)?Bo.none():Uo.prependURL.bind(_s=>cs.substring(0,_s.length)!==_s?Bo.some(_s+cs):Bo.none()),Zd=(Uo,cs)=>{const _s=cs.getData();Sh(Uo,_s.src.value).each(ar=>{cs.setData({src:{value:ar,meta:_s.src.meta}})})},ah=(Uo,cs,_s)=>{Uo.hasDescription&&Yn(_s.alt)&&(cs.alt=_s.alt),Uo.hasAccessibilityOptions&&(cs.isDecorative=_s.isDecorative||cs.isDecorative||!1),Uo.hasImageTitle&&Yn(_s.title)&&(cs.title=_s.title),Uo.hasDimensions&&(Yn(_s.width)&&(cs.dimensions.width=_s.width),Yn(_s.height)&&(cs.dimensions.height=_s.height)),Yn(_s.class)&&Jd.findEntry(Uo.classList,_s.class).each(ar=>{cs.classes=ar.value}),Uo.hasImageCaption&&mo(_s.caption)&&(cs.caption=_s.caption),Uo.hasAdvTab&&(Yn(_s.style)&&(cs.style=_s.style),Yn(_s.vspace)&&(cs.vspace=_s.vspace),Yn(_s.border)&&(cs.border=_s.border),Yn(_s.hspace)&&(cs.hspace=_s.hspace),Yn(_s.borderstyle)&&(cs.borderstyle=_s.borderstyle))},lh=(Uo,cs)=>{const _s=cs.getData(),ar=_s.src.meta;if(ar!==void 0){const ta=Ud({},_s);ah(Uo,ta,ar),cs.setData(ta)}},Bp=(Uo,cs,_s,ar)=>{const ta=ar.getData(),al=ta.src.value,ya=ta.src.meta||{};!ya.width&&!ya.height&&cs.hasDimensions&&(el(al)?Uo.imageSize(al).then(fu=>{_s.open&&ar.setData({dimensions:fu})}).catch(fu=>console.error(fu)):ar.setData({dimensions:{width:"",height:""}}))},ch=(Uo,cs,_s)=>{const ar=_s.getData(),ta=Jd.findEntry(Uo.imageList,ar.src.value);cs.prevImage=ta,_s.setData({images:ta.map(al=>al.value).getOr("")})},bp=(Uo,cs,_s,ar)=>{Zd(cs,ar),lh(cs,ar),Bp(Uo,cs,_s,ar),ch(cs,_s,ar)},kf=(Uo,cs,_s,ar)=>{const ta=ar.getData(),al=Jd.findEntry(cs.imageList,ta.images);al.each(ya=>{ta.alt===""||_s.prevImage.map(Lr=>Lr.text===ta.alt).getOr(!1)?ya.value===""?ar.setData({src:ya,alt:_s.prevAlt}):ar.setData({src:ya,alt:ya.text}):ar.setData({src:ya})}),_s.prevImage=al,bp(Uo,cs,_s,ar)},Fh=(Uo,cs,_s,ar)=>{const ta=ar.getData();ar.block("Uploading image"),ko(ta.fileinput).fold(()=>{ar.unblock()},al=>{const ya=URL.createObjectURL(al),fu=()=>{ar.unblock(),URL.revokeObjectURL(ya)},Lr=qc=>{ar.setData({src:{value:qc,meta:{}}}),ar.showTab("general"),bp(Uo,cs,_s,ar)};Vl(al).then(qc=>{const Ef=Uo.createBlobCache(al,ya,qc);cs.automaticUploads?Uo.uploadImage(Ef).then(ku=>{Lr(ku.url),fu()}).catch(ku=>{fu(),Uo.alertErr(ku)}):(Uo.addToBlobCache(Ef),Lr(Ef.blobUri()),ar.unblock())})})},jm=(Uo,cs,_s)=>(ar,ta)=>{ta.name==="src"?bp(Uo,cs,_s,ar):ta.name==="images"?kf(Uo,cs,_s,ar):ta.name==="alt"?_s.prevAlt=ar.getData().alt:ta.name==="fileinput"?Fh(Uo,cs,_s,ar):ta.name==="isDecorative"&&ar.setEnabled("alt",!ar.getData().isDecorative)},Fp=Uo=>()=>{Uo.open=!1},Eg=Uo=>Uo.hasAdvTab||Uo.hasUploadUrl||Uo.hasUploadHandler?{type:"tabpanel",tabs:sr([[qm.makeTab(Uo)],Uo.hasAdvTab?[ef.makeTab(Uo)]:[],Uo.hasUploadTab&&(Uo.hasUploadUrl||Uo.hasUploadHandler)?[cd.makeTab(Uo)]:[]])}:{type:"panel",items:qm.makeItems(Uo)},ss=(Uo,cs,_s)=>ar=>{const ta=Ud(ju(cs.image),ar.getData()),al={...ta,style:zc(_s.normalizeCss,Xf(ta,!1))};Uo.execCommand("mceUpdateImage",!1,Xf(al,cs.hasAccessibilityOptions)),Uo.editorUpload.uploadImagesAuto(),ar.close()},As=Uo=>cs=>qa(Uo,cs)?Zc(Uo.documentBaseURI.toAbsolute(cs)).then(_s=>({width:String(_s.width),height:String(_s.height)})):Promise.resolve({width:"",height:""}),Ws=Uo=>(cs,_s,ar)=>{var ta;return Uo.editorUpload.blobCache.create({blob:cs,blobUri:_s,name:(ta=cs.name)===null||ta===void 0?void 0:ta.replace(/\.[^\.]+$/,""),filename:cs.name,base64:ar.split(",")[1]})},rr=Uo=>cs=>{Uo.editorUpload.blobCache.add(cs)},Fr=Uo=>cs=>{Uo.windowManager.alert(cs)},Wa=Uo=>cs=>Aa(Uo,cs),Nc=Uo=>cs=>Uo.dom.parseStyle(cs),xl=Uo=>(cs,_s)=>Uo.dom.serializeStyle(cs,_s),ul=Uo=>cs=>ld(Uo).upload([cs],!1).then(_s=>{var ar;return _s.length===0?Promise.reject("Failed to upload image"):_s[0].status===!1?Promise.reject((ar=_s[0].error)===null||ar===void 0?void 0:ar.message):_s[0]}),lu=Uo=>{const cs={imageSize:As(Uo),addToBlobCache:rr(Uo),createBlobCache:Ws(Uo),alertErr:Fr(Uo),normalizeCss:Wa(Uo),parseStyle:Nc(Uo),serializeStyle:xl(Uo),uploadImage:ul(Uo)};return{open:()=>{Cu(Uo).then(ar=>{const ta=vd(ar);return{title:"Insert/Edit Image",size:"normal",body:Eg(ar),buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:ju(ar.image),onSubmit:ss(Uo,ar,cs),onChange:jm(cs,ar,ta),onClose:Fp(ta)}}).then(Uo.windowManager.open)}}},Gl=Uo=>{Uo.addCommand("mceImage",lu(Uo).open),Uo.addCommand("mceUpdateImage",(cs,_s)=>{Uo.undoManager.transact(()=>bc(Uo,_s))})},Ru=Uo=>{const cs=Uo.attr("class");return Oo(cs)&&/\bimage\b/.test(cs)},xf=Uo=>cs=>{let _s=cs.length;const ar=ta=>{ta.attr("contenteditable",Uo?"true":null)};for(;_s--;){const ta=cs[_s];Ru(ta)&&(ta.attr("contenteditable",Uo?"false":null),oc.each(ta.getAll("figcaption"),ar))}},Hp=Uo=>{Uo.on("PreInit",()=>{Uo.parser.addNodeFilter("figure",xf(!0)),Uo.serializer.addNodeFilter("figure",xf(!1))})},aa=Uo=>cs=>{const _s=()=>{cs.setEnabled(Uo.selection.isEditable())};return Uo.on("NodeChange",_s),_s(),()=>{Uo.off("NodeChange",_s)}},Qp=Uo=>{Uo.ui.registry.addToggleButton("image",{icon:"image",tooltip:"Insert/edit image",onAction:lu(Uo).open,onSetup:cs=>{cs.setActive(Oo(Ba(Uo)));const _s=Uo.selection.selectorChangedWithUnbind("img:not([data-mce-object]):not([data-mce-placeholder]),figure.image",cs.setActive).unbind,ar=aa(Uo)(cs);return()=>{_s(),ar()}}}),Uo.ui.registry.addMenuItem("image",{icon:"image",text:"Image...",onAction:lu(Uo).open,onSetup:aa(Uo)}),Uo.ui.registry.addContextMenu("image",{update:cs=>Uo.selection.isEditable()&&(Na(cs)||vl(cs)&&!Fc(cs))?["image"]:[]})};var Bu=()=>{_n.add("image",Uo=>{Ca(Uo),Hp(Uo),Qp(Uo),Gl(Uo)})};Bu()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=(_o,Po,Xo)=>{var is;return Xo(_o,Po.prototype)?!0:((is=_o.constructor)===null||is===void 0?void 0:is.name)===Po.name},ke=_o=>{const Po=typeof _o;return _o===null?"null":Po==="object"&&Array.isArray(_o)?"array":Po==="object"&&Ce(_o,String,(Xo,is)=>is.isPrototypeOf(Xo))?"string":Po},$n=_o=>Po=>ke(Po)===_o,Hn=_o=>Po=>typeof Po===_o,zn=_o=>Po=>_o===Po,Zn=$n("string"),qn=$n("array"),Yn=Hn("boolean"),Jn=zn(void 0),to=_o=>_o==null,io=_o=>!to(_o),uo=Hn("function"),mo=Hn("number"),bo=()=>{},Oo=(_o,Po)=>Xo=>_o(Po(Xo)),wo=_o=>()=>_o,$o=_o=>_o,Do=(_o,Po)=>_o===Po;function xo(_o,...Po){return(...Xo)=>{const is=Po.concat(Xo);return _o.apply(null,is)}}const Bo=_o=>{_o()},Vo=wo(!1),Ko=wo(!0);class Mo{constructor(Po,Xo){this.tag=Po,this.value=Xo}static some(Po){return new Mo(!0,Po)}static none(){return Mo.singletonNone}fold(Po,Xo){return this.tag?Xo(this.value):Po()}isSome(){return this.tag}isNone(){return!this.tag}map(Po){return this.tag?Mo.some(Po(this.value)):Mo.none()}bind(Po){return this.tag?Po(this.value):Mo.none()}exists(Po){return this.tag&&Po(this.value)}forall(Po){return!this.tag||Po(this.value)}filter(Po){return!this.tag||Po(this.value)?this:Mo.none()}getOr(Po){return this.tag?this.value:Po}or(Po){return this.tag?this:Po}getOrThunk(Po){return this.tag?this.value:Po()}orThunk(Po){return this.tag?this:Po()}getOrDie(Po){if(this.tag)return this.value;throw new Error(Po??"Called getOrDie on None")}static from(Po){return io(Po)?Mo.some(Po):Mo.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Po){this.tag&&Po(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Mo.singletonNone=new Mo(!1);const es=Object.keys,ls=Object.hasOwnProperty,ps=(_o,Po)=>{const Xo=es(_o);for(let is=0,Ms=Xo.length;is(Po,Xo)=>{_o[Xo]=Po},Yo=(_o,Po,Xo,is)=>{ps(_o,(Ms,vr)=>{(Po(Ms,vr)?Xo:is)(Ms,vr)})},Ys=(_o,Po)=>{const Xo={};return Yo(_o,Po,rs(Xo),bo),Xo},sr=(_o,Po)=>{const Xo=[];return ps(_o,(is,Ms)=>{Xo.push(Po(is,Ms))}),Xo},Js=_o=>sr(_o,$o),ko=_o=>es(_o).length,gs=(_o,Po)=>xs(_o,Po)?Mo.from(_o[Po]):Mo.none(),xs=(_o,Po)=>ls.call(_o,Po),Qr=(_o,Po)=>xs(_o,Po)&&_o[Po]!==void 0&&_o[Po]!==null,cr=_o=>{for(const Po in _o)if(ls.call(_o,Po))return!1;return!0},ws=Array.prototype.indexOf,Fs=Array.prototype.push,Br=(_o,Po)=>ws.call(_o,Po),_r=(_o,Po)=>Br(_o,Po)>-1,ha=(_o,Po)=>{for(let Xo=0,is=_o.length;Xo{const Xo=[];for(let is=0;is<_o;is++)Xo.push(Po(is));return Xo},Qs=(_o,Po)=>{const Xo=_o.length,is=new Array(Xo);for(let Ms=0;Ms{for(let Xo=0,is=_o.length;Xo{for(let Xo=_o.length-1;Xo>=0;Xo--){const is=_o[Xo];Po(is,Xo)}},ga=(_o,Po)=>{const Xo=[],is=[];for(let Ms=0,vr=_o.length;Ms{const Xo=[];for(let is=0,Ms=_o.length;is(el(_o,(is,Ms)=>{Xo=Po(Xo,is,Ms)}),Xo),Il=(_o,Po,Xo)=>(zo(_o,(is,Ms)=>{Xo=Po(Xo,is,Ms)}),Xo),Zs=(_o,Po,Xo)=>{for(let is=0,Ms=_o.length;isZs(_o,Po,Vo),Us=_o=>{const Po=[];for(let Xo=0,is=_o.length;XoUs(Qs(_o,Po)),dr=(_o,Po)=>{for(let Xo=0,is=_o.length;Xo{const Xo={};for(let is=0,Ms=_o.length;isPo>=0&&Po<_o.length?Mo.some(_o[Po]):Mo.none(),Kr=_o=>nr(_o,0),ra=_o=>nr(_o,_o.length-1),Ml=(_o,Po)=>{for(let Xo=0;Xo<_o.length;Xo++){const is=Po(_o[Xo],Xo);if(is.isSome())return is}return Mo.none()},xa=8,Nl=9,Zc=11,cc=1,gc=3,nc=(_o,Po)=>{const is=(Po||document).createElement("div");if(is.innerHTML=_o,!is.hasChildNodes()||is.childNodes.length>1){const Ms="HTML does not have a single root node";throw console.error(Ms,_o),new Error(Ms)}return Vl(is.childNodes[0])},Ed=(_o,Po)=>{const is=(Po||document).createElement(_o);return Vl(is)},Zl=(_o,Po)=>{const is=(Po||document).createTextNode(_o);return Vl(is)},Vl=_o=>{if(_o==null)throw new Error("Node cannot be null or undefined");return{dom:_o}},qa={fromHtml:nc,fromTag:Ed,fromText:Zl,fromDom:Vl,fromPoint:(_o,Po,Xo)=>Mo.from(_o.dom.elementFromPoint(Po,Xo)).map(Vl)},Ya=(_o,Po)=>{const Xo=_o.dom;if(Xo.nodeType!==cc)return!1;{const is=Xo;if(is.matches!==void 0)return is.matches(Po);if(is.msMatchesSelector!==void 0)return is.msMatchesSelector(Po);if(is.webkitMatchesSelector!==void 0)return is.webkitMatchesSelector(Po);if(is.mozMatchesSelector!==void 0)return is.mozMatchesSelector(Po);throw new Error("Browser lacks native selectors")}},kc=_o=>_o.nodeType!==cc&&_o.nodeType!==Nl&&_o.nodeType!==Zc||_o.childElementCount===0,Yl=(_o,Po)=>{const Xo=Po===void 0?document:Po.dom;return kc(Xo)?[]:Qs(Xo.querySelectorAll(_o),qa.fromDom)},rd=(_o,Po)=>{const Xo=Po===void 0?document:Po.dom;return kc(Xo)?Mo.none():Mo.from(Xo.querySelector(_o)).map(qa.fromDom)},Al=(_o,Po)=>_o.dom===Po.dom,gd=Ya;typeof window<"u"||Function("return this;")();const Rr=_o=>_o.dom.nodeName.toLowerCase(),Pl=_o=>_o.dom.nodeType,Su=_o=>Po=>Pl(Po)===_o,vs=_o=>Pl(_o)===xa||Rr(_o)==="#comment",Es=Su(cc),Ks=Su(gc),pr=Su(Nl),ia=Su(Zc),ka=_o=>Po=>Es(Po)&&Rr(Po)===_o,Ma=_o=>qa.fromDom(_o.dom.ownerDocument),Mr=_o=>pr(_o)?_o:Ma(_o),il=_o=>Mo.from(_o.dom.parentNode).map(qa.fromDom),Na=(_o,Po)=>{const Xo=uo(Po)?Po:Vo;let is=_o.dom;const Ms=[];for(;is.parentNode!==null&&is.parentNode!==void 0;){const vr=is.parentNode,zr=qa.fromDom(vr);if(Ms.push(zr),Xo(zr)===!0)break;is=vr}return Ms},vl=_o=>Mo.from(_o.dom.previousSibling).map(qa.fromDom),Rc=_o=>Mo.from(_o.dom.nextSibling).map(qa.fromDom),Vc=_o=>Qs(_o.dom.childNodes,qa.fromDom),xc=(_o,Po)=>{const Xo=_o.dom.childNodes;return Mo.from(Xo[Po]).map(qa.fromDom)},zc=_o=>xc(_o,0),ad=_o=>ia(_o)&&io(_o.dom.host),Vu=uo(Element.prototype.attachShadow)&&uo(Node.prototype.getRootNode)?_o=>qa.fromDom(_o.dom.getRootNode()):Mr,Ts=_o=>{const Po=Vu(_o);return ad(Po)?Mo.some(Po):Mo.none()},ks=_o=>qa.fromDom(_o.dom.host),ir=_o=>{const Po=Ks(_o)?_o.dom.parentNode:_o.dom;if(Po==null||Po.ownerDocument===null)return!1;const Xo=Po.ownerDocument;return Ts(qa.fromDom(Po)).fold(()=>Xo.body.contains(Po),Oo(ir,ks))};var br=(_o,Po,Xo,is,Ms)=>_o(Xo,is)?Mo.some(Xo):uo(Ms)&&Ms(Xo)?Mo.none():Po(Xo,is,Ms);const Aa=(_o,Po,Xo)=>{let is=_o.dom;const Ms=uo(Xo)?Xo:Vo;for(;is.parentNode;){is=is.parentNode;const vr=qa.fromDom(is);if(Po(vr))return Mo.some(vr);if(Ms(vr))break}return Mo.none()},Ba=(_o,Po,Xo)=>br((Ms,vr)=>vr(Ms),Aa,_o,Po,Xo),_l=(_o,Po)=>{const Xo=Ms=>Po(qa.fromDom(Ms));return Sr(_o.dom.childNodes,Xo).map(qa.fromDom)},Hc=(_o,Po,Xo)=>Aa(_o,is=>Ya(is,Po),Xo),Ds=(_o,Po)=>_l(_o,Xo=>Ya(Xo,Po)),tl=(_o,Po)=>rd(Po,_o),wu=(_o,Po,Xo)=>br((Ms,vr)=>Ya(Ms,vr),Hc,_o,Po,Xo),qu=_o=>wu(_o,"[contenteditable]"),Md=(_o,Po=!1)=>ir(_o)?_o.dom.isContentEditable:qu(_o).fold(wo(Po),Xo=>bc(Xo)==="true"),bc=_o=>_o.dom.contentEditable,nm=_o=>_o.nodeName.toLowerCase(),Ff=_o=>qa.fromDom(_o.getBody()),Ud=_o=>Po=>Al(Po,Ff(_o)),ld=_o=>_o?_o.replace(/px$/,""):"",oc=_o=>/^\d+(\.\d+)?$/.test(_o)?_o+"px":_o,Dc=_o=>qa.fromDom(_o.selection.getStart()),bd=_o=>qa.fromDom(_o.selection.getEnd()),Nd=_o=>Ba(_o,ka("table")).forall(Md),ih=(_o,Po)=>Ca(Vc(_o),Po),om=(_o,Po)=>{let Xo=[];return zo(Vc(_o),is=>{Po(is)&&(Xo=Xo.concat([is])),Xo=Xo.concat(om(is,Po))}),Xo},sm=(_o,Po)=>ih(_o,Xo=>Ya(Xo,Po)),fc=(_o,Po)=>Yl(Po,_o),Td=(_o,Po,Xo)=>{if(Zn(Xo)||Yn(Xo)||mo(Xo))_o.setAttribute(Po,Xo+"");else throw console.error("Invalid call to Attribute.set. Key ",Po,":: Value ",Xo,":: Element ",_o),new Error("Attribute value was not simple")},Jd=(_o,Po,Xo)=>{Td(_o.dom,Po,Xo)},Em=(_o,Po)=>{const Xo=_o.dom;ps(Po,(is,Ms)=>{Td(Xo,Ms,is)})},ef=(_o,Po)=>{const Xo=_o.dom.getAttribute(Po);return Xo===null?void 0:Xo},Cu=(_o,Po)=>Mo.from(ef(_o,Po)),Qc=(_o,Po)=>{_o.dom.removeAttribute(Po)},Cf=_o=>Il(_o.dom.attributes,(Po,Xo)=>(Po[Xo.name]=Xo.value,Po),{}),qm=(_o,Po,Xo=Do)=>_o.exists(is=>Xo(is,Po)),Oc=_o=>{const Po=[],Xo=is=>{Po.push(is)};for(let is=0;is<_o.length;is++)_o[is].each(Xo);return Po},cd=(_o,Po,Xo)=>_o.isSome()&&Po.isSome()?Mo.some(Xo(_o.getOrDie(),Po.getOrDie())):Mo.none(),vd=_o=>_o.bind($o),ju=(_o,Po)=>_o?Mo.some(Po):Mo.none(),Xf=(_o,Po)=>_o.substring(Po),Sh=(_o,Po,Xo)=>Po===""||_o.length>=Po.length&&_o.substr(Xo,Xo+Po.length)===Po,Zd=(_o,Po)=>ah(_o,Po)?Xf(_o,Po.length):_o,ah=(_o,Po)=>Sh(_o,Po,0),Bp=(_o=>Po=>Po.replace(_o,""))(/^\s+|\s+$/g),ch=_o=>_o.length>0,bp=_o=>!ch(_o),kf=(_o,Po=10)=>{const Xo=parseInt(_o,Po);return isNaN(Xo)?Mo.none():Mo.some(Xo)},Fh=_o=>{const Po=parseFloat(_o);return isNaN(Po)?Mo.none():Mo.some(Po)},jm=_o=>_o.style!==void 0&&uo(_o.style.getPropertyValue),Fp=(_o,Po,Xo)=>{if(!Zn(Xo))throw console.error("Invalid call to CSS.set. Property ",Po,":: Value ",Xo,":: Element ",_o),new Error("CSS value must be a string: "+Xo);jm(_o)&&_o.style.setProperty(Po,Xo)},Eg=(_o,Po)=>{jm(_o)&&_o.style.removeProperty(Po)},ss=(_o,Po,Xo)=>{const is=_o.dom;Fp(is,Po,Xo)},As=(_o,Po)=>{const Xo=_o.dom,Ms=window.getComputedStyle(Xo).getPropertyValue(Po);return Ms===""&&!ir(_o)?Ws(Xo,Po):Ms},Ws=(_o,Po)=>jm(_o)?_o.style.getPropertyValue(Po):"",rr=(_o,Po)=>{const Xo=_o.dom,is=Ws(Xo,Po);return Mo.from(is).filter(Ms=>Ms.length>0)},Fr=(_o,Po)=>{const Xo=_o.dom;Eg(Xo,Po),qm(Cu(_o,"style").map(Bp),"")&&Qc(_o,"style")},Wa=(_o,Po,Xo=0)=>Cu(_o,Po).map(is=>parseInt(is,10)).getOr(Xo),Nc=(_o,Po)=>xl(_o,Po,Ko),xl=(_o,Po,Xo)=>fs(Vc(_o),is=>Ya(is,Po)?Xo(is)?[is]:[]:xl(is,Po,Xo)),ul=["tfoot","thead","tbody","colgroup"],lu=_o=>_r(ul,_o),Gl=(_o,Po)=>({rows:_o,columns:Po}),Ru=(_o,Po,Xo)=>({element:_o,rowspan:Po,colspan:Xo}),xf=(_o,Po,Xo,is,Ms,vr)=>({element:_o,rowspan:Po,colspan:Xo,row:is,column:Ms,isLocked:vr}),Hp=(_o,Po,Xo)=>({element:_o,cells:Po,section:Xo}),aa=(_o,Po,Xo,is)=>({startRow:_o,startCol:Po,finishRow:Xo,finishCol:is}),Qp=(_o,Po,Xo)=>({element:_o,colspan:Po,column:Xo}),Bu=(_o,Po)=>({element:_o,columns:Po}),Uo=(_o,Po,Xo=Vo)=>{if(Xo(Po))return Mo.none();if(_r(_o,Rr(Po)))return Mo.some(Po);const is=Ms=>Ya(Ms,"table")||Xo(Ms);return Hc(Po,_o.join(","),is)},cs=(_o,Po)=>Uo(["td","th"],_o,Po),_s=_o=>Nc(_o,"th,td"),ar=_o=>Ya(_o,"colgroup")?sm(_o,"col"):fs(ya(_o),Po=>sm(Po,"col")),ta=(_o,Po)=>wu(_o,"table",Po),al=_o=>Nc(_o,"tr"),ya=_o=>ta(_o).fold(wo([]),Po=>sm(Po,"colgroup")),fu=(_o,Po)=>Qs(_o,Xo=>{if(Rr(Xo)==="colgroup"){const is=Qs(ar(Xo),Ms=>{const vr=Wa(Ms,"span",1);return Ru(Ms,1,vr)});return Hp(Xo,is,"colgroup")}else{const is=Qs(_s(Xo),Ms=>{const vr=Wa(Ms,"rowspan",1),zr=Wa(Ms,"colspan",1);return Ru(Ms,vr,zr)});return Hp(Xo,is,Po(Xo))}}),Lr=_o=>il(_o).map(Po=>{const Xo=Rr(Po);return lu(Xo)?Xo:"tbody"}).getOr("tbody"),qc=_o=>{const Po=al(_o),is=[...ya(_o),...Po];return fu(is,Lr)},Ef="data-snooker-locked-cols",ku=_o=>Cu(_o,Ef).bind(Po=>Mo.from(Po.match(/\d+/g))).map(Po=>Vr(Po,Ko)),jc=(_o,Po)=>_o+","+Po,Tm=(_o,Po,Xo)=>Mo.from(_o.access[jc(Po,Xo)]),El=(_o,Po,Xo)=>{const is=Hf(_o,Ms=>Xo(Po,Ms.element));return is.length>0?Mo.some(is[0]):Mo.none()},Hf=(_o,Po)=>{const Xo=fs(_o.all,is=>is.cells);return Ca(Xo,Po)},hu=_o=>{const Po={};let Xo=0;return zo(_o.cells,is=>{const Ms=is.colspan;hs(Ms,vr=>{const zr=Xo+vr;Po[zr]=Qp(is.element,Ms,zr)}),Xo+=Ms}),Po},Qf=_o=>{const Po={},Xo=[],Ms=Kr(_o).map(Uh=>Uh.element).bind(ta).bind(ku).getOr({});let vr=0,zr=0,Jr=0;const{pass:La,fail:Ol}=ga(_o,Uh=>Uh.section==="colgroup");zo(Ol,Uh=>{const Jf=[];zo(Uh.cells,hm=>{let Jp=0;for(;Po[jc(Jr,Jp)]!==void 0;)Jp++;const wp=Qr(Ms,Jp.toString()),B1=xf(hm.element,hm.rowspan,hm.colspan,Jr,Jp,wp);for(let Sc=0;Sc{const Jf=hu(Uh);return{colgroups:[Bu(Uh.element,Js(Jf))],columns:Jf}}).getOrThunk(()=>({colgroups:[],columns:{}}));return{grid:Gl(vr,zr),access:Po,all:Xo,columns:Xu,colgroups:Ac}},Am={fromTable:_o=>{const Po=qc(_o);return Qf(Po)},generate:Qf,getAt:Tm,findItem:El,filterItems:Hf,justCells:_o=>fs(_o.all,Po=>Po.cells),justColumns:_o=>Js(_o.columns),hasColumns:_o=>es(_o.columns).length>0,getColumnAt:(_o,Po)=>Mo.from(_o.columns[Po])};var Pm=tinymce.util.Tools.resolve("tinymce.util.Tools");const uh=(_o,Po,Xo)=>{const is=_o.select("td,th",Po);let Ms;for(let vr=0;vr{Pm.each("left center right".split(" "),is=>{is!==Xo&&_o.formatter.remove("align"+is,{},Po)}),Xo&&_o.formatter.apply("align"+Xo,{},Po)},A1=(_o,Po,Xo)=>{Pm.each("top middle bottom".split(" "),is=>{is!==Xo&&_o.formatter.remove("valign"+is,{},Po)}),Xo&&_o.formatter.apply("valign"+Xo,{},Po)},ql=(_o,Po,Xo)=>{_o.dispatch("TableModified",{...Xo,table:Po})},dd=(_o,Po)=>Fh(_o).getOr(Po),yd=(_o,Po,Xo)=>dd(As(_o,Po),Xo),mv=(_o,Po,Xo,is)=>{const Ms=yd(_o,`padding-${Xo}`,0),vr=yd(_o,`padding-${is}`,0),zr=yd(_o,`border-${Xo}-width`,0),Jr=yd(_o,`border-${is}-width`,0);return Po-Ms-vr-zr-Jr},Du=(_o,Po)=>{const Xo=_o.dom,is=Xo.getBoundingClientRect().width||Xo.offsetWidth;return Po==="border-box"?is:mv(_o,is,"left","right")},qd=_o=>Du(_o,"content-box");var Eb=tinymce.util.Tools.resolve("tinymce.Env");const Tb="tableprops tabledelete | tableinsertrowbefore tableinsertrowafter tabledeleterow | tableinsertcolbefore tableinsertcolafter tabledeletecol",Qh=hs(5,_o=>{const Po=`${_o+1}px`;return{title:Po,value:Po}}),Xg=Qs(["Solid","Dotted","Dashed","Double","Groove","Ridge","Inset","Outset","None","Hidden"],_o=>({title:_o,value:_o.toLowerCase()})),Gc="100%",im=_o=>{var Po;const Xo=_o.dom,is=(Po=Xo.getParent(_o.selection.getStart(),Xo.isBlock))!==null&&Po!==void 0?Po:_o.getBody();return qd(qa.fromDom(is))+"px"},Tf=(_o,Po)=>g0(_o)||!$m(_o)?Po:p0(_o)?{...Po,width:im(_o)}:{...Po,width:Gc},Ld=(_o,Po)=>g0(_o)||$m(_o)?Po:p0(_o)?{...Po,width:im(_o)}:{...Po,width:Gc},Od=_o=>Po=>Po.options.get(_o),Mu=_o=>{const Po=_o.options.register;Po("table_border_widths",{processor:"object[]",default:Qh}),Po("table_border_styles",{processor:"object[]",default:Xg}),Po("table_cell_advtab",{processor:"boolean",default:!0}),Po("table_row_advtab",{processor:"boolean",default:!0}),Po("table_advtab",{processor:"boolean",default:!0}),Po("table_appearance_options",{processor:"boolean",default:!0}),Po("table_grid",{processor:"boolean",default:!Eb.deviceType.isTouch()}),Po("table_cell_class_list",{processor:"object[]",default:[]}),Po("table_row_class_list",{processor:"object[]",default:[]}),Po("table_class_list",{processor:"object[]",default:[]}),Po("table_toolbar",{processor:"string",default:Tb}),Po("table_background_color_map",{processor:"object[]",default:[]}),Po("table_border_color_map",{processor:"object[]",default:[]})},Vh=Od("table_sizing_mode"),zp=Od("table_border_widths"),Tg=Od("table_border_styles"),Ab=Od("table_cell_advtab"),P1=Od("table_row_advtab"),Yf=Od("table_advtab"),$1=Od("table_appearance_options"),jd=Od("table_grid"),$m=Od("table_style_by_css"),R1=Od("table_cell_class_list"),Xm=Od("table_row_class_list"),Yg=Od("table_class_list"),Vf=Od("table_toolbar"),Gg=Od("table_background_color_map"),yp=Od("table_border_color_map"),p0=_o=>Vh(_o)==="fixed",g0=_o=>Vh(_o)==="responsive",Wp=_o=>{const Po=_o.options,Xo=Po.get("table_default_styles");return Po.isSet("table_default_styles")?Xo:Tf(_o,Xo)},zf=_o=>{const Po=_o.options,Xo=Po.get("table_default_attributes");return Po.isSet("table_default_attributes")?Xo:Ld(_o,Xo)},b0=(_o,Po)=>Po.column>=_o.startCol&&Po.column+Po.colspan-1<=_o.finishCol&&Po.row>=_o.startRow&&Po.row+Po.rowspan-1<=_o.finishRow,Cs=(_o,Po)=>{let Xo=!0;const is=xo(b0,Po);for(let Ms=Po.startRow;Ms<=Po.finishRow;Ms++)for(let vr=Po.startCol;vr<=Po.finishCol;vr++)Xo=Xo&&Am.getAt(_o,Ms,vr).exists(is);return Xo?Mo.some(Po):Mo.none()},Up=(_o,Po)=>aa(Math.min(_o.row,Po.row),Math.min(_o.column,Po.column),Math.max(_o.row+_o.rowspan-1,Po.row+Po.rowspan-1),Math.max(_o.column+_o.colspan-1,Po.column+Po.colspan-1)),zh=(_o,Po,Xo)=>{const is=Am.findItem(_o,Po,Al),Ms=Am.findItem(_o,Xo,Al);return is.bind(vr=>Ms.map(zr=>Up(vr,zr)))},Kg=(_o,Po,Xo)=>zh(_o,Po,Xo).bind(is=>Cs(_o,is)),v0=(_o,Po,Xo)=>{const is=Jg(_o);return Kg(is,Po,Xo)},Jg=Am.fromTable,Vs=(_o,Po)=>{il(_o).each(is=>{is.dom.insertBefore(Po.dom,_o.dom)})},Dr=(_o,Po)=>{Rc(_o).fold(()=>{il(_o).each(Ms=>{Fa(Ms,Po)})},is=>{Vs(is,Po)})},Tr=(_o,Po)=>{zc(_o).fold(()=>{Fa(_o,Po)},is=>{_o.dom.insertBefore(Po.dom,is.dom)})},Fa=(_o,Po)=>{_o.dom.appendChild(Po.dom)},zl=(_o,Po)=>{Vs(_o,Po),Fa(Po,_o)},_c=(_o,Po)=>{zo(Po,(Xo,is)=>{const Ms=is===0?_o:Po[is-1];Dr(Ms,Xo)})},Wc=(_o,Po)=>{zo(Po,Xo=>{Fa(_o,Xo)})},Uc=_o=>{const Po=_o.dom;Po.parentNode!==null&&Po.parentNode.removeChild(Po)},D1=_o=>{const Po=Vc(_o);Po.length>0&&_c(_o,Po),Uc(_o)},_d=((_o,Po)=>{const Xo=vr=>{if(!_o(vr))throw new Error("Can only get "+Po+" value of a "+Po+" node");return is(vr).getOr("")},is=vr=>_o(vr)?Mo.from(vr.dom.nodeValue):Mo.none();return{get:Xo,getOption:is,set:(vr,zr)=>{if(!_o(vr))throw new Error("Can only set raw "+Po+" value of a "+Po+" node");vr.dom.nodeValue=zr}}})(Ks,"text"),Wh=_o=>_d.get(_o),y0=(_o,Po)=>_d.set(_o,Po);var Id=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","li","table","thead","tbody","tfoot","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],Ku=()=>{const _o=Ol=>qa.fromDom(Ol.dom.cloneNode(!1)),Po=Ol=>Mr(Ol).dom,Xo=Ol=>Es(Ol)?Rr(Ol)==="body"?!0:_r(Id,Rr(Ol)):!1,is=Ol=>Es(Ol)?_r(["br","img","hr","input"],Rr(Ol)):!1,Ms=Ol=>Es(Ol)&&ef(Ol,"contenteditable")==="false",vr=(Ol,Xu)=>Ol.dom.compareDocumentPosition(Xu.dom),zr=(Ol,Xu)=>{const Ac=Cf(Ol);Em(Xu,Ac)},Jr=Ol=>{const Xu=Rr(Ol);return _r(["script","noscript","iframe","noframes","noembed","title","style","textarea","xmp"],Xu)},La=Ol=>Es(Ol)?Cu(Ol,"lang"):Mo.none();return{up:wo({selector:Hc,closest:wu,predicate:Aa,all:Na}),down:wo({selector:fc,predicate:om}),styles:wo({get:As,getRaw:rr,set:ss,remove:Fr}),attrs:wo({get:ef,set:Jd,remove:Qc,copyTo:zr}),insert:wo({before:Vs,after:Dr,afterAll:_c,append:Fa,appendAll:Wc,prepend:Tr,wrap:zl}),remove:wo({unwrap:D1,remove:Uc}),create:wo({nu:qa.fromTag,clone:_o,text:qa.fromText}),query:wo({comparePosition:vr,prevSibling:vl,nextSibling:Rc}),property:wo({children:Vc,name:Rr,parent:il,document:Po,isText:Ks,isComment:vs,isElement:Es,isSpecial:Jr,getLanguage:La,getText:Wh,setText:y0,isBoundary:Xo,isEmptyTag:is,isNonEditable:Ms}),eq:Al,is:gd}};const Rm=(_o,Po,Xo,is)=>{const Ms=Xo[0],vr=Xo.slice(1);return is(_o,Po,Ms,vr)},iu=(_o,Po,Xo)=>Xo.length>0?Rm(_o,Po,Xo,am):Mo.none(),am=(_o,Po,Xo,is)=>{const Ms=Po(_o,Xo);return za(is,(vr,zr)=>{const Jr=Po(_o,zr);return Af(_o,vr,Jr)},Ms)},Af=(_o,Po,Xo)=>Po.bind(is=>Xo.filter(xo(_o.eq,is))),e1=iu,gv=Ku(),M1=(_o,Po)=>e1(gv,(Xo,is)=>_o(is),Po),Pb=_o=>Hc(_o,"table"),Op=(_o,Po)=>{const Xo=fc(_o,Po);return Xo.length>0?Mo.some(Xo):Mo.none()},Wf=(_o,Po,Xo)=>tl(_o,Po).bind(is=>tl(_o,Xo).bind(Ms=>M1(Pb,[is,Ms]).map(vr=>({first:is,last:Ms,table:vr})))),N1=(_o,Po)=>Op(_o,Po),Ny=(_o,Po,Xo)=>Wf(_o,Po,Xo).bind(is=>{const Ms=La=>Al(_o,La),vr="thead,tfoot,tbody,table",zr=Hc(is.first,vr,Ms),Jr=Hc(is.last,vr,Ms);return zr.bind(La=>Jr.bind(Ol=>Al(La,Ol)?v0(is.table,is.first,is.last):Mo.none()))}),t1=_o=>Qs(_o,qa.fromDom),$b="data-mce-selected",Zp="td["+$b+"],th["+$b+"]",qp="data-mce-first-selected",Ag="td["+qp+"],th["+qp+"]",Kc="data-mce-last-selected",au="td["+Kc+"],th["+Kc+"]",cf={selected:$b,selectedSelector:Zp,firstSelected:qp,firstSelectedSelector:Ag,lastSelected:Kc,lastSelectedSelector:au},O0=_o=>ta(_o).bind(Po=>N1(Po,cf.firstSelectedSelector)).fold(wo(_o),Po=>Po[0]),bv=_o=>(Po,Xo)=>{const is=Rr(Po),Ms=is==="col"||is==="colgroup"?O0(Po):Po;return wu(Ms,_o,Xo)},tf=bv("th,td,caption"),lm=bv("th,td"),uf=_o=>t1(_o.model.table.getSelectedCells()),cm=(_o,Po)=>{const Xo=lm(_o),is=Xo.bind(Ms=>ta(Ms)).map(Ms=>al(Ms));return cd(Xo,is,(Ms,vr)=>Ca(vr,zr=>ha(t1(zr.dom.cells),Jr=>ef(Jr,Po)==="1"||Al(Jr,Ms)))).getOr([])},Rb=[{text:"None",value:""},{text:"Top",value:"top"},{text:"Middle",value:"middle"},{text:"Bottom",value:"bottom"}],yl=_o=>({value:df(_o)}),dh=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,jp=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,Sd=_o=>dh.test(_o)||jp.test(_o),df=_o=>Zd(_o,"#").toUpperCase(),vv=_o=>Sd(_o)?Mo.some({value:df(_o)}):Mo.none(),ff=_o=>{const Po=_o.toString(16);return(Po.length===1?"0"+Po:Po).toUpperCase()},Ju=_o=>{const Po=ff(_o.red)+ff(_o.green)+ff(_o.blue);return yl(Po)},wh=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,fd=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,Ym=(_o,Po,Xo,is)=>({red:_o,green:Po,blue:Xo,alpha:is}),_p=(_o,Po,Xo,is)=>{const Ms=parseInt(_o,10),vr=parseInt(Po,10),zr=parseInt(Xo,10),Jr=parseFloat(is);return Ym(Ms,vr,zr,Jr)},xu=_o=>{if(_o==="transparent")return Mo.some(Ym(0,0,0,0));const Po=wh.exec(_o);if(Po!==null)return Mo.some(_p(Po[1],Po[2],Po[3],"1"));const Xo=fd.exec(_o);return Xo!==null?Mo.some(_p(Xo[1],Xo[2],Xo[3],Xo[4])):Mo.none()},ed=_o=>vv(_o).orThunk(()=>xu(_o).map(Ju)).getOrThunk(()=>{const Po=document.createElement("canvas");Po.height=1,Po.width=1;const Xo=Po.getContext("2d");Xo.clearRect(0,0,Po.width,Po.height),Xo.fillStyle="#FFFFFF",Xo.fillStyle=_o,Xo.fillRect(0,0,1,1);const is=Xo.getImageData(0,0,1,1).data,Ms=is[0],vr=is[1],zr=is[2],Jr=is[3];return Ju(Ym(Ms,vr,zr,Jr))}),fh=_o=>xu(_o).map(Ju).map(Po=>"#"+Po.value).getOr(_o),Gm=_o=>{let Po=_o;return{get:()=>Po,set:Ms=>{Po=Ms}}},Fu=_o=>{const Po=Gm(Mo.none()),Xo=()=>Po.get().each(_o);return{clear:()=>{Xo(),Po.set(Mo.none())},isSet:()=>Po.get().isSome(),get:()=>Po.get(),set:Jr=>{Xo(),Po.set(Mo.some(Jr))}}},_0=()=>Fu(_o=>_o.unbind()),yv=(_o,Po,Xo)=>is=>{const Ms=_0(),vr=bp(Xo),zr=()=>{const Jr=uf(_o),La=Ol=>_o.formatter.match(Po,{value:Xo},Ol.dom,vr);vr?(is.setActive(!ha(Jr,La)),Ms.set(_o.formatter.formatChanged(Po,Ol=>is.setActive(!Ol),!0))):(is.setActive(dr(Jr,La)),Ms.set(_o.formatter.formatChanged(Po,is.setActive,!1,{value:Xo})))};return _o.initialized?zr():_o.on("init",zr),Ms.clear},Lc=_o=>Qr(_o,"menu"),Dm=_o=>Qs(_o,Po=>{const Xo=Po.text||Po.title||"";return Lc(Po)?{text:Xo,items:Dm(Po.menu)}:{text:Xo,value:Po.value}}),sc=(_o,Po,Xo,is)=>Qs(Po,Ms=>{const vr=Ms.text||Ms.title;return Lc(Ms)?{type:"nestedmenuitem",text:vr,getSubmenuItems:()=>sc(_o,Ms.menu,Xo,is)}:{text:vr,type:"togglemenuitem",onAction:()=>is(Ms.value),onSetup:yv(_o,Xo,Ms.value)}}),hf=(_o,Po)=>Xo=>{_o.execCommand("mceTableApplyCellStyle",!1,{[Po]:Xo})},um=_o=>fs(_o,Po=>Lc(Po)?[{...Po,menu:um(Po.menu)}]:ch(Po.value)?[Po]:[]),Km=(_o,Po,Xo,is)=>Ms=>Ms(sc(_o,Po,Xo,is)),os=(_o,Po,Xo)=>{const is=Qs(Po,Ms=>({text:Ms.title,value:"#"+ed(Ms.value).value,type:"choiceitem"}));return[{type:"fancymenuitem",fancytype:"colorswatch",initData:{colors:is.length>0?is:void 0,allowCustomColors:!1},onAction:Ms=>{const vr=Ms.value==="remove"?"":Ms.value;_o.execCommand("mceTableApplyCellStyle",!1,{[Xo]:vr})}}]},dm=_o=>()=>{const Xo=_o.queryCommandValue("mceTableRowType")==="header"?"body":"header";_o.execCommand("mceTableRowType",!1,{type:Xo})},n1=_o=>()=>{const Xo=_o.queryCommandValue("mceTableColType")==="th"?"td":"th";_o.execCommand("mceTableColType",!1,{type:Xo})},Ch=_o=>{const Po=Dm(R1(_o));return Po.length>0?Mo.some({name:"class",type:"listbox",label:"Class",items:Po}):Mo.none()},Xc=[{name:"width",type:"input",label:"Width"},{name:"height",type:"input",label:"Height"},{name:"celltype",type:"listbox",label:"Cell type",items:[{text:"Cell",value:"td"},{text:"Header cell",value:"th"}]},{name:"scope",type:"listbox",label:"Scope",items:[{text:"None",value:""},{text:"Row",value:"row"},{text:"Column",value:"col"},{text:"Row group",value:"rowgroup"},{text:"Column group",value:"colgroup"}]},{name:"halign",type:"listbox",label:"Horizontal align",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{name:"valign",type:"listbox",label:"Vertical align",items:Rb}],Ov=_o=>Xc.concat(Ch(_o).toArray()),Db=(_o,Po)=>{const is=[{name:"borderstyle",type:"listbox",label:"Border style",items:[{text:"Select...",value:""}].concat(Dm(Tg(_o)))},{name:"bordercolor",type:"colorinput",label:"Border color"},{name:"backgroundcolor",type:"colorinput",label:"Background color"}];return{title:"Advanced",name:"advanced",items:Po==="cell"?[{name:"borderwidth",type:"input",label:"Border width"}].concat(is):is}},Mm={normal:(_o,Po)=>{const Xo=_o.dom;return{setAttrib:(zr,Jr)=>{Xo.setAttrib(Po,zr,Jr)},setStyle:(zr,Jr)=>{Xo.setStyle(Po,zr,Jr)},setFormat:(zr,Jr)=>{Jr===""?_o.formatter.remove(zr,{value:null},Po,!0):_o.formatter.apply(zr,{value:Jr},Po)}}}},Eo=ka("th"),Io=(_o,Po)=>_o&&Po?"sectionCells":_o?"section":"cells",Go=_o=>{const Po=_o.section==="thead",Xo=qm(Ss(_o.cells),"th");return _o.section==="tfoot"?{type:"footer"}:Po||Xo?{type:"header",subType:Io(Po,Xo)}:{type:"body"}},Ss=_o=>{const Po=Ca(_o,Xo=>Eo(Xo.element));return Po.length===0?Mo.some("td"):Po.length===_o.length?Mo.some("th"):Mo.none()},Rs=_o=>{const Po=Qs(_o,Ms=>Go(Ms).type),Xo=_r(Po,"header"),is=_r(Po,"footer");if(!Xo&&!is)return Mo.some("body");{const Ms=_r(Po,"body");return Xo&&!Ms&&!is?Mo.some("header"):!Xo&&!Ms&&is?Mo.some("footer"):Mo.none()}},$r=_o=>{let Po=!1,Xo;return(...is)=>(Po||(Po=!0,Xo=_o.apply(null,is)),Xo)},Ea=(_o,Po)=>Ml(_o.all,Xo=>Sr(Xo.cells,is=>Al(Po,is.element))),ll=(_o,Po,Xo)=>{const is=Qs(Po.selection,vr=>cs(vr).bind(zr=>Ea(_o,zr)).filter(Xo)),Ms=Oc(is);return ju(Ms.length>0,Ms)},nl=(_o,Po)=>Po.mergable,Xa=(_o,Po)=>Po.unmergable,Nu=(_o,Po)=>ll(_o,Po,Ko),zu=(_o,Po)=>Ea(_o,Po).exists(Xo=>!Xo.isLocked),kh=(_o,Po)=>dr(Po,Xo=>zu(_o,Xo)),Sp=(_o,Po)=>nl(_o,Po).filter(Xo=>kh(_o,Xo.cells)),mf=(_o,Po)=>Xa(_o,Po).filter(Xo=>kh(_o,Xo));({...{generate:_o=>{if(!qn(_o))throw new Error("cases must be an array");if(_o.length===0)throw new Error("there must be at least one case");const Po=[],Xo={};return zo(_o,(is,Ms)=>{const vr=es(is);if(vr.length!==1)throw new Error("one and only one name per case");const zr=vr[0],Jr=is[zr];if(Xo[zr]!==void 0)throw new Error("duplicate key detected:"+zr);if(zr==="cata")throw new Error("cannot have a case named cata (sorry)");if(!qn(Jr))throw new Error("case arguments must be an array");Po.push(zr),Xo[zr]=(...La)=>{const Ol=La.length;if(Ol!==Jr.length)throw new Error("Wrong number of arguments to case "+zr+". Expected "+Jr.length+" ("+Jr+"), got "+Ol);return{fold:(...Ac)=>{if(Ac.length!==_o.length)throw new Error("Wrong number of arguments to fold. Expected "+_o.length+", got "+Ac.length);return Ac[Ms].apply(null,La)},match:Ac=>{const gu=es(Ac);if(Po.length!==gu.length)throw new Error("Wrong number of arguments to match. Expected: "+Po.join(",")+` +Actual: `+gu.join(","));if(!dr(Po,Jf=>_r(gu,Jf)))throw new Error("Not all branches were specified when using match. Specified: "+gu.join(", ")+` +Required: `+Po.join(", "));return Ac[zr].apply(null,La)},log:Ac=>{console.log(Ac,{constructors:Po,constructor:zr,params:La})}}}}),Xo}}.generate([{none:[]},{only:["index"]},{left:["index","next"]},{middle:["prev","index","next"]},{right:["prev","index"]}])});const Oa=(_o,Po)=>{const Xo=Am.fromTable(_o);return Nu(Xo,Po).bind(Ms=>{const vr=Ms[Ms.length-1],zr=Ms[0].row,Jr=vr.row+vr.rowspan,La=Xo.all.slice(zr,Jr);return Rs(La)}).getOr("")},pf=_o=>ah(_o,"rgb")?fh(_o):_o,$O=_o=>{const Po=qa.fromDom(_o);return{borderwidth:rr(Po,"border-width").getOr(""),borderstyle:rr(Po,"border-style").getOr(""),bordercolor:rr(Po,"border-color").map(pf).getOr(""),backgroundcolor:rr(Po,"background-color").map(pf).getOr("")}},Yp=_o=>{const Po=_o[0],Xo=_o.slice(1);return zo(Xo,is=>{zo(es(Po),Ms=>{ps(is,(vr,zr)=>{const Jr=Po[Ms];Jr!==""&&Ms===zr&&Jr!==vr&&(Po[Ms]="")})})}),Po},Ad=(_o,Po,Xo,is)=>Sr(_o,Ms=>!Jn(Xo.formatter.matchNode(is,Po+Ms))).getOr(""),Pg=xo(Ad,["left","center","right"],"align"),w0=xo(Ad,["top","middle","bottom"],"valign"),nf=(_o,Po)=>{const Xo=Wp(_o),is=zf(_o),Ms=()=>({borderstyle:gs(Xo,"border-style").getOr(""),bordercolor:pf(gs(Xo,"border-color").getOr("")),backgroundcolor:pf(gs(Xo,"background-color").getOr(""))}),vr={height:"",width:"100%",cellspacing:"",cellpadding:"",caption:!1,class:"",align:"",border:""},zr=()=>{const Xu=Xo["border-width"];return $m(_o)&&Xu?{border:Xu}:gs(is,"border").fold(()=>({}),Ac=>({border:Ac}))},Jr=Po?Ms():{},La=()=>{const Xu=gs(Xo,"border-spacing").or(gs(is,"cellspacing")).fold(()=>({}),gu=>({cellspacing:gu})),Ac=gs(Xo,"border-padding").or(gs(is,"cellpadding")).fold(()=>({}),gu=>({cellpadding:gu}));return{...Xu,...Ac}};return{...vr,...Xo,...is,...Jr,...zr(),...La()}},Jm=_o=>ta(qa.fromDom(_o)).map(Po=>{const Xo={selection:t1(_o.cells)};return Oa(Po,Xo)}).getOr(""),_v=(_o,Po,Xo)=>{const is=(Jr,La)=>{const Ol=rr(qa.fromDom(La),"border-width");return $m(_o)&&Ol.isSome()?Ol.getOr(""):Jr.getAttrib(La,"border")||uh(_o.dom,La,"border-width")||uh(_o.dom,La,"border")||""},Ms=_o.dom,vr=$m(_o)?Ms.getStyle(Po,"border-spacing")||Ms.getAttrib(Po,"cellspacing"):Ms.getAttrib(Po,"cellspacing")||Ms.getStyle(Po,"border-spacing"),zr=$m(_o)?uh(Ms,Po,"padding")||Ms.getAttrib(Po,"cellpadding"):Ms.getAttrib(Po,"cellpadding")||uh(Ms,Po,"padding");return{width:Ms.getStyle(Po,"width")||Ms.getAttrib(Po,"width"),height:Ms.getStyle(Po,"height")||Ms.getAttrib(Po,"height"),cellspacing:vr??"",cellpadding:zr??"",border:is(Ms,Po),caption:!!Ms.select("caption",Po)[0],class:Ms.getAttrib(Po,"class",""),align:Pg(_o,Po),...Xo?$O(Po):{}}},Gp=(_o,Po,Xo)=>{const is=_o.dom;return{height:is.getStyle(Po,"height")||is.getAttrib(Po,"height"),class:is.getAttrib(Po,"class",""),type:Jm(Po),align:Pg(_o,Po),...Xo?$O(Po):{}}},Sv=(_o,Po,Xo,is)=>{const Ms=_o.dom,vr=is.getOr(Po),zr=(Jr,La)=>Ms.getStyle(Jr,La)||Ms.getAttrib(Jr,La);return{width:zr(vr,"width"),height:zr(Po,"height"),scope:Ms.getAttrib(Po,"scope"),celltype:nm(Po),class:Ms.getAttrib(Po,"class",""),halign:Pg(_o,Po),valign:w0(_o,Po),...Xo?$O(Po):{}}},$g=(_o,Po)=>{const Xo=Am.fromTable(_o),is=Am.justCells(Xo),Ms=Ca(is,vr=>ha(Po,zr=>Al(vr.element,zr)));return Qs(Ms,vr=>({element:vr.element.dom,column:Am.getColumnAt(Xo,vr.column).map(zr=>zr.element.dom)}))},Ir=(_o,Po,Xo,is)=>{is("scope")&&_o.setAttrib("scope",Xo.scope),is("class")&&_o.setAttrib("class",Xo.class),is("height")&&_o.setStyle("height",oc(Xo.height)),is("width")&&Po.setStyle("width",oc(Xo.width))},RO=(_o,Po,Xo)=>{Xo("backgroundcolor")&&_o.setFormat("tablecellbackgroundcolor",Po.backgroundcolor),Xo("bordercolor")&&_o.setFormat("tablecellbordercolor",Po.bordercolor),Xo("borderstyle")&&_o.setFormat("tablecellborderstyle",Po.borderstyle),Xo("borderwidth")&&_o.setFormat("tablecellborderwidth",oc(Po.borderwidth))},Rg=(_o,Po,Xo,is)=>{const Ms=Po.length===1;zo(Po,vr=>{const zr=vr.element,Jr=Ms?Ko:is,La=Mm.normal(_o,zr),Ol=vr.column.map(Xu=>Mm.normal(_o,Xu)).getOr(La);Ir(La,Ol,Xo,Jr),Ab(_o)&&RO(La,Xo,Jr),is("halign")&&Hh(_o,zr,Xo.halign),is("valign")&&A1(_o,zr,Xo.valign)})},Dg=(_o,Po)=>{_o.execCommand("mceTableCellType",!1,{type:Po.celltype,no_events:!0})},Nm=(_o,Po,Xo,is)=>{const Ms=Ys(is,(vr,zr)=>Xo[zr]!==vr);ko(Ms)>0&&Po.length>=1&&ta(Po[0]).each(vr=>{const zr=$g(vr,Po),Jr=ko(Ys(Ms,(Ol,Xu)=>Xu!=="scope"&&Xu!=="celltype"))>0,La=xs(Ms,"celltype");(Jr||xs(Ms,"scope"))&&Rg(_o,zr,is,xo(xs,Ms)),La&&Dg(_o,is),ql(_o,vr.dom,{structure:La,style:Jr})})},Lu=(_o,Po,Xo,is)=>{const Ms=is.getData();is.close(),_o.undoManager.transact(()=>{Nm(_o,Po,Xo,Ms),_o.focus()})},Ec=(_o,Po)=>{const Xo=ta(Po[0]).map(is=>Qs($g(is,Po),Ms=>Sv(_o,Ms.element,Ab(_o),Ms.column)));return Yp(Xo.getOrDie())},td=_o=>{const Po=uf(_o);if(Po.length===0)return;const Xo=Ec(_o,Po),is={type:"tabpanel",tabs:[{title:"General",name:"general",items:Ov(_o)},Db(_o,"cell")]},Ms={type:"panel",items:[{type:"grid",columns:2,items:Ov(_o)}]};_o.windowManager.open({title:"Cell Properties",size:"normal",body:Ab(_o)?is:Ms,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:Xo,onSubmit:xo(Lu,_o,Po,Xo)})},Gf=_o=>{const Po=Dm(Xm(_o));return Po.length>0?Mo.some({name:"class",type:"listbox",label:"Class",items:Po}):Mo.none()},jl=[{type:"listbox",name:"type",label:"Row type",items:[{text:"Header",value:"header"},{text:"Body",value:"body"},{text:"Footer",value:"footer"}]},{type:"listbox",name:"align",label:"Alignment",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{label:"Height",name:"height",type:"input"}],L1=_o=>jl.concat(Gf(_o).toArray()),Bd=(_o,Po,Xo)=>{Xo("class")&&_o.setAttrib("class",Po.class),Xo("height")&&_o.setStyle("height",oc(Po.height))},pu=(_o,Po,Xo)=>{Xo("backgroundcolor")&&_o.setStyle("background-color",Po.backgroundcolor),Xo("bordercolor")&&_o.setStyle("border-color",Po.bordercolor),Xo("borderstyle")&&_o.setStyle("border-style",Po.borderstyle)},C0=(_o,Po,Xo,is)=>{const vr=Po.length===1?Ko:is;zo(Po,zr=>{const Jr=Mm.normal(_o,zr);Bd(Jr,Xo,vr),P1(_o)&&pu(Jr,Xo,vr),is("align")&&Hh(_o,zr,Xo.align)})},Er=(_o,Po)=>{_o.execCommand("mceTableRowType",!1,{type:Po.type,no_events:!0})},Kf=(_o,Po,Xo,is)=>{const Ms=Ys(is,(vr,zr)=>Xo[zr]!==vr);if(ko(Ms)>0){const vr=xs(Ms,"type"),zr=vr?ko(Ms)>1:!0;zr&&C0(_o,Po,is,xo(xs,Ms)),vr&&Er(_o,is),ta(qa.fromDom(Po[0])).each(Jr=>ql(_o,Jr.dom,{structure:vr,style:zr}))}},k0=(_o,Po,Xo,is)=>{const Ms=is.getData();is.close(),_o.undoManager.transact(()=>{Kf(_o,Po,Xo,Ms),_o.focus()})},hc=_o=>{const Po=cm(Dc(_o),cf.selected);if(Po.length===0)return;const Xo=Qs(Po,zr=>Gp(_o,zr.dom,P1(_o))),is=Yp(Xo),Ms={type:"tabpanel",tabs:[{title:"General",name:"general",items:L1(_o)},Db(_o,"row")]},vr={type:"panel",items:[{type:"grid",columns:2,items:L1(_o)}]};_o.windowManager.open({title:"Row Properties",size:"normal",body:P1(_o)?Ms:vr,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:is,onSubmit:xo(k0,_o,Qs(Po,zr=>zr.dom),is)})},hd=(_o,Po,Xo)=>{const is=Xo?[{type:"input",name:"cols",label:"Cols",inputMode:"numeric"},{type:"input",name:"rows",label:"Rows",inputMode:"numeric"}]:[],Ms=[{type:"input",name:"width",label:"Width"},{type:"input",name:"height",label:"Height"}],vr=$1(_o)?[{type:"input",name:"cellspacing",label:"Cell spacing",inputMode:"numeric"},{type:"input",name:"cellpadding",label:"Cell padding",inputMode:"numeric"},{type:"input",name:"border",label:"Border width"},{type:"label",label:"Caption",items:[{type:"checkbox",name:"caption",label:"Show caption"}]}]:[],zr=[{type:"listbox",name:"align",label:"Alignment",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]}],Jr=Po.length>0?[{type:"listbox",name:"class",label:"Class",items:Po}]:[];return is.concat(Ms).concat(vr).concat(zr).concat(Jr)},wv=(_o,Po,Xo,is)=>{if(Po.tagName==="TD"||Po.tagName==="TH")Zn(Xo)&&io(is)?_o.setStyle(Po,Xo,is):_o.setStyles(Po,Xo);else if(Po.children)for(let Ms=0;Ms{const Ms=_o.dom,vr={},zr={},Jr=$m(_o),La=Yf(_o);if(Jn(Xo.class)||(vr.class=Xo.class),zr.height=oc(Xo.height),Jr?zr.width=oc(Xo.width):Ms.getAttrib(Po,"width")&&(vr.width=ld(Xo.width)),Jr?(zr["border-width"]=oc(Xo.border),zr["border-spacing"]=oc(Xo.cellspacing)):(vr.border=Xo.border,vr.cellpadding=Xo.cellpadding,vr.cellspacing=Xo.cellspacing),Jr&&Po.children){const Ol={};if(is.border&&(Ol["border-width"]=oc(Xo.border)),is.cellpadding&&(Ol.padding=oc(Xo.cellpadding)),La&&is.bordercolor&&(Ol["border-color"]=Xo.bordercolor),!cr(Ol))for(let Xu=0;Xu{const Ms=_o.dom,vr=is.getData(),zr=Ys(vr,(Jr,La)=>Xo[La]!==Jr);is.close(),vr.class===""&&delete vr.class,_o.undoManager.transact(()=>{if(!Po){const Jr=kf(vr.cols).getOr(1),La=kf(vr.rows).getOr(1);_o.execCommand("mceInsertTable",!1,{rows:La,columns:Jr}),Po=lm(Dc(_o),Ud(_o)).bind(Ol=>ta(Ol,Ud(_o))).map(Ol=>Ol.dom).getOrDie()}if(ko(zr)>0){const Jr={border:xs(zr,"border"),bordercolor:xs(zr,"bordercolor"),cellpadding:xs(zr,"cellpadding")};ep(_o,Po,vr,Jr);const La=Ms.select("caption",Po)[0];(La&&!vr.caption||!La&&vr.caption)&&_o.execCommand("mceTableToggleCaption"),Hh(_o,Po,vr.align)}if(_o.focus(),_o.addVisual(),ko(zr)>0){const Jr=xs(zr,"caption"),La=Jr?ko(zr)>1:!0;ql(_o,Po,{structure:Jr,style:La})}})},fm=(_o,Po)=>{const Xo=_o.dom;let is,Ms=nf(_o,Yf(_o));Po?(Ms.cols="1",Ms.rows="1",Yf(_o)&&(Ms.borderstyle="",Ms.bordercolor="",Ms.backgroundcolor="")):(is=Xo.getParent(_o.selection.getStart(),"table",_o.getBody()),is?Ms=_v(_o,is,Yf(_o)):Yf(_o)&&(Ms.borderstyle="",Ms.bordercolor="",Ms.backgroundcolor=""));const vr=Dm(Yg(_o));vr.length>0&&Ms.class&&(Ms.class=Ms.class.replace(/\s*mce\-item\-table\s*/g,""));const zr={type:"grid",columns:2,items:hd(_o,vr,Po)},Jr=()=>({type:"panel",items:[zr]}),La=()=>({type:"tabpanel",tabs:[{title:"General",name:"general",items:[zr]},Db(_o,"table")]}),Ol=Yf(_o)?La():Jr();_o.windowManager.open({title:"Table Properties",size:"normal",body:Ol,onSubmit:xo(tp,_o,is,Ms),buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:Ms})},Mb=_o=>{const Po=Xo=>{Nd(Dc(_o))&&Xo()};ps({mceTableProps:xo(fm,_o,!1),mceTableRowProps:xo(hc,_o),mceTableCellProps:xo(td,_o),mceInsertTableDialog:xo(fm,_o,!0)},(Xo,is)=>_o.addCommand(is,()=>Po(Xo)))},Pf=(_o,Po)=>Ds(_o,Po).isSome(),Tc=$o,Fd=_o=>{const Po=(is,Ms)=>Cu(is,Ms).exists(vr=>parseInt(vr,10)>1),Xo=is=>Po(is,"rowspan")||Po(is,"colspan");return _o.length>0&&dr(_o,Xo)?Mo.some(_o):Mo.none()},Mg=(_o,Po,Xo)=>Po.length<=1?Mo.none():Ny(_o,Xo.firstSelectedSelector,Xo.lastSelectedSelector).map(is=>({bounds:is,cells:Po})),$f=_o=>({element:_o,mergable:Mo.none(),unmergable:Mo.none(),selection:[_o]}),Ly=(_o,Po,Xo)=>({element:Xo,mergable:Mg(Po,_o,cf),unmergable:Fd(_o),selection:Tc(_o)}),I1=_o=>{const Po=Gm(Mo.none()),Xo=Gm([]);let is=Mo.none();const Ms=ka("caption"),vr=Fl=>is.forall(Xl=>!Xl[Fl]),zr=()=>tf(Dc(_o),Ud(_o)),Jr=()=>tf(bd(_o),Ud(_o)),La=()=>zr().bind(Fl=>vd(cd(ta(Fl),Jr().bind(ta),(Xl,Qd)=>Al(Xl,Qd)?Ms(Fl)?Mo.some($f(Fl)):Mo.some(Ly(uf(_o),Xl,Fl)):Mo.none()))),Ol=Fl=>ta(Fl.element).map(Qd=>{const Rf=Am.fromTable(Qd),Cv=Nu(Rf,Fl).getOr([]),eg=Il(Cv,(Wu,pm)=>(pm.isLocked&&(Wu.onAny=!0,pm.column===0?Wu.onFirst=!0:pm.column+pm.colspan>=Rf.grid.columns&&(Wu.onLast=!0)),Wu),{onAny:!1,onFirst:!1,onLast:!1});return{mergeable:Sp(Rf,Fl).isSome(),unmergeable:mf(Rf,Fl).isSome(),locked:eg}}),Xu=()=>{Po.set($r(La)()),is=Po.get().bind(Ol),zo(Xo.get(),Bo)},Ac=Fl=>(Fl(),Xo.set(Xo.get().concat([Fl])),()=>{Xo.set(Ca(Xo.get(),Xl=>Xl!==Fl))}),gu=(Fl,Xl)=>Ac(()=>Po.get().fold(()=>{Fl.setEnabled(!1)},Qd=>{Fl.setEnabled(!Xl(Qd)&&_o.selection.isEditable())})),Uh=(Fl,Xl,Qd)=>Ac(()=>Po.get().fold(()=>{Fl.setEnabled(!1),Fl.setActive(!1)},Rf=>{Fl.setEnabled(!Xl(Rf)&&_o.selection.isEditable()),Fl.setActive(Qd(Rf))})),Jf=Fl=>is.exists(Xl=>Xl.locked[Fl]),hm=Fl=>gu(Fl,Xl=>!1),Jp=Fl=>gu(Fl,Xl=>Ms(Xl.element)),wp=Fl=>Xl=>gu(Xl,Qd=>Ms(Qd.element)||Jf(Fl)),B1=Fl=>Xl=>gu(Xl,Qd=>Ms(Qd.element)||Fl().isNone()),Sc=(Fl,Xl)=>Qd=>gu(Qd,Rf=>Ms(Rf.element)||Fl().isNone()||Jf(Xl)),F1=Fl=>gu(Fl,Xl=>vr("mergeable")),x0=Fl=>gu(Fl,Xl=>vr("unmergeable")),nd=Fl=>Uh(Fl,Vo,Xl=>ta(Xl.element,Ud(_o)).exists(Rf=>Pf(Rf,"caption"))),mm=(Fl,Xl)=>Qd=>Uh(Qd,Rf=>Ms(Rf.element),()=>_o.queryCommandValue(Fl)===Xl),Nb=mm("mceTableRowType","header"),H1=mm("mceTableColType","th");return _o.on("NodeChange ExecCommand TableSelectorChange",Xu),{onSetupTable:hm,onSetupCellOrRow:Jp,onSetupColumn:wp,onSetupPasteable:B1,onSetupPasteableColumn:Sc,onSetupMergeable:F1,onSetupUnmergeable:x0,resetTargets:Xu,onSetupTableWithCaption:nd,onSetupTableRowHeaders:Nb,onSetupTableColumnHeaders:H1,targets:Po.get}};var Ng=tinymce.util.Tools.resolve("tinymce.FakeClipboard");const hh="x-tinymce/dom-table-",np=hh+"rows",Gs=hh+"columns",xh=_o=>{var Po;const Xo=(Po=Ng.read())!==null&&Po!==void 0?Po:[];return Ml(Xo,is=>Mo.from(is.getType(_o)))},Lm=()=>xh(np),mh=()=>xh(Gs),Eh=_o=>Po=>{const Xo=()=>{Po.setEnabled(_o.selection.isEditable())};return _o.on("NodeChange",Xo),Xo(),()=>{_o.off("NodeChange",Xo)}},Xd=(_o,Po)=>{_o.ui.registry.addMenuButton("table",{tooltip:"Table",icon:"table",onSetup:Eh(_o),fetch:Jr=>Jr("inserttable | cell row column | advtablesort | tableprops deletetable")});const Xo=Jr=>()=>_o.execCommand(Jr),is=(Jr,La)=>{_o.queryCommandSupported(La.command)&&_o.ui.registry.addButton(Jr,{...La,onAction:uo(La.onAction)?La.onAction:Xo(La.command)})},Ms=(Jr,La)=>{_o.queryCommandSupported(La.command)&&_o.ui.registry.addToggleButton(Jr,{...La,onAction:uo(La.onAction)?La.onAction:Xo(La.command)})};is("tableprops",{tooltip:"Table properties",command:"mceTableProps",icon:"table",onSetup:Po.onSetupTable}),is("tabledelete",{tooltip:"Delete table",command:"mceTableDelete",icon:"table-delete-table",onSetup:Po.onSetupTable}),is("tablecellprops",{tooltip:"Cell properties",command:"mceTableCellProps",icon:"table-cell-properties",onSetup:Po.onSetupCellOrRow}),is("tablemergecells",{tooltip:"Merge cells",command:"mceTableMergeCells",icon:"table-merge-cells",onSetup:Po.onSetupMergeable}),is("tablesplitcells",{tooltip:"Split cell",command:"mceTableSplitCells",icon:"table-split-cells",onSetup:Po.onSetupUnmergeable}),is("tableinsertrowbefore",{tooltip:"Insert row before",command:"mceTableInsertRowBefore",icon:"table-insert-row-above",onSetup:Po.onSetupCellOrRow}),is("tableinsertrowafter",{tooltip:"Insert row after",command:"mceTableInsertRowAfter",icon:"table-insert-row-after",onSetup:Po.onSetupCellOrRow}),is("tabledeleterow",{tooltip:"Delete row",command:"mceTableDeleteRow",icon:"table-delete-row",onSetup:Po.onSetupCellOrRow}),is("tablerowprops",{tooltip:"Row properties",command:"mceTableRowProps",icon:"table-row-properties",onSetup:Po.onSetupCellOrRow}),is("tableinsertcolbefore",{tooltip:"Insert column before",command:"mceTableInsertColBefore",icon:"table-insert-column-before",onSetup:Po.onSetupColumn("onFirst")}),is("tableinsertcolafter",{tooltip:"Insert column after",command:"mceTableInsertColAfter",icon:"table-insert-column-after",onSetup:Po.onSetupColumn("onLast")}),is("tabledeletecol",{tooltip:"Delete column",command:"mceTableDeleteCol",icon:"table-delete-column",onSetup:Po.onSetupColumn("onAny")}),is("tablecutrow",{tooltip:"Cut row",command:"mceTableCutRow",icon:"cut-row",onSetup:Po.onSetupCellOrRow}),is("tablecopyrow",{tooltip:"Copy row",command:"mceTableCopyRow",icon:"duplicate-row",onSetup:Po.onSetupCellOrRow}),is("tablepasterowbefore",{tooltip:"Paste row before",command:"mceTablePasteRowBefore",icon:"paste-row-before",onSetup:Po.onSetupPasteable(Lm)}),is("tablepasterowafter",{tooltip:"Paste row after",command:"mceTablePasteRowAfter",icon:"paste-row-after",onSetup:Po.onSetupPasteable(Lm)}),is("tablecutcol",{tooltip:"Cut column",command:"mceTableCutCol",icon:"cut-column",onSetup:Po.onSetupColumn("onAny")}),is("tablecopycol",{tooltip:"Copy column",command:"mceTableCopyCol",icon:"duplicate-column",onSetup:Po.onSetupColumn("onAny")}),is("tablepastecolbefore",{tooltip:"Paste column before",command:"mceTablePasteColBefore",icon:"paste-column-before",onSetup:Po.onSetupPasteableColumn(mh,"onFirst")}),is("tablepastecolafter",{tooltip:"Paste column after",command:"mceTablePasteColAfter",icon:"paste-column-after",onSetup:Po.onSetupPasteableColumn(mh,"onLast")}),is("tableinsertdialog",{tooltip:"Insert table",command:"mceInsertTableDialog",icon:"table",onSetup:Eh(_o)});const vr=um(Yg(_o));vr.length!==0&&_o.queryCommandSupported("mceTableToggleClass")&&_o.ui.registry.addMenuButton("tableclass",{icon:"table-classes",tooltip:"Table styles",fetch:Km(_o,vr,"tableclass",Jr=>_o.execCommand("mceTableToggleClass",!1,Jr)),onSetup:Po.onSetupTable});const zr=um(R1(_o));zr.length!==0&&_o.queryCommandSupported("mceTableCellToggleClass")&&_o.ui.registry.addMenuButton("tablecellclass",{icon:"table-cell-classes",tooltip:"Cell styles",fetch:Km(_o,zr,"tablecellclass",Jr=>_o.execCommand("mceTableCellToggleClass",!1,Jr)),onSetup:Po.onSetupCellOrRow}),_o.queryCommandSupported("mceTableApplyCellStyle")&&(_o.ui.registry.addMenuButton("tablecellvalign",{icon:"vertical-align",tooltip:"Vertical align",fetch:Km(_o,Rb,"tablecellverticalalign",hf(_o,"vertical-align")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addMenuButton("tablecellborderwidth",{icon:"border-width",tooltip:"Border width",fetch:Km(_o,zp(_o),"tablecellborderwidth",hf(_o,"border-width")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addMenuButton("tablecellborderstyle",{icon:"border-style",tooltip:"Border style",fetch:Km(_o,Tg(_o),"tablecellborderstyle",hf(_o,"border-style")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addMenuButton("tablecellbackgroundcolor",{icon:"cell-background-color",tooltip:"Background color",fetch:Jr=>Jr(os(_o,Gg(_o),"background-color")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addMenuButton("tablecellbordercolor",{icon:"cell-border-color",tooltip:"Border color",fetch:Jr=>Jr(os(_o,yp(_o),"border-color")),onSetup:Po.onSetupCellOrRow})),Ms("tablecaption",{tooltip:"Table caption",icon:"table-caption",command:"mceTableToggleCaption",onSetup:Po.onSetupTableWithCaption}),Ms("tablerowheader",{tooltip:"Row header",icon:"table-top-header",command:"mceTableRowType",onAction:dm(_o),onSetup:Po.onSetupTableRowHeaders}),Ms("tablecolheader",{tooltip:"Column header",icon:"table-left-header",command:"mceTableColType",onAction:n1(_o),onSetup:Po.onSetupTableColumnHeaders})},Hd=_o=>{const Po=is=>_o.dom.is(is,"table")&&_o.getBody().contains(is)&&_o.dom.isEditable(is.parentNode),Xo=Vf(_o);Xo.length>0&&_o.ui.registry.addContextToolbar("table",{predicate:Po,items:Xo,scope:"node",position:"node"})},Iy=_o=>Po=>{const Xo=()=>{Po.setEnabled(_o.selection.isEditable())};return _o.on("NodeChange",Xo),Xo(),()=>{_o.off("NodeChange",Xo)}},Th=(_o,Po)=>{const Xo=Ac=>()=>_o.execCommand(Ac),is=(Ac,gu)=>_o.queryCommandSupported(gu.command)?(_o.ui.registry.addMenuItem(Ac,{...gu,onAction:uo(gu.onAction)?gu.onAction:Xo(gu.command)}),!0):!1,Ms=(Ac,gu)=>{_o.queryCommandSupported(gu.command)&&_o.ui.registry.addToggleMenuItem(Ac,{...gu,onAction:uo(gu.onAction)?gu.onAction:Xo(gu.command)})},vr=Ac=>{_o.execCommand("mceInsertTable",!1,{rows:Ac.numRows,columns:Ac.numColumns})},zr=[is("tableinsertrowbefore",{text:"Insert row before",icon:"table-insert-row-above",command:"mceTableInsertRowBefore",onSetup:Po.onSetupCellOrRow}),is("tableinsertrowafter",{text:"Insert row after",icon:"table-insert-row-after",command:"mceTableInsertRowAfter",onSetup:Po.onSetupCellOrRow}),is("tabledeleterow",{text:"Delete row",icon:"table-delete-row",command:"mceTableDeleteRow",onSetup:Po.onSetupCellOrRow}),is("tablerowprops",{text:"Row properties",icon:"table-row-properties",command:"mceTableRowProps",onSetup:Po.onSetupCellOrRow}),is("tablecutrow",{text:"Cut row",icon:"cut-row",command:"mceTableCutRow",onSetup:Po.onSetupCellOrRow}),is("tablecopyrow",{text:"Copy row",icon:"duplicate-row",command:"mceTableCopyRow",onSetup:Po.onSetupCellOrRow}),is("tablepasterowbefore",{text:"Paste row before",icon:"paste-row-before",command:"mceTablePasteRowBefore",onSetup:Po.onSetupPasteable(Lm)}),is("tablepasterowafter",{text:"Paste row after",icon:"paste-row-after",command:"mceTablePasteRowAfter",onSetup:Po.onSetupPasteable(Lm)})],Jr=[is("tableinsertcolumnbefore",{text:"Insert column before",icon:"table-insert-column-before",command:"mceTableInsertColBefore",onSetup:Po.onSetupColumn("onFirst")}),is("tableinsertcolumnafter",{text:"Insert column after",icon:"table-insert-column-after",command:"mceTableInsertColAfter",onSetup:Po.onSetupColumn("onLast")}),is("tabledeletecolumn",{text:"Delete column",icon:"table-delete-column",command:"mceTableDeleteCol",onSetup:Po.onSetupColumn("onAny")}),is("tablecutcolumn",{text:"Cut column",icon:"cut-column",command:"mceTableCutCol",onSetup:Po.onSetupColumn("onAny")}),is("tablecopycolumn",{text:"Copy column",icon:"duplicate-column",command:"mceTableCopyCol",onSetup:Po.onSetupColumn("onAny")}),is("tablepastecolumnbefore",{text:"Paste column before",icon:"paste-column-before",command:"mceTablePasteColBefore",onSetup:Po.onSetupPasteableColumn(mh,"onFirst")}),is("tablepastecolumnafter",{text:"Paste column after",icon:"paste-column-after",command:"mceTablePasteColAfter",onSetup:Po.onSetupPasteableColumn(mh,"onLast")})],La=[is("tablecellprops",{text:"Cell properties",icon:"table-cell-properties",command:"mceTableCellProps",onSetup:Po.onSetupCellOrRow}),is("tablemergecells",{text:"Merge cells",icon:"table-merge-cells",command:"mceTableMergeCells",onSetup:Po.onSetupMergeable}),is("tablesplitcells",{text:"Split cell",icon:"table-split-cells",command:"mceTableSplitCells",onSetup:Po.onSetupUnmergeable})];jd(_o)?_o.ui.registry.addNestedMenuItem("inserttable",{text:"Table",icon:"table",getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"inserttable",onAction:vr}],onSetup:Iy(_o)}):_o.ui.registry.addMenuItem("inserttable",{text:"Table",icon:"table",onAction:Xo("mceInsertTableDialog"),onSetup:Iy(_o)}),_o.ui.registry.addMenuItem("inserttabledialog",{text:"Insert table",icon:"table",onAction:Xo("mceInsertTableDialog"),onSetup:Iy(_o)}),is("tableprops",{text:"Table properties",onSetup:Po.onSetupTable,command:"mceTableProps"}),is("deletetable",{text:"Delete table",icon:"table-delete-table",onSetup:Po.onSetupTable,command:"mceTableDelete"}),_r(zr,!0)&&_o.ui.registry.addNestedMenuItem("row",{type:"nestedmenuitem",text:"Row",getSubmenuItems:wo("tableinsertrowbefore tableinsertrowafter tabledeleterow tablerowprops | tablecutrow tablecopyrow tablepasterowbefore tablepasterowafter")}),_r(Jr,!0)&&_o.ui.registry.addNestedMenuItem("column",{type:"nestedmenuitem",text:"Column",getSubmenuItems:wo("tableinsertcolumnbefore tableinsertcolumnafter tabledeletecolumn | tablecutcolumn tablecopycolumn tablepastecolumnbefore tablepastecolumnafter")}),_r(La,!0)&&_o.ui.registry.addNestedMenuItem("cell",{type:"nestedmenuitem",text:"Cell",getSubmenuItems:wo("tablecellprops tablemergecells tablesplitcells")}),_o.ui.registry.addContextMenu("table",{update:()=>(Po.resetTargets(),Po.targets().fold(wo(""),Ac=>Rr(Ac.element)==="caption"?"tableprops deletetable":"cell row column | advtablesort | tableprops deletetable"))});const Ol=um(Yg(_o));Ol.length!==0&&_o.queryCommandSupported("mceTableToggleClass")&&_o.ui.registry.addNestedMenuItem("tableclass",{icon:"table-classes",text:"Table styles",getSubmenuItems:()=>sc(_o,Ol,"tableclass",Ac=>_o.execCommand("mceTableToggleClass",!1,Ac)),onSetup:Po.onSetupTable});const Xu=um(R1(_o));Xu.length!==0&&_o.queryCommandSupported("mceTableCellToggleClass")&&_o.ui.registry.addNestedMenuItem("tablecellclass",{icon:"table-cell-classes",text:"Cell styles",getSubmenuItems:()=>sc(_o,Xu,"tablecellclass",Ac=>_o.execCommand("mceTableCellToggleClass",!1,Ac)),onSetup:Po.onSetupCellOrRow}),_o.queryCommandSupported("mceTableApplyCellStyle")&&(_o.ui.registry.addNestedMenuItem("tablecellvalign",{icon:"vertical-align",text:"Vertical align",getSubmenuItems:()=>sc(_o,Rb,"tablecellverticalalign",hf(_o,"vertical-align")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addNestedMenuItem("tablecellborderwidth",{icon:"border-width",text:"Border width",getSubmenuItems:()=>sc(_o,zp(_o),"tablecellborderwidth",hf(_o,"border-width")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addNestedMenuItem("tablecellborderstyle",{icon:"border-style",text:"Border style",getSubmenuItems:()=>sc(_o,Tg(_o),"tablecellborderstyle",hf(_o,"border-style")),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addNestedMenuItem("tablecellbackgroundcolor",{icon:"cell-background-color",text:"Background color",getSubmenuItems:()=>os(_o,Gg(_o),"background-color"),onSetup:Po.onSetupCellOrRow}),_o.ui.registry.addNestedMenuItem("tablecellbordercolor",{icon:"cell-border-color",text:"Border color",getSubmenuItems:()=>os(_o,yp(_o),"border-color"),onSetup:Po.onSetupCellOrRow})),Ms("tablecaption",{icon:"table-caption",text:"Table caption",command:"mceTableToggleCaption",onSetup:Po.onSetupTableWithCaption}),Ms("tablerowheader",{text:"Row header",icon:"table-top-header",command:"mceTableRowType",onAction:dm(_o),onSetup:Po.onSetupTableRowHeaders}),Ms("tablecolheader",{text:"Column header",icon:"table-left-header",command:"mceTableColType",onAction:n1(_o),onSetup:Po.onSetupTableRowHeaders})},Kp=_o=>{const Po=I1(_o);Mu(_o),Mb(_o),Th(_o,Po),Xd(_o,Po),Hd(_o)};var Ua=()=>{_n.add("table",Kp)};Ua()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=ko=>ko==null,ke=ko=>!Ce(ko),$n=()=>{},Hn=ko=>()=>ko;class zn{constructor(gs,xs){this.tag=gs,this.value=xs}static some(gs){return new zn(!0,gs)}static none(){return zn.singletonNone}fold(gs,xs){return this.tag?xs(this.value):gs()}isSome(){return this.tag}isNone(){return!this.tag}map(gs){return this.tag?zn.some(gs(this.value)):zn.none()}bind(gs){return this.tag?gs(this.value):zn.none()}exists(gs){return this.tag&&gs(this.value)}forall(gs){return!this.tag||gs(this.value)}filter(gs){return!this.tag||gs(this.value)?this:zn.none()}getOr(gs){return this.tag?this.value:gs}or(gs){return this.tag?this:gs}getOrThunk(gs){return this.tag?this.value:gs()}orThunk(gs){return this.tag?this:gs()}getOrDie(gs){if(this.tag)return this.value;throw new Error(gs??"Called getOrDie on None")}static from(gs){return ke(gs)?zn.some(gs):zn.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(gs){this.tag&&gs(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}zn.singletonNone=new zn(!1);const Zn=(ko,gs)=>gs>=0&&gsZn(ko,0);var Yn=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils");const Jn=typeof window<"u"?window:Function("return this;")(),to=function(ko,gs,xs){const Qr=window.Prism;window.Prism={manual:!0};var cr=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{},ws=function(Fs){var Br=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,_r=0,ha={},hs={manual:Fs.Prism&&Fs.Prism.manual,disableWorkerMessageHandler:Fs.Prism&&Fs.Prism.disableWorkerMessageHandler,util:{encode:function fs(dr){return dr instanceof Qs?new Qs(dr.type,fs(dr.content),dr.alias):Array.isArray(dr)?dr.map(fs):dr.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(nr){var fs=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(nr.stack)||[])[1];if(fs){var dr=document.getElementsByTagName("script");for(var Vr in dr)if(dr[Vr].src==fs)return dr[Vr]}return null}},isActive:function(fs,dr,Vr){for(var nr="no-"+dr;fs;){var Kr=fs.classList;if(Kr.contains(dr))return!0;if(Kr.contains(nr))return!1;fs=fs.parentElement}return!!Vr}},languages:{plain:ha,plaintext:ha,text:ha,txt:ha,extend:function(fs,dr){var Vr=hs.util.clone(hs.languages[fs]);for(var nr in dr)Vr[nr]=dr[nr];return Vr},insertBefore:function(fs,dr,Vr,nr){nr=nr||hs.languages;var Kr=nr[fs],ra={};for(var Ml in Kr)if(Kr.hasOwnProperty(Ml)){if(Ml==dr)for(var xa in Vr)Vr.hasOwnProperty(xa)&&(ra[xa]=Vr[xa]);Vr.hasOwnProperty(Ml)||(ra[Ml]=Kr[Ml])}var Nl=nr[fs];return nr[fs]=ra,hs.languages.DFS(hs.languages,function(Zc,cc){cc===Nl&&Zc!=fs&&(this[Zc]=ra)}),ra},DFS:function fs(dr,Vr,nr,Kr){Kr=Kr||{};var ra=hs.util.objId;for(var Ml in dr)if(dr.hasOwnProperty(Ml)){Vr.call(dr,Ml,dr[Ml],nr||Ml);var xa=dr[Ml],Nl=hs.util.type(xa);Nl==="Object"&&!Kr[ra(xa)]?(Kr[ra(xa)]=!0,fs(xa,Vr,null,Kr)):Nl==="Array"&&!Kr[ra(xa)]&&(Kr[ra(xa)]=!0,fs(xa,Vr,Ml,Kr))}}},plugins:{},highlightAll:function(fs,dr){hs.highlightAllUnder(document,fs,dr)},highlightAllUnder:function(fs,dr,Vr){var nr={callback:Vr,container:fs,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};hs.hooks.run("before-highlightall",nr),nr.elements=Array.prototype.slice.apply(nr.container.querySelectorAll(nr.selector)),hs.hooks.run("before-all-elements-highlight",nr);for(var Kr=0,ra;ra=nr.elements[Kr++];)hs.highlightElement(ra,dr===!0,nr.callback)},highlightElement:function(fs,dr,Vr){var nr=hs.util.getLanguage(fs),Kr=hs.languages[nr];hs.util.setLanguage(fs,nr);var ra=fs.parentElement;ra&&ra.nodeName.toLowerCase()==="pre"&&hs.util.setLanguage(ra,nr);var Ml=fs.textContent,xa={element:fs,language:nr,grammar:Kr,code:Ml};function Nl(cc){xa.highlightedCode=cc,hs.hooks.run("before-insert",xa),xa.element.innerHTML=xa.highlightedCode,hs.hooks.run("after-highlight",xa),hs.hooks.run("complete",xa),Vr&&Vr.call(xa.element)}if(hs.hooks.run("before-sanity-check",xa),ra=xa.element.parentElement,ra&&ra.nodeName.toLowerCase()==="pre"&&!ra.hasAttribute("tabindex")&&ra.setAttribute("tabindex","0"),!xa.code){hs.hooks.run("complete",xa),Vr&&Vr.call(xa.element);return}if(hs.hooks.run("before-highlight",xa),!xa.grammar){Nl(hs.util.encode(xa.code));return}if(dr&&Fs.Worker){var Zc=new Worker(hs.filename);Zc.onmessage=function(cc){Nl(cc.data)},Zc.postMessage(JSON.stringify({language:xa.language,code:xa.code,immediateClose:!0}))}else Nl(hs.highlight(xa.code,xa.grammar,xa.language))},highlight:function(fs,dr,Vr){var nr={code:fs,grammar:dr,language:Vr};if(hs.hooks.run("before-tokenize",nr),!nr.grammar)throw new Error('The language "'+nr.language+'" has no grammar.');return nr.tokens=hs.tokenize(nr.code,nr.grammar),hs.hooks.run("after-tokenize",nr),Qs.stringify(hs.util.encode(nr.tokens),nr.language)},tokenize:function(fs,dr){var Vr=dr.rest;if(Vr){for(var nr in Vr)dr[nr]=Vr[nr];delete dr.rest}var Kr=new ga;return Ca(Kr,Kr.head,fs),el(fs,Kr,dr,Kr.head,0),Il(Kr)},hooks:{all:{},add:function(fs,dr){var Vr=hs.hooks.all;Vr[fs]=Vr[fs]||[],Vr[fs].push(dr)},run:function(fs,dr){var Vr=hs.hooks.all[fs];if(!(!Vr||!Vr.length))for(var nr=0,Kr;Kr=Vr[nr++];)Kr(dr)}},Token:Qs};Fs.Prism=hs;function Qs(fs,dr,Vr,nr){this.type=fs,this.content=dr,this.alias=Vr,this.length=(nr||"").length|0}Qs.stringify=function fs(dr,Vr){if(typeof dr=="string")return dr;if(Array.isArray(dr)){var nr="";return dr.forEach(function(Nl){nr+=fs(Nl,Vr)}),nr}var Kr={type:dr.type,content:fs(dr.content,Vr),tag:"span",classes:["token",dr.type],attributes:{},language:Vr},ra=dr.alias;ra&&(Array.isArray(ra)?Array.prototype.push.apply(Kr.classes,ra):Kr.classes.push(ra)),hs.hooks.run("wrap",Kr);var Ml="";for(var xa in Kr.attributes)Ml+=" "+xa+'="'+(Kr.attributes[xa]||"").replace(/"/g,""")+'"';return"<"+Kr.tag+' class="'+Kr.classes.join(" ")+'"'+Ml+">"+Kr.content+""};function zo(fs,dr,Vr,nr){fs.lastIndex=dr;var Kr=fs.exec(Vr);if(Kr&&nr&&Kr[1]){var ra=Kr[1].length;Kr.index+=ra,Kr[0]=Kr[0].slice(ra)}return Kr}function el(fs,dr,Vr,nr,Kr,ra){for(var Ml in Vr)if(!(!Vr.hasOwnProperty(Ml)||!Vr[Ml])){var xa=Vr[Ml];xa=Array.isArray(xa)?xa:[xa];for(var Nl=0;Nl=ra.reach);qa+=Fc.value.length,Fc=Fc.next){var Ya=Fc.value;if(dr.length>fs.length)return;if(!(Ya instanceof Qs)){var kc=1,Yl;if(nc){if(Yl=zo(Vl,qa,fs,gc),!Yl||Yl.index>=fs.length)break;var Rr=Yl.index,rd=Yl.index+Yl[0].length,Al=qa;for(Al+=Fc.value.length;Rr>=Al;)Fc=Fc.next,Al+=Fc.value.length;if(Al-=Fc.value.length,qa=Al,Fc.value instanceof Qs)continue;for(var gd=Fc;gd!==dr.tail&&(Alra.reach&&(ra.reach=Es);var Ks=Fc.prev;Su&&(Ks=Ca(dr,Ks,Su),qa+=Su.length),za(dr,Ks,kc);var pr=new Qs(Ml,cc?hs.tokenize(Pl,cc):Pl,Ed,Pl);if(Fc=Ca(dr,Ks,pr),vs&&Ca(dr,Fc,vs),kc>1){var ia={cause:Ml+","+Nl,reach:Es};el(fs,dr,Vr,Fc.prev,qa,ia),ra&&ia.reach>ra.reach&&(ra.reach=ia.reach)}}}}}}function ga(){var fs={value:null,prev:null,next:null},dr={value:null,prev:fs,next:null};fs.next=dr,this.head=fs,this.tail=dr,this.length=0}function Ca(fs,dr,Vr){var nr=dr.next,Kr={value:Vr,prev:dr,next:nr};return dr.next=Kr,nr.prev=Kr,fs.length++,Kr}function za(fs,dr,Vr){for(var nr=dr.next,Kr=0;Kr]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},function(Fs){function Br(_r,ha){return"___"+_r.toUpperCase()+ha+"___"}Object.defineProperties(Fs.languages["markup-templating"]={},{buildPlaceholders:{value:function(_r,ha,hs,Qs){if(_r.language===ha){var zo=_r.tokenStack=[];_r.code=_r.code.replace(hs,function(el){if(typeof Qs=="function"&&!Qs(el))return el;for(var ga=zo.length,Ca;_r.code.indexOf(Ca=Br(ha,ga))!==-1;)++ga;return zo[ga]=el,Ca}),_r.grammar=Fs.languages.markup}}},tokenizePlaceholders:{value:function(_r,ha){if(_r.language!==ha||!_r.tokenStack)return;_r.grammar=Fs.languages[ha];var hs=0,Qs=Object.keys(_r.tokenStack);function zo(el){for(var ga=0;ga=Qs.length);ga++){var Ca=el[ga];if(typeof Ca=="string"||Ca.content&&typeof Ca.content=="string"){var za=Qs[hs],Il=_r.tokenStack[za],Zs=typeof Ca=="string"?Ca:Ca.content,Sr=Br(ha,za),Us=Zs.indexOf(Sr);if(Us>-1){++hs;var fs=Zs.substring(0,Us),dr=new Fs.Token(ha,Fs.tokenize(Il,_r.grammar),"language-"+ha,Il),Vr=Zs.substring(Us+Sr.length),nr=[];fs&&nr.push.apply(nr,zo([fs])),nr.push(dr),Vr&&nr.push.apply(nr,zo([Vr])),typeof Ca=="string"?el.splice.apply(el,[ga,1].concat(nr)):Ca.content=nr}}else Ca.content&&zo(Ca.content)}return el}zo(_r.tokens)}}})}(ws),ws.languages.c=ws.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),ws.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),ws.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},ws.languages.c.string],char:ws.languages.c.char,comment:ws.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:ws.languages.c}}}}),ws.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete ws.languages.c.boolean,function(Fs){var Br=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,_r=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,function(){return Br.source});Fs.languages.cpp=Fs.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,function(){return Br.source})),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:Br,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),Fs.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,function(){return _r})+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),Fs.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:Fs.languages.cpp}}}}),Fs.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),Fs.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:Fs.languages.extend("cpp",{})}}),Fs.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},Fs.languages.cpp["base-clause"])}(ws),function(Fs){function Br(Yl,rd){return Yl.replace(/<<(\d+)>>/g,function(Al,gd){return"(?:"+rd[+gd]+")"})}function _r(Yl,rd,Al){return RegExp(Br(Yl,rd),"")}function ha(Yl,rd){for(var Al=0;Al>/g,function(){return"(?:"+Yl+")"});return Yl.replace(/<>/g,"[^\\s\\S]")}var hs={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function Qs(Yl){return"\\b(?:"+Yl.trim().replace(/ /g,"|")+")\\b"}var zo=Qs(hs.typeDeclaration),el=RegExp(Qs(hs.type+" "+hs.typeDeclaration+" "+hs.contextual+" "+hs.other)),ga=Qs(hs.typeDeclaration+" "+hs.contextual+" "+hs.other),Ca=Qs(hs.type+" "+hs.typeDeclaration+" "+hs.other),za=ha(/<(?:[^<>;=+\-*/%&|^]|<>)*>/.source,2),Il=ha(/\((?:[^()]|<>)*\)/.source,2),Zs=/@?\b[A-Za-z_]\w*\b/.source,Sr=Br(/<<0>>(?:\s*<<1>>)?/.source,[Zs,za]),Us=Br(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[ga,Sr]),fs=/\[\s*(?:,\s*)*\]/.source,dr=Br(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[Us,fs]),Vr=Br(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[za,Il,fs]),nr=Br(/\(<<0>>+(?:,<<0>>+)+\)/.source,[Vr]),Kr=Br(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[nr,Us,fs]),ra={keyword:el,punctuation:/[<>()?,.:[\]]/},Ml=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,xa=/"(?:\\.|[^\\"\r\n])*"/.source,Nl=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;Fs.languages.csharp=Fs.languages.extend("clike",{string:[{pattern:_r(/(^|[^$\\])<<0>>/.source,[Nl]),lookbehind:!0,greedy:!0},{pattern:_r(/(^|[^@$\\])<<0>>/.source,[xa]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:_r(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[Us]),lookbehind:!0,inside:ra},{pattern:_r(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[Zs,Kr]),lookbehind:!0,inside:ra},{pattern:_r(/(\busing\s+)<<0>>(?=\s*=)/.source,[Zs]),lookbehind:!0},{pattern:_r(/(\b<<0>>\s+)<<1>>/.source,[zo,Sr]),lookbehind:!0,inside:ra},{pattern:_r(/(\bcatch\s*\(\s*)<<0>>/.source,[Us]),lookbehind:!0,inside:ra},{pattern:_r(/(\bwhere\s+)<<0>>/.source,[Zs]),lookbehind:!0},{pattern:_r(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[dr]),lookbehind:!0,inside:ra},{pattern:_r(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[Kr,Ca,Zs]),inside:ra}],keyword:el,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),Fs.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),Fs.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:_r(/([(,]\s*)<<0>>(?=\s*:)/.source,[Zs]),lookbehind:!0,alias:"punctuation"}}),Fs.languages.insertBefore("csharp","class-name",{namespace:{pattern:_r(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[Zs]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:_r(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[Il]),lookbehind:!0,alias:"class-name",inside:ra},"return-type":{pattern:_r(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[Kr,Us]),inside:ra,alias:"class-name"},"constructor-invocation":{pattern:_r(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[Kr]),lookbehind:!0,inside:ra,alias:"class-name"},"generic-method":{pattern:_r(/<<0>>\s*<<1>>(?=\s*\()/.source,[Zs,za]),inside:{function:_r(/^<<0>>/.source,[Zs]),generic:{pattern:RegExp(za),alias:"class-name",inside:ra}}},"type-list":{pattern:_r(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[zo,Sr,Zs,Kr,el.source,Il,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:_r(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[Sr,Il]),lookbehind:!0,greedy:!0,inside:Fs.languages.csharp},keyword:el,"class-name":{pattern:RegExp(Kr),greedy:!0,inside:ra},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var Zc=xa+"|"+Ml,cc=Br(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[Zc]),gc=ha(Br(/[^"'/()]|<<0>>|\(<>*\)/.source,[cc]),2),nc=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,Ed=Br(/<<0>>(?:\s*\(<<1>>*\))?/.source,[Us,gc]);Fs.languages.insertBefore("csharp","class-name",{attribute:{pattern:_r(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[nc,Ed]),lookbehind:!0,greedy:!0,inside:{target:{pattern:_r(/^<<0>>(?=\s*:)/.source,[nc]),alias:"keyword"},"attribute-arguments":{pattern:_r(/\(<<0>>*\)/.source,[gc]),inside:Fs.languages.csharp},"class-name":{pattern:RegExp(Us),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var Zl=/:[^}\r\n]+/.source,Vl=ha(Br(/[^"'/()]|<<0>>|\(<>*\)/.source,[cc]),2),Fc=Br(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[Vl,Zl]),qa=ha(Br(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<>*\)/.source,[Zc]),2),Ya=Br(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[qa,Zl]);function kc(Yl,rd){return{interpolation:{pattern:_r(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[Yl]),lookbehind:!0,inside:{"format-string":{pattern:_r(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[rd,Zl]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:Fs.languages.csharp}}},string:/[\s\S]+/}}Fs.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:_r(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[Fc]),lookbehind:!0,greedy:!0,inside:kc(Fc,Vl)},{pattern:_r(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[Ya]),lookbehind:!0,greedy:!0,inside:kc(Ya,qa)}],char:{pattern:RegExp(Ml),greedy:!0}}),Fs.languages.dotnet=Fs.languages.cs=Fs.languages.csharp}(ws),function(Fs){var Br=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;Fs.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+Br.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+Br.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+Br.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+Br.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:Br,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},Fs.languages.css.atrule.inside.rest=Fs.languages.css;var _r=Fs.languages.markup;_r&&(_r.tag.addInlined("style","css"),_r.tag.addAttribute("style","css"))}(ws),function(Fs){var Br=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,_r=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,ha={pattern:RegExp(/(^|[^\w.])/.source+_r+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};Fs.languages.java=Fs.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[ha,{pattern:RegExp(/(^|[^\w.])/.source+_r+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:ha.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+_r+/[A-Z]\w*\b/.source),lookbehind:!0,inside:ha.inside}],keyword:Br,function:[Fs.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),Fs.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),Fs.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":ha,keyword:Br,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+_r+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:ha.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+_r+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:ha.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(//g,function(){return Br.source})),lookbehind:!0,inside:{punctuation:/\./}}})}(ws),ws.languages.javascript=ws.languages.extend("clike",{"class-name":[ws.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),ws.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,ws.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:ws.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:ws.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:ws.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:ws.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:ws.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),ws.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:ws.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),ws.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),ws.languages.markup&&(ws.languages.markup.tag.addInlined("script","javascript"),ws.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),ws.languages.js=ws.languages.javascript,ws.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},ws.languages.markup.tag.inside["attr-value"].inside.entity=ws.languages.markup.entity,ws.languages.markup.doctype.inside["internal-subset"].inside=ws.languages.markup,ws.hooks.add("wrap",function(Fs){Fs.type==="entity"&&(Fs.attributes.title=Fs.content.replace(/&/,"&"))}),Object.defineProperty(ws.languages.markup.tag,"addInlined",{value:function(Br,_r){var ha={};ha["language-"+_r]={pattern:/(^$)/i,lookbehind:!0,inside:ws.languages[_r]},ha.cdata=/^$/i;var hs={"included-cdata":{pattern://i,inside:ha}};hs["language-"+_r]={pattern:/[\s\S]+/,inside:ws.languages[_r]};var Qs={};Qs[Br]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return Br}),"i"),lookbehind:!0,greedy:!0,inside:hs},ws.languages.insertBefore("markup","cdata",Qs)}}),Object.defineProperty(ws.languages.markup.tag,"addAttribute",{value:function(Fs,Br){ws.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+Fs+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[Br,"language-"+Br],inside:ws.languages[Br]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),ws.languages.html=ws.languages.markup,ws.languages.mathml=ws.languages.markup,ws.languages.svg=ws.languages.markup,ws.languages.xml=ws.languages.extend("markup",{}),ws.languages.ssml=ws.languages.xml,ws.languages.atom=ws.languages.xml,ws.languages.rss=ws.languages.xml,function(Fs){var Br=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,_r=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],ha=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,hs=/|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,Qs=/[{}\[\](),:;]/;Fs.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:Br,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:_r,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:ha,operator:hs,punctuation:Qs};var zo={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:Fs.languages.php},el=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:zo}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:zo}}];Fs.languages.insertBefore("php","variable",{string:el,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:Br,string:el,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:_r,number:ha,operator:hs,punctuation:Qs}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),Fs.hooks.add("before-tokenize",function(ga){if(/<\?/.test(ga.code)){var Ca=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;Fs.languages["markup-templating"].buildPlaceholders(ga,"php",Ca)}}),Fs.hooks.add("after-tokenize",function(ga){Fs.languages["markup-templating"].tokenizePlaceholders(ga,"php")})}(ws),ws.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},ws.languages.python["string-interpolation"].inside.interpolation.inside.rest=ws.languages.python,ws.languages.py=ws.languages.python,function(Fs){Fs.languages.ruby=Fs.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===||[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),Fs.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var Br={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:Fs.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete Fs.languages.ruby.function;var _r="(?:"+[/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source].join("|")+")",ha=/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;Fs.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp(/%r/.source+_r+/[egimnosux]{0,6}/.source),greedy:!0,inside:{interpolation:Br,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:Br,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(/(^|[^:]):/.source+ha),lookbehind:!0,greedy:!0},{pattern:RegExp(/([\r\n{(,][ \t]*)/.source+ha+/(?=:(?!:))/.source),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),Fs.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp(/%[qQiIwWs]?/.source+_r),greedy:!0,inside:{interpolation:Br,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:Br,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:Br,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(/%x/.source+_r),greedy:!0,inside:{interpolation:Br,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:Br,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete Fs.languages.ruby.string,Fs.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),Fs.languages.rb=Fs.languages.ruby}(ws),window.Prism=Qr,ws}(),io=ko=>gs=>gs.options.get(ko),uo=ko=>{const gs=ko.options.register;gs("codesample_languages",{processor:"object[]"}),gs("codesample_global_prismjs",{processor:"boolean",default:!1})},mo=io("codesample_languages"),bo=io("codesample_global_prismjs"),Oo=ko=>Jn.Prism&&bo(ko)?Jn.Prism:to,wo=ko=>ke(ko)&&ko.nodeName==="PRE"&&ko.className.indexOf("language-")!==-1,$o=ko=>{const gs=ko.selection?ko.selection.getNode():null;return wo(gs)?zn.some(gs):zn.none()},Do=(ko,gs,xs)=>{const Qr=ko.dom;ko.undoManager.transact(()=>{const cr=$o(ko);return xs=Yn.DOM.encode(xs),cr.fold(()=>{ko.insertContent('
    '+xs+"
    ");const ws=Qr.select("#__new")[0];Qr.setAttrib(ws,"id",null),ko.selection.select(ws)},ws=>{Qr.setAttrib(ws,"class","language-"+gs),ws.innerHTML=xs,Oo(ko).highlightElement(ws),ko.selection.select(ws)})})},xo=ko=>$o(ko).bind(xs=>zn.from(xs.textContent)).getOr(""),Bo=ko=>{const gs=[{text:"HTML/XML",value:"markup"},{text:"JavaScript",value:"javascript"},{text:"CSS",value:"css"},{text:"PHP",value:"php"},{text:"Ruby",value:"ruby"},{text:"Python",value:"python"},{text:"Java",value:"java"},{text:"C",value:"c"},{text:"C#",value:"csharp"},{text:"C++",value:"cpp"}],xs=mo(ko);return xs||gs},Vo=(ko,gs)=>$o(ko).fold(()=>gs,Qr=>{const cr=Qr.className.match(/language-(\w+)/);return cr?cr[1]:gs}),Ko=ko=>{const gs=Bo(ko),xs=qn(gs).fold(Hn(""),ws=>ws.value),Qr=Vo(ko,xs),cr=xo(ko);ko.windowManager.open({title:"Insert/Edit Code Sample",size:"large",body:{type:"panel",items:[{type:"listbox",name:"language",label:"Language",items:gs},{type:"textarea",name:"code",label:"Code view"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{language:Qr,code:cr},onSubmit:ws=>{const Fs=ws.getData();Do(ko,Fs.language,Fs.code),ws.close()}})},Mo=ko=>{ko.addCommand("codesample",()=>{const gs=ko.selection.getNode();ko.selection.isCollapsed()||wo(gs)?Ko(ko):ko.formatter.toggle("code")})},ls=(ko=>gs=>gs.replace(ko,""))(/^\s+|\s+$/g);var ps=tinymce.util.Tools.resolve("tinymce.util.Tools");const rs=ko=>{ko.on("PreProcess",gs=>{const xs=ko.dom,Qr=xs.select("pre[contenteditable=false]",gs.node);ps.each(ps.grep(Qr,wo),cr=>{const ws=cr.textContent;xs.setAttrib(cr,"class",ls(xs.getAttrib(cr,"class"))),xs.setAttrib(cr,"contentEditable",null),xs.setAttrib(cr,"data-mce-highlighted",null);let Fs;for(;Fs=cr.firstChild;)cr.removeChild(Fs);const Br=xs.add(cr,"code");Br.textContent=ws})}),ko.on("SetContent",()=>{const gs=ko.dom,xs=ps.grep(gs.select("pre"),Qr=>wo(Qr)&&gs.getAttrib(Qr,"data-mce-highlighted")!=="true");xs.length&&ko.undoManager.transact(()=>{ps.each(xs,Qr=>{var cr;ps.each(gs.select("br",Qr),ws=>{gs.replace(ko.getDoc().createTextNode(` +`),ws)}),Qr.innerHTML=gs.encode((cr=Qr.textContent)!==null&&cr!==void 0?cr:""),Oo(ko).highlightElement(Qr),gs.setAttrib(Qr,"data-mce-highlighted",!0),Qr.className=ls(Qr.className)})})}),ko.on("PreInit",()=>{ko.parser.addNodeFilter("pre",gs=>{var xs;for(let Qr=0,cr=gs.length;Qrxs=>{const Qr=()=>{xs.setEnabled(ko.selection.isEditable()),gs(xs)};return ko.on("NodeChange",Qr),Qr(),()=>{ko.off("NodeChange",Qr)}},Ys=ko=>{const gs=ko.selection.getStart();return ko.dom.is(gs,'pre[class*="language-"]')},sr=ko=>{const gs=()=>ko.execCommand("codesample");ko.ui.registry.addToggleButton("codesample",{icon:"code-sample",tooltip:"Insert/edit code sample",onAction:gs,onSetup:Yo(ko,xs=>{xs.setActive(Ys(ko))})}),ko.ui.registry.addMenuItem("codesample",{text:"Code sample...",icon:"code-sample",onAction:gs,onSetup:Yo(ko)})};var Js=()=>{_n.add("codesample",ko=>{uo(ko),rs(ko),sr(ko),Mo(ko),ko.on("dblclick",gs=>{wo(gs.target)&&Ko(ko)})})};Js()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=(Ts,ks,ir)=>{var br;return ir(Ts,ks.prototype)?!0:((br=Ts.constructor)===null||br===void 0?void 0:br.name)===ks.name},ke=Ts=>{const ks=typeof Ts;return Ts===null?"null":ks==="object"&&Array.isArray(Ts)?"array":ks==="object"&&Ce(Ts,String,(ir,br)=>br.isPrototypeOf(ir))?"string":ks},$n=Ts=>ks=>ke(ks)===Ts,Hn=$n("string"),zn=$n("object"),Zn=$n("array"),qn=Ts=>Ts==null,Yn=Ts=>!qn(Ts);class Jn{constructor(ks,ir){this.tag=ks,this.value=ir}static some(ks){return new Jn(!0,ks)}static none(){return Jn.singletonNone}fold(ks,ir){return this.tag?ir(this.value):ks()}isSome(){return this.tag}isNone(){return!this.tag}map(ks){return this.tag?Jn.some(ks(this.value)):Jn.none()}bind(ks){return this.tag?ks(this.value):Jn.none()}exists(ks){return this.tag&&ks(this.value)}forall(ks){return!this.tag||ks(this.value)}filter(ks){return!this.tag||ks(this.value)?this:Jn.none()}getOr(ks){return this.tag?this.value:ks}or(ks){return this.tag?this:ks}getOrThunk(ks){return this.tag?this.value:ks()}orThunk(ks){return this.tag?this:ks()}getOrDie(ks){if(this.tag)return this.value;throw new Error(ks??"Called getOrDie on None")}static from(ks){return Yn(ks)?Jn.some(ks):Jn.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(ks){this.tag&&ks(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Jn.singletonNone=new Jn(!1);const to=Array.prototype.push,io=(Ts,ks)=>{for(let ir=0,br=Ts.length;ir{const ks=[];for(let ir=0,br=Ts.length;ir{let ks=Ts;return{get:()=>ks,set:Aa=>{ks=Aa}}},bo=Object.keys,Oo=Object.hasOwnProperty,wo=(Ts,ks)=>{const ir=bo(Ts);for(let br=0,Aa=ir.length;brDo(Ts,ks)?Jn.from(Ts[ks]):Jn.none(),Do=(Ts,ks)=>Oo.call(Ts,ks),xo=Ts=>ks=>ks.options.get(Ts),Bo=Ts=>{const ks=Ts.options.register;ks("audio_template_callback",{processor:"function"}),ks("video_template_callback",{processor:"function"}),ks("iframe_template_callback",{processor:"function"}),ks("media_live_embeds",{processor:"boolean",default:!0}),ks("media_filter_html",{processor:"boolean",default:!0}),ks("media_url_resolver",{processor:"function"}),ks("media_alt_source",{processor:"boolean",default:!0}),ks("media_poster",{processor:"boolean",default:!0}),ks("media_dimensions",{processor:"boolean",default:!0})},Vo=xo("audio_template_callback"),Ko=xo("video_template_callback"),Mo=xo("iframe_template_callback"),es=xo("media_live_embeds"),ls=xo("media_filter_html"),ps=xo("media_url_resolver"),rs=xo("media_alt_source"),Yo=xo("media_poster"),Ys=xo("media_dimensions");var sr=tinymce.util.Tools.resolve("tinymce.util.Tools"),Js=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),ko=tinymce.util.Tools.resolve("tinymce.html.DomParser");const gs=Js.DOM,xs=Ts=>Ts.replace(/px$/,""),Qr=Ts=>{const ks=Ts.attr("style"),ir=ks?gs.parseStyle(ks):{};return{type:"ephox-embed-iri",source:Ts.attr("data-ephox-embed-iri"),altsource:"",poster:"",width:$o(ir,"max-width").map(xs).getOr(""),height:$o(ir,"max-height").map(xs).getOr("")}},cr=(Ts,ks)=>{let ir={};const Aa=ko({validate:!1,forced_root_block:!1},ks).parse(Ts);for(let Ba=Aa;Ba;Ba=Ba.walk())if(Ba.type===1){const _l=Ba.name;if(Ba.attr("data-ephox-embed-iri")){ir=Qr(Ba);break}else!ir.source&&_l==="param"&&(ir.source=Ba.attr("movie")),(_l==="iframe"||_l==="object"||_l==="embed"||_l==="video"||_l==="audio")&&(ir.type||(ir.type=_l),ir=sr.extend(Ba.attributes.map,ir)),_l==="source"&&(ir.source?ir.altsource||(ir.altsource=Ba.attr("src")):ir.source=Ba.attr("src")),_l==="img"&&!ir.poster&&(ir.poster=Ba.attr("src"))}return ir.source=ir.source||ir.src||"",ir.altsource=ir.altsource||"",ir.poster=ir.poster||"",ir},ws=Ts=>{var ks;const ir={mp3:"audio/mpeg",m4a:"audio/x-m4a",wav:"audio/wav",mp4:"video/mp4",webm:"video/webm",ogg:"video/ogg",swf:"application/x-shockwave-flash"},br=(ks=Ts.toLowerCase().split(".").pop())!==null&&ks!==void 0?ks:"";return $o(ir,br).getOr("")};var Fs=tinymce.util.Tools.resolve("tinymce.html.Node"),Br=tinymce.util.Tools.resolve("tinymce.html.Serializer");const _r=(Ts,ks={})=>ko({forced_root_block:!1,validate:!1,allow_conditional_comments:!0,...ks},Ts),ha=Js.DOM,hs=Ts=>/^[0-9.]+$/.test(Ts)?Ts+"px":Ts,Qs=(Ts,ks)=>{const ir=ks.attr("style"),br=ir?ha.parseStyle(ir):{};Yn(Ts.width)&&(br["max-width"]=hs(Ts.width)),Yn(Ts.height)&&(br["max-height"]=hs(Ts.height)),ks.attr("style",ha.serializeStyle(br))},zo=["source","altsource"],el=(Ts,ks,ir,br)=>{let Aa=0,Ba=0;const _l=_r(br);_l.addNodeFilter("source",Ds=>Aa=Ds.length);const Hc=_l.parse(Ts);for(let Ds=Hc;Ds;Ds=Ds.walk())if(Ds.type===1){const tl=Ds.name;if(Ds.attr("data-ephox-embed-iri")){Qs(ks,Ds);break}else{switch(tl){case"video":case"object":case"embed":case"img":case"iframe":ks.height!==void 0&&ks.width!==void 0&&(Ds.attr("width",ks.width),Ds.attr("height",ks.height));break}if(ir)switch(tl){case"video":Ds.attr("poster",ks.poster),Ds.attr("src",null);for(let qu=Aa;qu<2;qu++)if(ks[zo[qu]]){const Md=new Fs("source",1);Md.attr("src",ks[zo[qu]]),Md.attr("type",ks[zo[qu]+"mime"]||null),Ds.append(Md)}break;case"iframe":Ds.attr("src",ks.source);break;case"object":const wu=Ds.getAll("img").length>0;if(ks.poster&&!wu){Ds.attr("src",ks.poster);const qu=new Fs("img",1);qu.attr("src",ks.poster),qu.attr("width",ks.width),qu.attr("height",ks.height),Ds.append(qu)}break;case"source":if(Ba<2&&(Ds.attr("src",ks[zo[Ba]]),Ds.attr("type",ks[zo[Ba]+"mime"]||null),!ks[zo[Ba]])){Ds.remove();continue}Ba++;break;case"img":ks.poster||Ds.remove();break}}}return Br({},br).serialize(Hc)},ga=[{regex:/youtu\.be\/([\w\-_\?&=.]+)/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$1",allowFullscreen:!0},{regex:/youtube\.com(.+)v=([^&]+)(&([a-z0-9&=\-_]+))?/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$2?$4",allowFullscreen:!0},{regex:/youtube.com\/embed\/([a-z0-9\?&=\-_]+)/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$1",allowFullscreen:!0},{regex:/vimeo\.com\/([0-9]+)\?h=(\w+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$1?h=$2&title=0&byline=0&portrait=0&color=8dc7dc",allowFullscreen:!0},{regex:/vimeo\.com\/(.*)\/([0-9]+)\?h=(\w+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$2?h=$3&title=0&byline=0",allowFullscreen:!0},{regex:/vimeo\.com\/([0-9]+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$1?title=0&byline=0&portrait=0&color=8dc7dc",allowFullscreen:!0},{regex:/vimeo\.com\/(.*)\/([0-9]+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$2?title=0&byline=0",allowFullscreen:!0},{regex:/maps\.google\.([a-z]{2,3})\/maps\/(.+)msid=(.+)/,type:"iframe",w:425,h:350,url:'maps.google.com/maps/ms?msid=$2&output=embed"',allowFullscreen:!1},{regex:/dailymotion\.com\/video\/([^_]+)/,type:"iframe",w:480,h:270,url:"www.dailymotion.com/embed/video/$1",allowFullscreen:!0},{regex:/dai\.ly\/([^_]+)/,type:"iframe",w:480,h:270,url:"www.dailymotion.com/embed/video/$1",allowFullscreen:!0}],Ca=Ts=>{const ks=Ts.match(/^(https?:\/\/|www\.)(.+)$/i);return ks&&ks.length>1?ks[1]==="www."?"https://":ks[1]:"https://"},za=(Ts,ks)=>{const ir=Ca(ks),br=Ts.regex.exec(ks);let Aa=ir+Ts.url;if(Yn(br))for(let Ba=0;Babr[Ba]?br[Ba]:"");return Aa.replace(/\?$/,"")},Il=Ts=>{const ks=ga.filter(ir=>ir.regex.test(Ts));return ks.length>0?sr.extend({},ks[0],{url:za(ks[0],Ts)}):null},Zs=(Ts,ks)=>{if(ks)return ks(Ts);{const ir=Ts.allowfullscreen?' allowFullscreen="1"':"";return'"}},Sr=Ts=>{let ks='';return Ts.poster&&(ks+=''),ks+="",ks},Us=(Ts,ks)=>ks?ks(Ts):'",fs=(Ts,ks)=>ks?ks(Ts):'",dr=(Ts,ks)=>{var ir;const br=sr.extend({},ks);if(!br.source&&(sr.extend(br,cr((ir=br.embed)!==null&&ir!==void 0?ir:"",Ts.schema)),!br.source))return"";br.altsource||(br.altsource=""),br.poster||(br.poster=""),br.source=Ts.convertURL(br.source,"source"),br.altsource=Ts.convertURL(br.altsource,"source"),br.sourcemime=ws(br.source),br.altsourcemime=ws(br.altsource),br.poster=Ts.convertURL(br.poster,"poster");const Aa=Il(br.source);if(Aa&&(br.source=Aa.url,br.type=Aa.type,br.allowfullscreen=Aa.allowFullscreen,br.width=br.width||String(Aa.w),br.height=br.height||String(Aa.h)),br.embed)return el(br.embed,br,!0,Ts.schema);{const Ba=Vo(Ts),_l=Ko(Ts),Hc=Mo(Ts);return br.width=br.width||"300",br.height=br.height||"150",sr.each(br,(Ds,tl)=>{br[tl]=Ts.dom.encode(""+Ds)}),br.type==="iframe"?Zs(br,Hc):br.sourcemime==="application/x-shockwave-flash"?Sr(br):br.sourcemime.indexOf("audio")!==-1?Us(br,Ba):fs(br,_l)}},Vr=Ts=>Ts.hasAttribute("data-mce-object")||Ts.hasAttribute("data-ephox-embed-iri"),nr=Ts=>{Ts.on("click keyup touchend",()=>{const ks=Ts.selection.getNode();ks&&Ts.dom.hasClass(ks,"mce-preview-object")&&Ts.dom.getAttrib(ks,"data-mce-selected")&&ks.setAttribute("data-mce-selected","2")}),Ts.on("ObjectResized",ks=>{const ir=ks.target;if(ir.getAttribute("data-mce-object")){let br=ir.getAttribute("data-mce-html");br&&(br=unescape(br),ir.setAttribute("data-mce-html",escape(el(br,{width:String(ks.width),height:String(ks.height)},!1,Ts.schema))))}})},Kr={},ra=(Ts,ks,ir)=>new Promise((br,Aa)=>{const Ba=_l=>(_l.html&&(Kr[Ts.source]=_l),br({url:Ts.source,html:_l.html?_l.html:ks(Ts)}));Kr[Ts.source]?Ba(Kr[Ts.source]):ir({url:Ts.source},Ba,Aa)}),Ml=(Ts,ks)=>Promise.resolve({html:ks(Ts),url:Ts.source}),xa=Ts=>ks=>dr(Ts,ks),Nl=(Ts,ks)=>{const ir=ps(Ts);return ir?ra(ks,xa(Ts),ir):Ml(ks,xa(Ts))},Zc=Ts=>Do(Kr,Ts),cc=(Ts,ks)=>$o(ks,Ts).bind(ir=>$o(ir,"meta")),gc=(Ts,ks,ir)=>br=>{const Aa=()=>$o(Ts,br),Ba=()=>$o(ks,br),_l=tl=>$o(tl,"value").bind(wu=>wu.length>0?Jn.some(wu):Jn.none()),Hc=()=>Aa().bind(tl=>zn(tl)?_l(tl).orThunk(Ba):Ba().orThunk(()=>Jn.from(tl))),Ds=()=>Ba().orThunk(()=>Aa().bind(tl=>zn(tl)?_l(tl):Jn.from(tl)));return{[br]:(br===ir?Hc():Ds()).getOr("")}},nc=(Ts,ks)=>{const ir={};return $o(Ts,"dimensions").each(br=>{io(["width","height"],Aa=>{$o(ks,Aa).orThunk(()=>$o(br,Aa)).each(Ba=>ir[Aa]=Ba)})}),ir},Ed=(Ts,ks)=>{const ir=ks&&ks!=="dimensions"?cc(ks,Ts).getOr({}):{},br=gc(Ts,ir,ks);return{...br("source"),...br("altsource"),...br("poster"),...br("embed"),...nc(Ts,ir)}},Zl=Ts=>{const ks={...Ts,source:{value:$o(Ts,"source").getOr("")},altsource:{value:$o(Ts,"altsource").getOr("")},poster:{value:$o(Ts,"poster").getOr("")}};return io(["width","height"],ir=>{$o(Ts,ir).each(br=>{const Aa=ks.dimensions||{};Aa[ir]=br,ks.dimensions=Aa})}),ks},Vl=Ts=>ks=>{const ir=ks&&ks.msg?"Media embed handler error: "+ks.msg:"Media embed handler threw unknown error.";Ts.notificationManager.open({type:"error",text:ir})},Fc=Ts=>{const ks=Ts.selection.getNode(),ir=Vr(ks)?Ts.serializer.serialize(ks,{selection:!0}):"",br=cr(ir,Ts.schema),Ba=(()=>{if(Yl(br.source,br.type)){const _l=Ts.dom.getRect(ks);return{width:_l.w.toString().replace(/px$/,""),height:_l.h.toString().replace(/px$/,"")}}else return{}})();return{embed:ir,...br,...Ba}},qa=(Ts,ks)=>ir=>{if(Hn(ir.url)&&ir.url.trim().length>0){const br=ir.html,Ba={...cr(br,ks.schema),source:ir.url,embed:br};Ts.setData(Zl(Ba))}},Ya=(Ts,ks)=>{const ir=Ts.dom.select("*[data-mce-object]");for(let br=0;br=0;Aa--)ks[br]===ir[Aa]&&ir.splice(Aa,1);Ts.selection.select(ir[0])},kc=(Ts,ks)=>{const ir=Ts.dom.select("*[data-mce-object]");Ts.insertContent(ks),Ya(Ts,ir),Ts.nodeChanged()},Yl=(Ts,ks)=>Yn(ks)&&ks==="ephox-embed-iri"&&Yn(Il(Ts)),rd=(Ts,ks)=>((br,Aa)=>br.width!==Aa.width||br.height!==Aa.height)(Ts,ks)&&Yl(ks.source,Ts.type),Al=(Ts,ks,ir)=>{var br;ks.embed=rd(Ts,ks)&&Ys(ir)?dr(ir,{...ks,embed:""}):el((br=ks.embed)!==null&&br!==void 0?br:"",ks,!1,ir.schema),ks.embed&&(Ts.source===ks.source||Zc(ks.source))?kc(ir,ks.embed):Nl(ir,ks).then(Aa=>{kc(ir,Aa.html)}).catch(Vl(ir))},gd=Ts=>{const ks=Fc(Ts),ir=mo(ks),br=Zl(ks),Aa=(ld,oc)=>{const Dc=Ed(oc.getData(),"source");ld.source!==Dc.source&&(qa(Ud,Ts)({url:Dc.source,html:""}),Nl(Ts,Dc).then(qa(Ud,Ts)).catch(Vl(Ts)))},Ba=ld=>{var oc;const Dc=Ed(ld.getData()),bd=cr((oc=Dc.embed)!==null&&oc!==void 0?oc:"",Ts.schema);ld.setData(Zl(bd))},_l=(ld,oc,Dc)=>{const bd=Ed(ld.getData(),oc),Nd=rd(Dc,bd)&&Ys(Ts)?{...bd,embed:""}:bd,ih=dr(Ts,Nd);ld.setData(Zl({...Nd,embed:ih}))},Hc=[{name:"source",type:"urlinput",filetype:"media",label:"Source",picker_text:"Browse files"}],Ds=Ys(Ts)?[{type:"sizeinput",name:"dimensions",label:"Constrain proportions",constrain:!0}]:[],tl={title:"General",name:"general",items:uo([Hc,Ds])},qu={title:"Embed",items:[{type:"textarea",name:"embed",label:"Paste your embed code below:"}]},Md=[];rs(Ts)&&Md.push({name:"altsource",type:"urlinput",filetype:"media",label:"Alternative source URL"}),Yo(Ts)&&Md.push({name:"poster",type:"urlinput",filetype:"image",label:"Media poster (Image URL)"});const bc={title:"Advanced",name:"advanced",items:Md},nm=[tl,qu];Md.length>0&&nm.push(bc);const Ff={type:"tabpanel",tabs:nm},Ud=Ts.windowManager.open({title:"Insert/Edit Media",size:"normal",body:Ff,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],onSubmit:ld=>{const oc=Ed(ld.getData());Al(ir.get(),oc,Ts),ld.close()},onChange:(ld,oc)=>{switch(oc.name){case"source":Aa(ir.get(),ld);break;case"embed":Ba(ld);break;case"dimensions":case"altsource":case"poster":_l(ld,oc.name,ir.get());break}ir.set(Ed(ld.getData()))},initialData:br})},Rr=Ts=>({showDialog:()=>{gd(Ts)}}),Pl=Ts=>{const ks=()=>{gd(Ts)};Ts.addCommand("mceMedia",ks)},Su=(Ts,ks,ir)=>Ts.length>=ks.length&&Ts.substr(ir,ir+ks.length)===ks,vs=(Ts,ks)=>Su(Ts,ks,0);var Es=tinymce.util.Tools.resolve("tinymce.Env");const Ks=Ts=>{const ks=Ts.name;return ks==="iframe"||ks==="video"||ks==="audio"},pr=(Ts,ks,ir,br=null)=>{const Aa=Ts.attr(ir);return Yn(Aa)?Aa:Do(ks,ir)?null:br},ia=(Ts,ks,ir)=>{const br=ks.name==="img"||Ts.name==="video",Aa=br?"300":null,Ba=Ts.name==="audio"?"30":"150",_l=br?Ba:null;ks.attr({width:pr(Ts,ir,"width",Aa),height:pr(Ts,ir,"height",_l)})},ka=(Ts,ks,ir,br)=>{const Aa=_r(Ts.schema).parse(br,{context:ks});for(;Aa.firstChild;)ir.append(Aa.firstChild)},Ma=(Ts,ks)=>{const ir=ks.name,br=new Fs("img",1);return il(Ts,ks,br),ia(ks,br,{}),br.attr({style:ks.attr("style"),src:Es.transparentSrc,"data-mce-object":ir,class:"mce-object mce-object-"+ir}),br},Mr=(Ts,ks)=>{var ir;const br=ks.name,Aa=new Fs("span",1);Aa.attr({contentEditable:"false",style:ks.attr("style"),"data-mce-object":br,class:"mce-preview-object mce-object-"+br}),il(Ts,ks,Aa);const Ba=Ts.dom.parseStyle((ir=ks.attr("style"))!==null&&ir!==void 0?ir:""),_l=new Fs(br,1);if(ia(ks,_l,Ba),_l.attr({src:ks.attr("src"),style:ks.attr("style"),class:ks.attr("class")}),br==="iframe")_l.attr({allowfullscreen:ks.attr("allowfullscreen"),frameborder:"0",sandbox:ks.attr("sandbox")});else{io(["controls","crossorigin","currentTime","loop","muted","poster","preload"],wu=>{_l.attr(wu,ks.attr(wu))});const tl=Aa.attr("data-mce-html");Yn(tl)&&ka(Ts,br,_l,unescape(tl))}const Hc=new Fs("span",1);return Hc.attr("class","mce-shim"),Aa.append(_l),Aa.append(Hc),Aa},il=(Ts,ks,ir)=>{var br;const Aa=(br=ks.attributes)!==null&&br!==void 0?br:[];let Ba=Aa.length;for(;Ba--;){const tl=Aa[Ba].name;let wu=Aa[Ba].value;tl!=="width"&&tl!=="height"&&tl!=="style"&&!vs(tl,"data-mce-")&&((tl==="data"||tl==="src")&&(wu=Ts.convertURL(wu,tl)),ir.attr("data-mce-p-"+tl,wu))}const _l=Br({inner:!0},Ts.schema),Hc=new Fs("div",1);io(ks.children(),tl=>Hc.append(tl));const Ds=_l.serialize(Hc);Ds&&(ir.attr("data-mce-html",escape(Ds)),ir.empty())},Na=Ts=>{const ks=Ts.attr("class");return Hn(ks)&&/\btiny-pageembed\b/.test(ks)},vl=Ts=>{let ks=Ts;for(;ks=ks.parent;)if(ks.attr("data-ephox-embed-iri")||Na(ks))return!0;return!1},Rc=Ts=>ks=>{let ir=ks.length,br;for(;ir--;)br=ks[ir],br.parent&&(br.parent.attr("data-mce-object")||(Ks(br)&&es(Ts)?vl(br)||br.replace(Mr(Ts,br)):vl(br)||br.replace(Ma(Ts,br))))},Vc=(Ts,ks,ir)=>{const br=Ts.options.get,Aa=br("xss_sanitization"),Ba=ls(Ts);return _r(Ts.schema,{sanitize:Aa,validate:Ba}).parse(ir,{context:ks})},xc=Ts=>{Ts.on("PreInit",()=>{const{schema:ks,serializer:ir,parser:br}=Ts,Aa=ks.getBoolAttrs();io("webkitallowfullscreen mozallowfullscreen".split(" "),Ba=>{Aa[Ba]={}}),wo({embed:["wmode"]},(Ba,_l)=>{const Hc=ks.getElementRule(_l);Hc&&io(Ba,Ds=>{Hc.attributes[Ds]={},Hc.attributesOrder.push(Ds)})}),br.addNodeFilter("iframe,video,audio,object,embed",Rc(Ts)),ir.addAttributeFilter("data-mce-object",(Ba,_l)=>{var Hc;let Ds=Ba.length;for(;Ds--;){const tl=Ba[Ds];if(!tl.parent)continue;const wu=tl.attr(_l),qu=new Fs(wu,1);if(wu!=="audio"){const Ff=tl.attr("class");Ff&&Ff.indexOf("mce-preview-object")!==-1&&tl.firstChild?qu.attr({width:tl.firstChild.attr("width"),height:tl.firstChild.attr("height")}):qu.attr({width:tl.attr("width"),height:tl.attr("height")})}qu.attr({style:tl.attr("style")});const Md=(Hc=tl.attributes)!==null&&Hc!==void 0?Hc:[];let bc=Md.length;for(;bc--;){const Ff=Md[bc].name;Ff.indexOf("data-mce-p-")===0&&qu.attr(Ff.substr(11),Md[bc].value)}const nm=tl.attr("data-mce-html");if(nm){const Ff=Vc(Ts,wu,unescape(nm));io(Ff.children(),Ud=>qu.append(Ud))}tl.replace(qu)}})}),Ts.on("SetContent",()=>{const ks=Ts.dom;io(ks.select("span.mce-preview-object"),ir=>{ks.select("span.mce-shim",ir).length===0&&ks.add(ir,"span",{class:"mce-shim"})})})},zc=Ts=>{Ts.on("ResolveName",ks=>{let ir;ks.target.nodeType===1&&(ir=ks.target.getAttribute("data-mce-object"))&&(ks.name=ir)})},ad=Ts=>ks=>{const ir=()=>{ks.setEnabled(Ts.selection.isEditable())};return Ts.on("NodeChange",ir),ir(),()=>{Ts.off("NodeChange",ir)}},Bh=Ts=>{const ks=()=>Ts.execCommand("mceMedia");Ts.ui.registry.addToggleButton("media",{tooltip:"Insert/edit media",icon:"embed",onAction:ks,onSetup:ir=>{const br=Ts.selection;ir.setActive(Vr(br.getNode()));const Aa=br.selectorChangedWithUnbind("img[data-mce-object],span[data-mce-object],div[data-ephox-embed-iri]",ir.setActive).unbind,Ba=ad(Ts)(ir);return()=>{Aa(),Ba()}}}),Ts.ui.registry.addMenuItem("media",{icon:"embed",text:"Media...",onAction:ks,onSetup:ad(Ts)})};var Vu=()=>{_n.add("media",Ts=>(Bo(Ts),Pl(Ts),Bh(Ts),zc(Ts),xc(Ts),nr(Ts),Rr(Ts)))};Vu()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const Ce=(Eo,Io,Go)=>{var Ss;return Go(Eo,Io.prototype)?!0:((Ss=Eo.constructor)===null||Ss===void 0?void 0:Ss.name)===Io.name},ke=Eo=>{const Io=typeof Eo;return Eo===null?"null":Io==="object"&&Array.isArray(Eo)?"array":Io==="object"&&Ce(Eo,String,(Go,Ss)=>Ss.isPrototypeOf(Go))?"string":Io},$n=Eo=>Io=>ke(Io)===Eo,Hn=Eo=>Io=>typeof Io===Eo,zn=$n("string"),Zn=$n("object"),qn=$n("array"),Yn=Hn("boolean"),Jn=Eo=>Eo==null,to=Eo=>!Jn(Eo),io=Hn("function"),uo=Hn("number"),mo=()=>{},bo=(Eo,Io)=>Go=>Eo(Io(Go)),Oo=Eo=>()=>Eo,wo=(Eo,Io)=>Eo===Io;function $o(Eo,...Io){return(...Go)=>{const Ss=Io.concat(Go);return Eo.apply(null,Ss)}}const Do=Eo=>Io=>!Eo(Io),xo=Oo(!1);class Bo{constructor(Io,Go){this.tag=Io,this.value=Go}static some(Io){return new Bo(!0,Io)}static none(){return Bo.singletonNone}fold(Io,Go){return this.tag?Go(this.value):Io()}isSome(){return this.tag}isNone(){return!this.tag}map(Io){return this.tag?Bo.some(Io(this.value)):Bo.none()}bind(Io){return this.tag?Io(this.value):Bo.none()}exists(Io){return this.tag&&Io(this.value)}forall(Io){return!this.tag||Io(this.value)}filter(Io){return!this.tag||Io(this.value)?this:Bo.none()}getOr(Io){return this.tag?this.value:Io}or(Io){return this.tag?this:Io}getOrThunk(Io){return this.tag?this.value:Io()}orThunk(Io){return this.tag?this:Io()}getOrDie(Io){if(this.tag)return this.value;throw new Error(Io??"Called getOrDie on None")}static from(Io){return to(Io)?Bo.some(Io):Bo.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Io){this.tag&&Io(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Bo.singletonNone=new Bo(!1);const Vo=Array.prototype.slice,Ko=Array.prototype.indexOf,Mo=Array.prototype.push,es=(Eo,Io)=>Ko.call(Eo,Io),ls=(Eo,Io)=>es(Eo,Io)>-1,ps=(Eo,Io)=>{for(let Go=0,Ss=Eo.length;Go{const Go=Eo.length,Ss=new Array(Go);for(let Rs=0;Rs{for(let Go=0,Ss=Eo.length;Go{const Go=[];for(let Ss=0,Rs=Eo.length;Ss{if(Eo.length===0)return[];{let Go=Io(Eo[0]);const Ss=[];let Rs=[];for(let $r=0,Ea=Eo.length;$r(Yo(Eo,(Ss,Rs)=>{Go=Io(Go,Ss,Rs)}),Go),ko=(Eo,Io,Go)=>{for(let Ss=0,Rs=Eo.length;Ssko(Eo,Io,xo),xs=Eo=>{const Io=[];for(let Go=0,Ss=Eo.length;Goxs(rs(Eo,Io)),cr=Eo=>{const Io=Vo.call(Eo,0);return Io.reverse(),Io},ws=(Eo,Io)=>Io>=0&&Iows(Eo,0),Br=Eo=>ws(Eo,Eo.length-1),_r=(Eo,Io)=>{const Go=[],Ss=io(Io)?Rs=>ps(Go,$r=>Io($r,Rs)):Rs=>ls(Go,Rs);for(let Rs=0,$r=Eo.length;Rs<$r;Rs++){const Ea=Eo[Rs];Ss(Ea)||Go.push(Ea)}return Go},ha=(Eo,Io,Go=wo)=>Eo.exists(Ss=>Go(Ss,Io)),hs=(Eo,Io,Go=wo)=>Qs(Eo,Io,Go).getOr(Eo.isNone()&&Io.isNone()),Qs=(Eo,Io,Go)=>Eo.isSome()&&Io.isSome()?Bo.some(Go(Eo.getOrDie(),Io.getOrDie())):Bo.none(),zo=8,el=9,ga=11,Ca=1,za=3,Il=(Eo,Io)=>{const Ss=(Io||document).createElement("div");if(Ss.innerHTML=Eo,!Ss.hasChildNodes()||Ss.childNodes.length>1){const Rs="HTML does not have a single root node";throw console.error(Rs,Eo),new Error(Rs)}return Us(Ss.childNodes[0])},Zs=(Eo,Io)=>{const Ss=(Io||document).createElement(Eo);return Us(Ss)},Sr=(Eo,Io)=>{const Ss=(Io||document).createTextNode(Eo);return Us(Ss)},Us=Eo=>{if(Eo==null)throw new Error("Node cannot be null or undefined");return{dom:Eo}},dr={fromHtml:Il,fromTag:Zs,fromText:Sr,fromDom:Us,fromPoint:(Eo,Io,Go)=>Bo.from(Eo.dom.elementFromPoint(Io,Go)).map(Us)},Vr=(Eo,Io)=>{const Go=Eo.dom;if(Go.nodeType!==Ca)return!1;{const Ss=Go;if(Ss.matches!==void 0)return Ss.matches(Io);if(Ss.msMatchesSelector!==void 0)return Ss.msMatchesSelector(Io);if(Ss.webkitMatchesSelector!==void 0)return Ss.webkitMatchesSelector(Io);if(Ss.mozMatchesSelector!==void 0)return Ss.mozMatchesSelector(Io);throw new Error("Browser lacks native selectors")}},nr=(Eo,Io)=>Eo.dom===Io.dom,Kr=(Eo,Io)=>{const Go=Eo.dom,Ss=Io.dom;return Go===Ss?!1:Go.contains(Ss)},ra=Vr,Ml=typeof window<"u"?window:Function("return this;")(),xa=(Eo,Io)=>{let Go=Io??Ml;for(let Ss=0;Ss{const Go=Eo.split(".");return xa(Go,Io)},Zc=(Eo,Io)=>Nl(Eo,Io),cc=(Eo,Io)=>{const Go=Zc(Eo,Io);if(Go==null)throw new Error(Eo+" not available on this browser");return Go},gc=Object.getPrototypeOf,nc=Eo=>cc("HTMLElement",Eo),Ed=Eo=>{const Io=Nl("ownerDocument.defaultView",Eo);return Zn(Eo)&&(nc(Io).prototype.isPrototypeOf(Eo)||/^HTML\w*Element$/.test(gc(Eo).constructor.name))},Zl=Eo=>Eo.dom.nodeName.toLowerCase(),Vl=Eo=>Eo.dom.nodeType,Fc=Eo=>Io=>Vl(Io)===Eo,qa=Eo=>Vl(Eo)===zo||Zl(Eo)==="#comment",Ya=Eo=>kc(Eo)&&Ed(Eo.dom),kc=Fc(Ca),Yl=Fc(za),rd=Fc(el),Al=Fc(ga),gd=Eo=>Io=>kc(Io)&&Zl(Io)===Eo,Rr=Eo=>dr.fromDom(Eo.dom.ownerDocument),Pl=Eo=>rd(Eo)?Eo:Rr(Eo),Su=Eo=>Bo.from(Eo.dom.parentNode).map(dr.fromDom),vs=Eo=>Bo.from(Eo.dom.parentElement).map(dr.fromDom),Es=Eo=>Bo.from(Eo.dom.nextSibling).map(dr.fromDom),Ks=Eo=>rs(Eo.dom.childNodes,dr.fromDom),pr=(Eo,Io)=>{const Go=Eo.dom.childNodes;return Bo.from(Go[Io]).map(dr.fromDom)},ia=Eo=>pr(Eo,0),ka=Eo=>pr(Eo,Eo.dom.childNodes.length-1),Ma=Eo=>Al(Eo)&&to(Eo.dom.host),il=io(Element.prototype.attachShadow)&&io(Node.prototype.getRootNode)?Eo=>dr.fromDom(Eo.dom.getRootNode()):Pl,Na=Eo=>{const Io=il(Eo);return Ma(Io)?Bo.some(Io):Bo.none()},vl=Eo=>dr.fromDom(Eo.dom.host),Rc=Eo=>{const Io=Yl(Eo)?Eo.dom.parentNode:Eo.dom;if(Io==null||Io.ownerDocument===null)return!1;const Go=Io.ownerDocument;return Na(dr.fromDom(Io)).fold(()=>Go.body.contains(Io),bo(Rc,vl))};var Vc=(Eo,Io,Go,Ss,Rs)=>Eo(Go,Ss)?Bo.some(Go):io(Rs)&&Rs(Go)?Bo.none():Io(Go,Ss,Rs);const xc=(Eo,Io,Go)=>{let Ss=Eo.dom;const Rs=io(Go)?Go:xo;for(;Ss.parentNode;){Ss=Ss.parentNode;const $r=dr.fromDom(Ss);if(Io($r))return Bo.some($r);if(Rs($r))break}return Bo.none()},zc=(Eo,Io,Go)=>Vc((Rs,$r)=>$r(Rs),xc,Eo,Io,Go),ad=(Eo,Io,Go)=>xc(Eo,Ss=>Vr(Ss,Io),Go),Bh=(Eo,Io,Go)=>Vc((Rs,$r)=>Vr(Rs,$r),ad,Eo,Io,Go),Vu=Eo=>Bh(Eo,"[contenteditable]"),Ts=(Eo,Io=!1)=>Rc(Eo)?Eo.dom.isContentEditable:Vu(Eo).fold(Oo(Io),Go=>ks(Go)==="true"),ks=Eo=>Eo.dom.contentEditable,ir=(Eo,Io)=>{Su(Eo).each(Ss=>{Ss.dom.insertBefore(Io.dom,Eo.dom)})},br=(Eo,Io)=>{Es(Eo).fold(()=>{Su(Eo).each(Rs=>{Ba(Rs,Io)})},Ss=>{ir(Ss,Io)})},Aa=(Eo,Io)=>{ia(Eo).fold(()=>{Ba(Eo,Io)},Ss=>{Eo.dom.insertBefore(Io.dom,Ss.dom)})},Ba=(Eo,Io)=>{Eo.dom.appendChild(Io.dom)},_l=(Eo,Io)=>{Yo(Io,Go=>{ir(Eo,Go)})},Hc=(Eo,Io)=>{Yo(Io,Go=>{Ba(Eo,Go)})},Ds=Eo=>{Eo.dom.textContent="",Yo(Ks(Eo),Io=>{tl(Io)})},tl=Eo=>{const Io=Eo.dom;Io.parentNode!==null&&Io.parentNode.removeChild(Io)};var wu=tinymce.util.Tools.resolve("tinymce.dom.RangeUtils"),qu=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker"),Md=tinymce.util.Tools.resolve("tinymce.util.VK");const bc=Eo=>rs(Eo,dr.fromDom),nm=Object.keys,Ff=(Eo,Io)=>{const Go=nm(Eo);for(let Ss=0,Rs=Go.length;Ss(Io,Go)=>{Eo[Go]=Io},ld=(Eo,Io,Go,Ss)=>{Ff(Eo,(Rs,$r)=>{(Io(Rs,$r)?Go:Ss)(Rs,$r)})},oc=(Eo,Io)=>{const Go={};return ld(Eo,Io,Ud(Go),mo),Go},Dc=(Eo,Io,Go)=>{if(zn(Go)||Yn(Go)||uo(Go))Eo.setAttribute(Io,Go+"");else throw console.error("Invalid call to Attribute.set. Key ",Io,":: Value ",Go,":: Element ",Eo),new Error("Attribute value was not simple")},bd=(Eo,Io)=>{const Go=Eo.dom;Ff(Io,(Ss,Rs)=>{Dc(Go,Rs,Ss)})},Nd=Eo=>Js(Eo.dom.attributes,(Io,Go)=>(Io[Go.name]=Go.value,Io),{}),ih=(Eo,Io)=>dr.fromDom(Eo.dom.cloneNode(Io)),om=Eo=>ih(Eo,!0),sm=(Eo,Io)=>{const Go=dr.fromTag(Io),Ss=Nd(Eo);return bd(Go,Ss),Go},fc=(Eo,Io)=>{const Go=sm(Eo,Io);br(Eo,Go);const Ss=Ks(Eo);return Hc(Go,Ss),tl(Eo),Go};var Td=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),Jd=tinymce.util.Tools.resolve("tinymce.util.Tools");const Em=Eo=>Io=>to(Io)&&Io.nodeName.toLowerCase()===Eo,ef=Eo=>Io=>to(Io)&&Eo.test(Io.nodeName),Cu=Eo=>to(Eo)&&Eo.nodeType===3,Qc=Eo=>to(Eo)&&Eo.nodeType===1,Cf=ef(/^(OL|UL|DL)$/),qm=ef(/^(OL|UL)$/),Oc=Em("ol"),cd=ef(/^(LI|DT|DD)$/),vd=ef(/^(DT|DD)$/),ju=ef(/^(TH|TD)$/),Xf=Em("br"),Sh=Eo=>{var Io;return((Io=Eo.parentNode)===null||Io===void 0?void 0:Io.firstChild)===Eo},Zd=(Eo,Io)=>to(Io)&&Io.nodeName in Eo.schema.getTextBlockElements(),ah=(Eo,Io)=>to(Eo)&&Eo.nodeName in Io,lh=(Eo,Io)=>to(Io)&&Io.nodeName in Eo.schema.getVoidElements(),Bp=(Eo,Io)=>Xf(Io)?Eo.isBlock(Io.nextSibling)&&!Xf(Io.previousSibling):!1,ch=(Eo,Io,Go)=>{const Ss=Eo.isEmpty(Io);return Go&&Eo.select("span[data-mce-type=bookmark]",Io).length>0?!1:Ss},bp=(Eo,Io)=>Eo.isChildOf(Io,Eo.getRoot()),kf=Eo=>Io=>Io.options.get(Eo),Fh=Eo=>{const Io=Eo.options.register;Io("lists_indent_on_tab",{processor:"boolean",default:!0})},jm=kf("lists_indent_on_tab"),Fp=kf("forced_root_block"),Eg=kf("forced_root_block_attrs"),ss=(Eo,Io)=>{const Go=Eo.dom,Ss=Eo.schema.getBlockElements(),Rs=Go.createFragment(),$r=Fp(Eo),Ea=Eg(Eo);let ll,nl,Xa=!1;for(nl=Go.create($r,Ea),ah(Io.firstChild,Ss)||Rs.appendChild(nl);ll=Io.firstChild;){const Nu=ll.nodeName;!Xa&&(Nu!=="SPAN"||ll.getAttribute("data-mce-type")!=="bookmark")&&(Xa=!0),ah(ll,Ss)?(Rs.appendChild(ll),nl=null):(nl||(nl=Go.create($r,Ea),Rs.appendChild(nl)),nl.appendChild(ll))}return!Xa&&nl&&nl.appendChild(Go.create("br",{"data-mce-bogus":"1"})),Rs},As=Td.DOM,Ws=(Eo,Io,Go)=>{const Ss=Xa=>{const Nu=Xa.parentNode;Nu&&Jd.each(Rs,zu=>{Nu.insertBefore(zu,Go.parentNode)}),As.remove(Xa)},Rs=As.select('span[data-mce-type="bookmark"]',Io),$r=ss(Eo,Go),Ea=As.createRng();Ea.setStartAfter(Go),Ea.setEndAfter(Io);const ll=Ea.extractContents();for(let Xa=ll.firstChild;Xa;Xa=Xa.firstChild)if(Xa.nodeName==="LI"&&Eo.dom.isEmpty(Xa)){As.remove(Xa);break}Eo.dom.isEmpty(ll)||As.insertAfter(ll,Io),As.insertAfter($r,Io);const nl=Go.parentElement;nl&&ch(Eo.dom,nl)&&Ss(nl),As.remove(Go),ch(Eo.dom,Io)&&As.remove(Io)},rr=gd("dd"),Fr=gd("dt"),Wa=(Eo,Io)=>{rr(Io)?fc(Io,"dt"):Fr(Io)&&vs(Io).each(Go=>Ws(Eo,Go.dom,Io.dom))},Nc=Eo=>{Fr(Eo)&&fc(Eo,"dd")},xl=(Eo,Io,Go)=>{Io==="Indent"?Yo(Go,Nc):Yo(Go,Ss=>Wa(Eo,Ss))},ul=(Eo,Io)=>{if(Cu(Eo))return{container:Eo,offset:Io};const Go=wu.getNode(Eo,Io);return Cu(Go)?{container:Go,offset:Io>=Eo.childNodes.length?Go.data.length:0}:Go.previousSibling&&Cu(Go.previousSibling)?{container:Go.previousSibling,offset:Go.previousSibling.data.length}:Go.nextSibling&&Cu(Go.nextSibling)?{container:Go.nextSibling,offset:0}:{container:Eo,offset:Io}},lu=Eo=>{const Io=Eo.cloneRange(),Go=ul(Eo.startContainer,Eo.startOffset);Io.setStart(Go.container,Go.offset);const Ss=ul(Eo.endContainer,Eo.endOffset);return Io.setEnd(Ss.container,Ss.offset),Io},Gl=["OL","UL","DL"],Ru=Gl.join(","),xf=(Eo,Io)=>{const Go=Io||Eo.selection.getStart(!0);return Eo.dom.getParent(Go,Ru,ta(Eo,Go))},Hp=(Eo,Io)=>to(Eo)&&Io.length===1&&Io[0]===Eo,aa=Eo=>Ys(Eo.querySelectorAll(Ru),Cf),Qp=Eo=>{const Io=xf(Eo),Go=Eo.selection.getSelectedBlocks();return Hp(Io,Go)?aa(Io):Ys(Go,Ss=>Cf(Ss)&&Io!==Ss)},Bu=(Eo,Io)=>{const Go=Jd.map(Io,Ss=>{const Rs=Eo.dom.getParent(Ss,"li,dd,dt",ta(Eo,Ss));return Rs||Ss});return _r(Go)},Uo=Eo=>{const Io=Eo.selection.getSelectedBlocks();return Ys(Bu(Eo,Io),cd)},cs=Eo=>Ys(Uo(Eo),vd),_s=(Eo,Io)=>{const Go=Eo.dom.getParents(Io,"TD,TH");return Go.length>0?Go[0]:Eo.getBody()},ar=(Eo,Io)=>!Cf(Io)&&!cd(Io)&&ps(Gl,Go=>Eo.isValidChild(Io.nodeName,Go)),ta=(Eo,Io)=>{const Go=Eo.dom.getParents(Io,Eo.dom.isBlock);return gs(Go,Rs=>ar(Eo.schema,Rs)).getOr(Eo.getBody())},al=Eo=>Su(Eo).exists(Io=>cd(Io.dom)&&ia(Io).exists(Go=>!Cf(Go.dom))&&ka(Io).exists(Go=>!Cf(Go.dom))),ya=(Eo,Io)=>{const Go=Eo.dom.getParents(Io,"ol,ul",ta(Eo,Io));return Br(Go)},fu=Eo=>{const Io=ya(Eo,Eo.selection.getStart()),Go=Ys(Eo.selection.getSelectedBlocks(),qm);return Io.toArray().concat(Go)},Lr=Eo=>{const Io=Eo.selection.getStart();return Eo.dom.getParents(Io,"ol,ul",ta(Eo,Io))},qc=Eo=>{const Io=fu(Eo),Go=Lr(Eo);return gs(Go,Ss=>al(dr.fromDom(Ss))).fold(()=>Ef(Eo,Io),Ss=>[Ss])},Ef=(Eo,Io)=>{const Go=rs(Io,Ss=>ya(Eo,Ss).getOr(Ss));return _r(Go)},ku=Eo=>/\btox\-/.test(Eo.className),jc=(Eo,Io)=>ko(Eo,Cf,ju).exists(Go=>Go.nodeName===Io&&!ku(Go)),Tm=(Eo,Io)=>Io!==null&&!Eo.dom.isEditable(Io),El=Eo=>{const Io=xf(Eo);return Tm(Eo,Io)},Hf=(Eo,Io)=>{const Go=Eo.dom.getParent(Io,"ol,ul,dl");return Tm(Eo,Go)},hu=(Eo,Io)=>{const Go=Eo.selection.getNode();return Io({parents:Eo.dom.getParents(Go),element:Go}),Eo.on("NodeChange",Io),()=>Eo.off("NodeChange",Io)},Qf=(Eo,Io)=>{const Ss=document.createDocumentFragment();return Yo(Eo,Rs=>{Ss.appendChild(Rs.dom)}),dr.fromDom(Ss)},cu=(Eo,Io,Go)=>Eo.dispatch("ListMutation",{action:Io,element:Go}),ud=(Eo=>Io=>Io.replace(Eo,""))(/^\s+|\s+$/g),vp=Eo=>Eo.length>0,vc=Eo=>!vp(Eo),Am=Eo=>Eo.style!==void 0&&io(Eo.style.getPropertyValue),Pm=(Eo,Io,Go)=>{if(!zn(Go))throw console.error("Invalid call to CSS.set. Property ",Io,":: Value ",Go,":: Element ",Eo),new Error("CSS value must be a string: "+Go);Am(Eo)&&Eo.style.setProperty(Io,Go)},uh=(Eo,Io,Go)=>{const Ss=Eo.dom;Pm(Ss,Io,Go)},Hh=Eo=>ra(Eo,"OL,UL"),A1=Eo=>ra(Eo,"LI"),ql=Eo=>ia(Eo).exists(Hh),dd=Eo=>ka(Eo).exists(Hh),yd=Eo=>"listAttributes"in Eo,mv=Eo=>"isComment"in Eo,Du=Eo=>"isFragment"in Eo,lf=Eo=>Eo.depth>0,qd=Eo=>Eo.isSelected,Eb=Eo=>{const Io=Ks(Eo),Go=dd(Eo)?Io.slice(0,-1):Io;return rs(Go,om)},Tb=(Eo,Io,Go)=>Su(Eo).filter(kc).map(Ss=>({depth:Io,dirty:!1,isSelected:Go,content:Eb(Eo),itemAttributes:Nd(Eo),listAttributes:Nd(Ss),listType:Zl(Ss),isInPreviousLi:!1})),Qh=(Eo,Io)=>{Ba(Eo.item,Io.list)},Xg=Eo=>{for(let Io=1;Io{Qs(Br(Eo),Fs(Io),Qh)},im=(Eo,Io)=>{const Go={list:dr.fromTag(Io,Eo),item:dr.fromTag("li",Eo)};return Ba(Go.list,Go.item),Go},Tf=(Eo,Io,Go)=>{const Ss=[];for(let Rs=0;Rs{for(let Go=0;Go{yd(Io)&&(bd(Go.list,Io.listAttributes),bd(Go.item,Io.itemAttributes)),Hc(Go.item,Io.content)})},Od=(Eo,Io)=>{Zl(Eo.list)!==Io.listType&&(Eo.list=fc(Eo.list,Io.listType)),bd(Eo.list,Io.listAttributes)},Mu=(Eo,Io,Go)=>{const Ss=dr.fromTag("li",Eo);return bd(Ss,Io),Hc(Ss,Go),Ss},Vh=(Eo,Io)=>{Ba(Eo.list,Io),Eo.item=Io},zp=(Eo,Io,Go)=>{const Ss=Io.slice(0,Go.depth);return Br(Ss).each(Rs=>{if(yd(Go)){const $r=Mu(Eo,Go.itemAttributes,Go.content);Vh(Rs,$r),Od(Rs,Go)}else if(Du(Go))Hc(Rs.item,Go.content);else{const $r=dr.fromHtml(``);Ba(Rs.list,$r)}}),Ss},Tg=(Eo,Io,Go)=>{const Ss=Tf(Eo,Go,Go.depth-Io.length);return Xg(Ss),Ld(Ss,Go),Gc(Io,Ss),Io.concat(Ss)},Ab=(Eo,Io)=>{let Go=Bo.none();const Ss=Js(Io,(Rs,$r,Ea)=>mv($r)?Ea===0?(Go=Bo.some($r),Rs):zp(Eo,Rs,$r):$r.depth>Rs.length?Tg(Eo,Rs,$r):zp(Eo,Rs,$r),[]);return Go.each(Rs=>{const $r=dr.fromHtml(``);Fs(Ss).each(Ea=>{Aa(Ea.list,$r)})}),Fs(Ss).map(Rs=>Rs.list)},P1=(Eo,Io)=>{switch(Eo){case"Indent":Io.depth++;break;case"Outdent":Io.depth--;break;case"Flatten":Io.depth=0}Io.dirty=!0},Yf=(Eo,Io)=>{yd(Eo)&&yd(Io)&&(Eo.listType=Io.listType,Eo.listAttributes={...Io.listAttributes})},$1=Eo=>{Eo.listAttributes=oc(Eo.listAttributes,(Io,Go)=>Go!=="start")},jd=(Eo,Io)=>{const Go=Eo[Io].depth,Ss=$r=>$r.depth===Go&&!$r.dirty,Rs=$r=>$r.depthko(Eo.slice(Io+1),Ss,Rs))},$m=Eo=>(Yo(Eo,(Io,Go)=>{jd(Eo,Go).fold(()=>{Io.dirty&&yd(Io)&&$1(Io)},Ss=>Yf(Io,Ss))}),Eo),R1=Eo=>{let Io=Eo;return{get:()=>Io,set:Rs=>{Io=Rs}}},Xm=(Eo,Io,Go,Ss)=>{var Rs;if(qa(Ss))return[{depth:Eo+1,content:(Rs=Ss.dom.nodeValue)!==null&&Rs!==void 0?Rs:"",dirty:!1,isSelected:!1,isComment:!0}];Io.each(ll=>{nr(ll.start,Ss)&&Go.set(!0)});const $r=Tb(Ss,Eo,Go.get());Io.each(ll=>{nr(ll.end,Ss)&&Go.set(!1)});const Ea=ka(Ss).filter(Hh).map(ll=>Vf(Eo,Io,Go,ll)).getOr([]);return $r.toArray().concat(Ea)},Yg=(Eo,Io,Go,Ss)=>ia(Ss).filter(Hh).fold(()=>Xm(Eo,Io,Go,Ss),Rs=>{const $r=Js(Ks(Ss),(Ea,ll,nl)=>{if(nl===0)return Ea;if(A1(ll))return Ea.concat(Xm(Eo,Io,Go,ll));{const Xa={isFragment:!0,depth:Eo,content:[ll],isSelected:!1,dirty:!1,parentListType:Zl(Rs)};return Ea.concat(Xa)}},[]);return Vf(Eo,Io,Go,Rs).concat($r)}),Vf=(Eo,Io,Go,Ss)=>Qr(Ks(Ss),Rs=>{const $r=Hh(Rs)?Vf:Yg,Ea=Eo+1;return $r(Ea,Io,Go,Rs)}),Gg=(Eo,Io)=>{const Go=R1(!1),Ss=0;return rs(Eo,Rs=>({sourceList:Rs,entries:Vf(Ss,Io,Go,Rs)}))},yp=(Eo,Io)=>{const Go=$m(Io);return rs(Go,Ss=>{const Rs=mv(Ss)?Qf([dr.fromHtml(``)]):Qf(Ss.content);return dr.fromDom(ss(Eo,Rs.dom))})},p0=(Eo,Io)=>{const Go=$m(Io);return Ab(Eo.contentDocument,Go).toArray()},g0=(Eo,Io)=>Qr(sr(Io,lf),Go=>Fs(Go).exists(lf)?p0(Eo,Go):yp(Eo,Go)),Wp=(Eo,Io)=>{Yo(Ys(Eo,qd),Go=>P1(Io,Go))},zf=Eo=>{const Io=rs(Uo(Eo),dr.fromDom);return Qs(gs(Io,Do(ql)),gs(cr(Io),Do(ql)),(Go,Ss)=>({start:Go,end:Ss}))},b0=(Eo,Io,Go)=>{const Ss=Gg(Io,zf(Eo));Yo(Ss,Rs=>{Wp(Rs.entries,Go);const $r=g0(Eo,Rs.entries);Yo($r,Ea=>{cu(Eo,Go==="Indent"?"IndentList":"OutdentList",Ea.dom)}),_l(Rs.sourceList,$r),tl(Rs.sourceList)})},Cs=(Eo,Io)=>{const Go=bc(qc(Eo)),Ss=bc(cs(Eo));let Rs=!1;if(Go.length||Ss.length){const $r=Eo.selection.getBookmark();b0(Eo,Go,Io),xl(Eo,Io,Ss),Eo.selection.moveToBookmark($r),Eo.selection.setRng(lu(Eo.selection.getRng())),Eo.nodeChanged(),Rs=!0}return Rs},Up=(Eo,Io)=>!El(Eo)&&Cs(Eo,Io),zh=Eo=>Up(Eo,"Indent"),Kg=Eo=>Up(Eo,"Outdent"),v0=Eo=>Up(Eo,"Flatten"),Jg="\uFEFF",Vs=Eo=>Eo===Jg,Dr=(Eo,Io,Go)=>xc(Eo,Io,Go).isSome(),Tr=(Eo,Io)=>Dr(Eo,$o(nr,Io));var Fa=tinymce.util.Tools.resolve("tinymce.dom.BookmarkManager");const zl=Td.DOM,_c=Eo=>{const Io={},Go=Ss=>{let Rs=Eo[Ss?"startContainer":"endContainer"],$r=Eo[Ss?"startOffset":"endOffset"];if(Qc(Rs)){const Ea=zl.create("span",{"data-mce-type":"bookmark"});Rs.hasChildNodes()?($r=Math.min($r,Rs.childNodes.length-1),Ss?Rs.insertBefore(Ea,Rs.childNodes[$r]):zl.insertAfter(Ea,Rs.childNodes[$r])):Rs.appendChild(Ea),Rs=Ea,$r=0}Io[Ss?"startContainer":"endContainer"]=Rs,Io[Ss?"startOffset":"endOffset"]=$r};return Go(!0),Eo.collapsed||Go(),Io},Wc=Eo=>{const Io=Ss=>{const Rs=ll=>{var nl;let Xa=(nl=ll.parentNode)===null||nl===void 0?void 0:nl.firstChild,Nu=0;for(;Xa;){if(Xa===ll)return Nu;(!Qc(Xa)||Xa.getAttribute("data-mce-type")!=="bookmark")&&Nu++,Xa=Xa.nextSibling}return-1};let $r=Eo[Ss?"startContainer":"endContainer"],Ea=Eo[Ss?"startOffset":"endOffset"];if($r){if(Qc($r)&&$r.parentNode){const ll=$r;Ea=Rs($r),$r=$r.parentNode,zl.remove(ll),!$r.hasChildNodes()&&zl.isBlock($r)&&$r.appendChild(zl.create("br"))}Eo[Ss?"startContainer":"endContainer"]=$r,Eo[Ss?"startOffset":"endOffset"]=Ea}};Io(!0),Io();const Go=zl.createRng();return Go.setStart(Eo.startContainer,Eo.startOffset),Eo.endContainer&&Go.setEnd(Eo.endContainer,Eo.endOffset),lu(Go)},Uc=Eo=>{switch(Eo){case"UL":return"ToggleUlList";case"OL":return"ToggleOlList";case"DL":return"ToggleDLList"}},D1=(Eo,Io,Go)=>{const Ss=Go["list-style-type"]?Go["list-style-type"]:null;Eo.setStyle(Io,"list-style-type",Ss)},pv=(Eo,Io)=>{Jd.each(Io,(Go,Ss)=>{Eo.setAttribute(Ss,Go)})},_d=(Eo,Io,Go)=>{pv(Io,Go["list-attributes"]),Jd.each(Eo.select("li",Io),Ss=>{pv(Ss,Go["list-item-attributes"])})},Wh=(Eo,Io,Go)=>{D1(Eo,Io,Go),_d(Eo,Io,Go)},y0=(Eo,Io,Go)=>{Jd.each(Go,Ss=>Eo.setStyle(Io,Ss,""))},Id=(Eo,Io)=>to(Io)&&!ah(Io,Eo.schema.getBlockElements()),Ku=(Eo,Io,Go,Ss)=>{let Rs=Io[Go?"startContainer":"endContainer"];const $r=Io[Go?"startOffset":"endOffset"];Qc(Rs)&&(Rs=Rs.childNodes[Math.min($r,Rs.childNodes.length-1)]||Rs),!Go&&Xf(Rs.nextSibling)&&(Rs=Rs.nextSibling);const Ea=nl=>{for(;!Eo.dom.isBlock(nl)&&nl.parentNode&&Ss!==nl;)nl=nl.parentNode;return nl},ll=(nl,Xa)=>{var Nu;const zu=new qu(nl,Ea(nl)),kh=Xa?"next":"prev";let Sp;for(;Sp=zu[kh]();)if(!(lh(Eo,Sp)||Vs(Sp.textContent)||((Nu=Sp.textContent)===null||Nu===void 0?void 0:Nu.length)===0))return Bo.some(Sp);return Bo.none()};if(Go&&Cu(Rs))if(Vs(Rs.textContent))Rs=ll(Rs,!1).getOr(Rs);else for(Rs.parentNode!==null&&Id(Eo,Rs.parentNode)&&(Rs=Rs.parentNode);Rs.previousSibling!==null&&(Id(Eo,Rs.previousSibling)||Cu(Rs.previousSibling));)Rs=Rs.previousSibling;if(!Go&&Cu(Rs))if(Vs(Rs.textContent))Rs=ll(Rs,!0).getOr(Rs);else for(Rs.parentNode!==null&&Id(Eo,Rs.parentNode)&&(Rs=Rs.parentNode);Rs.nextSibling!==null&&(Id(Eo,Rs.nextSibling)||Cu(Rs.nextSibling));)Rs=Rs.nextSibling;for(;Rs.parentNode!==Ss;){const nl=Rs.parentNode;if(Zd(Eo,Rs)||/^(TD|TH)$/.test(nl.nodeName))return Rs;Rs=nl}return Rs},Rm=(Eo,Io,Go)=>{const Ss=[],Rs=Eo.dom,$r=Ku(Eo,Io,!0,Go),Ea=Ku(Eo,Io,!1,Go);let ll;const nl=[];for(let Xa=$r;Xa&&(nl.push(Xa),Xa!==Ea);Xa=Xa.nextSibling);return Jd.each(nl,Xa=>{var Nu;if(Zd(Eo,Xa)){Ss.push(Xa),ll=null;return}if(Rs.isBlock(Xa)||Xf(Xa)){Xf(Xa)&&Rs.remove(Xa),ll=null;return}const zu=Xa.nextSibling;if(Fa.isBookmarkNode(Xa)&&(Cf(zu)||Zd(Eo,zu)||!zu&&Xa.parentNode===Go)){ll=null;return}ll||(ll=Rs.create("p"),(Nu=Xa.parentNode)===null||Nu===void 0||Nu.insertBefore(ll,Xa),Ss.push(ll)),ll.appendChild(Xa)}),Ss},iu=(Eo,Io,Go)=>{const Ss=Eo.getStyle(Io,"list-style-type");let Rs=Go?Go["list-style-type"]:"";return Rs=Rs===null?"":Rs,Ss===Rs},am=(Eo,Io)=>{const Go=Eo.selection.getStart(!0),Ss=Ku(Eo,Io,!0,Eo.getBody());return Tr(dr.fromDom(Ss),dr.fromDom(Io.commonAncestorContainer))?Io.commonAncestorContainer:Go},Af=(Eo,Io,Go)=>{const Ss=Eo.selection.getRng();let Rs="LI";const $r=ta(Eo,am(Eo,Ss)),Ea=Eo.dom;if(Ea.getContentEditable(Eo.selection.getNode())==="false")return;Io=Io.toUpperCase(),Io==="DL"&&(Rs="DT");const ll=_c(Ss),nl=Ys(Rm(Eo,Ss,$r),Eo.dom.isEditable);Jd.each(nl,Xa=>{let Nu;const zu=Xa.previousSibling,kh=Xa.parentNode;cd(kh)||(zu&&Cf(zu)&&zu.nodeName===Io&&iu(Ea,zu,Go)?(Nu=zu,Xa=Ea.rename(Xa,Rs),zu.appendChild(Xa)):(Nu=Ea.create(Io),kh.insertBefore(Nu,Xa),Nu.appendChild(Xa),Xa=Ea.rename(Xa,Rs)),y0(Ea,Xa,["margin","margin-right","margin-bottom","margin-left","margin-top","padding","padding-right","padding-bottom","padding-left","padding-top"]),Wh(Ea,Nu,Go),Op(Eo.dom,Nu))}),Eo.selection.setRng(Wc(ll))},e1=(Eo,Io)=>Cf(Eo)&&Eo.nodeName===(Io==null?void 0:Io.nodeName),gv=(Eo,Io,Go)=>{const Ss=Eo.getStyle(Io,"list-style-type",!0),Rs=Eo.getStyle(Go,"list-style-type",!0);return Ss===Rs},M1=(Eo,Io)=>Eo.className===Io.className,Pb=(Eo,Io,Go)=>e1(Io,Go)&&gv(Eo,Io,Go)&&M1(Io,Go),Op=(Eo,Io)=>{let Go,Ss=Io.nextSibling;if(Pb(Eo,Io,Ss)){const Rs=Ss;for(;Go=Rs.firstChild;)Io.appendChild(Go);Eo.remove(Rs)}if(Ss=Io.previousSibling,Pb(Eo,Io,Ss)){const Rs=Ss;for(;Go=Rs.lastChild;)Io.insertBefore(Go,Io.firstChild);Eo.remove(Rs)}},Wf=(Eo,Io,Go,Ss)=>{if(Io.nodeName!==Go){const Rs=Eo.dom.rename(Io,Go);Wh(Eo.dom,Rs,Ss),cu(Eo,Uc(Go),Rs)}else Wh(Eo.dom,Io,Ss),cu(Eo,Uc(Go),Io)},N1=(Eo,Io,Go,Ss)=>{if(Io.classList.forEach((Rs,$r,Ea)=>{Rs.startsWith("tox-")&&(Ea.remove(Rs),Ea.length===0&&Io.removeAttribute("class"))}),Io.nodeName!==Go){const Rs=Eo.dom.rename(Io,Go);Wh(Eo.dom,Rs,Ss),cu(Eo,Uc(Go),Rs)}else Wh(Eo.dom,Io,Ss),cu(Eo,Uc(Go),Io)},Ny=(Eo,Io,Go,Ss,Rs)=>{const $r=Cf(Io);if($r&&Io.nodeName===Ss&&!t1(Rs)&&!ku(Io))v0(Eo);else{Af(Eo,Ss,Rs);const Ea=_c(Eo.selection.getRng()),ll=$r?[Io,...Go]:Go,nl=$r&&ku(Io)?N1:Wf;Jd.each(ll,Xa=>{nl(Eo,Xa,Ss,Rs)}),Eo.selection.setRng(Wc(Ea))}},t1=Eo=>"list-style-type"in Eo,$b=(Eo,Io,Go,Ss)=>{if(Io!==Eo.getBody())if(Io)if(Io.nodeName===Go&&!t1(Ss)&&!ku(Io))v0(Eo);else{const Rs=_c(Eo.selection.getRng());ku(Io)&&Io.classList.forEach((Ea,ll,nl)=>{Ea.startsWith("tox-")&&(nl.remove(Ea),nl.length===0&&Io.removeAttribute("class"))}),Wh(Eo.dom,Io,Ss);const $r=Eo.dom.rename(Io,Go);Op(Eo.dom,$r),Eo.selection.setRng(Wc(Rs)),Af(Eo,Go,Ss),cu(Eo,Uc(Go),$r)}else Af(Eo,Go,Ss),cu(Eo,Uc(Go),Io)},Zp=(Eo,Io,Go)=>{const Ss=xf(Eo);if(Hf(Eo,Ss))return;const Rs=Qp(Eo),$r=Zn(Go)?Go:{};Rs.length>0?Ny(Eo,Ss,Rs,Io,$r):$b(Eo,Ss,Io,$r)},qp=Td.DOM,Ag=(Eo,Io)=>{const Go=Io.parentElement;if(Go&&Go.nodeName==="LI"&&Go.firstChild===Io){const Ss=Go.previousSibling;Ss&&Ss.nodeName==="LI"?(Ss.appendChild(Io),ch(Eo,Go)&&qp.remove(Go)):qp.setStyle(Go,"listStyleType","none")}if(Cf(Go)){const Ss=Go.previousSibling;Ss&&Ss.nodeName==="LI"&&Ss.appendChild(Io)}},Kc=(Eo,Io)=>{const Go=Jd.grep(Eo.select("ol,ul",Io));Jd.each(Go,Ss=>{Ag(Eo,Ss)})},au=(Eo,Io,Go,Ss)=>{let Rs=Io.startContainer;const $r=Io.startOffset;if(Cu(Rs)&&(Go?$r0))return Rs;const Ea=Eo.schema.getNonEmptyElements();Qc(Rs)&&(Rs=wu.getNode(Rs,$r));const ll=new qu(Rs,Ss);Go&&Bp(Eo.dom,Rs)&&ll.next();const nl=Go?ll.next.bind(ll):ll.prev2.bind(ll);for(;Rs=nl();)if(Rs.nodeName==="LI"&&!Rs.hasChildNodes()||Ea[Rs.nodeName]||Cu(Rs)&&Rs.data.length>0)return Rs;return null},cf=(Eo,Io)=>{const Go=Io.childNodes;return Go.length===1&&!Cf(Go[0])&&Eo.isBlock(Go[0])},O0=Eo=>Bo.from(Eo).map(dr.fromDom).filter(Ya).exists(Io=>Ts(Io)&&!ls(["details"],Zl(Io))),bv=(Eo,Io)=>{cf(Eo,Io)&&O0(Io.firstChild)&&Eo.remove(Io.firstChild,!0)},tf=(Eo,Io,Go)=>{let Ss;const Rs=cf(Eo,Go)?Go.firstChild:Go;if(bv(Eo,Io),!ch(Eo,Io,!0))for(;Ss=Io.firstChild;)Rs.appendChild(Ss)},lm=(Eo,Io,Go)=>{let Ss;const Rs=Io.parentNode;if(!bp(Eo,Io)||!bp(Eo,Go))return;Cf(Go.lastChild)&&(Ss=Go.lastChild),Rs===Go.lastChild&&Xf(Rs.previousSibling)&&Eo.remove(Rs.previousSibling);const $r=Go.lastChild;$r&&Xf($r)&&Io.hasChildNodes()&&Eo.remove($r),ch(Eo,Go,!0)&&Ds(dr.fromDom(Go)),tf(Eo,Io,Go),Ss&&Go.appendChild(Ss);const ll=Kr(dr.fromDom(Go),dr.fromDom(Io))?Eo.getParents(Io,Cf,Go):[];Eo.remove(Io),Yo(ll,nl=>{ch(Eo,nl)&&nl!==Eo.getRoot()&&Eo.remove(nl)})},uf=(Eo,Io,Go)=>{Ds(dr.fromDom(Go)),lm(Eo.dom,Io,Go),Eo.selection.setCursorLocation(Go,0)},cm=(Eo,Io,Go,Ss)=>{const Rs=Eo.dom;if(Rs.isEmpty(Ss))uf(Eo,Go,Ss);else{const $r=_c(Io);lm(Rs,Go,Ss),Eo.selection.setRng(Wc($r))}},Rb=(Eo,Io,Go,Ss)=>{const Rs=_c(Io);lm(Eo.dom,Go,Ss);const $r=Wc(Rs);Eo.selection.setRng($r)},yl=(Eo,Io)=>{const Go=Eo.dom,Ss=Eo.selection,Rs=Ss.getStart(),$r=_s(Eo,Rs),Ea=Go.getParent(Ss.getStart(),"LI",$r);if(Ea){const ll=Ea.parentElement;if(ll===Eo.getBody()&&ch(Go,ll))return!0;const nl=lu(Ss.getRng()),Xa=Go.getParent(au(Eo,nl,Io,$r),"LI",$r),Nu=Xa&&(Io?Go.isChildOf(Ea,Xa):Go.isChildOf(Xa,Ea));if(Xa&&Xa!==Ea&&!Nu)return Eo.undoManager.transact(()=>{Io?cm(Eo,nl,Xa,Ea):Sh(Ea)?Kg(Eo):Rb(Eo,nl,Ea,Xa)}),!0;if(Nu&&!Io&&Xa!==Ea)return Eo.undoManager.transact(()=>{if(nl.commonAncestorContainer.parentElement){const zu=_c(nl),kh=nl.commonAncestorContainer.parentElement;tf(Go,nl.commonAncestorContainer.parentElement,Xa),kh.remove();const Sp=Wc(zu);Eo.selection.setRng(Sp)}}),!0;if(!Xa&&!Io&&nl.startOffset===0&&nl.endOffset===0)return Eo.undoManager.transact(()=>{v0(Eo)}),!0}return!1},dh=(Eo,Io,Go)=>{const Ss=Eo.getParent(Io.parentNode,Eo.isBlock,Go);Eo.remove(Io),Ss&&Eo.isEmpty(Ss)&&Eo.remove(Ss)},jp=(Eo,Io)=>{const Go=Eo.dom,Ss=Eo.selection.getStart(),Rs=_s(Eo,Ss),$r=Go.getParent(Ss,Go.isBlock,Rs);if($r&&Go.isEmpty($r)){const Ea=lu(Eo.selection.getRng()),ll=Go.getParent(au(Eo,Ea,Io,Rs),"LI",Rs);if(ll){const nl=kh=>ls(["td","th","caption"],Zl(kh)),Xa=kh=>kh.dom===Rs,Nu=zc(dr.fromDom(ll),nl,Xa),zu=zc(dr.fromDom(Ea.startContainer),nl,Xa);return hs(Nu,zu,nr)?(Eo.undoManager.transact(()=>{const kh=ll.parentNode;dh(Go,$r,Rs),Op(Go,kh),Eo.selection.select(ll,!0),Eo.selection.collapse(Io)}),!0):!1}}return!1},Sd=(Eo,Io)=>yl(Eo,Io)||jp(Eo,Io),df=Eo=>{const Io=Eo.selection.getStart(),Go=_s(Eo,Io);return Eo.dom.getParent(Io,"LI,DT,DD",Go)||Uo(Eo).length>0},vv=Eo=>df(Eo)?(Eo.undoManager.transact(()=>{Eo.execCommand("Delete"),Kc(Eo.dom,Eo.getBody())}),!0):!1,ff=(Eo,Io)=>{const Go=Eo.selection;return!Hf(Eo,Go.getNode())&&(Go.isCollapsed()?Sd(Eo,Io):vv(Eo))},Ju=Eo=>{Eo.on("ExecCommand",Io=>{const Go=Io.command.toLowerCase();(Go==="delete"||Go==="forwarddelete")&&df(Eo)&&Kc(Eo.dom,Eo.getBody())}),Eo.on("keydown",Io=>{Io.keyCode===Md.BACKSPACE?ff(Eo,!1)&&Io.preventDefault():Io.keyCode===Md.DELETE&&ff(Eo,!0)&&Io.preventDefault()})},wh=Eo=>({backspaceDelete:Io=>{ff(Eo,Io)}}),fd=(Eo,Io)=>{const Go=xf(Eo);Go===null||Hf(Eo,Go)||Eo.undoManager.transact(()=>{Zn(Io.styles)&&Eo.dom.setStyles(Go,Io.styles),Zn(Io.attrs)&&Ff(Io.attrs,(Ss,Rs)=>Eo.dom.setAttrib(Go,Rs,Ss))})},Ym=Eo=>{const Io=cr(ud(Eo).split("")),Go=rs(Io,(Ss,Rs)=>{const $r=Ss.toUpperCase().charCodeAt(0)-65+1;return Math.pow(26,Rs)*$r});return Js(Go,(Ss,Rs)=>Ss+Rs,0)},_p=Eo=>{if(Eo--,Eo<0)return"";{const Io=Eo%26,Go=Math.floor(Eo/26),Ss=_p(Go),Rs=String.fromCharCode(65+Io);return Ss+Rs}},xu=Eo=>/^[A-Z]+$/.test(Eo),ed=Eo=>/^[a-z]+$/.test(Eo),fh=Eo=>/^[0-9]+$/.test(Eo),Gm=Eo=>fh(Eo)?2:xu(Eo)?0:ed(Eo)?1:vc(Eo)?3:4,Fu=Eo=>{switch(Gm(Eo)){case 2:return Bo.some({listStyleType:Bo.none(),start:Eo});case 0:return Bo.some({listStyleType:Bo.some("upper-alpha"),start:Ym(Eo).toString()});case 1:return Bo.some({listStyleType:Bo.some("lower-alpha"),start:Ym(Eo).toString()});case 3:return Bo.some({listStyleType:Bo.none(),start:""});case 4:return Bo.none()}},_0=Eo=>{const Io=parseInt(Eo.start,10);return ha(Eo.listStyleType,"upper-alpha")?_p(Io):ha(Eo.listStyleType,"lower-alpha")?_p(Io).toLowerCase():Eo.start},yv=Eo=>{const Io=xf(Eo);!Oc(Io)||Hf(Eo,Io)||Eo.windowManager.open({title:"List Properties",body:{type:"panel",items:[{type:"input",name:"start",label:"Start list at number",inputMode:"numeric"}]},initialData:{start:_0({start:Eo.dom.getAttrib(Io,"start","1"),listStyleType:Bo.from(Eo.dom.getStyle(Io,"list-style-type"))})},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],onSubmit:Go=>{const Ss=Go.getData();Fu(Ss.start).each(Rs=>{Eo.execCommand("mceListUpdate",!1,{attrs:{start:Rs.start==="1"?"":Rs.start},styles:{"list-style-type":Rs.listStyleType.getOr("")}})}),Go.close()}})},Lc=(Eo,Io)=>()=>{const Go=xf(Eo);return to(Go)&&Go.nodeName===Io},Dm=Eo=>{Eo.addCommand("mceListProps",()=>{yv(Eo)})},sc=Eo=>{Eo.on("BeforeExecCommand",Io=>{const Go=Io.command.toLowerCase();Go==="indent"?zh(Eo):Go==="outdent"&&Kg(Eo)}),Eo.addCommand("InsertUnorderedList",(Io,Go)=>{Zp(Eo,"UL",Go)}),Eo.addCommand("InsertOrderedList",(Io,Go)=>{Zp(Eo,"OL",Go)}),Eo.addCommand("InsertDefinitionList",(Io,Go)=>{Zp(Eo,"DL",Go)}),Eo.addCommand("RemoveList",()=>{v0(Eo)}),Dm(Eo),Eo.addCommand("mceListUpdate",(Io,Go)=>{Zn(Go)&&fd(Eo,Go)}),Eo.addQueryStateHandler("InsertUnorderedList",Lc(Eo,"UL")),Eo.addQueryStateHandler("InsertOrderedList",Lc(Eo,"OL")),Eo.addQueryStateHandler("InsertDefinitionList",Lc(Eo,"DL"))};var hf=tinymce.util.Tools.resolve("tinymce.html.Node");const um=Eo=>Eo.type===3,Km=Eo=>Eo.length===0,os=Eo=>{const Io=(Rs,$r)=>{const Ea=hf.create("li");Yo(Rs,ll=>Ea.append(ll)),$r?Eo.insert(Ea,$r,!0):Eo.append(Ea)},Go=(Rs,$r)=>um($r)?[...Rs,$r]:!Km(Rs)&&!um($r)?(Io(Rs,$r),[]):Rs,Ss=Js(Eo.children(),Go,[]);Km(Ss)||Io(Ss)},dm=Eo=>{Eo.on("PreInit",()=>{const{parser:Io}=Eo;Io.addNodeFilter("ul,ol",Go=>Yo(Go,os))})},n1=Eo=>{Eo.on("keydown",Io=>{Io.keyCode!==Md.TAB||Md.metaKeyPressed(Io)||Eo.undoManager.transact(()=>{(Io.shiftKey?Kg(Eo):zh(Eo))&&Io.preventDefault()})})},Ch=Eo=>{jm(Eo)&&n1(Eo),Ju(Eo)},Xc=(Eo,Io)=>Go=>{const Ss=Rs=>{Go.setActive(jc(Rs.parents,Io)),Go.setEnabled(!Hf(Eo,Rs.element)&&Eo.selection.isEditable())};return Go.setEnabled(Eo.selection.isEditable()),hu(Eo,Ss)},Ov=Eo=>{const Io=Go=>()=>Eo.execCommand(Go);Eo.hasPlugin("advlist")||(Eo.ui.registry.addToggleButton("numlist",{icon:"ordered-list",active:!1,tooltip:"Numbered list",onAction:Io("InsertOrderedList"),onSetup:Xc(Eo,"OL")}),Eo.ui.registry.addToggleButton("bullist",{icon:"unordered-list",active:!1,tooltip:"Bullet list",onAction:Io("InsertUnorderedList"),onSetup:Xc(Eo,"UL")}))},Db=(Eo,Io)=>Go=>hu(Eo,Rs=>Go.setEnabled(jc(Rs.parents,Io)&&!Hf(Eo,Rs.element))),S0=Eo=>{const Io={text:"List properties...",icon:"ordered-list",onAction:()=>Eo.execCommand("mceListProps"),onSetup:Db(Eo,"OL")};Eo.ui.registry.addMenuItem("listprops",Io),Eo.ui.registry.addContextMenu("lists",{update:Go=>{const Ss=xf(Eo,Go);return Oc(Ss)?["listprops"]:[]}})};var Mm=()=>{_n.add("lists",Eo=>(Fh(Eo),dm(Eo),Eo.hasPlugin("rtc",!0)?Dm(Eo):(Ch(Eo),sc(Eo)),Ov(Eo),S0(Eo),wh(Eo)))};Mm()})();(function(){const _n=xo=>{let Bo=xo;return{get:()=>Bo,set:Mo=>{Bo=Mo}}};var Ce=tinymce.util.Tools.resolve("tinymce.PluginManager");const ke=xo=>()=>xo;var $n=tinymce.util.Tools.resolve("tinymce.Env");const Hn=xo=>xo.dispatch("ResizeEditor"),zn=xo=>Bo=>Bo.options.get(xo),Zn=xo=>{const Bo=xo.options.register;Bo("autoresize_overflow_padding",{processor:"number",default:1}),Bo("autoresize_bottom_margin",{processor:"number",default:50})},qn=zn("min_height"),Yn=zn("max_height"),Jn=zn("autoresize_overflow_padding"),to=zn("autoresize_bottom_margin"),io=xo=>xo.plugins.fullscreen&&xo.plugins.fullscreen.isFullscreen(),uo=(xo,Bo)=>{const Vo=xo.getBody();Vo&&(Vo.style.overflowY=Bo?"":"hidden",Bo||(Vo.scrollTop=0))},mo=(xo,Bo,Vo,Ko)=>{var Mo;const es=parseInt((Mo=xo.getStyle(Bo,Vo,Ko))!==null&&Mo!==void 0?Mo:"",10);return isNaN(es)?0:es},bo=xo=>{if((xo==null?void 0:xo.type.toLowerCase())==="setcontent"){const Bo=xo;return Bo.selection===!0||Bo.paste===!0}else return!1},Oo=(xo,Bo,Vo,Ko)=>{var Mo;const es=xo.dom,ls=xo.getDoc();if(!ls)return;if(io(xo)){uo(xo,!0);return}const ps=ls.documentElement,rs=Ko?Ko():Jn(xo),Yo=(Mo=qn(xo))!==null&&Mo!==void 0?Mo:xo.getElement().offsetHeight;let Ys=Yo;const sr=mo(es,ps,"margin-top",!0),Js=mo(es,ps,"margin-bottom",!0);let ko=ps.offsetHeight+sr+Js+rs;ko<0&&(ko=0);const gs=xo.getContainer().offsetHeight,xs=xo.getContentAreaContainer().offsetHeight,Qr=gs-xs;ko+Qr>Yo&&(Ys=ko+Qr);const cr=Yn(xo);if(cr&&Ys>cr?(Ys=cr,uo(xo,!0)):uo(xo,!1),Ys!==Bo.get()){const ws=Ys-Bo.get();if(es.setStyle(xo.getContainer(),"height",Ys+"px"),Bo.set(Ys),Hn(xo),$n.browser.isSafari()&&($n.os.isMacOS()||$n.os.isiOS())){const Fs=xo.getWin();Fs.scrollTo(Fs.pageXOffset,Fs.pageYOffset)}xo.hasFocus()&&bo(Vo)&&xo.selection.scrollIntoView(),($n.browser.isSafari()||$n.browser.isChromium())&&ws<0&&Oo(xo,Bo,Vo,Ko)}},wo=(xo,Bo)=>{let Vo=()=>to(xo),Ko,Mo;xo.on("init",es=>{Ko=0;const ls=Jn(xo),ps=xo.dom;ps.setStyles(xo.getDoc().documentElement,{height:"auto"}),$n.browser.isEdge()||$n.browser.isIE()?ps.setStyles(xo.getBody(),{paddingLeft:ls,paddingRight:ls,"min-height":0}):ps.setStyles(xo.getBody(),{paddingLeft:ls,paddingRight:ls}),Oo(xo,Bo,es,Vo),Ko+=1}),xo.on("NodeChange SetContent keyup FullscreenStateChanged ResizeContent",es=>{if(Ko===1)Mo=xo.getContainer().offsetHeight,Oo(xo,Bo,es,Vo),Ko+=1;else if(Ko===2){const ls=Mo{xo.addCommand("mceAutoResize",()=>{Oo(xo,Bo)})};var Do=()=>{Ce.add("autoresize",xo=>{if(Zn(xo),xo.options.isSet("resize")||xo.options.set("resize",!1),!xo.inline){const Bo=_n(0);$o(xo,Bo),wo(xo,Bo)}})};Do()})();(function(){var _n=tinymce.util.Tools.resolve("tinymce.PluginManager");const ke=(Zs=>Sr=>Zs===Sr)(null),$n=Zs=>Zs,Hn=(Zs,Sr)=>{const Us=Zs.length,fs=new Array(Us);for(let dr=0;dr]",punctuation:"[~№|!-*+-\\/:;?@\\[-`{}¡«·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰෴๏๚๛༄-༒༺-༽྅࿐-࿔࿙࿚၊-၏჻፡-፨᐀᙭᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰⸱、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・]"},qn={ALETTER:0,MIDNUMLET:1,MIDLETTER:2,MIDNUM:3,NUMERIC:4,CR:5,LF:6,NEWLINE:7,EXTEND:8,FORMAT:9,KATAKANA:10,EXTENDNUMLET:11,AT:12,OTHER:13},Yn=[new RegExp(Zn.aletter),new RegExp(Zn.midnumlet),new RegExp(Zn.midletter),new RegExp(Zn.midnum),new RegExp(Zn.numeric),new RegExp(Zn.cr),new RegExp(Zn.lf),new RegExp(Zn.newline),new RegExp(Zn.extend),new RegExp(Zn.format),new RegExp(Zn.katakana),new RegExp(Zn.extendnumlet),new RegExp("@")],Jn="",to=new RegExp("^"+Zn.punctuation+"$"),io=/^\s+$/,uo=Yn,mo=qn.OTHER,bo=Zs=>{let Sr=mo;const Us=uo.length;for(let fs=0;fs{const Sr={};return Us=>{if(Sr[Us])return Sr[Us];{const fs=Zs(Us);return Sr[Us]=fs,fs}}},wo=Zs=>{const Sr=Oo(bo);return Hn(Zs,Sr)},$o=(Zs,Sr)=>{const Us=Zs[Sr],fs=Zs[Sr+1];if(Sr<0||Sr>Zs.length-1&&Sr!==0||Us===qn.ALETTER&&fs===qn.ALETTER)return!1;const dr=Zs[Sr+2];if(Us===qn.ALETTER&&(fs===qn.MIDLETTER||fs===qn.MIDNUMLET||fs===qn.AT)&&dr===qn.ALETTER)return!1;const Vr=Zs[Sr-1];return(Us===qn.MIDLETTER||Us===qn.MIDNUMLET||fs===qn.AT)&&fs===qn.ALETTER&&Vr===qn.ALETTER||(Us===qn.NUMERIC||Us===qn.ALETTER)&&(fs===qn.NUMERIC||fs===qn.ALETTER)||(Us===qn.MIDNUM||Us===qn.MIDNUMLET)&&fs===qn.NUMERIC&&Vr===qn.NUMERIC||Us===qn.NUMERIC&&(fs===qn.MIDNUM||fs===qn.MIDNUMLET)&&dr===qn.NUMERIC||(Us===qn.EXTEND||Us===qn.FORMAT)&&(fs===qn.ALETTER||fs===qn.NUMERIC||fs===qn.KATAKANA||fs===qn.EXTEND||fs===qn.FORMAT)||(fs===qn.EXTEND||fs===qn.FORMAT&&(dr===qn.ALETTER||dr===qn.NUMERIC||dr===qn.KATAKANA||dr===qn.EXTEND||dr===qn.FORMAT))&&(Us===qn.ALETTER||Us===qn.NUMERIC||Us===qn.KATAKANA||Us===qn.EXTEND||Us===qn.FORMAT)||Us===qn.CR&&fs===qn.LF?!1:Us===qn.NEWLINE||Us===qn.CR||Us===qn.LF||fs===qn.NEWLINE||fs===qn.CR||fs===qn.LF?!0:!(Us===qn.KATAKANA&&fs===qn.KATAKANA||fs===qn.EXTENDNUMLET&&(Us===qn.ALETTER||Us===qn.NUMERIC||Us===qn.KATAKANA||Us===qn.EXTENDNUMLET)||Us===qn.EXTENDNUMLET&&(fs===qn.ALETTER||fs===qn.NUMERIC||fs===qn.KATAKANA)||Us===qn.AT)},Do=Jn,xo=io,Bo=to,Vo=Zs=>Zs==="http"||Zs==="https",Ko=(Zs,Sr)=>{let Us;for(Us=Sr;Us{const Us=Ko(Zs,Sr+1);return Zs.slice(Sr+1,Us).join(Do).substr(0,3)==="://"?Us:Sr},es=(Zs,Sr,Us,fs)=>{const dr=[],Vr=[];let nr=[];for(let Kr=0;Kr({includeWhitespace:!1,includePunctuation:!1}),ps=(Zs,Sr,Us)=>{Us={...ls(),...Us};const fs=Hn(Zs,Sr),dr=wo(fs);return es(Zs,fs,dr,Us)},Yo=(Zs,Sr,Us)=>ps(Zs,Sr,Us).words,Ys=Zs=>Zs.replace(/\uFEFF/g,"");var sr=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker");const Js=(Zs,Sr)=>{const Us=Sr.getBlockElements(),fs=Sr.getVoidElements(),dr=Ml=>Us[Ml.nodeName]||fs[Ml.nodeName],Vr=[];let nr="";const Kr=new sr(Zs,Zs);let ra;for(;ra=Kr.next();)ra.nodeType===3?nr+=Ys(ra.data):dr(ra)&&nr.length&&(Vr.push(nr),nr="");return nr.length&&Vr.push(nr),Vr},ko=Zs=>Zs.replace(/\u200B/g,""),gs=Zs=>Zs.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"_").length,xs=(Zs,Sr)=>{const Us=ko(Js(Zs,Sr).join(` +`));return Yo(Us.split(""),$n).length},Qr=(Zs,Sr)=>{const Us=Js(Zs,Sr).join("");return gs(Us)},cr=(Zs,Sr)=>{const Us=Js(Zs,Sr).join("").replace(/\s/g,"");return gs(Us)},ws=(Zs,Sr)=>()=>Sr(Zs.getBody(),Zs.schema),Fs=(Zs,Sr)=>()=>Sr(Zs.selection.getRng().cloneContents(),Zs.schema),Br=Zs=>ws(Zs,xs),_r=Zs=>({body:{getWordCount:Br(Zs),getCharacterCount:ws(Zs,Qr),getCharacterCountWithoutSpaces:ws(Zs,cr)},selection:{getWordCount:Fs(Zs,xs),getCharacterCount:Fs(Zs,Qr),getCharacterCountWithoutSpaces:Fs(Zs,cr)},getCount:Br(Zs)}),ha=(Zs,Sr)=>{Zs.windowManager.open({title:"Word Count",body:{type:"panel",items:[{type:"table",header:["Count","Document","Selection"],cells:[["Words",String(Sr.body.getWordCount()),String(Sr.selection.getWordCount())],["Characters (no spaces)",String(Sr.body.getCharacterCountWithoutSpaces()),String(Sr.selection.getCharacterCountWithoutSpaces())],["Characters",String(Sr.body.getCharacterCount()),String(Sr.selection.getCharacterCount())]]}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}]})},hs=(Zs,Sr)=>{Zs.addCommand("mceWordCount",()=>ha(Zs,Sr))},Qs=(Zs,Sr)=>{let Us=null;return{cancel:()=>{ke(Us)||(clearTimeout(Us),Us=null)},throttle:(...Vr)=>{ke(Us)&&(Us=setTimeout(()=>{Us=null,Zs.apply(null,Vr)},Sr))}}};var zo=tinymce.util.Tools.resolve("tinymce.util.Delay");const el=(Zs,Sr)=>{Zs.dispatch("wordCountUpdate",{wordCount:{words:Sr.body.getWordCount(),characters:Sr.body.getCharacterCount(),charactersWithoutSpaces:Sr.body.getCharacterCountWithoutSpaces()}})},ga=(Zs,Sr)=>{el(Zs,Sr)},Ca=(Zs,Sr,Us)=>{const fs=Qs(()=>ga(Zs,Sr),Us);Zs.on("init",()=>{ga(Zs,Sr),zo.setEditorTimeout(Zs,()=>{Zs.on("SetContent BeforeAddUndo Undo Redo ViewUpdate keyup",fs.throttle)},0),Zs.on("remove",fs.cancel)})},za=Zs=>{const Sr=()=>Zs.execCommand("mceWordCount");Zs.ui.registry.addButton("wordcount",{tooltip:"Word count",icon:"character-count",onAction:Sr}),Zs.ui.registry.addMenuItem("wordcount",{text:"Word count",icon:"character-count",onAction:Sr})};var Il=(Zs=300)=>{_n.add("wordcount",Sr=>{const Us=_r(Sr);return hs(Sr,Us),za(Sr),Ca(Sr,Us,Zs),Us})};Il()})();function get_each_context$8(_n,Ce,ke){const $n=_n.slice();return $n[14]=Ce[ke],$n}function get_each_context_1$2(_n,Ce,ke){const $n=_n.slice();return $n[17]=Ce[ke],$n}function create_else_block$7(_n){let Ce,ke;return Ce=new Dropdown({props:{$$slots:{button:[create_button_slot$1],default:[create_default_slot$1]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1048576&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_1$9(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.textContent="Browse",attr(Ce,"class","button")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[9]),ke=!0)},p:noop,i:noop,o:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_each_block_1$2(_n){let Ce,ke,$n;function Hn(...zn){return _n[10](_n[17],...zn)}return{c(){Ce=element("a"),Ce.textContent=`${_n[17].label}`,attr(Ce,"class","dropdown-item"),attr(Ce,"href","/")},m(zn,Zn){insert$1(zn,Ce,Zn),ke||($n=listen(Ce,"click",Hn),ke=!0)},p(zn,Zn){_n=zn},d(zn){zn&&detach(Ce),ke=!1,$n()}}}function create_default_slot$1(_n){let Ce,ke=ensure_array_like(_n[3]),$n=[];for(let Hn=0;Hnqn[14].id;for(let qn=0;qn0&&create_if_block$e(_n),bo={};return Yn=new Dialog({props:bo}),_n[12](Yn),Yn.$on("insert",_n[6]),{c(){Ce=element("div"),ke=element("label"),ke.textContent="Rich editor files",$n=space$3(),zn.c(),Zn=space$3(),mo&&mo.c(),qn=space$3(),create_component(Yn.$$.fragment),attr(ke,"class","mt-4 mb-3"),attr(Ce,"class","mb-3")},m(Oo,wo){insert$1(Oo,Ce,wo),append(Ce,ke),append(Ce,$n),io[Hn].m(Ce,null),insert$1(Oo,Zn,wo),mo&&mo.m(Oo,wo),insert$1(Oo,qn,wo),mount_component(Yn,Oo,wo),Jn=!0},p(Oo,[wo]){let $o=Hn;Hn=uo(Oo),Hn===$o?io[Hn].p(Oo,wo):(group_outros(),transition_out(io[$o],1,1,()=>{io[$o]=null}),check_outros(),zn=io[Hn],zn?zn.p(Oo,wo):(zn=io[Hn]=to[Hn](Oo),zn.c()),transition_in(zn,1),zn.m(Ce,null)),Oo[2].length>0?mo?(mo.p(Oo,wo),wo&4&&transition_in(mo,1)):(mo=create_if_block$e(Oo),mo.c(),transition_in(mo,1),mo.m(qn.parentNode,qn)):mo&&(group_outros(),transition_out(mo,1,1,()=>{mo=null}),check_outros());const Do={};Yn.$set(Do)},i(Oo){Jn||(transition_in(zn),transition_in(mo),transition_in(Yn.$$.fragment,Oo),Jn=!0)},o(Oo){transition_out(zn),transition_out(mo),transition_out(Yn.$$.fragment,Oo),Jn=!1},d(Oo){Oo&&(detach(Ce),detach(Zn),detach(qn)),io[Hn].d(),mo&&mo.d(Oo),_n[12](null),destroy_component(Yn,Oo)}}}function instance$l(_n,Ce,ke){let $n;const Hn=getContext$1("channel");let{field:zn}=Ce,{record:Zn}=Ce,{graph:qn}=Ce,Yn,Jn=Hn.schemas.filter($o=>zn.collections.includes($o.name));function to($o){$o.preventDefault(),ke(7,qn.edges=qn.edges.filter(Do=>!(Do.target===$o.detail&&Do.field===zn.name)),qn)}function io($o,Do){$o.preventDefault(),Yn.open(Do)}function uo($o){$o.preventDefault(),Yn.close(),ke(7,qn=insertEdges(qn,Zn,$o.detail.records,zn.name,$o.detail.action))}const mo=$o=>io($o,Jn[0].name),bo=($o,Do)=>io(Do,$o.name);function Oo($o){bubble.call(this,_n,$o)}function wo($o){binding_callbacks[$o?"unshift":"push"](()=>{Yn=$o,ke(1,Yn)})}return _n.$$set=$o=>{"field"in $o&&ke(0,zn=$o.field),"record"in $o&&ke(8,Zn=$o.record),"graph"in $o&&ke(7,qn=$o.graph)},_n.$$.update=()=>{_n.$$.dirty&385&&ke(2,$n=(qn==null?void 0:qn.edges.filter($o=>$o.field===zn.name).map($o=>qn.records.find(Do=>Do.id===$o.target&&Zn.id===$o.source)).filter($o=>!!($o!=null&&$o.id)))??[])},[zn,Yn,$n,Jn,to,io,uo,qn,Zn,mo,bo,Oo,wo]}class RichEditorFiles extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$l,create_fragment$l,safe_not_equal,{field:0,record:8,graph:7})}}var t$1="2.1.5";const e="[data-trix-attachment]",i$1={preview:{presentation:"gallery",caption:{name:!0,size:!0}},file:{caption:{size:!0}}},n={default:{tagName:"div",parse:!1},quote:{tagName:"blockquote",nestable:!0},heading1:{tagName:"h1",terminal:!0,breakOnReturn:!0,group:!1},code:{tagName:"pre",terminal:!0,htmlAttributes:["language"],text:{plaintext:!0}},bulletList:{tagName:"ul",parse:!1},bullet:{tagName:"li",listAttribute:"bulletList",group:!1,nestable:!0,test(_n){return r(_n.parentNode)===n[this.listAttribute].tagName}},numberList:{tagName:"ol",parse:!1},number:{tagName:"li",listAttribute:"numberList",group:!1,nestable:!0,test(_n){return r(_n.parentNode)===n[this.listAttribute].tagName}},attachmentGallery:{tagName:"div",exclusive:!0,terminal:!0,parse:!1,group:!1}},r=_n=>{var Ce;return _n==null||(Ce=_n.tagName)===null||Ce===void 0?void 0:Ce.toLowerCase()},o=navigator.userAgent.match(/android\s([0-9]+.*Chrome)/i),s=o&&parseInt(o[1]);var a={composesExistingText:/Android.*Chrome/.test(navigator.userAgent),recentAndroid:s&&s>12,samsungAndroid:s&&navigator.userAgent.match(/Android.*SM-/),forcesObjectResizing:/Trident.*rv:11/.test(navigator.userAgent),supportsInputEvents:typeof InputEvent<"u"&&["data","getTargetRanges","inputType"].every(_n=>_n in InputEvent.prototype)},l={attachFiles:"Attach Files",bold:"Bold",bullets:"Bullets",byte:"Byte",bytes:"Bytes",captionPlaceholder:"Add a caption…",code:"Code",heading1:"Heading",indent:"Increase Level",italic:"Italic",link:"Link",numbers:"Numbers",outdent:"Decrease Level",quote:"Quote",redo:"Redo",remove:"Remove",strike:"Strikethrough",undo:"Undo",unlink:"Unlink",url:"URL",urlPlaceholder:"Enter a URL…",GB:"GB",KB:"KB",MB:"MB",PB:"PB",TB:"TB"};const c=[l.bytes,l.KB,l.MB,l.GB,l.TB,l.PB];var u={prefix:"IEC",precision:2,formatter(_n){switch(_n){case 0:return"0 ".concat(l.bytes);case 1:return"1 ".concat(l.byte);default:let Ce;this.prefix==="SI"?Ce=1e3:this.prefix==="IEC"&&(Ce=1024);const ke=Math.floor(Math.log(_n)/Math.log(Ce)),$n=(_n/Math.pow(Ce,ke)).toFixed(this.precision).replace(/0*$/,"").replace(/\.$/,"");return"".concat($n," ").concat(c[ke])}}};const h="\uFEFF",d=" ",g=function(_n){for(const Ce in _n){const ke=_n[Ce];this[Ce]=ke}return this},m=document.documentElement,p=m.matches,f=function(_n){let{onElement:Ce,matchingSelector:ke,withCallback:$n,inPhase:Hn,preventDefault:zn,times:Zn}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const qn=Ce||m,Yn=ke,Jn=Hn==="capturing",to=function(io){Zn!=null&&--Zn==0&&to.destroy();const uo=A(io.target,{matchingSelector:Yn});uo!=null&&($n==null||$n.call(uo,io,uo),zn&&io.preventDefault())};return to.destroy=()=>qn.removeEventListener(_n,to,Jn),qn.addEventListener(_n,to,Jn),to},b=function(_n){let{onElement:Ce,bubbles:ke,cancelable:$n,attributes:Hn}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const zn=Ce??m;ke=ke!==!1,$n=$n!==!1;const Zn=document.createEvent("Events");return Zn.initEvent(_n,ke,$n),Hn!=null&&g.call(Zn,Hn),zn.dispatchEvent(Zn)},v=function(_n,Ce){if((_n==null?void 0:_n.nodeType)===1)return p.call(_n,Ce)},A=function(_n){let{matchingSelector:Ce,untilNode:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(;_n&&_n.nodeType!==Node.ELEMENT_NODE;)_n=_n.parentNode;if(_n!=null){if(Ce==null)return _n;if(_n.closest&&ke==null)return _n.closest(Ce);for(;_n&&_n!==ke;){if(v(_n,Ce))return _n;_n=_n.parentNode}}},x=_n=>document.activeElement!==_n&&y(_n,document.activeElement),y=function(_n,Ce){if(_n&&Ce)for(;Ce;){if(Ce===_n)return!0;Ce=Ce.parentNode}},C$1=function(_n){var Ce;if((Ce=_n)===null||Ce===void 0||!Ce.parentNode)return;let ke=0;for(_n=_n.previousSibling;_n;)ke++,_n=_n.previousSibling;return ke},k=_n=>{var Ce;return _n==null||(Ce=_n.parentNode)===null||Ce===void 0?void 0:Ce.removeChild(_n)},R=function(_n){let{onlyNodesOfType:Ce,usingFilter:ke,expandEntityReferences:$n}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const Hn=(()=>{switch(Ce){case"element":return NodeFilter.SHOW_ELEMENT;case"text":return NodeFilter.SHOW_TEXT;case"comment":return NodeFilter.SHOW_COMMENT;default:return NodeFilter.SHOW_ALL}})();return document.createTreeWalker(_n,Hn,ke??null,$n===!0)},E=_n=>{var Ce;return _n==null||(Ce=_n.tagName)===null||Ce===void 0?void 0:Ce.toLowerCase()},S$1=function(_n){let Ce,ke,$n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};typeof _n=="object"?($n=_n,_n=$n.tagName):$n={attributes:$n};const Hn=document.createElement(_n);if($n.editable!=null&&($n.attributes==null&&($n.attributes={}),$n.attributes.contenteditable=$n.editable),$n.attributes)for(Ce in $n.attributes)ke=$n.attributes[Ce],Hn.setAttribute(Ce,ke);if($n.style)for(Ce in $n.style)ke=$n.style[Ce],Hn.style[Ce]=ke;if($n.data)for(Ce in $n.data)ke=$n.data[Ce],Hn.dataset[Ce]=ke;return $n.className&&$n.className.split(" ").forEach(zn=>{Hn.classList.add(zn)}),$n.textContent&&(Hn.textContent=$n.textContent),$n.childNodes&&[].concat($n.childNodes).forEach(zn=>{Hn.appendChild(zn)}),Hn};let L;const D=function(){if(L!=null)return L;L=[];for(const _n in n){const Ce=n[_n];Ce.tagName&&L.push(Ce.tagName)}return L},w=_n=>B(_n==null?void 0:_n.firstChild),T=function(_n){let{strict:Ce}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{strict:!0};return Ce?B(_n):B(_n)||!B(_n.firstChild)&&function(ke){return D().includes(E(ke))&&!D().includes(E(ke.firstChild))}(_n)},B=_n=>F(_n)&&(_n==null?void 0:_n.data)==="block",F=_n=>(_n==null?void 0:_n.nodeType)===Node.COMMENT_NODE,P=function(_n){let{name:Ce}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(_n)return O(_n)?_n.data===h?!Ce||_n.parentNode.dataset.trixCursorTarget===Ce:void 0:P(_n.firstChild)},I=_n=>v(_n,e),N=_n=>O(_n)&&(_n==null?void 0:_n.data)==="",O=_n=>(_n==null?void 0:_n.nodeType)===Node.TEXT_NODE,M={level2Enabled:!0,getLevel(){return this.level2Enabled&&a.supportsInputEvents?2:0},pickFiles(_n){const Ce=S$1("input",{type:"file",multiple:!0,hidden:!0,id:this.fileInputId});Ce.addEventListener("change",()=>{_n(Ce.files),k(Ce)}),k(document.getElementById(this.fileInputId)),document.body.appendChild(Ce),Ce.click()}};var j={removeBlankTableCells:!1,tableCellSeparator:" | ",tableRowSeparator:` +`},W={bold:{tagName:"strong",inheritable:!0,parser(_n){const Ce=window.getComputedStyle(_n);return Ce.fontWeight==="bold"||Ce.fontWeight>=600}},italic:{tagName:"em",inheritable:!0,parser:_n=>window.getComputedStyle(_n).fontStyle==="italic"},href:{groupTagName:"a",parser(_n){const Ce="a:not(".concat(e,")"),ke=_n.closest(Ce);if(ke)return ke.getAttribute("href")}},strike:{tagName:"del",inheritable:!0},frozen:{style:{backgroundColor:"highlight"}}},U={getDefaultHTML:()=>`
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + +
    `)};const q={interval:5e3};var V=Object.freeze({__proto__:null,attachments:i$1,blockAttributes:n,browser:a,css:{attachment:"attachment",attachmentCaption:"attachment__caption",attachmentCaptionEditor:"attachment__caption-editor",attachmentMetadata:"attachment__metadata",attachmentMetadataContainer:"attachment__metadata-container",attachmentName:"attachment__name",attachmentProgress:"attachment__progress",attachmentSize:"attachment__size",attachmentToolbar:"attachment__toolbar",attachmentGallery:"attachment-gallery"},fileSize:u,input:M,keyNames:{8:"backspace",9:"tab",13:"return",27:"escape",37:"left",39:"right",46:"delete",68:"d",72:"h",79:"o"},lang:l,parser:j,textAttributes:W,toolbar:U,undo:q});class H{static proxyMethod(Ce){const{name:ke,toMethod:$n,toProperty:Hn,optional:zn}=z(Ce);this.prototype[ke]=function(){let Zn,qn;var Yn,Jn;return $n?qn=zn?(Yn=this[$n])===null||Yn===void 0?void 0:Yn.call(this):this[$n]():Hn&&(qn=this[Hn]),zn?(Zn=(Jn=qn)===null||Jn===void 0?void 0:Jn[ke],Zn?_.call(Zn,qn,arguments):void 0):(Zn=qn[ke],_.call(Zn,qn,arguments))}}}const z=function(_n){const Ce=_n.match(J);if(!Ce)throw new Error("can't parse @proxyMethod expression: ".concat(_n));const ke={name:Ce[4]};return Ce[2]!=null?ke.toMethod=Ce[1]:ke.toProperty=Ce[1],Ce[3]!=null&&(ke.optional=!0),ke},{apply:_}=Function.prototype,J=new RegExp("^(.+?)(\\(\\))?(\\?)?\\.(.+?)$");var K,G,$;class X extends H{static box(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return Ce instanceof this?Ce:this.fromUCS2String(Ce==null?void 0:Ce.toString())}static fromUCS2String(Ce){return new this(Ce,tt(Ce))}static fromCodepoints(Ce){return new this(et(Ce),Ce)}constructor(Ce,ke){super(...arguments),this.ucs2String=Ce,this.codepoints=ke,this.length=this.codepoints.length,this.ucs2Length=this.ucs2String.length}offsetToUCS2Offset(Ce){return et(this.codepoints.slice(0,Math.max(0,Ce))).length}offsetFromUCS2Offset(Ce){return tt(this.ucs2String.slice(0,Math.max(0,Ce))).length}slice(){return this.constructor.fromCodepoints(this.codepoints.slice(...arguments))}charAt(Ce){return this.slice(Ce,Ce+1)}isEqualTo(Ce){return this.constructor.box(Ce).ucs2String===this.ucs2String}toJSON(){return this.ucs2String}getCacheKey(){return this.ucs2String}toString(){return this.ucs2String}}const Y=((K=Array.from)===null||K===void 0?void 0:K.call(Array,"👼").length)===1,Q=((G=" ".codePointAt)===null||G===void 0?void 0:G.call(" ",0))!=null,Z=(($=String.fromCodePoint)===null||$===void 0?void 0:$.call(String,32,128124))===" 👼";let tt,et;tt=Y&&Q?_n=>Array.from(_n).map(Ce=>Ce.codePointAt(0)):function(_n){const Ce=[];let ke=0;const{length:$n}=_n;for(;ke<$n;){let Hn=_n.charCodeAt(ke++);if(55296<=Hn&&Hn<=56319&&ke<$n){const zn=_n.charCodeAt(ke++);(64512&zn)==56320?Hn=((1023&Hn)<<10)+(1023&zn)+65536:ke--}Ce.push(Hn)}return Ce},et=Z?_n=>String.fromCodePoint(...Array.from(_n||[])):function(_n){return(()=>{const Ce=[];return Array.from(_n).forEach(ke=>{let $n="";ke>65535&&(ke-=65536,$n+=String.fromCharCode(ke>>>10&1023|55296),ke=56320|1023&ke),Ce.push($n+String.fromCharCode(ke))}),Ce})().join("")};let it=0;class nt extends H{static fromJSONString(Ce){return this.fromJSON(JSON.parse(Ce))}constructor(){super(...arguments),this.id=++it}hasSameConstructorAs(Ce){return this.constructor===(Ce==null?void 0:Ce.constructor)}isEqualTo(Ce){return this===Ce}inspect(){const Ce=[],ke=this.contentsForInspection()||{};for(const $n in ke){const Hn=ke[$n];Ce.push("".concat($n,"=").concat(Hn))}return"#<".concat(this.constructor.name,":").concat(this.id).concat(Ce.length?" ".concat(Ce.join(", ")):"",">")}contentsForInspection(){}toJSONString(){return JSON.stringify(this)}toUTF16String(){return X.box(this)}getCacheKey(){return this.id.toString()}}const rt=function(){let _n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(_n.length!==Ce.length)return!1;for(let ke=0;ke<_n.length;ke++)if(_n[ke]!==Ce[ke])return!1;return!0},ot=function(_n){const Ce=_n.slice(0);for(var ke=arguments.length,$n=new Array(ke>1?ke-1:0),Hn=1;Hn(lt$1||(lt$1=ft().concat(mt())),lt$1),gt=_n=>n[_n],mt=()=>(ct||(ct=Object.keys(n)),ct),pt=_n=>W[_n],ft=()=>(ut||(ut=Object.keys(W)),ut),bt=function(_n,Ce){vt(_n).textContent=Ce.replace(/%t/g,_n)},vt=function(_n){const Ce=document.createElement("style");Ce.setAttribute("type","text/css"),Ce.setAttribute("data-tag-name",_n.toLowerCase());const ke=At();return ke&&Ce.setAttribute("nonce",ke),document.head.insertBefore(Ce,document.head.firstChild),Ce},At=function(){const _n=xt("trix-csp-nonce")||xt("csp-nonce");if(_n)return _n.getAttribute("content")},xt=_n=>document.head.querySelector("meta[name=".concat(_n,"]")),yt={"application/x-trix-feature-detection":"test"},Ct=function(_n){const Ce=_n.getData("text/plain"),ke=_n.getData("text/html");if(!Ce||!ke)return Ce==null?void 0:Ce.length;{const{body:$n}=new DOMParser().parseFromString(ke,"text/html");if($n.textContent===Ce)return!$n.querySelector("*")}},kt=/Mac|^iP/.test(navigator.platform)?_n=>_n.metaKey:_n=>_n.ctrlKey,Rt=_n=>setTimeout(_n,1),Et=function(){let _n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const Ce={};for(const ke in _n){const $n=_n[ke];Ce[ke]=$n}return Ce},St=function(){let _n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Object.keys(_n).length!==Object.keys(Ce).length)return!1;for(const ke in _n)if(_n[ke]!==Ce[ke])return!1;return!0},Lt=function(_n){if(_n!=null)return Array.isArray(_n)||(_n=[_n,_n]),[Tt(_n[0]),Tt(_n[1]!=null?_n[1]:_n[0])]},Dt=function(_n){if(_n==null)return;const[Ce,ke]=Lt(_n);return Bt(Ce,ke)},wt=function(_n,Ce){if(_n==null||Ce==null)return;const[ke,$n]=Lt(_n),[Hn,zn]=Lt(Ce);return Bt(ke,Hn)&&Bt($n,zn)},Tt=function(_n){return typeof _n=="number"?_n:Et(_n)},Bt=function(_n,Ce){return typeof _n=="number"?_n===Ce:St(_n,Ce)};class Ft extends H{constructor(){super(...arguments),this.update=this.update.bind(this),this.selectionManagers=[]}start(){this.started||(this.started=!0,document.addEventListener("selectionchange",this.update,!0))}stop(){if(this.started)return this.started=!1,document.removeEventListener("selectionchange",this.update,!0)}registerSelectionManager(Ce){if(!this.selectionManagers.includes(Ce))return this.selectionManagers.push(Ce),this.start()}unregisterSelectionManager(Ce){if(this.selectionManagers=this.selectionManagers.filter(ke=>ke!==Ce),this.selectionManagers.length===0)return this.stop()}notifySelectionManagersOfSelectionChange(){return this.selectionManagers.map(Ce=>Ce.selectionDidChange())}update(){this.notifySelectionManagersOfSelectionChange()}reset(){this.update()}}const Pt=new Ft,It=function(){const _n=window.getSelection();if(_n.rangeCount>0)return _n},Nt=function(){var _n;const Ce=(_n=It())===null||_n===void 0?void 0:_n.getRangeAt(0);if(Ce&&!Mt(Ce))return Ce},Ot=function(_n){const Ce=window.getSelection();return Ce.removeAllRanges(),Ce.addRange(_n),Pt.update()},Mt=_n=>jt(_n.startContainer)||jt(_n.endContainer),jt=_n=>!Object.getPrototypeOf(_n),Wt=_n=>_n.replace(new RegExp("".concat(h),"g"),"").replace(new RegExp("".concat(d),"g")," "),Ut=new RegExp("[^\\S".concat(d,"]")),qt=_n=>_n.replace(new RegExp("".concat(Ut.source),"g")," ").replace(/\ {2,}/g," "),Vt=function(_n,Ce){if(_n.isEqualTo(Ce))return["",""];const ke=Ht(_n,Ce),{length:$n}=ke.utf16String;let Hn;if($n){const{offset:zn}=ke,Zn=_n.codepoints.slice(0,zn).concat(_n.codepoints.slice(zn+$n));Hn=Ht(Ce,X.fromCodepoints(Zn))}else Hn=Ht(Ce,_n);return[ke.utf16String.toString(),Hn.utf16String.toString()]},Ht=function(_n,Ce){let ke=0,$n=_n.length,Hn=Ce.length;for(;ke<$n&&_n.charAt(ke).isEqualTo(Ce.charAt(ke));)ke++;for(;$n>ke+1&&_n.charAt($n-1).isEqualTo(Ce.charAt(Hn-1));)$n--,Hn--;return{utf16String:_n.slice(ke,$n),offset:ke}};class zt extends nt{static fromCommonAttributesOfObjects(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];if(!Ce.length)return new this;let ke=Gt(Ce[0]),$n=ke.getKeys();return Ce.slice(1).forEach(Hn=>{$n=ke.getKeysCommonToHash(Gt(Hn)),ke=ke.slice($n)}),ke}static box(Ce){return Gt(Ce)}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};super(...arguments),this.values=Kt(Ce)}add(Ce,ke){return this.merge(_t(Ce,ke))}remove(Ce){return new zt(Kt(this.values,Ce))}get(Ce){return this.values[Ce]}has(Ce){return Ce in this.values}merge(Ce){return new zt(Jt(this.values,$t(Ce)))}slice(Ce){const ke={};return Array.from(Ce).forEach($n=>{this.has($n)&&(ke[$n]=this.values[$n])}),new zt(ke)}getKeys(){return Object.keys(this.values)}getKeysCommonToHash(Ce){return Ce=Gt(Ce),this.getKeys().filter(ke=>this.values[ke]===Ce.values[ke])}isEqualTo(Ce){return rt(this.toArray(),Gt(Ce).toArray())}isEmpty(){return this.getKeys().length===0}toArray(){if(!this.array){const Ce=[];for(const ke in this.values){const $n=this.values[ke];Ce.push(Ce.push(ke,$n))}this.array=Ce.slice(0)}return this.array}toObject(){return Kt(this.values)}toJSON(){return this.toObject()}contentsForInspection(){return{values:JSON.stringify(this.values)}}}const _t=function(_n,Ce){const ke={};return ke[_n]=Ce,ke},Jt=function(_n,Ce){const ke=Kt(_n);for(const $n in Ce){const Hn=Ce[$n];ke[$n]=Hn}return ke},Kt=function(_n,Ce){const ke={};return Object.keys(_n).sort().forEach($n=>{$n!==Ce&&(ke[$n]=_n[$n])}),ke},Gt=function(_n){return _n instanceof zt?_n:new zt(_n)},$t=function(_n){return _n instanceof zt?_n.values:_n};class Xt{static groupObjects(){let Ce,ke=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],{depth:$n,asTree:Hn}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Hn&&$n==null&&($n=0);const zn=[];return Array.from(ke).forEach(Zn=>{var qn;if(Ce){var Yn,Jn,to;if((Yn=Zn.canBeGrouped)!==null&&Yn!==void 0&&Yn.call(Zn,$n)&&(Jn=(to=Ce[Ce.length-1]).canBeGroupedWith)!==null&&Jn!==void 0&&Jn.call(to,Zn,$n))return void Ce.push(Zn);zn.push(new this(Ce,{depth:$n,asTree:Hn})),Ce=null}(qn=Zn.canBeGrouped)!==null&&qn!==void 0&&qn.call(Zn,$n)?Ce=[Zn]:zn.push(Zn)}),Ce&&zn.push(new this(Ce,{depth:$n,asTree:Hn})),zn}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],{depth:ke,asTree:$n}=arguments.length>1?arguments[1]:void 0;this.objects=Ce,$n&&(this.depth=ke,this.objects=this.constructor.groupObjects(this.objects,{asTree:$n,depth:this.depth+1}))}getObjects(){return this.objects}getDepth(){return this.depth}getCacheKey(){const Ce=["objectGroup"];return Array.from(this.getObjects()).forEach(ke=>{Ce.push(ke.getCacheKey())}),Ce.join("/")}}class Yt extends H{constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),this.objects={},Array.from(Ce).forEach(ke=>{const $n=JSON.stringify(ke);this.objects[$n]==null&&(this.objects[$n]=ke)})}find(Ce){const ke=JSON.stringify(Ce);return this.objects[ke]}}class Qt{constructor(Ce){this.reset(Ce)}add(Ce){const ke=Zt(Ce);this.elements[ke]=Ce}remove(Ce){const ke=Zt(Ce),$n=this.elements[ke];if($n)return delete this.elements[ke],$n}reset(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return this.elements={},Array.from(Ce).forEach(ke=>{this.add(ke)}),Ce}}const Zt=_n=>_n.dataset.trixStoreKey;class te extends H{isPerforming(){return this.performing===!0}hasPerformed(){return this.performed===!0}hasSucceeded(){return this.performed&&this.succeeded}hasFailed(){return this.performed&&!this.succeeded}getPromise(){return this.promise||(this.promise=new Promise((Ce,ke)=>(this.performing=!0,this.perform(($n,Hn)=>{this.succeeded=$n,this.performing=!1,this.performed=!0,this.succeeded?Ce(Hn):ke(Hn)})))),this.promise}perform(Ce){return Ce(!1)}release(){var Ce,ke;(Ce=this.promise)===null||Ce===void 0||(ke=Ce.cancel)===null||ke===void 0||ke.call(Ce),this.promise=null,this.performing=null,this.performed=null,this.succeeded=null}}te.proxyMethod("getPromise().then"),te.proxyMethod("getPromise().catch");class ee extends H{constructor(Ce){let ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(...arguments),this.object=Ce,this.options=ke,this.childViews=[],this.rootView=this}getNodes(){return this.nodes||(this.nodes=this.createNodes()),this.nodes.map(Ce=>Ce.cloneNode(!0))}invalidate(){var Ce;return this.nodes=null,this.childViews=[],(Ce=this.parentView)===null||Ce===void 0?void 0:Ce.invalidate()}invalidateViewForObject(Ce){var ke;return(ke=this.findViewForObject(Ce))===null||ke===void 0?void 0:ke.invalidate()}findOrCreateCachedChildView(Ce,ke,$n){let Hn=this.getCachedViewForObject(ke);return Hn?this.recordChildView(Hn):(Hn=this.createChildView(...arguments),this.cacheViewForObject(Hn,ke)),Hn}createChildView(Ce,ke){let $n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};ke instanceof Xt&&($n.viewClass=Ce,Ce=ie$2);const Hn=new Ce(ke,$n);return this.recordChildView(Hn)}recordChildView(Ce){return Ce.parentView=this,Ce.rootView=this.rootView,this.childViews.push(Ce),Ce}getAllChildViews(){let Ce=[];return this.childViews.forEach(ke=>{Ce.push(ke),Ce=Ce.concat(ke.getAllChildViews())}),Ce}findElement(){return this.findElementForObject(this.object)}findElementForObject(Ce){const ke=Ce==null?void 0:Ce.id;if(ke)return this.rootView.element.querySelector("[data-trix-id='".concat(ke,"']"))}findViewForObject(Ce){for(const ke of this.getAllChildViews())if(ke.object===Ce)return ke}getViewCache(){return this.rootView!==this?this.rootView.getViewCache():this.isViewCachingEnabled()?(this.viewCache||(this.viewCache={}),this.viewCache):void 0}isViewCachingEnabled(){return this.shouldCacheViews!==!1}enableViewCaching(){this.shouldCacheViews=!0}disableViewCaching(){this.shouldCacheViews=!1}getCachedViewForObject(Ce){var ke;return(ke=this.getViewCache())===null||ke===void 0?void 0:ke[Ce.getCacheKey()]}cacheViewForObject(Ce,ke){const $n=this.getViewCache();$n&&($n[ke.getCacheKey()]=Ce)}garbageCollectCachedViews(){const Ce=this.getViewCache();if(Ce){const ke=this.getAllChildViews().concat(this).map($n=>$n.object.getCacheKey());for(const $n in Ce)ke.includes($n)||delete Ce[$n]}}}let ie$2=class extends ee{constructor(){super(...arguments),this.objectGroup=this.object,this.viewClass=this.options.viewClass,delete this.options.viewClass}getChildViews(){return this.childViews.length||Array.from(this.objectGroup.getObjects()).forEach(Ce=>{this.findOrCreateCachedChildView(this.viewClass,Ce,this.options)}),this.childViews}createNodes(){const Ce=this.createContainerElement();return this.getChildViews().forEach(ke=>{Array.from(ke.getNodes()).forEach($n=>{Ce.appendChild($n)})}),[Ce]}createContainerElement(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.objectGroup.getDepth();return this.getChildViews()[0].createContainerElement(Ce)}};const ne="style href src width height language class".split(" "),re="javascript:".split(" "),oe="script iframe form noscript".split(" ");class se extends H{static setHTML(Ce,ke){const $n=new this(ke).sanitize(),Hn=$n.getHTML?$n.getHTML():$n.outerHTML;Ce.innerHTML=Hn}static sanitize(Ce,ke){const $n=new this(Ce,ke);return $n.sanitize(),$n}constructor(Ce){let{allowedAttributes:ke,forbiddenProtocols:$n,forbiddenElements:Hn}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(...arguments),this.allowedAttributes=ke||ne,this.forbiddenProtocols=$n||re,this.forbiddenElements=Hn||oe,this.body=ae(Ce)}sanitize(){return this.sanitizeElements(),this.normalizeListElementNesting()}getHTML(){return this.body.innerHTML}getBody(){return this.body}sanitizeElements(){const Ce=R(this.body),ke=[];for(;Ce.nextNode();){const $n=Ce.currentNode;switch($n.nodeType){case Node.ELEMENT_NODE:this.elementIsRemovable($n)?ke.push($n):this.sanitizeElement($n);break;case Node.COMMENT_NODE:ke.push($n)}}return ke.forEach($n=>k($n)),this.body}sanitizeElement(Ce){return Ce.hasAttribute("href")&&this.forbiddenProtocols.includes(Ce.protocol)&&Ce.removeAttribute("href"),Array.from(Ce.attributes).forEach(ke=>{let{name:$n}=ke;this.allowedAttributes.includes($n)||$n.indexOf("data-trix")===0||Ce.removeAttribute($n)}),Ce}normalizeListElementNesting(){return Array.from(this.body.querySelectorAll("ul,ol")).forEach(Ce=>{const ke=Ce.previousElementSibling;ke&&E(ke)==="li"&&ke.appendChild(Ce)}),this.body}elementIsRemovable(Ce){if((Ce==null?void 0:Ce.nodeType)===Node.ELEMENT_NODE)return this.elementIsForbidden(Ce)||this.elementIsntSerializable(Ce)}elementIsForbidden(Ce){return this.forbiddenElements.includes(E(Ce))}elementIsntSerializable(Ce){return Ce.getAttribute("data-trix-serialize")==="false"&&!I(Ce)}}const ae=function(){let _n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";_n=_n.replace(/<\/html[^>]*>[^]*$/i,"");const Ce=document.implementation.createHTMLDocument("");return Ce.documentElement.innerHTML=_n,Array.from(Ce.head.querySelectorAll("style")).forEach(ke=>{Ce.body.appendChild(ke)}),Ce.body},{css:le}=V;class ce extends ee{constructor(){super(...arguments),this.attachment=this.object,this.attachment.uploadProgressDelegate=this,this.attachmentPiece=this.options.piece}createContentNodes(){return[]}createNodes(){let Ce;const ke=Ce=S$1({tagName:"figure",className:this.getClassName(),data:this.getData(),editable:!1}),$n=this.getHref();return $n&&(Ce=S$1({tagName:"a",editable:!1,attributes:{href:$n,tabindex:-1}}),ke.appendChild(Ce)),this.attachment.hasContent()?se.setHTML(Ce,this.attachment.getContent()):this.createContentNodes().forEach(Hn=>{Ce.appendChild(Hn)}),Ce.appendChild(this.createCaptionElement()),this.attachment.isPending()&&(this.progressElement=S$1({tagName:"progress",attributes:{class:le.attachmentProgress,value:this.attachment.getUploadProgress(),max:100},data:{trixMutable:!0,trixStoreKey:["progressElement",this.attachment.id].join("/")}}),ke.appendChild(this.progressElement)),[ue("left"),ke,ue("right")]}createCaptionElement(){const Ce=S$1({tagName:"figcaption",className:le.attachmentCaption}),ke=this.attachmentPiece.getCaption();if(ke)Ce.classList.add("".concat(le.attachmentCaption,"--edited")),Ce.textContent=ke;else{let $n,Hn;const zn=this.getCaptionConfig();if(zn.name&&($n=this.attachment.getFilename()),zn.size&&(Hn=this.attachment.getFormattedFilesize()),$n){const Zn=S$1({tagName:"span",className:le.attachmentName,textContent:$n});Ce.appendChild(Zn)}if(Hn){$n&&Ce.appendChild(document.createTextNode(" "));const Zn=S$1({tagName:"span",className:le.attachmentSize,textContent:Hn});Ce.appendChild(Zn)}}return Ce}getClassName(){const Ce=[le.attachment,"".concat(le.attachment,"--").concat(this.attachment.getType())],ke=this.attachment.getExtension();return ke&&Ce.push("".concat(le.attachment,"--").concat(ke)),Ce.join(" ")}getData(){const Ce={trixAttachment:JSON.stringify(this.attachment),trixContentType:this.attachment.getContentType(),trixId:this.attachment.id},{attributes:ke}=this.attachmentPiece;return ke.isEmpty()||(Ce.trixAttributes=JSON.stringify(ke)),this.attachment.isPending()&&(Ce.trixSerialize=!1),Ce}getHref(){if(!he(this.attachment.getContent(),"a"))return this.attachment.getHref()}getCaptionConfig(){var Ce;const ke=this.attachment.getType(),$n=Et((Ce=i$1[ke])===null||Ce===void 0?void 0:Ce.caption);return ke==="file"&&($n.name=!0),$n}findProgressElement(){var Ce;return(Ce=this.findElement())===null||Ce===void 0?void 0:Ce.querySelector("progress")}attachmentDidChangeUploadProgress(){const Ce=this.attachment.getUploadProgress(),ke=this.findProgressElement();ke&&(ke.value=Ce)}}const ue=_n=>S$1({tagName:"span",textContent:h,data:{trixCursorTarget:_n,trixSerialize:!1}}),he=function(_n,Ce){const ke=S$1("div");return se.setHTML(ke,_n||""),ke.querySelector(Ce)};class de extends ce{constructor(){super(...arguments),this.attachment.previewDelegate=this}createContentNodes(){return this.image=S$1({tagName:"img",attributes:{src:""},data:{trixMutable:!0}}),this.refresh(this.image),[this.image]}createCaptionElement(){const Ce=super.createCaptionElement(...arguments);return Ce.textContent||Ce.setAttribute("data-trix-placeholder",l.captionPlaceholder),Ce}refresh(Ce){var ke;if(Ce||(Ce=(ke=this.findElement())===null||ke===void 0?void 0:ke.querySelector("img")),Ce)return this.updateAttributesForImage(Ce)}updateAttributesForImage(Ce){const ke=this.attachment.getURL(),$n=this.attachment.getPreviewURL();if(Ce.src=$n||ke,$n===ke)Ce.removeAttribute("data-trix-serialized-attributes");else{const qn=JSON.stringify({src:ke});Ce.setAttribute("data-trix-serialized-attributes",qn)}const Hn=this.attachment.getWidth(),zn=this.attachment.getHeight();Hn!=null&&(Ce.width=Hn),zn!=null&&(Ce.height=zn);const Zn=["imageElement",this.attachment.id,Ce.src,Ce.width,Ce.height].join("/");Ce.dataset.trixStoreKey=Zn}attachmentDidChangeAttributes(){return this.refresh(this.image),this.refresh()}}class ge extends ee{constructor(){super(...arguments),this.piece=this.object,this.attributes=this.piece.getAttributes(),this.textConfig=this.options.textConfig,this.context=this.options.context,this.piece.attachment?this.attachment=this.piece.attachment:this.string=this.piece.toString()}createNodes(){let Ce=this.attachment?this.createAttachmentNodes():this.createStringNodes();const ke=this.createElement();if(ke){const $n=function(Hn){for(;(zn=Hn)!==null&&zn!==void 0&&zn.firstElementChild;){var zn;Hn=Hn.firstElementChild}return Hn}(ke);Array.from(Ce).forEach(Hn=>{$n.appendChild(Hn)}),Ce=[ke]}return Ce}createAttachmentNodes(){const Ce=this.attachment.isPreviewable()?de:ce;return this.createChildView(Ce,this.piece.attachment,{piece:this.piece}).getNodes()}createStringNodes(){var Ce;if((Ce=this.textConfig)!==null&&Ce!==void 0&&Ce.plaintext)return[document.createTextNode(this.string)];{const ke=[],$n=this.string.split(` +`);for(let Hn=0;Hn<$n.length;Hn++){const zn=$n[Hn];if(Hn>0){const Zn=S$1("br");ke.push(Zn)}if(zn.length){const Zn=document.createTextNode(this.preserveSpaces(zn));ke.push(Zn)}}return ke}}createElement(){let Ce,ke,$n;const Hn={};for(ke in this.attributes){$n=this.attributes[ke];const Zn=pt(ke);if(Zn){if(Zn.tagName){var zn;const qn=S$1(Zn.tagName);zn?(zn.appendChild(qn),zn=qn):Ce=zn=qn}if(Zn.styleProperty&&(Hn[Zn.styleProperty]=$n),Zn.style)for(ke in Zn.style)$n=Zn.style[ke],Hn[ke]=$n}}if(Object.keys(Hn).length)for(ke in Ce||(Ce=S$1("span")),Hn)$n=Hn[ke],Ce.style[ke]=$n;return Ce}createContainerElement(){for(const Ce in this.attributes){const ke=this.attributes[Ce],$n=pt(Ce);if($n&&$n.groupTagName){const Hn={};return Hn[Ce]=ke,S$1($n.groupTagName,Hn)}}}preserveSpaces(Ce){return this.context.isLast&&(Ce=Ce.replace(/\ $/,d)),Ce=Ce.replace(/(\S)\ {3}(\S)/g,"$1 ".concat(d," $2")).replace(/\ {2}/g,"".concat(d," ")).replace(/\ {2}/g," ".concat(d)),(this.context.isFirst||this.context.followsWhitespace)&&(Ce=Ce.replace(/^\ /,d)),Ce}}class me extends ee{constructor(){super(...arguments),this.text=this.object,this.textConfig=this.options.textConfig}createNodes(){const Ce=[],ke=Xt.groupObjects(this.getPieces()),$n=ke.length-1;for(let zn=0;zn!Ce.hasAttribute("blockBreak"))}}const pe=_n=>/\s$/.test(_n==null?void 0:_n.toString()),{css:fe}=V;class be extends ee{constructor(){super(...arguments),this.block=this.object,this.attributes=this.block.getAttributes()}createNodes(){const Ce=[document.createComment("block")];if(this.block.isEmpty())Ce.push(S$1("br"));else{var ke;const $n=(ke=gt(this.block.getLastAttribute()))===null||ke===void 0?void 0:ke.text,Hn=this.findOrCreateCachedChildView(me,this.block.text,{textConfig:$n});Ce.push(...Array.from(Hn.getNodes()||[])),this.shouldAddExtraNewlineElement()&&Ce.push(S$1("br"))}if(this.attributes.length)return Ce;{let $n;const{tagName:Hn}=n.default;this.block.isRTL()&&($n={dir:"rtl"});const zn=S$1({tagName:Hn,attributes:$n});return Ce.forEach(Zn=>zn.appendChild(Zn)),[zn]}}createContainerElement(Ce){const ke={};let $n;const Hn=this.attributes[Ce],{tagName:zn,htmlAttributes:Zn=[]}=gt(Hn);if(Ce===0&&this.block.isRTL()&&Object.assign(ke,{dir:"rtl"}),Hn==="attachmentGallery"){const qn=this.block.getBlockBreakPosition();$n="".concat(fe.attachmentGallery," ").concat(fe.attachmentGallery,"--").concat(qn)}return Object.entries(this.block.htmlAttributes).forEach(qn=>{let[Yn,Jn]=qn;Zn.includes(Yn)&&(ke[Yn]=Jn)}),S$1({tagName:zn,className:$n,attributes:ke})}shouldAddExtraNewlineElement(){return/\n\n$/.test(this.block.toString())}}class ve extends ee{static render(Ce){const ke=S$1("div"),$n=new this(Ce,{element:ke});return $n.render(),$n.sync(),ke}constructor(){super(...arguments),this.element=this.options.element,this.elementStore=new Qt,this.setDocument(this.object)}setDocument(Ce){Ce.isEqualTo(this.document)||(this.document=this.object=Ce)}render(){if(this.childViews=[],this.shadowElement=S$1("div"),!this.document.isEmpty()){const Ce=Xt.groupObjects(this.document.getBlocks(),{asTree:!0});Array.from(Ce).forEach(ke=>{const $n=this.findOrCreateCachedChildView(be,ke);Array.from($n.getNodes()).map(Hn=>this.shadowElement.appendChild(Hn))})}}isSynced(){return xe(this.shadowElement,this.element)}sync(){const Ce=this.createDocumentFragmentForSync();for(;this.element.lastChild;)this.element.removeChild(this.element.lastChild);return this.element.appendChild(Ce),this.didSync()}didSync(){return this.elementStore.reset(Ae(this.element)),Rt(()=>this.garbageCollectCachedViews())}createDocumentFragmentForSync(){const Ce=document.createDocumentFragment();return Array.from(this.shadowElement.childNodes).forEach(ke=>{Ce.appendChild(ke.cloneNode(!0))}),Array.from(Ae(Ce)).forEach(ke=>{const $n=this.elementStore.remove(ke);$n&&ke.parentNode.replaceChild($n,ke)}),Ce}}const Ae=_n=>_n.querySelectorAll("[data-trix-store-key]"),xe=(_n,Ce)=>ye(_n.innerHTML)===ye(Ce.innerHTML),ye=_n=>_n.replace(/ /g," ");function Re(_n,Ce,ke){return(Ce=Ee(Ce))in _n?Object.defineProperty(_n,Ce,{value:ke,enumerable:!0,configurable:!0,writable:!0}):_n[Ce]=ke,_n}function Ee(_n){var Ce=function(ke,$n){if(typeof ke!="object"||ke===null)return ke;var Hn=ke[Symbol.toPrimitive];if(Hn!==void 0){var zn=Hn.call(ke,$n||"default");if(typeof zn!="object")return zn;throw new TypeError("@@toPrimitive must return a primitive value.")}return($n==="string"?String:Number)(ke)}(_n,"string");return typeof Ce=="symbol"?Ce:String(Ce)}class Se extends nt{static registerType(Ce,ke){ke.type=Ce,this.types[Ce]=ke}static fromJSON(Ce){const ke=this.types[Ce.type];if(ke)return ke.fromJSON(Ce)}constructor(Ce){let ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(...arguments),this.attributes=zt.box(ke)}copyWithAttributes(Ce){return new this.constructor(this.getValue(),Ce)}copyWithAdditionalAttributes(Ce){return this.copyWithAttributes(this.attributes.merge(Ce))}copyWithoutAttribute(Ce){return this.copyWithAttributes(this.attributes.remove(Ce))}copy(){return this.copyWithAttributes(this.attributes)}getAttribute(Ce){return this.attributes.get(Ce)}getAttributesHash(){return this.attributes}getAttributes(){return this.attributes.toObject()}hasAttribute(Ce){return this.attributes.has(Ce)}hasSameStringValueAsPiece(Ce){return Ce&&this.toString()===Ce.toString()}hasSameAttributesAsPiece(Ce){return Ce&&(this.attributes===Ce.attributes||this.attributes.isEqualTo(Ce.attributes))}isBlockBreak(){return!1}isEqualTo(Ce){return super.isEqualTo(...arguments)||this.hasSameConstructorAs(Ce)&&this.hasSameStringValueAsPiece(Ce)&&this.hasSameAttributesAsPiece(Ce)}isEmpty(){return this.length===0}isSerializable(){return!0}toJSON(){return{type:this.constructor.type,attributes:this.getAttributes()}}contentsForInspection(){return{type:this.constructor.type,attributes:this.attributes.inspect()}}canBeGrouped(){return this.hasAttribute("href")}canBeGroupedWith(Ce){return this.getAttribute("href")===Ce.getAttribute("href")}getLength(){return this.length}canBeConsolidatedWith(Ce){return!1}}Re(Se,"types",{});class Le extends te{constructor(Ce){super(...arguments),this.url=Ce}perform(Ce){const ke=new Image;ke.onload=()=>(ke.width=this.width=ke.naturalWidth,ke.height=this.height=ke.naturalHeight,Ce(!0,ke)),ke.onerror=()=>Ce(!1),ke.src=this.url}}class De extends nt{static attachmentForFile(Ce){const ke=new this(this.attributesForFile(Ce));return ke.setFile(Ce),ke}static attributesForFile(Ce){return new zt({filename:Ce.name,filesize:Ce.size,contentType:Ce.type})}static fromJSON(Ce){return new this(Ce)}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};super(Ce),this.releaseFile=this.releaseFile.bind(this),this.attributes=zt.box(Ce),this.didChangeAttributes()}getAttribute(Ce){return this.attributes.get(Ce)}hasAttribute(Ce){return this.attributes.has(Ce)}getAttributes(){return this.attributes.toObject()}setAttributes(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const ke=this.attributes.merge(Ce);var $n,Hn,zn,Zn;if(!this.attributes.isEqualTo(ke))return this.attributes=ke,this.didChangeAttributes(),($n=this.previewDelegate)===null||$n===void 0||(Hn=$n.attachmentDidChangeAttributes)===null||Hn===void 0||Hn.call($n,this),(zn=this.delegate)===null||zn===void 0||(Zn=zn.attachmentDidChangeAttributes)===null||Zn===void 0?void 0:Zn.call(zn,this)}didChangeAttributes(){if(this.isPreviewable())return this.preloadURL()}isPending(){return this.file!=null&&!(this.getURL()||this.getHref())}isPreviewable(){return this.attributes.has("previewable")?this.attributes.get("previewable"):De.previewablePattern.test(this.getContentType())}getType(){return this.hasContent()?"content":this.isPreviewable()?"preview":"file"}getURL(){return this.attributes.get("url")}getHref(){return this.attributes.get("href")}getFilename(){return this.attributes.get("filename")||""}getFilesize(){return this.attributes.get("filesize")}getFormattedFilesize(){const Ce=this.attributes.get("filesize");return typeof Ce=="number"?u.formatter(Ce):""}getExtension(){var Ce;return(Ce=this.getFilename().match(/\.(\w+)$/))===null||Ce===void 0?void 0:Ce[1].toLowerCase()}getContentType(){return this.attributes.get("contentType")}hasContent(){return this.attributes.has("content")}getContent(){return this.attributes.get("content")}getWidth(){return this.attributes.get("width")}getHeight(){return this.attributes.get("height")}getFile(){return this.file}setFile(Ce){if(this.file=Ce,this.isPreviewable())return this.preloadFile()}releaseFile(){this.releasePreloadedFile(),this.file=null}getUploadProgress(){return this.uploadProgress!=null?this.uploadProgress:0}setUploadProgress(Ce){var ke,$n;if(this.uploadProgress!==Ce)return this.uploadProgress=Ce,(ke=this.uploadProgressDelegate)===null||ke===void 0||($n=ke.attachmentDidChangeUploadProgress)===null||$n===void 0?void 0:$n.call(ke,this)}toJSON(){return this.getAttributes()}getCacheKey(){return[super.getCacheKey(...arguments),this.attributes.getCacheKey(),this.getPreviewURL()].join("/")}getPreviewURL(){return this.previewURL||this.preloadingURL}setPreviewURL(Ce){var ke,$n,Hn,zn;if(Ce!==this.getPreviewURL())return this.previewURL=Ce,(ke=this.previewDelegate)===null||ke===void 0||($n=ke.attachmentDidChangeAttributes)===null||$n===void 0||$n.call(ke,this),(Hn=this.delegate)===null||Hn===void 0||(zn=Hn.attachmentDidChangePreviewURL)===null||zn===void 0?void 0:zn.call(Hn,this)}preloadURL(){return this.preload(this.getURL(),this.releaseFile)}preloadFile(){if(this.file)return this.fileObjectURL=URL.createObjectURL(this.file),this.preload(this.fileObjectURL)}releasePreloadedFile(){this.fileObjectURL&&(URL.revokeObjectURL(this.fileObjectURL),this.fileObjectURL=null)}preload(Ce,ke){if(Ce&&Ce!==this.getPreviewURL())return this.preloadingURL=Ce,new Le(Ce).then($n=>{let{width:Hn,height:zn}=$n;return this.getWidth()&&this.getHeight()||this.setAttributes({width:Hn,height:zn}),this.preloadingURL=null,this.setPreviewURL(Ce),ke==null?void 0:ke()}).catch(()=>(this.preloadingURL=null,ke==null?void 0:ke()))}}Re(De,"previewablePattern",/^image(\/(gif|png|webp|jpe?g)|$)/);class we extends Se{static fromJSON(Ce){return new this(De.fromJSON(Ce.attachment),Ce.attributes)}constructor(Ce){super(...arguments),this.attachment=Ce,this.length=1,this.ensureAttachmentExclusivelyHasAttribute("href"),this.attachment.hasContent()||this.removeProhibitedAttributes()}ensureAttachmentExclusivelyHasAttribute(Ce){this.hasAttribute(Ce)&&(this.attachment.hasAttribute(Ce)||this.attachment.setAttributes(this.attributes.slice([Ce])),this.attributes=this.attributes.remove(Ce))}removeProhibitedAttributes(){const Ce=this.attributes.slice(we.permittedAttributes);Ce.isEqualTo(this.attributes)||(this.attributes=Ce)}getValue(){return this.attachment}isSerializable(){return!this.attachment.isPending()}getCaption(){return this.attributes.get("caption")||""}isEqualTo(Ce){var ke;return super.isEqualTo(Ce)&&this.attachment.id===(Ce==null||(ke=Ce.attachment)===null||ke===void 0?void 0:ke.id)}toString(){return""}toJSON(){const Ce=super.toJSON(...arguments);return Ce.attachment=this.attachment,Ce}getCacheKey(){return[super.getCacheKey(...arguments),this.attachment.getCacheKey()].join("/")}toConsole(){return JSON.stringify(this.toString())}}Re(we,"permittedAttributes",["caption","presentation"]),Se.registerType("attachment",we);class Te extends Se{static fromJSON(Ce){return new this(Ce.string,Ce.attributes)}constructor(Ce){super(...arguments),this.string=(ke=>ke.replace(/\r\n?/g,` +`))(Ce),this.length=this.string.length}getValue(){return this.string}toString(){return this.string.toString()}isBlockBreak(){return this.toString()===` +`&&this.getAttribute("blockBreak")===!0}toJSON(){const Ce=super.toJSON(...arguments);return Ce.string=this.string,Ce}canBeConsolidatedWith(Ce){return Ce&&this.hasSameConstructorAs(Ce)&&this.hasSameAttributesAsPiece(Ce)}consolidateWith(Ce){return new this.constructor(this.toString()+Ce.toString(),this.attributes)}splitAtOffset(Ce){let ke,$n;return Ce===0?(ke=null,$n=this):Ce===this.length?(ke=this,$n=null):(ke=new this.constructor(this.string.slice(0,Ce),this.attributes),$n=new this.constructor(this.string.slice(Ce),this.attributes)),[ke,$n]}toConsole(){let{string:Ce}=this;return Ce.length>15&&(Ce=Ce.slice(0,14)+"…"),JSON.stringify(Ce.toString())}}Se.registerType("string",Te);class Be extends nt{static box(Ce){return Ce instanceof this?Ce:new this(Ce)}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),this.objects=Ce.slice(0),this.length=this.objects.length}indexOf(Ce){return this.objects.indexOf(Ce)}splice(){for(var Ce=arguments.length,ke=new Array(Ce),$n=0;$nCe(ke,$n))}insertObjectAtIndex(Ce,ke){return this.splice(ke,0,Ce)}insertSplittableListAtIndex(Ce,ke){return this.splice(ke,0,...Ce.objects)}insertSplittableListAtPosition(Ce,ke){const[$n,Hn]=this.splitObjectAtPosition(ke);return new this.constructor($n).insertSplittableListAtIndex(Ce,Hn)}editObjectAtIndex(Ce,ke){return this.replaceObjectAtIndex(ke(this.objects[Ce]),Ce)}replaceObjectAtIndex(Ce,ke){return this.splice(ke,1,Ce)}removeObjectAtIndex(Ce){return this.splice(Ce,1)}getObjectAtIndex(Ce){return this.objects[Ce]}getSplittableListInRange(Ce){const[ke,$n,Hn]=this.splitObjectsAtRange(Ce);return new this.constructor(ke.slice($n,Hn+1))}selectSplittableList(Ce){const ke=this.objects.filter($n=>Ce($n));return new this.constructor(ke)}removeObjectsInRange(Ce){const[ke,$n,Hn]=this.splitObjectsAtRange(Ce);return new this.constructor(ke).splice($n,Hn-$n+1)}transformObjectsInRange(Ce,ke){const[$n,Hn,zn]=this.splitObjectsAtRange(Ce),Zn=$n.map((qn,Yn)=>Hn<=Yn&&Yn<=zn?ke(qn):qn);return new this.constructor(Zn)}splitObjectsAtRange(Ce){let ke,[$n,Hn,zn]=this.splitObjectAtPosition(Pe(Ce));return[$n,ke]=new this.constructor($n).splitObjectAtPosition(Ie(Ce)+zn),[$n,Hn,ke-1]}getObjectAtPosition(Ce){const{index:ke}=this.findIndexAndOffsetAtPosition(Ce);return this.objects[ke]}splitObjectAtPosition(Ce){let ke,$n;const{index:Hn,offset:zn}=this.findIndexAndOffsetAtPosition(Ce),Zn=this.objects.slice(0);if(Hn!=null)if(zn===0)ke=Hn,$n=0;else{const qn=this.getObjectAtIndex(Hn),[Yn,Jn]=qn.splitAtOffset(zn);Zn.splice(Hn,1,Yn,Jn),ke=Hn+1,$n=Yn.getLength()-zn}else ke=Zn.length,$n=0;return[Zn,ke,$n]}consolidate(){const Ce=[];let ke=this.objects[0];return this.objects.slice(1).forEach($n=>{var Hn,zn;(Hn=(zn=ke).canBeConsolidatedWith)!==null&&Hn!==void 0&&Hn.call(zn,$n)?ke=ke.consolidateWith($n):(Ce.push(ke),ke=$n)}),ke&&Ce.push(ke),new this.constructor(Ce)}consolidateFromIndexToIndex(Ce,ke){const $n=this.objects.slice(0).slice(Ce,ke+1),Hn=new this.constructor($n).consolidate().toArray();return this.splice(Ce,$n.length,...Hn)}findIndexAndOffsetAtPosition(Ce){let ke,$n=0;for(ke=0;kethis.endPosition+=Ce.getLength())),this.endPosition}toString(){return this.objects.join("")}toArray(){return this.objects.slice(0)}toJSON(){return this.toArray()}isEqualTo(Ce){return super.isEqualTo(...arguments)||Fe(this.objects,Ce==null?void 0:Ce.objects)}contentsForInspection(){return{objects:"[".concat(this.objects.map(Ce=>Ce.inspect()).join(", "),"]")}}}const Fe=function(_n){let Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(_n.length!==Ce.length)return!1;let ke=!0;for(let $n=0;$n<_n.length;$n++){const Hn=_n[$n];ke&&!Hn.isEqualTo(Ce[$n])&&(ke=!1)}return ke},Pe=_n=>_n[0],Ie=_n=>_n[1];class Ne extends nt{static textForAttachmentWithAttributes(Ce,ke){return new this([new we(Ce,ke)])}static textForStringWithAttributes(Ce,ke){return new this([new Te(Ce,ke)])}static fromJSON(Ce){return new this(Array.from(Ce).map(ke=>Se.fromJSON(ke)))}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments);const ke=Ce.filter($n=>!$n.isEmpty());this.pieceList=new Be(ke)}copy(){return this.copyWithPieceList(this.pieceList)}copyWithPieceList(Ce){return new this.constructor(Ce.consolidate().toArray())}copyUsingObjectMap(Ce){const ke=this.getPieces().map($n=>Ce.find($n)||$n);return new this.constructor(ke)}appendText(Ce){return this.insertTextAtPosition(Ce,this.getLength())}insertTextAtPosition(Ce,ke){return this.copyWithPieceList(this.pieceList.insertSplittableListAtPosition(Ce.pieceList,ke))}removeTextAtRange(Ce){return this.copyWithPieceList(this.pieceList.removeObjectsInRange(Ce))}replaceTextAtRange(Ce,ke){return this.removeTextAtRange(ke).insertTextAtPosition(Ce,ke[0])}moveTextFromRangeToPosition(Ce,ke){if(Ce[0]<=ke&&ke<=Ce[1])return;const $n=this.getTextAtRange(Ce),Hn=$n.getLength();return Ce[0]$n.copyWithAdditionalAttributes(Ce)))}removeAttributeAtRange(Ce,ke){return this.copyWithPieceList(this.pieceList.transformObjectsInRange(ke,$n=>$n.copyWithoutAttribute(Ce)))}setAttributesAtRange(Ce,ke){return this.copyWithPieceList(this.pieceList.transformObjectsInRange(ke,$n=>$n.copyWithAttributes(Ce)))}getAttributesAtPosition(Ce){var ke;return((ke=this.pieceList.getObjectAtPosition(Ce))===null||ke===void 0?void 0:ke.getAttributes())||{}}getCommonAttributes(){const Ce=Array.from(this.pieceList.toArray()).map(ke=>ke.getAttributes());return zt.fromCommonAttributesOfObjects(Ce).toObject()}getCommonAttributesAtRange(Ce){return this.getTextAtRange(Ce).getCommonAttributes()||{}}getExpandedRangeForAttributeAtOffset(Ce,ke){let $n,Hn=$n=ke;const zn=this.getLength();for(;Hn>0&&this.getCommonAttributesAtRange([Hn-1,$n])[Ce];)Hn--;for(;$n!!Ce.attachment)}getAttachments(){return this.getAttachmentPieces().map(Ce=>Ce.attachment)}getAttachmentAndPositionById(Ce){let ke=0;for(const Hn of this.pieceList.toArray()){var $n;if((($n=Hn.attachment)===null||$n===void 0?void 0:$n.id)===Ce)return{attachment:Hn.attachment,position:ke};ke+=Hn.length}return{attachment:null,position:null}}getAttachmentById(Ce){const{attachment:ke}=this.getAttachmentAndPositionById(Ce);return ke}getRangeOfAttachment(Ce){const ke=this.getAttachmentAndPositionById(Ce.id),$n=ke.position;if(Ce=ke.attachment)return[$n,$n+1]}updateAttributesForAttachment(Ce,ke){const $n=this.getRangeOfAttachment(ke);return $n?this.addAttributesAtRange(Ce,$n):this}getLength(){return this.pieceList.getEndPosition()}isEmpty(){return this.getLength()===0}isEqualTo(Ce){var ke;return super.isEqualTo(Ce)||(Ce==null||(ke=Ce.pieceList)===null||ke===void 0?void 0:ke.isEqualTo(this.pieceList))}isBlockBreak(){return this.getLength()===1&&this.pieceList.getObjectAtIndex(0).isBlockBreak()}eachPiece(Ce){return this.pieceList.eachObject(Ce)}getPieces(){return this.pieceList.toArray()}getPieceAtPosition(Ce){return this.pieceList.getObjectAtPosition(Ce)}contentsForInspection(){return{pieceList:this.pieceList.inspect()}}toSerializableText(){const Ce=this.pieceList.selectSplittableList(ke=>ke.isSerializable());return this.copyWithPieceList(Ce)}toString(){return this.pieceList.toString()}toJSON(){return this.pieceList.toJSON()}toConsole(){return JSON.stringify(this.pieceList.toArray().map(Ce=>JSON.parse(Ce.toConsole())))}getDirection(){return at(this.toString())}isRTL(){return this.getDirection()==="rtl"}}class Oe extends nt{static fromJSON(Ce){return new this(Ne.fromJSON(Ce.text),Ce.attributes,Ce.htmlAttributes)}constructor(Ce,ke,$n){super(...arguments),this.text=Me(Ce||new Ne),this.attributes=ke||[],this.htmlAttributes=$n||{}}isEmpty(){return this.text.isBlockBreak()}isEqualTo(Ce){return!!super.isEqualTo(Ce)||this.text.isEqualTo(Ce==null?void 0:Ce.text)&&rt(this.attributes,Ce==null?void 0:Ce.attributes)&&St(this.htmlAttributes,Ce==null?void 0:Ce.htmlAttributes)}copyWithText(Ce){return new Oe(Ce,this.attributes,this.htmlAttributes)}copyWithoutText(){return this.copyWithText(null)}copyWithAttributes(Ce){return new Oe(this.text,Ce,this.htmlAttributes)}copyWithoutAttributes(){return this.copyWithAttributes(null)}copyUsingObjectMap(Ce){const ke=Ce.find(this.text);return ke?this.copyWithText(ke):this.copyWithText(this.text.copyUsingObjectMap(Ce))}addAttribute(Ce){const ke=this.attributes.concat(He(Ce));return this.copyWithAttributes(ke)}addHTMLAttribute(Ce,ke){const $n=Object.assign({},this.htmlAttributes,{[Ce]:ke});return new Oe(this.text,this.attributes,$n)}removeAttribute(Ce){const{listAttribute:ke}=gt(Ce),$n=_e(_e(this.attributes,Ce),ke);return this.copyWithAttributes($n)}removeLastAttribute(){return this.removeAttribute(this.getLastAttribute())}getLastAttribute(){return ze(this.attributes)}getAttributes(){return this.attributes.slice(0)}getAttributeLevel(){return this.attributes.length}getAttributeAtLevel(Ce){return this.attributes[Ce-1]}hasAttribute(Ce){return this.attributes.includes(Ce)}hasAttributes(){return this.getAttributeLevel()>0}getLastNestableAttribute(){return ze(this.getNestableAttributes())}getNestableAttributes(){return this.attributes.filter(Ce=>gt(Ce).nestable)}getNestingLevel(){return this.getNestableAttributes().length}decreaseNestingLevel(){const Ce=this.getLastNestableAttribute();return Ce?this.removeAttribute(Ce):this}increaseNestingLevel(){const Ce=this.getLastNestableAttribute();if(Ce){const ke=this.attributes.lastIndexOf(Ce),$n=ot(this.attributes,ke+1,0,...He(Ce));return this.copyWithAttributes($n)}return this}getListItemAttributes(){return this.attributes.filter(Ce=>gt(Ce).listAttribute)}isListItem(){var Ce;return(Ce=gt(this.getLastAttribute()))===null||Ce===void 0?void 0:Ce.listAttribute}isTerminalBlock(){var Ce;return(Ce=gt(this.getLastAttribute()))===null||Ce===void 0?void 0:Ce.terminal}breaksOnReturn(){var Ce;return(Ce=gt(this.getLastAttribute()))===null||Ce===void 0?void 0:Ce.breakOnReturn}findLineBreakInDirectionFromPosition(Ce,ke){const $n=this.toString();let Hn;switch(Ce){case"forward":Hn=$n.indexOf(` +`,ke);break;case"backward":Hn=$n.slice(0,ke).lastIndexOf(` +`)}if(Hn!==-1)return Hn}contentsForInspection(){return{text:this.text.inspect(),attributes:this.attributes}}toString(){return this.text.toString()}toJSON(){return{text:this.text,attributes:this.attributes,htmlAttributes:this.htmlAttributes}}getDirection(){return this.text.getDirection()}isRTL(){return this.text.isRTL()}getLength(){return this.text.getLength()}canBeConsolidatedWith(Ce){return!this.hasAttributes()&&!Ce.hasAttributes()&&this.getDirection()===Ce.getDirection()}consolidateWith(Ce){const ke=Ne.textForStringWithAttributes(` +`),$n=this.getTextWithoutBlockBreak().appendText(ke);return this.copyWithText($n.appendText(Ce.text))}splitAtOffset(Ce){let ke,$n;return Ce===0?(ke=null,$n=this):Ce===this.getLength()?(ke=this,$n=null):(ke=this.copyWithText(this.text.getTextAtRange([0,Ce])),$n=this.copyWithText(this.text.getTextAtRange([Ce,this.getLength()]))),[ke,$n]}getBlockBreakPosition(){return this.text.getLength()-1}getTextWithoutBlockBreak(){return qe(this.text)?this.text.getTextAtRange([0,this.getBlockBreakPosition()]):this.text.copy()}canBeGrouped(Ce){return this.attributes[Ce]}canBeGroupedWith(Ce,ke){const $n=Ce.getAttributes(),Hn=$n[ke],zn=this.attributes[ke];return zn===Hn&&!(gt(zn).group===!1&&!(()=>{if(!ht){ht=[];for(const Zn in n){const{listAttribute:qn}=n[Zn];qn!=null&&ht.push(qn)}}return ht})().includes($n[ke+1]))&&(this.getDirection()===Ce.getDirection()||Ce.isEmpty())}}const Me=function(_n){return _n=je(_n),_n=Ue(_n)},je=function(_n){let Ce=!1;const ke=_n.getPieces();let $n=ke.slice(0,ke.length-1);const Hn=ke[ke.length-1];return Hn?($n=$n.map(zn=>zn.isBlockBreak()?(Ce=!0,Ve(zn)):zn),Ce?new Ne([...$n,Hn]):_n):_n},We=Ne.textForStringWithAttributes(` +`,{blockBreak:!0}),Ue=function(_n){return qe(_n)?_n:_n.appendText(We)},qe=function(_n){const Ce=_n.getLength();return Ce===0?!1:_n.getTextAtRange([Ce-1,Ce]).isBlockBreak()},Ve=_n=>_n.copyWithoutAttribute("blockBreak"),He=function(_n){const{listAttribute:Ce}=gt(_n);return Ce?[Ce,_n]:[_n]},ze=_n=>_n.slice(-1)[0],_e=function(_n,Ce){const ke=_n.lastIndexOf(Ce);return ke===-1?_n:ot(_n,ke,1)};class Je extends nt{static fromJSON(Ce){return new this(Array.from(Ce).map(ke=>Oe.fromJSON(ke)))}static fromString(Ce,ke){const $n=Ne.textForStringWithAttributes(Ce,ke);return new this([new Oe($n)])}constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),Ce.length===0&&(Ce=[new Oe]),this.blockList=Be.box(Ce)}isEmpty(){const Ce=this.getBlockAtIndex(0);return this.blockList.length===1&&Ce.isEmpty()&&!Ce.hasAttributes()}copy(){const Ce=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}).consolidateBlocks?this.blockList.consolidate().toArray():this.blockList.toArray();return new this.constructor(Ce)}copyUsingObjectsFromDocument(Ce){const ke=new Yt(Ce.getObjects());return this.copyUsingObjectMap(ke)}copyUsingObjectMap(Ce){const ke=this.getBlocks().map($n=>Ce.find($n)||$n.copyUsingObjectMap(Ce));return new this.constructor(ke)}copyWithBaseBlockAttributes(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];const ke=this.getBlocks().map($n=>{const Hn=Ce.concat($n.getAttributes());return $n.copyWithAttributes(Hn)});return new this.constructor(ke)}replaceBlock(Ce,ke){const $n=this.blockList.indexOf(Ce);return $n===-1?this:new this.constructor(this.blockList.replaceObjectAtIndex(ke,$n))}insertDocumentAtRange(Ce,ke){const{blockList:$n}=Ce;ke=Lt(ke);let[Hn]=ke;const{index:zn,offset:Zn}=this.locationFromPosition(Hn);let qn=this;const Yn=this.getBlockAtPosition(Hn);return Dt(ke)&&Yn.isEmpty()&&!Yn.hasAttributes()?qn=new this.constructor(qn.blockList.removeObjectAtIndex(zn)):Yn.getBlockBreakPosition()===Zn&&Hn++,qn=qn.removeTextAtRange(ke),new this.constructor(qn.blockList.insertSplittableListAtPosition($n,Hn))}mergeDocumentAtRange(Ce,ke){let $n,Hn;ke=Lt(ke);const[zn]=ke,Zn=this.locationFromPosition(zn),qn=this.getBlockAtIndex(Zn.index).getAttributes(),Yn=Ce.getBaseBlockAttributes(),Jn=qn.slice(-Yn.length);if(rt(Yn,Jn)){const uo=qn.slice(0,-Yn.length);$n=Ce.copyWithBaseBlockAttributes(uo)}else $n=Ce.copy({consolidateBlocks:!0}).copyWithBaseBlockAttributes(qn);const to=$n.getBlockCount(),io=$n.getBlockAtIndex(0);if(rt(qn,io.getAttributes())){const uo=io.getTextWithoutBlockBreak();if(Hn=this.insertTextAtRange(uo,ke),to>1){$n=new this.constructor($n.getBlocks().slice(1));const mo=zn+uo.getLength();Hn=Hn.insertDocumentAtRange($n,mo)}}else Hn=this.insertDocumentAtRange($n,ke);return Hn}insertTextAtRange(Ce,ke){ke=Lt(ke);const[$n]=ke,{index:Hn,offset:zn}=this.locationFromPosition($n),Zn=this.removeTextAtRange(ke);return new this.constructor(Zn.blockList.editObjectAtIndex(Hn,qn=>qn.copyWithText(qn.text.insertTextAtPosition(Ce,zn))))}removeTextAtRange(Ce){let ke;Ce=Lt(Ce);const[$n,Hn]=Ce;if(Dt(Ce))return this;const[zn,Zn]=Array.from(this.locationRangeFromRange(Ce)),qn=zn.index,Yn=zn.offset,Jn=this.getBlockAtIndex(qn),to=Zn.index,io=Zn.offset,uo=this.getBlockAtIndex(to);if(Hn-$n==1&&Jn.getBlockBreakPosition()===Yn&&uo.getBlockBreakPosition()!==io&&uo.text.getStringAtPosition(io)===` +`)ke=this.blockList.editObjectAtIndex(to,mo=>mo.copyWithText(mo.text.removeTextAtRange([io,io+1])));else{let mo;const bo=Jn.text.getTextAtRange([0,Yn]),Oo=uo.text.getTextAtRange([io,uo.getLength()]),wo=bo.appendText(Oo);mo=qn!==to&&Yn===0&&Jn.getAttributeLevel()>=uo.getAttributeLevel()?uo.copyWithText(wo):Jn.copyWithText(wo);const $o=to+1-qn;ke=this.blockList.splice(qn,$o,mo)}return new this.constructor(ke)}moveTextFromRangeToPosition(Ce,ke){let $n;Ce=Lt(Ce);const[Hn,zn]=Ce;if(Hn<=ke&&ke<=zn)return this;let Zn=this.getDocumentAtRange(Ce),qn=this.removeTextAtRange(Ce);const Yn=HnHn=Hn.editObjectAtIndex(qn,function(){return gt(Ce)?zn.addAttribute(Ce,ke):Zn[0]===Zn[1]?zn:zn.copyWithText(zn.text.addAttributeAtRange(Ce,ke,Zn))})),new this.constructor(Hn)}addAttribute(Ce,ke){let{blockList:$n}=this;return this.eachBlock((Hn,zn)=>$n=$n.editObjectAtIndex(zn,()=>Hn.addAttribute(Ce,ke))),new this.constructor($n)}removeAttributeAtRange(Ce,ke){let{blockList:$n}=this;return this.eachBlockAtRange(ke,function(Hn,zn,Zn){gt(Ce)?$n=$n.editObjectAtIndex(Zn,()=>Hn.removeAttribute(Ce)):zn[0]!==zn[1]&&($n=$n.editObjectAtIndex(Zn,()=>Hn.copyWithText(Hn.text.removeAttributeAtRange(Ce,zn))))}),new this.constructor($n)}updateAttributesForAttachment(Ce,ke){const $n=this.getRangeOfAttachment(ke),[Hn]=Array.from($n),{index:zn}=this.locationFromPosition(Hn),Zn=this.getTextAtIndex(zn);return new this.constructor(this.blockList.editObjectAtIndex(zn,qn=>qn.copyWithText(Zn.updateAttributesForAttachment(Ce,ke))))}removeAttributeForAttachment(Ce,ke){const $n=this.getRangeOfAttachment(ke);return this.removeAttributeAtRange(Ce,$n)}setHTMLAttributeAtPosition(Ce,ke,$n){const Hn=this.getBlockAtPosition(Ce),zn=Hn.addHTMLAttribute(ke,$n);return this.replaceBlock(Hn,zn)}insertBlockBreakAtRange(Ce){let ke;Ce=Lt(Ce);const[$n]=Ce,{offset:Hn}=this.locationFromPosition($n),zn=this.removeTextAtRange(Ce);return Hn===0&&(ke=[new Oe]),new this.constructor(zn.blockList.insertSplittableListAtPosition(new Be(ke),$n))}applyBlockAttributeAtRange(Ce,ke,$n){const Hn=this.expandRangeToLineBreaksAndSplitBlocks($n);let zn=Hn.document;$n=Hn.range;const Zn=gt(Ce);if(Zn.listAttribute){zn=zn.removeLastListAttributeAtRange($n,{exceptAttributeName:Ce});const qn=zn.convertLineBreaksToBlockBreaksInRange($n);zn=qn.document,$n=qn.range}else zn=Zn.exclusive?zn.removeBlockAttributesAtRange($n):Zn.terminal?zn.removeLastTerminalAttributeAtRange($n):zn.consolidateBlocksAtRange($n);return zn.addAttributeAtRange(Ce,ke,$n)}removeLastListAttributeAtRange(Ce){let ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{blockList:$n}=this;return this.eachBlockAtRange(Ce,function(Hn,zn,Zn){const qn=Hn.getLastAttribute();qn&>(qn).listAttribute&&qn!==ke.exceptAttributeName&&($n=$n.editObjectAtIndex(Zn,()=>Hn.removeAttribute(qn)))}),new this.constructor($n)}removeLastTerminalAttributeAtRange(Ce){let{blockList:ke}=this;return this.eachBlockAtRange(Ce,function($n,Hn,zn){const Zn=$n.getLastAttribute();Zn&>(Zn).terminal&&(ke=ke.editObjectAtIndex(zn,()=>$n.removeAttribute(Zn)))}),new this.constructor(ke)}removeBlockAttributesAtRange(Ce){let{blockList:ke}=this;return this.eachBlockAtRange(Ce,function($n,Hn,zn){$n.hasAttributes()&&(ke=ke.editObjectAtIndex(zn,()=>$n.copyWithoutAttributes()))}),new this.constructor(ke)}expandRangeToLineBreaksAndSplitBlocks(Ce){let ke;Ce=Lt(Ce);let[$n,Hn]=Ce;const zn=this.locationFromPosition($n),Zn=this.locationFromPosition(Hn);let qn=this;const Yn=qn.getBlockAtIndex(zn.index);if(zn.offset=Yn.findLineBreakInDirectionFromPosition("backward",zn.offset),zn.offset!=null&&(ke=qn.positionFromLocation(zn),qn=qn.insertBlockBreakAtRange([ke,ke+1]),Zn.index+=1,Zn.offset-=qn.getBlockAtIndex(zn.index).getLength(),zn.index+=1),zn.offset=0,Zn.offset===0&&Zn.index>zn.index)Zn.index-=1,Zn.offset=qn.getBlockAtIndex(Zn.index).getBlockBreakPosition();else{const Jn=qn.getBlockAtIndex(Zn.index);Jn.text.getStringAtRange([Zn.offset-1,Zn.offset])===` +`?Zn.offset-=1:Zn.offset=Jn.findLineBreakInDirectionFromPosition("forward",Zn.offset),Zn.offset!==Jn.getBlockBreakPosition()&&(ke=qn.positionFromLocation(Zn),qn=qn.insertBlockBreakAtRange([ke,ke+1]))}return $n=qn.positionFromLocation(zn),Hn=qn.positionFromLocation(Zn),{document:qn,range:Ce=Lt([$n,Hn])}}convertLineBreaksToBlockBreaksInRange(Ce){Ce=Lt(Ce);let[ke]=Ce;const $n=this.getStringAtRange(Ce).slice(0,-1);let Hn=this;return $n.replace(/.*?\n/g,function(zn){ke+=zn.length,Hn=Hn.insertBlockBreakAtRange([ke-1,ke])}),{document:Hn,range:Ce}}consolidateBlocksAtRange(Ce){Ce=Lt(Ce);const[ke,$n]=Ce,Hn=this.locationFromPosition(ke).index,zn=this.locationFromPosition($n).index;return new this.constructor(this.blockList.consolidateFromIndexToIndex(Hn,zn))}getDocumentAtRange(Ce){Ce=Lt(Ce);const ke=this.blockList.getSplittableListInRange(Ce).toArray();return new this.constructor(ke)}getStringAtRange(Ce){let ke;const $n=Ce=Lt(Ce);return $n[$n.length-1]!==this.getLength()&&(ke=-1),this.getDocumentAtRange(Ce).toString().slice(0,ke)}getBlockAtIndex(Ce){return this.blockList.getObjectAtIndex(Ce)}getBlockAtPosition(Ce){const{index:ke}=this.locationFromPosition(Ce);return this.getBlockAtIndex(ke)}getTextAtIndex(Ce){var ke;return(ke=this.getBlockAtIndex(Ce))===null||ke===void 0?void 0:ke.text}getTextAtPosition(Ce){const{index:ke}=this.locationFromPosition(Ce);return this.getTextAtIndex(ke)}getPieceAtPosition(Ce){const{index:ke,offset:$n}=this.locationFromPosition(Ce);return this.getTextAtIndex(ke).getPieceAtPosition($n)}getCharacterAtPosition(Ce){const{index:ke,offset:$n}=this.locationFromPosition(Ce);return this.getTextAtIndex(ke).getStringAtRange([$n,$n+1])}getLength(){return this.blockList.getEndPosition()}getBlocks(){return this.blockList.toArray()}getBlockCount(){return this.blockList.length}getEditCount(){return this.editCount}eachBlock(Ce){return this.blockList.eachObject(Ce)}eachBlockAtRange(Ce,ke){let $n,Hn;Ce=Lt(Ce);const[zn,Zn]=Ce,qn=this.locationFromPosition(zn),Yn=this.locationFromPosition(Zn);if(qn.index===Yn.index)return $n=this.getBlockAtIndex(qn.index),Hn=[qn.offset,Yn.offset],ke($n,Hn,qn.index);for(let Jn=qn.index;Jn<=Yn.index;Jn++)if($n=this.getBlockAtIndex(Jn),$n){switch(Jn){case qn.index:Hn=[qn.offset,$n.text.getLength()];break;case Yn.index:Hn=[0,Yn.offset];break;default:Hn=[0,$n.text.getLength()]}ke($n,Hn,Jn)}}getCommonAttributesAtRange(Ce){Ce=Lt(Ce);const[ke]=Ce;if(Dt(Ce))return this.getCommonAttributesAtPosition(ke);{const $n=[],Hn=[];return this.eachBlockAtRange(Ce,function(zn,Zn){if(Zn[0]!==Zn[1])return $n.push(zn.text.getCommonAttributesAtRange(Zn)),Hn.push(Ke(zn))}),zt.fromCommonAttributesOfObjects($n).merge(zt.fromCommonAttributesOfObjects(Hn)).toObject()}}getCommonAttributesAtPosition(Ce){let ke,$n;const{index:Hn,offset:zn}=this.locationFromPosition(Ce),Zn=this.getBlockAtIndex(Hn);if(!Zn)return{};const qn=Ke(Zn),Yn=Zn.text.getAttributesAtPosition(zn),Jn=Zn.text.getAttributesAtPosition(zn-1),to=Object.keys(W).filter(io=>W[io].inheritable);for(ke in Jn)$n=Jn[ke],($n===Yn[ke]||to.includes(ke))&&(qn[ke]=$n);return qn}getRangeOfCommonAttributeAtPosition(Ce,ke){const{index:$n,offset:Hn}=this.locationFromPosition(ke),zn=this.getTextAtIndex($n),[Zn,qn]=Array.from(zn.getExpandedRangeForAttributeAtOffset(Ce,Hn)),Yn=this.positionFromLocation({index:$n,offset:Zn}),Jn=this.positionFromLocation({index:$n,offset:qn});return Lt([Yn,Jn])}getBaseBlockAttributes(){let Ce=this.getBlockAtIndex(0).getAttributes();for(let ke=1;ke{const zn=[];for(let Zn=0;Zn{let{text:$n}=ke;return Ce=Ce.concat($n.getAttachmentPieces())}),Ce}getAttachments(){return this.getAttachmentPieces().map(Ce=>Ce.attachment)}getRangeOfAttachment(Ce){let ke=0;const $n=this.blockList.toArray();for(let Hn=0;Hn<$n.length;Hn++){const{text:zn}=$n[Hn],Zn=zn.getRangeOfAttachment(Ce);if(Zn)return Lt([ke+Zn[0],ke+Zn[1]]);ke+=zn.getLength()}}getLocationRangeOfAttachment(Ce){const ke=this.getRangeOfAttachment(Ce);return this.locationRangeFromRange(ke)}getAttachmentPieceForAttachment(Ce){for(const ke of this.getAttachmentPieces())if(ke.attachment===Ce)return ke}findRangesForBlockAttribute(Ce){let ke=0;const $n=[];return this.getBlocks().forEach(Hn=>{const zn=Hn.getLength();Hn.hasAttribute(Ce)&&$n.push([ke,ke+zn]),ke+=zn}),$n}findRangesForTextAttribute(Ce){let{withValue:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},$n=0,Hn=[];const zn=[];return this.getPieces().forEach(Zn=>{const qn=Zn.getLength();(function(Yn){return ke?Yn.getAttribute(Ce)===ke:Yn.hasAttribute(Ce)})(Zn)&&(Hn[1]===$n?Hn[1]=$n+qn:zn.push(Hn=[$n,$n+qn])),$n+=qn}),zn}locationFromPosition(Ce){const ke=this.blockList.findIndexAndOffsetAtPosition(Math.max(0,Ce));if(ke.index!=null)return ke;{const $n=this.getBlocks();return{index:$n.length-1,offset:$n[$n.length-1].getLength()}}}positionFromLocation(Ce){return this.blockList.findPositionAtIndexAndOffset(Ce.index,Ce.offset)}locationRangeFromPosition(Ce){return Lt(this.locationFromPosition(Ce))}locationRangeFromRange(Ce){if(!(Ce=Lt(Ce)))return;const[ke,$n]=Array.from(Ce),Hn=this.locationFromPosition(ke),zn=this.locationFromPosition($n);return Lt([Hn,zn])}rangeFromLocationRange(Ce){let ke;Ce=Lt(Ce);const $n=this.positionFromLocation(Ce[0]);return Dt(Ce)||(ke=this.positionFromLocation(Ce[1])),Lt([$n,ke])}isEqualTo(Ce){return this.blockList.isEqualTo(Ce==null?void 0:Ce.blockList)}getTexts(){return this.getBlocks().map(Ce=>Ce.text)}getPieces(){const Ce=[];return Array.from(this.getTexts()).forEach(ke=>{Ce.push(...Array.from(ke.getPieces()||[]))}),Ce}getObjects(){return this.getBlocks().concat(this.getTexts()).concat(this.getPieces())}toSerializableDocument(){const Ce=[];return this.blockList.eachObject(ke=>Ce.push(ke.copyWithText(ke.text.toSerializableText()))),new this.constructor(Ce)}toString(){return this.blockList.toString()}toJSON(){return this.blockList.toJSON()}toConsole(){return JSON.stringify(this.blockList.toArray().map(Ce=>JSON.parse(Ce.text.toConsole())))}}const Ke=function(_n){const Ce={},ke=_n.getLastAttribute();return ke&&(Ce[ke]=!0),Ce},Ge=function(_n){let Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return{string:_n=Wt(_n),attributes:Ce,type:"string"}},$e=(_n,Ce)=>{try{return JSON.parse(_n.getAttribute("data-trix-".concat(Ce)))}catch{return{}}};class Xe extends H{static parse(Ce,ke){const $n=new this(Ce,ke);return $n.parse(),$n}constructor(Ce){let{referenceElement:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(...arguments),this.html=Ce,this.referenceElement=ke,this.blocks=[],this.blockElements=[],this.processedElements=[]}getDocument(){return Je.fromJSON(this.blocks)}parse(){try{this.createHiddenContainer(),se.setHTML(this.containerElement,this.html);const Ce=R(this.containerElement,{usingFilter:ti});for(;Ce.nextNode();)this.processNode(Ce.currentNode);return this.translateBlockElementMarginsToNewlines()}finally{this.removeHiddenContainer()}}createHiddenContainer(){return this.referenceElement?(this.containerElement=this.referenceElement.cloneNode(!1),this.containerElement.removeAttribute("id"),this.containerElement.setAttribute("data-trix-internal",""),this.containerElement.style.display="none",this.referenceElement.parentNode.insertBefore(this.containerElement,this.referenceElement.nextSibling)):(this.containerElement=S$1({tagName:"div",style:{display:"none"}}),document.body.appendChild(this.containerElement))}removeHiddenContainer(){return k(this.containerElement)}processNode(Ce){switch(Ce.nodeType){case Node.TEXT_NODE:if(!this.isInsignificantTextNode(Ce))return this.appendBlockForTextNode(Ce),this.processTextNode(Ce);break;case Node.ELEMENT_NODE:return this.appendBlockForElement(Ce),this.processElement(Ce)}}appendBlockForTextNode(Ce){const ke=Ce.parentNode;if(ke===this.currentBlockElement&&this.isBlockElement(Ce.previousSibling))return this.appendStringWithAttributes(` +`);if(ke===this.containerElement||this.isBlockElement(ke)){var $n;const Hn=this.getBlockAttributes(ke),zn=this.getBlockHTMLAttributes(ke);rt(Hn,($n=this.currentBlock)===null||$n===void 0?void 0:$n.attributes)||(this.currentBlock=this.appendBlockForAttributesWithElement(Hn,ke,zn),this.currentBlockElement=ke)}}appendBlockForElement(Ce){const ke=this.isBlockElement(Ce),$n=y(this.currentBlockElement,Ce);if(ke&&!this.isBlockElement(Ce.firstChild)){if(!this.isInsignificantTextNode(Ce.firstChild)||!this.isBlockElement(Ce.firstElementChild)){const Hn=this.getBlockAttributes(Ce),zn=this.getBlockHTMLAttributes(Ce);if(Ce.firstChild){if($n&&rt(Hn,this.currentBlock.attributes))return this.appendStringWithAttributes(` +`);this.currentBlock=this.appendBlockForAttributesWithElement(Hn,Ce,zn),this.currentBlockElement=Ce}}}else if(this.currentBlockElement&&!$n&&!ke){const Hn=this.findParentBlockElement(Ce);if(Hn)return this.appendBlockForElement(Hn);this.currentBlock=this.appendEmptyBlock(),this.currentBlockElement=null}}findParentBlockElement(Ce){let{parentElement:ke}=Ce;for(;ke&&ke!==this.containerElement;){if(this.isBlockElement(ke)&&this.blockElements.includes(ke))return ke;ke=ke.parentElement}return null}processTextNode(Ce){let ke=Ce.data;var $n;return Ye(Ce.parentNode)||(ke=qt(ke),ni(($n=Ce.previousSibling)===null||$n===void 0?void 0:$n.textContent)&&(ke=ei(ke))),this.appendStringWithAttributes(ke,this.getTextAttributes(Ce.parentNode))}processElement(Ce){let ke;if(I(Ce)){if(ke=$e(Ce,"attachment"),Object.keys(ke).length){const $n=this.getTextAttributes(Ce);this.appendAttachmentWithAttributes(ke,$n),Ce.innerHTML=""}return this.processedElements.push(Ce)}switch(E(Ce)){case"br":return this.isExtraBR(Ce)||this.isBlockElement(Ce.nextSibling)||this.appendStringWithAttributes(` +`,this.getTextAttributes(Ce)),this.processedElements.push(Ce);case"img":ke={url:Ce.getAttribute("src"),contentType:"image"};const $n=(Hn=>{const zn=Hn.getAttribute("width"),Zn=Hn.getAttribute("height"),qn={};return zn&&(qn.width=parseInt(zn,10)),Zn&&(qn.height=parseInt(Zn,10)),qn})(Ce);for(const Hn in $n){const zn=$n[Hn];ke[Hn]=zn}return this.appendAttachmentWithAttributes(ke,this.getTextAttributes(Ce)),this.processedElements.push(Ce);case"tr":if(this.needsTableSeparator(Ce))return this.appendStringWithAttributes(j.tableRowSeparator);break;case"td":if(this.needsTableSeparator(Ce))return this.appendStringWithAttributes(j.tableCellSeparator)}}appendBlockForAttributesWithElement(Ce,ke){let $n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.blockElements.push(ke);const Hn=function(){return{text:[],attributes:arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},htmlAttributes:arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}}}(Ce,$n);return this.blocks.push(Hn),Hn}appendEmptyBlock(){return this.appendBlockForAttributesWithElement([],null)}appendStringWithAttributes(Ce,ke){return this.appendPiece(Ge(Ce,ke))}appendAttachmentWithAttributes(Ce,ke){return this.appendPiece(function($n){return{attachment:$n,attributes:arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},type:"attachment"}}(Ce,ke))}appendPiece(Ce){return this.blocks.length===0&&this.appendEmptyBlock(),this.blocks[this.blocks.length-1].text.push(Ce)}appendStringToTextAtIndex(Ce,ke){const{text:$n}=this.blocks[ke],Hn=$n[$n.length-1];if((Hn==null?void 0:Hn.type)!=="string")return $n.push(Ge(Ce));Hn.string+=Ce}prependStringToTextAtIndex(Ce,ke){const{text:$n}=this.blocks[ke],Hn=$n[0];if((Hn==null?void 0:Hn.type)!=="string")return $n.unshift(Ge(Ce));Hn.string=Ce+Hn.string}getTextAttributes(Ce){let ke;const $n={};for(const Hn in W){const zn=W[Hn];if(zn.tagName&&A(Ce,{matchingSelector:zn.tagName,untilNode:this.containerElement}))$n[Hn]=!0;else if(zn.parser){if(ke=zn.parser(Ce),ke){let Zn=!1;for(const qn of this.findBlockElementAncestors(Ce))if(zn.parser(qn)===ke){Zn=!0;break}Zn||($n[Hn]=ke)}}else zn.styleProperty&&(ke=Ce.style[zn.styleProperty],ke&&($n[Hn]=ke))}if(I(Ce)){const Hn=$e(Ce,"attributes");for(const zn in Hn)ke=Hn[zn],$n[zn]=ke}return $n}getBlockAttributes(Ce){const ke=[];for(;Ce&&Ce!==this.containerElement;){for(const Hn in n){const zn=n[Hn];var $n;zn.parse!==!1&&E(Ce)===zn.tagName&&(($n=zn.test)!==null&&$n!==void 0&&$n.call(zn,Ce)||!zn.test)&&(ke.push(Hn),zn.listAttribute&&ke.push(zn.listAttribute))}Ce=Ce.parentNode}return ke.reverse()}getBlockHTMLAttributes(Ce){const ke={},$n=Object.values(n).find(Hn=>Hn.tagName===E(Ce));return(($n==null?void 0:$n.htmlAttributes)||[]).forEach(Hn=>{Ce.hasAttribute(Hn)&&(ke[Hn]=Ce.getAttribute(Hn))}),ke}findBlockElementAncestors(Ce){const ke=[];for(;Ce&&Ce!==this.containerElement;){const $n=E(Ce);D().includes($n)&&ke.push(Ce),Ce=Ce.parentNode}return ke}isBlockElement(Ce){if((Ce==null?void 0:Ce.nodeType)===Node.ELEMENT_NODE&&!I(Ce)&&!A(Ce,{matchingSelector:"td",untilNode:this.containerElement}))return D().includes(E(Ce))||window.getComputedStyle(Ce).display==="block"}isInsignificantTextNode(Ce){if((Ce==null?void 0:Ce.nodeType)!==Node.TEXT_NODE||!ii(Ce.data))return;const{parentNode:ke,previousSibling:$n,nextSibling:Hn}=Ce;return Qe(ke.previousSibling)&&!this.isBlockElement(ke.previousSibling)||Ye(ke)?void 0:!$n||this.isBlockElement($n)||!Hn||this.isBlockElement(Hn)}isExtraBR(Ce){return E(Ce)==="br"&&this.isBlockElement(Ce.parentNode)&&Ce.parentNode.lastChild===Ce}needsTableSeparator(Ce){if(j.removeBlankTableCells){var ke;const $n=(ke=Ce.previousSibling)===null||ke===void 0?void 0:ke.textContent;return $n&&/\S/.test($n)}return Ce.previousSibling}translateBlockElementMarginsToNewlines(){const Ce=this.getMarginOfDefaultBlockElement();for(let ke=0;ke2*Ce.top&&this.prependStringToTextAtIndex(` +`,ke),$n.bottom>2*Ce.bottom&&this.appendStringToTextAtIndex(` +`,ke))}}getMarginOfBlockElementAtIndex(Ce){const ke=this.blockElements[Ce];if(ke&&ke.textContent&&!D().includes(E(ke))&&!this.processedElements.includes(ke))return Ze(ke)}getMarginOfDefaultBlockElement(){const Ce=S$1(n.default.tagName);return this.containerElement.appendChild(Ce),Ze(Ce)}}const Ye=function(_n){const{whiteSpace:Ce}=window.getComputedStyle(_n);return["pre","pre-wrap","pre-line"].includes(Ce)},Qe=_n=>_n&&!ni(_n.textContent),Ze=function(_n){const Ce=window.getComputedStyle(_n);if(Ce.display==="block")return{top:parseInt(Ce.marginTop),bottom:parseInt(Ce.marginBottom)}},ti=function(_n){return E(_n)==="style"?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},ei=_n=>_n.replace(new RegExp("^".concat(Ut.source,"+")),""),ii=_n=>new RegExp("^".concat(Ut.source,"*$")).test(_n),ni=_n=>/\s$/.test(_n),ri=["contenteditable","data-trix-id","data-trix-store-key","data-trix-mutable","data-trix-placeholder","tabindex"],oi="data-trix-serialized-attributes",si="[".concat(oi,"]"),ai=new RegExp("","g"),li={"application/json":function(_n){let Ce;if(_n instanceof Je)Ce=_n;else{if(!(_n instanceof HTMLElement))throw new Error("unserializable object");Ce=Xe.parse(_n.innerHTML).getDocument()}return Ce.toSerializableDocument().toJSONString()},"text/html":function(_n){let Ce;if(_n instanceof Je)Ce=ve.render(_n);else{if(!(_n instanceof HTMLElement))throw new Error("unserializable object");Ce=_n.cloneNode(!0)}return Array.from(Ce.querySelectorAll("[data-trix-serialize=false]")).forEach(ke=>{k(ke)}),ri.forEach(ke=>{Array.from(Ce.querySelectorAll("[".concat(ke,"]"))).forEach($n=>{$n.removeAttribute(ke)})}),Array.from(Ce.querySelectorAll(si)).forEach(ke=>{try{const $n=JSON.parse(ke.getAttribute(oi));ke.removeAttribute(oi);for(const Hn in $n){const zn=$n[Hn];ke.setAttribute(Hn,zn)}}catch{}}),Ce.innerHTML.replace(ai,"")}};var ci=Object.freeze({__proto__:null});class ui extends H{constructor(Ce,ke){super(...arguments),this.attachmentManager=Ce,this.attachment=ke,this.id=this.attachment.id,this.file=this.attachment.file}remove(){return this.attachmentManager.requestRemovalOfAttachment(this.attachment)}}ui.proxyMethod("attachment.getAttribute"),ui.proxyMethod("attachment.hasAttribute"),ui.proxyMethod("attachment.setAttribute"),ui.proxyMethod("attachment.getAttributes"),ui.proxyMethod("attachment.setAttributes"),ui.proxyMethod("attachment.isPending"),ui.proxyMethod("attachment.isPreviewable"),ui.proxyMethod("attachment.getURL"),ui.proxyMethod("attachment.getHref"),ui.proxyMethod("attachment.getFilename"),ui.proxyMethod("attachment.getFilesize"),ui.proxyMethod("attachment.getFormattedFilesize"),ui.proxyMethod("attachment.getExtension"),ui.proxyMethod("attachment.getContentType"),ui.proxyMethod("attachment.getFile"),ui.proxyMethod("attachment.setFile"),ui.proxyMethod("attachment.releaseFile"),ui.proxyMethod("attachment.getUploadProgress"),ui.proxyMethod("attachment.setUploadProgress");class hi extends H{constructor(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),this.managedAttachments={},Array.from(Ce).forEach(ke=>{this.manageAttachment(ke)})}getAttachments(){const Ce=[];for(const ke in this.managedAttachments){const $n=this.managedAttachments[ke];Ce.push($n)}return Ce}manageAttachment(Ce){return this.managedAttachments[Ce.id]||(this.managedAttachments[Ce.id]=new ui(this,Ce)),this.managedAttachments[Ce.id]}attachmentIsManaged(Ce){return Ce.id in this.managedAttachments}requestRemovalOfAttachment(Ce){var ke,$n;if(this.attachmentIsManaged(Ce))return(ke=this.delegate)===null||ke===void 0||($n=ke.attachmentManagerDidRequestRemovalOfAttachment)===null||$n===void 0?void 0:$n.call(ke,Ce)}unmanageAttachment(Ce){const ke=this.managedAttachments[Ce.id];return delete this.managedAttachments[Ce.id],ke}}class di{constructor(Ce){this.composition=Ce,this.document=this.composition.document;const ke=this.composition.getSelectedRange();this.startPosition=ke[0],this.endPosition=ke[1],this.startLocation=this.document.locationFromPosition(this.startPosition),this.endLocation=this.document.locationFromPosition(this.endPosition),this.block=this.document.getBlockAtIndex(this.endLocation.index),this.breaksOnReturn=this.block.breaksOnReturn(),this.previousCharacter=this.block.text.getStringAtPosition(this.endLocation.offset-1),this.nextCharacter=this.block.text.getStringAtPosition(this.endLocation.offset)}shouldInsertBlockBreak(){return this.block.hasAttributes()&&this.block.isListItem()&&!this.block.isEmpty()?this.startLocation.offset!==0:this.breaksOnReturn&&this.nextCharacter!==` +`}shouldBreakFormattedBlock(){return this.block.hasAttributes()&&!this.block.isListItem()&&(this.breaksOnReturn&&this.nextCharacter===` +`||this.previousCharacter===` +`)}shouldDecreaseListLevel(){return this.block.hasAttributes()&&this.block.isListItem()&&this.block.isEmpty()}shouldPrependListItem(){return this.block.isListItem()&&this.startLocation.offset===0&&!this.block.isEmpty()}shouldRemoveLastBlockAttribute(){return this.block.hasAttributes()&&!this.block.isListItem()&&this.block.isEmpty()}}class gi extends H{constructor(){super(...arguments),this.document=new Je,this.attachments=[],this.currentAttributes={},this.revision=0}setDocument(Ce){var ke,$n;if(!Ce.isEqualTo(this.document))return this.document=Ce,this.refreshAttachments(),this.revision++,(ke=this.delegate)===null||ke===void 0||($n=ke.compositionDidChangeDocument)===null||$n===void 0?void 0:$n.call(ke,Ce)}getSnapshot(){return{document:this.document,selectedRange:this.getSelectedRange()}}loadSnapshot(Ce){var ke,$n,Hn,zn;let{document:Zn,selectedRange:qn}=Ce;return(ke=this.delegate)===null||ke===void 0||($n=ke.compositionWillLoadSnapshot)===null||$n===void 0||$n.call(ke),this.setDocument(Zn??new Je),this.setSelection(qn??[0,0]),(Hn=this.delegate)===null||Hn===void 0||(zn=Hn.compositionDidLoadSnapshot)===null||zn===void 0?void 0:zn.call(Hn)}insertText(Ce){let{updatePosition:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{updatePosition:!0};const $n=this.getSelectedRange();this.setDocument(this.document.insertTextAtRange(Ce,$n));const Hn=$n[0],zn=Hn+Ce.getLength();return ke&&this.setSelection(zn),this.notifyDelegateOfInsertionAtRange([Hn,zn])}insertBlock(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Oe;const ke=new Je([Ce]);return this.insertDocument(ke)}insertDocument(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Je;const ke=this.getSelectedRange();this.setDocument(this.document.insertDocumentAtRange(Ce,ke));const $n=ke[0],Hn=$n+Ce.getLength();return this.setSelection(Hn),this.notifyDelegateOfInsertionAtRange([$n,Hn])}insertString(Ce,ke){const $n=this.getCurrentTextAttributes(),Hn=Ne.textForStringWithAttributes(Ce,$n);return this.insertText(Hn,ke)}insertBlockBreak(){const Ce=this.getSelectedRange();this.setDocument(this.document.insertBlockBreakAtRange(Ce));const ke=Ce[0],$n=ke+1;return this.setSelection($n),this.notifyDelegateOfInsertionAtRange([ke,$n])}insertLineBreak(){const Ce=new di(this);if(Ce.shouldDecreaseListLevel())return this.decreaseListLevel(),this.setSelection(Ce.startPosition);if(Ce.shouldPrependListItem()){const ke=new Je([Ce.block.copyWithoutText()]);return this.insertDocument(ke)}return Ce.shouldInsertBlockBreak()?this.insertBlockBreak():Ce.shouldRemoveLastBlockAttribute()?this.removeLastBlockAttribute():Ce.shouldBreakFormattedBlock()?this.breakFormattedBlock(Ce):this.insertString(` +`)}insertHTML(Ce){const ke=Xe.parse(Ce).getDocument(),$n=this.getSelectedRange();this.setDocument(this.document.mergeDocumentAtRange(ke,$n));const Hn=$n[0],zn=Hn+ke.getLength()-1;return this.setSelection(zn),this.notifyDelegateOfInsertionAtRange([Hn,zn])}replaceHTML(Ce){const ke=Xe.parse(Ce).getDocument().copyUsingObjectsFromDocument(this.document),$n=this.getLocationRange({strict:!1}),Hn=this.document.rangeFromLocationRange($n);return this.setDocument(ke),this.setSelection(Hn)}insertFile(Ce){return this.insertFiles([Ce])}insertFiles(Ce){const ke=[];return Array.from(Ce).forEach($n=>{var Hn;if((Hn=this.delegate)!==null&&Hn!==void 0&&Hn.compositionShouldAcceptFile($n)){const zn=De.attachmentForFile($n);ke.push(zn)}}),this.insertAttachments(ke)}insertAttachment(Ce){return this.insertAttachments([Ce])}insertAttachments(Ce){let ke=new Ne;return Array.from(Ce).forEach($n=>{var Hn;const zn=$n.getType(),Zn=(Hn=i$1[zn])===null||Hn===void 0?void 0:Hn.presentation,qn=this.getCurrentTextAttributes();Zn&&(qn.presentation=Zn);const Yn=Ne.textForAttachmentWithAttributes($n,qn);ke=ke.appendText(Yn)}),this.insertText(ke)}shouldManageDeletingInDirection(Ce){const ke=this.getLocationRange();if(Dt(ke)){if(Ce==="backward"&&ke[0].offset===0||this.shouldManageMovingCursorInDirection(Ce))return!0}else if(ke[0].index!==ke[1].index)return!0;return!1}deleteInDirection(Ce){let ke,$n,Hn,{length:zn}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const Zn=this.getLocationRange();let qn=this.getSelectedRange();const Yn=Dt(qn);if(Yn?$n=Ce==="backward"&&Zn[0].offset===0:Hn=Zn[0].index!==Zn[1].index,$n&&this.canDecreaseBlockAttributeLevel()){const Jn=this.getBlock();if(Jn.isListItem()?this.decreaseListLevel():this.decreaseBlockAttributeLevel(),this.setSelection(qn[0]),Jn.isEmpty())return!1}return Yn&&(qn=this.getExpandedRangeInDirection(Ce,{length:zn}),Ce==="backward"&&(ke=this.getAttachmentAtRange(qn))),ke?(this.editAttachment(ke),!1):(this.setDocument(this.document.removeTextAtRange(qn)),this.setSelection(qn[0]),!$n&&!Hn&&void 0)}moveTextFromRange(Ce){const[ke]=Array.from(this.getSelectedRange());return this.setDocument(this.document.moveTextFromRangeToPosition(Ce,ke)),this.setSelection(ke)}removeAttachment(Ce){const ke=this.document.getRangeOfAttachment(Ce);if(ke)return this.stopEditingAttachment(),this.setDocument(this.document.removeTextAtRange(ke)),this.setSelection(ke[0])}removeLastBlockAttribute(){const[Ce,ke]=Array.from(this.getSelectedRange()),$n=this.document.getBlockAtPosition(ke);return this.removeCurrentAttribute($n.getLastAttribute()),this.setSelection(Ce)}insertPlaceholder(){return this.placeholderPosition=this.getPosition(),this.insertString(" ")}selectPlaceholder(){if(this.placeholderPosition!=null)return this.setSelectedRange([this.placeholderPosition,this.placeholderPosition+1]),this.getSelectedRange()}forgetPlaceholder(){this.placeholderPosition=null}hasCurrentAttribute(Ce){const ke=this.currentAttributes[Ce];return ke!=null&&ke!==!1}toggleCurrentAttribute(Ce){const ke=!this.currentAttributes[Ce];return ke?this.setCurrentAttribute(Ce,ke):this.removeCurrentAttribute(Ce)}canSetCurrentAttribute(Ce){return gt(Ce)?this.canSetCurrentBlockAttribute(Ce):this.canSetCurrentTextAttribute(Ce)}canSetCurrentTextAttribute(Ce){const ke=this.getSelectedDocument();if(ke){for(const $n of Array.from(ke.getAttachments()))if(!$n.hasContent())return!1;return!0}}canSetCurrentBlockAttribute(Ce){const ke=this.getBlock();if(ke)return!ke.isTerminalBlock()}setCurrentAttribute(Ce,ke){return gt(Ce)?this.setBlockAttribute(Ce,ke):(this.setTextAttribute(Ce,ke),this.currentAttributes[Ce]=ke,this.notifyDelegateOfCurrentAttributesChange())}setHTMLAtributeAtPosition(Ce,ke,$n){var Hn;const zn=this.document.getBlockAtPosition(Ce),Zn=(Hn=gt(zn.getLastAttribute()))===null||Hn===void 0?void 0:Hn.htmlAttributes;if(zn&&Zn!=null&&Zn.includes(ke)){const qn=this.document.setHTMLAttributeAtPosition(Ce,ke,$n);this.setDocument(qn)}}setTextAttribute(Ce,ke){const $n=this.getSelectedRange();if(!$n)return;const[Hn,zn]=Array.from($n);if(Hn!==zn)return this.setDocument(this.document.addAttributeAtRange(Ce,ke,$n));if(Ce==="href"){const Zn=Ne.textForStringWithAttributes(ke,{href:ke});return this.insertText(Zn)}}setBlockAttribute(Ce,ke){const $n=this.getSelectedRange();if(this.canSetCurrentAttribute(Ce))return this.setDocument(this.document.applyBlockAttributeAtRange(Ce,ke,$n)),this.setSelection($n)}removeCurrentAttribute(Ce){return gt(Ce)?(this.removeBlockAttribute(Ce),this.updateCurrentAttributes()):(this.removeTextAttribute(Ce),delete this.currentAttributes[Ce],this.notifyDelegateOfCurrentAttributesChange())}removeTextAttribute(Ce){const ke=this.getSelectedRange();if(ke)return this.setDocument(this.document.removeAttributeAtRange(Ce,ke))}removeBlockAttribute(Ce){const ke=this.getSelectedRange();if(ke)return this.setDocument(this.document.removeAttributeAtRange(Ce,ke))}canDecreaseNestingLevel(){var Ce;return((Ce=this.getBlock())===null||Ce===void 0?void 0:Ce.getNestingLevel())>0}canIncreaseNestingLevel(){var Ce;const ke=this.getBlock();if(ke){if((Ce=gt(ke.getLastNestableAttribute()))===null||Ce===void 0||!Ce.listAttribute)return ke.getNestingLevel()>0;{const $n=this.getPreviousBlock();if($n)return function(){let Hn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return rt((arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).slice(0,Hn.length),Hn)}($n.getListItemAttributes(),ke.getListItemAttributes())}}}decreaseNestingLevel(){const Ce=this.getBlock();if(Ce)return this.setDocument(this.document.replaceBlock(Ce,Ce.decreaseNestingLevel()))}increaseNestingLevel(){const Ce=this.getBlock();if(Ce)return this.setDocument(this.document.replaceBlock(Ce,Ce.increaseNestingLevel()))}canDecreaseBlockAttributeLevel(){var Ce;return((Ce=this.getBlock())===null||Ce===void 0?void 0:Ce.getAttributeLevel())>0}decreaseBlockAttributeLevel(){var Ce;const ke=(Ce=this.getBlock())===null||Ce===void 0?void 0:Ce.getLastAttribute();if(ke)return this.removeCurrentAttribute(ke)}decreaseListLevel(){let[Ce]=Array.from(this.getSelectedRange());const{index:ke}=this.document.locationFromPosition(Ce);let $n=ke;const Hn=this.getBlock().getAttributeLevel();let zn=this.document.getBlockAtIndex($n+1);for(;zn&&zn.isListItem()&&!(zn.getAttributeLevel()<=Hn);)$n++,zn=this.document.getBlockAtIndex($n+1);Ce=this.document.positionFromLocation({index:ke,offset:0});const Zn=this.document.positionFromLocation({index:$n,offset:0});return this.setDocument(this.document.removeLastListAttributeAtRange([Ce,Zn]))}updateCurrentAttributes(){const Ce=this.getSelectedRange({ignoreLock:!0});if(Ce){const ke=this.document.getCommonAttributesAtRange(Ce);if(Array.from(dt()).forEach($n=>{ke[$n]||this.canSetCurrentAttribute($n)||(ke[$n]=!1)}),!St(ke,this.currentAttributes))return this.currentAttributes=ke,this.notifyDelegateOfCurrentAttributesChange()}}getCurrentAttributes(){return g.call({},this.currentAttributes)}getCurrentTextAttributes(){const Ce={};for(const ke in this.currentAttributes){const $n=this.currentAttributes[ke];$n!==!1&&pt(ke)&&(Ce[ke]=$n)}return Ce}freezeSelection(){return this.setCurrentAttribute("frozen",!0)}thawSelection(){return this.removeCurrentAttribute("frozen")}hasFrozenSelection(){return this.hasCurrentAttribute("frozen")}setSelection(Ce){var ke;const $n=this.document.locationRangeFromRange(Ce);return(ke=this.delegate)===null||ke===void 0?void 0:ke.compositionDidRequestChangingSelectionToLocationRange($n)}getSelectedRange(){const Ce=this.getLocationRange();if(Ce)return this.document.rangeFromLocationRange(Ce)}setSelectedRange(Ce){const ke=this.document.locationRangeFromRange(Ce);return this.getSelectionManager().setLocationRange(ke)}getPosition(){const Ce=this.getLocationRange();if(Ce)return this.document.positionFromLocation(Ce[0])}getLocationRange(Ce){return this.targetLocationRange?this.targetLocationRange:this.getSelectionManager().getLocationRange(Ce)||Lt({index:0,offset:0})}withTargetLocationRange(Ce,ke){let $n;this.targetLocationRange=Ce;try{$n=ke()}finally{this.targetLocationRange=null}return $n}withTargetRange(Ce,ke){const $n=this.document.locationRangeFromRange(Ce);return this.withTargetLocationRange($n,ke)}withTargetDOMRange(Ce,ke){const $n=this.createLocationRangeFromDOMRange(Ce,{strict:!1});return this.withTargetLocationRange($n,ke)}getExpandedRangeInDirection(Ce){let{length:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},[$n,Hn]=Array.from(this.getSelectedRange());return Ce==="backward"?ke?$n-=ke:$n=this.translateUTF16PositionFromOffset($n,-1):ke?Hn+=ke:Hn=this.translateUTF16PositionFromOffset(Hn,1),Lt([$n,Hn])}shouldManageMovingCursorInDirection(Ce){if(this.editingAttachment)return!0;const ke=this.getExpandedRangeInDirection(Ce);return this.getAttachmentAtRange(ke)!=null}moveCursorInDirection(Ce){let ke,$n;if(this.editingAttachment)$n=this.document.getRangeOfAttachment(this.editingAttachment);else{const Hn=this.getSelectedRange();$n=this.getExpandedRangeInDirection(Ce),ke=!wt(Hn,$n)}if(Ce==="backward"?this.setSelectedRange($n[0]):this.setSelectedRange($n[1]),ke){const Hn=this.getAttachmentAtRange($n);if(Hn)return this.editAttachment(Hn)}}expandSelectionInDirection(Ce){let{length:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const $n=this.getExpandedRangeInDirection(Ce,{length:ke});return this.setSelectedRange($n)}expandSelectionForEditing(){if(this.hasCurrentAttribute("href"))return this.expandSelectionAroundCommonAttribute("href")}expandSelectionAroundCommonAttribute(Ce){const ke=this.getPosition(),$n=this.document.getRangeOfCommonAttributeAtPosition(Ce,ke);return this.setSelectedRange($n)}selectionContainsAttachments(){var Ce;return((Ce=this.getSelectedAttachments())===null||Ce===void 0?void 0:Ce.length)>0}selectionIsInCursorTarget(){return this.editingAttachment||this.positionIsCursorTarget(this.getPosition())}positionIsCursorTarget(Ce){const ke=this.document.locationFromPosition(Ce);if(ke)return this.locationIsCursorTarget(ke)}positionIsBlockBreak(Ce){var ke;return(ke=this.document.getPieceAtPosition(Ce))===null||ke===void 0?void 0:ke.isBlockBreak()}getSelectedDocument(){const Ce=this.getSelectedRange();if(Ce)return this.document.getDocumentAtRange(Ce)}getSelectedAttachments(){var Ce;return(Ce=this.getSelectedDocument())===null||Ce===void 0?void 0:Ce.getAttachments()}getAttachments(){return this.attachments.slice(0)}refreshAttachments(){const Ce=this.document.getAttachments(),{added:ke,removed:$n}=function(){let Hn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],zn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const Zn=[],qn=[],Yn=new Set;Hn.forEach(to=>{Yn.add(to)});const Jn=new Set;return zn.forEach(to=>{Jn.add(to),Yn.has(to)||Zn.push(to)}),Hn.forEach(to=>{Jn.has(to)||qn.push(to)}),{added:Zn,removed:qn}}(this.attachments,Ce);return this.attachments=Ce,Array.from($n).forEach(Hn=>{var zn,Zn;Hn.delegate=null,(zn=this.delegate)===null||zn===void 0||(Zn=zn.compositionDidRemoveAttachment)===null||Zn===void 0||Zn.call(zn,Hn)}),(()=>{const Hn=[];return Array.from(ke).forEach(zn=>{var Zn,qn;zn.delegate=this,Hn.push((Zn=this.delegate)===null||Zn===void 0||(qn=Zn.compositionDidAddAttachment)===null||qn===void 0?void 0:qn.call(Zn,zn))}),Hn})()}attachmentDidChangeAttributes(Ce){var ke,$n;return this.revision++,(ke=this.delegate)===null||ke===void 0||($n=ke.compositionDidEditAttachment)===null||$n===void 0?void 0:$n.call(ke,Ce)}attachmentDidChangePreviewURL(Ce){var ke,$n;return this.revision++,(ke=this.delegate)===null||ke===void 0||($n=ke.compositionDidChangeAttachmentPreviewURL)===null||$n===void 0?void 0:$n.call(ke,Ce)}editAttachment(Ce,ke){var $n,Hn;if(Ce!==this.editingAttachment)return this.stopEditingAttachment(),this.editingAttachment=Ce,($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionDidStartEditingAttachment)===null||Hn===void 0?void 0:Hn.call($n,this.editingAttachment,ke)}stopEditingAttachment(){var Ce,ke;this.editingAttachment&&((Ce=this.delegate)===null||Ce===void 0||(ke=Ce.compositionDidStopEditingAttachment)===null||ke===void 0||ke.call(Ce,this.editingAttachment),this.editingAttachment=null)}updateAttributesForAttachment(Ce,ke){return this.setDocument(this.document.updateAttributesForAttachment(Ce,ke))}removeAttributeForAttachment(Ce,ke){return this.setDocument(this.document.removeAttributeForAttachment(Ce,ke))}breakFormattedBlock(Ce){let{document:ke}=Ce;const{block:$n}=Ce;let Hn=Ce.startPosition,zn=[Hn-1,Hn];$n.getBlockBreakPosition()===Ce.startLocation.offset?($n.breaksOnReturn()&&Ce.nextCharacter===` +`?Hn+=1:ke=ke.removeTextAtRange(zn),zn=[Hn,Hn]):Ce.nextCharacter===` +`?Ce.previousCharacter===` +`?zn=[Hn-1,Hn+1]:(zn=[Hn,Hn+1],Hn+=1):Ce.startLocation.offset-1!=0&&(Hn+=1);const Zn=new Je([$n.removeLastAttribute().copyWithoutText()]);return this.setDocument(ke.insertDocumentAtRange(Zn,zn)),this.setSelection(Hn)}getPreviousBlock(){const Ce=this.getLocationRange();if(Ce){const{index:ke}=Ce[0];if(ke>0)return this.document.getBlockAtIndex(ke-1)}}getBlock(){const Ce=this.getLocationRange();if(Ce)return this.document.getBlockAtIndex(Ce[0].index)}getAttachmentAtRange(Ce){const ke=this.document.getDocumentAtRange(Ce);if(ke.toString()==="".concat("",` +`))return ke.getAttachments()[0]}notifyDelegateOfCurrentAttributesChange(){var Ce,ke;return(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.compositionDidChangeCurrentAttributes)===null||ke===void 0?void 0:ke.call(Ce,this.currentAttributes)}notifyDelegateOfInsertionAtRange(Ce){var ke,$n;return(ke=this.delegate)===null||ke===void 0||($n=ke.compositionDidPerformInsertionAtRange)===null||$n===void 0?void 0:$n.call(ke,Ce)}translateUTF16PositionFromOffset(Ce,ke){const $n=this.document.toUTF16String(),Hn=$n.offsetFromUCS2Offset(Ce);return $n.offsetToUCS2Offset(Hn+ke)}}gi.proxyMethod("getSelectionManager().getPointRange"),gi.proxyMethod("getSelectionManager().setLocationRangeFromPointRange"),gi.proxyMethod("getSelectionManager().createLocationRangeFromDOMRange"),gi.proxyMethod("getSelectionManager().locationIsCursorTarget"),gi.proxyMethod("getSelectionManager().selectionIsExpanded"),gi.proxyMethod("delegate?.getSelectionManager");class mi extends H{constructor(Ce){super(...arguments),this.composition=Ce,this.undoEntries=[],this.redoEntries=[]}recordUndoEntry(Ce){let{context:ke,consolidatable:$n}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const Hn=this.undoEntries.slice(-1)[0];if(!$n||!pi(Hn,Ce,ke)){const zn=this.createEntry({description:Ce,context:ke});this.undoEntries.push(zn),this.redoEntries=[]}}undo(){const Ce=this.undoEntries.pop();if(Ce){const ke=this.createEntry(Ce);return this.redoEntries.push(ke),this.composition.loadSnapshot(Ce.snapshot)}}redo(){const Ce=this.redoEntries.pop();if(Ce){const ke=this.createEntry(Ce);return this.undoEntries.push(ke),this.composition.loadSnapshot(Ce.snapshot)}}canUndo(){return this.undoEntries.length>0}canRedo(){return this.redoEntries.length>0}createEntry(){let{description:Ce,context:ke}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return{description:Ce==null?void 0:Ce.toString(),context:JSON.stringify(ke),snapshot:this.composition.getSnapshot()}}}const pi=(_n,Ce,ke)=>(_n==null?void 0:_n.description)===(Ce==null?void 0:Ce.toString())&&(_n==null?void 0:_n.context)===JSON.stringify(ke),fi="attachmentGallery";class bi{constructor(Ce){this.document=Ce.document,this.selectedRange=Ce.selectedRange}perform(){return this.removeBlockAttribute(),this.applyBlockAttribute()}getSnapshot(){return{document:this.document,selectedRange:this.selectedRange}}removeBlockAttribute(){return this.findRangesOfBlocks().map(Ce=>this.document=this.document.removeAttributeAtRange(fi,Ce))}applyBlockAttribute(){let Ce=0;this.findRangesOfPieces().forEach(ke=>{ke[1]-ke[0]>1&&(ke[0]+=Ce,ke[1]+=Ce,this.document.getCharacterAtPosition(ke[1])!==` +`&&(this.document=this.document.insertBlockBreakAtRange(ke[1]),ke[1]0&&arguments[0]!==void 0?arguments[0]:"";const ke=Xe.parse(Ce,{referenceElement:this.element}).getDocument();return this.loadDocument(ke)}loadJSON(Ce){let{document:ke,selectedRange:$n}=Ce;return ke=Je.fromJSON(ke),this.loadSnapshot({document:ke,selectedRange:$n})}loadSnapshot(Ce){return this.undoManager=new mi(this.composition),this.composition.loadSnapshot(Ce)}getDocument(){return this.composition.document}getSelectedDocument(){return this.composition.getSelectedDocument()}getSnapshot(){return this.composition.getSnapshot()}toJSON(){return this.getSnapshot()}deleteInDirection(Ce){return this.composition.deleteInDirection(Ce)}insertAttachment(Ce){return this.composition.insertAttachment(Ce)}insertAttachments(Ce){return this.composition.insertAttachments(Ce)}insertDocument(Ce){return this.composition.insertDocument(Ce)}insertFile(Ce){return this.composition.insertFile(Ce)}insertFiles(Ce){return this.composition.insertFiles(Ce)}insertHTML(Ce){return this.composition.insertHTML(Ce)}insertString(Ce){return this.composition.insertString(Ce)}insertText(Ce){return this.composition.insertText(Ce)}insertLineBreak(){return this.composition.insertLineBreak()}getSelectedRange(){return this.composition.getSelectedRange()}getPosition(){return this.composition.getPosition()}getClientRectAtPosition(Ce){const ke=this.getDocument().locationRangeFromRange([Ce,Ce+1]);return this.selectionManager.getClientRectAtLocationRange(ke)}expandSelectionInDirection(Ce){return this.composition.expandSelectionInDirection(Ce)}moveCursorInDirection(Ce){return this.composition.moveCursorInDirection(Ce)}setSelectedRange(Ce){return this.composition.setSelectedRange(Ce)}activateAttribute(Ce){let ke=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];return this.composition.setCurrentAttribute(Ce,ke)}attributeIsActive(Ce){return this.composition.hasCurrentAttribute(Ce)}canActivateAttribute(Ce){return this.composition.canSetCurrentAttribute(Ce)}deactivateAttribute(Ce){return this.composition.removeCurrentAttribute(Ce)}setHTMLAtributeAtPosition(Ce,ke,$n){this.composition.setHTMLAtributeAtPosition(Ce,ke,$n)}canDecreaseNestingLevel(){return this.composition.canDecreaseNestingLevel()}canIncreaseNestingLevel(){return this.composition.canIncreaseNestingLevel()}decreaseNestingLevel(){if(this.canDecreaseNestingLevel())return this.composition.decreaseNestingLevel()}increaseNestingLevel(){if(this.canIncreaseNestingLevel())return this.composition.increaseNestingLevel()}canRedo(){return this.undoManager.canRedo()}canUndo(){return this.undoManager.canUndo()}recordUndoEntry(Ce){let{context:ke,consolidatable:$n}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return this.undoManager.recordUndoEntry(Ce,{context:ke,consolidatable:$n})}redo(){if(this.canRedo())return this.undoManager.redo()}undo(){if(this.canUndo())return this.undoManager.undo()}}class yi{constructor(Ce){this.element=Ce}findLocationFromContainerAndOffset(Ce,ke){let{strict:$n}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{strict:!0},Hn=0,zn=!1;const Zn={index:0,offset:0},qn=this.findAttachmentElementParentForNode(Ce);qn&&(Ce=qn.parentNode,ke=C$1(qn));const Yn=R(this.element,{usingFilter:Ei});for(;Yn.nextNode();){const Jn=Yn.currentNode;if(Jn===Ce&&O(Ce)){P(Jn)||(Zn.offset+=ke);break}if(Jn.parentNode===Ce){if(Hn++===ke)break}else if(!y(Ce,Jn)&&Hn>0)break;T(Jn,{strict:$n})?(zn&&Zn.index++,Zn.offset=0,zn=!0):Zn.offset+=Ci(Jn)}return Zn}findContainerAndOffsetFromLocation(Ce){let ke,$n;if(Ce.index===0&&Ce.offset===0){for(ke=this.element,$n=0;ke.firstChild;)if(ke=ke.firstChild,w(ke)){$n=1;break}return[ke,$n]}let[Hn,zn]=this.findNodeAndOffsetFromLocation(Ce);if(Hn){if(O(Hn))Ci(Hn)===0?(ke=Hn.parentNode.parentNode,$n=C$1(Hn.parentNode),P(Hn,{name:"right"})&&$n++):(ke=Hn,$n=Ce.offset-zn);else{if(ke=Hn.parentNode,!T(Hn.previousSibling)&&!w(ke))for(;Hn===ke.lastChild&&(Hn=ke,ke=ke.parentNode,!w(ke)););$n=C$1(Hn),Ce.offset!==0&&$n++}return[ke,$n]}}findNodeAndOffsetFromLocation(Ce){let ke,$n,Hn=0;for(const zn of this.getSignificantNodesForIndex(Ce.index)){const Zn=Ci(zn);if(Ce.offset<=Hn+Zn)if(O(zn)){if(ke=zn,$n=Hn,Ce.offset===$n&&P(ke))break}else ke||(ke=zn,$n=Hn);if(Hn+=Zn,Hn>Ce.offset)break}return[ke,$n]}findAttachmentElementParentForNode(Ce){for(;Ce&&Ce!==this.element;){if(I(Ce))return Ce;Ce=Ce.parentNode}}getSignificantNodesForIndex(Ce){const ke=[],$n=R(this.element,{usingFilter:ki});let Hn=!1;for(;$n.nextNode();){const Zn=$n.currentNode;var zn;if(B(Zn)){if(zn!=null?zn++:zn=0,zn===Ce)Hn=!0;else if(Hn)break}else Hn&&ke.push(Zn)}return ke}}const Ci=function(_n){return _n.nodeType===Node.TEXT_NODE?P(_n)?0:_n.textContent.length:E(_n)==="br"||I(_n)?1:0},ki=function(_n){return Ri(_n)===NodeFilter.FILTER_ACCEPT?Ei(_n):NodeFilter.FILTER_REJECT},Ri=function(_n){return N(_n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},Ei=function(_n){return I(_n.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT};class Si{createDOMRangeFromPoint(Ce){let ke,{x:$n,y:Hn}=Ce;if(document.caretPositionFromPoint){const{offsetNode:zn,offset:Zn}=document.caretPositionFromPoint($n,Hn);return ke=document.createRange(),ke.setStart(zn,Zn),ke}if(document.caretRangeFromPoint)return document.caretRangeFromPoint($n,Hn);if(document.body.createTextRange){const zn=Nt();try{const Zn=document.body.createTextRange();Zn.moveToPoint($n,Hn),Zn.select()}catch{}return ke=Nt(),Ot(zn),ke}}getClientRectsForDOMRange(Ce){const ke=Array.from(Ce.getClientRects());return[ke[0],ke[ke.length-1]]}}class Li extends H{constructor(Ce){super(...arguments),this.didMouseDown=this.didMouseDown.bind(this),this.selectionDidChange=this.selectionDidChange.bind(this),this.element=Ce,this.locationMapper=new yi(this.element),this.pointMapper=new Si,this.lockCount=0,f("mousedown",{onElement:this.element,withCallback:this.didMouseDown})}getLocationRange(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ce.strict===!1?this.createLocationRangeFromDOMRange(Nt()):Ce.ignoreLock?this.currentLocationRange:this.lockedLocationRange?this.lockedLocationRange:this.currentLocationRange}setLocationRange(Ce){if(this.lockedLocationRange)return;Ce=Lt(Ce);const ke=this.createDOMRangeFromLocationRange(Ce);ke&&(Ot(ke),this.updateCurrentLocationRange(Ce))}setLocationRangeFromPointRange(Ce){Ce=Lt(Ce);const ke=this.getLocationAtPoint(Ce[0]),$n=this.getLocationAtPoint(Ce[1]);this.setLocationRange([ke,$n])}getClientRectAtLocationRange(Ce){const ke=this.createDOMRangeFromLocationRange(Ce);if(ke)return this.getClientRectsForDOMRange(ke)[1]}locationIsCursorTarget(Ce){const ke=Array.from(this.findNodeAndOffsetFromLocation(Ce))[0];return P(ke)}lock(){this.lockCount++==0&&(this.updateCurrentLocationRange(),this.lockedLocationRange=this.getLocationRange())}unlock(){if(--this.lockCount==0){const{lockedLocationRange:Ce}=this;if(this.lockedLocationRange=null,Ce!=null)return this.setLocationRange(Ce)}}clearSelection(){var Ce;return(Ce=It())===null||Ce===void 0?void 0:Ce.removeAllRanges()}selectionIsCollapsed(){var Ce;return((Ce=Nt())===null||Ce===void 0?void 0:Ce.collapsed)===!0}selectionIsExpanded(){return!this.selectionIsCollapsed()}createLocationRangeFromDOMRange(Ce,ke){if(Ce==null||!this.domRangeWithinElement(Ce))return;const $n=this.findLocationFromContainerAndOffset(Ce.startContainer,Ce.startOffset,ke);if(!$n)return;const Hn=Ce.collapsed?void 0:this.findLocationFromContainerAndOffset(Ce.endContainer,Ce.endOffset,ke);return Lt([$n,Hn])}didMouseDown(){return this.pauseTemporarily()}pauseTemporarily(){let Ce;this.paused=!0;const ke=()=>{if(this.paused=!1,clearTimeout($n),Array.from(Ce).forEach(Hn=>{Hn.destroy()}),y(document,this.element))return this.selectionDidChange()},$n=setTimeout(ke,200);Ce=["mousemove","keydown"].map(Hn=>f(Hn,{onElement:document,withCallback:ke}))}selectionDidChange(){if(!this.paused&&!x(this.element))return this.updateCurrentLocationRange()}updateCurrentLocationRange(Ce){var ke,$n;if((Ce??(Ce=this.createLocationRangeFromDOMRange(Nt())))&&!wt(Ce,this.currentLocationRange))return this.currentLocationRange=Ce,(ke=this.delegate)===null||ke===void 0||($n=ke.locationRangeDidChange)===null||$n===void 0?void 0:$n.call(ke,this.currentLocationRange.slice(0))}createDOMRangeFromLocationRange(Ce){const ke=this.findContainerAndOffsetFromLocation(Ce[0]),$n=Dt(Ce)?ke:this.findContainerAndOffsetFromLocation(Ce[1])||ke;if(ke!=null&&$n!=null){const Hn=document.createRange();return Hn.setStart(...Array.from(ke||[])),Hn.setEnd(...Array.from($n||[])),Hn}}getLocationAtPoint(Ce){const ke=this.createDOMRangeFromPoint(Ce);var $n;if(ke)return($n=this.createLocationRangeFromDOMRange(ke))===null||$n===void 0?void 0:$n[0]}domRangeWithinElement(Ce){return Ce.collapsed?y(this.element,Ce.startContainer):y(this.element,Ce.startContainer)&&y(this.element,Ce.endContainer)}}Li.proxyMethod("locationMapper.findLocationFromContainerAndOffset"),Li.proxyMethod("locationMapper.findContainerAndOffsetFromLocation"),Li.proxyMethod("locationMapper.findNodeAndOffsetFromLocation"),Li.proxyMethod("pointMapper.createDOMRangeFromPoint"),Li.proxyMethod("pointMapper.getClientRectsForDOMRange");var Di=Object.freeze({__proto__:null,Attachment:De,AttachmentManager:hi,AttachmentPiece:we,Block:Oe,Composition:gi,Document:Je,Editor:xi,HTMLParser:Xe,HTMLSanitizer:se,LineBreakInsertion:di,LocationMapper:yi,ManagedAttachment:ui,Piece:Se,PointMapper:Si,SelectionManager:Li,SplittableList:Be,StringPiece:Te,Text:Ne,UndoManager:mi}),wi=Object.freeze({__proto__:null,ObjectView:ee,AttachmentView:ce,BlockView:be,DocumentView:ve,PieceView:ge,PreviewableAttachmentView:de,TextView:me});const{lang:Ti,css:Bi,keyNames:Fi}=V,Pi=function(_n){return function(){const Ce=_n.apply(this,arguments);Ce.do(),this.undos||(this.undos=[]),this.undos.push(Ce.undo)}};class Ii extends H{constructor(Ce,ke,$n){let Hn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(...arguments),Re(this,"makeElementMutable",Pi(()=>({do:()=>{this.element.dataset.trixMutable=!0},undo:()=>delete this.element.dataset.trixMutable}))),Re(this,"addToolbar",Pi(()=>{const zn=S$1({tagName:"div",className:Bi.attachmentToolbar,data:{trixMutable:!0},childNodes:S$1({tagName:"div",className:"trix-button-row",childNodes:S$1({tagName:"span",className:"trix-button-group trix-button-group--actions",childNodes:S$1({tagName:"button",className:"trix-button trix-button--remove",textContent:Ti.remove,attributes:{title:Ti.remove},data:{trixAction:"remove"}})})})});return this.attachment.isPreviewable()&&zn.appendChild(S$1({tagName:"div",className:Bi.attachmentMetadataContainer,childNodes:S$1({tagName:"span",className:Bi.attachmentMetadata,childNodes:[S$1({tagName:"span",className:Bi.attachmentName,textContent:this.attachment.getFilename(),attributes:{title:this.attachment.getFilename()}}),S$1({tagName:"span",className:Bi.attachmentSize,textContent:this.attachment.getFormattedFilesize()})]})})),f("click",{onElement:zn,withCallback:this.didClickToolbar}),f("click",{onElement:zn,matchingSelector:"[data-trix-action]",withCallback:this.didClickActionButton}),b("trix-attachment-before-toolbar",{onElement:this.element,attributes:{toolbar:zn,attachment:this.attachment}}),{do:()=>this.element.appendChild(zn),undo:()=>k(zn)}})),Re(this,"installCaptionEditor",Pi(()=>{const zn=S$1({tagName:"textarea",className:Bi.attachmentCaptionEditor,attributes:{placeholder:Ti.captionPlaceholder},data:{trixMutable:!0}});zn.value=this.attachmentPiece.getCaption();const Zn=zn.cloneNode();Zn.classList.add("trix-autoresize-clone"),Zn.tabIndex=-1;const qn=function(){Zn.value=zn.value,zn.style.height=Zn.scrollHeight+"px"};f("input",{onElement:zn,withCallback:qn}),f("input",{onElement:zn,withCallback:this.didInputCaption}),f("keydown",{onElement:zn,withCallback:this.didKeyDownCaption}),f("change",{onElement:zn,withCallback:this.didChangeCaption}),f("blur",{onElement:zn,withCallback:this.didBlurCaption});const Yn=this.element.querySelector("figcaption"),Jn=Yn.cloneNode();return{do:()=>{if(Yn.style.display="none",Jn.appendChild(zn),Jn.appendChild(Zn),Jn.classList.add("".concat(Bi.attachmentCaption,"--editing")),Yn.parentElement.insertBefore(Jn,Yn),qn(),this.options.editCaption)return Rt(()=>zn.focus())},undo(){k(Jn),Yn.style.display=null}}})),this.didClickToolbar=this.didClickToolbar.bind(this),this.didClickActionButton=this.didClickActionButton.bind(this),this.didKeyDownCaption=this.didKeyDownCaption.bind(this),this.didInputCaption=this.didInputCaption.bind(this),this.didChangeCaption=this.didChangeCaption.bind(this),this.didBlurCaption=this.didBlurCaption.bind(this),this.attachmentPiece=Ce,this.element=ke,this.container=$n,this.options=Hn,this.attachment=this.attachmentPiece.attachment,E(this.element)==="a"&&(this.element=this.element.firstChild),this.install()}install(){this.makeElementMutable(),this.addToolbar(),this.attachment.isPreviewable()&&this.installCaptionEditor()}uninstall(){var Ce;let ke=this.undos.pop();for(this.savePendingCaption();ke;)ke(),ke=this.undos.pop();(Ce=this.delegate)===null||Ce===void 0||Ce.didUninstallAttachmentEditor(this)}savePendingCaption(){if(this.pendingCaption!=null){const zn=this.pendingCaption;var Ce,ke,$n,Hn;this.pendingCaption=null,zn?(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.attachmentEditorDidRequestUpdatingAttributesForAttachment)===null||ke===void 0||ke.call(Ce,{caption:zn},this.attachment):($n=this.delegate)===null||$n===void 0||(Hn=$n.attachmentEditorDidRequestRemovingAttributeForAttachment)===null||Hn===void 0||Hn.call($n,"caption",this.attachment)}}didClickToolbar(Ce){return Ce.preventDefault(),Ce.stopPropagation()}didClickActionButton(Ce){var ke;if(Ce.target.getAttribute("data-trix-action")==="remove")return(ke=this.delegate)===null||ke===void 0?void 0:ke.attachmentEditorDidRequestRemovalOfAttachment(this.attachment)}didKeyDownCaption(Ce){var ke,$n;if(Fi[Ce.keyCode]==="return")return Ce.preventDefault(),this.savePendingCaption(),(ke=this.delegate)===null||ke===void 0||($n=ke.attachmentEditorDidRequestDeselectingAttachment)===null||$n===void 0?void 0:$n.call(ke,this.attachment)}didInputCaption(Ce){this.pendingCaption=Ce.target.value.replace(/\s/g," ").trim()}didChangeCaption(Ce){return this.savePendingCaption()}didBlurCaption(Ce){return this.savePendingCaption()}}class Ni extends H{constructor(Ce,ke){super(...arguments),this.didFocus=this.didFocus.bind(this),this.didBlur=this.didBlur.bind(this),this.didClickAttachment=this.didClickAttachment.bind(this),this.element=Ce,this.composition=ke,this.documentView=new ve(this.composition.document,{element:this.element}),f("focus",{onElement:this.element,withCallback:this.didFocus}),f("blur",{onElement:this.element,withCallback:this.didBlur}),f("click",{onElement:this.element,matchingSelector:"a[contenteditable=false]",preventDefault:!0}),f("mousedown",{onElement:this.element,matchingSelector:e,withCallback:this.didClickAttachment}),f("click",{onElement:this.element,matchingSelector:"a".concat(e),preventDefault:!0})}didFocus(Ce){var ke;const $n=()=>{var Hn,zn;if(!this.focused)return this.focused=!0,(Hn=this.delegate)===null||Hn===void 0||(zn=Hn.compositionControllerDidFocus)===null||zn===void 0?void 0:zn.call(Hn)};return((ke=this.blurPromise)===null||ke===void 0?void 0:ke.then($n))||$n()}didBlur(Ce){this.blurPromise=new Promise(ke=>Rt(()=>{var $n,Hn;return x(this.element)||(this.focused=null,($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionControllerDidBlur)===null||Hn===void 0||Hn.call($n)),this.blurPromise=null,ke()}))}didClickAttachment(Ce,ke){var $n,Hn;const zn=this.findAttachmentForElement(ke),Zn=!!A(Ce.target,{matchingSelector:"figcaption"});return($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionControllerDidSelectAttachment)===null||Hn===void 0?void 0:Hn.call($n,zn,{editCaption:Zn})}getSerializableElement(){return this.isEditingAttachment()?this.documentView.shadowElement:this.element}render(){var Ce,ke,$n,Hn,zn,Zn;return this.revision!==this.composition.revision&&(this.documentView.setDocument(this.composition.document),this.documentView.render(),this.revision=this.composition.revision),this.canSyncDocumentView()&&!this.documentView.isSynced()&&(($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionControllerWillSyncDocumentView)===null||Hn===void 0||Hn.call($n),this.documentView.sync(),(zn=this.delegate)===null||zn===void 0||(Zn=zn.compositionControllerDidSyncDocumentView)===null||Zn===void 0||Zn.call(zn)),(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.compositionControllerDidRender)===null||ke===void 0?void 0:ke.call(Ce)}rerenderViewForObject(Ce){return this.invalidateViewForObject(Ce),this.render()}invalidateViewForObject(Ce){return this.documentView.invalidateViewForObject(Ce)}isViewCachingEnabled(){return this.documentView.isViewCachingEnabled()}enableViewCaching(){return this.documentView.enableViewCaching()}disableViewCaching(){return this.documentView.disableViewCaching()}refreshViewCache(){return this.documentView.garbageCollectCachedViews()}isEditingAttachment(){return!!this.attachmentEditor}installAttachmentEditorForAttachment(Ce,ke){var $n;if((($n=this.attachmentEditor)===null||$n===void 0?void 0:$n.attachment)===Ce)return;const Hn=this.documentView.findElementForObject(Ce);if(!Hn)return;this.uninstallAttachmentEditor();const zn=this.composition.document.getAttachmentPieceForAttachment(Ce);this.attachmentEditor=new Ii(zn,Hn,this.element,ke),this.attachmentEditor.delegate=this}uninstallAttachmentEditor(){var Ce;return(Ce=this.attachmentEditor)===null||Ce===void 0?void 0:Ce.uninstall()}didUninstallAttachmentEditor(){return this.attachmentEditor=null,this.render()}attachmentEditorDidRequestUpdatingAttributesForAttachment(Ce,ke){var $n,Hn;return($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionControllerWillUpdateAttachment)===null||Hn===void 0||Hn.call($n,ke),this.composition.updateAttributesForAttachment(Ce,ke)}attachmentEditorDidRequestRemovingAttributeForAttachment(Ce,ke){var $n,Hn;return($n=this.delegate)===null||$n===void 0||(Hn=$n.compositionControllerWillUpdateAttachment)===null||Hn===void 0||Hn.call($n,ke),this.composition.removeAttributeForAttachment(Ce,ke)}attachmentEditorDidRequestRemovalOfAttachment(Ce){var ke,$n;return(ke=this.delegate)===null||ke===void 0||($n=ke.compositionControllerDidRequestRemovalOfAttachment)===null||$n===void 0?void 0:$n.call(ke,Ce)}attachmentEditorDidRequestDeselectingAttachment(Ce){var ke,$n;return(ke=this.delegate)===null||ke===void 0||($n=ke.compositionControllerDidRequestDeselectingAttachment)===null||$n===void 0?void 0:$n.call(ke,Ce)}canSyncDocumentView(){return!this.isEditingAttachment()}findAttachmentForElement(Ce){return this.composition.document.getAttachmentById(parseInt(Ce.dataset.trixId,10))}}class Oi extends H{}const Mi="data-trix-mutable",ji="[".concat(Mi,"]"),Wi={attributes:!0,childList:!0,characterData:!0,characterDataOldValue:!0,subtree:!0};class Ui extends H{constructor(Ce){super(Ce),this.didMutate=this.didMutate.bind(this),this.element=Ce,this.observer=new window.MutationObserver(this.didMutate),this.start()}start(){return this.reset(),this.observer.observe(this.element,Wi)}stop(){return this.observer.disconnect()}didMutate(Ce){var ke,$n;if(this.mutations.push(...Array.from(this.findSignificantMutations(Ce)||[])),this.mutations.length)return(ke=this.delegate)===null||ke===void 0||($n=ke.elementDidMutate)===null||$n===void 0||$n.call(ke,this.getMutationSummary()),this.reset()}reset(){this.mutations=[]}findSignificantMutations(Ce){return Ce.filter(ke=>this.mutationIsSignificant(ke))}mutationIsSignificant(Ce){if(this.nodeIsMutable(Ce.target))return!1;for(const ke of Array.from(this.nodesModifiedByMutation(Ce)))if(this.nodeIsSignificant(ke))return!0;return!1}nodeIsSignificant(Ce){return Ce!==this.element&&!this.nodeIsMutable(Ce)&&!N(Ce)}nodeIsMutable(Ce){return A(Ce,{matchingSelector:ji})}nodesModifiedByMutation(Ce){const ke=[];switch(Ce.type){case"attributes":Ce.attributeName!==Mi&&ke.push(Ce.target);break;case"characterData":ke.push(Ce.target.parentNode),ke.push(Ce.target);break;case"childList":ke.push(...Array.from(Ce.addedNodes||[])),ke.push(...Array.from(Ce.removedNodes||[]))}return ke}getMutationSummary(){return this.getTextMutationSummary()}getTextMutationSummary(){const{additions:Ce,deletions:ke}=this.getTextChangesFromCharacterData(),$n=this.getTextChangesFromChildList();Array.from($n.additions).forEach(qn=>{Array.from(Ce).includes(qn)||Ce.push(qn)}),ke.push(...Array.from($n.deletions||[]));const Hn={},zn=Ce.join("");zn&&(Hn.textAdded=zn);const Zn=ke.join("");return Zn&&(Hn.textDeleted=Zn),Hn}getMutationsByType(Ce){return Array.from(this.mutations).filter(ke=>ke.type===Ce)}getTextChangesFromChildList(){let Ce,ke;const $n=[],Hn=[];return Array.from(this.getMutationsByType("childList")).forEach(zn=>{$n.push(...Array.from(zn.addedNodes||[])),Hn.push(...Array.from(zn.removedNodes||[]))}),$n.length===0&&Hn.length===1&&B(Hn[0])?(Ce=[],ke=[` +`]):(Ce=qi($n),ke=qi(Hn)),{additions:Ce.filter((zn,Zn)=>zn!==ke[Zn]).map(Wt),deletions:ke.filter((zn,Zn)=>zn!==Ce[Zn]).map(Wt)}}getTextChangesFromCharacterData(){let Ce,ke;const $n=this.getMutationsByType("characterData");if($n.length){const Hn=$n[0],zn=$n[$n.length-1],Zn=function(qn,Yn){let Jn,to;return qn=X.box(qn),(Yn=X.box(Yn)).length0&&arguments[0]!==void 0?arguments[0]:[];const Ce=[];for(const ke of Array.from(_n))switch(ke.nodeType){case Node.TEXT_NODE:Ce.push(ke.data);break;case Node.ELEMENT_NODE:E(ke)==="br"?Ce.push(` +`):Ce.push(...Array.from(qi(ke.childNodes)||[]))}return Ce};class Vi extends te{constructor(Ce){super(...arguments),this.file=Ce}perform(Ce){const ke=new FileReader;return ke.onerror=()=>Ce(!1),ke.onload=()=>{ke.onerror=null;try{ke.abort()}catch{}return Ce(!0,this.file)},ke.readAsArrayBuffer(this.file)}}class Hi{constructor(Ce){this.element=Ce}shouldIgnore(Ce){return!!a.samsungAndroid&&(this.previousEvent=this.event,this.event=Ce,this.checkSamsungKeyboardBuggyModeStart(),this.checkSamsungKeyboardBuggyModeEnd(),this.buggyMode)}checkSamsungKeyboardBuggyModeStart(){this.insertingLongTextAfterUnidentifiedChar()&&zi(this.element.innerText,this.event.data)&&(this.buggyMode=!0,this.event.preventDefault())}checkSamsungKeyboardBuggyModeEnd(){this.buggyMode&&this.event.inputType!=="insertText"&&(this.buggyMode=!1)}insertingLongTextAfterUnidentifiedChar(){var Ce;return this.isBeforeInputInsertText()&&this.previousEventWasUnidentifiedKeydown()&&((Ce=this.event.data)===null||Ce===void 0?void 0:Ce.length)>50}isBeforeInputInsertText(){return this.event.type==="beforeinput"&&this.event.inputType==="insertText"}previousEventWasUnidentifiedKeydown(){var Ce,ke;return((Ce=this.previousEvent)===null||Ce===void 0?void 0:Ce.type)==="keydown"&&((ke=this.previousEvent)===null||ke===void 0?void 0:ke.key)==="Unidentified"}}const zi=(_n,Ce)=>Ji(_n)===Ji(Ce),_i=new RegExp("(".concat("","|").concat(h,"|").concat(d,"|\\s)+"),"g"),Ji=_n=>_n.replace(_i," ").trim();class Ki extends H{constructor(Ce){super(...arguments),this.element=Ce,this.mutationObserver=new Ui(this.element),this.mutationObserver.delegate=this,this.flakyKeyboardDetector=new Hi(this.element);for(const ke in this.constructor.events)f(ke,{onElement:this.element,withCallback:this.handlerFor(ke)})}elementDidMutate(Ce){}editorWillSyncDocumentView(){return this.mutationObserver.stop()}editorDidSyncDocumentView(){return this.mutationObserver.start()}requestRender(){var Ce,ke;return(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidRequestRender)===null||ke===void 0?void 0:ke.call(Ce)}requestReparse(){var Ce,ke;return(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidRequestReparse)===null||ke===void 0||ke.call(Ce),this.requestRender()}attachFiles(Ce){const ke=Array.from(Ce).map($n=>new Vi($n));return Promise.all(ke).then($n=>{this.handleInput(function(){var Hn,zn;return(Hn=this.delegate)===null||Hn===void 0||Hn.inputControllerWillAttachFiles(),(zn=this.responder)===null||zn===void 0||zn.insertFiles($n),this.requestRender()})})}handlerFor(Ce){return ke=>{ke.defaultPrevented||this.handleInput(()=>{if(!x(this.element)){if(this.flakyKeyboardDetector.shouldIgnore(ke))return;this.eventName=Ce,this.constructor.events[Ce].call(this,ke)}})}}handleInput(Ce){try{var ke;(ke=this.delegate)===null||ke===void 0||ke.inputControllerWillHandleInput(),Ce.call(this)}finally{var $n;($n=this.delegate)===null||$n===void 0||$n.inputControllerDidHandleInput()}}createLinkHTML(Ce,ke){const $n=document.createElement("a");return $n.href=Ce,$n.textContent=ke||Ce,$n.outerHTML}}var Gi;Re(Ki,"events",{});const{browser:$i,keyNames:Xi}=V;let Yi=0;class Qi extends Ki{constructor(){super(...arguments),this.resetInputSummary()}setInputSummary(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.inputSummary.eventName=this.eventName;for(const ke in Ce){const $n=Ce[ke];this.inputSummary[ke]=$n}return this.inputSummary}resetInputSummary(){this.inputSummary={}}reset(){return this.resetInputSummary(),Pt.reset()}elementDidMutate(Ce){var ke,$n;return this.isComposing()?(ke=this.delegate)===null||ke===void 0||($n=ke.inputControllerDidAllowUnhandledInput)===null||$n===void 0?void 0:$n.call(ke):this.handleInput(function(){return this.mutationIsSignificant(Ce)&&(this.mutationIsExpected(Ce)?this.requestRender():this.requestReparse()),this.reset()})}mutationIsExpected(Ce){let{textAdded:ke,textDeleted:$n}=Ce;if(this.inputSummary.preferDocument)return!0;const Hn=ke!=null?ke===this.inputSummary.textAdded:!this.inputSummary.textAdded,zn=$n!=null?this.inputSummary.didDelete:!this.inputSummary.didDelete,Zn=[` +`,` +`].includes(ke)&&!Hn,qn=$n===` +`&&!zn;if(Zn&&!qn||qn&&!Zn){const Jn=this.getSelectedRange();if(Jn){var Yn;const to=Zn?ke.replace(/\n$/,"").length||-1:(ke==null?void 0:ke.length)||1;if((Yn=this.responder)!==null&&Yn!==void 0&&Yn.positionIsBlockBreak(Jn[1]+to))return!0}}return Hn&&zn}mutationIsSignificant(Ce){var ke;const $n=Object.keys(Ce).length>0,Hn=((ke=this.compositionInput)===null||ke===void 0?void 0:ke.getEndData())==="";return $n||!Hn}getCompositionInput(){if(this.isComposing())return this.compositionInput;this.compositionInput=new rn(this)}isComposing(){return this.compositionInput&&!this.compositionInput.isEnded()}deleteInDirection(Ce,ke){var $n;return(($n=this.responder)===null||$n===void 0?void 0:$n.deleteInDirection(Ce))!==!1?this.setInputSummary({didDelete:!0}):ke?(ke.preventDefault(),this.requestRender()):void 0}serializeSelectionToDataTransfer(Ce){var ke;if(!function(Hn){if(Hn==null||!Hn.setData)return!1;for(const zn in yt){const Zn=yt[zn];try{if(Hn.setData(zn,Zn),!Hn.getData(zn)===Zn)return!1}catch{return!1}}return!0}(Ce))return;const $n=(ke=this.responder)===null||ke===void 0?void 0:ke.getSelectedDocument().toSerializableDocument();return Ce.setData("application/x-trix-document",JSON.stringify($n)),Ce.setData("text/html",ve.render($n).innerHTML),Ce.setData("text/plain",$n.toString().replace(/\n$/,"")),!0}canAcceptDataTransfer(Ce){const ke={};return Array.from((Ce==null?void 0:Ce.types)||[]).forEach($n=>{ke[$n]=!0}),ke.Files||ke["application/x-trix-document"]||ke["text/html"]||ke["text/plain"]}getPastedHTMLUsingHiddenElement(Ce){const ke=this.getSelectedRange(),$n={position:"absolute",left:"".concat(window.pageXOffset,"px"),top:"".concat(window.pageYOffset,"px"),opacity:0},Hn=S$1({style:$n,tagName:"div",editable:!0});return document.body.appendChild(Hn),Hn.focus(),requestAnimationFrame(()=>{const zn=Hn.innerHTML;return k(Hn),this.setSelectedRange(ke),Ce(zn)})}}Re(Qi,"events",{keydown(_n){this.isComposing()||this.resetInputSummary(),this.inputSummary.didInput=!0;const Ce=Xi[_n.keyCode];if(Ce){var ke;let Hn=this.keys;["ctrl","alt","shift","meta"].forEach(zn=>{var Zn;_n["".concat(zn,"Key")]&&(zn==="ctrl"&&(zn="control"),Hn=(Zn=Hn)===null||Zn===void 0?void 0:Zn[zn])}),((ke=Hn)===null||ke===void 0?void 0:ke[Ce])!=null&&(this.setInputSummary({keyName:Ce}),Pt.reset(),Hn[Ce].call(this,_n))}if(kt(_n)){const Hn=String.fromCharCode(_n.keyCode).toLowerCase();if(Hn){var $n;const zn=["alt","shift"].map(Zn=>{if(_n["".concat(Zn,"Key")])return Zn}).filter(Zn=>Zn);zn.push(Hn),($n=this.delegate)!==null&&$n!==void 0&&$n.inputControllerDidReceiveKeyboardCommand(zn)&&_n.preventDefault()}}},keypress(_n){if(this.inputSummary.eventName!=null||_n.metaKey||_n.ctrlKey&&!_n.altKey)return;const Ce=en(_n);var ke,$n;return Ce?((ke=this.delegate)===null||ke===void 0||ke.inputControllerWillPerformTyping(),($n=this.responder)===null||$n===void 0||$n.insertString(Ce),this.setInputSummary({textAdded:Ce,didDelete:this.selectionIsExpanded()})):void 0},textInput(_n){const{data:Ce}=_n,{textAdded:ke}=this.inputSummary;if(ke&&ke!==Ce&&ke.toUpperCase()===Ce){var $n;const Hn=this.getSelectedRange();return this.setSelectedRange([Hn[0],Hn[1]+ke.length]),($n=this.responder)===null||$n===void 0||$n.insertString(Ce),this.setInputSummary({textAdded:Ce}),this.setSelectedRange(Hn)}},dragenter(_n){_n.preventDefault()},dragstart(_n){var Ce,ke;return this.serializeSelectionToDataTransfer(_n.dataTransfer),this.draggedRange=this.getSelectedRange(),(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidStartDrag)===null||ke===void 0?void 0:ke.call(Ce)},dragover(_n){if(this.draggedRange||this.canAcceptDataTransfer(_n.dataTransfer)){_n.preventDefault();const $n={x:_n.clientX,y:_n.clientY};var Ce,ke;if(!St($n,this.draggingPoint))return this.draggingPoint=$n,(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidReceiveDragOverPoint)===null||ke===void 0?void 0:ke.call(Ce,this.draggingPoint)}},dragend(_n){var Ce,ke;(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidCancelDrag)===null||ke===void 0||ke.call(Ce),this.draggedRange=null,this.draggingPoint=null},drop(_n){var Ce,ke;_n.preventDefault();const $n=(Ce=_n.dataTransfer)===null||Ce===void 0?void 0:Ce.files,Hn=_n.dataTransfer.getData("application/x-trix-document"),zn={x:_n.clientX,y:_n.clientY};if((ke=this.responder)===null||ke===void 0||ke.setLocationRangeFromPointRange(zn),$n!=null&&$n.length)this.attachFiles($n);else if(this.draggedRange){var Zn,qn;(Zn=this.delegate)===null||Zn===void 0||Zn.inputControllerWillMoveText(),(qn=this.responder)===null||qn===void 0||qn.moveTextFromRange(this.draggedRange),this.draggedRange=null,this.requestRender()}else if(Hn){var Yn;const Jn=Je.fromJSONString(Hn);(Yn=this.responder)===null||Yn===void 0||Yn.insertDocument(Jn),this.requestRender()}this.draggedRange=null,this.draggingPoint=null},cut(_n){var Ce,ke;if((Ce=this.responder)!==null&&Ce!==void 0&&Ce.selectionIsExpanded()&&(this.serializeSelectionToDataTransfer(_n.clipboardData)&&_n.preventDefault(),(ke=this.delegate)===null||ke===void 0||ke.inputControllerWillCutText(),this.deleteInDirection("backward"),_n.defaultPrevented))return this.requestRender()},copy(_n){var Ce;(Ce=this.responder)!==null&&Ce!==void 0&&Ce.selectionIsExpanded()&&this.serializeSelectionToDataTransfer(_n.clipboardData)&&_n.preventDefault()},paste(_n){const Ce=_n.clipboardData||_n.testClipboardData,ke={clipboard:Ce};if(!Ce||nn(_n))return void this.getPastedHTMLUsingHiddenElement(Bo=>{var Vo,Ko,Mo;return ke.type="text/html",ke.html=Bo,(Vo=this.delegate)===null||Vo===void 0||Vo.inputControllerWillPaste(ke),(Ko=this.responder)===null||Ko===void 0||Ko.insertHTML(ke.html),this.requestRender(),(Mo=this.delegate)===null||Mo===void 0?void 0:Mo.inputControllerDidPaste(ke)});const $n=Ce.getData("URL"),Hn=Ce.getData("text/html"),zn=Ce.getData("public.url-name");if($n){var Zn,qn,Yn;let Bo;ke.type="text/html",Bo=zn?qt(zn).trim():$n,ke.html=this.createLinkHTML($n,Bo),(Zn=this.delegate)===null||Zn===void 0||Zn.inputControllerWillPaste(ke),this.setInputSummary({textAdded:Bo,didDelete:this.selectionIsExpanded()}),(qn=this.responder)===null||qn===void 0||qn.insertHTML(ke.html),this.requestRender(),(Yn=this.delegate)===null||Yn===void 0||Yn.inputControllerDidPaste(ke)}else if(Ct(Ce)){var Jn,to,io;ke.type="text/plain",ke.string=Ce.getData("text/plain"),(Jn=this.delegate)===null||Jn===void 0||Jn.inputControllerWillPaste(ke),this.setInputSummary({textAdded:ke.string,didDelete:this.selectionIsExpanded()}),(to=this.responder)===null||to===void 0||to.insertString(ke.string),this.requestRender(),(io=this.delegate)===null||io===void 0||io.inputControllerDidPaste(ke)}else if(Hn){var uo,mo,bo;ke.type="text/html",ke.html=Hn,(uo=this.delegate)===null||uo===void 0||uo.inputControllerWillPaste(ke),(mo=this.responder)===null||mo===void 0||mo.insertHTML(ke.html),this.requestRender(),(bo=this.delegate)===null||bo===void 0||bo.inputControllerDidPaste(ke)}else if(Array.from(Ce.types).includes("Files")){var Oo,wo;const Bo=(Oo=Ce.items)===null||Oo===void 0||(Oo=Oo[0])===null||Oo===void 0||(wo=Oo.getAsFile)===null||wo===void 0?void 0:wo.call(Oo);if(Bo){var $o,Do,xo;const Vo=Zi(Bo);!Bo.name&&Vo&&(Bo.name="pasted-file-".concat(++Yi,".").concat(Vo)),ke.type="File",ke.file=Bo,($o=this.delegate)===null||$o===void 0||$o.inputControllerWillAttachFiles(),(Do=this.responder)===null||Do===void 0||Do.insertFile(ke.file),this.requestRender(),(xo=this.delegate)===null||xo===void 0||xo.inputControllerDidPaste(ke)}}_n.preventDefault()},compositionstart(_n){return this.getCompositionInput().start(_n.data)},compositionupdate(_n){return this.getCompositionInput().update(_n.data)},compositionend(_n){return this.getCompositionInput().end(_n.data)},beforeinput(_n){this.inputSummary.didInput=!0},input(_n){return this.inputSummary.didInput=!0,_n.stopPropagation()}}),Re(Qi,"keys",{backspace(_n){var Ce;return(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),this.deleteInDirection("backward",_n)},delete(_n){var Ce;return(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),this.deleteInDirection("forward",_n)},return(_n){var Ce,ke;return this.setInputSummary({preferDocument:!0}),(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),(ke=this.responder)===null||ke===void 0?void 0:ke.insertLineBreak()},tab(_n){var Ce,ke;(Ce=this.responder)!==null&&Ce!==void 0&&Ce.canIncreaseNestingLevel()&&((ke=this.responder)===null||ke===void 0||ke.increaseNestingLevel(),this.requestRender(),_n.preventDefault())},left(_n){var Ce;if(this.selectionIsInCursorTarget())return _n.preventDefault(),(Ce=this.responder)===null||Ce===void 0?void 0:Ce.moveCursorInDirection("backward")},right(_n){var Ce;if(this.selectionIsInCursorTarget())return _n.preventDefault(),(Ce=this.responder)===null||Ce===void 0?void 0:Ce.moveCursorInDirection("forward")},control:{d(_n){var Ce;return(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),this.deleteInDirection("forward",_n)},h(_n){var Ce;return(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),this.deleteInDirection("backward",_n)},o(_n){var Ce,ke;return _n.preventDefault(),(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),(ke=this.responder)===null||ke===void 0||ke.insertString(` +`,{updatePosition:!1}),this.requestRender()}},shift:{return(_n){var Ce,ke;(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),(ke=this.responder)===null||ke===void 0||ke.insertString(` +`),this.requestRender(),_n.preventDefault()},tab(_n){var Ce,ke;(Ce=this.responder)!==null&&Ce!==void 0&&Ce.canDecreaseNestingLevel()&&((ke=this.responder)===null||ke===void 0||ke.decreaseNestingLevel(),this.requestRender(),_n.preventDefault())},left(_n){if(this.selectionIsInCursorTarget())return _n.preventDefault(),this.expandSelectionInDirection("backward")},right(_n){if(this.selectionIsInCursorTarget())return _n.preventDefault(),this.expandSelectionInDirection("forward")}},alt:{backspace(_n){var Ce;return this.setInputSummary({preferDocument:!1}),(Ce=this.delegate)===null||Ce===void 0?void 0:Ce.inputControllerWillPerformTyping()}},meta:{backspace(_n){var Ce;return this.setInputSummary({preferDocument:!1}),(Ce=this.delegate)===null||Ce===void 0?void 0:Ce.inputControllerWillPerformTyping()}}}),Qi.proxyMethod("responder?.getSelectedRange"),Qi.proxyMethod("responder?.setSelectedRange"),Qi.proxyMethod("responder?.expandSelectionInDirection"),Qi.proxyMethod("responder?.selectionIsInCursorTarget"),Qi.proxyMethod("responder?.selectionIsExpanded");const Zi=_n=>{var Ce;return(Ce=_n.type)===null||Ce===void 0||(Ce=Ce.match(/\/(\w+)$/))===null||Ce===void 0?void 0:Ce[1]},tn=!((Gi=" ".codePointAt)===null||Gi===void 0||!Gi.call(" ",0)),en=function(_n){if(_n.key&&tn&&_n.key.codePointAt(0)===_n.keyCode)return _n.key;{let Ce;if(_n.which===null?Ce=_n.keyCode:_n.which!==0&&_n.charCode!==0&&(Ce=_n.charCode),Ce!=null&&Xi[Ce]!=="escape")return X.fromCodepoints([Ce]).toString()}},nn=function(_n){const Ce=_n.clipboardData;if(Ce){if(Ce.types.includes("text/html")){for(const ke of Ce.types){const $n=/^CorePasteboardFlavorType/.test(ke),Hn=/^dyn\./.test(ke)&&Ce.getData(ke);if($n||Hn)return!0}return!1}{const ke=Ce.types.includes("com.apple.webarchive"),$n=Ce.types.includes("com.apple.flat-rtfd");return ke||$n}}};class rn extends H{constructor(Ce){super(...arguments),this.inputController=Ce,this.responder=this.inputController.responder,this.delegate=this.inputController.delegate,this.inputSummary=this.inputController.inputSummary,this.data={}}start(Ce){if(this.data.start=Ce,this.isSignificant()){var ke,$n;this.inputSummary.eventName==="keypress"&&this.inputSummary.textAdded&&(($n=this.responder)===null||$n===void 0||$n.deleteInDirection("left")),this.selectionIsExpanded()||(this.insertPlaceholder(),this.requestRender()),this.range=(ke=this.responder)===null||ke===void 0?void 0:ke.getSelectedRange()}}update(Ce){if(this.data.update=Ce,this.isSignificant()){const ke=this.selectPlaceholder();ke&&(this.forgetPlaceholder(),this.range=ke)}}end(Ce){return this.data.end=Ce,this.isSignificant()?(this.forgetPlaceholder(),this.canApplyToDocument()?(this.setInputSummary({preferDocument:!0,didInput:!1}),(ke=this.delegate)===null||ke===void 0||ke.inputControllerWillPerformTyping(),($n=this.responder)===null||$n===void 0||$n.setSelectedRange(this.range),(Hn=this.responder)===null||Hn===void 0||Hn.insertString(this.data.end),(zn=this.responder)===null||zn===void 0?void 0:zn.setSelectedRange(this.range[0]+this.data.end.length)):this.data.start!=null||this.data.update!=null?(this.requestReparse(),this.inputController.reset()):void 0):this.inputController.reset();var ke,$n,Hn,zn}getEndData(){return this.data.end}isEnded(){return this.getEndData()!=null}isSignificant(){return!$i.composesExistingText||this.inputSummary.didInput}canApplyToDocument(){var Ce,ke;return((Ce=this.data.start)===null||Ce===void 0?void 0:Ce.length)===0&&((ke=this.data.end)===null||ke===void 0?void 0:ke.length)>0&&this.range}}rn.proxyMethod("inputController.setInputSummary"),rn.proxyMethod("inputController.requestRender"),rn.proxyMethod("inputController.requestReparse"),rn.proxyMethod("responder?.selectionIsExpanded"),rn.proxyMethod("responder?.insertPlaceholder"),rn.proxyMethod("responder?.selectPlaceholder"),rn.proxyMethod("responder?.forgetPlaceholder");class on extends Ki{constructor(){super(...arguments),this.render=this.render.bind(this)}elementDidMutate(){return this.scheduledRender?this.composing?(Ce=this.delegate)===null||Ce===void 0||(ke=Ce.inputControllerDidAllowUnhandledInput)===null||ke===void 0?void 0:ke.call(Ce):void 0:this.reparse();var Ce,ke}scheduleRender(){return this.scheduledRender?this.scheduledRender:this.scheduledRender=requestAnimationFrame(this.render)}render(){var Ce,ke;cancelAnimationFrame(this.scheduledRender),this.scheduledRender=null,this.composing||(ke=this.delegate)===null||ke===void 0||ke.render(),(Ce=this.afterRender)===null||Ce===void 0||Ce.call(this),this.afterRender=null}reparse(){var Ce;return(Ce=this.delegate)===null||Ce===void 0?void 0:Ce.reparse()}insertString(){var Ce;let ke=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",$n=arguments.length>1?arguments[1]:void 0;return(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),this.withTargetDOMRange(function(){var Hn;return(Hn=this.responder)===null||Hn===void 0?void 0:Hn.insertString(ke,$n)})}toggleAttributeIfSupported(Ce){var ke;if(dt().includes(Ce))return(ke=this.delegate)===null||ke===void 0||ke.inputControllerWillPerformFormatting(Ce),this.withTargetDOMRange(function(){var $n;return($n=this.responder)===null||$n===void 0?void 0:$n.toggleCurrentAttribute(Ce)})}activateAttributeIfSupported(Ce,ke){var $n;if(dt().includes(Ce))return($n=this.delegate)===null||$n===void 0||$n.inputControllerWillPerformFormatting(Ce),this.withTargetDOMRange(function(){var Hn;return(Hn=this.responder)===null||Hn===void 0?void 0:Hn.setCurrentAttribute(Ce,ke)})}deleteInDirection(Ce){let{recordUndoEntry:ke}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{recordUndoEntry:!0};var $n;ke&&(($n=this.delegate)===null||$n===void 0||$n.inputControllerWillPerformTyping());const Hn=()=>{var Zn;return(Zn=this.responder)===null||Zn===void 0?void 0:Zn.deleteInDirection(Ce)},zn=this.getTargetDOMRange({minLength:this.composing?1:2});return zn?this.withTargetDOMRange(zn,Hn):Hn()}withTargetDOMRange(Ce,ke){var $n;return typeof Ce=="function"&&(ke=Ce,Ce=this.getTargetDOMRange()),Ce?($n=this.responder)===null||$n===void 0?void 0:$n.withTargetDOMRange(Ce,ke.bind(this)):(Pt.reset(),ke.call(this))}getTargetDOMRange(){var Ce,ke;let{minLength:$n}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{minLength:0};const Hn=(Ce=(ke=this.event).getTargetRanges)===null||Ce===void 0?void 0:Ce.call(ke);if(Hn&&Hn.length){const zn=sn(Hn[0]);if($n===0||zn.toString().length>=$n)return zn}}withEvent(Ce,ke){let $n;this.event=Ce;try{$n=ke.call(this)}finally{this.event=null}return $n}}Re(on,"events",{keydown(_n){if(kt(_n)){var Ce;const ke=hn(_n);(Ce=this.delegate)!==null&&Ce!==void 0&&Ce.inputControllerDidReceiveKeyboardCommand(ke)&&_n.preventDefault()}else{let ke=_n.key;_n.altKey&&(ke+="+Alt"),_n.shiftKey&&(ke+="+Shift");const $n=this.constructor.keys[ke];if($n)return this.withEvent(_n,$n)}},paste(_n){var Ce;let ke;const $n=(Ce=_n.clipboardData)===null||Ce===void 0?void 0:Ce.getData("URL");return cn(_n)?(_n.preventDefault(),this.attachFiles(_n.clipboardData.files)):un(_n)?(_n.preventDefault(),ke={type:"text/plain",string:_n.clipboardData.getData("text/plain")},(Hn=this.delegate)===null||Hn===void 0||Hn.inputControllerWillPaste(ke),(zn=this.responder)===null||zn===void 0||zn.insertString(ke.string),this.render(),(Zn=this.delegate)===null||Zn===void 0?void 0:Zn.inputControllerDidPaste(ke)):$n?(_n.preventDefault(),ke={type:"text/html",html:this.createLinkHTML($n)},(qn=this.delegate)===null||qn===void 0||qn.inputControllerWillPaste(ke),(Yn=this.responder)===null||Yn===void 0||Yn.insertHTML(ke.html),this.render(),(Jn=this.delegate)===null||Jn===void 0?void 0:Jn.inputControllerDidPaste(ke)):void 0;var Hn,zn,Zn,qn,Yn,Jn},beforeinput(_n){const Ce=this.constructor.inputTypes[_n.inputType];Ce&&(this.withEvent(_n,Ce),this.scheduleRender())},input(_n){Pt.reset()},dragstart(_n){var Ce,ke;(Ce=this.responder)!==null&&Ce!==void 0&&Ce.selectionContainsAttachments()&&(_n.dataTransfer.setData("application/x-trix-dragging",!0),this.dragging={range:(ke=this.responder)===null||ke===void 0?void 0:ke.getSelectedRange(),point:dn(_n)})},dragenter(_n){an(_n)&&_n.preventDefault()},dragover(_n){if(this.dragging){_n.preventDefault();const ke=dn(_n);var Ce;if(!St(ke,this.dragging.point))return this.dragging.point=ke,(Ce=this.responder)===null||Ce===void 0?void 0:Ce.setLocationRangeFromPointRange(ke)}else an(_n)&&_n.preventDefault()},drop(_n){var Ce,ke;if(this.dragging)return _n.preventDefault(),(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillMoveText(),(ke=this.responder)===null||ke===void 0||ke.moveTextFromRange(this.dragging.range),this.dragging=null,this.scheduleRender();if(an(_n)){var $n;_n.preventDefault();const Hn=dn(_n);return($n=this.responder)===null||$n===void 0||$n.setLocationRangeFromPointRange(Hn),this.attachFiles(_n.dataTransfer.files)}},dragend(){var _n;this.dragging&&((_n=this.responder)===null||_n===void 0||_n.setSelectedRange(this.dragging.range),this.dragging=null)},compositionend(_n){this.composing&&(this.composing=!1,a.recentAndroid||this.scheduleRender())}}),Re(on,"keys",{ArrowLeft(){var _n,Ce;if((_n=this.responder)!==null&&_n!==void 0&&_n.shouldManageMovingCursorInDirection("backward"))return this.event.preventDefault(),(Ce=this.responder)===null||Ce===void 0?void 0:Ce.moveCursorInDirection("backward")},ArrowRight(){var _n,Ce;if((_n=this.responder)!==null&&_n!==void 0&&_n.shouldManageMovingCursorInDirection("forward"))return this.event.preventDefault(),(Ce=this.responder)===null||Ce===void 0?void 0:Ce.moveCursorInDirection("forward")},Backspace(){var _n,Ce,ke;if((_n=this.responder)!==null&&_n!==void 0&&_n.shouldManageDeletingInDirection("backward"))return this.event.preventDefault(),(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillPerformTyping(),(ke=this.responder)===null||ke===void 0||ke.deleteInDirection("backward"),this.render()},Tab(){var _n,Ce;if((_n=this.responder)!==null&&_n!==void 0&&_n.canIncreaseNestingLevel())return this.event.preventDefault(),(Ce=this.responder)===null||Ce===void 0||Ce.increaseNestingLevel(),this.render()},"Tab+Shift"(){var _n,Ce;if((_n=this.responder)!==null&&_n!==void 0&&_n.canDecreaseNestingLevel())return this.event.preventDefault(),(Ce=this.responder)===null||Ce===void 0||Ce.decreaseNestingLevel(),this.render()}}),Re(on,"inputTypes",{deleteByComposition(){return this.deleteInDirection("backward",{recordUndoEntry:!1})},deleteByCut(){return this.deleteInDirection("backward")},deleteByDrag(){return this.event.preventDefault(),this.withTargetDOMRange(function(){var _n;this.deleteByDragRange=(_n=this.responder)===null||_n===void 0?void 0:_n.getSelectedRange()})},deleteCompositionText(){return this.deleteInDirection("backward",{recordUndoEntry:!1})},deleteContent(){return this.deleteInDirection("backward")},deleteContentBackward(){return this.deleteInDirection("backward")},deleteContentForward(){return this.deleteInDirection("forward")},deleteEntireSoftLine(){return this.deleteInDirection("forward")},deleteHardLineBackward(){return this.deleteInDirection("backward")},deleteHardLineForward(){return this.deleteInDirection("forward")},deleteSoftLineBackward(){return this.deleteInDirection("backward")},deleteSoftLineForward(){return this.deleteInDirection("forward")},deleteWordBackward(){return this.deleteInDirection("backward")},deleteWordForward(){return this.deleteInDirection("forward")},formatBackColor(){return this.activateAttributeIfSupported("backgroundColor",this.event.data)},formatBold(){return this.toggleAttributeIfSupported("bold")},formatFontColor(){return this.activateAttributeIfSupported("color",this.event.data)},formatFontName(){return this.activateAttributeIfSupported("font",this.event.data)},formatIndent(){var _n;if((_n=this.responder)!==null&&_n!==void 0&&_n.canIncreaseNestingLevel())return this.withTargetDOMRange(function(){var Ce;return(Ce=this.responder)===null||Ce===void 0?void 0:Ce.increaseNestingLevel()})},formatItalic(){return this.toggleAttributeIfSupported("italic")},formatJustifyCenter(){return this.toggleAttributeIfSupported("justifyCenter")},formatJustifyFull(){return this.toggleAttributeIfSupported("justifyFull")},formatJustifyLeft(){return this.toggleAttributeIfSupported("justifyLeft")},formatJustifyRight(){return this.toggleAttributeIfSupported("justifyRight")},formatOutdent(){var _n;if((_n=this.responder)!==null&&_n!==void 0&&_n.canDecreaseNestingLevel())return this.withTargetDOMRange(function(){var Ce;return(Ce=this.responder)===null||Ce===void 0?void 0:Ce.decreaseNestingLevel()})},formatRemove(){this.withTargetDOMRange(function(){for(const ke in(_n=this.responder)===null||_n===void 0?void 0:_n.getCurrentAttributes()){var _n,Ce;(Ce=this.responder)===null||Ce===void 0||Ce.removeCurrentAttribute(ke)}})},formatSetBlockTextDirection(){return this.activateAttributeIfSupported("blockDir",this.event.data)},formatSetInlineTextDirection(){return this.activateAttributeIfSupported("textDir",this.event.data)},formatStrikeThrough(){return this.toggleAttributeIfSupported("strike")},formatSubscript(){return this.toggleAttributeIfSupported("sub")},formatSuperscript(){return this.toggleAttributeIfSupported("sup")},formatUnderline(){return this.toggleAttributeIfSupported("underline")},historyRedo(){var _n;return(_n=this.delegate)===null||_n===void 0?void 0:_n.inputControllerWillPerformRedo()},historyUndo(){var _n;return(_n=this.delegate)===null||_n===void 0?void 0:_n.inputControllerWillPerformUndo()},insertCompositionText(){return this.composing=!0,this.insertString(this.event.data)},insertFromComposition(){return this.composing=!1,this.insertString(this.event.data)},insertFromDrop(){const _n=this.deleteByDragRange;var Ce;if(_n)return this.deleteByDragRange=null,(Ce=this.delegate)===null||Ce===void 0||Ce.inputControllerWillMoveText(),this.withTargetDOMRange(function(){var ke;return(ke=this.responder)===null||ke===void 0?void 0:ke.moveTextFromRange(_n)})},insertFromPaste(){const{dataTransfer:_n}=this.event,Ce={dataTransfer:_n},ke=_n.getData("URL"),$n=_n.getData("text/html");if(ke){var Hn;let Yn;this.event.preventDefault(),Ce.type="text/html";const Jn=_n.getData("public.url-name");Yn=Jn?qt(Jn).trim():ke,Ce.html=this.createLinkHTML(ke,Yn),(Hn=this.delegate)===null||Hn===void 0||Hn.inputControllerWillPaste(Ce),this.withTargetDOMRange(function(){var to;return(to=this.responder)===null||to===void 0?void 0:to.insertHTML(Ce.html)}),this.afterRender=()=>{var to;return(to=this.delegate)===null||to===void 0?void 0:to.inputControllerDidPaste(Ce)}}else if(Ct(_n)){var zn;Ce.type="text/plain",Ce.string=_n.getData("text/plain"),(zn=this.delegate)===null||zn===void 0||zn.inputControllerWillPaste(Ce),this.withTargetDOMRange(function(){var Yn;return(Yn=this.responder)===null||Yn===void 0?void 0:Yn.insertString(Ce.string)}),this.afterRender=()=>{var Yn;return(Yn=this.delegate)===null||Yn===void 0?void 0:Yn.inputControllerDidPaste(Ce)}}else if(ln(this.event)){var Zn;Ce.type="File",Ce.file=_n.files[0],(Zn=this.delegate)===null||Zn===void 0||Zn.inputControllerWillPaste(Ce),this.withTargetDOMRange(function(){var Yn;return(Yn=this.responder)===null||Yn===void 0?void 0:Yn.insertFile(Ce.file)}),this.afterRender=()=>{var Yn;return(Yn=this.delegate)===null||Yn===void 0?void 0:Yn.inputControllerDidPaste(Ce)}}else if($n){var qn;this.event.preventDefault(),Ce.type="text/html",Ce.html=$n,(qn=this.delegate)===null||qn===void 0||qn.inputControllerWillPaste(Ce),this.withTargetDOMRange(function(){var Yn;return(Yn=this.responder)===null||Yn===void 0?void 0:Yn.insertHTML(Ce.html)}),this.afterRender=()=>{var Yn;return(Yn=this.delegate)===null||Yn===void 0?void 0:Yn.inputControllerDidPaste(Ce)}}},insertFromYank(){return this.insertString(this.event.data)},insertLineBreak(){return this.insertString(` +`)},insertLink(){return this.activateAttributeIfSupported("href",this.event.data)},insertOrderedList(){return this.toggleAttributeIfSupported("number")},insertParagraph(){var _n;return(_n=this.delegate)===null||_n===void 0||_n.inputControllerWillPerformTyping(),this.withTargetDOMRange(function(){var Ce;return(Ce=this.responder)===null||Ce===void 0?void 0:Ce.insertLineBreak()})},insertReplacementText(){const _n=this.event.dataTransfer.getData("text/plain"),Ce=this.event.getTargetRanges()[0];this.withTargetDOMRange(Ce,()=>{this.insertString(_n,{updatePosition:!1})})},insertText(){var _n;return this.insertString(this.event.data||((_n=this.event.dataTransfer)===null||_n===void 0?void 0:_n.getData("text/plain")))},insertTranspose(){return this.insertString(this.event.data)},insertUnorderedList(){return this.toggleAttributeIfSupported("bullet")}});const sn=function(_n){const Ce=document.createRange();return Ce.setStart(_n.startContainer,_n.startOffset),Ce.setEnd(_n.endContainer,_n.endOffset),Ce},an=_n=>{var Ce;return Array.from(((Ce=_n.dataTransfer)===null||Ce===void 0?void 0:Ce.types)||[]).includes("Files")},ln=_n=>{var Ce;return((Ce=_n.dataTransfer.files)===null||Ce===void 0?void 0:Ce[0])&&!cn(_n)&&!(ke=>{let{dataTransfer:$n}=ke;return $n.types.includes("Files")&&$n.types.includes("text/html")&&$n.getData("text/html").includes("urn:schemas-microsoft-com:office:office")})(_n)},cn=function(_n){const Ce=_n.clipboardData;if(Ce)return Array.from(Ce.types).filter(ke=>ke.match(/file/i)).length===Ce.types.length&&Ce.files.length>=1},un=function(_n){const Ce=_n.clipboardData;if(Ce)return Ce.types.includes("text/plain")&&Ce.types.length===1},hn=function(_n){const Ce=[];return _n.altKey&&Ce.push("alt"),_n.shiftKey&&Ce.push("shift"),Ce.push(_n.key),Ce},dn=_n=>({x:_n.clientX,y:_n.clientY}),gn="[data-trix-attribute]",mn="[data-trix-action]",pn="".concat(gn,", ").concat(mn),fn="[data-trix-dialog]",bn="".concat(fn,"[data-trix-active]"),vn="".concat(fn," [data-trix-method]"),An="".concat(fn," [data-trix-input]"),xn=(_n,Ce)=>(Ce||(Ce=Cn(_n)),_n.querySelector("[data-trix-input][name='".concat(Ce,"']"))),yn=_n=>_n.getAttribute("data-trix-action"),Cn=_n=>_n.getAttribute("data-trix-attribute")||_n.getAttribute("data-trix-dialog-attribute");class kn extends H{constructor(Ce){super(Ce),this.didClickActionButton=this.didClickActionButton.bind(this),this.didClickAttributeButton=this.didClickAttributeButton.bind(this),this.didClickDialogButton=this.didClickDialogButton.bind(this),this.didKeyDownDialogInput=this.didKeyDownDialogInput.bind(this),this.element=Ce,this.attributes={},this.actions={},this.resetDialogInputs(),f("mousedown",{onElement:this.element,matchingSelector:mn,withCallback:this.didClickActionButton}),f("mousedown",{onElement:this.element,matchingSelector:gn,withCallback:this.didClickAttributeButton}),f("click",{onElement:this.element,matchingSelector:pn,preventDefault:!0}),f("click",{onElement:this.element,matchingSelector:vn,withCallback:this.didClickDialogButton}),f("keydown",{onElement:this.element,matchingSelector:An,withCallback:this.didKeyDownDialogInput})}didClickActionButton(Ce,ke){var $n;($n=this.delegate)===null||$n===void 0||$n.toolbarDidClickButton(),Ce.preventDefault();const Hn=yn(ke);return this.getDialog(Hn)?this.toggleDialog(Hn):(zn=this.delegate)===null||zn===void 0?void 0:zn.toolbarDidInvokeAction(Hn,ke);var zn}didClickAttributeButton(Ce,ke){var $n;($n=this.delegate)===null||$n===void 0||$n.toolbarDidClickButton(),Ce.preventDefault();const Hn=Cn(ke);var zn;return this.getDialog(Hn)?this.toggleDialog(Hn):(zn=this.delegate)===null||zn===void 0||zn.toolbarDidToggleAttribute(Hn),this.refreshAttributeButtons()}didClickDialogButton(Ce,ke){const $n=A(ke,{matchingSelector:fn});return this[ke.getAttribute("data-trix-method")].call(this,$n)}didKeyDownDialogInput(Ce,ke){if(Ce.keyCode===13){Ce.preventDefault();const $n=ke.getAttribute("name"),Hn=this.getDialog($n);this.setAttribute(Hn)}if(Ce.keyCode===27)return Ce.preventDefault(),this.hideDialog()}updateActions(Ce){return this.actions=Ce,this.refreshActionButtons()}refreshActionButtons(){return this.eachActionButton((Ce,ke)=>{Ce.disabled=this.actions[ke]===!1})}eachActionButton(Ce){return Array.from(this.element.querySelectorAll(mn)).map(ke=>Ce(ke,yn(ke)))}updateAttributes(Ce){return this.attributes=Ce,this.refreshAttributeButtons()}refreshAttributeButtons(){return this.eachAttributeButton((Ce,ke)=>(Ce.disabled=this.attributes[ke]===!1,this.attributes[ke]||this.dialogIsVisible(ke)?(Ce.setAttribute("data-trix-active",""),Ce.classList.add("trix-active")):(Ce.removeAttribute("data-trix-active"),Ce.classList.remove("trix-active"))))}eachAttributeButton(Ce){return Array.from(this.element.querySelectorAll(gn)).map(ke=>Ce(ke,Cn(ke)))}applyKeyboardCommand(Ce){const ke=JSON.stringify(Ce.sort());for(const $n of Array.from(this.element.querySelectorAll("[data-trix-key]"))){const Hn=$n.getAttribute("data-trix-key").split("+");if(JSON.stringify(Hn.sort())===ke)return b("mousedown",{onElement:$n}),!0}return!1}dialogIsVisible(Ce){const ke=this.getDialog(Ce);if(ke)return ke.hasAttribute("data-trix-active")}toggleDialog(Ce){return this.dialogIsVisible(Ce)?this.hideDialog():this.showDialog(Ce)}showDialog(Ce){var ke,$n;this.hideDialog(),(ke=this.delegate)===null||ke===void 0||ke.toolbarWillShowDialog();const Hn=this.getDialog(Ce);Hn.setAttribute("data-trix-active",""),Hn.classList.add("trix-active"),Array.from(Hn.querySelectorAll("input[disabled]")).forEach(Zn=>{Zn.removeAttribute("disabled")});const zn=Cn(Hn);if(zn){const Zn=xn(Hn,Ce);Zn&&(Zn.value=this.attributes[zn]||"",Zn.select())}return($n=this.delegate)===null||$n===void 0?void 0:$n.toolbarDidShowDialog(Ce)}setAttribute(Ce){const ke=Cn(Ce),$n=xn(Ce,ke);return $n.willValidate&&!$n.checkValidity()?($n.setAttribute("data-trix-validate",""),$n.classList.add("trix-validate"),$n.focus()):((Hn=this.delegate)===null||Hn===void 0||Hn.toolbarDidUpdateAttribute(ke,$n.value),this.hideDialog());var Hn}removeAttribute(Ce){var ke;const $n=Cn(Ce);return(ke=this.delegate)===null||ke===void 0||ke.toolbarDidRemoveAttribute($n),this.hideDialog()}hideDialog(){const Ce=this.element.querySelector(bn);var ke;if(Ce)return Ce.removeAttribute("data-trix-active"),Ce.classList.remove("trix-active"),this.resetDialogInputs(),(ke=this.delegate)===null||ke===void 0?void 0:ke.toolbarDidHideDialog(($n=>$n.getAttribute("data-trix-dialog"))(Ce))}resetDialogInputs(){Array.from(this.element.querySelectorAll(An)).forEach(Ce=>{Ce.setAttribute("disabled","disabled"),Ce.removeAttribute("data-trix-validate"),Ce.classList.remove("trix-validate")})}getDialog(Ce){return this.element.querySelector("[data-trix-dialog=".concat(Ce,"]"))}}class Rn extends Oi{constructor(Ce){let{editorElement:ke,document:$n,html:Hn}=Ce;super(...arguments),this.editorElement=ke,this.selectionManager=new Li(this.editorElement),this.selectionManager.delegate=this,this.composition=new gi,this.composition.delegate=this,this.attachmentManager=new hi(this.composition.getAttachments()),this.attachmentManager.delegate=this,this.inputController=M.getLevel()===2?new on(this.editorElement):new Qi(this.editorElement),this.inputController.delegate=this,this.inputController.responder=this.composition,this.compositionController=new Ni(this.editorElement,this.composition),this.compositionController.delegate=this,this.toolbarController=new kn(this.editorElement.toolbarElement),this.toolbarController.delegate=this,this.editor=new xi(this.composition,this.selectionManager,this.editorElement),$n?this.editor.loadDocument($n):this.editor.loadHTML(Hn)}registerSelectionManager(){return Pt.registerSelectionManager(this.selectionManager)}unregisterSelectionManager(){return Pt.unregisterSelectionManager(this.selectionManager)}render(){return this.compositionController.render()}reparse(){return this.composition.replaceHTML(this.editorElement.innerHTML)}compositionDidChangeDocument(Ce){if(this.notifyEditorElement("document-change"),!this.handlingInput)return this.render()}compositionDidChangeCurrentAttributes(Ce){return this.currentAttributes=Ce,this.toolbarController.updateAttributes(this.currentAttributes),this.updateCurrentActions(),this.notifyEditorElement("attributes-change",{attributes:this.currentAttributes})}compositionDidPerformInsertionAtRange(Ce){this.pasting&&(this.pastedRange=Ce)}compositionShouldAcceptFile(Ce){return this.notifyEditorElement("file-accept",{file:Ce})}compositionDidAddAttachment(Ce){const ke=this.attachmentManager.manageAttachment(Ce);return this.notifyEditorElement("attachment-add",{attachment:ke})}compositionDidEditAttachment(Ce){this.compositionController.rerenderViewForObject(Ce);const ke=this.attachmentManager.manageAttachment(Ce);return this.notifyEditorElement("attachment-edit",{attachment:ke}),this.notifyEditorElement("change")}compositionDidChangeAttachmentPreviewURL(Ce){return this.compositionController.invalidateViewForObject(Ce),this.notifyEditorElement("change")}compositionDidRemoveAttachment(Ce){const ke=this.attachmentManager.unmanageAttachment(Ce);return this.notifyEditorElement("attachment-remove",{attachment:ke})}compositionDidStartEditingAttachment(Ce,ke){return this.attachmentLocationRange=this.composition.document.getLocationRangeOfAttachment(Ce),this.compositionController.installAttachmentEditorForAttachment(Ce,ke),this.selectionManager.setLocationRange(this.attachmentLocationRange)}compositionDidStopEditingAttachment(Ce){this.compositionController.uninstallAttachmentEditor(),this.attachmentLocationRange=null}compositionDidRequestChangingSelectionToLocationRange(Ce){if(!this.loadingSnapshot||this.isFocused())return this.requestedLocationRange=Ce,this.compositionRevisionWhenLocationRangeRequested=this.composition.revision,this.handlingInput?void 0:this.render()}compositionWillLoadSnapshot(){this.loadingSnapshot=!0}compositionDidLoadSnapshot(){this.compositionController.refreshViewCache(),this.render(),this.loadingSnapshot=!1}getSelectionManager(){return this.selectionManager}attachmentManagerDidRequestRemovalOfAttachment(Ce){return this.removeAttachment(Ce)}compositionControllerWillSyncDocumentView(){return this.inputController.editorWillSyncDocumentView(),this.selectionManager.lock(),this.selectionManager.clearSelection()}compositionControllerDidSyncDocumentView(){return this.inputController.editorDidSyncDocumentView(),this.selectionManager.unlock(),this.updateCurrentActions(),this.notifyEditorElement("sync")}compositionControllerDidRender(){this.requestedLocationRange&&(this.compositionRevisionWhenLocationRangeRequested===this.composition.revision&&this.selectionManager.setLocationRange(this.requestedLocationRange),this.requestedLocationRange=null,this.compositionRevisionWhenLocationRangeRequested=null),this.renderedCompositionRevision!==this.composition.revision&&(this.runEditorFilters(),this.composition.updateCurrentAttributes(),this.notifyEditorElement("render")),this.renderedCompositionRevision=this.composition.revision}compositionControllerDidFocus(){return this.isFocusedInvisibly()&&this.setLocationRange({index:0,offset:0}),this.toolbarController.hideDialog(),this.notifyEditorElement("focus")}compositionControllerDidBlur(){return this.notifyEditorElement("blur")}compositionControllerDidSelectAttachment(Ce,ke){return this.toolbarController.hideDialog(),this.composition.editAttachment(Ce,ke)}compositionControllerDidRequestDeselectingAttachment(Ce){const ke=this.attachmentLocationRange||this.composition.document.getLocationRangeOfAttachment(Ce);return this.selectionManager.setLocationRange(ke[1])}compositionControllerWillUpdateAttachment(Ce){return this.editor.recordUndoEntry("Edit Attachment",{context:Ce.id,consolidatable:!0})}compositionControllerDidRequestRemovalOfAttachment(Ce){return this.removeAttachment(Ce)}inputControllerWillHandleInput(){this.handlingInput=!0,this.requestedRender=!1}inputControllerDidRequestRender(){this.requestedRender=!0}inputControllerDidHandleInput(){if(this.handlingInput=!1,this.requestedRender)return this.requestedRender=!1,this.render()}inputControllerDidAllowUnhandledInput(){return this.notifyEditorElement("change")}inputControllerDidRequestReparse(){return this.reparse()}inputControllerWillPerformTyping(){return this.recordTypingUndoEntry()}inputControllerWillPerformFormatting(Ce){return this.recordFormattingUndoEntry(Ce)}inputControllerWillCutText(){return this.editor.recordUndoEntry("Cut")}inputControllerWillPaste(Ce){return this.editor.recordUndoEntry("Paste"),this.pasting=!0,this.notifyEditorElement("before-paste",{paste:Ce})}inputControllerDidPaste(Ce){return Ce.range=this.pastedRange,this.pastedRange=null,this.pasting=null,this.notifyEditorElement("paste",{paste:Ce})}inputControllerWillMoveText(){return this.editor.recordUndoEntry("Move")}inputControllerWillAttachFiles(){return this.editor.recordUndoEntry("Drop Files")}inputControllerWillPerformUndo(){return this.editor.undo()}inputControllerWillPerformRedo(){return this.editor.redo()}inputControllerDidReceiveKeyboardCommand(Ce){return this.toolbarController.applyKeyboardCommand(Ce)}inputControllerDidStartDrag(){this.locationRangeBeforeDrag=this.selectionManager.getLocationRange()}inputControllerDidReceiveDragOverPoint(Ce){return this.selectionManager.setLocationRangeFromPointRange(Ce)}inputControllerDidCancelDrag(){this.selectionManager.setLocationRange(this.locationRangeBeforeDrag),this.locationRangeBeforeDrag=null}locationRangeDidChange(Ce){return this.composition.updateCurrentAttributes(),this.updateCurrentActions(),this.attachmentLocationRange&&!wt(this.attachmentLocationRange,Ce)&&this.composition.stopEditingAttachment(),this.notifyEditorElement("selection-change")}toolbarDidClickButton(){if(!this.getLocationRange())return this.setLocationRange({index:0,offset:0})}toolbarDidInvokeAction(Ce,ke){return this.invokeAction(Ce,ke)}toolbarDidToggleAttribute(Ce){if(this.recordFormattingUndoEntry(Ce),this.composition.toggleCurrentAttribute(Ce),this.render(),!this.selectionFrozen)return this.editorElement.focus()}toolbarDidUpdateAttribute(Ce,ke){if(this.recordFormattingUndoEntry(Ce),this.composition.setCurrentAttribute(Ce,ke),this.render(),!this.selectionFrozen)return this.editorElement.focus()}toolbarDidRemoveAttribute(Ce){if(this.recordFormattingUndoEntry(Ce),this.composition.removeCurrentAttribute(Ce),this.render(),!this.selectionFrozen)return this.editorElement.focus()}toolbarWillShowDialog(Ce){return this.composition.expandSelectionForEditing(),this.freezeSelection()}toolbarDidShowDialog(Ce){return this.notifyEditorElement("toolbar-dialog-show",{dialogName:Ce})}toolbarDidHideDialog(Ce){return this.thawSelection(),this.editorElement.focus(),this.notifyEditorElement("toolbar-dialog-hide",{dialogName:Ce})}freezeSelection(){if(!this.selectionFrozen)return this.selectionManager.lock(),this.composition.freezeSelection(),this.selectionFrozen=!0,this.render()}thawSelection(){if(this.selectionFrozen)return this.composition.thawSelection(),this.selectionManager.unlock(),this.selectionFrozen=!1,this.render()}canInvokeAction(Ce){return!!this.actionIsExternal(Ce)||!((ke=this.actions[Ce])===null||ke===void 0||(ke=ke.test)===null||ke===void 0||!ke.call(this));var ke}invokeAction(Ce,ke){return this.actionIsExternal(Ce)?this.notifyEditorElement("action-invoke",{actionName:Ce,invokingElement:ke}):($n=this.actions[Ce])===null||$n===void 0||($n=$n.perform)===null||$n===void 0?void 0:$n.call(this);var $n}actionIsExternal(Ce){return/^x-./.test(Ce)}getCurrentActions(){const Ce={};for(const ke in this.actions)Ce[ke]=this.canInvokeAction(ke);return Ce}updateCurrentActions(){const Ce=this.getCurrentActions();if(!St(Ce,this.currentActions))return this.currentActions=Ce,this.toolbarController.updateActions(this.currentActions),this.notifyEditorElement("actions-change",{actions:this.currentActions})}runEditorFilters(){let Ce=this.composition.getSnapshot();if(Array.from(this.editor.filters).forEach(Hn=>{const{document:zn,selectedRange:Zn}=Ce;Ce=Hn.call(this.editor,Ce)||{},Ce.document||(Ce.document=zn),Ce.selectedRange||(Ce.selectedRange=Zn)}),ke=Ce,$n=this.composition.getSnapshot(),!wt(ke.selectedRange,$n.selectedRange)||!ke.document.isEqualTo($n.document))return this.composition.loadSnapshot(Ce);var ke,$n}updateInputElement(){const Ce=function(ke,$n){const Hn=li[$n];if(Hn)return Hn(ke);throw new Error("unknown content type: ".concat($n))}(this.compositionController.getSerializableElement(),"text/html");return this.editorElement.setInputElementValue(Ce)}notifyEditorElement(Ce,ke){switch(Ce){case"document-change":this.documentChangedSinceLastRender=!0;break;case"render":this.documentChangedSinceLastRender&&(this.documentChangedSinceLastRender=!1,this.notifyEditorElement("change"));break;case"change":case"attachment-add":case"attachment-edit":case"attachment-remove":this.updateInputElement()}return this.editorElement.notify(Ce,ke)}removeAttachment(Ce){return this.editor.recordUndoEntry("Delete Attachment"),this.composition.removeAttachment(Ce),this.render()}recordFormattingUndoEntry(Ce){const ke=gt(Ce),$n=this.selectionManager.getLocationRange();if(ke||!Dt($n))return this.editor.recordUndoEntry("Formatting",{context:this.getUndoContext(),consolidatable:!0})}recordTypingUndoEntry(){return this.editor.recordUndoEntry("Typing",{context:this.getUndoContext(this.currentAttributes),consolidatable:!0})}getUndoContext(){for(var Ce=arguments.length,ke=new Array(Ce),$n=0;$n0?Math.floor(new Date().getTime()/q.interval):0}isFocused(){var Ce;return this.editorElement===((Ce=this.editorElement.ownerDocument)===null||Ce===void 0?void 0:Ce.activeElement)}isFocusedInvisibly(){return this.isFocused()&&!this.getLocationRange()}get actions(){return this.constructor.actions}}Re(Rn,"actions",{undo:{test(){return this.editor.canUndo()},perform(){return this.editor.undo()}},redo:{test(){return this.editor.canRedo()},perform(){return this.editor.redo()}},link:{test(){return this.editor.canActivateAttribute("href")}},increaseNestingLevel:{test(){return this.editor.canIncreaseNestingLevel()},perform(){return this.editor.increaseNestingLevel()&&this.render()}},decreaseNestingLevel:{test(){return this.editor.canDecreaseNestingLevel()},perform(){return this.editor.decreaseNestingLevel()&&this.render()}},attachFiles:{test:()=>!0,perform(){return M.pickFiles(this.editor.insertFiles)}}}),Rn.proxyMethod("getSelectionManager().setLocationRange"),Rn.proxyMethod("getSelectionManager().getLocationRange");var En=Object.freeze({__proto__:null,AttachmentEditorController:Ii,CompositionController:Ni,Controller:Oi,EditorController:Rn,InputController:Ki,Level0InputController:Qi,Level2InputController:on,ToolbarController:kn}),Sn=Object.freeze({__proto__:null,MutationObserver:Ui,SelectionChangeObserver:Ft}),Ln=Object.freeze({__proto__:null,FileVerificationOperation:Vi,ImagePreloadOperation:Le});bt("trix-toolbar",`%t { + display: block; +} + +%t { + white-space: nowrap; +} + +%t [data-trix-dialog] { + display: none; +} + +%t [data-trix-dialog][data-trix-active] { + display: block; +} + +%t [data-trix-dialog] [data-trix-validate]:invalid { + background-color: #ffdddd; +}`);class Dn extends HTMLElement{connectedCallback(){this.innerHTML===""&&(this.innerHTML=U.getDefaultHTML())}}let wn=0;const Tn=function(_n){if(!_n.hasAttribute("contenteditable"))return _n.setAttribute("contenteditable",""),function(Ce){let ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return ke.times=1,f(Ce,ke)}("focus",{onElement:_n,withCallback:()=>Bn(_n)})},Bn=function(_n){return Fn(_n),Pn()},Fn=function(_n){var Ce,ke;if((Ce=(ke=document).queryCommandSupported)!==null&&Ce!==void 0&&Ce.call(ke,"enableObjectResizing"))return document.execCommand("enableObjectResizing",!1,!1),f("mscontrolselect",{onElement:_n,preventDefault:!0})},Pn=function(_n){var Ce,ke;if((Ce=(ke=document).queryCommandSupported)!==null&&Ce!==void 0&&Ce.call(ke,"DefaultParagraphSeparator")){const{tagName:$n}=n.default;if(["div","p"].includes($n))return document.execCommand("DefaultParagraphSeparator",!1,$n)}},In=a.forcesObjectResizing?{display:"inline",width:"auto"}:{display:"inline-block",width:"1px"};bt("trix-editor",`%t { + display: block; +} + +%t:empty::before { + content: attr(placeholder); + color: graytext; + cursor: text; + pointer-events: none; + white-space: pre-line; +} + +%t a[contenteditable=false] { + cursor: text; +} + +%t img { + max-width: 100%; + height: auto; +} + +%t `.concat(e,` figcaption textarea { + resize: none; +} + +%t `).concat(e,` figcaption textarea.trix-autoresize-clone { + position: absolute; + left: -9999px; + max-height: 0px; +} + +%t `).concat(e,` figcaption[data-trix-placeholder]:empty::before { + content: attr(data-trix-placeholder); + color: graytext; +} + +%t [data-trix-cursor-target] { + display: `).concat(In.display,` !important; + width: `).concat(In.width,` !important; + padding: 0 !important; + margin: 0 !important; + border: none !important; +} + +%t [data-trix-cursor-target=left] { + vertical-align: top !important; + margin-left: -1px !important; +} + +%t [data-trix-cursor-target=right] { + vertical-align: bottom !important; + margin-right: -1px !important; +}`));class Nn extends HTMLElement{get trixId(){return this.hasAttribute("trix-id")?this.getAttribute("trix-id"):(this.setAttribute("trix-id",++wn),this.trixId)}get labels(){const Ce=[];this.id&&this.ownerDocument&&Ce.push(...Array.from(this.ownerDocument.querySelectorAll("label[for='".concat(this.id,"']"))||[]));const ke=A(this,{matchingSelector:"label"});return ke&&[this,null].includes(ke.control)&&Ce.push(ke),Ce}get toolbarElement(){var Ce;if(this.hasAttribute("toolbar"))return(Ce=this.ownerDocument)===null||Ce===void 0?void 0:Ce.getElementById(this.getAttribute("toolbar"));if(this.parentNode){const ke="trix-toolbar-".concat(this.trixId);this.setAttribute("toolbar",ke);const $n=S$1("trix-toolbar",{id:ke});return this.parentNode.insertBefore($n,this),$n}}get form(){var Ce;return(Ce=this.inputElement)===null||Ce===void 0?void 0:Ce.form}get inputElement(){var Ce;if(this.hasAttribute("input"))return(Ce=this.ownerDocument)===null||Ce===void 0?void 0:Ce.getElementById(this.getAttribute("input"));if(this.parentNode){const ke="trix-input-".concat(this.trixId);this.setAttribute("input",ke);const $n=S$1("input",{type:"hidden",id:ke});return this.parentNode.insertBefore($n,this.nextElementSibling),$n}}get editor(){var Ce;return(Ce=this.editorController)===null||Ce===void 0?void 0:Ce.editor}get name(){var Ce;return(Ce=this.inputElement)===null||Ce===void 0?void 0:Ce.name}get value(){var Ce;return(Ce=this.inputElement)===null||Ce===void 0?void 0:Ce.value}set value(Ce){var ke;this.defaultValue=Ce,(ke=this.editor)===null||ke===void 0||ke.loadHTML(this.defaultValue)}notify(Ce,ke){if(this.editorController)return b("trix-".concat(Ce),{onElement:this,attributes:ke})}setInputElementValue(Ce){this.inputElement&&(this.inputElement.value=Ce)}connectedCallback(){this.hasAttribute("data-trix-internal")||(Tn(this),function(Ce){Ce.hasAttribute("role")||Ce.setAttribute("role","textbox")}(this),function(Ce){if(Ce.hasAttribute("aria-label")||Ce.hasAttribute("aria-labelledby"))return;const ke=function(){const $n=Array.from(Ce.labels).map(zn=>{if(!zn.contains(Ce))return zn.textContent}).filter(zn=>zn),Hn=$n.join(" ");return Hn?Ce.setAttribute("aria-label",Hn):Ce.removeAttribute("aria-label")};ke(),f("focus",{onElement:Ce,withCallback:ke})}(this),this.editorController||(b("trix-before-initialize",{onElement:this}),this.editorController=new Rn({editorElement:this,html:this.defaultValue=this.value}),requestAnimationFrame(()=>b("trix-initialize",{onElement:this}))),this.editorController.registerSelectionManager(),this.registerResetListener(),this.registerClickListener(),function(Ce){!document.querySelector(":focus")&&Ce.hasAttribute("autofocus")&&document.querySelector("[autofocus]")===Ce&&Ce.focus()}(this))}disconnectedCallback(){var Ce;return(Ce=this.editorController)===null||Ce===void 0||Ce.unregisterSelectionManager(),this.unregisterResetListener(),this.unregisterClickListener()}registerResetListener(){return this.resetListener=this.resetBubbled.bind(this),window.addEventListener("reset",this.resetListener,!1)}unregisterResetListener(){return window.removeEventListener("reset",this.resetListener,!1)}registerClickListener(){return this.clickListener=this.clickBubbled.bind(this),window.addEventListener("click",this.clickListener,!1)}unregisterClickListener(){return window.removeEventListener("click",this.clickListener,!1)}resetBubbled(Ce){if(!Ce.defaultPrevented&&Ce.target===this.form)return this.reset()}clickBubbled(Ce){if(Ce.defaultPrevented||this.contains(Ce.target))return;const ke=A(Ce.target,{matchingSelector:"label"});return ke&&Array.from(this.labels).includes(ke)?this.focus():void 0}reset(){this.value=this.defaultValue}}const On={VERSION:t$1,config:V,core:ci,models:Di,views:wi,controllers:En,observers:Sn,operations:Ln,elements:Object.freeze({__proto__:null,TrixEditorElement:Nn,TrixToolbarElement:Dn}),filters:Object.freeze({__proto__:null,Filter:bi,attachmentGalleryFilter:vi})};Object.assign(On,Di),window.Trix=On,setTimeout(function(){customElements.get("trix-toolbar")||customElements.define("trix-toolbar",Dn),customElements.get("trix-editor")||customElements.define("trix-editor",Nn)},0);function create_fragment$k(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;return{c(){Ce=element("div"),ke=element("input"),Hn=space$3(),zn=element("trix-editor"),attr(ke,"id",$n="x-"+_n[1].name),ke.value=_n[0],attr(ke,"type","hidden"),set_custom_element_data(zn,"class","content"),set_custom_element_data(zn,"input",Zn="x-"+_n[1].name),set_custom_element_data(zn,"role","textbox"),set_custom_element_data(zn,"tabindex","0"),attr(Ce,"class","tox-wrapper")},m(Jn,to){insert$1(Jn,Ce,to),append(Ce,ke),append(Ce,Hn),append(Ce,zn),_n[5](zn),qn||(Yn=listen(zn,"trix-change",_n[3]),qn=!0)},p(Jn,[to]){to&2&&$n!==($n="x-"+Jn[1].name)&&attr(ke,"id",$n),to&1&&(ke.value=Jn[0]),to&2&&Zn!==(Zn="x-"+Jn[1].name)&&set_custom_element_data(zn,"input",Zn)},i:noop,o:noop,d(Jn){Jn&&detach(Ce),_n[5](null),qn=!1,Yn()}}}function instance$k(_n,Ce,ke){let{value:$n=""}=Ce,{field:Hn}=Ce,zn;function Zn(Jn){ke(0,$n=Jn.target.value)}function qn(Jn){if(Jn.record._file.width>0){var to=new On.Attachment({content:Jn.html});zn.editor.insertAttachment(to)}else zn.editor.insertHTML(`${Jn.record._file.originalName}`)}onMount(()=>{zn.addEventListener("trix-file-accept",Jn=>{Jn.preventDefault()})}),On.config.blockAttributes.default.breakOnReturn=!1,console.log(On.config);function Yn(Jn){binding_callbacks[Jn?"unshift":"push"](()=>{zn=Jn,ke(2,zn)})}return _n.$$set=Jn=>{"value"in Jn&&ke(0,$n=Jn.value),"field"in Jn&&ke(1,Hn=Jn.field)},[$n,Hn,zn,Zn,qn,Yn]}class Trix_1 extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$k,create_fragment$k,safe_not_equal,{value:0,field:1,insertMedia:4})}get insertMedia(){return this.$$.ctx[4]}}function create_if_block_1$8(_n){let Ce,ke,$n;function Hn(Zn){_n[11](Zn)}let zn={record:_n[3],field:_n[2],validationErrors:_n[4]};return _n[1]!==void 0&&(zn.graph=_n[1]),Ce=new RichEditorFiles({props:zn}),binding_callbacks.push(()=>bind(Ce,"graph",Hn)),Ce.$on("editor-insert",_n[7]),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&8&&(Yn.record=Zn[3]),qn&4&&(Yn.field=Zn[2]),qn&16&&(Yn.validationErrors=Zn[4]),!ke&&qn&2&&(ke=!0,Yn.graph=Zn[1],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block$d(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[6]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&64&&set_data(ke,$n[6])},d($n){$n&&detach(Ce)}}}function create_fragment$j(_n){let Ce,ke,$n,Hn,zn,Zn;function qn(io){_n[10](io)}let Yn={field:_n[2]};_n[0]!==void 0&&(Yn.value=_n[0]),ke=new Trix_1({props:Yn}),_n[9](ke),binding_callbacks.push(()=>bind(ke,"value",qn));let Jn=_n[2].collections.length>0&&create_if_block_1$8(_n),to=_n[6]&&create_if_block$d(_n);return{c(){Ce=element("div"),create_component(ke.$$.fragment),Hn=space$3(),Jn&&Jn.c(),zn=space$3(),to&&to.c(),attr(Ce,"class","mb-0")},m(io,uo){insert$1(io,Ce,uo),mount_component(ke,Ce,null),append(Ce,Hn),Jn&&Jn.m(Ce,null),append(Ce,zn),to&&to.m(Ce,null),Zn=!0},p(io,[uo]){const mo={};uo&4&&(mo.field=io[2]),!$n&&uo&1&&($n=!0,mo.value=io[0],add_flush_callback(()=>$n=!1)),ke.$set(mo),io[2].collections.length>0?Jn?(Jn.p(io,uo),uo&4&&transition_in(Jn,1)):(Jn=create_if_block_1$8(io),Jn.c(),transition_in(Jn,1),Jn.m(Ce,zn)):Jn&&(group_outros(),transition_out(Jn,1,1,()=>{Jn=null}),check_outros()),io[6]?to?to.p(io,uo):(to=create_if_block$d(io),to.c(),to.m(Ce,null)):to&&(to.d(1),to=null)},i(io){Zn||(transition_in(ke.$$.fragment,io),transition_in(Jn),Zn=!0)},o(io){transition_out(ke.$$.fragment,io),transition_out(Jn),Zn=!1},d(io){io&&detach(Ce),_n[9](null),destroy_component(ke),Jn&&Jn.d(),to&&to.d()}}}function instance$j(_n,Ce,ke){let $n,{value:Hn}=Ce,{field:zn}=Ce,{isCreateMode:Zn}=Ce,{graph:qn}=Ce,{record:Yn}=Ce,{validationErrors:Jn}=Ce,to;zn.readonly;function io(Oo){to.insertMedia(Oo.detail)}function uo(Oo){binding_callbacks[Oo?"unshift":"push"](()=>{to=Oo,ke(5,to)})}function mo(Oo){Hn=Oo,ke(0,Hn)}function bo(Oo){qn=Oo,ke(1,qn)}return _n.$$set=Oo=>{"value"in Oo&&ke(0,Hn=Oo.value),"field"in Oo&&ke(2,zn=Oo.field),"isCreateMode"in Oo&&ke(8,Zn=Oo.isCreateMode),"graph"in Oo&&ke(1,qn=Oo.graph),"record"in Oo&&ke(3,Yn=Oo.record),"validationErrors"in Oo&&ke(4,Jn=Oo.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&20&&ke(6,$n=getErrorMessage(Jn,zn.name))},[Hn,qn,zn,Yn,Jn,to,$n,io,Zn,uo,mo,bo]}class RichEditor extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$j,create_fragment$j,safe_not_equal,{value:0,field:2,isCreateMode:8,graph:1,record:3,validationErrors:4})}}class Text{lineAt(Ce){if(Ce<0||Ce>this.length)throw new RangeError(`Invalid position ${Ce} in document of length ${this.length}`);return this.lineInner(Ce,!1,1,0)}line(Ce){if(Ce<1||Ce>this.lines)throw new RangeError(`Invalid line number ${Ce} in ${this.lines}-line document`);return this.lineInner(Ce,!0,1,0)}replace(Ce,ke,$n){[Ce,ke]=clip(this,Ce,ke);let Hn=[];return this.decompose(0,Ce,Hn,2),$n.length&&$n.decompose(0,$n.length,Hn,3),this.decompose(ke,this.length,Hn,1),TextNode.from(Hn,this.length-(ke-Ce)+$n.length)}append(Ce){return this.replace(this.length,this.length,Ce)}slice(Ce,ke=this.length){[Ce,ke]=clip(this,Ce,ke);let $n=[];return this.decompose(Ce,ke,$n,0),TextNode.from($n,ke-Ce)}eq(Ce){if(Ce==this)return!0;if(Ce.length!=this.length||Ce.lines!=this.lines)return!1;let ke=this.scanIdentical(Ce,1),$n=this.length-this.scanIdentical(Ce,-1),Hn=new RawTextCursor(this),zn=new RawTextCursor(Ce);for(let Zn=ke,qn=ke;;){if(Hn.next(Zn),zn.next(Zn),Zn=0,Hn.lineBreak!=zn.lineBreak||Hn.done!=zn.done||Hn.value!=zn.value)return!1;if(qn+=Hn.value.length,Hn.done||qn>=$n)return!0}}iter(Ce=1){return new RawTextCursor(this,Ce)}iterRange(Ce,ke=this.length){return new PartialTextCursor(this,Ce,ke)}iterLines(Ce,ke){let $n;if(Ce==null)$n=this.iter();else{ke==null&&(ke=this.lines+1);let Hn=this.line(Ce).from;$n=this.iterRange(Hn,Math.max(Hn,ke==this.lines+1?this.length:ke<=1?0:this.line(ke-1).to))}return new LineCursor($n)}toString(){return this.sliceString(0)}toJSON(){let Ce=[];return this.flatten(Ce),Ce}constructor(){}static of(Ce){if(Ce.length==0)throw new RangeError("A document must have at least one line");return Ce.length==1&&!Ce[0]?Text.empty:Ce.length<=32?new TextLeaf(Ce):TextNode.from(TextLeaf.split(Ce,[]))}}class TextLeaf extends Text{constructor(Ce,ke=textLength(Ce)){super(),this.text=Ce,this.length=ke}get lines(){return this.text.length}get children(){return null}lineInner(Ce,ke,$n,Hn){for(let zn=0;;zn++){let Zn=this.text[zn],qn=Hn+Zn.length;if((ke?$n:qn)>=Ce)return new Line$1(Hn,qn,$n,Zn);Hn=qn+1,$n++}}decompose(Ce,ke,$n,Hn){let zn=Ce<=0&&ke>=this.length?this:new TextLeaf(sliceText(this.text,Ce,ke),Math.min(ke,this.length)-Math.max(0,Ce));if(Hn&1){let Zn=$n.pop(),qn=appendText(zn.text,Zn.text.slice(),0,zn.length);if(qn.length<=32)$n.push(new TextLeaf(qn,Zn.length+zn.length));else{let Yn=qn.length>>1;$n.push(new TextLeaf(qn.slice(0,Yn)),new TextLeaf(qn.slice(Yn)))}}else $n.push(zn)}replace(Ce,ke,$n){if(!($n instanceof TextLeaf))return super.replace(Ce,ke,$n);[Ce,ke]=clip(this,Ce,ke);let Hn=appendText(this.text,appendText($n.text,sliceText(this.text,0,Ce)),ke),zn=this.length+$n.length-(ke-Ce);return Hn.length<=32?new TextLeaf(Hn,zn):TextNode.from(TextLeaf.split(Hn,[]),zn)}sliceString(Ce,ke=this.length,$n=` +`){[Ce,ke]=clip(this,Ce,ke);let Hn="";for(let zn=0,Zn=0;zn<=ke&&ZnCe&&Zn&&(Hn+=$n),Cezn&&(Hn+=qn.slice(Math.max(0,Ce-zn),ke-zn)),zn=Yn+1}return Hn}flatten(Ce){for(let ke of this.text)Ce.push(ke)}scanIdentical(){return 0}static split(Ce,ke){let $n=[],Hn=-1;for(let zn of Ce)$n.push(zn),Hn+=zn.length+1,$n.length==32&&(ke.push(new TextLeaf($n,Hn)),$n=[],Hn=-1);return Hn>-1&&ke.push(new TextLeaf($n,Hn)),ke}}class TextNode extends Text{constructor(Ce,ke){super(),this.children=Ce,this.length=ke,this.lines=0;for(let $n of Ce)this.lines+=$n.lines}lineInner(Ce,ke,$n,Hn){for(let zn=0;;zn++){let Zn=this.children[zn],qn=Hn+Zn.length,Yn=$n+Zn.lines-1;if((ke?Yn:qn)>=Ce)return Zn.lineInner(Ce,ke,$n,Hn);Hn=qn+1,$n=Yn+1}}decompose(Ce,ke,$n,Hn){for(let zn=0,Zn=0;Zn<=ke&&zn=Zn){let Jn=Hn&((Zn<=Ce?1:0)|(Yn>=ke?2:0));Zn>=Ce&&Yn<=ke&&!Jn?$n.push(qn):qn.decompose(Ce-Zn,ke-Zn,$n,Jn)}Zn=Yn+1}}replace(Ce,ke,$n){if([Ce,ke]=clip(this,Ce,ke),$n.lines=zn&&ke<=qn){let Yn=Zn.replace(Ce-zn,ke-zn,$n),Jn=this.lines-Zn.lines+Yn.lines;if(Yn.lines>4&&Yn.lines>Jn>>6){let to=this.children.slice();return to[Hn]=Yn,new TextNode(to,this.length-(ke-Ce)+$n.length)}return super.replace(zn,qn,Yn)}zn=qn+1}return super.replace(Ce,ke,$n)}sliceString(Ce,ke=this.length,$n=` +`){[Ce,ke]=clip(this,Ce,ke);let Hn="";for(let zn=0,Zn=0;znCe&&zn&&(Hn+=$n),CeZn&&(Hn+=qn.sliceString(Ce-Zn,ke-Zn,$n)),Zn=Yn+1}return Hn}flatten(Ce){for(let ke of this.children)ke.flatten(Ce)}scanIdentical(Ce,ke){if(!(Ce instanceof TextNode))return 0;let $n=0,[Hn,zn,Zn,qn]=ke>0?[0,0,this.children.length,Ce.children.length]:[this.children.length-1,Ce.children.length-1,-1,-1];for(;;Hn+=ke,zn+=ke){if(Hn==Zn||zn==qn)return $n;let Yn=this.children[Hn],Jn=Ce.children[zn];if(Yn!=Jn)return $n+Yn.scanIdentical(Jn,ke);$n+=Yn.length+1}}static from(Ce,ke=Ce.reduce(($n,Hn)=>$n+Hn.length+1,-1)){let $n=0;for(let mo of Ce)$n+=mo.lines;if($n<32){let mo=[];for(let bo of Ce)bo.flatten(mo);return new TextLeaf(mo,ke)}let Hn=Math.max(32,$n>>5),zn=Hn<<1,Zn=Hn>>1,qn=[],Yn=0,Jn=-1,to=[];function io(mo){let bo;if(mo.lines>zn&&mo instanceof TextNode)for(let Oo of mo.children)io(Oo);else mo.lines>Zn&&(Yn>Zn||!Yn)?(uo(),qn.push(mo)):mo instanceof TextLeaf&&Yn&&(bo=to[to.length-1])instanceof TextLeaf&&mo.lines+bo.lines<=32?(Yn+=mo.lines,Jn+=mo.length+1,to[to.length-1]=new TextLeaf(bo.text.concat(mo.text),bo.length+1+mo.length)):(Yn+mo.lines>Hn&&uo(),Yn+=mo.lines,Jn+=mo.length+1,to.push(mo))}function uo(){Yn!=0&&(qn.push(to.length==1?to[0]:TextNode.from(to,Jn)),Jn=-1,Yn=to.length=0)}for(let mo of Ce)io(mo);return uo(),qn.length==1?qn[0]:new TextNode(qn,ke)}}Text.empty=new TextLeaf([""],0);function textLength(_n){let Ce=-1;for(let ke of _n)Ce+=ke.length+1;return Ce}function appendText(_n,Ce,ke=0,$n=1e9){for(let Hn=0,zn=0,Zn=!0;zn<_n.length&&Hn<=$n;zn++){let qn=_n[zn],Yn=Hn+qn.length;Yn>=ke&&(Yn>$n&&(qn=qn.slice(0,$n-Hn)),Hn0?1:(Ce instanceof TextLeaf?Ce.text.length:Ce.children.length)<<1]}nextInner(Ce,ke){for(this.done=this.lineBreak=!1;;){let $n=this.nodes.length-1,Hn=this.nodes[$n],zn=this.offsets[$n],Zn=zn>>1,qn=Hn instanceof TextLeaf?Hn.text.length:Hn.children.length;if(Zn==(ke>0?qn:0)){if($n==0)return this.done=!0,this.value="",this;ke>0&&this.offsets[$n-1]++,this.nodes.pop(),this.offsets.pop()}else if((zn&1)==(ke>0?0:1)){if(this.offsets[$n]+=ke,Ce==0)return this.lineBreak=!0,this.value=` +`,this;Ce--}else if(Hn instanceof TextLeaf){let Yn=Hn.text[Zn+(ke<0?-1:0)];if(this.offsets[$n]+=ke,Yn.length>Math.max(0,Ce))return this.value=Ce==0?Yn:ke>0?Yn.slice(Ce):Yn.slice(0,Yn.length-Ce),this;Ce-=Yn.length}else{let Yn=Hn.children[Zn+(ke<0?-1:0)];Ce>Yn.length?(Ce-=Yn.length,this.offsets[$n]+=ke):(ke<0&&this.offsets[$n]--,this.nodes.push(Yn),this.offsets.push(ke>0?1:(Yn instanceof TextLeaf?Yn.text.length:Yn.children.length)<<1))}}}next(Ce=0){return Ce<0&&(this.nextInner(-Ce,-this.dir),Ce=this.value.length),this.nextInner(Ce,this.dir)}}class PartialTextCursor{constructor(Ce,ke,$n){this.value="",this.done=!1,this.cursor=new RawTextCursor(Ce,ke>$n?-1:1),this.pos=ke>$n?Ce.length:0,this.from=Math.min(ke,$n),this.to=Math.max(ke,$n)}nextInner(Ce,ke){if(ke<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;Ce+=Math.max(0,ke<0?this.pos-this.to:this.from-this.pos);let $n=ke<0?this.pos-this.from:this.to-this.pos;Ce>$n&&(Ce=$n),$n-=Ce;let{value:Hn}=this.cursor.next(Ce);return this.pos+=(Hn.length+Ce)*ke,this.value=Hn.length<=$n?Hn:ke<0?Hn.slice(Hn.length-$n):Hn.slice(0,$n),this.done=!this.value,this}next(Ce=0){return Ce<0?Ce=Math.max(Ce,this.from-this.pos):Ce>0&&(Ce=Math.min(Ce,this.to-this.pos)),this.nextInner(Ce,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class LineCursor{constructor(Ce){this.inner=Ce,this.afterBreak=!0,this.value="",this.done=!1}next(Ce=0){let{done:ke,lineBreak:$n,value:Hn}=this.inner.next(Ce);return ke&&this.afterBreak?(this.value="",this.afterBreak=!1):ke?(this.done=!0,this.value=""):$n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=Hn,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Text.prototype[Symbol.iterator]=function(){return this.iter()},RawTextCursor.prototype[Symbol.iterator]=PartialTextCursor.prototype[Symbol.iterator]=LineCursor.prototype[Symbol.iterator]=function(){return this});let Line$1=class{constructor(Ce,ke,$n,Hn){this.from=Ce,this.to=ke,this.number=$n,this.text=Hn}get length(){return this.to-this.from}};function clip(_n,Ce,ke){return Ce=Math.max(0,Math.min(_n.length,Ce)),[Ce,Math.max(Ce,Math.min(_n.length,ke))]}let extend="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(_n=>_n?parseInt(_n,36):1);for(let _n=1;_n_n)return extend[Ce-1]<=_n;return!1}function isRegionalIndicator(_n){return _n>=127462&&_n<=127487}const ZWJ=8205;function findClusterBreak(_n,Ce,ke=!0,$n=!0){return(ke?nextClusterBreak:prevClusterBreak)(_n,Ce,$n)}function nextClusterBreak(_n,Ce,ke){if(Ce==_n.length)return Ce;Ce&&surrogateLow(_n.charCodeAt(Ce))&&surrogateHigh(_n.charCodeAt(Ce-1))&&Ce--;let $n=codePointAt(_n,Ce);for(Ce+=codePointSize($n);Ce<_n.length;){let Hn=codePointAt(_n,Ce);if($n==ZWJ||Hn==ZWJ||ke&&isExtendingChar(Hn))Ce+=codePointSize(Hn),$n=Hn;else if(isRegionalIndicator(Hn)){let zn=0,Zn=Ce-2;for(;Zn>=0&&isRegionalIndicator(codePointAt(_n,Zn));)zn++,Zn-=2;if(zn%2==0)break;Ce+=2}else break}return Ce}function prevClusterBreak(_n,Ce,ke){for(;Ce>0;){let $n=nextClusterBreak(_n,Ce-2,ke);if($n=56320&&_n<57344}function surrogateHigh(_n){return _n>=55296&&_n<56320}function codePointAt(_n,Ce){let ke=_n.charCodeAt(Ce);if(!surrogateHigh(ke)||Ce+1==_n.length)return ke;let $n=_n.charCodeAt(Ce+1);return surrogateLow($n)?(ke-55296<<10)+($n-56320)+65536:ke}function fromCodePoint(_n){return _n<=65535?String.fromCharCode(_n):(_n-=65536,String.fromCharCode((_n>>10)+55296,(_n&1023)+56320))}function codePointSize(_n){return _n<65536?1:2}const DefaultSplit=/\r\n?|\n/;var MapMode=function(_n){return _n[_n.Simple=0]="Simple",_n[_n.TrackDel=1]="TrackDel",_n[_n.TrackBefore=2]="TrackBefore",_n[_n.TrackAfter=3]="TrackAfter",_n}(MapMode||(MapMode={}));class ChangeDesc{constructor(Ce){this.sections=Ce}get length(){let Ce=0;for(let ke=0;keCe)return zn+(Ce-Hn);zn+=qn}else{if($n!=MapMode.Simple&&Jn>=Ce&&($n==MapMode.TrackDel&&HnCe||$n==MapMode.TrackBefore&&HnCe))return null;if(Jn>Ce||Jn==Ce&&ke<0&&!qn)return Ce==Hn||ke<0?zn:zn+Yn;zn+=Yn}Hn=Jn}if(Ce>Hn)throw new RangeError(`Position ${Ce} is out of range for changeset of length ${Hn}`);return zn}touchesRange(Ce,ke=Ce){for(let $n=0,Hn=0;$n=0&&Hn<=ke&&qn>=Ce)return Hnke?"cover":!0;Hn=qn}return!1}toString(){let Ce="";for(let ke=0;ke=0?":"+Hn:"")}return Ce}toJSON(){return this.sections}static fromJSON(Ce){if(!Array.isArray(Ce)||Ce.length%2||Ce.some(ke=>typeof ke!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new ChangeDesc(Ce)}static create(Ce){return new ChangeDesc(Ce)}}class ChangeSet extends ChangeDesc{constructor(Ce,ke){super(Ce),this.inserted=ke}apply(Ce){if(this.length!=Ce.length)throw new RangeError("Applying change set to a document with the wrong length");return iterChanges(this,(ke,$n,Hn,zn,Zn)=>Ce=Ce.replace(Hn,Hn+($n-ke),Zn),!1),Ce}mapDesc(Ce,ke=!1){return mapSet(this,Ce,ke,!0)}invert(Ce){let ke=this.sections.slice(),$n=[];for(let Hn=0,zn=0;Hn=0){ke[Hn]=qn,ke[Hn+1]=Zn;let Yn=Hn>>1;for(;$n.length0&&addInsert($n,ke,zn.text),zn.forward(to),qn+=to}let Jn=Ce[Zn++];for(;qn>1].toJSON()))}return Ce}static of(Ce,ke,$n){let Hn=[],zn=[],Zn=0,qn=null;function Yn(to=!1){if(!to&&!Hn.length)return;Znuo||io<0||uo>ke)throw new RangeError(`Invalid change range ${io} to ${uo} (in doc of length ${ke})`);let bo=mo?typeof mo=="string"?Text.of(mo.split($n||DefaultSplit)):mo:Text.empty,Oo=bo.length;if(io==uo&&Oo==0)return;ioZn&&addSection(Hn,io-Zn,-1),addSection(Hn,uo-io,Oo),addInsert(zn,Hn,bo),Zn=uo}}return Jn(Ce),Yn(!qn),qn}static empty(Ce){return new ChangeSet(Ce?[Ce,-1]:[],[])}static fromJSON(Ce){if(!Array.isArray(Ce))throw new RangeError("Invalid JSON representation of ChangeSet");let ke=[],$n=[];for(let Hn=0;Hnqn&&typeof Zn!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(zn.length==1)ke.push(zn[0],0);else{for(;$n.length=0&&ke<=0&&ke==_n[Hn+1]?_n[Hn]+=Ce:Ce==0&&_n[Hn]==0?_n[Hn+1]+=ke:$n?(_n[Hn]+=Ce,_n[Hn+1]+=ke):_n.push(Ce,ke)}function addInsert(_n,Ce,ke){if(ke.length==0)return;let $n=Ce.length-2>>1;if($n<_n.length)_n[_n.length-1]=_n[_n.length-1].append(ke);else{for(;_n.length<$n;)_n.push(Text.empty);_n.push(ke)}}function iterChanges(_n,Ce,ke){let $n=_n.inserted;for(let Hn=0,zn=0,Zn=0;Zn<_n.sections.length;){let qn=_n.sections[Zn++],Yn=_n.sections[Zn++];if(Yn<0)Hn+=qn,zn+=qn;else{let Jn=Hn,to=zn,io=Text.empty;for(;Jn+=qn,to+=Yn,Yn&&$n&&(io=io.append($n[Zn-2>>1])),!(ke||Zn==_n.sections.length||_n.sections[Zn+1]<0);)qn=_n.sections[Zn++],Yn=_n.sections[Zn++];Ce(Hn,Jn,zn,to,io),Hn=Jn,zn=to}}}function mapSet(_n,Ce,ke,$n=!1){let Hn=[],zn=$n?[]:null,Zn=new SectionIter(_n),qn=new SectionIter(Ce);for(let Yn=-1;;)if(Zn.ins==-1&&qn.ins==-1){let Jn=Math.min(Zn.len,qn.len);addSection(Hn,Jn,-1),Zn.forward(Jn),qn.forward(Jn)}else if(qn.ins>=0&&(Zn.ins<0||Yn==Zn.i||Zn.off==0&&(qn.len=0&&Yn=0){let Jn=0,to=Zn.len;for(;to;)if(qn.ins==-1){let io=Math.min(to,qn.len);Jn+=io,to-=io,qn.forward(io)}else if(qn.ins==0&&qn.lenYn||Zn.ins>=0&&Zn.len>Yn)&&(qn||$n.length>Jn),zn.forward2(Yn),Zn.forward(Yn)}}}}class SectionIter{constructor(Ce){this.set=Ce,this.i=0,this.next()}next(){let{sections:Ce}=this.set;this.i>1;return ke>=Ce.length?Text.empty:Ce[ke]}textBit(Ce){let{inserted:ke}=this.set,$n=this.i-2>>1;return $n>=ke.length&&!Ce?Text.empty:ke[$n].slice(this.off,Ce==null?void 0:this.off+Ce)}forward(Ce){Ce==this.len?this.next():(this.len-=Ce,this.off+=Ce)}forward2(Ce){this.ins==-1?this.forward(Ce):Ce==this.ins?this.next():(this.ins-=Ce,this.off+=Ce)}}class SelectionRange{constructor(Ce,ke,$n){this.from=Ce,this.to=ke,this.flags=$n}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let Ce=this.flags&7;return Ce==7?null:Ce}get goalColumn(){let Ce=this.flags>>6;return Ce==16777215?void 0:Ce}map(Ce,ke=-1){let $n,Hn;return this.empty?$n=Hn=Ce.mapPos(this.from,ke):($n=Ce.mapPos(this.from,1),Hn=Ce.mapPos(this.to,-1)),$n==this.from&&Hn==this.to?this:new SelectionRange($n,Hn,this.flags)}extend(Ce,ke=Ce){if(Ce<=this.anchor&&ke>=this.anchor)return EditorSelection.range(Ce,ke);let $n=Math.abs(Ce-this.anchor)>Math.abs(ke-this.anchor)?Ce:ke;return EditorSelection.range(this.anchor,$n)}eq(Ce,ke=!1){return this.anchor==Ce.anchor&&this.head==Ce.head&&(!ke||!this.empty||this.assoc==Ce.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(Ce){if(!Ce||typeof Ce.anchor!="number"||typeof Ce.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return EditorSelection.range(Ce.anchor,Ce.head)}static create(Ce,ke,$n){return new SelectionRange(Ce,ke,$n)}}class EditorSelection{constructor(Ce,ke){this.ranges=Ce,this.mainIndex=ke}map(Ce,ke=-1){return Ce.empty?this:EditorSelection.create(this.ranges.map($n=>$n.map(Ce,ke)),this.mainIndex)}eq(Ce,ke=!1){if(this.ranges.length!=Ce.ranges.length||this.mainIndex!=Ce.mainIndex)return!1;for(let $n=0;$nCe.toJSON()),main:this.mainIndex}}static fromJSON(Ce){if(!Ce||!Array.isArray(Ce.ranges)||typeof Ce.main!="number"||Ce.main>=Ce.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new EditorSelection(Ce.ranges.map(ke=>SelectionRange.fromJSON(ke)),Ce.main)}static single(Ce,ke=Ce){return new EditorSelection([EditorSelection.range(Ce,ke)],0)}static create(Ce,ke=0){if(Ce.length==0)throw new RangeError("A selection needs at least one range");for(let $n=0,Hn=0;HnCe?8:0)|zn)}static normalized(Ce,ke=0){let $n=Ce[ke];Ce.sort((Hn,zn)=>Hn.from-zn.from),ke=Ce.indexOf($n);for(let Hn=1;Hnzn.head?EditorSelection.range(Yn,qn):EditorSelection.range(qn,Yn))}}return new EditorSelection(Ce,ke)}}function checkSelection(_n,Ce){for(let ke of _n.ranges)if(ke.to>Ce)throw new RangeError("Selection points outside of document")}let nextID=0;class Facet{constructor(Ce,ke,$n,Hn,zn){this.combine=Ce,this.compareInput=ke,this.compare=$n,this.isStatic=Hn,this.id=nextID++,this.default=Ce([]),this.extensions=typeof zn=="function"?zn(this):zn}get reader(){return this}static define(Ce={}){return new Facet(Ce.combine||(ke=>ke),Ce.compareInput||((ke,$n)=>ke===$n),Ce.compare||(Ce.combine?(ke,$n)=>ke===$n:sameArray$1),!!Ce.static,Ce.enables)}of(Ce){return new FacetProvider([],this,0,Ce)}compute(Ce,ke){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(Ce,this,1,ke)}computeN(Ce,ke){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(Ce,this,2,ke)}from(Ce,ke){return ke||(ke=$n=>$n),this.compute([Ce],$n=>ke($n.field(Ce)))}}function sameArray$1(_n,Ce){return _n==Ce||_n.length==Ce.length&&_n.every((ke,$n)=>ke===Ce[$n])}class FacetProvider{constructor(Ce,ke,$n,Hn){this.dependencies=Ce,this.facet=ke,this.type=$n,this.value=Hn,this.id=nextID++}dynamicSlot(Ce){var ke;let $n=this.value,Hn=this.facet.compareInput,zn=this.id,Zn=Ce[zn]>>1,qn=this.type==2,Yn=!1,Jn=!1,to=[];for(let io of this.dependencies)io=="doc"?Yn=!0:io=="selection"?Jn=!0:((ke=Ce[io.id])!==null&&ke!==void 0?ke:1)&1||to.push(Ce[io.id]);return{create(io){return io.values[Zn]=$n(io),1},update(io,uo){if(Yn&&uo.docChanged||Jn&&(uo.docChanged||uo.selection)||ensureAll(io,to)){let mo=$n(io);if(qn?!compareArray(mo,io.values[Zn],Hn):!Hn(mo,io.values[Zn]))return io.values[Zn]=mo,1}return 0},reconfigure:(io,uo)=>{let mo,bo=uo.config.address[zn];if(bo!=null){let Oo=getAddr(uo,bo);if(this.dependencies.every(wo=>wo instanceof Facet?uo.facet(wo)===io.facet(wo):wo instanceof StateField?uo.field(wo,!1)==io.field(wo,!1):!0)||(qn?compareArray(mo=$n(io),Oo,Hn):Hn(mo=$n(io),Oo)))return io.values[Zn]=Oo,0}else mo=$n(io);return io.values[Zn]=mo,1}}}}function compareArray(_n,Ce,ke){if(_n.length!=Ce.length)return!1;for(let $n=0;$n<_n.length;$n++)if(!ke(_n[$n],Ce[$n]))return!1;return!0}function ensureAll(_n,Ce){let ke=!1;for(let $n of Ce)ensureAddr(_n,$n)&1&&(ke=!0);return ke}function dynamicFacetSlot(_n,Ce,ke){let $n=ke.map(Yn=>_n[Yn.id]),Hn=ke.map(Yn=>Yn.type),zn=$n.filter(Yn=>!(Yn&1)),Zn=_n[Ce.id]>>1;function qn(Yn){let Jn=[];for(let to=0;to<$n.length;to++){let io=getAddr(Yn,$n[to]);if(Hn[to]==2)for(let uo of io)Jn.push(uo);else Jn.push(io)}return Ce.combine(Jn)}return{create(Yn){for(let Jn of $n)ensureAddr(Yn,Jn);return Yn.values[Zn]=qn(Yn),1},update(Yn,Jn){if(!ensureAll(Yn,zn))return 0;let to=qn(Yn);return Ce.compare(to,Yn.values[Zn])?0:(Yn.values[Zn]=to,1)},reconfigure(Yn,Jn){let to=ensureAll(Yn,$n),io=Jn.config.facets[Ce.id],uo=Jn.facet(Ce);if(io&&!to&&sameArray$1(ke,io))return Yn.values[Zn]=uo,0;let mo=qn(Yn);return Ce.compare(mo,uo)?(Yn.values[Zn]=uo,0):(Yn.values[Zn]=mo,1)}}}const initField=Facet.define({static:!0});class StateField{constructor(Ce,ke,$n,Hn,zn){this.id=Ce,this.createF=ke,this.updateF=$n,this.compareF=Hn,this.spec=zn,this.provides=void 0}static define(Ce){let ke=new StateField(nextID++,Ce.create,Ce.update,Ce.compare||(($n,Hn)=>$n===Hn),Ce);return Ce.provide&&(ke.provides=Ce.provide(ke)),ke}create(Ce){let ke=Ce.facet(initField).find($n=>$n.field==this);return((ke==null?void 0:ke.create)||this.createF)(Ce)}slot(Ce){let ke=Ce[this.id]>>1;return{create:$n=>($n.values[ke]=this.create($n),1),update:($n,Hn)=>{let zn=$n.values[ke],Zn=this.updateF(zn,Hn);return this.compareF(zn,Zn)?0:($n.values[ke]=Zn,1)},reconfigure:($n,Hn)=>Hn.config.address[this.id]!=null?($n.values[ke]=Hn.field(this),0):($n.values[ke]=this.create($n),1)}}init(Ce){return[this,initField.of({field:this,create:Ce})]}get extension(){return this}}const Prec_={lowest:4,low:3,default:2,high:1,highest:0};function prec(_n){return Ce=>new PrecExtension(Ce,_n)}const Prec={highest:prec(Prec_.highest),high:prec(Prec_.high),default:prec(Prec_.default),low:prec(Prec_.low),lowest:prec(Prec_.lowest)};class PrecExtension{constructor(Ce,ke){this.inner=Ce,this.prec=ke}}class Compartment{of(Ce){return new CompartmentInstance(this,Ce)}reconfigure(Ce){return Compartment.reconfigure.of({compartment:this,extension:Ce})}get(Ce){return Ce.config.compartments.get(this)}}class CompartmentInstance{constructor(Ce,ke){this.compartment=Ce,this.inner=ke}}class Configuration{constructor(Ce,ke,$n,Hn,zn,Zn){for(this.base=Ce,this.compartments=ke,this.dynamicSlots=$n,this.address=Hn,this.staticValues=zn,this.facets=Zn,this.statusTemplate=[];this.statusTemplate.length<$n.length;)this.statusTemplate.push(0)}staticFacet(Ce){let ke=this.address[Ce.id];return ke==null?Ce.default:this.staticValues[ke>>1]}static resolve(Ce,ke,$n){let Hn=[],zn=Object.create(null),Zn=new Map;for(let uo of flatten(Ce,ke,Zn))uo instanceof StateField?Hn.push(uo):(zn[uo.facet.id]||(zn[uo.facet.id]=[])).push(uo);let qn=Object.create(null),Yn=[],Jn=[];for(let uo of Hn)qn[uo.id]=Jn.length<<1,Jn.push(mo=>uo.slot(mo));let to=$n==null?void 0:$n.config.facets;for(let uo in zn){let mo=zn[uo],bo=mo[0].facet,Oo=to&&to[uo]||[];if(mo.every(wo=>wo.type==0))if(qn[bo.id]=Yn.length<<1|1,sameArray$1(Oo,mo))Yn.push($n.facet(bo));else{let wo=bo.combine(mo.map($o=>$o.value));Yn.push($n&&bo.compare(wo,$n.facet(bo))?$n.facet(bo):wo)}else{for(let wo of mo)wo.type==0?(qn[wo.id]=Yn.length<<1|1,Yn.push(wo.value)):(qn[wo.id]=Jn.length<<1,Jn.push($o=>wo.dynamicSlot($o)));qn[bo.id]=Jn.length<<1,Jn.push(wo=>dynamicFacetSlot(wo,bo,mo))}}let io=Jn.map(uo=>uo(qn));return new Configuration(Ce,Zn,io,qn,Yn,zn)}}function flatten(_n,Ce,ke){let $n=[[],[],[],[],[]],Hn=new Map;function zn(Zn,qn){let Yn=Hn.get(Zn);if(Yn!=null){if(Yn<=qn)return;let Jn=$n[Yn].indexOf(Zn);Jn>-1&&$n[Yn].splice(Jn,1),Zn instanceof CompartmentInstance&&ke.delete(Zn.compartment)}if(Hn.set(Zn,qn),Array.isArray(Zn))for(let Jn of Zn)zn(Jn,qn);else if(Zn instanceof CompartmentInstance){if(ke.has(Zn.compartment))throw new RangeError("Duplicate use of compartment in extensions");let Jn=Ce.get(Zn.compartment)||Zn.inner;ke.set(Zn.compartment,Jn),zn(Jn,qn)}else if(Zn instanceof PrecExtension)zn(Zn.inner,Zn.prec);else if(Zn instanceof StateField)$n[qn].push(Zn),Zn.provides&&zn(Zn.provides,qn);else if(Zn instanceof FacetProvider)$n[qn].push(Zn),Zn.facet.extensions&&zn(Zn.facet.extensions,Prec_.default);else{let Jn=Zn.extension;if(!Jn)throw new Error(`Unrecognized extension value in extension set (${Zn}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);zn(Jn,qn)}}return zn(_n,Prec_.default),$n.reduce((Zn,qn)=>Zn.concat(qn))}function ensureAddr(_n,Ce){if(Ce&1)return 2;let ke=Ce>>1,$n=_n.status[ke];if($n==4)throw new Error("Cyclic dependency between fields and/or facets");if($n&2)return $n;_n.status[ke]=4;let Hn=_n.computeSlot(_n,_n.config.dynamicSlots[ke]);return _n.status[ke]=2|Hn}function getAddr(_n,Ce){return Ce&1?_n.config.staticValues[Ce>>1]:_n.values[Ce>>1]}const languageData=Facet.define(),allowMultipleSelections=Facet.define({combine:_n=>_n.some(Ce=>Ce),static:!0}),lineSeparator=Facet.define({combine:_n=>_n.length?_n[0]:void 0,static:!0}),changeFilter=Facet.define(),transactionFilter=Facet.define(),transactionExtender=Facet.define(),readOnly=Facet.define({combine:_n=>_n.length?_n[0]:!1});class Annotation{constructor(Ce,ke){this.type=Ce,this.value=ke}static define(){return new AnnotationType}}class AnnotationType{of(Ce){return new Annotation(this,Ce)}}class StateEffectType{constructor(Ce){this.map=Ce}of(Ce){return new StateEffect(this,Ce)}}class StateEffect{constructor(Ce,ke){this.type=Ce,this.value=ke}map(Ce){let ke=this.type.map(this.value,Ce);return ke===void 0?void 0:ke==this.value?this:new StateEffect(this.type,ke)}is(Ce){return this.type==Ce}static define(Ce={}){return new StateEffectType(Ce.map||(ke=>ke))}static mapEffects(Ce,ke){if(!Ce.length)return Ce;let $n=[];for(let Hn of Ce){let zn=Hn.map(ke);zn&&$n.push(zn)}return $n}}StateEffect.reconfigure=StateEffect.define();StateEffect.appendConfig=StateEffect.define();class Transaction{constructor(Ce,ke,$n,Hn,zn,Zn){this.startState=Ce,this.changes=ke,this.selection=$n,this.effects=Hn,this.annotations=zn,this.scrollIntoView=Zn,this._doc=null,this._state=null,$n&&checkSelection($n,ke.newLength),zn.some(qn=>qn.type==Transaction.time)||(this.annotations=zn.concat(Transaction.time.of(Date.now())))}static create(Ce,ke,$n,Hn,zn,Zn){return new Transaction(Ce,ke,$n,Hn,zn,Zn)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(Ce){for(let ke of this.annotations)if(ke.type==Ce)return ke.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(Ce){let ke=this.annotation(Transaction.userEvent);return!!(ke&&(ke==Ce||ke.length>Ce.length&&ke.slice(0,Ce.length)==Ce&&ke[Ce.length]=="."))}}Transaction.time=Annotation.define();Transaction.userEvent=Annotation.define();Transaction.addToHistory=Annotation.define();Transaction.remote=Annotation.define();function joinRanges(_n,Ce){let ke=[];for(let $n=0,Hn=0;;){let zn,Zn;if($n<_n.length&&(Hn==Ce.length||Ce[Hn]>=_n[$n]))zn=_n[$n++],Zn=_n[$n++];else if(Hn=0;Hn--){let zn=$n[Hn](_n);zn instanceof Transaction?_n=zn:Array.isArray(zn)&&zn.length==1&&zn[0]instanceof Transaction?_n=zn[0]:_n=resolveTransaction(Ce,asArray$1(zn),!1)}return _n}function extendTransaction(_n){let Ce=_n.startState,ke=Ce.facet(transactionExtender),$n=_n;for(let Hn=ke.length-1;Hn>=0;Hn--){let zn=ke[Hn](_n);zn&&Object.keys(zn).length&&($n=mergeTransaction($n,resolveTransactionInner(Ce,zn,_n.changes.newLength),!0))}return $n==_n?_n:Transaction.create(Ce,_n.changes,_n.selection,$n.effects,$n.annotations,$n.scrollIntoView)}const none$3=[];function asArray$1(_n){return _n==null?none$3:Array.isArray(_n)?_n:[_n]}var CharCategory=function(_n){return _n[_n.Word=0]="Word",_n[_n.Space=1]="Space",_n[_n.Other=2]="Other",_n}(CharCategory||(CharCategory={}));const nonASCIISingleCaseWordChar=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let wordChar;try{wordChar=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function hasWordChar(_n){if(wordChar)return wordChar.test(_n);for(let Ce=0;Ce<_n.length;Ce++){let ke=_n[Ce];if(/\w/.test(ke)||ke>"€"&&(ke.toUpperCase()!=ke.toLowerCase()||nonASCIISingleCaseWordChar.test(ke)))return!0}return!1}function makeCategorizer(_n){return Ce=>{if(!/\S/.test(Ce))return CharCategory.Space;if(hasWordChar(Ce))return CharCategory.Word;for(let ke=0;ke<_n.length;ke++)if(Ce.indexOf(_n[ke])>-1)return CharCategory.Word;return CharCategory.Other}}class EditorState{constructor(Ce,ke,$n,Hn,zn,Zn){this.config=Ce,this.doc=ke,this.selection=$n,this.values=Hn,this.status=Ce.statusTemplate.slice(),this.computeSlot=zn,Zn&&(Zn._state=this);for(let qn=0;qnHn.set(Jn,Yn)),ke=null),Hn.set(qn.value.compartment,qn.value.extension)):qn.is(StateEffect.reconfigure)?(ke=null,$n=qn.value):qn.is(StateEffect.appendConfig)&&(ke=null,$n=asArray$1($n).concat(qn.value));let zn;ke?zn=Ce.startState.values.slice():(ke=Configuration.resolve($n,Hn,this),zn=new EditorState(ke,this.doc,this.selection,ke.dynamicSlots.map(()=>null),(Yn,Jn)=>Jn.reconfigure(Yn,this),null).values);let Zn=Ce.startState.facet(allowMultipleSelections)?Ce.newSelection:Ce.newSelection.asSingle();new EditorState(ke,Ce.newDoc,Zn,zn,(qn,Yn)=>Yn.update(qn,Ce),Ce)}replaceSelection(Ce){return typeof Ce=="string"&&(Ce=this.toText(Ce)),this.changeByRange(ke=>({changes:{from:ke.from,to:ke.to,insert:Ce},range:EditorSelection.cursor(ke.from+Ce.length)}))}changeByRange(Ce){let ke=this.selection,$n=Ce(ke.ranges[0]),Hn=this.changes($n.changes),zn=[$n.range],Zn=asArray$1($n.effects);for(let qn=1;qnZn.spec.fromJSON(qn,Yn)))}}return EditorState.create({doc:Ce.doc,selection:EditorSelection.fromJSON(Ce.selection),extensions:ke.extensions?Hn.concat([ke.extensions]):Hn})}static create(Ce={}){let ke=Configuration.resolve(Ce.extensions||[],new Map),$n=Ce.doc instanceof Text?Ce.doc:Text.of((Ce.doc||"").split(ke.staticFacet(EditorState.lineSeparator)||DefaultSplit)),Hn=Ce.selection?Ce.selection instanceof EditorSelection?Ce.selection:EditorSelection.single(Ce.selection.anchor,Ce.selection.head):EditorSelection.single(0);return checkSelection(Hn,$n.length),ke.staticFacet(allowMultipleSelections)||(Hn=Hn.asSingle()),new EditorState(ke,$n,Hn,ke.dynamicSlots.map(()=>null),(zn,Zn)=>Zn.create(zn),null)}get tabSize(){return this.facet(EditorState.tabSize)}get lineBreak(){return this.facet(EditorState.lineSeparator)||` +`}get readOnly(){return this.facet(readOnly)}phrase(Ce,...ke){for(let $n of this.facet(EditorState.phrases))if(Object.prototype.hasOwnProperty.call($n,Ce)){Ce=$n[Ce];break}return ke.length&&(Ce=Ce.replace(/\$(\$|\d*)/g,($n,Hn)=>{if(Hn=="$")return"$";let zn=+(Hn||1);return!zn||zn>ke.length?$n:ke[zn-1]})),Ce}languageDataAt(Ce,ke,$n=-1){let Hn=[];for(let zn of this.facet(languageData))for(let Zn of zn(this,ke,$n))Object.prototype.hasOwnProperty.call(Zn,Ce)&&Hn.push(Zn[Ce]);return Hn}charCategorizer(Ce){return makeCategorizer(this.languageDataAt("wordChars",Ce).join(""))}wordAt(Ce){let{text:ke,from:$n,length:Hn}=this.doc.lineAt(Ce),zn=this.charCategorizer(Ce),Zn=Ce-$n,qn=Ce-$n;for(;Zn>0;){let Yn=findClusterBreak(ke,Zn,!1);if(zn(ke.slice(Yn,Zn))!=CharCategory.Word)break;Zn=Yn}for(;qn_n.length?_n[0]:4});EditorState.lineSeparator=lineSeparator;EditorState.readOnly=readOnly;EditorState.phrases=Facet.define({compare(_n,Ce){let ke=Object.keys(_n),$n=Object.keys(Ce);return ke.length==$n.length&&ke.every(Hn=>_n[Hn]==Ce[Hn])}});EditorState.languageData=languageData;EditorState.changeFilter=changeFilter;EditorState.transactionFilter=transactionFilter;EditorState.transactionExtender=transactionExtender;Compartment.reconfigure=StateEffect.define();function combineConfig(_n,Ce,ke={}){let $n={};for(let Hn of _n)for(let zn of Object.keys(Hn)){let Zn=Hn[zn],qn=$n[zn];if(qn===void 0)$n[zn]=Zn;else if(!(qn===Zn||Zn===void 0))if(Object.hasOwnProperty.call(ke,zn))$n[zn]=ke[zn](qn,Zn);else throw new Error("Config merge conflict for field "+zn)}for(let Hn in Ce)$n[Hn]===void 0&&($n[Hn]=Ce[Hn]);return $n}class RangeValue{eq(Ce){return this==Ce}range(Ce,ke=Ce){return Range$2.create(Ce,ke,this)}}RangeValue.prototype.startSide=RangeValue.prototype.endSide=0;RangeValue.prototype.point=!1;RangeValue.prototype.mapMode=MapMode.TrackDel;let Range$2=class rK{constructor(Ce,ke,$n){this.from=Ce,this.to=ke,this.value=$n}static create(Ce,ke,$n){return new rK(Ce,ke,$n)}};function cmpRange(_n,Ce){return _n.from-Ce.from||_n.value.startSide-Ce.value.startSide}class Chunk{constructor(Ce,ke,$n,Hn){this.from=Ce,this.to=ke,this.value=$n,this.maxPoint=Hn}get length(){return this.to[this.to.length-1]}findIndex(Ce,ke,$n,Hn=0){let zn=$n?this.to:this.from;for(let Zn=Hn,qn=zn.length;;){if(Zn==qn)return Zn;let Yn=Zn+qn>>1,Jn=zn[Yn]-Ce||($n?this.value[Yn].endSide:this.value[Yn].startSide)-ke;if(Yn==Zn)return Jn>=0?Zn:qn;Jn>=0?qn=Yn:Zn=Yn+1}}between(Ce,ke,$n,Hn){for(let zn=this.findIndex(ke,-1e9,!0),Zn=this.findIndex($n,1e9,!1,zn);znmo||uo==mo&&Jn.startSide>0&&Jn.endSide<=0)continue;(mo-uo||Jn.endSide-Jn.startSide)<0||(Zn<0&&(Zn=uo),Jn.point&&(qn=Math.max(qn,mo-uo)),$n.push(Jn),Hn.push(uo-Zn),zn.push(mo-Zn))}return{mapped:$n.length?new Chunk(Hn,zn,$n,qn):null,pos:Zn}}}class RangeSet{constructor(Ce,ke,$n,Hn){this.chunkPos=Ce,this.chunk=ke,this.nextLayer=$n,this.maxPoint=Hn}static create(Ce,ke,$n,Hn){return new RangeSet(Ce,ke,$n,Hn)}get length(){let Ce=this.chunk.length-1;return Ce<0?0:Math.max(this.chunkEnd(Ce),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let Ce=this.nextLayer.size;for(let ke of this.chunk)Ce+=ke.value.length;return Ce}chunkEnd(Ce){return this.chunkPos[Ce]+this.chunk[Ce].length}update(Ce){let{add:ke=[],sort:$n=!1,filterFrom:Hn=0,filterTo:zn=this.length}=Ce,Zn=Ce.filter;if(ke.length==0&&!Zn)return this;if($n&&(ke=ke.slice().sort(cmpRange)),this.isEmpty)return ke.length?RangeSet.of(ke):this;let qn=new LayerCursor(this,null,-1).goto(0),Yn=0,Jn=[],to=new RangeSetBuilder;for(;qn.value||Yn=0){let io=ke[Yn++];to.addInner(io.from,io.to,io.value)||Jn.push(io)}else qn.rangeIndex==1&&qn.chunkIndexthis.chunkEnd(qn.chunkIndex)||znqn.to||zn=zn&&Ce<=zn+Zn.length&&Zn.between(zn,Ce-zn,ke-zn,$n)===!1)return}this.nextLayer.between(Ce,ke,$n)}}iter(Ce=0){return HeapCursor.from([this]).goto(Ce)}get isEmpty(){return this.nextLayer==this}static iter(Ce,ke=0){return HeapCursor.from(Ce).goto(ke)}static compare(Ce,ke,$n,Hn,zn=-1){let Zn=Ce.filter(io=>io.maxPoint>0||!io.isEmpty&&io.maxPoint>=zn),qn=ke.filter(io=>io.maxPoint>0||!io.isEmpty&&io.maxPoint>=zn),Yn=findSharedChunks(Zn,qn,$n),Jn=new SpanCursor(Zn,Yn,zn),to=new SpanCursor(qn,Yn,zn);$n.iterGaps((io,uo,mo)=>compare(Jn,io,to,uo,mo,Hn)),$n.empty&&$n.length==0&&compare(Jn,0,to,0,0,Hn)}static eq(Ce,ke,$n=0,Hn){Hn==null&&(Hn=999999999);let zn=Ce.filter(to=>!to.isEmpty&&ke.indexOf(to)<0),Zn=ke.filter(to=>!to.isEmpty&&Ce.indexOf(to)<0);if(zn.length!=Zn.length)return!1;if(!zn.length)return!0;let qn=findSharedChunks(zn,Zn),Yn=new SpanCursor(zn,qn,0).goto($n),Jn=new SpanCursor(Zn,qn,0).goto($n);for(;;){if(Yn.to!=Jn.to||!sameValues(Yn.active,Jn.active)||Yn.point&&(!Jn.point||!Yn.point.eq(Jn.point)))return!1;if(Yn.to>Hn)return!0;Yn.next(),Jn.next()}}static spans(Ce,ke,$n,Hn,zn=-1){let Zn=new SpanCursor(Ce,null,zn).goto(ke),qn=ke,Yn=Zn.openStart;for(;;){let Jn=Math.min(Zn.to,$n);if(Zn.point){let to=Zn.activeForPoint(Zn.to),io=Zn.pointFromqn&&(Hn.span(qn,Jn,Zn.active,Yn),Yn=Zn.openEnd(Jn));if(Zn.to>$n)return Yn+(Zn.point&&Zn.to>$n?1:0);qn=Zn.to,Zn.next()}}static of(Ce,ke=!1){let $n=new RangeSetBuilder;for(let Hn of Ce instanceof Range$2?[Ce]:ke?lazySort(Ce):Ce)$n.add(Hn.from,Hn.to,Hn.value);return $n.finish()}static join(Ce){if(!Ce.length)return RangeSet.empty;let ke=Ce[Ce.length-1];for(let $n=Ce.length-2;$n>=0;$n--)for(let Hn=Ce[$n];Hn!=RangeSet.empty;Hn=Hn.nextLayer)ke=new RangeSet(Hn.chunkPos,Hn.chunk,ke,Math.max(Hn.maxPoint,ke.maxPoint));return ke}}RangeSet.empty=new RangeSet([],[],null,-1);function lazySort(_n){if(_n.length>1)for(let Ce=_n[0],ke=1;ke<_n.length;ke++){let $n=_n[ke];if(cmpRange(Ce,$n)>0)return _n.slice().sort(cmpRange);Ce=$n}return _n}RangeSet.empty.nextLayer=RangeSet.empty;class RangeSetBuilder{finishChunk(Ce){this.chunks.push(new Chunk(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,Ce&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(Ce,ke,$n){this.addInner(Ce,ke,$n)||(this.nextLayer||(this.nextLayer=new RangeSetBuilder)).add(Ce,ke,$n)}addInner(Ce,ke,$n){let Hn=Ce-this.lastTo||$n.startSide-this.last.endSide;if(Hn<=0&&(Ce-this.lastFrom||$n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return Hn<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=Ce),this.from.push(Ce-this.chunkStart),this.to.push(ke-this.chunkStart),this.last=$n,this.lastFrom=Ce,this.lastTo=ke,this.value.push($n),$n.point&&(this.maxPoint=Math.max(this.maxPoint,ke-Ce)),!0)}addChunk(Ce,ke){if((Ce-this.lastTo||ke.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,ke.maxPoint),this.chunks.push(ke),this.chunkPos.push(Ce);let $n=ke.value.length-1;return this.last=ke.value[$n],this.lastFrom=ke.from[$n]+Ce,this.lastTo=ke.to[$n]+Ce,!0}finish(){return this.finishInner(RangeSet.empty)}finishInner(Ce){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return Ce;let ke=RangeSet.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(Ce):Ce,this.setMaxPoint);return this.from=null,ke}}function findSharedChunks(_n,Ce,ke){let $n=new Map;for(let zn of _n)for(let Zn=0;Zn=this.minPoint)break}}setRangeIndex(Ce){if(Ce==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=$n&&Hn.push(new LayerCursor(Zn,ke,$n,zn));return Hn.length==1?Hn[0]:new HeapCursor(Hn)}get startSide(){return this.value?this.value.startSide:0}goto(Ce,ke=-1e9){for(let $n of this.heap)$n.goto(Ce,ke);for(let $n=this.heap.length>>1;$n>=0;$n--)heapBubble(this.heap,$n);return this.next(),this}forward(Ce,ke){for(let $n of this.heap)$n.forward(Ce,ke);for(let $n=this.heap.length>>1;$n>=0;$n--)heapBubble(this.heap,$n);(this.to-Ce||this.value.endSide-ke)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let Ce=this.heap[0];this.from=Ce.from,this.to=Ce.to,this.value=Ce.value,this.rank=Ce.rank,Ce.value&&Ce.next(),heapBubble(this.heap,0)}}}function heapBubble(_n,Ce){for(let ke=_n[Ce];;){let $n=(Ce<<1)+1;if($n>=_n.length)break;let Hn=_n[$n];if($n+1<_n.length&&Hn.compare(_n[$n+1])>=0&&(Hn=_n[$n+1],$n++),ke.compare(Hn)<0)break;_n[$n]=ke,_n[Ce]=Hn,Ce=$n}}class SpanCursor{constructor(Ce,ke,$n){this.minPoint=$n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=HeapCursor.from(Ce,ke,$n)}goto(Ce,ke=-1e9){return this.cursor.goto(Ce,ke),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=Ce,this.endSide=ke,this.openStart=-1,this.next(),this}forward(Ce,ke){for(;this.minActive>-1&&(this.activeTo[this.minActive]-Ce||this.active[this.minActive].endSide-ke)<0;)this.removeActive(this.minActive);this.cursor.forward(Ce,ke)}removeActive(Ce){remove(this.active,Ce),remove(this.activeTo,Ce),remove(this.activeRank,Ce),this.minActive=findMinIndex(this.active,this.activeTo)}addActive(Ce){let ke=0,{value:$n,to:Hn,rank:zn}=this.cursor;for(;ke0;)ke++;insert(this.active,ke,$n),insert(this.activeTo,ke,Hn),insert(this.activeRank,ke,zn),Ce&&insert(Ce,ke,this.cursor.from),this.minActive=findMinIndex(this.active,this.activeTo)}next(){let Ce=this.to,ke=this.point;this.point=null;let $n=this.openStart<0?[]:null;for(;;){let Hn=this.minActive;if(Hn>-1&&(this.activeTo[Hn]-this.cursor.from||this.active[Hn].endSide-this.cursor.startSide)<0){if(this.activeTo[Hn]>Ce){this.to=this.activeTo[Hn],this.endSide=this.active[Hn].endSide;break}this.removeActive(Hn),$n&&remove($n,Hn)}else if(this.cursor.value)if(this.cursor.from>Ce){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let zn=this.cursor.value;if(!zn.point)this.addActive($n),this.cursor.next();else if(ke&&this.cursor.to==this.to&&this.cursor.from=0&&$n[Hn]=0&&!(this.activeRank[$n]Ce||this.activeTo[$n]==Ce&&this.active[$n].endSide>=this.point.endSide)&&ke.push(this.active[$n]);return ke.reverse()}openEnd(Ce){let ke=0;for(let $n=this.activeTo.length-1;$n>=0&&this.activeTo[$n]>Ce;$n--)ke++;return ke}}function compare(_n,Ce,ke,$n,Hn,zn){_n.goto(Ce),ke.goto($n);let Zn=$n+Hn,qn=$n,Yn=$n-Ce;for(;;){let Jn=_n.to+Yn-ke.to||_n.endSide-ke.endSide,to=Jn<0?_n.to+Yn:ke.to,io=Math.min(to,Zn);if(_n.point||ke.point?_n.point&&ke.point&&(_n.point==ke.point||_n.point.eq(ke.point))&&sameValues(_n.activeForPoint(_n.to),ke.activeForPoint(ke.to))||zn.comparePoint(qn,io,_n.point,ke.point):io>qn&&!sameValues(_n.active,ke.active)&&zn.compareRange(qn,io,_n.active,ke.active),to>Zn)break;qn=to,Jn<=0&&_n.next(),Jn>=0&&ke.next()}}function sameValues(_n,Ce){if(_n.length!=Ce.length)return!1;for(let ke=0;ke<_n.length;ke++)if(_n[ke]!=Ce[ke]&&!_n[ke].eq(Ce[ke]))return!1;return!0}function remove(_n,Ce){for(let ke=Ce,$n=_n.length-1;ke<$n;ke++)_n[ke]=_n[ke+1];_n.pop()}function insert(_n,Ce,ke){for(let $n=_n.length-1;$n>=Ce;$n--)_n[$n+1]=_n[$n];_n[Ce]=ke}function findMinIndex(_n,Ce){let ke=-1,$n=1e9;for(let Hn=0;Hn=Ce)return Hn;if(Hn==_n.length)break;zn+=_n.charCodeAt(Hn)==9?ke-zn%ke:1,Hn=findClusterBreak(_n,Hn)}return $n===!0?-1:_n.length}const C="ͼ",COUNT=typeof Symbol>"u"?"__"+C:Symbol.for(C),SET=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),top=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class StyleModule{constructor(Ce,ke){this.rules=[];let{finish:$n}=ke||{};function Hn(Zn){return/^@/.test(Zn)?[Zn]:Zn.split(/,\s*/)}function zn(Zn,qn,Yn,Jn){let to=[],io=/^@(\w+)\b/.exec(Zn[0]),uo=io&&io[1]=="keyframes";if(io&&qn==null)return Yn.push(Zn[0]+";");for(let mo in qn){let bo=qn[mo];if(/&/.test(mo))zn(mo.split(/,\s*/).map(Oo=>Zn.map(wo=>Oo.replace(/&/,wo))).reduce((Oo,wo)=>Oo.concat(wo)),bo,Yn);else if(bo&&typeof bo=="object"){if(!io)throw new RangeError("The value of a property ("+mo+") should be a primitive value.");zn(Hn(mo),bo,to,uo)}else bo!=null&&to.push(mo.replace(/_.*/,"").replace(/[A-Z]/g,Oo=>"-"+Oo.toLowerCase())+": "+bo+";")}(to.length||uo)&&Yn.push(($n&&!io&&!Jn?Zn.map($n):Zn).join(", ")+" {"+to.join(" ")+"}")}for(let Zn in Ce)zn(Hn(Zn),Ce[Zn],this.rules)}getRules(){return this.rules.join(` +`)}static newName(){let Ce=top[COUNT]||1;return top[COUNT]=Ce+1,C+Ce.toString(36)}static mount(Ce,ke,$n){let Hn=Ce[SET],zn=$n&&$n.nonce;Hn?zn&&Hn.setNonce(zn):Hn=new StyleSet(Ce,zn),Hn.mount(Array.isArray(ke)?ke:[ke],Ce)}}let adoptedSet=new Map;class StyleSet{constructor(Ce,ke){let $n=Ce.ownerDocument||Ce,Hn=$n.defaultView;if(!Ce.head&&Ce.adoptedStyleSheets&&Hn.CSSStyleSheet){let zn=adoptedSet.get($n);if(zn)return Ce[SET]=zn;this.sheet=new Hn.CSSStyleSheet,adoptedSet.set($n,this)}else this.styleTag=$n.createElement("style"),ke&&this.styleTag.setAttribute("nonce",ke);this.modules=[],Ce[SET]=this}mount(Ce,ke){let $n=this.sheet,Hn=0,zn=0;for(let Zn=0;Zn-1&&(this.modules.splice(Yn,1),zn--,Yn=-1),Yn==-1){if(this.modules.splice(zn++,0,qn),$n)for(let Jn=0;Jn",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},mac=typeof navigator<"u"&&/Mac/.test(navigator.platform),ie$1=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var i=0;i<10;i++)base[48+i]=base[96+i]=String(i);for(var i=1;i<=24;i++)base[i+111]="F"+i;for(var i=65;i<=90;i++)base[i]=String.fromCharCode(i+32),shift[i]=String.fromCharCode(i);for(var code in base)shift.hasOwnProperty(code)||(shift[code]=base[code]);function keyName(_n){var Ce=mac&&_n.metaKey&&_n.shiftKey&&!_n.ctrlKey&&!_n.altKey||ie$1&&_n.shiftKey&&_n.key&&_n.key.length==1||_n.key=="Unidentified",ke=!Ce&&_n.key||(_n.shiftKey?shift:base)[_n.keyCode]||_n.key||"Unidentified";return ke=="Esc"&&(ke="Escape"),ke=="Del"&&(ke="Delete"),ke=="Left"&&(ke="ArrowLeft"),ke=="Up"&&(ke="ArrowUp"),ke=="Right"&&(ke="ArrowRight"),ke=="Down"&&(ke="ArrowDown"),ke}function getSelection(_n){let Ce;return _n.nodeType==11?Ce=_n.getSelection?_n:_n.ownerDocument:Ce=_n,Ce.getSelection()}function contains(_n,Ce){return Ce?_n==Ce||_n.contains(Ce.nodeType!=1?Ce.parentNode:Ce):!1}function deepActiveElement(_n){let Ce=_n.activeElement;for(;Ce&&Ce.shadowRoot;)Ce=Ce.shadowRoot.activeElement;return Ce}function hasSelection(_n,Ce){if(!Ce.anchorNode)return!1;try{return contains(_n,Ce.anchorNode)}catch{return!1}}function clientRectsFor(_n){return _n.nodeType==3?textRange(_n,0,_n.nodeValue.length).getClientRects():_n.nodeType==1?_n.getClientRects():[]}function isEquivalentPosition(_n,Ce,ke,$n){return ke?scanFor(_n,Ce,ke,$n,-1)||scanFor(_n,Ce,ke,$n,1):!1}function domIndex(_n){for(var Ce=0;;Ce++)if(_n=_n.previousSibling,!_n)return Ce}function isBlockElement(_n){return _n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(_n.nodeName)}function scanFor(_n,Ce,ke,$n,Hn){for(;;){if(_n==ke&&Ce==$n)return!0;if(Ce==(Hn<0?0:maxOffset(_n))){if(_n.nodeName=="DIV")return!1;let zn=_n.parentNode;if(!zn||zn.nodeType!=1)return!1;Ce=domIndex(_n)+(Hn<0?0:1),_n=zn}else if(_n.nodeType==1){if(_n=_n.childNodes[Ce+(Hn<0?-1:0)],_n.nodeType==1&&_n.contentEditable=="false")return!1;Ce=Hn<0?maxOffset(_n):0}else return!1}}function maxOffset(_n){return _n.nodeType==3?_n.nodeValue.length:_n.childNodes.length}function flattenRect(_n,Ce){let ke=Ce?_n.left:_n.right;return{left:ke,right:ke,top:_n.top,bottom:_n.bottom}}function windowRect(_n){let Ce=_n.visualViewport;return Ce?{left:0,right:Ce.width,top:0,bottom:Ce.height}:{left:0,right:_n.innerWidth,top:0,bottom:_n.innerHeight}}function getScale(_n,Ce){let ke=Ce.width/_n.offsetWidth,$n=Ce.height/_n.offsetHeight;return(ke>.995&&ke<1.005||!isFinite(ke)||Math.abs(Ce.width-_n.offsetWidth)<1)&&(ke=1),($n>.995&&$n<1.005||!isFinite($n)||Math.abs(Ce.height-_n.offsetHeight)<1)&&($n=1),{scaleX:ke,scaleY:$n}}function scrollRectIntoView(_n,Ce,ke,$n,Hn,zn,Zn,qn){let Yn=_n.ownerDocument,Jn=Yn.defaultView||window;for(let to=_n,io=!1;to&&!io;)if(to.nodeType==1){let uo,mo=to==Yn.body,bo=1,Oo=1;if(mo)uo=windowRect(Jn);else{if(/^(fixed|sticky)$/.test(getComputedStyle(to).position)&&(io=!0),to.scrollHeight<=to.clientHeight&&to.scrollWidth<=to.clientWidth){to=to.assignedSlot||to.parentNode;continue}let Do=to.getBoundingClientRect();({scaleX:bo,scaleY:Oo}=getScale(to,Do)),uo={left:Do.left,right:Do.left+to.clientWidth*bo,top:Do.top,bottom:Do.top+to.clientHeight*Oo}}let wo=0,$o=0;if(Hn=="nearest")Ce.top0&&Ce.bottom>uo.bottom+$o&&($o=Ce.bottom-uo.bottom+$o+Zn)):Ce.bottom>uo.bottom&&($o=Ce.bottom-uo.bottom+Zn,ke<0&&Ce.top-$o0&&Ce.right>uo.right+wo&&(wo=Ce.right-uo.right+wo+zn)):Ce.right>uo.right&&(wo=Ce.right-uo.right+zn,ke<0&&Ce.leftHn.clientHeight&&($n=Hn),!ke&&Hn.scrollWidth>Hn.clientWidth&&(ke=Hn),Hn=Hn.assignedSlot||Hn.parentNode;else if(Hn.nodeType==11)Hn=Hn.host;else break;return{x:ke,y:$n}}class DOMSelectionState{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(Ce){return this.anchorNode==Ce.anchorNode&&this.anchorOffset==Ce.anchorOffset&&this.focusNode==Ce.focusNode&&this.focusOffset==Ce.focusOffset}setRange(Ce){let{anchorNode:ke,focusNode:$n}=Ce;this.set(ke,Math.min(Ce.anchorOffset,ke?maxOffset(ke):0),$n,Math.min(Ce.focusOffset,$n?maxOffset($n):0))}set(Ce,ke,$n,Hn){this.anchorNode=Ce,this.anchorOffset=ke,this.focusNode=$n,this.focusOffset=Hn}}let preventScrollSupported=null;function focusPreventScroll(_n){if(_n.setActive)return _n.setActive();if(preventScrollSupported)return _n.focus(preventScrollSupported);let Ce=[];for(let ke=_n;ke&&(Ce.push(ke,ke.scrollTop,ke.scrollLeft),ke!=ke.ownerDocument);ke=ke.parentNode);if(_n.focus(preventScrollSupported==null?{get preventScroll(){return preventScrollSupported={preventScroll:!0},!0}}:void 0),!preventScrollSupported){preventScrollSupported=!1;for(let ke=0;keMath.max(1,_n.scrollHeight-_n.clientHeight-4)}function textNodeBefore(_n,Ce){for(let ke=_n,$n=Ce;;){if(ke.nodeType==3&&$n>0)return{node:ke,offset:$n};if(ke.nodeType==1&&$n>0){if(ke.contentEditable=="false")return null;ke=ke.childNodes[$n-1],$n=maxOffset(ke)}else if(ke.parentNode&&!isBlockElement(ke))$n=domIndex(ke),ke=ke.parentNode;else return null}}function textNodeAfter(_n,Ce){for(let ke=_n,$n=Ce;;){if(ke.nodeType==3&&$nke)return io.domBoundsAround(Ce,ke,Jn);if(uo>=Ce&&Hn==-1&&(Hn=Yn,zn=Jn),Jn>ke&&io.dom.parentNode==this.dom){Zn=Yn,qn=to;break}to=uo,Jn=uo+io.breakAfter}return{from:zn,to:qn<0?$n+this.length:qn,startDOM:(Hn?this.children[Hn-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:Zn=0?this.children[Zn].dom:null}}markDirty(Ce=!1){this.flags|=2,this.markParentsDirty(Ce)}markParentsDirty(Ce){for(let ke=this.parent;ke;ke=ke.parent){if(Ce&&(ke.flags|=2),ke.flags&1)return;ke.flags|=1,Ce=!1}}setParent(Ce){this.parent!=Ce&&(this.parent=Ce,this.flags&7&&this.markParentsDirty(!0))}setDOM(Ce){this.dom!=Ce&&(this.dom&&(this.dom.cmView=null),this.dom=Ce,Ce.cmView=this)}get rootView(){for(let Ce=this;;){let ke=Ce.parent;if(!ke)return Ce;Ce=ke}}replaceChildren(Ce,ke,$n=noChildren){this.markDirty();for(let Hn=Ce;Hnthis.pos||Ce==this.pos&&(ke>0||this.i==0||this.children[this.i-1].breakAfter))return this.off=Ce-this.pos,this;let $n=this.children[--this.i];this.pos-=$n.length+$n.breakAfter}}}function replaceRange(_n,Ce,ke,$n,Hn,zn,Zn,qn,Yn){let{children:Jn}=_n,to=Jn.length?Jn[Ce]:null,io=zn.length?zn[zn.length-1]:null,uo=io?io.breakAfter:Zn;if(!(Ce==$n&&to&&!Zn&&!uo&&zn.length<2&&to.merge(ke,Hn,zn.length?io:null,ke==0,qn,Yn))){if($n0&&(!Zn&&zn.length&&to.merge(ke,to.length,zn[0],!1,qn,0)?to.breakAfter=zn.shift().breakAfter:(ke2);var browser={mac:ios||/Mac/.test(nav.platform),windows:/Win/.test(nav.platform),linux:/Linux|X11/.test(nav.platform),ie,ie_version:ie_upto10?doc.documentMode||6:ie_11up?+ie_11up[1]:ie_edge?+ie_edge[1]:0,gecko,gecko_version:gecko?+(/Firefox\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,chrome:!!chrome,chrome_version:chrome?+chrome[1]:0,ios,android:/Android\b/.test(nav.userAgent),webkit,safari,webkit_version:webkit?+(/\bAppleWebKit\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,tabSize:doc.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};const MaxJoinLen=256;class TextView extends ContentView{constructor(Ce){super(),this.text=Ce}get length(){return this.text.length}createDOM(Ce){this.setDOM(Ce||document.createTextNode(this.text))}sync(Ce,ke){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(ke&&ke.node==this.dom&&(ke.written=!0),this.dom.nodeValue=this.text)}reuseDOM(Ce){Ce.nodeType==3&&this.createDOM(Ce)}merge(Ce,ke,$n){return this.flags&8||$n&&(!($n instanceof TextView)||this.length-(ke-Ce)+$n.length>MaxJoinLen||$n.flags&8)?!1:(this.text=this.text.slice(0,Ce)+($n?$n.text:"")+this.text.slice(ke),this.markDirty(),!0)}split(Ce){let ke=new TextView(this.text.slice(Ce));return this.text=this.text.slice(0,Ce),this.markDirty(),ke.flags|=this.flags&8,ke}localPosFromDOM(Ce,ke){return Ce==this.dom?ke:ke?this.text.length:0}domAtPos(Ce){return new DOMPos(this.dom,Ce)}domBoundsAround(Ce,ke,$n){return{from:$n,to:$n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(Ce,ke){return textCoords(this.dom,Ce,ke)}}class MarkView extends ContentView{constructor(Ce,ke=[],$n=0){super(),this.mark=Ce,this.children=ke,this.length=$n;for(let Hn of ke)Hn.setParent(this)}setAttrs(Ce){if(clearAttributes(Ce),this.mark.class&&(Ce.className=this.mark.class),this.mark.attrs)for(let ke in this.mark.attrs)Ce.setAttribute(ke,this.mark.attrs[ke]);return Ce}canReuseDOM(Ce){return super.canReuseDOM(Ce)&&!((this.flags|Ce.flags)&8)}reuseDOM(Ce){Ce.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(Ce),this.flags|=6)}sync(Ce,ke){this.dom?this.flags&4&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(Ce,ke)}merge(Ce,ke,$n,Hn,zn,Zn){return $n&&(!($n instanceof MarkView&&$n.mark.eq(this.mark))||Ce&&zn<=0||keCe&&ke.push($n=Ce&&(Hn=zn),$n=Yn,zn++}let Zn=this.length-Ce;return this.length=Ce,Hn>-1&&(this.children.length=Hn,this.markDirty()),new MarkView(this.mark,ke,Zn)}domAtPos(Ce){return inlineDOMAtPos(this,Ce)}coordsAt(Ce,ke){return coordsInChildren(this,Ce,ke)}}function textCoords(_n,Ce,ke){let $n=_n.nodeValue.length;Ce>$n&&(Ce=$n);let Hn=Ce,zn=Ce,Zn=0;Ce==0&&ke<0||Ce==$n&&ke>=0?browser.chrome||browser.gecko||(Ce?(Hn--,Zn=1):zn<$n&&(zn++,Zn=-1)):ke<0?Hn--:zn<$n&&zn++;let qn=textRange(_n,Hn,zn).getClientRects();if(!qn.length)return null;let Yn=qn[(Zn?Zn<0:ke>=0)?0:qn.length-1];return browser.safari&&!Zn&&Yn.width==0&&(Yn=Array.prototype.find.call(qn,Jn=>Jn.width)||Yn),Zn?flattenRect(Yn,Zn<0):Yn||null}class WidgetView extends ContentView{static create(Ce,ke,$n){return new WidgetView(Ce,ke,$n)}constructor(Ce,ke,$n){super(),this.widget=Ce,this.length=ke,this.side=$n,this.prevWidget=null}split(Ce){let ke=WidgetView.create(this.widget,this.length-Ce,this.side);return this.length-=Ce,ke}sync(Ce){(!this.dom||!this.widget.updateDOM(this.dom,Ce))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(Ce)),this.widget.editable||(this.dom.contentEditable="false"))}getSide(){return this.side}merge(Ce,ke,$n,Hn,zn,Zn){return $n&&(!($n instanceof WidgetView)||!this.widget.compare($n.widget)||Ce>0&&zn<=0||ke0)?DOMPos.before(this.dom):DOMPos.after(this.dom,Ce==this.length)}domBoundsAround(){return null}coordsAt(Ce,ke){let $n=this.widget.coordsAt(this.dom,Ce,ke);if($n)return $n;let Hn=this.dom.getClientRects(),zn=null;if(!Hn.length)return null;let Zn=this.side?this.side<0:Ce>0;for(let qn=Zn?Hn.length-1:0;zn=Hn[qn],!(Ce>0?qn==0:qn==Hn.length-1||zn.top0?DOMPos.before(this.dom):DOMPos.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(Ce){return this.dom.getBoundingClientRect()}get overrideDOMText(){return Text.empty}get isHidden(){return!0}}TextView.prototype.children=WidgetView.prototype.children=WidgetBufferView.prototype.children=noChildren;function inlineDOMAtPos(_n,Ce){let ke=_n.dom,{children:$n}=_n,Hn=0;for(let zn=0;Hn<$n.length;Hn++){let Zn=$n[Hn],qn=zn+Zn.length;if(!(qn==zn&&Zn.getSide()<=0)){if(Ce>zn&&Ce0;zn--){let Zn=$n[zn-1];if(Zn.dom.parentNode==ke)return Zn.domAtPos(Zn.length)}for(let zn=Hn;zn<$n.length;zn++){let Zn=$n[zn];if(Zn.dom.parentNode==ke)return Zn.domAtPos(0)}return new DOMPos(ke,0)}function joinInlineInto(_n,Ce,ke){let $n,{children:Hn}=_n;ke>0&&Ce instanceof MarkView&&Hn.length&&($n=Hn[Hn.length-1])instanceof MarkView&&$n.mark.eq(Ce.mark)?joinInlineInto($n,Ce.children[0],ke-1):(Hn.push(Ce),Ce.setParent(_n)),_n.length+=Ce.length}function coordsInChildren(_n,Ce,ke){let $n=null,Hn=-1,zn=null,Zn=-1;function qn(Jn,to){for(let io=0,uo=0;io=to&&(mo.children.length?qn(mo,to-uo):(!zn||zn.isHidden&&ke>0)&&(bo>to||uo==bo&&mo.getSide()>0)?(zn=mo,Zn=to-uo):(uo-1?1:0)!=Hn.length-(ke&&Hn.indexOf(ke)>-1?1:0))return!1;for(let zn of $n)if(zn!=ke&&(Hn.indexOf(zn)==-1||_n[zn]!==Ce[zn]))return!1;return!0}function updateAttrs(_n,Ce,ke){let $n=!1;if(Ce)for(let Hn in Ce)ke&&Hn in ke||($n=!0,Hn=="style"?_n.style.cssText="":_n.removeAttribute(Hn));if(ke)for(let Hn in ke)Ce&&Ce[Hn]==ke[Hn]||($n=!0,Hn=="style"?_n.style.cssText=ke[Hn]:_n.setAttribute(Hn,ke[Hn]));return $n}function getAttrs$1(_n){let Ce=Object.create(null);for(let ke=0;ke<_n.attributes.length;ke++){let $n=_n.attributes[ke];Ce[$n.name]=$n.value}return Ce}class WidgetType{eq(Ce){return!1}updateDOM(Ce,ke){return!1}compare(Ce){return this==Ce||this.constructor==Ce.constructor&&this.eq(Ce)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(Ce){return!0}coordsAt(Ce,ke,$n){return null}get isHidden(){return!1}get editable(){return!1}destroy(Ce){}}var BlockType=function(_n){return _n[_n.Text=0]="Text",_n[_n.WidgetBefore=1]="WidgetBefore",_n[_n.WidgetAfter=2]="WidgetAfter",_n[_n.WidgetRange=3]="WidgetRange",_n}(BlockType||(BlockType={}));class Decoration extends RangeValue{constructor(Ce,ke,$n,Hn){super(),this.startSide=Ce,this.endSide=ke,this.widget=$n,this.spec=Hn}get heightRelevant(){return!1}static mark(Ce){return new MarkDecoration(Ce)}static widget(Ce){let ke=Math.max(-1e4,Math.min(1e4,Ce.side||0)),$n=!!Ce.block;return ke+=$n&&!Ce.inlineOrder?ke>0?3e8:-4e8:ke>0?1e8:-1e8,new PointDecoration(Ce,ke,ke,$n,Ce.widget||null,!1)}static replace(Ce){let ke=!!Ce.block,$n,Hn;if(Ce.isBlockGap)$n=-5e8,Hn=4e8;else{let{start:zn,end:Zn}=getInclusive(Ce,ke);$n=(zn?ke?-3e8:-1:5e8)-1,Hn=(Zn?ke?2e8:1:-6e8)+1}return new PointDecoration(Ce,$n,Hn,ke,Ce.widget||null,!0)}static line(Ce){return new LineDecoration(Ce)}static set(Ce,ke=!1){return RangeSet.of(Ce,ke)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Decoration.none=RangeSet.empty;class MarkDecoration extends Decoration{constructor(Ce){let{start:ke,end:$n}=getInclusive(Ce);super(ke?-1:5e8,$n?1:-6e8,null,Ce),this.tagName=Ce.tagName||"span",this.class=Ce.class||"",this.attrs=Ce.attributes||null}eq(Ce){var ke,$n;return this==Ce||Ce instanceof MarkDecoration&&this.tagName==Ce.tagName&&(this.class||((ke=this.attrs)===null||ke===void 0?void 0:ke.class))==(Ce.class||(($n=Ce.attrs)===null||$n===void 0?void 0:$n.class))&&attrsEq(this.attrs,Ce.attrs,"class")}range(Ce,ke=Ce){if(Ce>=ke)throw new RangeError("Mark decorations may not be empty");return super.range(Ce,ke)}}MarkDecoration.prototype.point=!1;class LineDecoration extends Decoration{constructor(Ce){super(-2e8,-2e8,null,Ce)}eq(Ce){return Ce instanceof LineDecoration&&this.spec.class==Ce.spec.class&&attrsEq(this.spec.attributes,Ce.spec.attributes)}range(Ce,ke=Ce){if(ke!=Ce)throw new RangeError("Line decoration ranges must be zero-length");return super.range(Ce,ke)}}LineDecoration.prototype.mapMode=MapMode.TrackBefore;LineDecoration.prototype.point=!0;class PointDecoration extends Decoration{constructor(Ce,ke,$n,Hn,zn,Zn){super(ke,$n,zn,Ce),this.block=Hn,this.isReplace=Zn,this.mapMode=Hn?ke<=0?MapMode.TrackBefore:MapMode.TrackAfter:MapMode.TrackDel}get type(){return this.startSide!=this.endSide?BlockType.WidgetRange:this.startSide<=0?BlockType.WidgetBefore:BlockType.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(Ce){return Ce instanceof PointDecoration&&widgetsEq(this.widget,Ce.widget)&&this.block==Ce.block&&this.startSide==Ce.startSide&&this.endSide==Ce.endSide}range(Ce,ke=Ce){if(this.isReplace&&(Ce>ke||Ce==ke&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&ke!=Ce)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(Ce,ke)}}PointDecoration.prototype.point=!0;function getInclusive(_n,Ce=!1){let{inclusiveStart:ke,inclusiveEnd:$n}=_n;return ke==null&&(ke=_n.inclusive),$n==null&&($n=_n.inclusive),{start:ke??Ce,end:$n??Ce}}function widgetsEq(_n,Ce){return _n==Ce||!!(_n&&Ce&&_n.compare(Ce))}function addRange(_n,Ce,ke,$n=0){let Hn=ke.length-1;Hn>=0&&ke[Hn]+$n>=_n?ke[Hn]=Math.max(ke[Hn],Ce):ke.push(_n,Ce)}class LineView extends ContentView{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(Ce,ke,$n,Hn,zn,Zn){if($n){if(!($n instanceof LineView))return!1;this.dom||$n.transferDOM(this)}return Hn&&this.setDeco($n?$n.attrs:null),mergeChildrenInto(this,Ce,ke,$n?$n.children.slice():[],zn,Zn),!0}split(Ce){let ke=new LineView;if(ke.breakAfter=this.breakAfter,this.length==0)return ke;let{i:$n,off:Hn}=this.childPos(Ce);Hn&&(ke.append(this.children[$n].split(Hn),0),this.children[$n].merge(Hn,this.children[$n].length,null,!1,0,0),$n++);for(let zn=$n;zn0&&this.children[$n-1].length==0;)this.children[--$n].destroy();return this.children.length=$n,this.markDirty(),this.length=Ce,ke}transferDOM(Ce){this.dom&&(this.markDirty(),Ce.setDOM(this.dom),Ce.prevAttrs=this.prevAttrs===void 0?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(Ce){attrsEq(this.attrs,Ce)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=Ce)}append(Ce,ke){joinInlineInto(this,Ce,ke)}addLineDeco(Ce){let ke=Ce.spec.attributes,$n=Ce.spec.class;ke&&(this.attrs=combineAttrs(ke,this.attrs||{})),$n&&(this.attrs=combineAttrs({class:$n},this.attrs||{}))}domAtPos(Ce){return inlineDOMAtPos(this,Ce)}reuseDOM(Ce){Ce.nodeName=="DIV"&&(this.setDOM(Ce),this.flags|=6)}sync(Ce,ke){var $n;this.dom?this.flags&4&&(clearAttributes(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),this.prevAttrs!==void 0&&(updateAttrs(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(Ce,ke);let Hn=this.dom.lastChild;for(;Hn&&ContentView.get(Hn)instanceof MarkView;)Hn=Hn.lastChild;if(!Hn||!this.length||Hn.nodeName!="BR"&&(($n=ContentView.get(Hn))===null||$n===void 0?void 0:$n.isEditable)==!1&&(!browser.ios||!this.children.some(zn=>zn instanceof TextView))){let zn=document.createElement("BR");zn.cmIgnore=!0,this.dom.appendChild(zn)}}measureTextSize(){if(this.children.length==0||this.length>20)return null;let Ce=0,ke;for(let $n of this.children){if(!($n instanceof TextView)||/[^ -~]/.test($n.text))return null;let Hn=clientRectsFor($n.dom);if(Hn.length!=1)return null;Ce+=Hn[0].width,ke=Hn[0].height}return Ce?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:Ce/this.length,textHeight:ke}:null}coordsAt(Ce,ke){let $n=coordsInChildren(this,Ce,ke);if(!this.children.length&&$n&&this.parent){let{heightOracle:Hn}=this.parent.view.viewState,zn=$n.bottom-$n.top;if(Math.abs(zn-Hn.lineHeight)<2&&Hn.textHeight=ke){if(zn instanceof LineView)return zn;if(Zn>ke)break}Hn=Zn+zn.breakAfter}return null}}class BlockWidgetView extends ContentView{constructor(Ce,ke,$n){super(),this.widget=Ce,this.length=ke,this.deco=$n,this.breakAfter=0,this.prevWidget=null}merge(Ce,ke,$n,Hn,zn,Zn){return $n&&(!($n instanceof BlockWidgetView)||!this.widget.compare($n.widget)||Ce>0&&zn<=0||ke0}}class BlockGapWidget extends WidgetType{constructor(Ce){super(),this.height=Ce}toDOM(){let Ce=document.createElement("div");return Ce.className="cm-gap",this.updateDOM(Ce),Ce}eq(Ce){return Ce.height==this.height}updateDOM(Ce){return Ce.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}class ContentBuilder{constructor(Ce,ke,$n,Hn){this.doc=Ce,this.pos=ke,this.end=$n,this.disallowBlockEffectsFor=Hn,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=Ce.iter(),this.skip=ke}posCovered(){if(this.content.length==0)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let Ce=this.content[this.content.length-1];return!(Ce.breakAfter||Ce instanceof BlockWidgetView&&Ce.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new LineView),this.atCursorPos=!0),this.curLine}flushBuffer(Ce=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(wrapMarks(new WidgetBufferView(-1),Ce),Ce.length),this.pendingBuffer=0)}addBlockWidget(Ce){this.flushBuffer(),this.curLine=null,this.content.push(Ce)}finish(Ce){this.pendingBuffer&&Ce<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,!this.posCovered()&&!(Ce&&this.content.length&&this.content[this.content.length-1]instanceof BlockWidgetView)&&this.getLine()}buildText(Ce,ke,$n){for(;Ce>0;){if(this.textOff==this.text.length){let{value:zn,lineBreak:Zn,done:qn}=this.cursor.next(this.skip);if(this.skip=0,qn)throw new Error("Ran out of text content when drawing inline views");if(Zn){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,Ce--;continue}else this.text=zn,this.textOff=0}let Hn=Math.min(this.text.length-this.textOff,Ce,512);this.flushBuffer(ke.slice(ke.length-$n)),this.getLine().append(wrapMarks(new TextView(this.text.slice(this.textOff,this.textOff+Hn)),ke),$n),this.atCursorPos=!0,this.textOff+=Hn,Ce-=Hn,$n=0}}span(Ce,ke,$n,Hn){this.buildText(ke-Ce,$n,Hn),this.pos=ke,this.openStart<0&&(this.openStart=Hn)}point(Ce,ke,$n,Hn,zn,Zn){if(this.disallowBlockEffectsFor[Zn]&&$n instanceof PointDecoration){if($n.block)throw new RangeError("Block decorations may not be specified via plugins");if(ke>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let qn=ke-Ce;if($n instanceof PointDecoration)if($n.block)$n.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new BlockWidgetView($n.widget||NullWidget.block,qn,$n));else{let Yn=WidgetView.create($n.widget||NullWidget.inline,qn,qn?0:$n.startSide),Jn=this.atCursorPos&&!Yn.isEditable&&zn<=Hn.length&&(Ce0),to=!Yn.isEditable&&(CeHn.length||$n.startSide<=0),io=this.getLine();this.pendingBuffer==2&&!Jn&&!Yn.isEditable&&(this.pendingBuffer=0),this.flushBuffer(Hn),Jn&&(io.append(wrapMarks(new WidgetBufferView(1),Hn),zn),zn=Hn.length+Math.max(0,zn-Hn.length)),io.append(wrapMarks(Yn,Hn),zn),this.atCursorPos=to,this.pendingBuffer=to?CeHn.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=Hn.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco($n);qn&&(this.textOff+qn<=this.text.length?this.textOff+=qn:(this.skip+=qn-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=ke),this.openStart<0&&(this.openStart=zn)}static build(Ce,ke,$n,Hn,zn){let Zn=new ContentBuilder(Ce,ke,$n,zn);return Zn.openEnd=RangeSet.spans(Hn,ke,$n,Zn),Zn.openStart<0&&(Zn.openStart=Zn.openEnd),Zn.finish(Zn.openEnd),Zn}}function wrapMarks(_n,Ce){for(let ke of Ce)_n=new MarkView(ke,[_n],_n.length);return _n}class NullWidget extends WidgetType{constructor(Ce){super(),this.tag=Ce}eq(Ce){return Ce.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(Ce){return Ce.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}NullWidget.inline=new NullWidget("span");NullWidget.block=new NullWidget("div");var Direction=function(_n){return _n[_n.LTR=0]="LTR",_n[_n.RTL=1]="RTL",_n}(Direction||(Direction={}));const LTR=Direction.LTR,RTL=Direction.RTL;function dec(_n){let Ce=[];for(let ke=0;ke<_n.length;ke++)Ce.push(1<<+_n[ke]);return Ce}const LowTypes=dec("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),ArabicTypes=dec("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),Brackets=Object.create(null),BracketStack=[];for(let _n of["()","[]","{}"]){let Ce=_n.charCodeAt(0),ke=_n.charCodeAt(1);Brackets[Ce]=ke,Brackets[ke]=-Ce}function charType(_n){return _n<=247?LowTypes[_n]:1424<=_n&&_n<=1524?2:1536<=_n&&_n<=1785?ArabicTypes[_n-1536]:1774<=_n&&_n<=2220?4:8192<=_n&&_n<=8204?256:64336<=_n&&_n<=65023?4:1}const BidiRE=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class BidiSpan{get dir(){return this.level%2?RTL:LTR}constructor(Ce,ke,$n){this.from=Ce,this.to=ke,this.level=$n}side(Ce,ke){return this.dir==ke==Ce?this.to:this.from}forward(Ce,ke){return Ce==(this.dir==ke)}static find(Ce,ke,$n,Hn){let zn=-1;for(let Zn=0;Zn=ke){if(qn.level==$n)return Zn;(zn<0||(Hn!=0?Hn<0?qn.fromke:Ce[zn].level>qn.level))&&(zn=Zn)}}if(zn<0)throw new RangeError("Index out of range");return zn}}function isolatesEq(_n,Ce){if(_n.length!=Ce.length)return!1;for(let ke=0;ke<_n.length;ke++){let $n=_n[ke],Hn=Ce[ke];if($n.from!=Hn.from||$n.to!=Hn.to||$n.direction!=Hn.direction||!isolatesEq($n.inner,Hn.inner))return!1}return!0}const types=[];function computeCharTypes(_n,Ce,ke,$n,Hn){for(let zn=0;zn<=$n.length;zn++){let Zn=zn?$n[zn-1].to:Ce,qn=zn<$n.length?$n[zn].from:ke,Yn=zn?256:Hn;for(let Jn=Zn,to=Yn,io=Yn;Jn=0;Oo-=3)if(BracketStack[Oo+1]==-mo){let wo=BracketStack[Oo+2],$o=wo&2?Hn:wo&4?wo&1?zn:Hn:0;$o&&(types[io]=types[BracketStack[Oo]]=$o),qn=Oo;break}}else{if(BracketStack.length==189)break;BracketStack[qn++]=io,BracketStack[qn++]=uo,BracketStack[qn++]=Yn}else if((bo=types[io])==2||bo==1){let Oo=bo==Hn;Yn=Oo?0:1;for(let wo=qn-3;wo>=0;wo-=3){let $o=BracketStack[wo+2];if($o&2)break;if(Oo)BracketStack[wo+2]|=2;else{if($o&4)break;BracketStack[wo+2]|=4}}}}}function processNeutrals(_n,Ce,ke,$n){for(let Hn=0,zn=$n;Hn<=ke.length;Hn++){let Zn=Hn?ke[Hn-1].to:_n,qn=HnYn;)bo==wo&&(bo=ke[--Oo].from,wo=Oo?ke[Oo-1].to:_n),types[--bo]=mo;Yn=to}else zn=Jn,Yn++}}}function emitSpans(_n,Ce,ke,$n,Hn,zn,Zn){let qn=$n%2?2:1;if($n%2==Hn%2)for(let Yn=Ce,Jn=0;YnYn&&Zn.push(new BidiSpan(Yn,Oo.from,mo));let wo=Oo.direction==LTR!=!(mo%2);computeSectionOrder(_n,wo?$n+1:$n,Hn,Oo.inner,Oo.from,Oo.to,Zn),Yn=Oo.to}bo=Oo.to}else{if(bo==ke||(to?types[bo]!=qn:types[bo]==qn))break;bo++}uo?emitSpans(_n,Yn,bo,$n+1,Hn,uo,Zn):YnCe;){let to=!0,io=!1;if(!Jn||Yn>zn[Jn-1].to){let Oo=types[Yn-1];Oo!=qn&&(to=!1,io=Oo==16)}let uo=!to&&qn==1?[]:null,mo=to?$n:$n+1,bo=Yn;e:for(;;)if(Jn&&bo==zn[Jn-1].to){if(io)break e;let Oo=zn[--Jn];if(!to)for(let wo=Oo.from,$o=Jn;;){if(wo==Ce)break e;if($o&&zn[$o-1].to==wo)wo=zn[--$o].from;else{if(types[wo-1]==qn)break e;break}}if(uo)uo.push(Oo);else{Oo.totypes.length;)types[types.length]=256;let $n=[],Hn=Ce==LTR?0:1;return computeSectionOrder(_n,Hn,Hn,ke,0,_n.length,$n),$n}function trivialOrder(_n){return[new BidiSpan(0,_n,0)]}let movedOver="";function moveVisually(_n,Ce,ke,$n,Hn){var zn;let Zn=$n.head-_n.from,qn=BidiSpan.find(Ce,Zn,(zn=$n.bidiLevel)!==null&&zn!==void 0?zn:-1,$n.assoc),Yn=Ce[qn],Jn=Yn.side(Hn,ke);if(Zn==Jn){let uo=qn+=Hn?1:-1;if(uo<0||uo>=Ce.length)return null;Yn=Ce[qn=uo],Zn=Yn.side(!Hn,ke),Jn=Yn.side(Hn,ke)}let to=findClusterBreak(_n.text,Zn,Yn.forward(Hn,ke));(toYn.to)&&(to=Jn),movedOver=_n.text.slice(Math.min(Zn,to),Math.max(Zn,to));let io=qn==(Hn?Ce.length-1:0)?null:Ce[qn+(Hn?1:-1)];return io&&to==Jn&&io.level+(Hn?0:1)_n.some(Ce=>Ce)}),nativeSelectionHidden=Facet.define({combine:_n=>_n.some(Ce=>Ce)}),scrollHandler=Facet.define();class ScrollTarget{constructor(Ce,ke="nearest",$n="nearest",Hn=5,zn=5,Zn=!1){this.range=Ce,this.y=ke,this.x=$n,this.yMargin=Hn,this.xMargin=zn,this.isSnapshot=Zn}map(Ce){return Ce.empty?this:new ScrollTarget(this.range.map(Ce),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(Ce){return this.range.to<=Ce.doc.length?this:new ScrollTarget(EditorSelection.cursor(Ce.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const scrollIntoView$1=StateEffect.define({map:(_n,Ce)=>_n.map(Ce)}),setEditContextFormatting=StateEffect.define();function logException(_n,Ce,ke){let $n=_n.facet(exceptionSink);$n.length?$n[0](Ce):window.onerror?window.onerror(String(Ce),ke,void 0,void 0,Ce):ke?console.error(ke+":",Ce):console.error(Ce)}const editable=Facet.define({combine:_n=>_n.length?_n[0]:!0});let nextPluginID=0;const viewPlugin=Facet.define();class ViewPlugin{constructor(Ce,ke,$n,Hn,zn){this.id=Ce,this.create=ke,this.domEventHandlers=$n,this.domEventObservers=Hn,this.extension=zn(this)}static define(Ce,ke){const{eventHandlers:$n,eventObservers:Hn,provide:zn,decorations:Zn}=ke||{};return new ViewPlugin(nextPluginID++,Ce,$n,Hn,qn=>{let Yn=[viewPlugin.of(qn)];return Zn&&Yn.push(decorations.of(Jn=>{let to=Jn.plugin(qn);return to?Zn(to):Decoration.none})),zn&&Yn.push(zn(qn)),Yn})}static fromClass(Ce,ke){return ViewPlugin.define($n=>new Ce($n),ke)}}class PluginInstance{constructor(Ce){this.spec=Ce,this.mustUpdate=null,this.value=null}update(Ce){if(this.value){if(this.mustUpdate){let ke=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(ke)}catch($n){if(logException(ke.state,$n,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.create(Ce)}catch(ke){logException(Ce.state,ke,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(Ce){var ke;if(!((ke=this.value)===null||ke===void 0)&&ke.destroy)try{this.value.destroy()}catch($n){logException(Ce.state,$n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const editorAttributes=Facet.define(),contentAttributes=Facet.define(),decorations=Facet.define(),outerDecorations=Facet.define(),atomicRanges=Facet.define(),bidiIsolatedRanges=Facet.define();function getIsolatedRanges(_n,Ce){let ke=_n.state.facet(bidiIsolatedRanges);if(!ke.length)return ke;let $n=ke.map(zn=>zn instanceof Function?zn(_n):zn),Hn=[];return RangeSet.spans($n,Ce.from,Ce.to,{point(){},span(zn,Zn,qn,Yn){let Jn=zn-Ce.from,to=Zn-Ce.from,io=Hn;for(let uo=qn.length-1;uo>=0;uo--,Yn--){let mo=qn[uo].spec.bidiIsolate,bo;if(mo==null&&(mo=autoDirection(Ce.text,Jn,to)),Yn>0&&io.length&&(bo=io[io.length-1]).to==Jn&&bo.direction==mo)bo.to=to,io=bo.inner;else{let Oo={from:Jn,to,direction:mo,inner:[]};io.push(Oo),io=Oo.inner}}}}),Hn}const scrollMargins=Facet.define();function getScrollMargins(_n){let Ce=0,ke=0,$n=0,Hn=0;for(let zn of _n.state.facet(scrollMargins)){let Zn=zn(_n);Zn&&(Zn.left!=null&&(Ce=Math.max(Ce,Zn.left)),Zn.right!=null&&(ke=Math.max(ke,Zn.right)),Zn.top!=null&&($n=Math.max($n,Zn.top)),Zn.bottom!=null&&(Hn=Math.max(Hn,Zn.bottom)))}return{left:Ce,right:ke,top:$n,bottom:Hn}}const styleModule=Facet.define();class ChangedRange{constructor(Ce,ke,$n,Hn){this.fromA=Ce,this.toA=ke,this.fromB=$n,this.toB=Hn}join(Ce){return new ChangedRange(Math.min(this.fromA,Ce.fromA),Math.max(this.toA,Ce.toA),Math.min(this.fromB,Ce.fromB),Math.max(this.toB,Ce.toB))}addToSet(Ce){let ke=Ce.length,$n=this;for(;ke>0;ke--){let Hn=Ce[ke-1];if(!(Hn.fromA>$n.toA)){if(Hn.toA<$n.fromA)break;$n=$n.join(Hn),Ce.splice(ke-1,1)}}return Ce.splice(ke,0,$n),Ce}static extendWithRanges(Ce,ke){if(ke.length==0)return Ce;let $n=[];for(let Hn=0,zn=0,Zn=0,qn=0;;Hn++){let Yn=Hn==Ce.length?null:Ce[Hn],Jn=Zn-qn,to=Yn?Yn.fromB:1e9;for(;znto)break;zn+=2}if(!Yn)return $n;new ChangedRange(Yn.fromA,Yn.toA,Yn.fromB,Yn.toB).addToSet($n),Zn=Yn.toA,qn=Yn.toB}}}class ViewUpdate{constructor(Ce,ke,$n){this.view=Ce,this.state=ke,this.transactions=$n,this.flags=0,this.startState=Ce.state,this.changes=ChangeSet.empty(this.startState.doc.length);for(let zn of $n)this.changes=this.changes.compose(zn.changes);let Hn=[];this.changes.iterChangedRanges((zn,Zn,qn,Yn)=>Hn.push(new ChangedRange(zn,Zn,qn,Yn))),this.changedRanges=Hn}static create(Ce,ke,$n){return new ViewUpdate(Ce,ke,$n)}get viewportChanged(){return(this.flags&4)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&10)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(Ce=>Ce.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}class DocView extends ContentView{get length(){return this.view.state.doc.length}constructor(Ce){super(),this.view=Ce,this.decorations=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.markedForComposition=new Set,this.editContextFormatting=Decoration.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(Ce.contentDOM),this.children=[new LineView],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new ChangedRange(0,0,0,Ce.state.doc.length)],0,null)}update(Ce){var ke;let $n=Ce.changedRanges;this.minWidth>0&&$n.length&&($n.every(({fromA:Jn,toA:to})=>tothis.minWidthTo)?(this.minWidthFrom=Ce.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=Ce.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(Ce);let Hn=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((ke=this.domChanged)===null||ke===void 0)&&ke.newSel?Hn=this.domChanged.newSel.head:!touchesComposition(Ce.changes,this.hasComposition)&&!Ce.selectionSet&&(Hn=Ce.state.selection.main.head));let zn=Hn>-1?findCompositionRange(this.view,Ce.changes,Hn):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:Jn,to}=this.hasComposition;$n=new ChangedRange(Jn,to,Ce.changes.mapPos(Jn,-1),Ce.changes.mapPos(to,1)).addToSet($n.slice())}this.hasComposition=zn?{from:zn.range.fromB,to:zn.range.toB}:null,(browser.ie||browser.chrome)&&!zn&&Ce&&Ce.state.doc.lines!=Ce.startState.doc.lines&&(this.forceSelection=!0);let Zn=this.decorations,qn=this.updateDeco(),Yn=findChangedDeco(Zn,qn,Ce.changes);return $n=ChangedRange.extendWithRanges($n,Yn),!(this.flags&7)&&$n.length==0?!1:(this.updateInner($n,Ce.startState.doc.length,zn),Ce.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(Ce,ke,$n){this.view.viewState.mustMeasureContent=!0,this.updateChildren(Ce,ke,$n);let{observer:Hn}=this.view;Hn.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let Zn=browser.chrome||browser.ios?{node:Hn.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,Zn),this.flags&=-8,Zn&&(Zn.written||Hn.selectionRange.focusNode!=Zn.node)&&(this.forceSelection=!0),this.dom.style.height=""}),this.markedForComposition.forEach(Zn=>Zn.flags&=-9);let zn=[];if(this.view.viewport.from||this.view.viewport.to=0?Hn[Zn]:null;if(!qn)break;let{fromA:Yn,toA:Jn,fromB:to,toB:io}=qn,uo,mo,bo,Oo;if($n&&$n.range.fromBto){let Bo=ContentBuilder.build(this.view.state.doc,to,$n.range.fromB,this.decorations,this.dynamicDecorationMap),Vo=ContentBuilder.build(this.view.state.doc,$n.range.toB,io,this.decorations,this.dynamicDecorationMap);mo=Bo.breakAtStart,bo=Bo.openStart,Oo=Vo.openEnd;let Ko=this.compositionView($n);Vo.breakAtStart?Ko.breakAfter=1:Vo.content.length&&Ko.merge(Ko.length,Ko.length,Vo.content[0],!1,Vo.openStart,0)&&(Ko.breakAfter=Vo.content[0].breakAfter,Vo.content.shift()),Bo.content.length&&Ko.merge(0,0,Bo.content[Bo.content.length-1],!0,0,Bo.openEnd)&&Bo.content.pop(),uo=Bo.content.concat(Ko).concat(Vo.content)}else({content:uo,breakAtStart:mo,openStart:bo,openEnd:Oo}=ContentBuilder.build(this.view.state.doc,to,io,this.decorations,this.dynamicDecorationMap));let{i:wo,off:$o}=zn.findPos(Jn,1),{i:Do,off:xo}=zn.findPos(Yn,-1);replaceRange(this,Do,xo,wo,$o,uo,mo,bo,Oo)}$n&&this.fixCompositionDOM($n)}updateEditContextFormatting(Ce){this.editContextFormatting=this.editContextFormatting.map(Ce.changes);for(let ke of Ce.transactions)for(let $n of ke.effects)$n.is(setEditContextFormatting)&&(this.editContextFormatting=$n.value)}compositionView(Ce){let ke=new TextView(Ce.text.nodeValue);ke.flags|=8;for(let{deco:Hn}of Ce.marks)ke=new MarkView(Hn,[ke],ke.length);let $n=new LineView;return $n.append(ke,0),$n}fixCompositionDOM(Ce){let ke=(zn,Zn)=>{Zn.flags|=8|(Zn.children.some(Yn=>Yn.flags&7)?1:0),this.markedForComposition.add(Zn);let qn=ContentView.get(zn);qn&&qn!=Zn&&(qn.dom=null),Zn.setDOM(zn)},$n=this.childPos(Ce.range.fromB,1),Hn=this.children[$n.i];ke(Ce.line,Hn);for(let zn=Ce.marks.length-1;zn>=-1;zn--)$n=Hn.childPos($n.off,1),Hn=Hn.children[$n.i],ke(zn>=0?Ce.marks[zn].node:Ce.text,Hn)}updateSelection(Ce=!1,ke=!1){(Ce||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let $n=this.view.root.activeElement,Hn=$n==this.dom,zn=!Hn&&hasSelection(this.dom,this.view.observer.selectionRange)&&!($n&&this.dom.contains($n));if(!(Hn||ke||zn))return;let Zn=this.forceSelection;this.forceSelection=!1;let qn=this.view.state.selection.main,Yn=this.moveToLine(this.domAtPos(qn.anchor)),Jn=qn.empty?Yn:this.moveToLine(this.domAtPos(qn.head));if(browser.gecko&&qn.empty&&!this.hasComposition&&betweenUneditable(Yn)){let io=document.createTextNode("");this.view.observer.ignore(()=>Yn.node.insertBefore(io,Yn.node.childNodes[Yn.offset]||null)),Yn=Jn=new DOMPos(io,0),Zn=!0}let to=this.view.observer.selectionRange;(Zn||!to.focusNode||(!isEquivalentPosition(Yn.node,Yn.offset,to.anchorNode,to.anchorOffset)||!isEquivalentPosition(Jn.node,Jn.offset,to.focusNode,to.focusOffset))&&!this.suppressWidgetCursorChange(to,qn))&&(this.view.observer.ignore(()=>{browser.android&&browser.chrome&&this.dom.contains(to.focusNode)&&inUneditable(to.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let io=getSelection(this.view.root);if(io)if(qn.empty){if(browser.gecko){let uo=nextToUneditable(Yn.node,Yn.offset);if(uo&&uo!=3){let mo=(uo==1?textNodeBefore:textNodeAfter)(Yn.node,Yn.offset);mo&&(Yn=new DOMPos(mo.node,mo.offset))}}io.collapse(Yn.node,Yn.offset),qn.bidiLevel!=null&&io.caretBidiLevel!==void 0&&(io.caretBidiLevel=qn.bidiLevel)}else if(io.extend){io.collapse(Yn.node,Yn.offset);try{io.extend(Jn.node,Jn.offset)}catch{}}else{let uo=document.createRange();qn.anchor>qn.head&&([Yn,Jn]=[Jn,Yn]),uo.setEnd(Jn.node,Jn.offset),uo.setStart(Yn.node,Yn.offset),io.removeAllRanges(),io.addRange(uo)}zn&&this.view.root.activeElement==this.dom&&(this.dom.blur(),$n&&$n.focus())}),this.view.observer.setSelectionRange(Yn,Jn)),this.impreciseAnchor=Yn.precise?null:new DOMPos(to.anchorNode,to.anchorOffset),this.impreciseHead=Jn.precise?null:new DOMPos(to.focusNode,to.focusOffset)}suppressWidgetCursorChange(Ce,ke){return this.hasComposition&&ke.empty&&isEquivalentPosition(Ce.focusNode,Ce.focusOffset,Ce.anchorNode,Ce.anchorOffset)&&this.posFromDOM(Ce.focusNode,Ce.focusOffset)==ke.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:Ce}=this,ke=Ce.state.selection.main,$n=getSelection(Ce.root),{anchorNode:Hn,anchorOffset:zn}=Ce.observer.selectionRange;if(!$n||!ke.empty||!ke.assoc||!$n.modify)return;let Zn=LineView.find(this,ke.head);if(!Zn)return;let qn=Zn.posAtStart;if(ke.head==qn||ke.head==qn+Zn.length)return;let Yn=this.coordsAt(ke.head,-1),Jn=this.coordsAt(ke.head,1);if(!Yn||!Jn||Yn.bottom>Jn.top)return;let to=this.domAtPos(ke.head+ke.assoc);$n.collapse(to.node,to.offset),$n.modify("move",ke.assoc<0?"forward":"backward","lineboundary"),Ce.observer.readSelectionRange();let io=Ce.observer.selectionRange;Ce.docView.posFromDOM(io.anchorNode,io.anchorOffset)!=ke.from&&$n.collapse(Hn,zn)}moveToLine(Ce){let ke=this.dom,$n;if(Ce.node!=ke)return Ce;for(let Hn=Ce.offset;!$n&&Hn=0;Hn--){let zn=ContentView.get(ke.childNodes[Hn]);zn instanceof LineView&&($n=zn.domAtPos(zn.length))}return $n?new DOMPos($n.node,$n.offset,!0):Ce}nearest(Ce){for(let ke=Ce;ke;){let $n=ContentView.get(ke);if($n&&$n.rootView==this)return $n;ke=ke.parentNode}return null}posFromDOM(Ce,ke){let $n=this.nearest(Ce);if(!$n)throw new RangeError("Trying to find position for a DOM position outside of the document");return $n.localPosFromDOM(Ce,ke)+$n.posAtStart}domAtPos(Ce){let{i:ke,off:$n}=this.childCursor().findPos(Ce,-1);for(;ke=0;Zn--){let qn=this.children[Zn],Yn=zn-qn.breakAfter,Jn=Yn-qn.length;if(YnCe||qn.covers(1))&&(!$n||qn instanceof LineView&&!($n instanceof LineView&&ke>=0)))$n=qn,Hn=Jn;else if($n&&Jn==Ce&&Yn==Ce&&qn instanceof BlockWidgetView&&Math.abs(ke)<2){if(qn.deco.startSide<0)break;Zn&&($n=null)}zn=Jn}return $n?$n.coordsAt(Ce-Hn,ke):null}coordsForChar(Ce){let{i:ke,off:$n}=this.childPos(Ce,1),Hn=this.children[ke];if(!(Hn instanceof LineView))return null;for(;Hn.children.length;){let{i:qn,off:Yn}=Hn.childPos($n,1);for(;;qn++){if(qn==Hn.children.length)return null;if((Hn=Hn.children[qn]).length)break}$n=Yn}if(!(Hn instanceof TextView))return null;let zn=findClusterBreak(Hn.text,$n);if(zn==$n)return null;let Zn=textRange(Hn.dom,$n,zn).getClientRects();for(let qn=0;qnMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,qn=-1,Yn=this.view.textDirection==Direction.LTR;for(let Jn=0,to=0;toHn)break;if(Jn>=$n){let mo=io.dom.getBoundingClientRect();if(ke.push(mo.height),Zn){let bo=io.dom.lastChild,Oo=bo?clientRectsFor(bo):[];if(Oo.length){let wo=Oo[Oo.length-1],$o=Yn?wo.right-mo.left:mo.right-wo.left;$o>qn&&(qn=$o,this.minWidth=zn,this.minWidthFrom=Jn,this.minWidthTo=uo)}}}Jn=uo+io.breakAfter}return ke}textDirectionAt(Ce){let{i:ke}=this.childPos(Ce,1);return getComputedStyle(this.children[ke].dom).direction=="rtl"?Direction.RTL:Direction.LTR}measureTextSize(){for(let zn of this.children)if(zn instanceof LineView){let Zn=zn.measureTextSize();if(Zn)return Zn}let Ce=document.createElement("div"),ke,$n,Hn;return Ce.className="cm-line",Ce.style.width="99999px",Ce.style.position="absolute",Ce.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.dom.appendChild(Ce);let zn=clientRectsFor(Ce.firstChild)[0];ke=Ce.getBoundingClientRect().height,$n=zn?zn.width/27:7,Hn=zn?zn.height:ke,Ce.remove()}),{lineHeight:ke,charWidth:$n,textHeight:Hn}}childCursor(Ce=this.length){let ke=this.children.length;return ke&&(Ce-=this.children[--ke].length),new ChildCursor(this.children,Ce,ke)}computeBlockGapDeco(){let Ce=[],ke=this.view.viewState;for(let $n=0,Hn=0;;Hn++){let zn=Hn==ke.viewports.length?null:ke.viewports[Hn],Zn=zn?zn.from-1:this.length;if(Zn>$n){let qn=(ke.lineBlockAt(Zn).bottom-ke.lineBlockAt($n).top)/this.view.scaleY;Ce.push(Decoration.replace({widget:new BlockGapWidget(qn),block:!0,inclusive:!0,isBlockGap:!0}).range($n,Zn))}if(!zn)break;$n=zn.to+1}return Decoration.set(Ce)}updateDeco(){let Ce=1,ke=this.view.state.facet(decorations).map(zn=>(this.dynamicDecorationMap[Ce++]=typeof zn=="function")?zn(this.view):zn),$n=!1,Hn=this.view.state.facet(outerDecorations).map((zn,Zn)=>{let qn=typeof zn=="function";return qn&&($n=!0),qn?zn(this.view):zn});for(Hn.length&&(this.dynamicDecorationMap[Ce++]=$n,ke.push(RangeSet.join(Hn))),this.decorations=[this.editContextFormatting,...ke,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];Ceke.anchor?-1:1),Hn;if(!$n)return;!ke.empty&&(Hn=this.coordsAt(ke.anchor,ke.anchor>ke.head?-1:1))&&($n={left:Math.min($n.left,Hn.left),top:Math.min($n.top,Hn.top),right:Math.max($n.right,Hn.right),bottom:Math.max($n.bottom,Hn.bottom)});let zn=getScrollMargins(this.view),Zn={left:$n.left-zn.left,top:$n.top-zn.top,right:$n.right+zn.right,bottom:$n.bottom+zn.bottom},{offsetWidth:qn,offsetHeight:Yn}=this.view.scrollDOM;scrollRectIntoView(this.view.scrollDOM,Zn,ke.head{$nCe.from&&(ke=!0)}),ke}function groupAt(_n,Ce,ke=1){let $n=_n.charCategorizer(Ce),Hn=_n.doc.lineAt(Ce),zn=Ce-Hn.from;if(Hn.length==0)return EditorSelection.cursor(Ce);zn==0?ke=1:zn==Hn.length&&(ke=-1);let Zn=zn,qn=zn;ke<0?Zn=findClusterBreak(Hn.text,zn,!1):qn=findClusterBreak(Hn.text,zn);let Yn=$n(Hn.text.slice(Zn,qn));for(;Zn>0;){let Jn=findClusterBreak(Hn.text,Zn,!1);if($n(Hn.text.slice(Jn,Zn))!=Yn)break;Zn=Jn}for(;qn_n?Ce.left-_n:Math.max(0,_n-Ce.right)}function getdy(_n,Ce){return Ce.top>_n?Ce.top-_n:Math.max(0,_n-Ce.bottom)}function yOverlap(_n,Ce){return _n.topCe.top+1}function upTop(_n,Ce){return Ce<_n.top?{top:Ce,left:_n.left,right:_n.right,bottom:_n.bottom}:_n}function upBot(_n,Ce){return Ce>_n.bottom?{top:_n.top,left:_n.left,right:_n.right,bottom:Ce}:_n}function domPosAtCoords(_n,Ce,ke){let $n,Hn,zn,Zn,qn=!1,Yn,Jn,to,io;for(let bo=_n.firstChild;bo;bo=bo.nextSibling){let Oo=clientRectsFor(bo);for(let wo=0;woxo||Zn==xo&&zn>Do){$n=bo,Hn=$o,zn=Do,Zn=xo;let Bo=xo?ke<$o.top?-1:1:Do?Ce<$o.left?-1:1:0;qn=!Bo||(Bo>0?wo0)}Do==0?ke>$o.bottom&&(!to||to.bottom<$o.bottom)?(Yn=bo,to=$o):ke<$o.top&&(!io||io.top>$o.top)&&(Jn=bo,io=$o):to&&yOverlap(to,$o)?to=upBot(to,$o.bottom):io&&yOverlap(io,$o)&&(io=upTop(io,$o.top))}}if(to&&to.bottom>=ke?($n=Yn,Hn=to):io&&io.top<=ke&&($n=Jn,Hn=io),!$n)return{node:_n,offset:0};let uo=Math.max(Hn.left,Math.min(Hn.right,Ce));if($n.nodeType==3)return domPosInText($n,uo,ke);if(qn&&$n.contentEditable!="false")return domPosAtCoords($n,uo,ke);let mo=Array.prototype.indexOf.call(_n.childNodes,$n)+(Ce>=(Hn.left+Hn.right)/2?1:0);return{node:_n,offset:mo}}function domPosInText(_n,Ce,ke){let $n=_n.nodeValue.length,Hn=-1,zn=1e9,Zn=0;for(let qn=0;qn<$n;qn++){let Yn=textRange(_n,qn,qn+1).getClientRects();for(let Jn=0;Jnke?to.top-ke:ke-to.bottom)-1;if(to.left-1<=Ce&&to.right+1>=Ce&&io=(to.left+to.right)/2,mo=uo;if((browser.chrome||browser.gecko)&&textRange(_n,qn).getBoundingClientRect().left==to.right&&(mo=!uo),io<=0)return{node:_n,offset:qn+(mo?1:0)};Hn=qn+(mo?1:0),zn=io}}}return{node:_n,offset:Hn>-1?Hn:Zn>0?_n.nodeValue.length:0}}function posAtCoords(_n,Ce,ke,$n=-1){var Hn,zn;let Zn=_n.contentDOM.getBoundingClientRect(),qn=Zn.top+_n.viewState.paddingTop,Yn,{docHeight:Jn}=_n.viewState,{x:to,y:io}=Ce,uo=io-qn;if(uo<0)return 0;if(uo>Jn)return _n.state.doc.length;for(let Bo=_n.viewState.heightOracle.textHeight/2,Vo=!1;Yn=_n.elementAtHeight(uo),Yn.type!=BlockType.Text;)for(;uo=$n>0?Yn.bottom+Bo:Yn.top-Bo,!(uo>=0&&uo<=Jn);){if(Vo)return ke?null:0;Vo=!0,$n=-$n}io=qn+uo;let mo=Yn.from;if(mo<_n.viewport.from)return _n.viewport.from==0?0:ke?null:posAtCoordsImprecise(_n,Zn,Yn,to,io);if(mo>_n.viewport.to)return _n.viewport.to==_n.state.doc.length?_n.state.doc.length:ke?null:posAtCoordsImprecise(_n,Zn,Yn,to,io);let bo=_n.dom.ownerDocument,Oo=_n.root.elementFromPoint?_n.root:bo,wo=Oo.elementFromPoint(to,io);wo&&!_n.contentDOM.contains(wo)&&(wo=null),wo||(to=Math.max(Zn.left+1,Math.min(Zn.right-1,to)),wo=Oo.elementFromPoint(to,io),wo&&!_n.contentDOM.contains(wo)&&(wo=null));let $o,Do=-1;if(wo&&((Hn=_n.docView.nearest(wo))===null||Hn===void 0?void 0:Hn.isEditable)!=!1){if(bo.caretPositionFromPoint){let Bo=bo.caretPositionFromPoint(to,io);Bo&&({offsetNode:$o,offset:Do}=Bo)}else if(bo.caretRangeFromPoint){let Bo=bo.caretRangeFromPoint(to,io);Bo&&({startContainer:$o,startOffset:Do}=Bo,(!_n.contentDOM.contains($o)||browser.safari&&isSuspiciousSafariCaretResult($o,Do,to)||browser.chrome&&isSuspiciousChromeCaretResult($o,Do,to))&&($o=void 0))}}if(!$o||!_n.docView.dom.contains($o)){let Bo=LineView.find(_n.docView,mo);if(!Bo)return uo>Yn.top+Yn.height/2?Yn.to:Yn.from;({node:$o,offset:Do}=domPosAtCoords(Bo.dom,to,io))}let xo=_n.docView.nearest($o);if(!xo)return null;if(xo.isWidget&&((zn=xo.dom)===null||zn===void 0?void 0:zn.nodeType)==1){let Bo=xo.dom.getBoundingClientRect();return Ce.y_n.defaultLineHeight*1.5){let qn=_n.viewState.heightOracle.textHeight,Yn=Math.floor((Hn-ke.top-(_n.defaultLineHeight-qn)*.5)/qn);zn+=Yn*_n.viewState.heightOracle.lineLength}let Zn=_n.state.sliceDoc(ke.from,ke.to);return ke.from+findColumn(Zn,zn,_n.state.tabSize)}function isSuspiciousSafariCaretResult(_n,Ce,ke){let $n;if(_n.nodeType!=3||Ce!=($n=_n.nodeValue.length))return!1;for(let Hn=_n.nextSibling;Hn;Hn=Hn.nextSibling)if(Hn.nodeType!=1||Hn.nodeName!="BR")return!1;return textRange(_n,$n-1,$n).getBoundingClientRect().left>ke}function isSuspiciousChromeCaretResult(_n,Ce,ke){if(Ce!=0)return!1;for(let Hn=_n;;){let zn=Hn.parentNode;if(!zn||zn.nodeType!=1||zn.firstChild!=Hn)return!1;if(zn.classList.contains("cm-line"))break;Hn=zn}let $n=_n.nodeType==1?_n.getBoundingClientRect():textRange(_n,0,Math.max(_n.nodeValue.length,1)).getBoundingClientRect();return ke-$n.left>5}function blockAt(_n,Ce){let ke=_n.lineBlockAt(Ce);if(Array.isArray(ke.type)){for(let $n of ke.type)if($n.to>Ce||$n.to==Ce&&($n.to==ke.to||$n.type==BlockType.Text))return $n}return ke}function moveToLineBoundary(_n,Ce,ke,$n){let Hn=blockAt(_n,Ce.head),zn=!$n||Hn.type!=BlockType.Text||!(_n.lineWrapping||Hn.widgetLineBreaks)?null:_n.coordsAtPos(Ce.assoc<0&&Ce.head>Hn.from?Ce.head-1:Ce.head);if(zn){let Zn=_n.dom.getBoundingClientRect(),qn=_n.textDirectionAt(Hn.from),Yn=_n.posAtCoords({x:ke==(qn==Direction.LTR)?Zn.right-1:Zn.left+1,y:(zn.top+zn.bottom)/2});if(Yn!=null)return EditorSelection.cursor(Yn,ke?-1:1)}return EditorSelection.cursor(ke?Hn.to:Hn.from,ke?-1:1)}function moveByChar(_n,Ce,ke,$n){let Hn=_n.state.doc.lineAt(Ce.head),zn=_n.bidiSpans(Hn),Zn=_n.textDirectionAt(Hn.from);for(let qn=Ce,Yn=null;;){let Jn=moveVisually(Hn,zn,Zn,qn,ke),to=movedOver;if(!Jn){if(Hn.number==(ke?_n.state.doc.lines:1))return qn;to=` +`,Hn=_n.state.doc.line(Hn.number+(ke?1:-1)),zn=_n.bidiSpans(Hn),Jn=_n.visualLineSide(Hn,!ke)}if(Yn){if(!Yn(to))return qn}else{if(!$n)return Jn;Yn=$n(to)}qn=Jn}}function byGroup(_n,Ce,ke){let $n=_n.state.charCategorizer(Ce),Hn=$n(ke);return zn=>{let Zn=$n(zn);return Hn==CharCategory.Space&&(Hn=Zn),Hn==Zn}}function moveVertically(_n,Ce,ke,$n){let Hn=Ce.head,zn=ke?1:-1;if(Hn==(ke?_n.state.doc.length:0))return EditorSelection.cursor(Hn,Ce.assoc);let Zn=Ce.goalColumn,qn,Yn=_n.contentDOM.getBoundingClientRect(),Jn=_n.coordsAtPos(Hn,Ce.assoc||-1),to=_n.documentTop;if(Jn)Zn==null&&(Zn=Jn.left-Yn.left),qn=zn<0?Jn.top:Jn.bottom;else{let mo=_n.viewState.lineBlockAt(Hn);Zn==null&&(Zn=Math.min(Yn.right-Yn.left,_n.defaultCharacterWidth*(Hn-mo.from))),qn=(zn<0?mo.top:mo.bottom)+to}let io=Yn.left+Zn,uo=$n??_n.viewState.heightOracle.textHeight>>1;for(let mo=0;;mo+=10){let bo=qn+(uo+mo)*zn,Oo=posAtCoords(_n,{x:io,y:bo},!1,zn);if(boYn.bottom||(zn<0?OoHn)){let wo=_n.docView.coordsForChar(Oo),$o=!wo||bo{if(Ce>zn&&CeHn(_n)),ke.from,Ce.head>ke.from?-1:1);return $n==ke.from?ke:EditorSelection.cursor($n,$nzn)&&this.lineBreak(),Hn=Zn}return this.findPointBefore($n,ke),this}readTextNode(Ce){let ke=Ce.nodeValue;for(let $n of this.points)$n.node==Ce&&($n.pos=this.text.length+Math.min($n.offset,ke.length));for(let $n=0,Hn=this.lineSeparator?null:/\r\n?|\n/g;;){let zn=-1,Zn=1,qn;if(this.lineSeparator?(zn=ke.indexOf(this.lineSeparator,$n),Zn=this.lineSeparator.length):(qn=Hn.exec(ke))&&(zn=qn.index,Zn=qn[0].length),this.append(ke.slice($n,zn<0?ke.length:zn)),zn<0)break;if(this.lineBreak(),Zn>1)for(let Yn of this.points)Yn.node==Ce&&Yn.pos>this.text.length&&(Yn.pos-=Zn-1);$n=zn+Zn}}readNode(Ce){if(Ce.cmIgnore)return;let ke=ContentView.get(Ce),$n=ke&&ke.overrideDOMText;if($n!=null){this.findPointInside(Ce,$n.length);for(let Hn=$n.iter();!Hn.next().done;)Hn.lineBreak?this.lineBreak():this.append(Hn.value)}else Ce.nodeType==3?this.readTextNode(Ce):Ce.nodeName=="BR"?Ce.nextSibling&&this.lineBreak():Ce.nodeType==1&&this.readRange(Ce.firstChild,null)}findPointBefore(Ce,ke){for(let $n of this.points)$n.node==Ce&&Ce.childNodes[$n.offset]==ke&&($n.pos=this.text.length)}findPointInside(Ce,ke){for(let $n of this.points)(Ce.nodeType==3?$n.node==Ce:Ce.contains($n.node))&&($n.pos=this.text.length+(isAtEnd(Ce,$n.node,$n.offset)?ke:0))}}function isAtEnd(_n,Ce,ke){for(;;){if(!Ce||ke-1;let{impreciseHead:zn,impreciseAnchor:Zn}=Ce.docView;if(Ce.state.readOnly&&ke>-1)this.newSel=null;else if(ke>-1&&(this.bounds=Ce.docView.domBoundsAround(ke,$n,0))){let qn=zn||Zn?[]:selectionPoints(Ce),Yn=new DOMReader(qn,Ce.state);Yn.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=Yn.text,this.newSel=selectionFromPoints(qn,this.bounds.from)}else{let qn=Ce.observer.selectionRange,Yn=zn&&zn.node==qn.focusNode&&zn.offset==qn.focusOffset||!contains(Ce.contentDOM,qn.focusNode)?Ce.state.selection.main.head:Ce.docView.posFromDOM(qn.focusNode,qn.focusOffset),Jn=Zn&&Zn.node==qn.anchorNode&&Zn.offset==qn.anchorOffset||!contains(Ce.contentDOM,qn.anchorNode)?Ce.state.selection.main.anchor:Ce.docView.posFromDOM(qn.anchorNode,qn.anchorOffset),to=Ce.viewport;if((browser.ios||browser.chrome)&&Ce.state.selection.main.empty&&Yn!=Jn&&(to.from>0||to.toDate.now()-100?_n.inputState.lastKeyCode:-1;if(Ce.bounds){let{from:Zn,to:qn}=Ce.bounds,Yn=Hn.from,Jn=null;(zn===8||browser.android&&Ce.text.length=Hn.from&&ke.to<=Hn.to&&(ke.from!=Hn.from||ke.to!=Hn.to)&&Hn.to-Hn.from-(ke.to-ke.from)<=4?ke={from:Hn.from,to:Hn.to,insert:_n.state.doc.slice(Hn.from,ke.from).append(ke.insert).append(_n.state.doc.slice(ke.to,Hn.to))}:(browser.mac||browser.android)&&ke&&ke.from==ke.to&&ke.from==Hn.head-1&&/^\. ?$/.test(ke.insert.toString())&&_n.contentDOM.getAttribute("autocorrect")=="off"?($n&&ke.insert.length==2&&($n=EditorSelection.single($n.main.anchor-1,$n.main.head-1)),ke={from:Hn.from,to:Hn.to,insert:Text.of([" "])}):browser.chrome&&ke&&ke.from==ke.to&&ke.from==Hn.head&&ke.insert.toString()==` + `&&_n.lineWrapping&&($n&&($n=EditorSelection.single($n.main.anchor-1,$n.main.head-1)),ke={from:Hn.from,to:Hn.to,insert:Text.of([" "])}),ke)return applyDOMChangeInner(_n,ke,$n,zn);if($n&&!$n.main.eq(Hn)){let Zn=!1,qn="select";return _n.inputState.lastSelectionTime>Date.now()-50&&(_n.inputState.lastSelectionOrigin=="select"&&(Zn=!0),qn=_n.inputState.lastSelectionOrigin),_n.dispatch({selection:$n,scrollIntoView:Zn,userEvent:qn}),!0}else return!1}function applyDOMChangeInner(_n,Ce,ke,$n=-1){if(browser.ios&&_n.inputState.flushIOSKey(Ce))return!0;let Hn=_n.state.selection.main;if(browser.android&&(Ce.to==Hn.to&&(Ce.from==Hn.from||Ce.from==Hn.from-1&&_n.state.sliceDoc(Ce.from,Hn.from)==" ")&&Ce.insert.length==1&&Ce.insert.lines==2&&dispatchKey(_n.contentDOM,"Enter",13)||(Ce.from==Hn.from-1&&Ce.to==Hn.to&&Ce.insert.length==0||$n==8&&Ce.insert.lengthHn.head)&&dispatchKey(_n.contentDOM,"Backspace",8)||Ce.from==Hn.from&&Ce.to==Hn.to+1&&Ce.insert.length==0&&dispatchKey(_n.contentDOM,"Delete",46)))return!0;let zn=Ce.insert.toString();_n.inputState.composing>=0&&_n.inputState.composing++;let Zn,qn=()=>Zn||(Zn=applyDefaultInsert(_n,Ce,ke));return _n.state.facet(inputHandler$1).some(Yn=>Yn(_n,Ce.from,Ce.to,zn,qn))||_n.dispatch(qn()),!0}function applyDefaultInsert(_n,Ce,ke){let $n,Hn=_n.state,zn=Hn.selection.main;if(Ce.from>=zn.from&&Ce.to<=zn.to&&Ce.to-Ce.from>=(zn.to-zn.from)/3&&(!ke||ke.main.empty&&ke.main.from==Ce.from+Ce.insert.length)&&_n.inputState.composing<0){let qn=zn.fromCe.to?Hn.sliceDoc(Ce.to,zn.to):"";$n=Hn.replaceSelection(_n.state.toText(qn+Ce.insert.sliceString(0,void 0,_n.state.lineBreak)+Yn))}else{let qn=Hn.changes(Ce),Yn=ke&&ke.main.to<=qn.newLength?ke.main:void 0;if(Hn.selection.ranges.length>1&&_n.inputState.composing>=0&&Ce.to<=zn.to&&Ce.to>=zn.to-10){let Jn=_n.state.sliceDoc(Ce.from,Ce.to),to,io=ke&&findCompositionNode(_n,ke.main.head);if(io){let bo=Ce.insert.length-(Ce.to-Ce.from);to={from:io.from,to:io.to-bo}}else to=_n.state.doc.lineAt(zn.head);let uo=zn.to-Ce.to,mo=zn.to-zn.from;$n=Hn.changeByRange(bo=>{if(bo.from==zn.from&&bo.to==zn.to)return{changes:qn,range:Yn||bo.map(qn)};let Oo=bo.to-uo,wo=Oo-Jn.length;if(bo.to-bo.from!=mo||_n.state.sliceDoc(wo,Oo)!=Jn||bo.to>=to.from&&bo.from<=to.to)return{range:bo};let $o=Hn.changes({from:wo,to:Oo,insert:Ce.insert}),Do=bo.to-zn.to;return{changes:$o,range:Yn?EditorSelection.range(Math.max(0,Yn.anchor+Do),Math.max(0,Yn.head+Do)):bo.map($o)}})}else $n={changes:qn,selection:Yn&&Hn.selection.replaceRange(Yn)}}let Zn="input.type";return(_n.composing||_n.inputState.compositionPendingChange&&_n.inputState.compositionEndedAt>Date.now()-50)&&(_n.inputState.compositionPendingChange=!1,Zn+=".compose",_n.inputState.compositionFirstChange&&(Zn+=".start",_n.inputState.compositionFirstChange=!1)),Hn.update($n,{userEvent:Zn,scrollIntoView:!0})}function findDiff(_n,Ce,ke,$n){let Hn=Math.min(_n.length,Ce.length),zn=0;for(;zn0&&qn>0&&_n.charCodeAt(Zn-1)==Ce.charCodeAt(qn-1);)Zn--,qn--;if($n=="end"){let Yn=Math.max(0,zn-Math.min(Zn,qn));ke-=Zn+Yn-zn}if(Zn=Zn?zn-ke:0;zn-=Yn,qn=zn+(qn-Zn),Zn=zn}else if(qn=qn?zn-ke:0;zn-=Yn,Zn=zn+(Zn-qn),qn=zn}return{from:zn,toA:Zn,toB:qn}}function selectionPoints(_n){let Ce=[];if(_n.root.activeElement!=_n.contentDOM)return Ce;let{anchorNode:ke,anchorOffset:$n,focusNode:Hn,focusOffset:zn}=_n.observer.selectionRange;return ke&&(Ce.push(new DOMPoint(ke,$n)),(Hn!=ke||zn!=$n)&&Ce.push(new DOMPoint(Hn,zn))),Ce}function selectionFromPoints(_n,Ce){if(_n.length==0)return null;let ke=_n[0].pos,$n=_n.length==2?_n[1].pos:ke;return ke>-1&&$n>-1?EditorSelection.single(ke+Ce,$n+Ce):null}class InputState{setSelectionOrigin(Ce){this.lastSelectionOrigin=Ce,this.lastSelectionTime=Date.now()}constructor(Ce){this.view=Ce,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=Ce.hasFocus,browser.safari&&Ce.contentDOM.addEventListener("input",()=>null),browser.gecko&&firefoxCopyCutHack(Ce.contentDOM.ownerDocument)}handleEvent(Ce){!eventBelongsToEditor(this.view,Ce)||this.ignoreDuringComposition(Ce)||Ce.type=="keydown"&&this.keydown(Ce)||this.runHandlers(Ce.type,Ce)}runHandlers(Ce,ke){let $n=this.handlers[Ce];if($n){for(let Hn of $n.observers)Hn(this.view,ke);for(let Hn of $n.handlers){if(ke.defaultPrevented)break;if(Hn(this.view,ke)){ke.preventDefault();break}}}}ensureHandlers(Ce){let ke=computeHandlers(Ce),$n=this.handlers,Hn=this.view.contentDOM;for(let zn in ke)if(zn!="scroll"){let Zn=!ke[zn].handlers.length,qn=$n[zn];qn&&Zn!=!qn.handlers.length&&(Hn.removeEventListener(zn,this.handleEvent),qn=null),qn||Hn.addEventListener(zn,this.handleEvent,{passive:Zn})}for(let zn in $n)zn!="scroll"&&!ke[zn]&&Hn.removeEventListener(zn,this.handleEvent);this.handlers=ke}keydown(Ce){if(this.lastKeyCode=Ce.keyCode,this.lastKeyTime=Date.now(),Ce.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&Ce.keyCode!=27&&modifierCodes.indexOf(Ce.keyCode)<0&&(this.tabFocusMode=-1),browser.android&&browser.chrome&&!Ce.synthetic&&(Ce.keyCode==13||Ce.keyCode==8))return this.view.observer.delayAndroidKey(Ce.key,Ce.keyCode),!0;let ke;return browser.ios&&!Ce.synthetic&&!Ce.altKey&&!Ce.metaKey&&((ke=PendingKeys.find($n=>$n.keyCode==Ce.keyCode))&&!Ce.ctrlKey||EmacsyPendingKeys.indexOf(Ce.key)>-1&&Ce.ctrlKey&&!Ce.shiftKey)?(this.pendingIOSKey=ke||Ce,setTimeout(()=>this.flushIOSKey(),250),!0):(Ce.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(Ce){let ke=this.pendingIOSKey;return!ke||ke.key=="Enter"&&Ce&&Ce.from0?!0:browser.safari&&!browser.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}startMouseSelection(Ce){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=Ce}update(Ce){this.view.observer.update(Ce),this.mouseSelection&&this.mouseSelection.update(Ce),this.draggedContent&&Ce.docChanged&&(this.draggedContent=this.draggedContent.map(Ce.changes)),Ce.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function bindHandler(_n,Ce){return(ke,$n)=>{try{return Ce.call(_n,$n,ke)}catch(Hn){logException(ke.state,Hn)}}}function computeHandlers(_n){let Ce=Object.create(null);function ke($n){return Ce[$n]||(Ce[$n]={observers:[],handlers:[]})}for(let $n of _n){let Hn=$n.spec;if(Hn&&Hn.domEventHandlers)for(let zn in Hn.domEventHandlers){let Zn=Hn.domEventHandlers[zn];Zn&&ke(zn).handlers.push(bindHandler($n.value,Zn))}if(Hn&&Hn.domEventObservers)for(let zn in Hn.domEventObservers){let Zn=Hn.domEventObservers[zn];Zn&&ke(zn).observers.push(bindHandler($n.value,Zn))}}for(let $n in handlers)ke($n).handlers.push(handlers[$n]);for(let $n in observers)ke($n).observers.push(observers[$n]);return Ce}const PendingKeys=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],EmacsyPendingKeys="dthko",modifierCodes=[16,17,18,20,91,92,224,225],dragScrollMargin=6;function dragScrollSpeed(_n){return Math.max(0,_n)*.7+8}function dist(_n,Ce){return Math.max(Math.abs(_n.clientX-Ce.clientX),Math.abs(_n.clientY-Ce.clientY))}class MouseSelection{constructor(Ce,ke,$n,Hn){this.view=Ce,this.startEvent=ke,this.style=$n,this.mustSelect=Hn,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=ke,this.scrollParents=scrollableParents(Ce.contentDOM),this.atoms=Ce.state.facet(atomicRanges).map(Zn=>Zn(Ce));let zn=Ce.contentDOM.ownerDocument;zn.addEventListener("mousemove",this.move=this.move.bind(this)),zn.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=ke.shiftKey,this.multiple=Ce.state.facet(EditorState.allowMultipleSelections)&&addsSelectionRange(Ce,ke),this.dragging=isInPrimarySelection(Ce,ke)&&getClickType(ke)==1?null:!1}start(Ce){this.dragging===!1&&this.select(Ce)}move(Ce){if(Ce.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&dist(this.startEvent,Ce)<10)return;this.select(this.lastEvent=Ce);let ke=0,$n=0,Hn=0,zn=0,Zn=this.view.win.innerWidth,qn=this.view.win.innerHeight;this.scrollParents.x&&({left:Hn,right:Zn}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:zn,bottom:qn}=this.scrollParents.y.getBoundingClientRect());let Yn=getScrollMargins(this.view);Ce.clientX-Yn.left<=Hn+dragScrollMargin?ke=-dragScrollSpeed(Hn-Ce.clientX):Ce.clientX+Yn.right>=Zn-dragScrollMargin&&(ke=dragScrollSpeed(Ce.clientX-Zn)),Ce.clientY-Yn.top<=zn+dragScrollMargin?$n=-dragScrollSpeed(zn-Ce.clientY):Ce.clientY+Yn.bottom>=qn-dragScrollMargin&&($n=dragScrollSpeed(Ce.clientY-qn)),this.setScrollSpeed(ke,$n)}up(Ce){this.dragging==null&&this.select(this.lastEvent),this.dragging||Ce.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let Ce=this.view.contentDOM.ownerDocument;Ce.removeEventListener("mousemove",this.move),Ce.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(Ce,ke){this.scrollSpeed={x:Ce,y:ke},Ce||ke?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:Ce,y:ke}=this.scrollSpeed;Ce&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=Ce,Ce=0),ke&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=ke,ke=0),(Ce||ke)&&this.view.win.scrollBy(Ce,ke),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(Ce){let ke=null;for(let $n=0;$nke.isUserEvent("input.type"))?this.destroy():this.style.update(Ce)&&setTimeout(()=>this.select(this.lastEvent),20)}}function addsSelectionRange(_n,Ce){let ke=_n.state.facet(clickAddsSelectionRange);return ke.length?ke[0](Ce):browser.mac?Ce.metaKey:Ce.ctrlKey}function dragMovesSelection(_n,Ce){let ke=_n.state.facet(dragMovesSelection$1);return ke.length?ke[0](Ce):browser.mac?!Ce.altKey:!Ce.ctrlKey}function isInPrimarySelection(_n,Ce){let{main:ke}=_n.state.selection;if(ke.empty)return!1;let $n=getSelection(_n.root);if(!$n||$n.rangeCount==0)return!0;let Hn=$n.getRangeAt(0).getClientRects();for(let zn=0;zn=Ce.clientX&&Zn.top<=Ce.clientY&&Zn.bottom>=Ce.clientY)return!0}return!1}function eventBelongsToEditor(_n,Ce){if(!Ce.bubbles)return!0;if(Ce.defaultPrevented)return!1;for(let ke=Ce.target,$n;ke!=_n.contentDOM;ke=ke.parentNode)if(!ke||ke.nodeType==11||($n=ContentView.get(ke))&&$n.ignoreEvent(Ce))return!1;return!0}const handlers=Object.create(null),observers=Object.create(null),brokenClipboardAPI=browser.ie&&browser.ie_version<15||browser.ios&&browser.webkit_version<604;function capturePaste(_n){let Ce=_n.dom.parentNode;if(!Ce)return;let ke=Ce.appendChild(document.createElement("textarea"));ke.style.cssText="position: fixed; left: -10000px; top: 10px",ke.focus(),setTimeout(()=>{_n.focus(),ke.remove(),doPaste(_n,ke.value)},50)}function doPaste(_n,Ce){let{state:ke}=_n,$n,Hn=1,zn=ke.toText(Ce),Zn=zn.lines==ke.selection.ranges.length;if(lastLinewiseCopy!=null&&ke.selection.ranges.every(Yn=>Yn.empty)&&lastLinewiseCopy==zn.toString()){let Yn=-1;$n=ke.changeByRange(Jn=>{let to=ke.doc.lineAt(Jn.from);if(to.from==Yn)return{range:Jn};Yn=to.from;let io=ke.toText((Zn?zn.line(Hn++).text:Ce)+ke.lineBreak);return{changes:{from:to.from,insert:io},range:EditorSelection.cursor(Jn.from+io.length)}})}else Zn?$n=ke.changeByRange(Yn=>{let Jn=zn.line(Hn++);return{changes:{from:Yn.from,to:Yn.to,insert:Jn.text},range:EditorSelection.cursor(Yn.from+Jn.length)}}):$n=ke.replaceSelection(zn);_n.dispatch($n,{userEvent:"input.paste",scrollIntoView:!0})}observers.scroll=_n=>{_n.inputState.lastScrollTop=_n.scrollDOM.scrollTop,_n.inputState.lastScrollLeft=_n.scrollDOM.scrollLeft};handlers.keydown=(_n,Ce)=>(_n.inputState.setSelectionOrigin("select"),Ce.keyCode==27&&_n.inputState.tabFocusMode!=0&&(_n.inputState.tabFocusMode=Date.now()+2e3),!1);observers.touchstart=(_n,Ce)=>{_n.inputState.lastTouchTime=Date.now(),_n.inputState.setSelectionOrigin("select.pointer")};observers.touchmove=_n=>{_n.inputState.setSelectionOrigin("select.pointer")};handlers.mousedown=(_n,Ce)=>{if(_n.observer.flush(),_n.inputState.lastTouchTime>Date.now()-2e3)return!1;let ke=null;for(let $n of _n.state.facet(mouseSelectionStyle))if(ke=$n(_n,Ce),ke)break;if(!ke&&Ce.button==0&&(ke=basicMouseSelection(_n,Ce)),ke){let $n=!_n.hasFocus;_n.inputState.startMouseSelection(new MouseSelection(_n,Ce,ke,$n)),$n&&_n.observer.ignore(()=>{focusPreventScroll(_n.contentDOM);let zn=_n.root.activeElement;zn&&!zn.contains(_n.contentDOM)&&zn.blur()});let Hn=_n.inputState.mouseSelection;if(Hn)return Hn.start(Ce),Hn.dragging===!1}return!1};function rangeForClick(_n,Ce,ke,$n){if($n==1)return EditorSelection.cursor(Ce,ke);if($n==2)return groupAt(_n.state,Ce,ke);{let Hn=LineView.find(_n.docView,Ce),zn=_n.state.doc.lineAt(Hn?Hn.posAtEnd:Ce),Zn=Hn?Hn.posAtStart:zn.from,qn=Hn?Hn.posAtEnd:zn.to;return qn<_n.state.doc.length&&qn==zn.to&&qn++,EditorSelection.range(Zn,qn)}}let inside=(_n,Ce,ke)=>Ce>=ke.top&&Ce<=ke.bottom&&_n>=ke.left&&_n<=ke.right;function findPositionSide(_n,Ce,ke,$n){let Hn=LineView.find(_n.docView,Ce);if(!Hn)return 1;let zn=Ce-Hn.posAtStart;if(zn==0)return 1;if(zn==Hn.length)return-1;let Zn=Hn.coordsAt(zn,-1);if(Zn&&inside(ke,$n,Zn))return-1;let qn=Hn.coordsAt(zn,1);return qn&&inside(ke,$n,qn)?1:Zn&&Zn.bottom>=$n?-1:1}function queryPos(_n,Ce){let ke=_n.posAtCoords({x:Ce.clientX,y:Ce.clientY},!1);return{pos:ke,bias:findPositionSide(_n,ke,Ce.clientX,Ce.clientY)}}const BadMouseDetail=browser.ie&&browser.ie_version<=11;let lastMouseDown=null,lastMouseDownCount=0,lastMouseDownTime=0;function getClickType(_n){if(!BadMouseDetail)return _n.detail;let Ce=lastMouseDown,ke=lastMouseDownTime;return lastMouseDown=_n,lastMouseDownTime=Date.now(),lastMouseDownCount=!Ce||ke>Date.now()-400&&Math.abs(Ce.clientX-_n.clientX)<2&&Math.abs(Ce.clientY-_n.clientY)<2?(lastMouseDownCount+1)%3:1}function basicMouseSelection(_n,Ce){let ke=queryPos(_n,Ce),$n=getClickType(Ce),Hn=_n.state.selection;return{update(zn){zn.docChanged&&(ke.pos=zn.changes.mapPos(ke.pos),Hn=Hn.map(zn.changes))},get(zn,Zn,qn){let Yn=queryPos(_n,zn),Jn,to=rangeForClick(_n,Yn.pos,Yn.bias,$n);if(ke.pos!=Yn.pos&&!Zn){let io=rangeForClick(_n,ke.pos,ke.bias,$n),uo=Math.min(io.from,to.from),mo=Math.max(io.to,to.to);to=uo1&&(Jn=removeRangeAround(Hn,Yn.pos))?Jn:qn?Hn.addRange(to):EditorSelection.create([to])}}}function removeRangeAround(_n,Ce){for(let ke=0;ke<_n.ranges.length;ke++){let{from:$n,to:Hn}=_n.ranges[ke];if($n<=Ce&&Hn>=Ce)return EditorSelection.create(_n.ranges.slice(0,ke).concat(_n.ranges.slice(ke+1)),_n.mainIndex==ke?0:_n.mainIndex-(_n.mainIndex>ke?1:0))}return null}handlers.dragstart=(_n,Ce)=>{let{selection:{main:ke}}=_n.state;if(Ce.target.draggable){let Hn=_n.docView.nearest(Ce.target);if(Hn&&Hn.isWidget){let zn=Hn.posAtStart,Zn=zn+Hn.length;(zn>=ke.to||Zn<=ke.from)&&(ke=EditorSelection.range(zn,Zn))}}let{inputState:$n}=_n;return $n.mouseSelection&&($n.mouseSelection.dragging=!0),$n.draggedContent=ke,Ce.dataTransfer&&(Ce.dataTransfer.setData("Text",_n.state.sliceDoc(ke.from,ke.to)),Ce.dataTransfer.effectAllowed="copyMove"),!1};handlers.dragend=_n=>(_n.inputState.draggedContent=null,!1);function dropText(_n,Ce,ke,$n){if(!ke)return;let Hn=_n.posAtCoords({x:Ce.clientX,y:Ce.clientY},!1),{draggedContent:zn}=_n.inputState,Zn=$n&&zn&&dragMovesSelection(_n,Ce)?{from:zn.from,to:zn.to}:null,qn={from:Hn,insert:ke},Yn=_n.state.changes(Zn?[Zn,qn]:qn);_n.focus(),_n.dispatch({changes:Yn,selection:{anchor:Yn.mapPos(Hn,-1),head:Yn.mapPos(Hn,1)},userEvent:Zn?"move.drop":"input.drop"}),_n.inputState.draggedContent=null}handlers.drop=(_n,Ce)=>{if(!Ce.dataTransfer)return!1;if(_n.state.readOnly)return!0;let ke=Ce.dataTransfer.files;if(ke&&ke.length){let $n=Array(ke.length),Hn=0,zn=()=>{++Hn==ke.length&&dropText(_n,Ce,$n.filter(Zn=>Zn!=null).join(_n.state.lineBreak),!1)};for(let Zn=0;Zn{/[\x00-\x08\x0e-\x1f]{2}/.test(qn.result)||($n[Zn]=qn.result),zn()},qn.readAsText(ke[Zn])}return!0}else{let $n=Ce.dataTransfer.getData("Text");if($n)return dropText(_n,Ce,$n,!0),!0}return!1};handlers.paste=(_n,Ce)=>{if(_n.state.readOnly)return!0;_n.observer.flush();let ke=brokenClipboardAPI?null:Ce.clipboardData;return ke?(doPaste(_n,ke.getData("text/plain")||ke.getData("text/uri-list")),!0):(capturePaste(_n),!1)};function captureCopy(_n,Ce){let ke=_n.dom.parentNode;if(!ke)return;let $n=ke.appendChild(document.createElement("textarea"));$n.style.cssText="position: fixed; left: -10000px; top: 10px",$n.value=Ce,$n.focus(),$n.selectionEnd=Ce.length,$n.selectionStart=0,setTimeout(()=>{$n.remove(),_n.focus()},50)}function copiedRange(_n){let Ce=[],ke=[],$n=!1;for(let Hn of _n.selection.ranges)Hn.empty||(Ce.push(_n.sliceDoc(Hn.from,Hn.to)),ke.push(Hn));if(!Ce.length){let Hn=-1;for(let{from:zn}of _n.selection.ranges){let Zn=_n.doc.lineAt(zn);Zn.number>Hn&&(Ce.push(Zn.text),ke.push({from:Zn.from,to:Math.min(_n.doc.length,Zn.to+1)})),Hn=Zn.number}$n=!0}return{text:Ce.join(_n.lineBreak),ranges:ke,linewise:$n}}let lastLinewiseCopy=null;handlers.copy=handlers.cut=(_n,Ce)=>{let{text:ke,ranges:$n,linewise:Hn}=copiedRange(_n.state);if(!ke&&!Hn)return!1;lastLinewiseCopy=Hn?ke:null,Ce.type=="cut"&&!_n.state.readOnly&&_n.dispatch({changes:$n,scrollIntoView:!0,userEvent:"delete.cut"});let zn=brokenClipboardAPI?null:Ce.clipboardData;return zn?(zn.clearData(),zn.setData("text/plain",ke),!0):(captureCopy(_n,ke),!1)};const isFocusChange=Annotation.define();function focusChangeTransaction(_n,Ce){let ke=[];for(let $n of _n.facet(focusChangeEffect)){let Hn=$n(_n,Ce);Hn&&ke.push(Hn)}return ke?_n.update({effects:ke,annotations:isFocusChange.of(!0)}):null}function updateForFocusChange(_n){setTimeout(()=>{let Ce=_n.hasFocus;if(Ce!=_n.inputState.notifiedFocused){let ke=focusChangeTransaction(_n.state,Ce);ke?_n.dispatch(ke):_n.update([])}},10)}observers.focus=_n=>{_n.inputState.lastFocusTime=Date.now(),!_n.scrollDOM.scrollTop&&(_n.inputState.lastScrollTop||_n.inputState.lastScrollLeft)&&(_n.scrollDOM.scrollTop=_n.inputState.lastScrollTop,_n.scrollDOM.scrollLeft=_n.inputState.lastScrollLeft),updateForFocusChange(_n)};observers.blur=_n=>{_n.observer.clearSelectionRange(),updateForFocusChange(_n)};observers.compositionstart=observers.compositionupdate=_n=>{_n.observer.editContext||(_n.inputState.compositionFirstChange==null&&(_n.inputState.compositionFirstChange=!0),_n.inputState.composing<0&&(_n.inputState.composing=0))};observers.compositionend=_n=>{_n.observer.editContext||(_n.inputState.composing=-1,_n.inputState.compositionEndedAt=Date.now(),_n.inputState.compositionPendingKey=!0,_n.inputState.compositionPendingChange=_n.observer.pendingRecords().length>0,_n.inputState.compositionFirstChange=null,browser.chrome&&browser.android?_n.observer.flushSoon():_n.inputState.compositionPendingChange?Promise.resolve().then(()=>_n.observer.flush()):setTimeout(()=>{_n.inputState.composing<0&&_n.docView.hasComposition&&_n.update([])},50))};observers.contextmenu=_n=>{_n.inputState.lastContextMenu=Date.now()};handlers.beforeinput=(_n,Ce)=>{var ke,$n;if(Ce.inputType=="insertReplacementText"&&_n.observer.editContext){let zn=(ke=Ce.dataTransfer)===null||ke===void 0?void 0:ke.getData("text/plain"),Zn=Ce.getTargetRanges();if(zn&&Zn.length){let qn=Zn[0],Yn=_n.posAtDOM(qn.startContainer,qn.startOffset),Jn=_n.posAtDOM(qn.endContainer,qn.endOffset);return applyDOMChangeInner(_n,{from:Yn,to:Jn,insert:_n.state.toText(zn)},null),!0}}let Hn;if(browser.chrome&&browser.android&&(Hn=PendingKeys.find(zn=>zn.inputType==Ce.inputType))&&(_n.observer.delayAndroidKey(Hn.key,Hn.keyCode),Hn.key=="Backspace"||Hn.key=="Delete")){let zn=(($n=window.visualViewport)===null||$n===void 0?void 0:$n.height)||0;setTimeout(()=>{var Zn;(((Zn=window.visualViewport)===null||Zn===void 0?void 0:Zn.height)||0)>zn+10&&_n.hasFocus&&(_n.contentDOM.blur(),_n.focus())},100)}return browser.ios&&Ce.inputType=="deleteContentForward"&&_n.observer.flushSoon(),browser.safari&&Ce.inputType=="insertText"&&_n.inputState.composing>=0&&setTimeout(()=>observers.compositionend(_n,Ce),20),!1};const appliedFirefoxHack=new Set;function firefoxCopyCutHack(_n){appliedFirefoxHack.has(_n)||(appliedFirefoxHack.add(_n),_n.addEventListener("copy",()=>{}),_n.addEventListener("cut",()=>{}))}const wrappingWhiteSpace=["pre-wrap","normal","pre-line","break-spaces"];let heightChangeFlag=!1;function clearHeightChangeFlag(){heightChangeFlag=!1}class HeightOracle{constructor(Ce){this.lineWrapping=Ce,this.doc=Text.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(Ce,ke){let $n=this.doc.lineAt(ke).number-this.doc.lineAt(Ce).number+1;return this.lineWrapping&&($n+=Math.max(0,Math.ceil((ke-Ce-$n*this.lineLength*.5)/this.lineLength))),this.lineHeight*$n}heightForLine(Ce){return this.lineWrapping?(1+Math.max(0,Math.ceil((Ce-this.lineLength)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(Ce){return this.doc=Ce,this}mustRefreshForWrapping(Ce){return wrappingWhiteSpace.indexOf(Ce)>-1!=this.lineWrapping}mustRefreshForHeights(Ce){let ke=!1;for(let $n=0;$n-1,Yn=Math.round(ke)!=Math.round(this.lineHeight)||this.lineWrapping!=qn;if(this.lineWrapping=qn,this.lineHeight=ke,this.charWidth=$n,this.textHeight=Hn,this.lineLength=zn,Yn){this.heightSamples={};for(let Jn=0;Jn0}set outdated(Ce){this.flags=(Ce?2:0)|this.flags&-3}setHeight(Ce){this.height!=Ce&&(Math.abs(this.height-Ce)>Epsilon&&(heightChangeFlag=!0),this.height=Ce)}replace(Ce,ke,$n){return HeightMap.of($n)}decomposeLeft(Ce,ke){ke.push(this)}decomposeRight(Ce,ke){ke.push(this)}applyChanges(Ce,ke,$n,Hn){let zn=this,Zn=$n.doc;for(let qn=Hn.length-1;qn>=0;qn--){let{fromA:Yn,toA:Jn,fromB:to,toB:io}=Hn[qn],uo=zn.lineAt(Yn,QueryType$1.ByPosNoHeight,$n.setDoc(ke),0,0),mo=uo.to>=Jn?uo:zn.lineAt(Jn,QueryType$1.ByPosNoHeight,$n,0,0);for(io+=mo.to-Jn,Jn=mo.to;qn>0&&uo.from<=Hn[qn-1].toA;)Yn=Hn[qn-1].fromA,to=Hn[qn-1].fromB,qn--,Ynzn*2){let qn=Ce[ke-1];qn.break?Ce.splice(--ke,1,qn.left,null,qn.right):Ce.splice(--ke,1,qn.left,qn.right),$n+=1+qn.break,Hn-=qn.size}else if(zn>Hn*2){let qn=Ce[$n];qn.break?Ce.splice($n,1,qn.left,null,qn.right):Ce.splice($n,1,qn.left,qn.right),$n+=2+qn.break,zn-=qn.size}else break;else if(Hn=zn&&Zn(this.blockAt(0,$n,Hn,zn))}updateHeight(Ce,ke=0,$n=!1,Hn){return Hn&&Hn.from<=ke&&Hn.more&&this.setHeight(Hn.heights[Hn.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class HeightMapText extends HeightMapBlock{constructor(Ce,ke){super(Ce,ke,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(Ce,ke,$n,Hn){return new BlockInfo(Hn,this.length,$n,this.height,this.breaks)}replace(Ce,ke,$n){let Hn=$n[0];return $n.length==1&&(Hn instanceof HeightMapText||Hn instanceof HeightMapGap&&Hn.flags&4)&&Math.abs(this.length-Hn.length)<10?(Hn instanceof HeightMapGap?Hn=new HeightMapText(Hn.length,this.height):Hn.height=this.height,this.outdated||(Hn.outdated=!1),Hn):HeightMap.of($n)}updateHeight(Ce,ke=0,$n=!1,Hn){return Hn&&Hn.from<=ke&&Hn.more?this.setHeight(Hn.heights[Hn.index++]):($n||this.outdated)&&this.setHeight(Math.max(this.widgetHeight,Ce.heightForLine(this.length-this.collapsed))+this.breaks*Ce.lineHeight),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class HeightMapGap extends HeightMap{constructor(Ce){super(Ce,0)}heightMetrics(Ce,ke){let $n=Ce.doc.lineAt(ke).number,Hn=Ce.doc.lineAt(ke+this.length).number,zn=Hn-$n+1,Zn,qn=0;if(Ce.lineWrapping){let Yn=Math.min(this.height,Ce.lineHeight*zn);Zn=Yn/zn,this.length>zn+1&&(qn=(this.height-Yn)/(this.length-zn-1))}else Zn=this.height/zn;return{firstLine:$n,lastLine:Hn,perLine:Zn,perChar:qn}}blockAt(Ce,ke,$n,Hn){let{firstLine:zn,lastLine:Zn,perLine:qn,perChar:Yn}=this.heightMetrics(ke,Hn);if(ke.lineWrapping){let Jn=Hn+(Ce0){let zn=$n[$n.length-1];zn instanceof HeightMapGap?$n[$n.length-1]=new HeightMapGap(zn.length+Hn):$n.push(null,new HeightMapGap(Hn-1))}if(Ce>0){let zn=$n[0];zn instanceof HeightMapGap?$n[0]=new HeightMapGap(Ce+zn.length):$n.unshift(new HeightMapGap(Ce-1),null)}return HeightMap.of($n)}decomposeLeft(Ce,ke){ke.push(new HeightMapGap(Ce-1),null)}decomposeRight(Ce,ke){ke.push(null,new HeightMapGap(this.length-Ce-1))}updateHeight(Ce,ke=0,$n=!1,Hn){let zn=ke+this.length;if(Hn&&Hn.from<=ke+this.length&&Hn.more){let Zn=[],qn=Math.max(ke,Hn.from),Yn=-1;for(Hn.from>ke&&Zn.push(new HeightMapGap(Hn.from-ke-1).updateHeight(Ce,ke));qn<=zn&&Hn.more;){let to=Ce.doc.lineAt(qn).length;Zn.length&&Zn.push(null);let io=Hn.heights[Hn.index++];Yn==-1?Yn=io:Math.abs(io-Yn)>=Epsilon&&(Yn=-2);let uo=new HeightMapText(to,io);uo.outdated=!1,Zn.push(uo),qn+=to+1}qn<=zn&&Zn.push(null,new HeightMapGap(zn-qn).updateHeight(Ce,qn));let Jn=HeightMap.of(Zn);return(Yn<0||Math.abs(Jn.height-this.height)>=Epsilon||Math.abs(Yn-this.heightMetrics(Ce,ke).perLine)>=Epsilon)&&(heightChangeFlag=!0),replace(this,Jn)}else($n||this.outdated)&&(this.setHeight(Ce.heightForGap(ke,ke+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class HeightMapBranch extends HeightMap{constructor(Ce,ke,$n){super(Ce.length+ke+$n.length,Ce.height+$n.height,ke|(Ce.outdated||$n.outdated?2:0)),this.left=Ce,this.right=$n,this.size=Ce.size+$n.size}get break(){return this.flags&1}blockAt(Ce,ke,$n,Hn){let zn=$n+this.left.height;return Ceqn))return Jn;let to=ke==QueryType$1.ByPosNoHeight?QueryType$1.ByPosNoHeight:QueryType$1.ByPos;return Yn?Jn.join(this.right.lineAt(qn,to,$n,Zn,qn)):this.left.lineAt(qn,to,$n,Hn,zn).join(Jn)}forEachLine(Ce,ke,$n,Hn,zn,Zn){let qn=Hn+this.left.height,Yn=zn+this.left.length+this.break;if(this.break)Ce=Yn&&this.right.forEachLine(Ce,ke,$n,qn,Yn,Zn);else{let Jn=this.lineAt(Yn,QueryType$1.ByPos,$n,Hn,zn);Ce=Ce&&Jn.from<=ke&&Zn(Jn),ke>Jn.to&&this.right.forEachLine(Jn.to+1,ke,$n,qn,Yn,Zn)}}replace(Ce,ke,$n){let Hn=this.left.length+this.break;if(kethis.left.length)return this.balanced(this.left,this.right.replace(Ce-Hn,ke-Hn,$n));let zn=[];Ce>0&&this.decomposeLeft(Ce,zn);let Zn=zn.length;for(let qn of $n)zn.push(qn);if(Ce>0&&mergeGaps(zn,Zn-1),ke=$n&&ke.push(null)),Ce>$n&&this.right.decomposeLeft(Ce-$n,ke)}decomposeRight(Ce,ke){let $n=this.left.length,Hn=$n+this.break;if(Ce>=Hn)return this.right.decomposeRight(Ce-Hn,ke);Ce<$n&&this.left.decomposeRight(Ce,ke),this.break&&Ce2*ke.size||ke.size>2*Ce.size?HeightMap.of(this.break?[Ce,null,ke]:[Ce,ke]):(this.left=replace(this.left,Ce),this.right=replace(this.right,ke),this.setHeight(Ce.height+ke.height),this.outdated=Ce.outdated||ke.outdated,this.size=Ce.size+ke.size,this.length=Ce.length+this.break+ke.length,this)}updateHeight(Ce,ke=0,$n=!1,Hn){let{left:zn,right:Zn}=this,qn=ke+zn.length+this.break,Yn=null;return Hn&&Hn.from<=ke+zn.length&&Hn.more?Yn=zn=zn.updateHeight(Ce,ke,$n,Hn):zn.updateHeight(Ce,ke,$n),Hn&&Hn.from<=qn+Zn.length&&Hn.more?Yn=Zn=Zn.updateHeight(Ce,qn,$n,Hn):Zn.updateHeight(Ce,qn,$n),Yn?this.balanced(zn,Zn):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function mergeGaps(_n,Ce){let ke,$n;_n[Ce]==null&&(ke=_n[Ce-1])instanceof HeightMapGap&&($n=_n[Ce+1])instanceof HeightMapGap&&_n.splice(Ce-1,3,new HeightMapGap(ke.length+1+$n.length))}const relevantWidgetHeight=5;class NodeBuilder{constructor(Ce,ke){this.pos=Ce,this.oracle=ke,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=Ce}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(Ce,ke){if(this.lineStart>-1){let $n=Math.min(ke,this.lineEnd),Hn=this.nodes[this.nodes.length-1];Hn instanceof HeightMapText?Hn.length+=$n-this.pos:($n>this.pos||!this.isCovered)&&this.nodes.push(new HeightMapText($n-this.pos,-1)),this.writtenTo=$n,ke>$n&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=ke}point(Ce,ke,$n){if(Ce=relevantWidgetHeight)&&this.addLineDeco(Hn,zn,Zn)}else ke>Ce&&this.span(Ce,ke);this.lineEnd>-1&&this.lineEnd-1)return;let{from:Ce,to:ke}=this.oracle.doc.lineAt(this.pos);this.lineStart=Ce,this.lineEnd=ke,this.writtenToCe&&this.nodes.push(new HeightMapText(this.pos-Ce,-1)),this.writtenTo=this.pos}blankContent(Ce,ke){let $n=new HeightMapGap(ke-Ce);return this.oracle.doc.lineAt(Ce).to==ke&&($n.flags|=4),$n}ensureLine(){this.enterLine();let Ce=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(Ce instanceof HeightMapText)return Ce;let ke=new HeightMapText(0,-1);return this.nodes.push(ke),ke}addBlock(Ce){this.enterLine();let ke=Ce.deco;ke&&ke.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(Ce),this.writtenTo=this.pos=this.pos+Ce.length,ke&&ke.endSide>0&&(this.covering=Ce)}addLineDeco(Ce,ke,$n){let Hn=this.ensureLine();Hn.length+=$n,Hn.collapsed+=$n,Hn.widgetHeight=Math.max(Hn.widgetHeight,Ce),Hn.breaks+=ke,this.writtenTo=this.pos=this.pos+$n}finish(Ce){let ke=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(ke instanceof HeightMapText)&&!this.isCovered?this.nodes.push(new HeightMapText(0,-1)):(this.writtenToto.clientHeight||to.scrollWidth>to.clientWidth)&&io.overflow!="visible"){let uo=to.getBoundingClientRect();zn=Math.max(zn,uo.left),Zn=Math.min(Zn,uo.right),qn=Math.max(qn,uo.top),Yn=Math.min(Jn==_n.parentNode?Hn.innerHeight:Yn,uo.bottom)}Jn=io.position=="absolute"||io.position=="fixed"?to.offsetParent:to.parentNode}else if(Jn.nodeType==11)Jn=Jn.host;else break;return{left:zn-ke.left,right:Math.max(zn,Zn)-ke.left,top:qn-(ke.top+Ce),bottom:Math.max(qn,Yn)-(ke.top+Ce)}}function fullPixelRange(_n,Ce){let ke=_n.getBoundingClientRect();return{left:0,right:ke.right-ke.left,top:Ce,bottom:ke.bottom-(ke.top+Ce)}}class LineGap{constructor(Ce,ke,$n){this.from=Ce,this.to=ke,this.size=$n}static same(Ce,ke){if(Ce.length!=ke.length)return!1;for(let $n=0;$ntypeof $n!="function"&&$n.class=="cm-lineWrapping");this.heightOracle=new HeightOracle(ke),this.stateDeco=Ce.facet(decorations).filter($n=>typeof $n!="function"),this.heightMap=HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle.setDoc(Ce.doc),[new ChangedRange(0,0,0,Ce.doc.length)]);for(let $n=0;$n<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());$n++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Decoration.set(this.lineGaps.map($n=>$n.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let Ce=[this.viewport],{main:ke}=this.state.selection;for(let $n=0;$n<=1;$n++){let Hn=$n?ke.head:ke.anchor;if(!Ce.some(({from:zn,to:Zn})=>Hn>=zn&&Hn<=Zn)){let{from:zn,to:Zn}=this.lineBlockAt(Hn);Ce.push(new Viewport(zn,Zn))}}return this.viewports=Ce.sort(($n,Hn)=>$n.from-Hn.from),this.updateScaler()}updateScaler(){let Ce=this.scaler;return this.scaler=this.heightMap.height<=7e6?IdScaler:new BigScaler(this.heightOracle,this.heightMap,this.viewports),Ce.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,Ce=>{this.viewportLines.push(scaleBlock(Ce,this.scaler))})}update(Ce,ke=null){this.state=Ce.state;let $n=this.stateDeco;this.stateDeco=this.state.facet(decorations).filter(to=>typeof to!="function");let Hn=Ce.changedRanges,zn=ChangedRange.extendWithRanges(Hn,heightRelevantDecoChanges($n,this.stateDeco,Ce?Ce.changes:ChangeSet.empty(this.state.doc.length))),Zn=this.heightMap.height,qn=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);clearHeightChangeFlag(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,Ce.startState.doc,this.heightOracle.setDoc(this.state.doc),zn),(this.heightMap.height!=Zn||heightChangeFlag)&&(Ce.flags|=2),qn?(this.scrollAnchorPos=Ce.changes.mapPos(qn.from,-1),this.scrollAnchorHeight=qn.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let Yn=zn.length?this.mapViewport(this.viewport,Ce.changes):this.viewport;(ke&&(ke.range.headYn.to)||!this.viewportIsAppropriate(Yn))&&(Yn=this.getViewport(0,ke));let Jn=Yn.from!=this.viewport.from||Yn.to!=this.viewport.to;this.viewport=Yn,Ce.flags|=this.updateForViewport(),(Jn||!Ce.changes.empty||Ce.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,Ce.changes))),Ce.flags|=this.computeVisibleRanges(),ke&&(this.scrollTarget=ke),!this.mustEnforceCursorAssoc&&Ce.selectionSet&&Ce.view.lineWrapping&&Ce.state.selection.main.empty&&Ce.state.selection.main.assoc&&!Ce.state.facet(nativeSelectionHidden)&&(this.mustEnforceCursorAssoc=!0)}measure(Ce){let ke=Ce.contentDOM,$n=window.getComputedStyle(ke),Hn=this.heightOracle,zn=$n.whiteSpace;this.defaultTextDirection=$n.direction=="rtl"?Direction.RTL:Direction.LTR;let Zn=this.heightOracle.mustRefreshForWrapping(zn),qn=ke.getBoundingClientRect(),Yn=Zn||this.mustMeasureContent||this.contentDOMHeight!=qn.height;this.contentDOMHeight=qn.height,this.mustMeasureContent=!1;let Jn=0,to=0;if(qn.width&&qn.height){let{scaleX:Bo,scaleY:Vo}=getScale(ke,qn);(Bo>.005&&Math.abs(this.scaleX-Bo)>.005||Vo>.005&&Math.abs(this.scaleY-Vo)>.005)&&(this.scaleX=Bo,this.scaleY=Vo,Jn|=8,Zn=Yn=!0)}let io=(parseInt($n.paddingTop)||0)*this.scaleY,uo=(parseInt($n.paddingBottom)||0)*this.scaleY;(this.paddingTop!=io||this.paddingBottom!=uo)&&(this.paddingTop=io,this.paddingBottom=uo,Jn|=10),this.editorWidth!=Ce.scrollDOM.clientWidth&&(Hn.lineWrapping&&(Yn=!0),this.editorWidth=Ce.scrollDOM.clientWidth,Jn|=8);let mo=Ce.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=mo&&(this.scrollAnchorHeight=-1,this.scrollTop=mo),this.scrolledToBottom=isScrolledToBottom(Ce.scrollDOM);let bo=(this.printing?fullPixelRange:visiblePixelRange)(ke,this.paddingTop),Oo=bo.top-this.pixelViewport.top,wo=bo.bottom-this.pixelViewport.bottom;this.pixelViewport=bo;let $o=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if($o!=this.inView&&(this.inView=$o,$o&&(Yn=!0)),!this.inView&&!this.scrollTarget)return 0;let Do=qn.width;if((this.contentDOMWidth!=Do||this.editorHeight!=Ce.scrollDOM.clientHeight)&&(this.contentDOMWidth=qn.width,this.editorHeight=Ce.scrollDOM.clientHeight,Jn|=8),Yn){let Bo=Ce.docView.measureVisibleLineHeights(this.viewport);if(Hn.mustRefreshForHeights(Bo)&&(Zn=!0),Zn||Hn.lineWrapping&&Math.abs(Do-this.contentDOMWidth)>Hn.charWidth){let{lineHeight:Vo,charWidth:Ko,textHeight:Mo}=Ce.docView.measureTextSize();Zn=Vo>0&&Hn.refresh(zn,Vo,Ko,Mo,Do/Ko,Bo),Zn&&(Ce.docView.minWidth=0,Jn|=8)}Oo>0&&wo>0?to=Math.max(Oo,wo):Oo<0&&wo<0&&(to=Math.min(Oo,wo)),clearHeightChangeFlag();for(let Vo of this.viewports){let Ko=Vo.from==this.viewport.from?Bo:Ce.docView.measureVisibleLineHeights(Vo);this.heightMap=(Zn?HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle,[new ChangedRange(0,0,0,Ce.state.doc.length)]):this.heightMap).updateHeight(Hn,0,Zn,new MeasuredHeights(Vo.from,Ko))}heightChangeFlag&&(Jn|=2)}let xo=!this.viewportIsAppropriate(this.viewport,to)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return xo&&(Jn&2&&(Jn|=this.updateScaler()),this.viewport=this.getViewport(to,this.scrollTarget),Jn|=this.updateForViewport()),(Jn&2||xo)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(Zn?[]:this.lineGaps,Ce)),Jn|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,Ce.docView.enforceCursorAssoc()),Jn}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(Ce,ke){let $n=.5-Math.max(-.5,Math.min(.5,Ce/1e3/2)),Hn=this.heightMap,zn=this.heightOracle,{visibleTop:Zn,visibleBottom:qn}=this,Yn=new Viewport(Hn.lineAt(Zn-$n*1e3,QueryType$1.ByHeight,zn,0,0).from,Hn.lineAt(qn+(1-$n)*1e3,QueryType$1.ByHeight,zn,0,0).to);if(ke){let{head:Jn}=ke.range;if(JnYn.to){let to=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),io=Hn.lineAt(Jn,QueryType$1.ByPos,zn,0,0),uo;ke.y=="center"?uo=(io.top+io.bottom)/2-to/2:ke.y=="start"||ke.y=="nearest"&&Jn=qn+Math.max(10,Math.min($n,250)))&&Hn>Zn-2*1e3&&zn>1,Zn=Hn<<1;if(this.defaultTextDirection!=Direction.LTR&&!$n)return[];let qn=[],Yn=(to,io,uo,mo)=>{if(io-toto&&$o$o.from>=uo.from&&$o.to<=uo.to&&Math.abs($o.from-to)$o.fromDo));if(!wo){if(io$o.from<=io&&$o.to>=io)){let $o=ke.moveToLineBoundary(EditorSelection.cursor(io),!1,!0).head;$o>to&&(io=$o)}wo=new LineGap(to,io,this.gapSize(uo,to,io,mo))}qn.push(wo)},Jn=to=>{if(to.lengthto.from&&Yn(to.from,mo,to,io),boke.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(){let Ce=this.stateDeco;this.lineGaps.length&&(Ce=Ce.concat(this.lineGapDeco));let ke=[];RangeSet.spans(Ce,this.viewport.from,this.viewport.to,{span(Hn,zn){ke.push({from:Hn,to:zn})},point(){}},20);let $n=ke.length!=this.visibleRanges.length||this.visibleRanges.some((Hn,zn)=>Hn.from!=ke[zn].from||Hn.to!=ke[zn].to);return this.visibleRanges=ke,$n?4:0}lineBlockAt(Ce){return Ce>=this.viewport.from&&Ce<=this.viewport.to&&this.viewportLines.find(ke=>ke.from<=Ce&&ke.to>=Ce)||scaleBlock(this.heightMap.lineAt(Ce,QueryType$1.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(Ce){return Ce>=this.viewportLines[0].top&&Ce<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(ke=>ke.top<=Ce&&ke.bottom>=Ce)||scaleBlock(this.heightMap.lineAt(this.scaler.fromDOM(Ce),QueryType$1.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(Ce){let ke=this.lineBlockAtHeight(Ce+8);return ke.from>=this.viewport.from||this.viewportLines[0].top-Ce>200?ke:this.viewportLines[0]}elementAtHeight(Ce){return scaleBlock(this.heightMap.blockAt(this.scaler.fromDOM(Ce),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Viewport{constructor(Ce,ke){this.from=Ce,this.to=ke}}function lineStructure(_n,Ce,ke){let $n=[],Hn=_n,zn=0;return RangeSet.spans(ke,_n,Ce,{span(){},point(Zn,qn){Zn>Hn&&($n.push({from:Hn,to:Zn}),zn+=Zn-Hn),Hn=qn}},20),Hn=1)return Ce[Ce.length-1].to;let $n=Math.floor(_n*ke);for(let Hn=0;;Hn++){let{from:zn,to:Zn}=Ce[Hn],qn=Zn-zn;if($n<=qn)return zn+$n;$n-=qn}}function findFraction(_n,Ce){let ke=0;for(let{from:$n,to:Hn}of _n.ranges){if(Ce<=Hn){ke+=Ce-$n;break}ke+=Hn-$n}return ke/_n.total}function find(_n,Ce){for(let ke of _n)if(Ce(ke))return ke}const IdScaler={toDOM(_n){return _n},fromDOM(_n){return _n},scale:1,eq(_n){return _n==this}};class BigScaler{constructor(Ce,ke,$n){let Hn=0,zn=0,Zn=0;this.viewports=$n.map(({from:qn,to:Yn})=>{let Jn=ke.lineAt(qn,QueryType$1.ByPos,Ce,0,0).top,to=ke.lineAt(Yn,QueryType$1.ByPos,Ce,0,0).bottom;return Hn+=to-Jn,{from:qn,to:Yn,top:Jn,bottom:to,domTop:0,domBottom:0}}),this.scale=(7e6-Hn)/(ke.height-Hn);for(let qn of this.viewports)qn.domTop=Zn+(qn.top-zn)*this.scale,Zn=qn.domBottom=qn.domTop+(qn.bottom-qn.top),zn=qn.bottom}toDOM(Ce){for(let ke=0,$n=0,Hn=0;;ke++){let zn=keke.from==Ce.viewports[$n].from&&ke.to==Ce.viewports[$n].to):!1}}function scaleBlock(_n,Ce){if(Ce.scale==1)return _n;let ke=Ce.toDOM(_n.top),$n=Ce.toDOM(_n.bottom);return new BlockInfo(_n.from,_n.length,ke,$n-ke,Array.isArray(_n._content)?_n._content.map(Hn=>scaleBlock(Hn,Ce)):_n._content)}const theme=Facet.define({combine:_n=>_n.join(" ")}),darkTheme=Facet.define({combine:_n=>_n.indexOf(!0)>-1}),baseThemeID=StyleModule.newName(),baseLightID=StyleModule.newName(),baseDarkID=StyleModule.newName(),lightDarkIDs={"&light":"."+baseLightID,"&dark":"."+baseDarkID};function buildTheme(_n,Ce,ke){return new StyleModule(Ce,{finish($n){return/&/.test($n)?$n.replace(/&\w*/,Hn=>{if(Hn=="&")return _n;if(!ke||!ke[Hn])throw new RangeError(`Unsupported selector: ${Hn}`);return ke[Hn]}):_n+" "+$n}})}const baseTheme$1$3=buildTheme("."+baseThemeID,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},lightDarkIDs),observeOptions={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},useCharData=browser.ie&&browser.ie_version<=11;class DOMObserver{constructor(Ce){this.view=Ce,this.active=!1,this.editContext=null,this.selectionRange=new DOMSelectionState,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=Ce.contentDOM,this.observer=new MutationObserver(ke=>{for(let $n of ke)this.queue.push($n);(browser.ie&&browser.ie_version<=11||browser.ios&&Ce.composing)&&ke.some($n=>$n.type=="childList"&&$n.removedNodes.length||$n.type=="characterData"&&$n.oldValue.length>$n.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&Ce.constructor.EDIT_CONTEXT!==!1&&!(browser.chrome&&browser.chrome_version<126)&&(this.editContext=new EditContextManager(Ce),Ce.state.facet(editable)&&(Ce.contentDOM.editContext=this.editContext.editContext)),useCharData&&(this.onCharData=ke=>{this.queue.push({target:ke.target,type:"characterData",oldValue:ke.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var ke;((ke=this.view.docView)===null||ke===void 0?void 0:ke.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),ke.length>0&&ke[ke.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(ke=>{ke.length>0&&ke[ke.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(Ce){this.view.inputState.runHandlers("scroll",Ce),this.intersecting&&this.view.measure()}onScroll(Ce){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(Ce)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(Ce){(Ce.type=="change"||!Ce.type)&&!Ce.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(Ce){if(this.gapIntersection&&(Ce.length!=this.gaps.length||this.gaps.some((ke,$n)=>ke!=Ce[$n]))){this.gapIntersection.disconnect();for(let ke of Ce)this.gapIntersection.observe(ke);this.gaps=Ce}}onSelectionChange(Ce){let ke=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:$n}=this,Hn=this.selectionRange;if($n.state.facet(editable)?$n.root.activeElement!=this.dom:!hasSelection($n.dom,Hn))return;let zn=Hn.anchorNode&&$n.docView.nearest(Hn.anchorNode);if(zn&&zn.ignoreEvent(Ce)){ke||(this.selectionChanged=!1);return}(browser.ie&&browser.ie_version<=11||browser.android&&browser.chrome)&&!$n.state.selection.main.empty&&Hn.focusNode&&isEquivalentPosition(Hn.focusNode,Hn.focusOffset,Hn.anchorNode,Hn.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:Ce}=this,ke=getSelection(Ce.root);if(!ke)return!1;let $n=browser.safari&&Ce.root.nodeType==11&&deepActiveElement(this.dom.ownerDocument)==this.dom&&safariSelectionRangeHack(this.view,ke)||ke;if(!$n||this.selectionRange.eq($n))return!1;let Hn=hasSelection(this.dom,$n);return Hn&&!this.selectionChanged&&Ce.inputState.lastFocusTime>Date.now()-200&&Ce.inputState.lastTouchTime{let zn=this.delayedAndroidKey;zn&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=zn.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&zn.force&&dispatchKey(this.dom,zn.key,zn.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(Hn)}(!this.delayedAndroidKey||Ce=="Enter")&&(this.delayedAndroidKey={key:Ce,keyCode:ke,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let Ce of this.observer.takeRecords())this.queue.push(Ce);return this.queue}processRecords(){let Ce=this.pendingRecords();Ce.length&&(this.queue=[]);let ke=-1,$n=-1,Hn=!1;for(let zn of Ce){let Zn=this.readMutation(zn);Zn&&(Zn.typeOver&&(Hn=!0),ke==-1?{from:ke,to:$n}=Zn:(ke=Math.min(Zn.from,ke),$n=Math.max(Zn.to,$n)))}return{from:ke,to:$n,typeOver:Hn}}readChange(){let{from:Ce,to:ke,typeOver:$n}=this.processRecords(),Hn=this.selectionChanged&&hasSelection(this.dom,this.selectionRange);if(Ce<0&&!Hn)return null;Ce>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let zn=new DOMChange(this.view,Ce,ke,$n);return this.view.docView.domChanged={newSel:zn.newSel?zn.newSel.main:null},zn}flush(Ce=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;Ce&&this.readSelectionRange();let ke=this.readChange();if(!ke)return this.view.requestMeasure(),!1;let $n=this.view.state,Hn=applyDOMChange(this.view,ke);return this.view.state==$n&&(ke.domChanged||ke.newSel&&!ke.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),Hn}readMutation(Ce){let ke=this.view.docView.nearest(Ce.target);if(!ke||ke.ignoreMutation(Ce))return null;if(ke.markDirty(Ce.type=="attributes"),Ce.type=="attributes"&&(ke.flags|=4),Ce.type=="childList"){let $n=findChild(ke,Ce.previousSibling||Ce.target.previousSibling,-1),Hn=findChild(ke,Ce.nextSibling||Ce.target.nextSibling,1);return{from:$n?ke.posAfter($n):ke.posAtStart,to:Hn?ke.posBefore(Hn):ke.posAtEnd,typeOver:!1}}else return Ce.type=="characterData"?{from:ke.posAtStart,to:ke.posAtEnd,typeOver:Ce.target.nodeValue==Ce.oldValue}:null}setWindow(Ce){Ce!=this.win&&(this.removeWindowListeners(this.win),this.win=Ce,this.addWindowListeners(this.win))}addWindowListeners(Ce){Ce.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):Ce.addEventListener("beforeprint",this.onPrint),Ce.addEventListener("scroll",this.onScroll),Ce.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(Ce){Ce.removeEventListener("scroll",this.onScroll),Ce.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):Ce.removeEventListener("beforeprint",this.onPrint),Ce.document.removeEventListener("selectionchange",this.onSelectionChange)}update(Ce){this.editContext&&(this.editContext.update(Ce),Ce.startState.facet(editable)!=Ce.state.facet(editable)&&(Ce.view.contentDOM.editContext=Ce.state.facet(editable)?this.editContext.editContext:null))}destroy(){var Ce,ke,$n;this.stop(),(Ce=this.intersection)===null||Ce===void 0||Ce.disconnect(),(ke=this.gapIntersection)===null||ke===void 0||ke.disconnect(),($n=this.resizeScroll)===null||$n===void 0||$n.disconnect();for(let Hn of this.scrollTargets)Hn.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function findChild(_n,Ce,ke){for(;Ce;){let $n=ContentView.get(Ce);if($n&&$n.parent==_n)return $n;let Hn=Ce.parentNode;Ce=Hn!=_n.dom?Hn:ke>0?Ce.nextSibling:Ce.previousSibling}return null}function buildSelectionRangeFromRange(_n,Ce){let ke=Ce.startContainer,$n=Ce.startOffset,Hn=Ce.endContainer,zn=Ce.endOffset,Zn=_n.docView.domAtPos(_n.state.selection.main.anchor);return isEquivalentPosition(Zn.node,Zn.offset,Hn,zn)&&([ke,$n,Hn,zn]=[Hn,zn,ke,$n]),{anchorNode:ke,anchorOffset:$n,focusNode:Hn,focusOffset:zn}}function safariSelectionRangeHack(_n,Ce){if(Ce.getComposedRanges){let Hn=Ce.getComposedRanges(_n.root)[0];if(Hn)return buildSelectionRangeFromRange(_n,Hn)}let ke=null;function $n(Hn){Hn.preventDefault(),Hn.stopImmediatePropagation(),ke=Hn.getTargetRanges()[0]}return _n.contentDOM.addEventListener("beforeinput",$n,!0),_n.dom.ownerDocument.execCommand("indent"),_n.contentDOM.removeEventListener("beforeinput",$n,!0),ke?buildSelectionRangeFromRange(_n,ke):null}class EditContextManager{constructor(Ce){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.resetRange(Ce.state);let ke=this.editContext=new window.EditContext({text:Ce.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,Ce.state.selection.main.anchor))),selectionEnd:this.toContextPos(Ce.state.selection.main.head)});this.handlers.textupdate=$n=>{let{anchor:Hn}=Ce.state.selection.main,zn={from:this.toEditorPos($n.updateRangeStart),to:this.toEditorPos($n.updateRangeEnd),insert:Text.of($n.text.split(` +`))};zn.from==this.from&&Hnthis.to&&(zn.to=Hn),!(zn.from==zn.to&&!zn.insert.length)&&(this.pendingContextChange=zn,Ce.state.readOnly||applyDOMChangeInner(Ce,zn,EditorSelection.single(this.toEditorPos($n.selectionStart),this.toEditorPos($n.selectionEnd))),this.pendingContextChange&&(this.revertPending(Ce.state),this.setSelection(Ce.state)))},this.handlers.characterboundsupdate=$n=>{let Hn=[],zn=null;for(let Zn=this.toEditorPos($n.rangeStart),qn=this.toEditorPos($n.rangeEnd);Zn{let Hn=[];for(let zn of $n.getTextFormats()){let Zn=zn.underlineStyle,qn=zn.underlineThickness;if(Zn!="None"&&qn!="None"){let Yn=`text-decoration: underline ${Zn=="Dashed"?"dashed ":Zn=="Squiggle"?"wavy ":""}${qn=="Thin"?1:2}px`;Hn.push(Decoration.mark({attributes:{style:Yn}}).range(this.toEditorPos(zn.rangeStart),this.toEditorPos(zn.rangeEnd)))}}Ce.dispatch({effects:setEditContextFormatting.of(Decoration.set(Hn))})},this.handlers.compositionstart=()=>{Ce.inputState.composing<0&&(Ce.inputState.composing=0,Ce.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{Ce.inputState.composing=-1,Ce.inputState.compositionFirstChange=null};for(let $n in this.handlers)ke.addEventListener($n,this.handlers[$n]);this.measureReq={read:$n=>{this.editContext.updateControlBounds($n.contentDOM.getBoundingClientRect());let Hn=getSelection($n.root);Hn&&Hn.rangeCount&&this.editContext.updateSelectionBounds(Hn.getRangeAt(0).getBoundingClientRect())}}}applyEdits(Ce){let ke=0,$n=!1,Hn=this.pendingContextChange;return Ce.changes.iterChanges((zn,Zn,qn,Yn,Jn)=>{if($n)return;let to=Jn.length-(Zn-zn);if(Hn&&Zn>=Hn.to)if(Hn.from==zn&&Hn.to==Zn&&Hn.insert.eq(Jn)){Hn=this.pendingContextChange=null,ke+=to,this.to+=to;return}else Hn=null,this.revertPending(Ce.state);if(zn+=ke,Zn+=ke,Zn<=this.from)this.from+=to,this.to+=to;else if(znthis.to||this.to-this.from+Jn.length>3e4){$n=!0;return}this.editContext.updateText(this.toContextPos(zn),this.toContextPos(Zn),Jn.toString()),this.to+=to}ke+=to}),Hn&&!$n&&this.revertPending(Ce.state),!$n}update(Ce){let ke=this.pendingContextChange;!this.applyEdits(Ce)||!this.rangeIsValid(Ce.state)?(this.pendingContextChange=null,this.resetRange(Ce.state),this.editContext.updateText(0,this.editContext.text.length,Ce.state.doc.sliceString(this.from,this.to)),this.setSelection(Ce.state)):(Ce.docChanged||Ce.selectionSet||ke)&&this.setSelection(Ce.state),(Ce.geometryChanged||Ce.docChanged||Ce.selectionSet)&&Ce.view.requestMeasure(this.measureReq)}resetRange(Ce){let{head:ke}=Ce.selection.main;this.from=Math.max(0,ke-1e4),this.to=Math.min(Ce.doc.length,ke+1e4)}revertPending(Ce){let ke=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(ke.from),this.toContextPos(ke.from+ke.insert.length),Ce.doc.sliceString(ke.from,ke.to))}setSelection(Ce){let{main:ke}=Ce.selection,$n=this.toContextPos(Math.max(this.from,Math.min(this.to,ke.anchor))),Hn=this.toContextPos(ke.head);(this.editContext.selectionStart!=$n||this.editContext.selectionEnd!=Hn)&&this.editContext.updateSelection($n,Hn)}rangeIsValid(Ce){let{head:ke}=Ce.selection.main;return!(this.from>0&&ke-this.from<500||this.to1e4*3)}toEditorPos(Ce){return Ce+this.from}toContextPos(Ce){return Ce-this.from}destroy(){for(let Ce in this.handlers)this.editContext.removeEventListener(Ce,this.handlers[Ce])}}class EditorView{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(Ce={}){var ke;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),Ce.parent&&Ce.parent.appendChild(this.dom);let{dispatch:$n}=Ce;this.dispatchTransactions=Ce.dispatchTransactions||$n&&(Hn=>Hn.forEach(zn=>$n(zn,this)))||(Hn=>this.update(Hn)),this.dispatch=this.dispatch.bind(this),this._root=Ce.root||getRoot(Ce.parent)||document,this.viewState=new ViewState(Ce.state||EditorState.create(Ce)),Ce.scrollTo&&Ce.scrollTo.is(scrollIntoView$1)&&(this.viewState.scrollTarget=Ce.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(viewPlugin).map(Hn=>new PluginInstance(Hn));for(let Hn of this.plugins)Hn.update(this);this.observer=new DOMObserver(this),this.inputState=new InputState(this),this.inputState.ensureHandlers(this.plugins),this.docView=new DocView(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((ke=document.fonts)===null||ke===void 0)&&ke.ready&&document.fonts.ready.then(()=>this.requestMeasure())}dispatch(...Ce){let ke=Ce.length==1&&Ce[0]instanceof Transaction?Ce:Ce.length==1&&Array.isArray(Ce[0])?Ce[0]:[this.state.update(...Ce)];this.dispatchTransactions(ke,this)}update(Ce){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let ke=!1,$n=!1,Hn,zn=this.state;for(let uo of Ce){if(uo.startState!=zn)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");zn=uo.state}if(this.destroyed){this.viewState.state=zn;return}let Zn=this.hasFocus,qn=0,Yn=null;Ce.some(uo=>uo.annotation(isFocusChange))?(this.inputState.notifiedFocused=Zn,qn=1):Zn!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=Zn,Yn=focusChangeTransaction(zn,Zn),Yn||(qn=1));let Jn=this.observer.delayedAndroidKey,to=null;if(Jn?(this.observer.clearDelayedAndroidKey(),to=this.observer.readChange(),(to&&!this.state.doc.eq(zn.doc)||!this.state.selection.eq(zn.selection))&&(to=null)):this.observer.clear(),zn.facet(EditorState.phrases)!=this.state.facet(EditorState.phrases))return this.setState(zn);Hn=ViewUpdate.create(this,zn,Ce),Hn.flags|=qn;let io=this.viewState.scrollTarget;try{this.updateState=2;for(let uo of Ce){if(io&&(io=io.map(uo.changes)),uo.scrollIntoView){let{main:mo}=uo.state.selection;io=new ScrollTarget(mo.empty?mo:EditorSelection.cursor(mo.head,mo.head>mo.anchor?-1:1))}for(let mo of uo.effects)mo.is(scrollIntoView$1)&&(io=mo.value.clip(this.state))}this.viewState.update(Hn,io),this.bidiCache=CachedOrder.update(this.bidiCache,Hn.changes),Hn.empty||(this.updatePlugins(Hn),this.inputState.update(Hn)),ke=this.docView.update(Hn),this.state.facet(styleModule)!=this.styleModules&&this.mountStyles(),$n=this.updateAttrs(),this.showAnnouncements(Ce),this.docView.updateSelection(ke,Ce.some(uo=>uo.isUserEvent("select.pointer")))}finally{this.updateState=0}if(Hn.startState.facet(theme)!=Hn.state.facet(theme)&&(this.viewState.mustMeasureContent=!0),(ke||$n||io||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),ke&&this.docViewUpdate(),!Hn.empty)for(let uo of this.state.facet(updateListener))try{uo(Hn)}catch(mo){logException(this.state,mo,"update listener")}(Yn||to)&&Promise.resolve().then(()=>{Yn&&this.state==Yn.startState&&this.dispatch(Yn),to&&!applyDOMChange(this,to)&&Jn.force&&dispatchKey(this.contentDOM,Jn.key,Jn.keyCode)})}setState(Ce){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=Ce;return}this.updateState=2;let ke=this.hasFocus;try{for(let $n of this.plugins)$n.destroy(this);this.viewState=new ViewState(Ce),this.plugins=Ce.facet(viewPlugin).map($n=>new PluginInstance($n)),this.pluginMap.clear();for(let $n of this.plugins)$n.update(this);this.docView.destroy(),this.docView=new DocView(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}ke&&this.focus(),this.requestMeasure()}updatePlugins(Ce){let ke=Ce.startState.facet(viewPlugin),$n=Ce.state.facet(viewPlugin);if(ke!=$n){let Hn=[];for(let zn of $n){let Zn=ke.indexOf(zn);if(Zn<0)Hn.push(new PluginInstance(zn));else{let qn=this.plugins[Zn];qn.mustUpdate=Ce,Hn.push(qn)}}for(let zn of this.plugins)zn.mustUpdate!=Ce&&zn.destroy(this);this.plugins=Hn,this.pluginMap.clear()}else for(let Hn of this.plugins)Hn.mustUpdate=Ce;for(let Hn=0;Hn-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,Ce&&this.observer.forceFlush();let ke=null,$n=this.scrollDOM,Hn=$n.scrollTop*this.scaleY,{scrollAnchorPos:zn,scrollAnchorHeight:Zn}=this.viewState;Math.abs(Hn-this.viewState.scrollTop)>1&&(Zn=-1),this.viewState.scrollAnchorHeight=-1;try{for(let qn=0;;qn++){if(Zn<0)if(isScrolledToBottom($n))zn=-1,Zn=this.viewState.heightMap.height;else{let mo=this.viewState.scrollAnchorAt(Hn);zn=mo.from,Zn=mo.top}this.updateState=1;let Yn=this.viewState.measure(this);if(!Yn&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(qn>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let Jn=[];Yn&4||([this.measureRequests,Jn]=[Jn,this.measureRequests]);let to=Jn.map(mo=>{try{return mo.read(this)}catch(bo){return logException(this.state,bo),BadMeasure}}),io=ViewUpdate.create(this,this.state,[]),uo=!1;io.flags|=Yn,ke?ke.flags|=Yn:ke=io,this.updateState=2,io.empty||(this.updatePlugins(io),this.inputState.update(io),this.updateAttrs(),uo=this.docView.update(io),uo&&this.docViewUpdate());for(let mo=0;mo1||bo<-1){Hn=Hn+bo,$n.scrollTop=Hn/this.scaleY,Zn=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(ke&&!ke.empty)for(let qn of this.state.facet(updateListener))qn(ke)}get themeClasses(){return baseThemeID+" "+(this.state.facet(darkTheme)?baseDarkID:baseLightID)+" "+this.state.facet(theme)}updateAttrs(){let Ce=attrsFromFacet(this,editorAttributes,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),ke={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(editable)?"true":"false",class:"cm-content",style:`${browser.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(ke["aria-readonly"]="true"),attrsFromFacet(this,contentAttributes,ke);let $n=this.observer.ignore(()=>{let Hn=updateAttrs(this.contentDOM,this.contentAttrs,ke),zn=updateAttrs(this.dom,this.editorAttrs,Ce);return Hn||zn});return this.editorAttrs=Ce,this.contentAttrs=ke,$n}showAnnouncements(Ce){let ke=!0;for(let $n of Ce)for(let Hn of $n.effects)if(Hn.is(EditorView.announce)){ke&&(this.announceDOM.textContent=""),ke=!1;let zn=this.announceDOM.appendChild(document.createElement("div"));zn.textContent=Hn.value}}mountStyles(){this.styleModules=this.state.facet(styleModule);let Ce=this.state.facet(EditorView.cspNonce);StyleModule.mount(this.root,this.styleModules.concat(baseTheme$1$3).reverse(),Ce?{nonce:Ce}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(Ce){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),Ce){if(this.measureRequests.indexOf(Ce)>-1)return;if(Ce.key!=null){for(let ke=0;ke$n.spec==Ce)||null),ke&&ke.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(Ce){return this.readMeasured(),this.viewState.elementAtHeight(Ce)}lineBlockAtHeight(Ce){return this.readMeasured(),this.viewState.lineBlockAtHeight(Ce)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(Ce){return this.viewState.lineBlockAt(Ce)}get contentHeight(){return this.viewState.contentHeight}moveByChar(Ce,ke,$n){return skipAtoms(this,Ce,moveByChar(this,Ce,ke,$n))}moveByGroup(Ce,ke){return skipAtoms(this,Ce,moveByChar(this,Ce,ke,$n=>byGroup(this,Ce.head,$n)))}visualLineSide(Ce,ke){let $n=this.bidiSpans(Ce),Hn=this.textDirectionAt(Ce.from),zn=$n[ke?$n.length-1:0];return EditorSelection.cursor(zn.side(ke,Hn)+Ce.from,zn.forward(!ke,Hn)?1:-1)}moveToLineBoundary(Ce,ke,$n=!0){return moveToLineBoundary(this,Ce,ke,$n)}moveVertically(Ce,ke,$n){return skipAtoms(this,Ce,moveVertically(this,Ce,ke,$n))}domAtPos(Ce){return this.docView.domAtPos(Ce)}posAtDOM(Ce,ke=0){return this.docView.posFromDOM(Ce,ke)}posAtCoords(Ce,ke=!0){return this.readMeasured(),posAtCoords(this,Ce,ke)}coordsAtPos(Ce,ke=1){this.readMeasured();let $n=this.docView.coordsAt(Ce,ke);if(!$n||$n.left==$n.right)return $n;let Hn=this.state.doc.lineAt(Ce),zn=this.bidiSpans(Hn),Zn=zn[BidiSpan.find(zn,Ce-Hn.from,-1,ke)];return flattenRect($n,Zn.dir==Direction.LTR==ke>0)}coordsForChar(Ce){return this.readMeasured(),this.docView.coordsForChar(Ce)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(Ce){return!this.state.facet(perLineTextDirection)||Cethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(Ce))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(Ce){if(Ce.length>MaxBidiLine)return trivialOrder(Ce.length);let ke=this.textDirectionAt(Ce.from),$n;for(let zn of this.bidiCache)if(zn.from==Ce.from&&zn.dir==ke&&(zn.fresh||isolatesEq(zn.isolates,$n=getIsolatedRanges(this,Ce))))return zn.order;$n||($n=getIsolatedRanges(this,Ce));let Hn=computeOrder(Ce.text,ke,$n);return this.bidiCache.push(new CachedOrder(Ce.from,Ce.to,ke,$n,!0,Hn)),Hn}get hasFocus(){var Ce;return(this.dom.ownerDocument.hasFocus()||browser.safari&&((Ce=this.inputState)===null||Ce===void 0?void 0:Ce.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{focusPreventScroll(this.contentDOM),this.docView.updateSelection()})}setRoot(Ce){this._root!=Ce&&(this._root=Ce,this.observer.setWindow((Ce.nodeType==9?Ce:Ce.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let Ce of this.plugins)Ce.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(Ce,ke={}){return scrollIntoView$1.of(new ScrollTarget(typeof Ce=="number"?EditorSelection.cursor(Ce):Ce,ke.y,ke.x,ke.yMargin,ke.xMargin))}scrollSnapshot(){let{scrollTop:Ce,scrollLeft:ke}=this.scrollDOM,$n=this.viewState.scrollAnchorAt(Ce);return scrollIntoView$1.of(new ScrollTarget(EditorSelection.cursor($n.from),"start","start",$n.top-Ce,ke,!0))}setTabFocusMode(Ce){Ce==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof Ce=="boolean"?this.inputState.tabFocusMode=Ce?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+Ce)}static domEventHandlers(Ce){return ViewPlugin.define(()=>({}),{eventHandlers:Ce})}static domEventObservers(Ce){return ViewPlugin.define(()=>({}),{eventObservers:Ce})}static theme(Ce,ke){let $n=StyleModule.newName(),Hn=[theme.of($n),styleModule.of(buildTheme(`.${$n}`,Ce))];return ke&&ke.dark&&Hn.push(darkTheme.of(!0)),Hn}static baseTheme(Ce){return Prec.lowest(styleModule.of(buildTheme("."+baseThemeID,Ce,lightDarkIDs)))}static findFromDOM(Ce){var ke;let $n=Ce.querySelector(".cm-content"),Hn=$n&&ContentView.get($n)||ContentView.get(Ce);return((ke=Hn==null?void 0:Hn.rootView)===null||ke===void 0?void 0:ke.view)||null}}EditorView.styleModule=styleModule;EditorView.inputHandler=inputHandler$1;EditorView.scrollHandler=scrollHandler;EditorView.focusChangeEffect=focusChangeEffect;EditorView.perLineTextDirection=perLineTextDirection;EditorView.exceptionSink=exceptionSink;EditorView.updateListener=updateListener;EditorView.editable=editable;EditorView.mouseSelectionStyle=mouseSelectionStyle;EditorView.dragMovesSelection=dragMovesSelection$1;EditorView.clickAddsSelectionRange=clickAddsSelectionRange;EditorView.decorations=decorations;EditorView.outerDecorations=outerDecorations;EditorView.atomicRanges=atomicRanges;EditorView.bidiIsolatedRanges=bidiIsolatedRanges;EditorView.scrollMargins=scrollMargins;EditorView.darkTheme=darkTheme;EditorView.cspNonce=Facet.define({combine:_n=>_n.length?_n[0]:""});EditorView.contentAttributes=contentAttributes;EditorView.editorAttributes=editorAttributes;EditorView.lineWrapping=EditorView.contentAttributes.of({class:"cm-lineWrapping"});EditorView.announce=StateEffect.define();const MaxBidiLine=4096,BadMeasure={};class CachedOrder{constructor(Ce,ke,$n,Hn,zn,Zn){this.from=Ce,this.to=ke,this.dir=$n,this.isolates=Hn,this.fresh=zn,this.order=Zn}static update(Ce,ke){if(ke.empty&&!Ce.some(zn=>zn.fresh))return Ce;let $n=[],Hn=Ce.length?Ce[Ce.length-1].dir:Direction.LTR;for(let zn=Math.max(0,Ce.length-10);zn=0;Hn--){let zn=$n[Hn],Zn=typeof zn=="function"?zn(_n):zn;Zn&&combineAttrs(Zn,ke)}return ke}const currentPlatform=browser.mac?"mac":browser.windows?"win":browser.linux?"linux":"key";function normalizeKeyName(_n,Ce){const ke=_n.split(/-(?!$)/);let $n=ke[ke.length-1];$n=="Space"&&($n=" ");let Hn,zn,Zn,qn;for(let Yn=0;Yn$n.concat(Hn),[]))),ke}function runScopeHandlers(_n,Ce,ke){return runHandlers(getKeymap(_n.state),Ce,_n,ke)}let storedPrefix=null;const PrefixTimeout=4e3;function buildKeymap(_n,Ce=currentPlatform){let ke=Object.create(null),$n=Object.create(null),Hn=(Zn,qn)=>{let Yn=$n[Zn];if(Yn==null)$n[Zn]=qn;else if(Yn!=qn)throw new Error("Key binding "+Zn+" is used both as a regular binding and as a multi-stroke prefix")},zn=(Zn,qn,Yn,Jn,to)=>{var io,uo;let mo=ke[Zn]||(ke[Zn]=Object.create(null)),bo=qn.split(/ (?!$)/).map($o=>normalizeKeyName($o,Ce));for(let $o=1;$o{let Bo=storedPrefix={view:xo,prefix:Do,scope:Zn};return setTimeout(()=>{storedPrefix==Bo&&(storedPrefix=null)},PrefixTimeout),!0}]})}let Oo=bo.join(" ");Hn(Oo,!1);let wo=mo[Oo]||(mo[Oo]={preventDefault:!1,stopPropagation:!1,run:((uo=(io=mo._any)===null||io===void 0?void 0:io.run)===null||uo===void 0?void 0:uo.slice())||[]});Yn&&wo.run.push(Yn),Jn&&(wo.preventDefault=!0),to&&(wo.stopPropagation=!0)};for(let Zn of _n){let qn=Zn.scope?Zn.scope.split(" "):["editor"];if(Zn.any)for(let Jn of qn){let to=ke[Jn]||(ke[Jn]=Object.create(null));to._any||(to._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:io}=Zn;for(let uo in to)to[uo].run.push(mo=>io(mo,currentKeyEvent))}let Yn=Zn[Ce]||Zn.key;if(Yn)for(let Jn of qn)zn(Jn,Yn,Zn.run,Zn.preventDefault,Zn.stopPropagation),Zn.shift&&zn(Jn,"Shift-"+Yn,Zn.shift,Zn.preventDefault,Zn.stopPropagation)}return ke}let currentKeyEvent=null;function runHandlers(_n,Ce,ke,$n){currentKeyEvent=Ce;let Hn=keyName(Ce),zn=codePointAt(Hn,0),Zn=codePointSize(zn)==Hn.length&&Hn!=" ",qn="",Yn=!1,Jn=!1,to=!1;storedPrefix&&storedPrefix.view==ke&&storedPrefix.scope==$n&&(qn=storedPrefix.prefix+" ",modifierCodes.indexOf(Ce.keyCode)<0&&(Jn=!0,storedPrefix=null));let io=new Set,uo=wo=>{if(wo){for(let $o of wo.run)if(!io.has($o)&&(io.add($o),$o(ke)))return wo.stopPropagation&&(to=!0),!0;wo.preventDefault&&(wo.stopPropagation&&(to=!0),Jn=!0)}return!1},mo=_n[$n],bo,Oo;return mo&&(uo(mo[qn+modifiers(Hn,Ce,!Zn)])?Yn=!0:Zn&&(Ce.altKey||Ce.metaKey||Ce.ctrlKey)&&!(browser.windows&&Ce.ctrlKey&&Ce.altKey)&&(bo=base[Ce.keyCode])&&bo!=Hn?(uo(mo[qn+modifiers(bo,Ce,!0)])||Ce.shiftKey&&(Oo=shift[Ce.keyCode])!=Hn&&Oo!=bo&&uo(mo[qn+modifiers(Oo,Ce,!1)]))&&(Yn=!0):Zn&&Ce.shiftKey&&uo(mo[qn+modifiers(Hn,Ce,!0)])&&(Yn=!0),!Yn&&uo(mo._any)&&(Yn=!0)),Jn&&(Yn=!0),Yn&&to&&Ce.stopPropagation(),currentKeyEvent=null,Yn}class RectangleMarker{constructor(Ce,ke,$n,Hn,zn){this.className=Ce,this.left=ke,this.top=$n,this.width=Hn,this.height=zn}draw(){let Ce=document.createElement("div");return Ce.className=this.className,this.adjust(Ce),Ce}update(Ce,ke){return ke.className!=this.className?!1:(this.adjust(Ce),!0)}adjust(Ce){Ce.style.left=this.left+"px",Ce.style.top=this.top+"px",this.width!=null&&(Ce.style.width=this.width+"px"),Ce.style.height=this.height+"px"}eq(Ce){return this.left==Ce.left&&this.top==Ce.top&&this.width==Ce.width&&this.height==Ce.height&&this.className==Ce.className}static forRange(Ce,ke,$n){if($n.empty){let Hn=Ce.coordsAtPos($n.head,$n.assoc||1);if(!Hn)return[];let zn=getBase(Ce);return[new RectangleMarker(ke,Hn.left-zn.left,Hn.top-zn.top,null,Hn.bottom-Hn.top)]}else return rectanglesForRange(Ce,ke,$n)}}function getBase(_n){let Ce=_n.scrollDOM.getBoundingClientRect();return{left:(_n.textDirection==Direction.LTR?Ce.left:Ce.right-_n.scrollDOM.clientWidth*_n.scaleX)-_n.scrollDOM.scrollLeft*_n.scaleX,top:Ce.top-_n.scrollDOM.scrollTop*_n.scaleY}}function wrappedLine(_n,Ce,ke,$n){let Hn=_n.coordsAtPos(Ce,ke*2);if(!Hn)return $n;let zn=_n.dom.getBoundingClientRect(),Zn=(Hn.top+Hn.bottom)/2,qn=_n.posAtCoords({x:zn.left+1,y:Zn}),Yn=_n.posAtCoords({x:zn.right-1,y:Zn});return qn==null||Yn==null?$n:{from:Math.max($n.from,Math.min(qn,Yn)),to:Math.min($n.to,Math.max(qn,Yn))}}function rectanglesForRange(_n,Ce,ke){if(ke.to<=_n.viewport.from||ke.from>=_n.viewport.to)return[];let $n=Math.max(ke.from,_n.viewport.from),Hn=Math.min(ke.to,_n.viewport.to),zn=_n.textDirection==Direction.LTR,Zn=_n.contentDOM,qn=Zn.getBoundingClientRect(),Yn=getBase(_n),Jn=Zn.querySelector(".cm-line"),to=Jn&&window.getComputedStyle(Jn),io=qn.left+(to?parseInt(to.paddingLeft)+Math.min(0,parseInt(to.textIndent)):0),uo=qn.right-(to?parseInt(to.paddingRight):0),mo=blockAt(_n,$n),bo=blockAt(_n,Hn),Oo=mo.type==BlockType.Text?mo:null,wo=bo.type==BlockType.Text?bo:null;if(Oo&&(_n.lineWrapping||mo.widgetLineBreaks)&&(Oo=wrappedLine(_n,$n,1,Oo)),wo&&(_n.lineWrapping||bo.widgetLineBreaks)&&(wo=wrappedLine(_n,Hn,-1,wo)),Oo&&wo&&Oo.from==wo.from&&Oo.to==wo.to)return Do(xo(ke.from,ke.to,Oo));{let Vo=Oo?xo(ke.from,null,Oo):Bo(mo,!1),Ko=wo?xo(null,ke.to,wo):Bo(bo,!0),Mo=[];return(Oo||mo).to<(wo||bo).from-(Oo&&wo?1:0)||mo.widgetLineBreaks>1&&Vo.bottom+_n.defaultLineHeight/2Yo&&sr.from=ko)break;cr>Js&&rs(Math.max(Qr,Js),Vo==null&&Qr<=Yo,Math.min(cr,ko),Ko==null&&cr>=Ys,xs.dir)}if(Js=gs.to+1,Js>=ko)break}return ps.length==0&&rs(Yo,Vo==null,Ys,Ko==null,_n.textDirection),{top:es,bottom:ls,horizontal:ps}}function Bo(Vo,Ko){let Mo=qn.top+(Ko?Vo.top:Vo.bottom);return{top:Mo,bottom:Mo,horizontal:[]}}}function sameMarker(_n,Ce){return _n.constructor==Ce.constructor&&_n.eq(Ce)}class LayerView{constructor(Ce,ke){this.view=Ce,this.layer=ke,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=Ce.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),ke.above&&this.dom.classList.add("cm-layer-above"),ke.class&&this.dom.classList.add(ke.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(Ce.state),Ce.requestMeasure(this.measureReq),ke.mount&&ke.mount(this.dom,Ce)}update(Ce){Ce.startState.facet(layerOrder)!=Ce.state.facet(layerOrder)&&this.setOrder(Ce.state),(this.layer.update(Ce,this.dom)||Ce.geometryChanged)&&(this.scale(),Ce.view.requestMeasure(this.measureReq))}docViewUpdate(Ce){this.layer.updateOnDocViewUpdate!==!1&&Ce.requestMeasure(this.measureReq)}setOrder(Ce){let ke=0,$n=Ce.facet(layerOrder);for(;ke<$n.length&&$n[ke]!=this.layer;)ke++;this.dom.style.zIndex=String((this.layer.above?150:-1)-ke)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:Ce,scaleY:ke}=this.view;(Ce!=this.scaleX||ke!=this.scaleY)&&(this.scaleX=Ce,this.scaleY=ke,this.dom.style.transform=`scale(${1/Ce}, ${1/ke})`)}draw(Ce){if(Ce.length!=this.drawn.length||Ce.some((ke,$n)=>!sameMarker(ke,this.drawn[$n]))){let ke=this.dom.firstChild,$n=0;for(let Hn of Ce)Hn.update&&ke&&Hn.constructor&&this.drawn[$n].constructor&&Hn.update(ke,this.drawn[$n])?(ke=ke.nextSibling,$n++):this.dom.insertBefore(Hn.draw(),ke);for(;ke;){let Hn=ke.nextSibling;ke.remove(),ke=Hn}this.drawn=Ce}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const layerOrder=Facet.define();function layer(_n){return[ViewPlugin.define(Ce=>new LayerView(Ce,_n)),layerOrder.of(_n)]}const CanHidePrimary=!browser.ios,selectionConfig=Facet.define({combine(_n){return combineConfig(_n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(Ce,ke)=>Math.min(Ce,ke),drawRangeCursor:(Ce,ke)=>Ce||ke})}});function drawSelection(_n={}){return[selectionConfig.of(_n),cursorLayer,selectionLayer,hideNativeSelection,nativeSelectionHidden.of(!0)]}function configChanged(_n){return _n.startState.facet(selectionConfig)!=_n.state.facet(selectionConfig)}const cursorLayer=layer({above:!0,markers(_n){let{state:Ce}=_n,ke=Ce.facet(selectionConfig),$n=[];for(let Hn of Ce.selection.ranges){let zn=Hn==Ce.selection.main;if(Hn.empty?!zn||CanHidePrimary:ke.drawRangeCursor){let Zn=zn?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",qn=Hn.empty?Hn:EditorSelection.cursor(Hn.head,Hn.head>Hn.anchor?-1:1);for(let Yn of RectangleMarker.forRange(_n,Zn,qn))$n.push(Yn)}}return $n},update(_n,Ce){_n.transactions.some($n=>$n.selection)&&(Ce.style.animationName=Ce.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let ke=configChanged(_n);return ke&&setBlinkRate(_n.state,Ce),_n.docChanged||_n.selectionSet||ke},mount(_n,Ce){setBlinkRate(Ce.state,_n)},class:"cm-cursorLayer"});function setBlinkRate(_n,Ce){Ce.style.animationDuration=_n.facet(selectionConfig).cursorBlinkRate+"ms"}const selectionLayer=layer({above:!1,markers(_n){return _n.state.selection.ranges.map(Ce=>Ce.empty?[]:RectangleMarker.forRange(_n,"cm-selectionBackground",Ce)).reduce((Ce,ke)=>Ce.concat(ke))},update(_n,Ce){return _n.docChanged||_n.selectionSet||_n.viewportChanged||configChanged(_n)},class:"cm-selectionLayer"}),themeSpec={".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"}},".cm-content":{"& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}};CanHidePrimary&&(themeSpec[".cm-line"].caretColor=themeSpec[".cm-content"].caretColor="transparent !important");const hideNativeSelection=Prec.highest(EditorView.theme(themeSpec)),setDropCursorPos=StateEffect.define({map(_n,Ce){return _n==null?null:Ce.mapPos(_n)}}),dropCursorPos=StateField.define({create(){return null},update(_n,Ce){return _n!=null&&(_n=Ce.changes.mapPos(_n)),Ce.effects.reduce((ke,$n)=>$n.is(setDropCursorPos)?$n.value:ke,_n)}}),drawDropCursor=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(_n){var Ce;let ke=_n.state.field(dropCursorPos);ke==null?this.cursor!=null&&((Ce=this.cursor)===null||Ce===void 0||Ce.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(_n.startState.field(dropCursorPos)!=ke||_n.docChanged||_n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:_n}=this,Ce=_n.state.field(dropCursorPos),ke=Ce!=null&&_n.coordsAtPos(Ce);if(!ke)return null;let $n=_n.scrollDOM.getBoundingClientRect();return{left:ke.left-$n.left+_n.scrollDOM.scrollLeft*_n.scaleX,top:ke.top-$n.top+_n.scrollDOM.scrollTop*_n.scaleY,height:ke.bottom-ke.top}}drawCursor(_n){if(this.cursor){let{scaleX:Ce,scaleY:ke}=this.view;_n?(this.cursor.style.left=_n.left/Ce+"px",this.cursor.style.top=_n.top/ke+"px",this.cursor.style.height=_n.height/ke+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(_n){this.view.state.field(dropCursorPos)!=_n&&this.view.dispatch({effects:setDropCursorPos.of(_n)})}},{eventObservers:{dragover(_n){this.setDropPos(this.view.posAtCoords({x:_n.clientX,y:_n.clientY}))},dragleave(_n){(_n.target==this.view.contentDOM||!this.view.contentDOM.contains(_n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function dropCursor(){return[dropCursorPos,drawDropCursor]}function iterMatches(_n,Ce,ke,$n,Hn){Ce.lastIndex=0;for(let zn=_n.iterRange(ke,$n),Zn=ke,qn;!zn.next().done;Zn+=zn.value.length)if(!zn.lineBreak)for(;qn=Ce.exec(zn.value);)Hn(Zn+qn.index,qn)}function matchRanges(_n,Ce){let ke=_n.visibleRanges;if(ke.length==1&&ke[0].from==_n.viewport.from&&ke[0].to==_n.viewport.to)return ke;let $n=[];for(let{from:Hn,to:zn}of ke)Hn=Math.max(_n.state.doc.lineAt(Hn).from,Hn-Ce),zn=Math.min(_n.state.doc.lineAt(zn).to,zn+Ce),$n.length&&$n[$n.length-1].to>=Hn?$n[$n.length-1].to=zn:$n.push({from:Hn,to:zn});return $n}class MatchDecorator{constructor(Ce){const{regexp:ke,decoration:$n,decorate:Hn,boundary:zn,maxLength:Zn=1e3}=Ce;if(!ke.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=ke,Hn)this.addMatch=(qn,Yn,Jn,to)=>Hn(to,Jn,Jn+qn[0].length,qn,Yn);else if(typeof $n=="function")this.addMatch=(qn,Yn,Jn,to)=>{let io=$n(qn,Yn,Jn);io&&to(Jn,Jn+qn[0].length,io)};else if($n)this.addMatch=(qn,Yn,Jn,to)=>to(Jn,Jn+qn[0].length,$n);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=zn,this.maxLength=Zn}createDeco(Ce){let ke=new RangeSetBuilder,$n=ke.add.bind(ke);for(let{from:Hn,to:zn}of matchRanges(Ce,this.maxLength))iterMatches(Ce.state.doc,this.regexp,Hn,zn,(Zn,qn)=>this.addMatch(qn,Ce,Zn,$n));return ke.finish()}updateDeco(Ce,ke){let $n=1e9,Hn=-1;return Ce.docChanged&&Ce.changes.iterChanges((zn,Zn,qn,Yn)=>{Yn>Ce.view.viewport.from&&qn1e3?this.createDeco(Ce.view):Hn>-1?this.updateRange(Ce.view,ke.map(Ce.changes),$n,Hn):ke}updateRange(Ce,ke,$n,Hn){for(let zn of Ce.visibleRanges){let Zn=Math.max(zn.from,$n),qn=Math.min(zn.to,Hn);if(qn>Zn){let Yn=Ce.state.doc.lineAt(Zn),Jn=Yn.toYn.from;Zn--)if(this.boundary.test(Yn.text[Zn-1-Yn.from])){to=Zn;break}for(;qnuo.push($o.range(Oo,wo));if(Yn==Jn)for(this.regexp.lastIndex=to-Yn.from;(mo=this.regexp.exec(Yn.text))&&mo.indexthis.addMatch(wo,Ce,Oo,bo));ke=ke.update({filterFrom:to,filterTo:io,filter:(Oo,wo)=>Ooio,add:uo})}}return ke}}const UnicodeRegexpSupport=/x/.unicode!=null?"gu":"g",Specials=new RegExp(`[\0-\b +--Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,UnicodeRegexpSupport),Names={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let _supportsTabSize=null;function supportsTabSize(){var _n;if(_supportsTabSize==null&&typeof document<"u"&&document.body){let Ce=document.body.style;_supportsTabSize=((_n=Ce.tabSize)!==null&&_n!==void 0?_n:Ce.MozTabSize)!=null}return _supportsTabSize||!1}const specialCharConfig=Facet.define({combine(_n){let Ce=combineConfig(_n,{render:null,specialChars:Specials,addSpecialChars:null});return(Ce.replaceTabs=!supportsTabSize())&&(Ce.specialChars=new RegExp(" |"+Ce.specialChars.source,UnicodeRegexpSupport)),Ce.addSpecialChars&&(Ce.specialChars=new RegExp(Ce.specialChars.source+"|"+Ce.addSpecialChars.source,UnicodeRegexpSupport)),Ce}});function highlightSpecialChars(_n={}){return[specialCharConfig.of(_n),specialCharPlugin()]}let _plugin=null;function specialCharPlugin(){return _plugin||(_plugin=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.decorations=Decoration.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(_n.state.facet(specialCharConfig)),this.decorations=this.decorator.createDeco(_n)}makeDecorator(_n){return new MatchDecorator({regexp:_n.specialChars,decoration:(Ce,ke,$n)=>{let{doc:Hn}=ke.state,zn=codePointAt(Ce[0],0);if(zn==9){let Zn=Hn.lineAt($n),qn=ke.state.tabSize,Yn=countColumn(Zn.text,qn,$n-Zn.from);return Decoration.replace({widget:new TabWidget((qn-Yn%qn)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[zn]||(this.decorationCache[zn]=Decoration.replace({widget:new SpecialCharWidget(_n,zn)}))},boundary:_n.replaceTabs?void 0:/[^]/})}update(_n){let Ce=_n.state.facet(specialCharConfig);_n.startState.facet(specialCharConfig)!=Ce?(this.decorator=this.makeDecorator(Ce),this.decorations=this.decorator.createDeco(_n.view)):this.decorations=this.decorator.updateDeco(_n,this.decorations)}},{decorations:_n=>_n.decorations}))}const DefaultPlaceholder="•";function placeholder$1(_n){return _n>=32?DefaultPlaceholder:_n==10?"␤":String.fromCharCode(9216+_n)}class SpecialCharWidget extends WidgetType{constructor(Ce,ke){super(),this.options=Ce,this.code=ke}eq(Ce){return Ce.code==this.code}toDOM(Ce){let ke=placeholder$1(this.code),$n=Ce.state.phrase("Control character")+" "+(Names[this.code]||"0x"+this.code.toString(16)),Hn=this.options.render&&this.options.render(this.code,$n,ke);if(Hn)return Hn;let zn=document.createElement("span");return zn.textContent=ke,zn.title=$n,zn.setAttribute("aria-label",$n),zn.className="cm-specialChar",zn}ignoreEvent(){return!1}}class TabWidget extends WidgetType{constructor(Ce){super(),this.width=Ce}eq(Ce){return Ce.width==this.width}toDOM(){let Ce=document.createElement("span");return Ce.textContent=" ",Ce.className="cm-tab",Ce.style.width=this.width+"px",Ce}ignoreEvent(){return!1}}function highlightActiveLine(){return activeLineHighlighter}const lineDeco=Decoration.line({class:"cm-activeLine"}),activeLineHighlighter=ViewPlugin.fromClass(class{constructor(_n){this.decorations=this.getDeco(_n)}update(_n){(_n.docChanged||_n.selectionSet)&&(this.decorations=this.getDeco(_n.view))}getDeco(_n){let Ce=-1,ke=[];for(let $n of _n.state.selection.ranges){let Hn=_n.lineBlockAt($n.head);Hn.from>Ce&&(ke.push(lineDeco.range(Hn.from)),Ce=Hn.from)}return Decoration.set(ke)}},{decorations:_n=>_n.decorations}),MaxOff=2e3;function rectangleFor(_n,Ce,ke){let $n=Math.min(Ce.line,ke.line),Hn=Math.max(Ce.line,ke.line),zn=[];if(Ce.off>MaxOff||ke.off>MaxOff||Ce.col<0||ke.col<0){let Zn=Math.min(Ce.off,ke.off),qn=Math.max(Ce.off,ke.off);for(let Yn=$n;Yn<=Hn;Yn++){let Jn=_n.doc.line(Yn);Jn.length<=qn&&zn.push(EditorSelection.range(Jn.from+Zn,Jn.to+qn))}}else{let Zn=Math.min(Ce.col,ke.col),qn=Math.max(Ce.col,ke.col);for(let Yn=$n;Yn<=Hn;Yn++){let Jn=_n.doc.line(Yn),to=findColumn(Jn.text,Zn,_n.tabSize,!0);if(to<0)zn.push(EditorSelection.cursor(Jn.to));else{let io=findColumn(Jn.text,qn,_n.tabSize);zn.push(EditorSelection.range(Jn.from+to,Jn.from+io))}}}return zn}function absoluteColumn(_n,Ce){let ke=_n.coordsAtPos(_n.viewport.from);return ke?Math.round(Math.abs((ke.left-Ce)/_n.defaultCharacterWidth)):-1}function getPos(_n,Ce){let ke=_n.posAtCoords({x:Ce.clientX,y:Ce.clientY},!1),$n=_n.state.doc.lineAt(ke),Hn=ke-$n.from,zn=Hn>MaxOff?-1:Hn==$n.length?absoluteColumn(_n,Ce.clientX):countColumn($n.text,_n.state.tabSize,ke-$n.from);return{line:$n.number,col:zn,off:Hn}}function rectangleSelectionStyle(_n,Ce){let ke=getPos(_n,Ce),$n=_n.state.selection;return ke?{update(Hn){if(Hn.docChanged){let zn=Hn.changes.mapPos(Hn.startState.doc.line(ke.line).from),Zn=Hn.state.doc.lineAt(zn);ke={line:Zn.number,col:ke.col,off:Math.min(ke.off,Zn.length)},$n=$n.map(Hn.changes)}},get(Hn,zn,Zn){let qn=getPos(_n,Hn);if(!qn)return $n;let Yn=rectangleFor(_n.state,ke,qn);return Yn.length?Zn?EditorSelection.create(Yn.concat($n.ranges)):EditorSelection.create(Yn):$n}}:null}function rectangularSelection(_n){let Ce=ke=>ke.altKey&&ke.button==0;return EditorView.mouseSelectionStyle.of((ke,$n)=>Ce($n)?rectangleSelectionStyle(ke,$n):null)}const keys={Alt:[18,_n=>!!_n.altKey],Control:[17,_n=>!!_n.ctrlKey],Shift:[16,_n=>!!_n.shiftKey],Meta:[91,_n=>!!_n.metaKey]},showCrosshair={style:"cursor: crosshair"};function crosshairCursor(_n={}){let[Ce,ke]=keys[_n.key||"Alt"],$n=ViewPlugin.fromClass(class{constructor(Hn){this.view=Hn,this.isDown=!1}set(Hn){this.isDown!=Hn&&(this.isDown=Hn,this.view.update([]))}},{eventObservers:{keydown(Hn){this.set(Hn.keyCode==Ce||ke(Hn))},keyup(Hn){(Hn.keyCode==Ce||!ke(Hn))&&this.set(!1)},mousemove(Hn){this.set(ke(Hn))}}});return[$n,EditorView.contentAttributes.of(Hn=>{var zn;return!((zn=Hn.plugin($n))===null||zn===void 0)&&zn.isDown?showCrosshair:null})]}const Outside="-10000px";class TooltipViewManager{constructor(Ce,ke,$n,Hn){this.facet=ke,this.createTooltipView=$n,this.removeTooltipView=Hn,this.input=Ce.state.facet(ke),this.tooltips=this.input.filter(Zn=>Zn);let zn=null;this.tooltipViews=this.tooltips.map(Zn=>zn=$n(Zn,zn))}update(Ce,ke){var $n;let Hn=Ce.state.facet(this.facet),zn=Hn.filter(Yn=>Yn);if(Hn===this.input){for(let Yn of this.tooltipViews)Yn.update&&Yn.update(Ce);return!1}let Zn=[],qn=ke?[]:null;for(let Yn=0;Ynke[Jn]=Yn),ke.length=qn.length),this.input=Hn,this.tooltips=zn,this.tooltipViews=Zn,!0}}function windowSpace(_n){let{win:Ce}=_n;return{top:0,left:0,bottom:Ce.innerHeight,right:Ce.innerWidth}}const tooltipConfig=Facet.define({combine:_n=>{var Ce,ke,$n;return{position:browser.ios?"absolute":((Ce=_n.find(Hn=>Hn.position))===null||Ce===void 0?void 0:Ce.position)||"fixed",parent:((ke=_n.find(Hn=>Hn.parent))===null||ke===void 0?void 0:ke.parent)||null,tooltipSpace:(($n=_n.find(Hn=>Hn.tooltipSpace))===null||$n===void 0?void 0:$n.tooltipSpace)||windowSpace}}}),knownHeight=new WeakMap,tooltipPlugin=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let Ce=_n.state.facet(tooltipConfig);this.position=Ce.position,this.parent=Ce.parent,this.classes=_n.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new TooltipViewManager(_n,showTooltip,(ke,$n)=>this.createTooltip(ke,$n),ke=>{this.resizeObserver&&this.resizeObserver.unobserve(ke.dom),ke.dom.remove()}),this.above=this.manager.tooltips.map(ke=>!!ke.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(ke=>{Date.now()>this.lastTransaction-50&&ke.length>0&&ke[ke.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),_n.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let _n of this.manager.tooltipViews)this.intersectionObserver.observe(_n.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(_n){_n.transactions.length&&(this.lastTransaction=Date.now());let Ce=this.manager.update(_n,this.above);Ce&&this.observeIntersection();let ke=Ce||_n.geometryChanged,$n=_n.state.facet(tooltipConfig);if($n.position!=this.position&&!this.madeAbsolute){this.position=$n.position;for(let Hn of this.manager.tooltipViews)Hn.dom.style.position=this.position;ke=!0}if($n.parent!=this.parent){this.parent&&this.container.remove(),this.parent=$n.parent,this.createContainer();for(let Hn of this.manager.tooltipViews)this.container.appendChild(Hn.dom);ke=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);ke&&this.maybeMeasure()}createTooltip(_n,Ce){let ke=_n.create(this.view),$n=Ce?Ce.dom:null;if(ke.dom.classList.add("cm-tooltip"),_n.arrow&&!ke.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let Hn=document.createElement("div");Hn.className="cm-tooltip-arrow",ke.dom.appendChild(Hn)}return ke.dom.style.position=this.position,ke.dom.style.top=Outside,ke.dom.style.left="0px",this.container.insertBefore(ke.dom,$n),ke.mount&&ke.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(ke.dom),ke}destroy(){var _n,Ce,ke;this.view.win.removeEventListener("resize",this.measureSoon);for(let $n of this.manager.tooltipViews)$n.dom.remove(),(_n=$n.destroy)===null||_n===void 0||_n.call($n);this.parent&&this.container.remove(),(Ce=this.resizeObserver)===null||Ce===void 0||Ce.disconnect(),(ke=this.intersectionObserver)===null||ke===void 0||ke.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let _n=this.view.dom.getBoundingClientRect(),Ce=1,ke=1,$n=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:Hn}=this.manager.tooltipViews[0];if(browser.gecko)$n=Hn.offsetParent!=this.container.ownerDocument.body;else if(Hn.style.top==Outside&&Hn.style.left=="0px"){let zn=Hn.getBoundingClientRect();$n=Math.abs(zn.top+1e4)>1||Math.abs(zn.left)>1}}if($n||this.position=="absolute")if(this.parent){let Hn=this.parent.getBoundingClientRect();Hn.width&&Hn.height&&(Ce=Hn.width/this.parent.offsetWidth,ke=Hn.height/this.parent.offsetHeight)}else({scaleX:Ce,scaleY:ke}=this.view.viewState);return{editor:_n,parent:this.parent?this.container.getBoundingClientRect():_n,pos:this.manager.tooltips.map((Hn,zn)=>{let Zn=this.manager.tooltipViews[zn];return Zn.getCoords?Zn.getCoords(Hn.pos):this.view.coordsAtPos(Hn.pos)}),size:this.manager.tooltipViews.map(({dom:Hn})=>Hn.getBoundingClientRect()),space:this.view.state.facet(tooltipConfig).tooltipSpace(this.view),scaleX:Ce,scaleY:ke,makeAbsolute:$n}}writeMeasure(_n){var Ce;if(_n.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let qn of this.manager.tooltipViews)qn.dom.style.position="absolute"}let{editor:ke,space:$n,scaleX:Hn,scaleY:zn}=_n,Zn=[];for(let qn=0;qn=Math.min(ke.bottom,$n.bottom)||io.rightMath.min(ke.right,$n.right)+.1){to.style.top=Outside;continue}let mo=Yn.arrow?Jn.dom.querySelector(".cm-tooltip-arrow"):null,bo=mo?7:0,Oo=uo.right-uo.left,wo=(Ce=knownHeight.get(Jn))!==null&&Ce!==void 0?Ce:uo.bottom-uo.top,$o=Jn.offset||noOffset,Do=this.view.textDirection==Direction.LTR,xo=uo.width>$n.right-$n.left?Do?$n.left:$n.right-uo.width:Do?Math.max($n.left,Math.min(io.left-(mo?14:0)+$o.x,$n.right-Oo)):Math.min(Math.max($n.left,io.left-Oo+(mo?14:0)-$o.x),$n.right-Oo),Bo=this.above[qn];!Yn.strictSide&&(Bo?io.top-(uo.bottom-uo.top)-$o.y<$n.top:io.bottom+(uo.bottom-uo.top)+$o.y>$n.bottom)&&Bo==$n.bottom-io.bottom>io.top-$n.top&&(Bo=this.above[qn]=!Bo);let Vo=(Bo?io.top-$n.top:$n.bottom-io.bottom)-bo;if(Voxo&&es.topKo&&(Ko=Bo?es.top-wo-2-bo:es.bottom+bo+2);if(this.position=="absolute"?(to.style.top=(Ko-_n.parent.top)/zn+"px",to.style.left=(xo-_n.parent.left)/Hn+"px"):(to.style.top=Ko/zn+"px",to.style.left=xo/Hn+"px"),mo){let es=io.left+(Do?$o.x:-$o.x)-(xo+14-7);mo.style.left=es/Hn+"px"}Jn.overlap!==!0&&Zn.push({left:xo,top:Ko,right:Mo,bottom:Ko+wo}),to.classList.toggle("cm-tooltip-above",Bo),to.classList.toggle("cm-tooltip-below",!Bo),Jn.positioned&&Jn.positioned(_n.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let _n of this.manager.tooltipViews)_n.dom.style.top=Outside}},{eventObservers:{scroll(){this.maybeMeasure()}}}),baseTheme$4=EditorView.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),noOffset={x:0,y:0},showTooltip=Facet.define({enables:[tooltipPlugin,baseTheme$4]}),showHoverTooltip=Facet.define({combine:_n=>_n.reduce((Ce,ke)=>Ce.concat(ke),[])});class HoverTooltipHost{static create(Ce){return new HoverTooltipHost(Ce)}constructor(Ce){this.view=Ce,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new TooltipViewManager(Ce,showHoverTooltip,(ke,$n)=>this.createHostedView(ke,$n),ke=>ke.dom.remove())}createHostedView(Ce,ke){let $n=Ce.create(this.view);return $n.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore($n.dom,ke?ke.dom.nextSibling:this.dom.firstChild),this.mounted&&$n.mount&&$n.mount(this.view),$n}mount(Ce){for(let ke of this.manager.tooltipViews)ke.mount&&ke.mount(Ce);this.mounted=!0}positioned(Ce){for(let ke of this.manager.tooltipViews)ke.positioned&&ke.positioned(Ce)}update(Ce){this.manager.update(Ce)}destroy(){var Ce;for(let ke of this.manager.tooltipViews)(Ce=ke.destroy)===null||Ce===void 0||Ce.call(ke)}passProp(Ce){let ke;for(let $n of this.manager.tooltipViews){let Hn=$n[Ce];if(Hn!==void 0){if(ke===void 0)ke=Hn;else if(ke!==Hn)return}}return ke}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}}const showHoverTooltipHost=showTooltip.compute([showHoverTooltip],_n=>{let Ce=_n.facet(showHoverTooltip);return Ce.length===0?null:{pos:Math.min(...Ce.map(ke=>ke.pos)),end:Math.max(...Ce.map(ke=>{var $n;return($n=ke.end)!==null&&$n!==void 0?$n:ke.pos})),create:HoverTooltipHost.create,above:Ce[0].above,arrow:Ce.some(ke=>ke.arrow)}});class HoverPlugin{constructor(Ce,ke,$n,Hn,zn){this.view=Ce,this.source=ke,this.field=$n,this.setHover=Hn,this.hoverTime=zn,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:Ce.dom,time:0},this.checkHover=this.checkHover.bind(this),Ce.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),Ce.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let Ce=Date.now()-this.lastMove.time;Ceqn.bottom||ke.xqn.right+Ce.defaultCharacterWidth)return;let Yn=Ce.bidiSpans(Ce.state.doc.lineAt(Hn)).find(to=>to.from<=Hn&&to.to>=Hn),Jn=Yn&&Yn.dir==Direction.RTL?-1:1;zn=ke.x{this.pending==qn&&(this.pending=null,Yn&&!(Array.isArray(Yn)&&!Yn.length)&&Ce.dispatch({effects:this.setHover.of(Array.isArray(Yn)?Yn:[Yn])}))},Yn=>logException(Ce.state,Yn,"hover tooltip"))}else Zn&&!(Array.isArray(Zn)&&!Zn.length)&&Ce.dispatch({effects:this.setHover.of(Array.isArray(Zn)?Zn:[Zn])})}get tooltip(){let Ce=this.view.plugin(tooltipPlugin),ke=Ce?Ce.manager.tooltips.findIndex($n=>$n.create==HoverTooltipHost.create):-1;return ke>-1?Ce.manager.tooltipViews[ke]:null}mousemove(Ce){var ke,$n;this.lastMove={x:Ce.clientX,y:Ce.clientY,target:Ce.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:Hn,tooltip:zn}=this;if(Hn.length&&zn&&!isInTooltip(zn.dom,Ce)||this.pending){let{pos:Zn}=Hn[0]||this.pending,qn=($n=(ke=Hn[0])===null||ke===void 0?void 0:ke.end)!==null&&$n!==void 0?$n:Zn;(Zn==qn?this.view.posAtCoords(this.lastMove)!=Zn:!isOverRange(this.view,Zn,qn,Ce.clientX,Ce.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(Ce){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:ke}=this;if(ke.length){let{tooltip:$n}=this;$n&&$n.dom.contains(Ce.relatedTarget)?this.watchTooltipLeave($n.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(Ce){let ke=$n=>{Ce.removeEventListener("mouseleave",ke),this.active.length&&!this.view.dom.contains($n.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};Ce.addEventListener("mouseleave",ke)}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}const tooltipMargin=4;function isInTooltip(_n,Ce){let ke=_n.getBoundingClientRect();return Ce.clientX>=ke.left-tooltipMargin&&Ce.clientX<=ke.right+tooltipMargin&&Ce.clientY>=ke.top-tooltipMargin&&Ce.clientY<=ke.bottom+tooltipMargin}function isOverRange(_n,Ce,ke,$n,Hn,zn){let Zn=_n.scrollDOM.getBoundingClientRect(),qn=_n.documentTop+_n.documentPadding.top+_n.contentHeight;if(Zn.left>$n||Zn.right<$n||Zn.top>Hn||Math.min(Zn.bottom,qn)=Ce&&Yn<=ke}function hoverTooltip(_n,Ce={}){let ke=StateEffect.define(),$n=StateField.define({create(){return[]},update(Hn,zn){if(Hn.length&&(Ce.hideOnChange&&(zn.docChanged||zn.selection)?Hn=[]:Ce.hideOn&&(Hn=Hn.filter(Zn=>!Ce.hideOn(zn,Zn))),zn.docChanged)){let Zn=[];for(let qn of Hn){let Yn=zn.changes.mapPos(qn.pos,-1,MapMode.TrackDel);if(Yn!=null){let Jn=Object.assign(Object.create(null),qn);Jn.pos=Yn,Jn.end!=null&&(Jn.end=zn.changes.mapPos(Jn.end)),Zn.push(Jn)}}Hn=Zn}for(let Zn of zn.effects)Zn.is(ke)&&(Hn=Zn.value),Zn.is(closeHoverTooltipEffect)&&(Hn=[]);return Hn},provide:Hn=>showHoverTooltip.from(Hn)});return{active:$n,extension:[$n,ViewPlugin.define(Hn=>new HoverPlugin(Hn,_n,$n,ke,Ce.hoverTime||300)),showHoverTooltipHost]}}function getTooltip(_n,Ce){let ke=_n.plugin(tooltipPlugin);if(!ke)return null;let $n=ke.manager.tooltips.indexOf(Ce);return $n<0?null:ke.manager.tooltipViews[$n]}const closeHoverTooltipEffect=StateEffect.define(),panelConfig=Facet.define({combine(_n){let Ce,ke;for(let $n of _n)Ce=Ce||$n.topContainer,ke=ke||$n.bottomContainer;return{topContainer:Ce,bottomContainer:ke}}});function getPanel(_n,Ce){let ke=_n.plugin(panelPlugin),$n=ke?ke.specs.indexOf(Ce):-1;return $n>-1?ke.panels[$n]:null}const panelPlugin=ViewPlugin.fromClass(class{constructor(_n){this.input=_n.state.facet(showPanel),this.specs=this.input.filter(ke=>ke),this.panels=this.specs.map(ke=>ke(_n));let Ce=_n.state.facet(panelConfig);this.top=new PanelGroup(_n,!0,Ce.topContainer),this.bottom=new PanelGroup(_n,!1,Ce.bottomContainer),this.top.sync(this.panels.filter(ke=>ke.top)),this.bottom.sync(this.panels.filter(ke=>!ke.top));for(let ke of this.panels)ke.dom.classList.add("cm-panel"),ke.mount&&ke.mount()}update(_n){let Ce=_n.state.facet(panelConfig);this.top.container!=Ce.topContainer&&(this.top.sync([]),this.top=new PanelGroup(_n.view,!0,Ce.topContainer)),this.bottom.container!=Ce.bottomContainer&&(this.bottom.sync([]),this.bottom=new PanelGroup(_n.view,!1,Ce.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let ke=_n.state.facet(showPanel);if(ke!=this.input){let $n=ke.filter(Yn=>Yn),Hn=[],zn=[],Zn=[],qn=[];for(let Yn of $n){let Jn=this.specs.indexOf(Yn),to;Jn<0?(to=Yn(_n.view),qn.push(to)):(to=this.panels[Jn],to.update&&to.update(_n)),Hn.push(to),(to.top?zn:Zn).push(to)}this.specs=$n,this.panels=Hn,this.top.sync(zn),this.bottom.sync(Zn);for(let Yn of qn)Yn.dom.classList.add("cm-panel"),Yn.mount&&Yn.mount()}else for(let $n of this.panels)$n.update&&$n.update(_n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:_n=>EditorView.scrollMargins.of(Ce=>{let ke=Ce.plugin(_n);return ke&&{top:ke.top.scrollMargin(),bottom:ke.bottom.scrollMargin()}})});class PanelGroup{constructor(Ce,ke,$n){this.view=Ce,this.top=ke,this.container=$n,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(Ce){for(let ke of this.panels)ke.destroy&&Ce.indexOf(ke)<0&&ke.destroy();this.panels=Ce,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let ke=this.container||this.view.dom;ke.insertBefore(this.dom,this.top?ke.firstChild:null)}let Ce=this.dom.firstChild;for(let ke of this.panels)if(ke.dom.parentNode==this.dom){for(;Ce!=ke.dom;)Ce=rm(Ce);Ce=Ce.nextSibling}else this.dom.insertBefore(ke.dom,Ce);for(;Ce;)Ce=rm(Ce)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let Ce of this.classes.split(" "))Ce&&this.container.classList.remove(Ce);for(let Ce of(this.classes=this.view.themeClasses).split(" "))Ce&&this.container.classList.add(Ce)}}}function rm(_n){let Ce=_n.nextSibling;return _n.remove(),Ce}const showPanel=Facet.define({enables:panelPlugin});class GutterMarker extends RangeValue{compare(Ce){return this==Ce||this.constructor==Ce.constructor&&this.eq(Ce)}eq(Ce){return!1}destroy(Ce){}}GutterMarker.prototype.elementClass="";GutterMarker.prototype.toDOM=void 0;GutterMarker.prototype.mapMode=MapMode.TrackBefore;GutterMarker.prototype.startSide=GutterMarker.prototype.endSide=-1;GutterMarker.prototype.point=!0;const gutterLineClass=Facet.define(),gutterWidgetClass=Facet.define(),defaults$1={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>RangeSet.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{}},activeGutters=Facet.define();function gutter(_n){return[gutters(),activeGutters.of(Object.assign(Object.assign({},defaults$1),_n))]}const unfixGutters=Facet.define({combine:_n=>_n.some(Ce=>Ce)});function gutters(_n){return[gutterView]}const gutterView=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.prevViewport=_n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=_n.state.facet(activeGutters).map(Ce=>new SingleGutterView(_n,Ce));for(let Ce of this.gutters)this.dom.appendChild(Ce.dom);this.fixed=!_n.state.facet(unfixGutters),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),_n.scrollDOM.insertBefore(this.dom,_n.contentDOM)}update(_n){if(this.updateGutters(_n)){let Ce=this.prevViewport,ke=_n.view.viewport,$n=Math.min(Ce.to,ke.to)-Math.max(Ce.from,ke.from);this.syncGutters($n<(ke.to-ke.from)*.8)}_n.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px"),this.view.state.facet(unfixGutters)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=_n.view.viewport}syncGutters(_n){let Ce=this.dom.nextSibling;_n&&this.dom.remove();let ke=RangeSet.iter(this.view.state.facet(gutterLineClass),this.view.viewport.from),$n=[],Hn=this.gutters.map(zn=>new UpdateContext(zn,this.view.viewport,-this.view.documentPadding.top));for(let zn of this.view.viewportLineBlocks)if($n.length&&($n=[]),Array.isArray(zn.type)){let Zn=!0;for(let qn of zn.type)if(qn.type==BlockType.Text&&Zn){advanceCursor(ke,$n,qn.from);for(let Yn of Hn)Yn.line(this.view,qn,$n);Zn=!1}else if(qn.widget)for(let Yn of Hn)Yn.widget(this.view,qn)}else if(zn.type==BlockType.Text){advanceCursor(ke,$n,zn.from);for(let Zn of Hn)Zn.line(this.view,zn,$n)}else if(zn.widget)for(let Zn of Hn)Zn.widget(this.view,zn);for(let zn of Hn)zn.finish();_n&&this.view.scrollDOM.insertBefore(this.dom,Ce)}updateGutters(_n){let Ce=_n.startState.facet(activeGutters),ke=_n.state.facet(activeGutters),$n=_n.docChanged||_n.heightChanged||_n.viewportChanged||!RangeSet.eq(_n.startState.facet(gutterLineClass),_n.state.facet(gutterLineClass),_n.view.viewport.from,_n.view.viewport.to);if(Ce==ke)for(let Hn of this.gutters)Hn.update(_n)&&($n=!0);else{$n=!0;let Hn=[];for(let zn of ke){let Zn=Ce.indexOf(zn);Zn<0?Hn.push(new SingleGutterView(this.view,zn)):(this.gutters[Zn].update(_n),Hn.push(this.gutters[Zn]))}for(let zn of this.gutters)zn.dom.remove(),Hn.indexOf(zn)<0&&zn.destroy();for(let zn of Hn)this.dom.appendChild(zn.dom);this.gutters=Hn}return $n}destroy(){for(let _n of this.gutters)_n.destroy();this.dom.remove()}},{provide:_n=>EditorView.scrollMargins.of(Ce=>{let ke=Ce.plugin(_n);return!ke||ke.gutters.length==0||!ke.fixed?null:Ce.textDirection==Direction.LTR?{left:ke.dom.offsetWidth*Ce.scaleX}:{right:ke.dom.offsetWidth*Ce.scaleX}})});function asArray(_n){return Array.isArray(_n)?_n:[_n]}function advanceCursor(_n,Ce,ke){for(;_n.value&&_n.from<=ke;)_n.from==ke&&Ce.push(_n.value),_n.next()}class UpdateContext{constructor(Ce,ke,$n){this.gutter=Ce,this.height=$n,this.i=0,this.cursor=RangeSet.iter(Ce.markers,ke.from)}addElement(Ce,ke,$n){let{gutter:Hn}=this,zn=(ke.top-this.height)/Ce.scaleY,Zn=ke.height/Ce.scaleY;if(this.i==Hn.elements.length){let qn=new GutterElement(Ce,Zn,zn,$n);Hn.elements.push(qn),Hn.dom.appendChild(qn.dom)}else Hn.elements[this.i].update(Ce,Zn,zn,$n);this.height=ke.bottom,this.i++}line(Ce,ke,$n){let Hn=[];advanceCursor(this.cursor,Hn,ke.from),$n.length&&(Hn=Hn.concat($n));let zn=this.gutter.config.lineMarker(Ce,ke,Hn);zn&&Hn.unshift(zn);let Zn=this.gutter;Hn.length==0&&!Zn.config.renderEmptyElements||this.addElement(Ce,ke,Hn)}widget(Ce,ke){let $n=this.gutter.config.widgetMarker(Ce,ke.widget,ke),Hn=$n?[$n]:null;for(let zn of Ce.state.facet(gutterWidgetClass)){let Zn=zn(Ce,ke.widget,ke);Zn&&(Hn||(Hn=[])).push(Zn)}Hn&&this.addElement(Ce,ke,Hn)}finish(){let Ce=this.gutter;for(;Ce.elements.length>this.i;){let ke=Ce.elements.pop();Ce.dom.removeChild(ke.dom),ke.destroy()}}}class SingleGutterView{constructor(Ce,ke){this.view=Ce,this.config=ke,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let $n in ke.domEventHandlers)this.dom.addEventListener($n,Hn=>{let zn=Hn.target,Zn;if(zn!=this.dom&&this.dom.contains(zn)){for(;zn.parentNode!=this.dom;)zn=zn.parentNode;let Yn=zn.getBoundingClientRect();Zn=(Yn.top+Yn.bottom)/2}else Zn=Hn.clientY;let qn=Ce.lineBlockAtHeight(Zn-Ce.documentTop);ke.domEventHandlers[$n](Ce,qn,Hn)&&Hn.preventDefault()});this.markers=asArray(ke.markers(Ce)),ke.initialSpacer&&(this.spacer=new GutterElement(Ce,0,0,[ke.initialSpacer(Ce)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(Ce){let ke=this.markers;if(this.markers=asArray(this.config.markers(Ce.view)),this.spacer&&this.config.updateSpacer){let Hn=this.config.updateSpacer(this.spacer.markers[0],Ce);Hn!=this.spacer.markers[0]&&this.spacer.update(Ce.view,0,0,[Hn])}let $n=Ce.view.viewport;return!RangeSet.eq(this.markers,ke,$n.from,$n.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(Ce):!1)}destroy(){for(let Ce of this.elements)Ce.destroy()}}class GutterElement{constructor(Ce,ke,$n,Hn){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(Ce,ke,$n,Hn)}update(Ce,ke,$n,Hn){this.height!=ke&&(this.height=ke,this.dom.style.height=ke+"px"),this.above!=$n&&(this.dom.style.marginTop=(this.above=$n)?$n+"px":""),sameMarkers(this.markers,Hn)||this.setMarkers(Ce,Hn)}setMarkers(Ce,ke){let $n="cm-gutterElement",Hn=this.dom.firstChild;for(let zn=0,Zn=0;;){let qn=Zn,Yn=znzn(qn,Yn,Jn)||Zn(qn,Yn,Jn):Zn}return $n}})}});class NumberMarker extends GutterMarker{constructor(Ce){super(),this.number=Ce}eq(Ce){return this.number==Ce.number}toDOM(){return document.createTextNode(this.number)}}function formatNumber(_n,Ce){return _n.state.facet(lineNumberConfig).formatNumber(Ce,_n.state)}const lineNumberGutter=activeGutters.compute([lineNumberConfig],_n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(Ce){return Ce.state.facet(lineNumberMarkers)},lineMarker(Ce,ke,$n){return $n.some(Hn=>Hn.toDOM)?null:new NumberMarker(formatNumber(Ce,Ce.state.doc.lineAt(ke.from).number))},widgetMarker:(Ce,ke,$n)=>{for(let Hn of Ce.state.facet(lineNumberWidgetMarker)){let zn=Hn(Ce,ke,$n);if(zn)return zn}return null},lineMarkerChange:Ce=>Ce.startState.facet(lineNumberConfig)!=Ce.state.facet(lineNumberConfig),initialSpacer(Ce){return new NumberMarker(formatNumber(Ce,maxLineNumber(Ce.state.doc.lines)))},updateSpacer(Ce,ke){let $n=formatNumber(ke.view,maxLineNumber(ke.view.state.doc.lines));return $n==Ce.number?Ce:new NumberMarker($n)},domEventHandlers:_n.facet(lineNumberConfig).domEventHandlers}));function lineNumbers(_n={}){return[lineNumberConfig.of(_n),gutters(),lineNumberGutter]}function maxLineNumber(_n){let Ce=9;for(;Ce<_n;)Ce=Ce*10+9;return Ce}const activeLineGutterMarker=new class extends GutterMarker{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},activeLineGutterHighlighter=gutterLineClass.compute(["selection"],_n=>{let Ce=[],ke=-1;for(let $n of _n.selection.ranges){let Hn=_n.doc.lineAt($n.head).from;Hn>ke&&(ke=Hn,Ce.push(activeLineGutterMarker.range(Hn)))}return RangeSet.of(Ce)});function highlightActiveLineGutter(){return activeLineGutterHighlighter}const DefaultBufferLength=1024;let nextPropID=0,Range$1=class{constructor(Ce,ke){this.from=Ce,this.to=ke}};class NodeProp{constructor(Ce={}){this.id=nextPropID++,this.perNode=!!Ce.perNode,this.deserialize=Ce.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(Ce){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof Ce!="function"&&(Ce=NodeType.match(Ce)),ke=>{let $n=Ce(ke);return $n===void 0?null:[this,$n]}}}NodeProp.closedBy=new NodeProp({deserialize:_n=>_n.split(" ")});NodeProp.openedBy=new NodeProp({deserialize:_n=>_n.split(" ")});NodeProp.group=new NodeProp({deserialize:_n=>_n.split(" ")});NodeProp.isolate=new NodeProp({deserialize:_n=>{if(_n&&_n!="rtl"&&_n!="ltr"&&_n!="auto")throw new RangeError("Invalid value for isolate: "+_n);return _n||"auto"}});NodeProp.contextHash=new NodeProp({perNode:!0});NodeProp.lookAhead=new NodeProp({perNode:!0});NodeProp.mounted=new NodeProp({perNode:!0});class MountedTree{constructor(Ce,ke,$n){this.tree=Ce,this.overlay=ke,this.parser=$n}static get(Ce){return Ce&&Ce.props&&Ce.props[NodeProp.mounted.id]}}const noProps=Object.create(null);class NodeType{constructor(Ce,ke,$n,Hn=0){this.name=Ce,this.props=ke,this.id=$n,this.flags=Hn}static define(Ce){let ke=Ce.props&&Ce.props.length?Object.create(null):noProps,$n=(Ce.top?1:0)|(Ce.skipped?2:0)|(Ce.error?4:0)|(Ce.name==null?8:0),Hn=new NodeType(Ce.name||"",ke,Ce.id,$n);if(Ce.props){for(let zn of Ce.props)if(Array.isArray(zn)||(zn=zn(Hn)),zn){if(zn[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");ke[zn[0].id]=zn[1]}}return Hn}prop(Ce){return this.props[Ce.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(Ce){if(typeof Ce=="string"){if(this.name==Ce)return!0;let ke=this.prop(NodeProp.group);return ke?ke.indexOf(Ce)>-1:!1}return this.id==Ce}static match(Ce){let ke=Object.create(null);for(let $n in Ce)for(let Hn of $n.split(" "))ke[Hn]=Ce[$n];return $n=>{for(let Hn=$n.prop(NodeProp.group),zn=-1;zn<(Hn?Hn.length:0);zn++){let Zn=ke[zn<0?$n.name:Hn[zn]];if(Zn)return Zn}}}}NodeType.none=new NodeType("",Object.create(null),0,8);class NodeSet{constructor(Ce){this.types=Ce;for(let ke=0;ke0;for(let Yn=this.cursor(Zn|IterMode.IncludeAnonymous);;){let Jn=!1;if(Yn.from<=zn&&Yn.to>=Hn&&(!qn&&Yn.type.isAnonymous||ke(Yn)!==!1)){if(Yn.firstChild())continue;Jn=!0}for(;Jn&&$n&&(qn||!Yn.type.isAnonymous)&&$n(Yn),!Yn.nextSibling();){if(!Yn.parent())return;Jn=!0}}}prop(Ce){return Ce.perNode?this.props?this.props[Ce.id]:void 0:this.type.prop(Ce)}get propValues(){let Ce=[];if(this.props)for(let ke in this.props)Ce.push([+ke,this.props[ke]]);return Ce}balance(Ce={}){return this.children.length<=8?this:balanceRange(NodeType.none,this.children,this.positions,0,this.children.length,0,this.length,(ke,$n,Hn)=>new Tree(this.type,ke,$n,Hn,this.propValues),Ce.makeTree||((ke,$n,Hn)=>new Tree(NodeType.none,ke,$n,Hn)))}static build(Ce){return buildTree(Ce)}}Tree.empty=new Tree(NodeType.none,[],[],0);class FlatBufferCursor{constructor(Ce,ke){this.buffer=Ce,this.index=ke}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new FlatBufferCursor(this.buffer,this.index)}}class TreeBuffer{constructor(Ce,ke,$n){this.buffer=Ce,this.length=ke,this.set=$n}get type(){return NodeType.none}toString(){let Ce=[];for(let ke=0;ke0));Yn=Zn[Yn+3]);return qn}slice(Ce,ke,$n){let Hn=this.buffer,zn=new Uint16Array(ke-Ce),Zn=0;for(let qn=Ce,Yn=0;qn=Ce&&keCe;case 1:return ke<=Ce&&$n>Ce;case 2:return $n>Ce;case 4:return!0}}function resolveNode(_n,Ce,ke,$n){for(var Hn;_n.from==_n.to||(ke<1?_n.from>=Ce:_n.from>Ce)||(ke>-1?_n.to<=Ce:_n.to0?qn.length:-1;Ce!=Jn;Ce+=ke){let to=qn[Ce],io=Yn[Ce]+Zn.from;if(checkSide(Hn,$n,io,io+to.length)){if(to instanceof TreeBuffer){if(zn&IterMode.ExcludeBuffers)continue;let uo=to.findChild(0,to.buffer.length,ke,$n-io,Hn);if(uo>-1)return new BufferNode(new BufferContext(Zn,to,Ce,io),null,uo)}else if(zn&IterMode.IncludeAnonymous||!to.type.isAnonymous||hasChild(to)){let uo;if(!(zn&IterMode.IgnoreMounts)&&(uo=MountedTree.get(to))&&!uo.overlay)return new TreeNode(uo.tree,io,Ce,Zn);let mo=new TreeNode(to,io,Ce,Zn);return zn&IterMode.IncludeAnonymous||!mo.type.isAnonymous?mo:mo.nextChild(ke<0?to.children.length-1:0,ke,$n,Hn)}}}if(zn&IterMode.IncludeAnonymous||!Zn.type.isAnonymous||(Zn.index>=0?Ce=Zn.index+ke:Ce=ke<0?-1:Zn._parent._tree.children.length,Zn=Zn._parent,!Zn))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(Ce){return this.nextChild(0,1,Ce,2)}childBefore(Ce){return this.nextChild(this._tree.children.length-1,-1,Ce,-2)}enter(Ce,ke,$n=0){let Hn;if(!($n&IterMode.IgnoreOverlays)&&(Hn=MountedTree.get(this._tree))&&Hn.overlay){let zn=Ce-this.from;for(let{from:Zn,to:qn}of Hn.overlay)if((ke>0?Zn<=zn:Zn=zn:qn>zn))return new TreeNode(Hn.tree,Hn.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,Ce,ke,$n)}nextSignificantParent(){let Ce=this;for(;Ce.type.isAnonymous&&Ce._parent;)Ce=Ce._parent;return Ce}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function getChildren(_n,Ce,ke,$n){let Hn=_n.cursor(),zn=[];if(!Hn.firstChild())return zn;if(ke!=null){for(let Zn=!1;!Zn;)if(Zn=Hn.type.is(ke),!Hn.nextSibling())return zn}for(;;){if($n!=null&&Hn.type.is($n))return zn;if(Hn.type.is(Ce)&&zn.push(Hn.node),!Hn.nextSibling())return $n==null?zn:[]}}function matchNodeContext(_n,Ce,ke=Ce.length-1){for(let $n=_n.parent;ke>=0;$n=$n.parent){if(!$n)return!1;if(!$n.type.isAnonymous){if(Ce[ke]&&Ce[ke]!=$n.name)return!1;ke--}}return!0}class BufferContext{constructor(Ce,ke,$n,Hn){this.parent=Ce,this.buffer=ke,this.index=$n,this.start=Hn}}class BufferNode extends BaseNode{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(Ce,ke,$n){super(),this.context=Ce,this._parent=ke,this.index=$n,this.type=Ce.buffer.set.types[Ce.buffer.buffer[$n]]}child(Ce,ke,$n){let{buffer:Hn}=this.context,zn=Hn.findChild(this.index+4,Hn.buffer[this.index+3],Ce,ke-this.context.start,$n);return zn<0?null:new BufferNode(this.context,this,zn)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(Ce){return this.child(1,Ce,2)}childBefore(Ce){return this.child(-1,Ce,-2)}enter(Ce,ke,$n=0){if($n&IterMode.ExcludeBuffers)return null;let{buffer:Hn}=this.context,zn=Hn.findChild(this.index+4,Hn.buffer[this.index+3],ke>0?1:-1,Ce-this.context.start,ke);return zn<0?null:new BufferNode(this.context,this,zn)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(Ce){return this._parent?null:this.context.parent.nextChild(this.context.index+Ce,Ce,0,4)}get nextSibling(){let{buffer:Ce}=this.context,ke=Ce.buffer[this.index+3];return ke<(this._parent?Ce.buffer[this._parent.index+3]:Ce.buffer.length)?new BufferNode(this.context,this._parent,ke):this.externalSibling(1)}get prevSibling(){let{buffer:Ce}=this.context,ke=this._parent?this._parent.index+4:0;return this.index==ke?this.externalSibling(-1):new BufferNode(this.context,this._parent,Ce.findChild(ke,this.index,-1,0,4))}get tree(){return null}toTree(){let Ce=[],ke=[],{buffer:$n}=this.context,Hn=this.index+4,zn=$n.buffer[this.index+3];if(zn>Hn){let Zn=$n.buffer[this.index+1];Ce.push($n.slice(Hn,zn,Zn)),ke.push(0)}return new Tree(this.type,Ce,ke,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function iterStack(_n){if(!_n.length)return null;let Ce=0,ke=_n[0];for(let zn=1;zn<_n.length;zn++){let Zn=_n[zn];(Zn.from>ke.from||Zn.to=Ce){let qn=new TreeNode(Zn.tree,Zn.overlay[0].from+zn.from,-1,zn);(Hn||(Hn=[$n])).push(resolveNode(qn,Ce,ke,!1))}}return Hn?iterStack(Hn):$n}class TreeCursor{get name(){return this.type.name}constructor(Ce,ke=0){if(this.mode=ke,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,Ce instanceof TreeNode)this.yieldNode(Ce);else{this._tree=Ce.context.parent,this.buffer=Ce.context;for(let $n=Ce._parent;$n;$n=$n._parent)this.stack.unshift($n.index);this.bufferNode=Ce,this.yieldBuf(Ce.index)}}yieldNode(Ce){return Ce?(this._tree=Ce,this.type=Ce.type,this.from=Ce.from,this.to=Ce.to,!0):!1}yieldBuf(Ce,ke){this.index=Ce;let{start:$n,buffer:Hn}=this.buffer;return this.type=ke||Hn.set.types[Hn.buffer[Ce]],this.from=$n+Hn.buffer[Ce+1],this.to=$n+Hn.buffer[Ce+2],!0}yield(Ce){return Ce?Ce instanceof TreeNode?(this.buffer=null,this.yieldNode(Ce)):(this.buffer=Ce.context,this.yieldBuf(Ce.index,Ce.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(Ce,ke,$n){if(!this.buffer)return this.yield(this._tree.nextChild(Ce<0?this._tree._tree.children.length-1:0,Ce,ke,$n,this.mode));let{buffer:Hn}=this.buffer,zn=Hn.findChild(this.index+4,Hn.buffer[this.index+3],Ce,ke-this.buffer.start,$n);return zn<0?!1:(this.stack.push(this.index),this.yieldBuf(zn))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(Ce){return this.enterChild(1,Ce,2)}childBefore(Ce){return this.enterChild(-1,Ce,-2)}enter(Ce,ke,$n=this.mode){return this.buffer?$n&IterMode.ExcludeBuffers?!1:this.enterChild(1,Ce,ke):this.yield(this._tree.enter(Ce,ke,$n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&IterMode.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let Ce=this.mode&IterMode.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(Ce)}sibling(Ce){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+Ce,Ce,0,4,this.mode)):!1;let{buffer:ke}=this.buffer,$n=this.stack.length-1;if(Ce<0){let Hn=$n<0?0:this.stack[$n]+4;if(this.index!=Hn)return this.yieldBuf(ke.findChild(Hn,this.index,-1,0,4))}else{let Hn=ke.buffer[this.index+3];if(Hn<($n<0?ke.buffer.length:ke.buffer[this.stack[$n]+3]))return this.yieldBuf(Hn)}return $n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+Ce,Ce,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(Ce){let ke,$n,{buffer:Hn}=this;if(Hn){if(Ce>0){if(this.index-1)for(let zn=ke+Ce,Zn=Ce<0?-1:$n._tree.children.length;zn!=Zn;zn+=Ce){let qn=$n._tree.children[zn];if(this.mode&IterMode.IncludeAnonymous||qn instanceof TreeBuffer||!qn.type.isAnonymous||hasChild(qn))return!1}return!0}move(Ce,ke){if(ke&&this.enterChild(Ce,0,4))return!0;for(;;){if(this.sibling(Ce))return!0;if(this.atLastNode(Ce)||!this.parent())return!1}}next(Ce=!0){return this.move(1,Ce)}prev(Ce=!0){return this.move(-1,Ce)}moveTo(Ce,ke=0){for(;(this.from==this.to||(ke<1?this.from>=Ce:this.from>Ce)||(ke>-1?this.to<=Ce:this.to=0;){for(let Zn=Ce;Zn;Zn=Zn._parent)if(Zn.index==Hn){if(Hn==this.index)return Zn;ke=Zn,$n=zn+1;break e}Hn=this.stack[--zn]}for(let Hn=$n;Hn=0;zn--){if(zn<0)return matchNodeContext(this.node,Ce,Hn);let Zn=$n[ke.buffer[this.stack[zn]]];if(!Zn.isAnonymous){if(Ce[Hn]&&Ce[Hn]!=Zn.name)return!1;Hn--}}return!0}}function hasChild(_n){return _n.children.some(Ce=>Ce instanceof TreeBuffer||!Ce.type.isAnonymous||hasChild(Ce))}function buildTree(_n){var Ce;let{buffer:ke,nodeSet:$n,maxBufferLength:Hn=DefaultBufferLength,reused:zn=[],minRepeatType:Zn=$n.types.length}=_n,qn=Array.isArray(ke)?new FlatBufferCursor(ke,ke.length):ke,Yn=$n.types,Jn=0,to=0;function io(Vo,Ko,Mo,es,ls,ps){let{id:rs,start:Yo,end:Ys,size:sr}=qn,Js=to;for(;sr<0;)if(qn.next(),sr==-1){let cr=zn[rs];Mo.push(cr),es.push(Yo-Vo);return}else if(sr==-3){Jn=rs;return}else if(sr==-4){to=rs;return}else throw new RangeError(`Unrecognized record size: ${sr}`);let ko=Yn[rs],gs,xs,Qr=Yo-Vo;if(Ys-Yo<=Hn&&(xs=wo(qn.pos-Ko,ls))){let cr=new Uint16Array(xs.size-xs.skip),ws=qn.pos-xs.size,Fs=cr.length;for(;qn.pos>ws;)Fs=$o(xs.start,cr,Fs);gs=new TreeBuffer(cr,Ys-xs.start,$n),Qr=xs.start-Vo}else{let cr=qn.pos-sr;qn.next();let ws=[],Fs=[],Br=rs>=Zn?rs:-1,_r=0,ha=Ys;for(;qn.pos>cr;)Br>=0&&qn.id==Br&&qn.size>=0?(qn.end<=ha-Hn&&(bo(ws,Fs,Yo,_r,qn.end,ha,Br,Js),_r=ws.length,ha=qn.end),qn.next()):ps>2500?uo(Yo,cr,ws,Fs):io(Yo,cr,ws,Fs,Br,ps+1);if(Br>=0&&_r>0&&_r-1&&_r>0){let hs=mo(ko);gs=balanceRange(ko,ws,Fs,0,ws.length,0,Ys-Yo,hs,hs)}else gs=Oo(ko,ws,Fs,Ys-Yo,Js-Ys)}Mo.push(gs),es.push(Qr)}function uo(Vo,Ko,Mo,es){let ls=[],ps=0,rs=-1;for(;qn.pos>Ko;){let{id:Yo,start:Ys,end:sr,size:Js}=qn;if(Js>4)qn.next();else{if(rs>-1&&Ys=0;sr-=3)Yo[Js++]=ls[sr],Yo[Js++]=ls[sr+1]-Ys,Yo[Js++]=ls[sr+2]-Ys,Yo[Js++]=Js;Mo.push(new TreeBuffer(Yo,ls[2]-Ys,$n)),es.push(Ys-Vo)}}function mo(Vo){return(Ko,Mo,es)=>{let ls=0,ps=Ko.length-1,rs,Yo;if(ps>=0&&(rs=Ko[ps])instanceof Tree){if(!ps&&rs.type==Vo&&rs.length==es)return rs;(Yo=rs.prop(NodeProp.lookAhead))&&(ls=Mo[ps]+rs.length+Yo)}return Oo(Vo,Ko,Mo,es,ls)}}function bo(Vo,Ko,Mo,es,ls,ps,rs,Yo){let Ys=[],sr=[];for(;Vo.length>es;)Ys.push(Vo.pop()),sr.push(Ko.pop()+Mo-ls);Vo.push(Oo($n.types[rs],Ys,sr,ps-ls,Yo-ps)),Ko.push(ls-Mo)}function Oo(Vo,Ko,Mo,es,ls=0,ps){if(Jn){let rs=[NodeProp.contextHash,Jn];ps=ps?[rs].concat(ps):[rs]}if(ls>25){let rs=[NodeProp.lookAhead,ls];ps=ps?[rs].concat(ps):[rs]}return new Tree(Vo,Ko,Mo,es,ps)}function wo(Vo,Ko){let Mo=qn.fork(),es=0,ls=0,ps=0,rs=Mo.end-Hn,Yo={size:0,start:0,skip:0};e:for(let Ys=Mo.pos-Vo;Mo.pos>Ys;){let sr=Mo.size;if(Mo.id==Ko&&sr>=0){Yo.size=es,Yo.start=ls,Yo.skip=ps,ps+=4,es+=4,Mo.next();continue}let Js=Mo.pos-sr;if(sr<0||Js=Zn?4:0,gs=Mo.start;for(Mo.next();Mo.pos>Js;){if(Mo.size<0)if(Mo.size==-3)ko+=4;else break e;else Mo.id>=Zn&&(ko+=4);Mo.next()}ls=gs,es+=sr,ps+=ko}return(Ko<0||es==Vo)&&(Yo.size=es,Yo.start=ls,Yo.skip=ps),Yo.size>4?Yo:void 0}function $o(Vo,Ko,Mo){let{id:es,start:ls,end:ps,size:rs}=qn;if(qn.next(),rs>=0&&es4){let Ys=qn.pos-(rs-4);for(;qn.pos>Ys;)Mo=$o(Vo,Ko,Mo)}Ko[--Mo]=Yo,Ko[--Mo]=ps-Vo,Ko[--Mo]=ls-Vo,Ko[--Mo]=es}else rs==-3?Jn=es:rs==-4&&(to=es);return Mo}let Do=[],xo=[];for(;qn.pos>0;)io(_n.start||0,_n.bufferStart||0,Do,xo,-1,0);let Bo=(Ce=_n.length)!==null&&Ce!==void 0?Ce:Do.length?xo[0]+Do[0].length:0;return new Tree(Yn[_n.topID],Do.reverse(),xo.reverse(),Bo)}const nodeSizeCache=new WeakMap;function nodeSize(_n,Ce){if(!_n.isAnonymous||Ce instanceof TreeBuffer||Ce.type!=_n)return 1;let ke=nodeSizeCache.get(Ce);if(ke==null){ke=1;for(let $n of Ce.children){if($n.type!=_n||!($n instanceof Tree)){ke=1;break}ke+=nodeSize(_n,$n)}nodeSizeCache.set(Ce,ke)}return ke}function balanceRange(_n,Ce,ke,$n,Hn,zn,Zn,qn,Yn){let Jn=0;for(let bo=$n;bo=to)break;Ko+=Mo}if(xo==Bo+1){if(Ko>to){let Mo=bo[Bo];mo(Mo.children,Mo.positions,0,Mo.children.length,Oo[Bo]+Do);continue}io.push(bo[Bo])}else{let Mo=Oo[xo-1]+bo[xo-1].length-Vo;io.push(balanceRange(_n,bo,Oo,Bo,xo,Vo,Mo,null,Yn))}uo.push(Vo+Do-zn)}}return mo(Ce,ke,$n,Hn,0),(qn||Yn)(io,uo,Zn)}class NodeWeakMap{constructor(){this.map=new WeakMap}setBuffer(Ce,ke,$n){let Hn=this.map.get(Ce);Hn||this.map.set(Ce,Hn=new Map),Hn.set(ke,$n)}getBuffer(Ce,ke){let $n=this.map.get(Ce);return $n&&$n.get(ke)}set(Ce,ke){Ce instanceof BufferNode?this.setBuffer(Ce.context.buffer,Ce.index,ke):Ce instanceof TreeNode&&this.map.set(Ce.tree,ke)}get(Ce){return Ce instanceof BufferNode?this.getBuffer(Ce.context.buffer,Ce.index):Ce instanceof TreeNode?this.map.get(Ce.tree):void 0}cursorSet(Ce,ke){Ce.buffer?this.setBuffer(Ce.buffer.buffer,Ce.index,ke):this.map.set(Ce.tree,ke)}cursorGet(Ce){return Ce.buffer?this.getBuffer(Ce.buffer.buffer,Ce.index):this.map.get(Ce.tree)}}class TreeFragment{constructor(Ce,ke,$n,Hn,zn=!1,Zn=!1){this.from=Ce,this.to=ke,this.tree=$n,this.offset=Hn,this.open=(zn?1:0)|(Zn?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(Ce,ke=[],$n=!1){let Hn=[new TreeFragment(0,Ce.length,Ce,0,!1,$n)];for(let zn of ke)zn.to>Ce.length&&Hn.push(zn);return Hn}static applyChanges(Ce,ke,$n=128){if(!ke.length)return Ce;let Hn=[],zn=1,Zn=Ce.length?Ce[0]:null;for(let qn=0,Yn=0,Jn=0;;qn++){let to=qn=$n)for(;Zn&&Zn.from=uo.from||io<=uo.to||Jn){let mo=Math.max(uo.from,Yn)-Jn,bo=Math.min(uo.to,io)-Jn;uo=mo>=bo?null:new TreeFragment(mo,bo,uo.tree,uo.offset+Jn,qn>0,!!to)}if(uo&&Hn.push(uo),Zn.to>io)break;Zn=znnew Range$1(Hn.from,Hn.to)):[new Range$1(0,0)]:[new Range$1(0,Ce.length)],this.createParse(Ce,ke||[],$n)}parse(Ce,ke,$n){let Hn=this.startParse(Ce,ke,$n);for(;;){let zn=Hn.advance();if(zn)return zn}}}class StringInput{constructor(Ce){this.string=Ce}get length(){return this.string.length}chunk(Ce){return this.string.slice(Ce)}get lineChunks(){return!1}read(Ce,ke){return this.string.slice(Ce,ke)}}function parseMixed(_n){return(Ce,ke,$n,Hn)=>new MixedParse(Ce,_n,ke,$n,Hn)}class InnerParse{constructor(Ce,ke,$n,Hn,zn){this.parser=Ce,this.parse=ke,this.overlay=$n,this.target=Hn,this.from=zn}}function checkRanges(_n){if(!_n.length||_n.some(Ce=>Ce.from>=Ce.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(_n))}class ActiveOverlay{constructor(Ce,ke,$n,Hn,zn,Zn,qn){this.parser=Ce,this.predicate=ke,this.mounts=$n,this.index=Hn,this.start=zn,this.target=Zn,this.prev=qn,this.depth=0,this.ranges=[]}}const stoppedInner=new NodeProp({perNode:!0});class MixedParse{constructor(Ce,ke,$n,Hn,zn){this.nest=ke,this.input=$n,this.fragments=Hn,this.ranges=zn,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=Ce}advance(){if(this.baseParse){let $n=this.baseParse.advance();if(!$n)return null;if(this.baseParse=null,this.baseTree=$n,this.startInner(),this.stoppedAt!=null)for(let Hn of this.inner)Hn.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let $n=this.baseTree;return this.stoppedAt!=null&&($n=new Tree($n.type,$n.children,$n.positions,$n.length,$n.propValues.concat([[stoppedInner,this.stoppedAt]]))),$n}let Ce=this.inner[this.innerDone],ke=Ce.parse.advance();if(ke){this.innerDone++;let $n=Object.assign(Object.create(null),Ce.target.props);$n[NodeProp.mounted.id]=new MountedTree(ke,Ce.overlay,Ce.parser),Ce.target.props=$n}return null}get parsedPos(){if(this.baseParse)return 0;let Ce=this.input.length;for(let ke=this.innerDone;ke=this.stoppedAt)qn=!1;else if(Ce.hasNode(Hn)){if(ke){let Jn=ke.mounts.find(to=>to.frag.from<=Hn.from&&to.frag.to>=Hn.to&&to.mount.overlay);if(Jn)for(let to of Jn.mount.overlay){let io=to.from+Jn.pos,uo=to.to+Jn.pos;io>=Hn.from&&uo<=Hn.to&&!ke.ranges.some(mo=>mo.fromio)&&ke.ranges.push({from:io,to:uo})}}qn=!1}else if($n&&(Zn=checkCover($n.ranges,Hn.from,Hn.to)))qn=Zn!=2;else if(!Hn.type.isAnonymous&&(zn=this.nest(Hn,this.input))&&(Hn.fromnew Range$1(io.from-Hn.from,io.to-Hn.from)):null,Hn.tree,to.length?to[0].from:Hn.from)),zn.overlay?to.length&&($n={ranges:to,depth:0,prev:$n}):qn=!1}}else ke&&(Yn=ke.predicate(Hn))&&(Yn===!0&&(Yn=new Range$1(Hn.from,Hn.to)),Yn.fromnew Range$1(to.from-ke.start,to.to-ke.start)),ke.target,Jn[0].from))),ke=ke.prev}$n&&!--$n.depth&&($n=$n.prev)}}}}function checkCover(_n,Ce,ke){for(let $n of _n){if($n.from>=ke)break;if($n.to>Ce)return $n.from<=Ce&&$n.to>=ke?2:1}return 0}function sliceBuf(_n,Ce,ke,$n,Hn,zn){if(Ce=Ce&&ke.enter($n,1,IterMode.IgnoreOverlays|IterMode.ExcludeBuffers)||ke.next(!1)||(this.done=!0)}hasNode(Ce){if(this.moveTo(Ce.from),!this.done&&this.cursor.from+this.offset==Ce.from&&this.cursor.tree)for(let ke=this.cursor.tree;;){if(ke==Ce.tree)return!0;if(ke.children.length&&ke.positions[0]==0&&ke.children[0]instanceof Tree)ke=ke.children[0];else break}return!1}}let FragmentCursor$2=class{constructor(Ce){var ke;if(this.fragments=Ce,this.curTo=0,this.fragI=0,Ce.length){let $n=this.curFrag=Ce[0];this.curTo=(ke=$n.tree.prop(stoppedInner))!==null&&ke!==void 0?ke:$n.to,this.inner=new StructureCursor($n.tree,-$n.offset)}else this.curFrag=this.inner=null}hasNode(Ce){for(;this.curFrag&&Ce.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=Ce.from&&this.curTo>=Ce.to&&this.inner.hasNode(Ce)}nextFrag(){var Ce;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let ke=this.curFrag=this.fragments[this.fragI];this.curTo=(Ce=ke.tree.prop(stoppedInner))!==null&&Ce!==void 0?Ce:ke.to,this.inner=new StructureCursor(ke.tree,-ke.offset)}}findMounts(Ce,ke){var $n;let Hn=[];if(this.inner){this.inner.cursor.moveTo(Ce,1);for(let zn=this.inner.cursor.node;zn;zn=zn.parent){let Zn=($n=zn.tree)===null||$n===void 0?void 0:$n.prop(NodeProp.mounted);if(Zn&&Zn.parser==ke)for(let qn=this.fragI;qn=zn.to)break;Yn.tree==this.curFrag.tree&&Hn.push({frag:Yn,pos:zn.from-Yn.offset,mount:Zn})}}}return Hn}};function punchRanges(_n,Ce){let ke=null,$n=Ce;for(let Hn=1,zn=0;Hn<_n.length;Hn++){let Zn=_n[Hn-1].to,qn=_n[Hn].from;for(;zn<$n.length;zn++){let Yn=$n[zn];if(Yn.from>=qn)break;Yn.to<=Zn||(ke||($n=ke=Ce.slice()),Yn.fromqn&&ke.splice(zn+1,0,new Range$1(qn,Yn.to))):Yn.to>qn?ke[zn--]=new Range$1(qn,Yn.to):ke.splice(zn--,1))}}return $n}function findCoverChanges(_n,Ce,ke,$n){let Hn=0,zn=0,Zn=!1,qn=!1,Yn=-1e9,Jn=[];for(;;){let to=Hn==_n.length?1e9:Zn?_n[Hn].to:_n[Hn].from,io=zn==Ce.length?1e9:qn?Ce[zn].to:Ce[zn].from;if(Zn!=qn){let uo=Math.max(Yn,ke),mo=Math.min(to,io,$n);uonew Range$1(uo.from+$n,uo.to+$n)),io=findCoverChanges(Ce,to,Yn,Jn);for(let uo=0,mo=Yn;;uo++){let bo=uo==io.length,Oo=bo?Jn:io[uo].from;if(Oo>mo&&ke.push(new TreeFragment(mo,Oo,Hn.tree,-Zn,zn.from>=mo||zn.openStart,zn.to<=Oo||zn.openEnd)),bo)break;mo=io[uo].to}}else ke.push(new TreeFragment(Yn,Jn,Hn.tree,-Zn,zn.from>=Zn||zn.openStart,zn.to<=qn||zn.openEnd))}return ke}let nextTagID=0;class Tag{constructor(Ce,ke,$n,Hn){this.name=Ce,this.set=ke,this.base=$n,this.modified=Hn,this.id=nextTagID++}toString(){let{name:Ce}=this;for(let ke of this.modified)ke.name&&(Ce=`${ke.name}(${Ce})`);return Ce}static define(Ce,ke){let $n=typeof Ce=="string"?Ce:"?";if(Ce instanceof Tag&&(ke=Ce),ke!=null&&ke.base)throw new Error("Can not derive from a modified tag");let Hn=new Tag($n,[],null,[]);if(Hn.set.push(Hn),ke)for(let zn of ke.set)Hn.set.push(zn);return Hn}static defineModifier(Ce){let ke=new Modifier(Ce);return $n=>$n.modified.indexOf(ke)>-1?$n:Modifier.get($n.base||$n,$n.modified.concat(ke).sort((Hn,zn)=>Hn.id-zn.id))}}let nextModifierID=0;class Modifier{constructor(Ce){this.name=Ce,this.instances=[],this.id=nextModifierID++}static get(Ce,ke){if(!ke.length)return Ce;let $n=ke[0].instances.find(qn=>qn.base==Ce&&sameArray(ke,qn.modified));if($n)return $n;let Hn=[],zn=new Tag(Ce.name,Hn,Ce,ke);for(let qn of ke)qn.instances.push(zn);let Zn=powerSet(ke);for(let qn of Ce.set)if(!qn.modified.length)for(let Yn of Zn)Hn.push(Modifier.get(qn,Yn));return zn}}function sameArray(_n,Ce){return _n.length==Ce.length&&_n.every((ke,$n)=>ke==Ce[$n])}function powerSet(_n){let Ce=[[]];for(let ke=0;ke<_n.length;ke++)for(let $n=0,Hn=Ce.length;$n$n.length-ke.length)}function styleTags(_n){let Ce=Object.create(null);for(let ke in _n){let $n=_n[ke];Array.isArray($n)||($n=[$n]);for(let Hn of ke.split(" "))if(Hn){let zn=[],Zn=2,qn=Hn;for(let io=0;;){if(qn=="..."&&io>0&&io+3==Hn.length){Zn=1;break}let uo=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(qn);if(!uo)throw new RangeError("Invalid path: "+Hn);if(zn.push(uo[0]=="*"?"":uo[0][0]=='"'?JSON.parse(uo[0]):uo[0]),io+=uo[0].length,io==Hn.length)break;let mo=Hn[io++];if(io==Hn.length&&mo=="!"){Zn=0;break}if(mo!="/")throw new RangeError("Invalid path: "+Hn);qn=Hn.slice(io)}let Yn=zn.length-1,Jn=zn[Yn];if(!Jn)throw new RangeError("Invalid path: "+Hn);let to=new Rule($n,Zn,Yn>0?zn.slice(0,Yn):null);Ce[Jn]=to.sort(Ce[Jn])}}return ruleNodeProp.add(Ce)}const ruleNodeProp=new NodeProp;class Rule{constructor(Ce,ke,$n,Hn){this.tags=Ce,this.mode=ke,this.context=$n,this.next=Hn}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(Ce){return!Ce||Ce.depth{let Zn=Hn;for(let qn of zn)for(let Yn of qn.set){let Jn=ke[Yn.id];if(Jn){Zn=Zn?Zn+" "+Jn:Jn;break}}return Zn},scope:$n}}function highlightTags(_n,Ce){let ke=null;for(let $n of _n){let Hn=$n.style(Ce);Hn&&(ke=ke?ke+" "+Hn:Hn)}return ke}function highlightTree(_n,Ce,ke,$n=0,Hn=_n.length){let zn=new HighlightBuilder($n,Array.isArray(Ce)?Ce:[Ce],ke);zn.highlightRange(_n.cursor(),$n,Hn,"",zn.highlighters),zn.flush(Hn)}class HighlightBuilder{constructor(Ce,ke,$n){this.at=Ce,this.highlighters=ke,this.span=$n,this.class=""}startSpan(Ce,ke){ke!=this.class&&(this.flush(Ce),Ce>this.at&&(this.at=Ce),this.class=ke)}flush(Ce){Ce>this.at&&this.class&&this.span(this.at,Ce,this.class)}highlightRange(Ce,ke,$n,Hn,zn){let{type:Zn,from:qn,to:Yn}=Ce;if(qn>=$n||Yn<=ke)return;Zn.isTop&&(zn=this.highlighters.filter(mo=>!mo.scope||mo.scope(Zn)));let Jn=Hn,to=getStyleTags(Ce)||Rule.empty,io=highlightTags(zn,to.tags);if(io&&(Jn&&(Jn+=" "),Jn+=io,to.mode==1&&(Hn+=(Hn?" ":"")+io)),this.startSpan(Math.max(ke,qn),Jn),to.opaque)return;let uo=Ce.tree&&Ce.tree.prop(NodeProp.mounted);if(uo&&uo.overlay){let mo=Ce.node.enter(uo.overlay[0].from+qn,1),bo=this.highlighters.filter(wo=>!wo.scope||wo.scope(uo.tree.type)),Oo=Ce.firstChild();for(let wo=0,$o=qn;;wo++){let Do=wo=xo||!Ce.nextSibling())););if(!Do||xo>$n)break;$o=Do.to+qn,$o>ke&&(this.highlightRange(mo.cursor(),Math.max(ke,Do.from+qn),Math.min($n,$o),"",bo),this.startSpan(Math.min($n,$o),Jn))}Oo&&Ce.parent()}else if(Ce.firstChild()){uo&&(Hn="");do if(!(Ce.to<=ke)){if(Ce.from>=$n)break;this.highlightRange(Ce,ke,$n,Hn,zn),this.startSpan(Math.min($n,Ce.to),Jn)}while(Ce.nextSibling());Ce.parent()}}}function getStyleTags(_n){let Ce=_n.type.prop(ruleNodeProp);for(;Ce&&Ce.context&&!_n.matchContext(Ce.context);)Ce=Ce.next;return Ce||null}const t=Tag.define,comment=t(),name=t(),typeName=t(name),propertyName=t(name),literal=t(),string=t(literal),number=t(literal),content=t(),heading=t(content),keyword=t(),operator=t(),punctuation=t(),bracket=t(punctuation),meta=t(),tags$1={comment,lineComment:t(comment),blockComment:t(comment),docComment:t(comment),name,variableName:t(name),typeName,tagName:t(typeName),propertyName,attributeName:t(propertyName),className:t(name),labelName:t(name),namespace:t(name),macroName:t(name),literal,string,docString:t(string),character:t(string),attributeValue:t(string),number,integer:t(number),float:t(number),bool:t(literal),regexp:t(literal),escape:t(literal),color:t(literal),url:t(literal),keyword,self:t(keyword),null:t(keyword),atom:t(keyword),unit:t(keyword),modifier:t(keyword),operatorKeyword:t(keyword),controlKeyword:t(keyword),definitionKeyword:t(keyword),moduleKeyword:t(keyword),operator,derefOperator:t(operator),arithmeticOperator:t(operator),logicOperator:t(operator),bitwiseOperator:t(operator),compareOperator:t(operator),updateOperator:t(operator),definitionOperator:t(operator),typeOperator:t(operator),controlOperator:t(operator),punctuation,separator:t(punctuation),bracket,angleBracket:t(bracket),squareBracket:t(bracket),paren:t(bracket),brace:t(bracket),content,heading,heading1:t(heading),heading2:t(heading),heading3:t(heading),heading4:t(heading),heading5:t(heading),heading6:t(heading),contentSeparator:t(content),list:t(content),quote:t(content),emphasis:t(content),strong:t(content),link:t(content),monospace:t(content),strikethrough:t(content),inserted:t(),deleted:t(),changed:t(),invalid:t(),meta,documentMeta:t(meta),annotation:t(meta),processingInstruction:t(meta),definition:Tag.defineModifier("definition"),constant:Tag.defineModifier("constant"),function:Tag.defineModifier("function"),standard:Tag.defineModifier("standard"),local:Tag.defineModifier("local"),special:Tag.defineModifier("special")};for(let _n in tags$1){let Ce=tags$1[_n];Ce instanceof Tag&&(Ce.name=_n)}tagHighlighter([{tag:tags$1.link,class:"tok-link"},{tag:tags$1.heading,class:"tok-heading"},{tag:tags$1.emphasis,class:"tok-emphasis"},{tag:tags$1.strong,class:"tok-strong"},{tag:tags$1.keyword,class:"tok-keyword"},{tag:tags$1.atom,class:"tok-atom"},{tag:tags$1.bool,class:"tok-bool"},{tag:tags$1.url,class:"tok-url"},{tag:tags$1.labelName,class:"tok-labelName"},{tag:tags$1.inserted,class:"tok-inserted"},{tag:tags$1.deleted,class:"tok-deleted"},{tag:tags$1.literal,class:"tok-literal"},{tag:tags$1.string,class:"tok-string"},{tag:tags$1.number,class:"tok-number"},{tag:[tags$1.regexp,tags$1.escape,tags$1.special(tags$1.string)],class:"tok-string2"},{tag:tags$1.variableName,class:"tok-variableName"},{tag:tags$1.local(tags$1.variableName),class:"tok-variableName tok-local"},{tag:tags$1.definition(tags$1.variableName),class:"tok-variableName tok-definition"},{tag:tags$1.special(tags$1.variableName),class:"tok-variableName2"},{tag:tags$1.definition(tags$1.propertyName),class:"tok-propertyName tok-definition"},{tag:tags$1.typeName,class:"tok-typeName"},{tag:tags$1.namespace,class:"tok-namespace"},{tag:tags$1.className,class:"tok-className"},{tag:tags$1.macroName,class:"tok-macroName"},{tag:tags$1.propertyName,class:"tok-propertyName"},{tag:tags$1.operator,class:"tok-operator"},{tag:tags$1.comment,class:"tok-comment"},{tag:tags$1.meta,class:"tok-meta"},{tag:tags$1.invalid,class:"tok-invalid"},{tag:tags$1.punctuation,class:"tok-punctuation"}]);var _a;const languageDataProp=new NodeProp;function defineLanguageFacet(_n){return Facet.define({combine:_n?Ce=>Ce.concat(_n):void 0})}const sublanguageProp=new NodeProp;class Language{constructor(Ce,ke,$n=[],Hn=""){this.data=Ce,this.name=Hn,EditorState.prototype.hasOwnProperty("tree")||Object.defineProperty(EditorState.prototype,"tree",{get(){return syntaxTree(this)}}),this.parser=ke,this.extension=[language.of(this),EditorState.languageData.of((zn,Zn,qn)=>{let Yn=topNodeAt(zn,Zn,qn),Jn=Yn.type.prop(languageDataProp);if(!Jn)return[];let to=zn.facet(Jn),io=Yn.type.prop(sublanguageProp);if(io){let uo=Yn.resolve(Zn-Yn.from,qn);for(let mo of io)if(mo.test(uo,zn)){let bo=zn.facet(mo.facet);return mo.type=="replace"?bo:bo.concat(to)}}return to})].concat($n)}isActiveAt(Ce,ke,$n=-1){return topNodeAt(Ce,ke,$n).type.prop(languageDataProp)==this.data}findRegions(Ce){let ke=Ce.facet(language);if((ke==null?void 0:ke.data)==this.data)return[{from:0,to:Ce.doc.length}];if(!ke||!ke.allowsNesting)return[];let $n=[],Hn=(zn,Zn)=>{if(zn.prop(languageDataProp)==this.data){$n.push({from:Zn,to:Zn+zn.length});return}let qn=zn.prop(NodeProp.mounted);if(qn){if(qn.tree.prop(languageDataProp)==this.data){if(qn.overlay)for(let Yn of qn.overlay)$n.push({from:Yn.from+Zn,to:Yn.to+Zn});else $n.push({from:Zn,to:Zn+zn.length});return}else if(qn.overlay){let Yn=$n.length;if(Hn(qn.tree,qn.overlay[0].from+Zn),$n.length>Yn)return}}for(let Yn=0;Yn$n.isTop?ke:void 0)]}),Ce.name)}configure(Ce,ke){return new LRLanguage(this.data,this.parser.configure(Ce),ke||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function syntaxTree(_n){let Ce=_n.field(Language.state,!1);return Ce?Ce.tree:Tree.empty}class DocInput{constructor(Ce){this.doc=Ce,this.cursorPos=0,this.string="",this.cursor=Ce.iter()}get length(){return this.doc.length}syncTo(Ce){return this.string=this.cursor.next(Ce-this.cursorPos).value,this.cursorPos=Ce+this.string.length,this.cursorPos-this.string.length}chunk(Ce){return this.syncTo(Ce),this.string}get lineChunks(){return!0}read(Ce,ke){let $n=this.cursorPos-this.string.length;return Ce<$n||ke>=this.cursorPos?this.doc.sliceString(Ce,ke):this.string.slice(Ce-$n,ke-$n)}}let currentContext=null;class ParseContext{constructor(Ce,ke,$n=[],Hn,zn,Zn,qn,Yn){this.parser=Ce,this.state=ke,this.fragments=$n,this.tree=Hn,this.treeLen=zn,this.viewport=Zn,this.skipped=qn,this.scheduleOn=Yn,this.parse=null,this.tempSkipped=[]}static create(Ce,ke,$n){return new ParseContext(Ce,ke,[],Tree.empty,0,$n,[],null)}startParse(){return this.parser.startParse(new DocInput(this.state.doc),this.fragments)}work(Ce,ke){return ke!=null&&ke>=this.state.doc.length&&(ke=void 0),this.tree!=Tree.empty&&this.isDone(ke??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var $n;if(typeof Ce=="number"){let Hn=Date.now()+Ce;Ce=()=>Date.now()>Hn}for(this.parse||(this.parse=this.startParse()),ke!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>ke)&&ke=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>Ce)&&this.parse.stopAt(Ce),this.withContext(()=>{for(;!(ke=this.parse.advance()););}),this.treeLen=Ce,this.tree=ke,this.fragments=this.withoutTempSkipped(TreeFragment.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(Ce){let ke=currentContext;currentContext=this;try{return Ce()}finally{currentContext=ke}}withoutTempSkipped(Ce){for(let ke;ke=this.tempSkipped.pop();)Ce=cutFragments(Ce,ke.from,ke.to);return Ce}changes(Ce,ke){let{fragments:$n,tree:Hn,treeLen:zn,viewport:Zn,skipped:qn}=this;if(this.takeTree(),!Ce.empty){let Yn=[];if(Ce.iterChangedRanges((Jn,to,io,uo)=>Yn.push({fromA:Jn,toA:to,fromB:io,toB:uo})),$n=TreeFragment.applyChanges($n,Yn),Hn=Tree.empty,zn=0,Zn={from:Ce.mapPos(Zn.from,-1),to:Ce.mapPos(Zn.to,1)},this.skipped.length){qn=[];for(let Jn of this.skipped){let to=Ce.mapPos(Jn.from,1),io=Ce.mapPos(Jn.to,-1);toCe.from&&(this.fragments=cutFragments(this.fragments,Hn,zn),this.skipped.splice($n--,1))}return this.skipped.length>=ke?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(Ce,ke){this.skipped.push({from:Ce,to:ke})}static getSkippingParser(Ce){return new class extends Parser{createParse(ke,$n,Hn){let zn=Hn[0].from,Zn=Hn[Hn.length-1].to;return{parsedPos:zn,advance(){let Yn=currentContext;if(Yn){for(let Jn of Hn)Yn.tempSkipped.push(Jn);Ce&&(Yn.scheduleOn=Yn.scheduleOn?Promise.all([Yn.scheduleOn,Ce]):Ce)}return this.parsedPos=Zn,new Tree(NodeType.none,[],[],Zn-zn)},stoppedAt:null,stopAt(){}}}}}isDone(Ce){Ce=Math.min(Ce,this.state.doc.length);let ke=this.fragments;return this.treeLen>=Ce&&ke.length&&ke[0].from==0&&ke[0].to>=Ce}static get(){return currentContext}}function cutFragments(_n,Ce,ke){return TreeFragment.applyChanges(_n,[{fromA:Ce,toA:ke,fromB:Ce,toB:ke}])}class LanguageState{constructor(Ce){this.context=Ce,this.tree=Ce.tree}apply(Ce){if(!Ce.docChanged&&this.tree==this.context.tree)return this;let ke=this.context.changes(Ce.changes,Ce.state),$n=this.context.treeLen==Ce.startState.doc.length?void 0:Math.max(Ce.changes.mapPos(this.context.treeLen),ke.viewport.to);return ke.work(20,$n)||ke.takeTree(),new LanguageState(ke)}static init(Ce){let ke=Math.min(3e3,Ce.doc.length),$n=ParseContext.create(Ce.facet(language).parser,Ce,{from:0,to:ke});return $n.work(20,ke)||$n.takeTree(),new LanguageState($n)}}Language.state=StateField.define({create:LanguageState.init,update(_n,Ce){for(let ke of Ce.effects)if(ke.is(Language.setState))return ke.value;return Ce.startState.facet(language)!=Ce.state.facet(language)?LanguageState.init(Ce.state):_n.apply(Ce)}});let requestIdle=_n=>{let Ce=setTimeout(()=>_n(),500);return()=>clearTimeout(Ce)};typeof requestIdleCallback<"u"&&(requestIdle=_n=>{let Ce=-1,ke=setTimeout(()=>{Ce=requestIdleCallback(_n,{timeout:400})},100);return()=>Ce<0?clearTimeout(ke):cancelIdleCallback(Ce)});const isInputPending=typeof navigator<"u"&&(!((_a=navigator.scheduling)===null||_a===void 0)&&_a.isInputPending)?()=>navigator.scheduling.isInputPending():null,parseWorker=ViewPlugin.fromClass(class{constructor(Ce){this.view=Ce,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(Ce){let ke=this.view.state.field(Language.state).context;(ke.updateViewport(Ce.view.viewport)||this.view.viewport.to>ke.treeLen)&&this.scheduleWork(),(Ce.docChanged||Ce.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(ke)}scheduleWork(){if(this.working)return;let{state:Ce}=this.view,ke=Ce.field(Language.state);(ke.tree!=ke.context.tree||!ke.context.isDone(Ce.doc.length))&&(this.working=requestIdle(this.work))}work(Ce){this.working=null;let ke=Date.now();if(this.chunkEndHn+1e3,Yn=zn.context.work(()=>isInputPending&&isInputPending()||Date.now()>Zn,Hn+(qn?0:1e5));this.chunkBudget-=Date.now()-ke,(Yn||this.chunkBudget<=0)&&(zn.context.takeTree(),this.view.dispatch({effects:Language.setState.of(new LanguageState(zn.context))})),this.chunkBudget>0&&!(Yn&&!qn)&&this.scheduleWork(),this.checkAsyncSchedule(zn.context)}checkAsyncSchedule(Ce){Ce.scheduleOn&&(this.workScheduled++,Ce.scheduleOn.then(()=>this.scheduleWork()).catch(ke=>logException(this.view.state,ke)).then(()=>this.workScheduled--),Ce.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),language=Facet.define({combine(_n){return _n.length?_n[0]:null},enables:_n=>[Language.state,parseWorker,EditorView.contentAttributes.compute([_n],Ce=>{let ke=Ce.facet(_n);return ke&&ke.name?{"data-language":ke.name}:{}})]});class LanguageSupport{constructor(Ce,ke=[]){this.language=Ce,this.support=ke,this.extension=[Ce,ke]}}class LanguageDescription{constructor(Ce,ke,$n,Hn,zn,Zn=void 0){this.name=Ce,this.alias=ke,this.extensions=$n,this.filename=Hn,this.loadFunc=zn,this.support=Zn,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(Ce=>this.support=Ce,Ce=>{throw this.loading=null,Ce}))}static of(Ce){let{load:ke,support:$n}=Ce;if(!ke){if(!$n)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");ke=()=>Promise.resolve($n)}return new LanguageDescription(Ce.name,(Ce.alias||[]).concat(Ce.name).map(Hn=>Hn.toLowerCase()),Ce.extensions||[],Ce.filename,ke,$n)}static matchFilename(Ce,ke){for(let Hn of Ce)if(Hn.filename&&Hn.filename.test(ke))return Hn;let $n=/\.([^.]+)$/.exec(ke);if($n){for(let Hn of Ce)if(Hn.extensions.indexOf($n[1])>-1)return Hn}return null}static matchLanguageName(Ce,ke,$n=!0){ke=ke.toLowerCase();for(let Hn of Ce)if(Hn.alias.some(zn=>zn==ke))return Hn;if($n)for(let Hn of Ce)for(let zn of Hn.alias){let Zn=ke.indexOf(zn);if(Zn>-1&&(zn.length>2||!/\w/.test(ke[Zn-1])&&!/\w/.test(ke[Zn+zn.length])))return Hn}return null}}const indentService=Facet.define(),indentUnit=Facet.define({combine:_n=>{if(!_n.length)return" ";let Ce=_n[0];if(!Ce||/\S/.test(Ce)||Array.from(Ce).some(ke=>ke!=Ce[0]))throw new Error("Invalid indent unit: "+JSON.stringify(_n[0]));return Ce}});function getIndentUnit(_n){let Ce=_n.facet(indentUnit);return Ce.charCodeAt(0)==9?_n.tabSize*Ce.length:Ce.length}function indentString(_n,Ce){let ke="",$n=_n.tabSize,Hn=_n.facet(indentUnit)[0];if(Hn==" "){for(;Ce>=$n;)ke+=" ",Ce-=$n;Hn=" "}for(let zn=0;zn=Ce?syntaxIndentation(_n,ke,Ce):null}class IndentContext{constructor(Ce,ke={}){this.state=Ce,this.options=ke,this.unit=getIndentUnit(Ce)}lineAt(Ce,ke=1){let $n=this.state.doc.lineAt(Ce),{simulateBreak:Hn,simulateDoubleBreak:zn}=this.options;return Hn!=null&&Hn>=$n.from&&Hn<=$n.to?zn&&Hn==Ce?{text:"",from:Ce}:(ke<0?Hn-1&&(zn+=Zn-this.countColumn($n,$n.search(/\S|$/))),zn}countColumn(Ce,ke=Ce.length){return countColumn(Ce,this.state.tabSize,ke)}lineIndent(Ce,ke=1){let{text:$n,from:Hn}=this.lineAt(Ce,ke),zn=this.options.overrideIndentation;if(zn){let Zn=zn(Hn);if(Zn>-1)return Zn}return this.countColumn($n,$n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const indentNodeProp=new NodeProp;function syntaxIndentation(_n,Ce,ke){let $n=Ce.resolveStack(ke),Hn=$n.node.enterUnfinishedNodesBefore(ke);if(Hn!=$n.node){let zn=[];for(let Zn=Hn;Zn!=$n.node;Zn=Zn.parent)zn.push(Zn);for(let Zn=zn.length-1;Zn>=0;Zn--)$n={node:zn[Zn],next:$n}}return indentFor($n,_n,ke)}function indentFor(_n,Ce,ke){for(let $n=_n;$n;$n=$n.next){let Hn=indentStrategy($n.node);if(Hn)return Hn(TreeIndentContext.create(Ce,ke,$n))}return 0}function ignoreClosed(_n){return _n.pos==_n.options.simulateBreak&&_n.options.simulateDoubleBreak}function indentStrategy(_n){let Ce=_n.type.prop(indentNodeProp);if(Ce)return Ce;let ke=_n.firstChild,$n;if(ke&&($n=ke.type.prop(NodeProp.closedBy))){let Hn=_n.lastChild,zn=Hn&&$n.indexOf(Hn.name)>-1;return Zn=>delimitedStrategy(Zn,!0,1,void 0,zn&&!ignoreClosed(Zn)?Hn.from:void 0)}return _n.parent==null?topIndent:null}function topIndent(){return 0}class TreeIndentContext extends IndentContext{constructor(Ce,ke,$n){super(Ce.state,Ce.options),this.base=Ce,this.pos=ke,this.context=$n}get node(){return this.context.node}static create(Ce,ke,$n){return new TreeIndentContext(Ce,ke,$n)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(Ce){let ke=this.state.doc.lineAt(Ce.from);for(;;){let $n=Ce.resolve(ke.from);for(;$n.parent&&$n.parent.from==$n.from;)$n=$n.parent;if(isParent($n,Ce))break;ke=this.state.doc.lineAt($n.from)}return this.lineIndent(ke.from)}continue(){return indentFor(this.context.next,this.base,this.pos)}}function isParent(_n,Ce){for(let ke=Ce;ke;ke=ke.parent)if(_n==ke)return!0;return!1}function bracketedAligned(_n){let Ce=_n.node,ke=Ce.childAfter(Ce.from),$n=Ce.lastChild;if(!ke)return null;let Hn=_n.options.simulateBreak,zn=_n.state.doc.lineAt(ke.from),Zn=Hn==null||Hn<=zn.from?zn.to:Math.min(zn.to,Hn);for(let qn=ke.to;;){let Yn=Ce.childAfter(qn);if(!Yn||Yn==$n)return null;if(!Yn.type.isSkipped)return Yn.fromdelimitedStrategy($n,Ce,ke,_n)}function delimitedStrategy(_n,Ce,ke,$n,Hn){let zn=_n.textAfter,Zn=zn.match(/^\s*/)[0].length,qn=$n&&zn.slice(Zn,Zn+$n.length)==$n||Hn==_n.pos+Zn,Yn=Ce?bracketedAligned(_n):null;return Yn?qn?_n.column(Yn.from):_n.column(Yn.to):_n.baseIndent+(qn?0:_n.unit*ke)}const flatIndent=_n=>_n.baseIndent;function continuedIndent({except:_n,units:Ce=1}={}){return ke=>{let $n=_n&&_n.test(ke.textAfter);return ke.baseIndent+($n?0:Ce*ke.unit)}}const DontIndentBeyond=200;function indentOnInput(){return EditorState.transactionFilter.of(_n=>{if(!_n.docChanged||!_n.isUserEvent("input.type")&&!_n.isUserEvent("input.complete"))return _n;let Ce=_n.startState.languageDataAt("indentOnInput",_n.startState.selection.main.head);if(!Ce.length)return _n;let ke=_n.newDoc,{head:$n}=_n.newSelection.main,Hn=ke.lineAt($n);if($n>Hn.from+DontIndentBeyond)return _n;let zn=ke.sliceString(Hn.from,$n);if(!Ce.some(Jn=>Jn.test(zn)))return _n;let{state:Zn}=_n,qn=-1,Yn=[];for(let{head:Jn}of Zn.selection.ranges){let to=Zn.doc.lineAt(Jn);if(to.from==qn)continue;qn=to.from;let io=getIndentation(Zn,to.from);if(io==null)continue;let uo=/^\s*/.exec(to.text)[0],mo=indentString(Zn,io);uo!=mo&&Yn.push({from:to.from,to:to.from+uo.length,insert:mo})}return Yn.length?[_n,{changes:Yn,sequential:!0}]:_n})}const foldService=Facet.define(),foldNodeProp=new NodeProp;function foldInside(_n){let Ce=_n.firstChild,ke=_n.lastChild;return Ce&&Ce.toke)continue;if(zn&&qn.from=Ce&&Jn.to>ke&&(zn=Jn)}}return zn}function isUnfinished(_n){let Ce=_n.lastChild;return Ce&&Ce.to==_n.to&&Ce.type.isError}function foldable(_n,Ce,ke){for(let $n of _n.facet(foldService)){let Hn=$n(_n,Ce,ke);if(Hn)return Hn}return syntaxFolding(_n,Ce,ke)}function mapRange(_n,Ce){let ke=Ce.mapPos(_n.from,1),$n=Ce.mapPos(_n.to,-1);return ke>=$n?void 0:{from:ke,to:$n}}const foldEffect=StateEffect.define({map:mapRange}),unfoldEffect=StateEffect.define({map:mapRange});function selectedLines(_n){let Ce=[];for(let{head:ke}of _n.state.selection.ranges)Ce.some($n=>$n.from<=ke&&$n.to>=ke)||Ce.push(_n.lineBlockAt(ke));return Ce}const foldState=StateField.define({create(){return Decoration.none},update(_n,Ce){_n=_n.map(Ce.changes);for(let ke of Ce.effects)if(ke.is(foldEffect)&&!foldExists(_n,ke.value.from,ke.value.to)){let{preparePlaceholder:$n}=Ce.state.facet(foldConfig),Hn=$n?Decoration.replace({widget:new PreparedFoldWidget($n(Ce.state,ke.value))}):foldWidget;_n=_n.update({add:[Hn.range(ke.value.from,ke.value.to)]})}else ke.is(unfoldEffect)&&(_n=_n.update({filter:($n,Hn)=>ke.value.from!=$n||ke.value.to!=Hn,filterFrom:ke.value.from,filterTo:ke.value.to}));if(Ce.selection){let ke=!1,{head:$n}=Ce.selection.main;_n.between($n,$n,(Hn,zn)=>{Hn<$n&&zn>$n&&(ke=!0)}),ke&&(_n=_n.update({filterFrom:$n,filterTo:$n,filter:(Hn,zn)=>zn<=$n||Hn>=$n}))}return _n},provide:_n=>EditorView.decorations.from(_n),toJSON(_n,Ce){let ke=[];return _n.between(0,Ce.doc.length,($n,Hn)=>{ke.push($n,Hn)}),ke},fromJSON(_n){if(!Array.isArray(_n)||_n.length%2)throw new RangeError("Invalid JSON for fold state");let Ce=[];for(let ke=0;ke<_n.length;){let $n=_n[ke++],Hn=_n[ke++];if(typeof $n!="number"||typeof Hn!="number")throw new RangeError("Invalid JSON for fold state");Ce.push(foldWidget.range($n,Hn))}return Decoration.set(Ce,!0)}});function findFold(_n,Ce,ke){var $n;let Hn=null;return($n=_n.field(foldState,!1))===null||$n===void 0||$n.between(Ce,ke,(zn,Zn)=>{(!Hn||Hn.from>zn)&&(Hn={from:zn,to:Zn})}),Hn}function foldExists(_n,Ce,ke){let $n=!1;return _n.between(Ce,Ce,(Hn,zn)=>{Hn==Ce&&zn==ke&&($n=!0)}),$n}function maybeEnable(_n,Ce){return _n.field(foldState,!1)?Ce:Ce.concat(StateEffect.appendConfig.of(codeFolding()))}const foldCode=_n=>{for(let Ce of selectedLines(_n)){let ke=foldable(_n.state,Ce.from,Ce.to);if(ke)return _n.dispatch({effects:maybeEnable(_n.state,[foldEffect.of(ke),announceFold(_n,ke)])}),!0}return!1},unfoldCode=_n=>{if(!_n.state.field(foldState,!1))return!1;let Ce=[];for(let ke of selectedLines(_n)){let $n=findFold(_n.state,ke.from,ke.to);$n&&Ce.push(unfoldEffect.of($n),announceFold(_n,$n,!1))}return Ce.length&&_n.dispatch({effects:Ce}),Ce.length>0};function announceFold(_n,Ce,ke=!0){let $n=_n.state.doc.lineAt(Ce.from).number,Hn=_n.state.doc.lineAt(Ce.to).number;return EditorView.announce.of(`${_n.state.phrase(ke?"Folded lines":"Unfolded lines")} ${$n} ${_n.state.phrase("to")} ${Hn}.`)}const foldAll=_n=>{let{state:Ce}=_n,ke=[];for(let $n=0;$n{let Ce=_n.state.field(foldState,!1);if(!Ce||!Ce.size)return!1;let ke=[];return Ce.between(0,_n.state.doc.length,($n,Hn)=>{ke.push(unfoldEffect.of({from:$n,to:Hn}))}),_n.dispatch({effects:ke}),!0},foldKeymap=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:foldCode},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:unfoldCode},{key:"Ctrl-Alt-[",run:foldAll},{key:"Ctrl-Alt-]",run:unfoldAll}],defaultConfig={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},foldConfig=Facet.define({combine(_n){return combineConfig(_n,defaultConfig)}});function codeFolding(_n){return[foldState,baseTheme$1$2]}function widgetToDOM(_n,Ce){let{state:ke}=_n,$n=ke.facet(foldConfig),Hn=Zn=>{let qn=_n.lineBlockAt(_n.posAtDOM(Zn.target)),Yn=findFold(_n.state,qn.from,qn.to);Yn&&_n.dispatch({effects:unfoldEffect.of(Yn)}),Zn.preventDefault()};if($n.placeholderDOM)return $n.placeholderDOM(_n,Hn,Ce);let zn=document.createElement("span");return zn.textContent=$n.placeholderText,zn.setAttribute("aria-label",ke.phrase("folded code")),zn.title=ke.phrase("unfold"),zn.className="cm-foldPlaceholder",zn.onclick=Hn,zn}const foldWidget=Decoration.replace({widget:new class extends WidgetType{toDOM(_n){return widgetToDOM(_n,null)}}});class PreparedFoldWidget extends WidgetType{constructor(Ce){super(),this.value=Ce}eq(Ce){return this.value==Ce.value}toDOM(Ce){return widgetToDOM(Ce,this.value)}}const foldGutterDefaults={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class FoldMarker extends GutterMarker{constructor(Ce,ke){super(),this.config=Ce,this.open=ke}eq(Ce){return this.config==Ce.config&&this.open==Ce.open}toDOM(Ce){if(this.config.markerDOM)return this.config.markerDOM(this.open);let ke=document.createElement("span");return ke.textContent=this.open?this.config.openText:this.config.closedText,ke.title=Ce.state.phrase(this.open?"Fold line":"Unfold line"),ke}}function foldGutter(_n={}){let Ce=Object.assign(Object.assign({},foldGutterDefaults),_n),ke=new FoldMarker(Ce,!0),$n=new FoldMarker(Ce,!1),Hn=ViewPlugin.fromClass(class{constructor(Zn){this.from=Zn.viewport.from,this.markers=this.buildMarkers(Zn)}update(Zn){(Zn.docChanged||Zn.viewportChanged||Zn.startState.facet(language)!=Zn.state.facet(language)||Zn.startState.field(foldState,!1)!=Zn.state.field(foldState,!1)||syntaxTree(Zn.startState)!=syntaxTree(Zn.state)||Ce.foldingChanged(Zn))&&(this.markers=this.buildMarkers(Zn.view))}buildMarkers(Zn){let qn=new RangeSetBuilder;for(let Yn of Zn.viewportLineBlocks){let Jn=findFold(Zn.state,Yn.from,Yn.to)?$n:foldable(Zn.state,Yn.from,Yn.to)?ke:null;Jn&&qn.add(Yn.from,Yn.from,Jn)}return qn.finish()}}),{domEventHandlers:zn}=Ce;return[Hn,gutter({class:"cm-foldGutter",markers(Zn){var qn;return((qn=Zn.plugin(Hn))===null||qn===void 0?void 0:qn.markers)||RangeSet.empty},initialSpacer(){return new FoldMarker(Ce,!1)},domEventHandlers:Object.assign(Object.assign({},zn),{click:(Zn,qn,Yn)=>{if(zn.click&&zn.click(Zn,qn,Yn))return!0;let Jn=findFold(Zn.state,qn.from,qn.to);if(Jn)return Zn.dispatch({effects:unfoldEffect.of(Jn)}),!0;let to=foldable(Zn.state,qn.from,qn.to);return to?(Zn.dispatch({effects:foldEffect.of(to)}),!0):!1}})}),codeFolding()]}const baseTheme$1$2=EditorView.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class HighlightStyle{constructor(Ce,ke){this.specs=Ce;let $n;function Hn(qn){let Yn=StyleModule.newName();return($n||($n=Object.create(null)))["."+Yn]=qn,Yn}const zn=typeof ke.all=="string"?ke.all:ke.all?Hn(ke.all):void 0,Zn=ke.scope;this.scope=Zn instanceof Language?qn=>qn.prop(languageDataProp)==Zn.data:Zn?qn=>qn==Zn:void 0,this.style=tagHighlighter(Ce.map(qn=>({tag:qn.tag,class:qn.class||Hn(Object.assign({},qn,{tag:null}))})),{all:zn}).style,this.module=$n?new StyleModule($n):null,this.themeType=ke.themeType}static define(Ce,ke){return new HighlightStyle(Ce,ke||{})}}const highlighterFacet=Facet.define(),fallbackHighlighter=Facet.define({combine(_n){return _n.length?[_n[0]]:null}});function getHighlighters(_n){let Ce=_n.facet(highlighterFacet);return Ce.length?Ce:_n.facet(fallbackHighlighter)}function syntaxHighlighting(_n,Ce){let ke=[treeHighlighter],$n;return _n instanceof HighlightStyle&&(_n.module&&ke.push(EditorView.styleModule.of(_n.module)),$n=_n.themeType),Ce!=null&&Ce.fallback?ke.push(fallbackHighlighter.of(_n)):$n?ke.push(highlighterFacet.computeN([EditorView.darkTheme],Hn=>Hn.facet(EditorView.darkTheme)==($n=="dark")?[_n]:[])):ke.push(highlighterFacet.of(_n)),ke}class TreeHighlighter{constructor(Ce){this.markCache=Object.create(null),this.tree=syntaxTree(Ce.state),this.decorations=this.buildDeco(Ce,getHighlighters(Ce.state)),this.decoratedTo=Ce.viewport.to}update(Ce){let ke=syntaxTree(Ce.state),$n=getHighlighters(Ce.state),Hn=$n!=getHighlighters(Ce.startState),{viewport:zn}=Ce.view,Zn=Ce.changes.mapPos(this.decoratedTo,1);ke.length=zn.to?(this.decorations=this.decorations.map(Ce.changes),this.decoratedTo=Zn):(ke!=this.tree||Ce.viewportChanged||Hn)&&(this.tree=ke,this.decorations=this.buildDeco(Ce.view,$n),this.decoratedTo=zn.to)}buildDeco(Ce,ke){if(!ke||!this.tree.length)return Decoration.none;let $n=new RangeSetBuilder;for(let{from:Hn,to:zn}of Ce.visibleRanges)highlightTree(this.tree,ke,(Zn,qn,Yn)=>{$n.add(Zn,qn,this.markCache[Yn]||(this.markCache[Yn]=Decoration.mark({class:Yn})))},Hn,zn);return $n.finish()}}const treeHighlighter=Prec.high(ViewPlugin.fromClass(TreeHighlighter,{decorations:_n=>_n.decorations})),defaultHighlightStyle=HighlightStyle.define([{tag:tags$1.meta,color:"#404740"},{tag:tags$1.link,textDecoration:"underline"},{tag:tags$1.heading,textDecoration:"underline",fontWeight:"bold"},{tag:tags$1.emphasis,fontStyle:"italic"},{tag:tags$1.strong,fontWeight:"bold"},{tag:tags$1.strikethrough,textDecoration:"line-through"},{tag:tags$1.keyword,color:"#708"},{tag:[tags$1.atom,tags$1.bool,tags$1.url,tags$1.contentSeparator,tags$1.labelName],color:"#219"},{tag:[tags$1.literal,tags$1.inserted],color:"#164"},{tag:[tags$1.string,tags$1.deleted],color:"#a11"},{tag:[tags$1.regexp,tags$1.escape,tags$1.special(tags$1.string)],color:"#e40"},{tag:tags$1.definition(tags$1.variableName),color:"#00f"},{tag:tags$1.local(tags$1.variableName),color:"#30a"},{tag:[tags$1.typeName,tags$1.namespace],color:"#085"},{tag:tags$1.className,color:"#167"},{tag:[tags$1.special(tags$1.variableName),tags$1.macroName],color:"#256"},{tag:tags$1.definition(tags$1.propertyName),color:"#00c"},{tag:tags$1.comment,color:"#940"},{tag:tags$1.invalid,color:"#f00"}]),baseTheme$3=EditorView.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),DefaultScanDist=1e4,DefaultBrackets="()[]{}",bracketMatchingConfig=Facet.define({combine(_n){return combineConfig(_n,{afterCursor:!0,brackets:DefaultBrackets,maxScanDistance:DefaultScanDist,renderMatch:defaultRenderMatch})}}),matchingMark=Decoration.mark({class:"cm-matchingBracket"}),nonmatchingMark=Decoration.mark({class:"cm-nonmatchingBracket"});function defaultRenderMatch(_n){let Ce=[],ke=_n.matched?matchingMark:nonmatchingMark;return Ce.push(ke.range(_n.start.from,_n.start.to)),_n.end&&Ce.push(ke.range(_n.end.from,_n.end.to)),Ce}const bracketMatchingState=StateField.define({create(){return Decoration.none},update(_n,Ce){if(!Ce.docChanged&&!Ce.selection)return _n;let ke=[],$n=Ce.state.facet(bracketMatchingConfig);for(let Hn of Ce.state.selection.ranges){if(!Hn.empty)continue;let zn=matchBrackets(Ce.state,Hn.head,-1,$n)||Hn.head>0&&matchBrackets(Ce.state,Hn.head-1,1,$n)||$n.afterCursor&&(matchBrackets(Ce.state,Hn.head,1,$n)||Hn.headEditorView.decorations.from(_n)}),bracketMatchingUnique=[bracketMatchingState,baseTheme$3];function bracketMatching(_n={}){return[bracketMatchingConfig.of(_n),bracketMatchingUnique]}const bracketMatchingHandle=new NodeProp;function matchingNodes(_n,Ce,ke){let $n=_n.prop(Ce<0?NodeProp.openedBy:NodeProp.closedBy);if($n)return $n;if(_n.name.length==1){let Hn=ke.indexOf(_n.name);if(Hn>-1&&Hn%2==(Ce<0?1:0))return[ke[Hn+Ce]]}return null}function findHandle(_n){let Ce=_n.type.prop(bracketMatchingHandle);return Ce?Ce(_n.node):_n}function matchBrackets(_n,Ce,ke,$n={}){let Hn=$n.maxScanDistance||DefaultScanDist,zn=$n.brackets||DefaultBrackets,Zn=syntaxTree(_n),qn=Zn.resolveInner(Ce,ke);for(let Yn=qn;Yn;Yn=Yn.parent){let Jn=matchingNodes(Yn.type,ke,zn);if(Jn&&Yn.from0?Ce>=to.from&&Ceto.from&&Ce<=to.to))return matchMarkedBrackets(_n,Ce,ke,Yn,to,Jn,zn)}}return matchPlainBrackets(_n,Ce,ke,Zn,qn.type,Hn,zn)}function matchMarkedBrackets(_n,Ce,ke,$n,Hn,zn,Zn){let qn=$n.parent,Yn={from:Hn.from,to:Hn.to},Jn=0,to=qn==null?void 0:qn.cursor();if(to&&(ke<0?to.childBefore($n.from):to.childAfter($n.to)))do if(ke<0?to.to<=$n.from:to.from>=$n.to){if(Jn==0&&zn.indexOf(to.type.name)>-1&&to.from0)return null;let Jn={from:ke<0?Ce-1:Ce,to:ke>0?Ce+1:Ce},to=_n.doc.iterRange(Ce,ke>0?_n.doc.length:0),io=0;for(let uo=0;!to.next().done&&uo<=zn;){let mo=to.value;ke<0&&(uo+=mo.length);let bo=Ce+uo*ke;for(let Oo=ke>0?0:mo.length-1,wo=ke>0?mo.length:-1;Oo!=wo;Oo+=ke){let $o=Zn.indexOf(mo[Oo]);if(!($o<0||$n.resolveInner(bo+Oo,1).type!=Hn))if($o%2==0==ke>0)io++;else{if(io==1)return{start:Jn,end:{from:bo+Oo,to:bo+Oo+1},matched:$o>>1==Yn>>1};io--}}ke>0&&(uo+=mo.length)}return to.done?{start:Jn,matched:!1}:null}const noTokens=Object.create(null),typeArray=[NodeType.none],warned=[],byTag=Object.create(null),defaultTable=Object.create(null);for(let[_n,Ce]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])defaultTable[_n]=createTokenType(noTokens,Ce);function warnForPart(_n,Ce){warned.indexOf(_n)>-1||(warned.push(_n),console.warn(Ce))}function createTokenType(_n,Ce){let ke=[];for(let qn of Ce.split(" ")){let Yn=[];for(let Jn of qn.split(".")){let to=_n[Jn]||tags$1[Jn];to?typeof to=="function"?Yn.length?Yn=Yn.map(to):warnForPart(Jn,`Modifier ${Jn} used at start of tag`):Yn.length?warnForPart(Jn,`Tag ${Jn} used as modifier`):Yn=Array.isArray(to)?to:[to]:warnForPart(Jn,`Unknown highlighting tag ${Jn}`)}for(let Jn of Yn)ke.push(Jn)}if(!ke.length)return 0;let $n=Ce.replace(/ /g,"_"),Hn=$n+" "+ke.map(qn=>qn.id),zn=byTag[Hn];if(zn)return zn.id;let Zn=byTag[Hn]=NodeType.define({id:typeArray.length,name:$n,props:[styleTags({[$n]:ke})]});return typeArray.push(Zn),Zn.id}Direction.RTL,Direction.LTR;const toggleComment=_n=>{let{state:Ce}=_n,ke=Ce.doc.lineAt(Ce.selection.main.from),$n=getConfig(_n.state,ke.from);return $n.line?toggleLineComment(_n):$n.block?toggleBlockCommentByLine(_n):!1};function command(_n,Ce){return({state:ke,dispatch:$n})=>{if(ke.readOnly)return!1;let Hn=_n(Ce,ke);return Hn?($n(ke.update(Hn)),!0):!1}}const toggleLineComment=command(changeLineComment,0),toggleBlockComment=command(changeBlockComment,0),toggleBlockCommentByLine=command((_n,Ce)=>changeBlockComment(_n,Ce,selectedLineRanges(Ce)),0);function getConfig(_n,Ce){let ke=_n.languageDataAt("commentTokens",Ce);return ke.length?ke[0]:{}}const SearchMargin=50;function findBlockComment(_n,{open:Ce,close:ke},$n,Hn){let zn=_n.sliceDoc($n-SearchMargin,$n),Zn=_n.sliceDoc(Hn,Hn+SearchMargin),qn=/\s*$/.exec(zn)[0].length,Yn=/^\s*/.exec(Zn)[0].length,Jn=zn.length-qn;if(zn.slice(Jn-Ce.length,Jn)==Ce&&Zn.slice(Yn,Yn+ke.length)==ke)return{open:{pos:$n-qn,margin:qn&&1},close:{pos:Hn+Yn,margin:Yn&&1}};let to,io;Hn-$n<=2*SearchMargin?to=io=_n.sliceDoc($n,Hn):(to=_n.sliceDoc($n,$n+SearchMargin),io=_n.sliceDoc(Hn-SearchMargin,Hn));let uo=/^\s*/.exec(to)[0].length,mo=/\s*$/.exec(io)[0].length,bo=io.length-mo-ke.length;return to.slice(uo,uo+Ce.length)==Ce&&io.slice(bo,bo+ke.length)==ke?{open:{pos:$n+uo+Ce.length,margin:/\s/.test(to.charAt(uo+Ce.length))?1:0},close:{pos:Hn-mo-ke.length,margin:/\s/.test(io.charAt(bo-1))?1:0}}:null}function selectedLineRanges(_n){let Ce=[];for(let ke of _n.selection.ranges){let $n=_n.doc.lineAt(ke.from),Hn=ke.to<=$n.to?$n:_n.doc.lineAt(ke.to),zn=Ce.length-1;zn>=0&&Ce[zn].to>$n.from?Ce[zn].to=Hn.to:Ce.push({from:$n.from+/^\s*/.exec($n.text)[0].length,to:Hn.to})}return Ce}function changeBlockComment(_n,Ce,ke=Ce.selection.ranges){let $n=ke.map(zn=>getConfig(Ce,zn.from).block);if(!$n.every(zn=>zn))return null;let Hn=ke.map((zn,Zn)=>findBlockComment(Ce,$n[Zn],zn.from,zn.to));if(_n!=2&&!Hn.every(zn=>zn))return{changes:Ce.changes(ke.map((zn,Zn)=>Hn[Zn]?[]:[{from:zn.from,insert:$n[Zn].open+" "},{from:zn.to,insert:" "+$n[Zn].close}]))};if(_n!=1&&Hn.some(zn=>zn)){let zn=[];for(let Zn=0,qn;ZnHn&&(zn==Zn||Zn>io.from)){Hn=io.from;let uo=/^\s*/.exec(io.text)[0].length,mo=uo==io.length,bo=io.text.slice(uo,uo+Jn.length)==Jn?uo:-1;uozn.comment<0&&(!zn.empty||zn.single))){let zn=[];for(let{line:qn,token:Yn,indent:Jn,empty:to,single:io}of $n)(io||!to)&&zn.push({from:qn.from+Jn,insert:Yn+" "});let Zn=Ce.changes(zn);return{changes:Zn,selection:Ce.selection.map(Zn,1)}}else if(_n!=1&&$n.some(zn=>zn.comment>=0)){let zn=[];for(let{line:Zn,comment:qn,token:Yn}of $n)if(qn>=0){let Jn=Zn.from+qn,to=Jn+Yn.length;Zn.text[to-Zn.from]==" "&&to++,zn.push({from:Jn,to})}return{changes:zn}}return null}const fromHistory=Annotation.define(),isolateHistory=Annotation.define(),invertedEffects=Facet.define(),historyConfig=Facet.define({combine(_n){return combineConfig(_n,{minDepth:100,newGroupDelay:500,joinToEvent:(Ce,ke)=>ke},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(Ce,ke)=>($n,Hn)=>Ce($n,Hn)||ke($n,Hn)})}}),historyField_=StateField.define({create(){return HistoryState.empty},update(_n,Ce){let ke=Ce.state.facet(historyConfig),$n=Ce.annotation(fromHistory);if($n){let Yn=HistEvent.fromTransaction(Ce,$n.selection),Jn=$n.side,to=Jn==0?_n.undone:_n.done;return Yn?to=updateBranch(to,to.length,ke.minDepth,Yn):to=addSelection(to,Ce.startState.selection),new HistoryState(Jn==0?$n.rest:to,Jn==0?to:$n.rest)}let Hn=Ce.annotation(isolateHistory);if((Hn=="full"||Hn=="before")&&(_n=_n.isolate()),Ce.annotation(Transaction.addToHistory)===!1)return Ce.changes.empty?_n:_n.addMapping(Ce.changes.desc);let zn=HistEvent.fromTransaction(Ce),Zn=Ce.annotation(Transaction.time),qn=Ce.annotation(Transaction.userEvent);return zn?_n=_n.addChanges(zn,Zn,qn,ke,Ce):Ce.selection&&(_n=_n.addSelection(Ce.startState.selection,Zn,qn,ke.newGroupDelay)),(Hn=="full"||Hn=="after")&&(_n=_n.isolate()),_n},toJSON(_n){return{done:_n.done.map(Ce=>Ce.toJSON()),undone:_n.undone.map(Ce=>Ce.toJSON())}},fromJSON(_n){return new HistoryState(_n.done.map(HistEvent.fromJSON),_n.undone.map(HistEvent.fromJSON))}});function history$1(_n={}){return[historyField_,historyConfig.of(_n),EditorView.domEventHandlers({beforeinput(Ce,ke){let $n=Ce.inputType=="historyUndo"?undo:Ce.inputType=="historyRedo"?redo:null;return $n?(Ce.preventDefault(),$n(ke)):!1}})]}function cmd(_n,Ce){return function({state:ke,dispatch:$n}){if(!Ce&&ke.readOnly)return!1;let Hn=ke.field(historyField_,!1);if(!Hn)return!1;let zn=Hn.pop(_n,ke,Ce);return zn?($n(zn),!0):!1}}const undo=cmd(0,!1),redo=cmd(1,!1),undoSelection=cmd(0,!0),redoSelection=cmd(1,!0);class HistEvent{constructor(Ce,ke,$n,Hn,zn){this.changes=Ce,this.effects=ke,this.mapped=$n,this.startSelection=Hn,this.selectionsAfter=zn}setSelAfter(Ce){return new HistEvent(this.changes,this.effects,this.mapped,this.startSelection,Ce)}toJSON(){var Ce,ke,$n;return{changes:(Ce=this.changes)===null||Ce===void 0?void 0:Ce.toJSON(),mapped:(ke=this.mapped)===null||ke===void 0?void 0:ke.toJSON(),startSelection:($n=this.startSelection)===null||$n===void 0?void 0:$n.toJSON(),selectionsAfter:this.selectionsAfter.map(Hn=>Hn.toJSON())}}static fromJSON(Ce){return new HistEvent(Ce.changes&&ChangeSet.fromJSON(Ce.changes),[],Ce.mapped&&ChangeDesc.fromJSON(Ce.mapped),Ce.startSelection&&EditorSelection.fromJSON(Ce.startSelection),Ce.selectionsAfter.map(EditorSelection.fromJSON))}static fromTransaction(Ce,ke){let $n=none$2;for(let Hn of Ce.startState.facet(invertedEffects)){let zn=Hn(Ce);zn.length&&($n=$n.concat(zn))}return!$n.length&&Ce.changes.empty?null:new HistEvent(Ce.changes.invert(Ce.startState.doc),$n,void 0,ke||Ce.startState.selection,none$2)}static selection(Ce){return new HistEvent(void 0,none$2,void 0,void 0,Ce)}}function updateBranch(_n,Ce,ke,$n){let Hn=Ce+1>ke+20?Ce-ke-1:0,zn=_n.slice(Hn,Ce);return zn.push($n),zn}function isAdjacent(_n,Ce){let ke=[],$n=!1;return _n.iterChangedRanges((Hn,zn)=>ke.push(Hn,zn)),Ce.iterChangedRanges((Hn,zn,Zn,qn)=>{for(let Yn=0;Yn=Jn&&Zn<=to&&($n=!0)}}),$n}function eqSelectionShape(_n,Ce){return _n.ranges.length==Ce.ranges.length&&_n.ranges.filter((ke,$n)=>ke.empty!=Ce.ranges[$n].empty).length===0}function conc(_n,Ce){return _n.length?Ce.length?_n.concat(Ce):_n:Ce}const none$2=[],MaxSelectionsPerEvent=200;function addSelection(_n,Ce){if(_n.length){let ke=_n[_n.length-1],$n=ke.selectionsAfter.slice(Math.max(0,ke.selectionsAfter.length-MaxSelectionsPerEvent));return $n.length&&$n[$n.length-1].eq(Ce)?_n:($n.push(Ce),updateBranch(_n,_n.length-1,1e9,ke.setSelAfter($n)))}else return[HistEvent.selection([Ce])]}function popSelection(_n){let Ce=_n[_n.length-1],ke=_n.slice();return ke[_n.length-1]=Ce.setSelAfter(Ce.selectionsAfter.slice(0,Ce.selectionsAfter.length-1)),ke}function addMappingToBranch(_n,Ce){if(!_n.length)return _n;let ke=_n.length,$n=none$2;for(;ke;){let Hn=mapEvent(_n[ke-1],Ce,$n);if(Hn.changes&&!Hn.changes.empty||Hn.effects.length){let zn=_n.slice(0,ke);return zn[ke-1]=Hn,zn}else Ce=Hn.mapped,ke--,$n=Hn.selectionsAfter}return $n.length?[HistEvent.selection($n)]:none$2}function mapEvent(_n,Ce,ke){let $n=conc(_n.selectionsAfter.length?_n.selectionsAfter.map(qn=>qn.map(Ce)):none$2,ke);if(!_n.changes)return HistEvent.selection($n);let Hn=_n.changes.map(Ce),zn=Ce.mapDesc(_n.changes,!0),Zn=_n.mapped?_n.mapped.composeDesc(zn):zn;return new HistEvent(Hn,StateEffect.mapEffects(_n.effects,Ce),Zn,_n.startSelection.map(zn),$n)}const joinableUserEvent=/^(input\.type|delete)($|\.)/;class HistoryState{constructor(Ce,ke,$n=0,Hn=void 0){this.done=Ce,this.undone=ke,this.prevTime=$n,this.prevUserEvent=Hn}isolate(){return this.prevTime?new HistoryState(this.done,this.undone):this}addChanges(Ce,ke,$n,Hn,zn){let Zn=this.done,qn=Zn[Zn.length-1];return qn&&qn.changes&&!qn.changes.empty&&Ce.changes&&(!$n||joinableUserEvent.test($n))&&(!qn.selectionsAfter.length&&ke-this.prevTime0&&ke-this.prevTimeke.empty?_n.moveByChar(ke,Ce):rangeEnd(ke,Ce))}function ltrAtCursor(_n){return _n.textDirectionAt(_n.state.selection.main.head)==Direction.LTR}const cursorCharLeft=_n=>cursorByChar(_n,!ltrAtCursor(_n)),cursorCharRight=_n=>cursorByChar(_n,ltrAtCursor(_n));function cursorByGroup(_n,Ce){return moveSel(_n,ke=>ke.empty?_n.moveByGroup(ke,Ce):rangeEnd(ke,Ce))}const cursorGroupLeft=_n=>cursorByGroup(_n,!ltrAtCursor(_n)),cursorGroupRight=_n=>cursorByGroup(_n,ltrAtCursor(_n));function interestingNode(_n,Ce,ke){if(Ce.type.prop(ke))return!0;let $n=Ce.to-Ce.from;return $n&&($n>2||/[^\s,.;:]/.test(_n.sliceDoc(Ce.from,Ce.to)))||Ce.firstChild}function moveBySyntax(_n,Ce,ke){let $n=syntaxTree(_n).resolveInner(Ce.head),Hn=ke?NodeProp.closedBy:NodeProp.openedBy;for(let Yn=Ce.head;;){let Jn=ke?$n.childAfter(Yn):$n.childBefore(Yn);if(!Jn)break;interestingNode(_n,Jn,Hn)?$n=Jn:Yn=ke?Jn.to:Jn.from}let zn=$n.type.prop(Hn),Zn,qn;return zn&&(Zn=ke?matchBrackets(_n,$n.from,1):matchBrackets(_n,$n.to,-1))&&Zn.matched?qn=ke?Zn.end.to:Zn.end.from:qn=ke?$n.to:$n.from,EditorSelection.cursor(qn,ke?-1:1)}const cursorSyntaxLeft=_n=>moveSel(_n,Ce=>moveBySyntax(_n.state,Ce,!ltrAtCursor(_n))),cursorSyntaxRight=_n=>moveSel(_n,Ce=>moveBySyntax(_n.state,Ce,ltrAtCursor(_n)));function cursorByLine(_n,Ce){return moveSel(_n,ke=>{if(!ke.empty)return rangeEnd(ke,Ce);let $n=_n.moveVertically(ke,Ce);return $n.head!=ke.head?$n:_n.moveToLineBoundary(ke,Ce)})}const cursorLineUp=_n=>cursorByLine(_n,!1),cursorLineDown=_n=>cursorByLine(_n,!0);function pageInfo(_n){let Ce=_n.scrollDOM.clientHeight<_n.scrollDOM.scrollHeight-2,ke=0,$n=0,Hn;if(Ce){for(let zn of _n.state.facet(EditorView.scrollMargins)){let Zn=zn(_n);Zn!=null&&Zn.top&&(ke=Math.max(Zn==null?void 0:Zn.top,ke)),Zn!=null&&Zn.bottom&&($n=Math.max(Zn==null?void 0:Zn.bottom,$n))}Hn=_n.scrollDOM.clientHeight-ke-$n}else Hn=(_n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:ke,marginBottom:$n,selfScroll:Ce,height:Math.max(_n.defaultLineHeight,Hn-5)}}function cursorByPage(_n,Ce){let ke=pageInfo(_n),{state:$n}=_n,Hn=updateSel($n.selection,Zn=>Zn.empty?_n.moveVertically(Zn,Ce,ke.height):rangeEnd(Zn,Ce));if(Hn.eq($n.selection))return!1;let zn;if(ke.selfScroll){let Zn=_n.coordsAtPos($n.selection.main.head),qn=_n.scrollDOM.getBoundingClientRect(),Yn=qn.top+ke.marginTop,Jn=qn.bottom-ke.marginBottom;Zn&&Zn.top>Yn&&Zn.bottomcursorByPage(_n,!1),cursorPageDown=_n=>cursorByPage(_n,!0);function moveByLineBoundary(_n,Ce,ke){let $n=_n.lineBlockAt(Ce.head),Hn=_n.moveToLineBoundary(Ce,ke);if(Hn.head==Ce.head&&Hn.head!=(ke?$n.to:$n.from)&&(Hn=_n.moveToLineBoundary(Ce,ke,!1)),!ke&&Hn.head==$n.from&&$n.length){let zn=/^\s*/.exec(_n.state.sliceDoc($n.from,Math.min($n.from+100,$n.to)))[0].length;zn&&Ce.head!=$n.from+zn&&(Hn=EditorSelection.cursor($n.from+zn))}return Hn}const cursorLineBoundaryForward=_n=>moveSel(_n,Ce=>moveByLineBoundary(_n,Ce,!0)),cursorLineBoundaryBackward=_n=>moveSel(_n,Ce=>moveByLineBoundary(_n,Ce,!1)),cursorLineBoundaryLeft=_n=>moveSel(_n,Ce=>moveByLineBoundary(_n,Ce,!ltrAtCursor(_n))),cursorLineBoundaryRight=_n=>moveSel(_n,Ce=>moveByLineBoundary(_n,Ce,ltrAtCursor(_n))),cursorLineStart=_n=>moveSel(_n,Ce=>EditorSelection.cursor(_n.lineBlockAt(Ce.head).from,1)),cursorLineEnd=_n=>moveSel(_n,Ce=>EditorSelection.cursor(_n.lineBlockAt(Ce.head).to,-1));function toMatchingBracket(_n,Ce,ke){let $n=!1,Hn=updateSel(_n.selection,zn=>{let Zn=matchBrackets(_n,zn.head,-1)||matchBrackets(_n,zn.head,1)||zn.head>0&&matchBrackets(_n,zn.head-1,1)||zn.head<_n.doc.length&&matchBrackets(_n,zn.head+1,-1);if(!Zn||!Zn.end)return zn;$n=!0;let qn=Zn.start.from==zn.head?Zn.end.to:Zn.end.from;return EditorSelection.cursor(qn)});return $n?(Ce(setSel(_n,Hn)),!0):!1}const cursorMatchingBracket=({state:_n,dispatch:Ce})=>toMatchingBracket(_n,Ce);function extendSel(_n,Ce){let ke=updateSel(_n.state.selection,$n=>{let Hn=Ce($n);return EditorSelection.range($n.anchor,Hn.head,Hn.goalColumn,Hn.bidiLevel||void 0)});return ke.eq(_n.state.selection)?!1:(_n.dispatch(setSel(_n.state,ke)),!0)}function selectByChar(_n,Ce){return extendSel(_n,ke=>_n.moveByChar(ke,Ce))}const selectCharLeft=_n=>selectByChar(_n,!ltrAtCursor(_n)),selectCharRight=_n=>selectByChar(_n,ltrAtCursor(_n));function selectByGroup(_n,Ce){return extendSel(_n,ke=>_n.moveByGroup(ke,Ce))}const selectGroupLeft=_n=>selectByGroup(_n,!ltrAtCursor(_n)),selectGroupRight=_n=>selectByGroup(_n,ltrAtCursor(_n)),selectSyntaxLeft=_n=>extendSel(_n,Ce=>moveBySyntax(_n.state,Ce,!ltrAtCursor(_n))),selectSyntaxRight=_n=>extendSel(_n,Ce=>moveBySyntax(_n.state,Ce,ltrAtCursor(_n)));function selectByLine(_n,Ce){return extendSel(_n,ke=>_n.moveVertically(ke,Ce))}const selectLineUp=_n=>selectByLine(_n,!1),selectLineDown=_n=>selectByLine(_n,!0);function selectByPage(_n,Ce){return extendSel(_n,ke=>_n.moveVertically(ke,Ce,pageInfo(_n).height))}const selectPageUp=_n=>selectByPage(_n,!1),selectPageDown=_n=>selectByPage(_n,!0),selectLineBoundaryForward=_n=>extendSel(_n,Ce=>moveByLineBoundary(_n,Ce,!0)),selectLineBoundaryBackward=_n=>extendSel(_n,Ce=>moveByLineBoundary(_n,Ce,!1)),selectLineBoundaryLeft=_n=>extendSel(_n,Ce=>moveByLineBoundary(_n,Ce,!ltrAtCursor(_n))),selectLineBoundaryRight=_n=>extendSel(_n,Ce=>moveByLineBoundary(_n,Ce,ltrAtCursor(_n))),selectLineStart=_n=>extendSel(_n,Ce=>EditorSelection.cursor(_n.lineBlockAt(Ce.head).from)),selectLineEnd=_n=>extendSel(_n,Ce=>EditorSelection.cursor(_n.lineBlockAt(Ce.head).to)),cursorDocStart=({state:_n,dispatch:Ce})=>(Ce(setSel(_n,{anchor:0})),!0),cursorDocEnd=({state:_n,dispatch:Ce})=>(Ce(setSel(_n,{anchor:_n.doc.length})),!0),selectDocStart=({state:_n,dispatch:Ce})=>(Ce(setSel(_n,{anchor:_n.selection.main.anchor,head:0})),!0),selectDocEnd=({state:_n,dispatch:Ce})=>(Ce(setSel(_n,{anchor:_n.selection.main.anchor,head:_n.doc.length})),!0),selectAll=({state:_n,dispatch:Ce})=>(Ce(_n.update({selection:{anchor:0,head:_n.doc.length},userEvent:"select"})),!0),selectLine=({state:_n,dispatch:Ce})=>{let ke=selectedLineBlocks(_n).map(({from:$n,to:Hn})=>EditorSelection.range($n,Math.min(Hn+1,_n.doc.length)));return Ce(_n.update({selection:EditorSelection.create(ke),userEvent:"select"})),!0},selectParentSyntax=({state:_n,dispatch:Ce})=>{let ke=updateSel(_n.selection,$n=>{var Hn;let zn=syntaxTree(_n).resolveStack($n.from,1);for(let Zn=zn;Zn;Zn=Zn.next){let{node:qn}=Zn;if((qn.from<$n.from&&qn.to>=$n.to||qn.to>$n.to&&qn.from<=$n.from)&&(!((Hn=qn.parent)===null||Hn===void 0)&&Hn.parent))return EditorSelection.range(qn.to,qn.from)}return $n});return Ce(setSel(_n,ke)),!0},simplifySelection=({state:_n,dispatch:Ce})=>{let ke=_n.selection,$n=null;return ke.ranges.length>1?$n=EditorSelection.create([ke.main]):ke.main.empty||($n=EditorSelection.create([EditorSelection.cursor(ke.main.head)])),$n?(Ce(setSel(_n,$n)),!0):!1};function deleteBy(_n,Ce){if(_n.state.readOnly)return!1;let ke="delete.selection",{state:$n}=_n,Hn=$n.changeByRange(zn=>{let{from:Zn,to:qn}=zn;if(Zn==qn){let Yn=Ce(zn);YnZn&&(ke="delete.forward",Yn=skipAtomic(_n,Yn,!0)),Zn=Math.min(Zn,Yn),qn=Math.max(qn,Yn)}else Zn=skipAtomic(_n,Zn,!1),qn=skipAtomic(_n,qn,!0);return Zn==qn?{range:zn}:{changes:{from:Zn,to:qn},range:EditorSelection.cursor(Zn,ZnHn(_n)))$n.between(Ce,Ce,(Hn,zn)=>{HnCe&&(Ce=ke?zn:Hn)});return Ce}const deleteByChar=(_n,Ce,ke)=>deleteBy(_n,$n=>{let Hn=$n.from,{state:zn}=_n,Zn=zn.doc.lineAt(Hn),qn,Yn;if(ke&&!Ce&&Hn>Zn.from&&HndeleteByChar(_n,!1,!0),deleteCharForward=_n=>deleteByChar(_n,!0,!1),deleteByGroup=(_n,Ce)=>deleteBy(_n,ke=>{let $n=ke.head,{state:Hn}=_n,zn=Hn.doc.lineAt($n),Zn=Hn.charCategorizer($n);for(let qn=null;;){if($n==(Ce?zn.to:zn.from)){$n==ke.head&&zn.number!=(Ce?Hn.doc.lines:1)&&($n+=Ce?1:-1);break}let Yn=findClusterBreak(zn.text,$n-zn.from,Ce)+zn.from,Jn=zn.text.slice(Math.min($n,Yn)-zn.from,Math.max($n,Yn)-zn.from),to=Zn(Jn);if(qn!=null&&to!=qn)break;(Jn!=" "||$n!=ke.head)&&(qn=to),$n=Yn}return $n}),deleteGroupBackward=_n=>deleteByGroup(_n,!1),deleteGroupForward=_n=>deleteByGroup(_n,!0),deleteToLineEnd=_n=>deleteBy(_n,Ce=>{let ke=_n.lineBlockAt(Ce.head).to;return Ce.headdeleteBy(_n,Ce=>{let ke=_n.moveToLineBoundary(Ce,!1).head;return Ce.head>ke?ke:Math.max(0,Ce.head-1)}),deleteLineBoundaryForward=_n=>deleteBy(_n,Ce=>{let ke=_n.moveToLineBoundary(Ce,!0).head;return Ce.head{if(_n.readOnly)return!1;let ke=_n.changeByRange($n=>({changes:{from:$n.from,to:$n.to,insert:Text.of(["",""])},range:EditorSelection.cursor($n.from)}));return Ce(_n.update(ke,{scrollIntoView:!0,userEvent:"input"})),!0},transposeChars=({state:_n,dispatch:Ce})=>{if(_n.readOnly)return!1;let ke=_n.changeByRange($n=>{if(!$n.empty||$n.from==0||$n.from==_n.doc.length)return{range:$n};let Hn=$n.from,zn=_n.doc.lineAt(Hn),Zn=Hn==zn.from?Hn-1:findClusterBreak(zn.text,Hn-zn.from,!1)+zn.from,qn=Hn==zn.to?Hn+1:findClusterBreak(zn.text,Hn-zn.from,!0)+zn.from;return{changes:{from:Zn,to:qn,insert:_n.doc.slice(Hn,qn).append(_n.doc.slice(Zn,Hn))},range:EditorSelection.cursor(qn)}});return ke.changes.empty?!1:(Ce(_n.update(ke,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function selectedLineBlocks(_n){let Ce=[],ke=-1;for(let $n of _n.selection.ranges){let Hn=_n.doc.lineAt($n.from),zn=_n.doc.lineAt($n.to);if(!$n.empty&&$n.to==zn.from&&(zn=_n.doc.lineAt($n.to-1)),ke>=Hn.number){let Zn=Ce[Ce.length-1];Zn.to=zn.to,Zn.ranges.push($n)}else Ce.push({from:Hn.from,to:zn.to,ranges:[$n]});ke=zn.number+1}return Ce}function moveLine(_n,Ce,ke){if(_n.readOnly)return!1;let $n=[],Hn=[];for(let zn of selectedLineBlocks(_n)){if(ke?zn.to==_n.doc.length:zn.from==0)continue;let Zn=_n.doc.lineAt(ke?zn.to+1:zn.from-1),qn=Zn.length+1;if(ke){$n.push({from:zn.to,to:Zn.to},{from:zn.from,insert:Zn.text+_n.lineBreak});for(let Yn of zn.ranges)Hn.push(EditorSelection.range(Math.min(_n.doc.length,Yn.anchor+qn),Math.min(_n.doc.length,Yn.head+qn)))}else{$n.push({from:Zn.from,to:zn.from},{from:zn.to,insert:_n.lineBreak+Zn.text});for(let Yn of zn.ranges)Hn.push(EditorSelection.range(Yn.anchor-qn,Yn.head-qn))}}return $n.length?(Ce(_n.update({changes:$n,scrollIntoView:!0,selection:EditorSelection.create(Hn,_n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const moveLineUp=({state:_n,dispatch:Ce})=>moveLine(_n,Ce,!1),moveLineDown=({state:_n,dispatch:Ce})=>moveLine(_n,Ce,!0);function copyLine(_n,Ce,ke){if(_n.readOnly)return!1;let $n=[];for(let Hn of selectedLineBlocks(_n))ke?$n.push({from:Hn.from,insert:_n.doc.slice(Hn.from,Hn.to)+_n.lineBreak}):$n.push({from:Hn.to,insert:_n.lineBreak+_n.doc.slice(Hn.from,Hn.to)});return Ce(_n.update({changes:$n,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const copyLineUp=({state:_n,dispatch:Ce})=>copyLine(_n,Ce,!1),copyLineDown=({state:_n,dispatch:Ce})=>copyLine(_n,Ce,!0),deleteLine=_n=>{if(_n.state.readOnly)return!1;let{state:Ce}=_n,ke=Ce.changes(selectedLineBlocks(Ce).map(({from:Hn,to:zn})=>(Hn>0?Hn--:zn{let zn;if(_n.lineWrapping){let Zn=_n.lineBlockAt(Hn.head),qn=_n.coordsAtPos(Hn.head,Hn.assoc||1);qn&&(zn=Zn.bottom+_n.documentTop-qn.bottom+_n.defaultLineHeight/2)}return _n.moveVertically(Hn,!0,zn)}).map(ke);return _n.dispatch({changes:ke,selection:$n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function isBetweenBrackets(_n,Ce){if(/\(\)|\[\]|\{\}/.test(_n.sliceDoc(Ce-1,Ce+1)))return{from:Ce,to:Ce};let ke=syntaxTree(_n).resolveInner(Ce),$n=ke.childBefore(Ce),Hn=ke.childAfter(Ce),zn;return $n&&Hn&&$n.to<=Ce&&Hn.from>=Ce&&(zn=$n.type.prop(NodeProp.closedBy))&&zn.indexOf(Hn.name)>-1&&_n.doc.lineAt($n.to).from==_n.doc.lineAt(Hn.from).from&&!/\S/.test(_n.sliceDoc($n.to,Hn.from))?{from:$n.to,to:Hn.from}:null}const insertNewlineAndIndent=newlineAndIndent(!1),insertBlankLine=newlineAndIndent(!0);function newlineAndIndent(_n){return({state:Ce,dispatch:ke})=>{if(Ce.readOnly)return!1;let $n=Ce.changeByRange(Hn=>{let{from:zn,to:Zn}=Hn,qn=Ce.doc.lineAt(zn),Yn=!_n&&zn==Zn&&isBetweenBrackets(Ce,zn);_n&&(zn=Zn=(Zn<=qn.to?qn:Ce.doc.lineAt(Zn)).to);let Jn=new IndentContext(Ce,{simulateBreak:zn,simulateDoubleBreak:!!Yn}),to=getIndentation(Jn,zn);for(to==null&&(to=countColumn(/^\s*/.exec(Ce.doc.lineAt(zn).text)[0],Ce.tabSize));Znqn.from&&zn{let Hn=[];for(let Zn=$n.from;Zn<=$n.to;){let qn=_n.doc.lineAt(Zn);qn.number>ke&&($n.empty||$n.to>qn.from)&&(Ce(qn,Hn,$n),ke=qn.number),Zn=qn.to+1}let zn=_n.changes(Hn);return{changes:Hn,range:EditorSelection.range(zn.mapPos($n.anchor,1),zn.mapPos($n.head,1))}})}const indentSelection=({state:_n,dispatch:Ce})=>{if(_n.readOnly)return!1;let ke=Object.create(null),$n=new IndentContext(_n,{overrideIndentation:zn=>{let Zn=ke[zn];return Zn??-1}}),Hn=changeBySelectedLine(_n,(zn,Zn,qn)=>{let Yn=getIndentation($n,zn.from);if(Yn==null)return;/\S/.test(zn.text)||(Yn=0);let Jn=/^\s*/.exec(zn.text)[0],to=indentString(_n,Yn);(Jn!=to||qn.from_n.readOnly?!1:(Ce(_n.update(changeBySelectedLine(_n,(ke,$n)=>{$n.push({from:ke.from,insert:_n.facet(indentUnit)})}),{userEvent:"input.indent"})),!0),indentLess=({state:_n,dispatch:Ce})=>_n.readOnly?!1:(Ce(_n.update(changeBySelectedLine(_n,(ke,$n)=>{let Hn=/^\s*/.exec(ke.text)[0];if(!Hn)return;let zn=countColumn(Hn,_n.tabSize),Zn=0,qn=indentString(_n,Math.max(0,zn-getIndentUnit(_n)));for(;Zn(_n.setTabFocusMode(),!0),emacsStyleKeymap=[{key:"Ctrl-b",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Ctrl-f",run:cursorCharRight,shift:selectCharRight},{key:"Ctrl-p",run:cursorLineUp,shift:selectLineUp},{key:"Ctrl-n",run:cursorLineDown,shift:selectLineDown},{key:"Ctrl-a",run:cursorLineStart,shift:selectLineStart},{key:"Ctrl-e",run:cursorLineEnd,shift:selectLineEnd},{key:"Ctrl-d",run:deleteCharForward},{key:"Ctrl-h",run:deleteCharBackward},{key:"Ctrl-k",run:deleteToLineEnd},{key:"Ctrl-Alt-h",run:deleteGroupBackward},{key:"Ctrl-o",run:splitLine},{key:"Ctrl-t",run:transposeChars},{key:"Ctrl-v",run:cursorPageDown}],standardKeymap=[{key:"ArrowLeft",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:cursorGroupLeft,shift:selectGroupLeft,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:cursorLineBoundaryLeft,shift:selectLineBoundaryLeft,preventDefault:!0},{key:"ArrowRight",run:cursorCharRight,shift:selectCharRight,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:cursorGroupRight,shift:selectGroupRight,preventDefault:!0},{mac:"Cmd-ArrowRight",run:cursorLineBoundaryRight,shift:selectLineBoundaryRight,preventDefault:!0},{key:"ArrowUp",run:cursorLineUp,shift:selectLineUp,preventDefault:!0},{mac:"Cmd-ArrowUp",run:cursorDocStart,shift:selectDocStart},{mac:"Ctrl-ArrowUp",run:cursorPageUp,shift:selectPageUp},{key:"ArrowDown",run:cursorLineDown,shift:selectLineDown,preventDefault:!0},{mac:"Cmd-ArrowDown",run:cursorDocEnd,shift:selectDocEnd},{mac:"Ctrl-ArrowDown",run:cursorPageDown,shift:selectPageDown},{key:"PageUp",run:cursorPageUp,shift:selectPageUp},{key:"PageDown",run:cursorPageDown,shift:selectPageDown},{key:"Home",run:cursorLineBoundaryBackward,shift:selectLineBoundaryBackward,preventDefault:!0},{key:"Mod-Home",run:cursorDocStart,shift:selectDocStart},{key:"End",run:cursorLineBoundaryForward,shift:selectLineBoundaryForward,preventDefault:!0},{key:"Mod-End",run:cursorDocEnd,shift:selectDocEnd},{key:"Enter",run:insertNewlineAndIndent},{key:"Mod-a",run:selectAll},{key:"Backspace",run:deleteCharBackward,shift:deleteCharBackward},{key:"Delete",run:deleteCharForward},{key:"Mod-Backspace",mac:"Alt-Backspace",run:deleteGroupBackward},{key:"Mod-Delete",mac:"Alt-Delete",run:deleteGroupForward},{mac:"Mod-Backspace",run:deleteLineBoundaryBackward},{mac:"Mod-Delete",run:deleteLineBoundaryForward}].concat(emacsStyleKeymap.map(_n=>({mac:_n.key,run:_n.run,shift:_n.shift}))),defaultKeymap=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:cursorSyntaxLeft,shift:selectSyntaxLeft},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:cursorSyntaxRight,shift:selectSyntaxRight},{key:"Alt-ArrowUp",run:moveLineUp},{key:"Shift-Alt-ArrowUp",run:copyLineUp},{key:"Alt-ArrowDown",run:moveLineDown},{key:"Shift-Alt-ArrowDown",run:copyLineDown},{key:"Escape",run:simplifySelection},{key:"Mod-Enter",run:insertBlankLine},{key:"Alt-l",mac:"Ctrl-l",run:selectLine},{key:"Mod-i",run:selectParentSyntax,preventDefault:!0},{key:"Mod-[",run:indentLess},{key:"Mod-]",run:indentMore},{key:"Mod-Alt-\\",run:indentSelection},{key:"Shift-Mod-k",run:deleteLine},{key:"Shift-Mod-\\",run:cursorMatchingBracket},{key:"Mod-/",run:toggleComment},{key:"Alt-A",run:toggleBlockComment},{key:"Ctrl-m",mac:"Shift-Alt-m",run:toggleTabFocusMode}].concat(standardKeymap),indentWithTab={key:"Tab",run:indentMore,shift:indentLess};function crelt(){var _n=arguments[0];typeof _n=="string"&&(_n=document.createElement(_n));var Ce=1,ke=arguments[1];if(ke&&typeof ke=="object"&&ke.nodeType==null&&!Array.isArray(ke)){for(var $n in ke)if(Object.prototype.hasOwnProperty.call(ke,$n)){var Hn=ke[$n];typeof Hn=="string"?_n.setAttribute($n,Hn):Hn!=null&&(_n[$n]=Hn)}Ce++}for(;Ce_n.normalize("NFKD"):_n=>_n;class SearchCursor{constructor(Ce,ke,$n=0,Hn=Ce.length,zn,Zn){this.test=Zn,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=Ce.iterRange($n,Hn),this.bufferStart=$n,this.normalize=zn?qn=>zn(basicNormalize(qn)):basicNormalize,this.query=this.normalize(ke)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return codePointAt(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let Ce=this.peek();if(Ce<0)return this.done=!0,this;let ke=fromCodePoint(Ce),$n=this.bufferStart+this.bufferPos;this.bufferPos+=codePointSize(Ce);let Hn=this.normalize(ke);for(let zn=0,Zn=$n;;zn++){let qn=Hn.charCodeAt(zn),Yn=this.match(qn,Zn,this.bufferPos+this.bufferStart);if(zn==Hn.length-1){if(Yn)return this.value=Yn,this;break}Zn==$n&&znthis.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let Ce=this.matchPos-this.curLineStart;;){this.re.lastIndex=Ce;let ke=this.matchPos<=this.to&&this.re.exec(this.curLine);if(ke){let $n=this.curLineStart+ke.index,Hn=$n+ke[0].length;if(this.matchPos=toCharEnd(this.text,Hn+($n==Hn?1:0)),$n==this.curLineStart+this.curLine.length&&this.nextLine(),($nthis.value.to)&&(!this.test||this.test($n,Hn,ke)))return this.value={from:$n,to:Hn,match:ke},this;Ce=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length=$n||Hn.to<=ke){let qn=new FlattenedDoc(ke,Ce.sliceString(ke,$n));return flattened.set(Ce,qn),qn}if(Hn.from==ke&&Hn.to==$n)return Hn;let{text:zn,from:Zn}=Hn;return Zn>ke&&(zn=Ce.sliceString(ke,Zn)+zn,Zn=ke),Hn.to<$n&&(zn+=Ce.sliceString(Hn.to,$n)),flattened.set(Ce,new FlattenedDoc(Zn,zn)),new FlattenedDoc(ke,zn.slice(ke-Zn,$n-Zn))}}class MultilineRegExpCursor{constructor(Ce,ke,$n,Hn,zn){this.text=Ce,this.to=zn,this.done=!1,this.value=empty,this.matchPos=toCharEnd(Ce,Hn),this.re=new RegExp(ke,baseFlags+($n!=null&&$n.ignoreCase?"i":"")),this.test=$n==null?void 0:$n.test,this.flat=FlattenedDoc.get(Ce,Hn,this.chunkEnd(Hn+5e3))}chunkEnd(Ce){return Ce>=this.to?this.to:this.text.lineAt(Ce).to}next(){for(;;){let Ce=this.re.lastIndex=this.matchPos-this.flat.from,ke=this.re.exec(this.flat.text);if(ke&&!ke[0]&&ke.index==Ce&&(this.re.lastIndex=Ce+1,ke=this.re.exec(this.flat.text)),ke){let $n=this.flat.from+ke.index,Hn=$n+ke[0].length;if((this.flat.to>=this.to||ke.index+ke[0].length<=this.flat.text.length-10)&&(!this.test||this.test($n,Hn,ke)))return this.value={from:$n,to:Hn,match:ke},this.matchPos=toCharEnd(this.text,Hn+($n==Hn?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=FlattenedDoc.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(RegExpCursor.prototype[Symbol.iterator]=MultilineRegExpCursor.prototype[Symbol.iterator]=function(){return this});function validRegExp(_n){try{return new RegExp(_n,baseFlags),!0}catch{return!1}}function toCharEnd(_n,Ce){if(Ce>=_n.length)return Ce;let ke=_n.lineAt(Ce),$n;for(;Ce=56320&&$n<57344;)Ce++;return Ce}function createLineDialog(_n){let Ce=String(_n.state.doc.lineAt(_n.state.selection.main.head).number),ke=crelt("input",{class:"cm-textfield",name:"line",value:Ce}),$n=crelt("form",{class:"cm-gotoLine",onkeydown:zn=>{zn.keyCode==27?(zn.preventDefault(),_n.dispatch({effects:dialogEffect.of(!1)}),_n.focus()):zn.keyCode==13&&(zn.preventDefault(),Hn())},onsubmit:zn=>{zn.preventDefault(),Hn()}},crelt("label",_n.state.phrase("Go to line"),": ",ke)," ",crelt("button",{class:"cm-button",type:"submit"},_n.state.phrase("go")));function Hn(){let zn=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(ke.value);if(!zn)return;let{state:Zn}=_n,qn=Zn.doc.lineAt(Zn.selection.main.head),[,Yn,Jn,to,io]=zn,uo=to?+to.slice(1):0,mo=Jn?+Jn:qn.number;if(Jn&&io){let wo=mo/100;Yn&&(wo=wo*(Yn=="-"?-1:1)+qn.number/Zn.doc.lines),mo=Math.round(Zn.doc.lines*wo)}else Jn&&Yn&&(mo=mo*(Yn=="-"?-1:1)+qn.number);let bo=Zn.doc.line(Math.max(1,Math.min(Zn.doc.lines,mo))),Oo=EditorSelection.cursor(bo.from+Math.max(0,Math.min(uo,bo.length)));_n.dispatch({effects:[dialogEffect.of(!1),EditorView.scrollIntoView(Oo.from,{y:"center"})],selection:Oo}),_n.focus()}return{dom:$n}}const dialogEffect=StateEffect.define(),dialogField=StateField.define({create(){return!0},update(_n,Ce){for(let ke of Ce.effects)ke.is(dialogEffect)&&(_n=ke.value);return _n},provide:_n=>showPanel.from(_n,Ce=>Ce?createLineDialog:null)}),gotoLine=_n=>{let Ce=getPanel(_n,createLineDialog);if(!Ce){let ke=[dialogEffect.of(!0)];_n.state.field(dialogField,!1)==null&&ke.push(StateEffect.appendConfig.of([dialogField,baseTheme$1$1])),_n.dispatch({effects:ke}),Ce=getPanel(_n,createLineDialog)}return Ce&&Ce.dom.querySelector("input").select(),!0},baseTheme$1$1=EditorView.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px","& label":{fontSize:"80%"}}}),defaultHighlightOptions={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},highlightConfig=Facet.define({combine(_n){return combineConfig(_n,defaultHighlightOptions,{highlightWordAroundCursor:(Ce,ke)=>Ce||ke,minSelectionLength:Math.min,maxMatches:Math.min})}});function highlightSelectionMatches(_n){return[defaultTheme,matchHighlighter]}const matchDeco=Decoration.mark({class:"cm-selectionMatch"}),mainMatchDeco=Decoration.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function insideWordBoundaries(_n,Ce,ke,$n){return(ke==0||_n(Ce.sliceDoc(ke-1,ke))!=CharCategory.Word)&&($n==Ce.doc.length||_n(Ce.sliceDoc($n,$n+1))!=CharCategory.Word)}function insideWord(_n,Ce,ke,$n){return _n(Ce.sliceDoc(ke,ke+1))==CharCategory.Word&&_n(Ce.sliceDoc($n-1,$n))==CharCategory.Word}const matchHighlighter=ViewPlugin.fromClass(class{constructor(_n){this.decorations=this.getDeco(_n)}update(_n){(_n.selectionSet||_n.docChanged||_n.viewportChanged)&&(this.decorations=this.getDeco(_n.view))}getDeco(_n){let Ce=_n.state.facet(highlightConfig),{state:ke}=_n,$n=ke.selection;if($n.ranges.length>1)return Decoration.none;let Hn=$n.main,zn,Zn=null;if(Hn.empty){if(!Ce.highlightWordAroundCursor)return Decoration.none;let Yn=ke.wordAt(Hn.head);if(!Yn)return Decoration.none;Zn=ke.charCategorizer(Hn.head),zn=ke.sliceDoc(Yn.from,Yn.to)}else{let Yn=Hn.to-Hn.from;if(Yn200)return Decoration.none;if(Ce.wholeWords){if(zn=ke.sliceDoc(Hn.from,Hn.to),Zn=ke.charCategorizer(Hn.head),!(insideWordBoundaries(Zn,ke,Hn.from,Hn.to)&&insideWord(Zn,ke,Hn.from,Hn.to)))return Decoration.none}else if(zn=ke.sliceDoc(Hn.from,Hn.to),!zn)return Decoration.none}let qn=[];for(let Yn of _n.visibleRanges){let Jn=new SearchCursor(ke.doc,zn,Yn.from,Yn.to);for(;!Jn.next().done;){let{from:to,to:io}=Jn.value;if((!Zn||insideWordBoundaries(Zn,ke,to,io))&&(Hn.empty&&to<=Hn.from&&io>=Hn.to?qn.push(mainMatchDeco.range(to,io)):(to>=Hn.to||io<=Hn.from)&&qn.push(matchDeco.range(to,io)),qn.length>Ce.maxMatches))return Decoration.none}}return Decoration.set(qn)}},{decorations:_n=>_n.decorations}),defaultTheme=EditorView.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),selectWord=({state:_n,dispatch:Ce})=>{let{selection:ke}=_n,$n=EditorSelection.create(ke.ranges.map(Hn=>_n.wordAt(Hn.head)||EditorSelection.cursor(Hn.head)),ke.mainIndex);return $n.eq(ke)?!1:(Ce(_n.update({selection:$n})),!0)};function findNextOccurrence(_n,Ce){let{main:ke,ranges:$n}=_n.selection,Hn=_n.wordAt(ke.head),zn=Hn&&Hn.from==ke.from&&Hn.to==ke.to;for(let Zn=!1,qn=new SearchCursor(_n.doc,Ce,$n[$n.length-1].to);;)if(qn.next(),qn.done){if(Zn)return null;qn=new SearchCursor(_n.doc,Ce,0,Math.max(0,$n[$n.length-1].from-1)),Zn=!0}else{if(Zn&&$n.some(Yn=>Yn.from==qn.value.from))continue;if(zn){let Yn=_n.wordAt(qn.value.from);if(!Yn||Yn.from!=qn.value.from||Yn.to!=qn.value.to)continue}return qn.value}}const selectNextOccurrence=({state:_n,dispatch:Ce})=>{let{ranges:ke}=_n.selection;if(ke.some(zn=>zn.from===zn.to))return selectWord({state:_n,dispatch:Ce});let $n=_n.sliceDoc(ke[0].from,ke[0].to);if(_n.selection.ranges.some(zn=>_n.sliceDoc(zn.from,zn.to)!=$n))return!1;let Hn=findNextOccurrence(_n,$n);return Hn?(Ce(_n.update({selection:_n.selection.addRange(EditorSelection.range(Hn.from,Hn.to),!1),effects:EditorView.scrollIntoView(Hn.to)})),!0):!1},searchConfigFacet=Facet.define({combine(_n){return combineConfig(_n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:Ce=>new SearchPanel(Ce),scrollToMatch:Ce=>EditorView.scrollIntoView(Ce)})}});class SearchQuery{constructor(Ce){this.search=Ce.search,this.caseSensitive=!!Ce.caseSensitive,this.literal=!!Ce.literal,this.regexp=!!Ce.regexp,this.replace=Ce.replace||"",this.valid=!!this.search&&(!this.regexp||validRegExp(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!Ce.wholeWord}unquote(Ce){return this.literal?Ce:Ce.replace(/\\([nrt\\])/g,(ke,$n)=>$n=="n"?` +`:$n=="r"?"\r":$n=="t"?" ":"\\")}eq(Ce){return this.search==Ce.search&&this.replace==Ce.replace&&this.caseSensitive==Ce.caseSensitive&&this.regexp==Ce.regexp&&this.wholeWord==Ce.wholeWord}create(){return this.regexp?new RegExpQuery(this):new StringQuery(this)}getCursor(Ce,ke=0,$n){let Hn=Ce.doc?Ce:EditorState.create({doc:Ce});return $n==null&&($n=Hn.doc.length),this.regexp?regexpCursor(this,Hn,ke,$n):stringCursor(this,Hn,ke,$n)}}class QueryType{constructor(Ce){this.spec=Ce}}function stringCursor(_n,Ce,ke,$n){return new SearchCursor(Ce.doc,_n.unquoted,ke,$n,_n.caseSensitive?void 0:Hn=>Hn.toLowerCase(),_n.wholeWord?stringWordTest(Ce.doc,Ce.charCategorizer(Ce.selection.main.head)):void 0)}function stringWordTest(_n,Ce){return(ke,$n,Hn,zn)=>((zn>ke||zn+Hn.length<$n)&&(zn=Math.max(0,ke-2),Hn=_n.sliceString(zn,Math.min(_n.length,$n+2))),(Ce(charBefore(Hn,ke-zn))!=CharCategory.Word||Ce(charAfter(Hn,ke-zn))!=CharCategory.Word)&&(Ce(charAfter(Hn,$n-zn))!=CharCategory.Word||Ce(charBefore(Hn,$n-zn))!=CharCategory.Word))}class StringQuery extends QueryType{constructor(Ce){super(Ce)}nextMatch(Ce,ke,$n){let Hn=stringCursor(this.spec,Ce,$n,Ce.doc.length).nextOverlapping();return Hn.done&&(Hn=stringCursor(this.spec,Ce,0,ke).nextOverlapping()),Hn.done?null:Hn.value}prevMatchInRange(Ce,ke,$n){for(let Hn=$n;;){let zn=Math.max(ke,Hn-1e4-this.spec.unquoted.length),Zn=stringCursor(this.spec,Ce,zn,Hn),qn=null;for(;!Zn.nextOverlapping().done;)qn=Zn.value;if(qn)return qn;if(zn==ke)return null;Hn-=1e4}}prevMatch(Ce,ke,$n){return this.prevMatchInRange(Ce,0,ke)||this.prevMatchInRange(Ce,$n,Ce.doc.length)}getReplacement(Ce){return this.spec.unquote(this.spec.replace)}matchAll(Ce,ke){let $n=stringCursor(this.spec,Ce,0,Ce.doc.length),Hn=[];for(;!$n.next().done;){if(Hn.length>=ke)return null;Hn.push($n.value)}return Hn}highlight(Ce,ke,$n,Hn){let zn=stringCursor(this.spec,Ce,Math.max(0,ke-this.spec.unquoted.length),Math.min($n+this.spec.unquoted.length,Ce.doc.length));for(;!zn.next().done;)Hn(zn.value.from,zn.value.to)}}function regexpCursor(_n,Ce,ke,$n){return new RegExpCursor(Ce.doc,_n.search,{ignoreCase:!_n.caseSensitive,test:_n.wholeWord?regexpWordTest(Ce.charCategorizer(Ce.selection.main.head)):void 0},ke,$n)}function charBefore(_n,Ce){return _n.slice(findClusterBreak(_n,Ce,!1),Ce)}function charAfter(_n,Ce){return _n.slice(Ce,findClusterBreak(_n,Ce))}function regexpWordTest(_n){return(Ce,ke,$n)=>!$n[0].length||(_n(charBefore($n.input,$n.index))!=CharCategory.Word||_n(charAfter($n.input,$n.index))!=CharCategory.Word)&&(_n(charAfter($n.input,$n.index+$n[0].length))!=CharCategory.Word||_n(charBefore($n.input,$n.index+$n[0].length))!=CharCategory.Word)}class RegExpQuery extends QueryType{nextMatch(Ce,ke,$n){let Hn=regexpCursor(this.spec,Ce,$n,Ce.doc.length).next();return Hn.done&&(Hn=regexpCursor(this.spec,Ce,0,ke).next()),Hn.done?null:Hn.value}prevMatchInRange(Ce,ke,$n){for(let Hn=1;;Hn++){let zn=Math.max(ke,$n-Hn*1e4),Zn=regexpCursor(this.spec,Ce,zn,$n),qn=null;for(;!Zn.next().done;)qn=Zn.value;if(qn&&(zn==ke||qn.from>zn+10))return qn;if(zn==ke)return null}}prevMatch(Ce,ke,$n){return this.prevMatchInRange(Ce,0,ke)||this.prevMatchInRange(Ce,$n,Ce.doc.length)}getReplacement(Ce){return this.spec.unquote(this.spec.replace).replace(/\$([$&\d+])/g,(ke,$n)=>$n=="$"?"$":$n=="&"?Ce.match[0]:$n!="0"&&+$n=ke)return null;Hn.push($n.value)}return Hn}highlight(Ce,ke,$n,Hn){let zn=regexpCursor(this.spec,Ce,Math.max(0,ke-250),Math.min($n+250,Ce.doc.length));for(;!zn.next().done;)Hn(zn.value.from,zn.value.to)}}const setSearchQuery=StateEffect.define(),togglePanel$1=StateEffect.define(),searchState=StateField.define({create(_n){return new SearchState(defaultQuery(_n).create(),null)},update(_n,Ce){for(let ke of Ce.effects)ke.is(setSearchQuery)?_n=new SearchState(ke.value.create(),_n.panel):ke.is(togglePanel$1)&&(_n=new SearchState(_n.query,ke.value?createSearchPanel:null));return _n},provide:_n=>showPanel.from(_n,Ce=>Ce.panel)});class SearchState{constructor(Ce,ke){this.query=Ce,this.panel=ke}}const matchMark=Decoration.mark({class:"cm-searchMatch"}),selectedMatchMark=Decoration.mark({class:"cm-searchMatch cm-searchMatch-selected"}),searchHighlighter=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.decorations=this.highlight(_n.state.field(searchState))}update(_n){let Ce=_n.state.field(searchState);(Ce!=_n.startState.field(searchState)||_n.docChanged||_n.selectionSet||_n.viewportChanged)&&(this.decorations=this.highlight(Ce))}highlight({query:_n,panel:Ce}){if(!Ce||!_n.spec.valid)return Decoration.none;let{view:ke}=this,$n=new RangeSetBuilder;for(let Hn=0,zn=ke.visibleRanges,Zn=zn.length;Hnzn[Hn+1].from-2*250;)Yn=zn[++Hn].to;_n.highlight(ke.state,qn,Yn,(Jn,to)=>{let io=ke.state.selection.ranges.some(uo=>uo.from==Jn&&uo.to==to);$n.add(Jn,to,io?selectedMatchMark:matchMark)})}return $n.finish()}},{decorations:_n=>_n.decorations});function searchCommand(_n){return Ce=>{let ke=Ce.state.field(searchState,!1);return ke&&ke.query.spec.valid?_n(Ce,ke):openSearchPanel(Ce)}}const findNext=searchCommand((_n,{query:Ce})=>{let{to:ke}=_n.state.selection.main,$n=Ce.nextMatch(_n.state,ke,ke);if(!$n)return!1;let Hn=EditorSelection.single($n.from,$n.to),zn=_n.state.facet(searchConfigFacet);return _n.dispatch({selection:Hn,effects:[announceMatch(_n,$n),zn.scrollToMatch(Hn.main,_n)],userEvent:"select.search"}),selectSearchInput(_n),!0}),findPrevious=searchCommand((_n,{query:Ce})=>{let{state:ke}=_n,{from:$n}=ke.selection.main,Hn=Ce.prevMatch(ke,$n,$n);if(!Hn)return!1;let zn=EditorSelection.single(Hn.from,Hn.to),Zn=_n.state.facet(searchConfigFacet);return _n.dispatch({selection:zn,effects:[announceMatch(_n,Hn),Zn.scrollToMatch(zn.main,_n)],userEvent:"select.search"}),selectSearchInput(_n),!0}),selectMatches=searchCommand((_n,{query:Ce})=>{let ke=Ce.matchAll(_n.state,1e3);return!ke||!ke.length?!1:(_n.dispatch({selection:EditorSelection.create(ke.map($n=>EditorSelection.range($n.from,$n.to))),userEvent:"select.search.matches"}),!0)}),selectSelectionMatches=({state:_n,dispatch:Ce})=>{let ke=_n.selection;if(ke.ranges.length>1||ke.main.empty)return!1;let{from:$n,to:Hn}=ke.main,zn=[],Zn=0;for(let qn=new SearchCursor(_n.doc,_n.sliceDoc($n,Hn));!qn.next().done;){if(zn.length>1e3)return!1;qn.value.from==$n&&(Zn=zn.length),zn.push(EditorSelection.range(qn.value.from,qn.value.to))}return Ce(_n.update({selection:EditorSelection.create(zn,Zn),userEvent:"select.search.matches"})),!0},replaceNext=searchCommand((_n,{query:Ce})=>{let{state:ke}=_n,{from:$n,to:Hn}=ke.selection.main;if(ke.readOnly)return!1;let zn=Ce.nextMatch(ke,$n,$n);if(!zn)return!1;let Zn=[],qn,Yn,Jn=[];if(zn.from==$n&&zn.to==Hn&&(Yn=ke.toText(Ce.getReplacement(zn)),Zn.push({from:zn.from,to:zn.to,insert:Yn}),zn=Ce.nextMatch(ke,zn.from,zn.to),Jn.push(EditorView.announce.of(ke.phrase("replaced match on line $",ke.doc.lineAt($n).number)+"."))),zn){let to=Zn.length==0||Zn[0].from>=zn.to?0:zn.to-zn.from-Yn.length;qn=EditorSelection.single(zn.from-to,zn.to-to),Jn.push(announceMatch(_n,zn)),Jn.push(ke.facet(searchConfigFacet).scrollToMatch(qn.main,_n))}return _n.dispatch({changes:Zn,selection:qn,effects:Jn,userEvent:"input.replace"}),!0}),replaceAll=searchCommand((_n,{query:Ce})=>{if(_n.state.readOnly)return!1;let ke=Ce.matchAll(_n.state,1e9).map(Hn=>{let{from:zn,to:Zn}=Hn;return{from:zn,to:Zn,insert:Ce.getReplacement(Hn)}});if(!ke.length)return!1;let $n=_n.state.phrase("replaced $ matches",ke.length)+".";return _n.dispatch({changes:ke,effects:EditorView.announce.of($n),userEvent:"input.replace.all"}),!0});function createSearchPanel(_n){return _n.state.facet(searchConfigFacet).createPanel(_n)}function defaultQuery(_n,Ce){var ke,$n,Hn,zn,Zn;let qn=_n.selection.main,Yn=qn.empty||qn.to>qn.from+100?"":_n.sliceDoc(qn.from,qn.to);if(Ce&&!Yn)return Ce;let Jn=_n.facet(searchConfigFacet);return new SearchQuery({search:((ke=Ce==null?void 0:Ce.literal)!==null&&ke!==void 0?ke:Jn.literal)?Yn:Yn.replace(/\n/g,"\\n"),caseSensitive:($n=Ce==null?void 0:Ce.caseSensitive)!==null&&$n!==void 0?$n:Jn.caseSensitive,literal:(Hn=Ce==null?void 0:Ce.literal)!==null&&Hn!==void 0?Hn:Jn.literal,regexp:(zn=Ce==null?void 0:Ce.regexp)!==null&&zn!==void 0?zn:Jn.regexp,wholeWord:(Zn=Ce==null?void 0:Ce.wholeWord)!==null&&Zn!==void 0?Zn:Jn.wholeWord})}function getSearchInput(_n){let Ce=getPanel(_n,createSearchPanel);return Ce&&Ce.dom.querySelector("[main-field]")}function selectSearchInput(_n){let Ce=getSearchInput(_n);Ce&&Ce==_n.root.activeElement&&Ce.select()}const openSearchPanel=_n=>{let Ce=_n.state.field(searchState,!1);if(Ce&&Ce.panel){let ke=getSearchInput(_n);if(ke&&ke!=_n.root.activeElement){let $n=defaultQuery(_n.state,Ce.query.spec);$n.valid&&_n.dispatch({effects:setSearchQuery.of($n)}),ke.focus(),ke.select()}}else _n.dispatch({effects:[togglePanel$1.of(!0),Ce?setSearchQuery.of(defaultQuery(_n.state,Ce.query.spec)):StateEffect.appendConfig.of(searchExtensions)]});return!0},closeSearchPanel=_n=>{let Ce=_n.state.field(searchState,!1);if(!Ce||!Ce.panel)return!1;let ke=getPanel(_n,createSearchPanel);return ke&&ke.dom.contains(_n.root.activeElement)&&_n.focus(),_n.dispatch({effects:togglePanel$1.of(!1)}),!0},searchKeymap=[{key:"Mod-f",run:openSearchPanel,scope:"editor search-panel"},{key:"F3",run:findNext,shift:findPrevious,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:findNext,shift:findPrevious,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:closeSearchPanel,scope:"editor search-panel"},{key:"Mod-Shift-l",run:selectSelectionMatches},{key:"Mod-Alt-g",run:gotoLine},{key:"Mod-d",run:selectNextOccurrence,preventDefault:!0}];class SearchPanel{constructor(Ce){this.view=Ce;let ke=this.query=Ce.state.field(searchState).query.spec;this.commit=this.commit.bind(this),this.searchField=crelt("input",{value:ke.search,placeholder:phrase(Ce,"Find"),"aria-label":phrase(Ce,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=crelt("input",{value:ke.replace,placeholder:phrase(Ce,"Replace"),"aria-label":phrase(Ce,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=crelt("input",{type:"checkbox",name:"case",form:"",checked:ke.caseSensitive,onchange:this.commit}),this.reField=crelt("input",{type:"checkbox",name:"re",form:"",checked:ke.regexp,onchange:this.commit}),this.wordField=crelt("input",{type:"checkbox",name:"word",form:"",checked:ke.wholeWord,onchange:this.commit});function $n(Hn,zn,Zn){return crelt("button",{class:"cm-button",name:Hn,onclick:zn,type:"button"},Zn)}this.dom=crelt("div",{onkeydown:Hn=>this.keydown(Hn),class:"cm-search"},[this.searchField,$n("next",()=>findNext(Ce),[phrase(Ce,"next")]),$n("prev",()=>findPrevious(Ce),[phrase(Ce,"previous")]),$n("select",()=>selectMatches(Ce),[phrase(Ce,"all")]),crelt("label",null,[this.caseField,phrase(Ce,"match case")]),crelt("label",null,[this.reField,phrase(Ce,"regexp")]),crelt("label",null,[this.wordField,phrase(Ce,"by word")]),...Ce.state.readOnly?[]:[crelt("br"),this.replaceField,$n("replace",()=>replaceNext(Ce),[phrase(Ce,"replace")]),$n("replaceAll",()=>replaceAll(Ce),[phrase(Ce,"replace all")])],crelt("button",{name:"close",onclick:()=>closeSearchPanel(Ce),"aria-label":phrase(Ce,"close"),type:"button"},["×"])])}commit(){let Ce=new SearchQuery({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});Ce.eq(this.query)||(this.query=Ce,this.view.dispatch({effects:setSearchQuery.of(Ce)}))}keydown(Ce){runScopeHandlers(this.view,Ce,"search-panel")?Ce.preventDefault():Ce.keyCode==13&&Ce.target==this.searchField?(Ce.preventDefault(),(Ce.shiftKey?findPrevious:findNext)(this.view)):Ce.keyCode==13&&Ce.target==this.replaceField&&(Ce.preventDefault(),replaceNext(this.view))}update(Ce){for(let ke of Ce.transactions)for(let $n of ke.effects)$n.is(setSearchQuery)&&!$n.value.eq(this.query)&&this.setQuery($n.value)}setQuery(Ce){this.query=Ce,this.searchField.value=Ce.search,this.replaceField.value=Ce.replace,this.caseField.checked=Ce.caseSensitive,this.reField.checked=Ce.regexp,this.wordField.checked=Ce.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(searchConfigFacet).top}}function phrase(_n,Ce){return _n.state.phrase(Ce)}const AnnounceMargin=30,Break=/[\s\.,:;?!]/;function announceMatch(_n,{from:Ce,to:ke}){let $n=_n.state.doc.lineAt(Ce),Hn=_n.state.doc.lineAt(ke).to,zn=Math.max($n.from,Ce-AnnounceMargin),Zn=Math.min(Hn,ke+AnnounceMargin),qn=_n.state.sliceDoc(zn,Zn);if(zn!=$n.from){for(let Yn=0;Ynqn.length-AnnounceMargin;Yn--)if(!Break.test(qn[Yn-1])&&Break.test(qn[Yn])){qn=qn.slice(0,Yn);break}}return EditorView.announce.of(`${_n.state.phrase("current match")}. ${qn} ${_n.state.phrase("on line")} ${$n.number}.`)}const baseTheme$2=EditorView.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),searchExtensions=[searchState,Prec.low(searchHighlighter),baseTheme$2];class CompletionContext{constructor(Ce,ke,$n,Hn){this.state=Ce,this.pos=ke,this.explicit=$n,this.view=Hn,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(Ce){let ke=syntaxTree(this.state).resolveInner(this.pos,-1);for(;ke&&Ce.indexOf(ke.name)<0;)ke=ke.parent;return ke?{from:ke.from,to:this.pos,text:this.state.sliceDoc(ke.from,this.pos),type:ke.type}:null}matchBefore(Ce){let ke=this.state.doc.lineAt(this.pos),$n=Math.max(ke.from,this.pos-250),Hn=ke.text.slice($n-ke.from,this.pos-ke.from),zn=Hn.search(ensureAnchor(Ce,!1));return zn<0?null:{from:$n+zn,to:this.pos,text:Hn.slice(zn)}}get aborted(){return this.abortListeners==null}addEventListener(Ce,ke,$n){Ce=="abort"&&this.abortListeners&&(this.abortListeners.push(ke),$n&&$n.onDocChange&&(this.abortOnDocChange=!0))}}function toSet(_n){let Ce=Object.keys(_n).join(""),ke=/\w/.test(Ce);return ke&&(Ce=Ce.replace(/\w/g,"")),`[${ke?"\\w":""}${Ce.replace(/[^\w\s]/g,"\\$&")}]`}function prefixMatch(_n){let Ce=Object.create(null),ke=Object.create(null);for(let{label:Hn}of _n){Ce[Hn[0]]=!0;for(let zn=1;zntypeof Hn=="string"?{label:Hn}:Hn),[ke,$n]=Ce.every(Hn=>/^\w+$/.test(Hn.label))?[/\w*$/,/\w+$/]:prefixMatch(Ce);return Hn=>{let zn=Hn.matchBefore($n);return zn||Hn.explicit?{from:zn?zn.from:Hn.pos,options:Ce,validFor:ke}:null}}function ifNotIn(_n,Ce){return ke=>{for(let $n=syntaxTree(ke.state).resolveInner(ke.pos,-1);$n;$n=$n.parent){if(_n.indexOf($n.name)>-1)return null;if($n.type.isTop)break}return Ce(ke)}}class Option{constructor(Ce,ke,$n,Hn){this.completion=Ce,this.source=ke,this.match=$n,this.score=Hn}}function cur(_n){return _n.selection.main.from}function ensureAnchor(_n,Ce){var ke;let{source:$n}=_n,Hn=Ce&&$n[0]!="^",zn=$n[$n.length-1]!="$";return!Hn&&!zn?_n:new RegExp(`${Hn?"^":""}(?:${$n})${zn?"$":""}`,(ke=_n.flags)!==null&&ke!==void 0?ke:_n.ignoreCase?"i":"")}const pickedCompletion=Annotation.define();function insertCompletionText(_n,Ce,ke,$n){let{main:Hn}=_n.selection,zn=ke-Hn.from,Zn=$n-Hn.from;return Object.assign(Object.assign({},_n.changeByRange(qn=>qn!=Hn&&ke!=$n&&_n.sliceDoc(qn.from+zn,qn.from+Zn)!=_n.sliceDoc(ke,$n)?{range:qn}:{changes:{from:qn.from+zn,to:$n==Hn.from?qn.to:qn.from+Zn,insert:Ce},range:EditorSelection.cursor(qn.from+zn+Ce.length)})),{scrollIntoView:!0,userEvent:"input.complete"})}const SourceCache=new WeakMap;function asSource(_n){if(!Array.isArray(_n))return _n;let Ce=SourceCache.get(_n);return Ce||SourceCache.set(_n,Ce=completeFromList(_n)),Ce}const startCompletionEffect=StateEffect.define(),closeCompletionEffect=StateEffect.define();class FuzzyMatcher{constructor(Ce){this.pattern=Ce,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let ke=0;ke=48&&Vo<=57||Vo>=97&&Vo<=122?2:Vo>=65&&Vo<=90?1:0:(Ko=fromCodePoint(Vo))!=Ko.toLowerCase()?1:Ko!=Ko.toUpperCase()?2:0;(!Do||Mo==1&&wo||Bo==0&&Mo!=0)&&(ke[io]==Vo||$n[io]==Vo&&(uo=!0)?Zn[io++]=Do:Zn.length&&($o=!1)),Bo=Mo,Do+=codePointSize(Vo)}return io==Yn&&Zn[0]==0&&$o?this.result(-100+(uo?-200:0),Zn,Ce):mo==Yn&&bo==0?this.ret(-200-Ce.length+(Oo==Ce.length?0:-100),[0,Oo]):qn>-1?this.ret(-700-Ce.length,[qn,qn+this.pattern.length]):mo==Yn?this.ret(-900-Ce.length,[bo,Oo]):io==Yn?this.result(-100+(uo?-200:0)+-700+($o?0:-1100),Zn,Ce):ke.length==2?null:this.result((Hn[0]?-700:0)+-200+-1100,Hn,Ce)}result(Ce,ke,$n){let Hn=[],zn=0;for(let Zn of ke){let qn=Zn+(this.astral?codePointSize(codePointAt($n,Zn)):1);zn&&Hn[zn-1]==Zn?Hn[zn-1]=qn:(Hn[zn++]=Zn,Hn[zn++]=qn)}return this.ret(Ce-$n.length,Hn)}}class StrictMatcher{constructor(Ce){this.pattern=Ce,this.matched=[],this.score=0,this.folded=Ce.toLowerCase()}match(Ce){if(Ce.length!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:defaultPositionInfo,filterStrict:!1,compareCompletions:(Ce,ke)=>Ce.label.localeCompare(ke.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(Ce,ke)=>Ce&&ke,closeOnBlur:(Ce,ke)=>Ce&&ke,icons:(Ce,ke)=>Ce&&ke,tooltipClass:(Ce,ke)=>$n=>joinClass(Ce($n),ke($n)),optionClass:(Ce,ke)=>$n=>joinClass(Ce($n),ke($n)),addToOptions:(Ce,ke)=>Ce.concat(ke),filterStrict:(Ce,ke)=>Ce||ke})}});function joinClass(_n,Ce){return _n?Ce?_n+" "+Ce:_n:Ce}function defaultPositionInfo(_n,Ce,ke,$n,Hn,zn){let Zn=_n.textDirection==Direction.RTL,qn=Zn,Yn=!1,Jn="top",to,io,uo=Ce.left-Hn.left,mo=Hn.right-Ce.right,bo=$n.right-$n.left,Oo=$n.bottom-$n.top;if(qn&&uo=Oo||Do>Ce.top?to=ke.bottom-Ce.top:(Jn="bottom",to=Ce.bottom-ke.top)}let wo=(Ce.bottom-Ce.top)/zn.offsetHeight,$o=(Ce.right-Ce.left)/zn.offsetWidth;return{style:`${Jn}: ${to/wo}px; max-width: ${io/$o}px`,class:"cm-completionInfo-"+(Yn?Zn?"left-narrow":"right-narrow":qn?"left":"right")}}function optionContent(_n){let Ce=_n.addToOptions.slice();return _n.icons&&Ce.push({render(ke){let $n=document.createElement("div");return $n.classList.add("cm-completionIcon"),ke.type&&$n.classList.add(...ke.type.split(/\s+/g).map(Hn=>"cm-completionIcon-"+Hn)),$n.setAttribute("aria-hidden","true"),$n},position:20}),Ce.push({render(ke,$n,Hn,zn){let Zn=document.createElement("span");Zn.className="cm-completionLabel";let qn=ke.displayLabel||ke.label,Yn=0;for(let Jn=0;JnYn&&Zn.appendChild(document.createTextNode(qn.slice(Yn,to)));let uo=Zn.appendChild(document.createElement("span"));uo.appendChild(document.createTextNode(qn.slice(to,io))),uo.className="cm-completionMatchedText",Yn=io}return Ynke.position-$n.position).map(ke=>ke.render)}function rangeAroundSelected(_n,Ce,ke){if(_n<=ke)return{from:0,to:_n};if(Ce<0&&(Ce=0),Ce<=_n>>1){let Hn=Math.floor(Ce/ke);return{from:Hn*ke,to:(Hn+1)*ke}}let $n=Math.floor((_n-Ce)/ke);return{from:_n-($n+1)*ke,to:_n-$n*ke}}class CompletionTooltip{constructor(Ce,ke,$n){this.view=Ce,this.stateField=ke,this.applyCompletion=$n,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:Yn=>this.placeInfo(Yn),key:this},this.space=null,this.currentClass="";let Hn=Ce.state.field(ke),{options:zn,selected:Zn}=Hn.open,qn=Ce.state.facet(completionConfig);this.optionContent=optionContent(qn),this.optionClass=qn.optionClass,this.tooltipClass=qn.tooltipClass,this.range=rangeAroundSelected(zn.length,Zn,qn.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(Ce.state),this.dom.addEventListener("mousedown",Yn=>{let{options:Jn}=Ce.state.field(ke).open;for(let to=Yn.target,io;to&&to!=this.dom;to=to.parentNode)if(to.nodeName=="LI"&&(io=/-(\d+)$/.exec(to.id))&&+io[1]{let Jn=Ce.state.field(this.stateField,!1);Jn&&Jn.tooltip&&Ce.state.facet(completionConfig).closeOnBlur&&Yn.relatedTarget!=Ce.contentDOM&&Ce.dispatch({effects:closeCompletionEffect.of(null)})}),this.showOptions(zn,Hn.id)}mount(){this.updateSel()}showOptions(Ce,ke){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(Ce,ke,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(Ce){var ke;let $n=Ce.state.field(this.stateField),Hn=Ce.startState.field(this.stateField);if(this.updateTooltipClass(Ce.state),$n!=Hn){let{options:zn,selected:Zn,disabled:qn}=$n.open;(!Hn.open||Hn.open.options!=zn)&&(this.range=rangeAroundSelected(zn.length,Zn,Ce.state.facet(completionConfig).maxRenderedOptions),this.showOptions(zn,$n.id)),this.updateSel(),qn!=((ke=Hn.open)===null||ke===void 0?void 0:ke.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!qn)}}updateTooltipClass(Ce){let ke=this.tooltipClass(Ce);if(ke!=this.currentClass){for(let $n of this.currentClass.split(" "))$n&&this.dom.classList.remove($n);for(let $n of ke.split(" "))$n&&this.dom.classList.add($n);this.currentClass=ke}}positioned(Ce){this.space=Ce,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let Ce=this.view.state.field(this.stateField),ke=Ce.open;if((ke.selected>-1&&ke.selected=this.range.to)&&(this.range=rangeAroundSelected(ke.options.length,ke.selected,this.view.state.facet(completionConfig).maxRenderedOptions),this.showOptions(ke.options,Ce.id)),this.updateSelectedOption(ke.selected)){this.destroyInfo();let{completion:$n}=ke.options[ke.selected],{info:Hn}=$n;if(!Hn)return;let zn=typeof Hn=="string"?document.createTextNode(Hn):Hn($n);if(!zn)return;"then"in zn?zn.then(Zn=>{Zn&&this.view.state.field(this.stateField,!1)==Ce&&this.addInfoPane(Zn,$n)}).catch(Zn=>logException(this.view.state,Zn,"completion info")):this.addInfoPane(zn,$n)}}addInfoPane(Ce,ke){this.destroyInfo();let $n=this.info=document.createElement("div");if($n.className="cm-tooltip cm-completionInfo",Ce.nodeType!=null)$n.appendChild(Ce),this.infoDestroy=null;else{let{dom:Hn,destroy:zn}=Ce;$n.appendChild(Hn),this.infoDestroy=zn||null}this.dom.appendChild($n),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(Ce){let ke=null;for(let $n=this.list.firstChild,Hn=this.range.from;$n;$n=$n.nextSibling,Hn++)$n.nodeName!="LI"||!$n.id?Hn--:Hn==Ce?$n.hasAttribute("aria-selected")||($n.setAttribute("aria-selected","true"),ke=$n):$n.hasAttribute("aria-selected")&&$n.removeAttribute("aria-selected");return ke&&scrollIntoView(this.list,ke),ke}measureInfo(){let Ce=this.dom.querySelector("[aria-selected]");if(!Ce||!this.info)return null;let ke=this.dom.getBoundingClientRect(),$n=this.info.getBoundingClientRect(),Hn=Ce.getBoundingClientRect(),zn=this.space;if(!zn){let Zn=this.dom.ownerDocument.defaultView||window;zn={left:0,top:0,right:Zn.innerWidth,bottom:Zn.innerHeight}}return Hn.top>Math.min(zn.bottom,ke.bottom)-10||Hn.bottom$n.from||$n.from==0))if(zn=uo,typeof Jn!="string"&&Jn.header)Hn.appendChild(Jn.header(Jn));else{let mo=Hn.appendChild(document.createElement("completion-section"));mo.textContent=uo}}const to=Hn.appendChild(document.createElement("li"));to.id=ke+"-"+Zn,to.setAttribute("role","option");let io=this.optionClass(qn);io&&(to.className=io);for(let uo of this.optionContent){let mo=uo(qn,this.view.state,this.view,Yn);mo&&to.appendChild(mo)}}return $n.from&&Hn.classList.add("cm-completionListIncompleteTop"),$n.tonew CompletionTooltip(ke,_n,Ce)}function scrollIntoView(_n,Ce){let ke=_n.getBoundingClientRect(),$n=Ce.getBoundingClientRect(),Hn=ke.height/_n.offsetHeight;$n.topke.bottom&&(_n.scrollTop+=($n.bottom-ke.bottom)/Hn)}function score(_n){return(_n.boost||0)*100+(_n.apply?10:0)+(_n.info?5:0)+(_n.type?1:0)}function sortOptions(_n,Ce){let ke=[],$n=null,Hn=Jn=>{ke.push(Jn);let{section:to}=Jn.completion;if(to){$n||($n=[]);let io=typeof to=="string"?to:to.name;$n.some(uo=>uo.name==io)||$n.push(typeof to=="string"?{name:io}:to)}},zn=Ce.facet(completionConfig);for(let Jn of _n)if(Jn.hasResult()){let to=Jn.result.getMatch;if(Jn.result.filter===!1)for(let io of Jn.result.options)Hn(new Option(io,Jn.source,to?to(io):[],1e9-ke.length));else{let io=Ce.sliceDoc(Jn.from,Jn.to),uo,mo=zn.filterStrict?new StrictMatcher(io):new FuzzyMatcher(io);for(let bo of Jn.result.options)if(uo=mo.match(bo.label)){let Oo=bo.displayLabel?to?to(bo,uo.matched):[]:uo.matched;Hn(new Option(bo,Jn.source,Oo,uo.score+(bo.boost||0)))}}}if($n){let Jn=Object.create(null),to=0,io=(uo,mo)=>{var bo,Oo;return((bo=uo.rank)!==null&&bo!==void 0?bo:1e9)-((Oo=mo.rank)!==null&&Oo!==void 0?Oo:1e9)||(uo.nameio.score-to.score||Yn(to.completion,io.completion))){let to=Jn.completion;!qn||qn.label!=to.label||qn.detail!=to.detail||qn.type!=null&&to.type!=null&&qn.type!=to.type||qn.apply!=to.apply||qn.boost!=to.boost?Zn.push(Jn):score(Jn.completion)>score(qn)&&(Zn[Zn.length-1]=Jn),qn=Jn.completion}return Zn}class CompletionDialog{constructor(Ce,ke,$n,Hn,zn,Zn){this.options=Ce,this.attrs=ke,this.tooltip=$n,this.timestamp=Hn,this.selected=zn,this.disabled=Zn}setSelected(Ce,ke){return Ce==this.selected||Ce>=this.options.length?this:new CompletionDialog(this.options,makeAttrs(ke,Ce),this.tooltip,this.timestamp,Ce,this.disabled)}static build(Ce,ke,$n,Hn,zn){let Zn=sortOptions(Ce,ke);if(!Zn.length)return Hn&&Ce.some(Yn=>Yn.state==1)?new CompletionDialog(Hn.options,Hn.attrs,Hn.tooltip,Hn.timestamp,Hn.selected,!0):null;let qn=ke.facet(completionConfig).selectOnOpen?0:-1;if(Hn&&Hn.selected!=qn&&Hn.selected!=-1){let Yn=Hn.options[Hn.selected].completion;for(let Jn=0;JnJn.hasResult()?Math.min(Yn,Jn.from):Yn,1e8),create:createTooltip,above:zn.aboveCursor},Hn?Hn.timestamp:Date.now(),qn,!1)}map(Ce){return new CompletionDialog(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:Ce.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class CompletionState{constructor(Ce,ke,$n){this.active=Ce,this.id=ke,this.open=$n}static start(){return new CompletionState(none$1,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(Ce){let{state:ke}=Ce,$n=ke.facet(completionConfig),zn=($n.override||ke.languageDataAt("autocomplete",cur(ke)).map(asSource)).map(qn=>(this.active.find(Jn=>Jn.source==qn)||new ActiveSource(qn,this.active.some(Jn=>Jn.state!=0)?1:0)).update(Ce,$n));zn.length==this.active.length&&zn.every((qn,Yn)=>qn==this.active[Yn])&&(zn=this.active);let Zn=this.open;Zn&&Ce.docChanged&&(Zn=Zn.map(Ce.changes)),Ce.selection||zn.some(qn=>qn.hasResult()&&Ce.changes.touchesRange(qn.from,qn.to))||!sameResults(zn,this.active)?Zn=CompletionDialog.build(zn,ke,this.id,Zn,$n):Zn&&Zn.disabled&&!zn.some(qn=>qn.state==1)&&(Zn=null),!Zn&&zn.every(qn=>qn.state!=1)&&zn.some(qn=>qn.hasResult())&&(zn=zn.map(qn=>qn.hasResult()?new ActiveSource(qn.source,0):qn));for(let qn of Ce.effects)qn.is(setSelectedEffect)&&(Zn=Zn&&Zn.setSelected(qn.value,this.id));return zn==this.active&&Zn==this.open?this:new CompletionState(zn,this.id,Zn)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?baseAttrs:noAttrs}}function sameResults(_n,Ce){if(_n==Ce)return!0;for(let ke=0,$n=0;;){for(;ke<_n.length&&!_n[ke].hasResult;)ke++;for(;$n-1&&(ke["aria-activedescendant"]=_n+"-"+Ce),ke}const none$1=[];function getUpdateType(_n,Ce){if(_n.isUserEvent("input.complete")){let $n=_n.annotation(pickedCompletion);if($n&&Ce.activateOnCompletion($n))return 12}let ke=_n.isUserEvent("input.type");return ke&&Ce.activateOnTyping?5:ke?1:_n.isUserEvent("delete.backward")?2:_n.selection?8:_n.docChanged?16:0}class ActiveSource{constructor(Ce,ke,$n=-1){this.source=Ce,this.state=ke,this.explicitPos=$n}hasResult(){return!1}update(Ce,ke){let $n=getUpdateType(Ce,ke),Hn=this;($n&8||$n&16&&this.touches(Ce))&&(Hn=new ActiveSource(Hn.source,0)),$n&4&&Hn.state==0&&(Hn=new ActiveSource(this.source,1)),Hn=Hn.updateFor(Ce,$n);for(let zn of Ce.effects)if(zn.is(startCompletionEffect))Hn=new ActiveSource(Hn.source,1,zn.value?cur(Ce.state):-1);else if(zn.is(closeCompletionEffect))Hn=new ActiveSource(Hn.source,0);else if(zn.is(setActiveEffect))for(let Zn of zn.value)Zn.source==Hn.source&&(Hn=Zn);return Hn}updateFor(Ce,ke){return this.map(Ce.changes)}map(Ce){return Ce.empty||this.explicitPos<0?this:new ActiveSource(this.source,this.state,Ce.mapPos(this.explicitPos))}touches(Ce){return Ce.changes.touchesRange(cur(Ce.state))}}class ActiveResult extends ActiveSource{constructor(Ce,ke,$n,Hn,zn){super(Ce,2,ke),this.result=$n,this.from=Hn,this.to=zn}hasResult(){return!0}updateFor(Ce,ke){var $n;if(!(ke&3))return this.map(Ce.changes);let Hn=this.result;Hn.map&&!Ce.changes.empty&&(Hn=Hn.map(Hn,Ce.changes));let zn=Ce.changes.mapPos(this.from),Zn=Ce.changes.mapPos(this.to,1),qn=cur(Ce.state);if((this.explicitPos<0?qn<=zn:qnZn||!Hn||ke&2&&cur(Ce.startState)==this.from)return new ActiveSource(this.source,ke&4?1:0);let Yn=this.explicitPos<0?-1:Ce.changes.mapPos(this.explicitPos);return checkValid(Hn.validFor,Ce.state,zn,Zn)?new ActiveResult(this.source,Yn,Hn,zn,Zn):Hn.update&&(Hn=Hn.update(Hn,zn,Zn,new CompletionContext(Ce.state,qn,Yn>=0)))?new ActiveResult(this.source,Yn,Hn,Hn.from,($n=Hn.to)!==null&&$n!==void 0?$n:cur(Ce.state)):new ActiveSource(this.source,1,Yn)}map(Ce){return Ce.empty?this:(this.result.map?this.result.map(this.result,Ce):this.result)?new ActiveResult(this.source,this.explicitPos<0?-1:Ce.mapPos(this.explicitPos),this.result,Ce.mapPos(this.from),Ce.mapPos(this.to,1)):new ActiveSource(this.source,0)}touches(Ce){return Ce.changes.touchesRange(this.from,this.to)}}function checkValid(_n,Ce,ke,$n){if(!_n)return!1;let Hn=Ce.sliceDoc(ke,$n);return typeof _n=="function"?_n(Hn,ke,$n,Ce):ensureAnchor(_n,!0).test(Hn)}const setActiveEffect=StateEffect.define({map(_n,Ce){return _n.map(ke=>ke.map(Ce))}}),setSelectedEffect=StateEffect.define(),completionState=StateField.define({create(){return CompletionState.start()},update(_n,Ce){return _n.update(Ce)},provide:_n=>[showTooltip.from(_n,Ce=>Ce.tooltip),EditorView.contentAttributes.from(_n,Ce=>Ce.attrs)]});function applyCompletion(_n,Ce){const ke=Ce.completion.apply||Ce.completion.label;let $n=_n.state.field(completionState).active.find(Hn=>Hn.source==Ce.source);return $n instanceof ActiveResult?(typeof ke=="string"?_n.dispatch(Object.assign(Object.assign({},insertCompletionText(_n.state,ke,$n.from,$n.to)),{annotations:pickedCompletion.of(Ce.completion)})):ke(_n,Ce.completion,$n.from,$n.to),!0):!1}const createTooltip=completionTooltip(completionState,applyCompletion);function moveCompletionSelection(_n,Ce="option"){return ke=>{let $n=ke.state.field(completionState,!1);if(!$n||!$n.open||$n.open.disabled||Date.now()-$n.open.timestamp-1?$n.open.selected+Hn*(_n?1:-1):_n?0:Zn-1;return qn<0?qn=Ce=="page"?0:Zn-1:qn>=Zn&&(qn=Ce=="page"?Zn-1:0),ke.dispatch({effects:setSelectedEffect.of(qn)}),!0}}const acceptCompletion=_n=>{let Ce=_n.state.field(completionState,!1);return _n.state.readOnly||!Ce||!Ce.open||Ce.open.selected<0||Ce.open.disabled||Date.now()-Ce.open.timestamp<_n.state.facet(completionConfig).interactionDelay?!1:applyCompletion(_n,Ce.open.options[Ce.open.selected])},startCompletion=_n=>_n.state.field(completionState,!1)?(_n.dispatch({effects:startCompletionEffect.of(!0)}),!0):!1,closeCompletion=_n=>{let Ce=_n.state.field(completionState,!1);return!Ce||!Ce.active.some(ke=>ke.state!=0)?!1:(_n.dispatch({effects:closeCompletionEffect.of(null)}),!0)};class RunningQuery{constructor(Ce,ke){this.active=Ce,this.context=ke,this.time=Date.now(),this.updates=[],this.done=void 0}}const MaxUpdateCount=50,MinAbortTime=1e3,completionPlugin=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let Ce of _n.state.field(completionState).active)Ce.state==1&&this.startQuery(Ce)}update(_n){let Ce=_n.state.field(completionState),ke=_n.state.facet(completionConfig);if(!_n.selectionSet&&!_n.docChanged&&_n.startState.field(completionState)==Ce)return;let $n=_n.transactions.some(zn=>{let Zn=getUpdateType(zn,ke);return Zn&8||(zn.selection||zn.docChanged)&&!(Zn&3)});for(let zn=0;znMaxUpdateCount&&Date.now()-Zn.time>MinAbortTime){for(let qn of Zn.context.abortListeners)try{qn()}catch(Yn){logException(this.view.state,Yn)}Zn.context.abortListeners=null,this.running.splice(zn--,1)}else Zn.updates.push(..._n.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),_n.transactions.some(zn=>zn.effects.some(Zn=>Zn.is(startCompletionEffect)))&&(this.pendingStart=!0);let Hn=this.pendingStart?50:ke.activateOnTypingDelay;if(this.debounceUpdate=Ce.active.some(zn=>zn.state==1&&!this.running.some(Zn=>Zn.active.source==zn.source))?setTimeout(()=>this.startUpdate(),Hn):-1,this.composing!=0)for(let zn of _n.transactions)zn.isUserEvent("input.type")?this.composing=2:this.composing==2&&zn.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:_n}=this.view,Ce=_n.field(completionState);for(let ke of Ce.active)ke.state==1&&!this.running.some($n=>$n.active.source==ke.source)&&this.startQuery(ke)}startQuery(_n){let{state:Ce}=this.view,ke=cur(Ce),$n=new CompletionContext(Ce,ke,_n.explicitPos==ke,this.view),Hn=new RunningQuery(_n,$n);this.running.push(Hn),Promise.resolve(_n.source($n)).then(zn=>{Hn.context.aborted||(Hn.done=zn||null,this.scheduleAccept())},zn=>{this.view.dispatch({effects:closeCompletionEffect.of(null)}),logException(this.view.state,zn)})}scheduleAccept(){this.running.every(_n=>_n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(completionConfig).updateSyncTime))}accept(){var _n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let Ce=[],ke=this.view.state.facet(completionConfig);for(let $n=0;$nZn.source==Hn.active.source);if(zn&&zn.state==1)if(Hn.done==null){let Zn=new ActiveSource(Hn.active.source,0);for(let qn of Hn.updates)Zn=Zn.update(qn,ke);Zn.state!=1&&Ce.push(Zn)}else this.startQuery(zn)}Ce.length&&this.view.dispatch({effects:setActiveEffect.of(Ce)})}},{eventHandlers:{blur(_n){let Ce=this.view.state.field(completionState,!1);if(Ce&&Ce.tooltip&&this.view.state.facet(completionConfig).closeOnBlur){let ke=Ce.open&&getTooltip(this.view,Ce.open.tooltip);(!ke||!ke.dom.contains(_n.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:closeCompletionEffect.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:startCompletionEffect.of(!1)}),20),this.composing=0}}}),windows=typeof navigator=="object"&&/Win/.test(navigator.platform),commitCharacters=Prec.highest(EditorView.domEventHandlers({keydown(_n,Ce){let ke=Ce.state.field(completionState,!1);if(!ke||!ke.open||ke.open.disabled||ke.open.selected<0||_n.key.length>1||_n.ctrlKey&&!(windows&&_n.altKey)||_n.metaKey)return!1;let $n=ke.open.options[ke.open.selected],Hn=ke.active.find(Zn=>Zn.source==$n.source),zn=$n.completion.commitCharacters||Hn.result.commitCharacters;return zn&&zn.indexOf(_n.key)>-1&&applyCompletion(Ce,$n),!1}})),baseTheme$1=EditorView.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class FieldPos{constructor(Ce,ke,$n,Hn){this.field=Ce,this.line=ke,this.from=$n,this.to=Hn}}class FieldRange{constructor(Ce,ke,$n){this.field=Ce,this.from=ke,this.to=$n}map(Ce){let ke=Ce.mapPos(this.from,-1,MapMode.TrackDel),$n=Ce.mapPos(this.to,1,MapMode.TrackDel);return ke==null||$n==null?null:new FieldRange(this.field,ke,$n)}}class Snippet{constructor(Ce,ke){this.lines=Ce,this.fieldPositions=ke}instantiate(Ce,ke){let $n=[],Hn=[ke],zn=Ce.doc.lineAt(ke),Zn=/^\s*/.exec(zn.text)[0];for(let Yn of this.lines){if($n.length){let Jn=Zn,to=/^\t*/.exec(Yn)[0].length;for(let io=0;ionew FieldRange(Yn.field,Hn[Yn.line]+Yn.from,Hn[Yn.line]+Yn.to));return{text:$n,ranges:qn}}static parse(Ce){let ke=[],$n=[],Hn=[],zn;for(let Zn of Ce.split(/\r\n?|\n/)){for(;zn=/[#$]\{(?:(\d+)(?::([^}]*))?|((?:\\[{}]|[^}])*))\}/.exec(Zn);){let qn=zn[1]?+zn[1]:null,Yn=zn[2]||zn[3]||"",Jn=-1,to=Yn.replace(/\\[{}]/g,io=>io[1]);for(let io=0;io=Jn&&uo.field++}Hn.push(new FieldPos(Jn,$n.length,zn.index,zn.index+to.length)),Zn=Zn.slice(0,zn.index)+Yn+Zn.slice(zn.index+zn[0].length)}Zn=Zn.replace(/\\([{}])/g,(qn,Yn,Jn)=>{for(let to of Hn)to.line==$n.length&&to.from>Jn&&(to.from--,to.to--);return Yn}),$n.push(Zn)}return new Snippet($n,Hn)}}let fieldMarker=Decoration.widget({widget:new class extends WidgetType{toDOM(){let _n=document.createElement("span");return _n.className="cm-snippetFieldPosition",_n}ignoreEvent(){return!1}}}),fieldRange=Decoration.mark({class:"cm-snippetField"});class ActiveSnippet{constructor(Ce,ke){this.ranges=Ce,this.active=ke,this.deco=Decoration.set(Ce.map($n=>($n.from==$n.to?fieldMarker:fieldRange).range($n.from,$n.to)))}map(Ce){let ke=[];for(let $n of this.ranges){let Hn=$n.map(Ce);if(!Hn)return null;ke.push(Hn)}return new ActiveSnippet(ke,this.active)}selectionInsideField(Ce){return Ce.ranges.every(ke=>this.ranges.some($n=>$n.field==this.active&&$n.from<=ke.from&&$n.to>=ke.to))}}const setActive=StateEffect.define({map(_n,Ce){return _n&&_n.map(Ce)}}),moveToField=StateEffect.define(),snippetState=StateField.define({create(){return null},update(_n,Ce){for(let ke of Ce.effects){if(ke.is(setActive))return ke.value;if(ke.is(moveToField)&&_n)return new ActiveSnippet(_n.ranges,ke.value)}return _n&&Ce.docChanged&&(_n=_n.map(Ce.changes)),_n&&Ce.selection&&!_n.selectionInsideField(Ce.selection)&&(_n=null),_n},provide:_n=>EditorView.decorations.from(_n,Ce=>Ce?Ce.deco:Decoration.none)});function fieldSelection(_n,Ce){return EditorSelection.create(_n.filter(ke=>ke.field==Ce).map(ke=>EditorSelection.range(ke.from,ke.to)))}function snippet(_n){let Ce=Snippet.parse(_n);return(ke,$n,Hn,zn)=>{let{text:Zn,ranges:qn}=Ce.instantiate(ke.state,Hn),Yn={changes:{from:Hn,to:zn,insert:Text.of(Zn)},scrollIntoView:!0,annotations:$n?[pickedCompletion.of($n),Transaction.userEvent.of("input.complete")]:void 0};if(qn.length&&(Yn.selection=fieldSelection(qn,0)),qn.some(Jn=>Jn.field>0)){let Jn=new ActiveSnippet(qn,0),to=Yn.effects=[setActive.of(Jn)];ke.state.field(snippetState,!1)===void 0&&to.push(StateEffect.appendConfig.of([snippetState,addSnippetKeymap,snippetPointerHandler,baseTheme$1]))}ke.dispatch(ke.state.update(Yn))}}function moveField(_n){return({state:Ce,dispatch:ke})=>{let $n=Ce.field(snippetState,!1);if(!$n||_n<0&&$n.active==0)return!1;let Hn=$n.active+_n,zn=_n>0&&!$n.ranges.some(Zn=>Zn.field==Hn+_n);return ke(Ce.update({selection:fieldSelection($n.ranges,Hn),effects:setActive.of(zn?null:new ActiveSnippet($n.ranges,Hn)),scrollIntoView:!0})),!0}}const clearSnippet=({state:_n,dispatch:Ce})=>_n.field(snippetState,!1)?(Ce(_n.update({effects:setActive.of(null)})),!0):!1,nextSnippetField=moveField(1),prevSnippetField=moveField(-1),defaultSnippetKeymap=[{key:"Tab",run:nextSnippetField,shift:prevSnippetField},{key:"Escape",run:clearSnippet}],snippetKeymap=Facet.define({combine(_n){return _n.length?_n[0]:defaultSnippetKeymap}}),addSnippetKeymap=Prec.highest(keymap.compute([snippetKeymap],_n=>_n.facet(snippetKeymap)));function snippetCompletion(_n,Ce){return Object.assign(Object.assign({},Ce),{apply:snippet(_n)})}const snippetPointerHandler=EditorView.domEventHandlers({mousedown(_n,Ce){let ke=Ce.state.field(snippetState,!1),$n;if(!ke||($n=Ce.posAtCoords({x:_n.clientX,y:_n.clientY}))==null)return!1;let Hn=ke.ranges.find(zn=>zn.from<=$n&&zn.to>=$n);return!Hn||Hn.field==ke.active?!1:(Ce.dispatch({selection:fieldSelection(ke.ranges,Hn.field),effects:setActive.of(ke.ranges.some(zn=>zn.field>Hn.field)?new ActiveSnippet(ke.ranges,Hn.field):null),scrollIntoView:!0}),!0)}}),defaults={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},closeBracketEffect=StateEffect.define({map(_n,Ce){let ke=Ce.mapPos(_n,-1,MapMode.TrackAfter);return ke??void 0}}),closedBracket=new class extends RangeValue{};closedBracket.startSide=1;closedBracket.endSide=-1;const bracketState=StateField.define({create(){return RangeSet.empty},update(_n,Ce){if(_n=_n.map(Ce.changes),Ce.selection){let ke=Ce.state.doc.lineAt(Ce.selection.main.head);_n=_n.update({filter:$n=>$n>=ke.from&&$n<=ke.to})}for(let ke of Ce.effects)ke.is(closeBracketEffect)&&(_n=_n.update({add:[closedBracket.range(ke.value,ke.value+1)]}));return _n}});function closeBrackets(){return[inputHandler,bracketState]}const definedClosing="()[]{}<>";function closing(_n){for(let Ce=0;Ce{if((android$1?_n.composing:_n.compositionStarted)||_n.state.readOnly)return!1;let Hn=_n.state.selection.main;if($n.length>2||$n.length==2&&codePointSize(codePointAt($n,0))==1||Ce!=Hn.from||ke!=Hn.to)return!1;let zn=insertBracket(_n.state,$n);return zn?(_n.dispatch(zn),!0):!1}),deleteBracketPair=({state:_n,dispatch:Ce})=>{if(_n.readOnly)return!1;let $n=config(_n,_n.selection.main.head).brackets||defaults.brackets,Hn=null,zn=_n.changeByRange(Zn=>{if(Zn.empty){let qn=prevChar(_n.doc,Zn.head);for(let Yn of $n)if(Yn==qn&&nextChar(_n.doc,Zn.head)==closing(codePointAt(Yn,0)))return{changes:{from:Zn.head-Yn.length,to:Zn.head+Yn.length},range:EditorSelection.cursor(Zn.head-Yn.length)}}return{range:Hn=Zn}});return Hn||Ce(_n.update(zn,{scrollIntoView:!0,userEvent:"delete.backward"})),!Hn},closeBracketsKeymap=[{key:"Backspace",run:deleteBracketPair}];function insertBracket(_n,Ce){let ke=config(_n,_n.selection.main.head),$n=ke.brackets||defaults.brackets;for(let Hn of $n){let zn=closing(codePointAt(Hn,0));if(Ce==Hn)return zn==Hn?handleSame(_n,Hn,$n.indexOf(Hn+Hn+Hn)>-1,ke):handleOpen(_n,Hn,zn,ke.before||defaults.before);if(Ce==zn&&closedBracketAt(_n,_n.selection.main.from))return handleClose(_n,Hn,zn)}return null}function closedBracketAt(_n,Ce){let ke=!1;return _n.field(bracketState).between(0,_n.doc.length,$n=>{$n==Ce&&(ke=!0)}),ke}function nextChar(_n,Ce){let ke=_n.sliceString(Ce,Ce+2);return ke.slice(0,codePointSize(codePointAt(ke,0)))}function prevChar(_n,Ce){let ke=_n.sliceString(Ce-2,Ce);return codePointSize(codePointAt(ke,0))==ke.length?ke:ke.slice(1)}function handleOpen(_n,Ce,ke,$n){let Hn=null,zn=_n.changeByRange(Zn=>{if(!Zn.empty)return{changes:[{insert:Ce,from:Zn.from},{insert:ke,from:Zn.to}],effects:closeBracketEffect.of(Zn.to+Ce.length),range:EditorSelection.range(Zn.anchor+Ce.length,Zn.head+Ce.length)};let qn=nextChar(_n.doc,Zn.head);return!qn||/\s/.test(qn)||$n.indexOf(qn)>-1?{changes:{insert:Ce+ke,from:Zn.head},effects:closeBracketEffect.of(Zn.head+Ce.length),range:EditorSelection.cursor(Zn.head+Ce.length)}:{range:Hn=Zn}});return Hn?null:_n.update(zn,{scrollIntoView:!0,userEvent:"input.type"})}function handleClose(_n,Ce,ke){let $n=null,Hn=_n.changeByRange(zn=>zn.empty&&nextChar(_n.doc,zn.head)==ke?{changes:{from:zn.head,to:zn.head+ke.length,insert:ke},range:EditorSelection.cursor(zn.head+ke.length)}:$n={range:zn});return $n?null:_n.update(Hn,{scrollIntoView:!0,userEvent:"input.type"})}function handleSame(_n,Ce,ke,$n){let Hn=$n.stringPrefixes||defaults.stringPrefixes,zn=null,Zn=_n.changeByRange(qn=>{if(!qn.empty)return{changes:[{insert:Ce,from:qn.from},{insert:Ce,from:qn.to}],effects:closeBracketEffect.of(qn.to+Ce.length),range:EditorSelection.range(qn.anchor+Ce.length,qn.head+Ce.length)};let Yn=qn.head,Jn=nextChar(_n.doc,Yn),to;if(Jn==Ce){if(nodeStart(_n,Yn))return{changes:{insert:Ce+Ce,from:Yn},effects:closeBracketEffect.of(Yn+Ce.length),range:EditorSelection.cursor(Yn+Ce.length)};if(closedBracketAt(_n,Yn)){let uo=ke&&_n.sliceDoc(Yn,Yn+Ce.length*3)==Ce+Ce+Ce?Ce+Ce+Ce:Ce;return{changes:{from:Yn,to:Yn+uo.length,insert:uo},range:EditorSelection.cursor(Yn+uo.length)}}}else{if(ke&&_n.sliceDoc(Yn-2*Ce.length,Yn)==Ce+Ce&&(to=canStartStringAt(_n,Yn-2*Ce.length,Hn))>-1&&nodeStart(_n,to))return{changes:{insert:Ce+Ce+Ce+Ce,from:Yn},effects:closeBracketEffect.of(Yn+Ce.length),range:EditorSelection.cursor(Yn+Ce.length)};if(_n.charCategorizer(Yn)(Jn)!=CharCategory.Word&&canStartStringAt(_n,Yn,Hn)>-1&&!probablyInString(_n,Yn,Ce,Hn))return{changes:{insert:Ce+Ce,from:Yn},effects:closeBracketEffect.of(Yn+Ce.length),range:EditorSelection.cursor(Yn+Ce.length)}}return{range:zn=qn}});return zn?null:_n.update(Zn,{scrollIntoView:!0,userEvent:"input.type"})}function nodeStart(_n,Ce){let ke=syntaxTree(_n).resolveInner(Ce+1);return ke.parent&&ke.from==Ce}function probablyInString(_n,Ce,ke,$n){let Hn=syntaxTree(_n).resolveInner(Ce,-1),zn=$n.reduce((Zn,qn)=>Math.max(Zn,qn.length),0);for(let Zn=0;Zn<5;Zn++){let qn=_n.sliceDoc(Hn.from,Math.min(Hn.to,Hn.from+ke.length+zn)),Yn=qn.indexOf(ke);if(!Yn||Yn>-1&&$n.indexOf(qn.slice(0,Yn))>-1){let to=Hn.firstChild;for(;to&&to.from==Hn.from&&to.to-to.from>ke.length+Yn;){if(_n.sliceDoc(to.to-ke.length,to.to)==ke)return!1;to=to.firstChild}return!0}let Jn=Hn.to==Ce&&Hn.parent;if(!Jn)break;Hn=Jn}return!1}function canStartStringAt(_n,Ce,ke){let $n=_n.charCategorizer(Ce);if($n(_n.sliceDoc(Ce-1,Ce))!=CharCategory.Word)return Ce;for(let Hn of ke){let zn=Ce-Hn.length;if(_n.sliceDoc(zn,Ce)==Hn&&$n(_n.sliceDoc(zn-1,zn))!=CharCategory.Word)return zn}return-1}function autocompletion(_n={}){return[commitCharacters,completionState,completionConfig.of(_n),completionPlugin,completionKeymapExt,baseTheme$1]}const completionKeymap=[{key:"Ctrl-Space",run:startCompletion},{key:"Escape",run:closeCompletion},{key:"ArrowDown",run:moveCompletionSelection(!0)},{key:"ArrowUp",run:moveCompletionSelection(!1)},{key:"PageDown",run:moveCompletionSelection(!0,"page")},{key:"PageUp",run:moveCompletionSelection(!1,"page")},{key:"Enter",run:acceptCompletion}],completionKeymapExt=Prec.highest(keymap.computeN([completionConfig],_n=>_n.facet(completionConfig).defaultKeymap?[completionKeymap]:[]));class SelectedDiagnostic{constructor(Ce,ke,$n){this.from=Ce,this.to=ke,this.diagnostic=$n}}class LintState{constructor(Ce,ke,$n){this.diagnostics=Ce,this.panel=ke,this.selected=$n}static init(Ce,ke,$n){let Hn=Ce,zn=$n.facet(lintConfig).markerFilter;zn&&(Hn=zn(Hn,$n));let Zn=Decoration.set(Hn.map(qn=>qn.from==qn.to||qn.from==qn.to-1&&$n.doc.lineAt(qn.from).to==qn.from?Decoration.widget({widget:new DiagnosticWidget(qn),diagnostic:qn}).range(qn.from):Decoration.mark({attributes:{class:"cm-lintRange cm-lintRange-"+qn.severity+(qn.markClass?" "+qn.markClass:"")},diagnostic:qn}).range(qn.from,qn.to)),!0);return new LintState(Zn,ke,findDiagnostic(Zn))}}function findDiagnostic(_n,Ce=null,ke=0){let $n=null;return _n.between(ke,1e9,(Hn,zn,{spec:Zn})=>{if(!(Ce&&Zn.diagnostic!=Ce))return $n=new SelectedDiagnostic(Hn,zn,Zn.diagnostic),!1}),$n}function hideTooltip(_n,Ce){let ke=Ce.pos,$n=Ce.end||ke,Hn=_n.state.facet(lintConfig).hideOn(_n,ke,$n);if(Hn!=null)return Hn;let zn=_n.startState.doc.lineAt(Ce.pos);return!!(_n.effects.some(Zn=>Zn.is(setDiagnosticsEffect))||_n.changes.touchesRange(zn.from,Math.max(zn.to,$n)))}function maybeEnableLint(_n,Ce){return _n.field(lintState,!1)?Ce:Ce.concat(StateEffect.appendConfig.of(lintExtensions))}function setDiagnostics(_n,Ce){return{effects:maybeEnableLint(_n,[setDiagnosticsEffect.of(Ce)])}}const setDiagnosticsEffect=StateEffect.define(),togglePanel=StateEffect.define(),movePanelSelection=StateEffect.define(),lintState=StateField.define({create(){return new LintState(Decoration.none,null,null)},update(_n,Ce){if(Ce.docChanged&&_n.diagnostics.size){let ke=_n.diagnostics.map(Ce.changes),$n=null,Hn=_n.panel;if(_n.selected){let zn=Ce.changes.mapPos(_n.selected.from,1);$n=findDiagnostic(ke,_n.selected.diagnostic,zn)||findDiagnostic(ke,null,zn)}!ke.size&&Hn&&Ce.state.facet(lintConfig).autoPanel&&(Hn=null),_n=new LintState(ke,Hn,$n)}for(let ke of Ce.effects)if(ke.is(setDiagnosticsEffect)){let $n=Ce.state.facet(lintConfig).autoPanel?ke.value.length?LintPanel.open:null:_n.panel;_n=LintState.init(ke.value,$n,Ce.state)}else ke.is(togglePanel)?_n=new LintState(_n.diagnostics,ke.value?LintPanel.open:null,_n.selected):ke.is(movePanelSelection)&&(_n=new LintState(_n.diagnostics,_n.panel,ke.value));return _n},provide:_n=>[showPanel.from(_n,Ce=>Ce.panel),EditorView.decorations.from(_n,Ce=>Ce.diagnostics)]}),activeMark=Decoration.mark({class:"cm-lintRange cm-lintRange-active"});function lintTooltip(_n,Ce,ke){let{diagnostics:$n}=_n.state.field(lintState),Hn=[],zn=2e8,Zn=0;$n.between(Ce-(ke<0?1:0),Ce+(ke>0?1:0),(Yn,Jn,{spec:to})=>{Ce>=Yn&&Ce<=Jn&&(Yn==Jn||(Ce>Yn||ke>0)&&(CerenderDiagnostic(_n,ke,!1)))}const openLintPanel=_n=>{let Ce=_n.state.field(lintState,!1);(!Ce||!Ce.panel)&&_n.dispatch({effects:maybeEnableLint(_n.state,[togglePanel.of(!0)])});let ke=getPanel(_n,LintPanel.open);return ke&&ke.dom.querySelector(".cm-panel-lint ul").focus(),!0},closeLintPanel=_n=>{let Ce=_n.state.field(lintState,!1);return!Ce||!Ce.panel?!1:(_n.dispatch({effects:togglePanel.of(!1)}),!0)},nextDiagnostic=_n=>{let Ce=_n.state.field(lintState,!1);if(!Ce)return!1;let ke=_n.state.selection.main,$n=Ce.diagnostics.iter(ke.to+1);return!$n.value&&($n=Ce.diagnostics.iter(0),!$n.value||$n.from==ke.from&&$n.to==ke.to)?!1:(_n.dispatch({selection:{anchor:$n.from,head:$n.to},scrollIntoView:!0}),!0)},lintKeymap=[{key:"Mod-Shift-m",run:openLintPanel,preventDefault:!0},{key:"F8",run:nextDiagnostic}],lintPlugin=ViewPlugin.fromClass(class{constructor(_n){this.view=_n,this.timeout=-1,this.set=!0;let{delay:Ce}=_n.state.facet(lintConfig);this.lintTime=Date.now()+Ce,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,Ce)}run(){clearTimeout(this.timeout);let _n=Date.now();if(_nPromise.resolve($n(this.view)))).then($n=>{let Hn=$n.reduce((zn,Zn)=>zn.concat(Zn));this.view.state.doc==Ce.doc&&this.view.dispatch(setDiagnostics(this.view.state,Hn))},$n=>{logException(this.view.state,$n)})}}update(_n){let Ce=_n.state.facet(lintConfig);(_n.docChanged||Ce!=_n.startState.facet(lintConfig)||Ce.needsRefresh&&Ce.needsRefresh(_n))&&(this.lintTime=Date.now()+Ce.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,Ce.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}}),lintConfig=Facet.define({combine(_n){return Object.assign({sources:_n.map(Ce=>Ce.source).filter(Ce=>Ce!=null)},combineConfig(_n.map(Ce=>Ce.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{needsRefresh:(Ce,ke)=>Ce?ke?$n=>Ce($n)||ke($n):Ce:ke}))}});function linter(_n,Ce={}){return[lintConfig.of({source:_n,config:Ce}),lintPlugin,lintExtensions]}function assignKeys(_n){let Ce=[];if(_n)e:for(let{name:ke}of _n){for(let $n=0;$nzn.toLowerCase()==Hn.toLowerCase())){Ce.push(Hn);continue e}}Ce.push("")}return Ce}function renderDiagnostic(_n,Ce,ke){var $n;let Hn=ke?assignKeys(Ce.actions):[];return crelt("li",{class:"cm-diagnostic cm-diagnostic-"+Ce.severity},crelt("span",{class:"cm-diagnosticText"},Ce.renderMessage?Ce.renderMessage(_n):Ce.message),($n=Ce.actions)===null||$n===void 0?void 0:$n.map((zn,Zn)=>{let qn=!1,Yn=uo=>{if(uo.preventDefault(),qn)return;qn=!0;let mo=findDiagnostic(_n.state.field(lintState).diagnostics,Ce);mo&&zn.apply(_n,mo.from,mo.to)},{name:Jn}=zn,to=Hn[Zn]?Jn.indexOf(Hn[Zn]):-1,io=to<0?Jn:[Jn.slice(0,to),crelt("u",Jn.slice(to,to+1)),Jn.slice(to+1)];return crelt("button",{type:"button",class:"cm-diagnosticAction",onclick:Yn,onmousedown:Yn,"aria-label":` Action: ${Jn}${to<0?"":` (access key "${Hn[Zn]})"`}.`},io)}),Ce.source&&crelt("div",{class:"cm-diagnosticSource"},Ce.source))}class DiagnosticWidget extends WidgetType{constructor(Ce){super(),this.diagnostic=Ce}eq(Ce){return Ce.diagnostic==this.diagnostic}toDOM(){return crelt("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class PanelItem{constructor(Ce,ke){this.diagnostic=ke,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=renderDiagnostic(Ce,ke,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class LintPanel{constructor(Ce){this.view=Ce,this.items=[];let ke=Hn=>{if(Hn.keyCode==27)closeLintPanel(this.view),this.view.focus();else if(Hn.keyCode==38||Hn.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(Hn.keyCode==40||Hn.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(Hn.keyCode==36)this.moveSelection(0);else if(Hn.keyCode==35)this.moveSelection(this.items.length-1);else if(Hn.keyCode==13)this.view.focus();else if(Hn.keyCode>=65&&Hn.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:zn}=this.items[this.selectedIndex],Zn=assignKeys(zn.actions);for(let qn=0;qn{for(let zn=0;zncloseLintPanel(this.view)},"×")),this.update()}get selectedIndex(){let Ce=this.view.state.field(lintState).selected;if(!Ce)return-1;for(let ke=0;ke{let Jn=-1,to;for(let io=$n;io$n&&(this.items.splice($n,Jn-$n),Hn=!0)),ke&&to.diagnostic==ke.diagnostic?to.dom.hasAttribute("aria-selected")||(to.dom.setAttribute("aria-selected","true"),zn=to):to.dom.hasAttribute("aria-selected")&&to.dom.removeAttribute("aria-selected"),$n++});$n({sel:zn.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:Zn,panel:qn})=>{let Yn=qn.height/this.list.offsetHeight;Zn.topqn.bottom&&(this.list.scrollTop+=(Zn.bottom-qn.bottom)/Yn)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),Hn&&this.sync()}sync(){let Ce=this.list.firstChild;function ke(){let $n=Ce;Ce=$n.nextSibling,$n.remove()}for(let $n of this.items)if($n.dom.parentNode==this.list){for(;Ce!=$n.dom;)ke();Ce=$n.dom.nextSibling}else this.list.insertBefore($n.dom,Ce);for(;Ce;)ke()}moveSelection(Ce){if(this.selectedIndex<0)return;let ke=this.view.state.field(lintState),$n=findDiagnostic(ke.diagnostics,this.items[Ce].diagnostic);$n&&this.view.dispatch({selection:{anchor:$n.from,head:$n.to},scrollIntoView:!0,effects:movePanelSelection.of($n)})}static open(Ce){return new LintPanel(Ce)}}function svg(_n,Ce='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,${encodeURIComponent(_n)}')`}function underline(_n){return svg(``,'width="6" height="3"')}const baseTheme=EditorView.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:underline("#d11")},".cm-lintRange-warning":{backgroundImage:underline("orange")},".cm-lintRange-info":{backgroundImage:underline("#999")},".cm-lintRange-hint":{backgroundImage:underline("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}});function severityWeight(_n){return _n=="error"?4:_n=="warning"?3:_n=="info"?2:1}class LintGutterMarker extends GutterMarker{constructor(Ce){super(),this.diagnostics=Ce,this.severity=Ce.reduce((ke,$n)=>severityWeight(ke)gutterMarkerMouseOver(Ce,ke,$n)),ke}}function trackHoverOn(_n,Ce){let ke=$n=>{let Hn=Ce.getBoundingClientRect();if(!($n.clientX>Hn.left-10&&$n.clientXHn.top-10&&$n.clientYCe.getBoundingClientRect()}}})}),Ce.onmouseout=Ce.onmousemove=null,trackHoverOn(_n,Ce)}let{hoverTime:Hn}=_n.state.facet(lintGutterConfig),zn=setTimeout($n,Hn);Ce.onmouseout=()=>{clearTimeout(zn),Ce.onmouseout=Ce.onmousemove=null},Ce.onmousemove=()=>{clearTimeout(zn),zn=setTimeout($n,Hn)}}function markersForDiagnostics(_n,Ce){let ke=Object.create(null);for(let Hn of Ce){let zn=_n.lineAt(Hn.from);(ke[zn.from]||(ke[zn.from]=[])).push(Hn)}let $n=[];for(let Hn in ke)$n.push(new LintGutterMarker(ke[Hn]).range(+Hn));return RangeSet.of($n,!0)}const lintGutterExtension=gutter({class:"cm-gutter-lint",markers:_n=>_n.state.field(lintGutterMarkers)}),lintGutterMarkers=StateField.define({create(){return RangeSet.empty},update(_n,Ce){_n=_n.map(Ce.changes);let ke=Ce.state.facet(lintGutterConfig).markerFilter;for(let $n of Ce.effects)if($n.is(setDiagnosticsEffect)){let Hn=$n.value;ke&&(Hn=ke(Hn||[],Ce.state)),_n=markersForDiagnostics(Ce.state.doc,Hn.slice(0))}return _n}}),setLintGutterTooltip=StateEffect.define(),lintGutterTooltip=StateField.define({create(){return null},update(_n,Ce){return _n&&Ce.docChanged&&(_n=hideTooltip(Ce,_n)?null:Object.assign(Object.assign({},_n),{pos:Ce.changes.mapPos(_n.pos)})),Ce.effects.reduce((ke,$n)=>$n.is(setLintGutterTooltip)?$n.value:ke,_n)},provide:_n=>showTooltip.from(_n)}),lintGutterTheme=EditorView.baseTheme({".cm-gutter-lint":{width:"1.4em","& .cm-gutterElement":{padding:".2em"}},".cm-lint-marker":{width:"1em",height:"1em"},".cm-lint-marker-info":{content:svg('')},".cm-lint-marker-warning":{content:svg('')},".cm-lint-marker-error":{content:svg('')}}),lintExtensions=[lintState,EditorView.decorations.compute([lintState],_n=>{let{selected:Ce,panel:ke}=_n.field(lintState);return!Ce||!ke||Ce.from==Ce.to?Decoration.none:Decoration.set([activeMark.range(Ce.from,Ce.to)])}),hoverTooltip(lintTooltip,{hideOn:hideTooltip}),baseTheme],lintGutterConfig=Facet.define({combine(_n){return combineConfig(_n,{hoverTime:300,markerFilter:null,tooltipFilter:null})}});function lintGutter(_n={}){return[lintGutterConfig.of(_n),lintGutterMarkers,lintGutterExtension,lintGutterTheme,lintGutterTooltip]}const basicSetup=[lineNumbers(),highlightActiveLineGutter(),highlightSpecialChars(),history$1(),foldGutter(),drawSelection(),dropCursor(),EditorState.allowMultipleSelections.of(!0),indentOnInput(),syntaxHighlighting(defaultHighlightStyle,{fallback:!0}),bracketMatching(),closeBrackets(),autocompletion(),rectangularSelection(),crosshairCursor(),highlightActiveLine(),highlightSelectionMatches(),keymap.of([...closeBracketsKeymap,...defaultKeymap,...searchKeymap,...historyKeymap,...foldKeymap,...completionKeymap,...lintKeymap])];var define_process_env_default={};class Stack{constructor(Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to=0,io){this.p=Ce,this.stack=ke,this.state=$n,this.reducePos=Hn,this.pos=zn,this.score=Zn,this.buffer=qn,this.bufferBase=Yn,this.curContext=Jn,this.lookAhead=to,this.parent=io}toString(){return`[${this.stack.filter((Ce,ke)=>ke%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(Ce,ke,$n=0){let Hn=Ce.parser.context;return new Stack(Ce,[],ke,$n,$n,0,[],0,Hn?new StackContext(Hn,Hn.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(Ce,ke){this.stack.push(this.state,ke,this.bufferBase+this.buffer.length),this.state=Ce}reduce(Ce){var ke;let $n=Ce>>19,Hn=Ce&65535,{parser:zn}=this.p,Zn=this.reducePos=2e3&&!(!((ke=this.p.parser.nodeSet.types[Hn])===null||ke===void 0)&&ke.isAnonymous)&&(Jn==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=to):this.p.lastBigReductionSizeYn;)this.stack.pop();this.reduceContext(Hn,Jn)}storeNode(Ce,ke,$n,Hn=4,zn=!1){if(Ce==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&Zn.buffer[qn-4]==0&&Zn.buffer[qn-1]>-1){if(ke==$n)return;if(Zn.buffer[qn-2]>=ke){Zn.buffer[qn-2]=$n;return}}}if(!zn||this.pos==$n)this.buffer.push(Ce,ke,$n,Hn);else{let Zn=this.buffer.length;if(Zn>0&&this.buffer[Zn-4]!=0){let qn=!1;for(let Yn=Zn;Yn>0&&this.buffer[Yn-2]>$n;Yn-=4)if(this.buffer[Yn-1]>=0){qn=!0;break}if(qn)for(;Zn>0&&this.buffer[Zn-2]>$n;)this.buffer[Zn]=this.buffer[Zn-4],this.buffer[Zn+1]=this.buffer[Zn-3],this.buffer[Zn+2]=this.buffer[Zn-2],this.buffer[Zn+3]=this.buffer[Zn-1],Zn-=4,Hn>4&&(Hn-=4)}this.buffer[Zn]=Ce,this.buffer[Zn+1]=ke,this.buffer[Zn+2]=$n,this.buffer[Zn+3]=Hn}}shift(Ce,ke,$n,Hn){if(Ce&131072)this.pushState(Ce&65535,this.pos);else if(Ce&262144)this.pos=Hn,this.shiftContext(ke,$n),ke<=this.p.parser.maxNode&&this.buffer.push(ke,$n,Hn,4);else{let zn=Ce,{parser:Zn}=this.p;(Hn>this.pos||ke<=Zn.maxNode)&&(this.pos=Hn,Zn.stateFlag(zn,1)||(this.reducePos=Hn)),this.pushState(zn,$n),this.shiftContext(ke,$n),ke<=Zn.maxNode&&this.buffer.push(ke,$n,Hn,4)}}apply(Ce,ke,$n,Hn){Ce&65536?this.reduce(Ce):this.shift(Ce,ke,$n,Hn)}useNode(Ce,ke){let $n=this.p.reused.length-1;($n<0||this.p.reused[$n]!=Ce)&&(this.p.reused.push(Ce),$n++);let Hn=this.pos;this.reducePos=this.pos=Hn+Ce.length,this.pushState(ke,Hn),this.buffer.push($n,Hn,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,Ce,this,this.p.stream.reset(this.pos-Ce.length)))}split(){let Ce=this,ke=Ce.buffer.length;for(;ke>0&&Ce.buffer[ke-2]>Ce.reducePos;)ke-=4;let $n=Ce.buffer.slice(ke),Hn=Ce.bufferBase+ke;for(;Ce&&Hn==Ce.bufferBase;)Ce=Ce.parent;return new Stack(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,$n,Hn,this.curContext,this.lookAhead,Ce)}recoverByDelete(Ce,ke){let $n=Ce<=this.p.parser.maxNode;$n&&this.storeNode(Ce,this.pos,ke,4),this.storeNode(0,this.pos,ke,$n?8:4),this.pos=this.reducePos=ke,this.score-=190}canShift(Ce){for(let ke=new SimulatedStack(this);;){let $n=this.p.parser.stateSlot(ke.state,4)||this.p.parser.hasAction(ke.state,Ce);if($n==0)return!1;if(!($n&65536))return!0;ke.reduce($n)}}recoverByInsert(Ce){if(this.stack.length>=300)return[];let ke=this.p.parser.nextStates(this.state);if(ke.length>8||this.stack.length>=120){let Hn=[];for(let zn=0,Zn;znYn&1&&qn==Zn)||Hn.push(ke[zn],Zn)}ke=Hn}let $n=[];for(let Hn=0;Hn>19,Hn=ke&65535,zn=this.stack.length-$n*3;if(zn<0||Ce.getGoto(this.stack[zn],Hn,!1)<0){let Zn=this.findForcedReduction();if(Zn==null)return!1;ke=Zn}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(ke),!0}findForcedReduction(){let{parser:Ce}=this.p,ke=[],$n=(Hn,zn)=>{if(!ke.includes(Hn))return ke.push(Hn),Ce.allActions(Hn,Zn=>{if(!(Zn&393216))if(Zn&65536){let qn=(Zn>>19)-zn;if(qn>1){let Yn=Zn&65535,Jn=this.stack.length-qn*3;if(Jn>=0&&Ce.getGoto(this.stack[Jn],Yn,!1)>=0)return qn<<19|65536|Yn}}else{let qn=$n(Zn,zn+1);if(qn!=null)return qn}})};return $n(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:Ce}=this.p;return Ce.data[Ce.stateSlot(this.state,1)]==65535&&!Ce.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(Ce){if(this.state!=Ce.state||this.stack.length!=Ce.stack.length)return!1;for(let ke=0;kethis.lookAhead&&(this.emitLookAhead(),this.lookAhead=Ce)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class StackContext{constructor(Ce,ke){this.tracker=Ce,this.context=ke,this.hash=Ce.strict?Ce.hash(ke):0}}class SimulatedStack{constructor(Ce){this.start=Ce,this.state=Ce.state,this.stack=Ce.stack,this.base=this.stack.length}reduce(Ce){let ke=Ce&65535,$n=Ce>>19;$n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=($n-1)*3;let Hn=this.start.p.parser.getGoto(this.stack[this.base-3],ke,!0);this.state=Hn}}class StackBufferCursor{constructor(Ce,ke,$n){this.stack=Ce,this.pos=ke,this.index=$n,this.buffer=Ce.buffer,this.index==0&&this.maybeNext()}static create(Ce,ke=Ce.bufferBase+Ce.buffer.length){return new StackBufferCursor(Ce,ke,ke-Ce.bufferBase)}maybeNext(){let Ce=this.stack.parent;Ce!=null&&(this.index=this.stack.bufferBase-Ce.bufferBase,this.stack=Ce,this.buffer=Ce.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new StackBufferCursor(this.stack,this.pos,this.index)}}function decodeArray(_n,Ce=Uint16Array){if(typeof _n!="string")return _n;let ke=null;for(let $n=0,Hn=0;$n<_n.length;){let zn=0;for(;;){let Zn=_n.charCodeAt($n++),qn=!1;if(Zn==126){zn=65535;break}Zn>=92&&Zn--,Zn>=34&&Zn--;let Yn=Zn-32;if(Yn>=46&&(Yn-=46,qn=!0),zn+=Yn,qn)break;zn*=46}ke?ke[Hn++]=zn:ke=new Ce(zn)}return ke}class CachedToken{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const nullToken=new CachedToken;class InputStream{constructor(Ce,ke){this.input=Ce,this.ranges=ke,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=nullToken,this.rangeIndex=0,this.pos=this.chunkPos=ke[0].from,this.range=ke[0],this.end=ke[ke.length-1].to,this.readNext()}resolveOffset(Ce,ke){let $n=this.range,Hn=this.rangeIndex,zn=this.pos+Ce;for(;zn<$n.from;){if(!Hn)return null;let Zn=this.ranges[--Hn];zn-=$n.from-Zn.to,$n=Zn}for(;ke<0?zn>$n.to:zn>=$n.to;){if(Hn==this.ranges.length-1)return null;let Zn=this.ranges[++Hn];zn+=Zn.from-$n.to,$n=Zn}return zn}clipPos(Ce){if(Ce>=this.range.from&&CeCe)return Math.max(Ce,ke.from);return this.end}peek(Ce){let ke=this.chunkOff+Ce,$n,Hn;if(ke>=0&&ke=this.chunk2Pos&&$nqn.to&&(this.chunk2=this.chunk2.slice(0,qn.to-$n)),Hn=this.chunk2.charCodeAt(0)}}return $n>=this.token.lookAhead&&(this.token.lookAhead=$n+1),Hn}acceptToken(Ce,ke=0){let $n=ke?this.resolveOffset(ke,-1):this.pos;if($n==null||$n=this.chunk2Pos&&this.posthis.range.to?Ce.slice(0,this.range.to-this.pos):Ce,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(Ce=1){for(this.chunkOff+=Ce;this.pos+Ce>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();Ce-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=Ce,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(Ce,ke){if(ke?(this.token=ke,ke.start=Ce,ke.lookAhead=Ce+1,ke.value=ke.extended=-1):this.token=nullToken,this.pos!=Ce){if(this.pos=Ce,Ce==this.end)return this.setDone(),this;for(;Ce=this.range.to;)this.range=this.ranges[++this.rangeIndex];Ce>=this.chunkPos&&Ce=this.chunkPos&&ke<=this.chunkPos+this.chunk.length)return this.chunk.slice(Ce-this.chunkPos,ke-this.chunkPos);if(Ce>=this.chunk2Pos&&ke<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(Ce-this.chunk2Pos,ke-this.chunk2Pos);if(Ce>=this.range.from&&ke<=this.range.to)return this.input.read(Ce,ke);let $n="";for(let Hn of this.ranges){if(Hn.from>=ke)break;Hn.to>Ce&&($n+=this.input.read(Math.max(Hn.from,Ce),Math.min(Hn.to,ke)))}return $n}}class TokenGroup{constructor(Ce,ke){this.data=Ce,this.id=ke}token(Ce,ke){let{parser:$n}=ke.p;readToken(this.data,Ce,ke,this.id,$n.data,$n.tokenPrecTable)}}TokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class LocalTokenGroup{constructor(Ce,ke,$n){this.precTable=ke,this.elseToken=$n,this.data=typeof Ce=="string"?decodeArray(Ce):Ce}token(Ce,ke){let $n=Ce.pos,Hn=0;for(;;){let zn=Ce.next<0,Zn=Ce.resolveOffset(1,1);if(readToken(this.data,Ce,ke,0,this.data,this.precTable),Ce.token.value>-1)break;if(this.elseToken==null)return;if(zn||Hn++,Zn==null)break;Ce.reset(Zn,Ce.token)}Hn&&(Ce.reset($n,Ce.token),Ce.acceptToken(this.elseToken,Hn))}}LocalTokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class ExternalTokenizer{constructor(Ce,ke={}){this.token=Ce,this.contextual=!!ke.contextual,this.fallback=!!ke.fallback,this.extend=!!ke.extend}}function readToken(_n,Ce,ke,$n,Hn,zn){let Zn=0,qn=1<<$n,{dialect:Yn}=ke.p.parser;e:for(;qn&_n[Zn];){let Jn=_n[Zn+1];for(let mo=Zn+3;mo0){let bo=_n[mo];if(Yn.allows(bo)&&(Ce.token.value==-1||Ce.token.value==bo||overrides(bo,Ce.token.value,Hn,zn))){Ce.acceptToken(bo);break}}let to=Ce.next,io=0,uo=_n[Zn+2];if(Ce.next<0&&uo>io&&_n[Jn+uo*3-3]==65535){Zn=_n[Jn+uo*3-1];continue e}for(;io>1,bo=Jn+mo+(mo<<1),Oo=_n[bo],wo=_n[bo+1]||65536;if(to=wo)io=mo+1;else{Zn=_n[bo+2],Ce.advance();continue e}}break}}function findOffset(_n,Ce,ke){for(let $n=Ce,Hn;(Hn=_n[$n])!=65535;$n++)if(Hn==ke)return $n-Ce;return-1}function overrides(_n,Ce,ke,$n){let Hn=findOffset(ke,$n,Ce);return Hn<0||findOffset(ke,$n,_n)Ce)&&!$n.type.isError)return ke<0?Math.max(0,Math.min($n.to-1,Ce-25)):Math.min(_n.length,Math.max($n.from+1,Ce+25));if(ke<0?$n.prevSibling():$n.nextSibling())break;if(!$n.parent())return ke<0?0:_n.length}}let FragmentCursor$1=class{constructor(Ce,ke){this.fragments=Ce,this.nodeSet=ke,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let Ce=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(Ce){for(this.safeFrom=Ce.openStart?cutAt(Ce.tree,Ce.from+Ce.offset,1)-Ce.offset:Ce.from,this.safeTo=Ce.openEnd?cutAt(Ce.tree,Ce.to+Ce.offset,-1)-Ce.offset:Ce.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(Ce.tree),this.start.push(-Ce.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(Ce){if(CeCe)return this.nextStart=Zn,null;if(zn instanceof Tree){if(Zn==Ce){if(Zn=Math.max(this.safeFrom,Ce)&&(this.trees.push(zn),this.start.push(Zn),this.index.push(0))}else this.index[ke]++,this.nextStart=Zn+zn.length}}};class TokenCache{constructor(Ce,ke){this.stream=ke,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=Ce.tokenizers.map($n=>new CachedToken)}getActions(Ce){let ke=0,$n=null,{parser:Hn}=Ce.p,{tokenizers:zn}=Hn,Zn=Hn.stateSlot(Ce.state,3),qn=Ce.curContext?Ce.curContext.hash:0,Yn=0;for(let Jn=0;Jnio.end+25&&(Yn=Math.max(io.lookAhead,Yn)),io.value!=0)){let uo=ke;if(io.extended>-1&&(ke=this.addActions(Ce,io.extended,io.end,ke)),ke=this.addActions(Ce,io.value,io.end,ke),!to.extend&&($n=io,ke>uo))break}}for(;this.actions.length>ke;)this.actions.pop();return Yn&&Ce.setLookAhead(Yn),!$n&&Ce.pos==this.stream.end&&($n=new CachedToken,$n.value=Ce.p.parser.eofTerm,$n.start=$n.end=Ce.pos,ke=this.addActions(Ce,$n.value,$n.end,ke)),this.mainToken=$n,this.actions}getMainToken(Ce){if(this.mainToken)return this.mainToken;let ke=new CachedToken,{pos:$n,p:Hn}=Ce;return ke.start=$n,ke.end=Math.min($n+1,Hn.stream.end),ke.value=$n==Hn.stream.end?Hn.parser.eofTerm:0,ke}updateCachedToken(Ce,ke,$n){let Hn=this.stream.clipPos($n.pos);if(ke.token(this.stream.reset(Hn,Ce),$n),Ce.value>-1){let{parser:zn}=$n.p;for(let Zn=0;Zn=0&&$n.p.parser.dialect.allows(qn>>1)){qn&1?Ce.extended=qn>>1:Ce.value=qn>>1;break}}}else Ce.value=0,Ce.end=this.stream.clipPos(Hn+1)}putAction(Ce,ke,$n,Hn){for(let zn=0;znCe.bufferLength*4?new FragmentCursor$1($n,Ce.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let Ce=this.stacks,ke=this.minStackPos,$n=this.stacks=[],Hn,zn;if(this.bigReductionCount>300&&Ce.length==1){let[Zn]=Ce;for(;Zn.forceReduce()&&Zn.stack.length&&Zn.stack[Zn.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let Zn=0;Znke)$n.push(qn);else{if(this.advanceStack(qn,$n,Ce))continue;{Hn||(Hn=[],zn=[]),Hn.push(qn);let Yn=this.tokens.getMainToken(qn);zn.push(Yn.value,Yn.end)}}break}}if(!$n.length){let Zn=Hn&&findFinished(Hn);if(Zn)return verbose&&console.log("Finish with "+this.stackID(Zn)),this.stackToTree(Zn);if(this.parser.strict)throw verbose&&Hn&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+ke);this.recovering||(this.recovering=5)}if(this.recovering&&Hn){let Zn=this.stoppedAt!=null&&Hn[0].pos>this.stoppedAt?Hn[0]:this.runRecovery(Hn,zn,$n);if(Zn)return verbose&&console.log("Force-finish "+this.stackID(Zn)),this.stackToTree(Zn.forceAll())}if(this.recovering){let Zn=this.recovering==1?1:this.recovering*3;if($n.length>Zn)for($n.sort((qn,Yn)=>Yn.score-qn.score);$n.length>Zn;)$n.pop();$n.some(qn=>qn.reducePos>ke)&&this.recovering--}else if($n.length>1){e:for(let Zn=0;Zn<$n.length-1;Zn++){let qn=$n[Zn];for(let Yn=Zn+1;Yn<$n.length;Yn++){let Jn=$n[Yn];if(qn.sameState(Jn)||qn.buffer.length>500&&Jn.buffer.length>500)if((qn.score-Jn.score||qn.buffer.length-Jn.buffer.length)>0)$n.splice(Yn--,1);else{$n.splice(Zn--,1);continue e}}}$n.length>12&&$n.splice(12,$n.length-12)}this.minStackPos=$n[0].pos;for(let Zn=1;Zn<$n.length;Zn++)$n[Zn].pos ":"";if(this.stoppedAt!=null&&Hn>this.stoppedAt)return Ce.forceReduce()?Ce:null;if(this.fragments){let Jn=Ce.curContext&&Ce.curContext.tracker.strict,to=Jn?Ce.curContext.hash:0;for(let io=this.fragments.nodeAt(Hn);io;){let uo=this.parser.nodeSet.types[io.type.id]==io.type?zn.getGoto(Ce.state,io.type.id):-1;if(uo>-1&&io.length&&(!Jn||(io.prop(NodeProp.contextHash)||0)==to))return Ce.useNode(io,uo),verbose&&console.log(Zn+this.stackID(Ce)+` (via reuse of ${zn.getName(io.type.id)})`),!0;if(!(io instanceof Tree)||io.children.length==0||io.positions[0]>0)break;let mo=io.children[0];if(mo instanceof Tree&&io.positions[0]==0)io=mo;else break}}let qn=zn.stateSlot(Ce.state,4);if(qn>0)return Ce.reduce(qn),verbose&&console.log(Zn+this.stackID(Ce)+` (via always-reduce ${zn.getName(qn&65535)})`),!0;if(Ce.stack.length>=8400)for(;Ce.stack.length>6e3&&Ce.forceReduce(););let Yn=this.tokens.getActions(Ce);for(let Jn=0;JnHn?ke.push(bo):$n.push(bo)}return!1}advanceFully(Ce,ke){let $n=Ce.pos;for(;;){if(!this.advanceStack(Ce,null,null))return!1;if(Ce.pos>$n)return pushStackDedup(Ce,ke),!0}}runRecovery(Ce,ke,$n){let Hn=null,zn=!1;for(let Zn=0;Zn ":"";if(qn.deadEnd&&(zn||(zn=!0,qn.restart(),verbose&&console.log(to+this.stackID(qn)+" (restarted)"),this.advanceFully(qn,$n))))continue;let io=qn.split(),uo=to;for(let mo=0;io.forceReduce()&&mo<10&&(verbose&&console.log(uo+this.stackID(io)+" (via force-reduce)"),!this.advanceFully(io,$n));mo++)verbose&&(uo=this.stackID(io)+" -> ");for(let mo of qn.recoverByInsert(Yn))verbose&&console.log(to+this.stackID(mo)+" (via recover-insert)"),this.advanceFully(mo,$n);this.stream.end>qn.pos?(Jn==qn.pos&&(Jn++,Yn=0),qn.recoverByDelete(Yn,Jn),verbose&&console.log(to+this.stackID(qn)+` (via recover-delete ${this.parser.getName(Yn)})`),pushStackDedup(qn,$n)):(!Hn||Hn.score_n;class ContextTracker{constructor(Ce){this.start=Ce.start,this.shift=Ce.shift||id,this.reduce=Ce.reduce||id,this.reuse=Ce.reuse||id,this.hash=Ce.hash||(()=>0),this.strict=Ce.strict!==!1}}class LRParser extends Parser{constructor(Ce){if(super(),this.wrappers=[],Ce.version!=14)throw new RangeError(`Parser version (${Ce.version}) doesn't match runtime version (14)`);let ke=Ce.nodeNames.split(" ");this.minRepeatTerm=ke.length;for(let qn=0;qnCe.topRules[qn][1]),Hn=[];for(let qn=0;qn=0)zn(to,Yn,qn[Jn++]);else{let io=qn[Jn+-to];for(let uo=-to;uo>0;uo--)zn(qn[Jn++],Yn,io);Jn++}}}this.nodeSet=new NodeSet(ke.map((qn,Yn)=>NodeType.define({name:Yn>=this.minRepeatTerm?void 0:qn,id:Yn,props:Hn[Yn],top:$n.indexOf(Yn)>-1,error:Yn==0,skipped:Ce.skippedNodes&&Ce.skippedNodes.indexOf(Yn)>-1}))),Ce.propSources&&(this.nodeSet=this.nodeSet.extend(...Ce.propSources)),this.strict=!1,this.bufferLength=DefaultBufferLength;let Zn=decodeArray(Ce.tokenData);this.context=Ce.context,this.specializerSpecs=Ce.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let qn=0;qntypeof qn=="number"?new TokenGroup(Zn,qn):qn),this.topRules=Ce.topRules,this.dialects=Ce.dialects||{},this.dynamicPrecedences=Ce.dynamicPrecedences||null,this.tokenPrecTable=Ce.tokenPrec,this.termNames=Ce.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(Ce,ke,$n){let Hn=new Parse(this,Ce,ke,$n);for(let zn of this.wrappers)Hn=zn(Hn,Ce,ke,$n);return Hn}getGoto(Ce,ke,$n=!1){let Hn=this.goto;if(ke>=Hn[0])return-1;for(let zn=Hn[ke+1];;){let Zn=Hn[zn++],qn=Zn&1,Yn=Hn[zn++];if(qn&&$n)return Yn;for(let Jn=zn+(Zn>>1);zn0}validAction(Ce,ke){return!!this.allActions(Ce,$n=>$n==ke?!0:null)}allActions(Ce,ke){let $n=this.stateSlot(Ce,4),Hn=$n?ke($n):void 0;for(let zn=this.stateSlot(Ce,1);Hn==null;zn+=3){if(this.data[zn]==65535)if(this.data[zn+1]==1)zn=pair(this.data,zn+2);else break;Hn=ke(pair(this.data,zn+1))}return Hn}nextStates(Ce){let ke=[];for(let $n=this.stateSlot(Ce,1);;$n+=3){if(this.data[$n]==65535)if(this.data[$n+1]==1)$n=pair(this.data,$n+2);else break;if(!(this.data[$n+2]&1)){let Hn=this.data[$n+1];ke.some((zn,Zn)=>Zn&1&&zn==Hn)||ke.push(this.data[$n],Hn)}}return ke}configure(Ce){let ke=Object.assign(Object.create(LRParser.prototype),this);if(Ce.props&&(ke.nodeSet=this.nodeSet.extend(...Ce.props)),Ce.top){let $n=this.topRules[Ce.top];if(!$n)throw new RangeError(`Invalid top rule name ${Ce.top}`);ke.top=$n}return Ce.tokenizers&&(ke.tokenizers=this.tokenizers.map($n=>{let Hn=Ce.tokenizers.find(zn=>zn.from==$n);return Hn?Hn.to:$n})),Ce.specializers&&(ke.specializers=this.specializers.slice(),ke.specializerSpecs=this.specializerSpecs.map(($n,Hn)=>{let zn=Ce.specializers.find(qn=>qn.from==$n.external);if(!zn)return $n;let Zn=Object.assign(Object.assign({},$n),{external:zn.to});return ke.specializers[Hn]=getSpecializer(Zn),Zn})),Ce.contextTracker&&(ke.context=Ce.contextTracker),Ce.dialect&&(ke.dialect=this.parseDialect(Ce.dialect)),Ce.strict!=null&&(ke.strict=Ce.strict),Ce.wrap&&(ke.wrappers=ke.wrappers.concat(Ce.wrap)),Ce.bufferLength!=null&&(ke.bufferLength=Ce.bufferLength),ke}hasWrappers(){return this.wrappers.length>0}getName(Ce){return this.termNames?this.termNames[Ce]:String(Ce<=this.maxNode&&this.nodeSet.types[Ce].name||Ce)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(Ce){let ke=this.dynamicPrecedences;return ke==null?0:ke[Ce]||0}parseDialect(Ce){let ke=Object.keys(this.dialects),$n=ke.map(()=>!1);if(Ce)for(let zn of Ce.split(" ")){let Zn=ke.indexOf(zn);Zn>=0&&($n[Zn]=!0)}let Hn=null;for(let zn=0;zn$n)&&ke.p.parser.stateFlag(ke.state,2)&&(!Ce||Ce.score_n.external(ke,$n)<<1|Ce}return _n.get}const jsonHighlighting=styleTags({String:tags$1.string,Number:tags$1.number,"True False":tags$1.bool,PropertyName:tags$1.propertyName,Null:tags$1.null,",":tags$1.separator,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),parser$4=LRParser.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",12,"["],["closedBy",8,"}",13,"]"]],propSources:[jsonHighlighting],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oc~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Oe~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zOh~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yOg~~'OO]~~'TO[~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),jsonParseLinter=()=>_n=>{try{JSON.parse(_n.state.doc.toString())}catch(Ce){if(!(Ce instanceof SyntaxError))throw Ce;const ke=getErrorPosition(Ce,_n.state.doc);return[{from:ke,message:Ce.message,severity:"error",to:ke}]}return[]};function getErrorPosition(_n,Ce){let ke;return(ke=_n.message.match(/at position (\d+)/))?Math.min(+ke[1],Ce.length):(ke=_n.message.match(/at line (\d+) column (\d+)/))?Math.min(Ce.line(+ke[1]).from+ +ke[2]-1,Ce.length):0}const jsonLanguage=LRLanguage.define({name:"json",parser:parser$4.configure({props:[indentNodeProp.add({Object:continuedIndent({except:/^\s*\}/}),Array:continuedIndent({except:/^\s*\]/})}),foldNodeProp.add({"Object Array":foldInside})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function json(){return new LanguageSupport(jsonLanguage)}function create_fragment$i(_n){let Ce,ke;return{c(){Ce=element("div"),attr(Ce,"class",ke="is-editable-"+_n[0])},m($n,Hn){insert$1($n,Ce,Hn),_n[3](Ce)},p($n,[Hn]){Hn&1&&ke!==(ke="is-editable-"+$n[0])&&attr(Ce,"class",ke)},i:noop,o:noop,d($n){$n&&detach(Ce),_n[3](null)}}}function instance$i(_n,Ce,ke){let $n,Hn,{value:zn}=Ce,{editable:Zn=!0}=Ce;onMount(()=>{let Yn=new Compartment,Jn=new Compartment,to=EditorState.create({doc:JSON.stringify(zn,null,4),extensions:[basicSetup,keymap.of([indentWithTab]),Yn.of(json()),json(),Jn.of(EditorState.tabSize.of(4)),lintGutter(),basicSetup,EditorView.editable.of(Zn),EditorView.updateListener.of(function(io){io.docChanged&&ke(2,zn=io.state.doc.toString())}),linter(jsonParseLinter())]});Hn=new EditorView({state:to,parent:$n})}),onDestroy(()=>{Hn&&Hn.destroy()});function qn(Yn){binding_callbacks[Yn?"unshift":"push"](()=>{$n=Yn,ke(1,$n)})}return _n.$$set=Yn=>{"value"in Yn&&ke(2,zn=Yn.value),"editable"in Yn&&ke(0,Zn=Yn.editable)},[Zn,$n,zn,qn]}class Codemirror extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$i,create_fragment$i,safe_not_equal,{value:2,editable:0})}}function create_if_block$c(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[3]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&8&&set_data(ke,$n[3])},d($n){$n&&detach(Ce)}}}function create_fragment$h(_n){let Ce,ke,$n,Hn,zn;function Zn(Jn){_n[5](Jn)}let qn={editable:!_n[1].readonly||_n[2]};_n[0]!==void 0&&(qn.value=_n[0]),ke=new Codemirror({props:qn}),binding_callbacks.push(()=>bind(ke,"value",Zn));let Yn=_n[3]&&create_if_block$c(_n);return{c(){Ce=element("div"),create_component(ke.$$.fragment),Hn=space$3(),Yn&&Yn.c(),attr(Ce,"class","mb-3")},m(Jn,to){insert$1(Jn,Ce,to),mount_component(ke,Ce,null),append(Ce,Hn),Yn&&Yn.m(Ce,null),zn=!0},p(Jn,[to]){const io={};to&6&&(io.editable=!Jn[1].readonly||Jn[2]),!$n&&to&1&&($n=!0,io.value=Jn[0],add_flush_callback(()=>$n=!1)),ke.$set(io),Jn[3]?Yn?Yn.p(Jn,to):(Yn=create_if_block$c(Jn),Yn.c(),Yn.m(Ce,null)):Yn&&(Yn.d(1),Yn=null)},i(Jn){zn||(transition_in(ke.$$.fragment,Jn),zn=!0)},o(Jn){transition_out(ke.$$.fragment,Jn),zn=!1},d(Jn){Jn&&detach(Ce),destroy_component(ke),Yn&&Yn.d()}}}function instance$h(_n,Ce,ke){let $n,{value:Hn}=Ce,{field:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce;function Yn(Jn){Hn=Jn,ke(0,Hn)}return _n.$$set=Jn=>{"value"in Jn&&ke(0,Hn=Jn.value),"field"in Jn&&ke(1,zn=Jn.field),"isCreateMode"in Jn&&ke(2,Zn=Jn.isCreateMode),"validationErrors"in Jn&&ke(4,qn=Jn.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&18&&ke(3,$n=getErrorMessage(qn,zn.name))},[Hn,zn,Zn,$n,qn,Yn]}let JSON$1=class extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$h,create_fragment$h,safe_not_equal,{value:0,field:1,isCreateMode:2,validationErrors:4})}};class CompositeBlock{static create(Ce,ke,$n,Hn,zn){let Zn=Hn+(Hn<<8)+Ce+(ke<<4)|0;return new CompositeBlock(Ce,ke,$n,Zn,zn,[],[])}constructor(Ce,ke,$n,Hn,zn,Zn,qn){this.type=Ce,this.value=ke,this.from=$n,this.hash=Hn,this.end=zn,this.children=Zn,this.positions=qn,this.hashProp=[[NodeProp.contextHash,Hn]]}addChild(Ce,ke){Ce.prop(NodeProp.contextHash)!=this.hash&&(Ce=new Tree(Ce.type,Ce.children,Ce.positions,Ce.length,this.hashProp)),this.children.push(Ce),this.positions.push(ke)}toTree(Ce,ke=this.end){let $n=this.children.length-1;return $n>=0&&(ke=Math.max(ke,this.positions[$n]+this.children[$n].length+this.from)),new Tree(Ce.types[this.type],this.children,this.positions,ke-this.from).balance({makeTree:(Hn,zn,Zn)=>new Tree(NodeType.none,Hn,zn,Zn,this.hashProp)})}}var Type;(function(_n){_n[_n.Document=1]="Document",_n[_n.CodeBlock=2]="CodeBlock",_n[_n.FencedCode=3]="FencedCode",_n[_n.Blockquote=4]="Blockquote",_n[_n.HorizontalRule=5]="HorizontalRule",_n[_n.BulletList=6]="BulletList",_n[_n.OrderedList=7]="OrderedList",_n[_n.ListItem=8]="ListItem",_n[_n.ATXHeading1=9]="ATXHeading1",_n[_n.ATXHeading2=10]="ATXHeading2",_n[_n.ATXHeading3=11]="ATXHeading3",_n[_n.ATXHeading4=12]="ATXHeading4",_n[_n.ATXHeading5=13]="ATXHeading5",_n[_n.ATXHeading6=14]="ATXHeading6",_n[_n.SetextHeading1=15]="SetextHeading1",_n[_n.SetextHeading2=16]="SetextHeading2",_n[_n.HTMLBlock=17]="HTMLBlock",_n[_n.LinkReference=18]="LinkReference",_n[_n.Paragraph=19]="Paragraph",_n[_n.CommentBlock=20]="CommentBlock",_n[_n.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",_n[_n.Escape=22]="Escape",_n[_n.Entity=23]="Entity",_n[_n.HardBreak=24]="HardBreak",_n[_n.Emphasis=25]="Emphasis",_n[_n.StrongEmphasis=26]="StrongEmphasis",_n[_n.Link=27]="Link",_n[_n.Image=28]="Image",_n[_n.InlineCode=29]="InlineCode",_n[_n.HTMLTag=30]="HTMLTag",_n[_n.Comment=31]="Comment",_n[_n.ProcessingInstruction=32]="ProcessingInstruction",_n[_n.Autolink=33]="Autolink",_n[_n.HeaderMark=34]="HeaderMark",_n[_n.QuoteMark=35]="QuoteMark",_n[_n.ListMark=36]="ListMark",_n[_n.LinkMark=37]="LinkMark",_n[_n.EmphasisMark=38]="EmphasisMark",_n[_n.CodeMark=39]="CodeMark",_n[_n.CodeText=40]="CodeText",_n[_n.CodeInfo=41]="CodeInfo",_n[_n.LinkTitle=42]="LinkTitle",_n[_n.LinkLabel=43]="LinkLabel",_n[_n.URL=44]="URL"})(Type||(Type={}));class LeafBlock{constructor(Ce,ke){this.start=Ce,this.content=ke,this.marks=[],this.parsers=[]}}class Line{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let Ce=this.skipSpace(this.basePos);this.indent=this.countIndent(Ce,this.pos,this.indent),this.pos=Ce,this.next=Ce==this.text.length?-1:this.text.charCodeAt(Ce)}skipSpace(Ce){return skipSpace(this.text,Ce)}reset(Ce){for(this.text=Ce,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(Ce){this.basePos=Ce,this.baseIndent=this.countIndent(Ce,this.pos,this.indent)}moveBaseColumn(Ce){this.baseIndent=Ce,this.basePos=this.findColumn(Ce)}addMarker(Ce){this.markers.push(Ce)}countIndent(Ce,ke=0,$n=0){for(let Hn=ke;Hn=Ce.stack[ke.depth+1].value+ke.baseIndent)return!0;if(ke.indent>=ke.baseIndent+4)return!1;let $n=(_n.type==Type.OrderedList?isOrderedList:isBulletList)(ke,Ce,!1);return $n>0&&(_n.type!=Type.BulletList||isHorizontalRule(ke,Ce,!1)<0)&&ke.text.charCodeAt(ke.pos+$n-1)==_n.value}const DefaultSkipMarkup={[Type.Blockquote](_n,Ce,ke){return ke.next!=62?!1:(ke.markers.push(elt(Type.QuoteMark,Ce.lineStart+ke.pos,Ce.lineStart+ke.pos+1)),ke.moveBase(ke.pos+(space$2(ke.text.charCodeAt(ke.pos+1))?2:1)),_n.end=Ce.lineStart+ke.text.length,!0)},[Type.ListItem](_n,Ce,ke){return ke.indent-1?!1:(ke.moveBaseColumn(ke.baseIndent+_n.value),!0)},[Type.OrderedList]:skipForList,[Type.BulletList]:skipForList,[Type.Document](){return!0}};function space$2(_n){return _n==32||_n==9||_n==10||_n==13}function skipSpace(_n,Ce=0){for(;Ce<_n.length&&space$2(_n.charCodeAt(Ce));)Ce++;return Ce}function skipSpaceBack(_n,Ce,ke){for(;Ce>ke&&space$2(_n.charCodeAt(Ce-1));)Ce--;return Ce}function isFencedCode(_n){if(_n.next!=96&&_n.next!=126)return-1;let Ce=_n.pos+1;for(;Ce<_n.text.length&&_n.text.charCodeAt(Ce)==_n.next;)Ce++;if(Ce<_n.pos+3)return-1;if(_n.next==96){for(let ke=Ce;ke<_n.text.length;ke++)if(_n.text.charCodeAt(ke)==96)return-1}return Ce}function isBlockquote(_n){return _n.next!=62?-1:_n.text.charCodeAt(_n.pos+1)==32?2:1}function isHorizontalRule(_n,Ce,ke){if(_n.next!=42&&_n.next!=45&&_n.next!=95)return-1;let $n=1;for(let Hn=_n.pos+1;Hn<_n.text.length;Hn++){let zn=_n.text.charCodeAt(Hn);if(zn==_n.next)$n++;else if(!space$2(zn))return-1}return ke&&_n.next==45&&isSetextUnderline(_n)>-1&&_n.depth==Ce.stack.length||$n<3?-1:1}function inList(_n,Ce){for(let ke=_n.stack.length-1;ke>=0;ke--)if(_n.stack[ke].type==Ce)return!0;return!1}function isBulletList(_n,Ce,ke){return(_n.next==45||_n.next==43||_n.next==42)&&(_n.pos==_n.text.length-1||space$2(_n.text.charCodeAt(_n.pos+1)))&&(!ke||inList(Ce,Type.BulletList)||_n.skipSpace(_n.pos+2)<_n.text.length)?1:-1}function isOrderedList(_n,Ce,ke){let $n=_n.pos,Hn=_n.next;for(;Hn>=48&&Hn<=57;){$n++;if($n==_n.text.length)return-1;Hn=_n.text.charCodeAt($n)}return $n==_n.pos||$n>_n.pos+9||Hn!=46&&Hn!=41||$n<_n.text.length-1&&!space$2(_n.text.charCodeAt($n+1))||ke&&!inList(Ce,Type.OrderedList)&&(_n.skipSpace($n+1)==_n.text.length||$n>_n.pos+1||_n.next!=49)?-1:$n+1-_n.pos}function isAtxHeading(_n){if(_n.next!=35)return-1;let Ce=_n.pos+1;for(;Ce<_n.text.length&&_n.text.charCodeAt(Ce)==35;)Ce++;if(Ce<_n.text.length&&_n.text.charCodeAt(Ce)!=32)return-1;let ke=Ce-_n.pos;return ke>6?-1:ke}function isSetextUnderline(_n){if(_n.next!=45&&_n.next!=61||_n.indent>=_n.baseIndent+4)return-1;let Ce=_n.pos+1;for(;Ce<_n.text.length&&_n.text.charCodeAt(Ce)==_n.next;)Ce++;let ke=Ce;for(;Ce<_n.text.length&&space$2(_n.text.charCodeAt(Ce));)Ce++;return Ce==_n.text.length?ke:-1}const EmptyLine=/^[ \t]*$/,CommentEnd=/-->/,ProcessingEnd=/\?>/,HTMLBlockStyle=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec($n);if(zn)return _n.append(elt(Type.Comment,ke,ke+1+zn[0].length));let Zn=/^\?[^]*?\?>/.exec($n);if(Zn)return _n.append(elt(Type.ProcessingInstruction,ke,ke+1+Zn[0].length));let qn=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec($n);return qn?_n.append(elt(Type.HTMLTag,ke,ke+1+qn[0].length)):-1},Emphasis(_n,Ce,ke){if(Ce!=95&&Ce!=42)return-1;let $n=ke+1;for(;_n.char($n)==Ce;)$n++;let Hn=_n.slice(ke-1,ke),zn=_n.slice($n,$n+1),Zn=Punctuation.test(Hn),qn=Punctuation.test(zn),Yn=/\s|^$/.test(Hn),Jn=/\s|^$/.test(zn),to=!Jn&&(!qn||Yn||Zn),io=!Yn&&(!Zn||Jn||qn),uo=to&&(Ce==42||!io||Zn),mo=io&&(Ce==42||!to||qn);return _n.append(new InlineDelimiter(Ce==95?EmphasisUnderscore:EmphasisAsterisk,ke,$n,(uo?1:0)|(mo?2:0)))},HardBreak(_n,Ce,ke){if(Ce==92&&_n.char(ke+1)==10)return _n.append(elt(Type.HardBreak,ke,ke+2));if(Ce==32){let $n=ke+1;for(;_n.char($n)==32;)$n++;if(_n.char($n)==10&&$n>=ke+2)return _n.append(elt(Type.HardBreak,ke,$n+1))}return-1},Link(_n,Ce,ke){return Ce==91?_n.append(new InlineDelimiter(LinkStart,ke,ke+1,1)):-1},Image(_n,Ce,ke){return Ce==33&&_n.char(ke+1)==91?_n.append(new InlineDelimiter(ImageStart,ke,ke+2,1)):-1},LinkEnd(_n,Ce,ke){if(Ce!=93)return-1;for(let $n=_n.parts.length-1;$n>=0;$n--){let Hn=_n.parts[$n];if(Hn instanceof InlineDelimiter&&(Hn.type==LinkStart||Hn.type==ImageStart)){if(!Hn.side||_n.skipSpace(Hn.to)==ke&&!/[(\[]/.test(_n.slice(ke+1,ke+2)))return _n.parts[$n]=null,-1;let zn=_n.takeContent($n),Zn=_n.parts[$n]=finishLink(_n,zn,Hn.type==LinkStart?Type.Link:Type.Image,Hn.from,ke+1);if(Hn.type==LinkStart)for(let qn=0;qn<$n;qn++){let Yn=_n.parts[qn];Yn instanceof InlineDelimiter&&Yn.type==LinkStart&&(Yn.side=0)}return Zn.to}}return-1}};function finishLink(_n,Ce,ke,$n,Hn){let{text:zn}=_n,Zn=_n.char(Hn),qn=Hn;if(Ce.unshift(elt(Type.LinkMark,$n,$n+(ke==Type.Image?2:1))),Ce.push(elt(Type.LinkMark,Hn-1,Hn)),Zn==40){let Yn=_n.skipSpace(Hn+1),Jn=parseURL(zn,Yn-_n.offset,_n.offset),to;Jn&&(Yn=_n.skipSpace(Jn.to),Yn!=Jn.to&&(to=parseLinkTitle(zn,Yn-_n.offset,_n.offset),to&&(Yn=_n.skipSpace(to.to)))),_n.char(Yn)==41&&(Ce.push(elt(Type.LinkMark,Hn,Hn+1)),qn=Yn+1,Jn&&Ce.push(Jn),to&&Ce.push(to),Ce.push(elt(Type.LinkMark,Yn,qn)))}else if(Zn==91){let Yn=parseLinkLabel(zn,Hn-_n.offset,_n.offset,!1);Yn&&(Ce.push(Yn),qn=Yn.to)}return elt(ke,$n,qn,Ce)}function parseURL(_n,Ce,ke){if(_n.charCodeAt(Ce)==60){for(let Hn=Ce+1;Hn<_n.length;Hn++){let zn=_n.charCodeAt(Hn);if(zn==62)return elt(Type.URL,Ce+ke,Hn+1+ke);if(zn==60||zn==10)return!1}return null}else{let Hn=0,zn=Ce;for(let Zn=!1;zn<_n.length;zn++){let qn=_n.charCodeAt(zn);if(space$2(qn))break;if(Zn)Zn=!1;else if(qn==40)Hn++;else if(qn==41){if(!Hn)break;Hn--}else qn==92&&(Zn=!0)}return zn>Ce?elt(Type.URL,Ce+ke,zn+ke):zn==_n.length?null:!1}}function parseLinkTitle(_n,Ce,ke){let $n=_n.charCodeAt(Ce);if($n!=39&&$n!=34&&$n!=40)return!1;let Hn=$n==40?41:$n;for(let zn=Ce+1,Zn=!1;zn<_n.length;zn++){let qn=_n.charCodeAt(zn);if(Zn)Zn=!1;else{if(qn==Hn)return elt(Type.LinkTitle,Ce+ke,zn+1+ke);qn==92&&(Zn=!0)}}return null}function parseLinkLabel(_n,Ce,ke,$n){for(let Hn=!1,zn=Ce+1,Zn=Math.min(_n.length,zn+999);zn=this.end?-1:this.text.charCodeAt(Ce-this.offset)}get end(){return this.offset+this.text.length}slice(Ce,ke){return this.text.slice(Ce-this.offset,ke-this.offset)}append(Ce){return this.parts.push(Ce),Ce.to}addDelimiter(Ce,ke,$n,Hn,zn){return this.append(new InlineDelimiter(Ce,ke,$n,(Hn?1:0)|(zn?2:0)))}get hasOpenLink(){for(let Ce=this.parts.length-1;Ce>=0;Ce--){let ke=this.parts[Ce];if(ke instanceof InlineDelimiter&&(ke.type==LinkStart||ke.type==ImageStart))return!0}return!1}addElement(Ce){return this.append(Ce)}resolveMarkers(Ce){for(let $n=Ce;$n=Ce;Yn--){let Oo=this.parts[Yn];if(Oo instanceof InlineDelimiter&&Oo.side&1&&Oo.type==Hn.type&&!(zn&&(Hn.side&1||Oo.side&2)&&(Oo.to-Oo.from+Zn)%3==0&&((Oo.to-Oo.from)%3||Zn%3))){qn=Oo;break}}if(!qn)continue;let Jn=Hn.type.resolve,to=[],io=qn.from,uo=Hn.to;if(zn){let Oo=Math.min(2,qn.to-qn.from,Zn);io=qn.to-Oo,uo=Hn.from+Oo,Jn=Oo==1?"Emphasis":"StrongEmphasis"}qn.type.mark&&to.push(this.elt(qn.type.mark,io,qn.to));for(let Oo=Yn+1;Oo<$n;Oo++)this.parts[Oo]instanceof Element$2&&to.push(this.parts[Oo]),this.parts[Oo]=null;Hn.type.mark&&to.push(this.elt(Hn.type.mark,Hn.from,uo));let mo=this.elt(Jn,io,uo,to);this.parts[Yn]=zn&&qn.from!=io?new InlineDelimiter(qn.type,qn.from,io,qn.side):null,(this.parts[$n]=zn&&Hn.to!=uo?new InlineDelimiter(Hn.type,uo,Hn.to,Hn.side):null)?this.parts.splice($n,0,mo):this.parts[$n]=mo}let ke=[];for(let $n=Ce;$n=0;ke--){let $n=this.parts[ke];if($n instanceof InlineDelimiter&&$n.type==Ce)return ke}return null}takeContent(Ce){let ke=this.resolveMarkers(Ce);return this.parts.length=Ce,ke}skipSpace(Ce){return skipSpace(this.text,Ce-this.offset)+this.offset}elt(Ce,ke,$n,Hn){return typeof Ce=="string"?elt(this.parser.getNodeType(Ce),ke,$n,Hn):new TreeElement(Ce,ke)}}function injectMarks(_n,Ce){if(!Ce.length)return _n;if(!_n.length)return Ce;let ke=_n.slice(),$n=0;for(let Hn of Ce){for(;$n(Ce?Ce-1:0))return!1;if(this.fragmentEnd<0){let zn=this.fragment.to;for(;zn>0&&this.input.read(zn-1,zn)!=` +`;)zn--;this.fragmentEnd=zn?zn-1:0}let $n=this.cursor;$n||($n=this.cursor=this.fragment.tree.cursor(),$n.firstChild());let Hn=Ce+this.fragment.offset;for(;$n.to<=Hn;)if(!$n.parent())return!1;for(;;){if($n.from>=Hn)return this.fragment.from<=ke;if(!$n.childAfter(Hn))return!1}}matches(Ce){let ke=this.cursor.tree;return ke&&ke.prop(NodeProp.contextHash)==Ce}takeNodes(Ce){let ke=this.cursor,$n=this.fragment.offset,Hn=this.fragmentEnd-(this.fragment.openEnd?1:0),zn=Ce.absoluteLineStart,Zn=zn,qn=Ce.block.children.length,Yn=Zn,Jn=qn;for(;;){if(ke.to-$n>Hn){if(ke.type.isAnonymous&&ke.firstChild())continue;break}let to=toRelative(ke.from-$n,Ce.ranges);if(ke.to-$n<=Ce.ranges[Ce.rangeI].to)Ce.addNode(ke.tree,to);else{let io=new Tree(Ce.parser.nodeSet.types[Type.Paragraph],[],[],0,Ce.block.hashProp);Ce.reusePlaceholders.set(io,ke.tree),Ce.addNode(io,to)}if(ke.type.is("Block")&&(NotLast.indexOf(ke.type.id)<0?(Zn=ke.to-$n,qn=Ce.block.children.length):(Zn=Yn,qn=Jn,Yn=ke.to-$n,Jn=Ce.block.children.length)),!ke.nextSibling())break}for(;Ce.block.children.length>qn;)Ce.block.children.pop(),Ce.block.positions.pop();return Zn-zn}}function toRelative(_n,Ce){let ke=_n;for(let $n=1;$nDefaultBlockParsers[_n]),Object.keys(DefaultBlockParsers).map(_n=>DefaultLeafBlocks[_n]),Object.keys(DefaultBlockParsers),DefaultEndLeaf,DefaultSkipMarkup,Object.keys(DefaultInline).map(_n=>DefaultInline[_n]),Object.keys(DefaultInline),[]);function leftOverSpace(_n,Ce,ke){let $n=[];for(let Hn=_n.firstChild,zn=Ce;;Hn=Hn.nextSibling){let Zn=Hn?Hn.from:ke;if(Zn>zn&&$n.push({from:zn,to:Zn}),!Hn)break;zn=Hn.to}return $n}function parseCode(_n){let{codeParser:Ce,htmlParser:ke}=_n;return{wrap:parseMixed((Hn,zn)=>{let Zn=Hn.type.id;if(Ce&&(Zn==Type.CodeBlock||Zn==Type.FencedCode)){let qn="";if(Zn==Type.FencedCode){let Jn=Hn.node.getChild(Type.CodeInfo);Jn&&(qn=zn.read(Jn.from,Jn.to))}let Yn=Ce(qn);if(Yn)return{parser:Yn,overlay:Jn=>Jn.type.id==Type.CodeText}}else if(ke&&(Zn==Type.HTMLBlock||Zn==Type.HTMLTag))return{parser:ke,overlay:leftOverSpace(Hn.node,Hn.from,Hn.to)};return null})}}const StrikethroughDelim={resolve:"Strikethrough",mark:"StrikethroughMark"},Strikethrough={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":tags$1.strikethrough}},{name:"StrikethroughMark",style:tags$1.processingInstruction}],parseInline:[{name:"Strikethrough",parse(_n,Ce,ke){if(Ce!=126||_n.char(ke+1)!=126||_n.char(ke+2)==126)return-1;let $n=_n.slice(ke-1,ke),Hn=_n.slice(ke+2,ke+3),zn=/\s|^$/.test($n),Zn=/\s|^$/.test(Hn),qn=Punctuation.test($n),Yn=Punctuation.test(Hn);return _n.addDelimiter(StrikethroughDelim,ke,ke+2,!Zn&&(!Yn||zn||qn),!zn&&(!qn||Zn||Yn))},after:"Emphasis"}]};function parseRow(_n,Ce,ke=0,$n,Hn=0){let zn=0,Zn=!0,qn=-1,Yn=-1,Jn=!1,to=()=>{$n.push(_n.elt("TableCell",Hn+qn,Hn+Yn,_n.parser.parseInline(Ce.slice(qn,Yn),Hn+qn)))};for(let io=ke;io-1)&&zn++,Zn=!1,$n&&(qn>-1&&to(),$n.push(_n.elt("TableDelimiter",io+Hn,io+Hn+1))),qn=Yn=-1):(Jn||uo!=32&&uo!=9)&&(qn<0&&(qn=io),Yn=io+1),Jn=!Jn&&uo==92}return qn>-1&&(zn++,$n&&to()),zn}function hasPipe(_n,Ce){for(let ke=Ce;ke<_n.length;ke++){let $n=_n.charCodeAt(ke);if($n==124)return!0;$n==92&&ke++}return!1}const delimiterLine=/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/;class TableParser{constructor(){this.rows=null}nextLine(Ce,ke,$n){if(this.rows==null){this.rows=!1;let Hn;if((ke.next==45||ke.next==58||ke.next==124)&&delimiterLine.test(Hn=ke.text.slice(ke.pos))){let zn=[];parseRow(Ce,$n.content,0,zn,$n.start)==parseRow(Ce,Hn,ke.pos)&&(this.rows=[Ce.elt("TableHeader",$n.start,$n.start+$n.content.length,zn),Ce.elt("TableDelimiter",Ce.lineStart+ke.pos,Ce.lineStart+ke.text.length)])}}else if(this.rows){let Hn=[];parseRow(Ce,ke.text,ke.pos,Hn,Ce.lineStart),this.rows.push(Ce.elt("TableRow",Ce.lineStart+ke.pos,Ce.lineStart+ke.text.length,Hn))}return!1}finish(Ce,ke){return this.rows?(Ce.addLeafElement(ke,Ce.elt("Table",ke.start,ke.start+ke.content.length,this.rows)),!0):!1}}const Table={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":tags$1.heading}},"TableRow",{name:"TableCell",style:tags$1.content},{name:"TableDelimiter",style:tags$1.processingInstruction}],parseBlock:[{name:"Table",leaf(_n,Ce){return hasPipe(Ce.content,0)?new TableParser:null},endLeaf(_n,Ce,ke){if(ke.parsers.some(Hn=>Hn instanceof TableParser)||!hasPipe(Ce.text,Ce.basePos))return!1;let $n=_n.scanLine(_n.absoluteLineEnd+1).text;return delimiterLine.test($n)&&parseRow(_n,Ce.text,Ce.basePos)==parseRow(_n,$n,Ce.basePos)},before:"SetextHeading"}]};class TaskParser{nextLine(){return!1}finish(Ce,ke){return Ce.addLeafElement(ke,Ce.elt("Task",ke.start,ke.start+ke.content.length,[Ce.elt("TaskMarker",ke.start,ke.start+3),...Ce.parser.parseInline(ke.content.slice(3),ke.start+3)])),!0}}const TaskList={defineNodes:[{name:"Task",block:!0,style:tags$1.list},{name:"TaskMarker",style:tags$1.atom}],parseBlock:[{name:"TaskList",leaf(_n,Ce){return/^\[[ xX]\][ \t]/.test(Ce.content)&&_n.parentType().name=="ListItem"?new TaskParser:null},after:"SetextHeading"}]},autolinkRE=/(www\.)|(https?:\/\/)|([\w.+-]+@)|(mailto:|xmpp:)/gy,urlRE=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,lastTwoDomainWords=/[\w-]+\.[\w-]+($|\/)/,emailRE=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,xmppResourceRE=/\/[a-zA-Z\d@.]+/gy;function count(_n,Ce,ke,$n){let Hn=0;for(let zn=Ce;zn-1)return-1;let $n=Ce+ke[0].length;for(;;){let Hn=_n[$n-1],zn;if(/[?!.,:*_~]/.test(Hn)||Hn==")"&&count(_n,Ce,$n,")")>count(_n,Ce,$n,"("))$n--;else if(Hn==";"&&(zn=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(_n.slice(Ce,$n))))$n=Ce+zn.index;else break}return $n}function autolinkEmailEnd(_n,Ce){emailRE.lastIndex=Ce;let ke=emailRE.exec(_n);if(!ke)return-1;let $n=ke[0][ke[0].length-1];return $n=="_"||$n=="-"?-1:Ce+ke[0].length-($n=="."?1:0)}const Autolink={parseInline:[{name:"Autolink",parse(_n,Ce,ke){let $n=ke-_n.offset;autolinkRE.lastIndex=$n;let Hn=autolinkRE.exec(_n.text),zn=-1;if(!Hn)return-1;if(Hn[1]||Hn[2]){if(zn=autolinkURLEnd(_n.text,$n+Hn[0].length),zn>-1&&_n.hasOpenLink){let Zn=/([^\[\]]|\[[^\]]*\])*/.exec(_n.text.slice($n,zn));zn=$n+Zn[0].length}}else Hn[3]?zn=autolinkEmailEnd(_n.text,$n):(zn=autolinkEmailEnd(_n.text,$n+Hn[0].length),zn>-1&&Hn[0]=="xmpp:"&&(xmppResourceRE.lastIndex=zn,Hn=xmppResourceRE.exec(_n.text),Hn&&(zn=Hn.index+Hn[0].length)));return zn<0?-1:(_n.addElement(_n.elt("URL",ke,zn+_n.offset)),zn+_n.offset)}}]},GFM=[Table,TaskList,Strikethrough,Autolink];function parseSubSuper(_n,Ce,ke){return($n,Hn,zn)=>{if(Hn!=_n||$n.char(zn+1)==_n)return-1;let Zn=[$n.elt(ke,zn,zn+1)];for(let qn=zn+1;qn<$n.end;qn++){let Yn=$n.char(qn);if(Yn==_n)return $n.addElement($n.elt(Ce,zn,qn+1,Zn.concat($n.elt(ke,qn,qn+1))));if(Yn==92&&Zn.push($n.elt("Escape",qn,qn+++2)),space$2(Yn))break}return-1}}const Superscript={defineNodes:[{name:"Superscript",style:tags$1.special(tags$1.content)},{name:"SuperscriptMark",style:tags$1.processingInstruction}],parseInline:[{name:"Superscript",parse:parseSubSuper(94,"Superscript","SuperscriptMark")}]},Subscript={defineNodes:[{name:"Subscript",style:tags$1.special(tags$1.content)},{name:"SubscriptMark",style:tags$1.processingInstruction}],parseInline:[{name:"Subscript",parse:parseSubSuper(126,"Subscript","SubscriptMark")}]},Emoji={defineNodes:[{name:"Emoji",style:tags$1.character}],parseInline:[{name:"Emoji",parse(_n,Ce,ke){let $n;return Ce!=58||!($n=/^[a-zA-Z_0-9]+:/.exec(_n.slice(ke+1,_n.end)))?-1:_n.addElement(_n.elt("Emoji",ke,ke+1+$n[0].length))}}]},scriptText=54,StartCloseScriptTag=1,styleText=55,StartCloseStyleTag=2,textareaText=56,StartCloseTextareaTag=3,EndTag=4,SelfClosingEndTag=5,StartTag=6,StartScriptTag=7,StartStyleTag=8,StartTextareaTag=9,StartSelfClosingTag=10,StartCloseTag=11,NoMatchStartCloseTag=12,MismatchedStartCloseTag=13,missingCloseTag=57,IncompleteCloseTag=14,commentContent$1=58,Element$1=20,TagName=22,Attribute=23,AttributeName=24,AttributeValue=26,UnquotedAttributeValue=27,ScriptText=28,StyleText=31,TextareaText=34,OpenTag=36,CloseTag=37,Dialect_noMatch=0,Dialect_selfClosing=1,selfClosers$1={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},closeOnOpen={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function nameChar(_n){return _n==45||_n==46||_n==58||_n>=65&&_n<=90||_n==95||_n>=97&&_n<=122||_n>=161}function isSpace(_n){return _n==9||_n==10||_n==13||_n==32}let cachedName=null,cachedInput=null,cachedPos=0;function tagNameAfter(_n,Ce){let ke=_n.pos+Ce;if(cachedPos==ke&&cachedInput==_n)return cachedName;let $n=_n.peek(Ce);for(;isSpace($n);)$n=_n.peek(++Ce);let Hn="";for(;nameChar($n);)Hn+=String.fromCharCode($n),$n=_n.peek(++Ce);return cachedInput=_n,cachedPos=ke,cachedName=Hn?Hn.toLowerCase():$n==question$1||$n==bang?void 0:null}const lessThan=60,greaterThan=62,slash$1=47,question$1=63,bang=33,dash$1=45;function ElementContext(_n,Ce){this.name=_n,this.parent=Ce}const startTagTerms=[StartTag,StartSelfClosingTag,StartScriptTag,StartStyleTag,StartTextareaTag],elementContext=new ContextTracker({start:null,shift(_n,Ce,ke,$n){return startTagTerms.indexOf(Ce)>-1?new ElementContext(tagNameAfter($n,1)||"",_n):_n},reduce(_n,Ce){return Ce==Element$1&&_n?_n.parent:_n},reuse(_n,Ce,ke,$n){let Hn=Ce.type.id;return Hn==StartTag||Hn==OpenTag?new ElementContext(tagNameAfter($n,1)||"",_n):_n},strict:!1}),tagStart=new ExternalTokenizer((_n,Ce)=>{if(_n.next!=lessThan){_n.next<0&&Ce.context&&_n.acceptToken(missingCloseTag);return}_n.advance();let ke=_n.next==slash$1;ke&&_n.advance();let $n=tagNameAfter(_n,0);if($n===void 0)return;if(!$n)return _n.acceptToken(ke?IncompleteCloseTag:StartTag);let Hn=Ce.context?Ce.context.name:null;if(ke){if($n==Hn)return _n.acceptToken(StartCloseTag);if(Hn&&implicitlyClosed[Hn])return _n.acceptToken(missingCloseTag,-2);if(Ce.dialectEnabled(Dialect_noMatch))return _n.acceptToken(NoMatchStartCloseTag);for(let zn=Ce.context;zn;zn=zn.parent)if(zn.name==$n)return;_n.acceptToken(MismatchedStartCloseTag)}else{if($n=="script")return _n.acceptToken(StartScriptTag);if($n=="style")return _n.acceptToken(StartStyleTag);if($n=="textarea")return _n.acceptToken(StartTextareaTag);if(selfClosers$1.hasOwnProperty($n))return _n.acceptToken(StartSelfClosingTag);Hn&&closeOnOpen[Hn]&&closeOnOpen[Hn][$n]?_n.acceptToken(missingCloseTag,-1):_n.acceptToken(StartTag)}},{contextual:!0}),commentContent=new ExternalTokenizer(_n=>{for(let Ce=0,ke=0;;ke++){if(_n.next<0){ke&&_n.acceptToken(commentContent$1);break}if(_n.next==dash$1)Ce++;else if(_n.next==greaterThan&&Ce>=2){ke>=3&&_n.acceptToken(commentContent$1,-2);break}else Ce=0;_n.advance()}});function inForeignElement(_n){for(;_n;_n=_n.parent)if(_n.name=="svg"||_n.name=="math")return!0;return!1}const endTag=new ExternalTokenizer((_n,Ce)=>{if(_n.next==slash$1&&_n.peek(1)==greaterThan){let ke=Ce.dialectEnabled(Dialect_selfClosing)||inForeignElement(Ce.context);_n.acceptToken(ke?SelfClosingEndTag:EndTag,2)}else _n.next==greaterThan&&_n.acceptToken(EndTag,1)});function contentTokenizer(_n,Ce,ke){let $n=2+_n.length;return new ExternalTokenizer(Hn=>{for(let zn=0,Zn=0,qn=0;;qn++){if(Hn.next<0){qn&&Hn.acceptToken(Ce);break}if(zn==0&&Hn.next==lessThan||zn==1&&Hn.next==slash$1||zn>=2&&zn<$n&&Hn.next==_n.charCodeAt(zn-2))zn++,Zn++;else if((zn==2||zn==$n)&&isSpace(Hn.next))Zn++;else if(zn==$n&&Hn.next==greaterThan){qn>Zn?Hn.acceptToken(Ce,-Zn):Hn.acceptToken(ke,-(Zn-2));break}else if((Hn.next==10||Hn.next==13)&&qn){Hn.acceptToken(Ce,1);break}else zn=Zn=0;Hn.advance()}})}const scriptTokens=contentTokenizer("script",scriptText,StartCloseScriptTag),styleTokens=contentTokenizer("style",styleText,StartCloseStyleTag),textareaTokens=contentTokenizer("textarea",textareaText,StartCloseTextareaTag),htmlHighlighting=styleTags({"Text RawText":tags$1.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":tags$1.angleBracket,TagName:tags$1.tagName,"MismatchedCloseTag/TagName":[tags$1.tagName,tags$1.invalid],AttributeName:tags$1.attributeName,"AttributeValue UnquotedAttributeValue":tags$1.attributeValue,Is:tags$1.definitionOperator,"EntityReference CharacterReference":tags$1.character,Comment:tags$1.blockComment,ProcessingInst:tags$1.processingInstruction,DoctypeDecl:tags$1.documentMeta}),parser$2=LRParser.deserialize({version:14,states:",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%ZQ&rO,59fO%fQ&rO,59iO%qQ&rO,59lO%|Q&rO,59nOOOa'#D^'#D^O&XOaO'#CxO&dOaO,59[OOOb'#D_'#D_O&lObO'#C{O&wObO,59[OOOd'#D`'#D`O'POdO'#DOO'[OdO,59[OOO`'#Da'#DaO'dO!rO,59[O'kQ#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'pO$fO,59oOOO`,59o,59oO'xQ#|O,59qO'}Q#|O,59rOOO`-E7W-E7WO(SQ&rO'#CsOOQW'#DZ'#DZO(bQ&rO1G.wOOOa1G.w1G.wOOO`1G/Y1G/YO(mQ&rO1G/QOOOb1G/Q1G/QO(xQ&rO1G/TOOOd1G/T1G/TO)TQ&rO1G/WOOO`1G/W1G/WO)`Q&rO1G/YOOOa-E7[-E7[O)kQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)pQ#tO'#C|OOOd-E7^-E7^O)uQ#tO'#DPOOO`-E7_-E7_O)zQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O*PQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOO`7+$t7+$tOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rO*[Q#|O,59eO*aQ#|O,59hO*fQ#|O,59kOOO`1G/X1G/XO*kO7[O'#CvO*|OMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O+_O7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+pOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z",stateData:",]~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OT}OhyO~OS!POT}OhyO~OS!ROT}OhyO~OS!TOT}OhyO~OS}OT}OhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXTgXhgX~OS!fOT!gOhyO~OS!hOT!gOhyO~OS!iOT!gOhyO~OS!jOT!gOhyO~OS!gOT!gOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~",goto:"%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:67,context:elementContext,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,21,30,33,36,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,29,32,35,37,"OpenTag"],["group",-9,14,17,18,19,20,39,40,41,42,"Entity",16,"Entity TextContent",-3,28,31,34,"TextContent Entity"],["isolate",-11,21,29,30,32,33,35,36,37,38,41,42,"ltr",-3,26,27,39,""]],propSources:[htmlHighlighting],skippedNodes:[0],repeatNodeCount:9,tokenData:"!]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbhSkWa!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VP<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TakWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbhSkWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_khS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO{PP!-nP;=`<%l!-Sq!-xS!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!{let Jn=qn.type.id;if(Jn==ScriptText)return maybeNest(qn,Yn,ke);if(Jn==StyleText)return maybeNest(qn,Yn,$n);if(Jn==TextareaText)return maybeNest(qn,Yn,Hn);if(Jn==Element$1&&zn.length){let to=qn.node,io=to.firstChild,uo=io&&findTagName(io,Yn),mo;if(uo){for(let bo of zn)if(bo.tag==uo&&(!bo.attrs||bo.attrs(mo||(mo=getAttrs(io,Yn))))){let Oo=to.lastChild,wo=Oo.type.id==CloseTag?Oo.from:to.to;if(wo>io.to)return{parser:bo.parser,overlay:[{from:io.to,to:wo}]}}}}if(Zn&&Jn==Attribute){let to=qn.node,io;if(io=to.firstChild){let uo=Zn[Yn.read(io.from,io.to)];if(uo)for(let mo of uo){if(mo.tagName&&mo.tagName!=findTagName(to.parent,Yn))continue;let bo=to.lastChild;if(bo.type.id==AttributeValue){let Oo=bo.from+1,wo=bo.lastChild,$o=bo.to-(wo&&wo.isError?0:1);if($o>Oo)return{parser:mo.parser,overlay:[{from:Oo,to:$o}]}}else if(bo.type.id==UnquotedAttributeValue)return{parser:mo.parser,overlay:[{from:bo.from,to:bo.to}]}}}}return null})}const descendantOp=99,Unit=1,callee=100,identifier$2=101,VariableName=2,space$1=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],colon=58,parenL=40,underscore=95,bracketL=91,dash=45,period=46,hash=35,percent=37,ampersand=38,backslash=92,newline$1=10;function isAlpha(_n){return _n>=65&&_n<=90||_n>=97&&_n<=122||_n>=161}function isDigit(_n){return _n>=48&&_n<=57}const identifiers=new ExternalTokenizer((_n,Ce)=>{for(let ke=!1,$n=0,Hn=0;;Hn++){let{next:zn}=_n;if(isAlpha(zn)||zn==dash||zn==underscore||ke&&isDigit(zn))!ke&&(zn!=dash||Hn>0)&&(ke=!0),$n===Hn&&zn==dash&&$n++,_n.advance();else if(zn==backslash&&_n.peek(1)!=newline$1)_n.advance(),_n.next>-1&&_n.advance(),ke=!0;else{ke&&_n.acceptToken(zn==parenL?callee:$n==2&&Ce.canShift(VariableName)?VariableName:identifier$2);break}}}),descendant=new ExternalTokenizer(_n=>{if(space$1.includes(_n.peek(-1))){let{next:Ce}=_n;(isAlpha(Ce)||Ce==underscore||Ce==hash||Ce==period||Ce==bracketL||Ce==colon&&isAlpha(_n.peek(1))||Ce==dash||Ce==ampersand)&&_n.acceptToken(descendantOp)}}),unitToken=new ExternalTokenizer(_n=>{if(!space$1.includes(_n.peek(-1))){let{next:Ce}=_n;if(Ce==percent&&(_n.advance(),_n.acceptToken(Unit)),isAlpha(Ce)){do _n.advance();while(isAlpha(_n.next)||isDigit(_n.next));_n.acceptToken(Unit)}}}),cssHighlighting=styleTags({"AtKeyword import charset namespace keyframes media supports":tags$1.definitionKeyword,"from to selector":tags$1.keyword,NamespaceName:tags$1.namespace,KeyframeName:tags$1.labelName,KeyframeRangeName:tags$1.operatorKeyword,TagName:tags$1.tagName,ClassName:tags$1.className,PseudoClassName:tags$1.constant(tags$1.className),IdName:tags$1.labelName,"FeatureName PropertyName":tags$1.propertyName,AttributeName:tags$1.attributeName,NumberLiteral:tags$1.number,KeywordQuery:tags$1.keyword,UnaryQueryOp:tags$1.operatorKeyword,"CallTag ValueName":tags$1.atom,VariableName:tags$1.variableName,Callee:tags$1.operatorKeyword,Unit:tags$1.unit,"UniversalSelector NestingSelector":tags$1.definitionOperator,MatchOp:tags$1.compareOperator,"ChildOp SiblingOp, LogicOp":tags$1.logicOperator,BinOp:tags$1.arithmeticOperator,Important:tags$1.modifier,Comment:tags$1.blockComment,ColorLiteral:tags$1.color,"ParenthesizedContent StringLiteral":tags$1.string,":":tags$1.punctuation,"PseudoOp #":tags$1.derefOperator,"; ,":tags$1.separator,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),spec_callee={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,"nth-last-of-type":32,dir:32,"host-context":32,url:60,"url-prefix":60,domain:60,regexp:60,selector:138},spec_AtKeyword={__proto__:null,"@import":118,"@media":142,"@charset":146,"@namespace":150,"@keyframes":156,"@supports":168},spec_identifier$1={__proto__:null,not:132,only:132},parser$1=LRParser.deserialize({version:14,states:":^QYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DTO$vQ[O'#DWOOQP'#Em'#EmO${QdO'#DgO%jQ[O'#DtO${QdO'#DvO%{Q[O'#DxO&WQ[O'#D{O&`Q[O'#ERO&nQ[O'#ETOOQS'#El'#ElOOQS'#EW'#EWQYQ[OOO&uQXO'#CdO'jQWO'#DcO'oQWO'#EsO'zQ[O'#EsQOQWOOP(UO#tO'#C_POOO)C@[)C@[OOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(aQ[O'#E[O({QWO,58{O)TQ[O,59SO$qQ[O,59oO$vQ[O,59rO(aQ[O,59uO(aQ[O,59wO(aQ[O,59xO)`Q[O'#DbOOQS,58{,58{OOQP'#Ck'#CkOOQO'#DR'#DROOQP,59S,59SO)gQWO,59SO)lQWO,59SOOQP'#DV'#DVOOQP,59o,59oOOQO'#DX'#DXO)qQ`O,59rOOQS'#Cp'#CpO${QdO'#CqO)yQvO'#CsO+ZQtO,5:ROOQO'#Cx'#CxO)lQWO'#CwO+oQWO'#CyO+tQ[O'#DOOOQS'#Ep'#EpOOQO'#Dj'#DjO+|Q[O'#DqO,[QWO'#EtO&`Q[O'#DoO,jQWO'#DrOOQO'#Eu'#EuO)OQWO,5:`O,oQpO,5:bOOQS'#Dz'#DzO,wQWO,5:dO,|Q[O,5:dOOQO'#D}'#D}O-UQWO,5:gO-ZQWO,5:mO-cQWO,5:oOOQS-E8U-E8UO${QdO,59}O-kQ[O'#E^O-xQWO,5;_O-xQWO,5;_POOO'#EV'#EVP.TO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.zQXO,5:vOOQO-E8Y-E8YOOQS1G.g1G.gOOQP1G.n1G.nO)gQWO1G.nO)lQWO1G.nOOQP1G/Z1G/ZO/XQ`O1G/^O/rQXO1G/aO0YQXO1G/cO0pQXO1G/dO1WQWO,59|O1]Q[O'#DSO1dQdO'#CoOOQP1G/^1G/^O${QdO1G/^O1kQpO,59]OOQS,59_,59_O${QdO,59aO1sQWO1G/mOOQS,59c,59cO1xQ!bO,59eOOQS'#DP'#DPOOQS'#EY'#EYO2QQ[O,59jOOQS,59j,59jO2YQWO'#DjO2eQWO,5:VO2jQWO,5:]O&`Q[O,5:XO&`Q[O'#E_O2rQWO,5;`O2}QWO,5:ZO(aQ[O,5:^OOQS1G/z1G/zOOQS1G/|1G/|OOQS1G0O1G0OO3`QWO1G0OO3eQdO'#EOOOQS1G0R1G0ROOQS1G0X1G0XOOQS1G0Z1G0ZO3pQtO1G/iOOQO,5:x,5:xO4WQ[O,5:xOOQO-E8[-E8[O4eQWO1G0yPOOO-E8T-E8TPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$x7+$xO${QdO7+$xOOQS1G/h1G/hO4pQXO'#ErO4wQWO,59nO4|QtO'#EXO5tQdO'#EoO6OQWO,59ZO6TQpO7+$xOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%X7+%XO6]QWO1G/POOQS-E8W-E8WOOQS1G/U1G/UO${QdO1G/qOOQO1G/w1G/wOOQO1G/s1G/sO6bQWO,5:yOOQO-E8]-E8]O6pQXO1G/xOOQS7+%j7+%jO6wQYO'#CsOOQO'#EQ'#EQO7SQ`O'#EPOOQO'#EP'#EPO7_QWO'#E`O7gQdO,5:jOOQS,5:j,5:jO7rQtO'#E]O${QdO'#E]O8sQdO7+%TOOQO7+%T7+%TOOQO1G0d1G0dO9WQpO<OAN>OO:xQdO,5:uOOQO-E8X-E8XOOQO<T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#e[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l[[o`#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSt^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#bQOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#[~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!Y^Oy%^z;'S%^;'S;=`%o<%lO%^dCoS|SOy%^z;'S%^;'S;=`%o<%lO%^bDQU!OQOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS!OQo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[![Qo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^nFfSq^Oy%^z;'S%^;'S;=`%o<%lO%^nFwSp^Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!bQo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!TUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!S^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!RQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",tokenizers:[descendant,unitToken,identifiers,1,2,3,4,new LocalTokenGroup("m~RRYZ[z{a~~g~aO#^~~dP!P!Qg~lO#_~~",28,105)],topRules:{StyleSheet:[0,4],Styles:[1,86]},specialized:[{term:100,get:_n=>spec_callee[_n]||-1},{term:58,get:_n=>spec_AtKeyword[_n]||-1},{term:101,get:_n=>spec_identifier$1[_n]||-1}],tokenPrec:1200});let _properties=null;function properties(){if(!_properties&&typeof document=="object"&&document.body){let{style:_n}=document.body,Ce=[],ke=new Set;for(let $n in _n)$n!="cssText"&&$n!="cssFloat"&&typeof _n[$n]=="string"&&(/[A-Z]/.test($n)&&($n=$n.replace(/[A-Z]/g,Hn=>"-"+Hn.toLowerCase())),ke.has($n)||(Ce.push($n),ke.add($n)));_properties=Ce.sort().map($n=>({type:"property",label:$n}))}return _properties||[]}const pseudoClasses=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(_n=>({type:"class",label:_n})),values=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(_n=>({type:"keyword",label:_n})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(_n=>({type:"constant",label:_n}))),tags=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(_n=>({type:"type",label:_n})),identifier$1=/^(\w[\w-]*|-\w[\w-]*|)$/,variable=/^-(-[\w-]*)?$/;function isVarArg(_n,Ce){var ke;if((_n.name=="("||_n.type.isError)&&(_n=_n.parent||_n),_n.name!="ArgList")return!1;let $n=(ke=_n.parent)===null||ke===void 0?void 0:ke.firstChild;return($n==null?void 0:$n.name)!="Callee"?!1:Ce.sliceString($n.from,$n.to)=="var"}const VariablesByNode=new NodeWeakMap,declSelector=["Declaration"];function astTop(_n){for(let Ce=_n;;){if(Ce.type.isTop)return Ce;if(!(Ce=Ce.parent))return _n}}function variableNames(_n,Ce,ke){if(Ce.to-Ce.from>4096){let $n=VariablesByNode.get(Ce);if($n)return $n;let Hn=[],zn=new Set,Zn=Ce.cursor(IterMode.IncludeAnonymous);if(Zn.firstChild())do for(let qn of variableNames(_n,Zn.node,ke))zn.has(qn.label)||(zn.add(qn.label),Hn.push(qn));while(Zn.nextSibling());return VariablesByNode.set(Ce,Hn),Hn}else{let $n=[],Hn=new Set;return Ce.cursor().iterate(zn=>{var Zn;if(ke(zn)&&zn.matchContext(declSelector)&&((Zn=zn.node.nextSibling)===null||Zn===void 0?void 0:Zn.name)==":"){let qn=_n.sliceString(zn.from,zn.to);Hn.has(qn)||(Hn.add(qn),$n.push({label:qn,type:"variable"}))}}),$n}}const defineCSSCompletionSource=_n=>Ce=>{let{state:ke,pos:$n}=Ce,Hn=syntaxTree(ke).resolveInner($n,-1),zn=Hn.type.isError&&Hn.from==Hn.to-1&&ke.doc.sliceString(Hn.from,Hn.to)=="-";if(Hn.name=="PropertyName"||(zn||Hn.name=="TagName")&&/^(Block|Styles)$/.test(Hn.resolve(Hn.to).name))return{from:Hn.from,options:properties(),validFor:identifier$1};if(Hn.name=="ValueName")return{from:Hn.from,options:values,validFor:identifier$1};if(Hn.name=="PseudoClassName")return{from:Hn.from,options:pseudoClasses,validFor:identifier$1};if(_n(Hn)||(Ce.explicit||zn)&&isVarArg(Hn,ke.doc))return{from:_n(Hn)||zn?Hn.from:$n,options:variableNames(ke.doc,astTop(Hn),_n),validFor:variable};if(Hn.name=="TagName"){for(let{parent:Yn}=Hn;Yn;Yn=Yn.parent)if(Yn.name=="Block")return{from:Hn.from,options:properties(),validFor:identifier$1};return{from:Hn.from,options:tags,validFor:identifier$1}}if(!Ce.explicit)return null;let Zn=Hn.resolve($n),qn=Zn.childBefore($n);return qn&&qn.name==":"&&Zn.name=="PseudoClassSelector"?{from:$n,options:pseudoClasses,validFor:identifier$1}:qn&&qn.name==":"&&Zn.name=="Declaration"||Zn.name=="ArgList"?{from:$n,options:values,validFor:identifier$1}:Zn.name=="Block"||Zn.name=="Styles"?{from:$n,options:properties(),validFor:identifier$1}:null},cssCompletionSource=defineCSSCompletionSource(_n=>_n.name=="VariableName"),cssLanguage=LRLanguage.define({name:"css",parser:parser$1.configure({props:[indentNodeProp.add({Declaration:continuedIndent()}),foldNodeProp.add({"Block KeyframeList":foldInside})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function css(){return new LanguageSupport(cssLanguage,cssLanguage.data.of({autocomplete:cssCompletionSource}))}const noSemi=312,incdec=1,incdecPrefix=2,questionDot=3,JSXStartTag=4,insertSemi=313,spaces=315,newline=316,LineComment=5,BlockComment=6,Dialect_jsx=0,space=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],braceR=125,semicolon=59,slash=47,star=42,plus=43,minus=45,lt=60,comma=44,question=63,dot=46,trackNewline=new ContextTracker({start:!1,shift(_n,Ce){return Ce==LineComment||Ce==BlockComment||Ce==spaces?_n:Ce==newline},strict:!1}),insertSemicolon=new ExternalTokenizer((_n,Ce)=>{let{next:ke}=_n;(ke==braceR||ke==-1||Ce.context)&&_n.acceptToken(insertSemi)},{contextual:!0,fallback:!0}),noSemicolon=new ExternalTokenizer((_n,Ce)=>{let{next:ke}=_n,$n;space.indexOf(ke)>-1||ke==slash&&(($n=_n.peek(1))==slash||$n==star)||ke!=braceR&&ke!=semicolon&&ke!=-1&&!Ce.context&&_n.acceptToken(noSemi)},{contextual:!0}),operatorToken=new ExternalTokenizer((_n,Ce)=>{let{next:ke}=_n;if(ke==plus||ke==minus){if(_n.advance(),ke==_n.next){_n.advance();let $n=!Ce.context&&Ce.canShift(incdec);_n.acceptToken($n?incdec:incdecPrefix)}}else ke==question&&_n.peek(1)==dot&&(_n.advance(),_n.advance(),(_n.next<48||_n.next>57)&&_n.acceptToken(questionDot))},{contextual:!0});function identifierChar(_n,Ce){return _n>=65&&_n<=90||_n>=97&&_n<=122||_n==95||_n>=192||!Ce&&_n>=48&&_n<=57}const jsx=new ExternalTokenizer((_n,Ce)=>{if(_n.next!=lt||!Ce.dialectEnabled(Dialect_jsx)||(_n.advance(),_n.next==slash))return;let ke=0;for(;space.indexOf(_n.next)>-1;)_n.advance(),ke++;if(identifierChar(_n.next,!0)){for(_n.advance(),ke++;identifierChar(_n.next,!1);)_n.advance(),ke++;for(;space.indexOf(_n.next)>-1;)_n.advance(),ke++;if(_n.next==comma)return;for(let $n=0;;$n++){if($n==7){if(!identifierChar(_n.next,!0))return;break}if(_n.next!="extends".charCodeAt($n))break;_n.advance(),ke++}}_n.acceptToken(JSXStartTag,-ke)}),jsHighlight=styleTags({"get set async static":tags$1.modifier,"for while do if else switch try catch finally return throw break continue default case":tags$1.controlKeyword,"in of await yield void typeof delete instanceof":tags$1.operatorKeyword,"let var const using function class extends":tags$1.definitionKeyword,"import export from":tags$1.moduleKeyword,"with debugger as new":tags$1.keyword,TemplateString:tags$1.special(tags$1.string),super:tags$1.atom,BooleanLiteral:tags$1.bool,this:tags$1.self,null:tags$1.null,Star:tags$1.modifier,VariableName:tags$1.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":tags$1.function(tags$1.variableName),VariableDefinition:tags$1.definition(tags$1.variableName),Label:tags$1.labelName,PropertyName:tags$1.propertyName,PrivatePropertyName:tags$1.special(tags$1.propertyName),"CallExpression/MemberExpression/PropertyName":tags$1.function(tags$1.propertyName),"FunctionDeclaration/VariableDefinition":tags$1.function(tags$1.definition(tags$1.variableName)),"ClassDeclaration/VariableDefinition":tags$1.definition(tags$1.className),PropertyDefinition:tags$1.definition(tags$1.propertyName),PrivatePropertyDefinition:tags$1.definition(tags$1.special(tags$1.propertyName)),UpdateOp:tags$1.updateOperator,"LineComment Hashbang":tags$1.lineComment,BlockComment:tags$1.blockComment,Number:tags$1.number,String:tags$1.string,Escape:tags$1.escape,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,RegExp:tags$1.regexp,Equals:tags$1.definitionOperator,Arrow:tags$1.function(tags$1.punctuation),": Spread":tags$1.punctuation,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,"InterpolationStart InterpolationEnd":tags$1.special(tags$1.brace),".":tags$1.derefOperator,", ;":tags$1.separator,"@":tags$1.meta,TypeName:tags$1.typeName,TypeDefinition:tags$1.definition(tags$1.typeName),"type enum interface implements namespace module declare":tags$1.definitionKeyword,"abstract global Privacy readonly override":tags$1.modifier,"is keyof unique infer":tags$1.operatorKeyword,JSXAttributeValue:tags$1.attributeValue,JSXText:tags$1.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":tags$1.angleBracket,"JSXIdentifier JSXNameSpacedName":tags$1.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":tags$1.attributeName,"JSXBuiltin/JSXIdentifier":tags$1.standard(tags$1.tagName)}),spec_identifier={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,extends:54,this:58,true:66,false:66,null:78,void:82,typeof:86,super:102,new:136,delete:148,yield:157,await:161,class:166,public:229,private:229,protected:229,readonly:231,instanceof:250,satisfies:253,in:254,const:256,import:290,keyof:345,unique:349,infer:355,is:391,abstract:411,implements:413,type:415,let:418,var:420,using:423,interface:429,enum:433,namespace:439,module:441,declare:445,global:449,for:468,of:477,while:480,with:484,do:488,if:492,else:494,switch:498,case:504,try:510,catch:514,finally:518,return:522,throw:526,break:530,continue:534,debugger:538},spec_word={__proto__:null,async:123,get:125,set:127,declare:189,public:191,private:191,protected:191,static:193,abstract:195,override:197,readonly:203,accessor:205,new:395},spec_LessThan={__proto__:null,"<":187},parser=LRParser.deserialize({version:14,states:"$@QO%TQ^OOO%[Q^OOO'_Q`OOP(lOWOOO*zQ?NdO'#CiO+RO!bO'#CjO+aO#tO'#CjO+oO!0LbO'#D^O.QQ^O'#DdO.bQ^O'#DoO%[Q^O'#DwO0fQ^O'#EPOOQ?Mr'#EX'#EXO1PQWO'#EUOOQO'#Em'#EmOOQO'#Ih'#IhO1XQWO'#GpO1dQWO'#ElO1iQWO'#ElO3hQ?NdO'#JmO6[Q?NdO'#JnO6uQWO'#F[O6zQ&jO'#FsOOQ?Mr'#Fe'#FeO7VO,YO'#FeO7eQ7[O'#FzO9RQWO'#FyOOQ?Mr'#Jn'#JnOOQ?Mp'#Jm'#JmO9WQWO'#GtOOQU'#KZ'#KZO9cQWO'#IUO9hQ?MxO'#IVOOQU'#JZ'#JZOOQU'#IZ'#IZQ`Q^OOO`Q^OOO9pQMnO'#DsO9wQ^O'#D{O:OQ^O'#D}O9^QWO'#GpO:VQ7[O'#CoO:eQWO'#EkO:pQWO'#EvO:uQ7[O'#FdO;dQWO'#GpOOQO'#K['#K[O;iQWO'#K[O;wQWO'#GxO;wQWO'#GyO;wQWO'#G{O9^QWO'#HOOVQWO'#CeO>gQWO'#H_O>oQWO'#HeO>oQWO'#HgO`Q^O'#HiO>oQWO'#HkO>oQWO'#HnO>tQWO'#HtO>yQ?MyO'#HzO%[Q^O'#H|O?UQ?MyO'#IOO?aQ?MyO'#IQO9hQ?MxO'#ISO?lQ?NdO'#CiO@nQ`O'#DiQOQWOOO%[Q^O'#D}OAUQWO'#EQO:VQ7[O'#EkOAaQWO'#EkOAlQpO'#FdOOQU'#Cg'#CgOOQ?Mp'#Dn'#DnOOQ?Mp'#Jq'#JqO%[Q^O'#JqOOQO'#Jt'#JtOOQO'#Id'#IdOBlQ`O'#EdOOQ?Mp'#Ec'#EcOOQ?Mp'#Jx'#JxOChQ?NQO'#EdOCrQ`O'#ETOOQO'#Js'#JsODWQ`O'#JtOEeQ`O'#ETOCrQ`O'#EdPErO#@ItO'#CbPOOO)CDx)CDxOOOO'#I['#I[OE}O!bO,59UOOQ?Mr,59U,59UOOOO'#I]'#I]OF]O#tO,59UO%[Q^O'#D`OOOO'#I_'#I_OFkO!0LbO,59xOOQ?Mr,59x,59xOFyQ^O'#I`OG^QWO'#JoOI]QrO'#JoO+}Q^O'#JoOIdQWO,5:OOIzQWO'#EmOJXQWO'#KOOJdQWO'#J}OJdQWO'#J}OJlQWO,5;ZOJqQWO'#J|OOQ?Mv,5:Z,5:ZOJxQ^O,5:ZOLvQ?NdO,5:cOMgQWO,5:kONQQ?MxO'#J{ONXQWO'#JzO9WQWO'#JzONmQWO'#JzONuQWO,5;YONzQWO'#JzO!#PQrO'#JnOOQ?Mr'#Ci'#CiO%[Q^O'#EPO!#oQrO,5:pOOQQ'#Ju'#JuOOQO-EpOOQU'#Jc'#JcOOQU,5>q,5>qOOQU-EtQWO'#HTO9^QWO'#HVO!DgQWO'#HVO:VQ7[O'#HXO!DlQWO'#HXOOQU,5=m,5=mO!DqQWO'#HYO!ESQWO'#CoO!EXQWO,59PO!EcQWO,59PO!GhQ^O,59POOQU,59P,59PO!GxQ?MxO,59PO%[Q^O,59PO!JTQ^O'#HaOOQU'#Hb'#HbOOQU'#Hc'#HcO`Q^O,5=yO!JkQWO,5=yO`Q^O,5>PO`Q^O,5>RO!JpQWO,5>TO`Q^O,5>VO!JuQWO,5>YO!JzQ^O,5>`OOQU,5>f,5>fO%[Q^O,5>fO9hQ?MxO,5>hOOQU,5>j,5>jO# UQWO,5>jOOQU,5>l,5>lO# UQWO,5>lOOQU,5>n,5>nO# rQ`O'#D[O%[Q^O'#JqO# |Q`O'#JqO#!kQ`O'#DjO#!|Q`O'#DjO#%_Q^O'#DjO#%fQWO'#JpO#%nQWO,5:TO#%sQWO'#EqO#&RQWO'#KPO#&ZQWO,5;[O#&`Q`O'#DjO#&mQ`O'#ESOOQ?Mr,5:l,5:lO%[Q^O,5:lO#&tQWO,5:lO>tQWO,5;VO!A}Q`O,5;VO!BVQ7[O,5;VO:VQ7[O,5;VO#&|QWO,5@]O#'RQ(CYO,5:pOOQO-EzO+}Q^O,5>zOOQO,5?Q,5?QO#*ZQ^O'#I`OOQO-E<^-E<^O#*hQWO,5@ZO#*pQrO,5@ZO#*wQWO,5@iOOQ?Mr1G/j1G/jO%[Q^O,5@jO#+PQWO'#IfOOQO-EuQ?NdO1G0|O#>|Q?NdO1G0|O#AZQ07bO'#CiO#CUQ07bO1G1_O#C]Q07bO'#JnO#CpQ?NdO,5?WOOQ?Mp-EoQWO1G3oO$3VQ^O1G3qO$7ZQ^O'#HpOOQU1G3t1G3tO$7hQWO'#HvO>tQWO'#HxOOQU1G3z1G3zO$7pQ^O1G3zO9hQ?MxO1G4QOOQU1G4S1G4SOOQ?Mp'#G]'#G]O9hQ?MxO1G4UO9hQ?MxO1G4WO$;wQWO,5@]O!(oQ^O,5;]O9WQWO,5;]O>tQWO,5:UO!(oQ^O,5:UO!A}Q`O,5:UO$;|Q07bO,5:UOOQO,5;],5;]O$tQWO1G0qO!A}Q`O1G0qO!BVQ7[O1G0qOOQ?Mp1G5w1G5wO!ArQ?MxO1G0ZOOQO1G0j1G0jO%[Q^O1G0jO$=aQ?MxO1G0jO$=lQ?MxO1G0jO!A}Q`O1G0ZOCrQ`O1G0ZO$=zQ?MxO1G0jOOQO1G0Z1G0ZO$>`Q?NdO1G0jPOOO-EjQpO,5rQrO1G4fOOQO1G4l1G4lO%[Q^O,5>zO$>|QWO1G5uO$?UQWO1G6TO$?^QrO1G6UO9WQWO,5?QO$?hQ?NdO1G6RO%[Q^O1G6RO$?xQ?MxO1G6RO$@ZQWO1G6QO$@ZQWO1G6QO9WQWO1G6QO$@cQWO,5?TO9WQWO,5?TOOQO,5?T,5?TO$@wQWO,5?TO$(PQWO,5?TOOQO-E[OOQU,5>[,5>[O%[Q^O'#HqO%8mQWO'#HsOOQU,5>b,5>bO9WQWO,5>bOOQU,5>d,5>dOOQU7+)f7+)fOOQU7+)l7+)lOOQU7+)p7+)pOOQU7+)r7+)rO%8rQ`O1G5wO%9WQ07bO1G0wO%9bQWO1G0wOOQO1G/p1G/pO%9mQ07bO1G/pO>tQWO1G/pO!(oQ^O'#DjOOQO,5>{,5>{OOQO-E<_-E<_OOQO,5?R,5?ROOQO-EtQWO7+&]O!A}Q`O7+&]OOQO7+%u7+%uO$>`Q?NdO7+&UOOQO7+&U7+&UO%[Q^O7+&UO%9wQ?MxO7+&UO!ArQ?MxO7+%uO!A}Q`O7+%uO%:SQ?MxO7+&UO%:bQ?NdO7++mO%[Q^O7++mO%:rQWO7++lO%:rQWO7++lOOQO1G4o1G4oO9WQWO1G4oO%:zQWO1G4oOOQQ7+%z7+%zO#&wQWO<|O%[Q^O,5>|OOQO-E<`-E<`O%FwQWO1G5xOOQ?Mr<]OOQU,5>_,5>_O&8uQWO1G3|O9WQWO7+&cO!(oQ^O7+&cOOQO7+%[7+%[O&8zQ07bO1G6UO>tQWO7+%[OOQ?Mr<tQWO<`Q?NdO<pQ?NdO,5?_O&@xQ?NdO7+'zO&CWQrO1G4hO&CbQ07bO7+&^O&EcQ07bO,5=UO&GgQ07bO,5=WO&GwQ07bO,5=UO&HXQ07bO,5=WO&HiQ07bO,59rO&JlQ07bO,5tQWO7+)hO'(OQWO<`Q?NdOAN?[OOQOAN>{AN>{O%[Q^OAN?[OOQO<`Q?NdOG24vO#&wQWOLD,nOOQULD,nLD,nO!&_Q7[OLD,nO'5TQrOLD,nO'5[Q07bO7+'xO'6}Q07bO,5?]O'8}Q07bO,5?_O':}Q07bO7+'zO'kOh%VOk+aO![']O%f+`O~O!d+cOa(WX![(WX'u(WX!Y(WX~Oa%lO![XO'u%lO~Oh%VO!i%cO~Oh%VO!i%cO(O%eO~O!d#vO#h(tO~Ob+nO%g+oO(O+kO(QTO(TUO!Z)TP~O!Y+pO`)SX~O[+tO~O`+uO~O![%}O(O%eO(P!lO`)SP~Oh%VO#]+zO~Oh%VOk+}O![$|O~O![,PO~O},RO![XO~O%k%tO~O!u,WO~Oe,]O~Ob,^O(O#nO(QTO(TUO!Z)RP~Oe%{O~O%g!QO(O&WO~P=RO[,cO`,bO~OPYOQYOSfOdzOeyOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO!fuO!iZO!lYO!mYO!nYO!pvO!uxO!y]O%e}O(QTO(TUO([VO(j[O(yiO~O![!eO!r!gO$V!kO(O!dO~P!EkO`,bOa%lO'u%lO~OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!u!hO$V!kO(O!dO(QTO(TUO([VO(j[O(yiO~Oa,hO!rwO#t!OO%i!OO%j!OO%k!OO~P!HTO!i&lO~O&Y,nO~O![,pO~O&k,rO&m,sOP&haQ&haS&haY&haa&had&hae&ham&hao&hap&haq&haw&hay&ha{&ha!P&ha!T&ha!U&ha![&ha!f&ha!i&ha!l&ha!m&ha!n&ha!p&ha!r&ha!u&ha!y&ha#t&ha$V&ha%e&ha%g&ha%i&ha%j&ha%k&ha%n&ha%p&ha%s&ha%t&ha%v&ha&S&ha&Y&ha&[&ha&^&ha&`&ha&c&ha&i&ha&o&ha&q&ha&s&ha&u&ha&w&ha's&ha(O&ha(Q&ha(T&ha([&ha(j&ha(y&ha!Z&ha&a&hab&ha&f&ha~O(O,xO~Oh!bX!Y!OX!Z!OX!d!OX!d!bX!i!bX#]!OX~O!Y!bX!Z!bX~P# ZO!d,}O#],|Oh(eX!Y#eX!Y(eX!Z#eX!Z(eX!d(eX!i(eX~Oh%VO!d-PO!i%cO!Y!^X!Z!^X~Op!nO!P!oO(QTO(TUO(`!mO~OP;POQ;POSfOdkOg'XX!Y'XX~P!+hO!Y.wOg(ka~OSfO![3uO$c3vO~O!Z3zO~Os3{O~P#.aOa$lq!Y$lq'u$lq's$lq!V$lq!h$lqs$lq![$lq%f$lq!d$lq~P!9mO!V3|O~P#.aO})zO!P){O(u%POk'ea(t'ea!Y'ea#]'ea~Og'ea#}'ea~P%)nO})zO!P){Ok'ga(t'ga(u'ga!Y'ga#]'ga~Og'ga#}'ga~P%*aO(m$YO~P#.aO!VfX!V$xX!YfX!Y$xX!d%PX#]fX~P!/gO(OQ#>g#@V#@e#@l#BR#Ba#C|#D[#Db#Dh#Dn#Dx#EO#EU#E`#Er#ExPPPPPPPPPP#FOPPPPPPP#Fs#Iz#KZ#Kb#KjPPP$!sP$!|$%t$,^$,a$,d$-P$-S$-Z$-cP$-i$-lP$.Y$.^$/U$0d$0i$1PPP$1U$1[$1`P$1c$1g$1k$2a$2x$3a$3e$3h$3k$3q$3t$3x$3|R!|RoqOXst!Z#d%k&o&q&r&t,k,p1|2PY!vQ']-]1a5eQ%rvQ%zyQ&R|Q&g!VS'T!e-TQ'c!iS'i!r!yU*e$|*V*jQ+i%{Q+v&TQ,[&aQ-Z'[Q-e'dQ-m'jQ0R*lQ1k,]R;v;T%QdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V,h,k,p-a-i-w-}.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3^5b5m5}6O6R6f8R8X8h8rS#q];Q!r)Z$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{ < TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:376,context:trackNewline,nodeProps:[["isolate",-8,5,6,14,34,36,48,50,52,""],["group",-26,9,17,19,65,204,208,212,213,215,218,221,231,233,239,241,243,245,248,254,260,262,264,266,268,270,271,"Statement",-34,13,14,29,32,33,39,48,51,52,54,59,67,69,73,77,79,81,82,107,108,117,118,135,138,140,141,142,143,144,146,147,166,167,169,"Expression",-23,28,30,34,38,40,42,171,173,175,176,178,179,180,182,183,184,186,187,188,198,200,202,203,"Type",-3,85,100,106,"ClassItem"],["openedBy",23,"<",35,"InterpolationStart",53,"[",57,"{",70,"(",159,"JSXStartCloseTag"],["closedBy",24,">",37,"InterpolationEnd",47,"]",58,"}",71,")",164,"JSXEndTag"]],propSources:[jsHighlight],skippedNodes:[0,5,6,274],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$h&j(RpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(RpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$h&j(Rp(U!b'w0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(S#S$h&j'x0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$h&j(Rp(U!b'x0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$h&j!m),Q(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(Q':f$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$h&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$c`$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$c``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$c`$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(U!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$c`(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$h&j(Rp(U!bOY%ZYZ&cZq%Zqr`#P#o`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$h&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(U!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$h&j(RpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(RpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Rp(U!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l^!Q^$h&j!U7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!U7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!U7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c^!Ezl$h&j(U!b!U7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(U!b!U7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(U!b!U7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(U!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$h&j(U!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!^!LYP;=`<%l!KS>^!L`P;=`<%l!_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!d$b$h&j#})Lv(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#O-spec_identifier[_n]||-1},{term:338,get:_n=>spec_word[_n]||-1},{term:92,get:_n=>spec_LessThan[_n]||-1}],tokenPrec:14749}),snippets=[snippetCompletion("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),snippetCompletion("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),snippetCompletion("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),snippetCompletion("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),snippetCompletion("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),snippetCompletion(`try { + \${} +} catch (\${error}) { + \${} +}`,{label:"try",detail:"/ catch block",type:"keyword"}),snippetCompletion("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),snippetCompletion(`if (\${}) { + \${} +} else { + \${} +}`,{label:"if",detail:"/ else block",type:"keyword"}),snippetCompletion(`class \${name} { + constructor(\${params}) { + \${} + } +}`,{label:"class",detail:"definition",type:"keyword"}),snippetCompletion('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),snippetCompletion('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],typescriptSnippets=snippets.concat([snippetCompletion("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),snippetCompletion("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),snippetCompletion("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),cache=new NodeWeakMap,ScopeNodes=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function defID(_n){return(Ce,ke)=>{let $n=Ce.node.getChild("VariableDefinition");return $n&&ke($n,_n),!0}}const functionContext=["FunctionDeclaration"],gatherCompletions={FunctionDeclaration:defID("function"),ClassDeclaration:defID("class"),ClassExpression:()=>!0,EnumDeclaration:defID("constant"),TypeAliasDeclaration:defID("type"),NamespaceDeclaration:defID("namespace"),VariableDefinition(_n,Ce){_n.matchContext(functionContext)||Ce(_n,"variable")},TypeDefinition(_n,Ce){Ce(_n,"type")},__proto__:null};function getScope(_n,Ce){let ke=cache.get(Ce);if(ke)return ke;let $n=[],Hn=!0;function zn(Zn,qn){let Yn=_n.sliceString(Zn.from,Zn.to);$n.push({label:Yn,type:qn})}return Ce.cursor(IterMode.IncludeAnonymous).iterate(Zn=>{if(Hn)Hn=!1;else if(Zn.name){let qn=gatherCompletions[Zn.name];if(qn&&qn(Zn,zn)||ScopeNodes.has(Zn.name))return!1}else if(Zn.to-Zn.from>8192){for(let qn of getScope(_n,Zn.node))$n.push(qn);return!1}}),cache.set(Ce,$n),$n}const Identifier=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,dontComplete=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName",".","?."];function localCompletionSource(_n){let Ce=syntaxTree(_n.state).resolveInner(_n.pos,-1);if(dontComplete.indexOf(Ce.name)>-1)return null;let ke=Ce.name=="VariableName"||Ce.to-Ce.from<20&&Identifier.test(_n.state.sliceDoc(Ce.from,Ce.to));if(!ke&&!_n.explicit)return null;let $n=[];for(let Hn=Ce;Hn;Hn=Hn.parent)ScopeNodes.has(Hn.name)&&($n=$n.concat(getScope(_n.state.doc,Hn)));return{options:$n,from:ke?Ce.from:_n.pos,validFor:Identifier}}const javascriptLanguage=LRLanguage.define({name:"javascript",parser:parser.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:flatIndent,SwitchBody:_n=>{let Ce=_n.textAfter,ke=/^\s*\}/.test(Ce),$n=/^\s*(case|default)\b/.test(Ce);return _n.baseIndent+(ke?0:$n?1:2)*_n.unit},Block:delimitedIndent({closing:"}"}),ArrowFunction:_n=>_n.baseIndent+_n.unit,"TemplateString BlockComment":()=>null,"Statement Property":continuedIndent({except:/^{/}),JSXElement(_n){let Ce=/^\s*<\//.test(_n.textAfter);return _n.lineIndent(_n.node.from)+(Ce?0:_n.unit)},JSXEscape(_n){let Ce=/\s*\}/.test(_n.textAfter);return _n.lineIndent(_n.node.from)+(Ce?0:_n.unit)},"JSXOpenTag JSXSelfClosingTag"(_n){return _n.column(_n.node.from)+_n.unit}}),foldNodeProp.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":foldInside,BlockComment(_n){return{from:_n.from+2,to:_n.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),jsxSublanguage={test:_n=>/^JSX/.test(_n.name),facet:defineLanguageFacet({commentTokens:{block:{open:"{/*",close:"*/}"}}})},typescriptLanguage=javascriptLanguage.configure({dialect:"ts"},"typescript"),jsxLanguage=javascriptLanguage.configure({dialect:"jsx",props:[sublanguageProp.add(_n=>_n.isTop?[jsxSublanguage]:void 0)]}),tsxLanguage=javascriptLanguage.configure({dialect:"jsx ts",props:[sublanguageProp.add(_n=>_n.isTop?[jsxSublanguage]:void 0)]},"typescript");let kwCompletion=_n=>({label:_n,type:"keyword"});const keywords="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(kwCompletion),typescriptKeywords=keywords.concat(["declare","implements","private","protected","public"].map(kwCompletion));function javascript(_n={}){let Ce=_n.jsx?_n.typescript?tsxLanguage:jsxLanguage:_n.typescript?typescriptLanguage:javascriptLanguage,ke=_n.typescript?typescriptSnippets.concat(typescriptKeywords):snippets.concat(keywords);return new LanguageSupport(Ce,[javascriptLanguage.data.of({autocomplete:ifNotIn(dontComplete,completeFromList(ke))}),javascriptLanguage.data.of({autocomplete:localCompletionSource}),_n.jsx?autoCloseTags$1:[]])}function findOpenTag(_n){for(;;){if(_n.name=="JSXOpenTag"||_n.name=="JSXSelfClosingTag"||_n.name=="JSXFragmentTag")return _n;if(_n.name=="JSXEscape"||!_n.parent)return null;_n=_n.parent}}function elementName$1(_n,Ce,ke=_n.length){for(let $n=Ce==null?void 0:Ce.firstChild;$n;$n=$n.nextSibling)if($n.name=="JSXIdentifier"||$n.name=="JSXBuiltin"||$n.name=="JSXNamespacedName"||$n.name=="JSXMemberExpression")return _n.sliceString($n.from,Math.min($n.to,ke));return""}const android=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),autoCloseTags$1=EditorView.inputHandler.of((_n,Ce,ke,$n,Hn)=>{if((android?_n.composing:_n.compositionStarted)||_n.state.readOnly||Ce!=ke||$n!=">"&&$n!="/"||!javascriptLanguage.isActiveAt(_n.state,Ce,-1))return!1;let zn=Hn(),{state:Zn}=zn,qn=Zn.changeByRange(Yn=>{var Jn;let{head:to}=Yn,io=syntaxTree(Zn).resolveInner(to-1,-1),uo;if(io.name=="JSXStartTag"&&(io=io.parent),!(Zn.doc.sliceString(to-1,to)!=$n||io.name=="JSXAttributeValue"&&io.to>to)){if($n==">"&&io.name=="JSXFragmentTag")return{range:Yn,changes:{from:to,insert:""}};if($n=="/"&&io.name=="JSXStartCloseTag"){let mo=io.parent,bo=mo.parent;if(bo&&mo.from==to-2&&((uo=elementName$1(Zn.doc,bo.firstChild,to))||((Jn=bo.firstChild)===null||Jn===void 0?void 0:Jn.name)=="JSXFragmentTag")){let Oo=`${uo}>`;return{range:EditorSelection.cursor(to+Oo.length,-1),changes:{from:to,insert:Oo}}}}else if($n==">"){let mo=findOpenTag(io);if(mo&&mo.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(Zn.doc.sliceString(to,to+2))&&(uo=elementName$1(Zn.doc,mo,to)))return{range:Yn,changes:{from:to,insert:``}}}}return{range:Yn}});return qn.changes.empty?!1:(_n.dispatch([zn,Zn.update(qn,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),Targets=["_blank","_self","_top","_parent"],Charsets=["ascii","utf-8","utf-16","latin1","latin1"],Methods=["get","post","put","delete"],Encs=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Bool=["true","false"],S={},Tags={a:{attrs:{href:null,ping:null,type:null,media:null,target:Targets,hreflang:null}},abbr:S,address:S,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:S,aside:S,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:S,base:{attrs:{href:null,target:Targets}},bdi:S,bdo:S,blockquote:{attrs:{cite:null}},body:S,br:S,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:S,center:S,cite:S,code:S,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:S,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:S,div:S,dl:S,dt:S,em:S,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:S,figure:S,footer:S,form:{attrs:{action:null,name:null,"accept-charset":Charsets,autocomplete:["on","off"],enctype:Encs,method:Methods,novalidate:["novalidate"],target:Targets}},h1:S,h2:S,h3:S,h4:S,h5:S,h6:S,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:S,hgroup:S,hr:S,html:{attrs:{manifest:null}},i:S,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:S,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:S,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:S,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:Charsets,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:S,noscript:S,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:S,param:{attrs:{name:null,value:null}},pre:S,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:S,rt:S,ruby:S,samp:S,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:Charsets}},section:S,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:S,source:{attrs:{src:null,type:null,media:null}},span:S,strong:S,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:S,summary:S,sup:S,table:S,tbody:S,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:S,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:S,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:S,time:{attrs:{datetime:null}},title:S,tr:S,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:S,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:S},GlobalAttrs={accesskey:null,class:null,contenteditable:Bool,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Bool,autocorrect:Bool,autocapitalize:Bool,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Bool,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Bool,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Bool,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Bool,"aria-hidden":Bool,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Bool,"aria-multiselectable":Bool,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Bool,"aria-relevant":null,"aria-required":Bool,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},eventAttributes="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(_n=>"on"+_n);for(let _n of eventAttributes)GlobalAttrs[_n]=null;class Schema{constructor(Ce,ke){this.tags=Object.assign(Object.assign({},Tags),Ce),this.globalAttrs=Object.assign(Object.assign({},GlobalAttrs),ke),this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}Schema.default=new Schema;function elementName(_n,Ce,ke=_n.length){if(!Ce)return"";let $n=Ce.firstChild,Hn=$n&&$n.getChild("TagName");return Hn?_n.sliceString(Hn.from,Math.min(Hn.to,ke)):""}function findParentElement(_n,Ce=!1){for(;_n;_n=_n.parent)if(_n.name=="Element")if(Ce)Ce=!1;else return _n;return null}function allowedChildren(_n,Ce,ke){let $n=ke.tags[elementName(_n,findParentElement(Ce))];return($n==null?void 0:$n.children)||ke.allTags}function openTags(_n,Ce){let ke=[];for(let $n=findParentElement(Ce);$n&&!$n.type.isTop;$n=findParentElement($n.parent)){let Hn=elementName(_n,$n);if(Hn&&$n.lastChild.name=="CloseTag")break;Hn&&ke.indexOf(Hn)<0&&(Ce.name=="EndTag"||Ce.from>=$n.firstChild.to)&&ke.push(Hn)}return ke}const identifier=/^[:\-\.\w\u00b7-\uffff]*$/;function completeTag(_n,Ce,ke,$n,Hn){let zn=/\s*>/.test(_n.sliceDoc(Hn,Hn+5))?"":">",Zn=findParentElement(ke,!0);return{from:$n,to:Hn,options:allowedChildren(_n.doc,Zn,Ce).map(qn=>({label:qn,type:"type"})).concat(openTags(_n.doc,ke).map((qn,Yn)=>({label:"/"+qn,apply:"/"+qn+zn,type:"type",boost:99-Yn}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeCloseTag(_n,Ce,ke,$n){let Hn=/\s*>/.test(_n.sliceDoc($n,$n+5))?"":">";return{from:ke,to:$n,options:openTags(_n.doc,Ce).map((zn,Zn)=>({label:zn,apply:zn+Hn,type:"type",boost:99-Zn})),validFor:identifier}}function completeStartTag(_n,Ce,ke,$n){let Hn=[],zn=0;for(let Zn of allowedChildren(_n.doc,ke,Ce))Hn.push({label:"<"+Zn,type:"type"});for(let Zn of openTags(_n.doc,ke))Hn.push({label:"",type:"type",boost:99-zn++});return{from:$n,to:$n,options:Hn,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeAttrName(_n,Ce,ke,$n,Hn){let zn=findParentElement(ke),Zn=zn?Ce.tags[elementName(_n.doc,zn)]:null,qn=Zn&&Zn.attrs?Object.keys(Zn.attrs):[],Yn=Zn&&Zn.globalAttrs===!1?qn:qn.length?qn.concat(Ce.globalAttrNames):Ce.globalAttrNames;return{from:$n,to:Hn,options:Yn.map(Jn=>({label:Jn,type:"property"})),validFor:identifier}}function completeAttrValue(_n,Ce,ke,$n,Hn){var zn;let Zn=(zn=ke.parent)===null||zn===void 0?void 0:zn.getChild("AttributeName"),qn=[],Yn;if(Zn){let Jn=_n.sliceDoc(Zn.from,Zn.to),to=Ce.globalAttrs[Jn];if(!to){let io=findParentElement(ke),uo=io?Ce.tags[elementName(_n.doc,io)]:null;to=(uo==null?void 0:uo.attrs)&&uo.attrs[Jn]}if(to){let io=_n.sliceDoc($n,Hn).toLowerCase(),uo='"',mo='"';/^['"]/.test(io)?(Yn=io[0]=='"'?/^[^"]*$/:/^[^']*$/,uo="",mo=_n.sliceDoc(Hn,Hn+1)==io[0]?"":io[0],io=io.slice(1),$n++):Yn=/^[^\s<>='"]*$/;for(let bo of to)qn.push({label:bo,apply:uo+bo+mo,type:"constant"})}}return{from:$n,to:Hn,options:qn,validFor:Yn}}function htmlCompletionFor(_n,Ce){let{state:ke,pos:$n}=Ce,Hn=syntaxTree(ke).resolveInner($n,-1),zn=Hn.resolve($n);for(let Zn=$n,qn;zn==Hn&&(qn=Hn.childBefore(Zn));){let Yn=qn.lastChild;if(!Yn||!Yn.type.isError||Yn.fromhtmlCompletionFor($n,Hn)}const jsonParser=javascriptLanguage.parser.configure({top:"SingleExpression"}),defaultNesting=[{tag:"script",attrs:_n=>_n.type=="text/typescript"||_n.lang=="ts",parser:typescriptLanguage.parser},{tag:"script",attrs:_n=>_n.type=="text/babel"||_n.type=="text/jsx",parser:jsxLanguage.parser},{tag:"script",attrs:_n=>_n.type=="text/typescript-jsx",parser:tsxLanguage.parser},{tag:"script",attrs(_n){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(_n.type)},parser:jsonParser},{tag:"script",attrs(_n){return!_n.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(_n.type)},parser:javascriptLanguage.parser},{tag:"style",attrs(_n){return(!_n.lang||_n.lang=="css")&&(!_n.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(_n.type))},parser:cssLanguage.parser}],defaultAttrs=[{name:"style",parser:cssLanguage.parser.configure({top:"Styles"})}].concat(eventAttributes.map(_n=>({name:_n,parser:javascriptLanguage.parser}))),htmlPlain=LRLanguage.define({name:"html",parser:parser$2.configure({props:[indentNodeProp.add({Element(_n){let Ce=/^(\s*)(<\/)?/.exec(_n.textAfter);return _n.node.to<=_n.pos+Ce[0].length?_n.continue():_n.lineIndent(_n.node.from)+(Ce[2]?0:_n.unit)},"OpenTag CloseTag SelfClosingTag"(_n){return _n.column(_n.node.from)+_n.unit},Document(_n){if(_n.pos+/\s*/.exec(_n.textAfter)[0].length<_n.node.to)return _n.continue();let Ce=null,ke;for(let $n=_n.node;;){let Hn=$n.lastChild;if(!Hn||Hn.name!="Element"||Hn.to!=$n.to)break;Ce=$n=Hn}return Ce&&!((ke=Ce.lastChild)&&(ke.name=="CloseTag"||ke.name=="SelfClosingTag"))?_n.lineIndent(Ce.from)+_n.unit:null}}),foldNodeProp.add({Element(_n){let Ce=_n.firstChild,ke=_n.lastChild;return!Ce||Ce.name!="OpenTag"?null:{from:Ce.to,to:ke.name=="CloseTag"?ke.from:_n.to}}}),bracketMatchingHandle.add({"OpenTag CloseTag":_n=>_n.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),htmlLanguage=htmlPlain.configure({wrap:configureNesting(defaultNesting,defaultAttrs)});function html(_n={}){let Ce="",ke;_n.matchClosingTags===!1&&(Ce="noMatch"),_n.selfClosingTags===!0&&(Ce=(Ce?Ce+" ":"")+"selfClosing"),(_n.nestedLanguages&&_n.nestedLanguages.length||_n.nestedAttributes&&_n.nestedAttributes.length)&&(ke=configureNesting((_n.nestedLanguages||[]).concat(defaultNesting),(_n.nestedAttributes||[]).concat(defaultAttrs)));let $n=ke?htmlPlain.configure({wrap:ke,dialect:Ce}):Ce?htmlLanguage.configure({dialect:Ce}):htmlLanguage;return new LanguageSupport($n,[htmlLanguage.data.of({autocomplete:htmlCompletionSourceWith(_n)}),_n.autoCloseTags!==!1?autoCloseTags:[],javascript().support,css().support])}const selfClosers=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),autoCloseTags=EditorView.inputHandler.of((_n,Ce,ke,$n,Hn)=>{if(_n.composing||_n.state.readOnly||Ce!=ke||$n!=">"&&$n!="/"||!htmlLanguage.isActiveAt(_n.state,Ce,-1))return!1;let zn=Hn(),{state:Zn}=zn,qn=Zn.changeByRange(Yn=>{var Jn,to,io;let uo=Zn.doc.sliceString(Yn.from-1,Yn.to)==$n,{head:mo}=Yn,bo=syntaxTree(Zn).resolveInner(mo,-1),Oo;if(uo&&$n==">"&&bo.name=="EndTag"){let wo=bo.parent;if(((to=(Jn=wo.parent)===null||Jn===void 0?void 0:Jn.lastChild)===null||to===void 0?void 0:to.name)!="CloseTag"&&(Oo=elementName(Zn.doc,wo.parent,mo))&&!selfClosers.has(Oo)){let $o=mo+(Zn.doc.sliceString(mo,mo+1)===">"?1:0),Do=``;return{range:Yn,changes:{from:mo,to:$o,insert:Do}}}}else if(uo&&$n=="/"&&bo.name=="IncompleteCloseTag"){let wo=bo.parent;if(bo.from==mo-2&&((io=wo.lastChild)===null||io===void 0?void 0:io.name)!="CloseTag"&&(Oo=elementName(Zn.doc,wo,mo))&&!selfClosers.has(Oo)){let $o=mo+(Zn.doc.sliceString(mo,mo+1)===">"?1:0),Do=`${Oo}>`;return{range:EditorSelection.cursor(mo+Do.length,-1),changes:{from:mo,to:$o,insert:Do}}}}return{range:Yn}});return qn.changes.empty?!1:(_n.dispatch([zn,Zn.update(qn,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),data=defineLanguageFacet({commentTokens:{block:{open:""}}}),headingProp=new NodeProp,commonmark=parser$3.configure({props:[foldNodeProp.add(_n=>!_n.is("Block")||_n.is("Document")||isHeading(_n)!=null||isList(_n)?void 0:(Ce,ke)=>({from:ke.doc.lineAt(Ce.from).to,to:Ce.to})),headingProp.add(isHeading),indentNodeProp.add({Document:()=>null}),languageDataProp.add({Document:data})]});function isHeading(_n){let Ce=/^(?:ATX|Setext)Heading(\d)$/.exec(_n.name);return Ce?+Ce[1]:void 0}function isList(_n){return _n.name=="OrderedList"||_n.name=="BulletList"}function findSectionEnd(_n,Ce){let ke=_n;for(;;){let $n=ke.nextSibling,Hn;if(!$n||(Hn=isHeading($n.type))!=null&&Hn<=Ce)break;ke=$n}return ke.to}const headerIndent=foldService.of((_n,Ce,ke)=>{for(let $n=syntaxTree(_n).resolveInner(ke,-1);$n&&!($n.fromke)return{from:ke,to:zn}}return null});function mkLang(_n){return new Language(data,_n,[headerIndent],"markdown")}const commonmarkLanguage=mkLang(commonmark),extended=commonmark.configure([GFM,Subscript,Superscript,Emoji,{props:[foldNodeProp.add({Table:(_n,Ce)=>({from:Ce.doc.lineAt(_n.from).to,to:_n.to})})]}]),markdownLanguage=mkLang(extended);function getCodeParser(_n,Ce){return ke=>{if(ke&&_n){let $n=null;if(ke=/\S*/.exec(ke)[0],typeof _n=="function"?$n=_n(ke):$n=LanguageDescription.matchLanguageName(_n,ke,!0),$n instanceof LanguageDescription)return $n.support?$n.support.language.parser:ParseContext.getSkippingParser($n.load());if($n)return $n.parser}return Ce?Ce.parser:null}}class Context{constructor(Ce,ke,$n,Hn,zn,Zn,qn){this.node=Ce,this.from=ke,this.to=$n,this.spaceBefore=Hn,this.spaceAfter=zn,this.type=Zn,this.item=qn}blank(Ce,ke=!0){let $n=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(Ce!=null){for(;$n.length0;Hn--)$n+=" ";return $n+(ke?this.spaceAfter:"")}}marker(Ce,ke){let $n=this.node.name=="OrderedList"?String(+itemNumber(this.item,Ce)[2]+ke):"";return this.spaceBefore+$n+this.type+this.spaceAfter}}function getContext(_n,Ce){let ke=[];for(let Hn=_n;Hn&&Hn.name!="Document";Hn=Hn.parent)(Hn.name=="ListItem"||Hn.name=="Blockquote"||Hn.name=="FencedCode")&&ke.push(Hn);let $n=[];for(let Hn=ke.length-1;Hn>=0;Hn--){let zn=ke[Hn],Zn,qn=Ce.lineAt(zn.from),Yn=zn.from-qn.from;if(zn.name=="FencedCode")$n.push(new Context(zn,Yn,Yn,"","","",null));else if(zn.name=="Blockquote"&&(Zn=/^ *>( ?)/.exec(qn.text.slice(Yn))))$n.push(new Context(zn,Yn,Yn+Zn[0].length,"",Zn[1],">",null));else if(zn.name=="ListItem"&&zn.parent.name=="OrderedList"&&(Zn=/^( *)\d+([.)])( *)/.exec(qn.text.slice(Yn)))){let Jn=Zn[3],to=Zn[0].length;Jn.length>=4&&(Jn=Jn.slice(0,Jn.length-4),to-=4),$n.push(new Context(zn.parent,Yn,Yn+to,Zn[1],Jn,Zn[2],zn))}else if(zn.name=="ListItem"&&zn.parent.name=="BulletList"&&(Zn=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(qn.text.slice(Yn)))){let Jn=Zn[4],to=Zn[0].length;Jn.length>4&&(Jn=Jn.slice(0,Jn.length-4),to-=4);let io=Zn[2];Zn[3]&&(io+=Zn[3].replace(/[xX]/," ")),$n.push(new Context(zn.parent,Yn,Yn+to,Zn[1],Jn,io,zn))}}return $n}function itemNumber(_n,Ce){return/^(\s*)(\d+)(?=[.)])/.exec(Ce.sliceString(_n.from,_n.from+10))}function renumberList(_n,Ce,ke,$n=0){for(let Hn=-1,zn=_n;;){if(zn.name=="ListItem"){let qn=itemNumber(zn,Ce),Yn=+qn[2];if(Hn>=0){if(Yn!=Hn+1)return;ke.push({from:zn.from+qn[1].length,to:zn.from+qn[0].length,insert:String(Hn+2+$n)})}Hn=Yn}let Zn=zn.nextSibling;if(!Zn)break;zn=Zn}}function normalizeIndent(_n,Ce){let ke=/^[ \t]*/.exec(_n)[0].length;if(!ke||Ce.facet(indentUnit)!=" ")return _n;let $n=countColumn(_n,4,ke),Hn="";for(let zn=$n;zn>0;)zn>=4?(Hn+=" ",zn-=4):(Hn+=" ",zn--);return Hn+_n.slice(ke)}const insertNewlineContinueMarkup=({state:_n,dispatch:Ce})=>{let ke=syntaxTree(_n),{doc:$n}=_n,Hn=null,zn=_n.changeByRange(Zn=>{if(!Zn.empty||!markdownLanguage.isActiveAt(_n,Zn.from))return Hn={range:Zn};let qn=Zn.from,Yn=$n.lineAt(qn),Jn=getContext(ke.resolveInner(qn,-1),$n);for(;Jn.length&&Jn[Jn.length-1].from>qn-Yn.from;)Jn.pop();if(!Jn.length)return Hn={range:Zn};let to=Jn[Jn.length-1];if(to.to-to.spaceAfter.length>qn-Yn.from)return Hn={range:Zn};let io=qn>=to.to-to.spaceAfter.length&&!/\S/.test(Yn.text.slice(to.to));if(to.item&&io){let wo=to.node.firstChild,$o=to.node.getChild("ListItem","ListItem");if(wo.to>=qn||$o&&$o.to0&&!/[^\s>]/.test($n.lineAt(Yn.from-1).text)){let Do=Jn.length>1?Jn[Jn.length-2]:null,xo,Bo="";Do&&Do.item?(xo=Yn.from+Do.from,Bo=Do.marker($n,1)):xo=Yn.from+(Do?Do.to:0);let Vo=[{from:xo,to:qn,insert:Bo}];return to.node.name=="OrderedList"&&renumberList(to.item,$n,Vo,-2),Do&&Do.node.name=="OrderedList"&&renumberList(Do.item,$n,Vo),{range:EditorSelection.cursor(xo+Bo.length),changes:Vo}}else{let Do=blankLine(Jn,_n,Yn);return{range:EditorSelection.cursor(qn+Do.length+1),changes:{from:Yn.from,insert:Do+_n.lineBreak}}}}if(to.node.name=="Blockquote"&&io&&Yn.from){let wo=$n.lineAt(Yn.from-1),$o=/>\s*$/.exec(wo.text);if($o&&$o.index==to.from){let Do=_n.changes([{from:wo.from+$o.index,to:wo.to},{from:Yn.from+to.from,to:Yn.to}]);return{range:Zn.map(Do),changes:Do}}}let uo=[];to.node.name=="OrderedList"&&renumberList(to.item,$n,uo);let mo=to.item&&to.item.from]*/.exec(Yn.text)[0].length>=to.to)for(let wo=0,$o=Jn.length-1;wo<=$o;wo++)bo+=wo==$o&&!mo?Jn[wo].marker($n,1):Jn[wo].blank(wo<$o?countColumn(Yn.text,4,Jn[wo+1].from)-bo.length:null);let Oo=qn;for(;Oo>Yn.from&&/\s/.test(Yn.text.charAt(Oo-Yn.from-1));)Oo--;return bo=normalizeIndent(bo,_n),nonTightList(to.node,_n.doc)&&(bo=blankLine(Jn,_n,Yn)+_n.lineBreak+bo),uo.push({from:Oo,to:qn,insert:_n.lineBreak+bo}),{range:EditorSelection.cursor(Oo+bo.length+1),changes:uo}});return Hn?!1:(Ce(_n.update(zn,{scrollIntoView:!0,userEvent:"input"})),!0)};function isMark(_n){return _n.name=="QuoteMark"||_n.name=="ListMark"}function nonTightList(_n,Ce){if(_n.name!="OrderedList"&&_n.name!="BulletList")return!1;let ke=_n.firstChild,$n=_n.getChild("ListItem","ListItem");if(!$n)return!1;let Hn=Ce.lineAt(ke.to),zn=Ce.lineAt($n.from),Zn=/^[\s>]*$/.test(Hn.text);return Hn.number+(Zn?0:1){let ke=syntaxTree(_n),$n=null,Hn=_n.changeByRange(zn=>{let Zn=zn.from,{doc:qn}=_n;if(zn.empty&&markdownLanguage.isActiveAt(_n,zn.from)){let Yn=qn.lineAt(Zn),Jn=getContext(contextNodeForDelete(ke,Zn),qn);if(Jn.length){let to=Jn[Jn.length-1],io=to.to-to.spaceAfter.length+(to.spaceAfter?1:0);if(Zn-Yn.from>io&&!/\S/.test(Yn.text.slice(io,Zn-Yn.from)))return{range:EditorSelection.cursor(Yn.from+io),changes:{from:Yn.from+io,to:Zn}};if(Zn-Yn.from==io&&(!to.item||Yn.from<=to.item.from||!/\S/.test(Yn.text.slice(0,to.to)))){let uo=Yn.from+to.from;if(to.item&&to.node.from{let Yn=new Compartment,Jn=new Compartment,to=EditorState.create({doc:zn,extensions:[basicSetup,keymap.of([indentWithTab,...lintKeymap,...completionKeymap]),Yn.of(markdown()),markdown(),autocompletion(),Jn.of(EditorState.tabSize.of(4)),basicSetup,EditorView.editable.of(Zn),EditorView.updateListener.of(function(io){io.docChanged&&ke(2,zn=io.state.doc.toString())}),EditorView.lineWrapping,EditorView.contentAttributes.of({spellcheck:"true"})]});Hn=new EditorView({state:to,parent:$n})}),onDestroy(()=>{Hn&&Hn.destroy()});function qn(Yn){binding_callbacks[Yn?"unshift":"push"](()=>{$n=Yn,ke(1,$n)})}return _n.$$set=Yn=>{"value"in Yn&&ke(2,zn=Yn.value),"editable"in Yn&&ke(0,Zn=Yn.editable)},[Zn,$n,zn,qn]}class CodemirrorMarkdown extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$g,create_fragment$g,safe_not_equal,{value:2,editable:0})}}function create_if_block$b(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[3]),attr(Ce,"class","invalid-feedback d-block")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&8&&set_data(ke,$n[3])},d($n){$n&&detach(Ce)}}}function create_fragment$f(_n){let Ce,ke,$n,Hn,zn;function Zn(Jn){_n[5](Jn)}let qn={editable:!_n[1].readonly||_n[2]};_n[0]!==void 0&&(qn.value=_n[0]),ke=new CodemirrorMarkdown({props:qn}),binding_callbacks.push(()=>bind(ke,"value",Zn));let Yn=_n[3]&&create_if_block$b(_n);return{c(){Ce=element("div"),create_component(ke.$$.fragment),Hn=space$3(),Yn&&Yn.c(),attr(Ce,"class","mb-3")},m(Jn,to){insert$1(Jn,Ce,to),mount_component(ke,Ce,null),append(Ce,Hn),Yn&&Yn.m(Ce,null),zn=!0},p(Jn,[to]){const io={};to&6&&(io.editable=!Jn[1].readonly||Jn[2]),!$n&&to&1&&($n=!0,io.value=Jn[0],add_flush_callback(()=>$n=!1)),ke.$set(io),Jn[3]?Yn?Yn.p(Jn,to):(Yn=create_if_block$b(Jn),Yn.c(),Yn.m(Ce,null)):Yn&&(Yn.d(1),Yn=null)},i(Jn){zn||(transition_in(ke.$$.fragment,Jn),zn=!0)},o(Jn){transition_out(ke.$$.fragment,Jn),zn=!1},d(Jn){Jn&&detach(Ce),destroy_component(ke),Yn&&Yn.d()}}}function instance$f(_n,Ce,ke){let $n,{value:Hn}=Ce,{field:zn}=Ce,{isCreateMode:Zn}=Ce,{validationErrors:qn}=Ce;function Yn(Jn){Hn=Jn,ke(0,Hn)}return _n.$$set=Jn=>{"value"in Jn&&ke(0,Hn=Jn.value),"field"in Jn&&ke(1,zn=Jn.field),"isCreateMode"in Jn&&ke(2,Zn=Jn.isCreateMode),"validationErrors"in Jn&&ke(4,qn=Jn.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&18&&ke(3,$n=getErrorMessage(qn,zn.name))},[Hn,zn,Zn,$n,qn,Yn]}class Markdown extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$f,create_fragment$f,safe_not_equal,{value:0,field:1,isCreateMode:2,validationErrors:4})}}function create_if_block$a(_n){let Ce,ke=_n[0].help+"",$n;return{c(){Ce=element("small"),$n=text(ke),attr(Ce,"class","help-text light-text")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p(Hn,zn){zn&1&&ke!==(ke=Hn[0].help+"")&&set_data($n,ke)},d(Hn){Hn&&detach(Ce)}}}function create_fragment$e(_n){let Ce,ke,$n,Hn,zn=_n[0].label+"",Zn,qn,Yn,Jn,to,io=_n[0].name+"",uo,mo=_n[0].help&&create_if_block$a(_n);return{c(){Ce=element("div"),ke=element("div"),$n=element("div"),Hn=element("label"),Zn=text(zn),qn=space$3(),mo&&mo.c(),Yn=space$3(),Jn=element("span"),to=element("code"),uo=text(io),attr(Hn,"for",_n[1]),attr($n,"class","label-and-help"),attr(to,"class","field-id"),attr(Jn,"tabindex","-1"),attr(Jn,"class","text-decoration-none"),attr(ke,"class","labels"),attr(Ce,"class","field-header")},m(bo,Oo){insert$1(bo,Ce,Oo),append(Ce,ke),append(ke,$n),append($n,Hn),append(Hn,Zn),append($n,qn),mo&&mo.m($n,null),append(ke,Yn),append(ke,Jn),append(Jn,to),append(to,uo)},p(bo,[Oo]){Oo&1&&zn!==(zn=bo[0].label+"")&&set_data(Zn,zn),Oo&2&&attr(Hn,"for",bo[1]),bo[0].help?mo?mo.p(bo,Oo):(mo=create_if_block$a(bo),mo.c(),mo.m($n,null)):mo&&(mo.d(1),mo=null),Oo&1&&io!==(io=bo[0].name+"")&&set_data(uo,io)},i:noop,o:noop,d(bo){bo&&detach(Ce),mo&&mo.d()}}}function instance$e(_n,Ce,ke){let{field:$n}=Ce,{id:Hn}=Ce;return _n.$$set=zn=>{"field"in zn&&ke(0,$n=zn.field),"id"in zn&&ke(1,Hn=zn.id)},[$n,Hn]}class FieldHeader extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$e,create_fragment$e,safe_not_equal,{field:0,id:1})}}function get_each_context$7(_n,Ce,ke){const $n=_n.slice();return $n[3]=Ce[ke],$n}function get_each_context_1$1(_n,Ce,ke){const $n=_n.slice();return $n[24]=Ce[ke],$n}function create_if_block_3$4(_n){let Ce,ke;return{c(){Ce=element("div"),ke=text(_n[8]),attr(Ce,"class","invalid-feedback d-block mb-3")},m($n,Hn){insert$1($n,Ce,Hn),append(Ce,ke)},p($n,Hn){Hn&256&&set_data(ke,$n[8])},d($n){$n&&detach(Ce)}}}function create_if_block_2$4(_n){let Ce=[],ke=new Map,$n,Hn=ensure_array_like(_n[6]);const zn=qn=>qn[24].id;for(let qn=0;qnqn[3].id;for(let qn=0;qn0&&create_if_block$9(_n);return{c(){Ce=element("div"),mo&&mo.c(),ke=space$3(),$n=element("input"),zn=space$3(),Zn=element("div"),bo&&bo.c(),qn=space$3(),Oo&&Oo.c(),Yn=space$3(),wo&&wo.c(),Jn=empty$1(),attr($n,"type","search"),attr($n,"id",_n[2]),attr($n,"placeholder",Hn="Search for "+_n[1].label),attr($n,"autocomplete","off"),toggle_class($n,"is-invalid",_n[8]),attr(Zn,"class","reference-tags-results"),attr(Ce,"class","reference-tags")},m($o,Do){insert$1($o,Ce,Do),mo&&mo.m(Ce,null),append(Ce,ke),append(Ce,$n),_n[15]($n),set_input_value($n,_n[5]),append(Ce,zn),append(Ce,Zn),bo&&bo.m(Zn,null),append(Zn,qn),Oo&&Oo.m(Zn,null),insert$1($o,Yn,Do),wo&&wo.m($o,Do),insert$1($o,Jn,Do),to=!0,io||(uo=[listen($n,"keyup",_n[13]),listen($n,"input",_n[16])],io=!0)},p($o,[Do]){$o[8]?mo?mo.p($o,Do):(mo=create_if_block_3$4($o),mo.c(),mo.m(Ce,ke)):mo&&(mo.d(1),mo=null),(!to||Do&4)&&attr($n,"id",$o[2]),(!to||Do&2&&Hn!==(Hn="Search for "+$o[1].label))&&attr($n,"placeholder",Hn),Do&32&&$n.value!==$o[5]&&set_input_value($n,$o[5]),(!to||Do&256)&&toggle_class($n,"is-invalid",$o[8]),$o[6]?bo?bo.p($o,Do):(bo=create_if_block_2$4($o),bo.c(),bo.m(Zn,qn)):bo&&(bo.d(1),bo=null),$o[5]?Oo?Oo.p($o,Do):(Oo=create_if_block_1$7($o),Oo.c(),Oo.m(Zn,null)):Oo&&(Oo.d(1),Oo=null),$o[7].length>0?wo?(wo.p($o,Do),Do&128&&transition_in(wo,1)):(wo=create_if_block$9($o),wo.c(),transition_in(wo,1),wo.m(Jn.parentNode,Jn)):wo&&(group_outros(),transition_out(wo,1,1,()=>{wo=null}),check_outros())},i($o){to||(transition_in(wo),to=!0)},o($o){transition_out(wo),to=!1},d($o){$o&&(detach(Ce),detach(Yn),detach(Jn)),mo&&mo.d(),_n[15](null),bo&&bo.d(),Oo&&Oo.d(),wo&&wo.d($o),io=!1,run_all(uo)}}}function instance$d(_n,Ce,ke){let $n,Hn,zn;const Zn=getContext$1("channel");let{field:qn}=Ce,{id:Yn}=Ce,{record:Jn}=Ce,{graph:to}=Ce,io,{validationErrors:uo}=Ce,mo="";function bo(ls,ps){ls.preventDefault(),ke(0,to.edges=to.edges.filter(rs=>!(rs.target===ps&&rs.field===qn.name)),to)}function Oo(ls,ps){ls.preventDefault(),axios.post(Zn.lucentUrl+"/records",{isCreateMode:!0,record:{schema:qn.collections[0],status:"published",data:{[qn.searchField]:ps}}}).then(rs=>{ke(6,zn=[]),wo(ls,rs.data.records[0]),console.log(rs)}).catch(rs=>{ke(6,zn=[]),console.log(rs)})}function wo(ls,ps){ls.preventDefault(),ke(0,to=insertEdges(to,Jn,[ps],qn.name,ls.detail.action)),ke(5,mo=""),io.focus(),io.blur()}const $o=lodashExports.debounce(ls=>{axios.get(Zn.lucentUrl+"/records/suggestions",{params:{schema:qn.collections[0],field:qn.searchField,value:mo,ui:"text"}}).then(ps=>{ke(6,zn=ps.data)}).catch(ps=>{ke(6,zn=[]),console.log(ps)})},500);function Do(ls){binding_callbacks[ls?"unshift":"push"](()=>{io=ls,ke(4,io)})}function xo(){mo=this.value,ke(5,mo)}const Bo=(ls,ps)=>wo(ps,ls),Vo=(ls,ps)=>wo(ps,ls),Ko=ls=>Oo(ls,mo),Mo=ls=>Oo(ls,mo),es=(ls,ps)=>bo(ps,ls.id);return _n.$$set=ls=>{"field"in ls&&ke(1,qn=ls.field),"id"in ls&&ke(2,Yn=ls.id),"record"in ls&&ke(3,Jn=ls.record),"graph"in ls&&ke(0,to=ls.graph),"validationErrors"in ls&&ke(14,uo=ls.validationErrors)},_n.$$.update=()=>{_n.$$.dirty&16386&&ke(8,$n=getErrorMessage(uo,qn.name)),_n.$$.dirty&11&&ke(7,Hn=to.edges.filter(ls=>ls.field===qn.name).map(ls=>to.records.find(ps=>ps.id==ls.target&&Jn.id==ls.source)).filter(ls=>!!(ls!=null&&ls.id))??[])},ke(6,zn=[]),[to,qn,Yn,Jn,io,mo,zn,Hn,$n,Zn,bo,Oo,wo,$o,uo,Do,xo,Bo,Vo,Ko,Mo,es]}class ReferenceTags extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$d,create_fragment$d,safe_not_equal,{field:1,id:2,record:3,graph:0,validationErrors:14})}}function create_else_block$5(_n){let Ce,ke,$n,Hn;function zn(Yn){_n[17](Yn)}var Zn=_n[7];function qn(Yn,Jn){let to={schema:Yn[3],field:Yn[2],validationErrors:Yn[5],isCreateMode:Yn[6],id:Yn[8]};return Yn[0][Yn[2].name]!==void 0&&(to.value=Yn[0][Yn[2].name]),{props:to}}return Zn&&(Ce=construct_svelte_component(Zn,qn(_n)),binding_callbacks.push(()=>bind(Ce,"value",zn))),{c(){Ce&&create_component(Ce.$$.fragment),$n=empty$1()},m(Yn,Jn){Ce&&mount_component(Ce,Yn,Jn),insert$1(Yn,$n,Jn),Hn=!0},p(Yn,Jn){if(Zn!==(Zn=Yn[7])){if(Ce){group_outros();const to=Ce;transition_out(to.$$.fragment,1,0,()=>{destroy_component(to,1)}),check_outros()}Zn?(Ce=construct_svelte_component(Zn,qn(Yn)),binding_callbacks.push(()=>bind(Ce,"value",zn)),create_component(Ce.$$.fragment),transition_in(Ce.$$.fragment,1),mount_component(Ce,$n.parentNode,$n)):Ce=null}else if(Zn){const to={};Jn&8&&(to.schema=Yn[3]),Jn&4&&(to.field=Yn[2]),Jn&32&&(to.validationErrors=Yn[5]),Jn&64&&(to.isCreateMode=Yn[6]),!ke&&Jn&5&&(ke=!0,to.value=Yn[0][Yn[2].name],add_flush_callback(()=>ke=!1)),Ce.$set(to)}},i(Yn){Hn||(Ce&&transition_in(Ce.$$.fragment,Yn),Hn=!0)},o(Yn){Ce&&transition_out(Ce.$$.fragment,Yn),Hn=!1},d(Yn){Yn&&detach($n),Ce&&destroy_component(Ce,Yn)}}}function create_if_block_6(_n){let Ce,ke,$n,Hn;function zn(Yn){_n[15](Yn)}function Zn(Yn){_n[16](Yn)}let qn={schema:_n[3],field:_n[2],validationErrors:_n[5],isCreateMode:_n[6],record:_n[4]};return _n[0][_n[2].name]!==void 0&&(qn.value=_n[0][_n[2].name]),_n[1]!==void 0&&(qn.graph=_n[1]),Ce=new RichEditor({props:qn}),binding_callbacks.push(()=>bind(Ce,"value",zn)),binding_callbacks.push(()=>bind(Ce,"graph",Zn)),{c(){create_component(Ce.$$.fragment)},m(Yn,Jn){mount_component(Ce,Yn,Jn),Hn=!0},p(Yn,Jn){const to={};Jn&8&&(to.schema=Yn[3]),Jn&4&&(to.field=Yn[2]),Jn&32&&(to.validationErrors=Yn[5]),Jn&64&&(to.isCreateMode=Yn[6]),Jn&16&&(to.record=Yn[4]),!ke&&Jn&5&&(ke=!0,to.value=Yn[0][Yn[2].name],add_flush_callback(()=>ke=!1)),!$n&&Jn&2&&($n=!0,to.graph=Yn[1],add_flush_callback(()=>$n=!1)),Ce.$set(to)},i(Yn){Hn||(transition_in(Ce.$$.fragment,Yn),Hn=!0)},o(Yn){transition_out(Ce.$$.fragment,Yn),Hn=!1},d(Yn){destroy_component(Ce,Yn)}}}function create_if_block_5$1(_n){let Ce,ke,$n;function Hn(Zn){_n[14](Zn)}let zn={field:_n[2],validationErrors:_n[5],isCreateMode:_n[6],id:_n[8]};return _n[0][_n[2].name]!==void 0&&(zn.value=_n[0][_n[2].name]),Ce=new Textarea({props:zn}),binding_callbacks.push(()=>bind(Ce,"value",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),qn&64&&(Yn.isCreateMode=Zn[6]),!ke&&qn&5&&(ke=!0,Yn.value=Zn[0][Zn[2].name],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block_4$2(_n){let Ce,ke,$n;function Hn(Zn){_n[13](Zn)}let zn={field:_n[2],id:_n[8],validationErrors:_n[5],isCreateMode:_n[6]};return _n[0][_n[2].name]!==void 0&&(zn.value=_n[0][_n[2].name]),Ce=new Slug({props:zn}),binding_callbacks.push(()=>bind(Ce,"value",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),qn&64&&(Yn.isCreateMode=Zn[6]),!ke&&qn&5&&(ke=!0,Yn.value=Zn[0][Zn[2].name],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block_3$3(_n){let Ce,ke,$n;function Hn(Zn){_n[12](Zn)}let zn={field:_n[2],id:_n[8],validationErrors:_n[5],isCreateMode:_n[6]};return _n[0][_n[2].name]!==void 0&&(zn.value=_n[0][_n[2].name]),Ce=new Text$2({props:zn}),binding_callbacks.push(()=>bind(Ce,"value",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),qn&64&&(Yn.isCreateMode=Zn[6]),!ke&&qn&5&&(ke=!0,Yn.value=Zn[0][Zn[2].name],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block_2$3(_n){let Ce,ke,$n;function Hn(Zn){_n[11](Zn)}let zn={record:_n[4],field:_n[2],validationErrors:_n[5]};return _n[1]!==void 0&&(zn.graph=_n[1]),Ce=new File$1({props:zn}),binding_callbacks.push(()=>bind(Ce,"graph",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&16&&(Yn.record=Zn[4]),qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),!ke&&qn&2&&(ke=!0,Yn.graph=Zn[1],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block_1$6(_n){let Ce,ke,$n;function Hn(Zn){_n[10](Zn)}let zn={id:_n[8],record:_n[4],field:_n[2],validationErrors:_n[5]};return _n[1]!==void 0&&(zn.graph=_n[1]),Ce=new Reference({props:zn}),binding_callbacks.push(()=>bind(Ce,"graph",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&16&&(Yn.record=Zn[4]),qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),!ke&&qn&2&&(ke=!0,Yn.graph=Zn[1],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_if_block$8(_n){let Ce,ke,$n;function Hn(Zn){_n[9](Zn)}let zn={id:_n[8],record:_n[4],field:_n[2],validationErrors:_n[5]};return _n[1]!==void 0&&(zn.graph=_n[1]),Ce=new ReferenceTags({props:zn}),binding_callbacks.push(()=>bind(Ce,"graph",Hn)),{c(){create_component(Ce.$$.fragment)},m(Zn,qn){mount_component(Ce,Zn,qn),$n=!0},p(Zn,qn){const Yn={};qn&16&&(Yn.record=Zn[4]),qn&4&&(Yn.field=Zn[2]),qn&32&&(Yn.validationErrors=Zn[5]),!ke&&qn&2&&(ke=!0,Yn.graph=Zn[1],add_flush_callback(()=>ke=!1)),Ce.$set(Yn)},i(Zn){$n||(transition_in(Ce.$$.fragment,Zn),$n=!0)},o(Zn){transition_out(Ce.$$.fragment,Zn),$n=!1},d(Zn){destroy_component(Ce,Zn)}}}function create_fragment$c(_n){let Ce,ke,$n,Hn,zn,Zn;ke=new FieldHeader({props:{field:_n[2],id:_n[8]}});const qn=[create_if_block$8,create_if_block_1$6,create_if_block_2$3,create_if_block_3$3,create_if_block_4$2,create_if_block_5$1,create_if_block_6,create_else_block$5],Yn=[];function Jn(to,io){return to[2].info.name==="reference"&&to[2].layout==="tags"?0:to[2].info.name==="reference"?1:to[2].info.name==="file"?2:to[2].info.name==="text"?3:to[2].info.name==="slug"?4:to[2].info.name==="textarea"?5:to[2].info.name==="rich"?6:7}return Hn=Jn(_n),zn=Yn[Hn]=qn[Hn](_n),{c(){Ce=element("div"),create_component(ke.$$.fragment),$n=space$3(),zn.c(),attr(Ce,"class","editor-field")},m(to,io){insert$1(to,Ce,io),mount_component(ke,Ce,null),append(Ce,$n),Yn[Hn].m(Ce,null),Zn=!0},p(to,[io]){const uo={};io&4&&(uo.field=to[2]),ke.$set(uo);let mo=Hn;Hn=Jn(to),Hn===mo?Yn[Hn].p(to,io):(group_outros(),transition_out(Yn[mo],1,1,()=>{Yn[mo]=null}),check_outros(),zn=Yn[Hn],zn?zn.p(to,io):(zn=Yn[Hn]=qn[Hn](to),zn.c()),transition_in(zn,1),zn.m(Ce,null))},i(to){Zn||(transition_in(ke.$$.fragment,to),transition_in(zn),Zn=!0)},o(to){transition_out(ke.$$.fragment,to),transition_out(zn),Zn=!1},d(to){to&&detach(Ce),destroy_component(ke),Yn[Hn].d()}}}function instance$c(_n,Ce,ke){const $n={text:Text$2,slug:Slug,textarea:Textarea,rich:RichEditor,color:Color,checkbox:Checkbox,number:Number$1,url:Url,date:Date$1,datetime:Datetime,uuid:UUID,json:JSON$1,markdown:Markdown};let{field:Hn}=Ce,{data:zn}=Ce,{schema:Zn}=Ce,{record:qn}=Ce,{graph:Yn}=Ce,{validationErrors:Jn}=Ce,{isCreateMode:to}=Ce,io=$n[Hn.info.name];const uo=`field-${Hn.name}-${qn.id}`;function mo(Ko){Yn=Ko,ke(1,Yn)}function bo(Ko){Yn=Ko,ke(1,Yn)}function Oo(Ko){Yn=Ko,ke(1,Yn)}function wo(Ko){_n.$$.not_equal(zn[Hn.name],Ko)&&(zn[Hn.name]=Ko,ke(0,zn))}function $o(Ko){_n.$$.not_equal(zn[Hn.name],Ko)&&(zn[Hn.name]=Ko,ke(0,zn))}function Do(Ko){_n.$$.not_equal(zn[Hn.name],Ko)&&(zn[Hn.name]=Ko,ke(0,zn))}function xo(Ko){_n.$$.not_equal(zn[Hn.name],Ko)&&(zn[Hn.name]=Ko,ke(0,zn))}function Bo(Ko){Yn=Ko,ke(1,Yn)}function Vo(Ko){_n.$$.not_equal(zn[Hn.name],Ko)&&(zn[Hn.name]=Ko,ke(0,zn))}return _n.$$set=Ko=>{"field"in Ko&&ke(2,Hn=Ko.field),"data"in Ko&&ke(0,zn=Ko.data),"schema"in Ko&&ke(3,Zn=Ko.schema),"record"in Ko&&ke(4,qn=Ko.record),"graph"in Ko&&ke(1,Yn=Ko.graph),"validationErrors"in Ko&&ke(5,Jn=Ko.validationErrors),"isCreateMode"in Ko&&ke(6,to=Ko.isCreateMode)},[zn,Yn,Hn,Zn,qn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo]}class FormField extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$c,create_fragment$c,safe_not_equal,{field:2,data:0,schema:3,record:4,graph:1,validationErrors:5,isCreateMode:6})}}function get_each_context$6(_n,Ce,ke){const $n=_n.slice();return $n[3]=Ce[ke],$n}function create_else_block$4(_n){let Ce;return{c(){Ce=text("Nothing links to this record")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_each_block$6(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn;return qn=new PreviewReference({props:{record:_n[3].record,hasDelete:!1,graph:_n[0]}}),{c(){Ce=element("div"),ke=element("span"),$n=text("In "),Hn=element("i"),Hn.textContent=`${_n[3].field}`,zn=text(" of"),Zn=space$3(),create_component(qn.$$.fragment),Yn=space$3(),set_style(ke,"font-size","14px"),set_style(ke,"margin-bottom","5px"),set_style(ke,"display","block"),set_style(Ce,"margin","0 0 15px"),set_style(Ce,"position","relative")},m(to,io){insert$1(to,Ce,io),append(Ce,ke),append(ke,$n),append(ke,Hn),append(ke,zn),append(Ce,Zn),mount_component(qn,Ce,null),append(Ce,Yn),Jn=!0},p(to,io){const uo={};io&1&&(uo.graph=to[0]),qn.$set(uo)},i(to){Jn||(transition_in(qn.$$.fragment,to),Jn=!0)},o(to){transition_out(qn.$$.fragment,to),Jn=!1},d(to){to&&detach(Ce),destroy_component(qn)}}}function create_fragment$b(_n){let Ce,ke,$n=ensure_array_like(_n[1]),Hn=[];for(let qn=0;qn<$n.length;qn+=1)Hn[qn]=create_each_block$6(get_each_context$6(_n,$n,qn));const zn=qn=>transition_out(Hn[qn],1,1,()=>{Hn[qn]=null});let Zn=null;return $n.length||(Zn=create_else_block$4()),{c(){Ce=element("div");for(let qn=0;qnke.name===Ce)}function instance$b(_n,Ce,ke){const $n=getContext$1("channel");let{graph:Hn}=Ce,zn=Hn.parentEdges.map(Zn=>{let qn=$n.schemas.find(Jn=>Jn.name===Zn.sourceSchema);return{field:findEdgeField(qn,Zn.field).label,record:Hn.records.find(Jn=>Jn.id===Zn.source)}});return _n.$$set=Zn=>{"graph"in Zn&&ke(0,Hn=Zn.graph)},[Hn,zn]}class Graph extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$b,create_fragment$b,safe_not_equal,{graph:0})}}function get_each_context$5(_n,Ce,ke){const $n=_n.slice();return $n[4]=Ce[ke],$n}function create_else_block_1$1(_n){let Ce,ke=(JSON.stringify(_n[1])??"")+"",$n,Hn;return{c(){Ce=element("div"),$n=text(ke),attr(Ce,"class",Hn=_n[3]+" field-content svelte-md34ba")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,$n)},p(zn,Zn){Zn&2&&ke!==(ke=(JSON.stringify(zn[1])??"")+"")&&set_data($n,ke),Zn&8&&Hn!==(Hn=zn[3]+" field-content svelte-md34ba")&&attr(Ce,"class",Hn)},i:noop,o:noop,d(zn){zn&&detach(Ce)}}}function create_if_block_3$2(_n){let Ce,ke=(_n[1]??"")+"",$n;return{c(){Ce=element("div"),attr(Ce,"class",$n=_n[3]+" field-content svelte-md34ba")},m(Hn,zn){insert$1(Hn,Ce,zn),Ce.innerHTML=ke},p(Hn,zn){zn&2&&ke!==(ke=(Hn[1]??"")+"")&&(Ce.innerHTML=ke),zn&8&&$n!==($n=Hn[3]+" field-content svelte-md34ba")&&attr(Ce,"class",$n)},i:noop,o:noop,d(Hn){Hn&&detach(Ce)}}}function create_if_block_2$2(_n){let Ce,ke=(JSON.stringify(_n[1],null,2)??"")+"",$n,Hn;return{c(){Ce=element("div"),$n=text(ke),attr(Ce,"class",Hn=_n[3]+" field-content svelte-md34ba"),set_style(Ce,"white-space","break-spaces")},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,$n)},p(zn,Zn){Zn&2&&ke!==(ke=(JSON.stringify(zn[1],null,2)??"")+"")&&set_data($n,ke),Zn&8&&Hn!==(Hn=zn[3]+" field-content svelte-md34ba")&&attr(Ce,"class",Hn)},i:noop,o:noop,d(zn){zn&&detach(Ce)}}}function create_if_block$7(_n){let Ce,ke,$n,Hn,zn=ensure_array_like(_n[2][_n[0].name]),Zn=[];for(let Yn=0;Yntransition_out(Zn[Yn],1,1,()=>{Zn[Yn]=null});return{c(){Ce=element("div"),ke=element("div");for(let Yn=0;Yn{Zn[to]=null}),check_outros(),ke=Zn[Ce],ke?ke.p(Yn,Jn):(ke=Zn[Ce]=zn[Ce](Yn),ke.c()),transition_in(ke,1),ke.m($n.parentNode,$n))},i(Yn){Hn||(transition_in(ke),Hn=!0)},o(Yn){transition_out(ke),Hn=!1},d(Yn){Yn&&detach($n),Zn[Ce].d(Yn)}}}function create_fragment$a(_n){let Ce,ke,$n,Hn,zn,Zn;const qn=[create_if_block$7,create_if_block_2$2,create_if_block_3$2,create_else_block_1$1],Yn=[];function Jn(to,io){return io&1&&(Ce=null),io&1&&(ke=null),Ce==null&&(Ce=!!["reference","file"].includes(to[0].info.name)),Ce?0:(ke==null&&(ke=!!["json","block"].includes(to[0].info.name)),ke?1:to[0].info.name==="rich"?2:3)}return $n=Jn(_n,-1),Hn=Yn[$n]=qn[$n](_n),{c(){Hn.c(),zn=empty$1()},m(to,io){Yn[$n].m(to,io),insert$1(to,zn,io),Zn=!0},p(to,[io]){let uo=$n;$n=Jn(to,io),$n===uo?Yn[$n].p(to,io):(group_outros(),transition_out(Yn[uo],1,1,()=>{Yn[uo]=null}),check_outros(),Hn=Yn[$n],Hn?Hn.p(to,io):(Hn=Yn[$n]=qn[$n](to),Hn.c()),transition_in(Hn,1),Hn.m(zn.parentNode,zn))},i(to){Zn||(transition_in(Hn),Zn=!0)},o(to){transition_out(Hn),Zn=!1},d(to){to&&detach(zn),Yn[$n].d(to)}}}function instance$a(_n,Ce,ke){let{field:$n}=Ce,{side:Hn}=Ce,{edges:zn}=Ce,{colorClass:Zn}=Ce;return _n.$$set=qn=>{"field"in qn&&ke(0,$n=qn.field),"side"in qn&&ke(1,Hn=qn.side),"edges"in qn&&ke(2,zn=qn.edges),"colorClass"in qn&&ke(3,Zn=qn.colorClass)},[$n,Hn,zn,Zn]}class RevisionCell extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$a,create_fragment$a,safe_not_equal,{field:0,side:1,edges:2,colorClass:3})}}function create_fragment$9(_n){let Ce,ke,$n,Hn=_n[0].rank+"",zn,Zn,qn,Yn,Jn,to=_n[0].target+"",io,uo;return{c(){Ce=element("div"),ke=element("span"),$n=text("Rank: "),zn=text(Hn),Zn=space$3(),qn=element("span"),qn.textContent="id:",Yn=space$3(),Jn=element("a"),io=text(to),attr(ke,"class","me-3"),attr(Jn,"href",uo=_n[1].lucentUrl+"/records/"+_n[0].target),attr(Jn,"target","_blank")},m(mo,bo){insert$1(mo,Ce,bo),append(Ce,ke),append(ke,$n),append(ke,zn),append(Ce,Zn),append(Ce,qn),append(Ce,Yn),append(Ce,Jn),append(Jn,io)},p(mo,[bo]){bo&1&&Hn!==(Hn=mo[0].rank+"")&&set_data(zn,Hn),bo&1&&to!==(to=mo[0].target+"")&&set_data(io,to),bo&1&&uo!==(uo=mo[1].lucentUrl+"/records/"+mo[0].target)&&attr(Jn,"href",uo)},i:noop,o:noop,d(mo){mo&&detach(Ce)}}}function instance$9(_n,Ce,ke){const $n=getContext$1("channel");let{edge:Hn}=Ce;return _n.$$set=zn=>{"edge"in zn&&ke(0,Hn=zn.edge)},[Hn,$n]}class RevisionEdgeRow extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$9,create_fragment$9,safe_not_equal,{edge:0})}}function get_each_context$4(_n,Ce,ke){const $n=_n.slice();return $n[16]=Ce[ke][0],$n[17]=Ce[ke][1],$n}function get_each_context_1(_n,Ce,ke){const $n=_n.slice();return $n[20]=Ce[ke],$n}function get_each_context_2(_n,Ce,ke){const $n=_n.slice();return $n[20]=Ce[ke],$n}function get_each_context_3(_n,Ce,ke){const $n=_n.slice();return $n[16]=Ce[ke],$n}function get_each_context_4(_n,Ce,ke){const $n=_n.slice();return $n[27]=Ce[ke],$n}function create_else_block_3(_n){let Ce;return{c(){Ce=element("div"),Ce.innerHTML="Revisions are not enabled for this Schema",attr(Ce,"class","card-body")},m(ke,$n){insert$1(ke,Ce,$n)},p:noop,i:noop,o:noop,d(ke){ke&&detach(Ce)}}}function create_if_block_3$1(_n){let Ce,ke,$n,Hn,zn=ensure_array_like(_n[8]),Zn=[];for(let Yn=0;Yntransition_out(Zn[Yn],1,1,()=>{Zn[Yn]=null});return{c(){Ce=element("div"),Ce.textContent="Revisions",ke=space$3();for(let Yn=0;Yn{$n=null}),check_outros())},i(Hn){ke||(transition_in($n),ke=!0)},o(Hn){transition_out($n),ke=!1},d(Hn){Hn&&detach(Ce),$n&&$n.d(Hn)}}}function create_if_block$6(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn;const Jn=[create_if_block_1$4,create_else_block_2],to=[];function io(Oo,wo){return Oo[6].length>0?0:1}ke=io(_n),$n=to[ke]=Jn[ke](_n);let uo=ensure_array_like(Object.entries(_n[7])),mo=[];for(let Oo=0;Ootransition_out(mo[Oo],1,1,()=>{mo[Oo]=null});return{c(){Ce=element("div"),$n.c(),Hn=space$3(),zn=element("div"),Zn=element("p"),Zn.textContent="Record References",qn=space$3();for(let Oo=0;Oo{to[$o]=null}),check_outros(),$n=to[ke],$n?$n.p(Oo,wo):($n=to[ke]=Jn[ke](Oo),$n.c()),transition_in($n,1),$n.m(Ce,Hn)),wo&128){uo=ensure_array_like(Object.entries(Oo[7]));let Do;for(Do=0;DoNothing will change
    ",attr(Ce,"class","lx-card text-center")},m(ke,$n){insert$1(ke,Ce,$n)},p:noop,i:noop,o:noop,d(ke){ke&&detach(Ce)}}}function create_if_block_1$4(_n){let Ce,ke,$n,Hn,zn=_n[5]._sys.version+"",Zn,qn,Yn,Jn,to,io,uo,mo=_n[4]&&create_if_block_2$1(_n),bo=ensure_array_like(_n[6]),Oo=[];for(let $o=0;$otransition_out(Oo[$o],1,1,()=>{Oo[$o]=null});return{c(){Ce=element("p"),Ce.textContent="If you choose to rollback to this revision",ke=space$3(),$n=element("button"),Hn=text("Rollback to version "),Zn=text(zn),qn=space$3(),mo&&mo.c(),Yn=space$3(),Jn=element("div");for(let $o=0;$otransition_out($o[es],1,1,()=>{$o[es]=null});let xo=null;wo.length||(xo=create_else_block_1());let Bo=ensure_array_like(_n[17].revision),Vo=[];for(let es=0;estransition_out(Vo[es],1,1,()=>{Vo[es]=null});let Mo=null;return Bo.length||(Mo=create_else_block$2()),{c(){Ce=element("div"),ke=element("div"),Hn=text($n),zn=text(":"),Zn=space$3(),qn=element("div"),Yn=element("p"),Yn.textContent="Record",Jn=space$3();for(let es=0;es<$o.length;es+=1)$o[es].c();xo&&xo.c(),to=space$3(),io=element("div"),uo=element("p"),uo.textContent="Revision",mo=space$3();for(let es=0;es0?0:1}Qs=Zs(_n),zo=Il[Qs]=za[Qs](_n);let Sr=_n[5]&&create_if_block$6(_n);return{c(){Ce=element("div"),ke=element("div"),$n=element("div"),Hn=element("div"),zn=element("span"),zn.textContent="record id",Zn=space$3(),qn=element("small"),Jn=text(Yn),to=space$3(),io=element("div"),uo=element("span"),uo.textContent="current version",mo=space$3(),Oo=text(bo),wo=space$3(),$o=element("div"),Do=element("span"),Do.textContent="created",xo=space$3(),create_component(Bo.$$.fragment),Vo=space$3(),Mo=text(Ko),es=space$3(),ls=element("div"),ps=element("span"),ps.textContent="updated",rs=space$3(),create_component(Yo.$$.fragment),Ys=space$3(),Js=text(sr),ko=space$3(),gs=element("div"),xs=element("span"),xs.textContent="Rules for this schema",Qr=space$3(),cr=element("small"),ws=text("Each record maintains the last "),Br=text(Fs),_r=text(` + versions`),ha=space$3(),hs=element("div"),zo.c(),el=space$3(),ga=element("div"),Sr&&Sr.c(),attr(zn,"class","label text-end text-muted"),attr(uo,"class","label text-end text-muted"),attr(Do,"class","label text-end text-muted"),attr(ps,"class","label text-end text-muted"),attr($n,"class","col-8"),attr(xs,"class","label d-block text-muted "),attr(gs,"class","col-4"),attr(ke,"class","row"),attr(Ce,"class","lx-card "),attr(hs,"class","revisions")},m(Us,fs){insert$1(Us,Ce,fs),append(Ce,ke),append(ke,$n),append($n,Hn),append(Hn,zn),append(Hn,Zn),append(Hn,qn),append(qn,Jn),append($n,to),append($n,io),append(io,uo),append(io,mo),append(io,Oo),append($n,wo),append($n,$o),append($o,Do),append($o,xo),mount_component(Bo,$o,null),append($o,Vo),append($o,Mo),append($n,es),append($n,ls),append(ls,ps),append(ls,rs),mount_component(Yo,ls,null),append(ls,Ys),append(ls,Js),append(ke,ko),append(ke,gs),append(gs,xs),append(gs,Qr),append(gs,cr),append(cr,ws),append(cr,Br),append(cr,_r),insert$1(Us,ha,fs),insert$1(Us,hs,fs),Il[Qs].m(hs,null),insert$1(Us,el,fs),insert$1(Us,ga,fs),Sr&&Sr.m(ga,null),_n[13](ga),Ca=!0},p(Us,[fs]){(!Ca||fs&1)&&Yn!==(Yn=Us[0].id+"")&&set_data(Jn,Yn),(!Ca||fs&1)&&bo!==(bo=Us[0]._sys.version+"")&&set_data(Oo,bo);const dr={};fs&3&&(dr.name=usernameById(Us[1],Us[0]._sys.createdBy)),Bo.$set(dr),(!Ca||fs&1)&&Ko!==(Ko=friendlyDate(Us[0]._sys.createdAt)+"")&&set_data(Mo,Ko);const Vr={};fs&3&&(Vr.name=usernameById(Us[1],Us[0]._sys.updatedBy)),Yo.$set(Vr),(!Ca||fs&1)&&sr!==(sr=friendlyDate(Us[0]._sys.updatedAt)+"")&&set_data(Js,sr),(!Ca||fs&4)&&Fs!==(Fs=Us[2].revisions+"")&&set_data(Br,Fs);let nr=Qs;Qs=Zs(Us),Qs===nr?Il[Qs].p(Us,fs):(group_outros(),transition_out(Il[nr],1,1,()=>{Il[nr]=null}),check_outros(),zo=Il[Qs],zo?zo.p(Us,fs):(zo=Il[Qs]=za[Qs](Us),zo.c()),transition_in(zo,1),zo.m(hs,null)),Us[5]?Sr?(Sr.p(Us,fs),fs&32&&transition_in(Sr,1)):(Sr=create_if_block$6(Us),Sr.c(),transition_in(Sr,1),Sr.m(ga,null)):Sr&&(group_outros(),transition_out(Sr,1,1,()=>{Sr=null}),check_outros())},i(Us){Ca||(transition_in(Bo.$$.fragment,Us),transition_in(Yo.$$.fragment,Us),transition_in(zo),transition_in(Sr),Ca=!0)},o(Us){transition_out(Bo.$$.fragment,Us),transition_out(Yo.$$.fragment,Us),transition_out(zo),transition_out(Sr),Ca=!1},d(Us){Us&&(detach(Ce),detach(ha),detach(hs),detach(el),detach(ga)),destroy_component(Bo),destroy_component(Yo),Il[Qs].d(),Sr&&Sr.d(),_n[13](null)}}}function instance$8(_n,Ce,ke){let $n,Hn,zn,Zn;const qn=getContext$1("channel");let{record:Yn}=Ce,{graph:Jn}=Ce,{users:to}=Ce,{schema:io}=Ce,uo,mo="";axios.get(`${qn.lucentUrl}/records/${Yn.id}/revisions`).then(xo=>{ke(8,$n=xo.data)}).catch(xo=>{console.log(xo)});function bo(xo,Bo){ke(7,Zn=Jn.edges.filter(Vo=>Vo.depth===1).reduce((Vo,Ko)=>(Vo[Ko.field]||(Vo[Ko.field]={record:[],revision:[]}),Vo[Ko.field].record.push(Ko),Vo),{})),ke(7,Zn=Bo._edges.reduce((Vo,Ko)=>(Vo[Ko.field]||(Vo[Ko.field]={record:[],revision:[]}),Vo[Ko.field].revision.push(Ko),Vo),Zn))}function Oo(xo,Bo){xo.preventDefault(),ke(5,zn=Bo),ke(6,Hn=io.fields.filter(Vo=>!lodashExports.isEqual(zn.data[Vo.name],Yn.data[Vo.name]))),bo(Hn,Bo),uo.scrollIntoView()}function wo(xo){xo.preventDefault(),ke(4,mo=""),axios.post(`${qn.lucentUrl}/records/${Yn.id}/rollback/${zn._sys.version}`).then(Bo=>{window.location.reload()}).catch(Bo=>{const Vo=Bo.response.data.error;ke(4,mo=Vo.fieldLabel+": "+Vo.message)})}const $o=(xo,Bo)=>Oo(Bo,xo);function Do(xo){binding_callbacks[xo?"unshift":"push"](()=>{uo=xo,ke(3,uo)})}return _n.$$set=xo=>{"record"in xo&&ke(0,Yn=xo.record),"graph"in xo&&ke(11,Jn=xo.graph),"users"in xo&&ke(1,to=xo.users),"schema"in xo&&ke(2,io=xo.schema)},ke(8,$n=[]),ke(6,Hn=[]),ke(5,zn=null),ke(7,Zn={}),[Yn,to,io,uo,mo,zn,Hn,Zn,$n,Oo,wo,Jn,$o,Do]}class Info extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$8,create_fragment$8,safe_not_equal,{record:0,graph:11,users:1,schema:2})}}const{window:window_1}=globals;function get_each_context$3(_n,Ce,ke){const $n=_n.slice();return $n[21]=Ce[ke],$n}function create_if_block_5(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.innerHTML=` + Save`,attr(Ce,"type","button"),attr(Ce,"class","button primary ms-2 btn btn-primary btn-spinner")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[11]),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_if_block_4(_n){let Ce,ke,$n;return{c(){Ce=element("button"),Ce.innerHTML=` + Create`,attr(Ce,"class","button primary btn-spinner")},m(Hn,zn){insert$1(Hn,Ce,zn),ke||($n=listen(Ce,"click",_n[11]),ke=!0)},p:noop,d(Hn){Hn&&detach(Ce),ke=!1,$n()}}}function create_if_block_3(_n){let Ce,ke;return Ce=new Info({props:{record:_n[0],graph:_n[1],users:_n[4],schema:_n[2]}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&1&&(zn.record=$n[0]),Hn&2&&(zn.graph=$n[1]),Hn&16&&(zn.users=$n[4]),Hn&4&&(zn.schema=$n[2]),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_2(_n){let Ce,ke;return Ce=new Graph({props:{graph:_n[1],record:_n[0]}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&2&&(zn.graph=$n[1]),Hn&1&&(zn.record=$n[0]),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block$5(_n){let Ce,ke,$n=[],Hn=new Map,zn,Zn;Ce=new FilePreview({props:{record:_n[0],schema:_n[2]}});let qn=ensure_array_like(_n[9]);const Yn=Jn=>Jn[21].name;for(let Jn=0;Jnbind(Ce,"data",zn)),binding_callbacks.push(()=>bind(Ce,"graph",Zn)),{c(){create_component(Ce.$$.fragment)},m(Yn,Jn){mount_component(Ce,Yn,Jn),Hn=!0},p(Yn,Jn){const to={};Jn&4&&(to.schema=Yn[2]),Jn&1&&(to.record=Yn[0]),Jn&32&&(to.validationErrors=Yn[5]),Jn&8&&(to.isCreateMode=Yn[3]),!ke&&Jn&1&&(ke=!0,to.data=Yn[0].data,add_flush_callback(()=>ke=!1)),!$n&&Jn&2&&($n=!0,to.graph=Yn[1],add_flush_callback(()=>$n=!1)),Ce.$set(to)},i(Yn){Hn||(transition_in(Ce.$$.fragment,Yn),Hn=!0)},o(Yn){transition_out(Ce.$$.fragment,Yn),Hn=!1},d(Yn){destroy_component(Ce,Yn)}}}function create_each_block$3(_n,Ce){let ke,$n,Hn,zn=Ce[6]===Ce[21].group&&create_if_block_1$3(Ce);return{key:_n,first:null,c(){ke=empty$1(),zn&&zn.c(),$n=empty$1(),this.first=ke},m(Zn,qn){insert$1(Zn,ke,qn),zn&&zn.m(Zn,qn),insert$1(Zn,$n,qn),Hn=!0},p(Zn,qn){Ce=Zn,Ce[6]===Ce[21].group?zn?(zn.p(Ce,qn),qn&64&&transition_in(zn,1)):(zn=create_if_block_1$3(Ce),zn.c(),transition_in(zn,1),zn.m($n.parentNode,$n)):zn&&(group_outros(),transition_out(zn,1,1,()=>{zn=null}),check_outros())},i(Zn){Hn||(transition_in(zn),Hn=!0)},o(Zn){transition_out(zn),Hn=!1},d(Zn){Zn&&(detach(ke),detach($n)),zn&&zn.d(Zn)}}}function create_fragment$7(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo,$o,Do,xo,Bo,Vo;function Ko(gs){_n[12](gs)}function Mo(gs){_n[13](gs)}let es={schema:_n[2],isCreateMode:_n[3]};_n[0]!==void 0&&(es.record=_n[0]),_n[6]!==void 0&&(es.activeContentTab=_n[6]),$n=new EditHeader({props:es}),binding_callbacks.push(()=>bind($n,"record",Ko)),binding_callbacks.push(()=>bind($n,"activeContentTab",Mo));function ls(gs,xs){if(gs[3])return create_if_block_4;if(gs[8])return create_if_block_5}let ps=ls(_n),rs=ps&&ps(_n);Yn=new Title({props:{schema:_n[2],record:_n[0],isCreateMode:_n[3]}}),to=new ErrorAlert({props:{message:_n[7]}});function Yo(gs){_n[14](gs)}let Ys={schema:_n[2],isCreateMode:_n[3]};_n[6]!==void 0&&(Ys.active=_n[6]),mo=new ContentTabs({props:Ys}),binding_callbacks.push(()=>bind(mo,"active",Yo));const sr=[create_if_block$5,create_if_block_2,create_if_block_3],Js=[];function ko(gs,xs){return xs&64&&(wo=null),wo==null&&(wo=!["_graph","_info"].includes(gs[6])),wo?0:gs[6]==="_graph"?1:gs[6]==="_info"?2:-1}return~($o=ko(_n,-1))&&(Do=Js[$o]=sr[$o](_n)),{c(){Ce=element("div"),ke=element("div"),create_component($n.$$.fragment),Zn=space$3(),rs&&rs.c(),qn=space$3(),create_component(Yn.$$.fragment),Jn=space$3(),create_component(to.$$.fragment),io=space$3(),uo=element("div"),create_component(mo.$$.fragment),Oo=space$3(),Do&&Do.c(),attr(ke,"class","tools-header"),attr(uo,"class","mt-4"),set_style(uo,"margin-bottom","150px"),set_style(uo,"position","relative"),attr(Ce,"class","record-edit")},m(gs,xs){insert$1(gs,Ce,xs),append(Ce,ke),mount_component($n,ke,null),append(ke,Zn),rs&&rs.m(ke,null),append(Ce,qn),mount_component(Yn,Ce,null),append(Ce,Jn),mount_component(to,Ce,null),append(Ce,io),append(Ce,uo),mount_component(mo,uo,null),append(uo,Oo),~$o&&Js[$o].m(uo,null),xo=!0,Bo||(Vo=listen(window_1,"beforeunload",_n[10]),Bo=!0)},p(gs,[xs]){const Qr={};xs&4&&(Qr.schema=gs[2]),xs&8&&(Qr.isCreateMode=gs[3]),!Hn&&xs&1&&(Hn=!0,Qr.record=gs[0],add_flush_callback(()=>Hn=!1)),!zn&&xs&64&&(zn=!0,Qr.activeContentTab=gs[6],add_flush_callback(()=>zn=!1)),$n.$set(Qr),ps===(ps=ls(gs))&&rs?rs.p(gs,xs):(rs&&rs.d(1),rs=ps&&ps(gs),rs&&(rs.c(),rs.m(ke,null)));const cr={};xs&4&&(cr.schema=gs[2]),xs&1&&(cr.record=gs[0]),xs&8&&(cr.isCreateMode=gs[3]),Yn.$set(cr);const ws={};xs&128&&(ws.message=gs[7]),to.$set(ws);const Fs={};xs&4&&(Fs.schema=gs[2]),xs&8&&(Fs.isCreateMode=gs[3]),!bo&&xs&64&&(bo=!0,Fs.active=gs[6],add_flush_callback(()=>bo=!1)),mo.$set(Fs);let Br=$o;$o=ko(gs,xs),$o===Br?~$o&&Js[$o].p(gs,xs):(Do&&(group_outros(),transition_out(Js[Br],1,1,()=>{Js[Br]=null}),check_outros()),~$o?(Do=Js[$o],Do?Do.p(gs,xs):(Do=Js[$o]=sr[$o](gs),Do.c()),transition_in(Do,1),Do.m(uo,null)):Do=null)},i(gs){xo||(transition_in($n.$$.fragment,gs),transition_in(Yn.$$.fragment,gs),transition_in(to.$$.fragment,gs),transition_in(mo.$$.fragment,gs),transition_in(Do),xo=!0)},o(gs){transition_out($n.$$.fragment,gs),transition_out(Yn.$$.fragment,gs),transition_out(to.$$.fragment,gs),transition_out(mo.$$.fragment,gs),transition_out(Do),xo=!1},d(gs){gs&&detach(Ce),destroy_component($n),rs&&rs.d(),destroy_component(Yn),destroy_component(to),destroy_component(mo),~$o&&Js[$o].d(),Bo=!1,Vo()}}}function instance$7(_n,Ce,ke){let $n,Hn,zn;const Zn=getContext$1("channel");let{schema:qn}=Ce,{record:Yn}=Ce,{graph:Jn={records:[],edges:[]}}=Ce,{isCreateMode:to}=Ce,{users:io}=Ce,uo,mo="",bo=qn.fields.filter(es=>es.name!=="id");onMount(()=>{Oo()});function Oo(){uo={data:JSON.parse(JSON.stringify(Yn.data)),schema:Yn.schema,status:Yn.status,_sys:JSON.parse(JSON.stringify(Yn._sys)),_file:JSON.parse(JSON.stringify(Yn._file)),edges:JSON.parse(JSON.stringify(Jn.edges))}}afterUpdate(()=>{ke(8,$n=$o())});function wo(es){return $n?es.returnValue="You have unsaved changes. Are you sure you want to exit?":(delete es.returnValue,"...")}function $o(){return to?!1:!lodashExports.isEqual(uo,{data:Yn.data,schema:Yn.schema,status:Yn.status,_sys:Yn._sys,_file:Yn._file,edges:Jn.edges})}function Do(es){return es.preventDefault(),console.log("SAVE: Attempt"),ke(5,Hn=null),ke(7,zn=""),new Promise(function(ls,ps){var rs;if(!$n&&!to){ls(null);return}if(!Yn){ls(null);return}ke(1,Jn.edges=(rs=Jn.edges)==null?void 0:rs.filter(Yo=>!Yo._isTrashed&&Yo.source===Yn.id),Jn),axios$1.post(Zn.lucentUrl+"/records",{record:Yn,edges:Jn.edges,isCreateMode:to}).then(function(Yo){if(console.log("SAVE: SAVED"),to)window.location=Zn.lucentUrl+"/records/"+Yn.id;else{if(ke(0,Yn=Yo.data.records[0]??null),!Yn){ke(8,$n=!1),window.location=Zn.lucentUrl;return}ke(1,Jn=Yo.data),Oo()}ls(null)}).catch(function(Yo){Yo.response&&(typeof Yo.response.data.error=="string"?ke(7,zn=Yo.response.data.error):(ke(5,Hn=Yo.response.data.error),console.log(Hn))),ls(null)})})}function xo(es){Yn=es,ke(0,Yn)}function Bo(es){mo=es,ke(6,mo)}function Vo(es){mo=es,ke(6,mo)}function Ko(es){_n.$$.not_equal(Yn.data,es)&&(Yn.data=es,ke(0,Yn))}function Mo(es){Jn=es,ke(1,Jn)}return _n.$$set=es=>{"schema"in es&&ke(2,qn=es.schema),"record"in es&&ke(0,Yn=es.record),"graph"in es&&ke(1,Jn=es.graph),"isCreateMode"in es&&ke(3,to=es.isCreateMode),"users"in es&&ke(4,io=es.users)},_n.$$.update=()=>{_n.$$.dirty&32&&ke(7,zn=Hn?`Record submission failed. ${Object.entries(Hn).length} error(s)`:null)},ke(8,$n=!1),ke(5,Hn=null),[Yn,Jn,qn,to,io,Hn,mo,zn,$n,bo,wo,Do,xo,Bo,Vo,Ko,Mo]}class Edit extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$7,create_fragment$7,safe_not_equal,{schema:2,record:0,graph:1,isCreateMode:3,users:4})}}function get_each_context$2(_n,Ce,ke){const $n=_n.slice();return $n[6]=Ce[ke],$n}function create_else_block$1(_n){let Ce,ke;return Ce=new Icon({props:{icon:"circle-chevron-down"}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block_1$2(_n){let Ce,ke;return Ce=new Icon({props:{icon:"circle-chevron-up"}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_if_block$4(_n){let Ce,ke=ensure_array_like(_n[1]),$n=[];for(let Hn=0;Hn{uo[$o]=null}),check_outros(),zn=uo[Hn],zn||(zn=uo[Hn]=io[Hn](Oo),zn.c()),transition_in(zn,1),zn.m(Ce,null)),Oo[0]?bo?bo.p(Oo,wo):(bo=create_if_block$4(Oo),bo.c(),bo.m(qn.parentNode,qn)):bo&&(bo.d(1),bo=null)},i(Oo){Yn||(transition_in(zn),Yn=!0)},o(Oo){transition_out(zn),Yn=!1},d(Oo){Oo&&(detach(Ce),detach(Zn),detach(qn)),uo[Hn].d(),bo&&bo.d(Oo),Jn=!1,to()}}}function instance$6(_n,Ce,ke){const $n=getContext$1("channel");let{schemas:Hn}=Ce,{title:zn}=Ce,{schema:Zn}=Ce,{expanded:qn=!1}=Ce;Hn.find(Jn=>Jn.name===(Zn==null?void 0:Zn.name))&&(qn=!0);function Yn(){ke(0,qn=!qn)}return _n.$$set=Jn=>{"schemas"in Jn&&ke(1,Hn=Jn.schemas),"title"in Jn&&ke(2,zn=Jn.title),"schema"in Jn&&ke(3,Zn=Jn.schema),"expanded"in Jn&&ke(0,qn=Jn.expanded)},[qn,Hn,zn,Zn,$n,Yn]}class NavbarMenu extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$6,create_fragment$6,safe_not_equal,{schemas:1,title:2,schema:3,expanded:0})}}function create_fragment$5(_n){let Ce,ke,$n=_n[1].name+"",Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo;return Jn=new NavbarMenu({props:{title:"Content",schemas:_n[2].filter(func),schema:_n[0],expanded:!0}}),io=new NavbarMenu({props:{title:"Files",schemas:_n[3],schema:_n[0]}}),mo=new NavbarMenu({props:{title:"Other",schemas:_n[4],schema:_n[0]}}),{c(){Ce=element("div"),ke=element("a"),Hn=text($n),zn=space$3(),Zn=element("a"),qn=space$3(),Yn=element("div"),create_component(Jn.$$.fragment),to=space$3(),create_component(io.$$.fragment),uo=space$3(),create_component(mo.$$.fragment),attr(ke,"class","logo"),attr(ke,"href",_n[1].lucentUrl),attr(Zn,"class","nav-item"),attr(Zn,"href",_n[1].lucentUrl+"/profile"),attr(Ce,"class","sidebar-top"),attr(Yn,"class","sidebar")},m(Oo,wo){insert$1(Oo,Ce,wo),append(Ce,ke),append(ke,Hn),append(Ce,zn),append(Ce,Zn),insert$1(Oo,qn,wo),insert$1(Oo,Yn,wo),mount_component(Jn,Yn,null),append(Yn,to),mount_component(io,Yn,null),append(Yn,uo),mount_component(mo,Yn,null),bo=!0},p(Oo,[wo]){const $o={};wo&1&&($o.schema=Oo[0]),Jn.$set($o);const Do={};wo&1&&(Do.schema=Oo[0]),io.$set(Do);const xo={};wo&1&&(xo.schema=Oo[0]),mo.$set(xo)},i(Oo){bo||(transition_in(Jn.$$.fragment,Oo),transition_in(io.$$.fragment,Oo),transition_in(mo.$$.fragment,Oo),bo=!0)},o(Oo){transition_out(Jn.$$.fragment,Oo),transition_out(io.$$.fragment,Oo),transition_out(mo.$$.fragment,Oo),bo=!1},d(Oo){Oo&&(detach(Ce),detach(qn),detach(Yn)),destroy_component(Jn),destroy_component(io),destroy_component(mo)}}}const func=_n=>_n.isEntry;function instance$5(_n,Ce,ke){let{schema:$n}=Ce;const Hn=getContext$1("channel"),zn=getContext$1("readableSchemas"),Zn=zn.filter(Yn=>Yn.type==="files"),qn=zn.filter(Yn=>!Yn.isEntry&&Yn.type==="collection");return _n.$$set=Yn=>{"schema"in Yn&&ke(0,$n=Yn.schema)},[$n,Hn,zn,Zn,qn]}class Navbar extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$5,create_fragment$5,safe_not_equal,{schema:0})}}function create_if_block_1$1(_n){let Ce;return{c(){Ce=element("span"),Ce.textContent="DRAFT",attr(Ce,"class","status")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_else_block(_n){let Ce,ke=previewTitle(_n[3].schemas,_n[2],_n[1])+"",$n,Hn;return{c(){Ce=element("a"),$n=text(ke),attr(Ce,"href",Hn=_n[3].lucentUrl+"/records/"+_n[2].id)},m(zn,Zn){insert$1(zn,Ce,Zn),append(Ce,$n)},p(zn,Zn){Zn&6&&ke!==(ke=previewTitle(zn[3].schemas,zn[2],zn[1])+"")&&set_data($n,ke),Zn&4&&Hn!==(Hn=zn[3].lucentUrl+"/records/"+zn[2].id)&&attr(Ce,"href",Hn)},i:noop,o:noop,d(zn){zn&&detach(Ce)}}}function create_if_block$3(_n){let Ce,ke;return Ce=new Preview({props:{record:_n[2],size:"tiny",showFilename:!0}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&4&&(zn.record=$n[2]),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_fragment$4(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn=_n[4].label+"",to,io,uo,mo,bo,Oo,wo,$o,Do=_n[2].status==="draft"&&create_if_block_1$1();const xo=[create_if_block$3,create_else_block],Bo=[];function Vo(Ko,Mo){return Ko[4].type==="files"?0:1}return Hn=Vo(_n),zn=Bo[Hn]=xo[Hn](_n),bo=new Avatar({props:{name:usernameById(_n[0],_n[2]._sys.updatedBy),side:24}}),{c(){Ce=element("td"),ke=element("div"),Do&&Do.c(),$n=space$3(),zn.c(),Zn=space$3(),qn=element("td"),Yn=element("a"),to=text(Jn),io=space$3(),uo=element("td"),mo=element("div"),create_component(bo.$$.fragment),Oo=space$3(),wo=element("div"),wo.textContent=`${_n[5]}`,attr(ke,"class","row-name"),attr(Yn,"href",_n[3].lucentUrl+"/content/"+_n[4].name),attr(wo,"class","ms-2"),set_style(mo,"display","flex"),set_style(mo,"gap","14px")},m(Ko,Mo){insert$1(Ko,Ce,Mo),append(Ce,ke),Do&&Do.m(ke,null),append(ke,$n),Bo[Hn].m(ke,null),insert$1(Ko,Zn,Mo),insert$1(Ko,qn,Mo),append(qn,Yn),append(Yn,to),insert$1(Ko,io,Mo),insert$1(Ko,uo,Mo),append(uo,mo),mount_component(bo,mo,null),append(mo,Oo),append(mo,wo),$o=!0},p(Ko,[Mo]){Ko[2].status==="draft"?Do||(Do=create_if_block_1$1(),Do.c(),Do.m(ke,$n)):Do&&(Do.d(1),Do=null),zn.p(Ko,Mo);const es={};Mo&5&&(es.name=usernameById(Ko[0],Ko[2]._sys.updatedBy)),bo.$set(es)},i(Ko){$o||(transition_in(zn),transition_in(bo.$$.fragment,Ko),$o=!0)},o(Ko){transition_out(zn),transition_out(bo.$$.fragment,Ko),$o=!1},d(Ko){Ko&&(detach(Ce),detach(Zn),detach(qn),detach(io),detach(uo)),Do&&Do.d(),Bo[Hn].d(),destroy_component(bo)}}}function instance$4(_n,Ce,ke){const $n=getContext$1("channel");let{users:Hn}=Ce,{graph:zn}=Ce,{record:Zn}=Ce,qn=$n.schemas.find(Jn=>Jn.name===Zn.schema),Yn=formatDistanceToNow(parseJSON(Zn._sys.updatedAt),{addSuffix:!0});return _n.$$set=Jn=>{"users"in Jn&&ke(0,Hn=Jn.users),"graph"in Jn&&ke(1,zn=Jn.graph),"record"in Jn&&ke(2,Zn=Jn.record)},[Hn,zn,Zn,$n,qn,Yn]}class RecordRow extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$4,create_fragment$4,safe_not_equal,{users:0,graph:1,record:2})}}function get_each_context$1(_n,Ce,ke){const $n=_n.slice();return $n[4]=Ce[ke],$n}function create_if_block$2(_n){let Ce,ke,$n,Hn=[],zn=new Map,Zn,qn=ensure_array_like(_n[0]);const Yn=Jn=>Jn[4].id;for(let Jn=0;Jn0&&create_if_block$2(_n);return{c(){Ce=element("h3"),Ce.textContent="Latest Content changes",ke=space$3(),zn&&zn.c(),$n=empty$1(),attr(Ce,"class","header-small mb-4 mt-5")},m(Zn,qn){insert$1(Zn,Ce,qn),insert$1(Zn,ke,qn),zn&&zn.m(Zn,qn),insert$1(Zn,$n,qn),Hn=!0},p(Zn,[qn]){Zn[0].length>0?zn?(zn.p(Zn,qn),qn&1&&transition_in(zn,1)):(zn=create_if_block$2(Zn),zn.c(),transition_in(zn,1),zn.m($n.parentNode,$n)):zn&&(group_outros(),transition_out(zn,1,1,()=>{zn=null}),check_outros())},i(Zn){Hn||(transition_in(zn),Hn=!0)},o(Zn){transition_out(zn),Hn=!1},d(Zn){Zn&&(detach(Ce),detach(ke),detach($n)),zn&&zn.d(Zn)}}}function instance$3(_n,Ce,ke){const $n=getContext$1("channel");let Hn=[],zn=null,Zn=[];return onMount(()=>{axios.get($n.lucentUrl+"/home/records").then(qn=>{ke(0,Hn=qn.data.records),ke(1,zn=qn.data.graph),ke(2,Zn=qn.data.users)}).catch(qn=>{console.log(qn)})}),[Hn,zn,Zn]}class Index extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$3,create_fragment$3,safe_not_equal,{})}}function create_if_block_1(_n){let Ce;return{c(){Ce=element("span"),Ce.textContent="Action in progress",attr(Ce,"class","badge text-bg-warning")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_if_block$1(_n){let Ce;return{c(){Ce=element("span"),Ce.textContent="Action completed",attr(Ce,"class","badge text-bg-info")},m(ke,$n){insert$1(ke,Ce,$n)},d(ke){ke&&detach(Ce)}}}function create_fragment$2(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn,to,io,uo,mo,bo,Oo,wo=_n[1]&&create_if_block_1(),$o=!_n[1]&&_n[2]&&create_if_block$1();return{c(){Ce=element("div"),ke=element("div"),$n=element("h3"),Hn=text(_n[0]),zn=space$3(),Zn=element("button"),qn=text("Start"),Yn=space$3(),Jn=element("div"),wo&&wo.c(),to=space$3(),$o&&$o.c(),io=space$3(),uo=element("pre"),mo=text(_n[2]),attr($n,"class","header-small mb-5"),attr(Zn,"class","button primary mb-3"),Zn.disabled=_n[1],attr(Jn,"class","mb-3"),attr(ke,"class","lx-card mt-5"),attr(Ce,"class","common-wrapper")},m(Do,xo){insert$1(Do,Ce,xo),append(Ce,ke),append(ke,$n),append($n,Hn),append(ke,zn),append(ke,Zn),append(Zn,qn),append(ke,Yn),append(ke,Jn),wo&&wo.m(Jn,null),append(Jn,to),$o&&$o.m(Jn,null),append(ke,io),append(ke,uo),append(uo,mo),bo||(Oo=listen(Zn,"click",_n[3]),bo=!0)},p(Do,[xo]){xo&1&&set_data(Hn,Do[0]),xo&2&&(Zn.disabled=Do[1]),Do[1]?wo||(wo=create_if_block_1(),wo.c(),wo.m(Jn,to)):wo&&(wo.d(1),wo=null),!Do[1]&&Do[2]?$o||($o=create_if_block$1(),$o.c(),$o.m(Jn,null)):$o&&($o.d(1),$o=null),xo&4&&set_data(mo,Do[2])},i:noop,o:noop,d(Do){Do&&detach(Ce),wo&&wo.d(),$o&&$o.d(),bo=!1,Oo()}}}function instance$2(_n,Ce,ke){let $n;const Hn=getContext$1("channel");let{title:zn}=Ce,{command:Zn}=Ce,qn=!1;function Yn(){const to=new EventSource(Hn.lucentUrl+"/command-report-source/"+Zn.signature);to.onmessage=function(io){ke(1,qn=!0);const uo=JSON.parse(io.data);uo.date,ke(2,$n=uo.logs)},to.onerror=io=>{console.log(io),to.close(),ke(1,qn=!1)}}function Jn(to){to.preventDefault(),ke(1,qn=!0),axios$1.post(Hn.lucentUrl+"/command/"+Zn.signature).then(io=>{Yn()})}return onMount(()=>{Yn()}),_n.$$set=to=>{"title"in to&&ke(0,zn=to.title),"command"in to&&ke(4,Zn=to.command)},ke(2,$n=""),[zn,qn,$n,Jn,Zn]}class Report extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$2,create_fragment$2,safe_not_equal,{title:0,command:4})}}function get_each_context(_n,Ce,ke){const $n=_n.slice();return $n[2]=Ce[ke],$n}function create_if_block(_n){let Ce,ke;return Ce=new Dropdown({props:{$$slots:{button:[create_button_slot],default:[create_default_slot]},$$scope:{ctx:_n}}}),{c(){create_component(Ce.$$.fragment)},m($n,Hn){mount_component(Ce,$n,Hn),ke=!0},p($n,Hn){const zn={};Hn&32&&(zn.$$scope={dirty:Hn,ctx:$n}),Ce.$set(zn)},i($n){ke||(transition_in(Ce.$$.fragment,$n),ke=!0)},o($n){transition_out(Ce.$$.fragment,$n),ke=!1},d($n){destroy_component(Ce,$n)}}}function create_each_block(_n){let Ce,ke=_n[2].name+"",$n;return{c(){Ce=element("a"),$n=text(ke),attr(Ce,"href",_n[0].lucentUrl+"/command-report/"+_n[2].signature),attr(Ce,"class","top-nav-item")},m(Hn,zn){insert$1(Hn,Ce,zn),append(Ce,$n)},p:noop,d(Hn){Hn&&detach(Ce)}}}function create_default_slot(_n){let Ce,ke=ensure_array_like(_n[0].commands),$n=[];for(let Hn=0;Hn0&&create_if_block(_n);return qn=new Avatar({props:{side:"28",name:_n[1].name}}),{c(){Ce=element("div"),ke=element("a"),$n=text("Members"),Hn=space$3(),Jn&&Jn.c(),zn=space$3(),Zn=element("a"),create_component(qn.$$.fragment),attr(ke,"class","top-nav-item"),attr(ke,"href",_n[0].lucentUrl+"/members"),attr(Zn,"href",_n[0].lucentUrl+"/profile"),attr(Ce,"class","top-nav ")},m(to,io){insert$1(to,Ce,io),append(Ce,ke),append(ke,$n),append(Ce,Hn),Jn&&Jn.m(Ce,null),append(Ce,zn),append(Ce,Zn),mount_component(qn,Zn,null),Yn=!0},p(to,[io]){to[0].commands.length>0&&Jn.p(to,io)},i(to){Yn||(transition_in(Jn),transition_in(qn.$$.fragment,to),Yn=!0)},o(to){transition_out(Jn),transition_out(qn.$$.fragment,to),Yn=!1},d(to){to&&detach(Ce),Jn&&Jn.d(),destroy_component(qn)}}}function instance$1(_n){const Ce=getContext$1("channel"),ke=getContext$1("user");return console.log(Ce.commands),[Ce,ke]}class Header extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance$1,create_fragment$1,safe_not_equal,{})}}function create_fragment(_n){let Ce,ke,$n,Hn,zn,Zn,qn,Yn,Jn;$n=new Navbar({props:{schema:_n[2].schema}}),Zn=new Header({});const to=[{title:_n[0]},_n[2]];var io=_n[3][_n[1]];function uo(mo,bo){let Oo={};for(let wo=0;wo{destroy_component(wo,1)}),check_outros()}io?(Yn=construct_svelte_component(io,uo(mo,bo)),create_component(Yn.$$.fragment),transition_in(Yn.$$.fragment,1),mount_component(Yn,zn,null)):Yn=null}else if(io){const wo=bo&5?get_spread_update(to,[bo&1&&{title:mo[0]},bo&4&&get_spread_object(mo[2])]):{};Yn.$set(wo)}},i(mo){Jn||(transition_in($n.$$.fragment,mo),transition_in(Zn.$$.fragment,mo),Yn&&transition_in(Yn.$$.fragment,mo),Jn=!0)},o(mo){transition_out($n.$$.fragment,mo),transition_out(Zn.$$.fragment,mo),Yn&&transition_out(Yn.$$.fragment,mo),Jn=!1},d(mo){mo&&detach(Ce),destroy_component($n),destroy_component(Zn),Yn&&destroy_component(Yn)}}}function instance(_n,Ce,ke){const $n={members:Members,recordEdit:Edit,recordNotFound:NotFound,contentIndex:Index$1,homeIndex:Index,buildReport:Report};let{title:Hn}=Ce,{view:zn}=Ce,{user:Zn}=Ce,{data:qn}=Ce,{channel:Yn}=Ce,{axios:Jn}=Ce,{readableSchemas:to}=Ce;return setContext("axios",Jn),setContext("channel",Yn),setContext("readableSchemas",Yn.schemas.filter(io=>to.includes(io.name))),setContext("user",Zn),_n.$$set=io=>{"title"in io&&ke(0,Hn=io.title),"view"in io&&ke(1,zn=io.view),"user"in io&&ke(4,Zn=io.user),"data"in io&&ke(2,qn=io.data),"channel"in io&&ke(5,Yn=io.channel),"axios"in io&&ke(6,Jn=io.axios),"readableSchemas"in io&&ke(7,to=io.readableSchemas)},[Hn,zn,qn,$n,Zn,Yn,Jn,to]}class Channel extends SvelteComponent{constructor(Ce){super(),init(this,Ce,instance,create_fragment,safe_not_equal,{title:0,view:1,user:4,data:2,channel:5,axios:6,readableSchemas:7})}}(function(){const htmx={onLoad:null,process:null,on:null,off:null,trigger:null,ajax:null,find:null,findAll:null,closest:null,values:function(_n,Ce){return getInputValues(_n,Ce||"post").values},remove:null,addClass:null,removeClass:null,toggleClass:null,takeClass:null,swap:null,defineExtension:null,removeExtension:null,logAll:null,logNone:null,logger:null,config:{historyEnabled:!0,historyCacheSize:10,refreshOnHistoryMiss:!1,defaultSwapStyle:"innerHTML",defaultSwapDelay:0,defaultSettleDelay:20,includeIndicatorStyles:!0,indicatorClass:"htmx-indicator",requestClass:"htmx-request",addedClass:"htmx-added",settlingClass:"htmx-settling",swappingClass:"htmx-swapping",allowEval:!0,allowScriptTags:!0,inlineScriptNonce:"",inlineStyleNonce:"",attributesToSettle:["class","style","width","height"],withCredentials:!1,timeout:0,wsReconnectDelay:"full-jitter",wsBinaryType:"blob",disableSelector:"[hx-disable], [data-hx-disable]",scrollBehavior:"instant",defaultFocusScroll:!1,getCacheBusterParam:!1,globalViewTransitions:!1,methodsThatUseUrlParams:["get","delete"],selfRequestsOnly:!0,ignoreTitle:!1,scrollIntoViewOnBoost:!0,triggerSpecsCache:null,disableInheritance:!1,responseHandling:[{code:"204",swap:!1},{code:"[23]..",swap:!0},{code:"[45]..",swap:!1,error:!0}],allowNestedOobSwaps:!0},parseInterval:null,_:null,version:"2.0.2"};htmx.onLoad=onLoadHelper,htmx.process=processNode,htmx.on=addEventListenerImpl,htmx.off=removeEventListenerImpl,htmx.trigger=triggerEvent,htmx.ajax=ajaxHelper,htmx.find=find,htmx.findAll=findAll,htmx.closest=closest,htmx.remove=removeElement,htmx.addClass=addClassToElement,htmx.removeClass=removeClassFromElement,htmx.toggleClass=toggleClassOnElement,htmx.takeClass=takeClassForElement,htmx.swap=swap,htmx.defineExtension=defineExtension,htmx.removeExtension=removeExtension,htmx.logAll=logAll,htmx.logNone=logNone,htmx.parseInterval=parseInterval,htmx._=internalEval;const internalAPI={addTriggerHandler,bodyContains,canAccessLocalStorage,findThisElement,filterValues,swap,hasAttribute,getAttributeValue,getClosestAttributeValue,getClosestMatch,getExpressionVars,getHeaders,getInputValues,getInternalData,getSwapSpecification,getTriggerSpecs,getTarget,makeFragment,mergeObjects,makeSettleInfo,oobSwap,querySelectorExt,settleImmediately,shouldCancel,triggerEvent,triggerErrorEvent,withExtensions},VERBS=["get","post","put","delete","patch"],VERB_SELECTOR=VERBS.map(function(_n){return"[hx-"+_n+"], [data-hx-"+_n+"]"}).join(", "),HEAD_TAG_REGEX=makeTagRegEx("head");function makeTagRegEx(_n,Ce=!1){return new RegExp(`<${_n}(\\s[^>]*>|>)([\\s\\S]*?)<\\/${_n}>`,Ce?"gim":"im")}function parseInterval(_n){if(_n==null)return;let Ce=NaN;return _n.slice(-2)=="ms"?Ce=parseFloat(_n.slice(0,-2)):_n.slice(-1)=="s"?Ce=parseFloat(_n.slice(0,-1))*1e3:_n.slice(-1)=="m"?Ce=parseFloat(_n.slice(0,-1))*1e3*60:Ce=parseFloat(_n),isNaN(Ce)?void 0:Ce}function getRawAttribute(_n,Ce){return _n instanceof Element&&_n.getAttribute(Ce)}function hasAttribute(_n,Ce){return!!_n.hasAttribute&&(_n.hasAttribute(Ce)||_n.hasAttribute("data-"+Ce))}function getAttributeValue(_n,Ce){return getRawAttribute(_n,Ce)||getRawAttribute(_n,"data-"+Ce)}function parentElt(_n){const Ce=_n.parentElement;return!Ce&&_n.parentNode instanceof ShadowRoot?_n.parentNode:Ce}function getDocument(){return document}function getRootNode(_n,Ce){return _n.getRootNode?_n.getRootNode({composed:Ce}):getDocument()}function getClosestMatch(_n,Ce){for(;_n&&!Ce(_n);)_n=parentElt(_n);return _n||null}function getAttributeValueWithDisinheritance(_n,Ce,ke){const $n=getAttributeValue(Ce,ke),Hn=getAttributeValue(Ce,"hx-disinherit");var zn=getAttributeValue(Ce,"hx-inherit");if(_n!==Ce){if(htmx.config.disableInheritance)return zn&&(zn==="*"||zn.split(" ").indexOf(ke)>=0)?$n:null;if(Hn&&(Hn==="*"||Hn.split(" ").indexOf(ke)>=0))return"unset"}return $n}function getClosestAttributeValue(_n,Ce){let ke=null;if(getClosestMatch(_n,function($n){return!!(ke=getAttributeValueWithDisinheritance(_n,asElement($n),Ce))}),ke!=="unset")return ke}function matches(_n,Ce){const ke=_n instanceof Element&&(_n.matches||_n.matchesSelector||_n.msMatchesSelector||_n.mozMatchesSelector||_n.webkitMatchesSelector||_n.oMatchesSelector);return!!ke&&ke.call(_n,Ce)}function getStartTag(_n){const ke=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i.exec(_n);return ke?ke[1].toLowerCase():""}function parseHTML(_n){return new DOMParser().parseFromString(_n,"text/html")}function takeChildrenFor(_n,Ce){for(;Ce.childNodes.length>0;)_n.append(Ce.childNodes[0])}function duplicateScript(_n){const Ce=getDocument().createElement("script");return forEach(_n.attributes,function(ke){Ce.setAttribute(ke.name,ke.value)}),Ce.textContent=_n.textContent,Ce.async=!1,htmx.config.inlineScriptNonce&&(Ce.nonce=htmx.config.inlineScriptNonce),Ce}function isJavaScriptScriptNode(_n){return _n.matches("script")&&(_n.type==="text/javascript"||_n.type==="module"||_n.type==="")}function normalizeScriptTags(_n){Array.from(_n.querySelectorAll("script")).forEach(Ce=>{if(isJavaScriptScriptNode(Ce)){const ke=duplicateScript(Ce),$n=Ce.parentNode;try{$n.insertBefore(ke,Ce)}catch(Hn){logError(Hn)}finally{Ce.remove()}}})}function makeFragment(_n){const Ce=_n.replace(HEAD_TAG_REGEX,""),ke=getStartTag(Ce);let $n;if(ke==="html"){$n=new DocumentFragment;const zn=parseHTML(_n);takeChildrenFor($n,zn.body),$n.title=zn.title}else if(ke==="body"){$n=new DocumentFragment;const zn=parseHTML(Ce);takeChildrenFor($n,zn.body),$n.title=zn.title}else{const zn=parseHTML('");$n=zn.querySelector("template").content,$n.title=zn.title;var Hn=$n.querySelector("title");Hn&&Hn.parentNode===$n&&(Hn.remove(),$n.title=Hn.innerText)}return $n&&(htmx.config.allowScriptTags?normalizeScriptTags($n):$n.querySelectorAll("script").forEach(zn=>zn.remove())),$n}function maybeCall(_n){_n&&_n()}function isType(_n,Ce){return Object.prototype.toString.call(_n)==="[object "+Ce+"]"}function isFunction(_n){return typeof _n=="function"}function isRawObject(_n){return isType(_n,"Object")}function getInternalData(_n){const Ce="htmx-internal-data";let ke=_n[Ce];return ke||(ke=_n[Ce]={}),ke}function toArray(_n){const Ce=[];if(_n)for(let ke=0;ke<_n.length;ke++)Ce.push(_n[ke]);return Ce}function forEach(_n,Ce){if(_n)for(let ke=0;ke<_n.length;ke++)Ce(_n[ke])}function isScrolledIntoView(_n){const Ce=_n.getBoundingClientRect(),ke=Ce.top,$n=Ce.bottom;return ke=0}function bodyContains(_n){const Ce=_n.getRootNode&&_n.getRootNode();return Ce&&Ce instanceof window.ShadowRoot?getDocument().body.contains(Ce.host):getDocument().body.contains(_n)}function splitOnWhitespace(_n){return _n.trim().split(/\s+/)}function mergeObjects(_n,Ce){for(const ke in Ce)Ce.hasOwnProperty(ke)&&(_n[ke]=Ce[ke]);return _n}function parseJSON(_n){try{return JSON.parse(_n)}catch(Ce){return logError(Ce),null}}function canAccessLocalStorage(){const _n="htmx:localStorageTest";try{return localStorage.setItem(_n,_n),localStorage.removeItem(_n),!0}catch{return!1}}function normalizePath(_n){try{const Ce=new URL(_n);return Ce&&(_n=Ce.pathname+Ce.search),/^\/$/.test(_n)||(_n=_n.replace(/\/+$/,"")),_n}catch{return _n}}function internalEval(str){return maybeEval(getDocument().body,function(){return eval(str)})}function onLoadHelper(_n){return htmx.on("htmx:load",function(ke){_n(ke.detail.elt)})}function logAll(){htmx.logger=function(_n,Ce,ke){console&&console.log(Ce,_n,ke)}}function logNone(){htmx.logger=null}function find(_n,Ce){return typeof _n!="string"?_n.querySelector(Ce):find(getDocument(),_n)}function findAll(_n,Ce){return typeof _n!="string"?_n.querySelectorAll(Ce):findAll(getDocument(),_n)}function getWindow(){return window}function removeElement(_n,Ce){_n=resolveTarget(_n),Ce?getWindow().setTimeout(function(){removeElement(_n),_n=null},Ce):parentElt(_n).removeChild(_n)}function asElement(_n){return _n instanceof Element?_n:null}function asHtmlElement(_n){return _n instanceof HTMLElement?_n:null}function asString(_n){return typeof _n=="string"?_n:null}function asParentNode(_n){return _n instanceof Element||_n instanceof Document||_n instanceof DocumentFragment?_n:null}function addClassToElement(_n,Ce,ke){_n=asElement(resolveTarget(_n)),_n&&(ke?getWindow().setTimeout(function(){addClassToElement(_n,Ce),_n=null},ke):_n.classList&&_n.classList.add(Ce))}function removeClassFromElement(_n,Ce,ke){let $n=asElement(resolveTarget(_n));$n&&(ke?getWindow().setTimeout(function(){removeClassFromElement($n,Ce),$n=null},ke):$n.classList&&($n.classList.remove(Ce),$n.classList.length===0&&$n.removeAttribute("class")))}function toggleClassOnElement(_n,Ce){_n=resolveTarget(_n),_n.classList.toggle(Ce)}function takeClassForElement(_n,Ce){_n=resolveTarget(_n),forEach(_n.parentElement.children,function(ke){removeClassFromElement(ke,Ce)}),addClassToElement(asElement(_n),Ce)}function closest(_n,Ce){if(_n=asElement(resolveTarget(_n)),_n&&_n.closest)return _n.closest(Ce);do if(_n==null||matches(_n,Ce))return _n;while(_n=_n&&asElement(parentElt(_n)));return null}function startsWith(_n,Ce){return _n.substring(0,Ce.length)===Ce}function endsWith(_n,Ce){return _n.substring(_n.length-Ce.length)===Ce}function normalizeSelector(_n){const Ce=_n.trim();return startsWith(Ce,"<")&&endsWith(Ce,"/>")?Ce.substring(1,Ce.length-2):Ce}function querySelectorAllExt(_n,Ce,ke){return _n=resolveTarget(_n),Ce.indexOf("closest ")===0?[closest(asElement(_n),normalizeSelector(Ce.substr(8)))]:Ce.indexOf("find ")===0?[find(asParentNode(_n),normalizeSelector(Ce.substr(5)))]:Ce==="next"?[asElement(_n).nextElementSibling]:Ce.indexOf("next ")===0?[scanForwardQuery(_n,normalizeSelector(Ce.substr(5)),!!ke)]:Ce==="previous"?[asElement(_n).previousElementSibling]:Ce.indexOf("previous ")===0?[scanBackwardsQuery(_n,normalizeSelector(Ce.substr(9)),!!ke)]:Ce==="document"?[document]:Ce==="window"?[window]:Ce==="body"?[document.body]:Ce==="root"?[getRootNode(_n,!!ke)]:Ce.indexOf("global ")===0?querySelectorAllExt(_n,Ce.slice(7),!0):toArray(asParentNode(getRootNode(_n,!!ke)).querySelectorAll(normalizeSelector(Ce)))}var scanForwardQuery=function(_n,Ce,ke){const $n=asParentNode(getRootNode(_n,ke)).querySelectorAll(Ce);for(let Hn=0;Hn<$n.length;Hn++){const zn=$n[Hn];if(zn.compareDocumentPosition(_n)===Node.DOCUMENT_POSITION_PRECEDING)return zn}},scanBackwardsQuery=function(_n,Ce,ke){const $n=asParentNode(getRootNode(_n,ke)).querySelectorAll(Ce);for(let Hn=$n.length-1;Hn>=0;Hn--){const zn=$n[Hn];if(zn.compareDocumentPosition(_n)===Node.DOCUMENT_POSITION_FOLLOWING)return zn}};function querySelectorExt(_n,Ce){return typeof _n!="string"?querySelectorAllExt(_n,Ce)[0]:querySelectorAllExt(getDocument().body,_n)[0]}function resolveTarget(_n,Ce){return typeof _n=="string"?find(asParentNode(Ce)||document,_n):_n}function processEventArgs(_n,Ce,ke){return isFunction(Ce)?{target:getDocument().body,event:asString(_n),listener:Ce}:{target:resolveTarget(_n),event:asString(Ce),listener:ke}}function addEventListenerImpl(_n,Ce,ke){return ready(function(){const Hn=processEventArgs(_n,Ce,ke);Hn.target.addEventListener(Hn.event,Hn.listener)}),isFunction(Ce)?Ce:ke}function removeEventListenerImpl(_n,Ce,ke){return ready(function(){const $n=processEventArgs(_n,Ce,ke);$n.target.removeEventListener($n.event,$n.listener)}),isFunction(Ce)?Ce:ke}const DUMMY_ELT=getDocument().createElement("output");function findAttributeTargets(_n,Ce){const ke=getClosestAttributeValue(_n,Ce);if(ke){if(ke==="this")return[findThisElement(_n,Ce)];{const $n=querySelectorAllExt(_n,ke);return $n.length===0?(logError('The selector "'+ke+'" on '+Ce+" returned no matches!"),[DUMMY_ELT]):$n}}}function findThisElement(_n,Ce){return asElement(getClosestMatch(_n,function(ke){return getAttributeValue(asElement(ke),Ce)!=null}))}function getTarget(_n){const Ce=getClosestAttributeValue(_n,"hx-target");return Ce?Ce==="this"?findThisElement(_n,"hx-target"):querySelectorExt(_n,Ce):getInternalData(_n).boosted?getDocument().body:_n}function shouldSettleAttribute(_n){const Ce=htmx.config.attributesToSettle;for(let ke=0;ke0?(Hn=_n.substr(0,_n.indexOf(":")),$n=_n.substr(_n.indexOf(":")+1,_n.length)):Hn=_n);const zn=getDocument().querySelectorAll($n);return zn?(forEach(zn,function(Zn){let qn;const Yn=Ce.cloneNode(!0);qn=getDocument().createDocumentFragment(),qn.appendChild(Yn),isInlineSwap(Hn,Zn)||(qn=asParentNode(Yn));const Jn={shouldSwap:!0,target:Zn,fragment:qn};triggerEvent(Zn,"htmx:oobBeforeSwap",Jn)&&(Zn=Jn.target,Jn.shouldSwap&&swapWithStyle(Hn,Zn,Zn,qn,ke),forEach(ke.elts,function(to){triggerEvent(to,"htmx:oobAfterSwap",Jn)}))}),Ce.parentNode.removeChild(Ce)):(Ce.parentNode.removeChild(Ce),triggerErrorEvent(getDocument().body,"htmx:oobErrorNoTarget",{content:Ce})),_n}function handlePreservedElements(_n){forEach(findAll(_n,"[hx-preserve], [data-hx-preserve]"),function(Ce){const ke=getAttributeValue(Ce,"id"),$n=getDocument().getElementById(ke);$n!=null&&Ce.parentNode.replaceChild($n,Ce)})}function handleAttributes(_n,Ce,ke){forEach(Ce.querySelectorAll("[id]"),function($n){const Hn=getRawAttribute($n,"id");if(Hn&&Hn.length>0){const zn=Hn.replace("'","\\'"),Zn=$n.tagName.replace(":","\\:"),qn=asParentNode(_n),Yn=qn&&qn.querySelector(Zn+"[id='"+zn+"']");if(Yn&&Yn!==qn){const Jn=$n.cloneNode();cloneAttributes($n,Yn),ke.tasks.push(function(){cloneAttributes($n,Jn)})}}})}function makeAjaxLoadTask(_n){return function(){removeClassFromElement(_n,htmx.config.addedClass),processNode(asElement(_n)),processFocus(asParentNode(_n)),triggerEvent(_n,"htmx:load")}}function processFocus(_n){const Ce="[autofocus]",ke=asHtmlElement(matches(_n,Ce)?_n:_n.querySelector(Ce));ke!=null&&ke.focus()}function insertNodesBefore(_n,Ce,ke,$n){for(handleAttributes(_n,ke,$n);ke.childNodes.length>0;){const Hn=ke.firstChild;addClassToElement(asElement(Hn),htmx.config.addedClass),_n.insertBefore(Hn,Ce),Hn.nodeType!==Node.TEXT_NODE&&Hn.nodeType!==Node.COMMENT_NODE&&$n.tasks.push(makeAjaxLoadTask(Hn))}}function stringHash(_n,Ce){let ke=0;for(;ke<_n.length;)Ce=(Ce<<5)-Ce+_n.charCodeAt(ke++)|0;return Ce}function attributeHash(_n){let Ce=0;if(_n.attributes)for(let ke=0;ke<_n.attributes.length;ke++){const $n=_n.attributes[ke];$n.value&&(Ce=stringHash($n.name,Ce),Ce=stringHash($n.value,Ce))}return Ce}function deInitOnHandlers(_n){const Ce=getInternalData(_n);if(Ce.onHandlers){for(let ke=0;ke0}function swap(_n,Ce,ke,$n){$n||($n={}),_n=resolveTarget(_n);const Hn=document.activeElement;let zn={};try{zn={elt:Hn,start:Hn?Hn.selectionStart:null,end:Hn?Hn.selectionEnd:null}}catch{}const Zn=makeSettleInfo(_n);if(ke.swapStyle==="textContent")_n.textContent=Ce;else{let Yn=makeFragment(Ce);if(Zn.title=Yn.title,$n.selectOOB){const Jn=$n.selectOOB.split(",");for(let to=0;to0?getWindow().setTimeout(qn,ke.settleDelay):qn()}function handleTriggerHeader(_n,Ce,ke){const $n=_n.getResponseHeader(Ce);if($n.indexOf("{")===0){const Hn=parseJSON($n);for(const zn in Hn)if(Hn.hasOwnProperty(zn)){let Zn=Hn[zn];isRawObject(Zn)?ke=Zn.target!==void 0?Zn.target:ke:Zn={value:Zn},triggerEvent(ke,zn,Zn)}}else{const Hn=$n.split(",");for(let zn=0;zn0;){const Zn=Ce[0];if(Zn==="]"){if($n--,$n===0){zn===null&&(Hn=Hn+"true"),Ce.shift(),Hn+=")})";try{const qn=maybeEval(_n,function(){return Function(Hn)()},function(){return!0});return qn.source=Hn,qn}catch(qn){return triggerErrorEvent(getDocument().body,"htmx:syntax:error",{error:qn,source:Hn}),null}}}else Zn==="["&&$n++;isPossibleRelativeReference(Zn,zn,ke)?Hn+="(("+ke+"."+Zn+") ? ("+ke+"."+Zn+") : (window."+Zn+"))":Hn=Hn+Zn,zn=Ce.shift()}}}function consumeUntil(_n,Ce){let ke="";for(;_n.length>0&&!Ce.test(_n[0]);)ke+=_n.shift();return ke}function consumeCSSSelector(_n){let Ce;return _n.length>0&&COMBINED_SELECTOR_START.test(_n[0])?(_n.shift(),Ce=consumeUntil(_n,COMBINED_SELECTOR_END).trim(),_n.shift()):Ce=consumeUntil(_n,WHITESPACE_OR_COMMA),Ce}const INPUT_SELECTOR="input, textarea, select";function parseAndCacheTrigger(_n,Ce,ke){const $n=[],Hn=tokenizeString(Ce);do{consumeUntil(Hn,NOT_WHITESPACE);const qn=Hn.length,Yn=consumeUntil(Hn,/[,\[\s]/);if(Yn!=="")if(Yn==="every"){const Jn={trigger:"every"};consumeUntil(Hn,NOT_WHITESPACE),Jn.pollInterval=parseInterval(consumeUntil(Hn,/[,\[\s]/)),consumeUntil(Hn,NOT_WHITESPACE);var zn=maybeGenerateConditional(_n,Hn,"event");zn&&(Jn.eventFilter=zn),$n.push(Jn)}else{const Jn={trigger:Yn};var zn=maybeGenerateConditional(_n,Hn,"event");for(zn&&(Jn.eventFilter=zn);Hn.length>0&&Hn[0]!==",";){consumeUntil(Hn,NOT_WHITESPACE);const io=Hn.shift();if(io==="changed")Jn.changed=!0;else if(io==="once")Jn.once=!0;else if(io==="consume")Jn.consume=!0;else if(io==="delay"&&Hn[0]===":")Hn.shift(),Jn.delay=parseInterval(consumeUntil(Hn,WHITESPACE_OR_COMMA));else if(io==="from"&&Hn[0]===":"){if(Hn.shift(),COMBINED_SELECTOR_START.test(Hn[0]))var Zn=consumeCSSSelector(Hn);else{var Zn=consumeUntil(Hn,WHITESPACE_OR_COMMA);if(Zn==="closest"||Zn==="find"||Zn==="next"||Zn==="previous"){Hn.shift();const mo=consumeCSSSelector(Hn);mo.length>0&&(Zn+=" "+mo)}}Jn.from=Zn}else io==="target"&&Hn[0]===":"?(Hn.shift(),Jn.target=consumeCSSSelector(Hn)):io==="throttle"&&Hn[0]===":"?(Hn.shift(),Jn.throttle=parseInterval(consumeUntil(Hn,WHITESPACE_OR_COMMA))):io==="queue"&&Hn[0]===":"?(Hn.shift(),Jn.queue=consumeUntil(Hn,WHITESPACE_OR_COMMA)):io==="root"&&Hn[0]===":"?(Hn.shift(),Jn[io]=consumeCSSSelector(Hn)):io==="threshold"&&Hn[0]===":"?(Hn.shift(),Jn[io]=consumeUntil(Hn,WHITESPACE_OR_COMMA)):triggerErrorEvent(_n,"htmx:syntax:error",{token:Hn.shift()})}$n.push(Jn)}Hn.length===qn&&triggerErrorEvent(_n,"htmx:syntax:error",{token:Hn.shift()}),consumeUntil(Hn,NOT_WHITESPACE)}while(Hn[0]===","&&Hn.shift());return ke&&(ke[Ce]=$n),$n}function getTriggerSpecs(_n){const Ce=getAttributeValue(_n,"hx-trigger");let ke=[];if(Ce){const $n=htmx.config.triggerSpecsCache;ke=$n&&$n[Ce]||parseAndCacheTrigger(_n,Ce,$n)}return ke.length>0?ke:matches(_n,"form")?[{trigger:"submit"}]:matches(_n,'input[type="button"], input[type="submit"]')?[{trigger:"click"}]:matches(_n,INPUT_SELECTOR)?[{trigger:"change"}]:[{trigger:"click"}]}function cancelPolling(_n){getInternalData(_n).cancelled=!0}function processPolling(_n,Ce,ke){const $n=getInternalData(_n);$n.timeout=getWindow().setTimeout(function(){bodyContains(_n)&&$n.cancelled!==!0&&(maybeFilterEvent(ke,_n,makeEvent("hx:poll:trigger",{triggerSpec:ke,target:_n}))||Ce(_n),processPolling(_n,Ce,ke))},ke.pollInterval)}function isLocalLink(_n){return location.hostname===_n.hostname&&getRawAttribute(_n,"href")&&getRawAttribute(_n,"href").indexOf("#")!==0}function eltIsDisabled(_n){return closest(_n,htmx.config.disableSelector)}function boostElement(_n,Ce,ke){if(_n instanceof HTMLAnchorElement&&isLocalLink(_n)&&(_n.target===""||_n.target==="_self")||_n.tagName==="FORM"&&String(getRawAttribute(_n,"method")).toLowerCase()!=="dialog"){Ce.boosted=!0;let $n,Hn;if(_n.tagName==="A")$n="get",Hn=getRawAttribute(_n,"href");else{const zn=getRawAttribute(_n,"method");$n=zn?zn.toLowerCase():"get",Hn=getRawAttribute(_n,"action")}ke.forEach(function(zn){addEventListener(_n,function(Zn,qn){const Yn=asElement(Zn);if(eltIsDisabled(Yn)){cleanUpElement(Yn);return}issueAjaxRequest($n,Hn,Yn,qn)},Ce,zn,!0)})}}function shouldCancel(_n,Ce){const ke=asElement(Ce);return ke?!!((_n.type==="submit"||_n.type==="click")&&(ke.tagName==="FORM"||matches(ke,'input[type="submit"], button')&&closest(ke,"form")!==null||ke instanceof HTMLAnchorElement&&ke.href&&(ke.getAttribute("href")==="#"||ke.getAttribute("href").indexOf("#")!==0))):!1}function ignoreBoostedAnchorCtrlClick(_n,Ce){return getInternalData(_n).boosted&&_n instanceof HTMLAnchorElement&&Ce.type==="click"&&(Ce.ctrlKey||Ce.metaKey)}function maybeFilterEvent(_n,Ce,ke){const $n=_n.eventFilter;if($n)try{return $n.call(Ce,ke)!==!0}catch(Hn){const zn=$n.source;return triggerErrorEvent(getDocument().body,"htmx:eventFilter:error",{error:Hn,source:zn}),!0}return!1}function addEventListener(_n,Ce,ke,$n,Hn){const zn=getInternalData(_n);let Zn;$n.from?Zn=querySelectorAllExt(_n,$n.from):Zn=[_n],$n.changed&&Zn.forEach(function(qn){const Yn=getInternalData(qn);Yn.lastValue=qn.value}),forEach(Zn,function(qn){const Yn=function(Jn){if(!bodyContains(_n)){qn.removeEventListener($n.trigger,Yn);return}if(ignoreBoostedAnchorCtrlClick(_n,Jn)||((Hn||shouldCancel(Jn,_n))&&Jn.preventDefault(),maybeFilterEvent($n,_n,Jn)))return;const to=getInternalData(Jn);if(to.triggerSpec=$n,to.handledFor==null&&(to.handledFor=[]),to.handledFor.indexOf(_n)<0){if(to.handledFor.push(_n),$n.consume&&Jn.stopPropagation(),$n.target&&Jn.target&&!matches(asElement(Jn.target),$n.target))return;if($n.once){if(zn.triggeredOnce)return;zn.triggeredOnce=!0}if($n.changed){const io=getInternalData(qn),uo=qn.value;if(io.lastValue===uo)return;io.lastValue=uo}if(zn.delayed&&clearTimeout(zn.delayed),zn.throttle)return;$n.throttle>0?zn.throttle||(triggerEvent(_n,"htmx:trigger"),Ce(_n,Jn),zn.throttle=getWindow().setTimeout(function(){zn.throttle=null},$n.throttle)):$n.delay>0?zn.delayed=getWindow().setTimeout(function(){triggerEvent(_n,"htmx:trigger"),Ce(_n,Jn)},$n.delay):(triggerEvent(_n,"htmx:trigger"),Ce(_n,Jn))}};ke.listenerInfos==null&&(ke.listenerInfos=[]),ke.listenerInfos.push({trigger:$n.trigger,listener:Yn,on:qn}),qn.addEventListener($n.trigger,Yn)})}let windowIsScrolling=!1,scrollHandler=null;function initScrollHandler(){scrollHandler||(scrollHandler=function(){windowIsScrolling=!0},window.addEventListener("scroll",scrollHandler),setInterval(function(){windowIsScrolling&&(windowIsScrolling=!1,forEach(getDocument().querySelectorAll("[hx-trigger*='revealed'],[data-hx-trigger*='revealed']"),function(_n){maybeReveal(_n)}))},200))}function maybeReveal(_n){!hasAttribute(_n,"data-hx-revealed")&&isScrolledIntoView(_n)&&(_n.setAttribute("data-hx-revealed","true"),getInternalData(_n).initHash?triggerEvent(_n,"revealed"):_n.addEventListener("htmx:afterProcessNode",function(){triggerEvent(_n,"revealed")},{once:!0}))}function loadImmediately(_n,Ce,ke,$n){const Hn=function(){ke.loaded||(ke.loaded=!0,Ce(_n))};$n>0?getWindow().setTimeout(Hn,$n):Hn()}function processVerbs(_n,Ce,ke){let $n=!1;return forEach(VERBS,function(Hn){if(hasAttribute(_n,"hx-"+Hn)){const zn=getAttributeValue(_n,"hx-"+Hn);$n=!0,Ce.path=zn,Ce.verb=Hn,ke.forEach(function(Zn){addTriggerHandler(_n,Zn,Ce,function(qn,Yn){const Jn=asElement(qn);if(closest(Jn,htmx.config.disableSelector)){cleanUpElement(Jn);return}issueAjaxRequest(Hn,zn,Jn,Yn)})})}}),$n}function addTriggerHandler(_n,Ce,ke,$n){if(Ce.trigger==="revealed")initScrollHandler(),addEventListener(_n,$n,ke,Ce),maybeReveal(asElement(_n));else if(Ce.trigger==="intersect"){const Hn={};Ce.root&&(Hn.root=querySelectorExt(_n,Ce.root)),Ce.threshold&&(Hn.threshold=parseFloat(Ce.threshold)),new IntersectionObserver(function(Zn){for(let qn=0;qn0?(ke.polling=!0,processPolling(asElement(_n),$n,Ce)):addEventListener(_n,$n,ke,Ce)}function shouldProcessHxOn(_n){const Ce=asElement(_n);if(!Ce)return!1;const ke=Ce.attributes;for(let $n=0;$n", "+zn).join(""))}else return[]}function maybeSetLastButtonClicked(_n){const Ce=closest(asElement(_n.target),"button, input[type='submit']"),ke=getRelatedFormData(_n);ke&&(ke.lastButtonClicked=Ce)}function maybeUnsetLastButtonClicked(_n){const Ce=getRelatedFormData(_n);Ce&&(Ce.lastButtonClicked=null)}function getRelatedFormData(_n){const Ce=closest(asElement(_n.target),"button, input[type='submit']");if(!Ce)return;const ke=resolveTarget("#"+getRawAttribute(Ce,"form"),Ce.getRootNode())||closest(Ce,"form");if(ke)return getInternalData(ke)}function initButtonTracking(_n){_n.addEventListener("click",maybeSetLastButtonClicked),_n.addEventListener("focusin",maybeSetLastButtonClicked),_n.addEventListener("focusout",maybeUnsetLastButtonClicked)}function addHxOnEventHandler(_n,Ce,ke){const $n=getInternalData(_n);Array.isArray($n.onHandlers)||($n.onHandlers=[]);let Hn;const zn=function(Zn){maybeEval(_n,function(){eltIsDisabled(_n)||(Hn||(Hn=new Function("event",ke)),Hn.call(_n,Zn))})};_n.addEventListener(Ce,zn),$n.onHandlers.push({event:Ce,listener:zn})}function processHxOnWildcard(_n){deInitOnHandlers(_n);for(let Ce=0;Ce<_n.attributes.length;Ce++){const ke=_n.attributes[Ce].name,$n=_n.attributes[Ce].value;if(startsWith(ke,"hx-on")||startsWith(ke,"data-hx-on")){const Hn=ke.indexOf("-on")+3,zn=ke.slice(Hn,Hn+1);if(zn==="-"||zn===":"){let Zn=ke.slice(Hn+1);startsWith(Zn,":")?Zn="htmx"+Zn:startsWith(Zn,"-")?Zn="htmx:"+Zn.slice(1):startsWith(Zn,"htmx-")&&(Zn="htmx:"+Zn.slice(5)),addHxOnEventHandler(_n,Zn,$n)}}}}function initNode(_n){if(closest(_n,htmx.config.disableSelector)){cleanUpElement(_n);return}const Ce=getInternalData(_n);if(Ce.initHash!==attributeHash(_n)){deInitNode(_n),Ce.initHash=attributeHash(_n),triggerEvent(_n,"htmx:beforeProcessNode"),_n.value&&(Ce.lastValue=_n.value);const ke=getTriggerSpecs(_n);processVerbs(_n,Ce,ke)||(getClosestAttributeValue(_n,"hx-boost")==="true"?boostElement(_n,Ce,ke):hasAttribute(_n,"hx-trigger")&&ke.forEach(function(Hn){addTriggerHandler(_n,Hn,Ce,function(){})})),(_n.tagName==="FORM"||getRawAttribute(_n,"type")==="submit"&&hasAttribute(_n,"form"))&&initButtonTracking(_n),triggerEvent(_n,"htmx:afterProcessNode")}}function processNode(_n){if(_n=resolveTarget(_n),closest(_n,htmx.config.disableSelector)){cleanUpElement(_n);return}initNode(_n),forEach(findElementsToProcess(_n),function(Ce){initNode(Ce)}),forEach(findHxOnWildcardElements(_n),processHxOnWildcard)}function kebabEventName(_n){return _n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function makeEvent(_n,Ce){let ke;return window.CustomEvent&&typeof window.CustomEvent=="function"?ke=new CustomEvent(_n,{bubbles:!0,cancelable:!0,composed:!0,detail:Ce}):(ke=getDocument().createEvent("CustomEvent"),ke.initCustomEvent(_n,!0,!0,Ce)),ke}function triggerErrorEvent(_n,Ce,ke){triggerEvent(_n,Ce,mergeObjects({error:Ce},ke))}function ignoreEventForLogging(_n){return _n==="htmx:afterProcessNode"}function withExtensions(_n,Ce){forEach(getExtensions(_n),function(ke){try{Ce(ke)}catch($n){logError($n)}})}function logError(_n){console.error?console.error(_n):console.log&&console.log("ERROR: ",_n)}function triggerEvent(_n,Ce,ke){_n=resolveTarget(_n),ke==null&&(ke={}),ke.elt=_n;const $n=makeEvent(Ce,ke);htmx.logger&&!ignoreEventForLogging(Ce)&&htmx.logger(_n,Ce,ke),ke.error&&(logError(ke.error),triggerEvent(_n,"htmx:error",{errorInfo:ke}));let Hn=_n.dispatchEvent($n);const zn=kebabEventName(Ce);if(Hn&&zn!==Ce){const Zn=makeEvent(zn,$n.detail);Hn=Hn&&_n.dispatchEvent(Zn)}return withExtensions(asElement(_n),function(Zn){Hn=Hn&&Zn.onEvent(Ce,$n)!==!1&&!$n.defaultPrevented}),Hn}let currentPathForHistory=location.pathname+location.search;function getHistoryElement(){return getDocument().querySelector("[hx-history-elt],[data-hx-history-elt]")||getDocument().body}function saveToHistoryCache(_n,Ce){if(!canAccessLocalStorage())return;const ke=cleanInnerHtmlForHistory(Ce),$n=getDocument().title,Hn=window.scrollY;if(htmx.config.historyCacheSize<=0){localStorage.removeItem("htmx-history-cache");return}_n=normalizePath(_n);const zn=parseJSON(localStorage.getItem("htmx-history-cache"))||[];for(let qn=0;qnhtmx.config.historyCacheSize;)zn.shift();for(;zn.length>0;)try{localStorage.setItem("htmx-history-cache",JSON.stringify(zn));break}catch(qn){triggerErrorEvent(getDocument().body,"htmx:historyCacheError",{cause:qn,cache:zn}),zn.shift()}}function getCachedHistory(_n){if(!canAccessLocalStorage())return null;_n=normalizePath(_n);const Ce=parseJSON(localStorage.getItem("htmx-history-cache"))||[];for(let ke=0;ke=200&&this.status<400){triggerEvent(getDocument().body,"htmx:historyCacheMissLoad",ke);const $n=makeFragment(this.response),Hn=$n.querySelector("[hx-history-elt],[data-hx-history-elt]")||$n,zn=getHistoryElement(),Zn=makeSettleInfo(zn);handleTitle($n.title),swapInnerHTML(zn,Hn,Zn),settleImmediately(Zn.tasks),currentPathForHistory=_n,triggerEvent(getDocument().body,"htmx:historyRestore",{path:_n,cacheMiss:!0,serverResponse:this.response})}else triggerErrorEvent(getDocument().body,"htmx:historyCacheMissLoadError",ke)},Ce.send()}function restoreHistory(_n){saveCurrentPageToHistory(),_n=_n||location.pathname+location.search;const Ce=getCachedHistory(_n);if(Ce){const ke=makeFragment(Ce.content),$n=getHistoryElement(),Hn=makeSettleInfo($n);handleTitle(ke.title),swapInnerHTML($n,ke,Hn),settleImmediately(Hn.tasks),getWindow().setTimeout(function(){window.scrollTo(0,Ce.scroll)},0),currentPathForHistory=_n,triggerEvent(getDocument().body,"htmx:historyRestore",{path:_n,item:Ce})}else htmx.config.refreshOnHistoryMiss?window.location.reload(!0):loadHistoryFromServer(_n)}function addRequestIndicatorClasses(_n){let Ce=findAttributeTargets(_n,"hx-indicator");return Ce==null&&(Ce=[_n]),forEach(Ce,function(ke){const $n=getInternalData(ke);$n.requestCount=($n.requestCount||0)+1,ke.classList.add.call(ke.classList,htmx.config.requestClass)}),Ce}function disableElements(_n){let Ce=findAttributeTargets(_n,"hx-disabled-elt");return Ce==null&&(Ce=[]),forEach(Ce,function(ke){const $n=getInternalData(ke);$n.requestCount=($n.requestCount||0)+1,ke.setAttribute("disabled",""),ke.setAttribute("data-disabled-by-htmx","")}),Ce}function removeRequestIndicators(_n,Ce){forEach(_n,function(ke){const $n=getInternalData(ke);$n.requestCount=($n.requestCount||0)-1,$n.requestCount===0&&ke.classList.remove.call(ke.classList,htmx.config.requestClass)}),forEach(Ce,function(ke){const $n=getInternalData(ke);$n.requestCount=($n.requestCount||0)-1,$n.requestCount===0&&(ke.removeAttribute("disabled"),ke.removeAttribute("data-disabled-by-htmx"))})}function haveSeenNode(_n,Ce){for(let ke=0;ke<_n.length;ke++)if(_n[ke].isSameNode(Ce))return!0;return!1}function shouldInclude(_n){const Ce=_n;return Ce.name===""||Ce.name==null||Ce.disabled||closest(Ce,"fieldset[disabled]")||Ce.type==="button"||Ce.type==="submit"||Ce.tagName==="image"||Ce.tagName==="reset"||Ce.tagName==="file"?!1:Ce.type==="checkbox"||Ce.type==="radio"?Ce.checked:!0}function addValueToFormData(_n,Ce,ke){_n!=null&&Ce!=null&&(Array.isArray(Ce)?Ce.forEach(function($n){ke.append(_n,$n)}):ke.append(_n,Ce))}function removeValueFromFormData(_n,Ce,ke){if(_n!=null&&Ce!=null){let $n=ke.getAll(_n);Array.isArray(Ce)?$n=$n.filter(Hn=>Ce.indexOf(Hn)<0):$n=$n.filter(Hn=>Hn!==Ce),ke.delete(_n),forEach($n,Hn=>ke.append(_n,Hn))}}function processInputValue(_n,Ce,ke,$n,Hn){if(!($n==null||haveSeenNode(_n,$n))){if(_n.push($n),shouldInclude($n)){const zn=getRawAttribute($n,"name");let Zn=$n.value;$n instanceof HTMLSelectElement&&$n.multiple&&(Zn=toArray($n.querySelectorAll("option:checked")).map(function(qn){return qn.value})),$n instanceof HTMLInputElement&&$n.files&&(Zn=toArray($n.files)),addValueToFormData(zn,Zn,Ce),Hn&&validateElement($n,ke)}$n instanceof HTMLFormElement&&(forEach($n.elements,function(zn){_n.indexOf(zn)>=0?removeValueFromFormData(zn.name,zn.value,Ce):_n.push(zn),Hn&&validateElement(zn,ke)}),new FormData($n).forEach(function(zn,Zn){zn instanceof File&&zn.name===""||addValueToFormData(Zn,zn,Ce)}))}}function validateElement(_n,Ce){const ke=_n;ke.willValidate&&(triggerEvent(ke,"htmx:validation:validate"),ke.checkValidity()||(Ce.push({elt:ke,message:ke.validationMessage,validity:ke.validity}),triggerEvent(ke,"htmx:validation:failed",{message:ke.validationMessage,validity:ke.validity})))}function overrideFormData(_n,Ce){for(const ke of Ce.keys())_n.delete(ke);return Ce.forEach(function(ke,$n){_n.append($n,ke)}),_n}function getInputValues(_n,Ce){const ke=[],$n=new FormData,Hn=new FormData,zn=[],Zn=getInternalData(_n);Zn.lastButtonClicked&&!bodyContains(Zn.lastButtonClicked)&&(Zn.lastButtonClicked=null);let qn=_n instanceof HTMLFormElement&&_n.noValidate!==!0||getAttributeValue(_n,"hx-validate")==="true";if(Zn.lastButtonClicked&&(qn=qn&&Zn.lastButtonClicked.formNoValidate!==!0),Ce!=="get"&&processInputValue(ke,Hn,zn,closest(_n,"form"),qn),processInputValue(ke,$n,zn,_n,qn),Zn.lastButtonClicked||_n.tagName==="BUTTON"||_n.tagName==="INPUT"&&getRawAttribute(_n,"type")==="submit"){const Jn=Zn.lastButtonClicked||_n,to=getRawAttribute(Jn,"name");addValueToFormData(to,Jn.value,Hn)}const Yn=findAttributeTargets(_n,"hx-include");return forEach(Yn,function(Jn){processInputValue(ke,$n,zn,asElement(Jn),qn),matches(Jn,"form")||forEach(asParentNode(Jn).querySelectorAll(INPUT_SELECTOR),function(to){processInputValue(ke,$n,zn,to,qn)})}),overrideFormData($n,Hn),{errors:zn,formData:$n,values:formDataProxy($n)}}function appendParam(_n,Ce,ke){_n!==""&&(_n+="&"),String(ke)==="[object Object]"&&(ke=JSON.stringify(ke));const $n=encodeURIComponent(ke);return _n+=encodeURIComponent(Ce)+"="+$n,_n}function urlEncode(_n){_n=formDataFromObject(_n);let Ce="";return _n.forEach(function(ke,$n){Ce=appendParam(Ce,$n,ke)}),Ce}function getHeaders(_n,Ce,ke){const $n={"HX-Request":"true","HX-Trigger":getRawAttribute(_n,"id"),"HX-Trigger-Name":getRawAttribute(_n,"name"),"HX-Target":getAttributeValue(Ce,"id"),"HX-Current-URL":getDocument().location.href};return getValuesForElement(_n,"hx-headers",!1,$n),ke!==void 0&&($n["HX-Prompt"]=ke),getInternalData(_n).boosted&&($n["HX-Boosted"]="true"),$n}function filterValues(_n,Ce){const ke=getClosestAttributeValue(Ce,"hx-params");if(ke){if(ke==="none")return new FormData;if(ke==="*")return _n;if(ke.indexOf("not ")===0)return forEach(ke.substr(4).split(","),function($n){$n=$n.trim(),_n.delete($n)}),_n;{const $n=new FormData;return forEach(ke.split(","),function(Hn){Hn=Hn.trim(),_n.has(Hn)&&_n.getAll(Hn).forEach(function(zn){$n.append(Hn,zn)})}),$n}}else return _n}function isAnchorLink(_n){return!!getRawAttribute(_n,"href")&&getRawAttribute(_n,"href").indexOf("#")>=0}function getSwapSpecification(_n,Ce){const ke=Ce||getClosestAttributeValue(_n,"hx-swap"),$n={swapStyle:getInternalData(_n).boosted?"innerHTML":htmx.config.defaultSwapStyle,swapDelay:htmx.config.defaultSwapDelay,settleDelay:htmx.config.defaultSettleDelay};if(htmx.config.scrollIntoViewOnBoost&&getInternalData(_n).boosted&&!isAnchorLink(_n)&&($n.show="top"),ke){const Zn=splitOnWhitespace(ke);if(Zn.length>0)for(let qn=0;qn0?Hn.join(":"):null;$n.scroll=to,$n.scrollTarget=zn}else if(Yn.indexOf("show:")===0){var Hn=Yn.substr(5).split(":");const io=Hn.pop();var zn=Hn.length>0?Hn.join(":"):null;$n.show=io,$n.showTarget=zn}else if(Yn.indexOf("focus-scroll:")===0){const Jn=Yn.substr(13);$n.focusScroll=Jn=="true"}else qn==0?$n.swapStyle=Yn:logError("Unknown modifier in hx-swap: "+Yn)}}return $n}function usesFormData(_n){return getClosestAttributeValue(_n,"hx-encoding")==="multipart/form-data"||matches(_n,"form")&&getRawAttribute(_n,"enctype")==="multipart/form-data"}function encodeParamsForBody(_n,Ce,ke){let $n=null;return withExtensions(Ce,function(Hn){$n==null&&($n=Hn.encodeParameters(_n,ke,Ce))}),$n??(usesFormData(Ce)?overrideFormData(new FormData,formDataFromObject(ke)):urlEncode(ke))}function makeSettleInfo(_n){return{tasks:[],elts:[_n]}}function updateScrollState(_n,Ce){const ke=_n[0],$n=_n[_n.length-1];if(Ce.scroll){var Hn=null;Ce.scrollTarget&&(Hn=asElement(querySelectorExt(ke,Ce.scrollTarget))),Ce.scroll==="top"&&(ke||Hn)&&(Hn=Hn||ke,Hn.scrollTop=0),Ce.scroll==="bottom"&&($n||Hn)&&(Hn=Hn||$n,Hn.scrollTop=Hn.scrollHeight)}if(Ce.show){var Hn=null;if(Ce.showTarget){let Zn=Ce.showTarget;Ce.showTarget==="window"&&(Zn="body"),Hn=asElement(querySelectorExt(ke,Zn))}Ce.show==="top"&&(ke||Hn)&&(Hn=Hn||ke,Hn.scrollIntoView({block:"start",behavior:htmx.config.scrollBehavior})),Ce.show==="bottom"&&($n||Hn)&&(Hn=Hn||$n,Hn.scrollIntoView({block:"end",behavior:htmx.config.scrollBehavior}))}}function getValuesForElement(_n,Ce,ke,$n){if($n==null&&($n={}),_n==null)return $n;const Hn=getAttributeValue(_n,Ce);if(Hn){let zn=Hn.trim(),Zn=ke;if(zn==="unset")return null;zn.indexOf("javascript:")===0?(zn=zn.substr(11),Zn=!0):zn.indexOf("js:")===0&&(zn=zn.substr(3),Zn=!0),zn.indexOf("{")!==0&&(zn="{"+zn+"}");let qn;Zn?qn=maybeEval(_n,function(){return Function("return ("+zn+")")()},{}):qn=parseJSON(zn);for(const Yn in qn)qn.hasOwnProperty(Yn)&&$n[Yn]==null&&($n[Yn]=qn[Yn])}return getValuesForElement(asElement(parentElt(_n)),Ce,ke,$n)}function maybeEval(_n,Ce,ke){return htmx.config.allowEval?Ce():(triggerErrorEvent(_n,"htmx:evalDisallowedError"),ke)}function getHXVarsForElement(_n,Ce){return getValuesForElement(_n,"hx-vars",!0,Ce)}function getHXValsForElement(_n,Ce){return getValuesForElement(_n,"hx-vals",!1,Ce)}function getExpressionVars(_n){return mergeObjects(getHXVarsForElement(_n),getHXValsForElement(_n))}function safelySetHeaderValue(_n,Ce,ke){if(ke!==null)try{_n.setRequestHeader(Ce,ke)}catch{_n.setRequestHeader(Ce,encodeURIComponent(ke)),_n.setRequestHeader(Ce+"-URI-AutoEncoded","true")}}function getPathFromResponse(_n){if(_n.responseURL&&typeof URL<"u")try{const Ce=new URL(_n.responseURL);return Ce.pathname+Ce.search}catch{triggerErrorEvent(getDocument().body,"htmx:badResponseUrl",{url:_n.responseURL})}}function hasHeader(_n,Ce){return Ce.test(_n.getAllResponseHeaders())}function ajaxHelper(_n,Ce,ke){return _n=_n.toLowerCase(),ke?ke instanceof Element||typeof ke=="string"?issueAjaxRequest(_n,Ce,null,null,{targetOverride:resolveTarget(ke),returnPromise:!0}):issueAjaxRequest(_n,Ce,resolveTarget(ke.source),ke.event,{handler:ke.handler,headers:ke.headers,values:ke.values,targetOverride:resolveTarget(ke.target),swapOverride:ke.swap,select:ke.select,returnPromise:!0}):issueAjaxRequest(_n,Ce,null,null,{returnPromise:!0})}function hierarchyForElt(_n){const Ce=[];for(;_n;)Ce.push(_n),_n=_n.parentElement;return Ce}function verifyPath(_n,Ce,ke){let $n,Hn;return typeof URL=="function"?(Hn=new URL(Ce,document.location.href),$n=document.location.origin===Hn.origin):(Hn=Ce,$n=startsWith(Ce,document.location.origin)),htmx.config.selfRequestsOnly&&!$n?!1:triggerEvent(_n,"htmx:validateUrl",mergeObjects({url:Hn,sameHost:$n},ke))}function formDataFromObject(_n){if(_n instanceof FormData)return _n;const Ce=new FormData;for(const ke in _n)_n.hasOwnProperty(ke)&&(typeof _n[ke].forEach=="function"?_n[ke].forEach(function($n){Ce.append(ke,$n)}):typeof _n[ke]=="object"&&!(_n[ke]instanceof Blob)?Ce.append(ke,JSON.stringify(_n[ke])):Ce.append(ke,_n[ke]));return Ce}function formDataArrayProxy(_n,Ce,ke){return new Proxy(ke,{get:function($n,Hn){return typeof Hn=="number"?$n[Hn]:Hn==="length"?$n.length:Hn==="push"?function(zn){$n.push(zn),_n.append(Ce,zn)}:typeof $n[Hn]=="function"?function(){$n[Hn].apply($n,arguments),_n.delete(Ce),$n.forEach(function(zn){_n.append(Ce,zn)})}:$n[Hn]&&$n[Hn].length===1?$n[Hn][0]:$n[Hn]},set:function($n,Hn,zn){return $n[Hn]=zn,_n.delete(Ce),$n.forEach(function(Zn){_n.append(Ce,Zn)}),!0}})}function formDataProxy(_n){return new Proxy(_n,{get:function(Ce,ke){if(typeof ke=="symbol")return Reflect.get(Ce,ke);if(ke==="toJSON")return()=>Object.fromEntries(_n);if(ke in Ce)return typeof Ce[ke]=="function"?function(){return _n[ke].apply(_n,arguments)}:Ce[ke];const $n=_n.getAll(ke);if($n.length!==0)return $n.length===1?$n[0]:formDataArrayProxy(Ce,ke,$n)},set:function(Ce,ke,$n){return typeof ke!="string"?!1:(Ce.delete(ke),typeof $n.forEach=="function"?$n.forEach(function(Hn){Ce.append(ke,Hn)}):typeof $n=="object"&&!($n instanceof Blob)?Ce.append(ke,JSON.stringify($n)):Ce.append(ke,$n),!0)},deleteProperty:function(Ce,ke){return typeof ke=="string"&&Ce.delete(ke),!0},ownKeys:function(Ce){return Reflect.ownKeys(Object.fromEntries(Ce))},getOwnPropertyDescriptor:function(Ce,ke){return Reflect.getOwnPropertyDescriptor(Object.fromEntries(Ce),ke)}})}function issueAjaxRequest(_n,Ce,ke,$n,Hn,zn){let Zn=null,qn=null;if(Hn=Hn??{},Hn.returnPromise&&typeof Promise<"u")var Yn=new Promise(function(hs,Qs){Zn=hs,qn=Qs});ke==null&&(ke=getDocument().body);const Jn=Hn.handler||handleAjaxResponse,to=Hn.select||null;if(!bodyContains(ke))return maybeCall(Zn),Yn;const io=Hn.targetOverride||asElement(getTarget(ke));if(io==null||io==DUMMY_ELT)return triggerErrorEvent(ke,"htmx:targetError",{target:getAttributeValue(ke,"hx-target")}),maybeCall(qn),Yn;let uo=getInternalData(ke);const mo=uo.lastButtonClicked;if(mo){const hs=getRawAttribute(mo,"formaction");hs!=null&&(Ce=hs);const Qs=getRawAttribute(mo,"formmethod");Qs!=null&&Qs.toLowerCase()!=="dialog"&&(_n=Qs)}const bo=getClosestAttributeValue(ke,"hx-confirm");if(zn===void 0&&triggerEvent(ke,"htmx:confirm",{target:io,elt:ke,path:Ce,verb:_n,triggeringEvent:$n,etc:Hn,issueRequest:function(zo){return issueAjaxRequest(_n,Ce,ke,$n,Hn,!!zo)},question:bo})===!1)return maybeCall(Zn),Yn;let Oo=ke,wo=getClosestAttributeValue(ke,"hx-sync"),$o=null,Do=!1;if(wo){const hs=wo.split(":"),Qs=hs[0].trim();if(Qs==="this"?Oo=findThisElement(ke,"hx-sync"):Oo=asElement(querySelectorExt(ke,Qs)),wo=(hs[1]||"drop").trim(),uo=getInternalData(Oo),wo==="drop"&&uo.xhr&&uo.abortable!==!0)return maybeCall(Zn),Yn;if(wo==="abort"){if(uo.xhr)return maybeCall(Zn),Yn;Do=!0}else wo==="replace"?triggerEvent(Oo,"htmx:abort"):wo.indexOf("queue")===0&&($o=(wo.split(" ")[1]||"last").trim())}if(uo.xhr)if(uo.abortable)triggerEvent(Oo,"htmx:abort");else{if($o==null){if($n){const hs=getInternalData($n);hs&&hs.triggerSpec&&hs.triggerSpec.queue&&($o=hs.triggerSpec.queue)}$o==null&&($o="last")}return uo.queuedRequests==null&&(uo.queuedRequests=[]),$o==="first"&&uo.queuedRequests.length===0?uo.queuedRequests.push(function(){issueAjaxRequest(_n,Ce,ke,$n,Hn)}):$o==="all"?uo.queuedRequests.push(function(){issueAjaxRequest(_n,Ce,ke,$n,Hn)}):$o==="last"&&(uo.queuedRequests=[],uo.queuedRequests.push(function(){issueAjaxRequest(_n,Ce,ke,$n,Hn)})),maybeCall(Zn),Yn}const xo=new XMLHttpRequest;uo.xhr=xo,uo.abortable=Do;const Bo=function(){uo.xhr=null,uo.abortable=!1,uo.queuedRequests!=null&&uo.queuedRequests.length>0&&uo.queuedRequests.shift()()},Vo=getClosestAttributeValue(ke,"hx-prompt");if(Vo){var Ko=prompt(Vo);if(Ko===null||!triggerEvent(ke,"htmx:prompt",{prompt:Ko,target:io}))return maybeCall(Zn),Bo(),Yn}if(bo&&!zn&&!confirm(bo))return maybeCall(Zn),Bo(),Yn;let Mo=getHeaders(ke,io,Ko);_n!=="get"&&!usesFormData(ke)&&(Mo["Content-Type"]="application/x-www-form-urlencoded"),Hn.headers&&(Mo=mergeObjects(Mo,Hn.headers));const es=getInputValues(ke,_n);let ls=es.errors;const ps=es.formData;Hn.values&&overrideFormData(ps,formDataFromObject(Hn.values));const rs=formDataFromObject(getExpressionVars(ke)),Yo=overrideFormData(ps,rs);let Ys=filterValues(Yo,ke);htmx.config.getCacheBusterParam&&_n==="get"&&Ys.set("org.htmx.cache-buster",getRawAttribute(io,"id")||"true"),(Ce==null||Ce==="")&&(Ce=getDocument().location.href);const sr=getValuesForElement(ke,"hx-request"),Js=getInternalData(ke).boosted;let ko=htmx.config.methodsThatUseUrlParams.indexOf(_n)>=0;const gs={boosted:Js,useUrlParams:ko,formData:Ys,parameters:formDataProxy(Ys),unfilteredFormData:Yo,unfilteredParameters:formDataProxy(Yo),headers:Mo,target:io,verb:_n,errors:ls,withCredentials:Hn.credentials||sr.credentials||htmx.config.withCredentials,timeout:Hn.timeout||sr.timeout||htmx.config.timeout,path:Ce,triggeringEvent:$n};if(!triggerEvent(ke,"htmx:configRequest",gs))return maybeCall(Zn),Bo(),Yn;if(Ce=gs.path,_n=gs.verb,Mo=gs.headers,Ys=formDataFromObject(gs.parameters),ls=gs.errors,ko=gs.useUrlParams,ls&&ls.length>0)return triggerEvent(ke,"htmx:validation:halted",gs),maybeCall(Zn),Bo(),Yn;const xs=Ce.split("#"),Qr=xs[0],cr=xs[1];let ws=Ce;if(ko&&(ws=Qr,!Ys.keys().next().done&&(ws.indexOf("?")<0?ws+="?":ws+="&",ws+=urlEncode(Ys),cr&&(ws+="#"+cr))),!verifyPath(ke,ws,gs))return triggerErrorEvent(ke,"htmx:invalidPath",gs),maybeCall(qn),Yn;if(xo.open(_n.toUpperCase(),ws,!0),xo.overrideMimeType("text/html"),xo.withCredentials=gs.withCredentials,xo.timeout=gs.timeout,!sr.noHeaders){for(const hs in Mo)if(Mo.hasOwnProperty(hs)){const Qs=Mo[hs];safelySetHeaderValue(xo,hs,Qs)}}const Fs={xhr:xo,target:io,requestConfig:gs,etc:Hn,boosted:Js,select:to,pathInfo:{requestPath:Ce,finalRequestPath:ws,responsePath:null,anchor:cr}};if(xo.onload=function(){try{const hs=hierarchyForElt(ke);if(Fs.pathInfo.responsePath=getPathFromResponse(xo),Jn(ke,Fs),Fs.keepIndicators!==!0&&removeRequestIndicators(Br,_r),triggerEvent(ke,"htmx:afterRequest",Fs),triggerEvent(ke,"htmx:afterOnLoad",Fs),!bodyContains(ke)){let Qs=null;for(;hs.length>0&&Qs==null;){const zo=hs.shift();bodyContains(zo)&&(Qs=zo)}Qs&&(triggerEvent(Qs,"htmx:afterRequest",Fs),triggerEvent(Qs,"htmx:afterOnLoad",Fs))}maybeCall(Zn),Bo()}catch(hs){throw triggerErrorEvent(ke,"htmx:onLoadError",mergeObjects({error:hs},Fs)),hs}},xo.onerror=function(){removeRequestIndicators(Br,_r),triggerErrorEvent(ke,"htmx:afterRequest",Fs),triggerErrorEvent(ke,"htmx:sendError",Fs),maybeCall(qn),Bo()},xo.onabort=function(){removeRequestIndicators(Br,_r),triggerErrorEvent(ke,"htmx:afterRequest",Fs),triggerErrorEvent(ke,"htmx:sendAbort",Fs),maybeCall(qn),Bo()},xo.ontimeout=function(){removeRequestIndicators(Br,_r),triggerErrorEvent(ke,"htmx:afterRequest",Fs),triggerErrorEvent(ke,"htmx:timeout",Fs),maybeCall(qn),Bo()},!triggerEvent(ke,"htmx:beforeRequest",Fs))return maybeCall(Zn),Bo(),Yn;var Br=addRequestIndicatorClasses(ke),_r=disableElements(ke);forEach(["loadstart","loadend","progress","abort"],function(hs){forEach([xo,xo.upload],function(Qs){Qs.addEventListener(hs,function(zo){triggerEvent(ke,"htmx:xhr:"+hs,{lengthComputable:zo.lengthComputable,loaded:zo.loaded,total:zo.total})})})}),triggerEvent(ke,"htmx:beforeSend",Fs);const ha=ko?null:encodeParamsForBody(xo,ke,Ys);return xo.send(ha),Yn}function determineHistoryUpdates(_n,Ce){const ke=Ce.xhr;let $n=null,Hn=null;if(hasHeader(ke,/HX-Push:/i)?($n=ke.getResponseHeader("HX-Push"),Hn="push"):hasHeader(ke,/HX-Push-Url:/i)?($n=ke.getResponseHeader("HX-Push-Url"),Hn="push"):hasHeader(ke,/HX-Replace-Url:/i)&&($n=ke.getResponseHeader("HX-Replace-Url"),Hn="replace"),$n)return $n==="false"?{}:{type:Hn,path:$n};const zn=Ce.pathInfo.finalRequestPath,Zn=Ce.pathInfo.responsePath,qn=getClosestAttributeValue(_n,"hx-push-url"),Yn=getClosestAttributeValue(_n,"hx-replace-url"),Jn=getInternalData(_n).boosted;let to=null,io=null;return qn?(to="push",io=qn):Yn?(to="replace",io=Yn):Jn&&(to="push",io=Zn||zn),io?io==="false"?{}:(io==="true"&&(io=Zn||zn),Ce.pathInfo.anchor&&io.indexOf("#")===-1&&(io=io+"#"+Ce.pathInfo.anchor),{type:to,path:io}):{}}function codeMatches(_n,Ce){var ke=new RegExp(_n.code);return ke.test(Ce.toString(10))}function resolveResponseHandling(_n){for(var Ce=0;Ce0?getWindow().setTimeout(Ko,$o.swapDelay):Ko()}io&&triggerErrorEvent(_n,"htmx:responseError",mergeObjects({error:"Response Status Error Code "+ke.status+" from "+Ce.pathInfo.requestPath},Ce))}}const extensions={};function extensionBase(){return{init:function(_n){return null},getSelectors:function(){return null},onEvent:function(_n,Ce){return!0},transformResponse:function(_n,Ce,ke){return _n},isInlineSwap:function(_n){return!1},handleSwap:function(_n,Ce,ke,$n){return!1},encodeParameters:function(_n,Ce,ke){return null}}}function defineExtension(_n,Ce){Ce.init&&Ce.init(internalAPI),extensions[_n]=mergeObjects(extensionBase(),Ce)}function removeExtension(_n){delete extensions[_n]}function getExtensions(_n,Ce,ke){if(Ce==null&&(Ce=[]),_n==null)return Ce;ke==null&&(ke=[]);const $n=getAttributeValue(_n,"hx-ext");return $n&&forEach($n.split(","),function(Hn){if(Hn=Hn.replace(/ /g,""),Hn.slice(0,7)=="ignore:"){ke.push(Hn.slice(7));return}if(ke.indexOf(Hn)<0){const zn=extensions[Hn];zn&&Ce.indexOf(zn)<0&&Ce.push(zn)}}),getExtensions(asElement(parentElt(_n)),Ce,ke)}var isReady=!1;getDocument().addEventListener("DOMContentLoaded",function(){isReady=!0});function ready(_n){isReady||getDocument().readyState==="complete"?_n():getDocument().addEventListener("DOMContentLoaded",_n)}function insertIndicatorStyles(){if(htmx.config.includeIndicatorStyles!==!1){const _n=htmx.config.inlineStyleNonce?` nonce="${htmx.config.inlineStyleNonce}"`:"";getDocument().head.insertAdjacentHTML("beforeend"," ."+htmx.config.indicatorClass+"{opacity:0} ."+htmx.config.requestClass+" ."+htmx.config.indicatorClass+"{opacity:1; transition: opacity 200ms ease-in;} ."+htmx.config.requestClass+"."+htmx.config.indicatorClass+"{opacity:1; transition: opacity 200ms ease-in;} ")}}function getMetaConfig(){const _n=getDocument().querySelector('meta[name="htmx-config"]');return _n?parseJSON(_n.content):null}function mergeMetaConfig(){const _n=getMetaConfig();_n&&(htmx.config=mergeObjects(htmx.config,_n))}return ready(function(){mergeMetaConfig(),insertIndicatorStyles();let _n=getDocument().body;processNode(_n);const Ce=getDocument().querySelectorAll("[hx-trigger='restored'],[data-hx-trigger='restored']");_n.addEventListener("htmx:abort",function($n){const Hn=$n.target,zn=getInternalData(Hn);zn&&zn.xhr&&zn.xhr.abort()});const ke=window.onpopstate?window.onpopstate.bind(window):null;window.onpopstate=function($n){$n.state&&$n.state.htmx?(restoreHistory(),forEach(Ce,function(Hn){triggerEvent(Hn,"htmx:restored",{document:getDocument(),triggerEvent})})):ke&&ke($n)},getWindow().setTimeout(function(){triggerEvent(_n,"htmx:load",{}),_n=null},0)}),htmx})();mustache.escape=function(_n){return _n};const entryComponents={account:Account,channel:Channel};let loadedComponents=[],loadSvelte=function(){loadedComponents.map(ke=>ke.$destroy()),loadedComponents=[];const _n=document.body.querySelectorAll(".lucent-component");if(_n.length===0)return;const Ce=function(ke){const $n=ke.attributes["data-layout"].value,[Hn,zn]=Object.entries(entryComponents).find(([Jn,to])=>$n===Jn);if(!zn)return[];const Zn=document.getElementById("json-"+$n).innerHTML,qn=JSON.parse(Zn);qn.axios=axiosInstance;const Yn={target:ke,props:qn};loadedComponents=[...loadedComponents,new zn(Yn)]};Array.from(_n).map(Ce)};document.addEventListener("DOMContentLoaded",loadSvelte); diff --git a/front/dist/assets/main-BWRwkaBb.css b/front/dist/assets/main-BWRwkaBb.css deleted file mode 100644 index 1819290..0000000 --- a/front/dist/assets/main-BWRwkaBb.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";:root{--p10: #f4f9ff;--p20: #eaf1f9;--p30: #b3ceff;--p40: #8db5ff;--p50: #70a2ff;--p60: #679cff;--p70: #4284ff;--p80: #1c6bff;--p90: #002b7a;--p100: #000C23;--suc10: #d1ffb8;--suc20: #d1ffb8;--suc30: #b5ff8d;--suc40: #a2ff70;--suc50: #82cc5a;--suc80: #71b34e;--suc90: #314c22;--err10: #ffb9d0;--err20: #ff9bb3;--err30: #fe7e97;--err40: #de617b;--err50: #be4461;--err80: #61001a;--err90: #560012;--grey-dark: #424656;--grey-light: #a6abbd;--text: var(--p100);--text-light: var(--grey-dark);--text-error: var(--err50);--main-font: ‘Open Sans‘, Arial, Helvetica, sans-serif}*,*:before,*:after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pt-4{padding-top:16px}.pt-5{padding-top:20px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-5{padding-bottom:20px}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.hide{display:none!important}.hidden{visibility:hidden}.d-block{display:block}.d-inline-block{display:inline-block}.is-bold{font-weight:700}.in-place{padding:36px}.notice{background-color:var(--p20);padding:14px;margin:2rem 0;position:relative;font-size:16px;line-height:24px;border-radius:12px}.notice .title{content:"NOTE";border-radius:12px;display:block;font-weight:700}.notice.notice-success{background:var(--suc20)}.notice.notice-error{background:var(--err10)}.scope-login{display:flex;height:100vh}.scope-login .bg-image{width:50%;background:url(/vendor/lucent/public/art.jpg);background-size:cover;background-repeat:no-repeat;background-position:center center}.scope-login .login-form{width:50%;height:100vh;display:flex;align-items:center;justify-content:center}.content{font-size:16px;line-height:20px;font-family:var(--main-font);color:var(--text)}.content p{margin-bottom:14px}.content p:last-child{margin-bottom:0}.content ul{padding:0 0 0 16px;list-style:none outside none}.content ul li:before{content:"—";opacity:.5;font-size:12px;padding-right:6px;vertical-align:10%}.content ul li{list-style:none;padding:0}.lx-small-text{font-size:12px;line-height:15px}.light-text{color:var(--text-light)}.sidebar-top{border:0px solid var(--p30);font-size:18px;padding:20px;display:flex;align-items:center;justify-content:space-between;background:var(--p20);margin-bottom:15px;border-radius:12px}.sidebar{border-radius:12px;font-size:15px;line-height:28px;padding:20px;background:var(--p20);display:flex;flex-direction:column;gap:4px}.sidebar-header{display:flex;cursor:pointer;justify-content:space-between;align-items:center;background:var(--p30);font-size:16px;padding:3px 12px 6px;color:var(--text);border:none;border-radius:12px}.sidebar-header:hover{background:var(--p40)}.sidebar-header:last-child{border-bottom:none}.sidebar-item{color:var(--text);display:block;font-size:14px;padding:3px 12px;text-decoration:none;transition:.6s;border-radius:12px}.sidebar-item:last-child{border-bottom:none}.sidebar-item:hover{background:var(--p30)}.sidebar-item.active{background:var(--p40)}.top-nav{display:flex;justify-content:end;align-items:center;gap:10px}.top-nav-item{border-radius:12px;font-size:14px;background:var(--p20);padding:3px 10px}.top-nav-item:hover{background:var(--p30)}label{display:block;font-weight:700;margin-bottom:4px}input[type=text],input[type=number],input[type=search],input[type=email],textarea{width:100%;background:var(--p20);border:1px solid var(--p50);border-radius:5px;padding:5px 7px;font-size:16px}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input[type=email]:focus,textarea:focus{background:var(--p10)}textarea{resize:none}select{width:100%;background:var(--p20);border:1px solid var(--p50);border-radius:5px;padding:5px 7px;font-size:16px}select:focus{background:var(--p10)}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline}.bt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#000;background-image:none;border:1px solid #000;border-radius:4px;box-shadow:#fff 4px 4px,#000 4px 4px 0 1px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;font-family:ITCAvantGardeStd-Bk,Arial,sans-serif;font-size:16px;font-weight:400;line-height:20px;margin:0 5px 10px 0;overflow:visible;padding:8px 40px;text-align:center;text-transform:none;touch-action:manipulation;user-select:none;-webkit-user-select:none;vertical-align:middle;white-space:nowrap}.bt:focus{text-decoration:none}.bt:hover{text-decoration:none}.bt:active{box-shadow:#00000020 0 3px 5px inset;outline:0}.bt:not([disabled]):active{box-shadow:#fff 2px 2px,#000 2px 2px 0 1px;transform:translate(2px,2px)}.table{min-width:600px;overflow:auto;background:var(--p20);padding:1px;font-size:14px;border-radius:12px}.table table{background:var(--p20);width:100%;border-collapse:separate;border:none;border-spacing:0}.table thead,.table thead tr{border-radius:12px}.table th{font-size:14px;font-weight:400;white-space:nowrap;max-width:400px;border:none;background:var(--p20);text-align:left;padding:8px 16px}.table th.is-sort{font-weight:700}.table th:first-child{border-radius:12px 0 0}.table th:last-child{border-radius:0 12px 0 0}.table td{font-weight:400;white-space:nowrap;max-width:400px;height:48px;padding:4px 16px;border:none;overflow:hidden}.table td .status{color:var(--text);font-size:80%}.table td .row-name{display:flex;align-items:center;gap:6px}.table td .title-td-contents{display:flex;align-items:center;gap:6px;font-size:14px;line-height:14px}.table tbody tr{border-radius:12px;background:var(--p10);border:none}.table tbody tr:has(input:checked){background:var(--p30)}.table tbody tr:hover{background:var(--p20)}.table .field-ui-number{text-align:right}.file-table-row{display:flex;align-items:center;gap:5px}.file-table-row>div{display:flex;flex-flow:column;gap:5px}.avatar{display:inline-block;vertical-align:middle;position:relative;color:#fff;border-radius:50%}.avatar__letters{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.avatars-compact{position:relative}.avatars-compact .avatar{margin-left:-9px}.is-editable-false .cm-content,.cm-focused .cm-content{background-color:var(--p10)}.cm-content{background-color:var(--p20)}.cm-activeLine{background-color:var(--p20)!important}.sidebar-content{min-width:300px;max-width:400px;position:relative}.main-content{position:relative;width:fit-content;min-width:900px}.main-wrapper{display:flex;justify-content:center;gap:40px;padding:20px;position:relative}.wrapper-tiny{background-color:var(--p20);border-radius:12px;margin:44px auto;width:600px;padding:44px}.common-wrapper{background-color:var(--p20);margin:20px 0;padding:20px;border-radius:12px}.wrapper-normal{background-color:#fff;border-radius:32px;margin:44px auto;width:1000px;padding:44px}.wrapper-normal.transparent{margin:0 auto;padding:0;background-color:transparent}.wrapper-large{background-color:#fff;border-radius:32px;margin:44px auto;max-width:1920px;min-width:1000px;padding:44px;width:fit-content}.wrapper-large.transparent{padding:0;margin:0 auto;background-color:transparent}@media only screen and (max-width: 1800px){.wrapper-normal{margin:0 0 0 auto;padding:20px}.wrapper-normal.transparent{margin:0 0 0 auto;padding:40px}.wrapper-large{margin:44px 0 0 auto;padding:44px}.wrapper-large.transparent{margin:0 0 0 auto;padding:40px}}@media only screen and (max-width: 1390px){.wrapper-normal{margin:0 auto;padding:20px}.wrapper-normal.transparent{margin:0 auto;padding:40px}.wrapper-large{margin:44px 0 0 auto;padding:44px}.wrapper-large.transparent{margin:0 0 0 auto;padding:40px}}.section-actions{text-align:center;padding:32px 0}.header-normal,.header-small{text-align:left;font-weight:400;font-size:20px}.toolbar{display:flex;align-items:center;gap:5px;justify-content:space-between}.toolbar input.search{border-radius:12px;background:var(--p20);padding:4px 10px;cursor:pointer;border:none;font-size:14px}.toolbar .selected-filter{font-size:13px;border-radius:12px;margin:2px 0;background:var(--p30);padding:3px 10px;display:flex;gap:4px;line-height:22px}.toolbar .filter-input{margin:10px 0}.toolbar .filter-input input{font-size:13px}.toolbar .applied-filter{background:var(--p30)}.toolbar-filters{display:flex;align-items:center;gap:5px}.applied-filters{display:flex;gap:4px;margin-top:10px}.applied-filters .applied-filter{font-size:13px;border-radius:12px;background:var(--p20);padding:3px 10px;display:flex;justify-content:center;gap:4px;line-height:22px}.applied-filters .applied-filter:hover{background-color:var(--p30)}.dropdown{position:relative;overflow:visible}.dropdown-button>div{display:flex;align-items:center;gap:3px}.dropdown-menu{display:flex;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:20;background:var(--p20);transition:.6s;flex-grow:1;top:35px;min-width:max-content;border:1px solid var(--p30)}.dropdown-menu.orientation-right{right:0}.dropdown-menu.orientation-left{left:0}.dropdown-header,.dropdown-item{display:flex;align-items:center;gap:3px;text-wrap:nowrap}.dropdown-header{padding:10px}.dropdown-item{font-size:14px;padding:3px 10px}.dropdown-item:hover{background:var(--p30);border-radius:12px}.dropdown-item:hover button{background:var(--p30)}.dropdown-item .button-icon{flex-shrink:0}.editor-field .dropdown-menu{background:var(--p30)}.button{border-radius:12px;background:var(--p20);padding:3px 10px;cursor:pointer;border:0px solid var(--p30);font-size:14px;min-height:27px;display:flex;align-items:center;gap:4px;color:var(--text)}.button:hover{background:var(--p30)}.button:active{background:var(--p50)!important;box-shadow:none}.button.active,.button.secondary{background:var(--p30)}.button.secondary:hover{background:var(--p40)}.button.primary{background:var(--p70);color:var(--p10)}.button.primary:hover{background:var(--p90)}.button[disabled]{pointer-events:none;opacity:.7;color:var(--text)}.upload-button{padding:0;border:none}.upload-button label{font-size:14px;line-height:14px;font-weight:400;background:var(--p80)!important;color:var(--p10)}.button-text{border:none;padding:0;background:transparent;cursor:pointer}.spinner-border{width:12px;height:12px;border:2px solid var(--p10);border-bottom-color:var(--p30);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@supports (-webkit-appearance: none) or (-moz-appearance: none){.checkbox-wrapper input[type=checkbox]{--active-inner: var(--p10);--focus: 2px var(--p30);--border-hover: var(--p30);--disabled: #F6F8FF;--disabled-inner: #E1E6F9;-webkit-appearance:none;-moz-appearance:none;height:21px;outline:none;display:inline-block;vertical-align:top;position:relative;margin:0;cursor:pointer;border:1px solid var(--bc, var(--p30));background:var(--b, var(--p10));transition:background .3s,border-color .3s,box-shadow .2s}.checkbox-wrapper input[type=checkbox]:after{content:"";display:block;left:0;top:0;position:absolute;transition:transform var(--d-t, .3s) var(--d-t-e, ease),opacity var(--d-o, .2s)}.checkbox-wrapper input[type=checkbox]:checked{--b: var(--p40);--bc: var(--p40);--d-o: .3s;--d-t: .6s;--d-t-e: cubic-bezier(.2, .85, .32, 1.2)}.checkbox-wrapper input[type=checkbox]:disabled{--b: var(--disabled);cursor:not-allowed;opacity:.9}.checkbox-wrapper input[type=checkbox]:disabled:checked{--b: var(--disabled-inner);--bc: var(--p40)}.checkbox-wrapper input[type=checkbox]:disabled+label{cursor:not-allowed}.checkbox-wrapper input[type=checkbox]:hover:not(:checked):not(:disabled){--bc: var(--border-hover)}.checkbox-wrapper input[type=checkbox]:focus{box-shadow:0 0 0 var(--focus)}.checkbox-wrapper input[type=checkbox]:not(.switch){width:21px}.checkbox-wrapper input[type=checkbox]:not(.switch):after{opacity:var(--o, 0)}.checkbox-wrapper input[type=checkbox]:not(.switch):checked{--o: 1}.checkbox-wrapper input[type=checkbox]+label{display:inline-block;vertical-align:middle;cursor:pointer;margin-left:4px}.checkbox-wrapper input[type=checkbox]:not(.switch){border-radius:7px}.checkbox-wrapper input[type=checkbox]:not(.switch):after{width:5px;height:9px;border:2px solid var(--active-inner);border-top:0;border-left:0;left:7px;top:4px;transform:rotate(var(--r, 20deg))}.checkbox-wrapper input[type=checkbox]:not(.switch):checked{--r: 43deg}}.checkbox-wrapper *{box-sizing:inherit}.checkbox-wrapper *:before,.checkbox-wrapper *:after{box-sizing:inherit}.checkbox-wrapper input[type=checkbox]:indeterminate{--b: var(--p40);--bc: var(--p40);--d-o: .3s;--d-t: .6s;--d-t-e: cubic-bezier(.2, .85, .32, 1.2)}.pagination{margin:20px auto 10px;display:flex;justify-content:center;align-items:center;gap:4px;list-style:none;padding:0}.pagination li a,.pagination li span{font-size:14px;border-radius:12px;padding:4px 18px;background:var(--p20)}.pagination li a:hover,.pagination li span:hover{background:var(--p30)}.pagination li.disabled{pointer-events:none;opacity:.7}.pagination li.active span{background:var(--p30)}.record-edit{position:relative}.record-edit .invalid-feedback{color:var(--text-error);font-size:15px;line-height:20px;margin-top:10px}.record-header{margin:10px 0 0}.record-header .schema-name{font-size:14px}.record-header .record-title{font-size:18px;display:block}.tools-header{margin:30px 0 0;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;position:relative;z-index:20;padding:10px;border-radius:12px;background:var(--p20)}.editor-field{background:var(--p20);padding:18px;position:relative;border-radius:12px;margin:6px 0;border-color:transparent}.editor-field .button:not(.primary){background:var(--p30)}.editor-field .button:not(.primary):hover{background:var(--p40)}.editor-field dialog .button:not(.primary){background:var(--p20)}.editor-field dialog .button:not(.primary):hover{background:var(--p30)}.field-header{margin-bottom:4px;position:relative}.field-header .labels{display:flex;justify-content:space-between;align-items:center}.field-header .label-and-help{display:flex;align-items:center;gap:6px}.field-header label{font-size:14px;line-height:14px;margin:0;font-weight:700}.field-header .help-text{font-size:14px;line-height:14px}.system-help-text{font-size:14px;line-height:14px;margin-top:10px}.field-checkbox{display:flex;gap:20px;align-items:center}.field-checkbox .form-check-inline{display:flex;align-items:center;gap:4px}.field-checkbox .form-check-label{font-size:14px;line-height:14px}.record-edit-file-preview{display:flex;gap:20px}.record-edit-file-preview .file-details{width:50%;display:flex;flex-direction:column;gap:5px}.record-edit-file-preview .file-details-item .text-muted{color:var(--grey-dark)}.tabs{padding:0;margin:20px 0;display:flex;gap:4px}.tabs .tab{list-style:none}input.switch{-webkit-appearance:none;width:34px;height:18px;border:1px solid var(--p40);position:relative;border-radius:50px;box-sizing:content-box;cursor:pointer;transition:background .15s ease-in-out;background:#fff}input.switch:after{top:2px;left:2px;transition:left .15s ease-in-out;content:" ";width:14px;height:14px;background:var(--p40);box-shadow:inset 0 0 0 1px var(--p40);position:absolute;border-radius:50px}input.switch:checked{background:var(--p50)}input.switch:checked:after{left:calc(100% - 17px);background:var(--p10)}.preview-file,.preview-reference{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--p10);border-radius:12px}.preview-file .image,.preview-reference .image{display:flex}.preview-file .reference-action,.preview-reference .reference-action{display:none}.preview-file:hover,.preview-reference:hover{background:var(--p30)}.preview-file:hover .reference-action,.preview-reference:hover .reference-action{display:block}.file-preview-small{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border-radius:12px;padding:4px}.preview-reference{background:var(--p10);padding:10px 20px}.sortable-container{display:flex;flex-direction:column;gap:5px}.sortable-ghost{border:2px dashed var(--p60)}.sortable-drag{opacity:0!important}.sortable-ghost{opacity:1!important}body:has(dialog[open]){overflow:hidden}dialog{margin:2vh auto;background-color:#fff;padding:34px;border:none;border-radius:12px;overflow:auto;max-height:96vh;box-shadow:none!important}dialog .close{position:absolute;top:10px;right:0}dialog .dialog-body{width:fit-content}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{margin-bottom:20px;display:flex;align-items:center;gap:8px;position:sticky;top:-34px;z-index:999;background:#fff;padding:10px 0}.autocomplete{position:relative;z-index:1000;overflow:visible}.autocomplete .autocomplete-option{cursor:pointer;font-size:14px;padding:3px 10px}.autocomplete .autocomplete-option:hover{background:var(--p40);border-radius:12px}.autocomplete:focus-within .autocomplete-results{display:flex}.autocomplete-selected-value{font-size:13px;margin-top:10px;border-radius:12px;background:var(--p30);padding:3px 10px;display:inline-flex;justify-content:center;gap:4px;line-height:22px}.autocomplete-selected-value:hover{background:var(--p40)}.autocomplete-results{display:none;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:20;background:var(--p30);transition:.6s;flex-grow:1;top:45px;width:100%}.reference-tags{position:relative;z-index:20}.reference-tags .reference-tags-option{cursor:pointer;font-size:14px;padding:3px 10px}.reference-tags .reference-tags-option:hover{background:var(--p40);border-radius:12px}.reference-tags:focus-within .reference-tags-results{display:flex}.reference-tags-selected-value{font-size:13px;margin-top:10px;border-radius:12px;background:var(--p30);padding:3px 10px;display:inline-flex;justify-content:center;gap:4px;line-height:22px}.reference-tags-selected-value:hover{background:var(--p40)}.reference-tags-results{display:none;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:20;background:var(--p30);transition:.6s;flex-grow:1;top:45px;width:100%}.reference-tags-results .start-typing{font-style:italic;font-size:13px}.member-list{display:flex;flex-direction:column;gap:5px}.member-item{background:var(--p30);border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center}.member-item .member-name{display:flex;align-items:center;gap:10px}.revisions{display:flex;flex-direction:column;gap:5px}.revisions .revision{justify-content:space-between;display:flex;gap:20px;align-items:center;background:var(--p20);padding:12px;border-radius:12px}.revisions .revision .version{display:flex;gap:10px}.revisions .revision.active{background:var(--p30)}.selected-revision{margin-top:30px;align-items:center;background:var(--p20);padding:12px;border-radius:12px}.selected-revision .button{background:var(--p30)}.selected-revision .revision-field{display:flex;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--p30);flex:1}.selected-revision .revision-field .compare-left,.selected-revision .revision-field .compare-right{width:45%;border-radius:12px;padding:20px;background:var(--p30)}.selected-revision .revision-field .compare-center{width:10%;height:100%;display:flex;gap:20px;align-items:center}.reference-field{width:100px}.revision-references{display:flex;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--p30)}.reference-compare{width:45%;border-radius:12px;padding:20px;background:var(--p30)}body{background-color:var(--p10);font-family:var(--main-font),sans-serif;color:var(--text)}body :focus{outline:none;box-shadow:0 0 1px 2px var(--p70)}.btn-spinner .spinner-border{display:none}.btn-spinner.spinner-on .spinner-border{display:inline-block}.cursor-pointer{cursor:pointer}a{color:var(--text);text-decoration:none}.lucent-component{position:relative}.status-removed.svelte-1jo1k1d{opacity:.5}svg.svelte-r4pd9j{vertical-align:text-top}img.svelte-1mb3bsz{border-radius:12px;padding:4px}.color.svelte-78o2k4{width:18px;height:18px;display:inline-block;position:relative;top:3px}a.svelte-nbbgyi{max-width:200px;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:#333}a.svelte-nbbgyi:hover{opacity:.5}div.references.svelte-15ilpfz{max-height:48px;overflow-x:hidden;overflow-y:hidden}div.svelte-1ft053t{max-height:24px;text-overflow:ellipsis;overflow:hidden}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,.08);box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-months .flatpickr-month{background:transparent;color:#000000e6;fill:#000000e6;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#000000e6;fill:#000000e6}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,.6);top:26%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,.6);top:40%}.numInputWrapper span svg path{fill:#00000080}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#00000080;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:#0000008a;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 #e6e6e6}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 #569ff7}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#3939394d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,.08);box-shadow:0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:"";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#bbb}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:#0000001a}.numInputWrapper span:active{background:#0003}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#5a617180}.numInputWrapper:hover{background:#0000000d}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:#0000000d}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#5a617180;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:#0000000d}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:none;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 #eceef1}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 #ff5a5f}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2;box-shadow:-5px 0 #e2e2e2,5px 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#4848484d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#4848481a}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f;box-shadow:-5px 0 #ff5a5f,5px 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#4848484d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}span.flatpickr-day.selected{font-weight:700}textarea.svelte-1er4ovm{resize:none}.tox{box-shadow:none;box-sizing:content-box;color:#222f3e;cursor:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:normal;-webkit-tap-highlight-color:transparent;text-decoration:none;text-shadow:none;text-transform:none;vertical-align:initial;white-space:normal}.tox *:not(svg):not(rect){box-sizing:inherit;color:inherit;cursor:inherit;direction:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;line-height:inherit;-webkit-tap-highlight-color:inherit;text-align:inherit;text-decoration:inherit;text-shadow:inherit;text-transform:inherit;vertical-align:inherit;white-space:inherit}.tox *:not(svg):not(rect){background:transparent;border:0;box-shadow:none;float:none;height:auto;margin:0;max-width:none;outline:0;padding:0;position:static;width:auto}.tox:not([dir=rtl]){direction:ltr;text-align:left}.tox[dir=rtl]{direction:rtl;text-align:right}.tox-tinymce{border:2px solid #eeeeee;border-radius:10px;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;overflow:hidden;position:relative;visibility:inherit!important}.tox.tox-tinymce-inline{border:none;box-shadow:none;overflow:initial}.tox.tox-tinymce-inline .tox-editor-container{overflow:initial}.tox.tox-tinymce-inline .tox-editor-header{background-color:#fff;border:2px solid #eeeeee;border-radius:10px;box-shadow:none;overflow:hidden}.tox-tinymce-aux{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;z-index:1300}.tox-tinymce *:focus,.tox-tinymce-aux *:focus{outline:none}button::-moz-focus-inner{border:0}.tox[dir=rtl] .tox-icon--flip svg{transform:rotateY(180deg)}.tox .accessibility-issue__header{align-items:center;display:flex;margin-bottom:4px}.tox .accessibility-issue__description{align-items:stretch;border-radius:6px;display:flex;justify-content:space-between}.tox .accessibility-issue__description>div{padding-bottom:4px}.tox .accessibility-issue__description>div>div{align-items:center;display:flex;margin-bottom:4px}.tox .accessibility-issue__description>div>div .tox-icon svg{display:block}.tox .accessibility-issue__repair{margin-top:16px}.tox .tox-dialog__body-content .accessibility-issue--info .accessibility-issue__description{background-color:#0065d81a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--info .tox-form__group h2{color:#006ce7}.tox .tox-dialog__body-content .accessibility-issue--info .tox-icon svg{fill:#006ce7}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon{background-color:#006ce7;color:#fff}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:focus{background-color:#0060ce}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:active{background-color:#0054b4}.tox .tox-dialog__body-content .accessibility-issue--warn .accessibility-issue__description{background-color:#ffa50014;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn .tox-form__group h2{color:#8f5d00}.tox .tox-dialog__body-content .accessibility-issue--warn .tox-icon svg{fill:#8f5d00}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon{background-color:#ffe89d;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:focus{background-color:#f2d574;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:active{background-color:#e8c657;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error .accessibility-issue__description{background-color:#cc00001a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error .tox-form__group h2{color:#c00}.tox .tox-dialog__body-content .accessibility-issue--error .tox-icon svg{fill:#c00}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon{background-color:#f2bfbf;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:focus{background-color:#e9a4a4;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:active{background-color:#ee9494;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--success .accessibility-issue__description{background-color:#78ab461a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--success .accessibility-issue__description>*:last-child{display:none}.tox .tox-dialog__body-content .accessibility-issue--success .tox-form__group h2{color:#527530}.tox .tox-dialog__body-content .accessibility-issue--success .tox-icon svg{fill:#527530}.tox .tox-dialog__body-content .accessibility-issue__header .tox-form__group h1,.tox .tox-dialog__body-content .tox-form__group .accessibility-issue__description h2{font-size:14px;margin-top:0}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__header .tox-button{margin-left:4px}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__header>*:nth-last-child(2){margin-left:auto}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__description{padding:4px 4px 4px 8px}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__header .tox-button{margin-right:4px}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__header>*:nth-last-child(2){margin-right:auto}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__description{padding:4px 8px 4px 4px}.tox .tox-advtemplate .tox-form__grid{flex:1}.tox .tox-advtemplate .tox-form__grid>div:first-child{display:flex;flex-direction:column;width:30%}.tox .tox-advtemplate .tox-form__grid>div:first-child>div:nth-child(2){flex-basis:0;flex-grow:1;overflow:auto}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-advtemplate .tox-form__grid>div:first-child{width:100%}}.tox .tox-advtemplate iframe{border-color:#eee;border-radius:10px;border-style:solid;border-width:1px;margin:0 10px}.tox .tox-anchorbar,.tox .tox-bottom-anchorbar,.tox .tox-bar{display:flex;flex:0 0 auto}.tox .tox-button{background-color:#006ce7;background-image:none;background-position:0 0;background-repeat:repeat;border-color:#006ce7;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;font-style:normal;font-weight:700;letter-spacing:normal;line-height:24px;margin:0;outline:none;padding:4px 16px;position:relative;text-align:center;text-decoration:none;text-transform:none;white-space:nowrap}.tox .tox-button:before{border-radius:6px;bottom:-1px;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #006ce7,0 0 0 3px #006ce740;content:"";left:-1px;opacity:0;pointer-events:none;position:absolute;right:-1px;top:-1px}.tox .tox-button[disabled]{background-color:#006ce7;background-image:none;border-color:#006ce7;box-shadow:none;color:#ffffff80;cursor:not-allowed}.tox .tox-button:focus:not(:disabled){background-color:#0060ce;background-image:none;border-color:#0060ce;box-shadow:none;color:#fff}.tox .tox-button:focus-visible:not(:disabled):before{opacity:1}.tox .tox-button:hover:not(:disabled){background-color:#0060ce;background-image:none;border-color:#0060ce;box-shadow:none;color:#fff}.tox .tox-button:active:not(:disabled){background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled{background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled[disabled]{background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#ffffff80;cursor:not-allowed}.tox .tox-button.tox-button--enabled:focus:not(:disabled){background-color:#00489b;background-image:none;border-color:#00489b;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled:hover:not(:disabled){background-color:#00489b;background-image:none;border-color:#00489b;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled:active:not(:disabled){background-color:#003c81;background-image:none;border-color:#003c81;box-shadow:none;color:#fff}.tox .tox-button--icon-and-text,.tox .tox-button.tox-button--icon-and-text,.tox .tox-button.tox-button--secondary.tox-button--icon-and-text{display:flex;padding:5px 4px}.tox .tox-button--icon-and-text .tox-icon svg,.tox .tox-button.tox-button--icon-and-text .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon-and-text .tox-icon svg{display:block;fill:currentColor}.tox .tox-button--secondary{background-color:#f0f0f0;background-image:none;background-position:0 0;background-repeat:repeat;border-color:#f0f0f0;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;color:#222f3e;font-size:14px;font-style:normal;font-weight:700;letter-spacing:normal;outline:none;padding:4px 16px;text-decoration:none;text-transform:none}.tox .tox-button--secondary[disabled]{background-color:#f0f0f0;background-image:none;border-color:#f0f0f0;box-shadow:none;color:#222f3e80}.tox .tox-button--secondary:focus:not(:disabled){background-color:#e3e3e3;background-image:none;border-color:#e3e3e3;box-shadow:none;color:#222f3e}.tox .tox-button--secondary:hover:not(:disabled){background-color:#e3e3e3;background-image:none;border-color:#e3e3e3;box-shadow:none;color:#222f3e}.tox .tox-button--secondary:active:not(:disabled){background-color:#d6d6d6;background-image:none;border-color:#d6d6d6;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled{background-color:#a8c8ed;background-image:none;border-color:#a8c8ed;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled[disabled]{background-color:#a8c8ed;background-image:none;border-color:#a8c8ed;box-shadow:none;color:#222f3e80}.tox .tox-button--secondary.tox-button--enabled:focus:not(:disabled){background-color:#93bbe9;background-image:none;border-color:#93bbe9;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled:hover:not(:disabled){background-color:#93bbe9;background-image:none;border-color:#93bbe9;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled:active:not(:disabled){background-color:#7daee4;background-image:none;border-color:#7daee4;box-shadow:none;color:#222f3e}.tox .tox-button--icon,.tox .tox-button.tox-button--icon,.tox .tox-button.tox-button--secondary.tox-button--icon{padding:4px}.tox .tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon .tox-icon svg{display:block;fill:currentColor}.tox .tox-button-link{background:0;border:none;box-sizing:border-box;cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;font-weight:400;line-height:1.3;margin:0;padding:0;white-space:nowrap}.tox .tox-button-link--sm{font-size:14px}.tox .tox-button--naked{background-color:transparent;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked[disabled]{background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e80}.tox .tox-button--naked:hover:not(:disabled){background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked:focus:not(:disabled){background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked:active:not(:disabled){background-color:#222f3e2e;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked .tox-icon svg{fill:currentColor}.tox .tox-button--naked.tox-button--icon:hover:not(:disabled){color:#222f3e}.tox .tox-checkbox{align-items:center;border-radius:6px;cursor:pointer;display:flex;height:36px;min-width:36px}.tox .tox-checkbox__input{height:1px;overflow:hidden;position:absolute;top:auto;width:1px}.tox .tox-checkbox__icons{align-items:center;border-radius:6px;box-shadow:0 0 0 2px transparent;box-sizing:content-box;display:flex;height:24px;justify-content:center;padding:3px;width:24px}.tox .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:block;fill:#222f3e4d}.tox .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display:none;fill:#006ce7}.tox .tox-checkbox__icons .tox-checkbox-icon__checked svg{display:none;fill:#006ce7}.tox .tox-checkbox--disabled{color:#222f3e80;cursor:not-allowed}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__checked svg{fill:#222f3e80}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{fill:#222f3e80}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{fill:#222f3e80}.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:none}.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__checked svg{display:block}.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:none}.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display:block}.tox input.tox-checkbox__input:focus+.tox-checkbox__icons{border-radius:6px;box-shadow:inset 0 0 0 1px #006ce7;padding:3px}.tox:not([dir=rtl]) .tox-checkbox__label{margin-left:4px}.tox:not([dir=rtl]) .tox-checkbox__input{left:-10000px}.tox:not([dir=rtl]) .tox-bar .tox-checkbox{margin-left:4px}.tox[dir=rtl] .tox-checkbox__label{margin-right:4px}.tox[dir=rtl] .tox-checkbox__input{right:-10000px}.tox[dir=rtl] .tox-bar .tox-checkbox{margin-right:4px}.tox .tox-collection--toolbar .tox-collection__group{display:flex;padding:0}.tox .tox-collection--grid .tox-collection__group{display:flex;flex-wrap:wrap;max-height:208px;overflow-x:hidden;overflow-y:auto;padding:0}.tox .tox-collection--list .tox-collection__group{border-bottom-width:0;border-color:#e3e3e3;border-left-width:0;border-right-width:0;border-style:solid;border-top-width:1px;padding:4px 0}.tox .tox-collection--list .tox-collection__group:first-child{border-top-width:0}.tox .tox-collection__group-heading{background-color:#fcfcfc;color:#222f3eb3;cursor:default;font-size:12px;font-style:normal;font-weight:400;margin-bottom:4px;margin-top:-4px;padding:4px 8px;text-transform:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tox .tox-collection__item{align-items:center;border-radius:3px;color:#222f3e;display:flex;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tox .tox-collection--list .tox-collection__item{padding:4px 8px}.tox .tox-collection--toolbar .tox-collection__item,.tox .tox-collection--grid .tox-collection__item{border-radius:3px;padding:4px}.tox .tox-collection--list .tox-collection__item--enabled{background-color:#fff;color:#222f3e}.tox .tox-collection--list .tox-collection__item--active{background-color:#cce2fa}.tox .tox-collection--toolbar .tox-collection__item--enabled{background-color:#a6ccf7;color:#222f3e}.tox .tox-collection--toolbar .tox-collection__item--active{background-color:#cce2fa}.tox .tox-collection--grid .tox-collection__item--enabled{background-color:#a6ccf7;color:#222f3e}.tox .tox-collection--grid .tox-collection__item--active:not(.tox-collection__item--state-disabled){background-color:#cce2fa;color:#222f3e}.tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#222f3e}.tox .tox-collection--toolbar .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#222f3e}.tox .tox-collection__item-icon,.tox .tox-collection__item-checkmark{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.tox .tox-collection__item-icon svg,.tox .tox-collection__item-checkmark svg{fill:currentColor}.tox .tox-collection--toolbar-lg .tox-collection__item-icon{height:48px;width:48px}.tox .tox-collection__item-label{color:currentColor;display:inline-block;flex:1;font-size:14px;font-style:normal;font-weight:400;line-height:24px;max-width:100%;text-transform:none;word-break:break-all}.tox .tox-collection__item-accessory{color:#222f3eb3;display:inline-block;font-size:14px;height:24px;line-height:24px;text-transform:none}.tox .tox-collection__item-caret{align-items:center;display:flex;min-height:24px}.tox .tox-collection__item-caret:after{content:"";font-size:0;min-height:inherit}.tox .tox-collection__item-caret svg{fill:#222f3e}.tox .tox-collection__item--state-disabled{background-color:transparent;color:#222f3e80;cursor:not-allowed}.tox .tox-collection__item--state-disabled .tox-collection__item-caret svg{fill:#222f3e80}.tox .tox-collection--list .tox-collection__item:not(.tox-collection__item--enabled) .tox-collection__item-checkmark svg{display:none}.tox .tox-collection--list .tox-collection__item:not(.tox-collection__item--enabled) .tox-collection__item-accessory+.tox-collection__item-checkmark{display:none}.tox .tox-collection--horizontal{background-color:#fff;border:1px solid #e3e3e3;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:nowrap;margin-bottom:0;overflow-x:auto;padding:0}.tox .tox-collection--horizontal .tox-collection__group{align-items:center;display:flex;flex-wrap:nowrap;margin:0;padding:0 4px}.tox .tox-collection--horizontal .tox-collection__item{height:28px;margin:6px 1px 5px 0;padding:0 4px}.tox .tox-collection--horizontal .tox-collection__item-label{white-space:nowrap}.tox .tox-collection--horizontal .tox-collection__item-caret{margin-left:4px}.tox .tox-collection__item-container{display:flex}.tox .tox-collection__item-container--row{align-items:center;flex:1 1 auto;flex-direction:row}.tox .tox-collection__item-container--row.tox-collection__item-container--align-left{margin-right:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--align-right{justify-content:flex-end;margin-left:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-top{align-items:flex-start;margin-bottom:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-middle{align-items:center}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-bottom{align-items:flex-end;margin-top:auto}.tox .tox-collection__item-container--column{align-self:center;flex:1 1 auto;flex-direction:column}.tox .tox-collection__item-container--column.tox-collection__item-container--align-left{align-items:flex-start}.tox .tox-collection__item-container--column.tox-collection__item-container--align-right{align-items:flex-end}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-top{align-self:flex-start}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-middle{align-self:center}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-bottom{align-self:flex-end}.tox:not([dir=rtl]) .tox-collection--horizontal .tox-collection__group:not(:last-of-type){border-right:1px solid transparent}.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>*:not(:first-child){margin-left:8px}.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>.tox-collection__item-label:first-child{margin-left:4px}.tox:not([dir=rtl]) .tox-collection__item-accessory{margin-left:16px;text-align:right}.tox:not([dir=rtl]) .tox-collection .tox-collection__item-caret{margin-left:16px}.tox[dir=rtl] .tox-collection--horizontal .tox-collection__group:not(:last-of-type){border-left:1px solid transparent}.tox[dir=rtl] .tox-collection--list .tox-collection__item>*:not(:first-child){margin-right:8px}.tox[dir=rtl] .tox-collection--list .tox-collection__item>.tox-collection__item-label:first-child{margin-right:4px}.tox[dir=rtl] .tox-collection__item-accessory{margin-right:16px;text-align:left}.tox[dir=rtl] .tox-collection .tox-collection__item-caret{margin-right:16px;transform:rotateY(180deg)}.tox[dir=rtl] .tox-collection--horizontal .tox-collection__item-caret{margin-right:4px}.tox .tox-color-picker-container{display:flex;flex-direction:row;height:225px;margin:0}.tox .tox-sv-palette{box-sizing:border-box;display:flex;height:100%}.tox .tox-sv-palette-spectrum{height:100%}.tox .tox-sv-palette,.tox .tox-sv-palette-spectrum{width:225px}.tox .tox-sv-palette-thumb{background:none;border:1px solid black;border-radius:50%;box-sizing:content-box;height:12px;position:absolute;width:12px}.tox .tox-sv-palette-inner-thumb{border:1px solid white;border-radius:50%;height:10px;position:absolute;width:10px}.tox .tox-hue-slider{box-sizing:border-box;height:100%;width:25px}.tox .tox-hue-slider-spectrum{background:linear-gradient(to bottom,red,#ff0080,#f0f,#8000ff,#00f,#0080ff,#0ff,#00ff80,#0f0,#80ff00,#ff0,#ff8000,red);height:100%;width:100%}.tox .tox-hue-slider,.tox .tox-hue-slider-spectrum{width:20px}.tox .tox-hue-slider-spectrum:focus,.tox .tox-sv-palette-spectrum:focus{outline:#08f solid}.tox .tox-hue-slider-thumb{background:#fff;border:1px solid black;box-sizing:content-box;height:4px;width:100%}.tox .tox-rgb-form{display:flex;flex-direction:column;justify-content:space-between}.tox .tox-rgb-form div{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px;width:inherit}.tox .tox-rgb-form input{width:6em}.tox .tox-rgb-form input.tox-invalid{border:1px solid red!important}.tox .tox-rgb-form .tox-rgba-preview{border:1px solid black;flex-grow:2;margin-bottom:0}.tox:not([dir=rtl]) .tox-sv-palette{margin-right:15px}.tox:not([dir=rtl]) .tox-hue-slider{margin-right:15px}.tox:not([dir=rtl]) .tox-hue-slider-thumb{margin-left:-1px}.tox:not([dir=rtl]) .tox-rgb-form label{margin-right:.5em}.tox[dir=rtl] .tox-sv-palette,.tox[dir=rtl] .tox-hue-slider{margin-left:15px}.tox[dir=rtl] .tox-hue-slider-thumb{margin-right:-1px}.tox[dir=rtl] .tox-rgb-form label{margin-left:.5em}.tox .tox-toolbar .tox-swatches,.tox .tox-toolbar__primary .tox-swatches,.tox .tox-toolbar__overflow .tox-swatches{margin:5px 0 6px 11px}.tox .tox-collection--list .tox-collection__group .tox-swatches-menu{border:0;margin:-4px}.tox .tox-swatches__row{display:flex}.tox .tox-swatch{height:30px;transition:transform .15s,box-shadow .15s;width:30px}.tox .tox-swatch:hover,.tox .tox-swatch:focus{box-shadow:0 0 0 1px #7f7f7f4d inset;transform:scale(.8)}.tox .tox-swatch--remove{align-items:center;display:flex;justify-content:center}.tox .tox-swatch--remove svg path{stroke:#e74c3c}.tox .tox-swatches__picker-btn{align-items:center;background-color:transparent;border:0;cursor:pointer;display:flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.tox .tox-swatches__picker-btn svg{fill:#222f3e;height:24px;width:24px}.tox .tox-swatches__picker-btn:hover{background:#cce2fa}.tox div.tox-swatch:not(.tox-swatch--remove) svg{display:none;fill:#222f3e;height:24px;margin:3px;width:24px}.tox div.tox-swatch:not(.tox-swatch--remove) svg path{fill:#fff;paint-order:stroke;stroke:#222f3e;stroke-width:2px}.tox div.tox-swatch:not(.tox-swatch--remove).tox-collection__item--enabled svg{display:block}.tox:not([dir=rtl]) .tox-swatches__picker-btn{margin-left:auto}.tox[dir=rtl] .tox-swatches__picker-btn{margin-right:auto}.tox .tox-comment-thread{background:#fff;position:relative}.tox .tox-comment-thread>*:not(:first-child){margin-top:8px}.tox .tox-comment{background:#fff;border:1px solid #eeeeee;border-radius:6px;box-shadow:0 4px 8px #222f3e1a;padding:8px 8px 16px;position:relative}.tox .tox-comment__header{align-items:center;color:#222f3e;display:flex;justify-content:space-between}.tox .tox-comment__date{color:#222f3e;font-size:12px;line-height:18px}.tox .tox-comment__body{color:#222f3e;font-size:14px;font-style:normal;font-weight:400;line-height:1.3;margin-top:8px;position:relative;text-transform:initial}.tox .tox-comment__body textarea{resize:none;white-space:normal;width:100%}.tox .tox-comment__expander{padding-top:8px}.tox .tox-comment__expander p{color:#222f3eb3;font-size:14px;font-style:normal}.tox .tox-comment__body p{margin:0}.tox .tox-comment__buttonspacing{padding-top:16px;text-align:center}.tox .tox-comment-thread__overlay:after{background:#fff;bottom:0;content:"";display:flex;left:0;opacity:.9;position:absolute;right:0;top:0;z-index:5}.tox .tox-comment__reply{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;margin-top:8px}.tox .tox-comment__reply>*:first-child{margin-bottom:8px;width:100%}.tox .tox-comment__edit{display:flex;flex-wrap:wrap;justify-content:flex-end;margin-top:16px}.tox .tox-comment__gradient:after{background:linear-gradient(#fff0,#fff);bottom:0;content:"";display:block;height:5em;margin-top:-40px;position:absolute;width:100%}.tox .tox-comment__overlay{background:#fff;bottom:0;display:flex;flex-direction:column;flex-grow:1;left:0;opacity:.9;position:absolute;right:0;text-align:center;top:0;z-index:5}.tox .tox-comment__loading-text{align-items:center;color:#222f3e;display:flex;flex-direction:column;position:relative}.tox .tox-comment__loading-text>div{padding-bottom:16px}.tox .tox-comment__overlaytext{bottom:0;flex-direction:column;font-size:14px;left:0;padding:1em;position:absolute;right:0;top:0;z-index:10}.tox .tox-comment__overlaytext p{background-color:#fff;box-shadow:0 0 8px 8px #fff;color:#222f3e;text-align:center}.tox .tox-comment__overlaytext div:nth-of-type(2){font-size:.8em}.tox .tox-comment__busy-spinner{align-items:center;background-color:#fff;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:20}.tox .tox-comment__scroll{display:flex;flex-direction:column;flex-shrink:1;overflow:auto}.tox .tox-conversations{margin:8px}.tox:not([dir=rtl]) .tox-comment__edit{margin-left:8px}.tox:not([dir=rtl]) .tox-comment__buttonspacing>*:last-child,.tox:not([dir=rtl]) .tox-comment__edit>*:last-child,.tox:not([dir=rtl]) .tox-comment__reply>*:last-child{margin-left:8px}.tox[dir=rtl] .tox-comment__edit{margin-right:8px}.tox[dir=rtl] .tox-comment__buttonspacing>*:last-child,.tox[dir=rtl] .tox-comment__edit>*:last-child,.tox[dir=rtl] .tox-comment__reply>*:last-child{margin-right:8px}.tox .tox-user{align-items:center;display:flex}.tox .tox-user__avatar svg{fill:#222f3eb3}.tox .tox-user__avatar img{border-radius:50%;height:36px;object-fit:cover;vertical-align:middle;width:36px}.tox .tox-user__name{color:#222f3e;font-size:14px;font-style:normal;font-weight:700;line-height:18px;text-transform:none}.tox:not([dir=rtl]) .tox-user__avatar svg,.tox:not([dir=rtl]) .tox-user__avatar img{margin-right:8px}.tox:not([dir=rtl]) .tox-user__avatar+.tox-user__name{margin-left:8px}.tox[dir=rtl] .tox-user__avatar svg,.tox[dir=rtl] .tox-user__avatar img{margin-left:8px}.tox[dir=rtl] .tox-user__avatar+.tox-user__name{margin-right:8px}.tox .tox-dialog-wrap{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.tox .tox-dialog-wrap__backdrop{background-color:#ffffffbf;bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.tox .tox-dialog-wrap__backdrop--opaque{background-color:#fff}.tox .tox-dialog{background-color:#fff;border-color:#eee;border-radius:10px;border-style:solid;border-width:0px;box-shadow:0 16px 16px -10px #222f3e26,0 0 40px 1px #222f3e26;display:flex;flex-direction:column;max-height:100%;max-width:480px;overflow:hidden;position:relative;width:95vw;z-index:2}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog{align-self:flex-start;margin:8px auto;max-height:calc(100vh - 16px);width:calc(100vw - 16px)}}.tox .tox-dialog-inline{z-index:1100}.tox .tox-dialog__header{align-items:center;background-color:#fff;border-bottom:none;color:#222f3e;display:flex;font-size:16px;justify-content:space-between;padding:8px 16px 0;position:relative}.tox .tox-dialog__header .tox-button{z-index:1}.tox .tox-dialog__draghandle{cursor:grab;height:100%;left:0;position:absolute;top:0;width:100%}.tox .tox-dialog__draghandle:active{cursor:grabbing}.tox .tox-dialog__dismiss{margin-left:auto}.tox .tox-dialog__title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:20px;font-style:normal;font-weight:400;line-height:1.3;margin:0;text-transform:none}.tox .tox-dialog__body{color:#222f3e;display:flex;flex:1;font-size:16px;font-style:normal;font-weight:400;line-height:1.3;min-width:0;text-align:left;text-transform:none}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog__body{flex-direction:column}}.tox .tox-dialog__body-nav{align-items:flex-start;display:flex;flex-direction:column;flex-shrink:0;padding:16px}@media only screen and (min-width: 768px){.tox .tox-dialog__body-nav{max-width:11em}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog__body-nav{flex-direction:row;-webkit-overflow-scrolling:touch;overflow-x:auto;padding-bottom:0}}.tox .tox-dialog__body-nav-item{border-bottom:2px solid transparent;color:#222f3eb3;display:inline-block;flex-shrink:0;font-size:14px;line-height:1.3;margin-bottom:8px;max-width:13em;text-decoration:none}.tox .tox-dialog__body-nav-item:focus{background-color:#006ce71a}.tox .tox-dialog__body-nav-item--active{border-bottom:2px solid #006ce7;color:#006ce7}.tox .tox-dialog__body-content{box-sizing:border-box;display:flex;flex:1;flex-direction:column;max-height:min(650px,calc(100vh - 110px));overflow:auto;-webkit-overflow-scrolling:touch;padding:16px}.tox .tox-dialog__body-content>*{margin-bottom:0;margin-top:16px}.tox .tox-dialog__body-content>*:first-child{margin-top:0}.tox .tox-dialog__body-content>*:last-child{margin-bottom:0}.tox .tox-dialog__body-content>*:only-child{margin-bottom:0;margin-top:0}.tox .tox-dialog__body-content a{color:#006ce7;cursor:pointer;text-decoration:underline}.tox .tox-dialog__body-content a:hover,.tox .tox-dialog__body-content a:focus{color:#003c81;text-decoration:underline}.tox .tox-dialog__body-content a:focus-visible{border-radius:1px;outline:2px solid #006ce7;outline-offset:2px}.tox .tox-dialog__body-content a:active{color:#00244e;text-decoration:underline}.tox .tox-dialog__body-content svg{fill:#222f3e}.tox .tox-dialog__body-content strong{font-weight:700}.tox .tox-dialog__body-content ul{list-style-type:disc}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dd{padding-inline-start:2.5rem}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dl{margin-bottom:16px}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dl,.tox .tox-dialog__body-content dd,.tox .tox-dialog__body-content dt{display:block;margin-inline-end:0;margin-inline-start:0}.tox .tox-dialog__body-content .tox-form__group h1{color:#222f3e;font-size:20px;font-style:normal;font-weight:700;letter-spacing:normal;margin-bottom:16px;margin-top:2rem;text-transform:none}.tox .tox-dialog__body-content .tox-form__group h2{color:#222f3e;font-size:16px;font-style:normal;font-weight:700;letter-spacing:normal;margin-bottom:16px;margin-top:2rem;text-transform:none}.tox .tox-dialog__body-content .tox-form__group p{margin-bottom:16px}.tox .tox-dialog__body-content .tox-form__group h1:first-child,.tox .tox-dialog__body-content .tox-form__group h2:first-child,.tox .tox-dialog__body-content .tox-form__group p:first-child{margin-top:0}.tox .tox-dialog__body-content .tox-form__group h1:last-child,.tox .tox-dialog__body-content .tox-form__group h2:last-child,.tox .tox-dialog__body-content .tox-form__group p:last-child{margin-bottom:0}.tox .tox-dialog__body-content .tox-form__group h1:only-child,.tox .tox-dialog__body-content .tox-form__group h2:only-child,.tox .tox-dialog__body-content .tox-form__group p:only-child{margin-bottom:0;margin-top:0}.tox .tox-dialog__body-content .tox-form__group .tox-label.tox-label--center{text-align:center}.tox .tox-dialog__body-content .tox-form__group .tox-label.tox-label--end{text-align:end}.tox .tox-dialog--width-lg{height:650px;max-width:1200px}.tox .tox-dialog--fullscreen{height:100%;max-width:100%}.tox .tox-dialog--fullscreen .tox-dialog__body-content{max-height:100%}.tox .tox-dialog--width-md{max-width:800px}.tox .tox-dialog--width-md .tox-dialog__body-content{overflow:auto}.tox .tox-dialog__body-content--centered{text-align:center}.tox .tox-dialog__footer{align-items:center;background-color:#fff;border-top:none;display:flex;justify-content:space-between;padding:8px 16px}.tox .tox-dialog__footer-start,.tox .tox-dialog__footer-end{display:flex}.tox .tox-dialog__busy-spinner{align-items:center;background-color:#ffffffbf;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.tox .tox-dialog__table{border-collapse:collapse;width:100%}.tox .tox-dialog__table thead th{font-weight:700;padding-bottom:8px}.tox .tox-dialog__table thead th:first-child{padding-right:8px}.tox .tox-dialog__table tbody tr{border-bottom:1px solid #626262}.tox .tox-dialog__table tbody tr:last-child{border-bottom:none}.tox .tox-dialog__table td{padding-bottom:8px;padding-top:8px}.tox .tox-dialog__table td:first-child{padding-right:8px}.tox .tox-dialog__iframe{min-height:200px}.tox .tox-dialog__iframe.tox-dialog__iframe--opaque{background:#fff}.tox .tox-navobj-bordered{position:relative}.tox .tox-navobj-bordered:before{border:1px solid #eeeeee;border-radius:6px;content:"";top:0;right:0;bottom:0;left:0;opacity:1;pointer-events:none;position:absolute;z-index:1}.tox .tox-navobj-bordered-focus.tox-navobj-bordered:before{border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-dialog__popups{position:absolute;width:100%;z-index:1100}.tox .tox-dialog__body-iframe{display:flex;flex:1;flex-direction:column}.tox .tox-dialog__body-iframe .tox-navobj{display:flex;flex:1}.tox .tox-dialog__body-iframe .tox-navobj :nth-child(2){flex:1;height:100%}.tox .tox-dialog-dock-fadeout{opacity:0;visibility:hidden}.tox .tox-dialog-dock-fadein{opacity:1;visibility:visible}.tox .tox-dialog-dock-transition{transition:visibility 0s linear .3s,opacity .3s ease}.tox .tox-dialog-dock-transition.tox-dialog-dock-fadein{transition-delay:0s}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox:not([dir=rtl]) .tox-dialog__body-nav{margin-right:0}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox:not([dir=rtl]) .tox-dialog__body-nav-item:not(:first-child){margin-left:8px}}.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-start>*,.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-end>*{margin-left:8px}.tox[dir=rtl] .tox-dialog__body{text-align:right}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox[dir=rtl] .tox-dialog__body-nav{margin-left:0}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox[dir=rtl] .tox-dialog__body-nav-item:not(:first-child){margin-right:8px}}.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-start>*,.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-end>*{margin-right:8px}body.tox-dialog__disable-scroll{overflow:hidden}.tox .tox-dropzone-container{display:flex;flex:1}.tox .tox-dropzone{align-items:center;background:#fff;border:2px dashed #eeeeee;box-sizing:border-box;display:flex;flex-direction:column;flex-grow:1;justify-content:center;min-height:100px;padding:10px}.tox .tox-dropzone p{color:#222f3eb3;margin:0 0 16px}.tox .tox-edit-area{display:flex;flex:1;overflow:hidden;position:relative}.tox .tox-edit-area:before{border:2px solid #2D6ADF;border-radius:4px;content:"";top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .15s;z-index:1}.tox .tox-edit-area__iframe{background-color:#fff;border:0;box-sizing:border-box;flex:1;height:100%;position:absolute;width:100%}.tox.tox-edit-focus .tox-edit-area:before{opacity:1}.tox.tox-inline-edit-area{border:1px dotted #eeeeee}.tox .tox-editor-container{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.tox .tox-editor-header{display:grid;grid-template-columns:1fr min-content;z-index:2}.tox:not(.tox-tinymce-inline) .tox-editor-header{background-color:#fff;border-bottom:none;box-shadow:0 2px 2px -2px #222f3e1a,0 8px 8px -4px #222f3e12;padding:4px 0}.tox:not(.tox-tinymce-inline) .tox-editor-header:not(.tox-editor-dock-transition){transition:box-shadow .5s}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-bottom .tox-editor-header{border-top:1px solid #e3e3e3;box-shadow:none}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-sticky-on .tox-editor-header{background-color:#fff;box-shadow:0 2px 2px -2px #222f3e33,0 8px 8px -4px #222f3e26;padding:4px 0}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-sticky-on.tox-tinymce--toolbar-bottom .tox-editor-header{box-shadow:0 2px 2px -2px #222f3e33,0 8px 8px -4px #222f3e26}.tox.tox:not(.tox-tinymce-inline) .tox-editor-header.tox-editor-header--empty{background:none;border:none;box-shadow:none;padding:0}.tox-editor-dock-fadeout{opacity:0;visibility:hidden}.tox-editor-dock-fadein{opacity:1;visibility:visible}.tox-editor-dock-transition{transition:visibility 0s linear .25s,opacity .25s ease}.tox-editor-dock-transition.tox-editor-dock-fadein{transition-delay:0s}.tox .tox-control-wrap{flex:1;position:relative}.tox .tox-control-wrap:not(.tox-control-wrap--status-invalid) .tox-control-wrap__status-icon-invalid,.tox .tox-control-wrap:not(.tox-control-wrap--status-unknown) .tox-control-wrap__status-icon-unknown,.tox .tox-control-wrap:not(.tox-control-wrap--status-valid) .tox-control-wrap__status-icon-valid{display:none}.tox .tox-control-wrap svg{display:block}.tox .tox-control-wrap__status-icon-wrap{position:absolute;top:50%;transform:translateY(-50%)}.tox .tox-control-wrap__status-icon-invalid svg{fill:#c00}.tox .tox-control-wrap__status-icon-unknown svg{fill:orange}.tox .tox-control-wrap__status-icon-valid svg{fill:green}.tox:not([dir=rtl]) .tox-control-wrap--status-invalid .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-unknown .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-valid .tox-textfield{padding-right:32px}.tox:not([dir=rtl]) .tox-control-wrap__status-icon-wrap{right:4px}.tox[dir=rtl] .tox-control-wrap--status-invalid .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-unknown .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-valid .tox-textfield{padding-left:32px}.tox[dir=rtl] .tox-control-wrap__status-icon-wrap{left:4px}.tox .tox-autocompleter{max-width:25em}.tox .tox-autocompleter .tox-menu{box-sizing:border-box;max-width:25em}.tox .tox-autocompleter .tox-autocompleter-highlight{font-weight:700}.tox .tox-color-input{display:flex;position:relative;z-index:1}.tox .tox-color-input .tox-textfield{z-index:-1}.tox .tox-color-input span{border-color:#222f3e33;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;height:24px;position:absolute;top:6px;width:24px}.tox .tox-color-input span:hover:not([aria-disabled=true]),.tox .tox-color-input span:focus:not([aria-disabled=true]){border-color:#006ce7;cursor:pointer}.tox .tox-color-input span:before{background-image:linear-gradient(45deg,rgba(0,0,0,.25) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.25) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.25) 75%),linear-gradient(-45deg,transparent 75%,rgba(0,0,0,.25) 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;border:1px solid #fff;border-radius:6px;box-sizing:border-box;content:"";height:24px;left:-1px;position:absolute;top:-1px;width:24px;z-index:-1}.tox .tox-color-input span[aria-disabled=true]{cursor:not-allowed}.tox:not([dir=rtl]) .tox-color-input .tox-textfield{padding-left:36px}.tox:not([dir=rtl]) .tox-color-input span{left:6px}.tox[dir=rtl] .tox-color-input .tox-textfield{padding-right:36px}.tox[dir=rtl] .tox-color-input span{right:6px}.tox .tox-label,.tox .tox-toolbar-label{color:#222f3eb3;display:block;font-size:14px;font-style:normal;font-weight:400;line-height:1.3;padding:0 8px 0 0;text-transform:none;white-space:nowrap}.tox .tox-toolbar-label{padding:0 8px}.tox[dir=rtl] .tox-label{padding:0 0 0 8px}.tox .tox-form{display:flex;flex:1;flex-direction:column}.tox .tox-form__group{box-sizing:border-box;margin-bottom:4px}.tox .tox-form-group--maximize{flex:1}.tox .tox-form__group--error{color:#c00}.tox .tox-form__group--collection{display:flex}.tox .tox-form__grid{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.tox .tox-form__grid--2col>.tox-form__group{width:calc(50% - 4px)}.tox .tox-form__grid--3col>.tox-form__group{width:calc(100% / 3 - (8px / 2))}.tox .tox-form__grid--4col>.tox-form__group{width:calc(25% - 4px)}.tox .tox-form__controls-h-stack,.tox .tox-form__group--inline{align-items:center;display:flex}.tox .tox-form__group--stretched{display:flex;flex:1;flex-direction:column}.tox .tox-form__group--stretched .tox-textarea{flex:1}.tox .tox-form__group--stretched .tox-navobj{display:flex;flex:1}.tox .tox-form__group--stretched .tox-navobj :nth-child(2){flex:1;height:100%}.tox:not([dir=rtl]) .tox-form__controls-h-stack>*:not(:first-child){margin-left:4px}.tox[dir=rtl] .tox-form__controls-h-stack>*:not(:first-child){margin-right:4px}.tox .tox-lock.tox-locked .tox-lock-icon__unlock,.tox .tox-lock:not(.tox-locked) .tox-lock-icon__lock{display:none}.tox .tox-textfield,.tox .tox-toolbar-textfield,.tox .tox-listboxfield .tox-listbox--select,.tox .tox-textarea,.tox .tox-textarea-wrap .tox-textarea:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#222f3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:24px;margin:0;min-height:34px;outline:none;padding:5px 5.5px;resize:none;width:100%}.tox .tox-textfield[disabled],.tox .tox-textarea[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-textfield:focus,.tox .tox-listboxfield .tox-listbox--select:focus,.tox .tox-textarea-wrap:focus-within,.tox .tox-textarea:focus,.tox .tox-custom-editor:focus-within{background-color:#fff;border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-toolbar-textfield{border-width:0;margin-bottom:3px;margin-top:2px;max-width:250px}.tox .tox-naked-btn{background-color:transparent;border:0;border-color:transparent;box-shadow:unset;color:#006ce7;cursor:pointer;display:block;margin:0;padding:0}.tox .tox-naked-btn svg{display:block;fill:#222f3e}.tox:not([dir=rtl]) .tox-toolbar-textfield+*{margin-left:4px}.tox[dir=rtl] .tox-toolbar-textfield+*{margin-right:4px}.tox .tox-listboxfield{cursor:pointer;position:relative}.tox .tox-listboxfield .tox-listbox--select[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-listbox__select-label{cursor:default;flex:1;margin:0 4px}.tox .tox-listbox__select-chevron{align-items:center;display:flex;justify-content:center;width:16px}.tox .tox-listbox__select-chevron svg{fill:#222f3e}.tox .tox-listboxfield .tox-listbox--select{align-items:center;display:flex}.tox:not([dir=rtl]) .tox-listboxfield svg{right:8px}.tox[dir=rtl] .tox-listboxfield svg{left:8px}.tox .tox-selectfield{cursor:pointer;position:relative}.tox .tox-selectfield select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#222f3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:24px;margin:0;min-height:34px;outline:none;padding:5px 5.5px;resize:none;width:100%}.tox .tox-selectfield select[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-selectfield select::-ms-expand{display:none}.tox .tox-selectfield select:focus{background-color:#fff;border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-selectfield svg{pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.tox:not([dir=rtl]) .tox-selectfield select[size="0"],.tox:not([dir=rtl]) .tox-selectfield select[size="1"]{padding-right:24px}.tox:not([dir=rtl]) .tox-selectfield svg{right:8px}.tox[dir=rtl] .tox-selectfield select[size="0"],.tox[dir=rtl] .tox-selectfield select[size="1"]{padding-left:24px}.tox[dir=rtl] .tox-selectfield svg{left:8px}.tox .tox-textarea-wrap{border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;display:flex;flex:1;overflow:hidden}.tox .tox-textarea{-webkit-appearance:textarea;-moz-appearance:textarea;appearance:textarea;white-space:pre-wrap}.tox .tox-textarea-wrap .tox-textarea{border:none}.tox .tox-textarea-wrap .tox-textarea:focus{border:none}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox.tox-tinymce.tox-fullscreen,.tox-shadowhost.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}.tox .tox-help__more-link{list-style:none;margin-top:1em}.tox .tox-imagepreview{background-color:#666;height:380px;overflow:hidden;position:relative;width:100%}.tox .tox-imagepreview.tox-imagepreview__loaded{overflow:auto}.tox .tox-imagepreview__container{display:flex;left:100vw;position:absolute;top:100vw}.tox .tox-imagepreview__image{background:url(data:image/gif;base64,R0lGODdhDAAMAIABAMzMzP///ywAAAAADAAMAAACFoQfqYeabNyDMkBQb81Uat85nxguUAEAOw==)}.tox .tox-image-tools .tox-spacer{flex:1}.tox .tox-image-tools .tox-bar{align-items:center;display:flex;height:60px;justify-content:center}.tox .tox-image-tools .tox-imagepreview,.tox .tox-image-tools .tox-imagepreview+.tox-bar{margin-top:8px}.tox .tox-image-tools .tox-croprect-block{background:#000;filter:alpha(opacity=50);opacity:.5;position:absolute;zoom:1}.tox .tox-image-tools .tox-croprect-handle{border:2px solid white;height:20px;left:0;position:absolute;top:0;width:20px}.tox .tox-image-tools .tox-croprect-handle-move{border:0;cursor:move;position:absolute}.tox .tox-image-tools .tox-croprect-handle-nw{border-width:2px 0 0 2px;cursor:nw-resize;left:100px;margin:-2px 0 0 -2px;top:100px}.tox .tox-image-tools .tox-croprect-handle-ne{border-width:2px 2px 0 0;cursor:ne-resize;left:200px;margin:-2px 0 0 -20px;top:100px}.tox .tox-image-tools .tox-croprect-handle-sw{border-width:0 0 2px 2px;cursor:sw-resize;left:100px;margin:-20px 2px 0 -2px;top:200px}.tox .tox-image-tools .tox-croprect-handle-se{border-width:0 2px 2px 0;cursor:se-resize;left:200px;margin:-20px 0 0 -20px;top:200px}.tox .tox-insert-table-picker{display:flex;flex-wrap:wrap;width:170px}.tox .tox-insert-table-picker>div{border-color:#eee;border-style:solid;border-width:0 1px 1px 0;box-sizing:border-box;height:17px;width:17px}.tox .tox-collection--list .tox-collection__group .tox-insert-table-picker{margin:-4px}.tox .tox-insert-table-picker .tox-insert-table-picker__selected{background-color:#006ce780;border-color:#006ce780}.tox .tox-insert-table-picker__label{color:#222f3eb3;display:block;font-size:14px;padding:4px;text-align:center;width:100%}.tox:not([dir=rtl]) .tox-insert-table-picker>div:nth-child(10n){border-right:0}.tox[dir=rtl] .tox-insert-table-picker>div:nth-child(10n+1){border-right:0}.tox .tox-menu{background-color:#fff;border:1px solid transparent;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;display:inline-block;overflow:hidden;vertical-align:top;z-index:1150}.tox .tox-menu.tox-collection.tox-collection--list{padding:0 4px}.tox .tox-menu.tox-collection.tox-collection--toolbar,.tox .tox-menu.tox-collection.tox-collection--grid{padding:8px}@media only screen and (min-width: 768px){.tox .tox-menu .tox-collection__item-label{overflow-wrap:break-word;word-break:normal}.tox .tox-dialog__popups .tox-menu .tox-collection__item-label{word-break:break-all}}.tox .tox-menu__label h1,.tox .tox-menu__label h2,.tox .tox-menu__label h3,.tox .tox-menu__label h4,.tox .tox-menu__label h5,.tox .tox-menu__label h6,.tox .tox-menu__label p,.tox .tox-menu__label blockquote,.tox .tox-menu__label code{margin:0}.tox .tox-menubar{background:repeating-linear-gradient(transparent 0px 1px,transparent 1px 39px) center top 39px / 100% calc(100% - 39px) no-repeat;background-color:#fff;display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:wrap;grid-column:1 / -1;grid-row:1;padding:0 11px 0 12px}.tox .tox-promotion+.tox-menubar{grid-column:1}.tox .tox-promotion{background:repeating-linear-gradient(transparent 0px 1px,transparent 1px 39px) center top 39px / 100% calc(100% - 39px) no-repeat;background-color:#fff;grid-column:2;grid-row:1;padding-inline-end:8px;padding-inline-start:4px;padding-top:5px}.tox .tox-promotion-link{align-items:unsafe center;background-color:#e8f1f8;border-radius:5px;color:#086be6;cursor:pointer;display:flex;font-size:14px;height:26.6px;padding:4px 8px;white-space:nowrap}.tox .tox-promotion-link:hover{background-color:#b4d7ff}.tox .tox-promotion-link:focus{background-color:#d9edf7}.tox .tox-mbtn{align-items:center;background:transparent;border:0;border-radius:3px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;justify-content:center;margin:5px 1px 6px 0;outline:none;overflow:hidden;padding:0 4px;text-transform:none;width:auto}.tox .tox-mbtn[disabled]{background-color:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-mbtn:focus:not(:disabled){background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn--active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn:hover:not(:disabled):not(.tox-mbtn--active){background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn__select-label{cursor:default;font-weight:400;margin:0 4px}.tox .tox-mbtn[disabled] .tox-mbtn__select-label{cursor:not-allowed}.tox .tox-mbtn__select-chevron{align-items:center;display:flex;justify-content:center;width:16px;display:none}.tox .tox-notification{border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;display:grid;font-size:14px;font-weight:400;grid-template-columns:minmax(40px,1fr) auto minmax(40px,1fr);margin-top:4px;opacity:0;padding:4px;transition:transform .1s ease-in,opacity .15s ease-in}.tox .tox-notification p{font-size:14px;font-weight:400}.tox .tox-notification a{cursor:pointer;text-decoration:underline}.tox .tox-notification--in{opacity:1}.tox .tox-notification--success{background-color:#e4eeda;border-color:#d7e6c8;color:#222f3e}.tox .tox-notification--success p{color:#222f3e}.tox .tox-notification--success a{color:#517342}.tox .tox-notification--success svg{fill:#222f3e}.tox .tox-notification--error{background-color:#f5cccc;border-color:#f0b3b3;color:#222f3e}.tox .tox-notification--error p{color:#222f3e}.tox .tox-notification--error a{color:#77181f}.tox .tox-notification--error svg{fill:#222f3e}.tox .tox-notification--warn,.tox .tox-notification--warning{background-color:#fff5cc;border-color:#fff0b3;color:#222f3e}.tox .tox-notification--warn p,.tox .tox-notification--warning p{color:#222f3e}.tox .tox-notification--warn a,.tox .tox-notification--warning a{color:#7a6e25}.tox .tox-notification--warn svg,.tox .tox-notification--warning svg{fill:#222f3e}.tox .tox-notification--info{background-color:#d6e7fb;border-color:#c1dbf9;color:#222f3e}.tox .tox-notification--info p{color:#222f3e}.tox .tox-notification--info a{color:#2a64a6}.tox .tox-notification--info svg{fill:#222f3e}.tox .tox-notification__body{align-self:center;color:#222f3e;font-size:14px;grid-column-end:3;grid-column-start:2;grid-row-end:2;grid-row-start:1;text-align:center;white-space:normal;word-break:break-all;word-break:break-word}.tox .tox-notification__body>*{margin:0}.tox .tox-notification__body>*+*{margin-top:1rem}.tox .tox-notification__icon{align-self:center;grid-column-end:2;grid-column-start:1;grid-row-end:2;grid-row-start:1;justify-self:end}.tox .tox-notification__icon svg{display:block}.tox .tox-notification__dismiss{align-self:start;grid-column-end:4;grid-column-start:3;grid-row-end:2;grid-row-start:1;justify-self:end}.tox .tox-notification .tox-progress-bar{grid-column-end:4;grid-column-start:1;grid-row-end:3;grid-row-start:2;justify-self:center}.tox .tox-pop{display:inline-block;position:relative}.tox .tox-pop--resizing{transition:width .1s ease}.tox .tox-pop--resizing .tox-toolbar,.tox .tox-pop--resizing .tox-toolbar__group{flex-wrap:nowrap}.tox .tox-pop--transition{transition:.15s ease;transition-property:left,right,top,bottom}.tox .tox-pop--transition:before,.tox .tox-pop--transition:after{transition:all .15s,visibility 0s,opacity 75ms ease 75ms}.tox .tox-pop__dialog{background-color:#fff;border:1px solid #eeeeee;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;min-width:0;overflow:hidden}.tox .tox-pop__dialog>*:not(.tox-toolbar){margin:4px 4px 4px 8px}.tox .tox-pop__dialog .tox-toolbar{background-color:transparent;margin-bottom:-1px}.tox .tox-pop:before,.tox .tox-pop:after{border-style:solid;content:"";display:block;height:0;opacity:1;position:absolute;width:0}.tox .tox-pop.tox-pop--inset:before,.tox .tox-pop.tox-pop--inset:after{opacity:0;transition:all 0s .15s,visibility 0s,opacity 75ms ease}.tox .tox-pop.tox-pop--bottom:before,.tox .tox-pop.tox-pop--bottom:after{left:50%;top:100%}.tox .tox-pop.tox-pop--bottom:after{border-color:#fff transparent transparent transparent;border-width:8px;margin-left:-8px;margin-top:-1px}.tox .tox-pop.tox-pop--bottom:before{border-color:#eeeeee transparent transparent transparent;border-width:9px;margin-left:-9px}.tox .tox-pop.tox-pop--top:before,.tox .tox-pop.tox-pop--top:after{left:50%;top:0;transform:translateY(-100%)}.tox .tox-pop.tox-pop--top:after{border-color:transparent transparent #fff transparent;border-width:8px;margin-left:-8px;margin-top:1px}.tox .tox-pop.tox-pop--top:before{border-color:transparent transparent #eeeeee transparent;border-width:9px;margin-left:-9px}.tox .tox-pop.tox-pop--left:before,.tox .tox-pop.tox-pop--left:after{left:0;top:calc(50% - 1px);transform:translateY(-50%)}.tox .tox-pop.tox-pop--left:after{border-color:transparent #fff transparent transparent;border-width:8px;margin-left:-15px}.tox .tox-pop.tox-pop--left:before{border-color:transparent #eeeeee transparent transparent;border-width:10px;margin-left:-19px}.tox .tox-pop.tox-pop--right:before,.tox .tox-pop.tox-pop--right:after{left:100%;top:calc(50% + 1px);transform:translateY(-50%)}.tox .tox-pop.tox-pop--right:after{border-color:transparent transparent transparent #fff;border-width:8px;margin-left:-1px}.tox .tox-pop.tox-pop--right:before{border-color:transparent transparent transparent #eeeeee;border-width:10px;margin-left:-1px}.tox .tox-pop.tox-pop--align-left:before,.tox .tox-pop.tox-pop--align-left:after{left:20px}.tox .tox-pop.tox-pop--align-right:before,.tox .tox-pop.tox-pop--align-right:after{left:calc(100% - 20px)}.tox .tox-sidebar-wrap{display:flex;flex-direction:row;flex-grow:1;min-height:0}.tox .tox-sidebar{background-color:#fff;display:flex;flex-direction:row;justify-content:flex-end}.tox .tox-sidebar__slider{display:flex;overflow:hidden}.tox .tox-sidebar__pane-container,.tox .tox-sidebar__pane{display:flex}.tox .tox-sidebar--sliding-closed{opacity:0}.tox .tox-sidebar--sliding-open{opacity:1}.tox .tox-sidebar--sliding-growing,.tox .tox-sidebar--sliding-shrinking{transition:width .5s ease,opacity .5s ease}.tox .tox-selector{background-color:#4099ff;border-color:#4099ff;border-style:solid;border-width:1px;box-sizing:border-box;display:inline-block;height:10px;position:absolute;width:10px}.tox.tox-platform-touch .tox-selector{height:12px;width:12px}.tox .tox-slider{align-items:center;display:flex;flex:1;height:24px;justify-content:center;position:relative}.tox .tox-slider__rail{background-color:transparent;border:1px solid #eeeeee;border-radius:6px;height:10px;min-width:120px;width:100%}.tox .tox-slider__handle{background-color:#006ce7;border:2px solid #0054b4;border-radius:6px;box-shadow:none;height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%);width:14px}.tox .tox-form__controls-h-stack>.tox-slider:not(:first-of-type){margin-inline-start:8px}.tox .tox-form__controls-h-stack>.tox-form__group+.tox-slider{margin-inline-start:32px}.tox .tox-form__controls-h-stack>.tox-slider+.tox-form__group{margin-inline-start:32px}.tox .tox-source-code{overflow:auto}.tox .tox-spinner{display:flex}.tox .tox-spinner>div{animation:tam-bouncing-dots 1.5s ease-in-out 0s infinite both;background-color:#222f3eb3;border-radius:100%;height:8px;width:8px}.tox .tox-spinner>div:nth-child(1){animation-delay:-.32s}.tox .tox-spinner>div:nth-child(2){animation-delay:-.16s}@keyframes tam-bouncing-dots{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.tox:not([dir=rtl]) .tox-spinner>div:not(:first-child){margin-left:4px}.tox[dir=rtl] .tox-spinner>div:not(:first-child){margin-right:4px}.tox .tox-statusbar{align-items:center;background-color:#fff;border-top:1px solid #e3e3e3;color:#222f3eb3;display:flex;flex:0 0 auto;font-size:14px;font-weight:400;height:25px;overflow:hidden;padding:0 8px;position:relative;text-transform:none}.tox .tox-statusbar__path{display:flex;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-statusbar__right-container{display:flex;justify-content:flex-end;white-space:nowrap}.tox .tox-statusbar__help-text{text-align:center}.tox .tox-statusbar__text-container{display:flex;flex:1 1 auto;justify-content:space-between;overflow:hidden}@media only screen and (min-width: 768px){.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__help-text,.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__right-container,.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__path{flex:0 0 calc(100% / 3)}}.tox .tox-statusbar__text-container.tox-statusbar__text-container--flex-end{justify-content:flex-end}.tox .tox-statusbar__text-container.tox-statusbar__text-container--flex-start{justify-content:flex-start}.tox .tox-statusbar__text-container.tox-statusbar__text-container--space-around{justify-content:space-around}.tox .tox-statusbar__path>*{display:inline;white-space:nowrap}.tox .tox-statusbar__wordcount{flex:0 0 auto;margin-left:1ch}@media only screen and (max-width: 767px){.tox .tox-statusbar__text-container .tox-statusbar__help-text{display:none}.tox .tox-statusbar__text-container .tox-statusbar__help-text:only-child{display:block}}.tox .tox-statusbar a,.tox .tox-statusbar__path-item,.tox .tox-statusbar__wordcount{color:#222f3eb3;text-decoration:none}.tox .tox-statusbar a:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__path-item:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__wordcount:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar a:focus:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__path-item:focus:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__wordcount:focus:not(:disabled):not([aria-disabled=true]){color:#222f3e;cursor:pointer}.tox .tox-statusbar__branding svg{fill:#222f3ecc;height:1.14em;vertical-align:-.28em;width:3.6em}.tox .tox-statusbar__branding a:hover:not(:disabled):not([aria-disabled=true]) svg,.tox .tox-statusbar__branding a:focus:not(:disabled):not([aria-disabled=true]) svg{fill:#222f3e}.tox .tox-statusbar__resize-handle{align-items:flex-end;align-self:stretch;cursor:nwse-resize;display:flex;flex:0 0 auto;justify-content:flex-end;margin-left:auto;margin-right:-8px;padding-bottom:3px;padding-left:1ch;padding-right:3px}.tox .tox-statusbar__resize-handle svg{display:block;fill:#222f3e80}.tox .tox-statusbar__resize-handle:focus svg{background-color:#dee0e2;border-radius:1px 1px 5px;box-shadow:0 0 0 2px #dee0e2}.tox:not([dir=rtl]) .tox-statusbar__path>*{margin-right:4px}.tox:not([dir=rtl]) .tox-statusbar__branding{margin-left:2ch}.tox[dir=rtl] .tox-statusbar{flex-direction:row-reverse}.tox[dir=rtl] .tox-statusbar__path>*{margin-left:4px}.tox .tox-throbber{z-index:1299}.tox .tox-throbber__busy-spinner{align-items:center;background-color:#fff9;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.tox .tox-tbtn{align-items:center;background:transparent;border:0;border-radius:3px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;justify-content:center;margin:6px 1px 5px 0;outline:none;overflow:hidden;padding:0;text-transform:none;width:34px}.tox .tox-tbtn svg{display:block;fill:#222f3e}.tox .tox-tbtn.tox-tbtn-more{padding-left:5px;padding-right:5px;width:inherit}.tox .tox-tbtn:focus{background:#cce2fa;border:0;box-shadow:none}.tox .tox-tbtn:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn:hover svg{fill:#222f3e}.tox .tox-tbtn:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn:active svg{fill:#222f3e}.tox .tox-tbtn--disabled .tox-tbtn--enabled svg{fill:#222f3e80}.tox .tox-tbtn--disabled,.tox .tox-tbtn--disabled:hover,.tox .tox-tbtn:disabled,.tox .tox-tbtn:disabled:hover{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-tbtn--disabled svg,.tox .tox-tbtn--disabled:hover svg,.tox .tox-tbtn:disabled svg,.tox .tox-tbtn:disabled:hover svg{fill:#222f3e80}.tox .tox-tbtn--enabled,.tox .tox-tbtn--enabled:hover{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn--enabled>*,.tox .tox-tbtn--enabled:hover>*{transform:none}.tox .tox-tbtn--enabled svg,.tox .tox-tbtn--enabled:hover svg{fill:#222f3e}.tox .tox-tbtn--enabled.tox-tbtn--disabled svg,.tox .tox-tbtn--enabled:hover.tox-tbtn--disabled svg{fill:#222f3e80}.tox .tox-tbtn:focus:not(.tox-tbtn--disabled){color:#222f3e}.tox .tox-tbtn:focus:not(.tox-tbtn--disabled) svg{fill:#222f3e}.tox .tox-tbtn:active>*{transform:none}.tox .tox-tbtn--md{height:42px;width:51px}.tox .tox-tbtn--lg{flex-direction:column;height:56px;width:68px}.tox .tox-tbtn--return{align-self:stretch;height:unset;width:16px}.tox .tox-tbtn--labeled{padding:0 4px;width:unset}.tox .tox-tbtn__vlabel{display:block;font-size:10px;font-weight:400;letter-spacing:-.025em;margin-bottom:4px;white-space:nowrap}.tox .tox-number-input{border-radius:3px;display:flex;margin:6px 1px 5px 0;padding:0 4px;width:auto}.tox .tox-number-input .tox-input-wrapper{background:#f7f7f7;display:flex;pointer-events:none;text-align:center}.tox .tox-number-input .tox-input-wrapper:focus{background:#cce2fa}.tox .tox-number-input input{border-radius:3px;color:#222f3e;font-size:14px;margin:2px 0;pointer-events:all;width:60px}.tox .tox-number-input input:hover{background:#cce2fa;color:#222f3e}.tox .tox-number-input input:focus{background:#fff;color:#222f3e}.tox .tox-number-input input:disabled{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-number-input button{background:#f7f7f7;color:#222f3e;height:28px;text-align:center;width:24px}.tox .tox-number-input button svg{display:block;fill:#222f3e;margin:0 auto;transform:scale(.67)}.tox .tox-number-input button:focus{background:#cce2fa}.tox .tox-number-input button:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-number-input button:hover svg{fill:#222f3e}.tox .tox-number-input button:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-number-input button:active svg{fill:#222f3e}.tox .tox-number-input button:disabled{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-number-input button:disabled svg{fill:#222f3e80}.tox .tox-number-input button.minus{border-radius:3px 0 0 3px}.tox .tox-number-input button.plus{border-radius:0 3px 3px 0}.tox .tox-number-input:focus:not(:active)>button,.tox .tox-number-input:focus:not(:active)>.tox-input-wrapper{background:#cce2fa}.tox .tox-tbtn--select{margin:6px 1px 5px 0;padding:0 4px;width:auto}.tox .tox-tbtn__select-label{cursor:default;font-weight:400;height:initial;margin:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-tbtn__select-chevron{align-items:center;display:flex;justify-content:center;width:16px}.tox .tox-tbtn__select-chevron svg{fill:#222f3e80}.tox .tox-tbtn--bespoke{background:#f7f7f7}.tox .tox-tbtn--bespoke+.tox-tbtn--bespoke{margin-inline-start:4px}.tox .tox-tbtn--bespoke .tox-tbtn__select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:7em}.tox .tox-tbtn--disabled .tox-tbtn__select-label,.tox .tox-tbtn--select:disabled .tox-tbtn__select-label{cursor:not-allowed}.tox .tox-split-button{border:0;border-radius:3px;box-sizing:border-box;display:flex;margin:6px 1px 5px 0;overflow:hidden}.tox .tox-split-button:hover{box-shadow:0 0 0 1px #cce2fa inset}.tox .tox-split-button:focus{background:#cce2fa;box-shadow:none;color:#222f3e}.tox .tox-split-button>*{border-radius:0}.tox .tox-split-button__chevron{width:16px}.tox .tox-split-button__chevron svg{fill:#222f3e80}.tox .tox-split-button .tox-tbtn{margin:0}.tox .tox-split-button.tox-tbtn--disabled:hover,.tox .tox-split-button.tox-tbtn--disabled:focus,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:hover,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:focus{background:transparent;box-shadow:none;color:#222f3e80}.tox.tox-platform-touch .tox-split-button .tox-tbtn--select{padding:0}.tox.tox-platform-touch .tox-split-button .tox-tbtn:not(.tox-tbtn--select):first-child{width:30px}.tox.tox-platform-touch .tox-split-button__chevron{width:20px}.tox .tox-split-button.tox-tbtn--disabled svg #tox-icon-text-color__color,.tox .tox-split-button.tox-tbtn--disabled svg #tox-icon-highlight-bg-color__color{opacity:.6}.tox .tox-toolbar-overlord{background-color:#fff}.tox .tox-toolbar,.tox .tox-toolbar__primary,.tox .tox-toolbar__overflow{background-attachment:local;background-color:#fff;background-image:repeating-linear-gradient(#e3e3e3 0px 1px,transparent 1px 39px);background-position:center top 40px;background-repeat:no-repeat;background-size:calc(100% - 22px) calc(100% - 41px);display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:wrap;padding:0;transform:perspective(1px)}.tox .tox-toolbar-overlord>.tox-toolbar,.tox .tox-toolbar-overlord>.tox-toolbar__primary,.tox .tox-toolbar-overlord>.tox-toolbar__overflow{background-position:center top 0px;background-size:calc(100% - 22px) calc(100% + -0px)}.tox .tox-toolbar__overflow.tox-toolbar__overflow--closed{height:0;opacity:0;padding-bottom:0;padding-top:0;visibility:hidden}.tox .tox-toolbar__overflow--growing{transition:height .3s ease,opacity .2s linear .1s}.tox .tox-toolbar__overflow--shrinking{transition:opacity .3s ease,height .2s linear .1s,visibility 0s linear .3s}.tox .tox-toolbar-overlord,.tox .tox-anchorbar{grid-column:1 / -1}.tox .tox-menubar+.tox-toolbar,.tox .tox-menubar+.tox-toolbar-overlord{border-top:1px solid transparent;margin-top:-1px;padding-bottom:1px;padding-top:1px}.tox .tox-toolbar--scrolling{flex-wrap:nowrap;overflow-x:auto}.tox .tox-pop .tox-toolbar{border-width:0}.tox .tox-toolbar--no-divider{background-image:none}.tox .tox-toolbar-overlord .tox-toolbar:not(.tox-toolbar--scrolling):first-child,.tox .tox-toolbar-overlord .tox-toolbar__primary{background-position:center top 39px}.tox .tox-editor-header>.tox-toolbar--scrolling,.tox .tox-toolbar-overlord .tox-toolbar--scrolling:first-child{background-image:none}.tox.tox-tinymce-aux .tox-toolbar__overflow{background-color:#fff;background-position:center top 43px;background-size:calc(100% - 16px) calc(100% - 51px);border:none;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;overscroll-behavior:none;padding:4px 0}.tox-pop .tox-pop__dialog .tox-toolbar{background-position:center top 43px;background-size:calc(100% - 22px) calc(100% - 51px);padding:4px 0}.tox .tox-toolbar__group{align-items:center;display:flex;flex-wrap:wrap;margin:0;padding:0 11px 0 12px}.tox .tox-toolbar__group--pull-right{margin-left:auto}.tox .tox-toolbar--scrolling .tox-toolbar__group{flex-shrink:0;flex-wrap:nowrap}.tox:not([dir=rtl]) .tox-toolbar__group:not(:last-of-type){border-right:1px solid transparent}.tox[dir=rtl] .tox-toolbar__group:not(:last-of-type){border-left:1px solid transparent}.tox .tox-tooltip{display:inline-block;padding:8px;position:relative}.tox .tox-tooltip__body{background-color:#222f3e;border-radius:6px;box-shadow:0 2px 4px #222f3e4d;color:#ffffffbf;font-size:14px;font-style:normal;font-weight:400;padding:4px 8px;text-transform:none}.tox .tox-tooltip__arrow{position:absolute}.tox .tox-tooltip--down .tox-tooltip__arrow{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #222f3e;bottom:0;left:50%;position:absolute;transform:translate(-50%)}.tox .tox-tooltip--up .tox-tooltip__arrow{border-bottom:8px solid #222f3e;border-left:8px solid transparent;border-right:8px solid transparent;left:50%;position:absolute;top:0;transform:translate(-50%)}.tox .tox-tooltip--right .tox-tooltip__arrow{border-bottom:8px solid transparent;border-left:8px solid #222f3e;border-top:8px solid transparent;position:absolute;right:0;top:50%;transform:translateY(-50%)}.tox .tox-tooltip--left .tox-tooltip__arrow{border-bottom:8px solid transparent;border-right:8px solid #222f3e;border-top:8px solid transparent;left:0;position:absolute;top:50%;transform:translateY(-50%)}.tox .tox-tree{display:flex;flex-direction:column}.tox .tox-tree .tox-trbtn{align-items:center;background:transparent;border:0;border-radius:4px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;margin-bottom:4px;margin-top:4px;outline:none;overflow:hidden;padding:0 0 0 8px;text-transform:none}.tox .tox-tree .tox-trbtn .tox-tree__label{cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-tree .tox-trbtn svg{display:block;fill:#222f3e}.tox .tox-tree .tox-trbtn:focus{background:#cce2fa;border:0;box-shadow:none}.tox .tox-tree .tox-trbtn:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn:hover svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn:active svg{fill:#222f3e}.tox .tox-tree .tox-trbtn--disabled,.tox .tox-tree .tox-trbtn--disabled:hover,.tox .tox-tree .tox-trbtn:disabled,.tox .tox-tree .tox-trbtn:disabled:hover{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-tree .tox-trbtn--disabled svg,.tox .tox-tree .tox-trbtn--disabled:hover svg,.tox .tox-tree .tox-trbtn:disabled svg,.tox .tox-tree .tox-trbtn:disabled:hover svg{fill:#222f3e80}.tox .tox-tree .tox-trbtn--enabled,.tox .tox-tree .tox-trbtn--enabled:hover{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn--enabled>*,.tox .tox-tree .tox-trbtn--enabled:hover>*{transform:none}.tox .tox-tree .tox-trbtn--enabled svg,.tox .tox-tree .tox-trbtn--enabled:hover svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:focus:not(.tox-trbtn--disabled){color:#222f3e}.tox .tox-tree .tox-trbtn:focus:not(.tox-trbtn--disabled) svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:active>*{transform:none}.tox .tox-tree .tox-trbtn--return{align-self:stretch;height:unset;width:16px}.tox .tox-tree .tox-trbtn--labeled{padding:0 4px;width:unset}.tox .tox-tree .tox-trbtn__vlabel{display:block;font-size:10px;font-weight:400;letter-spacing:-.025em;margin-bottom:4px;white-space:nowrap}.tox .tox-tree .tox-tree--directory{display:flex;flex-direction:column}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label{font-weight:700}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn{margin-left:auto}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn svg{fill:transparent}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn.tox-mbtn--active svg,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn:focus svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover .tox-mbtn svg,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:focus .tox-mbtn svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover:has(.tox-mbtn:hover){background-color:transparent;color:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover:has(.tox-mbtn:hover) .tox-chevron svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-chevron{margin-right:6px}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--growing) .tox-chevron,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--shrinking) .tox-chevron{transition:transform .5s ease-in-out}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--growing) .tox-chevron,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--open) .tox-chevron{transform:rotate(90deg)}.tox .tox-tree .tox-tree--leaf__label{font-weight:400}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn{margin-left:auto}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn svg{fill:transparent}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn.tox-mbtn--active svg,.tox .tox-tree .tox-tree--leaf__label .tox-mbtn:focus svg{fill:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover .tox-mbtn svg{fill:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover:has(.tox-mbtn:hover){background-color:transparent;color:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover:has(.tox-mbtn:hover) .tox-chevron svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory__children{overflow:hidden;padding-left:16px}.tox .tox-tree .tox-tree--directory__children.tox-tree--directory__children--growing,.tox .tox-tree .tox-tree--directory__children.tox-tree--directory__children--shrinking{transition:height .5s ease-in-out}.tox .tox-tree .tox-trbtn.tox-tree--leaf__label{display:flex;justify-content:space-between}.tox .tox-view-wrap,.tox .tox-view-wrap__slot-container{background-color:#fff;display:flex;flex:1;flex-direction:column}.tox .tox-view{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.tox .tox-view__header{align-items:center;display:flex;font-size:16px;justify-content:space-between;padding:8px 8px 0;position:relative}.tox .tox-view--mobile.tox-view__header,.tox .tox-view--mobile.tox-view__toolbar{padding:8px}.tox .tox-view--scrolling{flex-wrap:nowrap;overflow-x:auto}.tox .tox-view__toolbar{display:flex;flex-direction:row;gap:8px;justify-content:space-between;padding:8px 8px 0}.tox .tox-view__toolbar__group{display:flex;flex-direction:row;gap:12px}.tox .tox-view__header-start,.tox .tox-view__header-end{display:flex}.tox .tox-view__pane{height:100%;padding:8px;width:100%}.tox .tox-view__pane_panel{border:1px solid #eeeeee;border-radius:6px}.tox:not([dir=rtl]) .tox-view__header .tox-view__header-start>*,.tox:not([dir=rtl]) .tox-view__header .tox-view__header-end>*{margin-left:8px}.tox[dir=rtl] .tox-view__header .tox-view__header-start>*,.tox[dir=rtl] .tox-view__header .tox-view__header-end>*{margin-right:8px}.tox .tox-well{border:1px solid #eeeeee;border-radius:6px;padding:8px;width:100%}.tox .tox-well>*:first-child{margin-top:0}.tox .tox-well>*:last-child{margin-bottom:0}.tox .tox-well>*:only-child{margin:0}.tox .tox-custom-editor{border:1px solid #eeeeee;border-radius:6px;display:flex;flex:1;overflow:hidden;position:relative}.tox .tox-dialog-loading:before{background-color:#00000080;content:"";height:100%;position:absolute;width:100%;z-index:1000}.tox .tox-tab{cursor:pointer}.tox .tox-dialog__content-js,.tox .tox-dialog__body-content .tox-collection{display:flex;flex:1}.tox:not(.tox-tinymce-inline) .tox-editor-header{background-color:#fff;border-bottom:1px solid #ced4da;box-shadow:none;padding:4px 0;transition:box-shadow .5s}.tox-tinymce{border:1px solid #ced4da}.field-content.svelte-md34ba{max-height:200px;overflow-y:scroll} diff --git a/front/dist/assets/main-BtcBvcC_.js b/front/dist/assets/main-BtcBvcC_.js deleted file mode 100644 index 62fb727..0000000 --- a/front/dist/assets/main-BtcBvcC_.js +++ /dev/null @@ -1,198 +0,0 @@ -var nX=Object.defineProperty;var oX=(o,e,n)=>e in o?nX(o,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[e]=n;var cU=(o,e,n)=>(oX(o,typeof e!="symbol"?e+"":e,n),n);function bind$1(o,e){return function(){return o.apply(e,arguments)}}const{toString:toString$1}=Object.prototype,{getPrototypeOf}=Object,kindOf=(o=>e=>{const n=toString$1.call(e);return o[n]||(o[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),kindOfTest=o=>(o=o.toLowerCase(),e=>kindOf(e)===o),typeOfTest=o=>e=>typeof e===o,{isArray:isArray$2}=Array,isUndefined=typeOfTest("undefined");function isBuffer(o){return o!==null&&!isUndefined(o)&&o.constructor!==null&&!isUndefined(o.constructor)&&isFunction$1(o.constructor.isBuffer)&&o.constructor.isBuffer(o)}const isArrayBuffer=kindOfTest("ArrayBuffer");function isArrayBufferView(o){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(o):e=o&&o.buffer&&isArrayBuffer(o.buffer),e}const isString$1=typeOfTest("string"),isFunction$1=typeOfTest("function"),isNumber$1=typeOfTest("number"),isObject$1=o=>o!==null&&typeof o=="object",isBoolean$1=o=>o===!0||o===!1,isPlainObject=o=>{if(kindOf(o)!=="object")return!1;const e=getPrototypeOf(o);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in o)&&!(Symbol.iterator in o)},isDate$1=kindOfTest("Date"),isFile=kindOfTest("File"),isBlob=kindOfTest("Blob"),isFileList=kindOfTest("FileList"),isStream=o=>isObject$1(o)&&isFunction$1(o.pipe),isFormData=o=>{let e;return o&&(typeof FormData=="function"&&o instanceof FormData||isFunction$1(o.append)&&((e=kindOf(o))==="formdata"||e==="object"&&isFunction$1(o.toString)&&o.toString()==="[object FormData]"))},isURLSearchParams=kindOfTest("URLSearchParams"),[isReadableStream,isRequest,isResponse,isHeaders]=["ReadableStream","Request","Response","Headers"].map(kindOfTest),trim=o=>o.trim?o.trim():o.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function forEach(o,e,{allOwnKeys:n=!1}={}){if(o===null||typeof o>"u")return;let r,c;if(typeof o!="object"&&(o=[o]),isArray$2(o))for(r=0,c=o.length;r0;)if(c=n[r],e===c.toLowerCase())return c;return null}const _global=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,isContextDefined=o=>!isUndefined(o)&&o!==_global;function merge(){const{caseless:o}=isContextDefined(this)&&this||{},e={},n=(r,c)=>{const u=o&&findKey$1(e,c)||c;isPlainObject(e[u])&&isPlainObject(r)?e[u]=merge(e[u],r):isPlainObject(r)?e[u]=merge({},r):isArray$2(r)?e[u]=r.slice():e[u]=r};for(let r=0,c=arguments.length;r(forEach(e,(c,u)=>{n&&isFunction$1(c)?o[u]=bind$1(c,n):o[u]=c},{allOwnKeys:r}),o),stripBOM=o=>(o.charCodeAt(0)===65279&&(o=o.slice(1)),o),inherits=(o,e,n,r)=>{o.prototype=Object.create(e.prototype,r),o.prototype.constructor=o,Object.defineProperty(o,"super",{value:e.prototype}),n&&Object.assign(o.prototype,n)},toFlatObject=(o,e,n,r)=>{let c,u,h;const p={};if(e=e||{},o==null)return e;do{for(c=Object.getOwnPropertyNames(o),u=c.length;u-- >0;)h=c[u],(!r||r(h,o,e))&&!p[h]&&(e[h]=o[h],p[h]=!0);o=n!==!1&&getPrototypeOf(o)}while(o&&(!n||n(o,e))&&o!==Object.prototype);return e},endsWith=(o,e,n)=>{o=String(o),(n===void 0||n>o.length)&&(n=o.length),n-=e.length;const r=o.indexOf(e,n);return r!==-1&&r===n},toArray=o=>{if(!o)return null;if(isArray$2(o))return o;let e=o.length;if(!isNumber$1(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=o[e];return n},isTypedArray=(o=>e=>o&&e instanceof o)(typeof Uint8Array<"u"&&getPrototypeOf(Uint8Array)),forEachEntry=(o,e)=>{const r=(o&&o[Symbol.iterator]).call(o);let c;for(;(c=r.next())&&!c.done;){const u=c.value;e.call(o,u[0],u[1])}},matchAll=(o,e)=>{let n;const r=[];for(;(n=o.exec(e))!==null;)r.push(n);return r},isHTMLForm=kindOfTest("HTMLFormElement"),toCamelCase=o=>o.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,c){return r.toUpperCase()+c}),hasOwnProperty=(({hasOwnProperty:o})=>(e,n)=>o.call(e,n))(Object.prototype),isRegExp=kindOfTest("RegExp"),reduceDescriptors=(o,e)=>{const n=Object.getOwnPropertyDescriptors(o),r={};forEach(n,(c,u)=>{let h;(h=e(c,u,o))!==!1&&(r[u]=h||c)}),Object.defineProperties(o,r)},freezeMethods=o=>{reduceDescriptors(o,(e,n)=>{if(isFunction$1(o)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=o[n];if(isFunction$1(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},toObjectSet=(o,e)=>{const n={},r=c=>{c.forEach(u=>{n[u]=!0})};return isArray$2(o)?r(o):r(String(o).split(e)),n},noop$1=()=>{},toFiniteNumber=(o,e)=>o!=null&&Number.isFinite(o=+o)?o:e,ALPHA="abcdefghijklmnopqrstuvwxyz",DIGIT="0123456789",ALPHABET={DIGIT,ALPHA,ALPHA_DIGIT:ALPHA+ALPHA.toUpperCase()+DIGIT},generateString=(o=16,e=ALPHABET.ALPHA_DIGIT)=>{let n="";const{length:r}=e;for(;o--;)n+=e[Math.random()*r|0];return n};function isSpecCompliantForm(o){return!!(o&&isFunction$1(o.append)&&o[Symbol.toStringTag]==="FormData"&&o[Symbol.iterator])}const toJSONObject=o=>{const e=new Array(10),n=(r,c)=>{if(isObject$1(r)){if(e.indexOf(r)>=0)return;if(!("toJSON"in r)){e[c]=r;const u=isArray$2(r)?[]:{};return forEach(r,(h,p)=>{const b=n(h,c+1);!isUndefined(b)&&(u[p]=b)}),e[c]=void 0,u}}return r};return n(o,0)},isAsyncFn=kindOfTest("AsyncFunction"),isThenable=o=>o&&(isObject$1(o)||isFunction$1(o))&&isFunction$1(o.then)&&isFunction$1(o.catch),_setImmediate=((o,e)=>o?setImmediate:e?((n,r)=>(_global.addEventListener("message",({source:c,data:u})=>{c===_global&&u===n&&r.length&&r.shift()()},!1),c=>{r.push(c),_global.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",isFunction$1(_global.postMessage)),asap=typeof queueMicrotask<"u"?queueMicrotask.bind(_global):typeof process<"u"&&process.nextTick||_setImmediate,utils$1={isArray:isArray$2,isArrayBuffer,isBuffer,isFormData,isArrayBufferView,isString:isString$1,isNumber:isNumber$1,isBoolean:isBoolean$1,isObject:isObject$1,isPlainObject,isReadableStream,isRequest,isResponse,isHeaders,isUndefined,isDate:isDate$1,isFile,isBlob,isRegExp,isFunction:isFunction$1,isStream,isURLSearchParams,isTypedArray,isFileList,forEach,merge,extend:extend$2,trim,stripBOM,inherits,toFlatObject,kindOf,kindOfTest,endsWith,toArray,forEachEntry,matchAll,isHTMLForm,hasOwnProperty,hasOwnProp:hasOwnProperty,reduceDescriptors,freezeMethods,toObjectSet,toCamelCase,noop:noop$1,toFiniteNumber,findKey:findKey$1,global:_global,isContextDefined,ALPHABET,generateString,isSpecCompliantForm,toJSONObject,isAsyncFn,isThenable,setImmediate:_setImmediate,asap};function AxiosError(o,e,n,r,c){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=o,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),c&&(this.response=c)}utils$1.inherits(AxiosError,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:utils$1.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const prototype$1=AxiosError.prototype,descriptors={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(o=>{descriptors[o]={value:o}});Object.defineProperties(AxiosError,descriptors);Object.defineProperty(prototype$1,"isAxiosError",{value:!0});AxiosError.from=(o,e,n,r,c,u)=>{const h=Object.create(prototype$1);return utils$1.toFlatObject(o,h,function(b){return b!==Error.prototype},p=>p!=="isAxiosError"),AxiosError.call(h,o.message,e,n,r,c),h.cause=o,h.name=o.name,u&&Object.assign(h,u),h};const httpAdapter=null;function isVisitable(o){return utils$1.isPlainObject(o)||utils$1.isArray(o)}function removeBrackets(o){return utils$1.endsWith(o,"[]")?o.slice(0,-2):o}function renderKey(o,e,n){return o?o.concat(e).map(function(c,u){return c=removeBrackets(c),!n&&u?"["+c+"]":c}).join(n?".":""):e}function isFlatArray(o){return utils$1.isArray(o)&&!o.some(isVisitable)}const predicates=utils$1.toFlatObject(utils$1,{},null,function(e){return/^is[A-Z]/.test(e)});function toFormData(o,e,n){if(!utils$1.isObject(o))throw new TypeError("target must be an object");e=e||new FormData,n=utils$1.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(V,W){return!utils$1.isUndefined(W[V])});const r=n.metaTokens,c=n.visitor||k,u=n.dots,h=n.indexes,b=(n.Blob||typeof Blob<"u"&&Blob)&&utils$1.isSpecCompliantForm(e);if(!utils$1.isFunction(c))throw new TypeError("visitor must be a function");function y(F){if(F===null)return"";if(utils$1.isDate(F))return F.toISOString();if(!b&&utils$1.isBlob(F))throw new AxiosError("Blob is not supported. Use a Buffer instead.");return utils$1.isArrayBuffer(F)||utils$1.isTypedArray(F)?b&&typeof Blob=="function"?new Blob([F]):Buffer.from(F):F}function k(F,V,W){let J=F;if(F&&!W&&typeof F=="object"){if(utils$1.endsWith(V,"{}"))V=r?V:V.slice(0,-2),F=JSON.stringify(F);else if(utils$1.isArray(F)&&isFlatArray(F)||(utils$1.isFileList(F)||utils$1.endsWith(V,"[]"))&&(J=utils$1.toArray(F)))return V=removeBrackets(V),J.forEach(function(j,ae){!(utils$1.isUndefined(j)||j===null)&&e.append(h===!0?renderKey([V],ae,u):h===null?V:V+"[]",y(j))}),!1}return isVisitable(F)?!0:(e.append(renderKey(W,V,u),y(F)),!1)}const A=[],R=Object.assign(predicates,{defaultVisitor:k,convertValue:y,isVisitable});function N(F,V){if(!utils$1.isUndefined(F)){if(A.indexOf(F)!==-1)throw Error("Circular reference detected in "+V.join("."));A.push(F),utils$1.forEach(F,function(J,te){(!(utils$1.isUndefined(J)||J===null)&&c.call(e,J,utils$1.isString(te)?te.trim():te,V,R))===!0&&N(J,V?V.concat(te):[te])}),A.pop()}}if(!utils$1.isObject(o))throw new TypeError("data must be an object");return N(o),e}function encode$1(o){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(o).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function AxiosURLSearchParams(o,e){this._pairs=[],o&&toFormData(o,this,e)}const prototype=AxiosURLSearchParams.prototype;prototype.append=function(e,n){this._pairs.push([e,n])};prototype.toString=function(e){const n=e?function(r){return e.call(this,r,encode$1)}:encode$1;return this._pairs.map(function(c){return n(c[0])+"="+n(c[1])},"").join("&")};function encode(o){return encodeURIComponent(o).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function buildURL(o,e,n){if(!e)return o;const r=n&&n.encode||encode,c=n&&n.serialize;let u;if(c?u=c(e,n):u=utils$1.isURLSearchParams(e)?e.toString():new AxiosURLSearchParams(e,n).toString(r),u){const h=o.indexOf("#");h!==-1&&(o=o.slice(0,h)),o+=(o.indexOf("?")===-1?"?":"&")+u}return o}class InterceptorManager{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){utils$1.forEach(this.handlers,function(r){r!==null&&e(r)})}}const transitionalDefaults={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},URLSearchParams$1=typeof URLSearchParams<"u"?URLSearchParams:AxiosURLSearchParams,FormData$1=typeof FormData<"u"?FormData:null,Blob$1=typeof Blob<"u"?Blob:null,platform$1={isBrowser:!0,classes:{URLSearchParams:URLSearchParams$1,FormData:FormData$1,Blob:Blob$1},protocols:["http","https","file","blob","url","data"]},hasBrowserEnv=typeof window<"u"&&typeof document<"u",hasStandardBrowserEnv=(o=>hasBrowserEnv&&["ReactNative","NativeScript","NS"].indexOf(o)<0)(typeof navigator<"u"&&navigator.product),hasStandardBrowserWebWorkerEnv=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",origin=hasBrowserEnv&&window.location.href||"http://localhost",utils=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv,hasStandardBrowserEnv,hasStandardBrowserWebWorkerEnv,origin},Symbol.toStringTag,{value:"Module"})),platform={...utils,...platform$1};function toURLEncodedForm(o,e){return toFormData(o,new platform.classes.URLSearchParams,Object.assign({visitor:function(n,r,c,u){return platform.isNode&&utils$1.isBuffer(n)?(this.append(r,n.toString("base64")),!1):u.defaultVisitor.apply(this,arguments)}},e))}function parsePropPath(o){return utils$1.matchAll(/\w+|\[(\w*)]/g,o).map(e=>e[0]==="[]"?"":e[1]||e[0])}function arrayToObject(o){const e={},n=Object.keys(o);let r;const c=n.length;let u;for(r=0;r=n.length;return h=!h&&utils$1.isArray(c)?c.length:h,b?(utils$1.hasOwnProp(c,h)?c[h]=[c[h],r]:c[h]=r,!p):((!c[h]||!utils$1.isObject(c[h]))&&(c[h]=[]),e(n,r,c[h],u)&&utils$1.isArray(c[h])&&(c[h]=arrayToObject(c[h])),!p)}if(utils$1.isFormData(o)&&utils$1.isFunction(o.entries)){const n={};return utils$1.forEachEntry(o,(r,c)=>{e(parsePropPath(r),c,n,0)}),n}return null}function stringifySafely(o,e,n){if(utils$1.isString(o))try{return(e||JSON.parse)(o),utils$1.trim(o)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(o)}const defaults$4={transitional:transitionalDefaults,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const r=n.getContentType()||"",c=r.indexOf("application/json")>-1,u=utils$1.isObject(e);if(u&&utils$1.isHTMLForm(e)&&(e=new FormData(e)),utils$1.isFormData(e))return c?JSON.stringify(formDataToJSON(e)):e;if(utils$1.isArrayBuffer(e)||utils$1.isBuffer(e)||utils$1.isStream(e)||utils$1.isFile(e)||utils$1.isBlob(e)||utils$1.isReadableStream(e))return e;if(utils$1.isArrayBufferView(e))return e.buffer;if(utils$1.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let p;if(u){if(r.indexOf("application/x-www-form-urlencoded")>-1)return toURLEncodedForm(e,this.formSerializer).toString();if((p=utils$1.isFileList(e))||r.indexOf("multipart/form-data")>-1){const b=this.env&&this.env.FormData;return toFormData(p?{"files[]":e}:e,b&&new b,this.formSerializer)}}return u||c?(n.setContentType("application/json",!1),stringifySafely(e)):e}],transformResponse:[function(e){const n=this.transitional||defaults$4.transitional,r=n&&n.forcedJSONParsing,c=this.responseType==="json";if(utils$1.isResponse(e)||utils$1.isReadableStream(e))return e;if(e&&utils$1.isString(e)&&(r&&!this.responseType||c)){const h=!(n&&n.silentJSONParsing)&&c;try{return JSON.parse(e)}catch(p){if(h)throw p.name==="SyntaxError"?AxiosError.from(p,AxiosError.ERR_BAD_RESPONSE,this,null,this.response):p}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:platform.classes.FormData,Blob:platform.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};utils$1.forEach(["delete","get","head","post","put","patch"],o=>{defaults$4.headers[o]={}});const ignoreDuplicateOf=utils$1.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),parseHeaders=o=>{const e={};let n,r,c;return o&&o.split(` -`).forEach(function(h){c=h.indexOf(":"),n=h.substring(0,c).trim().toLowerCase(),r=h.substring(c+1).trim(),!(!n||e[n]&&ignoreDuplicateOf[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},$internals=Symbol("internals");function normalizeHeader(o){return o&&String(o).trim().toLowerCase()}function normalizeValue(o){return o===!1||o==null?o:utils$1.isArray(o)?o.map(normalizeValue):String(o)}function parseTokens(o){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(o);)e[r[1]]=r[2];return e}const isValidHeaderName=o=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(o.trim());function matchHeaderValue(o,e,n,r,c){if(utils$1.isFunction(r))return r.call(this,e,n);if(c&&(e=n),!!utils$1.isString(e)){if(utils$1.isString(r))return e.indexOf(r)!==-1;if(utils$1.isRegExp(r))return r.test(e)}}function formatHeader(o){return o.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function buildAccessors(o,e){const n=utils$1.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(o,r+n,{value:function(c,u,h){return this[r].call(this,e,c,u,h)},configurable:!0})})}class AxiosHeaders{constructor(e){e&&this.set(e)}set(e,n,r){const c=this;function u(p,b,y){const k=normalizeHeader(b);if(!k)throw new Error("header name must be a non-empty string");const A=utils$1.findKey(c,k);(!A||c[A]===void 0||y===!0||y===void 0&&c[A]!==!1)&&(c[A||b]=normalizeValue(p))}const h=(p,b)=>utils$1.forEach(p,(y,k)=>u(y,k,b));if(utils$1.isPlainObject(e)||e instanceof this.constructor)h(e,n);else if(utils$1.isString(e)&&(e=e.trim())&&!isValidHeaderName(e))h(parseHeaders(e),n);else if(utils$1.isHeaders(e))for(const[p,b]of e.entries())u(b,p,r);else e!=null&&u(n,e,r);return this}get(e,n){if(e=normalizeHeader(e),e){const r=utils$1.findKey(this,e);if(r){const c=this[r];if(!n)return c;if(n===!0)return parseTokens(c);if(utils$1.isFunction(n))return n.call(this,c,r);if(utils$1.isRegExp(n))return n.exec(c);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=normalizeHeader(e),e){const r=utils$1.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||matchHeaderValue(this,this[r],r,n)))}return!1}delete(e,n){const r=this;let c=!1;function u(h){if(h=normalizeHeader(h),h){const p=utils$1.findKey(r,h);p&&(!n||matchHeaderValue(r,r[p],p,n))&&(delete r[p],c=!0)}}return utils$1.isArray(e)?e.forEach(u):u(e),c}clear(e){const n=Object.keys(this);let r=n.length,c=!1;for(;r--;){const u=n[r];(!e||matchHeaderValue(this,this[u],u,e,!0))&&(delete this[u],c=!0)}return c}normalize(e){const n=this,r={};return utils$1.forEach(this,(c,u)=>{const h=utils$1.findKey(r,u);if(h){n[h]=normalizeValue(c),delete n[u];return}const p=e?formatHeader(u):String(u).trim();p!==u&&delete n[u],n[p]=normalizeValue(c),r[p]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return utils$1.forEach(this,(r,c)=>{r!=null&&r!==!1&&(n[c]=e&&utils$1.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const r=new this(e);return n.forEach(c=>r.set(c)),r}static accessor(e){const r=(this[$internals]=this[$internals]={accessors:{}}).accessors,c=this.prototype;function u(h){const p=normalizeHeader(h);r[p]||(buildAccessors(c,h),r[p]=!0)}return utils$1.isArray(e)?e.forEach(u):u(e),this}}AxiosHeaders.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);utils$1.reduceDescriptors(AxiosHeaders.prototype,({value:o},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>o,set(r){this[n]=r}}});utils$1.freezeMethods(AxiosHeaders);function transformData(o,e){const n=this||defaults$4,r=e||n,c=AxiosHeaders.from(r.headers);let u=r.data;return utils$1.forEach(o,function(p){u=p.call(n,u,c.normalize(),e?e.status:void 0)}),c.normalize(),u}function isCancel(o){return!!(o&&o.__CANCEL__)}function CanceledError(o,e,n){AxiosError.call(this,o??"canceled",AxiosError.ERR_CANCELED,e,n),this.name="CanceledError"}utils$1.inherits(CanceledError,AxiosError,{__CANCEL__:!0});function settle(o,e,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?o(n):e(new AxiosError("Request failed with status code "+n.status,[AxiosError.ERR_BAD_REQUEST,AxiosError.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function parseProtocol(o){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(o);return e&&e[1]||""}function speedometer(o,e){o=o||10;const n=new Array(o),r=new Array(o);let c=0,u=0,h;return e=e!==void 0?e:1e3,function(b){const y=Date.now(),k=r[u];h||(h=y),n[c]=b,r[c]=y;let A=u,R=0;for(;A!==c;)R+=n[A++],A=A%o;if(c=(c+1)%o,c===u&&(u=(u+1)%o),y-h{n=k,c=null,u&&(clearTimeout(u),u=null),o.apply(null,y)};return[(...y)=>{const k=Date.now(),A=k-n;A>=r?h(y,k):(c=y,u||(u=setTimeout(()=>{u=null,h(c)},r-A)))},()=>c&&h(c)]}const progressEventReducer=(o,e,n=3)=>{let r=0;const c=speedometer(50,250);return throttle$1(u=>{const h=u.loaded,p=u.lengthComputable?u.total:void 0,b=h-r,y=c(b),k=h<=p;r=h;const A={loaded:h,total:p,progress:p?h/p:void 0,bytes:b,rate:y||void 0,estimated:y&&p&&k?(p-h)/y:void 0,event:u,lengthComputable:p!=null,[e?"download":"upload"]:!0};o(A)},n)},progressEventDecorator=(o,e)=>{const n=o!=null;return[r=>e[0]({lengthComputable:n,total:o,loaded:r}),e[1]]},asyncDecorator=o=>(...e)=>utils$1.asap(()=>o(...e)),isURLSameOrigin=platform.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function c(u){let h=u;return e&&(n.setAttribute("href",h),h=n.href),n.setAttribute("href",h),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=c(window.location.href),function(h){const p=utils$1.isString(h)?c(h):h;return p.protocol===r.protocol&&p.host===r.host}}():function(){return function(){return!0}}(),cookies=platform.hasStandardBrowserEnv?{write(o,e,n,r,c,u){const h=[o+"="+encodeURIComponent(e)];utils$1.isNumber(n)&&h.push("expires="+new Date(n).toGMTString()),utils$1.isString(r)&&h.push("path="+r),utils$1.isString(c)&&h.push("domain="+c),u===!0&&h.push("secure"),document.cookie=h.join("; ")},read(o){const e=document.cookie.match(new RegExp("(^|;\\s*)("+o+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(o){this.write(o,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function isAbsoluteURL(o){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(o)}function combineURLs(o,e){return e?o.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):o}function buildFullPath(o,e){return o&&!isAbsoluteURL(e)?combineURLs(o,e):e}const headersToObject=o=>o instanceof AxiosHeaders?{...o}:o;function mergeConfig(o,e){e=e||{};const n={};function r(y,k,A){return utils$1.isPlainObject(y)&&utils$1.isPlainObject(k)?utils$1.merge.call({caseless:A},y,k):utils$1.isPlainObject(k)?utils$1.merge({},k):utils$1.isArray(k)?k.slice():k}function c(y,k,A){if(utils$1.isUndefined(k)){if(!utils$1.isUndefined(y))return r(void 0,y,A)}else return r(y,k,A)}function u(y,k){if(!utils$1.isUndefined(k))return r(void 0,k)}function h(y,k){if(utils$1.isUndefined(k)){if(!utils$1.isUndefined(y))return r(void 0,y)}else return r(void 0,k)}function p(y,k,A){if(A in e)return r(y,k);if(A in o)return r(void 0,y)}const b={url:u,method:u,data:u,baseURL:h,transformRequest:h,transformResponse:h,paramsSerializer:h,timeout:h,timeoutMessage:h,withCredentials:h,withXSRFToken:h,adapter:h,responseType:h,xsrfCookieName:h,xsrfHeaderName:h,onUploadProgress:h,onDownloadProgress:h,decompress:h,maxContentLength:h,maxBodyLength:h,beforeRedirect:h,transport:h,httpAgent:h,httpsAgent:h,cancelToken:h,socketPath:h,responseEncoding:h,validateStatus:p,headers:(y,k)=>c(headersToObject(y),headersToObject(k),!0)};return utils$1.forEach(Object.keys(Object.assign({},o,e)),function(k){const A=b[k]||c,R=A(o[k],e[k],k);utils$1.isUndefined(R)&&A!==p||(n[k]=R)}),n}const resolveConfig$1=o=>{const e=mergeConfig({},o);let{data:n,withXSRFToken:r,xsrfHeaderName:c,xsrfCookieName:u,headers:h,auth:p}=e;e.headers=h=AxiosHeaders.from(h),e.url=buildURL(buildFullPath(e.baseURL,e.url),o.params,o.paramsSerializer),p&&h.set("Authorization","Basic "+btoa((p.username||"")+":"+(p.password?unescape(encodeURIComponent(p.password)):"")));let b;if(utils$1.isFormData(n)){if(platform.hasStandardBrowserEnv||platform.hasStandardBrowserWebWorkerEnv)h.setContentType(void 0);else if((b=h.getContentType())!==!1){const[y,...k]=b?b.split(";").map(A=>A.trim()).filter(Boolean):[];h.setContentType([y||"multipart/form-data",...k].join("; "))}}if(platform.hasStandardBrowserEnv&&(r&&utils$1.isFunction(r)&&(r=r(e)),r||r!==!1&&isURLSameOrigin(e.url))){const y=c&&u&&cookies.read(u);y&&h.set(c,y)}return e},isXHRAdapterSupported=typeof XMLHttpRequest<"u",xhrAdapter=isXHRAdapterSupported&&function(o){return new Promise(function(n,r){const c=resolveConfig$1(o);let u=c.data;const h=AxiosHeaders.from(c.headers).normalize();let{responseType:p,onUploadProgress:b,onDownloadProgress:y}=c,k,A,R,N,F;function V(){N&&N(),F&&F(),c.cancelToken&&c.cancelToken.unsubscribe(k),c.signal&&c.signal.removeEventListener("abort",k)}let W=new XMLHttpRequest;W.open(c.method.toUpperCase(),c.url,!0),W.timeout=c.timeout;function J(){if(!W)return;const j=AxiosHeaders.from("getAllResponseHeaders"in W&&W.getAllResponseHeaders()),fe={data:!p||p==="text"||p==="json"?W.responseText:W.response,status:W.status,statusText:W.statusText,headers:j,config:o,request:W};settle(function(ne){n(ne),V()},function(ne){r(ne),V()},fe),W=null}"onloadend"in W?W.onloadend=J:W.onreadystatechange=function(){!W||W.readyState!==4||W.status===0&&!(W.responseURL&&W.responseURL.indexOf("file:")===0)||setTimeout(J)},W.onabort=function(){W&&(r(new AxiosError("Request aborted",AxiosError.ECONNABORTED,o,W)),W=null)},W.onerror=function(){r(new AxiosError("Network Error",AxiosError.ERR_NETWORK,o,W)),W=null},W.ontimeout=function(){let ae=c.timeout?"timeout of "+c.timeout+"ms exceeded":"timeout exceeded";const fe=c.transitional||transitionalDefaults;c.timeoutErrorMessage&&(ae=c.timeoutErrorMessage),r(new AxiosError(ae,fe.clarifyTimeoutError?AxiosError.ETIMEDOUT:AxiosError.ECONNABORTED,o,W)),W=null},u===void 0&&h.setContentType(null),"setRequestHeader"in W&&utils$1.forEach(h.toJSON(),function(ae,fe){W.setRequestHeader(fe,ae)}),utils$1.isUndefined(c.withCredentials)||(W.withCredentials=!!c.withCredentials),p&&p!=="json"&&(W.responseType=c.responseType),y&&([R,F]=progressEventReducer(y,!0),W.addEventListener("progress",R)),b&&W.upload&&([A,N]=progressEventReducer(b),W.upload.addEventListener("progress",A),W.upload.addEventListener("loadend",N)),(c.cancelToken||c.signal)&&(k=j=>{W&&(r(!j||j.type?new CanceledError(null,o,W):j),W.abort(),W=null)},c.cancelToken&&c.cancelToken.subscribe(k),c.signal&&(c.signal.aborted?k():c.signal.addEventListener("abort",k)));const te=parseProtocol(c.url);if(te&&platform.protocols.indexOf(te)===-1){r(new AxiosError("Unsupported protocol "+te+":",AxiosError.ERR_BAD_REQUEST,o));return}W.send(u||null)})},composeSignals=(o,e)=>{let n=new AbortController,r;const c=function(b){if(!r){r=!0,h();const y=b instanceof Error?b:this.reason;n.abort(y instanceof AxiosError?y:new CanceledError(y instanceof Error?y.message:y))}};let u=e&&setTimeout(()=>{c(new AxiosError(`timeout ${e} of ms exceeded`,AxiosError.ETIMEDOUT))},e);const h=()=>{o&&(u&&clearTimeout(u),u=null,o.forEach(b=>{b&&(b.removeEventListener?b.removeEventListener("abort",c):b.unsubscribe(c))}),o=null)};o.forEach(b=>b&&b.addEventListener&&b.addEventListener("abort",c));const{signal:p}=n;return p.unsubscribe=h,[p,()=>{u&&clearTimeout(u),u=null}]},streamChunk=function*(o,e){let n=o.byteLength;if(!e||n{const u=readBytes(o,e,c);let h=0,p,b=y=>{p||(p=!0,r&&r(y))};return new ReadableStream({async pull(y){try{const{done:k,value:A}=await u.next();if(k){b(),y.close();return}let R=A.byteLength;if(n){let N=h+=R;n(N)}y.enqueue(new Uint8Array(A))}catch(k){throw b(k),k}},cancel(y){return b(y),u.return()}},{highWaterMark:2})},isFetchSupported=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",isReadableStreamSupported=isFetchSupported&&typeof ReadableStream=="function",encodeText=isFetchSupported&&(typeof TextEncoder=="function"?(o=>e=>o.encode(e))(new TextEncoder):async o=>new Uint8Array(await new Response(o).arrayBuffer())),test=(o,...e)=>{try{return!!o(...e)}catch{return!1}},supportsRequestStream=isReadableStreamSupported&&test(()=>{let o=!1;const e=new Request(platform.origin,{body:new ReadableStream,method:"POST",get duplex(){return o=!0,"half"}}).headers.has("Content-Type");return o&&!e}),DEFAULT_CHUNK_SIZE=64*1024,supportsResponseStream=isReadableStreamSupported&&test(()=>utils$1.isReadableStream(new Response("").body)),resolvers={stream:supportsResponseStream&&(o=>o.body)};isFetchSupported&&(o=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!resolvers[e]&&(resolvers[e]=utils$1.isFunction(o[e])?n=>n[e]():(n,r)=>{throw new AxiosError(`Response type '${e}' is not supported`,AxiosError.ERR_NOT_SUPPORT,r)})})})(new Response);const getBodyLength=async o=>{if(o==null)return 0;if(utils$1.isBlob(o))return o.size;if(utils$1.isSpecCompliantForm(o))return(await new Request(o).arrayBuffer()).byteLength;if(utils$1.isArrayBufferView(o)||utils$1.isArrayBuffer(o))return o.byteLength;if(utils$1.isURLSearchParams(o)&&(o=o+""),utils$1.isString(o))return(await encodeText(o)).byteLength},resolveBodyLength=async(o,e)=>{const n=utils$1.toFiniteNumber(o.getContentLength());return n??getBodyLength(e)},fetchAdapter=isFetchSupported&&(async o=>{let{url:e,method:n,data:r,signal:c,cancelToken:u,timeout:h,onDownloadProgress:p,onUploadProgress:b,responseType:y,headers:k,withCredentials:A="same-origin",fetchOptions:R}=resolveConfig$1(o);y=y?(y+"").toLowerCase():"text";let[N,F]=c||u||h?composeSignals([c,u],h):[],V,W;const J=()=>{!V&&setTimeout(()=>{N&&N.unsubscribe()}),V=!0};let te;try{if(b&&supportsRequestStream&&n!=="get"&&n!=="head"&&(te=await resolveBodyLength(k,r))!==0){let _e=new Request(e,{method:"POST",body:r,duplex:"half"}),ne;if(utils$1.isFormData(r)&&(ne=_e.headers.get("content-type"))&&k.setContentType(ne),_e.body){const[Se,De]=progressEventDecorator(te,progressEventReducer(asyncDecorator(b)));r=trackStream(_e.body,DEFAULT_CHUNK_SIZE,Se,De,encodeText)}}utils$1.isString(A)||(A=A?"include":"omit"),W=new Request(e,{...R,signal:N,method:n.toUpperCase(),headers:k.normalize().toJSON(),body:r,duplex:"half",credentials:A});let j=await fetch(W);const ae=supportsResponseStream&&(y==="stream"||y==="response");if(supportsResponseStream&&(p||ae)){const _e={};["status","statusText","headers"].forEach(Be=>{_e[Be]=j[Be]});const ne=utils$1.toFiniteNumber(j.headers.get("content-length")),[Se,De]=p&&progressEventDecorator(ne,progressEventReducer(asyncDecorator(p),!0))||[];j=new Response(trackStream(j.body,DEFAULT_CHUNK_SIZE,Se,()=>{De&&De(),ae&&J()},encodeText),_e)}y=y||"text";let fe=await resolvers[utils$1.findKey(resolvers,y)||"text"](j,o);return!ae&&J(),F&&F(),await new Promise((_e,ne)=>{settle(_e,ne,{data:fe,headers:AxiosHeaders.from(j.headers),status:j.status,statusText:j.statusText,config:o,request:W})})}catch(j){throw J(),j&&j.name==="TypeError"&&/fetch/i.test(j.message)?Object.assign(new AxiosError("Network Error",AxiosError.ERR_NETWORK,o,W),{cause:j.cause||j}):AxiosError.from(j,j&&j.code,o,W)}}),knownAdapters={http:httpAdapter,xhr:xhrAdapter,fetch:fetchAdapter};utils$1.forEach(knownAdapters,(o,e)=>{if(o){try{Object.defineProperty(o,"name",{value:e})}catch{}Object.defineProperty(o,"adapterName",{value:e})}});const renderReason=o=>`- ${o}`,isResolvedHandle=o=>utils$1.isFunction(o)||o===null||o===!1,adapters={getAdapter:o=>{o=utils$1.isArray(o)?o:[o];const{length:e}=o;let n,r;const c={};for(let u=0;u`adapter ${p} `+(b===!1?"is not supported by the environment":"is not available in the build"));let h=e?u.length>1?`since : -`+u.map(renderReason).join(` -`):" "+renderReason(u[0]):"as no adapter specified";throw new AxiosError("There is no suitable adapter to dispatch the request "+h,"ERR_NOT_SUPPORT")}return r},adapters:knownAdapters};function throwIfCancellationRequested(o){if(o.cancelToken&&o.cancelToken.throwIfRequested(),o.signal&&o.signal.aborted)throw new CanceledError(null,o)}function dispatchRequest(o){return throwIfCancellationRequested(o),o.headers=AxiosHeaders.from(o.headers),o.data=transformData.call(o,o.transformRequest),["post","put","patch"].indexOf(o.method)!==-1&&o.headers.setContentType("application/x-www-form-urlencoded",!1),adapters.getAdapter(o.adapter||defaults$4.adapter)(o).then(function(r){return throwIfCancellationRequested(o),r.data=transformData.call(o,o.transformResponse,r),r.headers=AxiosHeaders.from(r.headers),r},function(r){return isCancel(r)||(throwIfCancellationRequested(o),r&&r.response&&(r.response.data=transformData.call(o,o.transformResponse,r.response),r.response.headers=AxiosHeaders.from(r.response.headers))),Promise.reject(r)})}const VERSION="1.7.4",validators$1={};["object","boolean","number","function","string","symbol"].forEach((o,e)=>{validators$1[o]=function(r){return typeof r===o||"a"+(e<1?"n ":" ")+o}});const deprecatedWarnings={};validators$1.transitional=function(e,n,r){function c(u,h){return"[Axios v"+VERSION+"] Transitional option '"+u+"'"+h+(r?". "+r:"")}return(u,h,p)=>{if(e===!1)throw new AxiosError(c(h," has been removed"+(n?" in "+n:"")),AxiosError.ERR_DEPRECATED);return n&&!deprecatedWarnings[h]&&(deprecatedWarnings[h]=!0,console.warn(c(h," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(u,h,p):!0}};function assertOptions(o,e,n){if(typeof o!="object")throw new AxiosError("options must be an object",AxiosError.ERR_BAD_OPTION_VALUE);const r=Object.keys(o);let c=r.length;for(;c-- >0;){const u=r[c],h=e[u];if(h){const p=o[u],b=p===void 0||h(p,u,o);if(b!==!0)throw new AxiosError("option "+u+" must be "+b,AxiosError.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new AxiosError("Unknown option "+u,AxiosError.ERR_BAD_OPTION)}}const validator={assertOptions,validators:validators$1},validators=validator.validators;class Axios{constructor(e){this.defaults=e,this.interceptors={request:new InterceptorManager,response:new InterceptorManager}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let c;Error.captureStackTrace?Error.captureStackTrace(c={}):c=new Error;const u=c.stack?c.stack.replace(/^.+\n/,""):"";try{r.stack?u&&!String(r.stack).endsWith(u.replace(/^.+\n.+\n/,""))&&(r.stack+=` -`+u):r.stack=u}catch{}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=mergeConfig(this.defaults,n);const{transitional:r,paramsSerializer:c,headers:u}=n;r!==void 0&&validator.assertOptions(r,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),c!=null&&(utils$1.isFunction(c)?n.paramsSerializer={serialize:c}:validator.assertOptions(c,{encode:validators.function,serialize:validators.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let h=u&&utils$1.merge(u.common,u[n.method]);u&&utils$1.forEach(["delete","get","head","post","put","patch","common"],F=>{delete u[F]}),n.headers=AxiosHeaders.concat(h,u);const p=[];let b=!0;this.interceptors.request.forEach(function(V){typeof V.runWhen=="function"&&V.runWhen(n)===!1||(b=b&&V.synchronous,p.unshift(V.fulfilled,V.rejected))});const y=[];this.interceptors.response.forEach(function(V){y.push(V.fulfilled,V.rejected)});let k,A=0,R;if(!b){const F=[dispatchRequest.bind(this),void 0];for(F.unshift.apply(F,p),F.push.apply(F,y),R=F.length,k=Promise.resolve(n);A{if(!r._listeners)return;let u=r._listeners.length;for(;u-- >0;)r._listeners[u](c);r._listeners=null}),this.promise.then=c=>{let u;const h=new Promise(p=>{r.subscribe(p),u=p}).then(c);return h.cancel=function(){r.unsubscribe(u)},h},e(function(u,h,p){r.reason||(r.reason=new CanceledError(u,h,p),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}static source(){let e;return{token:new CancelToken(function(c){e=c}),cancel:e}}}function spread(o){return function(n){return o.apply(null,n)}}function isAxiosError(o){return utils$1.isObject(o)&&o.isAxiosError===!0}const HttpStatusCode={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode).forEach(([o,e])=>{HttpStatusCode[e]=o});function createInstance(o){const e=new Axios(o),n=bind$1(Axios.prototype.request,e);return utils$1.extend(n,Axios.prototype,e,{allOwnKeys:!0}),utils$1.extend(n,e,null,{allOwnKeys:!0}),n.create=function(c){return createInstance(mergeConfig(o,c))},n}const axios$1=createInstance(defaults$4);axios$1.Axios=Axios;axios$1.CanceledError=CanceledError;axios$1.CancelToken=CancelToken;axios$1.isCancel=isCancel;axios$1.VERSION=VERSION;axios$1.toFormData=toFormData;axios$1.AxiosError=AxiosError;axios$1.Cancel=axios$1.CanceledError;axios$1.all=function(e){return Promise.all(e)};axios$1.spread=spread;axios$1.isAxiosError=isAxiosError;axios$1.mergeConfig=mergeConfig;axios$1.AxiosHeaders=AxiosHeaders;axios$1.formToJSON=o=>formDataToJSON(utils$1.isHTMLForm(o)?new FormData(o):o);axios$1.getAdapter=adapters.getAdapter;axios$1.HttpStatusCode=HttpStatusCode;axios$1.default=axios$1;function loadHtmxFormsBehaviour(){document.querySelectorAll(".form").forEach(o=>{initHtmxForm(o)})}function initHtmxForm(o){o.addEventListener("htmx:responseError",n=>{o.querySelector(".form-errors").innerHTML=n.detail.xhr.response});const e=o.querySelector("form");e.getAttribute("hx-redirect")&&o.addEventListener("htmx:afterOnLoad",n=>{if(n.detail.successful)return window.location.href=e.getAttribute("hx-redirect")})}loadHtmxFormsBehaviour();window.axios=axios$1;const axiosInstance=axios$1;window.axios.defaults.headers.common["X-Requested-With"]="XMLHttpRequest";window.axios.interceptors.request.use(function(o){let e;e=document.querySelectorAll(".btn-spinner");for(let n=0;no;function assign(o,e){for(const n in e)o[n]=e[n];return o}function run(o){return o()}function blank_object(){return Object.create(null)}function run_all(o){o.forEach(run)}function is_function(o){return typeof o=="function"}function safe_not_equal(o,e){return o!=o?e==e:o!==e||o&&typeof o=="object"||typeof o=="function"}let src_url_equal_anchor;function src_url_equal(o,e){return o===e?!0:(src_url_equal_anchor||(src_url_equal_anchor=document.createElement("a")),src_url_equal_anchor.href=e,o===src_url_equal_anchor.href)}function is_empty(o){return Object.keys(o).length===0}function create_slot(o,e,n,r){if(o){const c=get_slot_context(o,e,n,r);return o[0](c)}}function get_slot_context(o,e,n,r){return o[1]&&r?assign(n.ctx.slice(),o[1](r(e))):n.ctx}function get_slot_changes(o,e,n,r){if(o[2]&&r){const c=o[2](r(n));if(e.dirty===void 0)return c;if(typeof c=="object"){const u=[],h=Math.max(e.dirty.length,c.length);for(let p=0;p32){const e=[],n=o.ctx.length/32;for(let r=0;rwindow.performance.now():()=>Date.now(),raf=is_client?o=>requestAnimationFrame(o):noop;const tasks=new Set;function run_tasks(o){tasks.forEach(e=>{e.c(o)||(tasks.delete(e),e.f())}),tasks.size!==0&&raf(run_tasks)}function loop(o){let e;return tasks.size===0&&raf(run_tasks),{promise:new Promise(n=>{tasks.add(e={c:o,f:n})}),abort(){tasks.delete(e)}}}const globals=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function append(o,e){o.appendChild(e)}function get_root_for_style(o){if(!o)return document;const e=o.getRootNode?o.getRootNode():o.ownerDocument;return e&&e.host?e:o.ownerDocument}function append_empty_stylesheet(o){const e=element("style");return e.textContent="/* empty */",append_stylesheet(get_root_for_style(o),e),e.sheet}function append_stylesheet(o,e){return append(o.head||o,e),e.sheet}function insert$1(o,e,n){o.insertBefore(e,n||null)}function detach(o){o.parentNode&&o.parentNode.removeChild(o)}function destroy_each(o,e){for(let n=0;no.removeEventListener(e,n,r)}function prevent_default(o){return function(e){return e.preventDefault(),o.call(this,e)}}function attr(o,e,n){n==null?o.removeAttribute(e):o.getAttribute(e)!==n&&o.setAttribute(e,n)}function init_binding_group(o){let e;return{p(...n){e=n,e.forEach(r=>o.push(r))},r(){e.forEach(n=>o.splice(o.indexOf(n),1))}}}function to_number(o){return o===""?null:+o}function children(o){return Array.from(o.childNodes)}function set_data(o,e){e=""+e,o.data!==e&&(o.data=e)}function set_input_value(o,e){o.value=e??""}function set_style(o,e,n,r){n==null?o.style.removeProperty(e):o.style.setProperty(e,n,r?"important":"")}function select_option(o,e,n){for(let r=0;r>>0}function create_style_information(o,e){const n={stylesheet:append_empty_stylesheet(e),rules:{}};return managed_styles.set(o,n),n}function create_rule(o,e,n,r,c,u,h,p=0){const b=16.666/r;let y=`{ -`;for(let W=0;W<=1;W+=b){const J=e+(n-e)*u(W);y+=W*100+`%{${h(J,1-J)}} -`}const k=y+`100% {${h(n,1-n)}} -}`,A=`__svelte_${hash$1(k)}_${p}`,R=get_root_for_style(o),{stylesheet:N,rules:F}=managed_styles.get(R)||create_style_information(R,o);F[A]||(F[A]=!0,N.insertRule(`@keyframes ${A} ${k}`,N.cssRules.length));const V=o.style.animation||"";return o.style.animation=`${V?`${V}, `:""}${A} ${r}ms linear ${c}ms 1 both`,active+=1,A}function delete_rule(o,e){const n=(o.style.animation||"").split(", "),r=n.filter(e?u=>u.indexOf(e)<0:u=>u.indexOf("__svelte")===-1),c=n.length-r.length;c&&(o.style.animation=r.join(", "),active-=c,active||clear_rules())}function clear_rules(){raf(()=>{active||(managed_styles.forEach(o=>{const{ownerNode:e}=o.stylesheet;e&&detach(e)}),managed_styles.clear())})}let current_component;function set_current_component(o){current_component=o}function get_current_component(){if(!current_component)throw new Error("Function called outside component initialization");return current_component}function onMount(o){get_current_component().$$.on_mount.push(o)}function afterUpdate(o){get_current_component().$$.after_update.push(o)}function onDestroy(o){get_current_component().$$.on_destroy.push(o)}function createEventDispatcher(){const o=get_current_component();return(e,n,{cancelable:r=!1}={})=>{const c=o.$$.callbacks[e];if(c){const u=custom_event(e,n,{cancelable:r});return c.slice().forEach(h=>{h.call(o,u)}),!u.defaultPrevented}return!0}}function setContext(o,e){return get_current_component().$$.context.set(o,e),e}function getContext$1(o){return get_current_component().$$.context.get(o)}function bubble(o,e){const n=o.$$.callbacks[e.type];n&&n.slice().forEach(r=>r.call(this,e))}const dirty_components=[],binding_callbacks=[];let render_callbacks=[];const flush_callbacks=[],resolved_promise=Promise.resolve();let update_scheduled=!1;function schedule_update(){update_scheduled||(update_scheduled=!0,resolved_promise.then(flush))}function add_render_callback(o){render_callbacks.push(o)}function add_flush_callback(o){flush_callbacks.push(o)}const seen_callbacks=new Set;let flushidx=0;function flush(){if(flushidx!==0)return;const o=current_component;do{try{for(;flushidxo.indexOf(r)===-1?e.push(r):n.push(r)),n.forEach(r=>r()),render_callbacks=e}let promise;function wait(){return promise||(promise=Promise.resolve(),promise.then(()=>{promise=null})),promise}function dispatch(o,e,n){o.dispatchEvent(custom_event(`${e?"intro":"outro"}${n}`))}const outroing=new Set;let outros;function group_outros(){outros={r:0,c:[],p:outros}}function check_outros(){outros.r||run_all(outros.c),outros=outros.p}function transition_in(o,e){o&&o.i&&(outroing.delete(o),o.i(e))}function transition_out(o,e,n,r){if(o&&o.o){if(outroing.has(o))return;outroing.add(o),outros.c.push(()=>{outroing.delete(o),r&&(n&&o.d(1),r())}),o.o(e)}else r&&r()}const null_transition={duration:0};function create_bidirectional_transition(o,e,n,r){let u=e(o,n,{direction:"both"}),h=r?0:1,p=null,b=null,y=null,k;function A(){y&&delete_rule(o,y)}function R(F,V){const W=F.b-h;return V*=Math.abs(W),{a:h,b:F.b,d:W,duration:V,start:F.start,end:F.start+V,group:F.group}}function N(F){const{delay:V=0,duration:W=300,easing:J=identity,tick:te=noop,css:j}=u||null_transition,ae={start:now()+V,b:F};F||(ae.group=outros,outros.r+=1),"inert"in o&&(F?k!==void 0&&(o.inert=k):(k=o.inert,o.inert=!0)),p||b?b=ae:(j&&(A(),y=create_rule(o,h,F,W,V,J,j)),F&&te(0,1),p=R(ae,W),add_render_callback(()=>dispatch(o,F,"start")),loop(fe=>{if(b&&fe>b.start&&(p=R(b,W),b=null,dispatch(o,p.b,"start"),j&&(A(),y=create_rule(o,h,p.b,p.duration,0,J,u.css))),p){if(fe>=p.end)te(h=p.b,1-h),dispatch(o,p.b,"end"),b||(p.b?A():--p.group.r||run_all(p.group.c)),p=null;else if(fe>=p.start){const _e=fe-p.start;h=p.a+p.d*J(_e/p.duration),te(h,1-h)}}return!!(p||b)}))}return{run(F){is_function(u)?wait().then(()=>{u=u({direction:F?"in":"out"}),N(F)}):N(F)},end(){A(),p=b=null}}}function ensure_array_like(o){return(o==null?void 0:o.length)!==void 0?o:Array.from(o)}function destroy_block(o,e){o.d(1),e.delete(o.key)}function outro_and_destroy_block(o,e){transition_out(o,1,1,()=>{e.delete(o.key)})}function update_keyed_each(o,e,n,r,c,u,h,p,b,y,k,A){let R=o.length,N=u.length,F=R;const V={};for(;F--;)V[o[F].key]=F;const W=[],J=new Map,te=new Map,j=[];for(F=N;F--;){const ne=A(c,u,F),Se=n(ne);let De=h.get(Se);De?j.push(()=>De.p(ne,e)):(De=y(Se,ne),De.c()),J.set(Se,W[F]=De),Se in V&&te.set(Se,Math.abs(F-V[Se]))}const ae=new Set,fe=new Set;function _e(ne){transition_in(ne,1),ne.m(p,k),h.set(ne.key,ne),k=ne.first,N--}for(;R&&N;){const ne=W[N-1],Se=o[R-1],De=ne.key,Be=Se.key;ne===Se?(k=ne.first,R--,N--):J.has(Be)?!h.has(De)||ae.has(De)?_e(ne):fe.has(Be)?R--:te.get(De)>te.get(Be)?(fe.add(De),_e(ne)):(ae.add(Be),R--):(b(Se,h),R--)}for(;R--;){const ne=o[R];J.has(ne.key)||b(ne,h)}for(;N;)_e(W[N-1]);return run_all(j),W}function get_spread_update(o,e){const n={},r={},c={$$scope:1};let u=o.length;for(;u--;){const h=o[u],p=e[u];if(p){for(const b in h)b in p||(r[b]=1);for(const b in p)c[b]||(n[b]=p[b],c[b]=1);o[u]=p}else for(const b in h)c[b]=1}for(const h in r)h in n||(n[h]=void 0);return n}function get_spread_object(o){return typeof o=="object"&&o!==null?o:{}}function bind(o,e,n){const r=o.$$.props[e];r!==void 0&&(o.$$.bound[r]=n,n(o.$$.ctx[r]))}function create_component(o){o&&o.c()}function mount_component(o,e,n){const{fragment:r,after_update:c}=o.$$;r&&r.m(e,n),add_render_callback(()=>{const u=o.$$.on_mount.map(run).filter(is_function);o.$$.on_destroy?o.$$.on_destroy.push(...u):run_all(u),o.$$.on_mount=[]}),c.forEach(add_render_callback)}function destroy_component(o,e){const n=o.$$;n.fragment!==null&&(flush_render_callbacks(n.after_update),run_all(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function make_dirty(o,e){o.$$.dirty[0]===-1&&(dirty_components.push(o),schedule_update(),o.$$.dirty.fill(0)),o.$$.dirty[e/31|0]|=1<{const F=N.length?N[0]:R;return y.ctx&&c(y.ctx[A],y.ctx[A]=F)&&(!y.skip_bound&&y.bound[A]&&y.bound[A](F),k&&make_dirty(o,A)),R}):[],y.update(),k=!0,run_all(y.before_update),y.fragment=r?r(y.ctx):!1,e.target){if(e.hydrate){const A=children(e.target);y.fragment&&y.fragment.l(A),A.forEach(detach)}else y.fragment&&y.fragment.c();e.intro&&transition_in(o.$$.fragment),mount_component(o,e.target,e.anchor),flush()}set_current_component(b)}class SvelteComponent{constructor(){cU(this,"$$");cU(this,"$$set")}$destroy(){destroy_component(this,1),this.$destroy=noop}$on(e,n){if(!is_function(n))return noop;const r=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return r.push(n),()=>{const c=r.indexOf(n);c!==-1&&r.splice(c,1)}}$set(e){this.$$set&&!is_empty(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const PUBLIC_VERSION="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(PUBLIC_VERSION);function create_if_block$W(o){let e,n,r,c,u;return{c(){e=element("div"),n=element("div"),n.textContent="Submission Errors",r=space$3(),c=element("div"),u=text(o[0]),attr(n,"class","title"),attr(c,"class","content"),attr(e,"class","notice notice-error"),attr(e,"role","alert")},m(h,p){insert$1(h,e,p),append(e,n),append(e,r),append(e,c),append(c,u)},p(h,p){p&1&&set_data(u,h[0])},d(h){h&&detach(e)}}}function create_fragment$1r(o){let e,n=o[0]&&create_if_block$W(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,[c]){r[0]?n?n.p(r,c):(n=create_if_block$W(r),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},i:noop,o:noop,d(r){r&&detach(e),n&&n.d(r)}}}function instance$1r(o,e,n){let{message:r=""}=e;return o.$$set=c=>{"message"in c&&n(0,r=c.message)},[r]}class ErrorAlert extends SvelteComponent{constructor(e){super(),init(this,e,instance$1r,create_fragment$1r,safe_not_equal,{message:0})}}function create_fragment$1q(o){let e,n,r,c;return{c(){e=element("button"),n=element("span"),r=space$3(),c=text(o[0]),attr(n,"class","spinner-border spinner-border-sm"),attr(n,"role","status"),attr(n,"aria-hidden","true"),attr(e,"type","submit"),attr(e,"class","button secondary btn-spinner"),e.disabled=o[1]},m(u,h){insert$1(u,e,h),append(e,n),append(e,r),append(e,c)},p(u,[h]){h&1&&set_data(c,u[0]),h&2&&(e.disabled=u[1])},i:noop,o:noop,d(u){u&&detach(e)}}}function instance$1q(o,e,n){let{label:r=""}=e,{disabled:c=!1}=e;return o.$$set=u=>{"label"in u&&n(0,r=u.label),"disabled"in u&&n(1,c=u.disabled)},[r,c]}class SpinnerButton extends SvelteComponent{constructor(e){super(),init(this,e,instance$1q,create_fragment$1q,safe_not_equal,{label:0,disabled:1})}}function create_fragment$1p(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j;return n=new ErrorAlert({props:{message:o[2]}}),W=new SpinnerButton({props:{label:"Register"}}),{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),c=element("form"),u=element("div"),h=element("label"),h.textContent="Name",p=space$3(),b=element("input"),y=space$3(),k=element("div"),A=element("label"),A.textContent="Email address",R=space$3(),N=element("input"),F=space$3(),V=element("div"),create_component(W.$$.fragment),attr(h,"for","name"),attr(h,"class","form-label"),attr(b,"type","text"),attr(b,"class","form-control"),attr(b,"id","name"),attr(u,"class","mb-3"),attr(A,"for","email"),attr(A,"class","form-label"),attr(N,"type","email"),attr(N,"class","form-control"),attr(N,"id","email"),attr(k,"class","mb-3"),attr(V,"class","text-center mt-5 d-block"),attr(e,"class","wrapper-tiny")},m(ae,fe){insert$1(ae,e,fe),mount_component(n,e,null),append(e,r),append(e,c),append(c,u),append(u,h),append(u,p),append(u,b),set_input_value(b,o[1]),append(c,y),append(c,k),append(k,A),append(k,R),append(k,N),set_input_value(N,o[0]),append(c,F),append(c,V),mount_component(W,V,null),J=!0,te||(j=[listen(b,"input",o[4]),listen(N,"input",o[5]),listen(c,"submit",o[3])],te=!0)},p(ae,[fe]){const _e={};fe&4&&(_e.message=ae[2]),n.$set(_e),fe&2&&b.value!==ae[1]&&set_input_value(b,ae[1]),fe&1&&N.value!==ae[0]&&set_input_value(N,ae[0])},i(ae){J||(transition_in(n.$$.fragment,ae),transition_in(W.$$.fragment,ae),J=!0)},o(ae){transition_out(n.$$.fragment,ae),transition_out(W.$$.fragment,ae),J=!1},d(ae){ae&&detach(e),destroy_component(n),destroy_component(W),te=!1,run_all(j)}}}function instance$1p(o,e,n){const r=getContext$1("channel");let c="",{email:u=""}=e,h="";function p(k){k.preventDefault(),n(2,h=""),axios.post(r.lucentUrl+"/register",{name:c,email:u}).then(()=>{window.location=r.lucentUrl+"/login"}).catch(A=>{var R;n(2,h=(R=A.response)==null?void 0:R.data.error),console.log({errorMessage:h})})}function b(){c=this.value,n(1,c)}function y(){u=this.value,n(0,u)}return o.$$set=k=>{"email"in k&&n(0,u=k.email)},[u,c,h,p,b,y]}class Register extends SvelteComponent{constructor(e){super(),init(this,e,instance$1p,create_fragment$1p,safe_not_equal,{email:0})}}function create_else_block$n(o){let e,n,r,c,u,h,p,b,y,k,A;return b=new SpinnerButton({props:{label:"Login"}}),{c(){e=element("form"),n=element("div"),r=element("label"),r.textContent="Email address",c=space$3(),u=element("input"),h=space$3(),p=element("div"),create_component(b.$$.fragment),attr(r,"for","emailaddress"),attr(r,"class","form-label"),attr(u,"type","email"),attr(u,"class","form-control"),attr(u,"id","emailaddress"),u.required=!0,attr(n,"class","mb-3"),attr(p,"class","text-center mt-5 d-block")},m(R,N){insert$1(R,e,N),append(e,n),append(n,r),append(n,c),append(n,u),set_input_value(u,o[0]),append(e,h),append(e,p),mount_component(b,p,null),y=!0,k||(A=[listen(u,"input",o[3]),listen(e,"submit",o[2])],k=!0)},p(R,N){N&1&&u.value!==R[0]&&set_input_value(u,R[0])},i(R){y||(transition_in(b.$$.fragment,R),y=!0)},o(R){transition_out(b.$$.fragment,R),y=!1},d(R){R&&detach(e),destroy_component(b),k=!1,run_all(A)}}}function create_if_block$V(o){let e,n;return{c(){e=element("div"),n=text(o[1]),attr(e,"class","alert alert-info"),attr(e,"role","alert")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&2&&set_data(n,r[1])},i:noop,o:noop,d(r){r&&detach(e)}}}function create_fragment$1o(o){let e,n,r,c;const u=[create_if_block$V,create_else_block$n],h=[];function p(b,y){return b[1]?0:1}return n=p(o),r=h[n]=u[n](o),{c(){e=element("div"),r.c(),attr(e,"class","wrapper-tiny")},m(b,y){insert$1(b,e,y),h[n].m(e,null),c=!0},p(b,[y]){let k=n;n=p(b),n===k?h[n].p(b,y):(group_outros(),transition_out(h[k],1,1,()=>{h[k]=null}),check_outros(),r=h[n],r?r.p(b,y):(r=h[n]=u[n](b),r.c()),transition_in(r,1),r.m(e,null))},i(b){c||(transition_in(r),c=!0)},o(b){transition_out(r),c=!1},d(b){b&&detach(e),h[n].d()}}}function instance$1o(o,e,n){const r=getContext$1("channel");let c="",u="";function h(b){b.preventDefault(),axios.post(r.lucentUrl+"/login",{email:c}).then(y=>{console.log(y),n(1,u="You will receive an email with a login link")}).catch(y=>{})}function p(){c=this.value,n(0,c)}return[c,u,h,p]}class Login extends SvelteComponent{constructor(e){super(),init(this,e,instance$1o,create_fragment$1o,safe_not_equal,{})}}function cubicOut(o){const e=o-1;return e*e*e+1}function fly(o,{delay:e=0,duration:n=400,easing:r=cubicOut,x:c=0,y:u=0,opacity:h=0}={}){const p=getComputedStyle(o),b=+p.opacity,y=p.transform==="none"?"":p.transform,k=b*(1-h),[A,R]=split_css_unit(c),[N,F]=split_css_unit(u);return{delay:e,duration:n,easing:r,css:(V,W)=>` - transform: ${y} translate(${(1-V)*A}${R}, ${(1-V)*N}${F}); - opacity: ${b-k*W}`}}function create_if_block$U(o){let e,n,r,c,u,h,p;return{c(){e=element("div"),n=element("div"),n.textContent="Success",r=space$3(),c=element("div"),u=text(o[1]),attr(n,"class","title"),attr(c,"class","content"),attr(e,"class","notice notice-success"),attr(e,"role","alert")},m(b,y){insert$1(b,e,y),append(e,n),append(e,r),append(e,c),append(c,u),p=!0},p(b,y){(!p||y&2)&&set_data(u,b[1])},i(b){p||(b&&add_render_callback(()=>{p&&(h||(h=create_bidirectional_transition(e,fly,{duration:500},!0)),h.run(1))}),p=!0)},o(b){b&&(h||(h=create_bidirectional_transition(e,fly,{duration:500},!1)),h.run(0)),p=!1},d(b){b&&detach(e),b&&h&&h.end()}}}function create_fragment$1n(o){let e,n=o[0]&&create_if_block$U(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,[c]){r[0]?n?(n.p(r,c),c&1&&transition_in(n,1)):(n=create_if_block$U(r),n.c(),transition_in(n,1),n.m(e.parentNode,e)):n&&(group_outros(),transition_out(n,1,1,()=>{n=null}),check_outros())},i(r){transition_in(n)},o(r){transition_out(n)},d(r){r&&detach(e),n&&n.d(r)}}}function instance$1n(o,e,n){let r,c;function u(h="Saved"){n(1,r=h),n(0,c=!0),setTimeout(function(){n(0,c=!1)},2e3)}return n(1,r="Saved"),n(0,c=!1),[c,r,u]}class SuccessAlert extends SvelteComponent{constructor(e){super(),init(this,e,instance$1n,create_fragment$1n,safe_not_equal,{show:2})}get show(){return this.$$.ctx[2]}}function create_fragment$1m(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V={};return e=new SuccessAlert({props:V}),o[4](e),A=new SpinnerButton({props:{label:"Enter"}}),{c(){create_component(e.$$.fragment),n=space$3(),r=element("div"),c=element("form"),u=element("div"),h=element("h3"),p=text("Login as "),b=text(o[0]),y=space$3(),k=element("div"),create_component(A.$$.fragment),attr(u,"class","mb-3 text-center"),attr(k,"class","text-center mt-5 d-block"),attr(r,"class","wrapper-tiny")},m(W,J){mount_component(e,W,J),insert$1(W,n,J),insert$1(W,r,J),append(r,c),append(c,u),append(u,h),append(h,p),append(h,b),append(c,y),append(c,k),mount_component(A,k,null),R=!0,N||(F=listen(c,"submit",o[2]),N=!0)},p(W,[J]){const te={};e.$set(te),(!R||J&1)&&set_data(b,W[0])},i(W){R||(transition_in(e.$$.fragment,W),transition_in(A.$$.fragment,W),R=!0)},o(W){transition_out(e.$$.fragment,W),transition_out(A.$$.fragment,W),R=!1},d(W){W&&(detach(n),detach(r)),o[4](null),destroy_component(e,W),destroy_component(A),N=!1,F()}}}function instance$1m(o,e,n){const r=getContext$1("channel");let{email:c}=e,{token:u}=e,h;function p(y){y.preventDefault(),axios.post(r.lucentUrl+"/verify",{email:c,token:u}).then(k=>{window.location=r.lucentUrl}).catch(k=>{})}function b(y){binding_callbacks[y?"unshift":"push"](()=>{h=y,n(1,h)})}return o.$$set=y=>{"email"in y&&n(0,c=y.email),"token"in y&&n(3,u=y.token)},[c,h,p,u,b]}class Verify extends SvelteComponent{constructor(e){super(),init(this,e,instance$1m,create_fragment$1m,safe_not_equal,{email:0,token:3})}}function create_fragment$1l(o){let e,n,r;return{c(){e=element("div"),n=element("div"),r=text(o[2]),attr(n,"class","avatar__letters"),attr(e,"class","avatar"),attr(e,"title",o[0]),set_style(e,"background-color",o[3][o[4]]),set_style(e,"height",o[1]+"px"),set_style(e,"width",o[1]+"px"),set_style(e,"font-size",o[1]/2+"px")},m(c,u){insert$1(c,e,u),append(e,n),append(n,r)},p(c,[u]){u&4&&set_data(r,c[2]),u&1&&attr(e,"title",c[0]),u&2&&set_style(e,"height",c[1]+"px"),u&2&&set_style(e,"width",c[1]+"px"),u&2&&set_style(e,"font-size",c[1]/2+"px")},i:noop,o:noop,d(c){c&&detach(e)}}}function instance$1l(o,e,n){let{name:r}=e,{side:c=48}=e;const u=["#00AA55","#009FD4","#B381B3","#939393","#E3BC00","#D47500","#DC2A2A","#3ede91","#377dd4","#0256b0","#053d82","#3d026e","#b378e3","#c4065c","#543208","#d97811","#0c6b40"];let h="";r.split(" ").length>1?h=r.split(" ")[0].charAt(0).toUpperCase()+r.split(" ")[1].charAt(0).toUpperCase():h=r.split(" ")[0].charAt(0).toUpperCase()+r.split(" ")[0].charAt(1).toUpperCase();let b=(r.charCodeAt(1)+r.length)%19;return o.$$set=y=>{"name"in y&&n(0,r=y.name),"side"in y&&n(1,c=y.side)},[r,c,h,u,b]}class Avatar extends SvelteComponent{constructor(e){super(),init(this,e,instance$1l,create_fragment$1l,safe_not_equal,{name:0,side:1})}}function create_fragment$1k(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae,fe,_e,ne,Se,De,Be;n=new ErrorAlert({props:{message:o[2]}});let Te={};return c=new SuccessAlert({props:Te}),o[8](c),p=new Avatar({props:{name:o[4].name}}),N=new SpinnerButton({props:{label:"Update Name"}}),j=new SpinnerButton({props:{label:"Update Email"}}),{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),create_component(c.$$.fragment),u=space$3(),h=element("h3"),create_component(p.$$.fragment),b=space$3(),y=element("form"),k=element("div"),A=element("input"),R=space$3(),create_component(N.$$.fragment),F=space$3(),V=element("form"),W=element("div"),J=element("input"),te=space$3(),create_component(j.$$.fragment),ae=space$3(),fe=element("div"),_e=element("a"),ne=text(`Logout from this - device`),attr(h,"class","header-small mb-5"),attr(A,"type","text"),attr(A,"class","form-control mb-3"),attr(A,"placeholder","Name"),A.required=!0,attr(k,"class","input-group mb-5"),attr(J,"type","email"),attr(J,"class","form-control mb-3"),attr(J,"placeholder","Email"),J.required=!0,attr(W,"class","input-group mb-5"),attr(_e,"class","list-group-item list-group-item-action"),attr(_e,"href",o[5].lucentUrl+"/logout"),attr(fe,"class","list-group"),attr(e,"class","wrapper-tiny")},m(Oe,yt){insert$1(Oe,e,yt),mount_component(n,e,null),append(e,r),mount_component(c,e,null),append(e,u),append(e,h),mount_component(p,h,null),append(e,b),append(e,y),append(y,k),append(k,A),set_input_value(A,o[0]),append(k,R),mount_component(N,k,null),append(e,F),append(e,V),append(V,W),append(W,J),set_input_value(J,o[1]),append(W,te),mount_component(j,W,null),append(e,ae),append(e,fe),append(fe,_e),append(_e,ne),Se=!0,De||(Be=[listen(A,"input",o[9]),listen(y,"submit",o[6]),listen(J,"input",o[10]),listen(V,"submit",o[7])],De=!0)},p(Oe,[yt]){const Tt={};yt&4&&(Tt.message=Oe[2]),n.$set(Tt);const St={};c.$set(St),yt&1&&A.value!==Oe[0]&&set_input_value(A,Oe[0]),yt&2&&J.value!==Oe[1]&&set_input_value(J,Oe[1])},i(Oe){Se||(transition_in(n.$$.fragment,Oe),transition_in(c.$$.fragment,Oe),transition_in(p.$$.fragment,Oe),transition_in(N.$$.fragment,Oe),transition_in(j.$$.fragment,Oe),Se=!0)},o(Oe){transition_out(n.$$.fragment,Oe),transition_out(c.$$.fragment,Oe),transition_out(p.$$.fragment,Oe),transition_out(N.$$.fragment,Oe),transition_out(j.$$.fragment,Oe),Se=!1},d(Oe){Oe&&detach(e),destroy_component(n),o[8](null),destroy_component(c),destroy_component(p),destroy_component(N),destroy_component(j),De=!1,run_all(Be)}}}function instance$1k(o,e,n){const r=getContext$1("user"),c=getContext$1("channel");let u=r.name,h=r.email,p="",b;function y(F){F.preventDefault(),n(2,p=""),axios.post(c.lucentUrl+"/account/update-name",{name:u}).then(V=>{b.show()}).catch(V=>{var W;n(2,p=(W=V.response)==null?void 0:W.data.error),console.log({errorMessage:p})})}function k(F){F.preventDefault(),n(2,p=""),axios.post(c.lucentUrl+"/account/update-email",{email:h}).then(V=>{b.show()}).catch(V=>{var W;n(2,p=(W=V.response)==null?void 0:W.data.error),console.log({errorMessage:p})})}function A(F){binding_callbacks[F?"unshift":"push"](()=>{b=F,n(3,b)})}function R(){u=this.value,n(0,u)}function N(){h=this.value,n(1,h)}return[u,h,p,b,r,c,y,k,A,R,N]}class Profile extends SvelteComponent{constructor(e){super(),init(this,e,instance$1k,create_fragment$1k,safe_not_equal,{})}}function create_fragment$1j(o){let e,n,r,c=o[3].name+"",u,h,p,b,y,k;const A=[{title:o[0]},o[2]];var R=o[4][o[1]];function N(F,V){let W={};for(let J=0;J{destroy_component(W,1)}),check_outros()}R?(y=construct_svelte_component(R,N(F,V)),create_component(y.$$.fragment),transition_in(y.$$.fragment,1),mount_component(y,b,null)):y=null}else if(R){const W=V&5?get_spread_update(A,[V&1&&{title:F[0]},V&4&&get_spread_object(F[2])]):{};y.$set(W)}},i(F){k||(y&&transition_in(y.$$.fragment,F),k=!0)},o(F){y&&transition_out(y.$$.fragment,F),k=!1},d(F){F&&(detach(e),detach(p),detach(b)),y&&destroy_component(y)}}}function instance$1j(o,e,n){const r={register:Register,login:Login,verify:Verify,profile:Profile};let{title:c}=e,{view:u}=e,{user:h}=e,{data:p}=e,{channel:b}=e;return setContext("channel",b),setContext("user",h),o.$$set=y=>{"title"in y&&n(0,c=y.title),"view"in y&&n(1,u=y.view),"user"in y&&n(5,h=y.user),"data"in y&&n(2,p=y.data),"channel"in y&&n(3,b=y.channel)},[c,u,p,b,r,h]}class Account extends SvelteComponent{constructor(e){super(),init(this,e,instance$1j,create_fragment$1j,safe_not_equal,{title:0,view:1,user:5,data:2,channel:3})}}function toDate(o){const e=Object.prototype.toString.call(o);return o instanceof Date||typeof o=="object"&&e==="[object Date]"?new o.constructor(+o):typeof o=="number"||e==="[object Number]"||typeof o=="string"||e==="[object String]"?new Date(o):new Date(NaN)}function constructFrom(o,e){return o instanceof Date?new o.constructor(e):new Date(e)}const millisecondsInWeek=6048e5,millisecondsInDay=864e5,minutesInMonth=43200,minutesInDay=1440;let defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(o,e){var p,b,y,k;const n=getDefaultOptions(),r=(e==null?void 0:e.weekStartsOn)??((b=(p=e==null?void 0:e.locale)==null?void 0:p.options)==null?void 0:b.weekStartsOn)??n.weekStartsOn??((k=(y=n.locale)==null?void 0:y.options)==null?void 0:k.weekStartsOn)??0,c=toDate(o),u=c.getDay(),h=(u=c.getTime()?n+1:e.getTime()>=h.getTime()?n:n-1}function startOfDay(o){const e=toDate(o);return e.setHours(0,0,0,0),e}function getTimezoneOffsetInMilliseconds(o){const e=toDate(o),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),+o-+n}function differenceInCalendarDays(o,e){const n=startOfDay(o),r=startOfDay(e),c=+n-getTimezoneOffsetInMilliseconds(n),u=+r-getTimezoneOffsetInMilliseconds(r);return Math.round((c-u)/millisecondsInDay)}function startOfISOWeekYear(o){const e=getISOWeekYear(o),n=constructFrom(o,0);return n.setFullYear(e,0,4),n.setHours(0,0,0,0),startOfISOWeek(n)}function compareAsc(o,e){const n=toDate(o),r=toDate(e),c=n.getTime()-r.getTime();return c<0?-1:c>0?1:c}function constructNow(o){return constructFrom(o,Date.now())}function isDate(o){return o instanceof Date||typeof o=="object"&&Object.prototype.toString.call(o)==="[object Date]"}function isValid(o){if(!isDate(o)&&typeof o!="number")return!1;const e=toDate(o);return!isNaN(Number(e))}function differenceInCalendarMonths(o,e){const n=toDate(o),r=toDate(e),c=n.getFullYear()-r.getFullYear(),u=n.getMonth()-r.getMonth();return c*12+u}function getRoundingMethod(o){return e=>{const r=(o?Math[o]:Math.trunc)(e);return r===0?0:r}}function differenceInMilliseconds(o,e){return+toDate(o)-+toDate(e)}function endOfDay(o){const e=toDate(o);return e.setHours(23,59,59,999),e}function endOfMonth(o){const e=toDate(o),n=e.getMonth();return e.setFullYear(e.getFullYear(),n+1,0),e.setHours(23,59,59,999),e}function isLastDayOfMonth(o){const e=toDate(o);return+endOfDay(e)==+endOfMonth(e)}function differenceInMonths(o,e){const n=toDate(o),r=toDate(e),c=compareAsc(n,r),u=Math.abs(differenceInCalendarMonths(n,r));let h;if(u<1)h=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-c*u);let p=compareAsc(n,r)===-c;isLastDayOfMonth(toDate(o))&&u===1&&compareAsc(o,r)===1&&(p=!1),h=c*(u-Number(p))}return h===0?0:h}function differenceInSeconds(o,e,n){const r=differenceInMilliseconds(o,e)/1e3;return getRoundingMethod(n==null?void 0:n.roundingMethod)(r)}function startOfYear(o){const e=toDate(o),n=constructFrom(o,0);return n.setFullYear(e.getFullYear(),0,1),n.setHours(0,0,0,0),n}const formatDistanceLocale={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},formatDistance$1=(o,e,n)=>{let r;const c=formatDistanceLocale[o];return typeof c=="string"?r=c:e===1?r=c.one:r=c.other.replace("{{count}}",e.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function buildFormatLongFn(o){return(e={})=>{const n=e.width?String(e.width):o.defaultWidth;return o.formats[n]||o.formats[o.defaultWidth]}}const dateFormats={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},timeFormats={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},dateTimeFormats={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},formatLong={date:buildFormatLongFn({formats:dateFormats,defaultWidth:"full"}),time:buildFormatLongFn({formats:timeFormats,defaultWidth:"full"}),dateTime:buildFormatLongFn({formats:dateTimeFormats,defaultWidth:"full"})},formatRelativeLocale={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},formatRelative=(o,e,n,r)=>formatRelativeLocale[o];function buildLocalizeFn(o){return(e,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let c;if(r==="formatting"&&o.formattingValues){const h=o.defaultFormattingWidth||o.defaultWidth,p=n!=null&&n.width?String(n.width):h;c=o.formattingValues[p]||o.formattingValues[h]}else{const h=o.defaultWidth,p=n!=null&&n.width?String(n.width):o.defaultWidth;c=o.values[p]||o.values[h]}const u=o.argumentCallback?o.argumentCallback(e):e;return c[u]}}const eraValues={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},quarterValues={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},monthValues={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},dayValues={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriodValues={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},formattingDayPeriodValues={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},ordinalNumber=(o,e)=>{const n=Number(o),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},localize={ordinalNumber,era:buildLocalizeFn({values:eraValues,defaultWidth:"wide"}),quarter:buildLocalizeFn({values:quarterValues,defaultWidth:"wide",argumentCallback:o=>o-1}),month:buildLocalizeFn({values:monthValues,defaultWidth:"wide"}),day:buildLocalizeFn({values:dayValues,defaultWidth:"wide"}),dayPeriod:buildLocalizeFn({values:dayPeriodValues,defaultWidth:"wide",formattingValues:formattingDayPeriodValues,defaultFormattingWidth:"wide"})};function buildMatchFn(o){return(e,n={})=>{const r=n.width,c=r&&o.matchPatterns[r]||o.matchPatterns[o.defaultMatchWidth],u=e.match(c);if(!u)return null;const h=u[0],p=r&&o.parsePatterns[r]||o.parsePatterns[o.defaultParseWidth],b=Array.isArray(p)?findIndex(p,A=>A.test(h)):findKey(p,A=>A.test(h));let y;y=o.valueCallback?o.valueCallback(b):b,y=n.valueCallback?n.valueCallback(y):y;const k=e.slice(h.length);return{value:y,rest:k}}}function findKey(o,e){for(const n in o)if(Object.prototype.hasOwnProperty.call(o,n)&&e(o[n]))return n}function findIndex(o,e){for(let n=0;n{const r=e.match(o.matchPattern);if(!r)return null;const c=r[0],u=e.match(o.parsePattern);if(!u)return null;let h=o.valueCallback?o.valueCallback(u[0]):u[0];h=n.valueCallback?n.valueCallback(h):h;const p=e.slice(c.length);return{value:h,rest:p}}}const matchOrdinalNumberPattern=/^(\d+)(th|st|nd|rd)?/i,parseOrdinalNumberPattern=/\d+/i,matchEraPatterns={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},parseEraPatterns={any:[/^b/i,/^(a|c)/i]},matchQuarterPatterns={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},parseQuarterPatterns={any:[/1/i,/2/i,/3/i,/4/i]},matchMonthPatterns={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},parseMonthPatterns={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},matchDayPatterns={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},parseDayPatterns={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},matchDayPeriodPatterns={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},parseDayPeriodPatterns={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},match={ordinalNumber:buildMatchPatternFn({matchPattern:matchOrdinalNumberPattern,parsePattern:parseOrdinalNumberPattern,valueCallback:o=>parseInt(o,10)}),era:buildMatchFn({matchPatterns:matchEraPatterns,defaultMatchWidth:"wide",parsePatterns:parseEraPatterns,defaultParseWidth:"any"}),quarter:buildMatchFn({matchPatterns:matchQuarterPatterns,defaultMatchWidth:"wide",parsePatterns:parseQuarterPatterns,defaultParseWidth:"any",valueCallback:o=>o+1}),month:buildMatchFn({matchPatterns:matchMonthPatterns,defaultMatchWidth:"wide",parsePatterns:parseMonthPatterns,defaultParseWidth:"any"}),day:buildMatchFn({matchPatterns:matchDayPatterns,defaultMatchWidth:"wide",parsePatterns:parseDayPatterns,defaultParseWidth:"any"}),dayPeriod:buildMatchFn({matchPatterns:matchDayPeriodPatterns,defaultMatchWidth:"any",parsePatterns:parseDayPeriodPatterns,defaultParseWidth:"any"})},enUS={code:"en-US",formatDistance:formatDistance$1,formatLong,formatRelative,localize,match,options:{weekStartsOn:0,firstWeekContainsDate:1}};function getDayOfYear(o){const e=toDate(o);return differenceInCalendarDays(e,startOfYear(e))+1}function getISOWeek(o){const e=toDate(o),n=+startOfISOWeek(e)-+startOfISOWeekYear(e);return Math.round(n/millisecondsInWeek)+1}function getWeekYear(o,e){var k,A,R,N;const n=toDate(o),r=n.getFullYear(),c=getDefaultOptions(),u=(e==null?void 0:e.firstWeekContainsDate)??((A=(k=e==null?void 0:e.locale)==null?void 0:k.options)==null?void 0:A.firstWeekContainsDate)??c.firstWeekContainsDate??((N=(R=c.locale)==null?void 0:R.options)==null?void 0:N.firstWeekContainsDate)??1,h=constructFrom(o,0);h.setFullYear(r+1,0,u),h.setHours(0,0,0,0);const p=startOfWeek(h,e),b=constructFrom(o,0);b.setFullYear(r,0,u),b.setHours(0,0,0,0);const y=startOfWeek(b,e);return n.getTime()>=p.getTime()?r+1:n.getTime()>=y.getTime()?r:r-1}function startOfWeekYear(o,e){var p,b,y,k;const n=getDefaultOptions(),r=(e==null?void 0:e.firstWeekContainsDate)??((b=(p=e==null?void 0:e.locale)==null?void 0:p.options)==null?void 0:b.firstWeekContainsDate)??n.firstWeekContainsDate??((k=(y=n.locale)==null?void 0:y.options)==null?void 0:k.firstWeekContainsDate)??1,c=getWeekYear(o,e),u=constructFrom(o,0);return u.setFullYear(c,0,r),u.setHours(0,0,0,0),startOfWeek(u,e)}function getWeek(o,e){const n=toDate(o),r=+startOfWeek(n,e)-+startOfWeekYear(n,e);return Math.round(r/millisecondsInWeek)+1}function addLeadingZeros(o,e){const n=o<0?"-":"",r=Math.abs(o).toString().padStart(e,"0");return n+r}const lightFormatters={y(o,e){const n=o.getFullYear(),r=n>0?n:1-n;return addLeadingZeros(e==="yy"?r%100:r,e.length)},M(o,e){const n=o.getMonth();return e==="M"?String(n+1):addLeadingZeros(n+1,2)},d(o,e){return addLeadingZeros(o.getDate(),e.length)},a(o,e){const n=o.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(o,e){return addLeadingZeros(o.getHours()%12||12,e.length)},H(o,e){return addLeadingZeros(o.getHours(),e.length)},m(o,e){return addLeadingZeros(o.getMinutes(),e.length)},s(o,e){return addLeadingZeros(o.getSeconds(),e.length)},S(o,e){const n=e.length,r=o.getMilliseconds(),c=Math.trunc(r*Math.pow(10,n-3));return addLeadingZeros(c,e.length)}},dayPeriodEnum={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},formatters={G:function(o,e,n){const r=o.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(o,e,n){if(e==="yo"){const r=o.getFullYear(),c=r>0?r:1-r;return n.ordinalNumber(c,{unit:"year"})}return lightFormatters.y(o,e)},Y:function(o,e,n,r){const c=getWeekYear(o,r),u=c>0?c:1-c;if(e==="YY"){const h=u%100;return addLeadingZeros(h,2)}return e==="Yo"?n.ordinalNumber(u,{unit:"year"}):addLeadingZeros(u,e.length)},R:function(o,e){const n=getISOWeekYear(o);return addLeadingZeros(n,e.length)},u:function(o,e){const n=o.getFullYear();return addLeadingZeros(n,e.length)},Q:function(o,e,n){const r=Math.ceil((o.getMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return addLeadingZeros(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(o,e,n){const r=Math.ceil((o.getMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return addLeadingZeros(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(o,e,n){const r=o.getMonth();switch(e){case"M":case"MM":return lightFormatters.M(o,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(o,e,n){const r=o.getMonth();switch(e){case"L":return String(r+1);case"LL":return addLeadingZeros(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(o,e,n,r){const c=getWeek(o,r);return e==="wo"?n.ordinalNumber(c,{unit:"week"}):addLeadingZeros(c,e.length)},I:function(o,e,n){const r=getISOWeek(o);return e==="Io"?n.ordinalNumber(r,{unit:"week"}):addLeadingZeros(r,e.length)},d:function(o,e,n){return e==="do"?n.ordinalNumber(o.getDate(),{unit:"date"}):lightFormatters.d(o,e)},D:function(o,e,n){const r=getDayOfYear(o);return e==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):addLeadingZeros(r,e.length)},E:function(o,e,n){const r=o.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(o,e,n,r){const c=o.getDay(),u=(c-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(u);case"ee":return addLeadingZeros(u,2);case"eo":return n.ordinalNumber(u,{unit:"day"});case"eee":return n.day(c,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(c,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(c,{width:"short",context:"formatting"});case"eeee":default:return n.day(c,{width:"wide",context:"formatting"})}},c:function(o,e,n,r){const c=o.getDay(),u=(c-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(u);case"cc":return addLeadingZeros(u,e.length);case"co":return n.ordinalNumber(u,{unit:"day"});case"ccc":return n.day(c,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(c,{width:"narrow",context:"standalone"});case"cccccc":return n.day(c,{width:"short",context:"standalone"});case"cccc":default:return n.day(c,{width:"wide",context:"standalone"})}},i:function(o,e,n){const r=o.getDay(),c=r===0?7:r;switch(e){case"i":return String(c);case"ii":return addLeadingZeros(c,e.length);case"io":return n.ordinalNumber(c,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(o,e,n){const c=o.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(c,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(c,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(c,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(c,{width:"wide",context:"formatting"})}},b:function(o,e,n){const r=o.getHours();let c;switch(r===12?c=dayPeriodEnum.noon:r===0?c=dayPeriodEnum.midnight:c=r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(c,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(c,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(c,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(c,{width:"wide",context:"formatting"})}},B:function(o,e,n){const r=o.getHours();let c;switch(r>=17?c=dayPeriodEnum.evening:r>=12?c=dayPeriodEnum.afternoon:r>=4?c=dayPeriodEnum.morning:c=dayPeriodEnum.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(c,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(c,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(c,{width:"wide",context:"formatting"})}},h:function(o,e,n){if(e==="ho"){let r=o.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return lightFormatters.h(o,e)},H:function(o,e,n){return e==="Ho"?n.ordinalNumber(o.getHours(),{unit:"hour"}):lightFormatters.H(o,e)},K:function(o,e,n){const r=o.getHours()%12;return e==="Ko"?n.ordinalNumber(r,{unit:"hour"}):addLeadingZeros(r,e.length)},k:function(o,e,n){let r=o.getHours();return r===0&&(r=24),e==="ko"?n.ordinalNumber(r,{unit:"hour"}):addLeadingZeros(r,e.length)},m:function(o,e,n){return e==="mo"?n.ordinalNumber(o.getMinutes(),{unit:"minute"}):lightFormatters.m(o,e)},s:function(o,e,n){return e==="so"?n.ordinalNumber(o.getSeconds(),{unit:"second"}):lightFormatters.s(o,e)},S:function(o,e){return lightFormatters.S(o,e)},X:function(o,e,n){const r=o.getTimezoneOffset();if(r===0)return"Z";switch(e){case"X":return formatTimezoneWithOptionalMinutes(r);case"XXXX":case"XX":return formatTimezone(r);case"XXXXX":case"XXX":default:return formatTimezone(r,":")}},x:function(o,e,n){const r=o.getTimezoneOffset();switch(e){case"x":return formatTimezoneWithOptionalMinutes(r);case"xxxx":case"xx":return formatTimezone(r);case"xxxxx":case"xxx":default:return formatTimezone(r,":")}},O:function(o,e,n){const r=o.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+formatTimezoneShort(r,":");case"OOOO":default:return"GMT"+formatTimezone(r,":")}},z:function(o,e,n){const r=o.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+formatTimezoneShort(r,":");case"zzzz":default:return"GMT"+formatTimezone(r,":")}},t:function(o,e,n){const r=Math.trunc(o.getTime()/1e3);return addLeadingZeros(r,e.length)},T:function(o,e,n){const r=o.getTime();return addLeadingZeros(r,e.length)}};function formatTimezoneShort(o,e=""){const n=o>0?"-":"+",r=Math.abs(o),c=Math.trunc(r/60),u=r%60;return u===0?n+String(c):n+String(c)+e+addLeadingZeros(u,2)}function formatTimezoneWithOptionalMinutes(o,e){return o%60===0?(o>0?"-":"+")+addLeadingZeros(Math.abs(o)/60,2):formatTimezone(o,e)}function formatTimezone(o,e=""){const n=o>0?"-":"+",r=Math.abs(o),c=addLeadingZeros(Math.trunc(r/60),2),u=addLeadingZeros(r%60,2);return n+c+e+u}const dateLongFormatter=(o,e)=>{switch(o){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}},timeLongFormatter=(o,e)=>{switch(o){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}},dateTimeLongFormatter=(o,e)=>{const n=o.match(/(P+)(p+)?/)||[],r=n[1],c=n[2];if(!c)return dateLongFormatter(o,e);let u;switch(r){case"P":u=e.dateTime({width:"short"});break;case"PP":u=e.dateTime({width:"medium"});break;case"PPP":u=e.dateTime({width:"long"});break;case"PPPP":default:u=e.dateTime({width:"full"});break}return u.replace("{{date}}",dateLongFormatter(r,e)).replace("{{time}}",timeLongFormatter(c,e))},longFormatters={p:timeLongFormatter,P:dateTimeLongFormatter},dayOfYearTokenRE=/^D+$/,weekYearTokenRE=/^Y+$/,throwTokens=["D","DD","YY","YYYY"];function isProtectedDayOfYearToken(o){return dayOfYearTokenRE.test(o)}function isProtectedWeekYearToken(o){return weekYearTokenRE.test(o)}function warnOrThrowProtectedError(o,e,n){const r=message(o,e,n);if(console.warn(r),throwTokens.includes(o))throw new RangeError(r)}function message(o,e,n){const r=o[0]==="Y"?"years":"days of the month";return`Use \`${o.toLowerCase()}\` instead of \`${o}\` (in \`${e}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const formattingTokensRegExp=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,longFormattingTokensRegExp=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,escapedStringRegExp=/^'([^]*?)'?$/,doubleQuoteRegExp=/''/g,unescapedLatinCharacterRegExp=/[a-zA-Z]/;function format$1(o,e,n){var k,A,R,N;const r=getDefaultOptions(),c=r.locale??enUS,u=r.firstWeekContainsDate??((A=(k=r.locale)==null?void 0:k.options)==null?void 0:A.firstWeekContainsDate)??1,h=r.weekStartsOn??((N=(R=r.locale)==null?void 0:R.options)==null?void 0:N.weekStartsOn)??0,p=toDate(o);if(!isValid(p))throw new RangeError("Invalid time value");let b=e.match(longFormattingTokensRegExp).map(F=>{const V=F[0];if(V==="p"||V==="P"){const W=longFormatters[V];return W(F,c.formatLong)}return F}).join("").match(formattingTokensRegExp).map(F=>{if(F==="''")return{isToken:!1,value:"'"};const V=F[0];if(V==="'")return{isToken:!1,value:cleanEscapedString(F)};if(formatters[V])return{isToken:!0,value:F};if(V.match(unescapedLatinCharacterRegExp))throw new RangeError("Format string contains an unescaped latin alphabet character `"+V+"`");return{isToken:!1,value:F}});c.localize.preprocessor&&(b=c.localize.preprocessor(p,b));const y={firstWeekContainsDate:u,weekStartsOn:h,locale:c};return b.map(F=>{if(!F.isToken)return F.value;const V=F.value;(isProtectedWeekYearToken(V)||isProtectedDayOfYearToken(V))&&warnOrThrowProtectedError(V,e,String(o));const W=formatters[V[0]];return W(p,V,c.localize,y)}).join("")}function cleanEscapedString(o){const e=o.match(escapedStringRegExp);return e?e[1].replace(doubleQuoteRegExp,"'"):o}function formatDistance(o,e,n){const r=getDefaultOptions(),c=(n==null?void 0:n.locale)??r.locale??enUS,u=2520,h=compareAsc(o,e);if(isNaN(h))throw new RangeError("Invalid time value");const p=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:h});let b,y;h>0?(b=toDate(e),y=toDate(o)):(b=toDate(o),y=toDate(e));const k=differenceInSeconds(y,b),A=(getTimezoneOffsetInMilliseconds(y)-getTimezoneOffsetInMilliseconds(b))/1e3,R=Math.round((k-A)/60);let N;if(R<2)return n!=null&&n.includeSeconds?k<5?c.formatDistance("lessThanXSeconds",5,p):k<10?c.formatDistance("lessThanXSeconds",10,p):k<20?c.formatDistance("lessThanXSeconds",20,p):k<40?c.formatDistance("halfAMinute",0,p):k<60?c.formatDistance("lessThanXMinutes",1,p):c.formatDistance("xMinutes",1,p):R===0?c.formatDistance("lessThanXMinutes",1,p):c.formatDistance("xMinutes",R,p);if(R<45)return c.formatDistance("xMinutes",R,p);if(R<90)return c.formatDistance("aboutXHours",1,p);if(R{o&&!o.contains(n.target)&&!n.defaultPrevented&&o.dispatchEvent(new CustomEvent("click_outside",o))};return document.addEventListener("click",e,!0),{destroy(){document.removeEventListener("click",e,!0)}}}const get_button_slot_changes=o=>({}),get_button_slot_context=o=>({});function fallback_block(o){let e;return{c(){e=text("Dropdown")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_fragment$1i(o){let e,n,r,c,u,h,p,b;const y=o[6].button,k=create_slot(y,o,o[5],get_button_slot_context),A=k||fallback_block(),R=o[6].default,N=create_slot(R,o,o[5],null);return{c(){e=element("div"),n=element("button"),A&&A.c(),r=space$3(),c=element("div"),N&&N.c(),attr(n,"class","button dropdown-button"),attr(n,"type","button"),attr(n,"aria-expanded","false"),attr(c,"class",u="dropdown-menu hide orientation-"+o[0]),attr(e,"class","dropdown")},m(F,V){insert$1(F,e,V),append(e,n),A&&A.m(n,null),append(e,r),append(e,c),N&&N.m(c,null),o[7](c),h=!0,p||(b=[listen(n,"click",o[1]),action_destroyer(clickOutside.call(null,c)),listen(c,"click_outside",o[3])],p=!0)},p(F,[V]){k&&k.p&&(!h||V&32)&&update_slot_base(k,y,F,F[5],h?get_slot_changes(y,F[5],V,get_button_slot_changes):get_all_dirty_from_scope(F[5]),get_button_slot_context),N&&N.p&&(!h||V&32)&&update_slot_base(N,R,F,F[5],h?get_slot_changes(R,F[5],V,null):get_all_dirty_from_scope(F[5]),null),(!h||V&1&&u!==(u="dropdown-menu hide orientation-"+F[0]))&&attr(c,"class",u)},i(F){h||(transition_in(A,F),transition_in(N,F),h=!0)},o(F){transition_out(A,F),transition_out(N,F),h=!1},d(F){F&&detach(e),A&&A.d(F),N&&N.d(F),o[7](null),p=!1,run_all(b)}}}function instance$1i(o,e,n){let{$$slots:r={},$$scope:c}=e,u,{orientation:h="left"}=e;function p(){u.classList.remove("hide")}function b(){u.classList.add("hide")}function y(){u.classList.add("hide")}function k(A){binding_callbacks[A?"unshift":"push"](()=>{u=A,n(2,u)})}return o.$$set=A=>{"orientation"in A&&n(0,h=A.orientation),"$$scope"in A&&n(5,c=A.$$scope)},[h,p,u,y,b,c,r,k]}class Dropdown extends SvelteComponent{constructor(e){super(),init(this,e,instance$1i,create_fragment$1i,safe_not_equal,{orientation:0,open:1,close:4})}get open(){return this.$$.ctx[1]}get close(){return this.$$.ctx[4]}}function get_each_context$p(o,e,n){const r=o.slice();return r[7]=e[n],r}function get_each_context_1$8(o,e,n){const r=o.slice();return r[7]=e[n],r}function create_if_block_1$u(o){let e,n=o[7]+"",r,c,u;function h(...p){return o[4](o[7],...p)}return{c(){e=element("button"),r=text(n),attr(e,"class","dropdown-item button")},m(p,b){insert$1(p,e,b),append(e,r),c||(u=listen(e,"click",h),c=!0)},p(p,b){o=p,b&2&&n!==(n=o[7]+"")&&set_data(r,n)},d(p){p&&detach(e),c=!1,u()}}}function create_each_block_1$8(o){let e=o[0].roles.includes(o[7]),n,r=e&&create_if_block_1$u(o);return{c(){r&&r.c(),n=empty$1()},m(c,u){r&&r.m(c,u),insert$1(c,n,u)},p(c,u){u&3&&(e=c[0].roles.includes(c[7])),e?r?r.p(c,u):(r=create_if_block_1$u(c),r.c(),r.m(n.parentNode,n)):r&&(r.d(1),r=null)},d(c){c&&detach(n),r&&r.d(c)}}}function create_if_block$T(o){let e,n=o[7]+"",r,c,u,h;function p(...b){return o[5](o[7],...b)}return{c(){e=element("button"),r=text(n),c=space$3(),attr(e,"class","dropdown-item button")},m(b,y){insert$1(b,e,y),append(e,r),append(e,c),u||(h=listen(e,"click",p),u=!0)},p(b,y){o=b,y&2&&n!==(n=o[7]+"")&&set_data(r,n)},d(b){b&&detach(e),u=!1,h()}}}function create_each_block$p(o){let e=!o[0].roles.includes(o[7]),n,r=e&&create_if_block$T(o);return{c(){r&&r.c(),n=empty$1()},m(c,u){r&&r.m(c,u),insert$1(c,n,u)},p(c,u){u&3&&(e=!c[0].roles.includes(c[7])),e?r?r.p(c,u):(r=create_if_block$T(c),r.c(),r.m(n.parentNode,n)):r&&(r.d(1),r=null)},d(c){c&&detach(n),r&&r.d(c)}}}function create_default_slot$9(o){let e,n,r,c,u,h,p=ensure_array_like(o[1]),b=[];for(let A=0;A{J&&(W||(W=create_bidirectional_transition(e,fly,{duration:200},!0)),W.run(1))}),J=!0)},o(te){transition_out(r.$$.fragment,te),transition_out(V.$$.fragment,te),te&&(W||(W=create_bidirectional_transition(e,fly,{duration:200},!1)),W.run(0)),J=!1},d(te){te&&detach(e),destroy_component(r),destroy_component(V),te&&W&&W.end()}}}function instance$1h(o,e,n){const r=createEventDispatcher();let{member:c}=e,{roles:u}=e;function h(k,A){k.preventDefault();let R=c.roles.filter(N=>N!==A);r("update",{user:c.id,roles:R})}function p(k,A){k.preventDefault();let R=[...c.roles,A];console.log(c.roles),console.log(A),console.log(R),r("update",{user:c.id,roles:R})}const b=(k,A)=>h(A,k),y=(k,A)=>p(A,k);return o.$$set=k=>{"member"in k&&n(0,c=k.member),"roles"in k&&n(1,u=k.roles)},[c,u,h,p,b,y]}class MemberSettingsCard extends SvelteComponent{constructor(e){super(),init(this,e,instance$1h,create_fragment$1h,safe_not_equal,{member:0,roles:1})}}function get_each_context$o(o,e,n){const r=o.slice();return r[15]=e[n],r}function get_each_context_1$7(o,e,n){const r=o.slice();return r[18]=e[n],r}function create_each_block_1$7(o){let e,n=o[18]+"",r;return{c(){e=element("option"),r=text(n),e.__value=o[18],set_input_value(e,e.__value)},m(c,u){insert$1(c,e,u),append(e,r)},p:noop,d(c){c&&detach(e)}}}function create_each_block$o(o){let e,n;return e=new MemberSettingsCard({props:{member:o[15],roles:o[6].roles}}),e.$on("update",o[9]),e.$on("reinvite",o[14]),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.member=r[15]),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_fragment$1g(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae,fe,_e,ne,Se,De,Be,Te,Oe,yt,Tt,St;u=new ErrorAlert({props:{message:o[4]}});let q={};p=new SuccessAlert({props:q}),o[10](p);let Le=ensure_array_like(o[6].roles.filter(func$1)),je=[];for(let ct=0;cttransition_out(Rt[ct],1,1,()=>{Rt[ct]=null});return{c(){e=element("div"),n=element("div"),r=element("h3"),r.textContent="Invite people",c=space$3(),create_component(u.$$.fragment),h=space$3(),create_component(p.$$.fragment),b=space$3(),y=element("form"),k=element("div"),A=element("label"),A.textContent="Invitee Name",R=space$3(),N=element("input"),F=space$3(),V=element("div"),W=element("label"),W.textContent="Invitee Email Address",J=space$3(),te=element("input"),j=space$3(),ae=element("div"),fe=element("select");for(let ct=0;cto[13].call(fe)),attr(ae,"class","me-3"),attr(ne,"class","mt-5 d-block text-center"),attr(n,"class","lx-card mt-5"),attr(Te,"class","header-small mb-5 mt-5"),attr(Be,"class","member-list"),attr(e,"class","common-wrapper")},m(ct,dn){insert$1(ct,e,dn),append(e,n),append(n,r),append(n,c),mount_component(u,n,null),append(n,h),mount_component(p,n,null),append(n,b),append(n,y),append(y,k),append(k,A),append(k,R),append(k,N),set_input_value(N,o[1]),append(y,F),append(y,V),append(V,W),append(V,J),append(V,te),set_input_value(te,o[2]),append(y,j),append(y,ae),append(ae,fe);for(let Zt=0;Zto!=="removed";function instance$1g(o,e,n){const r=getContext$1("channel");let{users:c}=e,u,h,p,b="",y;function k(te){te.preventDefault(),A(u,h,p)}function A(te,j,ae){n(4,b=""),axios$1.post(r.lucentUrl+"/members/invite",{name:te,email:j,roles:[ae]}).then(fe=>{y.show("User was invited"),n(0,c=[...c,fe.data.user]),n(1,u=null),n(2,h=null),n(3,p=null)}).catch(fe=>{var _e,ne;n(4,b=((ne=(_e=fe.response)==null?void 0:_e.data)==null?void 0:ne.error)??"")})}function R(te){te.preventDefault(),n(4,b=""),axios$1.post(r.lucentUrl+"/members/update",{id:te.detail.user,roles:te.detail.roles}).then(j=>{y.show("Users updated"),n(0,c=j.data.users)}).catch(j=>{var ae,fe;n(4,b=((fe=(ae=j.response)==null?void 0:ae.data)==null?void 0:fe.error)??"")})}function N(te){binding_callbacks[te?"unshift":"push"](()=>{y=te,n(5,y)})}function F(){u=this.value,n(1,u)}function V(){h=this.value,n(2,h)}function W(){p=select_value(this),n(3,p),n(6,r)}const J=te=>A(te.detail.email,te.detail.role);return o.$$set=te=>{"users"in te&&n(0,c=te.users)},[c,u,h,p,b,y,r,k,A,R,N,F,V,W,J]}class Members extends SvelteComponent{constructor(e){super(),init(this,e,instance$1g,create_fragment$1g,safe_not_equal,{users:0})}}function create_fragment$1f(o){let e,n,r;return{c(){e=element("div"),n=element("div"),r=text(o[0]),attr(n,"class","header-normal"),attr(e,"class","wrapper-normal ")},m(c,u){insert$1(c,e,u),append(e,n),append(n,r)},p(c,[u]){u&1&&set_data(r,c[0])},i:noop,o:noop,d(c){c&&detach(e)}}}function instance$1f(o,e,n){let{title:r}=e;return o.$$set=c=>{"title"in c&&n(0,r=c.title)},[r]}class NotFound extends SvelteComponent{constructor(e){super(),init(this,e,instance$1f,create_fragment$1f,safe_not_equal,{title:0})}}var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var lodash={exports:{}};/** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */lodash.exports;(function(o,e){(function(){var n,r="4.17.21",c=200,u="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",h="Expected a function",p="Invalid `variable` option passed into `_.template`",b="__lodash_hash_undefined__",y=500,k="__lodash_placeholder__",A=1,R=2,N=4,F=1,V=2,W=1,J=2,te=4,j=8,ae=16,fe=32,_e=64,ne=128,Se=256,De=512,Be=30,Te="...",Oe=800,yt=16,Tt=1,St=2,q=3,Le=1/0,je=9007199254740991,mn=17976931348623157e292,Rt=NaN,Ue=4294967295,ct=Ue-1,dn=Ue>>>1,Zt=[["ary",ne],["bind",W],["bindKey",J],["curry",j],["curryRight",ae],["flip",De],["partial",fe],["partialRight",_e],["rearg",Se]],rn="[object Arguments]",Fe="[object Array]",mt="[object AsyncFunction]",de="[object Boolean]",Eo="[object Date]",jn="[object DOMException]",Yn="[object Error]",po="[object Function]",cs="[object GeneratorFunction]",gt="[object Map]",Ut="[object Number]",pt="[object Null]",Ne="[object Object]",Nt="[object Promise]",pn="[object Proxy]",xt="[object RegExp]",kn="[object Set]",Dn="[object String]",is="[object Symbol]",Gn="[object Undefined]",as="[object WeakMap]",vr="[object WeakSet]",Ns="[object ArrayBuffer]",Vs="[object DataView]",Ts="[object Float32Array]",Ki="[object Float64Array]",vs="[object Int8Array]",ms="[object Int16Array]",dr="[object Int32Array]",Oo="[object Uint8Array]",wo="[object Uint8ClampedArray]",Gs="[object Uint16Array]",ws="[object Uint32Array]",Pi=/\b__p \+= '';/g,ts=/\b(__p \+=) '' \+/g,Qi=/(__e\(.*?\)|\b__t\)) \+\n'';/g,nn=/&(?:amp|lt|gt|quot|#39);/g,ns=/[&<>"']/g,Xr=RegExp(nn.source),Qe=RegExp(ns.source),Ye=/<%-([\s\S]+?)%>/g,wt=/<%([\s\S]+?)%>/g,Ft=/<%=([\s\S]+?)%>/g,Rn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xn=/^\w*$/,ro=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,an=/[\\^$.*+?()[\]{}|]/g,Do=RegExp(an.source),io=/^\s+/,Wo=/\s/,sr=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,mr=/\{\n\/\* \[wrapped with (.+)\] \*/,Ks=/,? & /,pr=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Di=/[()=,{}\[\]\/\s]/,cc=/\\(\\)?/g,mi=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ge=/\w*$/,Xe=/^[-+]0x[0-9a-f]+$/i,$t=/^0b[01]+$/i,Qt=/^\[object .+?Constructor\]$/,eo=/^0o[0-7]+$/i,co=/^(?:0|[1-9]\d*)$/,qo=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,fr=/($^)/,nt=/['\n\r\u2028\u2029\\]/g,xo="\\ud800-\\udfff",jr="\\u0300-\\u036f",Oi="\\ufe20-\\ufe2f",ra="\\u20d0-\\u20ff",zs=jr+Oi+ra,Ec="\\u2700-\\u27bf",ul="a-z\\xdf-\\xf6\\xf8-\\xff",ga="\\xac\\xb1\\xd7\\xf7",Ri="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",As="\\u2000-\\u206f",rr=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Vi="A-Z\\xc0-\\xd6\\xd8-\\xde",ia="\\ufe0e\\ufe0f",Pl=ga+Ri+As+rr,Tc="['’]",Ac="["+xo+"]",Ls="["+Pl+"]",Ji="["+zs+"]",ka="\\d+",Gc="["+Ec+"]",xa="["+ul+"]",Yr="[^"+xo+Pl+ka+Ec+ul+Vi+"]",hr="\\ud83c[\\udffb-\\udfff]",ja="(?:"+Ji+"|"+hr+")",bu="[^"+xo+"]",Us="(?:\\ud83c[\\udde6-\\uddff]){2}",Mi="[\\ud800-\\udbff][\\udc00-\\udfff]",zi="["+Vi+"]",yi="\\u200d",yl="(?:"+xa+"|"+Yr+")",ql="(?:"+zi+"|"+Yr+")",ba="(?:"+Tc+"(?:d|ll|m|re|s|t|ve))?",Dl="(?:"+Tc+"(?:D|LL|M|RE|S|T|VE))?",Rl=ja+"?",cd="["+ia+"]?",Ml="(?:"+yi+"(?:"+[bu,Us,Mi].join("|")+")"+cd+Rl+")*",Qu="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ya="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",uc=cd+Rl+Ml,vu="(?:"+[Gc,Us,Mi].join("|")+")"+uc,ud="(?:"+[bu+Ji+"?",Ji,Us,Mi,Ac].join("|")+")",Kd=RegExp(Tc,"g"),Ee=RegExp(Ji,"g"),Ke=RegExp(hr+"(?="+hr+")|"+ud+uc,"g"),ht=RegExp([zi+"?"+xa+"+"+ba+"(?="+[Ls,zi,"$"].join("|")+")",ql+"+"+Dl+"(?="+[Ls,zi+yl,"$"].join("|")+")",zi+"?"+yl+"+"+ba,zi+"+"+Dl,Ya,Qu,ka,vu].join("|"),"g"),At=RegExp("["+yi+xo+zs+ia+"]"),fn=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,go=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ar=-1,Ko={};Ko[Ts]=Ko[Ki]=Ko[vs]=Ko[ms]=Ko[dr]=Ko[Oo]=Ko[wo]=Ko[Gs]=Ko[ws]=!0,Ko[rn]=Ko[Fe]=Ko[Ns]=Ko[de]=Ko[Vs]=Ko[Eo]=Ko[Yn]=Ko[po]=Ko[gt]=Ko[Ut]=Ko[Ne]=Ko[xt]=Ko[kn]=Ko[Dn]=Ko[as]=!1;var Io={};Io[rn]=Io[Fe]=Io[Ns]=Io[Vs]=Io[de]=Io[Eo]=Io[Ts]=Io[Ki]=Io[vs]=Io[ms]=Io[dr]=Io[gt]=Io[Ut]=Io[Ne]=Io[xt]=Io[kn]=Io[Dn]=Io[is]=Io[Oo]=Io[wo]=Io[Gs]=Io[ws]=!0,Io[Yn]=Io[po]=Io[as]=!1;var Mr={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Ss={"&":"&","<":"<",">":">",'"':""","'":"'"},si={"&":"&","<":"<",">":">",""":'"',"'":"'"},Ga={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dd=parseFloat,Mn=parseInt,fd=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,ui=typeof self=="object"&&self&&self.Object===Object&&self,me=fd||ui||Function("return this")(),Pe=e&&!e.nodeType&&e,We=Pe&&!0&&o&&!o.nodeType&&o,Pt=We&&We.exports===Pe,Tn=Pt&&fd.process,Ro=function(){try{var dt=We&&We.require&&We.require("util").types;return dt||Tn&&Tn.binding&&Tn.binding("util")}catch{}}(),Wn=Ro&&Ro.isArrayBuffer,Lr=Ro&&Ro.isDate,cn=Ro&&Ro.isMap,Or=Ro&&Ro.isRegExp,Ka=Ro&&Ro.isSet,Gr=Ro&&Ro.isTypedArray;function yr(dt,sn,Kt){switch(Kt.length){case 0:return dt.call(sn);case 1:return dt.call(sn,Kt[0]);case 2:return dt.call(sn,Kt[0],Kt[1]);case 3:return dt.call(sn,Kt[0],Kt[1],Kt[2])}return dt.apply(sn,Kt)}function Kc(dt,sn,Kt,uo){for(var ps=-1,qs=dt==null?0:dt.length;++ps-1}function hd(dt,sn,Kt){for(var uo=-1,ps=dt==null?0:dt.length;++uo-1;);return Kt}function md(dt,sn){for(var Kt=dt.length;Kt--&&Wi(sn,dt[Kt],0)>-1;);return Kt}function Jd(dt,sn){for(var Kt=dt.length,uo=0;Kt--;)dt[Kt]===sn&&++uo;return uo}var tm=Jh(Mr),nh=Jh(Ss);function _l(dt){return"\\"+Ga[dt]}function oh(dt,sn){return dt==null?n:dt[sn]}function Oa(dt){return At.test(dt)}function tu(dt){return fn.test(dt)}function sh(dt){for(var sn,Kt=[];!(sn=dt.next()).done;)Kt.push(sn.value);return Kt}function Ou(dt){var sn=-1,Kt=Array(dt.size);return dt.forEach(function(uo,ps){Kt[++sn]=[ps,uo]}),Kt}function wf(dt,sn){return function(Kt){return dt(sn(Kt))}}function hl(dt,sn){for(var Kt=-1,uo=dt.length,ps=0,qs=[];++Kt-1}function ai(E,D){var Z=this.__data__,ce=un(Z,E);return ce<0?(++this.size,Z.push([E,D])):Z[ce][1]=D,this}tn.prototype.clear=Kn,tn.prototype.delete=Mo,tn.prototype.get=To,tn.prototype.has=_o,tn.prototype.set=ai;function pi(E){var D=-1,Z=E==null?0:E.length;for(this.clear();++D=D?E:D)),E}function Ei(E,D,Z,ce,Ce,ze){var it,bt=D&A,Lt=D&R,wn=D&N;if(Z&&(it=Ce?Z(E,ce,Ce,ze):Z(E)),it!==n)return it;if(!ha(E))return E;var _n=os(E);if(_n){if(it=op(E),!bt)return ec(E,it)}else{var Bn=tc(E),yo=Bn==po||Bn==cs;if(Bf(E))return gh(E,bt);if(Bn==Ne||Bn==rn||yo&&!Ce){if(it=Lt||yo?{}:gl(E),!bt)return Lt?cf(E,sf(it,E)):$f(E,of(it,E))}else{if(!Io[Bn])return Ce?E:{};it=Vn(E,Bn,bt)}}ze||(ze=new Ha);var jo=ze.get(E);if(jo)return jo;ze.set(E,it),ty(E)?E.forEach(function(bs){it.add(Ei(bs,D,Z,bs,E,ze))}):gw(E)&&E.forEach(function(bs,Tr){it.set(Tr,Ei(bs,D,Z,Tr,E,ze))});var Cs=wn?Lt?xr:$d:Lt?Zc:xl,nr=_n?n:Cs(E);return Jo(nr||E,function(bs,Tr){nr&&(Tr=bs,bs=E[Tr]),nf(it,Tr,Ei(bs,D,Z,Tr,E,ze))}),it}function wl(E){var D=xl(E);return function(Z){return ys(Z,E,D)}}function ys(E,D,Z){var ce=Z.length;if(E==null)return!ce;for(E=br(E);ce--;){var Ce=Z[ce],ze=D[Ce],it=E[Ce];if(it===n&&!(Ce in E)||!ze(it))return!1}return!0}function lh(E,D,Z){if(typeof E!="function")throw new Ui(h);return Hl(function(){E.apply(n,Z)},D)}function ca(E,D,Z,ce){var Ce=-1,ze=Nr,it=!0,bt=E.length,Lt=[],wn=D.length;if(!bt)return Lt;Z&&(D=Ni(D,aa(Z))),ce?(ze=hd,it=!1):D.length>=c&&(ze=ii,it=!1,D=new Jn(D));e:for(;++CeCe?0:Ce+Z),ce=ce===n||ce>Ce?Ce:cr(ce),ce<0&&(ce+=Ce),ce=Z>ce?0:fv(ce);Z0&&Z(bt)?D>1?Li(bt,D-1,Z,ce,Ce):Vu(Ce,bt):ce||(Ce[Ce.length]=bt)}return Ce}var Yp=H0(),Cu=H0(!0);function ku(E,D){return E&&Yp(E,D,xl)}function Ic(E,D){return E&&Cu(E,D,xl)}function am(E,D){return fl(D,function(Z){return Lf(E[Z])})}function tl(E,D){D=ph(D,E);for(var Z=0,ce=D.length;E!=null&&ZD}function nl(E,D){return E!=null&&Dr.call(E,D)}function c1(E,D){return E!=null&&D in br(E)}function ch(E,D,Z){return E>=Ia(D,Z)&&E=120&&_n.length>=120)?new Jn(it&&_n):n}_n=E[0];var Bn=-1,yo=bt[0];e:for(;++Bn-1;)bt!==E&&vd.call(bt,Lt,1),vd.call(E,Lt,1);return E}function Bc(E,D){for(var Z=E?D.length:0,ce=Z-1;Z--;){var Ce=D[Z];if(Z==ce||Ce!==ze){var ze=Ce;Ch(Ce)?vd.call(E,Ce,1):Eu(E,Ce)}}return E}function Cd(E,D){return E+Na(ki()*(D-E+1))}function qu(E,D,Z,ce){for(var Ce=-1,ze=qi(Dc((D-E)/(Z||1)),0),it=Kt(ze);ze--;)it[ce?ze:++Ce]=E,E+=Z;return it}function uh(E,D){var Z="";if(!E||D<1||D>je)return Z;do D%2&&(Z+=E),D=Na(D/2),D&&(E+=E);while(D);return Z}function Xs(E,D){return W0(Df(E,D,Du),E+"")}function dh(E){return Su(pf(E))}function Jm(E,D){var Z=pf(E);return dg(Z,Js(D,0,Z.length))}function Ti(E,D,Z,ce){if(!ha(E))return E;D=ph(D,E);for(var Ce=-1,ze=D.length,it=ze-1,bt=E;bt!=null&&++CeCe?0:Ce+D),Z=Z>Ce?Ce:Z,Z<0&&(Z+=Ce),Ce=D>Z?0:Z-D>>>0,D>>>=0;for(var ze=Kt(Ce);++ce>>1,it=E[ze];it!==null&&!ji(it)&&(Z?it<=D:it=c){var wn=D?null:Q0(E);if(wn)return Sf(wn);it=!1,Ce=ii,Lt=new Jn}else Lt=D?[]:bt;e:for(;++ce=ce?E:ds(E,D,Z)}var xd=qm||function(E){return me.clearTimeout(E)};function gh(E,D){if(D)return E.slice();var Z=E.length,ce=l1?l1(Z):new E.constructor(Z);return E.copy(ce),ce}function bh(E){var D=new E.constructor(E.byteLength);return new ah(D).set(new ah(E)),D}function tp(E,D){var Z=D?bh(E.buffer):E.buffer;return new E.constructor(Z,E.byteOffset,E.byteLength)}function au(E){var D=new E.constructor(E.source,Ge.exec(E));return D.lastIndex=E.lastIndex,D}function Fi(E){return Mc?br(Mc.call(E)):{}}function Ed(E,D){var Z=D?bh(E.buffer):E.buffer;return new E.constructor(Z,E.byteOffset,E.length)}function ib(E,D){if(E!==D){var Z=E!==n,ce=E===null,Ce=E===E,ze=ji(E),it=D!==n,bt=D===null,Lt=D===D,wn=ji(D);if(!bt&&!wn&&!ze&&E>D||ze&&it&&Lt&&!bt&&!wn||ce&&it&&Lt||!Z&&Lt||!Ce)return 1;if(!ce&&!ze&&!wn&&E=bt)return Lt;var wn=Z[ce];return Lt*(wn=="desc"?-1:1)}}return E.index-D.index}function h1(E,D,Z,ce){for(var Ce=-1,ze=E.length,it=Z.length,bt=-1,Lt=D.length,wn=qi(ze-it,0),_n=Kt(Lt+wn),Bn=!ce;++bt1?Z[Ce-1]:n,it=Ce>2?Z[2]:n;for(ze=E.length>3&&typeof ze=="function"?(Ce--,ze):n,it&&Hc(Z[0],Z[1],it)&&(ze=Ce<3?n:ze,Ce=1),D=br(D);++ce-1?Ce[ze?D[it]:it]:n}}function tg(E){return wh(function(D){var Z=D.length,ce=Z,Ce=jl.prototype.thru;for(E&&D.reverse();ce--;){var ze=D[ce];if(typeof ze!="function")throw new Ui(h);if(Ce&&!it&&sg(ze)=="wrapper")var it=new jl([],!0)}for(ce=it?ce:Z;++ce1&&Wr.reverse(),_n&&Ltbt))return!1;var wn=ze.get(E),_n=ze.get(D);if(wn&&_n)return wn==D&&_n==E;var Bn=-1,yo=!0,jo=Z&V?new Jn:n;for(ze.set(E,D),ze.set(D,E);++Bn1?"& ":"")+D[ce],D=D.join(Z>2?", ":" "),E.replace(sr,`{ -/* [wrapped with `+D+`] */ -`)}function z0(E){return os(E)||Va(E)||!!(ef&&E&&E[ef])}function Ch(E,D){var Z=typeof E;return D=D??je,!!D&&(Z=="number"||Z!="symbol"&&co.test(E))&&E>-1&&E%1==0&&E0){if(++D>=Oe)return arguments[0]}else D=0;return E.apply(n,arguments)}}function dg(E,D){var Z=-1,ce=E.length,Ce=ce-1;for(D=D===n?ce:D;++Z1?E[D-1]:n;return Z=typeof Z=="function"?(E.pop(),Z):n,ip(E,Z)});function cu(E){var D=xe(E);return D.__chain__=!0,D}function XO(E,D){return D(E),E}function lp(E,D){return D(E)}var cp=wh(function(E){var D=E.length,Z=D?E[0]:0,ce=this.__wrapped__,Ce=function(ze){return li(ze,E)};return D>1||this.__actions__.length||!(ce instanceof _r)||!Ch(Z)?this.thru(Ce):(ce=ce.slice(Z,+Z+(D?1:0)),ce.__actions__.push({func:lp,args:[Ce],thisArg:n}),new jl(ce,this.__chain__).thru(function(ze){return D&&!ze.length&&ze.push(n),ze}))});function cw(){return cu(this)}function jO(){return new jl(this.value(),this.__chain__)}function K0(){this.__values__===n&&(this.__values__=dv(this.value()));var E=this.__index__>=this.__values__.length,D=E?n:this.__values__[this.__index__++];return{done:E,value:D}}function uu(){return this}function Cb(E){for(var D,Z=this;Z instanceof Tf;){var ce=HO(Z);ce.__index__=0,ce.__values__=n,D?Ce.__wrapped__=ce:D=ce;var Ce=ce;Z=Z.__wrapped__}return Ce.__wrapped__=E,D}function oa(){var E=this.__wrapped__;if(E instanceof _r){var D=E;return this.__actions__.length&&(D=new _r(this)),D=D.reverse(),D.__actions__.push({func:lp,args:[sl],thisArg:n}),new jl(D,this.__chain__)}return this.thru(sl)}function uf(){return ep(this.__wrapped__,this.__actions__)}var yg=bc(function(E,D,Z){Dr.call(E,Z)?++E[Z]:ru(E,Z,1)});function mm(E,D,Z){var ce=os(E)?Fr:Gt;return Z&&Hc(E,D,Z)&&(D=n),ce(E,ls(D,3))}function up(E,D){var Z=os(E)?fl:Fs;return Z(E,ls(D,3))}var dp=eg(Vc),Ah=eg(b1);function YO(E,D){return Li(_g(E,D),1)}function fp(E,D){return Li(_g(E,D),Le)}function pm(E,D,Z){return Z=Z===n?1:cr(Z),Li(_g(E,D),Z)}function gm(E,D){var Z=os(E)?Jo:Qr;return Z(E,ls(D,3))}function J0(E,D){var Z=os(E)?dl:Gm;return Z(E,ls(D,3))}var uw=bc(function(E,D,Z){Dr.call(E,Z)?E[Z].push(D):ru(E,Z,[D])});function ev(E,D,Z,ce){E=zr(E)?E:pf(E),Z=Z&&!ce?cr(Z):0;var Ce=E.length;return Z<0&&(Z=qi(Ce+Z,0)),E1(E)?Z<=Ce&&E.indexOf(D,Z)>-1:!!Ce&&Wi(E,D,Z)>-1}var dw=Xs(function(E,D,Z){var ce=-1,Ce=typeof D=="function",ze=zr(E)?Kt(E.length):[];return Qr(E,function(it){ze[++ce]=Ce?yr(D,it,Z):xu(it,D,Z)}),ze}),kb=bc(function(E,D,Z){ru(E,Z,D)});function _g(E,D){var Z=os(E)?Ni:ot;return Z(E,ls(D,3))}function du(E,D,Z,ce){return E==null?[]:(os(D)||(D=D==null?[]:[D]),Z=ce?n:Z,os(Z)||(Z=Z==null?[]:[Z]),_i(E,D,Z))}var GO=bc(function(E,D,Z){E[Z?0:1].push(D)},function(){return[[],[]]});function wg(E,D,Z){var ce=os(E)?Ws:em,Ce=arguments.length<3;return ce(E,ls(D,4),Z,Ce,Qr)}function KO(E,D,Z){var ce=os(E)?Jc:em,Ce=arguments.length<3;return ce(E,ls(D,4),Z,Ce,Gm)}function fw(E,D){var Z=os(E)?fl:Fs;return Z(E,Nd(ls(D,3)))}function y1(E){var D=os(E)?Su:dh;return D(E)}function bm(E,D,Z){(Z?Hc(E,D,Z):D===n)?D=1:D=cr(D);var ce=os(E)?Xp:Jm;return ce(E,D)}function xb(E){var D=os(E)?wd:fh;return D(E)}function Ps(E){if(E==null)return 0;if(zr(E))return E1(E)?pd(E):E.length;var D=tc(E);return D==gt||D==kn?E.size:K(E).length}function fu(E,D,Z){var ce=os(E)?eu:_s;return Z&&Hc(E,D,Z)&&(D=n),ce(E,ls(D,3))}var df=Xs(function(E,D){if(E==null)return[];var Z=D.length;return Z>1&&Hc(E,D[0],D[1])?D=[]:Z>2&&Hc(D[0],D[1],D[2])&&(D=[D[0]]),_i(E,Li(D,1),[])}),Sg=Wp||function(){return me.Date.now()};function Er(E,D){if(typeof D!="function")throw new Ui(h);return E=cr(E),function(){if(--E<1)return D.apply(this,arguments)}}function Cg(E,D,Z){return D=Z?n:D,D=E&&D==null?E.length:D,Ad(E,ne,n,n,n,n,D)}function Eb(E,D){var Z;if(typeof D!="function")throw new Ui(h);return E=cr(E),function(){return--E>0&&(Z=D.apply(this,arguments)),E<=1&&(D=n),Z}}var wa=Xs(function(E,D,Z){var ce=W;if(Z.length){var Ce=hl(Z,vc(wa));ce|=fe}return Ad(E,ce,D,Z,Ce)}),ff=Xs(function(E,D,Z){var ce=W|J;if(Z.length){var Ce=hl(Z,vc(ff));ce|=fe}return Ad(D,ce,E,Z,Ce)});function $h(E,D,Z){D=Z?n:D;var ce=Ad(E,j,n,n,n,n,n,D);return ce.placeholder=$h.placeholder,ce}function Tb(E,D,Z){D=Z?n:D;var ce=Ad(E,ae,n,n,n,n,n,D);return ce.placeholder=Tb.placeholder,ce}function _1(E,D,Z){var ce,Ce,ze,it,bt,Lt,wn=0,_n=!1,Bn=!1,yo=!0;if(typeof E!="function")throw new Ui(h);D=Pu(D)||0,ha(Z)&&(_n=!!Z.leading,Bn="maxWait"in Z,ze=Bn?qi(Pu(Z.maxWait)||0,D):ze,yo="trailing"in Z?!!Z.trailing:yo);function jo(rl){var od=ce,ei=Ce;return ce=Ce=n,wn=rl,it=E.apply(ei,od),it}function Cs(rl){return wn=rl,bt=Hl(Tr,D),_n?jo(rl):it}function nr(rl){var od=rl-Lt,ei=rl-wn,Uw=D-od;return Bn?Ia(Uw,ze-ei):Uw}function bs(rl){var od=rl-Lt,ei=rl-wn;return Lt===n||od>=D||od<0||Bn&&ei>=ze}function Tr(){var rl=Sg();if(bs(rl))return Wr(rl);bt=Hl(Tr,nr(rl))}function Wr(rl){return bt=n,yo&&ce?jo(rl):(ce=Ce=n,it)}function El(){bt!==n&&xd(bt),wn=0,ce=Lt=Ce=bt=n}function rc(){return bt===n?it:Wr(Sg())}function nd(){var rl=Sg(),od=bs(rl);if(ce=arguments,Ce=this,Lt=rl,od){if(bt===n)return Cs(Lt);if(Bn)return xd(bt),bt=Hl(Tr,D),jo(Lt)}return bt===n&&(bt=Hl(Tr,D)),it}return nd.cancel=El,nd.flush=rc,nd}var w1=Xs(function(E,D){return lh(E,1,D)}),tv=Xs(function(E,D,Z){return lh(E,Pu(D)||0,Z)});function Ab(E){return Ad(E,De)}function ed(E,D){if(typeof E!="function"||D!=null&&typeof D!="function")throw new Ui(h);var Z=function(){var ce=arguments,Ce=D?D.apply(this,ce):ce[0],ze=Z.cache;if(ze.has(Ce))return ze.get(Ce);var it=E.apply(this,ce);return Z.cache=ze.set(Ce,it)||ze,it};return Z.cache=new(ed.Cache||pi),Z}ed.Cache=pi;function Nd(E){if(typeof E!="function")throw new Ui(h);return function(){var D=arguments;switch(D.length){case 0:return!E.call(this);case 1:return!E.call(this,D[0]);case 2:return!E.call(this,D[0],D[1]);case 3:return!E.call(this,D[0],D[1],D[2])}return!E.apply(this,D)}}function hw(E){return Eb(2,E)}var Dt=ta(function(E,D){D=D.length==1&&os(D[0])?Ni(D[0],aa(ls())):Ni(Li(D,1),aa(ls()));var Z=D.length;return Xs(function(ce){for(var Ce=-1,ze=Ia(ce.length,Z);++Ce=D}),Va=_t(function(){return arguments}())?_t:function(E){return Wa(E)&&Dr.call(E,"callee")&&!bd.call(E,"callee")},os=Kt.isArray,oc=Wn?aa(Wn):Gl;function zr(E){return E!=null&&Dh(E.length)&&!Lf(E)}function za(E){return Wa(E)&&zr(E)}function C1(E){return E===!0||E===!1||Wa(E)&&ua(E)==de}var Bf=sm||bp,k1=Lr?aa(Lr):iu;function iv(E){return Wa(E)&&E.nodeType===1&&!vm(E)}function JO(E){if(E==null)return!0;if(zr(E)&&(os(E)||typeof E=="string"||typeof E.splice=="function"||Bf(E)||mf(E)||Va(E)))return!E.length;var D=tc(E);if(D==gt||D==kn)return!E.size;if(Gu(E))return!K(E).length;for(var Z in E)if(Dr.call(E,Z))return!1;return!0}function Db(E,D){return Fl(E,D)}function av(E,D,Z){Z=typeof Z=="function"?Z:n;var ce=Z?Z(E,D):n;return ce===n?Fl(E,D,n,Z):!!ce}function lv(E){if(!Wa(E))return!1;var D=ua(E);return D==Yn||D==jn||typeof E.message=="string"&&typeof E.name=="string"&&!vm(E)}function pw(E){return typeof E=="number"&&Zo(E)}function Lf(E){if(!ha(E))return!1;var D=ua(E);return D==po||D==cs||D==mt||D==pn}function ey(E){return typeof E=="number"&&E==cr(E)}function Dh(E){return typeof E=="number"&&E>-1&&E%1==0&&E<=je}function ha(E){var D=typeof E;return E!=null&&(D=="object"||D=="function")}function Wa(E){return E!=null&&typeof E=="object"}var gw=cn?aa(cn):ya;function zc(E,D){return E===D||da(E,D,Sh(D))}function sC(E,D,Z){return Z=typeof Z=="function"?Z:n,da(E,D,Sh(D),Z)}function hf(E){return uv(E)&&E!=+E}function On(E){if(hb(E))throw new ps(u);return u1(E)}function cv(E){return E===null}function Za(E){return E==null}function uv(E){return typeof E=="number"||Wa(E)&&ua(E)==Ut}function vm(E){if(!Wa(E)||ua(E)!=Ne)return!1;var D=Ef(E);if(D===null)return!0;var Z=Dr.call(D,"constructor")&&D.constructor;return typeof Z=="function"&&Z instanceof Z&&nu.call(Z)==zp}var x1=Or?aa(Or):Jl;function Wc(E){return ey(E)&&E>=-je&&E<=je}var ty=Ka?aa(Ka):Sd;function E1(E){return typeof E=="string"||!os(E)&&Wa(E)&&ua(E)==Dn}function ji(E){return typeof E=="symbol"||Wa(E)&&ua(E)==is}var mf=Gr?aa(Gr):bo;function T1(E){return E===n}function Ff(E){return Wa(E)&&tc(E)==as}function Id(E){return Wa(E)&&ua(E)==vr}var Hn=kr(Ae),$u=kr(function(E,D){return E<=D});function dv(E){if(!E)return[];if(zr(E))return E1(E)?ml(E):ec(E);if(Cr&&E[Cr])return sh(E[Cr]());var D=tc(E),Z=D==gt?Ou:D==kn?Sf:pf;return Z(E)}function Hf(E){if(!E)return E===0?E:0;if(E=Pu(E),E===Le||E===-Le){var D=E<0?-1:1;return D*mn}return E===E?E:0}function cr(E){var D=Hf(E),Z=D%1;return D===D?Z?D-Z:D:0}function fv(E){return E?Js(cr(E),0,Ue):0}function Pu(E){if(typeof E=="number")return E;if(ji(E))return Rt;if(ha(E)){var D=typeof E.valueOf=="function"?E.valueOf():E;E=ha(D)?D+"":D}if(typeof E!="string")return E===0?E:+E;E=Ja(E);var Z=$t.test(E);return Z||eo.test(E)?Mn(E.slice(2),Z?2:8):Xe.test(E)?Rt:+E}function Rb(E){return ju(E,Zc(E))}function bw(E){return E?Js(cr(E),-je,je):E===0?E:0}function vi(E){return E==null?"":gi(E)}var vw=Yu(function(E,D){if(Gu(D)||zr(D)){ju(D,xl(D),E);return}for(var Z in D)Dr.call(D,Z)&&nf(E,Z,D[Z])}),Vl=Yu(function(E,D){ju(D,Zc(D),E)}),Om=Yu(function(E,D,Z,ce){ju(D,Zc(D),E,ce)}),Ow=Yu(function(E,D,Z,ce){ju(D,xl(D),E,ce)}),yw=wh(li);function hv(E,D){var Z=Nc(E);return D==null?Z:of(Z,D)}var _w=Xs(function(E,D){E=br(E);var Z=-1,ce=D.length,Ce=ce>2?D[2]:n;for(Ce&&Hc(D[0],D[1],Ce)&&(ce=1);++Z1),ze}),ju(E,xr(E),Z),ce&&(Z=Ei(Z,A|R|N,nw));for(var Ce=D.length;Ce--;)Eu(Z,D[Ce]);return Z});function ay(E,D){return Mh(E,Nd(ls(D)))}var rC=wh(function(E,D){return E==null?{}:tr(E,D)});function Mh(E,D){if(E==null)return{};var Z=Ni(xr(E),function(ce){return[ce]});return D=ls(D),Vr(E,Z,function(ce,Ce){return D(ce,Ce[0])})}function kw(E,D,Z){D=ph(D,E);var ce=-1,Ce=D.length;for(Ce||(Ce=1,E=n);++ceD){var ce=E;E=D,D=ce}if(Z||E%1||D%1){var Ce=ki();return Ia(E+Ce*(D-E+dd("1e-"+((Ce+"").length-1))),D)}return Cd(E,D)}var Qf=yh(function(E,D,Z){return D=D.toLowerCase(),E+(Z?Tg(D):D)});function Tg(E){return Hb(vi(E).toLowerCase())}function Ag(E){return E=vi(E),E&&E.replace(qo,tm).replace(Ee,"")}function Bb(E,D,Z){E=vi(E),D=gi(D);var ce=E.length;Z=Z===n?ce:Js(cr(Z),0,ce);var Ce=Z;return Z-=D.length,Z>=0&&E.slice(Z,Ce)==D}function $1(E){return E=vi(E),E&&Qe.test(E)?E.replace(ns,nh):E}function td(E){return E=vi(E),E&&Do.test(E)?E.replace(an,"\\$&"):E}var $g=yh(function(E,D,Z){return E+(Z?"-":"")+D.toLowerCase()}),P1=yh(function(E,D,Z){return E+(Z?" ":"")+D.toLowerCase()}),ym=Kp("toLowerCase");function Lb(E,D,Z){E=vi(E),D=cr(D);var ce=D?pd(E):0;if(!D||ce>=D)return E;var Ce=(D-ce)/2;return cm(Na(Ce),Z)+E+cm(Dc(Ce),Z)}function Aw(E,D,Z){E=vi(E),D=cr(D);var ce=D?pd(E):0;return D&&ce>>0,Z?(E=vi(E),E&&(typeof D=="string"||D!=null&&!x1(D))&&(D=gi(D),!D&&Oa(E))?Xu(ml(E),0,Z):E.split(D,Z)):[]}var hy=yh(function(E,D,Z){return E+(Z?" ":"")+Hb(D)});function Mw(E,D,Z){return E=vi(E),Z=Z==null?0:Js(cr(Z),0,E.length),D=gi(D),E.slice(Z,Z+D.length)==D}function my(E,D,Z){var ce=xe.templateSettings;Z&&Hc(E,D,Z)&&(D=n),E=vi(E),D=Om({},D,ce,IO);var Ce=Om({},D.imports,ce.imports,IO),ze=xl(Ce),it=Zi(Ce,ze),bt,Lt,wn=0,_n=D.interpolate||fr,Bn="__p += '",yo=rh((D.escape||fr).source+"|"+_n.source+"|"+(_n===Ft?mi:fr).source+"|"+(D.evaluate||fr).source+"|$","g"),jo="//# sourceURL="+(Dr.call(D,"sourceURL")?(D.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++ar+"]")+` -`;E.replace(yo,function(bs,Tr,Wr,El,rc,nd){return Wr||(Wr=El),Bn+=E.slice(wn,nd).replace(nt,_l),Tr&&(bt=!0,Bn+=`' + -__e(`+Tr+`) + -'`),rc&&(Lt=!0,Bn+=`'; -`+rc+`; -__p += '`),Wr&&(Bn+=`' + -((__t = (`+Wr+`)) == null ? '' : __t) + -'`),wn=nd+bs.length,bs}),Bn+=`'; -`;var Cs=Dr.call(D,"variable")&&D.variable;if(!Cs)Bn=`with (obj) { -`+Bn+` -} -`;else if(Di.test(Cs))throw new ps(p);Bn=(Lt?Bn.replace(Pi,""):Bn).replace(ts,"$1").replace(Qi,"$1;"),Bn="function("+(Cs||"obj")+`) { -`+(Cs?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(bt?", __e = _.escape":"")+(Lt?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+Bn+`return __p -}`;var nr=gy(function(){return qs(ze,jo+"return "+Bn).apply(n,it)});if(nr.source=Bn,lv(nr))throw nr;return nr}function Nw(E){return vi(E).toLowerCase()}function Fb(E){return vi(E).toUpperCase()}function Iw(E,D,Z){if(E=vi(E),E&&(Z||D===n))return Ja(E);if(!E||!(D=gi(D)))return E;var ce=ml(E),Ce=ml(D),ze=hc(ce,Ce),it=md(ce,Ce)+1;return Xu(ce,ze,it).join("")}function py(E,D,Z){if(E=vi(E),E&&(Z||D===n))return E.slice(0,Wm(E)+1);if(!E||!(D=gi(D)))return E;var ce=ml(E),Ce=md(ce,ml(D))+1;return Xu(ce,0,Ce).join("")}function Pg(E,D,Z){if(E=vi(E),E&&(Z||D===n))return E.replace(io,"");if(!E||!(D=gi(D)))return E;var ce=ml(E),Ce=hc(ce,ml(D));return Xu(ce,Ce).join("")}function _v(E,D){var Z=Be,ce=Te;if(ha(D)){var Ce="separator"in D?D.separator:Ce;Z="length"in D?cr(D.length):Z,ce="omission"in D?gi(D.omission):ce}E=vi(E);var ze=E.length;if(Oa(E)){var it=ml(E);ze=it.length}if(Z>=ze)return E;var bt=Z-pd(ce);if(bt<1)return ce;var Lt=it?Xu(it,0,bt).join(""):E.slice(0,bt);if(Ce===n)return Lt+ce;if(it&&(bt+=Lt.length-bt),x1(Ce)){if(E.slice(bt).search(Ce)){var wn,_n=Lt;for(Ce.global||(Ce=rh(Ce.source,vi(Ge.exec(Ce))+"g")),Ce.lastIndex=0;wn=Ce.exec(_n);)var Bn=wn.index;Lt=Lt.slice(0,Bn===n?bt:Bn)}}else if(E.indexOf(gi(Ce),bt)!=bt){var yo=Lt.lastIndexOf(Ce);yo>-1&&(Lt=Lt.slice(0,yo))}return Lt+ce}function wv(E){return E=vi(E),E&&Xr.test(E)?E.replace(nn,qe):E}var Sv=yh(function(E,D,Z){return E+(Z?" ":"")+D.toUpperCase()}),Hb=Kp("toUpperCase");function Qb(E,D,Z){return E=vi(E),D=Z?n:D,D===n?tu(E)?Cf(E):th(E):E.match(D)||[]}var gy=Xs(function(E,D){try{return yr(E,n,D)}catch(Z){return lv(Z)?Z:new ps(Z)}}),Vb=wh(function(E,D){return Jo(D,function(Z){Z=lu(Z),ru(E,Z,wa(E[Z],E))}),E});function zb(E){var D=E==null?0:E.length,Z=ls();return E=D?Ni(E,function(ce){if(typeof ce[1]!="function")throw new Ui(h);return[Z(ce[0]),ce[1]]}):[],Xs(function(ce){for(var Ce=-1;++Ceje)return[];var Z=Ue,ce=Ia(E,Ue);D=ls(D),E-=Ue;for(var Ce=Sr(ce,D);++Z0||D<0)?new _r(Z):(E<0?Z=Z.takeRight(-E):E&&(Z=Z.drop(E)),D!==n&&(D=cr(D),Z=D<0?Z.dropRight(-D):Z.take(D-E)),Z)},_r.prototype.takeRightWhile=function(E){return this.reverse().takeWhile(E).reverse()},_r.prototype.toArray=function(){return this.take(Ue)},ku(_r.prototype,function(E,D){var Z=/^(?:filter|find|map|reject)|While$/.test(D),ce=/^(?:head|last)$/.test(D),Ce=xe[ce?"take"+(D=="last"?"Right":""):D],ze=ce||/^find/.test(D);Ce&&(xe.prototype[D]=function(){var it=this.__wrapped__,bt=ce?[1]:arguments,Lt=it instanceof _r,wn=bt[0],_n=Lt||os(it),Bn=function(Tr){var Wr=Ce.apply(xe,Vu([Tr],bt));return ce&&yo?Wr[0]:Wr};_n&&Z&&typeof wn=="function"&&wn.length!=1&&(Lt=_n=!1);var yo=this.__chain__,jo=!!this.__actions__.length,Cs=ze&&!yo,nr=Lt&&!jo;if(!ze&&_n){it=nr?it:new _r(this);var bs=E.apply(it,bt);return bs.__actions__.push({func:lp,args:[Bn],thisArg:n}),new jl(bs,yo)}return Cs&&nr?E.apply(this,bt):(bs=this.thru(Bn),Cs?ce?bs.value()[0]:bs.value():bs)})}),Jo(["pop","push","shift","sort","splice","unshift"],function(E){var D=pc[E],Z=/^(?:push|sort|unshift)$/.test(E)?"tap":"thru",ce=/^(?:pop|shift)$/.test(E);xe.prototype[E]=function(){var Ce=arguments;if(ce&&!this.__chain__){var ze=this.value();return D.apply(os(ze)?ze:[],Ce)}return this[Z](function(it){return D.apply(os(it)?it:[],Ce)})}}),ku(_r.prototype,function(E,D){var Z=xe[D];if(Z){var ce=Z.name+"";Dr.call(di,ce)||(di[ce]=[]),di[ce].push({name:D,func:Z})}}),di[gs(n,J).name]=[{name:"wrapper",func:n}],_r.prototype.clone=qp,_r.prototype.reverse=im,_r.prototype.value=jm,xe.prototype.at=cp,xe.prototype.chain=cw,xe.prototype.commit=jO,xe.prototype.next=K0,xe.prototype.plant=Cb,xe.prototype.reverse=oa,xe.prototype.toJSON=xe.prototype.valueOf=xe.prototype.value=uf,xe.prototype.first=xe.prototype.head,Cr&&(xe.prototype[Cr]=uu),xe},kf=Zm();We?((We.exports=kf)._=kf,Pe._=kf):me._=kf}).call(commonjsGlobal)})(lodash,lodash.exports);var lodashExports=lodash.exports;function create_fragment$1e(o){let e,n=o[5].path+"";return{c(){e=svg_element("svg"),attr(e,"class","bi svelte-r4pd9j"),attr(e,"xmlns","http://www.w3.org/2000/svg"),attr(e,"width",o[0]),attr(e,"height",o[1]),attr(e,"viewBox",o[5].viewBox),attr(e,"aria-labelledby",o[2]),attr(e,"role","presentation"),attr(e,"stroke",o[4]),attr(e,"fill",o[3])},m(r,c){insert$1(r,e,c),e.innerHTML=n},p(r,[c]){c&1&&attr(e,"width",r[0]),c&2&&attr(e,"height",r[1]),c&4&&attr(e,"aria-labelledby",r[2]),c&16&&attr(e,"stroke",r[4]),c&8&&attr(e,"fill",r[3])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$1e(o,e,n){const r={"trash-can":{path:'',viewBox:"0 0 448 512"},"circle-chevron-down":{path:'',viewBox:"0 0 512 512"},"circle-chevron-up":{path:'',viewBox:"0 0 512 512"},ellipsis:{path:'',viewBox:"0 0 448 512"},"ellipsis-vertical":{path:'',viewBox:"0 0 128 512"},"angles-down":{path:'',viewBox:"0 0 384 512"},"angle-right":{path:'',viewBox:"0 0 256 512"},"photo-film":{path:'',viewBox:"0 0 640 512"},file:{path:'',viewBox:"0 0 384 512"},"circle-info":{path:'',viewBox:"0 0 512 512"},"table-columns":{path:'',viewBox:"0 0 512 512"},"arrow-down-a-z":{path:'',viewBox:"0 0 512 512"},"arrow-up-short-wide":{path:'',viewBox:"0 0 576 512"},"arrow-down-wide-short":{path:'',viewBox:"0 0 576 512"},filter:{path:'',viewBox:"0 0 512 512"},calendar:{path:'',viewBox:"0 0 448 512"},pencil:{path:'',viewBox:"0 0 512 512"},database:{path:'',viewBox:"0 0 448 512"},dice:{path:'',viewBox:"0 0 640 512"},"triangle-exclamation":{path:'',viewBox:"0 0 512 512"},eye:{path:'',viewBox:"0 0 576 512"},"circle-plus":{path:'',viewBox:"0 0 512 512"},"magnifying-glass":{path:'',viewBox:"0 0 512 512"},expand:{path:'',viewBox:"0 0 448 512"},compress:{path:'',viewBox:"0 0 448 512"},check:{path:'',viewBox:"0 0 448 512"},close:{path:'',viewBox:"0 0 24 24"},"arrow-left":{path:'',viewBox:"0 0 24 24"}};let{width:c=16}=e,{height:u=16}=e,{icon:h=""}=e,{fill:p="currentColor"}=e,{stroke:b="currentColor"}=e,y=r[h];return o.$$set=k=>{"width"in k&&n(0,c=k.width),"height"in k&&n(1,u=k.height),"icon"in k&&n(2,h=k.icon),"fill"in k&&n(3,p=k.fill),"stroke"in k&&n(4,b=k.stroke)},[c,u,h,p,b,y]}class Icon extends SvelteComponent{constructor(e){super(),init(this,e,instance$1e,create_fragment$1e,safe_not_equal,{width:0,height:1,icon:2,fill:3,stroke:4})}}function create_fragment$1d(o){let e,n,r;return{c(){e=element("input"),attr(e,"type","checkbox"),e.value=o[0],attr(e,"class","switch"),e.checked=o[1]},m(c,u){insert$1(c,e,u),n||(r=listen(e,"change",o[2]),n=!0)},p(c,[u]){u&1&&(e.value=c[0]),u&2&&(e.checked=c[1])},i:noop,o:noop,d(c){c&&detach(e),n=!1,r()}}}function instance$1d(o,e,n){let{value:r}=e,{checked:c=!1}=e;function u(h){bubble.call(this,o,h)}return o.$$set=h=>{"value"in h&&n(0,r=h.value),"checked"in h&&n(1,c=h.checked)},[r,c,u]}class Switch extends SvelteComponent{constructor(e){super(),init(this,e,instance$1d,create_fragment$1d,safe_not_equal,{value:0,checked:1})}}function create_if_block_3$9(o){let e,n;return e=new Switch({props:{value:"published",checked:o[0].status==="published"}}),e.$on("change",o[1]),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.checked=r[0].status==="published"),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_2$d(o){let e;return{c(){e=text("Trashed")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_if_block_1$t(o){let e;return{c(){e=text("Draft")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_if_block$S(o){let e;return{c(){e=text("Published")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_fragment$1c(o){let e,n,r,c=o[0].status!=="trashed"&&create_if_block_3$9(o);function u(b,y){if(b[0].status==="published")return create_if_block$S;if(b[0].status==="draft")return create_if_block_1$t;if(b[0].status==="trashed")return create_if_block_2$d}let h=u(o),p=h&&h(o);return{c(){c&&c.c(),e=space$3(),p&&p.c(),n=empty$1()},m(b,y){c&&c.m(b,y),insert$1(b,e,y),p&&p.m(b,y),insert$1(b,n,y),r=!0},p(b,[y]){b[0].status!=="trashed"?c?(c.p(b,y),y&1&&transition_in(c,1)):(c=create_if_block_3$9(b),c.c(),transition_in(c,1),c.m(e.parentNode,e)):c&&(group_outros(),transition_out(c,1,1,()=>{c=null}),check_outros()),h!==(h=u(b))&&(p&&p.d(1),p=h&&h(b),p&&(p.c(),p.m(n.parentNode,n)))},i(b){r||(transition_in(c),r=!0)},o(b){transition_out(c),r=!1},d(b){b&&(detach(e),detach(n)),c&&c.d(b),p&&p.d(b)}}}function instance$1c(o,e,n){let{status:r="draft"}=e,{record:c}=e;function u(h){h.target.checked?n(2,r="published"):n(2,r="draft")}return o.$$set=h=>{"status"in h&&n(2,r=h.status),"record"in h&&n(0,c=h.record)},[c,u,r]}class StatusSelect extends SvelteComponent{constructor(e){super(),init(this,e,instance$1c,create_fragment$1c,safe_not_equal,{status:2,record:0})}}function create_if_block$R(o){let e,n;return e=new Dropdown({props:{$$slots:{button:[create_button_slot$7],default:[create_default_slot$8]},$$scope:{ctx:o}}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&270&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_1$s(o){let e,n,r,c;return{c(){e=element("a"),n=text("Clone"),attr(e,"class","dropdown-item"),attr(e,"href",o[4].lucentUrl)},m(u,h){insert$1(u,e,h),append(e,n),r||(c=listen(e,"click",o[5]),r=!0)},p:noop,d(u){u&&detach(e),r=!1,c()}}}function create_default_slot$8(o){let e,n,r,c,u,h,p,b,y,k,A,R=!o[3]&&create_if_block_1$s(o);return{c(){e=element("h6"),e.textContent="Record Actions",n=space$3(),r=element("a"),c=text("Create new"),h=space$3(),R&&R.c(),p=space$3(),b=element("a"),y=text("Revisions"),attr(e,"class","dropdown-header"),attr(r,"class","dropdown-item"),attr(r,"href",u=o[4].lucentUrl+"/records/new?schema="+o[2].name),attr(b,"class","dropdown-item"),attr(b,"href",o[4].lucentUrl)},m(N,F){insert$1(N,e,F),insert$1(N,n,F),insert$1(N,r,F),append(r,c),insert$1(N,h,F),R&&R.m(N,F),insert$1(N,p,F),insert$1(N,b,F),append(b,y),k||(A=listen(b,"click",prevent_default(o[6])),k=!0)},p(N,F){F&4&&u!==(u=N[4].lucentUrl+"/records/new?schema="+N[2].name)&&attr(r,"href",u),N[3]?R&&(R.d(1),R=null):R?R.p(N,F):(R=create_if_block_1$s(N),R.c(),R.m(p.parentNode,p))},d(N){N&&(detach(e),detach(n),detach(r),detach(h),detach(p),detach(b)),R&&R.d(N),k=!1,A()}}}function create_button_slot$7(o){let e,n,r;return n=new Icon({props:{icon:"ellipsis"}}),{c(){e=element("div"),create_component(n.$$.fragment),attr(e,"slot","button")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p:noop,i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_fragment$1b(o){let e,n,r,c,u,h=!o[3]&&create_if_block$R(o);function p(y){o[7](y)}let b={record:o[0]};return o[0].status!==void 0&&(b.status=o[0].status),r=new StatusSelect({props:b}),binding_callbacks.push(()=>bind(r,"status",p)),{c(){e=element("div"),h&&h.c(),n=space$3(),create_component(r.$$.fragment),set_style(e,"display","flex"),set_style(e,"align-items","center"),set_style(e,"gap","10px")},m(y,k){insert$1(y,e,k),h&&h.m(e,null),append(e,n),mount_component(r,e,null),u=!0},p(y,[k]){y[3]?h&&(group_outros(),transition_out(h,1,1,()=>{h=null}),check_outros()):h?(h.p(y,k),k&8&&transition_in(h,1)):(h=create_if_block$R(y),h.c(),transition_in(h,1),h.m(e,n));const A={};k&1&&(A.record=y[0]),!c&&k&1&&(c=!0,A.status=y[0].status,add_flush_callback(()=>c=!1)),r.$set(A)},i(y){u||(transition_in(h),transition_in(r.$$.fragment,y),u=!0)},o(y){transition_out(h),transition_out(r.$$.fragment,y),u=!1},d(y){y&&detach(e),h&&h.d(),destroy_component(r)}}}function instance$1b(o,e,n){const r=getContext$1("channel");let{schema:c}=e,{record:u}=e,{isCreateMode:h}=e,{activeContentTab:p}=e;function b(A){A.preventDefault(),axios.post(r.lucentUrl+"/records/clone/"+u.id).then(R=>{window.location=r.lucentUrl+"/records/"+R.data.id}).catch(R=>{})}const y=A=>n(1,p="_info");function k(A){o.$$.not_equal(u.status,A)&&(u.status=A,n(0,u))}return o.$$set=A=>{"schema"in A&&n(2,c=A.schema),"record"in A&&n(0,u=A.record),"isCreateMode"in A&&n(3,h=A.isCreateMode),"activeContentTab"in A&&n(1,p=A.activeContentTab)},[u,p,c,h,r,b,y,k]}class EditHeader extends SvelteComponent{constructor(e){super(),init(this,e,instance$1b,create_fragment$1b,safe_not_equal,{schema:2,record:0,isCreateMode:3,activeContentTab:1})}}function imgurl(o,e){return e._file.mime==="image/svg+xml"?fileurl(o,e):o.filesUrl+`/thumbs/${e._file.path}`}function fileurl(o,e){return o.filesUrl+`/${e._file.path}`}function htmlurl(o,e,n){let r="",c=fileurl(o,e);if(e._file.width>0){let u=c;n&&(u=o.filesUrl+`/templates/${n}/${e._file.path}`),r=`${e._file.path}`}else e._file.mime==="image/svg+xml"?r=`${e._file.path}`:r=`${e._file.originalName}`;return r}function create_if_block_1$r(o){let e,n,r,c,u;const h=[create_if_block_2$c,create_else_block$m],p=[];function b(y,k){return k&1&&(e=null),e==null&&(e=!!y[0]._file.mime.startsWith("image")),e?0:1}return n=b(o,-1),r=p[n]=h[n](o),{c(){r.c(),c=empty$1()},m(y,k){p[n].m(y,k),insert$1(y,c,k),u=!0},p(y,k){let A=n;n=b(y,k),n===A?p[n].p(y,k):(group_outros(),transition_out(p[A],1,1,()=>{p[A]=null}),check_outros(),r=p[n],r?r.p(y,k):(r=p[n]=h[n](y),r.c()),transition_in(r,1),r.m(c.parentNode,c))},i(y){u||(transition_in(r),u=!0)},o(y){transition_out(r),u=!1},d(y){y&&detach(c),p[n].d(y)}}}function create_else_block$m(o){let e,n,r,c,u,h=o[0]._file.path.split(".").pop().toLowerCase()+"",p,b,y,k;return n=new Icon({props:{icon:"file",width:o[3],height:o[3]}}),{c(){e=element("a"),create_component(n.$$.fragment),r=space$3(),c=element("span"),u=text("."),p=text(h),attr(c,"class","ms-2"),attr(e,"href",b=o[4].lucentUrl+"/records/"+o[0].id),attr(e,"title",y=o[0]._file.path),attr(e,"class","file-preview-small"),set_style(e,"width",o[2]+"px"),set_style(e,"height",o[2]+"px")},m(A,R){insert$1(A,e,R),mount_component(n,e,null),append(e,r),append(e,c),append(c,u),append(c,p),k=!0},p(A,R){const N={};R&8&&(N.width=A[3]),R&8&&(N.height=A[3]),n.$set(N),(!k||R&1)&&h!==(h=A[0]._file.path.split(".").pop().toLowerCase()+"")&&set_data(p,h),(!k||R&1&&b!==(b=A[4].lucentUrl+"/records/"+A[0].id))&&attr(e,"href",b),(!k||R&1&&y!==(y=A[0]._file.path))&&attr(e,"title",y),(!k||R&4)&&set_style(e,"width",A[2]+"px"),(!k||R&4)&&set_style(e,"height",A[2]+"px")},i(A){k||(transition_in(n.$$.fragment,A),k=!0)},o(A){transition_out(n.$$.fragment,A),k=!1},d(A){A&&detach(e),destroy_component(n)}}}function create_if_block_2$c(o){let e,n,r,c,u,h;return{c(){e=element("a"),n=element("img"),attr(n,"class","rounded w-100 svelte-1mb3bsz"),src_url_equal(n.src,r=imgurl(o[4],o[0]))||attr(n,"src",r),attr(n,"alt",c=o[0]._file.path),attr(e,"href",u=o[4].lucentUrl+"/records/"+o[0].id),attr(e,"title",h=o[0]._file.originalName),set_style(e,"width",o[2]+"px"),set_style(e,"height",o[2]+"px")},m(p,b){insert$1(p,e,b),append(e,n)},p(p,b){b&1&&!src_url_equal(n.src,r=imgurl(p[4],p[0]))&&attr(n,"src",r),b&1&&c!==(c=p[0]._file.path)&&attr(n,"alt",c),b&1&&u!==(u=p[4].lucentUrl+"/records/"+p[0].id)&&attr(e,"href",u),b&1&&h!==(h=p[0]._file.originalName)&&attr(e,"title",h),b&4&&set_style(e,"width",p[2]+"px"),b&4&&set_style(e,"height",p[2]+"px")},i:noop,o:noop,d(p){p&&detach(e)}}}function create_if_block$Q(o){let e,n=o[0]._file.path+"",r,c,u;return{c(){e=element("a"),r=text(n),attr(e,"href",c=o[4].lucentUrl+"/records/"+o[0].id),attr(e,"title",u=o[0]._file.path),attr(e,"class","preview-file-filename lx-small-text text-decoration-none")},m(h,p){insert$1(h,e,p),append(e,r)},p(h,p){p&1&&n!==(n=h[0]._file.path+"")&&set_data(r,n),p&1&&c!==(c=h[4].lucentUrl+"/records/"+h[0].id)&&attr(e,"href",c),p&1&&u!==(u=h[0]._file.path)&&attr(e,"title",u)},d(h){h&&detach(e)}}}function create_fragment$1a(o){let e,n,r,c=o[0]&&create_if_block_1$r(o),u=o[1]&&create_if_block$Q(o);return{c(){e=element("div"),c&&c.c(),n=space$3(),u&&u.c(),set_style(e,"display","flex"),set_style(e,"align-items","center"),set_style(e,"gap","5px")},m(h,p){insert$1(h,e,p),c&&c.m(e,null),append(e,n),u&&u.m(e,null),r=!0},p(h,[p]){h[0]?c?(c.p(h,p),p&1&&transition_in(c,1)):(c=create_if_block_1$r(h),c.c(),transition_in(c,1),c.m(e,n)):c&&(group_outros(),transition_out(c,1,1,()=>{c=null}),check_outros()),h[1]?u?u.p(h,p):(u=create_if_block$Q(h),u.c(),u.m(e,null)):u&&(u.d(1),u=null)},i(h){r||(transition_in(c),r=!0)},o(h){transition_out(c),r=!1},d(h){h&&detach(e),c&&c.d(),u&&u.d()}}}function instance$1a(o,e,n){let{record:r}=e;const c=getContext$1("channel");let{size:u="small"}=e,{showFilename:h=!1}=e,p,b;return u=="large"?(p=256,b=32):u=="medium"?(p=128,b=12):u=="small"?(p=64,b=12):u=="tiny"&&(p=42,b=12),o.$$set=y=>{"record"in y&&n(0,r=y.record),"size"in y&&n(5,u=y.size),"showFilename"in y&&n(1,h=y.showFilename)},[r,h,p,b,c,u]}class Preview extends SvelteComponent{constructor(e){super(),init(this,e,instance$1a,create_fragment$1a,safe_not_equal,{record:0,size:5,showFilename:1})}}function create_if_block$P(o){let e,n,r,c,u,h,p,b,y,k=o[0]._file.path+"",A,R,N,F,V,W,J=o[0]._file.originalName+"",te,j,ae,fe,_e,ne,Se=o[0]._file.mime+"",De,Be,Te,Oe,yt,Tt,St,q=(o[0]._file.size/1024).toFixed(1)+"",Le,je,mn,Rt,Ue,ct,dn,Zt=o[0]._file.checksum+"",rn,Fe,mt,de,Eo,jn,Yn;r=new Preview({props:{record:o[0],size:"large"}});let po=o[0]._file.width&&create_if_block_1$q(o);return{c(){e=element("div"),n=element("div"),create_component(r.$$.fragment),c=space$3(),u=element("div"),h=element("div"),p=element("span"),p.textContent="Filename",b=space$3(),y=element("span"),A=text(k),R=space$3(),N=element("div"),F=element("span"),F.textContent="Original name",V=space$3(),W=element("span"),te=text(J),j=space$3(),ae=element("div"),fe=element("span"),fe.textContent="Mime type",_e=space$3(),ne=element("span"),De=text(Se),Be=space$3(),po&&po.c(),Te=space$3(),Oe=element("div"),yt=element("span"),yt.textContent="File size",Tt=space$3(),St=element("span"),Le=text(q),je=text("kB"),mn=space$3(),Rt=element("div"),Ue=element("span"),Ue.textContent="Checksum",ct=space$3(),dn=element("span"),rn=text(Zt),Fe=space$3(),mt=element("div"),de=element("a"),Eo=text("Download"),attr(p,"class","text-muted"),attr(h,"class","file-details-item"),attr(F,"class","text-muted"),attr(N,"class","file-details-item"),attr(fe,"class","text-muted"),attr(ae,"class","file-details-item"),attr(yt,"class","text-muted"),attr(Oe,"class","file-details-item"),attr(Ue,"class","text-muted"),attr(Rt,"class","file-details-item"),attr(de,"class","button primary"),attr(de,"target","_blank"),set_style(de,"display","inline-flex"),attr(de,"href",jn=fileurl(o[2],o[0])),attr(mt,"class","file-details-item"),attr(u,"class","file-details"),attr(e,"class","record-edit-file-preview")},m(cs,gt){insert$1(cs,e,gt),append(e,n),mount_component(r,n,null),append(e,c),append(e,u),append(u,h),append(h,p),append(h,b),append(h,y),append(y,A),append(u,R),append(u,N),append(N,F),append(N,V),append(N,W),append(W,te),append(u,j),append(u,ae),append(ae,fe),append(ae,_e),append(ae,ne),append(ne,De),append(u,Be),po&&po.m(u,null),append(u,Te),append(u,Oe),append(Oe,yt),append(Oe,Tt),append(Oe,St),append(St,Le),append(St,je),append(u,mn),append(u,Rt),append(Rt,Ue),append(Rt,ct),append(Rt,dn),append(dn,rn),append(u,Fe),append(u,mt),append(mt,de),append(de,Eo),Yn=!0},p(cs,gt){const Ut={};gt&1&&(Ut.record=cs[0]),r.$set(Ut),(!Yn||gt&1)&&k!==(k=cs[0]._file.path+"")&&set_data(A,k),(!Yn||gt&1)&&J!==(J=cs[0]._file.originalName+"")&&set_data(te,J),(!Yn||gt&1)&&Se!==(Se=cs[0]._file.mime+"")&&set_data(De,Se),cs[0]._file.width?po?po.p(cs,gt):(po=create_if_block_1$q(cs),po.c(),po.m(u,Te)):po&&(po.d(1),po=null),(!Yn||gt&1)&&q!==(q=(cs[0]._file.size/1024).toFixed(1)+"")&&set_data(Le,q),(!Yn||gt&1)&&Zt!==(Zt=cs[0]._file.checksum+"")&&set_data(rn,Zt),(!Yn||gt&1&&jn!==(jn=fileurl(cs[2],cs[0])))&&attr(de,"href",jn)},i(cs){Yn||(transition_in(r.$$.fragment,cs),Yn=!0)},o(cs){transition_out(r.$$.fragment,cs),Yn=!1},d(cs){cs&&detach(e),destroy_component(r),po&&po.d()}}}function create_if_block_1$q(o){let e,n,r,c,u=o[0]._file.width+"",h,p,b=o[0]._file.height+"",y;return{c(){e=element("div"),n=element("span"),n.textContent="Dimensions",r=space$3(),c=element("span"),h=text(u),p=text("x"),y=text(b),attr(n,"class","text-muted"),attr(e,"class","file-details-item")},m(k,A){insert$1(k,e,A),append(e,n),append(e,r),append(e,c),append(c,h),append(c,p),append(c,y)},p(k,A){A&1&&u!==(u=k[0]._file.width+"")&&set_data(h,u),A&1&&b!==(b=k[0]._file.height+"")&&set_data(y,b)},d(k){k&&detach(e)}}}function create_fragment$19(o){let e,n,r=o[1].type==="files"&&create_if_block$P(o);return{c(){r&&r.c(),e=empty$1()},m(c,u){r&&r.m(c,u),insert$1(c,e,u),n=!0},p(c,[u]){c[1].type==="files"?r?(r.p(c,u),u&2&&transition_in(r,1)):(r=create_if_block$P(c),r.c(),transition_in(r,1),r.m(e.parentNode,e)):r&&(group_outros(),transition_out(r,1,1,()=>{r=null}),check_outros())},i(c){n||(transition_in(r),n=!0)},o(c){transition_out(r),n=!1},d(c){c&&detach(e),r&&r.d(c)}}}function instance$19(o,e,n){const r=getContext$1("channel");let{record:c}=e,{schema:u}=e;return o.$$set=h=>{"record"in h&&n(0,c=h.record),"schema"in h&&n(1,u=h.schema)},[c,u,r]}class FilePreview extends SvelteComponent{constructor(e){super(),init(this,e,instance$19,create_fragment$19,safe_not_equal,{record:0,schema:1})}}function get_each_context$n(o,e,n){const r=o.slice();return r[9]=e[n],r}function create_if_block$O(o){let e,n=ensure_array_like(o[1]),r=[];for(let c=0;c1&&create_if_block$O(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,[c]){r[1].length>1?n?n.p(r,c):(n=create_if_block$O(r),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},i:noop,o:noop,d(r){r&&detach(e),n&&n.d(r)}}}function instance$18(o,e,n){var R;let{schema:r}=e,{isCreateMode:c}=e,{active:u=""}=e,h=((R=r.groups)==null?void 0:R.map(N=>({label:N,name:N})))??[],p={label:"Main",name:""},b={label:"Backlinks",name:"_graph"};c?h=[p,...h]:h=[p,...h,b];function y(N){N.preventDefault(),n(0,u="_graph")}function k(N,F){N.preventDefault(),F=="_graph"?y(N):n(0,u=F)}const A=(N,F)=>k(F,N.name);return o.$$set=N=>{"schema"in N&&n(3,r=N.schema),"isCreateMode"in N&&n(4,c=N.isCreateMode),"active"in N&&n(0,u=N.active)},[u,h,k,r,c,A]}class ContentTabs extends SvelteComponent{constructor(e){super(),init(this,e,instance$18,create_fragment$18,safe_not_equal,{schema:3,isCreateMode:4,active:0})}}function getErrorMessage(o,e){return o&&o[e]?o[e].message:null}function isArray$1(o){return Array.isArray?Array.isArray(o):getTag(o)==="[object Array]"}const INFINITY=1/0;function baseToString(o){if(typeof o=="string")return o;let e=o+"";return e=="0"&&1/o==-INFINITY?"-0":e}function toString(o){return o==null?"":baseToString(o)}function isString(o){return typeof o=="string"}function isNumber(o){return typeof o=="number"}function isBoolean(o){return o===!0||o===!1||isObjectLike(o)&&getTag(o)=="[object Boolean]"}function isObject(o){return typeof o=="object"}function isObjectLike(o){return isObject(o)&&o!==null}function isDefined(o){return o!=null}function isBlank(o){return!o.trim().length}function getTag(o){return o==null?o===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(o)}const EXTENDED_SEARCH_UNAVAILABLE="Extended search is not available",INCORRECT_INDEX_TYPE="Incorrect 'index' type",LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY=o=>`Invalid value for key ${o}`,PATTERN_LENGTH_TOO_LARGE=o=>`Pattern length exceeds max of ${o}.`,MISSING_KEY_PROPERTY=o=>`Missing ${o} property in key`,INVALID_KEY_WEIGHT_VALUE=o=>`Property 'weight' in key '${o}' must be a positive integer`,hasOwn=Object.prototype.hasOwnProperty;class KeyStore{constructor(e){this._keys=[],this._keyMap={};let n=0;e.forEach(r=>{let c=createKey(r);this._keys.push(c),this._keyMap[c.id]=c,n+=c.weight}),this._keys.forEach(r=>{r.weight/=n})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function createKey(o){let e=null,n=null,r=null,c=1,u=null;if(isString(o)||isArray$1(o))r=o,e=createKeyPath(o),n=createKeyId(o);else{if(!hasOwn.call(o,"name"))throw new Error(MISSING_KEY_PROPERTY("name"));const h=o.name;if(r=h,hasOwn.call(o,"weight")&&(c=o.weight,c<=0))throw new Error(INVALID_KEY_WEIGHT_VALUE(h));e=createKeyPath(h),n=createKeyId(h),u=o.getFn}return{path:e,id:n,weight:c,src:r,getFn:u}}function createKeyPath(o){return isArray$1(o)?o:o.split(".")}function createKeyId(o){return isArray$1(o)?o.join("."):o}function get(o,e){let n=[],r=!1;const c=(u,h,p)=>{if(isDefined(u))if(!h[p])n.push(u);else{let b=h[p];const y=u[b];if(!isDefined(y))return;if(p===h.length-1&&(isString(y)||isNumber(y)||isBoolean(y)))n.push(toString(y));else if(isArray$1(y)){r=!0;for(let k=0,A=y.length;ko.score===e.score?o.idx{this._keysMap[n.id]=r})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,isString(this.docs[0])?this.docs.forEach((e,n)=>{this._addString(e,n)}):this.docs.forEach((e,n)=>{this._addObject(e,n)}),this.norm.clear())}add(e){const n=this.size();isString(e)?this._addString(e,n):this._addObject(e,n)}removeAt(e){this.records.splice(e,1);for(let n=e,r=this.size();n{let h=c.getFn?c.getFn(e):this.getFn(e,c.path);if(isDefined(h)){if(isArray$1(h)){let p=[];const b=[{nestedArrIndex:-1,value:h}];for(;b.length;){const{nestedArrIndex:y,value:k}=b.pop();if(isDefined(k))if(isString(k)&&!isBlank(k)){let A={v:k,i:y,n:this.norm.get(k)};p.push(A)}else isArray$1(k)&&k.forEach((A,R)=>{b.push({nestedArrIndex:R,value:A})})}r.$[u]=p}else if(isString(h)&&!isBlank(h)){let p={v:h,n:this.norm.get(h)};r.$[u]=p}}}),this.records.push(r)}toJSON(){return{keys:this.keys,records:this.records}}}function createIndex(o,e,{getFn:n=Config.getFn,fieldNormWeight:r=Config.fieldNormWeight}={}){const c=new FuseIndex({getFn:n,fieldNormWeight:r});return c.setKeys(o.map(createKey)),c.setSources(e),c.create(),c}function parseIndex(o,{getFn:e=Config.getFn,fieldNormWeight:n=Config.fieldNormWeight}={}){const{keys:r,records:c}=o,u=new FuseIndex({getFn:e,fieldNormWeight:n});return u.setKeys(r),u.setIndexRecords(c),u}function computeScore$1(o,{errors:e=0,currentLocation:n=0,expectedLocation:r=0,distance:c=Config.distance,ignoreLocation:u=Config.ignoreLocation}={}){const h=e/o.length;if(u)return h;const p=Math.abs(r-n);return c?h+p/c:p?1:h}function convertMaskToIndices(o=[],e=Config.minMatchCharLength){let n=[],r=-1,c=-1,u=0;for(let h=o.length;u=e&&n.push([r,c]),r=-1)}return o[u-1]&&u-r>=e&&n.push([r,u-1]),n}const MAX_BITS=32;function search(o,e,n,{location:r=Config.location,distance:c=Config.distance,threshold:u=Config.threshold,findAllMatches:h=Config.findAllMatches,minMatchCharLength:p=Config.minMatchCharLength,includeMatches:b=Config.includeMatches,ignoreLocation:y=Config.ignoreLocation}={}){if(e.length>MAX_BITS)throw new Error(PATTERN_LENGTH_TOO_LARGE(MAX_BITS));const k=e.length,A=o.length,R=Math.max(0,Math.min(r,A));let N=u,F=R;const V=p>1||b,W=V?Array(A):[];let J;for(;(J=o.indexOf(e,F))>-1;){let ne=computeScore$1(e,{currentLocation:J,expectedLocation:R,distance:c,ignoreLocation:y});if(N=Math.min(ne,N),F=J+k,V){let Se=0;for(;Se=Be;Tt-=1){let St=Tt-1,q=n[o.charAt(St)];if(V&&(W[St]=+!!q),Oe[Tt]=(Oe[Tt+1]<<1|1)&q,ne&&(Oe[Tt]|=(te[Tt+1]|te[Tt])<<1|1|te[Tt+1]),Oe[Tt]&fe&&(j=computeScore$1(e,{errors:ne,currentLocation:St,expectedLocation:R,distance:c,ignoreLocation:y}),j<=N)){if(N=j,F=St,F<=R)break;Be=Math.max(1,2*R-F)}}if(computeScore$1(e,{errors:ne+1,currentLocation:R,expectedLocation:R,distance:c,ignoreLocation:y})>N)break;te=Oe}const _e={isMatch:F>=0,score:Math.max(.001,j)};if(V){const ne=convertMaskToIndices(W,p);ne.length?b&&(_e.indices=ne):_e.isMatch=!1}return _e}function createPatternAlphabet(o){let e={};for(let n=0,r=o.length;n{this.chunks.push({pattern:R,alphabet:createPatternAlphabet(R),startIndex:N})},A=this.pattern.length;if(A>MAX_BITS){let R=0;const N=A%MAX_BITS,F=A-N;for(;R{const{isMatch:J,score:te,indices:j}=search(e,F,V,{location:c+W,distance:u,threshold:h,findAllMatches:p,minMatchCharLength:b,includeMatches:r,ignoreLocation:y});J&&(R=!0),A+=te,J&&j&&(k=[...k,...j])});let N={isMatch:R,score:R?A/this.chunks.length:1};return R&&r&&(N.indices=k),N}}class BaseMatch{constructor(e){this.pattern=e}static isMultiMatch(e){return getMatch(e,this.multiRegex)}static isSingleMatch(e){return getMatch(e,this.singleRegex)}search(){}}function getMatch(o,e){const n=o.match(e);return n?n[1]:null}class ExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const n=e===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class InverseExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const r=e.indexOf(this.pattern)===-1;return{isMatch:r,score:r?0:1,indices:[0,e.length-1]}}}class PrefixExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const n=e.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class InversePrefixExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const n=!e.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}}class SuffixExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const n=e.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[e.length-this.pattern.length,e.length-1]}}}class InverseSuffixExactMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const n=!e.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}}class FuzzyMatch extends BaseMatch{constructor(e,{location:n=Config.location,threshold:r=Config.threshold,distance:c=Config.distance,includeMatches:u=Config.includeMatches,findAllMatches:h=Config.findAllMatches,minMatchCharLength:p=Config.minMatchCharLength,isCaseSensitive:b=Config.isCaseSensitive,ignoreLocation:y=Config.ignoreLocation}={}){super(e),this._bitapSearch=new BitapSearch(e,{location:n,threshold:r,distance:c,includeMatches:u,findAllMatches:h,minMatchCharLength:p,isCaseSensitive:b,ignoreLocation:y})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class IncludeMatch extends BaseMatch{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let n=0,r;const c=[],u=this.pattern.length;for(;(r=e.indexOf(this.pattern,n))>-1;)n=r+u,c.push([r,n-1]);const h=!!c.length;return{isMatch:h,score:h?0:1,indices:c}}}const searchers=[ExactMatch,IncludeMatch,PrefixExactMatch,InversePrefixExactMatch,InverseSuffixExactMatch,SuffixExactMatch,InverseExactMatch,FuzzyMatch],searchersLen=searchers.length,SPACE_RE=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,OR_TOKEN="|";function parseQuery(o,e={}){return o.split(OR_TOKEN).map(n=>{let r=n.trim().split(SPACE_RE).filter(u=>u&&!!u.trim()),c=[];for(let u=0,h=r.length;u!!(o[LogicalOperator.AND]||o[LogicalOperator.OR]),isPath=o=>!!o[KeyType.PATH],isLeaf=o=>!isArray$1(o)&&isObject(o)&&!isExpression(o),convertToExplicit=o=>({[LogicalOperator.AND]:Object.keys(o).map(e=>({[e]:o[e]}))});function parse(o,e,{auto:n=!0}={}){const r=c=>{let u=Object.keys(c);const h=isPath(c);if(!h&&u.length>1&&!isExpression(c))return r(convertToExplicit(c));if(isLeaf(c)){const b=h?c[KeyType.PATH]:u[0],y=h?c[KeyType.PATTERN]:c[b];if(!isString(y))throw new Error(LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY(b));const k={keyId:createKeyId(b),pattern:y};return n&&(k.searcher=createSearcher(y,e)),k}let p={children:[],operator:u[0]};return u.forEach(b=>{const y=c[b];isArray$1(y)&&y.forEach(k=>{p.children.push(r(k))})}),p};return isExpression(o)||(o=convertToExplicit(o)),r(o)}function computeScore(o,{ignoreFieldNorm:e=Config.ignoreFieldNorm}){o.forEach(n=>{let r=1;n.matches.forEach(({key:c,norm:u,score:h})=>{const p=c?c.weight:null;r*=Math.pow(h===0&&p?Number.EPSILON:h,(p||1)*(e?1:u))}),n.score=r})}function transformMatches(o,e){const n=o.matches;e.matches=[],isDefined(n)&&n.forEach(r=>{if(!isDefined(r.indices)||!r.indices.length)return;const{indices:c,value:u}=r;let h={indices:c,value:u};r.key&&(h.key=r.key.src),r.idx>-1&&(h.refIndex=r.idx),e.matches.push(h)})}function transformScore(o,e){e.score=o.score}function format(o,e,{includeMatches:n=Config.includeMatches,includeScore:r=Config.includeScore}={}){const c=[];return n&&c.push(transformMatches),r&&c.push(transformScore),o.map(u=>{const{idx:h}=u,p={item:e[h],refIndex:h};return c.length&&c.forEach(b=>{b(u,p)}),p})}class Fuse{constructor(e,n={},r){this.options={...Config,...n},this.options.useExtendedSearch,this._keyStore=new KeyStore(this.options.keys),this.setCollection(e,r)}setCollection(e,n){if(this._docs=e,n&&!(n instanceof FuseIndex))throw new Error(INCORRECT_INDEX_TYPE);this._myIndex=n||createIndex(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){isDefined(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=()=>!1){const n=[];for(let r=0,c=this._docs.length;r-1&&(b=b.slice(0,n)),format(b,this._docs,{includeMatches:r,includeScore:c})}_searchStringList(e){const n=createSearcher(e,this.options),{records:r}=this._myIndex,c=[];return r.forEach(({v:u,i:h,n:p})=>{if(!isDefined(u))return;const{isMatch:b,score:y,indices:k}=n.searchIn(u);b&&c.push({item:u,idx:h,matches:[{score:y,value:u,norm:p,indices:k}]})}),c}_searchLogical(e){const n=parse(e,this.options),r=(p,b,y)=>{if(!p.children){const{keyId:A,searcher:R}=p,N=this._findMatches({key:this._keyStore.get(A),value:this._myIndex.getValueForItemAtKeyId(b,A),searcher:R});return N&&N.length?[{idx:y,item:b,matches:N}]:[]}const k=[];for(let A=0,R=p.children.length;A{if(isDefined(p)){let y=r(n,p,b);y.length&&(u[b]||(u[b]={idx:b,item:p,matches:[]},h.push(u[b])),y.forEach(({matches:k})=>{u[b].matches.push(...k)}))}}),h}_searchObjectList(e){const n=createSearcher(e,this.options),{keys:r,records:c}=this._myIndex,u=[];return c.forEach(({$:h,i:p})=>{if(!isDefined(h))return;let b=[];r.forEach((y,k)=>{b.push(...this._findMatches({key:y,value:h[k],searcher:n}))}),b.length&&u.push({idx:p,item:h,matches:b})}),u}_findMatches({key:e,value:n,searcher:r}){if(!isDefined(n))return[];let c=[];if(isArray$1(n))n.forEach(({v:u,i:h,n:p})=>{if(!isDefined(u))return;const{isMatch:b,score:y,indices:k}=r.searchIn(u);b&&c.push({score:y,key:e,value:u,idx:h,norm:p,indices:k})});else{const{v:u,n:h}=n,{isMatch:p,score:b,indices:y}=r.searchIn(u);p&&c.push({score:b,key:e,value:u,norm:h,indices:y})}return c}}Fuse.version="7.0.0";Fuse.createIndex=createIndex;Fuse.parseIndex=parseIndex;Fuse.config=Config;Fuse.parseQuery=parse;register(ExtendedSearch);function get_each_context$m(o,e,n){const r=o.slice();return r[10]=e[n],r}function create_if_block$N(o){let e=[],n=new Map,r,c=ensure_array_like(o[0]);const u=h=>h[10].value;for(let h=0;h({value:e,label:e})):Object.entries(o).map(([e,n])=>({value:e,label:n}))}function instance$17(o,e,n){let r,{field:c}=e,{value:u}=e,{search:h=""}=e;const p=createEventDispatcher();function b(N,F){N.preventDefault(),n(3,u=F.value),n(2,h=""),p("selected",{option:F})}let y=formatOptionsForSearch(c.selectOptions);const k=new Fuse(y,{includeScore:!1,keys:["value","label"]}),A=(N,F)=>b(F,N),R=(N,F)=>b(F,N);return o.$$set=N=>{"field"in N&&n(4,c=N.field),"value"in N&&n(3,u=N.value),"search"in N&&n(2,h=N.search)},o.$$.update=()=>{o.$$.dirty&4&&n(0,r=h===""?y:k.search(h).map(N=>N.item))},[r,b,h,u,c,A,R]}class Selectlist extends SvelteComponent{constructor(e){super(),init(this,e,instance$17,create_fragment$17,safe_not_equal,{field:4,value:3,search:2})}}function create_if_block$M(o){let e,n,r,c,u,h,p,b;function y(R,N){return N&2&&(n=null),n==null&&(n=!!Array.isArray(R[1].selectOptions)),n?create_if_block_1$p:create_else_block$l}let k=y(o,-1),A=k(o);return u=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){e=element("div"),A.c(),r=space$3(),c=element("button"),create_component(u.$$.fragment),attr(c,"type","button"),attr(c,"class","button-text"),attr(c,"aria-label","Close"),attr(e,"class","autocomplete-selected-value")},m(R,N){insert$1(R,e,N),A.m(e,null),append(e,r),append(e,c),mount_component(u,c,null),h=!0,p||(b=listen(c,"click",prevent_default(o[9])),p=!0)},p(R,N){k===(k=y(R,N))&&A?A.p(R,N):(A.d(1),A=k(R),A&&(A.c(),A.m(e,r)))},i(R){h||(transition_in(u.$$.fragment,R),h=!0)},o(R){transition_out(u.$$.fragment,R),h=!1},d(R){R&&detach(e),A.d(),destroy_component(u),p=!1,b()}}}function create_else_block$l(o){let e=o[1].selectOptions[o[0]]+"",n;return{c(){n=text(e)},m(r,c){insert$1(r,n,c)},p(r,c){c&3&&e!==(e=r[1].selectOptions[r[0]]+"")&&set_data(n,e)},d(r){r&&detach(n)}}}function create_if_block_1$p(o){let e;return{c(){e=text(o[0])},m(n,r){insert$1(n,e,r)},p(n,r){r&1&&set_data(e,n[0])},d(n){n&&detach(e)}}}function create_fragment$16(o){let e,n,r,c,u,h,p,b,y,k,A,R;function N(J){o[7](J)}function F(J){o[8](J)}let V={field:o[1]};o[0]!==void 0&&(V.value=o[0]),o[3]!==void 0&&(V.search=o[3]),u=new Selectlist({props:V}),binding_callbacks.push(()=>bind(u,"value",N)),binding_callbacks.push(()=>bind(u,"search",F)),u.$on("selected",o[4]);let W=o[0]&&create_if_block$M(o);return{c(){e=element("div"),n=element("input"),r=space$3(),c=element("div"),create_component(u.$$.fragment),b=space$3(),W&&W.c(),y=empty$1(),attr(n,"type","search"),attr(n,"placeholder","Search for options"),attr(n,"autocomplete","off"),attr(c,"class","autocomplete-results"),attr(e,"class","autocomplete")},m(J,te){insert$1(J,e,te),append(e,n),set_input_value(n,o[3]),o[6](n),append(e,r),append(e,c),mount_component(u,c,null),insert$1(J,b,te),W&&W.m(J,te),insert$1(J,y,te),k=!0,A||(R=listen(n,"input",o[5]),A=!0)},p(J,[te]){te&8&&n.value!==J[3]&&set_input_value(n,J[3]);const j={};te&2&&(j.field=J[1]),!h&&te&1&&(h=!0,j.value=J[0],add_flush_callback(()=>h=!1)),!p&&te&8&&(p=!0,j.search=J[3],add_flush_callback(()=>p=!1)),u.$set(j),J[0]?W?(W.p(J,te),te&1&&transition_in(W,1)):(W=create_if_block$M(J),W.c(),transition_in(W,1),W.m(y.parentNode,y)):W&&(group_outros(),transition_out(W,1,1,()=>{W=null}),check_outros())},i(J){k||(transition_in(u.$$.fragment,J),transition_in(W),k=!0)},o(J){transition_out(u.$$.fragment,J),transition_out(W),k=!1},d(J){J&&(detach(e),detach(b),detach(y)),o[6](null),destroy_component(u),W&&W.d(J),A=!1,R()}}}function instance$16(o,e,n){let r,c,{value:u}=e,{field:h}=e;function p(){r.focus(),r.blur()}function b(){c=this.value,n(3,c)}function y(N){binding_callbacks[N?"unshift":"push"](()=>{r=N,n(2,r)})}function k(N){u=N,n(0,u)}function A(N){c=N,n(3,c)}const R=N=>n(0,u="");return o.$$set=N=>{"value"in N&&n(0,u=N.value),"field"in N&&n(1,h=N.field)},[u,h,r,c,p,b,y,k,A,R]}class Autocomplete extends SvelteComponent{constructor(e){super(),init(this,e,instance$16,create_fragment$16,safe_not_equal,{value:0,field:1})}}function create_else_block$k(o){let e,n,r,c;return{c(){e=element("input"),attr(e,"type","text"),attr(e,"id",o[3]),attr(e,"class","form-control"),attr(e,"autocomplete","off"),e.readOnly=n=o[1].readonly&&!o[2],toggle_class(e,"is-invalid",o[4])},m(u,h){insert$1(u,e,h),set_input_value(e,o[0]),r||(c=listen(e,"input",o[7]),r=!0)},p(u,h){h&8&&attr(e,"id",u[3]),h&6&&n!==(n=u[1].readonly&&!u[2])&&(e.readOnly=n),h&1&&e.value!==u[0]&&set_input_value(e,u[0]),h&16&&toggle_class(e,"is-invalid",u[4])},i:noop,o:noop,d(u){u&&detach(e),r=!1,c()}}}function create_if_block_1$o(o){let e,n,r;function c(h){o[6](h)}let u={field:o[1]};return o[0]!==void 0&&(u.value=o[0]),e=new Autocomplete({props:u}),binding_callbacks.push(()=>bind(e,"value",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&2&&(b.field=h[1]),!n&&p&1&&(n=!0,b.value=h[0],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block$L(o){let e,n;return{c(){e=element("div"),n=text(o[4]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&16&&set_data(n,r[4])},d(r){r&&detach(e)}}}function create_fragment$15(o){let e,n,r,c,u;const h=[create_if_block_1$o,create_else_block$k],p=[];function b(k,A){return k[1].selectOptions?0:1}n=b(o),r=p[n]=h[n](o);let y=o[4]&&create_if_block$L(o);return{c(){e=element("div"),r.c(),c=space$3(),y&&y.c(),set_style(e,"position","relative")},m(k,A){insert$1(k,e,A),p[n].m(e,null),append(e,c),y&&y.m(e,null),u=!0},p(k,[A]){let R=n;n=b(k),n===R?p[n].p(k,A):(group_outros(),transition_out(p[R],1,1,()=>{p[R]=null}),check_outros(),r=p[n],r?r.p(k,A):(r=p[n]=h[n](k),r.c()),transition_in(r,1),r.m(e,c)),k[4]?y?y.p(k,A):(y=create_if_block$L(k),y.c(),y.m(e,null)):y&&(y.d(1),y=null)},i(k){u||(transition_in(r),u=!0)},o(k){transition_out(r),u=!1},d(k){k&&detach(e),p[n].d(),y&&y.d()}}}function instance$15(o,e,n){let r,{field:c}=e,{value:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e,{id:b}=e;function y(A){u=A,n(0,u)}function k(){u=this.value,n(0,u)}return o.$$set=A=>{"field"in A&&n(1,c=A.field),"value"in A&&n(0,u=A.value),"isCreateMode"in A&&n(2,h=A.isCreateMode),"validationErrors"in A&&n(5,p=A.validationErrors),"id"in A&&n(3,b=A.id)},o.$$.update=()=>{o.$$.dirty&34&&n(4,r=getErrorMessage(p,c.name))},[u,c,h,b,r,p,y,k]}let Text$2=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$15,create_fragment$15,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}};function create_if_block$K(o){let e,n;return{c(){e=element("div"),n=text(o[4]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&16&&set_data(n,r[4])},d(r){r&&detach(e)}}}function create_fragment$14(o){let e,n,r,c,u,h,p,b=o[1].source+"",y,k,A,R,N=o[4]&&create_if_block$K(o);return{c(){e=element("div"),n=element("input"),c=space$3(),u=element("div"),h=text("Leave this empty to autogenerate from "),p=element("i"),y=text(b),k=space$3(),N&&N.c(),attr(n,"type","text"),attr(n,"id",o[3]),attr(n,"class","form-control"),attr(n,"autocomplete","off"),n.readOnly=r=o[1].readonly&&!o[2],toggle_class(n,"is-invalid",o[4]),attr(u,"class","system-help-text light-text"),attr(e,"class","mb-0")},m(F,V){insert$1(F,e,V),append(e,n),set_input_value(n,o[0]),append(e,c),append(e,u),append(u,h),append(u,p),append(p,y),append(e,k),N&&N.m(e,null),A||(R=listen(n,"input",o[6]),A=!0)},p(F,[V]){V&8&&attr(n,"id",F[3]),V&6&&r!==(r=F[1].readonly&&!F[2])&&(n.readOnly=r),V&1&&n.value!==F[0]&&set_input_value(n,F[0]),V&16&&toggle_class(n,"is-invalid",F[4]),V&2&&b!==(b=F[1].source+"")&&set_data(y,b),F[4]?N?N.p(F,V):(N=create_if_block$K(F),N.c(),N.m(e,null)):N&&(N.d(1),N=null)},i:noop,o:noop,d(F){F&&detach(e),N&&N.d(),A=!1,R()}}}function instance$14(o,e,n){let r,{field:c}=e,{value:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e,{id:b}=e;function y(){u=this.value,n(0,u)}return o.$$set=k=>{"field"in k&&n(1,c=k.field),"value"in k&&n(0,u=k.value),"isCreateMode"in k&&n(2,h=k.isCreateMode),"validationErrors"in k&&n(5,p=k.validationErrors),"id"in k&&n(3,b=k.id)},o.$$.update=()=>{o.$$.dirty&34&&n(4,r=getErrorMessage(p,c.name))},[u,c,h,b,r,p,y]}class Slug extends SvelteComponent{constructor(e){super(),init(this,e,instance$14,create_fragment$14,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}}function insertEdges(o,e,n,r,c=""){let u=n.map(p=>({target:p.id,source:e.id,sourceSchema:e.schema,targetSchema:p.schema,field:r,depth:1,rank:""})),h=o.edges;return c==="replace"&&(h=h.filter(p=>p.field!==field.name)),o.records=lodashExports.uniqBy([...o.records,...n],p=>p.id),o.edges=lodashExports.uniqBy([...h,...u],p=>p.source+p.target+p.field+p.depth),o}function sortByField(o,e,n,r,c){if(o===e)return n;let u=c.map(b=>b.id),h=(n==null?void 0:n.filter(b=>b.field===r&&b.depth===1&&u.includes(b.target)))??[],p=(n==null?void 0:n.filter(b=>!(b.field===r&&b.depth===1)))??[];return h=array_move(h,o,e),[...p,...h]}function array_move(o,e,n){if(n>=o.length)for(var r=n-o.length+1;r--;)o.push(void 0);return o.splice(n,0,o.splice(e,1)[0]),o}/*! - * mustache.js - Logic-less {{mustache}} templates with JavaScript - * http://github.com/janl/mustache.js - */var objectToString=Object.prototype.toString,isArray=Array.isArray||function(e){return objectToString.call(e)==="[object Array]"};function isFunction(o){return typeof o=="function"}function typeStr(o){return isArray(o)?"array":typeof o}function escapeRegExp(o){return o.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function hasProperty(o,e){return o!=null&&typeof o=="object"&&e in o}function primitiveHasOwnProperty(o,e){return o!=null&&typeof o!="object"&&o.hasOwnProperty&&o.hasOwnProperty(e)}var regExpTest=RegExp.prototype.test;function testRegExp(o,e){return regExpTest.call(o,e)}var nonSpaceRe=/\S/;function isWhitespace(o){return!testRegExp(nonSpaceRe,o)}var entityMap={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function escapeHtml(o){return String(o).replace(/[&<>"'`=\/]/g,function(n){return entityMap[n]})}var whiteRe=/\s*/,spaceRe=/\s+/,equalsRe=/\s*=/,curlyRe=/\s*\}/,tagRe=/#|\^|\/|>|\{|&|=|!/;function parseTemplate(o,e){if(!o)return[];var n=!1,r=[],c=[],u=[],h=!1,p=!1,b="",y=0;function k(){if(h&&!p)for(;u.length;)delete c[u.pop()];else u=[];h=!1,p=!1}var A,R,N;function F(Se){if(typeof Se=="string"&&(Se=Se.split(spaceRe,2)),!isArray(Se)||Se.length!==2)throw new Error("Invalid tags: "+Se);A=new RegExp(escapeRegExp(Se[0])+"\\s*"),R=new RegExp("\\s*"+escapeRegExp(Se[1])),N=new RegExp("\\s*"+escapeRegExp("}"+Se[1]))}F(e||mustache.tags);for(var V=new Scanner(o),W,J,te,j,ae,fe;!V.eos();){if(W=V.pos,te=V.scanUntil(A),te)for(var _e=0,ne=te.length;_e"?ae=[J,te,W,V.pos,b,y,n]:ae=[J,te,W,V.pos],y++,c.push(ae),J==="#"||J==="^")r.push(ae);else if(J==="/"){if(fe=r.pop(),!fe)throw new Error('Unopened section "'+te+'" at '+W);if(fe[1]!==te)throw new Error('Unclosed section "'+fe[1]+'" at '+W)}else J==="name"||J==="{"||J==="&"?p=!0:J==="="&&F(te)}if(k(),fe=r.pop(),fe)throw new Error('Unclosed section "'+fe[1]+'" at '+V.pos);return nestTokens(squashTokens(c))}function squashTokens(o){for(var e=[],n,r,c=0,u=o.length;c0?r[r.length-1][4]:e;break;default:n.push(c)}return e}function Scanner(o){this.string=o,this.tail=o,this.pos=0}Scanner.prototype.eos=function(){return this.tail===""};Scanner.prototype.scan=function(e){var n=this.tail.match(e);if(!n||n.index!==0)return"";var r=n[0];return this.tail=this.tail.substring(r.length),this.pos+=r.length,r};Scanner.prototype.scanUntil=function(e){var n=this.tail.search(e),r;switch(n){case-1:r=this.tail,this.tail="";break;case 0:r="";break;default:r=this.tail.substring(0,n),this.tail=this.tail.substring(n)}return this.pos+=r.length,r};function Context$1(o,e){this.view=o,this.cache={".":this.view},this.parent=e}Context$1.prototype.push=function(e){return new Context$1(e,this)};Context$1.prototype.lookup=function(e){var n=this.cache,r;if(n.hasOwnProperty(e))r=n[e];else{for(var c=this,u,h,p,b=!1;c;){if(e.indexOf(".")>0)for(u=c.view,h=e.split("."),p=0;u!=null&&p"?y=this.renderPartial(p,n,r,u):b==="&"?y=this.unescapedValue(p,n):b==="name"?y=this.escapedValue(p,n,u):b==="text"&&(y=this.rawValue(p)),y!==void 0&&(h+=y);return h};Writer.prototype.renderSection=function(e,n,r,c,u){var h=this,p="",b=n.lookup(e[1]);function y(R){return h.render(R,n,r,u)}if(b){if(isArray(b))for(var k=0,A=b.length;k0||!r)&&(u[h]=c+u[h]);return u.join(` -`)};Writer.prototype.renderPartial=function(e,n,r,c){if(r){var u=this.getConfigTags(c),h=isFunction(r)?r(e[1]):r[e[1]];if(h!=null){var p=e[6],b=e[5],y=e[4],k=h;b==0&&y&&(k=this.indentPartial(h,y,p));var A=this.parse(k,u);return this.renderTokens(A,n,r,k,c)}}};Writer.prototype.unescapedValue=function(e,n){var r=n.lookup(e[1]);if(r!=null)return r};Writer.prototype.escapedValue=function(e,n,r){var c=this.getConfigEscape(r)||mustache.escape,u=n.lookup(e[1]);if(u!=null)return typeof u=="number"&&c===mustache.escape?String(u):c(u)};Writer.prototype.rawValue=function(e){return e[1]};Writer.prototype.getConfigTags=function(e){return isArray(e)?e:e&&typeof e=="object"?e.tags:void 0};Writer.prototype.getConfigEscape=function(e){if(e&&typeof e=="object"&&!isArray(e))return e.escape};var mustache={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(o){defaultWriter.templateCache=o},get templateCache(){return defaultWriter.templateCache}},defaultWriter=new Writer;mustache.clearCache=function(){return defaultWriter.clearCache()};mustache.parse=function(e,n){return defaultWriter.parse(e,n)};mustache.render=function(e,n,r,c){if(typeof e!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+typeStr(e)+'" was given as the first argument for mustache#render(template, view, partials)');return defaultWriter.render(e,n,r,c)};mustache.escape=escapeHtml;mustache.Scanner=Scanner;mustache.Context=Context$1;mustache.Writer=Writer;function previewTitle(o,e,n){let r=o.find(h=>h.name===(e==null?void 0:e.schema));if(!(r!=null&&r.cardTitle))return noTemplate(r,e);let c=e.data,u=mustache.render(r.cardTitle,c);return!u||u===""?noTemplate(r,e):stripHtml(u.slice(0,300))}function noTemplate(o,e){var r;if((o==null?void 0:o.type)==="files")return e._file.path;let n=stripHtml(e==null?void 0:e.data[(r=o.fields.filter(c=>c.info.name==="text")[0])==null?void 0:r.name]).slice(0,300);return n.trim()===""?"~Untitled~":n}function create_else_block$j(o){let e;return{c(){e=text("New Record")},m(n,r){insert$1(n,e,r)},p:noop,d(n){n&&detach(e)}}}function create_if_block$J(o){let e=previewTitle(o[3].schemas,o[1])+"",n;return{c(){n=text(e)},m(r,c){insert$1(r,n,c)},p(r,c){c&2&&e!==(e=previewTitle(r[3].schemas,r[1])+"")&&set_data(n,e)},d(r){r&&detach(n)}}}function create_fragment$13(o){let e,n,r=o[0].label.toUpperCase()+"",c,u,h,p;function b(A,R){return A[2]?create_else_block$j:create_if_block$J}let y=b(o),k=y(o);return{c(){e=element("div"),n=element("a"),c=text(r),h=space$3(),p=element("span"),k.c(),attr(n,"class","schema-name"),attr(n,"href",u=o[3].lucentUrl+"/content/"+o[0].name),attr(p,"class","record-title"),attr(e,"class","record-header")},m(A,R){insert$1(A,e,R),append(e,n),append(n,c),append(e,h),append(e,p),k.m(p,null)},p(A,[R]){R&1&&r!==(r=A[0].label.toUpperCase()+"")&&set_data(c,r),R&1&&u!==(u=A[3].lucentUrl+"/content/"+A[0].name)&&attr(n,"href",u),y===(y=b(A))&&k?k.p(A,R):(k.d(1),k=y(A),k&&(k.c(),k.m(p,null)))},i:noop,o:noop,d(A){A&&detach(e),k.d()}}}function instance$13(o,e,n){const r=getContext$1("channel");let{schema:c}=e,{record:u}=e,{isCreateMode:h}=e;return o.$$set=p=>{"schema"in p&&n(0,c=p.schema),"record"in p&&n(1,u=p.record),"isCreateMode"in p&&n(2,h=p.isCreateMode)},[c,u,h,r]}class Title extends SvelteComponent{constructor(e){super(),init(this,e,instance$13,create_fragment$13,safe_not_equal,{schema:0,record:1,isCreateMode:2})}}function get_each_context$l(o,e,n){const r=o.slice();return r[24]=e[n],r}function create_if_block_2$b(o){let e,n,r;return{c(){e=element("button"),e.innerHTML=` - Save`,attr(e,"type","button"),attr(e,"class","button primary ms-2 btn btn-primary btn-spinner")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[10]),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_if_block_1$n(o){let e,n,r;return{c(){e=element("button"),e.innerHTML=` - Create`,attr(e,"class","button primary btn-spinner")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[10]),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_if_block$I(o){let e,n,r,c;function u(b){o[14](b)}function h(b){o[15](b)}let p={field:o[24],schema:o[2],record:o[0],validationErrors:o[4],isCreateMode:o[3]};return o[0].data!==void 0&&(p.data=o[0].data),o[1]!==void 0&&(p.graph=o[1]),e=new FormField({props:p}),binding_callbacks.push(()=>bind(e,"data",u)),binding_callbacks.push(()=>bind(e,"graph",h)),{c(){create_component(e.$$.fragment)},m(b,y){mount_component(e,b,y),c=!0},p(b,y){const k={};y&4&&(k.schema=b[2]),y&1&&(k.record=b[0]),y&16&&(k.validationErrors=b[4]),y&8&&(k.isCreateMode=b[3]),!n&&y&1&&(n=!0,k.data=b[0].data,add_flush_callback(()=>n=!1)),!r&&y&2&&(r=!0,k.graph=b[1],add_flush_callback(()=>r=!1)),e.$set(k)},i(b){c||(transition_in(e.$$.fragment,b),c=!0)},o(b){transition_out(e.$$.fragment,b),c=!1},d(b){destroy_component(e,b)}}}function create_each_block$l(o,e){let n,r,c,u=e[5]===e[24].group&&create_if_block$I(e);return{key:o,first:null,c(){n=empty$1(),u&&u.c(),r=empty$1(),this.first=n},m(h,p){insert$1(h,n,p),u&&u.m(h,p),insert$1(h,r,p),c=!0},p(h,p){e=h,e[5]===e[24].group?u?(u.p(e,p),p&32&&transition_in(u,1)):(u=create_if_block$I(e),u.c(),transition_in(u,1),u.m(r.parentNode,r)):u&&(group_outros(),transition_out(u,1,1,()=>{u=null}),check_outros())},i(h){c||(transition_in(u),c=!0)},o(h){transition_out(u),c=!1},d(h){h&&(detach(n),detach(r)),u&&u.d(h)}}}function create_fragment$12(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te=[],j=new Map,ae,fe,_e;function ne(Le){o[11](Le)}function Se(Le){o[12](Le)}let De={schema:o[2],isCreateMode:o[3]};o[0]!==void 0&&(De.record=o[0]),o[5]!==void 0&&(De.activeContentTab=o[5]),r=new EditHeader({props:De}),binding_callbacks.push(()=>bind(r,"record",ne)),binding_callbacks.push(()=>bind(r,"activeContentTab",Se));function Be(Le,je){if(Le[3])return create_if_block_1$n;if(Le[6])return create_if_block_2$b}let Te=Be(o),Oe=Te&&Te(o);b=new Title({props:{schema:o[2],record:o[0],isCreateMode:o[3]}}),k=new ErrorAlert({props:{message:o[7]}});function yt(Le){o[13](Le)}let Tt={schema:o[2],isCreateMode:o[3]};o[5]!==void 0&&(Tt.active=o[5]),N=new ContentTabs({props:Tt}),binding_callbacks.push(()=>bind(N,"active",yt)),W=new FilePreview({props:{record:o[0],schema:o[2]}});let St=ensure_array_like(o[8]);const q=Le=>Le[24].name;for(let Le=0;Lec=!1)),!u&&je&32&&(u=!0,mn.activeContentTab=Le[5],add_flush_callback(()=>u=!1)),r.$set(mn),Te===(Te=Be(Le))&&Oe?Oe.p(Le,je):(Oe&&Oe.d(1),Oe=Te&&Te(Le),Oe&&(Oe.c(),Oe.m(n,null)));const Rt={};je&4&&(Rt.schema=Le[2]),je&1&&(Rt.record=Le[0]),je&8&&(Rt.isCreateMode=Le[3]),b.$set(Rt);const Ue={};je&128&&(Ue.message=Le[7]),k.$set(Ue);const ct={};je&4&&(ct.schema=Le[2]),je&8&&(ct.isCreateMode=Le[3]),!F&&je&32&&(F=!0,ct.active=Le[5],add_flush_callback(()=>F=!1)),N.$set(ct);const dn={};je&1&&(dn.record=Le[0]),je&4&&(dn.schema=Le[2]),W.$set(dn),je&319&&(St=ensure_array_like(Le[8]),group_outros(),te=update_keyed_each(te,je,q,1,Le,St,j,R,outro_and_destroy_block,create_each_block$l,null,get_each_context$l),check_outros())},i(Le){if(!ae){transition_in(r.$$.fragment,Le),transition_in(b.$$.fragment,Le),transition_in(k.$$.fragment,Le),transition_in(N.$$.fragment,Le),transition_in(W.$$.fragment,Le);for(let je=0;jeDe.name!=="id"),V="_default";p.fields.reduce((De,Be)=>Be.ui==="tab"?(V=Be.name,De):(De[V]=[...De[V]??[],Be.name],De),[]),onMount(()=>{W()});function W(){A={data:JSON.parse(JSON.stringify(b.data)),schema:b.schema,status:b.status,_sys:JSON.parse(JSON.stringify(b._sys)),_file:JSON.parse(JSON.stringify(b._file)),edges:JSON.parse(JSON.stringify(y.edges))}}afterUpdate(()=>{n(6,N=te())});function J(De){return N?De.returnValue="You have unsaved changes. Are you sure you want to exit?":(delete De.returnValue,"...")}function te(){return k?!1:!lodashExports.isEqual(A,{data:b.data,schema:b.schema,status:b.status,_sys:b._sys,_file:b._file,edges:y.edges})}function j(De){return De.preventDefault(),console.log("SAVE: Attempt"),n(4,r=null),n(7,c=""),new Promise(function(Be,Te){var Oe;if(!N&&!k){Be(null);return}if(!b){Be(null);return}n(1,y.edges=((Oe=y.edges)==null?void 0:Oe.filter(yt=>!yt._isTrashed&&yt.source===b.id))??[],y),axios$1.post(u.lucentUrl+"/records",{record:b,edges:y.edges,isCreateMode:k}).then(function(yt){console.log("SAVE: SAVED INLINE"),n(0,b=yt.data.records[0]),n(1,y=yt.data),k||W(),h("inlinesaved",{records:[b]}),Be(null)}).catch(function(yt){yt.response&&(typeof yt.response.data.error=="string"?n(7,c=yt.response.data.error):n(4,r=yt.response.data.error)),Be(null)})})}function ae(De){b=De,n(0,b)}function fe(De){R=De,n(5,R)}function _e(De){R=De,n(5,R)}function ne(De){o.$$.not_equal(b.data,De)&&(b.data=De,n(0,b))}function Se(De){y=De,n(1,y)}return o.$$set=De=>{"schema"in De&&n(2,p=De.schema),"record"in De&&n(0,b=De.record),"graph"in De&&n(1,y=De.graph),"isCreateMode"in De&&n(3,k=De.isCreateMode)},o.$$.update=()=>{o.$$.dirty&16&&n(7,c=r?`Record submission failed. ${Object.entries(r).length} error(s)`:null)},n(4,r=null),[b,y,p,k,r,R,N,c,F,J,j,ae,fe,_e,ne,Se]}class InlineEdit extends SvelteComponent{constructor(e){super(),init(this,e,instance$12,create_fragment$12,safe_not_equal,{schema:2,record:0,graph:1,isCreateMode:3})}}function get_each_context$k(o,e,n){const r=o.slice();return r[11]=e[n],r}function create_if_block$H(o){let e=[],n=new Map,r,c=ensure_array_like(o[2]);const u=p=>p[11].id;for(let p=0;p{axios.get(c.lucentUrl+"/records/suggestions",{params:{schema:p.collections[0],field:"search",value:b,ui:"search"}}).then(V=>{n(2,r=V.data)}).catch(V=>{n(2,r=[]),console.log(V)})},500);function k(F,V){F.preventDefault(),n(6,h=V.id),u("addFilter"),n(6,h="")}function A(){b=this.value,n(1,b)}const R=(F,V)=>k(V,F),N=(F,V)=>k(V,F);return o.$$set=F=>{"value"in F&&n(6,h=F.value),"field"in F&&n(0,p=F.field)},n(2,r=[]),[p,b,r,c,y,k,h,A,R,N]}class FilterReferenceInput extends SvelteComponent{constructor(e){super(),init(this,e,instance$11,create_fragment$11,safe_not_equal,{value:6,field:0})}}function get_each_context$j(o,e,n){const r=o.slice();return r[38]=e[n],r}function get_each_context_1$6(o,e,n){const r=o.slice();return r[41]=e[n],r}function get_each_context_2$2(o,e,n){const r=o.slice();return r[38]=e[n],r}function create_if_block_4$5(o){let e,n,r,c,u,h,p,b;n=new Icon({props:{icon:"arrow-left"}});let y=ensure_array_like(o[9]),k=[];for(let A=0;Abind(A,"value",W)),A.$on("addFilter",o[13]),{c(){e=element("button"),create_component(n.$$.fragment),r=text(` - Back`),c=space$3(),u=element("div"),h=text("field: "),b=text(p),y=space$3(),k=element("div"),create_component(A.$$.fragment),attr(e,"class","dropdown-item button"),attr(u,"class","selected-filter"),attr(k,"class","mt-2")},m(te,j){insert$1(te,e,j),mount_component(n,e,null),append(e,r),insert$1(te,c,j),insert$1(te,u,j),append(u,h),append(u,b),insert$1(te,y,j),insert$1(te,k,j),mount_component(A,k,null),N=!0,F||(V=listen(e,"click",o[30]),F=!0)},p(te,j){(!N||j[0]&16)&&p!==(p=te[4].label+"")&&set_data(b,p);const ae={};j[0]&16&&(ae.field=te[4]),!R&&j[0]&4&&(R=!0,ae.value=te[2],add_flush_callback(()=>R=!1)),A.$set(ae)},i(te){N||(transition_in(n.$$.fragment,te),transition_in(A.$$.fragment,te),N=!0)},o(te){transition_out(n.$$.fragment,te),transition_out(A.$$.fragment,te),N=!1},d(te){te&&(detach(e),detach(c),detach(u),detach(y),detach(k)),destroy_component(n),destroy_component(A),F=!1,V()}}}function create_default_slot$7(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae,fe,_e,ne,Se,De,Be,Te=!o[3]&&create_if_block_4$5(o),Oe=o[3]&&!o[5]&&create_if_block_3$8(o),yt=o[3]&&o[5]&&create_if_block_2$a(o),Tt=!o[4]&&create_if_block_1$m(o),St=o[4]&&create_if_block$G(o);return J=new Icon({props:{icon:"arrow-left"}}),{c(){e=element("div"),n=element("button"),n.textContent="Filter by field",r=space$3(),c=element("button"),c.textContent="Filter by Reference",u=space$3(),h=element("button"),h.textContent="Advanced filter",p=space$3(),b=element("div"),Te&&Te.c(),y=space$3(),Oe&&Oe.c(),k=space$3(),yt&&yt.c(),A=space$3(),R=element("div"),Tt&&Tt.c(),N=space$3(),St&&St.c(),F=space$3(),V=element("div"),W=element("button"),create_component(J.$$.fragment),te=text(` - Back`),j=space$3(),ae=element("form"),fe=element("input"),_e=space$3(),ne=element("button"),ne.textContent="Submit",attr(n,"class","dropdown-item button"),attr(c,"class","dropdown-item button"),attr(h,"class","dropdown-item button"),toggle_class(e,"hide",o[6]!=="main"),toggle_class(b,"hide",o[6]!=="byField"),toggle_class(R,"hide",o[6]!=="byReference"),attr(W,"class","dropdown-item button"),attr(fe,"type","search"),attr(fe,"class","mb-2 mt-2"),attr(fe,"placeholder","Advanced filters"),fe.required=!0,attr(ne,"class","button applied-filter"),toggle_class(V,"hide",o[6]!=="advanced")},m(q,Le){insert$1(q,e,Le),append(e,n),append(e,r),append(e,c),append(e,u),append(e,h),insert$1(q,p,Le),insert$1(q,b,Le),Te&&Te.m(b,null),append(b,y),Oe&&Oe.m(b,null),append(b,k),yt&&yt.m(b,null),insert$1(q,A,Le),insert$1(q,R,Le),Tt&&Tt.m(R,null),append(R,N),St&&St.m(R,null),insert$1(q,F,Le),insert$1(q,V,Le),append(V,W),mount_component(J,W,null),append(W,te),append(V,j),append(V,ae),append(ae,fe),set_input_value(fe,o[1]),append(ae,_e),append(ae,ne),Se=!0,De||(Be=[listen(n,"click",o[19]),listen(c,"click",o[20]),listen(h,"click",o[21]),listen(W,"click",o[32]),listen(fe,"input",o[33]),listen(ae,"submit",o[8])],De=!0)},p(q,Le){(!Se||Le[0]&64)&&toggle_class(e,"hide",q[6]!=="main"),q[3]?Te&&(group_outros(),transition_out(Te,1,1,()=>{Te=null}),check_outros()):Te?(Te.p(q,Le),Le[0]&8&&transition_in(Te,1)):(Te=create_if_block_4$5(q),Te.c(),transition_in(Te,1),Te.m(b,y)),q[3]&&!q[5]?Oe?(Oe.p(q,Le),Le[0]&40&&transition_in(Oe,1)):(Oe=create_if_block_3$8(q),Oe.c(),transition_in(Oe,1),Oe.m(b,k)):Oe&&(group_outros(),transition_out(Oe,1,1,()=>{Oe=null}),check_outros()),q[3]&&q[5]?yt?(yt.p(q,Le),Le[0]&40&&transition_in(yt,1)):(yt=create_if_block_2$a(q),yt.c(),transition_in(yt,1),yt.m(b,null)):yt&&(group_outros(),transition_out(yt,1,1,()=>{yt=null}),check_outros()),(!Se||Le[0]&64)&&toggle_class(b,"hide",q[6]!=="byField"),q[4]?Tt&&(group_outros(),transition_out(Tt,1,1,()=>{Tt=null}),check_outros()):Tt?(Tt.p(q,Le),Le[0]&16&&transition_in(Tt,1)):(Tt=create_if_block_1$m(q),Tt.c(),transition_in(Tt,1),Tt.m(R,N)),q[4]?St?(St.p(q,Le),Le[0]&16&&transition_in(St,1)):(St=create_if_block$G(q),St.c(),transition_in(St,1),St.m(R,null)):St&&(group_outros(),transition_out(St,1,1,()=>{St=null}),check_outros()),(!Se||Le[0]&64)&&toggle_class(R,"hide",q[6]!=="byReference"),Le[0]&2&&fe.value!==q[1]&&set_input_value(fe,q[1]),(!Se||Le[0]&64)&&toggle_class(V,"hide",q[6]!=="advanced")},i(q){Se||(transition_in(Te),transition_in(Oe),transition_in(yt),transition_in(Tt),transition_in(St),transition_in(J.$$.fragment,q),Se=!0)},o(q){transition_out(Te),transition_out(Oe),transition_out(yt),transition_out(Tt),transition_out(St),transition_out(J.$$.fragment,q),Se=!1},d(q){q&&(detach(e),detach(p),detach(b),detach(A),detach(R),detach(F),detach(V)),Te&&Te.d(),Oe&&Oe.d(),yt&&yt.d(),Tt&&Tt.d(),St&&St.d(),destroy_component(J),De=!1,run_all(Be)}}}function create_button_slot$6(o){let e,n,r,c,u;return n=new Icon({props:{icon:"filter"}}),{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),c=element("span"),c.textContent="Filter",attr(c,"class","ms-1"),attr(e,"slot","button")},m(h,p){insert$1(h,e,p),mount_component(n,e,null),append(e,r),append(e,c),u=!0},p:noop,i(h){u||(transition_in(n.$$.fragment,h),u=!0)},o(h){transition_out(n.$$.fragment,h),u=!1},d(h){h&&detach(e),destroy_component(n)}}}function create_fragment$10(o){let e,n,r,c={$$slots:{button:[create_button_slot$6],default:[create_default_slot$7]},$$scope:{ctx:o}};return n=new Dropdown({props:c}),o[34](n),{c(){e=element("div"),create_component(n.$$.fragment)},m(u,h){insert$1(u,e,h),mount_component(n,e,null),r=!0},p(u,h){const p={};h[0]&254|h[1]&32768&&(p.$$scope={dirty:h,ctx:u}),n.$set(p)},i(u){r||(transition_in(n.$$.fragment,u),r=!0)},o(u){transition_out(n.$$.fragment,u),r=!1},d(u){u&&detach(e),o[34](null),destroy_component(n)}}}function instance$10(o,e,n){const r=createEventDispatcher();let{schema:c}=e,{systemFields:u=[]}=e,{operators:h}=e,{inModal:p}=e,{modalUrl:b}=e,y,k="",A=u;c.type==="collection"&&(A=u.filter(rn=>rn.files===!1));function R(rn){rn.preventDefault();let Fe=k.split("=")[0]??"";if(!Fe)return;let mt=`filter[${Fe}]`,de=k.split("=")[1]??"";if(!de)return;const Eo=new URL(b??window.location.href);Eo.searchParams.set("skip","0"),Eo.searchParams.set(mt,de),p?r("refresh",Eo):window.location.replace(Eo),Se()}let N=null,F=null,V=null,W=null,J="main",te=null,j=[...c.fields,...A].filter(rn=>{var Fe;return!["file","json","reference"].includes(((Fe=rn.info)==null?void 0:Fe.name)??rn.ui)}),ae=[...c.fields].filter(rn=>{var Fe;return["reference"].includes(((Fe=rn.info)==null?void 0:Fe.name)??rn.ui)});function fe(rn,Fe){n(3,F=Fe),n(7,te=h.filter(mt=>{var de;return mt.uis.includes((de=F==null?void 0:F.info)==null?void 0:de.name)||mt.uis[0]==="*"}))}function _e(rn,Fe){n(4,V=Fe),n(5,W=h.find(mt=>mt.name==="eq"))}function ne(rn){rn.preventDefault();let Fe="",mt,de=F??V;c.fields.find(jn=>jn.name===de.name)&&(de.info.name==="reference"&&W.name==="eq"?(Fe="children."+de.name+".id",mt=`filter[${Fe}]`):(Fe="data.",mt=`filter[${Fe+de.name}_${W.name}]`));const Eo=new URL(b??window.location.href);Eo.searchParams.set("skip","0"),Eo.searchParams.set(mt,N),p?(r("refresh",Eo),y.close()):window.location.href=Eo.toString(),Se()}function Se(){n(3,F=null),n(5,W=null),n(6,J="main"),n(4,V=null)}const De=rn=>n(6,J="byField"),Be=rn=>n(6,J="byReference"),Te=rn=>n(6,J="advanced"),Oe=rn=>n(6,J="main"),yt=(rn,Fe)=>fe(Fe,rn),Tt=rn=>n(3,F=null),St=(rn,Fe)=>n(5,W=rn),q=rn=>n(5,W=null);function Le(){N=this.value,n(2,N)}const je=rn=>n(6,J="main"),mn=(rn,Fe)=>_e(Fe,rn),Rt=rn=>n(4,V=null);function Ue(rn){N=rn,n(2,N)}const ct=rn=>n(6,J="main");function dn(){k=this.value,n(1,k)}function Zt(rn){binding_callbacks[rn?"unshift":"push"](()=>{y=rn,n(0,y)})}return o.$$set=rn=>{"schema"in rn&&n(14,c=rn.schema),"systemFields"in rn&&n(15,u=rn.systemFields),"operators"in rn&&n(16,h=rn.operators),"inModal"in rn&&n(17,p=rn.inModal),"modalUrl"in rn&&n(18,b=rn.modalUrl)},[y,k,N,F,V,W,J,te,R,j,ae,fe,_e,ne,c,u,h,p,b,De,Be,Te,Oe,yt,Tt,St,q,Le,je,mn,Rt,Ue,ct,dn,Zt]}class FilterFields extends SvelteComponent{constructor(e){super(),init(this,e,instance$10,create_fragment$10,safe_not_equal,{schema:14,systemFields:15,operators:16,inModal:17,modalUrl:18},null,[-1,-1])}}function create_fragment$$(o){let e,n,r,c,u,h,p;return{c(){e=element("fieldset"),n=element("label"),r=element("span"),c=text(` - Upload file - - `),u=element("input"),attr(r,"class","spinner-border spinner-border-sm"),attr(r,"role","status"),attr(r,"aria-hidden","true"),attr(u,"class","form-control"),attr(u,"type","file"),attr(u,"id","formFile"),u.multiple=!0,attr(u,"accept",mimeTypes),u.disabled=o[0],u.hidden=!0,attr(n,"class","button primary btn-spinner "),attr(e,"class","upload-button"),e.disabled=o[0]},m(b,y){insert$1(b,e,y),append(e,n),append(n,r),append(n,c),append(n,u),h||(p=listen(u,"input",o[1]),h=!0)},p(b,[y]){y&1&&(u.disabled=b[0]),y&1&&(e.disabled=b[0])},i:noop,o:noop,d(b){b&&detach(e),h=!1,p()}}}let mimeTypes="";function instance$$(o,e,n){const r=createEventDispatcher(),c=getContext$1("channel");let{schema:u}=e,h=[],p=!1;function b(y){n(0,p=!0),h=y.target.files?[...y.target.files]:[];let k=new FormData;k.append("schema",u.name),Array.from(h).forEach(function(A){k.append("files[]",A)}),r("beforeUpload",h),axios.post(c.lucentUrl+"/files/upload",k,{headers:{"Content-Type":"multipart/form-data"}}).then(A=>{A.data.error?r("uploadError",A.data.error):r("uploadComplete",A.data),n(0,p=!1)}).catch(A=>{n(0,p=!1),console.log(A.response.data)})}return o.$$set=y=>{"schema"in y&&n(2,u=y.schema)},[p,b,u]}class Uploader extends SvelteComponent{constructor(e){super(),init(this,e,instance$$,create_fragment$$,safe_not_equal,{schema:2})}}function get_each_context$i(o,e,n){const r=o.slice();return r[18]=e[n],r}function get_each_context_1$5(o,e,n){const r=o.slice();return r[18]=e[n],r}function create_each_block_1$5(o){let e,n,r,c,u,h,p,b,y,k,A=o[18].label+"",R,N,F,V;r=new Icon({props:{icon:"arrow-up-short-wide"}});function W(...j){return o[10](o[18],...j)}p=new Icon({props:{icon:"arrow-down-wide-short"}});function J(...j){return o[11](o[18],...j)}function te(...j){return o[12](o[18],...j)}return{c(){e=element("div"),n=element("button"),create_component(r.$$.fragment),u=space$3(),h=element("button"),create_component(p.$$.fragment),y=space$3(),k=element("button"),R=text(A),attr(n,"title","Sort Ascending"),attr(n,"class",c="button button-icon "+(o[18].name==o[1].name&&!o[0].startsWith("-")?"active":"")),attr(h,"title","Sort Descending"),attr(h,"class",b="button button-icon "+(o[18].name==o[1].name&&o[0].startsWith("-")?"active":"")),attr(k,"title","Sort Ascending"),attr(k,"class","button"),attr(e,"class","dropdown-item")},m(j,ae){insert$1(j,e,ae),append(e,n),mount_component(r,n,null),append(e,u),append(e,h),mount_component(p,h,null),append(e,y),append(e,k),append(k,R),N=!0,F||(V=[listen(n,"click",W),listen(h,"click",J),listen(k,"click",te)],F=!0)},p(j,ae){o=j,(!N||ae&11&&c!==(c="button button-icon "+(o[18].name==o[1].name&&!o[0].startsWith("-")?"active":"")))&&attr(n,"class",c),(!N||ae&11&&b!==(b="button button-icon "+(o[18].name==o[1].name&&o[0].startsWith("-")?"active":"")))&&attr(h,"class",b),(!N||ae&8)&&A!==(A=o[18].label+"")&&set_data(R,A)},i(j){N||(transition_in(r.$$.fragment,j),transition_in(p.$$.fragment,j),N=!0)},o(j){transition_out(r.$$.fragment,j),transition_out(p.$$.fragment,j),N=!1},d(j){j&&detach(e),destroy_component(r),destroy_component(p),F=!1,run_all(V)}}}function create_each_block$i(o){let e,n,r,c,u,h,p,b,y,k,A=o[18].label+"",R,N,F,V,W;r=new Icon({props:{icon:"arrow-up-short-wide"}});function J(...ae){return o[13](o[18],...ae)}p=new Icon({props:{icon:"arrow-down-wide-short"}});function te(...ae){return o[14](o[18],...ae)}function j(...ae){return o[15](o[18],...ae)}return{c(){e=element("div"),n=element("button"),create_component(r.$$.fragment),u=space$3(),h=element("button"),create_component(p.$$.fragment),y=space$3(),k=element("button"),R=text(A),N=space$3(),attr(n,"title","Sort Ascending"),attr(n,"class",c="button button-icon "+(o[18].name==o[0]?"active":"")),attr(h,"title","Sort Descending"),attr(h,"class",b="button button-icon "+("-"+o[18].name==o[0]?"active":"")),attr(k,"title","Sort Ascending"),attr(k,"class","button"),attr(e,"class","dropdown-item")},m(ae,fe){insert$1(ae,e,fe),append(e,n),mount_component(r,n,null),append(e,u),append(e,h),mount_component(p,h,null),append(e,y),append(e,k),append(k,R),append(e,N),F=!0,V||(W=[listen(n,"click",J),listen(h,"click",te),listen(k,"click",j)],V=!0)},p(ae,fe){o=ae,(!F||fe&5&&c!==(c="button button-icon "+(o[18].name==o[0]?"active":"")))&&attr(n,"class",c),(!F||fe&5&&b!==(b="button button-icon "+("-"+o[18].name==o[0]?"active":"")))&&attr(h,"class",b),(!F||fe&4)&&A!==(A=o[18].label+"")&&set_data(R,A)},i(ae){F||(transition_in(r.$$.fragment,ae),transition_in(p.$$.fragment,ae),F=!0)},o(ae){transition_out(r.$$.fragment,ae),transition_out(p.$$.fragment,ae),F=!1},d(ae){ae&&detach(e),destroy_component(r),destroy_component(p),V=!1,run_all(W)}}}function create_default_slot$6(o){let e,n,r,c,u,h=ensure_array_like(o[3]),p=[];for(let R=0;Rtransition_out(p[R],1,1,()=>{p[R]=null});let y=ensure_array_like(o[2]),k=[];for(let R=0;Rtransition_out(k[R],1,1,()=>{k[R]=null});return{c(){e=element("div");for(let R=0;R{A[V]=null}),check_outros(),c=A[r],c||(c=A[r]=k[r](N),c.c()),transition_in(c,1),c.m(e,u)),(!y||F&2)&&p!==(p=N[1].label+"")&&set_data(b,p)},i(N){y||(transition_in(c),y=!0)},o(N){transition_out(c),y=!1},d(N){N&&detach(e),A[r].d()}}}function create_fragment$_(o){let e,n;return e=new Dropdown({props:{$$slots:{button:[create_button_slot$5],default:[create_default_slot$6]},$$scope:{ctx:o}}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,[c]){const u={};c&8388623&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function instance$_(o,e,n){let r,c;const u=createEventDispatcher();let{schema:h}=e,{sortParam:p}=e,{sortField:b}=e,{inModal:y}=e,{modalUrl:k}=e,{systemFields:A=[]}=e;function R(fe){const _e=new URL(k??window.location.href);_e.searchParams.set("sort",fe),y?u("refresh",_e):window.location=_e}function N(fe,_e){fe.preventDefault();let ne=A.map(Se=>Se.name).includes(_e.name)?"":"data.";return R(ne+_e.name)}function F(fe,_e){fe.preventDefault();let ne=A.map(Se=>Se.name).includes(_e.name)?"":"data.";return R("-"+ne+_e.name)}const V=(fe,_e)=>N(_e,fe),W=(fe,_e)=>F(_e,fe),J=(fe,_e)=>N(_e,fe),te=(fe,_e)=>N(_e,fe),j=(fe,_e)=>F(_e,fe),ae=(fe,_e)=>N(_e,fe);return o.$$set=fe=>{"schema"in fe&&n(6,h=fe.schema),"sortParam"in fe&&n(0,p=fe.sortParam),"sortField"in fe&&n(1,b=fe.sortField),"inModal"in fe&&n(7,y=fe.inModal),"modalUrl"in fe&&n(8,k=fe.modalUrl),"systemFields"in fe&&n(9,A=fe.systemFields)},o.$$.update=()=>{o.$$.dirty&64&&n(3,r=h.fields.filter(fe=>!["reference","file","json","id","rich","markdown","block"].includes(fe.info.name))),o.$$.dirty&512&&n(2,c=A),o.$$.dirty&576&&h.type==="collection"&&n(2,c=A.filter(fe=>fe.files===!1))},[p,b,c,r,N,F,h,y,k,A,V,W,J,te,j,ae]}class SortFields extends SvelteComponent{constructor(e){super(),init(this,e,instance$_,create_fragment$_,safe_not_equal,{schema:6,sortParam:0,sortField:1,inModal:7,modalUrl:8,systemFields:9})}}function create_else_block$g(o){var b;let e=o[3].label+"",n,r,c=(((b=o[0].find(o[11]))==null?void 0:b.symbol)??"")+"",u,h,p;return{c(){n=text(e),r=space$3(),u=text(c),h=space$3(),p=text(o[2])},m(y,k){insert$1(y,n,k),insert$1(y,r,k),insert$1(y,u,k),insert$1(y,h,k),insert$1(y,p,k)},p(y,k){var A;k&8&&e!==(e=y[3].label+"")&&set_data(n,e),k&9&&c!==(c=(((A=y[0].find(y[11]))==null?void 0:A.symbol)??"")+"")&&set_data(u,c),k&4&&set_data(p,y[2])},d(y){y&&(detach(n),detach(r),detach(u),detach(h),detach(p))}}}function create_if_block$E(o){let e=o[3].label+"",n,r,c=previewTitle(o[4].schemas,o[5])+"",u;return{c(){n=text(e),r=text(" is "),u=text(c)},m(h,p){insert$1(h,n,p),insert$1(h,r,p),insert$1(h,u,p)},p(h,p){p&8&&e!==(e=h[3].label+"")&&set_data(n,e)},d(h){h&&(detach(n),detach(r),detach(u))}}}function create_fragment$Z(o){let e,n,r,c,u,h,p;function b(A,R){return A[3].isReference&&A[5]?create_if_block$E:create_else_block$g}let y=b(o),k=y(o);return c=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){e=element("span"),k.c(),n=space$3(),r=element("button"),create_component(c.$$.fragment),attr(r,"type","button"),attr(r,"class","button-text"),attr(r,"aria-label","Close"),attr(e,"class","applied-filter")},m(A,R){insert$1(A,e,R),k.m(e,null),append(e,n),append(e,r),mount_component(c,r,null),u=!0,h||(p=listen(r,"click",prevent_default(o[12])),h=!0)},p(A,[R]){y===(y=b(A))&&k?k.p(A,R):(k.d(1),k=y(A),k&&(k.c(),k.m(e,n)))},i(A){u||(transition_in(c.$$.fragment,A),u=!0)},o(A){transition_out(c.$$.fragment,A),u=!1},d(A){A&&detach(e),k.d(),destroy_component(c),h=!1,p()}}}function extractOperator(o){return e=>{if(e.isReference)return e.operator="eq",e;const n=o.split("_");return e.operator=n[n.length-1]??"eq",e}}function extractLabel(o,e){return n=>{let r="";n.isReference?r=e.split(".")[1]:r=e.replace("_"+n.operator,"");const c=o.fields.find(u=>u.name===r);return n.label=(c==null?void 0:c.label)??r,n}}function instance$Z(o,e,n){const r=getContext$1("channel"),c=createEventDispatcher();let{schema:u}=e,{operators:h}=e,{key:p}=e,{value:b}=e,{inModal:y}=e,{modalUrl:k}=e,{graph:A}=e,R={label:"",operator:"",value:b,isReference:p.startsWith("children")};R=[extractOperator(p),extractLabel(u,p)].reduce((te,j)=>j(te),R);const N=F(A,b);function F(te,j){return R.isReference?te.records.find(ae=>ae.id===j):null}function V(te){let j=`filter[${te}]`;const ae=new URL(k??window.location.href);ae.searchParams.set("skip","0"),ae.searchParams.delete(j),y?c("refresh",ae):window.location.replace(ae)}const W=te=>te.name===R.operator,J=()=>V(p);return o.$$set=te=>{"schema"in te&&n(7,u=te.schema),"operators"in te&&n(0,h=te.operators),"key"in te&&n(1,p=te.key),"value"in te&&n(2,b=te.value),"inModal"in te&&n(8,y=te.inModal),"modalUrl"in te&&n(9,k=te.modalUrl),"graph"in te&&n(10,A=te.graph)},[h,p,b,R,r,N,V,u,y,k,A,W,J]}class AppliedFilter extends SvelteComponent{constructor(e){super(),init(this,e,instance$Z,create_fragment$Z,safe_not_equal,{schema:7,operators:0,key:1,value:2,inModal:8,modalUrl:9,graph:10})}}function create_if_block$D(o){let e,n,r,c,u,h,p;return c=new Icon({props:{width:12,height:12,icon:"close"}}),{c(){e=element("span"),n=text(`Not linked - - `),r=element("button"),create_component(c.$$.fragment),attr(r,"type","button"),attr(r,"class","button-text"),attr(r,"aria-label","Close"),attr(e,"class","applied-filter")},m(b,y){insert$1(b,e,y),append(e,n),append(e,r),mount_component(c,r,null),u=!0,h||(p=listen(r,"click",prevent_default(o[4])),h=!0)},p:noop,i(b){u||(transition_in(c.$$.fragment,b),u=!0)},o(b){transition_out(c.$$.fragment,b),u=!1},d(b){b&&detach(e),destroy_component(c),h=!1,p()}}}function create_fragment$Y(o){let e=o[0].searchParams.get("notlinked"),n,r,c=e&&create_if_block$D(o);return{c(){c&&c.c(),n=empty$1()},m(u,h){c&&c.m(u,h),insert$1(u,n,h),r=!0},p(u,[h]){e&&c.p(u,h)},i(u){r||(transition_in(c),r=!0)},o(u){transition_out(c),r=!1},d(u){u&&detach(n),c&&c.d(u)}}}function instance$Y(o,e,n){getContext$1("channel");const r=createEventDispatcher();let{inModal:c}=e,{modalUrl:u}=e;const h=new URL(u??window.location.href);function p(y){const k=new URL(u??window.location.href);k.searchParams.set("skip","0"),k.searchParams.delete("notlinked"),c?r("refresh",k):window.location.replace(k)}const b=()=>p();return o.$$set=y=>{"inModal"in y&&n(2,c=y.inModal),"modalUrl"in y&&n(3,u=y.modalUrl)},[h,p,c,u,b]}class AppliedFilterNotLinked extends SvelteComponent{constructor(e){super(),init(this,e,instance$Y,create_fragment$Y,safe_not_equal,{inModal:2,modalUrl:3})}}function get_each_context$h(o,e,n){const r=o.slice();return r[22]=e[n][0],r[23]=e[n][1],r}function create_else_block_1$2(o){let e,n,r;return n=new Uploader({props:{schema:o[0]}}),n.$on("uploadComplete",o[13]),{c(){e=element("div"),create_component(n.$$.fragment)},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p(c,u){const h={};u&1&&(h.schema=c[0]),n.$set(h)},i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block_4$4(o){let e,n=!o[5]&&o[7]&&create_if_block_5$2(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,c){!r[5]&&r[7]?n?n.p(r,c):(n=create_if_block_5$2(r),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},i:noop,o:noop,d(r){r&&detach(e),n&&n.d(r)}}}function create_if_block_5$2(o){let e,n,r;return{c(){e=element("a"),n=text("New Record"),attr(e,"href",r=o[10].lucentUrl+"/records/new?schema="+o[0].name),attr(e,"class","button")},m(c,u){insert$1(c,e,u),append(e,n)},p(c,u){u&1&&r!==(r=c[10].lucentUrl+"/records/new?schema="+c[0].name)&&attr(e,"href",r)},d(c){c&&detach(e)}}}function create_if_block_1$l(o){let e,n;return e=new Dropdown({props:{orientation:"right",$$slots:{button:[create_button_slot$4],default:[create_default_slot$5]},$$scope:{ctx:o}}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&67109009&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_else_block$f(o){let e,n,r,c,u,h,p,b,y,k;return{c(){e=element("a"),n=text("Export to CSV"),r=space$3(),c=element("a"),u=text("View trashed records"),p=space$3(),b=element("a"),y=text("View unlinked records"),attr(e,"class","dropdown-item"),attr(e,"href",o[11]),attr(c,"class","dropdown-item"),attr(c,"href",h=o[10].lucentUrl+"/content/"+o[0].name+"?filter[status_in]=trashed"),attr(b,"class","dropdown-item"),attr(b,"href",k=o[10].lucentUrl+"/content/"+o[0].name+"?notlinked=*")},m(A,R){insert$1(A,e,R),append(e,n),insert$1(A,r,R),insert$1(A,c,R),append(c,u),insert$1(A,p,R),insert$1(A,b,R),append(b,y)},p(A,R){R&1&&h!==(h=A[10].lucentUrl+"/content/"+A[0].name+"?filter[status_in]=trashed")&&attr(c,"href",h),R&1&&k!==(k=A[10].lucentUrl+"/content/"+A[0].name+"?notlinked=*")&&attr(b,"href",k)},d(A){A&&(detach(e),detach(r),detach(c),detach(p),detach(b))}}}function create_if_block_2$9(o){let e,n=o[7]&&create_if_block_3$7(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,c){r[7]?n?n.p(r,c):(n=create_if_block_3$7(r),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},d(r){r&&detach(e),n&&n.d(r)}}}function create_if_block_3$7(o){let e,n,r;return{c(){e=element("a"),n=text("Empty trash"),attr(e,"class","dropdown-item"),attr(e,"href",r=o[10].lucentUrl+"/content/"+o[0].name+"/emptyTrash")},m(c,u){insert$1(c,e,u),append(e,n)},p(c,u){u&1&&r!==(r=c[10].lucentUrl+"/content/"+c[0].name+"/emptyTrash")&&attr(e,"href",r)},d(c){c&&detach(e)}}}function create_default_slot$5(o){let e;function n(u,h){return u[4].status_in==="trashed"?create_if_block_2$9:create_else_block$f}let r=n(o),c=r(o);return{c(){c.c(),e=empty$1()},m(u,h){c.m(u,h),insert$1(u,e,h)},p(u,h){r===(r=n(u))&&c?c.p(u,h):(c.d(1),c=r(u),c&&(c.c(),c.m(e.parentNode,e)))},d(u){u&&detach(e),c.d(u)}}}function create_button_slot$4(o){let e,n,r;return n=new Icon({props:{icon:"ellipsis-vertical"}}),{c(){e=element("div"),create_component(n.$$.fragment),attr(e,"slot","button")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p:noop,i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block$C(o){let e,n,r=ensure_array_like(Object.entries(o[4])),c=[];for(let h=0;htransition_out(c[h],1,1,()=>{c[h]=null});return{c(){for(let h=0;h0,j,ae,fe;r=new SortFields({props:{schema:o[0],sortParam:o[1],sortField:o[2],systemFields:o[9],inModal:o[5],modalUrl:o[6]}}),r.$on("refresh",o[15]);function _e(yt){o[16](yt)}let ne={systemFields:o[9],operators:o[3],filter:o[4],inModal:o[5],modalUrl:o[6]};o[0]!==void 0&&(ne.schema=o[0]),u=new FilterFields({props:ne}),binding_callbacks.push(()=>bind(u,"schema",_e)),u.$on("refresh",o[17]);const Se=[create_if_block_4$4,create_else_block_1$2],De=[];function Be(yt,Tt){return yt[0].type==="collection"?0:1}A=Be(o),R=De[A]=Se[A](o);let Te=!o[5]&&create_if_block_1$l(o);W=new AppliedFilterNotLinked({props:{inModal:o[5],modalUrl:o[6]}}),W.$on("refresh",o[18]);let Oe=te&&create_if_block$C(o);return{c(){e=element("div"),n=element("div"),create_component(r.$$.fragment),c=space$3(),create_component(u.$$.fragment),p=space$3(),b=element("form"),b.innerHTML='',y=space$3(),k=element("div"),R.c(),N=space$3(),Te&&Te.c(),F=space$3(),V=element("div"),create_component(W.$$.fragment),J=space$3(),Oe&&Oe.c(),attr(b,"method","GET"),attr(n,"class","toolbar-filters"),set_style(k,"display","flex"),set_style(k,"align-items","center"),set_style(k,"gap","4px"),attr(e,"class","toolbar"),attr(V,"class","applied-filters")},m(yt,Tt){insert$1(yt,e,Tt),append(e,n),mount_component(r,n,null),append(n,c),mount_component(u,n,null),append(n,p),append(n,b),append(e,y),append(e,k),De[A].m(k,null),append(k,N),Te&&Te.m(k,null),insert$1(yt,F,Tt),insert$1(yt,V,Tt),mount_component(W,V,null),append(V,J),Oe&&Oe.m(V,null),j=!0,ae||(fe=listen(b,"submit",o[12]),ae=!0)},p(yt,[Tt]){const St={};Tt&1&&(St.schema=yt[0]),Tt&2&&(St.sortParam=yt[1]),Tt&4&&(St.sortField=yt[2]),Tt&512&&(St.systemFields=yt[9]),Tt&32&&(St.inModal=yt[5]),Tt&64&&(St.modalUrl=yt[6]),r.$set(St);const q={};Tt&512&&(q.systemFields=yt[9]),Tt&8&&(q.operators=yt[3]),Tt&16&&(q.filter=yt[4]),Tt&32&&(q.inModal=yt[5]),Tt&64&&(q.modalUrl=yt[6]),!h&&Tt&1&&(h=!0,q.schema=yt[0],add_flush_callback(()=>h=!1)),u.$set(q);let Le=A;A=Be(yt),A===Le?De[A].p(yt,Tt):(group_outros(),transition_out(De[Le],1,1,()=>{De[Le]=null}),check_outros(),R=De[A],R?R.p(yt,Tt):(R=De[A]=Se[A](yt),R.c()),transition_in(R,1),R.m(k,N)),yt[5]?Te&&(group_outros(),transition_out(Te,1,1,()=>{Te=null}),check_outros()):Te?(Te.p(yt,Tt),Tt&32&&transition_in(Te,1)):(Te=create_if_block_1$l(yt),Te.c(),transition_in(Te,1),Te.m(k,null));const je={};Tt&32&&(je.inModal=yt[5]),Tt&64&&(je.modalUrl=yt[6]),W.$set(je),Tt&16&&(te=Object.entries(yt[4]).length>0),te?Oe?(Oe.p(yt,Tt),Tt&16&&transition_in(Oe,1)):(Oe=create_if_block$C(yt),Oe.c(),transition_in(Oe,1),Oe.m(V,null)):Oe&&(group_outros(),transition_out(Oe,1,1,()=>{Oe=null}),check_outros())},i(yt){j||(transition_in(r.$$.fragment,yt),transition_in(u.$$.fragment,yt),transition_in(R),transition_in(Te),transition_in(W.$$.fragment,yt),transition_in(Oe),j=!0)},o(yt){transition_out(r.$$.fragment,yt),transition_out(u.$$.fragment,yt),transition_out(R),transition_out(Te),transition_out(W.$$.fragment,yt),transition_out(Oe),j=!1},d(yt){yt&&(detach(e),detach(F),detach(V)),destroy_component(r),destroy_component(u),De[A].d(),Te&&Te.d(),destroy_component(W),Oe&&Oe.d(),ae=!1,fe()}}}function instance$X(o,e,n){const r=getContext$1("channel"),c=createEventDispatcher();let{sortParam:u}=e,{sortField:h}=e,{schema:p}=e,{operators:b}=e,{filter:y}=e,{inModal:k}=e,{modalUrl:A}=e,{isWritable:R}=e,{records:N}=e,{graph:F}=e,{systemFields:V=[]}=e,W=new URL(window.location.href),J=W.pathname+"/csv?"+W.searchParams.toString();function te(De){De.preventDefault();const Be=new FormData(De.target);let Te=Be.keys().next().value,Oe=Be.values().next().value;const yt=new URL(A??window.location.href);yt.searchParams.set("skip","0"),yt.searchParams.set(Te,Oe),k?c("refresh",yt):window.location=yt}function j(De){n(14,N=De.detail)}function ae(De){bubble.call(this,o,De)}function fe(De){p=De,n(0,p)}function _e(De){bubble.call(this,o,De)}function ne(De){bubble.call(this,o,De)}function Se(De){bubble.call(this,o,De)}return o.$$set=De=>{"sortParam"in De&&n(1,u=De.sortParam),"sortField"in De&&n(2,h=De.sortField),"schema"in De&&n(0,p=De.schema),"operators"in De&&n(3,b=De.operators),"filter"in De&&n(4,y=De.filter),"inModal"in De&&n(5,k=De.inModal),"modalUrl"in De&&n(6,A=De.modalUrl),"isWritable"in De&&n(7,R=De.isWritable),"records"in De&&n(14,N=De.records),"graph"in De&&n(8,F=De.graph),"systemFields"in De&&n(9,V=De.systemFields)},[p,u,h,b,y,k,A,R,F,V,r,J,te,j,N,ae,fe,_e,ne,Se]}class Tools extends SvelteComponent{constructor(e){super(),init(this,e,instance$X,create_fragment$X,safe_not_equal,{sortParam:1,sortField:2,schema:0,operators:3,filter:4,inModal:5,modalUrl:6,isWritable:7,records:14,graph:8,systemFields:9})}}function get_each_context$g(o,e,n){const r=o.slice();return r[9]=e[n],r}function create_else_block$e(o){let e,n=o[9]+"",r,c,u,h;function p(...b){return o[7](o[9],...b)}return{c(){e=element("a"),r=text(n),attr(e,"class","page-link"),attr(e,"href",c=o[2](o[9]))},m(b,y){insert$1(b,e,y),append(e,r),u||(h=listen(e,"click",p),u=!0)},p(b,y){o=b,y&1&&n!==(n=o[9]+"")&&set_data(r,n),y&1&&c!==(c=o[2](o[9]))&&attr(e,"href",c)},d(b){b&&detach(e),u=!1,h()}}}function create_if_block$B(o){let e,n=o[9]+"",r;return{c(){e=element("span"),r=text(n),attr(e,"class","page-link active")},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&1&&n!==(n=c[9]+"")&&set_data(r,n)},d(c){c&&detach(e)}}}function create_each_block$g(o){let e,n;function r(h,p){return h[1]===h[9]?create_if_block$B:create_else_block$e}let c=r(o),u=c(o);return{c(){e=element("li"),u.c(),n=space$3(),attr(e,"class","page-item"),toggle_class(e,"active",o[1]===o[9])},m(h,p){insert$1(h,e,p),u.m(e,null),append(e,n)},p(h,p){c===(c=r(h))&&u?u.p(h,p):(u.d(1),u=c(h),u&&(u.c(),u.m(e,n))),p&3&&toggle_class(e,"active",h[1]===h[9])},d(h){h&&detach(e),u.d()}}}function create_fragment$W(o){let e,n=ensure_array_like(o[0]),r=[];for(let c=0;ck(N,R);return o.$$set=R=>{"pages"in R&&n(0,c=R.pages),"limit"in R&&n(4,u=R.limit),"currentPage"in R&&n(1,h=R.currentPage),"inModal"in R&&n(5,p=R.inModal),"modalUrl"in R&&n(6,b=R.modalUrl)},[c,h,y,k,u,p,b,A]}class NavItem extends SvelteComponent{constructor(e){super(),init(this,e,instance$W,create_fragment$W,safe_not_equal,{pages:0,limit:4,currentPage:1,inModal:5,modalUrl:6})}}function create_if_block$A(o){let e,n,r,c,u,h,p,b,y,k;return c=new NavItem({props:{pages:o[7],currentPage:o[6],limit:o[2],inModal:o[0],modalUrl:o[1]}}),c.$on("refresh",o[10]),{c(){e=element("li"),n=element("a"),n.textContent="First",r=space$3(),create_component(c.$$.fragment),u=space$3(),h=element("li"),p=element("a"),p.textContent="Last",attr(n,"href","/"),attr(n,"class","page-link"),attr(e,"class","page-item disabled"),toggle_class(e,"disabled",o[6]===1),attr(p,"class","page-link"),attr(p,"href","/"),toggle_class(p,"disabled",o[6]===o[5]),attr(h,"class","page-item")},m(A,R){insert$1(A,e,R),append(e,n),insert$1(A,r,R),mount_component(c,A,R),insert$1(A,u,R),insert$1(A,h,R),append(h,p),b=!0,y||(k=[listen(n,"click",o[9]),listen(p,"click",o[8])],y=!0)},p(A,R){(!b||R&64)&&toggle_class(e,"disabled",A[6]===1);const N={};R&128&&(N.pages=A[7]),R&64&&(N.currentPage=A[6]),R&4&&(N.limit=A[2]),R&1&&(N.inModal=A[0]),R&2&&(N.modalUrl=A[1]),c.$set(N),(!b||R&96)&&toggle_class(p,"disabled",A[6]===A[5])},i(A){b||(transition_in(c.$$.fragment,A),b=!0)},o(A){transition_out(c.$$.fragment,A),b=!1},d(A){A&&(detach(e),detach(r),detach(u),detach(h)),destroy_component(c,A),y=!1,run_all(k)}}}function create_fragment$V(o){let e,n,r,c,u,h,p=+o[3]+1+"",b,y,k,A=(+o[3]+o[2]>o[4]?o[4]:+o[3]+o[2])+"",R,N,F,V,W,J,te=o[5]>1&&create_if_block$A(o);return{c(){e=element("nav"),n=element("ul"),te&&te.c(),r=space$3(),c=element("p"),u=text(`Showing - `),h=element("span"),b=text(p),y=text(` - to - `),k=element("span"),R=text(A),N=text(` - of - `),F=element("span"),V=text(o[4]),W=text(` - total`),attr(n,"class","pagination"),attr(h,"class","font-medium"),attr(k,"class","font-medium"),attr(F,"class","font-medium"),set_style(c,"display","flex"),set_style(c,"justify-content","center"),set_style(c,"gap","4px")},m(j,ae){insert$1(j,e,ae),append(e,n),te&&te.m(n,null),insert$1(j,r,ae),insert$1(j,c,ae),append(c,u),append(c,h),append(h,b),append(c,y),append(c,k),append(k,R),append(c,N),append(c,F),append(F,V),append(c,W),J=!0},p(j,[ae]){j[5]>1?te?(te.p(j,ae),ae&32&&transition_in(te,1)):(te=create_if_block$A(j),te.c(),transition_in(te,1),te.m(n,null)):te&&(group_outros(),transition_out(te,1,1,()=>{te=null}),check_outros()),(!J||ae&8)&&p!==(p=+j[3]+1+"")&&set_data(b,p),(!J||ae&28)&&A!==(A=(+j[3]+j[2]>j[4]?j[4]:+j[3]+j[2])+"")&&set_data(R,A),(!J||ae&16)&&set_data(V,j[4])},i(j){J||(transition_in(te),J=!0)},o(j){transition_out(te),J=!1},d(j){j&&(detach(e),detach(r),detach(c)),te&&te.d()}}}function instance$V(o,e,n){let r,c,u;const h=createEventDispatcher();let{inModal:p}=e,{modalUrl:b}=e,{limit:y}=e,{skip:k}=e,{total:A}=e;function R(W){W.preventDefault(),F(r)}function N(W){W.preventDefault(),F(1)}function F(W){const J=new URL(b??window.location.href);let te=W*y-y;J.searchParams.set("skip",te),p?h("refresh",J):window.location=J}function V(W){bubble.call(this,o,W)}return o.$$set=W=>{"inModal"in W&&n(0,p=W.inModal),"modalUrl"in W&&n(1,b=W.modalUrl),"limit"in W&&n(2,y=W.limit),"skip"in W&&n(3,k=W.skip),"total"in W&&n(4,A=W.total)},o.$$.update=()=>{o.$$.dirty&20&&n(5,r=Math.ceil(A/y)),o.$$.dirty&12&&n(6,c=Math.ceil((k-1)/y)+1),o.$$.dirty&96&&n(7,u=lodashExports.range(c-3,c+4).filter(W=>W>0&&W<=r))},[p,b,y,k,A,r,c,u,R,N,V]}class Pagination extends SvelteComponent{constructor(e){super(),init(this,e,instance$V,create_fragment$V,safe_not_equal,{inModal:0,modalUrl:1,limit:2,skip:3,total:4})}}function create_else_block$d(o){let e,n,r;return{c(){e=element("button"),e.textContent="Move to trash",attr(e,"type","button"),attr(e,"class","button")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",prevent_default(o[9])),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_if_block$z(o){let e,n,r,c,u,h,p=o[1].hasDrafts&&create_if_block_1$k(o);return{c(){e=element("button"),e.textContent="Publish",n=space$3(),p&&p.c(),r=space$3(),c=element("button"),c.textContent="Delete forever",attr(e,"type","button"),attr(e,"class","button"),attr(c,"type","button"),attr(c,"class","button")},m(b,y){insert$1(b,e,y),insert$1(b,n,y),p&&p.m(b,y),insert$1(b,r,y),insert$1(b,c,y),u||(h=[listen(e,"click",prevent_default(o[7])),listen(c,"click",prevent_default(o[3]))],u=!0)},p(b,y){b[1].hasDrafts?p?p.p(b,y):(p=create_if_block_1$k(b),p.c(),p.m(r.parentNode,r)):p&&(p.d(1),p=null)},d(b){b&&(detach(e),detach(n),detach(r),detach(c)),p&&p.d(b),u=!1,run_all(h)}}}function create_if_block_1$k(o){let e,n,r;return{c(){e=element("button"),e.textContent="Make Draft",attr(e,"type","button"),attr(e,"class","button")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",prevent_default(o[8])),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_fragment$U(o){let e,n,r=o[0].length+"",c,u,h,p,b,y,k,A,R;function N(W,J){return W[2].status_in==="trashed"?create_if_block$z:create_else_block$d}let F=N(o),V=F(o);return{c(){e=element("div"),n=element("span"),c=text(r),u=text(" records selected"),h=space$3(),p=element("button"),p.textContent="Publish",b=space$3(),y=element("button"),y.textContent="Make Draft",k=space$3(),V.c(),attr(n,"class","me-2"),attr(p,"type","button"),attr(p,"class","button"),attr(y,"type","button"),attr(y,"class","button"),set_style(e,"display","flex"),set_style(e,"align-items","center"),set_style(e,"gap","8px")},m(W,J){insert$1(W,e,J),append(e,n),append(n,c),append(n,u),append(e,h),append(e,p),append(e,b),append(e,y),append(e,k),V.m(e,null),A||(R=[listen(p,"click",prevent_default(o[5])),listen(y,"click",prevent_default(o[6]))],A=!0)},p(W,[J]){J&1&&r!==(r=W[0].length+"")&&set_data(c,r),F===(F=N(W))&&V?V.p(W,J):(V.d(1),V=F(W),V&&(V.c(),V.m(e,null)))},i:noop,o:noop,d(W){W&&detach(e),V.d(),A=!1,run_all(R)}}}function instance$U(o,e,n){const r=getContext$1("channel");let{selected:c}=e,{schema:u}=e,{filter:h}=e;function p(F){F.preventDefault(),axios.post(r.lucentUrl+"/records/delete",{ids:c.map(V=>V.id)}).then(V=>{window.location.reload()}).catch(V=>{console.log(V)})}function b(F,V){axios.post(r.lucentUrl+"/records/status/"+V,{schemaName:u.name,records:c}).then(W=>{window.location.reload()}).catch(W=>{console.log(W)})}const y=F=>b(F,"published"),k=F=>b(F,"draft"),A=F=>b(F,"published"),R=F=>b(F,"draft"),N=F=>b(F,"trashed");return o.$$set=F=>{"selected"in F&&n(0,c=F.selected),"schema"in F&&n(1,u=F.schema),"filter"in F&&n(2,h=F.filter)},[c,u,h,p,b,y,k,A,R,N]}class ActionsOnSelected extends SvelteComponent{constructor(e){super(),init(this,e,instance$U,create_fragment$U,safe_not_equal,{selected:0,schema:1,filter:2})}}function create_fragment$T(o){let e;return{c(){e=text(o[0])},m(n,r){insert$1(n,e,r)},p(n,[r]){r&1&&set_data(e,n[0])},i:noop,o:noop,d(n){n&&detach(e)}}}function instance$T(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Checkbox$2=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$T,create_fragment$T,safe_not_equal,{value:0})}};function create_if_block$y(o){let e,n,r,c;return{c(){e=element("div"),n=element("span"),r=space$3(),c=text(o[0]),attr(n,"class","color border border-2 svelte-78o2k4"),set_style(n,"background",o[0]),attr(e,"class","d-inline-flex")},m(u,h){insert$1(u,e,h),append(e,n),append(e,r),append(e,c)},p(u,h){h&1&&set_style(n,"background",u[0]),h&1&&set_data(c,u[0])},d(u){u&&detach(e)}}}function create_fragment$S(o){let e,n=o[0]&&create_if_block$y(o);return{c(){n&&n.c(),e=empty$1()},m(r,c){n&&n.m(r,c),insert$1(r,e,c)},p(r,[c]){r[0]?n?n.p(r,c):(n=create_if_block$y(r),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},i:noop,o:noop,d(r){r&&detach(e),n&&n.d(r)}}}function instance$S(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Color$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$S,create_fragment$S,safe_not_equal,{value:0})}};function create_if_block$x(o){let e,n,r;return{c(){e=element("a"),n=text(o[1]),attr(e,"href",r=o[3].lucentUrl+"/records/"+o[0].id),attr(e,"class","text-decoration-none rounded py-1 px-2 d-inline-block svelte-nbbgyi"),attr(e,"title",o[1]),set_style(e,"border","2px solid "+(o[2].color?o[2].color:"#999"),1),set_style(e,"white-space","nowrap")},m(c,u){insert$1(c,e,u),append(e,n)},p(c,u){u&2&&set_data(n,c[1]),u&1&&r!==(r=c[3].lucentUrl+"/records/"+c[0].id)&&attr(e,"href",r),u&2&&attr(e,"title",c[1]),u&4&&set_style(e,"border","2px solid "+(c[2].color?c[2].color:"#999"),1)},d(c){c&&detach(e)}}}function create_fragment$R(o){var r;let e,n=((r=o[0])==null?void 0:r.data)&&create_if_block$x(o);return{c(){n&&n.c(),e=empty$1()},m(c,u){n&&n.m(c,u),insert$1(c,e,u)},p(c,[u]){var h;(h=c[0])!=null&&h.data?n?n.p(c,u):(n=create_if_block$x(c),n.c(),n.m(e.parentNode,e)):n&&(n.d(1),n=null)},i:noop,o:noop,d(c){c&&detach(e),n&&n.d(c)}}}function instance$R(o,e,n){let r,c;const u=getContext$1("channel");let{record:h}=e,{graph:p}=e;return o.$$set=b=>{"record"in b&&n(0,h=b.record),"graph"in b&&n(4,p=b.graph)},o.$$.update=()=>{o.$$.dirty&1&&n(2,r=u.schemas.find(b=>b.name===h.schema)),o.$$.dirty&17&&n(1,c=previewTitle(u.schemas,h))},[h,c,r,u,p]}class PreviewCardSmall extends SvelteComponent{constructor(e){super(),init(this,e,instance$R,create_fragment$R,safe_not_equal,{record:0,graph:4})}}function get_each_context$f(o,e,n){const r=o.slice();return r[5]=e[n],r}function create_each_block$f(o){let e,n,r,c;return n=new PreviewCardSmall({props:{schemas:o[0],graph:o[1],record:o[5]}}),{c(){e=element("span"),create_component(n.$$.fragment),r=space$3(),attr(e,"class","mr-3")},m(u,h){insert$1(u,e,h),mount_component(n,e,null),append(e,r),c=!0},p(u,h){const p={};h&1&&(p.schemas=u[0]),h&2&&(p.graph=u[1]),h&4&&(p.record=u[5]),n.$set(p)},i(u){c||(transition_in(n.$$.fragment,u),c=!0)},o(u){transition_out(n.$$.fragment,u),c=!1},d(u){u&&detach(e),destroy_component(n)}}}function create_fragment$Q(o){let e,n,r=ensure_array_like(o[2]),c=[];for(let h=0;htransition_out(c[h],1,1,()=>{c[h]=null});return{c(){e=element("div");for(let h=0;h{"record"in b&&n(3,c=b.record),"field"in b&&n(4,u=b.field),"schemas"in b&&n(0,h=b.schemas),"graph"in b&&n(1,p=b.graph)},o.$$.update=()=>{var b;o.$$.dirty&26&&n(2,r=((b=p.edges)==null?void 0:b.filter(y=>y.field===u.name&&y.source===c.id).map(y=>p.records.find(k=>k.id===y.target)).filter(y=>!!y))??[])},[h,p,r,c,u]}let Reference$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$Q,create_fragment$Q,safe_not_equal,{record:3,field:4,schemas:0,graph:1})}};function create_fragment$P(o){let e;return{c(){e=text(o[0])},m(n,r){insert$1(n,e,r)},p(n,[r]){r&1&&set_data(e,n[0])},i:noop,o:noop,d(n){n&&detach(e)}}}function instance$P(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Number$2=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$P,create_fragment$P,safe_not_equal,{value:0})}};function create_fragment$O(o){let e,n;return{c(){e=element("div"),n=text(o[0]),attr(e,"title",o[0]),attr(e,"data-bs-toggle","tooltip"),attr(e,"data-bs-placement","top"),attr(e,"class","svelte-1ft053t")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,[c]){c&1&&set_data(n,r[0]),c&1&&attr(e,"title",r[0])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$O(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Text$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$O,create_fragment$O,safe_not_equal,{value:0})}};function create_fragment$N(o){let e,n;return{c(){e=element("a"),n=text(o[0]),attr(e,"href",o[0]),attr(e,"target","_blank")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,[c]){c&1&&set_data(n,r[0]),c&1&&attr(e,"href",r[0])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$N(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Url$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$N,create_fragment$N,safe_not_equal,{value:0})}};function create_fragment$M(o){let e,n;return{c(){e=element("div"),n=text(o[0]),attr(e,"title",o[0]),attr(e,"data-bs-toggle","tooltip"),attr(e,"data-bs-placement","top")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,[c]){c&1&&set_data(n,r[0]),c&1&&attr(e,"title",r[0])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$M(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Date$2=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$M,create_fragment$M,safe_not_equal,{value:0})}};function create_fragment$L(o){let e,n=readableDate(o[0])+"",r,c;return{c(){e=element("div"),r=text(n),attr(e,"title",c=readableDatetime(o[0])),attr(e,"data-bs-toggle","tooltip"),attr(e,"data-bs-placement","top")},m(u,h){insert$1(u,e,h),append(e,r)},p(u,[h]){h&1&&n!==(n=readableDate(u[0])+"")&&set_data(r,n),h&1&&c!==(c=readableDatetime(u[0]))&&attr(e,"title",c)},i:noop,o:noop,d(u){u&&detach(e)}}}function instance$L(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let Datetime$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$L,create_fragment$L,safe_not_equal,{value:0})}};function get_each_context$e(o,e,n){const r=o.slice();return r[4]=e[n],r}function create_each_block$e(o){let e,n,r,c;return n=new Preview({props:{record:o[4],size:"tiny"}}),{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),attr(e,"class","me-1")},m(u,h){insert$1(u,e,h),mount_component(n,e,null),append(e,r),c=!0},p:noop,i(u){c||(transition_in(n.$$.fragment,u),c=!0)},o(u){transition_out(n.$$.fragment,u),c=!1},d(u){u&&detach(e),destroy_component(n)}}}function create_fragment$K(o){let e,n,r=ensure_array_like(o[0]),c=[];for(let h=0;htransition_out(c[h],1,1,()=>{c[h]=null});return{c(){e=element("div");for(let h=0;hb.field===c.name&&b.source===r.id).map(b=>u.records.find(y=>y.id===b.target));return o.$$set=b=>{"record"in b&&n(1,r=b.record),"field"in b&&n(2,c=b.field),"graph"in b&&n(3,u=b.graph)},[h,r,c,u]}let File$2=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$K,create_fragment$K,safe_not_equal,{record:1,field:2,graph:3})}};function create_fragment$J(o){let e,n;return{c(){e=element("span"),n=text(o[0]),attr(e,"class","badge rounded-pill bg-primary bg-opacity-75"),set_style(e,"max-width","64px"),set_style(e,"overflow","hidden"),set_style(e,"white-space","nowrap"),set_style(e,"text-overflow","ellipsis"),attr(e,"title",o[0]),attr(e,"data-bs-toggle","tooltip")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,[c]){c&1&&set_data(n,r[0]),c&1&&attr(e,"title",r[0])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$J(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}let UUID$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$J,create_fragment$J,safe_not_equal,{value:0})}};function create_fragment$I(o){let e,n;return{c(){e=element("div"),n=text(o[0]),attr(e,"class","svelte-1ft053t")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,[c]){c&1&&set_data(n,r[0])},i:noop,o:noop,d(r){r&&detach(e)}}}function instance$I(o,e,n){let{value:r}=e;return o.$$set=c=>{"value"in c&&n(0,r=c.value)},[r]}class Rich extends SvelteComponent{constructor(e){super(),init(this,e,instance$I,create_fragment$I,safe_not_equal,{value:0})}}function create_fragment$H(o){let e,n,r;var c=o[4][o[0].info.name];function u(h,p){return{props:{value:h[2].data[h[0].name],record:h[2],graph:h[3],schema:h[1],field:h[0]}}}return c&&(e=construct_svelte_component(c,u(o))),{c(){e&&create_component(e.$$.fragment),n=empty$1()},m(h,p){e&&mount_component(e,h,p),insert$1(h,n,p),r=!0},p(h,[p]){if(p&1&&c!==(c=h[4][h[0].info.name])){if(e){group_outros();const b=e;transition_out(b.$$.fragment,1,0,()=>{destroy_component(b,1)}),check_outros()}c?(e=construct_svelte_component(c,u(h)),create_component(e.$$.fragment),transition_in(e.$$.fragment,1),mount_component(e,n.parentNode,n)):e=null}else if(c){const b={};p&5&&(b.value=h[2].data[h[0].name]),p&4&&(b.record=h[2]),p&8&&(b.graph=h[3]),p&2&&(b.schema=h[1]),p&1&&(b.field=h[0]),e.$set(b)}},i(h){r||(e&&transition_in(e.$$.fragment,h),r=!0)},o(h){e&&transition_out(e.$$.fragment,h),r=!1},d(h){h&&detach(n),e&&destroy_component(e,h)}}}function instance$H(o,e,n){const r={text:Text$1,slug:Text$1,rich:Rich,textarea:Text$1,color:Color$1,checkbox:Checkbox$2,reference:Reference$1,number:Number$2,url:Url$1,date:Date$2,datetime:Datetime$1,uuid:UUID$1,file:File$2};let{field:c}=e,{schema:u}=e,{record:h}=e,{graph:p}=e;return o.$$set=b=>{"field"in b&&n(0,c=b.field),"schema"in b&&n(1,u=b.schema),"record"in b&&n(2,h=b.record),"graph"in b&&n(3,p=b.graph)},[c,u,h,p,r]}class RenderField extends SvelteComponent{constructor(e){super(),init(this,e,instance$H,create_fragment$H,safe_not_equal,{field:0,schema:1,record:2,graph:3})}}function getStatus(o){return getStatusList()[o]}function getStatusList(){return{published:{value:"published",text:"Published",bg:"success",color:"white"},trashed:{value:"trashed",text:"Trashed",bg:"danger",color:"white"},draft:{value:"draft",text:"Draft",bg:"warning",color:"dark"}}}function create_fragment$G(o){let e,n=o[0].text+"",r;return{c(){e=element("span"),r=text(n),attr(e,"class","badge text-bg-"+o[0].bg),set_style(e,"max-width","84px")},m(c,u){insert$1(c,e,u),append(e,r)},p:noop,i:noop,o:noop,d(c){c&&detach(e)}}}function instance$G(o,e,n){let{status:r}=e,c=getStatus(r);return o.$$set=u=>{"status"in u&&n(1,r=u.status)},[c,r]}class Status extends SvelteComponent{constructor(e){super(),init(this,e,instance$G,create_fragment$G,safe_not_equal,{status:1})}}function usernameById(o,e){var n;return o?((n=o.find(r=>r.id===e))==null?void 0:n.name)??e:e}function get_each_context$d(o,e,n){const r=o.slice();return r[7]=e[n],r[9]=n,r}function create_each_block$d(o){let e,n,r,c;return n=new RenderField({props:{record:o[3],schema:o[0],graph:o[2],field:o[7]}}),{c(){e=element("td"),create_component(n.$$.fragment),attr(e,"class",r="field-ui-"+o[7].info.name),toggle_class(e,"is-sort",o[7].name===o[5].name)},m(u,h){insert$1(u,e,h),mount_component(n,e,null),c=!0},p(u,h){const p={};h&8&&(p.record=u[3]),h&1&&(p.schema=u[0]),h&4&&(p.graph=u[2]),h&64&&(p.field=u[7]),n.$set(p),(!c||h&64&&r!==(r="field-ui-"+u[7].info.name))&&attr(e,"class",r),(!c||h&96)&&toggle_class(e,"is-sort",u[7].name===u[5].name)},i(u){c||(transition_in(n.$$.fragment,u),c=!0)},o(u){transition_out(n.$$.fragment,u),c=!1},d(u){u&&detach(e),destroy_component(n)}}}function create_if_block_4$3(o){let e,n,r;return n=new Status({props:{status:o[3].status}}),{c(){e=element("td"),create_component(n.$$.fragment),attr(e,"class","text-center"),toggle_class(e,"is-sort",o[4]=="-status"||o[4]=="status")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p(c,u){const h={};u&8&&(h.status=c[3].status),n.$set(h),(!r||u&16)&&toggle_class(e,"is-sort",c[4]=="-status"||c[4]=="status")},i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block_3$6(o){let e,n,r;return n=new Avatar({props:{name:usernameById(o[1],o[3]._sys.createdBy),side:24}}),{c(){e=element("td"),create_component(n.$$.fragment),attr(e,"class","text-center"),toggle_class(e,"is-sort",o[4]=="-_sys.createdBy"||o[4]=="_sys.createdBy")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p(c,u){const h={};u&10&&(h.name=usernameById(c[1],c[3]._sys.createdBy)),n.$set(h),(!r||u&16)&&toggle_class(e,"is-sort",c[4]=="-_sys.createdBy"||c[4]=="_sys.createdBy")},i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block_2$8(o){let e,n,r;return n=new Avatar({props:{name:usernameById(o[1],o[3]._sys.updatedBy),side:24}}),{c(){e=element("td"),create_component(n.$$.fragment),attr(e,"class","text-center"),toggle_class(e,"is-sort",o[4]=="-_sys.updatedBy"||o[4]=="_sys.updatedBy")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p(c,u){const h={};u&10&&(h.name=usernameById(c[1],c[3]._sys.updatedBy)),n.$set(h),(!r||u&16)&&toggle_class(e,"is-sort",c[4]=="-_sys.updatedBy"||c[4]=="_sys.updatedBy")},i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block_1$j(o){let e,n=friendlyDate(o[3]._sys.createdAt)+"",r;return{c(){e=element("td"),r=text(n),toggle_class(e,"is-sort",o[4]=="-_sys.createdAt"||o[4]=="_sys.createdAt")},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&8&&n!==(n=friendlyDate(c[3]._sys.createdAt)+"")&&set_data(r,n),u&16&&toggle_class(e,"is-sort",c[4]=="-_sys.createdAt"||c[4]=="_sys.createdAt")},d(c){c&&detach(e)}}}function create_if_block$w(o){let e,n=friendlyDate(o[3]._sys.updatedAt)+"",r;return{c(){e=element("td"),r=text(n),toggle_class(e,"is-sort",o[4]=="-_sys.updatedAt"||o[4]=="_sys.updatedAt")},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&8&&n!==(n=friendlyDate(c[3]._sys.updatedAt)+"")&&set_data(r,n),u&16&&toggle_class(e,"is-sort",c[4]=="-_sys.updatedAt"||c[4]=="_sys.updatedAt")},d(c){c&&detach(e)}}}function create_fragment$F(o){var fe,_e,ne,Se,De;let e,n=(fe=o[0].visible)==null?void 0:fe.includes("status"),r,c=(_e=o[0].visible)==null?void 0:_e.includes("_sys.createdBy"),u,h=(ne=o[0].visible)==null?void 0:ne.includes("_sys.updatedBy"),p,b=(Se=o[0].visible)==null?void 0:Se.includes("_sys.createdAt"),y,k=(De=o[0].visible)==null?void 0:De.includes("_sys.updatedAt"),A,R,N=ensure_array_like(o[6]),F=[];for(let Be=0;Betransition_out(F[Be],1,1,()=>{F[Be]=null});let W=n&&create_if_block_4$3(o),J=c&&create_if_block_3$6(o),te=h&&create_if_block_2$8(o),j=b&&create_if_block_1$j(o),ae=k&&create_if_block$w(o);return{c(){for(let Be=0;Be{W=null}),check_outros()),Te&1&&(c=(yt=Be[0].visible)==null?void 0:yt.includes("_sys.createdBy")),c?J?(J.p(Be,Te),Te&1&&transition_in(J,1)):(J=create_if_block_3$6(Be),J.c(),transition_in(J,1),J.m(u.parentNode,u)):J&&(group_outros(),transition_out(J,1,1,()=>{J=null}),check_outros()),Te&1&&(h=(Tt=Be[0].visible)==null?void 0:Tt.includes("_sys.updatedBy")),h?te?(te.p(Be,Te),Te&1&&transition_in(te,1)):(te=create_if_block_2$8(Be),te.c(),transition_in(te,1),te.m(p.parentNode,p)):te&&(group_outros(),transition_out(te,1,1,()=>{te=null}),check_outros()),Te&1&&(b=(St=Be[0].visible)==null?void 0:St.includes("_sys.createdAt")),b?j?j.p(Be,Te):(j=create_if_block_1$j(Be),j.c(),j.m(y.parentNode,y)):j&&(j.d(1),j=null),Te&1&&(k=(q=Be[0].visible)==null?void 0:q.includes("_sys.updatedAt")),k?ae?ae.p(Be,Te):(ae=create_if_block$w(Be),ae.c(),ae.m(A.parentNode,A)):ae&&(ae.d(1),ae=null)},i(Be){if(!R){for(let Te=0;Te{"schema"in k&&n(0,r=k.schema),"users"in k&&n(1,c=k.users),"graph"in k&&n(2,u=k.graph),"record"in k&&n(3,h=k.record),"sortParam"in k&&n(4,p=k.sortParam),"sortField"in k&&n(5,b=k.sortField),"visibleColumns"in k&&n(6,y=k.visibleColumns)},[r,c,u,h,p,b,y]}let RecordRow$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$F,create_fragment$F,safe_not_equal,{schema:0,users:1,graph:2,record:3,sortParam:4,sortField:5,visibleColumns:6})}};const toggleAll=(o,e,n)=>n.length===e.length?[]:(o.currentTarget.checked=n.length>0,e),selectRecord=(o,e)=>e.find(r=>r.id===o.id)?e.filter(r=>r.id!==o.id):[...e,o];function create_fragment$E(o){let e,n,r,c;return{c(){e=element("div"),n=element("input"),attr(n,"id","c1-13"),attr(n,"type","checkbox"),n.value=o[1],n.indeterminate=o[0],n.checked=o[2],attr(e,"class","checkbox-wrapper")},m(u,h){insert$1(u,e,h),append(e,n),o[5](n),r||(c=listen(n,"change",o[4]),r=!0)},p(u,[h]){h&2&&(n.value=u[1]),h&1&&(n.indeterminate=u[0]),h&4&&(n.checked=u[2])},i:noop,o:noop,d(u){u&&detach(e),o[5](null),r=!1,c()}}}function instance$E(o,e,n){let r=null,{indeterminate:c=!1}=e,{value:u}=e,{checked:h=!1}=e;function p(y){bubble.call(this,o,y)}function b(y){binding_callbacks[y?"unshift":"push"](()=>{r=y,n(3,r)})}return o.$$set=y=>{"indeterminate"in y&&n(0,c=y.indeterminate),"value"in y&&n(1,u=y.value),"checked"in y&&n(2,h=y.checked)},[c,u,h,r,p,b]}let Checkbox$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$E,create_fragment$E,safe_not_equal,{indeterminate:0,value:1,checked:2})}};function get_each_context$c(o,e,n){const r=o.slice();return r[17]=e[n],r}function get_each_context_1$4(o,e,n){const r=o.slice();return r[20]=e[n],r}function get_each_context_2$1(o,e,n){const r=o.slice();return r[23]=e[n],r}function create_if_block_3$5(o){let e,n,r;return n=new Checkbox$1({props:{value:"",indeterminate:o[0].length>0&&o[0].length0&&c[0].length0?"medium":"small"}});let fe=o[17]._file.width>0&&create_if_block_1$i(o);return{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),c=element("div"),u=element("a"),p=text(h),k=space$3(),A=element("span"),N=text(R),F=text("kB"),V=space$3(),fe&&fe.c(),W=space$3(),J=element("a"),te=text("Download"),attr(u,"href",b=o[11].lucentUrl+"/records/"+o[17].id),attr(u,"target",y=o[8]?"_blank":"_self"),attr(J,"href",j=fileurl(o[11],o[17])),attr(J,"target","_blank"),attr(e,"class","file-table-row")},m(ne,Se){insert$1(ne,e,Se),mount_component(n,e,null),append(e,r),append(e,c),append(c,u),append(u,p),append(c,k),append(c,A),append(A,N),append(A,F),append(c,V),fe&&fe.m(c,null),append(c,W),append(c,J),append(J,te),ae=!0},p(ne,Se){var Be;const De={};Se&8&&(De.record=ne[17]),Se&8&&(De.size=((Be=ne[17]._file)==null?void 0:Be.width)>0?"medium":"small"),n.$set(De),(!ae||Se&24)&&h!==(h=previewTitle(ne[11].schemas,ne[17],ne[4])+"")&&set_data(p,h),(!ae||Se&8&&b!==(b=ne[11].lucentUrl+"/records/"+ne[17].id))&&attr(u,"href",b),(!ae||Se&256&&y!==(y=ne[8]?"_blank":"_self"))&&attr(u,"target",y),(!ae||Se&8)&&R!==(R=(ne[17]._file.size/1024).toFixed(1)+"")&&set_data(N,R),ne[17]._file.width>0?fe?fe.p(ne,Se):(fe=create_if_block_1$i(ne),fe.c(),fe.m(c,W)):fe&&(fe.d(1),fe=null),(!ae||Se&8&&j!==(j=fileurl(ne[11],ne[17])))&&attr(J,"href",j)},i(ne){ae||(transition_in(n.$$.fragment,ne),ae=!0)},o(ne){transition_out(n.$$.fragment,ne),ae=!1},d(ne){ne&&detach(e),destroy_component(n),fe&&fe.d()}}}function create_if_block_1$i(o){let e,n=o[17]._file.width+"x"+o[17]._file.height,r;return{c(){e=element("span"),r=text(n)},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&8&&n!==(n=c[17]._file.width+"x"+c[17]._file.height)&&set_data(r,n)},d(c){c&&detach(e)}}}function create_each_block$c(o,e){let n,r,c,u,h,p,b,y,k,A,R,N,F,V=e[9]&&create_if_block_2$7(e);const W=[create_if_block$v,create_else_block$c],J=[];function te(j,ae){var fe;return(fe=j[17]._file)!=null&&fe.path?0:1}return h=te(e),p=J[h]=W[h](e),y=new RecordRow$1({props:{record:e[17],graph:e[4],schema:e[1],visibleColumns:e[10],sortParam:e[6],sortField:e[7],users:e[2]}}),R=new Avatar({props:{name:usernameById(e[2],e[17]._sys.updatedBy),side:24}}),{key:o,first:null,c(){n=element("tr"),r=element("td"),c=element("div"),V&&V.c(),u=space$3(),p.c(),b=space$3(),create_component(y.$$.fragment),k=space$3(),A=element("td"),create_component(R.$$.fragment),N=space$3(),attr(c,"class","title-td-contents"),attr(r,"class","title-td"),this.first=n},m(j,ae){insert$1(j,n,ae),append(n,r),append(r,c),V&&V.m(c,null),append(c,u),J[h].m(c,null),append(n,b),mount_component(y,n,null),append(n,k),append(n,A),mount_component(R,A,null),append(n,N),F=!0},p(j,ae){e=j,e[9]?V?(V.p(e,ae),ae&512&&transition_in(V,1)):(V=create_if_block_2$7(e),V.c(),transition_in(V,1),V.m(c,u)):V&&(group_outros(),transition_out(V,1,1,()=>{V=null}),check_outros());let fe=h;h=te(e),h===fe?J[h].p(e,ae):(group_outros(),transition_out(J[fe],1,1,()=>{J[fe]=null}),check_outros(),p=J[h],p?p.p(e,ae):(p=J[h]=W[h](e),p.c()),transition_in(p,1),p.m(c,null));const _e={};ae&8&&(_e.record=e[17]),ae&16&&(_e.graph=e[4]),ae&2&&(_e.schema=e[1]),ae&1024&&(_e.visibleColumns=e[10]),ae&64&&(_e.sortParam=e[6]),ae&128&&(_e.sortField=e[7]),ae&4&&(_e.users=e[2]),y.$set(_e);const ne={};ae&12&&(ne.name=usernameById(e[2],e[17]._sys.updatedBy)),R.$set(ne)},i(j){F||(transition_in(V),transition_in(p),transition_in(y.$$.fragment,j),transition_in(R.$$.fragment,j),F=!0)},o(j){transition_out(V),transition_out(p),transition_out(y.$$.fragment,j),transition_out(R.$$.fragment,j),F=!1},d(j){j&&detach(n),V&&V.d(),J[h].d(),destroy_component(y),destroy_component(R)}}}function create_fragment$D(o){let e,n,r,c,u,h,p,b,y,k,A=[],R=new Map,N,F=o[9]&&create_if_block_3$5(o),V=ensure_array_like(o[10]),W=[];for(let fe=0;fefe[17].id;for(let fe=0;fe{F=null}),check_outros()),_e&1152){V=ensure_array_like(fe[10]);let ne;for(ne=0;ne{var fe;return(fe=u.visible)==null?void 0:fe.includes(ae.name)},te=(ae,fe)=>fe.id===ae.id,j=ae=>W(ae);return o.$$set=ae=>{"schema"in ae&&n(1,u=ae.schema),"users"in ae&&n(2,h=ae.users),"records"in ae&&n(3,p=ae.records),"graph"in ae&&n(4,b=ae.graph),"systemFields"in ae&&n(5,y=ae.systemFields),"sortParam"in ae&&n(6,k=ae.sortParam),"sortField"in ae&&n(7,A=ae.sortField),"inModal"in ae&&n(8,R=ae.inModal),"isWritable"in ae&&n(9,N=ae.isWritable),"selected"in ae&&n(0,F=ae.selected)},o.$$.update=()=>{o.$$.dirty&2&&n(10,r=u.fields.filter(ae=>{var fe;return((fe=u.visible)==null?void 0:fe.includes(ae.name))??[]}))},[F,u,h,p,b,y,k,A,R,N,r,c,V,W,J,te,j]}let Table$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$D,create_fragment$D,safe_not_equal,{schema:1,users:2,records:3,graph:4,systemFields:5,sortParam:6,sortField:7,inModal:8,isWritable:9,selected:0})}};function create_else_block$b(o){let e,n,r,c;function u(b){o[17](b)}function h(b){o[18](b)}let p={systemFields:o[13],sortParam:o[2],sortField:o[3],operators:o[4],filter:o[5],graph:o[12],inModal:o[14],modalUrl:o[9],isWritable:o[15]};return o[0]!==void 0&&(p.schema=o[0]),o[1]!==void 0&&(p.records=o[1]),e=new Tools({props:p}),binding_callbacks.push(()=>bind(e,"schema",u)),binding_callbacks.push(()=>bind(e,"records",h)),e.$on("refresh",o[16]),{c(){create_component(e.$$.fragment)},m(b,y){mount_component(e,b,y),c=!0},p(b,y){const k={};y&8192&&(k.systemFields=b[13]),y&4&&(k.sortParam=b[2]),y&8&&(k.sortField=b[3]),y&16&&(k.operators=b[4]),y&32&&(k.filter=b[5]),y&4096&&(k.graph=b[12]),y&16384&&(k.inModal=b[14]),y&512&&(k.modalUrl=b[9]),y&32768&&(k.isWritable=b[15]),!n&&y&1&&(n=!0,k.schema=b[0],add_flush_callback(()=>n=!1)),!r&&y&2&&(r=!0,k.records=b[1],add_flush_callback(()=>r=!1)),e.$set(k)},i(b){c||(transition_in(e.$$.fragment,b),c=!0)},o(b){transition_out(e.$$.fragment,b),c=!1},d(b){destroy_component(e,b)}}}function create_if_block$u(o){let e,n;return e=new ActionsOnSelected({props:{schema:o[0],selected:o[10],filter:o[5]}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.schema=r[0]),c&1024&&(u.selected=r[10]),c&32&&(u.filter=r[5]),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_fragment$C(o){let e,n,r,c=o[0].label+"",u,h,p,b,y,k,A,R,N,F,V;const W=[create_if_block$u,create_else_block$b],J=[];function te(fe,_e){return fe[10].length>0&&!fe[14]&&fe[15]?0:1}p=te(o),b=J[p]=W[p](o);function j(fe){o[19](fe)}let ae={records:o[1],graph:o[12],schema:o[0],sortParam:o[2],sortField:o[3],systemFields:o[13],inModal:o[14],users:o[11],isWritable:o[15]};return o[10]!==void 0&&(ae.selected=o[10]),k=new Table$1({props:ae}),binding_callbacks.push(()=>bind(k,"selected",j)),F=new Pagination({props:{limit:o[6],skip:o[7],total:o[8],inModal:o[14],modalUrl:o[9]}}),F.$on("refresh",o[16]),{c(){e=element("div"),n=element("div"),r=element("h3"),u=text(c),h=space$3(),b.c(),y=space$3(),create_component(k.$$.fragment),N=space$3(),create_component(F.$$.fragment),attr(r,"class","header-normal mb-5 "),attr(n,"class",R=o[14]?"mt-0":"mt-5"),attr(e,"class","")},m(fe,_e){insert$1(fe,e,_e),append(e,n),append(n,r),append(r,u),append(n,h),J[p].m(n,null),append(n,y),mount_component(k,n,null),append(e,N),mount_component(F,e,null),V=!0},p(fe,[_e]){(!V||_e&1)&&c!==(c=fe[0].label+"")&&set_data(u,c);let ne=p;p=te(fe),p===ne?J[p].p(fe,_e):(group_outros(),transition_out(J[ne],1,1,()=>{J[ne]=null}),check_outros(),b=J[p],b?b.p(fe,_e):(b=J[p]=W[p](fe),b.c()),transition_in(b,1),b.m(n,y));const Se={};_e&2&&(Se.records=fe[1]),_e&4096&&(Se.graph=fe[12]),_e&1&&(Se.schema=fe[0]),_e&4&&(Se.sortParam=fe[2]),_e&8&&(Se.sortField=fe[3]),_e&8192&&(Se.systemFields=fe[13]),_e&16384&&(Se.inModal=fe[14]),_e&2048&&(Se.users=fe[11]),_e&32768&&(Se.isWritable=fe[15]),!A&&_e&1024&&(A=!0,Se.selected=fe[10],add_flush_callback(()=>A=!1)),k.$set(Se),(!V||_e&16384&&R!==(R=fe[14]?"mt-0":"mt-5"))&&attr(n,"class",R);const De={};_e&64&&(De.limit=fe[6]),_e&128&&(De.skip=fe[7]),_e&256&&(De.total=fe[8]),_e&16384&&(De.inModal=fe[14]),_e&512&&(De.modalUrl=fe[9]),F.$set(De)},i(fe){V||(transition_in(b),transition_in(k.$$.fragment,fe),transition_in(F.$$.fragment,fe),V=!0)},o(fe){transition_out(b),transition_out(k.$$.fragment,fe),transition_out(F.$$.fragment,fe),V=!1},d(fe){fe&&detach(e),J[p].d(),destroy_component(k),destroy_component(F)}}}function instance$C(o,e,n){const r=getContext$1("axios");let{schema:c}=e,{users:u}=e,{records:h}=e,{graph:p}=e,{systemFields:b}=e,{sortParam:y}=e,{sortField:k}=e,{operators:A}=e,{filter:R}=e,{limit:N}=e,{skip:F}=e,{total:V}=e,{inModal:W}=e,{modalUrl:J}=e,{selected:te=[]}=e,{isWritable:j=!1}=e;function ae(Se){const De=Se.detail;r.get(De).then(Be=>{n(1,h=Be.data.records),n(2,y=Be.data.sortParam),n(3,k=Be.data.sortField),n(4,A=Be.data.operators),n(5,R=Be.data.filter),n(7,F=Be.data.skip),n(6,N=Be.data.limit),n(8,V=Be.data.total),n(9,J=Be.data.modalUrl),document.querySelector("dialog h3").scrollIntoView()}).catch(Be=>{console.log(Be)})}function fe(Se){c=Se,n(0,c)}function _e(Se){h=Se,n(1,h)}function ne(Se){te=Se,n(10,te)}return o.$$set=Se=>{"schema"in Se&&n(0,c=Se.schema),"users"in Se&&n(11,u=Se.users),"records"in Se&&n(1,h=Se.records),"graph"in Se&&n(12,p=Se.graph),"systemFields"in Se&&n(13,b=Se.systemFields),"sortParam"in Se&&n(2,y=Se.sortParam),"sortField"in Se&&n(3,k=Se.sortField),"operators"in Se&&n(4,A=Se.operators),"filter"in Se&&n(5,R=Se.filter),"limit"in Se&&n(6,N=Se.limit),"skip"in Se&&n(7,F=Se.skip),"total"in Se&&n(8,V=Se.total),"inModal"in Se&&n(14,W=Se.inModal),"modalUrl"in Se&&n(9,J=Se.modalUrl),"selected"in Se&&n(10,te=Se.selected),"isWritable"in Se&&n(15,j=Se.isWritable)},[c,h,y,k,A,R,N,F,V,J,te,u,p,b,W,j,ae,fe,_e,ne]}let Index$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$C,create_fragment$C,safe_not_equal,{schema:0,users:11,records:1,graph:12,systemFields:13,sortParam:2,sortField:3,operators:4,filter:5,limit:6,skip:7,total:8,inModal:14,modalUrl:9,selected:10,isWritable:15})}};function create_if_block$t(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae=o[2].length>0&&create_if_block_1$h(o);R=new Icon({props:{icon:"close"}});const fe=[o[3]];function _e(Se){o[7](Se)}let ne={};for(let Se=0;Sebind(V,"selected",_e)),{c(){e=element("div"),n=element("button"),r=text("Insert"),u=space$3(),h=element("button"),p=text("Replace"),y=space$3(),ae&&ae.c(),k=space$3(),A=element("button"),create_component(R.$$.fragment),N=space$3(),F=element("div"),create_component(V.$$.fragment),attr(n,"type","button"),attr(n,"class","button"),n.disabled=c=o[2].length===0,attr(h,"type","button"),attr(h,"class","button"),h.disabled=b=o[2].length===0,attr(A,"type","button"),attr(A,"class","button close"),attr(A,"aria-label","Close"),attr(e,"class","dialog-header"),attr(F,"class","dialog-body")},m(Se,De){insert$1(Se,e,De),append(e,n),append(n,r),append(e,u),append(e,h),append(h,p),append(e,y),ae&&ae.m(e,null),append(e,k),append(e,A),mount_component(R,A,null),insert$1(Se,N,De),insert$1(Se,F,De),mount_component(V,F,null),J=!0,te||(j=[listen(n,"click",o[4]),listen(h,"click",o[5]),listen(A,"click",prevent_default(o[0]))],te=!0)},p(Se,De){(!J||De&4&&c!==(c=Se[2].length===0))&&(n.disabled=c),(!J||De&4&&b!==(b=Se[2].length===0))&&(h.disabled=b),Se[2].length>0?ae?ae.p(Se,De):(ae=create_if_block_1$h(Se),ae.c(),ae.m(e,k)):ae&&(ae.d(1),ae=null);const Be=De&8?get_spread_update(fe,[get_spread_object(Se[3])]):{};!W&&De&4&&(W=!0,Be.selected=Se[2],add_flush_callback(()=>W=!1)),V.$set(Be)},i(Se){J||(transition_in(R.$$.fragment,Se),transition_in(V.$$.fragment,Se),J=!0)},o(Se){transition_out(R.$$.fragment,Se),transition_out(V.$$.fragment,Se),J=!1},d(Se){Se&&(detach(e),detach(N),detach(F)),ae&&ae.d(),destroy_component(R),destroy_component(V),te=!1,run_all(j)}}}function create_if_block_1$h(o){let e,n=o[2].length+"",r,c;return{c(){e=element("span"),r=text(n),c=text(" records selected"),attr(e,"class","")},m(u,h){insert$1(u,e,h),append(e,r),append(e,c)},p(u,h){h&4&&n!==(n=u[2].length+"")&&set_data(r,n)},d(u){u&&detach(e)}}}function create_fragment$B(o){let e,n,r=o[3].schema&&create_if_block$t(o);return{c(){e=element("dialog"),r&&r.c()},m(c,u){insert$1(c,e,u),r&&r.m(e,null),o[8](e),n=!0},p(c,[u]){c[3].schema?r?(r.p(c,u),u&8&&transition_in(r,1)):(r=create_if_block$t(c),r.c(),transition_in(r,1),r.m(e,null)):r&&(group_outros(),transition_out(r,1,1,()=>{r=null}),check_outros())},i(c){n||(transition_in(r),n=!0)},o(c){transition_out(r),n=!1},d(c){c&&detach(e),r&&r.d(),o[8](null)}}}function instance$B(o,e,n){let r,c;const u=createEventDispatcher(),h=getContext$1("channel");let p=[];function b(V){V&&V.preventDefault(),c.close(),n(2,p=[])}function y(V){axios$1.get(h.lucentUrl+"/content/"+V).then(W=>{n(3,r=W.data)}).catch(W=>console.log(W))}function k(V){V.preventDefault(),u("insert",{records:p,action:"insert",schema:r.schema.name})}function A(V){V.preventDefault(),u("insert",{records:p,action:"replace"})}function R(V){c.showModal(),y(V)}function N(V){p=V,n(2,p)}function F(V){binding_callbacks[V?"unshift":"push"](()=>{c=V,n(1,c)})}return n(3,r={}),[b,c,p,r,k,A,R,N,F]}class Dialog extends SvelteComponent{constructor(e){super(),init(this,e,instance$B,create_fragment$B,safe_not_equal,{close:0,open:6})}get close(){return this.$$.ctx[0]}get open(){return this.$$.ctx[6]}}function create_fragment$A(o){let e,n,r,c,u,h,p,b,y;c=new Icon({props:{icon:"close"}});const k=o[4].default,A=create_slot(k,o,o[3],null);return{c(){e=element("dialog"),n=element("div"),r=element("button"),create_component(c.$$.fragment),u=space$3(),h=element("div"),A&&A.c(),attr(r,"type","button"),attr(r,"class","button close"),attr(r,"aria-label","Close"),attr(n,"class","dialog-header"),attr(h,"class","dialog-body"),set_style(h,"min-width","900px")},m(R,N){insert$1(R,e,N),append(e,n),append(n,r),mount_component(c,r,null),append(e,u),append(e,h),A&&A.m(h,null),o[5](e),p=!0,b||(y=listen(r,"click",prevent_default(o[0])),b=!0)},p(R,[N]){A&&A.p&&(!p||N&8)&&update_slot_base(A,k,R,R[3],p?get_slot_changes(k,R[3],N,null):get_all_dirty_from_scope(R[3]),null)},i(R){p||(transition_in(c.$$.fragment,R),transition_in(A,R),p=!0)},o(R){transition_out(c.$$.fragment,R),transition_out(A,R),p=!1},d(R){R&&detach(e),destroy_component(c),A&&A.d(R),o[5](null),b=!1,y()}}}function instance$A(o,e,n){let{$$slots:r={},$$scope:c}=e,u;function h(y){y&&y.preventDefault(),u.close()}function p(){u.showModal()}function b(y){binding_callbacks[y?"unshift":"push"](()=>{u=y,n(1,u)})}return o.$$set=y=>{"$$scope"in y&&n(3,c=y.$$scope)},[h,u,p,c,r,b]}class DialogRecord extends SvelteComponent{constructor(e){super(),init(this,e,instance$A,create_fragment$A,safe_not_equal,{close:0,open:2})}get close(){return this.$$.ctx[0]}get open(){return this.$$.ctx[2]}}function get_each_context$b(o,e,n){const r=o.slice();return r[18]=e[n],r}function create_else_block$a(o){let e,n,r,c,u,h,p,b;return u=new Icon({props:{icon:"magnifying-glass"}}),{c(){e=element("div"),n=element("button"),n.textContent="New",r=space$3(),c=element("button"),create_component(u.$$.fragment),attr(n,"class","button"),attr(c,"class","button"),set_style(e,"display","flex"),set_style(e,"align-items","center"),set_style(e,"gap","4px")},m(y,k){insert$1(y,e,k),append(e,n),append(e,r),append(e,c),mount_component(u,c,null),h=!0,p||(b=[listen(n,"click",o[11]),listen(c,"click",o[12])],p=!0)},p:noop,i(y){h||(transition_in(u.$$.fragment,y),h=!0)},o(y){transition_out(u.$$.fragment,y),h=!1},d(y){y&&detach(e),destroy_component(u),p=!1,run_all(b)}}}function create_if_block_1$g(o){let e,n,r=ensure_array_like(o[0]),c=[];for(let h=0;htransition_out(c[h],1,1,()=>{c[h]=null});return{c(){e=element("div");for(let h=0;h{r=null}),check_outros())},i(c){n||(transition_in(r),n=!0)},o(c){transition_out(r),n=!1},d(c){c&&detach(e),r&&r.d(c)}}}function create_fragment$z(o){let e,n,r,c,u,h,p;const b=[create_if_block_1$g,create_else_block$a],y=[];function k(N,F){return N[0].length>1?0:1}e=k(o),n=y[e]=b[e](o);let A={$$slots:{default:[create_default_slot$4]},$$scope:{ctx:o}};c=new DialogRecord({props:A}),o[14](c);let R={};return h=new Dialog({props:R}),o[15](h),h.$on("insert",o[7]),{c(){n.c(),r=space$3(),create_component(c.$$.fragment),u=space$3(),create_component(h.$$.fragment)},m(N,F){y[e].m(N,F),insert$1(N,r,F),mount_component(c,N,F),insert$1(N,u,F),mount_component(h,N,F),p=!0},p(N,[F]){let V=e;e=k(N),e===V?y[e].p(N,F):(group_outros(),transition_out(y[V],1,1,()=>{y[V]=null}),check_outros(),n=y[e],n?n.p(N,F):(n=y[e]=b[e](N),n.c()),transition_in(n,1),n.m(r.parentNode,r));const W={};F&2097168&&(W.$$scope={dirty:F,ctx:N}),c.$set(W);const J={};h.$set(J)},i(N){p||(transition_in(n),transition_in(c.$$.fragment,N),transition_in(h.$$.fragment,N),p=!0)},o(N){transition_out(n),transition_out(c.$$.fragment,N),transition_out(h.$$.fragment,N),p=!1},d(N){N&&(detach(r),detach(u)),y[e].d(N),o[14](null),destroy_component(c,N),o[15](null),destroy_component(h,N)}}}function instance$z(o,e,n){const r=createEventDispatcher(),c=getContext$1("channel");let{schemas:u}=e,{recordId:h}=e,p,b,y;function k(fe,_e){fe.preventDefault(),p.open(_e)}function A(fe){fe.preventDefault(),console.log("Save inline"),n(4,y=null),b.close(),r("save",{records:fe.detail.records,after:h})}function R(fe){fe.preventDefault(),p.close(),r("insert",{records:fe.detail.records,schema:fe.detail.schema,after:h})}function N(fe,_e){fe.preventDefault(),axios$1.get(c.lucentUrl+"/records/newInline?schema="+_e).then(ne=>{n(4,y=ne.data),b.open()}).catch(ne=>{console.log(ne)})}const F=(fe,_e)=>N(_e,fe.name),V=(fe,_e)=>k(_e,fe.name),W=fe=>N(fe,u[0].name),J=fe=>k(fe,u[0].name),te=fe=>n(4,y=null);function j(fe){binding_callbacks[fe?"unshift":"push"](()=>{b=fe,n(3,b)})}function ae(fe){binding_callbacks[fe?"unshift":"push"](()=>{p=fe,n(2,p)})}return o.$$set=fe=>{"schemas"in fe&&n(0,u=fe.schemas),"recordId"in fe&&n(1,h=fe.recordId)},[u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae]}class ReferenceInlineButtons extends SvelteComponent{constructor(e){super(),init(this,e,instance$z,create_fragment$z,safe_not_equal,{schemas:0,recordId:1})}}/**! - * Sortable 1.15.2 - * @author RubaXa - * @author owenm - * @license MIT - */function ownKeys(o,e){var n=Object.keys(o);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(o);e&&(r=r.filter(function(c){return Object.getOwnPropertyDescriptor(o,c).enumerable})),n.push.apply(n,r)}return n}function _objectSpread2(o){for(var e=1;e=0)&&(n[c]=o[c]);return n}function _objectWithoutProperties(o,e){if(o==null)return{};var n=_objectWithoutPropertiesLoose(o,e),r,c;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(o);for(c=0;c=0)&&Object.prototype.propertyIsEnumerable.call(o,r)&&(n[r]=o[r])}return n}var version="1.15.2";function userAgent(o){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(o)}var IE11OrLess=userAgent(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Edge=userAgent(/Edge/i),FireFox=userAgent(/firefox/i),Safari=userAgent(/safari/i)&&!userAgent(/chrome/i)&&!userAgent(/android/i),IOS=userAgent(/iP(ad|od|hone)/i),ChromeForAndroid=userAgent(/chrome/i)&&userAgent(/android/i),captureMode={capture:!1,passive:!1};function on(o,e,n){o.addEventListener(e,n,!IE11OrLess&&captureMode)}function off(o,e,n){o.removeEventListener(e,n,!IE11OrLess&&captureMode)}function matches(o,e){if(e){if(e[0]===">"&&(e=e.substring(1)),o)try{if(o.matches)return o.matches(e);if(o.msMatchesSelector)return o.msMatchesSelector(e);if(o.webkitMatchesSelector)return o.webkitMatchesSelector(e)}catch{return!1}return!1}}function getParentOrHost(o){return o.host&&o!==document&&o.host.nodeType?o.host:o.parentNode}function closest(o,e,n,r){if(o){n=n||document;do{if(e!=null&&(e[0]===">"?o.parentNode===n&&matches(o,e):matches(o,e))||r&&o===n)return o;if(o===n)break}while(o=getParentOrHost(o))}return null}var R_SPACE=/\s+/g;function toggleClass$1(o,e,n){if(o&&e)if(o.classList)o.classList[n?"add":"remove"](e);else{var r=(" "+o.className+" ").replace(R_SPACE," ").replace(" "+e+" "," ");o.className=(r+(n?" "+e:"")).replace(R_SPACE," ")}}function css$1(o,e,n){var r=o&&o.style;if(r){if(n===void 0)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(o,""):o.currentStyle&&(n=o.currentStyle),e===void 0?n:n[e];!(e in r)&&e.indexOf("webkit")===-1&&(e="-webkit-"+e),r[e]=n+(typeof n=="string"?"":"px")}}function matrix(o,e){var n="";if(typeof o=="string")n=o;else do{var r=css$1(o,"transform");r&&r!=="none"&&(n=r+" "+n)}while(!e&&(o=o.parentNode));var c=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return c&&new c(n)}function find$1(o,e,n){if(o){var r=o.getElementsByTagName(e),c=0,u=r.length;if(n)for(;c=u,!h)return r;if(r===getWindowScrollingElement())break;r=getParentAutoScrollElement(r,!1)}return!1}function getChild(o,e,n,r){for(var c=0,u=0,h=o.children;u2&&arguments[2]!==void 0?arguments[2]:{},c=r.evt,u=_objectWithoutProperties(r,_excluded);PluginManager.pluginEvent.bind(Sortable)(e,n,_objectSpread2({dragEl,parentEl,ghostEl,rootEl,nextEl,lastDownEl,cloneEl,cloneHidden,dragStarted:moved,putSortable,activeSortable:Sortable.active,originalEvent:c,oldIndex,oldDraggableIndex,newIndex,newDraggableIndex,hideGhostForTarget:_hideGhostForTarget,unhideGhostForTarget:_unhideGhostForTarget,cloneNowHidden:function(){cloneHidden=!0},cloneNowShown:function(){cloneHidden=!1},dispatchSortableEvent:function(p){_dispatchEvent({sortable:n,name:p,originalEvent:c})}},u))};function _dispatchEvent(o){dispatchEvent(_objectSpread2({putSortable,cloneEl,targetEl:dragEl,rootEl,oldIndex,oldDraggableIndex,newIndex,newDraggableIndex},o))}var dragEl,parentEl,ghostEl,rootEl,nextEl,lastDownEl,cloneEl,cloneHidden,oldIndex,newIndex,oldDraggableIndex,newDraggableIndex,activeGroup,putSortable,awaitingDragStarted=!1,ignoreNextClick=!1,sortables=[],tapEvt,touchEvt,lastDx,lastDy,tapDistanceLeft,tapDistanceTop,moved,lastTarget,lastDirection,pastFirstInvertThresh=!1,isCircumstantialInvert=!1,targetMoveDistance,ghostRelativeParent,ghostRelativeParentInitialScroll=[],_silent=!1,savedInputChecked=[],documentExists=typeof document<"u",PositionGhostAbsolutely=IOS,CSSFloatProperty=Edge||IE11OrLess?"cssFloat":"float",supportDraggable=documentExists&&!ChromeForAndroid&&!IOS&&"draggable"in document.createElement("div"),supportCssPointerEvents=function(){if(documentExists){if(IE11OrLess)return!1;var o=document.createElement("x");return o.style.cssText="pointer-events:auto",o.style.pointerEvents==="auto"}}(),_detectDirection=function(e,n){var r=css$1(e),c=parseInt(r.width)-parseInt(r.paddingLeft)-parseInt(r.paddingRight)-parseInt(r.borderLeftWidth)-parseInt(r.borderRightWidth),u=getChild(e,0,n),h=getChild(e,1,n),p=u&&css$1(u),b=h&&css$1(h),y=p&&parseInt(p.marginLeft)+parseInt(p.marginRight)+getRect(u).width,k=b&&parseInt(b.marginLeft)+parseInt(b.marginRight)+getRect(h).width;if(r.display==="flex")return r.flexDirection==="column"||r.flexDirection==="column-reverse"?"vertical":"horizontal";if(r.display==="grid")return r.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(u&&p.float&&p.float!=="none"){var A=p.float==="left"?"left":"right";return h&&(b.clear==="both"||b.clear===A)?"vertical":"horizontal"}return u&&(p.display==="block"||p.display==="flex"||p.display==="table"||p.display==="grid"||y>=c&&r[CSSFloatProperty]==="none"||h&&r[CSSFloatProperty]==="none"&&y+k>c)?"vertical":"horizontal"},_dragElInRowColumn=function(e,n,r){var c=r?e.left:e.top,u=r?e.right:e.bottom,h=r?e.width:e.height,p=r?n.left:n.top,b=r?n.right:n.bottom,y=r?n.width:n.height;return c===p||u===b||c+h/2===p+y/2},_detectNearestEmptySortable=function(e,n){var r;return sortables.some(function(c){var u=c[expando].options.emptyInsertThreshold;if(!(!u||lastChild(c))){var h=getRect(c),p=e>=h.left-u&&e<=h.right+u,b=n>=h.top-u&&n<=h.bottom+u;if(p&&b)return r=c}}),r},_prepareGroup=function(e){function n(u,h){return function(p,b,y,k){var A=p.options.group.name&&b.options.group.name&&p.options.group.name===b.options.group.name;if(u==null&&(h||A))return!0;if(u==null||u===!1)return!1;if(h&&u==="clone")return u;if(typeof u=="function")return n(u(p,b,y,k),h)(p,b,y,k);var R=(h?p:b).options.group.name;return u===!0||typeof u=="string"&&u===R||u.join&&u.indexOf(R)>-1}}var r={},c=e.group;(!c||_typeof(c)!="object")&&(c={name:c}),r.name=c.name,r.checkPull=n(c.pull,!0),r.checkPut=n(c.put),r.revertClone=c.revertClone,e.group=r},_hideGhostForTarget=function(){!supportCssPointerEvents&&ghostEl&&css$1(ghostEl,"display","none")},_unhideGhostForTarget=function(){!supportCssPointerEvents&&ghostEl&&css$1(ghostEl,"display","")};documentExists&&!ChromeForAndroid&&document.addEventListener("click",function(o){if(ignoreNextClick)return o.preventDefault(),o.stopPropagation&&o.stopPropagation(),o.stopImmediatePropagation&&o.stopImmediatePropagation(),ignoreNextClick=!1,!1},!0);var nearestEmptyInsertDetectEvent=function(e){if(dragEl){e=e.touches?e.touches[0]:e;var n=_detectNearestEmptySortable(e.clientX,e.clientY);if(n){var r={};for(var c in e)e.hasOwnProperty(c)&&(r[c]=e[c]);r.target=r.rootEl=n,r.preventDefault=void 0,r.stopPropagation=void 0,n[expando]._onDragOver(r)}}},_checkOutsideTargetEl=function(e){dragEl&&dragEl.parentNode[expando]._isOutsideThisEl(e.target)};function Sortable(o,e){if(!(o&&o.nodeType&&o.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(o));this.el=o,this.options=e=_extends({},e),o[expando]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(o.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return _detectDirection(o,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(h,p){h.setData("Text",p.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:Sortable.supportPointer!==!1&&"PointerEvent"in window&&!Safari,emptyInsertThreshold:5};PluginManager.initializePlugins(this,o,n);for(var r in n)!(r in e)&&(e[r]=n[r]);_prepareGroup(e);for(var c in this)c.charAt(0)==="_"&&typeof this[c]=="function"&&(this[c]=this[c].bind(this));this.nativeDraggable=e.forceFallback?!1:supportDraggable,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?on(o,"pointerdown",this._onTapStart):(on(o,"mousedown",this._onTapStart),on(o,"touchstart",this._onTapStart)),this.nativeDraggable&&(on(o,"dragover",this),on(o,"dragenter",this)),sortables.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),_extends(this,AnimationStateManager())}Sortable.prototype={constructor:Sortable,_isOutsideThisEl:function(e){!this.el.contains(e)&&e!==this.el&&(lastTarget=null)},_getDirection:function(e,n){return typeof this.options.direction=="function"?this.options.direction.call(this,e,n,dragEl):this.options.direction},_onTapStart:function(e){if(e.cancelable){var n=this,r=this.el,c=this.options,u=c.preventOnFilter,h=e.type,p=e.touches&&e.touches[0]||e.pointerType&&e.pointerType==="touch"&&e,b=(p||e).target,y=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||b,k=c.filter;if(_saveInputCheckedState(r),!dragEl&&!(/mousedown|pointerdown/.test(h)&&e.button!==0||c.disabled)&&!y.isContentEditable&&!(!this.nativeDraggable&&Safari&&b&&b.tagName.toUpperCase()==="SELECT")&&(b=closest(b,c.draggable,r,!1),!(b&&b.animated)&&lastDownEl!==b)){if(oldIndex=index(b),oldDraggableIndex=index(b,c.draggable),typeof k=="function"){if(k.call(this,e,b,this)){_dispatchEvent({sortable:n,rootEl:y,name:"filter",targetEl:b,toEl:r,fromEl:r}),pluginEvent("filter",n,{evt:e}),u&&e.cancelable&&e.preventDefault();return}}else if(k&&(k=k.split(",").some(function(A){if(A=closest(y,A.trim(),r,!1),A)return _dispatchEvent({sortable:n,rootEl:A,name:"filter",targetEl:b,fromEl:r,toEl:r}),pluginEvent("filter",n,{evt:e}),!0}),k)){u&&e.cancelable&&e.preventDefault();return}c.handle&&!closest(y,c.handle,r,!1)||this._prepareDragStart(e,p,b)}}},_prepareDragStart:function(e,n,r){var c=this,u=c.el,h=c.options,p=u.ownerDocument,b;if(r&&!dragEl&&r.parentNode===u){var y=getRect(r);if(rootEl=u,dragEl=r,parentEl=dragEl.parentNode,nextEl=dragEl.nextSibling,lastDownEl=r,activeGroup=h.group,Sortable.dragged=dragEl,tapEvt={target:dragEl,clientX:(n||e).clientX,clientY:(n||e).clientY},tapDistanceLeft=tapEvt.clientX-y.left,tapDistanceTop=tapEvt.clientY-y.top,this._lastX=(n||e).clientX,this._lastY=(n||e).clientY,dragEl.style["will-change"]="all",b=function(){if(pluginEvent("delayEnded",c,{evt:e}),Sortable.eventCanceled){c._onDrop();return}c._disableDelayedDragEvents(),!FireFox&&c.nativeDraggable&&(dragEl.draggable=!0),c._triggerDragStart(e,n),_dispatchEvent({sortable:c,name:"choose",originalEvent:e}),toggleClass$1(dragEl,h.chosenClass,!0)},h.ignore.split(",").forEach(function(k){find$1(dragEl,k.trim(),_disableDraggable)}),on(p,"dragover",nearestEmptyInsertDetectEvent),on(p,"mousemove",nearestEmptyInsertDetectEvent),on(p,"touchmove",nearestEmptyInsertDetectEvent),on(p,"mouseup",c._onDrop),on(p,"touchend",c._onDrop),on(p,"touchcancel",c._onDrop),FireFox&&this.nativeDraggable&&(this.options.touchStartThreshold=4,dragEl.draggable=!0),pluginEvent("delayStart",this,{evt:e}),h.delay&&(!h.delayOnTouchOnly||n)&&(!this.nativeDraggable||!(Edge||IE11OrLess))){if(Sortable.eventCanceled){this._onDrop();return}on(p,"mouseup",c._disableDelayedDrag),on(p,"touchend",c._disableDelayedDrag),on(p,"touchcancel",c._disableDelayedDrag),on(p,"mousemove",c._delayedDragTouchMoveHandler),on(p,"touchmove",c._delayedDragTouchMoveHandler),h.supportPointer&&on(p,"pointermove",c._delayedDragTouchMoveHandler),c._dragStartTimer=setTimeout(b,h.delay)}else b()}},_delayedDragTouchMoveHandler:function(e){var n=e.touches?e.touches[0]:e;Math.max(Math.abs(n.clientX-this._lastX),Math.abs(n.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){dragEl&&_disableDraggable(dragEl),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;off(e,"mouseup",this._disableDelayedDrag),off(e,"touchend",this._disableDelayedDrag),off(e,"touchcancel",this._disableDelayedDrag),off(e,"mousemove",this._delayedDragTouchMoveHandler),off(e,"touchmove",this._delayedDragTouchMoveHandler),off(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,n){n=n||e.pointerType=="touch"&&e,!this.nativeDraggable||n?this.options.supportPointer?on(document,"pointermove",this._onTouchMove):n?on(document,"touchmove",this._onTouchMove):on(document,"mousemove",this._onTouchMove):(on(dragEl,"dragend",this),on(rootEl,"dragstart",this._onDragStart));try{document.selection?_nextTick(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(e,n){if(awaitingDragStarted=!1,rootEl&&dragEl){pluginEvent("dragStarted",this,{evt:n}),this.nativeDraggable&&on(document,"dragover",_checkOutsideTargetEl);var r=this.options;!e&&toggleClass$1(dragEl,r.dragClass,!1),toggleClass$1(dragEl,r.ghostClass,!0),Sortable.active=this,e&&this._appendGhost(),_dispatchEvent({sortable:this,name:"start",originalEvent:n})}else this._nulling()},_emulateDragOver:function(){if(touchEvt){this._lastX=touchEvt.clientX,this._lastY=touchEvt.clientY,_hideGhostForTarget();for(var e=document.elementFromPoint(touchEvt.clientX,touchEvt.clientY),n=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(touchEvt.clientX,touchEvt.clientY),e!==n);)n=e;if(dragEl.parentNode[expando]._isOutsideThisEl(e),n)do{if(n[expando]){var r=void 0;if(r=n[expando]._onDragOver({clientX:touchEvt.clientX,clientY:touchEvt.clientY,target:e,rootEl:n}),r&&!this.options.dragoverBubble)break}e=n}while(n=n.parentNode);_unhideGhostForTarget()}},_onTouchMove:function(e){if(tapEvt){var n=this.options,r=n.fallbackTolerance,c=n.fallbackOffset,u=e.touches?e.touches[0]:e,h=ghostEl&&matrix(ghostEl,!0),p=ghostEl&&h&&h.a,b=ghostEl&&h&&h.d,y=PositionGhostAbsolutely&&ghostRelativeParent&&getRelativeScrollOffset(ghostRelativeParent),k=(u.clientX-tapEvt.clientX+c.x)/(p||1)+(y?y[0]-ghostRelativeParentInitialScroll[0]:0)/(p||1),A=(u.clientY-tapEvt.clientY+c.y)/(b||1)+(y?y[1]-ghostRelativeParentInitialScroll[1]:0)/(b||1);if(!Sortable.active&&!awaitingDragStarted){if(r&&Math.max(Math.abs(u.clientX-this._lastX),Math.abs(u.clientY-this._lastY))=0&&(_dispatchEvent({rootEl:parentEl,name:"add",toEl:parentEl,fromEl:rootEl,originalEvent:e}),_dispatchEvent({sortable:this,name:"remove",toEl:parentEl,originalEvent:e}),_dispatchEvent({rootEl:parentEl,name:"sort",toEl:parentEl,fromEl:rootEl,originalEvent:e}),_dispatchEvent({sortable:this,name:"sort",toEl:parentEl,originalEvent:e})),putSortable&&putSortable.save()):newIndex!==oldIndex&&newIndex>=0&&(_dispatchEvent({sortable:this,name:"update",toEl:parentEl,originalEvent:e}),_dispatchEvent({sortable:this,name:"sort",toEl:parentEl,originalEvent:e})),Sortable.active&&((newIndex==null||newIndex===-1)&&(newIndex=oldIndex,newDraggableIndex=oldDraggableIndex),_dispatchEvent({sortable:this,name:"end",toEl:parentEl,originalEvent:e}),this.save()))),this._nulling()},_nulling:function(){pluginEvent("nulling",this),rootEl=dragEl=parentEl=ghostEl=nextEl=cloneEl=lastDownEl=cloneHidden=tapEvt=touchEvt=moved=newIndex=newDraggableIndex=oldIndex=oldDraggableIndex=lastTarget=lastDirection=putSortable=activeGroup=Sortable.dragged=Sortable.ghost=Sortable.clone=Sortable.active=null,savedInputChecked.forEach(function(e){e.checked=!0}),savedInputChecked.length=lastDx=lastDy=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":dragEl&&(this._onDragOver(e),_globalDragOver(e));break;case"selectstart":e.preventDefault();break}},toArray:function(){for(var e=[],n,r=this.el.children,c=0,u=r.length,h=this.options;cc.right+u||o.clientY>r.bottom&&o.clientX>r.left:o.clientY>c.bottom+u||o.clientX>r.right&&o.clientY>r.top}function _getSwapDirection(o,e,n,r,c,u,h,p){var b=r?o.clientY:o.clientX,y=r?n.height:n.width,k=r?n.top:n.left,A=r?n.bottom:n.right,R=!1;if(!h){if(p&&targetMoveDistancek+y*u/2:bA-targetMoveDistance)return-lastDirection}else if(b>k+y*(1-c)/2&&bA-y*u/2)?b>k+y/2?1:-1:0}function _getInsertDirection(o){return index(dragEl){h[k]=null}),check_outros(),n=h[e],n?n.p(b,y):(n=h[e]=u[e](b),n.c()),transition_in(n,1),n.m(r.parentNode,r))},i(b){c||(transition_in(n),c=!0)},o(b){transition_out(n),c=!1},d(b){b&&detach(r),h[e].d(b)}}}function instance$y(o,e,n){let{$$slots:r={},$$scope:c}=e,{sortableClass:u=""}=e,{isTable:h=!1}=e,{sortableInstance:p}=e;const b=createEventDispatcher();let y;onMount(()=>{let R={animation:150,easing:"cubic-bezier(1, 0, 0, 1)",direction:"vertical",onUpdate(N){b("update",{source:N.oldIndex,target:N.newIndex})}};n(3,p=Sortable.create(y,R))});function k(R){binding_callbacks[R?"unshift":"push"](()=>{y=R,n(2,y)})}function A(R){binding_callbacks[R?"unshift":"push"](()=>{y=R,n(2,y)})}return o.$$set=R=>{"sortableClass"in R&&n(0,u=R.sortableClass),"isTable"in R&&n(1,h=R.isTable),"sortableInstance"in R&&n(3,p=R.sortableInstance),"$$scope"in R&&n(4,c=R.$$scope)},[u,h,y,p,c,r,k,A]}class Sortable_1 extends SvelteComponent{constructor(e){super(),init(this,e,instance$y,create_fragment$y,safe_not_equal,{sortableClass:0,isTable:1,sortableInstance:3})}}function create_if_block_2$6(o){let e,n,r;return n=new Preview({props:{record:o[5],size:"small"}}),{c(){e=element("div"),create_component(n.$$.fragment),attr(e,"class","image")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p:noop,i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_if_block_1$f(o){let e,n;return e=new Status({props:{status:o[0].status}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.status=r[0].status),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block$q(o){let e,n,r,c,u,h;return r=new Icon({props:{icon:"trash-can"}}),{c(){e=element("div"),n=element("button"),create_component(r.$$.fragment),attr(n,"class","button"),attr(e,"class","reference-action")},m(p,b){insert$1(p,e,b),append(e,n),mount_component(r,n,null),c=!0,u||(h=listen(n,"click",o[6]),u=!0)},p:noop,i(p){c||(transition_in(r.$$.fragment,p),c=!0)},o(p){transition_out(r.$$.fragment,p),c=!1},d(p){p&&detach(e),destroy_component(r),u=!1,h()}}}function create_fragment$x(o){let e,n,r,c,u,h,p,b,y,k,A,R=o[3].label+"",N,F,V,W,J=o[5]&&create_if_block_2$6(o),te=o[0].status==="draft"&&create_if_block_1$f(o),j=o[1]&&create_if_block$q(o);return{c(){e=element("div"),n=element("div"),J&&J.c(),r=space$3(),c=element("div"),u=element("div"),h=element("a"),p=text(o[4]),y=space$3(),k=element("small"),A=text("from "),N=text(R),F=space$3(),te&&te.c(),V=space$3(),j&&j.c(),attr(h,"class","record-title"),attr(h,"href",b=o[2].lucentUrl+"/records/"+o[0].id),attr(k,"class","d-block"),attr(c,"class","title"),set_style(n,"display","flex"),set_style(n,"align-items","center"),set_style(n,"gap","10px"),attr(e,"class","preview-reference")},m(ae,fe){insert$1(ae,e,fe),append(e,n),J&&J.m(n,null),append(n,r),append(n,c),append(c,u),append(u,h),append(h,p),append(u,y),append(u,k),append(k,A),append(k,N),append(k,F),te&&te.m(k,null),append(e,V),j&&j.m(e,null),W=!0},p(ae,[fe]){ae[5]&&J.p(ae,fe),(!W||fe&1&&b!==(b=ae[2].lucentUrl+"/records/"+ae[0].id))&&attr(h,"href",b),ae[0].status==="draft"?te?(te.p(ae,fe),fe&1&&transition_in(te,1)):(te=create_if_block_1$f(ae),te.c(),transition_in(te,1),te.m(k,null)):te&&(group_outros(),transition_out(te,1,1,()=>{te=null}),check_outros()),ae[1]?j?(j.p(ae,fe),fe&2&&transition_in(j,1)):(j=create_if_block$q(ae),j.c(),transition_in(j,1),j.m(e,null)):j&&(group_outros(),transition_out(j,1,1,()=>{j=null}),check_outros())},i(ae){W||(transition_in(J),transition_in(te),transition_in(j),W=!0)},o(ae){transition_out(J),transition_out(te),transition_out(j),W=!1},d(ae){ae&&detach(e),J&&J.d(),te&&te.d(),j&&j.d()}}}function instance$x(o,e,n){const r=createEventDispatcher(),c=getContext$1("channel");let{graph:u}=e,{record:h}=e,{hasDelete:p=!1}=e,b=c.schemas.find(N=>N.name===h.schema),y=previewTitle(c.schemas,h);const k=u.edges.find(N=>N.source===h.id&&N.field===b.cardImage);let A=u.records.find(N=>N.id===(k==null?void 0:k.target));function R(N){N.preventDefault(),r("remove",h.id)}return o.$$set=N=>{"graph"in N&&n(7,u=N.graph),"record"in N&&n(0,h=N.record),"hasDelete"in N&&n(1,p=N.hasDelete)},[h,p,c,b,y,A,R,u]}class PreviewReference extends SvelteComponent{constructor(e){super(),init(this,e,instance$x,create_fragment$x,safe_not_equal,{graph:7,record:0,hasDelete:1})}}function get_each_context$a(o,e,n){const r=o.slice();return r[11]=e[n],r}function create_if_block_1$e(o){let e,n;return{c(){e=element("div"),n=text(o[2]),attr(e,"class","invalid-feedback d-block mb-3")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&4&&set_data(n,r[2])},d(r){r&&detach(e)}}}function create_if_block$p(o){let e,n;return e=new Sortable_1({props:{sortableClass:"row row-cols-3 mt-3",$$slots:{default:[create_default_slot$3]},$$scope:{ctx:o}}}),e.$on("update",o[5]),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&16387&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_each_block$a(o,e){let n,r,c,u;return r=new PreviewReference({props:{graph:e[0],record:e[11],hasDelete:!0}}),r.$on("remove",e[4]),{key:o,first:null,c(){n=element("div"),create_component(r.$$.fragment),c=space$3(),this.first=n},m(h,p){insert$1(h,n,p),mount_component(r,n,null),append(n,c),u=!0},p(h,p){e=h;const b={};p&1&&(b.graph=e[0]),p&2&&(b.record=e[11]),r.$set(b)},i(h){u||(transition_in(r.$$.fragment,h),u=!0)},o(h){transition_out(r.$$.fragment,h),u=!1},d(h){h&&detach(n),destroy_component(r)}}}function create_default_slot$3(o){let e=[],n=new Map,r,c,u=ensure_array_like(o[1]);const h=p=>p[11].id;for(let p=0;p0&&create_if_block$p(o);return{c(){p&&p.c(),e=space$3(),n=element("div"),create_component(r.$$.fragment),c=space$3(),b&&b.c(),u=empty$1(),attr(n,"class","inline-card-wrapper")},m(y,k){p&&p.m(y,k),insert$1(y,e,k),insert$1(y,n,k),mount_component(r,n,null),insert$1(y,c,k),b&&b.m(y,k),insert$1(y,u,k),h=!0},p(y,[k]){y[2]?p?p.p(y,k):(p=create_if_block_1$e(y),p.c(),p.m(e.parentNode,e)):p&&(p.d(1),p=null),y[1].length>0?b?(b.p(y,k),k&2&&transition_in(b,1)):(b=create_if_block$p(y),b.c(),transition_in(b,1),b.m(u.parentNode,u)):b&&(group_outros(),transition_out(b,1,1,()=>{b=null}),check_outros())},i(y){h||(transition_in(r.$$.fragment,y),transition_in(b),h=!0)},o(y){transition_out(r.$$.fragment,y),transition_out(b),h=!1},d(y){y&&(detach(e),detach(n),detach(c),detach(u)),p&&p.d(y),destroy_component(r),b&&b.d(y)}}}function instance$w(o,e,n){let r,c;const u=getContext$1("channel");let{record:h}=e,{field:p}=e,{graph:b}=e,{validationErrors:y}=e,k=u.schemas.filter(F=>p.collections.includes(F.name));function A(F){F.preventDefault(),n(0,b.edges=b.edges.filter(V=>!(V.target===F.detail&&V.field===p.name)),b)}function R(F){n(0,b.edges=sortByField(F.detail.source,F.detail.target,b.edges,p.name,c),b)}function N(F){F.preventDefault(),n(0,b=insertEdges(b,h,F.detail.records,p.name,F.detail.action))}return o.$$set=F=>{"record"in F&&n(7,h=F.record),"field"in F&&n(8,p=F.field),"graph"in F&&n(0,b=F.graph),"validationErrors"in F&&n(9,y=F.validationErrors)},o.$$.update=()=>{o.$$.dirty&768&&n(2,r=getErrorMessage(y,p.name)),o.$$.dirty&385&&n(1,c=b.edges.filter(F=>F.field===p.name).map(F=>b.records.find(V=>V.id===F.target&&h.id===F.source)).filter(F=>!!(F!=null&&F.id))??[])},[b,c,r,k,A,R,N,h,p,y]}class Reference extends SvelteComponent{constructor(e){super(),init(this,e,instance$w,create_fragment$w,safe_not_equal,{record:7,field:8,graph:0,validationErrors:9})}}function create_if_block$o(o){let e,n;return{c(){e=element("div"),n=text(o[4]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&16&&set_data(n,r[4])},d(r){r&&detach(e)}}}function create_fragment$v(o){let e,n,r,c,u,h,p,b,y,k,A=o[4]&&create_if_block$o(o);return{c(){e=element("div"),n=element("div"),r=element("input"),u=space$3(),h=element("input"),b=space$3(),A&&A.c(),attr(r,"type","color"),attr(r,"id",o[3]),set_style(r,"border","none"),set_style(r,"background","transparent"),set_style(r,"padding","0"),set_style(r,"width","64px"),r.disabled=c=o[1].readonly&&!o[2],attr(h,"type","text"),attr(h,"id",o[3]),attr(h,"class","form-control"),h.readOnly=p=o[1].readonly&&!o[2],toggle_class(h,"is-invalid",o[4]),set_style(n,"display","flex"),set_style(n,"align-items","center"),set_style(n,"gap","10px"),attr(e,"class","mb-0")},m(R,N){insert$1(R,e,N),append(e,n),append(n,r),set_input_value(r,o[0]),append(n,u),append(n,h),set_input_value(h,o[0]),append(e,b),A&&A.m(e,null),y||(k=[listen(r,"input",o[6]),listen(h,"input",o[7])],y=!0)},p(R,[N]){N&8&&attr(r,"id",R[3]),N&6&&c!==(c=R[1].readonly&&!R[2])&&(r.disabled=c),N&1&&set_input_value(r,R[0]),N&8&&attr(h,"id",R[3]),N&6&&p!==(p=R[1].readonly&&!R[2])&&(h.readOnly=p),N&1&&h.value!==R[0]&&set_input_value(h,R[0]),N&16&&toggle_class(h,"is-invalid",R[4]),R[4]?A?A.p(R,N):(A=create_if_block$o(R),A.c(),A.m(e,null)):A&&(A.d(1),A=null)},i:noop,o:noop,d(R){R&&detach(e),A&&A.d(),y=!1,run_all(k)}}}function instance$v(o,e,n){let r,{field:c}=e,{value:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e,{id:b}=e;function y(){u=this.value,n(0,u)}function k(){u=this.value,n(0,u)}return o.$$set=A=>{"field"in A&&n(1,c=A.field),"value"in A&&n(0,u=A.value),"isCreateMode"in A&&n(2,h=A.isCreateMode),"validationErrors"in A&&n(5,p=A.validationErrors),"id"in A&&n(3,b=A.id)},o.$$.update=()=>{o.$$.dirty&34&&n(4,r=getErrorMessage(p,c.name))},[u,c,h,b,r,p,y,k]}class Color extends SvelteComponent{constructor(e){super(),init(this,e,instance$v,create_fragment$v,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:5,id:3})}}function create_if_block_1$d(o){let e,n,r,c,u,h,p,b,y,k,A;return y=init_binding_group(o[7][0]),{c(){e=element("div"),n=element("input"),u=space$3(),h=element("label"),p=text("Don't Know"),attr(n,"class","form-check-input"),attr(n,"id",r=o[1]+"-3"),attr(n,"type","radio"),n.__value=null,set_input_value(n,n.__value),n.disabled=c=o[2].readonly&&!o[3],toggle_class(n,"is-invalid",o[4]),attr(h,"class","form-check-label"),attr(h,"for",b=o[1]+"-3"),attr(e,"class","form-check form-check-inline"),y.p(n)},m(R,N){insert$1(R,e,N),append(e,n),n.checked=n.__value===o[0],append(e,u),append(e,h),append(h,p),k||(A=listen(n,"change",o[9]),k=!0)},p(R,N){N&2&&r!==(r=R[1]+"-3")&&attr(n,"id",r),N&12&&c!==(c=R[2].readonly&&!R[3])&&(n.disabled=c),N&1&&(n.checked=n.__value===R[0]),N&16&&toggle_class(n,"is-invalid",R[4]),N&2&&b!==(b=R[1]+"-3")&&attr(h,"for",b)},d(R){R&&detach(e),y.r(),k=!1,A()}}}function create_if_block$n(o){let e,n;return{c(){e=element("div"),n=text(o[4]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&16&&set_data(n,r[4])},d(r){r&&detach(e)}}}function create_fragment$u(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae,fe,_e,ne,Se,De=o[2].nullable&&create_if_block_1$d(o),Be=o[4]&&create_if_block$n(o);return _e=init_binding_group(o[7][0]),{c(){e=element("div"),n=element("div"),r=element("input"),h=space$3(),p=element("label"),b=text("Yes"),k=space$3(),A=element("div"),R=element("input"),V=space$3(),W=element("label"),J=text("No"),j=space$3(),De&&De.c(),ae=space$3(),Be&&Be.c(),fe=empty$1(),attr(r,"class","form-check-input"),attr(r,"type","radio"),attr(r,"id",c=o[1]+"-1"),r.__value=!0,set_input_value(r,r.__value),r.disabled=u=o[2].readonly&&!o[3],toggle_class(r,"is-invalid",o[4]),attr(p,"class","form-check-label"),attr(p,"for",y=o[1]+"-1"),attr(n,"class","form-check form-check-inline"),attr(R,"class","form-check-input"),attr(R,"type","radio"),attr(R,"id",N=o[1]+"-2"),R.__value=!1,set_input_value(R,R.__value),R.disabled=F=o[2].readonly&&!o[3],toggle_class(R,"is-invalid",o[4]),attr(W,"class","form-check-label"),attr(W,"for",te=o[1]+"-2"),attr(A,"class","form-check form-check-inline"),attr(e,"class","field-checkbox"),_e.p(r,R)},m(Te,Oe){insert$1(Te,e,Oe),append(e,n),append(n,r),r.checked=r.__value===o[0],append(n,h),append(n,p),append(p,b),append(e,k),append(e,A),append(A,R),R.checked=R.__value===o[0],append(A,V),append(A,W),append(W,J),append(e,j),De&&De.m(e,null),insert$1(Te,ae,Oe),Be&&Be.m(Te,Oe),insert$1(Te,fe,Oe),ne||(Se=[listen(r,"change",o[6]),listen(R,"change",o[8])],ne=!0)},p(Te,[Oe]){Oe&2&&c!==(c=Te[1]+"-1")&&attr(r,"id",c),Oe&12&&u!==(u=Te[2].readonly&&!Te[3])&&(r.disabled=u),Oe&1&&(r.checked=r.__value===Te[0]),Oe&16&&toggle_class(r,"is-invalid",Te[4]),Oe&2&&y!==(y=Te[1]+"-1")&&attr(p,"for",y),Oe&2&&N!==(N=Te[1]+"-2")&&attr(R,"id",N),Oe&12&&F!==(F=Te[2].readonly&&!Te[3])&&(R.disabled=F),Oe&1&&(R.checked=R.__value===Te[0]),Oe&16&&toggle_class(R,"is-invalid",Te[4]),Oe&2&&te!==(te=Te[1]+"-2")&&attr(W,"for",te),Te[2].nullable?De?De.p(Te,Oe):(De=create_if_block_1$d(Te),De.c(),De.m(e,null)):De&&(De.d(1),De=null),Te[4]?Be?Be.p(Te,Oe):(Be=create_if_block$n(Te),Be.c(),Be.m(fe.parentNode,fe)):Be&&(Be.d(1),Be=null)},i:noop,o:noop,d(Te){Te&&(detach(e),detach(ae),detach(fe)),De&&De.d(),Be&&Be.d(Te),_e.r(),ne=!1,run_all(Se)}}}function instance$u(o,e,n){let r,{id:c}=e,{field:u}=e,{value:h}=e,{isCreateMode:p}=e,{validationErrors:b}=e;const y=[[]];function k(){h=this.__value,n(0,h)}function A(){h=this.__value,n(0,h)}function R(){h=this.__value,n(0,h)}return o.$$set=N=>{"id"in N&&n(1,c=N.id),"field"in N&&n(2,u=N.field),"value"in N&&n(0,h=N.value),"isCreateMode"in N&&n(3,p=N.isCreateMode),"validationErrors"in N&&n(5,b=N.validationErrors)},o.$$.update=()=>{o.$$.dirty&36&&n(4,r=getErrorMessage(b,u.name))},[h,c,u,p,r,b,k,y,A,R]}class Checkbox extends SvelteComponent{constructor(e){super(),init(this,e,instance$u,create_fragment$u,safe_not_equal,{id:1,field:2,value:0,isCreateMode:3,validationErrors:5})}}function create_if_block$m(o){let e,n;return{c(){e=element("div"),n=text(o[4]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&16&&set_data(n,r[4])},d(r){r&&detach(e)}}}function create_fragment$t(o){let e,n,r,c,u,h,p=o[4]&&create_if_block$m(o);return{c(){e=element("div"),n=element("input"),c=space$3(),p&&p.c(),attr(n,"type","number"),attr(n,"id",o[3]),attr(n,"class","form-control"),attr(n,"autocomplete","off"),n.readOnly=r=o[1].readonly&&!o[2],toggle_class(n,"is-invalid",o[4]),attr(e,"class","mb-0")},m(b,y){insert$1(b,e,y),append(e,n),set_input_value(n,o[0]),append(e,c),p&&p.m(e,null),u||(h=[listen(n,"change",o[5]),listen(n,"input",o[7])],u=!0)},p(b,[y]){y&8&&attr(n,"id",b[3]),y&6&&r!==(r=b[1].readonly&&!b[2])&&(n.readOnly=r),y&1&&to_number(n.value)!==b[0]&&set_input_value(n,b[0]),y&16&&toggle_class(n,"is-invalid",b[4]),b[4]?p?p.p(b,y):(p=create_if_block$m(b),p.c(),p.m(e,null)):p&&(p.d(1),p=null)},i:noop,o:noop,d(b){b&&detach(e),p&&p.d(),u=!1,run_all(h)}}}function instance$t(o,e,n){let r,{field:c}=e,{value:u}=e,{validationErrors:h}=e,{isCreateMode:p}=e,{id:b}=e;function y(R){const N=R.currentTarget.value,F=k(N);n(0,u=isNaN(F)?null:F)}function k(R){return parseFloat(R).toFixed(c.decimals)}function A(){u=to_number(this.value),n(0,u)}return o.$$set=R=>{"field"in R&&n(1,c=R.field),"value"in R&&n(0,u=R.value),"validationErrors"in R&&n(6,h=R.validationErrors),"isCreateMode"in R&&n(2,p=R.isCreateMode),"id"in R&&n(3,b=R.id)},o.$$.update=()=>{o.$$.dirty&66&&n(4,r=getErrorMessage(h,c.name))},[u,c,p,b,r,y,h,A]}let Number$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$t,create_fragment$t,safe_not_equal,{field:1,value:0,validationErrors:6,isCreateMode:2,id:3})}};function create_if_block$l(o){let e,n=o[1].help+"",r;return{c(){e=element("small"),r=text(n),attr(e,"class","text-primary opacity-50")},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&2&&n!==(n=c[1].help+"")&&set_data(r,n)},d(c){c&&detach(e)}}}function create_fragment$s(o){let e,n,r,c=o[1].label+"",u,h,p,b,y=o[1].name+"",k,A,R,N,F,V,W,J=o[1].help&&create_if_block$l(o);return{c(){e=element("div"),n=element("div"),r=element("label"),u=text(c),h=space$3(),p=element("a"),b=element("code"),k=text(y),R=space$3(),N=element("input"),F=space$3(),J&&J.c(),attr(r,"for",o[4]),attr(r,"class","form-label"),attr(b,"class","text-primary opacity-50"),attr(p,"class","text-decoration-none"),attr(p,"href",A=o[3]+"/schemas/"+o[2].name+"/fields/edit/"+o[1].name),attr(n,"class","d-flex justify-content-between"),attr(N,"type","url"),attr(N,"id",o[4]),attr(N,"class","form-control"),attr(N,"placeholder","https://www.example.com"),attr(e,"class","mb-0")},m(te,j){insert$1(te,e,j),append(e,n),append(n,r),append(r,u),append(n,h),append(n,p),append(p,b),append(b,k),append(e,R),append(e,N),set_input_value(N,o[0]),append(e,F),J&&J.m(e,null),V||(W=listen(N,"input",o[5]),V=!0)},p(te,[j]){j&2&&c!==(c=te[1].label+"")&&set_data(u,c),j&2&&y!==(y=te[1].name+"")&&set_data(k,y),j&6&&A!==(A=te[3]+"/schemas/"+te[2].name+"/fields/edit/"+te[1].name)&&attr(p,"href",A),j&1&&N.value!==te[0]&&set_input_value(N,te[0]),te[1].help?J?J.p(te,j):(J=create_if_block$l(te),J.c(),J.m(e,null)):J&&(J.d(1),J=null)},i:noop,o:noop,d(te){te&&detach(e),J&&J.d(),V=!1,W()}}}function instance$s(o,e,n){const r=getContext$1("channelurl");let{field:c}=e,{value:u}=e,{schema:h}=e,p=lodashExports.uniqueId();function b(){u=this.value,n(0,u)}return o.$$set=y=>{"field"in y&&n(1,c=y.field),"value"in y&&n(0,u=y.value),"schema"in y&&n(2,h=y.schema)},[u,c,h,r,p,b]}class Url extends SvelteComponent{constructor(e){super(),init(this,e,instance$s,create_fragment$s,safe_not_equal,{field:1,value:0,schema:2})}}var HOOKS=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],defaults$2={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:typeof window=="object"&&window.navigator.userAgent.indexOf("MSIE")===-1,ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(o){return typeof console<"u"&&console.warn(o)},getWeek:function(o){var e=new Date(o.getTime());e.setHours(0,0,0,0),e.setDate(e.getDate()+3-(e.getDay()+6)%7);var n=new Date(e.getFullYear(),0,4);return 1+Math.round(((e.getTime()-n.getTime())/864e5-3+(n.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},english={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(o){var e=o%100;if(e>3&&e<21)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},pad=function(o,e){return e===void 0&&(e=2),("000"+o).slice(e*-1)},int=function(o){return o===!0?1:0};function debounce(o,e){var n;return function(){var r=this,c=arguments;clearTimeout(n),n=setTimeout(function(){return o.apply(r,c)},e)}}var arrayify=function(o){return o instanceof Array?o:[o]};function toggleClass(o,e,n){if(n===!0)return o.classList.add(e);o.classList.remove(e)}function createElement(o,e,n){var r=window.document.createElement(o);return e=e||"",n=n||"",r.className=e,n!==void 0&&(r.textContent=n),r}function clearNode(o){for(;o.firstChild;)o.removeChild(o.firstChild)}function findParent(o,e){if(e(o))return o;if(o.parentNode)return findParent(o.parentNode,e)}function createNumberInput(o,e){var n=createElement("div","numInputWrapper"),r=createElement("input","numInput "+o),c=createElement("span","arrowUp"),u=createElement("span","arrowDown");if(navigator.userAgent.indexOf("MSIE 9.0")===-1?r.type="number":(r.type="text",r.pattern="\\d*"),e!==void 0)for(var h in e)r.setAttribute(h,e[h]);return n.appendChild(r),n.appendChild(c),n.appendChild(u),n}function getEventTarget(o){try{if(typeof o.composedPath=="function"){var e=o.composedPath();return e[0]}return o.target}catch{return o.target}}var doNothing=function(){},monthToStr=function(o,e,n){return n.months[e?"shorthand":"longhand"][o]},revFormat={D:doNothing,F:function(o,e,n){o.setMonth(n.months.longhand.indexOf(e))},G:function(o,e){o.setHours((o.getHours()>=12?12:0)+parseFloat(e))},H:function(o,e){o.setHours(parseFloat(e))},J:function(o,e){o.setDate(parseFloat(e))},K:function(o,e,n){o.setHours(o.getHours()%12+12*int(new RegExp(n.amPM[1],"i").test(e)))},M:function(o,e,n){o.setMonth(n.months.shorthand.indexOf(e))},S:function(o,e){o.setSeconds(parseFloat(e))},U:function(o,e){return new Date(parseFloat(e)*1e3)},W:function(o,e,n){var r=parseInt(e),c=new Date(o.getFullYear(),0,2+(r-1)*7,0,0,0,0);return c.setDate(c.getDate()-c.getDay()+n.firstDayOfWeek),c},Y:function(o,e){o.setFullYear(parseFloat(e))},Z:function(o,e){return new Date(e)},d:function(o,e){o.setDate(parseFloat(e))},h:function(o,e){o.setHours((o.getHours()>=12?12:0)+parseFloat(e))},i:function(o,e){o.setMinutes(parseFloat(e))},j:function(o,e){o.setDate(parseFloat(e))},l:doNothing,m:function(o,e){o.setMonth(parseFloat(e)-1)},n:function(o,e){o.setMonth(parseFloat(e)-1)},s:function(o,e){o.setSeconds(parseFloat(e))},u:function(o,e){return new Date(parseFloat(e))},w:doNothing,y:function(o,e){o.setFullYear(2e3+parseFloat(e))}},tokenRegex={D:"",F:"",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},formats={Z:function(o){return o.toISOString()},D:function(o,e,n){return e.weekdays.shorthand[formats.w(o,e,n)]},F:function(o,e,n){return monthToStr(formats.n(o,e,n)-1,!1,e)},G:function(o,e,n){return pad(formats.h(o,e,n))},H:function(o){return pad(o.getHours())},J:function(o,e){return e.ordinal!==void 0?o.getDate()+e.ordinal(o.getDate()):o.getDate()},K:function(o,e){return e.amPM[int(o.getHours()>11)]},M:function(o,e){return monthToStr(o.getMonth(),!0,e)},S:function(o){return pad(o.getSeconds())},U:function(o){return o.getTime()/1e3},W:function(o,e,n){return n.getWeek(o)},Y:function(o){return pad(o.getFullYear(),4)},d:function(o){return pad(o.getDate())},h:function(o){return o.getHours()%12?o.getHours()%12:12},i:function(o){return pad(o.getMinutes())},j:function(o){return o.getDate()},l:function(o,e){return e.weekdays.longhand[o.getDay()]},m:function(o){return pad(o.getMonth()+1)},n:function(o){return o.getMonth()+1},s:function(o){return o.getSeconds()},u:function(o){return o.getTime()},w:function(o){return o.getDay()},y:function(o){return String(o.getFullYear()).substring(2)}},createDateFormatter=function(o){var e=o.config,n=e===void 0?defaults$2:e,r=o.l10n,c=r===void 0?english:r,u=o.isMobile,h=u===void 0?!1:u;return function(p,b,y){var k=y||c;return n.formatDate!==void 0&&!h?n.formatDate(p,b,k):b.split("").map(function(A,R,N){return formats[A]&&N[R-1]!=="\\"?formats[A](p,k,n):A!=="\\"?A:""}).join("")}},createDateParser=function(o){var e=o.config,n=e===void 0?defaults$2:e,r=o.l10n,c=r===void 0?english:r;return function(u,h,p,b){if(!(u!==0&&!u)){var y=b||c,k,A=u;if(u instanceof Date)k=new Date(u.getTime());else if(typeof u!="string"&&u.toFixed!==void 0)k=new Date(u);else if(typeof u=="string"){var R=h||(n||defaults$2).dateFormat,N=String(u).trim();if(N==="today")k=new Date,p=!0;else if(n&&n.parseDate)k=n.parseDate(u,R);else if(/Z$/.test(N)||/GMT$/.test(N))k=new Date(u);else{for(var F=void 0,V=[],W=0,J=0,te="";WMath.min(e,n)&&o=0?new Date:new Date(n.config.minDate.getTime()),wt=getDefaultHours(n.config);Ye.setHours(wt.hours,wt.minutes,wt.seconds,Ye.getMilliseconds()),n.selectedDates=[Ye],n.latestSelectedDateObj=Ye}Qe!==void 0&&Qe.type!=="blur"&&Xr(Qe);var Ft=n._input.value;A(),nn(),n._input.value!==Ft&&n._debouncedChange()}function y(Qe,Ye){return Qe%12+12*int(Ye===n.l10n.amPM[1])}function k(Qe){switch(Qe%24){case 0:case 12:return 12;default:return Qe%12}}function A(){if(!(n.hourElement===void 0||n.minuteElement===void 0)){var Qe=(parseInt(n.hourElement.value.slice(-2),10)||0)%24,Ye=(parseInt(n.minuteElement.value,10)||0)%60,wt=n.secondElement!==void 0?(parseInt(n.secondElement.value,10)||0)%60:0;n.amPM!==void 0&&(Qe=y(Qe,n.amPM.textContent));var Ft=n.config.minTime!==void 0||n.config.minDate&&n.minDateHasTime&&n.latestSelectedDateObj&&compareDates(n.latestSelectedDateObj,n.config.minDate,!0)===0,Rn=n.config.maxTime!==void 0||n.config.maxDate&&n.maxDateHasTime&&n.latestSelectedDateObj&&compareDates(n.latestSelectedDateObj,n.config.maxDate,!0)===0;if(n.config.maxTime!==void 0&&n.config.minTime!==void 0&&n.config.minTime>n.config.maxTime){var Xn=calculateSecondsSinceMidnight(n.config.minTime.getHours(),n.config.minTime.getMinutes(),n.config.minTime.getSeconds()),ro=calculateSecondsSinceMidnight(n.config.maxTime.getHours(),n.config.maxTime.getMinutes(),n.config.maxTime.getSeconds()),an=calculateSecondsSinceMidnight(Qe,Ye,wt);if(an>ro&&an=12)]),n.secondElement!==void 0&&(n.secondElement.value=pad(wt)))}function F(Qe){var Ye=getEventTarget(Qe),wt=parseInt(Ye.value)+(Qe.delta||0);(wt/1e3>1||Qe.key==="Enter"&&!/[^\d]/.test(wt.toString()))&&mt(wt)}function V(Qe,Ye,wt,Ft){if(Ye instanceof Array)return Ye.forEach(function(Rn){return V(Qe,Rn,wt,Ft)});if(Qe instanceof Array)return Qe.forEach(function(Rn){return V(Rn,Ye,wt,Ft)});Qe.addEventListener(Ye,wt,Ft),n._handlers.push({remove:function(){return Qe.removeEventListener(Ye,wt,Ft)}})}function W(){wo("onChange")}function J(){if(n.config.wrap&&["open","close","toggle","clear"].forEach(function(wt){Array.prototype.forEach.call(n.element.querySelectorAll("[data-"+wt+"]"),function(Ft){return V(Ft,"click",n[wt])})}),n.isMobile){dr();return}var Qe=debounce(cs,50);if(n._debouncedChange=debounce(W,DEBOUNCED_CHANGE_MS),n.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&V(n.daysContainer,"mouseover",function(wt){n.config.mode==="range"&&po(getEventTarget(wt))}),V(n._input,"keydown",Yn),n.calendarContainer!==void 0&&V(n.calendarContainer,"keydown",Yn),!n.config.inline&&!n.config.static&&V(window,"resize",Qe),window.ontouchstart!==void 0?V(window.document,"touchstart",Fe):V(window.document,"mousedown",Fe),V(window.document,"focus",Fe,{capture:!0}),n.config.clickOpens===!0&&(V(n._input,"focus",n.open),V(n._input,"click",n.open)),n.daysContainer!==void 0&&(V(n.monthNav,"click",ns),V(n.monthNav,["keyup","increment"],F),V(n.daysContainer,"click",Gn)),n.timeContainer!==void 0&&n.minuteElement!==void 0&&n.hourElement!==void 0){var Ye=function(wt){return getEventTarget(wt).select()};V(n.timeContainer,["increment"],b),V(n.timeContainer,"blur",b,{capture:!0}),V(n.timeContainer,"click",j),V([n.hourElement,n.minuteElement],["focus","click"],Ye),n.secondElement!==void 0&&V(n.secondElement,"focus",function(){return n.secondElement&&n.secondElement.select()}),n.amPM!==void 0&&V(n.amPM,"click",function(wt){b(wt)})}n.config.allowInput&&V(n._input,"blur",jn)}function te(Qe,Ye){var wt=Qe!==void 0?n.parseDate(Qe):n.latestSelectedDateObj||(n.config.minDate&&n.config.minDate>n.now?n.config.minDate:n.config.maxDate&&n.config.maxDate1),n.calendarContainer.appendChild(Qe);var Rn=n.config.appendTo!==void 0&&n.config.appendTo.nodeType!==void 0;if((n.config.inline||n.config.static)&&(n.calendarContainer.classList.add(n.config.inline?"inline":"static"),n.config.inline&&(!Rn&&n.element.parentNode?n.element.parentNode.insertBefore(n.calendarContainer,n._input.nextSibling):n.config.appendTo!==void 0&&n.config.appendTo.appendChild(n.calendarContainer)),n.config.static)){var Xn=createElement("div","flatpickr-wrapper");n.element.parentNode&&n.element.parentNode.insertBefore(Xn,n.element),Xn.appendChild(n.element),n.altInput&&Xn.appendChild(n.altInput),Xn.appendChild(n.calendarContainer)}!n.config.static&&!n.config.inline&&(n.config.appendTo!==void 0?n.config.appendTo:window.document.body).appendChild(n.calendarContainer)}function _e(Qe,Ye,wt,Ft){var Rn=de(Ye,!0),Xn=createElement("span",Qe,Ye.getDate().toString());return Xn.dateObj=Ye,Xn.$i=Ft,Xn.setAttribute("aria-label",n.formatDate(Ye,n.config.ariaDateFormat)),Qe.indexOf("hidden")===-1&&compareDates(Ye,n.now)===0&&(n.todayDateElem=Xn,Xn.classList.add("today"),Xn.setAttribute("aria-current","date")),Rn?(Xn.tabIndex=-1,ws(Ye)&&(Xn.classList.add("selected"),n.selectedDateElem=Xn,n.config.mode==="range"&&(toggleClass(Xn,"startRange",n.selectedDates[0]&&compareDates(Ye,n.selectedDates[0],!0)===0),toggleClass(Xn,"endRange",n.selectedDates[1]&&compareDates(Ye,n.selectedDates[1],!0)===0),Qe==="nextMonthDay"&&Xn.classList.add("inRange")))):Xn.classList.add("flatpickr-disabled"),n.config.mode==="range"&&Pi(Ye)&&!ws(Ye)&&Xn.classList.add("inRange"),n.weekNumbers&&n.config.showMonths===1&&Qe!=="prevMonthDay"&&Ft%7===6&&n.weekNumbers.insertAdjacentHTML("beforeend",""+n.config.getWeek(Ye)+""),wo("onDayCreate",Xn),Xn}function ne(Qe){Qe.focus(),n.config.mode==="range"&&po(Qe)}function Se(Qe){for(var Ye=Qe>0?0:n.config.showMonths-1,wt=Qe>0?n.config.showMonths:-1,Ft=Ye;Ft!=wt;Ft+=Qe)for(var Rn=n.daysContainer.children[Ft],Xn=Qe>0?0:Rn.children.length-1,ro=Qe>0?Rn.children.length:-1,an=Xn;an!=ro;an+=Qe){var Do=Rn.children[an];if(Do.className.indexOf("hidden")===-1&&de(Do.dateObj))return Do}}function De(Qe,Ye){for(var wt=Qe.className.indexOf("Month")===-1?Qe.dateObj.getMonth():n.currentMonth,Ft=Ye>0?n.config.showMonths:-1,Rn=Ye>0?1:-1,Xn=wt-n.currentMonth;Xn!=Ft;Xn+=Rn)for(var ro=n.daysContainer.children[Xn],an=wt-n.currentMonth===Xn?Qe.$i+Ye:Ye<0?ro.children.length-1:0,Do=ro.children.length,io=an;io>=0&&io0?Do:-1);io+=Rn){var Wo=ro.children[io];if(Wo.className.indexOf("hidden")===-1&&de(Wo.dateObj)&&Math.abs(Qe.$i-io)>=Math.abs(Ye))return ne(Wo)}n.changeMonth(Rn),Be(Se(Rn),0)}function Be(Qe,Ye){var wt=u(),Ft=Eo(wt||document.body),Rn=Qe!==void 0?Qe:Ft?wt:n.selectedDateElem!==void 0&&Eo(n.selectedDateElem)?n.selectedDateElem:n.todayDateElem!==void 0&&Eo(n.todayDateElem)?n.todayDateElem:Se(Ye>0?1:-1);Rn===void 0?n._input.focus():Ft?De(Rn,Ye):ne(Rn)}function Te(Qe,Ye){for(var wt=(new Date(Qe,Ye,1).getDay()-n.l10n.firstDayOfWeek+7)%7,Ft=n.utils.getDaysInMonth((Ye-1+12)%12,Qe),Rn=n.utils.getDaysInMonth(Ye,Qe),Xn=window.document.createDocumentFragment(),ro=n.config.showMonths>1,an=ro?"prevMonthDay hidden":"prevMonthDay",Do=ro?"nextMonthDay hidden":"nextMonthDay",io=Ft+1-wt,Wo=0;io<=Ft;io++,Wo++)Xn.appendChild(_e("flatpickr-day "+an,new Date(Qe,Ye-1,io),io,Wo));for(io=1;io<=Rn;io++,Wo++)Xn.appendChild(_e("flatpickr-day",new Date(Qe,Ye,io),io,Wo));for(var sr=Rn+1;sr<=42-wt&&(n.config.showMonths===1||Wo%7!==0);sr++,Wo++)Xn.appendChild(_e("flatpickr-day "+Do,new Date(Qe,Ye+1,sr%Rn),sr,Wo));var mr=createElement("div","dayContainer");return mr.appendChild(Xn),mr}function Oe(){if(n.daysContainer!==void 0){clearNode(n.daysContainer),n.weekNumbers&&clearNode(n.weekNumbers);for(var Qe=document.createDocumentFragment(),Ye=0;Ye1||n.config.monthSelectorType!=="dropdown")){var Qe=function(Ft){return n.config.minDate!==void 0&&n.currentYear===n.config.minDate.getFullYear()&&Ftn.config.maxDate.getMonth())};n.monthsDropdownContainer.tabIndex=-1,n.monthsDropdownContainer.innerHTML="";for(var Ye=0;Ye<12;Ye++)if(Qe(Ye)){var wt=createElement("option","flatpickr-monthDropdown-month");wt.value=new Date(n.currentYear,Ye).getMonth().toString(),wt.textContent=monthToStr(Ye,n.config.shorthandCurrentMonth,n.l10n),wt.tabIndex=-1,n.currentMonth===Ye&&(wt.selected=!0),n.monthsDropdownContainer.appendChild(wt)}}}function Tt(){var Qe=createElement("div","flatpickr-month"),Ye=window.document.createDocumentFragment(),wt;n.config.showMonths>1||n.config.monthSelectorType==="static"?wt=createElement("span","cur-month"):(n.monthsDropdownContainer=createElement("select","flatpickr-monthDropdown-months"),n.monthsDropdownContainer.setAttribute("aria-label",n.l10n.monthAriaLabel),V(n.monthsDropdownContainer,"change",function(ro){var an=getEventTarget(ro),Do=parseInt(an.value,10);n.changeMonth(Do-n.currentMonth),wo("onMonthChange")}),yt(),wt=n.monthsDropdownContainer);var Ft=createNumberInput("cur-year",{tabindex:"-1"}),Rn=Ft.getElementsByTagName("input")[0];Rn.setAttribute("aria-label",n.l10n.yearAriaLabel),n.config.minDate&&Rn.setAttribute("min",n.config.minDate.getFullYear().toString()),n.config.maxDate&&(Rn.setAttribute("max",n.config.maxDate.getFullYear().toString()),Rn.disabled=!!n.config.minDate&&n.config.minDate.getFullYear()===n.config.maxDate.getFullYear());var Xn=createElement("div","flatpickr-current-month");return Xn.appendChild(wt),Xn.appendChild(Ft),Ye.appendChild(Xn),Qe.appendChild(Ye),{container:Qe,yearElement:Rn,monthElement:wt}}function St(){clearNode(n.monthNav),n.monthNav.appendChild(n.prevMonthNav),n.config.showMonths&&(n.yearElements=[],n.monthElements=[]);for(var Qe=n.config.showMonths;Qe--;){var Ye=Tt();n.yearElements.push(Ye.yearElement),n.monthElements.push(Ye.monthElement),n.monthNav.appendChild(Ye.container)}n.monthNav.appendChild(n.nextMonthNav)}function q(){return n.monthNav=createElement("div","flatpickr-months"),n.yearElements=[],n.monthElements=[],n.prevMonthNav=createElement("span","flatpickr-prev-month"),n.prevMonthNav.innerHTML=n.config.prevArrow,n.nextMonthNav=createElement("span","flatpickr-next-month"),n.nextMonthNav.innerHTML=n.config.nextArrow,St(),Object.defineProperty(n,"_hidePrevMonthArrow",{get:function(){return n.__hidePrevMonthArrow},set:function(Qe){n.__hidePrevMonthArrow!==Qe&&(toggleClass(n.prevMonthNav,"flatpickr-disabled",Qe),n.__hidePrevMonthArrow=Qe)}}),Object.defineProperty(n,"_hideNextMonthArrow",{get:function(){return n.__hideNextMonthArrow},set:function(Qe){n.__hideNextMonthArrow!==Qe&&(toggleClass(n.nextMonthNav,"flatpickr-disabled",Qe),n.__hideNextMonthArrow=Qe)}}),n.currentYearElement=n.yearElements[0],ts(),n.monthNav}function Le(){n.calendarContainer.classList.add("hasTime"),n.config.noCalendar&&n.calendarContainer.classList.add("noCalendar");var Qe=getDefaultHours(n.config);n.timeContainer=createElement("div","flatpickr-time"),n.timeContainer.tabIndex=-1;var Ye=createElement("span","flatpickr-time-separator",":"),wt=createNumberInput("flatpickr-hour",{"aria-label":n.l10n.hourAriaLabel});n.hourElement=wt.getElementsByTagName("input")[0];var Ft=createNumberInput("flatpickr-minute",{"aria-label":n.l10n.minuteAriaLabel});if(n.minuteElement=Ft.getElementsByTagName("input")[0],n.hourElement.tabIndex=n.minuteElement.tabIndex=-1,n.hourElement.value=pad(n.latestSelectedDateObj?n.latestSelectedDateObj.getHours():n.config.time_24hr?Qe.hours:k(Qe.hours)),n.minuteElement.value=pad(n.latestSelectedDateObj?n.latestSelectedDateObj.getMinutes():Qe.minutes),n.hourElement.setAttribute("step",n.config.hourIncrement.toString()),n.minuteElement.setAttribute("step",n.config.minuteIncrement.toString()),n.hourElement.setAttribute("min",n.config.time_24hr?"0":"1"),n.hourElement.setAttribute("max",n.config.time_24hr?"23":"12"),n.hourElement.setAttribute("maxlength","2"),n.minuteElement.setAttribute("min","0"),n.minuteElement.setAttribute("max","59"),n.minuteElement.setAttribute("maxlength","2"),n.timeContainer.appendChild(wt),n.timeContainer.appendChild(Ye),n.timeContainer.appendChild(Ft),n.config.time_24hr&&n.timeContainer.classList.add("time24hr"),n.config.enableSeconds){n.timeContainer.classList.add("hasSeconds");var Rn=createNumberInput("flatpickr-second");n.secondElement=Rn.getElementsByTagName("input")[0],n.secondElement.value=pad(n.latestSelectedDateObj?n.latestSelectedDateObj.getSeconds():Qe.seconds),n.secondElement.setAttribute("step",n.minuteElement.getAttribute("step")),n.secondElement.setAttribute("min","0"),n.secondElement.setAttribute("max","59"),n.secondElement.setAttribute("maxlength","2"),n.timeContainer.appendChild(createElement("span","flatpickr-time-separator",":")),n.timeContainer.appendChild(Rn)}return n.config.time_24hr||(n.amPM=createElement("span","flatpickr-am-pm",n.l10n.amPM[int((n.latestSelectedDateObj?n.hourElement.value:n.config.defaultHour)>11)]),n.amPM.title=n.l10n.toggleTitle,n.amPM.tabIndex=-1,n.timeContainer.appendChild(n.amPM)),n.timeContainer}function je(){n.weekdayContainer?clearNode(n.weekdayContainer):n.weekdayContainer=createElement("div","flatpickr-weekdays");for(var Qe=n.config.showMonths;Qe--;){var Ye=createElement("div","flatpickr-weekdaycontainer");n.weekdayContainer.appendChild(Ye)}return mn(),n.weekdayContainer}function mn(){if(n.weekdayContainer){var Qe=n.l10n.firstDayOfWeek,Ye=__spreadArrays(n.l10n.weekdays.shorthand);Qe>0&&Qe - `+Ye.join("")+` - - `}}function Rt(){n.calendarContainer.classList.add("hasWeeks");var Qe=createElement("div","flatpickr-weekwrapper");Qe.appendChild(createElement("span","flatpickr-weekday",n.l10n.weekAbbreviation));var Ye=createElement("div","flatpickr-weeks");return Qe.appendChild(Ye),{weekWrapper:Qe,weekNumbers:Ye}}function Ue(Qe,Ye){Ye===void 0&&(Ye=!0);var wt=Ye?Qe:Qe-n.currentMonth;wt<0&&n._hidePrevMonthArrow===!0||wt>0&&n._hideNextMonthArrow===!0||(n.currentMonth+=wt,(n.currentMonth<0||n.currentMonth>11)&&(n.currentYear+=n.currentMonth>11?1:-1,n.currentMonth=(n.currentMonth+12)%12,wo("onYearChange"),yt()),Oe(),wo("onMonthChange"),ts())}function ct(Qe,Ye){if(Qe===void 0&&(Qe=!0),Ye===void 0&&(Ye=!0),n.input.value="",n.altInput!==void 0&&(n.altInput.value=""),n.mobileInput!==void 0&&(n.mobileInput.value=""),n.selectedDates=[],n.latestSelectedDateObj=void 0,Ye===!0&&(n.currentYear=n._initialDate.getFullYear(),n.currentMonth=n._initialDate.getMonth()),n.config.enableTime===!0){var wt=getDefaultHours(n.config),Ft=wt.hours,Rn=wt.minutes,Xn=wt.seconds;N(Ft,Rn,Xn)}n.redraw(),Qe&&wo("onChange")}function dn(){n.isOpen=!1,n.isMobile||(n.calendarContainer!==void 0&&n.calendarContainer.classList.remove("open"),n._input!==void 0&&n._input.classList.remove("active")),wo("onClose")}function Zt(){n.config!==void 0&&wo("onDestroy");for(var Qe=n._handlers.length;Qe--;)n._handlers[Qe].remove();if(n._handlers=[],n.mobileInput)n.mobileInput.parentNode&&n.mobileInput.parentNode.removeChild(n.mobileInput),n.mobileInput=void 0;else if(n.calendarContainer&&n.calendarContainer.parentNode)if(n.config.static&&n.calendarContainer.parentNode){var Ye=n.calendarContainer.parentNode;if(Ye.lastChild&&Ye.removeChild(Ye.lastChild),Ye.parentNode){for(;Ye.firstChild;)Ye.parentNode.insertBefore(Ye.firstChild,Ye);Ye.parentNode.removeChild(Ye)}}else n.calendarContainer.parentNode.removeChild(n.calendarContainer);n.altInput&&(n.input.type="text",n.altInput.parentNode&&n.altInput.parentNode.removeChild(n.altInput),delete n.altInput),n.input&&(n.input.type=n.input._type,n.input.classList.remove("flatpickr-input"),n.input.removeAttribute("readonly")),["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","monthsDropdownContainer","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(wt){try{delete n[wt]}catch{}})}function rn(Qe){return n.calendarContainer.contains(Qe)}function Fe(Qe){if(n.isOpen&&!n.config.inline){var Ye=getEventTarget(Qe),wt=rn(Ye),Ft=Ye===n.input||Ye===n.altInput||n.element.contains(Ye)||Qe.path&&Qe.path.indexOf&&(~Qe.path.indexOf(n.input)||~Qe.path.indexOf(n.altInput)),Rn=!Ft&&!wt&&!rn(Qe.relatedTarget),Xn=!n.config.ignoredFocusElements.some(function(ro){return ro.contains(Ye)});Rn&&Xn&&(n.config.allowInput&&n.setDate(n._input.value,!1,n.config.altInput?n.config.altFormat:n.config.dateFormat),n.timeContainer!==void 0&&n.minuteElement!==void 0&&n.hourElement!==void 0&&n.input.value!==""&&n.input.value!==void 0&&b(),n.close(),n.config&&n.config.mode==="range"&&n.selectedDates.length===1&&n.clear(!1))}}function mt(Qe){if(!(!Qe||n.config.minDate&&Qen.config.maxDate.getFullYear())){var Ye=Qe,wt=n.currentYear!==Ye;n.currentYear=Ye||n.currentYear,n.config.maxDate&&n.currentYear===n.config.maxDate.getFullYear()?n.currentMonth=Math.min(n.config.maxDate.getMonth(),n.currentMonth):n.config.minDate&&n.currentYear===n.config.minDate.getFullYear()&&(n.currentMonth=Math.max(n.config.minDate.getMonth(),n.currentMonth)),wt&&(n.redraw(),wo("onYearChange"),yt())}}function de(Qe,Ye){var wt;Ye===void 0&&(Ye=!0);var Ft=n.parseDate(Qe,void 0,Ye);if(n.config.minDate&&Ft&&compareDates(Ft,n.config.minDate,Ye!==void 0?Ye:!n.minDateHasTime)<0||n.config.maxDate&&Ft&&compareDates(Ft,n.config.maxDate,Ye!==void 0?Ye:!n.maxDateHasTime)>0)return!1;if(!n.config.enable&&n.config.disable.length===0)return!0;if(Ft===void 0)return!1;for(var Rn=!!n.config.enable,Xn=(wt=n.config.enable)!==null&&wt!==void 0?wt:n.config.disable,ro=0,an=void 0;ro=an.from.getTime()&&Ft.getTime()<=an.to.getTime())return Rn}return!Rn}function Eo(Qe){return n.daysContainer!==void 0?Qe.className.indexOf("hidden")===-1&&Qe.className.indexOf("flatpickr-disabled")===-1&&n.daysContainer.contains(Qe):!1}function jn(Qe){var Ye=Qe.target===n._input,wt=n._input.value.trimEnd()!==Qi();Ye&&wt&&!(Qe.relatedTarget&&rn(Qe.relatedTarget))&&n.setDate(n._input.value,!0,Qe.target===n.altInput?n.config.altFormat:n.config.dateFormat)}function Yn(Qe){var Ye=getEventTarget(Qe),wt=n.config.wrap?o.contains(Ye):Ye===n._input,Ft=n.config.allowInput,Rn=n.isOpen&&(!Ft||!wt),Xn=n.config.inline&&wt&&!Ft;if(Qe.keyCode===13&&wt){if(Ft)return n.setDate(n._input.value,!0,Ye===n.altInput?n.config.altFormat:n.config.dateFormat),n.close(),Ye.blur();n.open()}else if(rn(Ye)||Rn||Xn){var ro=!!n.timeContainer&&n.timeContainer.contains(Ye);switch(Qe.keyCode){case 13:ro?(Qe.preventDefault(),b(),is()):Gn(Qe);break;case 27:Qe.preventDefault(),is();break;case 8:case 46:wt&&!n.config.allowInput&&(Qe.preventDefault(),n.clear());break;case 37:case 39:if(!ro&&!wt){Qe.preventDefault();var an=u();if(n.daysContainer!==void 0&&(Ft===!1||an&&Eo(an))){var Do=Qe.keyCode===39?1:-1;Qe.ctrlKey?(Qe.stopPropagation(),Ue(Do),Be(Se(1),0)):Be(void 0,Do)}}else n.hourElement&&n.hourElement.focus();break;case 38:case 40:Qe.preventDefault();var io=Qe.keyCode===40?1:-1;n.daysContainer&&Ye.$i!==void 0||Ye===n.input||Ye===n.altInput?Qe.ctrlKey?(Qe.stopPropagation(),mt(n.currentYear-io),Be(Se(1),0)):ro||Be(void 0,io*7):Ye===n.currentYearElement?mt(n.currentYear-io):n.config.enableTime&&(!ro&&n.hourElement&&n.hourElement.focus(),b(Qe),n._debouncedChange());break;case 9:if(ro){var Wo=[n.hourElement,n.minuteElement,n.secondElement,n.amPM].concat(n.pluginElements).filter(function(Ks){return Ks}),sr=Wo.indexOf(Ye);if(sr!==-1){var mr=Wo[sr+(Qe.shiftKey?-1:1)];Qe.preventDefault(),(mr||n._input).focus()}}else!n.config.noCalendar&&n.daysContainer&&n.daysContainer.contains(Ye)&&Qe.shiftKey&&(Qe.preventDefault(),n._input.focus());break}}if(n.amPM!==void 0&&Ye===n.amPM)switch(Qe.key){case n.l10n.amPM[0].charAt(0):case n.l10n.amPM[0].charAt(0).toLowerCase():n.amPM.textContent=n.l10n.amPM[0],A(),nn();break;case n.l10n.amPM[1].charAt(0):case n.l10n.amPM[1].charAt(0).toLowerCase():n.amPM.textContent=n.l10n.amPM[1],A(),nn();break}(wt||rn(Ye))&&wo("onKeyDown",Qe)}function po(Qe,Ye){if(Ye===void 0&&(Ye="flatpickr-day"),!(n.selectedDates.length!==1||Qe&&(!Qe.classList.contains(Ye)||Qe.classList.contains("flatpickr-disabled")))){for(var wt=Qe?Qe.dateObj.getTime():n.days.firstElementChild.dateObj.getTime(),Ft=n.parseDate(n.selectedDates[0],void 0,!0).getTime(),Rn=Math.min(wt,n.selectedDates[0].getTime()),Xn=Math.max(wt,n.selectedDates[0].getTime()),ro=!1,an=0,Do=0,io=Rn;ioRn&&ioan)?an=io:io>Ft&&(!Do||io ."+Ye));Wo.forEach(function(sr){var mr=sr.dateObj,Ks=mr.getTime(),pr=an>0&&Ks0&&Ks>Do;if(pr){sr.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(Di){sr.classList.remove(Di)});return}else if(ro&&!pr)return;["startRange","inRange","endRange","notAllowed"].forEach(function(Di){sr.classList.remove(Di)}),Qe!==void 0&&(Qe.classList.add(wt<=n.selectedDates[0].getTime()?"startRange":"endRange"),Ftwt&&Ks===Ft&&sr.classList.add("endRange"),Ks>=an&&(Do===0||Ks<=Do)&&isBetween(Ks,Ft,wt)&&sr.classList.add("inRange"))})}}function cs(){n.isOpen&&!n.config.static&&!n.config.inline&&pn()}function gt(Qe,Ye){if(Ye===void 0&&(Ye=n._positionElement),n.isMobile===!0){if(Qe){Qe.preventDefault();var wt=getEventTarget(Qe);wt&&wt.blur()}n.mobileInput!==void 0&&(n.mobileInput.focus(),n.mobileInput.click()),wo("onOpen");return}else if(n._input.disabled||n.config.inline)return;var Ft=n.isOpen;n.isOpen=!0,Ft||(n.calendarContainer.classList.add("open"),n._input.classList.add("active"),wo("onOpen"),pn(Ye)),n.config.enableTime===!0&&n.config.noCalendar===!0&&n.config.allowInput===!1&&(Qe===void 0||!n.timeContainer.contains(Qe.relatedTarget))&&setTimeout(function(){return n.hourElement.select()},50)}function Ut(Qe){return function(Ye){var wt=n.config["_"+Qe+"Date"]=n.parseDate(Ye,n.config.dateFormat),Ft=n.config["_"+(Qe==="min"?"max":"min")+"Date"];wt!==void 0&&(n[Qe==="min"?"minDateHasTime":"maxDateHasTime"]=wt.getHours()>0||wt.getMinutes()>0||wt.getSeconds()>0),n.selectedDates&&(n.selectedDates=n.selectedDates.filter(function(Rn){return de(Rn)}),!n.selectedDates.length&&Qe==="min"&&R(wt),nn()),n.daysContainer&&(Dn(),wt!==void 0?n.currentYearElement[Qe]=wt.getFullYear().toString():n.currentYearElement.removeAttribute(Qe),n.currentYearElement.disabled=!!Ft&&wt!==void 0&&Ft.getFullYear()===wt.getFullYear())}}function pt(){var Qe=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],Ye=__assign(__assign({},JSON.parse(JSON.stringify(o.dataset||{}))),e),wt={};n.config.parseDate=Ye.parseDate,n.config.formatDate=Ye.formatDate,Object.defineProperty(n.config,"enable",{get:function(){return n.config._enable},set:function(Wo){n.config._enable=Ts(Wo)}}),Object.defineProperty(n.config,"disable",{get:function(){return n.config._disable},set:function(Wo){n.config._disable=Ts(Wo)}});var Ft=Ye.mode==="time";if(!Ye.dateFormat&&(Ye.enableTime||Ft)){var Rn=flatpickr.defaultConfig.dateFormat||defaults$2.dateFormat;wt.dateFormat=Ye.noCalendar||Ft?"H:i"+(Ye.enableSeconds?":S":""):Rn+" H:i"+(Ye.enableSeconds?":S":"")}if(Ye.altInput&&(Ye.enableTime||Ft)&&!Ye.altFormat){var Xn=flatpickr.defaultConfig.altFormat||defaults$2.altFormat;wt.altFormat=Ye.noCalendar||Ft?"h:i"+(Ye.enableSeconds?":S K":" K"):Xn+(" h:i"+(Ye.enableSeconds?":S":"")+" K")}Object.defineProperty(n.config,"minDate",{get:function(){return n.config._minDate},set:Ut("min")}),Object.defineProperty(n.config,"maxDate",{get:function(){return n.config._maxDate},set:Ut("max")});var ro=function(Wo){return function(sr){n.config[Wo==="min"?"_minTime":"_maxTime"]=n.parseDate(sr,"H:i:S")}};Object.defineProperty(n.config,"minTime",{get:function(){return n.config._minTime},set:ro("min")}),Object.defineProperty(n.config,"maxTime",{get:function(){return n.config._maxTime},set:ro("max")}),Ye.mode==="time"&&(n.config.noCalendar=!0,n.config.enableTime=!0),Object.assign(n.config,wt,Ye);for(var an=0;an-1?n.config[io]=arrayify(Do[io]).map(h).concat(n.config[io]):typeof Ye[io]>"u"&&(n.config[io]=Do[io])}Ye.altInputClass||(n.config.altInputClass=Ne().className+" "+n.config.altInputClass),wo("onParseConfig")}function Ne(){return n.config.wrap?o.querySelector("[data-input]"):o}function Nt(){typeof n.config.locale!="object"&&typeof flatpickr.l10ns[n.config.locale]>"u"&&n.config.errorHandler(new Error("flatpickr: invalid locale "+n.config.locale)),n.l10n=__assign(__assign({},flatpickr.l10ns.default),typeof n.config.locale=="object"?n.config.locale:n.config.locale!=="default"?flatpickr.l10ns[n.config.locale]:void 0),tokenRegex.D="("+n.l10n.weekdays.shorthand.join("|")+")",tokenRegex.l="("+n.l10n.weekdays.longhand.join("|")+")",tokenRegex.M="("+n.l10n.months.shorthand.join("|")+")",tokenRegex.F="("+n.l10n.months.longhand.join("|")+")",tokenRegex.K="("+n.l10n.amPM[0]+"|"+n.l10n.amPM[1]+"|"+n.l10n.amPM[0].toLowerCase()+"|"+n.l10n.amPM[1].toLowerCase()+")";var Qe=__assign(__assign({},e),JSON.parse(JSON.stringify(o.dataset||{})));Qe.time_24hr===void 0&&flatpickr.defaultConfig.time_24hr===void 0&&(n.config.time_24hr=n.l10n.time_24hr),n.formatDate=createDateFormatter(n),n.parseDate=createDateParser({config:n.config,l10n:n.l10n})}function pn(Qe){if(typeof n.config.position=="function")return void n.config.position(n,Qe);if(n.calendarContainer!==void 0){wo("onPreCalendarPosition");var Ye=Qe||n._positionElement,wt=Array.prototype.reduce.call(n.calendarContainer.children,function(qo,fr){return qo+fr.offsetHeight},0),Ft=n.calendarContainer.offsetWidth,Rn=n.config.position.split(" "),Xn=Rn[0],ro=Rn.length>1?Rn[1]:null,an=Ye.getBoundingClientRect(),Do=window.innerHeight-an.bottom,io=Xn==="above"||Xn!=="below"&&Dowt,Wo=window.pageYOffset+an.top+(io?-wt-2:Ye.offsetHeight+2);if(toggleClass(n.calendarContainer,"arrowTop",!io),toggleClass(n.calendarContainer,"arrowBottom",io),!n.config.inline){var sr=window.pageXOffset+an.left,mr=!1,Ks=!1;ro==="center"?(sr-=(Ft-an.width)/2,mr=!0):ro==="right"&&(sr-=Ft-an.width,Ks=!0),toggleClass(n.calendarContainer,"arrowLeft",!mr&&!Ks),toggleClass(n.calendarContainer,"arrowCenter",mr),toggleClass(n.calendarContainer,"arrowRight",Ks);var pr=window.document.body.offsetWidth-(window.pageXOffset+an.right),Di=sr+Ft>window.document.body.offsetWidth,cc=pr+Ft>window.document.body.offsetWidth;if(toggleClass(n.calendarContainer,"rightMost",Di),!n.config.static)if(n.calendarContainer.style.top=Wo+"px",!Di)n.calendarContainer.style.left=sr+"px",n.calendarContainer.style.right="auto";else if(!cc)n.calendarContainer.style.left="auto",n.calendarContainer.style.right=pr+"px";else{var mi=xt();if(mi===void 0)return;var Ge=window.document.body.offsetWidth,Xe=Math.max(0,Ge/2-Ft/2),$t=".flatpickr-calendar.centerMost:before",Qt=".flatpickr-calendar.centerMost:after",eo=mi.cssRules.length,co="{left:"+an.left+"px;right:auto;}";toggleClass(n.calendarContainer,"rightMost",!1),toggleClass(n.calendarContainer,"centerMost",!0),mi.insertRule($t+","+Qt+co,eo),n.calendarContainer.style.left=Xe+"px",n.calendarContainer.style.right="auto"}}}}function xt(){for(var Qe=null,Ye=0;Yen.currentMonth+n.config.showMonths-1)&&n.config.mode!=="range";if(n.selectedDateElem=Ft,n.config.mode==="single")n.selectedDates=[Rn];else if(n.config.mode==="multiple"){var ro=ws(Rn);ro?n.selectedDates.splice(parseInt(ro),1):n.selectedDates.push(Rn)}else n.config.mode==="range"&&(n.selectedDates.length===2&&n.clear(!1,!1),n.latestSelectedDateObj=Rn,n.selectedDates.push(Rn),compareDates(Rn,n.selectedDates[0],!0)!==0&&n.selectedDates.sort(function(Wo,sr){return Wo.getTime()-sr.getTime()}));if(A(),Xn){var an=n.currentYear!==Rn.getFullYear();n.currentYear=Rn.getFullYear(),n.currentMonth=Rn.getMonth(),an&&(wo("onYearChange"),yt()),wo("onMonthChange")}if(ts(),Oe(),nn(),!Xn&&n.config.mode!=="range"&&n.config.showMonths===1?ne(Ft):n.selectedDateElem!==void 0&&n.hourElement===void 0&&n.selectedDateElem&&n.selectedDateElem.focus(),n.hourElement!==void 0&&n.hourElement!==void 0&&n.hourElement.focus(),n.config.closeOnSelect){var Do=n.config.mode==="single"&&!n.config.enableTime,io=n.config.mode==="range"&&n.selectedDates.length===2&&!n.config.enableTime;(Do||io)&&is()}W()}}var as={locale:[Nt,mn],showMonths:[St,p,je],minDate:[te],maxDate:[te],positionElement:[ms],clickOpens:[function(){n.config.clickOpens===!0?(V(n._input,"focus",n.open),V(n._input,"click",n.open)):(n._input.removeEventListener("focus",n.open),n._input.removeEventListener("click",n.open))}]};function vr(Qe,Ye){if(Qe!==null&&typeof Qe=="object"){Object.assign(n.config,Qe);for(var wt in Qe)as[wt]!==void 0&&as[wt].forEach(function(Ft){return Ft()})}else n.config[Qe]=Ye,as[Qe]!==void 0?as[Qe].forEach(function(Ft){return Ft()}):HOOKS.indexOf(Qe)>-1&&(n.config[Qe]=arrayify(Ye));n.redraw(),nn(!0)}function Ns(Qe,Ye){var wt=[];if(Qe instanceof Array)wt=Qe.map(function(Ft){return n.parseDate(Ft,Ye)});else if(Qe instanceof Date||typeof Qe=="number")wt=[n.parseDate(Qe,Ye)];else if(typeof Qe=="string")switch(n.config.mode){case"single":case"time":wt=[n.parseDate(Qe,Ye)];break;case"multiple":wt=Qe.split(n.config.conjunction).map(function(Ft){return n.parseDate(Ft,Ye)});break;case"range":wt=Qe.split(n.l10n.rangeSeparator).map(function(Ft){return n.parseDate(Ft,Ye)});break}else n.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(Qe)));n.selectedDates=n.config.allowInvalidPreload?wt:wt.filter(function(Ft){return Ft instanceof Date&&de(Ft,!1)}),n.config.mode==="range"&&n.selectedDates.sort(function(Ft,Rn){return Ft.getTime()-Rn.getTime()})}function Vs(Qe,Ye,wt){if(Ye===void 0&&(Ye=!1),wt===void 0&&(wt=n.config.dateFormat),Qe!==0&&!Qe||Qe instanceof Array&&Qe.length===0)return n.clear(Ye);Ns(Qe,wt),n.latestSelectedDateObj=n.selectedDates[n.selectedDates.length-1],n.redraw(),te(void 0,Ye),R(),n.selectedDates.length===0&&n.clear(!1),nn(Ye),Ye&&wo("onChange")}function Ts(Qe){return Qe.slice().map(function(Ye){return typeof Ye=="string"||typeof Ye=="number"||Ye instanceof Date?n.parseDate(Ye,void 0,!0):Ye&&typeof Ye=="object"&&Ye.from&&Ye.to?{from:n.parseDate(Ye.from,void 0),to:n.parseDate(Ye.to,void 0)}:Ye}).filter(function(Ye){return Ye})}function Ki(){n.selectedDates=[],n.now=n.parseDate(n.config.now)||new Date;var Qe=n.config.defaultDate||((n.input.nodeName==="INPUT"||n.input.nodeName==="TEXTAREA")&&n.input.placeholder&&n.input.value===n.input.placeholder?null:n.input.value);Qe&&Ns(Qe,n.config.dateFormat),n._initialDate=n.selectedDates.length>0?n.selectedDates[0]:n.config.minDate&&n.config.minDate.getTime()>n.now.getTime()?n.config.minDate:n.config.maxDate&&n.config.maxDate.getTime()0&&(n.latestSelectedDateObj=n.selectedDates[0]),n.config.minTime!==void 0&&(n.config.minTime=n.parseDate(n.config.minTime,"H:i")),n.config.maxTime!==void 0&&(n.config.maxTime=n.parseDate(n.config.maxTime,"H:i")),n.minDateHasTime=!!n.config.minDate&&(n.config.minDate.getHours()>0||n.config.minDate.getMinutes()>0||n.config.minDate.getSeconds()>0),n.maxDateHasTime=!!n.config.maxDate&&(n.config.maxDate.getHours()>0||n.config.maxDate.getMinutes()>0||n.config.maxDate.getSeconds()>0)}function vs(){if(n.input=Ne(),!n.input){n.config.errorHandler(new Error("Invalid input element specified"));return}n.input._type=n.input.type,n.input.type="text",n.input.classList.add("flatpickr-input"),n._input=n.input,n.config.altInput&&(n.altInput=createElement(n.input.nodeName,n.config.altInputClass),n._input=n.altInput,n.altInput.placeholder=n.input.placeholder,n.altInput.disabled=n.input.disabled,n.altInput.required=n.input.required,n.altInput.tabIndex=n.input.tabIndex,n.altInput.type="text",n.input.setAttribute("type","hidden"),!n.config.static&&n.input.parentNode&&n.input.parentNode.insertBefore(n.altInput,n.input.nextSibling)),n.config.allowInput||n._input.setAttribute("readonly","readonly"),ms()}function ms(){n._positionElement=n.config.positionElement||n._input}function dr(){var Qe=n.config.enableTime?n.config.noCalendar?"time":"datetime-local":"date";n.mobileInput=createElement("input",n.input.className+" flatpickr-mobile"),n.mobileInput.tabIndex=1,n.mobileInput.type=Qe,n.mobileInput.disabled=n.input.disabled,n.mobileInput.required=n.input.required,n.mobileInput.placeholder=n.input.placeholder,n.mobileFormatStr=Qe==="datetime-local"?"Y-m-d\\TH:i:S":Qe==="date"?"Y-m-d":"H:i:S",n.selectedDates.length>0&&(n.mobileInput.defaultValue=n.mobileInput.value=n.formatDate(n.selectedDates[0],n.mobileFormatStr)),n.config.minDate&&(n.mobileInput.min=n.formatDate(n.config.minDate,"Y-m-d")),n.config.maxDate&&(n.mobileInput.max=n.formatDate(n.config.maxDate,"Y-m-d")),n.input.getAttribute("step")&&(n.mobileInput.step=String(n.input.getAttribute("step"))),n.input.type="hidden",n.altInput!==void 0&&(n.altInput.type="hidden");try{n.input.parentNode&&n.input.parentNode.insertBefore(n.mobileInput,n.input.nextSibling)}catch{}V(n.mobileInput,"change",function(Ye){n.setDate(getEventTarget(Ye).value,!1,n.mobileFormatStr),wo("onChange"),wo("onClose")})}function Oo(Qe){if(n.isOpen===!0)return n.close();n.open(Qe)}function wo(Qe,Ye){if(n.config!==void 0){var wt=n.config[Qe];if(wt!==void 0&&wt.length>0)for(var Ft=0;wt[Ft]&&Ft=0&&compareDates(Qe,n.selectedDates[1])<=0}function ts(){n.config.noCalendar||n.isMobile||!n.monthNav||(n.yearElements.forEach(function(Qe,Ye){var wt=new Date(n.currentYear,n.currentMonth,1);wt.setMonth(n.currentMonth+Ye),n.config.showMonths>1||n.config.monthSelectorType==="static"?n.monthElements[Ye].textContent=monthToStr(wt.getMonth(),n.config.shorthandCurrentMonth,n.l10n)+" ":n.monthsDropdownContainer.value=wt.getMonth().toString(),Qe.value=wt.getFullYear().toString()}),n._hidePrevMonthArrow=n.config.minDate!==void 0&&(n.currentYear===n.config.minDate.getFullYear()?n.currentMonth<=n.config.minDate.getMonth():n.currentYearn.config.maxDate.getMonth():n.currentYear>n.config.maxDate.getFullYear()))}function Qi(Qe){var Ye=Qe||(n.config.altInput?n.config.altFormat:n.config.dateFormat);return n.selectedDates.map(function(wt){return n.formatDate(wt,Ye)}).filter(function(wt,Ft,Rn){return n.config.mode!=="range"||n.config.enableTime||Rn.indexOf(wt)===Ft}).join(n.config.mode!=="range"?n.config.conjunction:n.l10n.rangeSeparator)}function nn(Qe){Qe===void 0&&(Qe=!0),n.mobileInput!==void 0&&n.mobileFormatStr&&(n.mobileInput.value=n.latestSelectedDateObj!==void 0?n.formatDate(n.latestSelectedDateObj,n.mobileFormatStr):""),n.input.value=Qi(n.config.dateFormat),n.altInput!==void 0&&(n.altInput.value=Qi(n.config.altFormat)),Qe!==!1&&wo("onValueUpdate")}function ns(Qe){var Ye=getEventTarget(Qe),wt=n.prevMonthNav.contains(Ye),Ft=n.nextMonthNav.contains(Ye);wt||Ft?Ue(wt?-1:1):n.yearElements.indexOf(Ye)>=0?Ye.select():Ye.classList.contains("arrowUp")?n.changeYear(n.currentYear+1):Ye.classList.contains("arrowDown")&&n.changeYear(n.currentYear-1)}function Xr(Qe){Qe.preventDefault();var Ye=Qe.type==="keydown",wt=getEventTarget(Qe),Ft=wt;n.amPM!==void 0&&wt===n.amPM&&(n.amPM.textContent=n.l10n.amPM[int(n.amPM.textContent===n.l10n.amPM[0])]);var Rn=parseFloat(Ft.getAttribute("min")),Xn=parseFloat(Ft.getAttribute("max")),ro=parseFloat(Ft.getAttribute("step")),an=parseInt(Ft.value,10),Do=Qe.delta||(Ye?Qe.which===38?1:-1:0),io=an+ro*Do;if(typeof Ft.value<"u"&&Ft.value.length===2){var Wo=Ft===n.hourElement,sr=Ft===n.minuteElement;ioXn&&(io=Ft===n.hourElement?io-Xn-int(!n.amPM):Rn,sr&&ae(void 0,1,n.hourElement)),n.amPM&&Wo&&(ro===1?io+an===23:Math.abs(io-an)>ro)&&(n.amPM.textContent=n.l10n.amPM[int(n.amPM.textContent===n.l10n.amPM[0])]),Ft.value=pad(io)}}return c(),n}function _flatpickr(o,e){for(var n=Array.prototype.slice.call(o).filter(function(h){return h instanceof HTMLElement}),r=[],c=0;c{(!c.readonly||p)&&flatpickr(y,k)});function A(){u=this.value,n(0,u)}function R(N){binding_callbacks[N?"unshift":"push"](()=>{y=N,n(4,y)})}return o.$$set=N=>{"field"in N&&n(1,c=N.field),"value"in N&&n(0,u=N.value),"id"in N&&n(2,h=N.id),"isCreateMode"in N&&n(3,p=N.isCreateMode),"validationErrors"in N&&n(6,b=N.validationErrors)},o.$$.update=()=>{o.$$.dirty&66&&n(5,r=getErrorMessage(b,c.name))},[u,c,h,p,y,r,b,A,R]}let Date$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$r,create_fragment$r,safe_not_equal,{field:1,value:0,id:2,isCreateMode:3,validationErrors:6})}};var byteToHex=[];for(var i$1=0;i$1<256;++i$1)byteToHex.push((i$1+256).toString(16).slice(1));function unsafeStringify(o,e=0){return(byteToHex[o[e+0]]+byteToHex[o[e+1]]+byteToHex[o[e+2]]+byteToHex[o[e+3]]+"-"+byteToHex[o[e+4]]+byteToHex[o[e+5]]+"-"+byteToHex[o[e+6]]+byteToHex[o[e+7]]+"-"+byteToHex[o[e+8]]+byteToHex[o[e+9]]+"-"+byteToHex[o[e+10]]+byteToHex[o[e+11]]+byteToHex[o[e+12]]+byteToHex[o[e+13]]+byteToHex[o[e+14]]+byteToHex[o[e+15]]).toLowerCase()}var getRandomValues,rnds8=new Uint8Array(16);function rng(){if(!getRandomValues&&(getRandomValues=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!getRandomValues))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return getRandomValues(rnds8)}var randomUUID=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);const native={randomUUID};function v4(o,e,n){if(native.randomUUID&&!e&&!o)return native.randomUUID();o=o||{};var r=o.random||(o.rng||rng)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,unsafeStringify(r)}function create_if_block_1$c(o){let e,n,r,c,u;return n=new Icon({props:{icon:"dice"}}),{c(){e=element("button"),create_component(n.$$.fragment),attr(e,"class","btn btn-primary ms-2"),attr(e,"title","Generate a new UUIDv4")},m(h,p){insert$1(h,e,p),mount_component(n,e,null),r=!0,c||(u=listen(e,"click",o[4]),c=!0)},p:noop,i(h){r||(transition_in(n.$$.fragment,h),r=!0)},o(h){transition_out(n.$$.fragment,h),r=!1},d(h){h&&detach(e),destroy_component(n),c=!1,u()}}}function create_if_block$j(o){let e,n;return{c(){e=element("div"),n=text(o[2]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&4&&set_data(n,r[2])},d(r){r&&detach(e)}}}function create_fragment$q(o){let e,n,r,c,u,h,p,b,y=!o[3]&&create_if_block_1$c(o),k=o[2]&&create_if_block$j(o);return{c(){e=element("div"),n=element("div"),r=element("input"),c=space$3(),y&&y.c(),u=space$3(),k&&k.c(),attr(r,"type","text"),attr(r,"id",o[1]),attr(r,"class","form-control"),attr(r,"autocomplete","off"),r.readOnly=o[3],toggle_class(r,"is-invalid",o[2]),attr(n,"class","d-flex justify-content-between"),attr(e,"class","mb-0")},m(A,R){insert$1(A,e,R),append(e,n),append(n,r),set_input_value(r,o[0]),append(n,c),y&&y.m(n,null),append(e,u),k&&k.m(e,null),h=!0,p||(b=listen(r,"input",o[8]),p=!0)},p(A,[R]){(!h||R&2)&&attr(r,"id",A[1]),R&1&&r.value!==A[0]&&set_input_value(r,A[0]),(!h||R&4)&&toggle_class(r,"is-invalid",A[2]),A[3]||y.p(A,R),A[2]?k?k.p(A,R):(k=create_if_block$j(A),k.c(),k.m(e,null)):k&&(k.d(1),k=null)},i(A){h||(transition_in(y),h=!0)},o(A){transition_out(y),h=!1},d(A){A&&detach(e),y&&y.d(),k&&k.d(),p=!1,b()}}}function instance$q(o,e,n){let r;getContext$1("channelurl");let{validationErrors:c}=e,{field:u}=e,{value:h}=e,{id:p}=e,{isCreateMode:b}=e,y=u.readonly&&!b;function k(R){R.preventDefault(),n(0,h=v4())}function A(){h=this.value,n(0,h)}return o.$$set=R=>{"validationErrors"in R&&n(5,c=R.validationErrors),"field"in R&&n(6,u=R.field),"value"in R&&n(0,h=R.value),"id"in R&&n(1,p=R.id),"isCreateMode"in R&&n(7,b=R.isCreateMode)},o.$$.update=()=>{o.$$.dirty&96&&n(2,r=getErrorMessage(c,u.name))},[h,p,r,y,k,c,u,b,A]}class UUID extends SvelteComponent{constructor(e){super(),init(this,e,instance$q,create_fragment$q,safe_not_equal,{validationErrors:5,field:6,value:0,id:1,isCreateMode:7})}}function get_each_context$9(o,e,n){const r=o.slice();return r[12]=e[n],r}function create_if_block_2$5(o){let e,n;return e=new Status({props:{status:o[0].status}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.status=r[0].status),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_1$b(o){let e,n,r;return n=new Dropdown({props:{$$slots:{button:[create_button_slot$2],default:[create_default_slot$2]},$$scope:{ctx:o}}}),{c(){e=element("div"),create_component(n.$$.fragment),attr(e,"class","reference-action")},m(c,u){insert$1(c,e,u),mount_component(n,e,null),r=!0},p(c,u){const h={};u&32768&&(h.$$scope={dirty:u,ctx:c}),n.$set(h)},i(c){r||(transition_in(n.$$.fragment,c),r=!0)},o(c){transition_out(n.$$.fragment,c),r=!1},d(c){c&&detach(e),destroy_component(n)}}}function create_each_block$9(o){let e,n,r;function c(...u){return o[10](o[12],...u)}return{c(){e=element("button"),e.textContent=`${o[12]}`,attr(e,"class","dropdown-item button")},m(u,h){insert$1(u,e,h),n||(r=listen(e,"click",c),n=!0)},p(u,h){o=u},d(u){u&&detach(e),n=!1,r()}}}function create_default_slot$2(o){let e,n,r,c,u,h=ensure_array_like(o[6]),p=[];for(let b=0;b{fe=null}),check_outros()),Se[2]?_e?(_e.p(Se,De),De&4&&transition_in(_e,1)):(_e=create_if_block_1$b(Se),_e.c(),transition_in(_e,1),_e.m(te,j)):_e&&(group_outros(),transition_out(_e,1,1,()=>{_e=null}),check_outros()),Se[1]?ne?(ne.p(Se,De),De&2&&transition_in(ne,1)):(ne=create_if_block$i(Se),ne.c(),transition_in(ne,1),ne.m(te,null)):ne&&(group_outros(),transition_out(ne,1,1,()=>{ne=null}),check_outros())},i(Se){ae||(transition_in(c.$$.fragment,Se),transition_in(fe),transition_in(_e),transition_in(ne),ae=!0)},o(Se){transition_out(c.$$.fragment,Se),transition_out(fe),transition_out(_e),transition_out(ne),ae=!1},d(Se){Se&&detach(e),destroy_component(c),fe&&fe.d(),_e&&_e.d(),ne&&ne.d()}}}function instance$p(o,e,n){const r=createEventDispatcher(),c=getContext$1("channel");let{record:u}=e,{hasDelete:h=!1}=e,{hasInsert:p=!1}=e,b=c.schemas.find(V=>V.name===u.schema),y=previewTitle(c.schemas,u),k=Object.keys(c.imageFilters);function A(V){V.preventDefault(),r("remove",u.id)}function R(V,W){V.preventDefault();let J=htmlurl(c,u,W);r("editor-insert",J)}const N=V=>R(V,null),F=(V,W)=>R(W,V);return o.$$set=V=>{"record"in V&&n(0,u=V.record),"hasDelete"in V&&n(1,h=V.hasDelete),"hasInsert"in V&&n(2,p=V.hasInsert)},[u,h,p,c,b,y,k,A,R,N,F]}class PreviewFile extends SvelteComponent{constructor(e){super(),init(this,e,instance$p,create_fragment$p,safe_not_equal,{record:0,hasDelete:1,hasInsert:2})}}function get_each_context$8(o,e,n){const r=o.slice();return r[14]=e[n],r}function get_each_context_1$3(o,e,n){const r=o.slice();return r[17]=e[n],r}function create_else_block$8(o){let e,n;return e=new Dropdown({props:{$$slots:{button:[create_button_slot$1],default:[create_default_slot_1]},$$scope:{ctx:o}}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1048576&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_1$a(o){let e,n,r;return{c(){e=element("button"),e.textContent="Browse",attr(e,"class","button")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[10]),n=!0)},p:noop,i:noop,o:noop,d(c){c&&detach(e),n=!1,r()}}}function create_each_block_1$3(o){let e,n,r;function c(...u){return o[11](o[17],...u)}return{c(){e=element("a"),e.textContent=`${o[17].label}`,attr(e,"class","dropdown-item"),attr(e,"href","/")},m(u,h){insert$1(u,e,h),n||(r=listen(e,"click",c),n=!0)},p(u,h){o=u},d(u){u&&detach(e),n=!1,r()}}}function create_default_slot_1(o){let e,n=ensure_array_like(o[3]),r=[];for(let c=0;cp[14].id;for(let p=0;p0&&create_if_block$h(o),R={};return h=new Dialog({props:R}),o[12](h),h.$on("insert",o[7]),{c(){e=element("div"),r.c(),c=space$3(),A&&A.c(),u=space$3(),create_component(h.$$.fragment),attr(e,"class","mb-0")},m(N,F){insert$1(N,e,F),y[n].m(e,null),insert$1(N,c,F),A&&A.m(N,F),insert$1(N,u,F),mount_component(h,N,F),p=!0},p(N,[F]){let V=n;n=k(N),n===V?y[n].p(N,F):(group_outros(),transition_out(y[V],1,1,()=>{y[V]=null}),check_outros(),r=y[n],r?r.p(N,F):(r=y[n]=b[n](N),r.c()),transition_in(r,1),r.m(e,null)),N[2].length>0?A?(A.p(N,F),F&4&&transition_in(A,1)):(A=create_if_block$h(N),A.c(),transition_in(A,1),A.m(u.parentNode,u)):A&&(group_outros(),transition_out(A,1,1,()=>{A=null}),check_outros());const W={};h.$set(W)},i(N){p||(transition_in(r),transition_in(A),transition_in(h.$$.fragment,N),p=!0)},o(N){transition_out(r),transition_out(A),transition_out(h.$$.fragment,N),p=!1},d(N){N&&(detach(e),detach(c),detach(u)),y[n].d(),A&&A.d(N),o[12](null),destroy_component(h,N)}}}function instance$o(o,e,n){let r;const c=getContext$1("channel");let{field:u}=e,{record:h}=e,{graph:p}=e,b,y=c.schemas.filter(J=>u.collections.includes(J.name));function k(J){J.preventDefault(),n(8,p.edges=p.edges.filter(te=>!(te.target===J.detail&&te.field===u.name)),p)}function A(J,te){J.preventDefault(),b.open(te)}async function R(J){n(8,p.edges=await sortByField(J.detail.source,J.detail.target,p.edges,u.name,r),p)}function N(J){J.preventDefault(),b.close(),n(8,p=insertEdges(p,h,J.detail.records,u.name,J.detail.action))}const F=J=>A(J,y[0].name),V=(J,te)=>A(te,J.name);function W(J){binding_callbacks[J?"unshift":"push"](()=>{b=J,n(1,b)})}return o.$$set=J=>{"field"in J&&n(0,u=J.field),"record"in J&&n(9,h=J.record),"graph"in J&&n(8,p=J.graph)},o.$$.update=()=>{o.$$.dirty&769&&n(2,r=(p==null?void 0:p.edges.filter(J=>J.field===u.name).map(J=>p.records.find(te=>te.id===J.target&&h.id===J.source)).filter(J=>!!(J!=null&&J.id)))??[])},[u,b,r,y,k,A,R,N,p,h,F,V,W]}let File$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$o,create_fragment$o,safe_not_equal,{field:0,record:9,graph:8})}};function create_if_block$g(o){let e,n;return{c(){e=element("div"),n=text(o[5]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&32&&set_data(n,r[5])},d(r){r&&detach(e)}}}function create_fragment$n(o){let e,n,r,c,u,h,p=o[5]&&create_if_block$g(o);return{c(){e=element("div"),n=element("textarea"),c=space$3(),p&&p.c(),attr(n,"id",o[3]),attr(n,"class","form-control svelte-1er4ovm"),attr(n,"rows","2"),n.readOnly=r=o[1].readonly&&!o[2],toggle_class(n,"is-invalid",o[5]),attr(e,"class","mb-0")},m(b,y){insert$1(b,e,y),append(e,n),set_input_value(n,o[0]),o[8](n),append(e,c),p&&p.m(e,null),u||(h=[listen(n,"input",o[7]),listen(n,"input",resize),listen(n,"focus",resize)],u=!0)},p(b,[y]){y&8&&attr(n,"id",b[3]),y&6&&r!==(r=b[1].readonly&&!b[2])&&(n.readOnly=r),y&1&&set_input_value(n,b[0]),y&32&&toggle_class(n,"is-invalid",b[5]),b[5]?p?p.p(b,y):(p=create_if_block$g(b),p.c(),p.m(e,null)):p&&(p.d(1),p=null)},i:noop,o:noop,d(b){b&&detach(e),o[8](null),p&&p.d(),u=!1,run_all(h)}}}function resize(o){let e;o.target?e=o.target:e=o,e.style.overflow="hidden",e.style.height="1px",e.style.height=+e.scrollHeight+"px"}function instance$n(o,e,n){let r,{field:c}=e,{value:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e,b,{id:y}=e;onMount(()=>{resize(b)});function k(){u=this.value,n(0,u)}function A(R){binding_callbacks[R?"unshift":"push"](()=>{b=R,n(4,b)})}return o.$$set=R=>{"field"in R&&n(1,c=R.field),"value"in R&&n(0,u=R.value),"isCreateMode"in R&&n(2,h=R.isCreateMode),"validationErrors"in R&&n(6,p=R.validationErrors),"id"in R&&n(3,y=R.id)},o.$$.update=()=>{o.$$.dirty&66&&n(5,r=getErrorMessage(p,c.name))},[u,c,h,y,b,r,p,k,A]}class Textarea extends SvelteComponent{constructor(e){super(),init(this,e,instance$n,create_fragment$n,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:6,id:3})}}function create_if_block$f(o){let e,n;return{c(){e=element("div"),n=text(o[5]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&32&&set_data(n,r[5])},d(r){r&&detach(e)}}}function create_fragment$m(o){let e,n,r,c,u,h,p,b,y=o[5]&&create_if_block$f(o);return{c(){e=element("div"),n=element("input"),c=space$3(),u=element("span"),u.textContent=`Dates are displayed according to your timezone: ${o[6]}`,h=space$3(),y&&y.c(),attr(n,"type","text"),attr(n,"id",o[3]),attr(n,"class","form-control"),attr(n,"autocomplete","off"),n.readOnly=r=o[1].readonly&&!o[2],toggle_class(n,"is-invalid",o[5]),attr(u,"class","system-help-text"),attr(e,"class","mb-0")},m(k,A){insert$1(k,e,A),append(e,n),set_input_value(n,o[0]),o[9](n),append(e,c),append(e,u),append(e,h),y&&y.m(e,null),p||(b=listen(n,"input",o[8]),p=!0)},p(k,[A]){A&8&&attr(n,"id",k[3]),A&6&&r!==(r=k[1].readonly&&!k[2])&&(n.readOnly=r),A&1&&n.value!==k[0]&&set_input_value(n,k[0]),A&32&&toggle_class(n,"is-invalid",k[5]),k[5]?y?y.p(k,A):(y=create_if_block$f(k),y.c(),y.m(e,null)):y&&(y.d(1),y=null)},i:noop,o:noop,d(k){k&&detach(e),o[9](null),y&&y.d(),p=!1,b()}}}function instance$m(o,e,n){let r,{field:c}=e,{value:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e;const b=Intl.DateTimeFormat().resolvedOptions().timeZone;let{id:y}=e,k,A={allowInput:!0,altInput:!0,altFormat:"Y-m-d H:i:S",dateFormat:"Z",enableTime:!0,time_24hr:!0,enableSeconds:!0};c.min&&(A.minDate=c.min),c.max&&(A.maxDate=c.max),onMount(()=>{(!c.readonly||h)&&flatpickr(k,A)});function R(){u=this.value,n(0,u)}function N(F){binding_callbacks[F?"unshift":"push"](()=>{k=F,n(4,k)})}return o.$$set=F=>{"field"in F&&n(1,c=F.field),"value"in F&&n(0,u=F.value),"isCreateMode"in F&&n(2,h=F.isCreateMode),"validationErrors"in F&&n(7,p=F.validationErrors),"id"in F&&n(3,y=F.id)},o.$$.update=()=>{o.$$.dirty&130&&n(5,r=getErrorMessage(p,c.name))},[u,c,h,y,k,r,b,p,R,N]}class Datetime extends SvelteComponent{constructor(e){super(),init(this,e,instance$m,create_fragment$m,safe_not_equal,{field:1,value:0,isCreateMode:2,validationErrors:7,id:3})}}var tinymce$2={exports:{}};(function(o){(function(){var e=function(s){if(s===null)return"null";if(s===void 0)return"undefined";var l=typeof s;return l==="object"&&(Array.prototype.isPrototypeOf(s)||s.constructor&&s.constructor.name==="Array")?"array":l==="object"&&(String.prototype.isPrototypeOf(s)||s.constructor&&s.constructor.name==="String")?"string":l},n=function(s){return["undefined","boolean","number","string","function","xml","null"].indexOf(s)!==-1},r=function(s,l){var d=Array.prototype.slice.call(s);return d.sort(l)},c=function(s,l){return u(function(d,m){return s.eq(l(d),l(m))})},u=function(s){return{eq:s}},h=u(function(s,l){return s===l}),p=h,b=function(s){return u(function(l,d){if(l.length!==d.length)return!1;for(var m=l.length,v=0;v{var m;return d(s,l.prototype)?!0:((m=s.constructor)===null||m===void 0?void 0:m.name)===l.name},F=s=>{const l=typeof s;return s===null?"null":l==="object"&&Array.isArray(s)?"array":l==="object"&&N(s,String,(d,m)=>m.isPrototypeOf(d))?"string":l},V=s=>l=>F(l)===s,W=s=>l=>typeof l===s,J=s=>l=>s===l,te=(s,l)=>ae(s)&&N(s,l,(d,m)=>R(d)===m),j=V("string"),ae=V("object"),fe=s=>te(s,Object),_e=V("array"),ne=J(null),Se=W("boolean"),De=J(void 0),Be=s=>s==null,Te=s=>!Be(s),Oe=W("function"),yt=W("number"),Tt=(s,l)=>{if(_e(s)){for(let d=0,m=s.length;d{},q=(s,l)=>(...d)=>s(l.apply(null,d)),Le=(s,l)=>d=>s(l(d)),je=s=>()=>s,mn=s=>s,Rt=(s,l)=>s===l;function Ue(s,...l){return(...d)=>{const m=l.concat(d);return s.apply(null,m)}}const ct=s=>l=>!s(l),dn=s=>()=>{throw new Error(s)},Zt=s=>s(),rn=s=>{s()},Fe=je(!1),mt=je(!0);class de{constructor(l,d){this.tag=l,this.value=d}static some(l){return new de(!0,l)}static none(){return de.singletonNone}fold(l,d){return this.tag?d(this.value):l()}isSome(){return this.tag}isNone(){return!this.tag}map(l){return this.tag?de.some(l(this.value)):de.none()}bind(l){return this.tag?l(this.value):de.none()}exists(l){return this.tag&&l(this.value)}forall(l){return!this.tag||l(this.value)}filter(l){return!this.tag||l(this.value)?this:de.none()}getOr(l){return this.tag?this.value:l}or(l){return this.tag?this:l}getOrThunk(l){return this.tag?this.value:l()}orThunk(l){return this.tag?this:l()}getOrDie(l){if(this.tag)return this.value;throw new Error(l??"Called getOrDie on None")}static from(l){return Te(l)?de.some(l):de.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(l){this.tag&&l(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}de.singletonNone=new de(!1);const Eo=Array.prototype.slice,jn=Array.prototype.indexOf,Yn=Array.prototype.push,po=(s,l)=>jn.call(s,l),cs=(s,l)=>{const d=po(s,l);return d===-1?de.none():de.some(d)},gt=(s,l)=>po(s,l)>-1,Ut=(s,l)=>{for(let d=0,m=s.length;d{const d=s.length,m=new Array(d);for(let v=0;v{for(let d=0,m=s.length;d{for(let d=s.length-1;d>=0;d--){const m=s[d];l(m,d)}},pn=(s,l)=>{const d=[],m=[];for(let v=0,w=s.length;v{const d=[];for(let m=0,v=s.length;m(Nt(s,(m,v)=>{d=l(d,m,v)}),d),Dn=(s,l,d)=>(Ne(s,(m,v)=>{d=l(d,m,v)}),d),is=(s,l,d)=>{for(let m=0,v=s.length;mis(s,l,Fe),as=(s,l)=>{for(let d=0,m=s.length;d{const l=[];for(let d=0,m=s.length;dvr(pt(s,l)),Vs=(s,l)=>{for(let d=0,m=s.length;d{const l=Eo.call(s,0);return l.reverse(),l},Ki=(s,l)=>xt(s,d=>!gt(l,d)),vs=(s,l)=>{const d={};for(let m=0,v=s.length;m{const d=Eo.call(s,0);return d.sort(l),d},dr=(s,l)=>l>=0&&ldr(s,0),wo=s=>dr(s,s.length-1),Gs=Oe(Array.from)?Array.from:s=>Eo.call(s),ws=(s,l)=>{for(let d=0;d{const d=[],m=Oe(l)?v=>Ut(d,w=>l(w,v)):v=>gt(d,v);for(let v=0,w=s.length;v{const d=ts(s);for(let m=0,v=d.length;mXr(s,(d,m)=>({k:m,v:l(d,m)})),Xr=(s,l)=>{const d={};return nn(s,(m,v)=>{const w=l(m,v);d[w.k]=w.v}),d},Qe=s=>(l,d)=>{s[d]=l},Ye=(s,l,d,m)=>{nn(s,(v,w)=>{(l(v,w)?d:m)(v,w)})},wt=(s,l)=>{const d={},m={};return Ye(s,l,Qe(d),Qe(m)),{t:d,f:m}},Ft=(s,l)=>{const d={};return Ye(s,l,Qe(d),St),d},Rn=(s,l)=>{const d=[];return nn(s,(m,v)=>{d.push(l(m,v))}),d},Xn=s=>Rn(s,mn),ro=(s,l)=>an(s,l)?de.from(s[l]):de.none(),an=(s,l)=>Qi.call(s,l),Do=(s,l)=>an(s,l)&&s[l]!==void 0&&s[l]!==null,io=(s,l,d=A)=>k(d).eq(s,l),Wo=s=>{const l={};return Ne(s,d=>{l[d]={}}),ts(l)},sr=s=>s.length!==void 0,mr=Array.isArray,Ks=s=>{if(mr(s))return s;{const l=[];for(let d=0,m=s.length;d{if(!s)return!1;if(d=d||s,sr(s)){for(let m=0,v=s.length;m{const d=[];return pr(s,(m,v)=>{d.push(l(m,v,s))}),d},cc=(s,l)=>{const d=[];return pr(s,(m,v)=>{(!l||l(m,v,s))&&d.push(m)}),d},mi=(s,l)=>{if(s){for(let d=0,m=s.length;d{let v=De(d)?s[0]:d;for(let w=0;w{for(let m=0,v=s.length;ms[s.length-1],Qt=s=>{let l=!1,d;return(...m)=>(l||(l=!0,d=s.apply(null,m)),d)},eo=(s,l,d,m)=>{const v=s.isiOS()&&/ipad/i.test(d)===!0,w=s.isiOS()&&!v,$=s.isiOS()||s.isAndroid(),B=$||m("(pointer:coarse)"),H=v||!w&&$&&m("(min-device-width:768px)"),G=w||$&&!H,le=l.isSafari()&&s.isiOS()&&/safari/i.test(d)===!1,ue=!G&&!H&&!le;return{isiPad:je(v),isiPhone:je(w),isTablet:je(H),isPhone:je(G),isTouch:je(B),isAndroid:s.isAndroid,isiOS:s.isiOS,isWebView:je(le),isDesktop:je(ue)}},co=(s,l)=>{for(let d=0;d{const d=co(s,l);if(!d)return{major:0,minor:0};const m=v=>Number(l.replace(d,"$"+v));return xo(m(1),m(2))},fr=(s,l)=>{const d=String(l).toLowerCase();return s.length===0?nt():qo(s,d)},nt=()=>xo(0,0),xo=(s,l)=>({major:s,minor:l}),jr={nu:xo,detect:fr,unknown:nt},Oi=(s,l)=>ws(l.brands,d=>{const m=d.brand.toLowerCase();return Gn(s,v=>{var w;return m===((w=v.brand)===null||w===void 0?void 0:w.toLowerCase())}).map(v=>({current:v.name,version:jr.nu(parseInt(d.version,10),0)}))}),ra=(s,l)=>{const d=String(l).toLowerCase();return Gn(s,m=>m.search(d))},zs=(s,l)=>ra(s,l).map(d=>{const m=jr.detect(d.versionRegexes,l);return{current:d.name,version:m}}),Ec=(s,l)=>ra(s,l).map(d=>{const m=jr.detect(d.versionRegexes,l);return{current:d.name,version:m}}),ul=(s,l)=>s.substring(l),ga=(s,l,d)=>l===""||s.length>=l.length&&s.substr(d,d+l.length)===l,Ri=(s,l)=>rr(s,l)?ul(s,l.length):s,As=(s,l,d=0,m)=>{const v=s.indexOf(l,d);return v!==-1?De(m)?!0:v+l.length<=m:!1},rr=(s,l)=>ga(s,l,0),Vi=(s,l)=>ga(s,l,s.length-l.length),ia=s=>l=>l.replace(s,""),Pl=ia(/^\s+|\s+$/g),Tc=ia(/^\s+/g),Ac=ia(/\s+$/g),Ls=s=>s.length>0,Ji=s=>!Ls(s),ka=(s,l)=>l<=0?"":new Array(l+1).join(s),Gc=(s,l=10)=>{const d=parseInt(s,l);return isNaN(d)?de.none():de.some(d)},xa=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Yr=s=>l=>As(l,s),hr=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:s=>As(s,"edge/")&&As(s,"chrome")&&As(s,"safari")&&As(s,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,xa],search:s=>As(s,"chrome")&&!As(s,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:s=>As(s,"msie")||As(s,"trident")},{name:"Opera",versionRegexes:[xa,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Yr("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Yr("firefox")},{name:"Safari",versionRegexes:[xa,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:s=>(As(s,"safari")||As(s,"mobile/"))&&As(s,"applewebkit")}],ja=[{name:"Windows",search:Yr("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:s=>As(s,"iphone")||As(s,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Yr("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Yr("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Yr("linux"),versionRegexes:[]},{name:"Solaris",search:Yr("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Yr("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Yr("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],bu={browsers:je(hr),oses:je(ja)},Us="Edge",Mi="Chromium",zi="IE",yi="Opera",yl="Firefox",ql="Safari",ba=()=>Dl({current:void 0,version:jr.unknown()}),Dl=s=>{const l=s.current,d=s.version,m=v=>()=>l===v;return{current:l,version:d,isEdge:m(Us),isChromium:m(Mi),isIE:m(zi),isOpera:m(yi),isFirefox:m(yl),isSafari:m(ql)}},Rl={unknown:ba,nu:Dl,edge:je(Us),chromium:je(Mi),ie:je(zi),opera:je(yi),firefox:je(yl),safari:je(ql)},cd="Windows",Ml="iOS",Qu="Android",Ya="Linux",uc="macOS",vu="Solaris",ud="FreeBSD",Kd="ChromeOS",Ee=()=>Ke({current:void 0,version:jr.unknown()}),Ke=s=>{const l=s.current,d=s.version,m=v=>()=>l===v;return{current:l,version:d,isWindows:m(cd),isiOS:m(Ml),isAndroid:m(Qu),isMacOS:m(uc),isLinux:m(Ya),isSolaris:m(vu),isFreeBSD:m(ud),isChromeOS:m(Kd)}},ht={unknown:Ee,nu:Ke,windows:je(cd),ios:je(Ml),android:je(Qu),linux:je(Ya),macos:je(uc),solaris:je(vu),freebsd:je(ud),chromeos:je(Kd)},fn={detect:(s,l,d)=>{const m=bu.browsers(),v=bu.oses(),w=l.bind(H=>Oi(m,H)).orThunk(()=>zs(m,s)).fold(Rl.unknown,Rl.nu),$=Ec(v,s).fold(ht.unknown,ht.nu),B=eo($,w,s,d);return{browser:w,os:$,deviceType:B}}},go=s=>window.matchMedia(s).matches;let ar=Qt(()=>fn.detect(navigator.userAgent,de.from(navigator.userAgentData),go));const Ko=()=>ar(),Io=navigator.userAgent,Mr=Ko(),Ss=Mr.browser,si=Mr.os,Ga=Mr.deviceType,dd=Io.indexOf("Windows Phone")!==-1,Mn={transparentSrc:"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",documentMode:Ss.isIE()?document.documentMode||7:10,cacheSuffix:null,container:null,canHaveCSP:!Ss.isIE(),windowsPhone:dd,browser:{current:Ss.current,version:Ss.version,isChromium:Ss.isChromium,isEdge:Ss.isEdge,isFirefox:Ss.isFirefox,isIE:Ss.isIE,isOpera:Ss.isOpera,isSafari:Ss.isSafari},os:{current:si.current,version:si.version,isAndroid:si.isAndroid,isChromeOS:si.isChromeOS,isFreeBSD:si.isFreeBSD,isiOS:si.isiOS,isLinux:si.isLinux,isMacOS:si.isMacOS,isSolaris:si.isSolaris,isWindows:si.isWindows},deviceType:{isDesktop:Ga.isDesktop,isiPad:Ga.isiPad,isiPhone:Ga.isiPhone,isPhone:Ga.isPhone,isTablet:Ga.isTablet,isTouch:Ga.isTouch,isWebView:Ga.isWebView}},fd=/^\s*|\s*$/g,ui=s=>Be(s)?"":(""+s).replace(fd,""),me=(s,l)=>l?l==="array"&&mr(s)?!0:typeof s===l:s!==void 0,Pe=(s,l,d={})=>{const m=j(s)?s.split(l||","):s||[];let v=m.length;for(;v--;)d[m[v]]={};return d},We=an,Pt=(s,...l)=>{for(let d=0;dl.call(m,v,w,d)===!1?!1:(Tn(v,l,d,m),!0)))},cn={trim:ui,isArray:mr,is:me,toArray:Ks,makeMap:Pe,each:pr,map:Di,grep:cc,inArray:mi,hasOwn:We,extend:Pt,walk:Tn,resolve:(s,l=window)=>{const d=s.split(".");for(let m=0,v=d.length;m_e(s)?s:s===""?[]:Di(s.split(l||","),ui),_addCacheSuffix:s=>{const l=Mn.cacheSuffix;return l&&(s+=(s.indexOf("?")===-1?"?":"&")+l),s}},Or=(s,l,d=Rt)=>s.exists(m=>d(m,l)),Ka=(s,l,d=Rt)=>yr(s,l,d).getOr(s.isNone()&&l.isNone()),Gr=s=>{const l=[],d=m=>{l.push(m)};for(let m=0;ms.isSome()&&l.isSome()?de.some(d(s.getOrDie(),l.getOrDie())):de.none(),Kc=(s,l,d,m)=>s.isSome()&&l.isSome()&&d.isSome()?de.some(m(s.getOrDie(),l.getOrDie(),d.getOrDie())):de.none(),Jo=(s,l)=>s?de.some(l):de.none(),dl=typeof window<"u"?window:Function("return this;")(),Fr=(s,l)=>{let d=l??dl;for(let m=0;m{const d=s.split(".");return Fr(d,l)},Nr=(s,l)=>fl(s,l),hd=(s,l)=>{const d=Nr(s,l);if(d==null)throw new Error(s+" not available on this browser");return d},Ni=Object.getPrototypeOf,Vu=s=>hd("HTMLElement",s),Ws=s=>{const l=fl("ownerDocument.defaultView",s);return ae(s)&&(Vu(l).prototype.isPrototypeOf(s)||/^HTML\w*Element$/.test(Ni(s).constructor.name))},Jc=8,eu=9,Nl=11,dc=1,th=3,Os=s=>s.dom.nodeName.toLowerCase(),Ii=s=>s.dom.nodeType,Wi=s=>l=>Ii(l)===s,Qp=s=>Ii(s)===Jc||Os(s)==="#comment",ri=s=>Ra(s)&&Ws(s.dom),Ra=Wi(dc),va=Wi(th),Jh=Wi(eu),em=Wi(Nl),fc=s=>l=>Ra(l)&&Os(l)===s,_f=(s,l,d)=>{if(j(d)||Se(d)||yt(d))s.setAttribute(l,d+"");else throw console.error("Invalid call to Attribute.set. Key ",l,":: Value ",d,":: Element ",s),new Error("Attribute value was not simple")},Sr=(s,l,d)=>{_f(s.dom,l,d)},$c=(s,l)=>{const d=s.dom;nn(l,(m,v)=>{_f(d,v,m)})},Ja=(s,l)=>{const d=s.dom.getAttribute(l);return d===null?void 0:d},aa=(s,l)=>de.from(Ja(s,l)),Zi=(s,l)=>{const d=s.dom;return d&&d.hasAttribute?d.hasAttribute(l):!1},ii=(s,l)=>{s.dom.removeAttribute(l)},hc=s=>{const l=s.dom.attributes;return l==null||l.length===0},md=s=>Dn(s.dom.attributes,(l,d)=>(l[d.name]=d.value,l),{}),Jd=(s,l)=>{const d=Ja(s,l);return d===void 0||d===""?[]:d.split(" ")},tm=(s,l,d)=>{const v=Jd(s,l).concat([d]);return Sr(s,l,v.join(" ")),!0},nh=(s,l,d)=>{const m=xt(Jd(s,l),v=>v!==d);return m.length>0?Sr(s,l,m.join(" ")):ii(s,l),!1},_l=s=>s.dom.classList!==void 0,oh=s=>Jd(s,"class"),Oa=(s,l)=>tm(s,"class",l),tu=(s,l)=>nh(s,"class",l),sh=(s,l)=>gt(oh(s),l)?tu(s,l):Oa(s,l),Ou=(s,l)=>{_l(s)?s.dom.classList.add(l):Oa(s,l)},wf=s=>{(_l(s)?s.dom.classList:oh(s)).length===0&&ii(s,"class")},hl=(s,l)=>{_l(s)?s.dom.classList.remove(l):tu(s,l),wf(s)},Sf=(s,l)=>{const d=_l(s)?s.dom.classList.toggle(l):sh(s,l);return wf(s),d},zu=(s,l)=>_l(s)&&s.dom.classList.contains(l),Vm=(s,l)=>{const m=(l||document).createElement("div");if(m.innerHTML=s,!m.hasChildNodes()||m.childNodes.length>1){const v="HTML does not have a single root node";throw console.error(v,s),new Error(v)}return ml(m.childNodes[0])},zm=(s,l)=>{const m=(l||document).createElement(s);return ml(m)},pd=(s,l)=>{const m=(l||document).createTextNode(s);return ml(m)},ml=s=>{if(s==null)throw new Error("Node cannot be null or undefined");return{dom:s}},qe={fromHtml:Vm,fromTag:zm,fromText:pd,fromDom:ml,fromPoint:(s,l,d)=>de.from(s.dom.elementFromPoint(l,d)).map(ml)},gd=(s,l)=>{const d=[],m=w=>(d.push(w),l(w));let v=l(s);do v=v.bind(m);while(v.isSome());return d},mc=(s,l)=>{const d=s.dom;if(d.nodeType!==dc)return!1;{const m=d;if(m.matches!==void 0)return m.matches(l);if(m.msMatchesSelector!==void 0)return m.msMatchesSelector(l);if(m.webkitMatchesSelector!==void 0)return m.webkitMatchesSelector(l);if(m.mozMatchesSelector!==void 0)return m.mozMatchesSelector(l);throw new Error("Browser lacks native selectors")}},Cf=s=>s.nodeType!==dc&&s.nodeType!==eu&&s.nodeType!==Nl||s.childElementCount===0,Zm=(s,l)=>{const d=l===void 0?document:l.dom;return Cf(d)?[]:pt(d.querySelectorAll(s),qe.fromDom)},kf=(s,l)=>{const d=l===void 0?document:l.dom;return Cf(d)?de.none():de.from(d.querySelector(s)).map(qe.fromDom)},dt=(s,l)=>s.dom===l.dom,sn=(s,l)=>{const d=s.dom,m=l.dom;return d===m?!1:d.contains(m)},Kt=s=>qe.fromDom(s.dom.ownerDocument),uo=s=>Jh(s)?s:Kt(s),ps=s=>qe.fromDom(uo(s).dom.documentElement),qs=s=>qe.fromDom(uo(s).dom.defaultView),gr=s=>de.from(s.dom.parentNode).map(qe.fromDom),br=s=>de.from(s.dom.parentElement).map(qe.fromDom),rh=(s,l)=>{const d=Oe(l)?l:Fe;let m=s.dom;const v=[];for(;m.parentNode!==null&&m.parentNode!==void 0;){const w=m.parentNode,$=qe.fromDom(w);if(v.push($),d($)===!0)break;m=w}return v},Vp=s=>{const l=d=>xt(d,m=>!dt(s,m));return gr(s).map(Ci).map(l).getOr([])},Ui=s=>de.from(s.dom.previousSibling).map(qe.fromDom),pc=s=>de.from(s.dom.nextSibling).map(qe.fromDom),Um=s=>Ts(gd(s,Ui)),la=s=>gd(s,pc),Ci=s=>pt(s.dom.childNodes,qe.fromDom),nu=(s,l)=>{const d=s.dom.childNodes;return de.from(d[l]).map(qe.fromDom)},Dr=s=>nu(s,0),Pc=s=>nu(s,s.dom.childNodes.length-1),el=s=>s.dom.childNodes.length,xf=s=>s.dom.hasChildNodes(),zp=s=>{const l=s.dom.head;if(l==null)throw new Error("Head is not available yet");return qe.fromDom(l)},ih=s=>em(s)&&Te(s.dom.host),nm=Oe(Element.prototype.attachShadow)&&Oe(Node.prototype.getRootNode),Wu=je(nm),pl=nm?s=>qe.fromDom(s.dom.getRootNode()):uo,ah=s=>ih(s)?s:zp(uo(s)),l1=s=>ih(s)?s:qe.fromDom(uo(s).dom.body),Ef=s=>{const l=pl(s);return ih(l)?de.some(l):de.none()},om=s=>qe.fromDom(s.dom.host),bd=s=>{if(Wu()&&Te(s.target)){const l=qe.fromDom(s.target);if(Ra(l)&&vd(l)&&s.composed&&s.composedPath){const d=s.composedPath();if(d)return Oo(d)}}return de.from(s.target)},vd=s=>Te(s.dom.shadowRoot),ef=s=>{const l=va(s)?s.dom.parentNode:s.dom;if(l==null||l.ownerDocument===null)return!1;const d=l.ownerDocument;return Ef(qe.fromDom(l)).fold(()=>d.body.contains(l),Le(ef,om))};var Cr=(s,l,d,m,v)=>s(d,m)?de.some(d):Oe(v)&&v(d)?de.none():l(d,m,v);const Rr=(s,l,d)=>{let m=s.dom;const v=Oe(d)?d:Fe;for(;m.parentNode;){m=m.parentNode;const w=qe.fromDom(m);if(l(w))return de.some(w);if(v(w))break}return de.none()},Ma=(s,l,d)=>Cr((v,w)=>w(v),Rr,s,l,d),qm=(s,l)=>{const d=s.dom;return d.parentNode?Wp(qe.fromDom(d.parentNode),m=>!dt(s,m)&&l(m)):de.none()},Wp=(s,l)=>{const d=v=>l(qe.fromDom(v));return Gn(s.dom.childNodes,d).map(qe.fromDom)},Ea=(s,l)=>{const d=m=>{for(let v=0;vRr(s,m=>mc(m,l),d),Na=(s,l)=>kf(l,s),Rc=(s,l,d)=>Cr((v,w)=>mc(v,w),Dc,s,l,d),sm=s=>Rc(s,"[contenteditable]"),Zo=(s,l=!1)=>ef(s)?s.dom.isContentEditable:sm(s).fold(je(l),d=>Il(d)==="true"),Il=s=>s.dom.contentEditable,Od=s=>s.style!==void 0&&Oe(s.style.getPropertyValue),qi=(s,l,d)=>{if(!j(d))throw console.error("Invalid call to CSS.set. Property ",l,":: Value ",d,":: Element ",s),new Error("CSS value must be a string: "+d);Od(s)&&s.style.setProperty(l,d)},Ia=(s,l)=>{Od(s)&&s.style.removeProperty(l)},Zp=(s,l,d)=>{const m=s.dom;qi(m,l,d)},Ba=(s,l)=>{const d=s.dom;nn(l,(m,v)=>{qi(d,v,m)})},ki=(s,l)=>{const d=s.dom,v=window.getComputedStyle(d).getPropertyValue(l);return v===""&&!ef(s)?Xl(d,l):v},Xl=(s,l)=>Od(s)?s.style.getPropertyValue(l):"",Bi=(s,l)=>{const d=s.dom,m=Xl(d,l);return de.from(m).filter(v=>v.length>0)},yu=s=>{const l={},d=s.dom;if(Od(d))for(let m=0;m{const d=s.dom;Ia(d,l),Or(aa(s,"style").map(Pl),"")&&ii(s,"style")},Kr=s=>s.dom.offsetWidth,xi=(s,l)=>{gr(s).each(m=>{m.dom.insertBefore(l.dom,s.dom)})},Bl=(s,l)=>{pc(s).fold(()=>{gr(s).each(v=>{di(v,l)})},m=>{xi(m,l)})},_u=(s,l)=>{Dr(s).fold(()=>{di(s,l)},m=>{s.dom.insertBefore(l.dom,m.dom)})},di=(s,l)=>{s.dom.appendChild(l.dom)},Xm=(s,l)=>{xi(s,l),di(l,s)},Up=(s,l)=>{Ne(l,(d,m)=>{const v=m===0?s:l[m-1];Bl(v,d)})},lr=(s,l)=>{Ne(l,d=>{di(s,d)})},ou=s=>{s.dom.textContent="",Ne(Ci(s),l=>{$s(l)})},$s=s=>{const l=s.dom;l.parentNode!==null&&l.parentNode.removeChild(l)},La=s=>{const l=Ci(s);l.length>0&&Up(s,l),$s(s)},Mc=(s,l)=>{const m=(l||document).createElement("div");return m.innerHTML=s,Ci(qe.fromDom(m))},wu=s=>pt(s,qe.fromDom),xe=s=>s.dom.innerHTML,Nc=(s,l)=>{const m=Kt(s).dom,v=qe.fromDom(m.createDocumentFragment()),w=Mc(l,m);lr(v,w),ou(s),di(s,v)},Tf=s=>{const l=qe.fromTag("div"),d=qe.fromDom(s.dom.cloneNode(!0));return di(l,d),xe(l)},jl=(s,l,d,m,v,w,$)=>({target:s,x:l,y:d,stop:m,prevent:v,kill:w,raw:$}),_r=s=>{const l=qe.fromDom(bd(s).getOr(s.target)),d=()=>s.stopPropagation(),m=()=>s.preventDefault(),v=q(m,d);return jl(l,s.clientX,s.clientY,d,m,v,s)},qp=(s,l)=>d=>{s(d)&&l(_r(d))},im=(s,l,d,m,v)=>{const w=qp(d,m);return s.dom.addEventListener(l,w,v),{unbind:Ue(su,s,l,w,v)}},jm=(s,l,d,m)=>im(s,l,d,m,!1),su=(s,l,d,m)=>{s.dom.removeEventListener(l,d,m)},X=(s,l)=>({left:s,top:l,translate:(m,v)=>X(s+m,l+v)}),re=X,ye=s=>{const l=s.getBoundingClientRect();return re(l.left,l.top)},Ze=(s,l)=>s!==void 0?s:l!==void 0?l:0,tt=s=>{const l=s.dom.ownerDocument,d=l.body,m=l.defaultView,v=l.documentElement;if(d===s.dom)return re(d.offsetLeft,d.offsetTop);const w=Ze(m==null?void 0:m.pageYOffset,v.scrollTop),$=Ze(m==null?void 0:m.pageXOffset,v.scrollLeft),B=Ze(v.clientTop,d.clientTop),H=Ze(v.clientLeft,d.clientLeft);return tn(s).translate($-H,w-B)},tn=s=>{const l=s.dom,m=l.ownerDocument.body;return m===l?re(m.offsetLeft,m.offsetTop):ef(s)?ye(l):re(0,0)},Kn=s=>{const l=s!==void 0?s.dom:document,d=l.body.scrollLeft||l.documentElement.scrollLeft,m=l.body.scrollTop||l.documentElement.scrollTop;return re(d,m)},Mo=(s,l,d)=>{const v=(d!==void 0?d.dom:document).defaultView;v&&v.scrollTo(s,l)},To=(s,l)=>{Ko().browser.isSafari()&&Oe(s.dom.scrollIntoViewIfNeeded)?s.dom.scrollIntoViewIfNeeded(!1):s.dom.scrollIntoView(l)},_o=s=>{const l=s===void 0?window:s;return Ko().browser.isFirefox()?de.none():de.from(l.visualViewport)},ai=(s,l,d,m)=>({x:s,y:l,width:d,height:m,right:s+d,bottom:l+m}),pi=s=>{const l=s===void 0?window:s,d=l.document,m=Kn(qe.fromDom(d));return _o(l).fold(()=>{const v=l.document.documentElement,w=v.clientWidth,$=v.clientHeight;return ai(m.left,m.top,w,$)},v=>ai(Math.max(v.pageLeft,m.left),Math.max(v.pageTop,m.top),v.width,v.height))},Yl=(s,l)=>xt(Ci(s),l),Uu=(s,l)=>{let d=[];return Ne(Ci(s),m=>{l(m)&&(d=d.concat([m])),d=d.concat(Uu(m,l))}),d},Fa=(s,l)=>Zm(l,s),F0=(s,l,d)=>Dc(s,l,d).isSome();class Hr{constructor(l,d){this.node=l,this.rootNode=d,this.current=this.current.bind(this),this.next=this.next.bind(this),this.prev=this.prev.bind(this),this.prev2=this.prev2.bind(this)}current(){return this.node}next(l){return this.node=this.findSibling(this.node,"firstChild","nextSibling",l),this.node}prev(l){return this.node=this.findSibling(this.node,"lastChild","previousSibling",l),this.node}prev2(l){return this.node=this.findPreviousNode(this.node,l),this.node}findSibling(l,d,m,v){if(l){if(!v&&l[d])return l[d];if(l!==this.rootNode){let w=l[m];if(w)return w;for(let $=l.parentNode;$&&$!==this.rootNode;$=$.parentNode)if(w=$[m],w)return w}}}findPreviousNode(l,d){if(l){const m=l.previousSibling;if(this.rootNode&&m===this.rootNode)return;if(m){if(!d){for(let w=m.lastChild;w;w=w.lastChild)if(!w.lastChild)return w}return m}const v=l.parentNode;if(v&&v!==this.rootNode)return v}}}const Jn=s=>l=>!!l&&l.nodeType===s,yd=s=>!!s&&!Object.getPrototypeOf(s),Zn=Jn(1),Ha=s=>Zn(s)&&ri(qe.fromDom(s)),sb=s=>Zn(s)&&s.namespaceURI==="http://www.w3.org/2000/svg",_d=s=>{const l=s.toLowerCase();return d=>Te(d)&&d.nodeName.toLowerCase()===l},ea=s=>{const l=s.map(d=>d.toLowerCase());return d=>{if(d&&d.nodeName){const m=d.nodeName.toLowerCase();return gt(l,m)}return!1}},tf=(s,l)=>{const d=l.toLowerCase().split(" ");return m=>{if(Zn(m)){const v=m.ownerDocument.defaultView;if(v)for(let w=0;wl=>Zn(l)&&l.hasAttribute(s),Ta=(s,l)=>d=>Zn(d)&&d.getAttribute(s)===l,Su=s=>Zn(s)&&s.hasAttribute("data-mce-bogus"),Xp=s=>Zn(s)&&s.getAttribute("data-mce-bogus")==="all",wd=s=>Zn(s)&&s.tagName==="TABLE",jp=s=>l=>!!(Ha(l)&&(l.contentEditable===s||l.getAttribute("data-mce-contenteditable")===s)),nf=ea(["textarea","input"]),un=Jn(3),rb=Jn(4),of=Jn(7),sf=Jn(8),ru=Jn(9),li=Jn(11),Js=_d("br"),Ei=_d("img"),wl=jp("true"),ys=jp("false"),lh=ea(["td","th"]),ca=ea(["td","th","caption"]),Qr=ea(["video","audio","object","embed"]),Gm=_d("li"),Gt=_d("details"),Sl=_d("summary"),Km="\uFEFF",Fs=" ",Li=s=>s===Km,Yp=s=>s.replace(/\uFEFF/g,""),ku=((s,l)=>{const d=w=>{if(!s(w))throw new Error("Can only get "+l+" value of a "+l+" node");return m(w).getOr("")},m=w=>s(w)?de.from(w.dom.nodeValue):de.none();return{get:d,getOption:m,set:(w,$)=>{if(!s(w))throw new Error("Can only set raw "+l+" value of a "+l+" node");w.dom.nodeValue=$}}})(va,"text"),Ic=s=>ku.get(s),am=s=>ku.getOption(s),tl=(s,l)=>ku.set(s,l),er=["td","th"],ua=["thead","tbody","tfoot"],rf=["h1","h2","h3","h4","h5","h6","p","div","address","pre","form","blockquote","center","dir","fieldset","header","footer","article","section","hgroup","aside","nav","figure"],nl=["li","dd","dt"],c1=["ul","ol","dl"],ch=["pre","script","textarea","style"],af=s=>{let l;return d=>(l=l||vs(s,mt),an(l,Os(d)))},Ll=s=>Os(s)==="table",xu=s=>Ra(s)&&Os(s)==="br",_t=af(rf),Gl=af(c1),iu=af(nl),Fl=af(ua),Kl=af(er),ya=af(ch),da=s=>{const l=[];let d=s.dom;for(;d;)l.push(qe.fromDom(d)),d=d.lastChild;return l},u1=s=>{const l=Fa(s,"br"),d=xt(da(s).slice(-1),xu);l.length===d.length&&Ne(d,$s)},Jl=()=>{const s=qe.fromTag("br");return Sr(s,"data-mce-bogus","1"),s},Sd=s=>{ou(s),di(s,Jl())},bo=(s,l)=>{Pc(s).each(d=>{Ui(d).each(m=>{l.isBlock(Os(s))&&xu(d)&&l.isBlock(Os(m))&&$s(d)})})},z=Km,K=Li,ve=Yp,Ae=s=>s.insertContent(z,{preserve_zwsp:!0}),ot=Zn,Vt=un,gn=s=>(Vt(s)&&(s=s.parentNode),ot(s)&&s.hasAttribute("data-mce-caret")),xn=s=>Vt(s)&&K(s.data),ao=s=>gn(s)||xn(s),Uo=s=>s.firstChild!==s.lastChild||!Js(s.firstChild),_i=(s,l)=>{var d;const v=((d=s.ownerDocument)!==null&&d!==void 0?d:document).createTextNode(z),w=s.parentNode;if(l){const $=s.previousSibling;if(Vt($)){if(ao($))return $;if(Bc($))return $.splitText($.data.length-1)}w==null||w.insertBefore(v,s)}else{const $=s.nextSibling;if(Vt($)){if(ao($))return $;if(Cl($))return $.splitText(1),$}s.nextSibling?w==null||w.insertBefore(v,s.nextSibling):w==null||w.appendChild(v)}return v},tr=s=>{const l=s.container();return un(l)?l.data.charAt(s.offset())===z||s.isAtStart()&&xn(l.previousSibling):!1},Vr=s=>{const l=s.container();return un(l)?l.data.charAt(s.offset()-1)===z||s.isAtEnd()&&xn(l.nextSibling):!1},gc=(s,l,d)=>{var m;const w=((m=l.ownerDocument)!==null&&m!==void 0?m:document).createElement(s);w.setAttribute("data-mce-caret",d?"before":"after"),w.setAttribute("data-mce-bogus","all"),w.appendChild(Jl().dom);const $=l.parentNode;return d?$==null||$.insertBefore(w,l):l.nextSibling?$==null||$.insertBefore(w,l.nextSibling):$==null||$.appendChild(w),w},Cl=s=>Vt(s)&&s.data[0]===z,Bc=s=>Vt(s)&&s.data[s.data.length-1]===z,Cd=s=>{var l;const d=s.getElementsByTagName("br"),m=d[d.length-1];Su(m)&&((l=m.parentNode)===null||l===void 0||l.removeChild(m))},qu=s=>s&&s.hasAttribute("data-mce-caret")?(Cd(s),s.removeAttribute("data-mce-caret"),s.removeAttribute("data-mce-bogus"),s.removeAttribute("style"),s.removeAttribute("data-mce-style"),s.removeAttribute("_moz_abspos"),s):null,uh=s=>gn(s.startContainer),Xs=wl,dh=ys,Jm=Js,Ti=un,Lc=ea(["script","style","textarea"]),lm=ea(["img","input","textarea","hr","iframe","video","audio","object","embed"]),fh=ea(["table"]),ds=ao,_s=s=>ds(s)?!1:Ti(s)?!Lc(s.parentNode):lm(s)||Jm(s)||fh(s)||ol(s),fa=s=>Zn(s)&&s.getAttribute("unselectable")==="true",ol=s=>!fa(s)&&dh(s),Gp=(s,l)=>{for(let d=s.parentNode;d&&d!==l;d=d.parentNode){if(ol(d))return!1;if(Xs(d))return!0}return!0},kd=s=>ol(s)?!Dn(Gs(s.getElementsByTagName("*")),(l,d)=>l||Xs(d),!1):!1,gi=s=>lm(s)||kd(s),Fc=(s,l)=>_s(s)&&Gp(s,l),Eu=/^[ \t\r\n]*$/,hh=s=>Eu.test(s),Af=s=>{for(const l of s)if(!Li(l))return!1;return!0},ep=s=>" \f \v".indexOf(s)!==-1,lf=s=>s===` -`||s==="\r",NO=(s,l)=>l=0?lf(s[l]):!1,mh=(s,l=4,d=!0,m=!0)=>{const v=ka(" ",l),w=s.replace(/\t/g,v);return Dn(w,(B,H)=>ep(H)||H===Fs?B.pcIsSpace||B.str===""&&d||B.str.length===w.length-1&&m||NO(w,B.str.length+1)?{pcIsSpace:!1,str:B.str+Fs}:{pcIsSpace:!0,str:B.str+" "}:{pcIsSpace:lf(H),str:B.str+H},{pcIsSpace:!1,str:""}).str},d1=(s,l)=>{const d=qe.fromDom(l),m=qe.fromDom(s);return F0(m,"pre,code",Ue(dt,d))},ph=(s,l)=>un(s)&&hh(s.data)&&!d1(s,l),ta=s=>Zn(s)&&s.nodeName==="A"&&!s.hasAttribute("href")&&(s.hasAttribute("name")||s.hasAttribute("id")),Xu=(s,l)=>_s(s)&&!ph(s,l)||ta(s)||xd(s),xd=Ym("data-mce-bookmark"),gh=Ym("data-mce-bogus"),bh=Ta("data-mce-bogus","all"),tp=s=>br(qe.fromDom(s)).exists(l=>!Zo(l)),au=(s,l)=>{let d=0;if(Xu(s,s))return!1;{let m=s.firstChild;if(!m)return!0;const v=new Hr(m,s);do{if(l){if(bh(m)){m=v.next(!0);continue}if(gh(m)){m=v.next();continue}}if(wl(m)&&tp(m))return!1;if(Js(m)){d++,m=v.next();continue}if(Xu(m,s))return!1;m=v.next()}while(m);return d<=1}},Fi=(s,l=!0)=>au(s.dom,l),Ed=s=>s.toLowerCase()==="svg",ib=s=>Ed(s.nodeName),f1=s=>(s==null?void 0:s.nodeName)==="svg"?"svg":"html",h1=["svg"],vh=()=>{let s=[];const l=()=>s[s.length-1];return{track:w=>{ib(w)&&s.push(w);let $=l();return $&&!$.contains(w)&&(s.pop(),$=l()),f1($)},current:()=>f1(l()),reset:()=>{s=[]}}},ec="data-mce-block",ju=s=>xt(ts(s),l=>!/[A-Z]/.test(l)),$f=s=>pt(ju(s),l=>`${l}:`+pt(h1,d=>`not(${d} ${l})`).join(":")).join(","),cf=(s,l)=>Te(l.querySelector(s))?(l.setAttribute(ec,"true"),l.getAttribute("data-mce-selected")==="inline-boundary"&&l.removeAttribute("data-mce-selected"),!0):(l.removeAttribute(ec),!1),bc=(s,l)=>{const d=$f(s.getTransparentElements()),m=$f(s.getBlockElements());return xt(l.querySelectorAll(d),v=>cf(m,v))},Yu=(s,l)=>{var d;const m=l?"lastChild":"firstChild";for(let v=s[m];v;v=v[m])if(Fi(qe.fromDom(v))){(d=v.parentNode)===null||d===void 0||d.removeChild(v);return}},Oh=(s,l)=>{const d=document.createRange(),m=s.parentNode;if(m){d.setStartBefore(s),d.setEndBefore(l);const v=d.extractContents();Yu(v,!0),d.setStartAfter(l),d.setEndAfter(s);const w=d.extractContents();Yu(w,!1),Fi(qe.fromDom(v))||m.insertBefore(v,s),Fi(qe.fromDom(l))||m.insertBefore(l,s),Fi(qe.fromDom(w))||m.insertBefore(w,s),m.removeChild(s)}},H0=(s,l,d)=>{const m=s.getBlockElements(),v=qe.fromDom(l),w=B=>Os(B)in m,$=B=>dt(B,v);Ne(wu(d),B=>{Rr(B,w,$).each(H=>{const G=Yl(B,le=>w(le)&&!s.isValidChild(Os(H),Os(le)));if(G.length>0){const le=br(H);Ne(G,ue=>{Rr(ue,w,$).each(ge=>{Oh(ge.dom,ue.dom)})}),le.each(ue=>bc(s,ue.dom))}})})},ab=(s,l,d)=>{Ne([...d,...gs(s,l)?[l]:[]],m=>Ne(Fa(qe.fromDom(m),m.nodeName.toLowerCase()),v=>{ho(s,v.dom)&&La(v)}))},Kp=(s,l)=>{const d=bc(s,l);H0(s,l,d),ab(s,l,d)},yh=(s,l)=>{if(tg(s,l)){const d=$f(s.getBlockElements());cf(d,l)}},Jp=(s,l,d)=>{const m=w=>dt(w,qe.fromDom(l)),v=rh(qe.fromDom(d),m);dr(v,v.length-2).filter(Ra).fold(()=>Kp(s,l),w=>Kp(s,w.dom))},lb=s=>s.hasAttribute(ec),eg=(s,l)=>an(s.getTransparentElements(),l),tg=(s,l)=>Zn(l)&&eg(s,l.nodeName),gs=(s,l)=>tg(s,l)&&lb(l),ho=(s,l)=>tg(s,l)&&!lb(l),Td=(s,l)=>l.type===1&&eg(s,l.name)&&j(l.attr(ec)),ng=Ko().browser,cm=s=>Gn(s,Ra),tw=s=>ng.isFirefox()&&Os(s)==="table"?cm(Ci(s)).filter(l=>Os(l)==="caption").bind(l=>cm(la(l)).map(d=>{const m=d.dom.offsetTop,v=l.dom.offsetTop,w=l.dom.offsetHeight;return m<=v?-w:0})).getOr(0):0,cb=(s,l)=>s.children&>(s.children,l),kr=(s,l,d)=>{let m=0,v=0;const w=s.ownerDocument;if(d=d||s,l){if(d===s&&l.getBoundingClientRect&&ki(qe.fromDom(s),"position")==="static"){const B=l.getBoundingClientRect();return m=B.left+(w.documentElement.scrollLeft||s.scrollLeft)-w.documentElement.clientLeft,v=B.top+(w.documentElement.scrollTop||s.scrollTop)-w.documentElement.clientTop,{x:m,y:v}}let $=l;for(;$&&$!==d&&$.nodeType&&!cb($,d);){const B=$;m+=B.offsetLeft||0,v+=B.offsetTop||0,$=B.offsetParent}for($=l.parentNode;$&&$!==d&&$.nodeType&&!cb($,d);)m-=$.scrollLeft||0,v-=$.scrollTop||0,$=$.parentNode;v+=tw(qe.fromDom(l))}return{x:m,y:v}},ub=(s,l={})=>{let d=0;const m={},v=qe.fromDom(s),w=uo(v),$=rt=>{l.referrerPolicy=rt},B=rt=>{l.contentCssCors=rt},H=rt=>{di(ah(v),rt)},G=rt=>{const ft=ah(v);Na(ft,"#"+rt).each($s)},le=rt=>ro(m,rt).getOrThunk(()=>({id:"mce-u"+d++,passed:[],failed:[],count:0})),ue=rt=>new Promise((ft,ut)=>{let kt;const en=cn._addCacheSuffix(rt),vn=le(en);m[en]=vn,vn.count++;const Fn=(qn,mo)=>{Ne(qn,rn),vn.status=mo,vn.passed=[],vn.failed=[],kt&&(kt.onload=null,kt.onerror=null,kt=null)},zt=()=>Fn(vn.passed,2),It=()=>Fn(vn.failed,3);if(ft&&vn.passed.push(ft),ut&&vn.failed.push(ut),vn.status===1)return;if(vn.status===2){zt();return}if(vn.status===3){It();return}vn.status=1;const Jt=qe.fromTag("link",w.dom);$c(Jt,{rel:"stylesheet",type:"text/css",id:vn.id}),l.contentCssCors&&Sr(Jt,"crossOrigin","anonymous"),l.referrerPolicy&&Sr(Jt,"referrerpolicy",l.referrerPolicy),kt=Jt.dom,kt.onload=zt,kt.onerror=It,H(Jt),Sr(Jt,"href",en)}),ge=(rt,ft)=>{const ut=le(rt);m[rt]=ut,ut.count++;const kt=qe.fromTag("style",w.dom);$c(kt,{rel:"stylesheet",type:"text/css",id:ut.id}),kt.dom.innerHTML=ft,H(kt)},Me=rt=>Promise.allSettled(pt(rt,ut=>ue(ut).then(je(ut)))).then(ut=>{const kt=pn(ut,en=>en.status==="fulfilled");return kt.fail.length>0?Promise.reject(pt(kt.fail,en=>en.reason)):pt(kt.pass,en=>en.value)}),He=rt=>{const ft=cn._addCacheSuffix(rt);ro(m,ft).each(ut=>{--ut.count===0&&(delete m[ft],G(ut.id))})};return{load:ue,loadRawCss:ge,loadAll:Me,unload:He,unloadRawCss:rt=>{ro(m,rt).each(ft=>{--ft.count===0&&(delete m[rt],G(ft.id))})},unloadAll:rt=>{Ne(rt,ft=>{He(ft)})},_setReferrerPolicy:$,_setContentCssCors:B}},Q0=(()=>{const s=new WeakMap;return{forElement:(d,m)=>{const w=pl(d).dom;return de.from(s.get(w)).getOrThunk(()=>{const $=ub(w,m);return s.set(w,$),$})}}})(),qt=s=>s.nodeName.toLowerCase()==="span",Ad=(s,l,d)=>Te(s)&&(Xu(s,l)||d.isInline(s.nodeName.toLowerCase())),IO=(s,l,d)=>{const m=new Hr(s,l).prev(!1),v=new Hr(s,l).next(!1),w=De(m)||Ad(m,l,d),$=De(v)||Ad(v,l,d);return w&&$},og=s=>qt(s)&&s.getAttribute("data-mce-type")==="bookmark",nw=(s,l,d)=>un(s)&&s.data.length>0&&IO(s,l,d),np=s=>Zn(s)?s.childNodes.length>0:!1,V0=s=>li(s)||ru(s),_h=(s,l,d,m)=>{var v;const w=m||l;if(Zn(l)&&og(l))return l;const $=l.childNodes;for(let B=$.length-1;B>=0;B--)_h(s,$[B],d,w);if(Zn(l)){const B=l.childNodes;B.length===1&&og(B[0])&&((v=l.parentNode)===null||v===void 0||v.insertBefore(B[0],l))}return!V0(l)&&!Xu(l,w)&&!np(l)&&!nw(l,w,d)&&s.remove(l),l},wh=cn.makeMap,$d=/[&<>\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,xr=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Pd=/[<>&\"\']/g,sg=/&#([a-z0-9]+);?|&([a-z0-9]+);/gi,vc={128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},ls={'"':""","'":"'","<":"<",">":">","&":"&","`":"`"},rg={"<":"<",">":">","&":"&",""":'"',"'":"'"},Sh=s=>{const l=qe.fromTag("div").dom;return l.innerHTML=s,l.textContent||l.innerText||s},um=(s,l)=>{const d={};if(s){const m=s.split(",");l=l||10;for(let v=0;vs.replace(l?$d:xr,d=>ls[d]||d),BO=s=>(""+s).replace(Pd,l=>ls[l]||l),tc=(s,l)=>s.replace(l?$d:xr,d=>d.length>1?"&#"+((d.charCodeAt(0)-55296)*1024+(d.charCodeAt(1)-56320)+65536)+";":ls[d]||"&#"+d.charCodeAt(0)+";"),Pf=(s,l,d)=>{const m=d||db;return s.replace(l?$d:xr,v=>ls[v]||m[v]||v)},op={encodeRaw:p1,encodeAllRaw:BO,encodeNumeric:tc,encodeNamed:Pf,getEncodeFunc:(s,l)=>{const d=um(l)||db,m=($,B)=>$.replace(B?$d:xr,H=>ls[H]!==void 0?ls[H]:d[H]!==void 0?d[H]:H.length>1?"&#"+((H.charCodeAt(0)-55296)*1024+(H.charCodeAt(1)-56320)+65536)+";":"&#"+H.charCodeAt(0)+";"),v=($,B)=>Pf($,B,d),w=wh(s.replace(/\+/g,","));return w.named&&w.numeric?m:w.named?l?v:Pf:w.numeric?tc:p1},decode:s=>s.replace(sg,(l,d)=>d?(d.charAt(0).toLowerCase()==="x"?d=parseInt(d.substr(1),16):d=parseInt(d,10),d>65535?(d-=65536,String.fromCharCode(55296+(d>>10),56320+(d&1023))):vc[d]||String.fromCharCode(d)):rg[l]||db[l]||Sh(l))},gl=(s,l)=>(s=cn.trim(s),s?s.split(l||" "):[]),Vn=s=>new RegExp("^"+s.replace(/([?+*])/g,".$1")+"$"),ow=s=>{const l=/^(~)?(.+)$/;return Ns(gl(s,","),d=>{const m=l.exec(d);if(m){const v=m[1]==="~",w=v?"span":"div",$=m[2];return[{inline:v,cloneName:w,name:$}]}else return[]})},z0=s=>{let l,d,m;if(l="id accesskey class dir lang style tabindex title role",d="address blockquote div dl fieldset form h1 h2 h3 h4 h5 h6 hr menu ol p pre table ul",m="a abbr b bdo br button cite code del dfn em embed i iframe img input ins kbd label map noscript object q s samp script select small span strong sub sup textarea u var #text #comment",s!=="html4"){const w="a ins del canvas map";l+=" contenteditable contextmenu draggable dropzone hidden spellcheck translate",d+=" article aside details dialog figure main header footer hgroup section nav "+w,m+=" audio canvas command datalist mark meter output picture progress time wbr video ruby bdi keygen svg"}s!=="html5-strict"&&(l+=" xml:lang",m=[m,"acronym applet basefont big font strike tt"].join(" "),d=[d,"center dir isindex noframes"].join(" "));const v=[d,m].join(" ");return{globalAttributes:l,blockContent:d,phrasingContent:m,flowContent:v}},Ch=s=>{const{globalAttributes:l,phrasingContent:d,flowContent:m}=z0(s),v={},w=(H,G,le)=>{v[H]={attributes:vs(G,je({})),attributesOrder:G,children:vs(le,je({}))}},$=(H,G="",le="")=>{const ue=gl(le),ge=gl(H);let Me=ge.length;const He=gl([l,G].join(" "));for(;Me--;)w(ge[Me],He.slice(),ue)},B=(H,G)=>{const le=gl(H),ue=gl(G);let ge=le.length;for(;ge--;){const Me=v[le[ge]];for(let He=0,$e=ue.length;He<$e;He++)Me.attributes[ue[He]]={},Me.attributesOrder.push(ue[He])}};return s!=="html5-strict"&&(Ne(gl("acronym applet basefont big font strike tt"),le=>{$(le,"",d)}),Ne(gl("center dir isindex noframes"),le=>{$(le,"",m)})),$("html","manifest","head body"),$("head","","base command link meta noscript script style title"),$("title hr noscript br"),$("base","href target"),$("link","href rel media hreflang type sizes hreflang"),$("meta","name http-equiv content charset"),$("style","media type scoped"),$("script","src async defer type charset"),$("body","onafterprint onbeforeprint onbeforeunload onblur onerror onfocus onhashchange onload onmessage onoffline ononline onpagehide onpageshow onpopstate onresize onscroll onstorage onunload",m),$("dd div","",m),$("address dt caption","",s==="html4"?d:m),$("h1 h2 h3 h4 h5 h6 pre p abbr code var samp kbd sub sup i b u bdo span legend em strong small s cite dfn","",d),$("blockquote","cite",m),$("ol","reversed start type","li"),$("ul","","li"),$("li","value",m),$("dl","","dt dd"),$("a","href target rel media hreflang type",s==="html4"?d:m),$("q","cite",d),$("ins del","cite datetime",m),$("img","src sizes srcset alt usemap ismap width height"),$("iframe","src name width height",m),$("embed","src type width height"),$("object","data type typemustmatch name usemap form width height",[m,"param"].join(" ")),$("param","name value"),$("map","name",[m,"area"].join(" ")),$("area","alt coords shape href target rel media hreflang type"),$("table","border","caption colgroup thead tfoot tbody tr"+(s==="html4"?" col":"")),$("colgroup","span","col"),$("col","span"),$("tbody thead tfoot","","tr"),$("tr","","td th"),$("td","colspan rowspan headers",m),$("th","colspan rowspan headers scope abbr",m),$("form","accept-charset action autocomplete enctype method name novalidate target",m),$("fieldset","disabled form name",[m,"legend"].join(" ")),$("label","form for",d),$("input","accept alt autocomplete checked dirname disabled form formaction formenctype formmethod formnovalidate formtarget height list max maxlength min multiple name pattern readonly required size src step type value width"),$("button","disabled form formaction formenctype formmethod formnovalidate formtarget name type value",s==="html4"?m:d),$("select","disabled form multiple name required size","option optgroup"),$("optgroup","disabled label","option"),$("option","disabled label selected value"),$("textarea","cols dirname disabled form maxlength name readonly required rows wrap"),$("menu","type label",[m,"li"].join(" ")),$("noscript","",m),s!=="html4"&&($("wbr"),$("ruby","",[d,"rt rp"].join(" ")),$("figcaption","",m),$("mark rt rp bdi","",d),$("summary","",[d,"h1 h2 h3 h4 h5 h6"].join(" ")),$("canvas","width height",m),$("video","src crossorigin poster preload autoplay mediagroup loop muted controls width height buffered",[m,"track source"].join(" ")),$("audio","src crossorigin preload autoplay mediagroup loop muted controls buffered volume",[m,"track source"].join(" ")),$("picture","","img source"),$("source","src srcset type media sizes"),$("track","kind src srclang label default"),$("datalist","",[d,"option"].join(" ")),$("article section nav aside main header footer","",m),$("hgroup","","h1 h2 h3 h4 h5 h6"),$("figure","",[m,"figcaption"].join(" ")),$("time","datetime",d),$("dialog","open",m),$("command","type label icon disabled checked radiogroup command"),$("output","for form name",d),$("progress","value max",d),$("meter","value min max low high optimum",d),$("details","open",[m,"summary"].join(" ")),$("keygen","autofocus challenge disabled form keytype name"),w("svg","id tabindex lang xml:space class style x y width height viewBox preserveAspectRatio zoomAndPan transform".split(" "),[])),s!=="html5-strict"&&(B("script","language xml:space"),B("style","xml:space"),B("object","declare classid code codebase codetype archive standby align border hspace vspace"),B("embed","align name hspace vspace"),B("param","valuetype type"),B("a","charset name rev shape coords"),B("br","clear"),B("applet","codebase archive code object alt name width height align hspace vspace"),B("img","name longdesc align border hspace vspace"),B("iframe","longdesc frameborder marginwidth marginheight scrolling align"),B("font basefont","size color face"),B("input","usemap align"),B("select"),B("textarea"),B("h1 h2 h3 h4 h5 h6 div p legend caption","align"),B("ul","type compact"),B("li","type"),B("ol dl menu dir","compact"),B("pre","width xml:space"),B("hr","align noshade size width"),B("isindex","prompt"),B("table","summary width frame rules cellspacing cellpadding align bgcolor"),B("col","width align char charoff valign"),B("colgroup","width align char charoff valign"),B("thead","align char charoff valign"),B("tr","align char charoff valign bgcolor"),B("th","axis align char charoff valign nowrap bgcolor width height"),B("form","accept"),B("td","abbr axis scope align char charoff valign nowrap bgcolor width height"),B("tfoot","align char charoff valign"),B("tbody","align char charoff valign"),B("area","nohref"),B("body","background bgcolor text link vlink alink")),s!=="html4"&&(B("input button select textarea","autofocus"),B("input textarea","placeholder"),B("a","download"),B("link script img","crossorigin"),B("img","loading"),B("iframe","sandbox seamless allow allowfullscreen loading")),s!=="html4"&&Ne([v.video,v.audio],H=>{delete H.children.audio,delete H.children.video}),Ne(gl("a form meter progress dfn"),H=>{v[H]&&delete v[H].children[H]}),delete v.caption.children.table,delete v.script,v},Hc=s=>s==="-"?"remove":"add",kh=s=>{const l=/^([+\-]?)([A-Za-z0-9_\-.\u00b7\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u037d\u037f-\u1fff\u200c-\u200d\u203f-\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]+)\[([^\]]+)]$/;return Ns(gl(s,","),d=>{const m=l.exec(d);if(m){const v=m[1],w=v?Hc(v):"replace",$=m[2],B=gl(m[3],"|");return[{operation:w,name:$,validChildren:B}]}else return[]})},ig=(s,l)=>{const d=/^([!\-])?(\w+[\\:]:\w+|[^=~<]+)?(?:([=~<])(.*))?$/,m=/[*?+]/,{attributes:v,attributesOrder:w}=l;return Ne(gl(s,"|"),$=>{const B=d.exec($);if(B){const H={},G=B[1],le=B[2].replace(/[\\:]:/g,":"),ue=B[3],ge=B[4];if(G==="!"&&(l.attributesRequired=l.attributesRequired||[],l.attributesRequired.push(le),H.required=!0),G==="-"){delete v[le],w.splice(cn.inArray(w,le),1);return}if(ue&&(ue==="="?(l.attributesDefault=l.attributesDefault||[],l.attributesDefault.push({name:le,value:ge}),H.defaultValue=ge):ue==="~"?(l.attributesForced=l.attributesForced||[],l.attributesForced.push({name:le,value:ge}),H.forcedValue=ge):ue==="<"&&(H.validValues=cn.makeMap(ge,"?"))),m.test(le)){const Me=H;l.attributePatterns=l.attributePatterns||[],Me.pattern=Vn(le),l.attributePatterns.push(Me)}else v[le]||w.push(le),v[le]=H}})},sp=(s,l)=>{nn(s.attributes,(d,m)=>{l.attributes[m]=d}),l.attributesOrder.push(...s.attributesOrder)},ag=(s,l)=>{const d=/^([#+\-])?([^\[!\/]+)(?:\/([^\[!]+))?(?:(!?)\[([^\]]+)])?$/;return Ns(gl(l,","),m=>{const v=d.exec(m);if(v){const w=v[1],$=v[2],B=v[3],H=v[4],G=v[5],le={attributes:{},attributesOrder:[]};if(s.each(ue=>sp(ue,le)),w==="#"?le.paddEmpty=!0:w==="-"&&(le.removeEmpty=!0),H==="!"&&(le.removeEmptyAttrs=!0),G&&ig(G,le),B&&(le.outputName=$),$==="@")if(s.isNone())s=de.some(le);else return[];return[B?{name:$,element:le,aliasName:B}:{name:$,element:le}]}else return[]})},hb={},Gu=cn.makeMap,Dd=cn.each,lg=cn.extend,Ku=cn.explode,mb=(s,l={})=>{const d=Gu(s," ",Gu(s.toUpperCase()," "));return lg(d,l)},LO=s=>mb("td th li dt dd figcaption caption details summary",s.getTextBlockElements()),cg=(s,l)=>{if(s){const d={};return j(s)&&(s={"*":s}),Dd(s,(m,v)=>{d[v]=d[v.toUpperCase()]=l==="map"?Gu(m,/[, ]/):Ku(m,/[, ]/)}),d}else return},Df=(s={})=>{var l;const d={},m={};let v=[];const w={},$={},B=(Xo,ir,Pr)=>{const Ca=s[Xo];if(Ca)return Gu(Ca,/[, ]/,Gu(Ca.toUpperCase(),/[, ]/));{let Gi=hb[Xo];return Gi||(Gi=mb(ir,Pr),hb[Xo]=Gi),Gi}},H=(l=s.schema)!==null&&l!==void 0?l:"html5",G=Ch(H);s.verify_html===!1&&(s.valid_elements="*[*]");const le=cg(s.valid_styles),ue=cg(s.invalid_styles,"map"),ge=cg(s.valid_classes,"map"),Me=B("whitespace_elements","pre script noscript style textarea video audio iframe object code"),He=B("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr"),$e=B("void_elements","area base basefont br col frame hr img input isindex link meta param embed source wbr track"),Ve=B("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls allowfullscreen"),rt="td th iframe video audio object script code",ft=B("non_empty_elements",rt+" pre svg",$e),ut=B("move_caret_before_on_enter_elements",rt+" table",$e),kt="h1 h2 h3 h4 h5 h6",en=B("text_block_elements",kt+" p div address pre form blockquote center dir fieldset header footer article section hgroup aside main nav figure"),vn=B("block_elements","hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex option datalist select optgroup figcaption details summary html body multicol listing",en),Fn=B("text_inline_elements","span strong b em i font s strike u var cite dfn code mark q sup sub samp"),zt=B("transparent_elements","a ins del canvas map"),It=B("wrap_block_elements","pre "+kt);Dd("script noscript iframe noframes noembed title style textarea xmp plaintext".split(" "),Xo=>{$[Xo]=new RegExp("]*>","gi")});const Jt=Xo=>{const ir=de.from(d["@"]),Pr=/[*?+]/;Ne(ag(ir,Xo??""),({name:Ca,element:Gi,aliasName:Xd})=>{if(Xd&&(d[Xd]=Gi),Pr.test(Ca)){const Lp=Gi;Lp.pattern=Vn(Ca),v.push(Lp)}else d[Ca]=Gi})},qn=Xo=>{v=[],Ne(ts(d),ir=>{delete d[ir]}),Jt(Xo)},mo=Xo=>{delete hb.text_block_elements,delete hb.block_elements,Ne(ow(Xo??""),({inline:ir,name:Pr,cloneName:Ca})=>{if(m[Pr]=m[Ca],w[Pr]=Ca,ft[Pr.toUpperCase()]={},ft[Pr]={},ir||(vn[Pr.toUpperCase()]={},vn[Pr]={}),!d[Pr]){let Gi=d[Ca];Gi=lg({},Gi),delete Gi.removeEmptyAttrs,delete Gi.removeEmpty,d[Pr]=Gi}nn(m,(Gi,Xd)=>{Gi[Ca]&&(m[Xd]=Gi=lg({},m[Xd]),Gi[Pr]=Gi[Ca])})})},es=Xo=>{Ne(kh(Xo??""),({operation:ir,name:Pr,validChildren:Ca})=>{const Gi=ir==="replace"?{"#comment":{}}:m[Pr];Ne(Ca,Xd=>{ir==="remove"?delete Gi[Xd]:Gi[Xd]={}}),m[Pr]=Gi})},Es=Xo=>{const ir=d[Xo];if(ir)return ir;let Pr=v.length;for(;Pr--;){const Ca=v[Pr];if(Ca.pattern.test(Xo))return Ca}};s.valid_elements?(qn(s.valid_elements),Dd(G,(Xo,ir)=>{m[ir]=Xo.children})):(Dd(G,(Xo,ir)=>{d[ir]={attributes:Xo.attributes,attributesOrder:Xo.attributesOrder},m[ir]=Xo.children}),Dd(gl("strong/b em/i"),Xo=>{const ir=gl(Xo,"/");d[ir[1]].outputName=ir[0]}),Dd(Fn,(Xo,ir)=>{d[ir]&&(s.padd_empty_block_inline_children&&(d[ir].paddInEmptyBlock=!0),d[ir].removeEmpty=!0)}),Dd(gl("ol ul blockquote a table tbody"),Xo=>{d[Xo]&&(d[Xo].removeEmpty=!0)}),Dd(gl("p h1 h2 h3 h4 h5 h6 th td pre div address caption li summary"),Xo=>{d[Xo]&&(d[Xo].paddEmpty=!0)}),Dd(gl("span"),Xo=>{d[Xo].removeEmptyAttrs=!0})),delete d.svg,mo(s.custom_elements),es(s.valid_children),Jt(s.extended_valid_elements),es("+ol[ul|ol],+ul[ul|ol]"),Dd({dd:"dl",dt:"dl",li:"ul ol",td:"tr",th:"tr",tr:"tbody thead tfoot",tbody:"table",thead:"table",tfoot:"table",legend:"fieldset",area:"map",param:"video audio object"},(Xo,ir)=>{d[ir]&&(d[ir].parentsRequired=gl(Xo))}),s.invalid_elements&&Dd(Ku(s.invalid_elements),Xo=>{d[Xo]&&delete d[Xo]}),Es("span")||Jt("span[!data-mce-type|*]");const Ir=je(le),hi=je(ue),pa=je(ge),Cc=je(Ve),qr=je(vn),En=je(en),Qn=je(Fn),or=je(Object.seal($e)),Rs=je(He),to=je(ft),Ho=je(ut),Sn=je(Me),Qo=je(zt),Qs=je(It),ni=je(Object.seal($)),Br=(Xo,ir)=>{const Pr=m[Xo.toLowerCase()];return!!(Pr&&Pr[ir.toLowerCase()])},Zl=(Xo,ir)=>{const Pr=Es(Xo);if(Pr)if(ir){if(Pr.attributes[ir])return!0;const Ca=Pr.attributePatterns;if(Ca){let Gi=Ca.length;for(;Gi--;)if(Ca[Gi].pattern.test(ir))return!0}}else return!0;return!1},Hm=Xo=>an(qr(),Xo),n1=Xo=>!rr(Xo,"#")&&Zl(Xo)&&!Hm(Xo),ld=Xo=>an(Qs(),Xo)||n1(Xo),Xh=je(w);return{type:H,children:m,elements:d,getValidStyles:Ir,getValidClasses:pa,getBlockElements:qr,getInvalidStyles:hi,getVoidElements:or,getTextBlockElements:En,getTextInlineElements:Qn,getBoolAttrs:Cc,getElementRule:Es,getSelfClosingElements:Rs,getNonEmptyElements:to,getMoveCaretBeforeOnEnterElements:Ho,getWhitespaceElements:Sn,getTransparentElements:Qo,getSpecialElements:ni,isValidChild:Br,isValid:Zl,isBlock:Hm,isInline:n1,isWrapper:ld,getCustomElements:Xh,addValidElements:Jt,setValidElements:qn,addCustomElements:mo,addValidChildren:es}},FO=s=>({value:ug(s)}),ug=s=>Ri(s,"#").toUpperCase(),xh=s=>{const l=s.toString(16);return(l.length===1?"0"+l:l).toUpperCase()},Ju=s=>{const l=xh(s.red)+xh(s.green)+xh(s.blue);return FO(l)},Hl=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,W0=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,Z0=(s,l,d,m)=>({red:s,green:l,blue:d,alpha:m}),U0=(s,l,d,m)=>{const v=parseInt(s,10),w=parseInt(l,10),$=parseInt(d,10),B=parseFloat(m);return Z0(v,w,$,B)},dg=s=>{if(s==="transparent")return de.some(Z0(0,0,0,0));const l=Hl.exec(s);if(l!==null)return de.some(U0(l[1],l[2],l[3],"1"));const d=W0.exec(s);return d!==null?de.some(U0(d[1],d[2],d[3],d[4])):de.none()},Qc=s=>`rgba(${s.red},${s.green},${s.blue},${s.alpha})`,lu=s=>dg(s).map(Ju).map(l=>"#"+l.value).getOr(s),Rf=(s={},l)=>{const d=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,m=/\s*([^:]+):\s*([^;]+);?/g,v=/\s+$/,w={};let $,B;const H=Km;l&&($=l.getValidStyles(),B=l.getInvalidStyles());const G=(`\\" \\' \\; \\: ; : `+H).split(" ");for(let ue=0;ue{const ge={};let Me=!1;const He=s.url_converter,$e=s.url_converter_scope||le,Ve=(zt,It,Jt)=>{const qn=ge[zt+"-top"+It];if(!qn)return;const mo=ge[zt+"-right"+It];if(!mo)return;const es=ge[zt+"-bottom"+It];if(!es)return;const Es=ge[zt+"-left"+It];if(!Es)return;const Ir=[qn,mo,es,Es];let hi=Ir.length-1;for(;hi--&&Ir[hi]===Ir[hi+1];);hi>-1&&Jt||(ge[zt+It]=hi===-1?Ir[0]:Ir.join(" "),delete ge[zt+"-top"+It],delete ge[zt+"-right"+It],delete ge[zt+"-bottom"+It],delete ge[zt+"-left"+It])},rt=zt=>{const It=ge[zt];if(!It)return;const Jt=It.indexOf(",")>-1?[It]:It.split(" ");let qn=Jt.length;for(;qn--;)if(Jt[qn]!==Jt[0])return!1;return ge[zt]=Jt[0],!0},ft=(zt,It,Jt,qn)=>{rt(It)&&rt(Jt)&&rt(qn)&&(ge[zt]=ge[It]+" "+ge[Jt]+" "+ge[qn],delete ge[It],delete ge[Jt],delete ge[qn])},ut=zt=>(Me=!0,w[zt]),kt=(zt,It)=>(Me&&(zt=zt.replace(/\uFEFF[0-9]/g,Jt=>w[Jt])),It||(zt=zt.replace(/\\([\'\";:])/g,"$1")),zt),en=zt=>String.fromCharCode(parseInt(zt.slice(1),16)),vn=zt=>zt.replace(/\\[0-9a-f]+/gi,en),Fn=(zt,It,Jt,qn,mo,es)=>{if(mo=mo||es,mo)return mo=kt(mo),"'"+mo.replace(/\'/g,"\\'")+"'";if(It=kt(It||Jt||qn||""),!s.allow_script_urls){const Es=It.replace(/[\s\r\n]+/g,"");if(/(java|vb)script:/i.test(Es)||!s.allow_svg_data_urls&&/^data:image\/svg/i.test(Es))return""}return He&&(It=He.call($e,It,"style")),"url('"+It.replace(/\'/g,"\\'")+"')"};if(ue){ue=ue.replace(/[\u0000-\u001F]/g,""),ue=ue.replace(/\\[\"\';:\uFEFF]/g,ut).replace(/\"[^\"]+\"|\'[^\']+\'/g,It=>It.replace(/[;:]/g,ut));let zt;for(;zt=m.exec(ue);){m.lastIndex=zt.index+zt[0].length;let It=zt[1].replace(v,"").toLowerCase(),Jt=zt[2].replace(v,"");if(It&&Jt){if(It=vn(It),Jt=vn(Jt),It.indexOf(H)!==-1||It.indexOf('"')!==-1||!s.allow_script_urls&&(It==="behavior"||/expression\s*\(|\/\*|\*\//.test(Jt)))continue;It==="font-weight"&&Jt==="700"?Jt="bold":(It==="color"||It==="background-color")&&(Jt=Jt.toLowerCase()),j(s.force_hex_color)&&s.force_hex_color!=="off"&&dg(Jt).each(qn=>{(s.force_hex_color==="always"||qn.alpha===1)&&(Jt=lu(Qc(qn)))}),Jt=Jt.replace(d,Fn),ge[It]=Me?kt(Jt,!0):Jt}}Ve("border","",!0),Ve("border","-width"),Ve("border","-color"),Ve("border","-style"),Ve("padding",""),Ve("margin",""),ft("border","border-width","border-style","border-color"),ge.border==="medium none"&&delete ge.border,ge["border-image"]==="none"&&delete ge["border-image"]}return ge},serialize:(ue,ge)=>{let Me="";const He=(Ve,rt)=>{const ft=rt[Ve];if(ft)for(let ut=0,kt=ft.length;ut0?" ":"")+en+": "+vn+";")}},$e=(Ve,rt)=>{if(!B||!rt)return!0;let ft=B["*"];return ft&&ft[Ve]?!1:(ft=B[rt],!(ft&&ft[Ve]))};return ge&&$?(He("*",$),He(ge,$)):nn(ue,(Ve,rt)=>{Ve&&$e(rt,ge)&&(Me+=(Me.length>0?" ":"")+rt+": "+Ve+";")}),Me}};return le},pb={keyLocation:!0,layerX:!0,layerY:!0,returnValue:!0,webkitMovementX:!0,webkitMovementY:!0,keyIdentifier:!0,mozPressure:!0},HO=s=>s instanceof Event||Oe(s.initEvent),QO=s=>s.isDefaultPrevented===mt||s.isDefaultPrevented===Fe,q0=s=>Be(s.preventDefault)||HO(s),fg=(s,l)=>{const d=l??{};for(const m in s)an(pb,m)||(d[m]=s[m]);return Te(s.composedPath)&&(d.composedPath=()=>s.composedPath()),Te(s.getModifierState)&&(d.getModifierState=m=>s.getModifierState(m)),Te(s.getTargetRanges)&&(d.getTargetRanges=()=>s.getTargetRanges()),d},hg=(s,l,d,m)=>{var v;const w=fg(l,m);return w.type=s,Be(w.target)&&(w.target=(v=w.srcElement)!==null&&v!==void 0?v:d),q0(l)&&(w.preventDefault=()=>{w.defaultPrevented=!0,w.isDefaultPrevented=mt,Oe(l.preventDefault)&&l.preventDefault()},w.stopPropagation=()=>{w.cancelBubble=!0,w.isPropagationStopped=mt,Oe(l.stopPropagation)&&l.stopPropagation()},w.stopImmediatePropagation=()=>{w.isImmediatePropagationStopped=mt,w.stopPropagation()},QO(w)||(w.isDefaultPrevented=w.defaultPrevented===!0?mt:Fe,w.isPropagationStopped=w.cancelBubble===!0?mt:Fe,w.isImmediatePropagationStopped=Fe)),w},gb="mce-data-",sw=/^(?:mouse|contextmenu)|click/,bb=(s,l,d,m)=>{s.addEventListener(l,d,m||!1)},mg=(s,l,d,m)=>{s.removeEventListener(l,d,m||!1)},rw=s=>Te(s)&&sw.test(s.type),g1=(s,l)=>{const d=hg(s.type,s,document,l);if(rw(s)&&De(s.pageX)&&!De(s.clientX)){const m=d.target.ownerDocument||document,v=m.documentElement,w=m.body,$=d;$.pageX=s.clientX+(v&&v.scrollLeft||w&&w.scrollLeft||0)-(v&&v.clientLeft||w&&w.clientLeft||0),$.pageY=s.clientY+(v&&v.scrollTop||w&&w.scrollTop||0)-(v&&v.clientTop||w&&w.clientTop||0)}return d},X0=(s,l,d)=>{const m=s.document,v={type:"ready"};if(d.domLoaded){l(v);return}const w=()=>m.readyState==="complete"||m.readyState==="interactive"&&m.body,$=()=>{mg(s,"DOMContentLoaded",$),mg(s,"load",$),d.domLoaded||(d.domLoaded=!0,l(v)),s=null};w()?$():bb(s,"DOMContentLoaded",$),d.domLoaded||bb(s,"load",$)};class Vc{constructor(){this.domLoaded=!1,this.events={},this.count=1,this.expando=gb+(+new Date).toString(32),this.hasFocusIn="onfocusin"in document.documentElement,this.count=1}bind(l,d,m,v){const w=this;let $;const B=window,H=ge=>{w.executeHandlers(g1(ge||B.event),G)};if(!l||un(l)||sf(l))return m;let G;l[w.expando]?G=l[w.expando]:(G=w.count++,l[w.expando]=G,w.events[G]={}),v=v||l;const le=d.split(" ");let ue=le.length;for(;ue--;){let ge=le[ue],Me=H,He=!1,$e=!1;if(ge==="DOMContentLoaded"&&(ge="ready"),w.domLoaded&&ge==="ready"&&l.readyState==="complete"){m.call(v,g1({type:ge}));continue}!w.hasFocusIn&&(ge==="focusin"||ge==="focusout")&&(He=!0,$e=ge==="focusin"?"focus":"blur",Me=Ve=>{const rt=g1(Ve||B.event);rt.type=rt.type==="focus"?"focusin":"focusout",w.executeHandlers(rt,G)}),$=w.events[G][ge],$?ge==="ready"&&w.domLoaded?m(g1({type:ge})):$.push({func:m,scope:v}):(w.events[G][ge]=$=[{func:m,scope:v}],$.fakeName=$e,$.capture=He,$.nativeHandler=Me,ge==="ready"?X0(l,Me,w):bb(l,$e||ge,Me,He))}return l=$=null,m}unbind(l,d,m){if(!l||un(l)||sf(l))return this;const v=l[this.expando];if(v){let w=this.events[v];if(d){const $=d.split(" ");let B=$.length;for(;B--;){const H=$[B],G=w[H];if(G){if(m){let le=G.length;for(;le--;)if(G[le].func===m){const ue=G.nativeHandler,ge=G.fakeName,Me=G.capture,He=G.slice(0,le).concat(G.slice(le+1));He.nativeHandler=ue,He.fakeName=ge,He.capture=Me,w[H]=He}}(!m||G.length===0)&&(delete w[H],mg(l,G.fakeName||H,G.nativeHandler,G.capture))}}}else nn(w,($,B)=>{mg(l,$.fakeName||B,$.nativeHandler,$.capture)}),w={};for(const $ in w)if(an(w,$))return this;delete this.events[v];try{delete l[this.expando]}catch{l[this.expando]=null}}return this}fire(l,d,m){return this.dispatch(l,d,m)}dispatch(l,d,m){if(!l||un(l)||sf(l))return this;const v=g1({type:d,target:l},m);do{const w=l[this.expando];w&&this.executeHandlers(v,w),l=l.parentNode||l.ownerDocument||l.defaultView||l.parentWindow}while(l&&!v.isPropagationStopped());return this}clean(l){if(!l||un(l)||sf(l))return this;if(l[this.expando]&&this.unbind(l),l.getElementsByTagName||(l=l.document),l&&l.getElementsByTagName){this.unbind(l);const d=l.getElementsByTagName("*");let m=d.length;for(;m--;)l=d[m],l[this.expando]&&this.unbind(l)}return this}destroy(){this.events={}}cancel(l){return l&&(l.preventDefault(),l.stopImmediatePropagation()),!1}executeHandlers(l,d){const m=this.events[d],v=m&&m[l.type];if(v)for(let w=0,$=v.length;w<$;w++){const B=v[w];if(B&&B.func.call(B.scope,l)===!1&&l.preventDefault(),l.isImmediatePropagationStopped())return}}}Vc.Event=new Vc;const b1=cn.each,j0=cn.grep,vb="data-mce-style",tC=cn.makeMap("fill-opacity font-weight line-height opacity orphans widows z-index zoom"," "),Ob=(s,l,d)=>{Be(d)||d===""?ii(s,l):Sr(s,l,d)},Eh=s=>s.replace(/[A-Z]/g,l=>"-"+l.toLowerCase()),Mf=(s,l)=>{let d=0;if(s)for(let m=s.nodeType,v=s.previousSibling;v;v=v.previousSibling){const w=v.nodeType;l&&un(v)&&(w===m||!v.data.length)||(d++,m=w)}return d},Y0=(s,l)=>{const d=Ja(l,"style"),m=s.serialize(s.parse(d),Os(l));Ob(l,vb,m)},pg=(s,l)=>yt(s)?an(tC,l)?s+"":s+"px":s,yb=(s,l,d)=>{const m=Eh(l);Be(d)||d===""?Zu(s,m):Zp(s,m,pg(d,m))},VO=(s,l,d)=>{const m=l.keep_values,v={set:($,B,H)=>{const G=qe.fromDom($);Oe(l.url_converter)&&Te(B)&&(B=l.url_converter.call(l.url_converter_scope||d(),String(B),H,$));const le="data-mce-"+H;Ob(G,le,B),Ob(G,H,B)},get:($,B)=>{const H=qe.fromDom($);return Ja(H,"data-mce-"+B)||Ja(H,B)}},w={style:{set:($,B)=>{const H=qe.fromDom($);m&&Ob(H,vb,B),ii(H,"style"),j(B)&&Ba(H,s.parse(B))},get:$=>{const B=qe.fromDom($),H=Ja(B,vb)||Ja(B,"style");return s.serialize(s.parse(H),Os(B))}}};return m&&(w.href=w.src=v),w},Jr=(s,l={})=>{const d={},m=window,v={};let w=0;const $=!0,B=!0,H=Q0.forElement(qe.fromDom(s),{contentCssCors:l.contentCssCors,referrerPolicy:l.referrerPolicy}),G=[],le=l.schema?l.schema:Df({}),ue=Rf({url_converter:l.url_converter,url_converter_scope:l.url_converter_scope,force_hex_color:l.force_hex_color},l.schema),ge=l.ownEvents?new Vc:Vc.Event,Me=le.getBlockElements(),He=Et=>j(Et)?an(Me,Et):Zn(Et)&&(an(Me,Et.nodeName)||gs(le,Et)),$e=Et=>Et&&s&&j(Et)?s.getElementById(Et):Et,Ve=Et=>{const Mt=$e(Et);return Te(Mt)?qe.fromDom(Mt):null},rt=(Et,Mt,Cn="")=>{let bn;const fo=Ve(Et);if(Te(fo)&&Ra(fo)){const ks=Y2[Mt];ks&&ks.get?bn=ks.get(fo.dom,Mt):bn=Ja(fo,Mt)}return Te(bn)?bn:Cn},ft=Et=>{const Mt=$e(Et);return Be(Mt)?[]:Mt.attributes},ut=(Et,Mt,Cn)=>{Qn(Et,bn=>{if(Zn(bn)){const fo=qe.fromDom(bn),ks=Cn===""?null:Cn,Hi=Ja(fo,Mt),Hu=Y2[Mt];Hu&&Hu.set?Hu.set(fo.dom,ks,Mt):Ob(fo,Mt,ks),Hi!==ks&&l.onSetAttrib&&l.onSetAttrib({attrElm:fo.dom,attrName:Mt,attrValue:ks})}})},kt=(Et,Mt)=>Et.cloneNode(Mt),en=()=>l.root_element||s.body,vn=Et=>{const Mt=pi(Et);return{x:Mt.x,y:Mt.y,w:Mt.width,h:Mt.height}},Fn=(Et,Mt)=>kr(s.body,$e(Et),Mt),zt=(Et,Mt,Cn)=>{Qn(Et,bn=>{const fo=qe.fromDom(bn);yb(fo,Mt,Cn),l.update_styles&&Y0(ue,fo)})},It=(Et,Mt)=>{Qn(Et,Cn=>{const bn=qe.fromDom(Cn);nn(Mt,(fo,ks)=>{yb(bn,ks,fo)}),l.update_styles&&Y0(ue,bn)})},Jt=(Et,Mt,Cn)=>{const bn=$e(Et);if(!(Be(bn)||!Ha(bn)&&!sb(bn)))return Cn?ki(qe.fromDom(bn),Eh(Mt)):(Mt=Mt.replace(/-(\D)/g,(fo,ks)=>ks.toUpperCase()),Mt==="float"&&(Mt="cssFloat"),bn.style?bn.style[Mt]:void 0)},qn=Et=>{const Mt=$e(Et);if(!Mt)return{w:0,h:0};let Cn=Jt(Mt,"width"),bn=Jt(Mt,"height");return(!Cn||Cn.indexOf("px")===-1)&&(Cn="0"),(!bn||bn.indexOf("px")===-1)&&(bn="0"),{w:parseInt(Cn,10)||Mt.offsetWidth||Mt.clientWidth,h:parseInt(bn,10)||Mt.offsetHeight||Mt.clientHeight}},mo=Et=>{const Mt=$e(Et),Cn=Fn(Mt),bn=qn(Mt);return{x:Cn.x,y:Cn.y,w:bn.w,h:bn.h}},es=(Et,Mt)=>{if(!Et)return!1;const Cn=_e(Et)?Et:[Et];return Ut(Cn,bn=>mc(qe.fromDom(bn),Mt))},Es=(Et,Mt,Cn,bn)=>{const fo=[];let ks=$e(Et);bn=bn===void 0;const Hi=Cn||(en().nodeName!=="BODY"?en().parentNode:null);if(j(Mt))if(Mt==="*")Mt=Zn;else{const Hu=Mt;Mt=kc=>es(kc,Hu)}for(;ks&&!(ks===Hi||Be(ks.nodeType)||ru(ks)||li(ks));){if(!Mt||Mt(ks))if(bn)fo.push(ks);else return[ks];ks=ks.parentNode}return bn?fo:null},Ir=(Et,Mt,Cn)=>{const bn=Es(Et,Mt,Cn,!1);return bn&&bn.length>0?bn[0]:null},hi=(Et,Mt,Cn)=>{let bn=Mt;if(Et){j(Mt)&&(bn=fo=>es(fo,Mt));for(let fo=Et[Cn];fo;fo=fo[Cn])if(Oe(bn)&&bn(fo))return fo}return null},pa=(Et,Mt)=>hi(Et,Mt,"nextSibling"),Cc=(Et,Mt)=>hi(Et,Mt,"previousSibling"),qr=Et=>Oe(Et.querySelectorAll),En=(Et,Mt)=>{var Cn,bn;const fo=(bn=(Cn=$e(Mt))!==null&&Cn!==void 0?Cn:l.root_element)!==null&&bn!==void 0?bn:s;return qr(fo)?Gs(fo.querySelectorAll(Et)):[]},Qn=function(Et,Mt,Cn){const bn=Cn??this;if(_e(Et)){const fo=[];return b1(Et,(ks,Hi)=>{const Hu=$e(ks);Hu&&fo.push(Mt.call(bn,Hu,Hi))}),fo}else{const fo=$e(Et);return fo?Mt.call(bn,fo):!1}},or=(Et,Mt)=>{Qn(Et,Cn=>{nn(Mt,(bn,fo)=>{ut(Cn,fo,bn)})})},Rs=(Et,Mt)=>{Qn(Et,Cn=>{const bn=qe.fromDom(Cn);Nc(bn,Mt)})},to=(Et,Mt,Cn,bn,fo)=>Qn(Et,ks=>{const Hi=j(Mt)?s.createElement(Mt):Mt;return Te(Cn)&&or(Hi,Cn),bn&&(!j(bn)&&bn.nodeType?Hi.appendChild(bn):j(bn)&&Rs(Hi,bn)),fo?Hi:ks.appendChild(Hi)}),Ho=(Et,Mt,Cn)=>to(s.createElement(Et),Et,Mt,Cn,!0),Sn=op.decode,Qo=op.encodeAllRaw,Qs=(Et,Mt,Cn="")=>{let bn="<"+Et;for(const fo in Mt)Do(Mt,fo)&&(bn+=" "+fo+'="'+Qo(Mt[fo])+'"');return Ji(Cn)&&an(le.getVoidElements(),Et)?bn+" />":bn+">"+Cn+""},ni=Et=>{const Mt=s.createElement("div"),Cn=s.createDocumentFragment();Cn.appendChild(Mt),Et&&(Mt.innerHTML=Et);let bn;for(;bn=Mt.firstChild;)Cn.appendChild(bn);return Cn.removeChild(Mt),Cn},Br=(Et,Mt)=>Qn(Et,Cn=>{const bn=qe.fromDom(Cn);return Mt&&Ne(Ci(bn),fo=>{va(fo)&&fo.dom.length===0?$s(fo):xi(bn,fo)}),$s(bn),bn.dom}),Zl=Et=>Qn(Et,Mt=>{const Cn=Mt.attributes;for(let bn=Cn.length-1;bn>=0;bn--)Mt.removeAttributeNode(Cn.item(bn))}),Hm=Et=>ue.parse(Et),n1=(Et,Mt)=>ue.serialize(Et,Mt),ld=Et=>{if(r1!==Jr.DOM&&s===document){if(d[Et])return;d[Et]=!0}let Mt=s.getElementById("mceDefaultStyles");if(!Mt){Mt=s.createElement("style"),Mt.id="mceDefaultStyles",Mt.type="text/css";const Cn=s.head;Cn.firstChild?Cn.insertBefore(Mt,Cn.firstChild):Cn.appendChild(Mt)}Mt.styleSheet?Mt.styleSheet.cssText+=Et:Mt.appendChild(s.createTextNode(Et))},Xh=Et=>{Et||(Et=""),Ne(Et.split(","),Mt=>{v[Mt]=!0,H.load(Mt).catch(St)})},Xo=(Et,Mt,Cn)=>{Qn(Et,bn=>{if(Zn(bn)){const fo=qe.fromDom(bn),ks=Mt.split(" ");Ne(ks,Hi=>{Te(Cn)?(Cn?Ou:hl)(fo,Hi):Sf(fo,Hi)})}})},ir=(Et,Mt)=>{Xo(Et,Mt,!0)},Pr=(Et,Mt)=>{Xo(Et,Mt,!1)},Ca=(Et,Mt)=>{const Cn=Ve(Et),bn=Mt.split(" ");return Te(Cn)&&Vs(bn,fo=>zu(Cn,fo))},Gi=Et=>{Qn(Et,Mt=>Zu(qe.fromDom(Mt),"display"))},Xd=Et=>{Qn(Et,Mt=>Zp(qe.fromDom(Mt),"display","none"))},Lp=Et=>{const Mt=Ve(Et);return Te(Mt)&&Or(Bi(Mt,"display"),"none")},nb=Et=>(Et||"mce_")+w++,$O=Et=>{const Mt=Ve(Et);return Te(Mt)?Zn(Mt.dom)?Mt.dom.outerHTML:Tf(Mt):""},G_=(Et,Mt)=>{Qn(Et,Cn=>{Zn(Cn)&&(Cn.outerHTML=Mt)})},AE=(Et,Mt)=>{const Cn=$e(Mt);return Qn(Et,bn=>{const fo=Cn==null?void 0:Cn.parentNode,ks=Cn==null?void 0:Cn.nextSibling;return fo&&(ks?fo.insertBefore(bn,ks):fo.appendChild(bn)),bn})},PO=(Et,Mt,Cn)=>Qn(Mt,bn=>{var fo;const ks=_e(Mt)?Et.cloneNode(!0):Et;return Cn&&b1(j0(bn.childNodes),Hi=>{ks.appendChild(Hi)}),(fo=bn.parentNode)===null||fo===void 0||fo.replaceChild(ks,bn),bn}),Z2=(Et,Mt)=>{if(Et.nodeName!==Mt.toUpperCase()){const Cn=Ho(Mt);return b1(ft(Et),bn=>{ut(Cn,bn.nodeName,rt(Et,bn.nodeName))}),PO(Cn,Et,!0),Cn}else return Et},K_=(Et,Mt)=>{let Cn=Et;for(;Cn;){let bn=Mt;for(;bn&&Cn!==bn;)bn=bn.parentNode;if(Cn===bn)break;Cn=Cn.parentNode}return!Cn&&Et.ownerDocument?Et.ownerDocument.documentElement:Cn},N0=Et=>{if(Zn(Et)){const Mt=Et.nodeName.toLowerCase()==="a"&&!rt(Et,"href")&&rt(Et,"id");if(rt(Et,"name")||rt(Et,"data-mce-bookmark")||Mt)return!0}return!1},Fp=(Et,Mt,Cn)=>{let bn=0;if(N0(Et))return!1;const fo=Et.firstChild;if(fo){const ks=new Hr(fo,Et),Hi=le?le.getWhitespaceElements():{},Hu=Mt||(le?le.getNonEmptyElements():null);let kc=fo;do{if(Zn(kc)){const B0=kc.getAttribute("data-mce-bogus");if(B0){kc=ks.next(B0==="all");continue}const jh=kc.nodeName.toLowerCase();if(Hu&&Hu[jh]){if(jh==="br"){bn++,kc=ks.next();continue}return!1}if(N0(kc))return!1}if(sf(kc)||un(kc)&&!hh(kc.data)&&(!(Cn!=null&&Cn.includeZwsp)||!Af(kc.data))||un(kc)&&kc.parentNode&&Hi[kc.parentNode.nodeName]&&hh(kc.data))return!1;kc=ks.next()}while(kc)}return bn<=1},o1=()=>s.createRange(),U2=(Et,Mt,Cn)=>{let bn=o1(),fo,ks;if(Et&&Mt&&Et.parentNode&&Mt.parentNode){const Hi=Et.parentNode;return bn.setStart(Hi,Mf(Et)),bn.setEnd(Mt.parentNode,Mf(Mt)),fo=bn.extractContents(),bn=o1(),bn.setStart(Mt.parentNode,Mf(Mt)+1),bn.setEnd(Hi,Mf(Et)+1),ks=bn.extractContents(),Hi.insertBefore(_h(r1,fo,le),Et),Cn?Hi.insertBefore(Cn,Et):Hi.insertBefore(Mt,Et),Hi.insertBefore(_h(r1,ks,le),Et),Br(Et),Cn||Mt}else return},J_=(Et,Mt,Cn,bn)=>{if(_e(Et)){let fo=Et.length;const ks=[];for(;fo--;)ks[fo]=J_(Et[fo],Mt,Cn,bn);return ks}else return l.collect&&(Et===s||Et===m)&&G.push([Et,Mt,Cn,bn]),ge.bind(Et,Mt,Cn,bn||r1)},q2=(Et,Mt,Cn)=>{if(_e(Et)){let bn=Et.length;const fo=[];for(;bn--;)fo[bn]=q2(Et[bn],Mt,Cn);return fo}else{if(G.length>0&&(Et===s||Et===m)){let bn=G.length;for(;bn--;){const[fo,ks,Hi]=G[bn];Et===fo&&(!Mt||Mt===ks)&&(!Cn||Cn===Hi)&&ge.unbind(fo,ks,Hi)}}return ge.unbind(Et,Mt,Cn)}},s1=(Et,Mt,Cn)=>ge.dispatch(Et,Mt,Cn),$E=(Et,Mt,Cn)=>ge.dispatch(Et,Mt,Cn),X2=Et=>{if(Et&&Ha(Et)){const Mt=Et.getAttribute("data-mce-contenteditable");return Mt&&Mt!=="inherit"?Mt:Et.contentEditable!=="inherit"?Et.contentEditable:null}else return null},r1={doc:s,settings:l,win:m,files:v,stdMode:$,boxModel:B,styleSheetLoader:H,boundEvents:G,styles:ue,schema:le,events:ge,isBlock:He,root:null,clone:kt,getRoot:en,getViewPort:vn,getRect:mo,getSize:qn,getParent:Ir,getParents:Es,get:$e,getNext:pa,getPrev:Cc,select:En,is:es,add:to,create:Ho,createHTML:Qs,createFragment:ni,remove:Br,setStyle:zt,getStyle:Jt,setStyles:It,removeAllAttribs:Zl,setAttrib:ut,setAttribs:or,getAttrib:rt,getPos:Fn,parseStyle:Hm,serializeStyle:n1,addStyle:ld,loadCSS:Xh,addClass:ir,removeClass:Pr,hasClass:Ca,toggleClass:Xo,show:Gi,hide:Xd,isHidden:Lp,uniqueId:nb,setHTML:Rs,getOuterHTML:$O,setOuterHTML:G_,decode:Sn,encode:Qo,insertAfter:AE,replace:PO,rename:Z2,findCommonAncestor:K_,run:Qn,getAttribs:ft,isEmpty:Fp,createRng:o1,nodeIndex:Mf,split:U2,bind:J_,unbind:q2,fire:$E,dispatch:s1,getContentEditable:X2,getContentEditableParent:Et=>{const Mt=en();let Cn=null;for(let bn=Et;bn&&bn!==Mt&&(Cn=X2(bn),Cn===null);bn=bn.parentNode);return Cn},isEditable:Et=>{if(Te(Et)){const Mt=Zn(Et)?Et:Et.parentElement;return Te(Mt)&&Ha(Mt)&&Zo(qe.fromDom(Mt))}else return!1},destroy:()=>{if(G.length>0){let Et=G.length;for(;Et--;){const[Mt,Cn,bn]=G[Et];ge.unbind(Mt,Cn,bn)}}nn(v,(Et,Mt)=>{H.unload(Mt),delete v[Mt]})},isChildOf:(Et,Mt)=>Et===Mt||Mt.contains(Et),dumpRng:Et=>"startContainer: "+Et.startContainer.nodeName+", startOffset: "+Et.startOffset+", endContainer: "+Et.endContainer.nodeName+", endOffset: "+Et.endOffset},Y2=VO(ue,l,je(r1));return r1};Jr.DOM=Jr(document),Jr.nodeIndex=Mf;const Rd=Jr.DOM,na=0,zO=1,wi=2,rp=3;class Aa{constructor(l={}){this.states={},this.queue=[],this.scriptLoadedCallbacks={},this.queueLoadedCallbacks=[],this.loading=!1,this.settings=l}_setReferrerPolicy(l){this.settings.referrerPolicy=l}loadScript(l){return new Promise((d,m)=>{const v=Rd;let w;const $=()=>{v.remove(G),w&&(w.onerror=w.onload=w=null)},B=()=>{$(),d()},H=()=>{$(),m("Failed to load script: "+l)},G=v.uniqueId();w=document.createElement("script"),w.id=G,w.type="text/javascript",w.src=cn._addCacheSuffix(l),this.settings.referrerPolicy&&v.setAttrib(w,"referrerpolicy",this.settings.referrerPolicy),w.onload=B,w.onerror=H,(document.getElementsByTagName("head")[0]||document.body).appendChild(w)})}isDone(l){return this.states[l]===wi}markDone(l){this.states[l]=wi}add(l){const d=this;return d.queue.push(l),d.states[l]===void 0&&(d.states[l]=na),new Promise((v,w)=>{d.scriptLoadedCallbacks[l]||(d.scriptLoadedCallbacks[l]=[]),d.scriptLoadedCallbacks[l].push({resolve:v,reject:w})})}load(l){return this.add(l)}remove(l){delete this.states[l],delete this.scriptLoadedCallbacks[l]}loadQueue(){const l=this.queue;return this.queue=[],this.loadScripts(l)}loadScripts(l){const d=this,m=(H,G)=>{ro(d.scriptLoadedCallbacks,G).each(le=>{Ne(le,ue=>ue[H](G))}),delete d.scriptLoadedCallbacks[G]},v=H=>{const G=xt(H,le=>le.status==="rejected");return G.length>0?Promise.reject(Ns(G,({reason:le})=>_e(le)?le:[le])):Promise.resolve()},w=H=>Promise.allSettled(pt(H,G=>d.states[G]===wi?(m("resolve",G),Promise.resolve()):d.states[G]===rp?(m("reject",G),Promise.reject(G)):(d.states[G]=zO,d.loadScript(G).then(()=>{d.states[G]=wi,m("resolve",G);const le=d.queue;return le.length>0?(d.queue=[],w(le).then(v)):Promise.resolve()},()=>(d.states[G]=rp,m("reject",G),Promise.reject(G)))))),$=H=>(d.loading=!0,w(H).then(G=>{d.loading=!1;const le=d.queueLoadedCallbacks.shift();return de.from(le).each(rn),v(G)})),B=Wo(l);return d.loading?new Promise((H,G)=>{d.queueLoadedCallbacks.push(()=>{$(B).then(H,G)})}):$(B)}}Aa.ScriptLoader=new Aa;const Ai=s=>{let l=s;return{get:()=>l,set:v=>{l=v}}},Tu=(s,l)=>{const d=s.indexOf(l);return d!==-1&&s.indexOf(l,d+1)>d},G0=s=>ae(s)&&an(s,"raw"),sl=s=>_e(s)&&s.length>1,v1={},gg=Ai("en"),Nf=()=>ro(v1,gg.get()),Md={getData:()=>ns(v1,s=>({...s})),setCode:s=>{s&&gg.set(s)},getCode:()=>gg.get(),add:(s,l)=>{let d=v1[s];d||(v1[s]=d={});const m=pt(ts(l),v=>v.toLowerCase());nn(l,(v,w)=>{const $=w.toLowerCase();$!==w&&Tu(m,$)?(an(l,$)||(d[$]=v),d[w]=v):d[$]=v})},translate:s=>{const l=Nf().getOr({}),d=$=>Oe($)?Object.prototype.toString.call($):m($)?"":""+$,m=$=>$===""||$===null||$===void 0,v=$=>{const B=d($);return an(l,B)?d(l[B]):ro(l,B.toLowerCase()).map(d).getOr(B)},w=$=>$.replace(/{context:\w+}$/,"");if(m(s))return"";if(G0(s))return d(s.raw);if(sl(s)){const $=s.slice(1),B=v(s[0]).replace(/\{([0-9]+)\}/g,(H,G)=>an($,G)?d($[G]):H);return w(B)}return w(v(s))},isRtl:()=>Nf().bind(s=>ro(s,"_dir")).exists(s=>s==="rtl"),hasCode:s=>an(v1,s)},nc=()=>{const s=[],l={},d={},m=[],v=($e,Ve)=>{const rt=xt(m,ft=>ft.name===$e&&ft.state===Ve);Ne(rt,ft=>ft.resolve())},w=$e=>an(l,$e),$=$e=>an(d,$e),B=$e=>{if(d[$e])return d[$e].instance},H=($e,Ve)=>{const rt=Md.getCode(),ft=","+(Ve||"")+",";!rt||Ve&&ft.indexOf(","+rt+",")===-1||Aa.ScriptLoader.add(l[$e]+"/langs/"+rt+".js")},G=($e,Ve)=>{nc.languageLoad!==!1&&(w($e)?H($e,Ve):He($e,"loaded").then(()=>H($e,Ve)))},le=($e,Ve)=>(s.push(Ve),d[$e]={instance:Ve},v($e,"added"),Ve),ue=$e=>{delete l[$e],delete d[$e]},ge=($e,Ve)=>j(Ve)?j($e)?{prefix:"",resource:Ve,suffix:""}:{prefix:$e.prefix,resource:Ve,suffix:$e.suffix}:Ve,Me=($e,Ve)=>{if(l[$e])return Promise.resolve();let rt=j(Ve)?Ve:Ve.prefix+Ve.resource+Ve.suffix;rt.indexOf("/")!==0&&rt.indexOf("://")===-1&&(rt=nc.baseURL+"/"+rt),l[$e]=rt.substring(0,rt.lastIndexOf("/"));const ft=()=>(v($e,"loaded"),Promise.resolve());return d[$e]?ft():Aa.ScriptLoader.add(rt).then(ft)},He=($e,Ve="added")=>Ve==="added"&&$($e)||Ve==="loaded"&&w($e)?Promise.resolve():new Promise(rt=>{m.push({name:$e,state:Ve,resolve:rt})});return{items:s,urls:l,lookup:d,get:B,requireLangPack:G,add:le,remove:ue,createUrl:ge,load:Me,waitFor:He}};nc.languageLoad=!0,nc.baseURL="",nc.PluginManager=nc(),nc.ThemeManager=nc(),nc.ModelManager=nc();const aw=s=>{const l=Ai(de.none()),d=()=>l.get().each(s);return{clear:()=>{d(),l.set(de.none())},isSet:()=>l.get().isSome(),get:()=>l.get(),set:B=>{d(),l.set(de.some(B))}}},lw=s=>{const l=Ai(de.none()),d=()=>l.get().each(B=>clearInterval(B));return{clear:()=>{d(),l.set(de.none())},isSet:()=>l.get().isSome(),get:()=>l.get(),set:B=>{d(),l.set(de.some(setInterval(B,s)))}}},fm=()=>{const s=aw(St);return{...s,on:d=>s.get().each(d)}},O1=(s,l)=>{let d=null;return{cancel:()=>{ne(d)||(clearTimeout(d),d=null)},throttle:(...w)=>{ne(d)&&(d=setTimeout(()=>{d=null,s.apply(null,w)},l))}}},_b=(s,l)=>{let d=null;const m=()=>{ne(d)||(clearTimeout(d),d=null)};return{cancel:m,throttle:(...w)=>{m(),d=setTimeout(()=>{d=null,s.apply(null,w)},l)}}},wb=je("mce-annotation"),If=je("data-mce-annotation"),vg=je("data-mce-annotation-uid"),hm=je("data-mce-annotation-active"),ip=je("data-mce-annotation-classes"),ap=je("data-mce-annotation-attrs"),ZO=s=>l=>dt(l,s),Xi=(s,l)=>{const d=s.selection.getRng(),m=qe.fromDom(d.startContainer),v=qe.fromDom(s.getBody()),w=l.fold(()=>"."+wb(),H=>`[${If()}="${H}"]`),$=nu(m,d.startOffset).getOr(m);return Rc($,w,ZO(v)).bind(H=>aa(H,`${vg()}`).bind(G=>aa(H,`${If()}`).map(le=>{const ue=qO(s,G);return{uid:G,name:le,elements:ue}})))},UO=s=>Ra(s)&&zu(s,wb()),Og=(s,l)=>Zi(s,"data-mce-bogus")||F0(s,'[data-mce-bogus="all"]',ZO(l)),qO=(s,l)=>{const d=qe.fromDom(s.getBody()),m=Fa(d,`[${vg()}="${l}"]`);return xt(m,v=>!Og(v,d))},Sb=(s,l)=>{const d=qe.fromDom(s.getBody()),m=Fa(d,`[${If()}="${l}"]`),v={};return Ne(m,w=>{if(!Og(w,d)){const $=Ja(w,vg()),B=ro(v,$).getOr([]);v[$]=B.concat([w])}}),v},Ql=(s,l)=>{const d=Ai({}),m=()=>({listeners:[],previous:fm()}),v=(ue,ge)=>{w(ue,Me=>(ge(Me),Me))},w=(ue,ge)=>{const Me=d.get(),He=ro(Me,ue).getOrThunk(m),$e=ge(He);Me[ue]=$e,d.set(Me)},$=(ue,ge,Me)=>{v(ue,He=>{Ne(He.listeners,$e=>$e(!0,ue,{uid:ge,nodes:pt(Me,Ve=>Ve.dom)}))})},B=ue=>{v(ue,ge=>{Ne(ge.listeners,Me=>Me(!1,ue))})},H=(ue,ge)=>{Ne(qO(s,ue),Me=>{ge?Sr(Me,hm(),"true"):ii(Me,hm())})},G=_b(()=>{const ue=ms(l.getNames());Ne(ue,ge=>{w(ge,Me=>{const He=Me.previous.get();return Xi(s,de.some(ge)).fold(()=>{He.each($e=>{B(ge),Me.previous.clear(),H($e,!1)})},({uid:$e,name:Ve,elements:rt})=>{Or(He,$e)||(He.each(ft=>H(ft,!1)),$(Ve,$e,rt),Me.previous.set($e),H($e,!0))}),{previous:Me.previous,listeners:Me.listeners}})})},30);return s.on("remove",()=>{G.cancel()}),s.on("NodeChange",()=>{G.throttle()}),{addListener:(ue,ge)=>{w(ue,Me=>({previous:Me.previous,listeners:Me.listeners.concat([ge])}))}}},cu=(s,l)=>{const d=If(),m=w=>de.from(w.attr(d)).bind(l.lookup),v=w=>{var $,B;w.attr(vg(),null),w.attr(If(),null),w.attr(hm(),null);const H=de.from(w.attr(ap())).map(ge=>ge.split(",")).getOr([]),G=de.from(w.attr(ip())).map(ge=>ge.split(",")).getOr([]);Ne(H,ge=>w.attr(ge,null));const le=(B=($=w.attr("class"))===null||$===void 0?void 0:$.split(" "))!==null&&B!==void 0?B:[],ue=Ki(le,[wb()].concat(G));w.attr("class",ue.length>0?ue.join(" "):null),w.attr(ip(),null),w.attr(ap(),null)};s.serializer.addTempAttr(hm()),s.serializer.addAttributeFilter(d,w=>{for(const $ of w)m($).each(B=>{B.persistent===!1&&($.name==="span"?$.unwrap():v($))})})},XO=()=>{const s={};return{register:(v,w)=>{s[v]={name:v,settings:w}},lookup:v=>ro(s,v).map(w=>w.settings),getNames:()=>ts(s)}};let lp=0;const cp=s=>{const d=new Date().getTime(),m=Math.floor(Math.random()*1e9);return lp++,s+"_"+m+lp+String(d)},cw=(s,l)=>{Ne(l,d=>{Ou(s,d)})},jO=(s,l)=>{Ne(l,d=>{hl(s,d)})},K0=(s,l)=>qe.fromDom(s.dom.cloneNode(l)),uu=s=>K0(s,!1),Cb=s=>K0(s,!0),oa=(s,l)=>{const d=qe.fromTag(l),m=md(s);return $c(d,m),d},uf=(s,l)=>{const d=oa(s,l);Bl(s,d);const m=Ci(s);return lr(d,m),$s(s),d},yg=(s,l,d=Fe)=>{const m=new Hr(s,l),v=w=>{let $;do $=m[w]();while($&&!un($)&&!d($));return de.from($).filter(un)};return{current:()=>de.from(m.current()).filter(un),next:()=>v("next"),prev:()=>v("prev"),prev2:()=>v("prev2")}},mm=(s,l)=>{const d=l||($=>s.isBlock($)||Js($)||ys($)),m=($,B,H,G)=>{if(un($)){const le=G($,B,$.data);if(le!==-1)return de.some({container:$,offset:le})}return H().bind(le=>m(le.container,le.offset,H,G))};return{backwards:($,B,H,G)=>{const le=yg($,G??s.getRoot(),d);return m($,B,()=>le.prev().map(ue=>({container:ue,offset:ue.length})),H).getOrNull()},forwards:($,B,H,G)=>{const le=yg($,G??s.getRoot(),d);return m($,B,()=>le.next().map(ue=>({container:ue,offset:0})),H).getOrNull()}}},up=Math.round,dp=s=>s?{left:up(s.left),top:up(s.top),bottom:up(s.bottom),right:up(s.right),width:up(s.width),height:up(s.height)}:{left:0,top:0,bottom:0,right:0,width:0,height:0},Ah=(s,l)=>(s=dp(s),l||(s.left=s.left+s.width),s.right=s.left,s.width=0,s),YO=(s,l)=>s.left===l.left&&s.top===l.top&&s.bottom===l.bottom&&s.right===l.right,fp=(s,l,d)=>s>=0&&s<=Math.min(l.height,d.height)/2,pm=(s,l)=>{const d=Math.min(l.height/2,s.height/2);return s.bottom-dl.bottom?!1:fp(l.top-s.bottom,s,l)},gm=(s,l)=>s.top>l.bottom?!0:s.bottoml>=s.left&&l<=s.right&&d>=s.top&&d<=s.bottom,uw=s=>Dn(s,(l,d)=>l.fold(()=>de.some(d),m=>{const v=Math.min(d.left,m.left),w=Math.min(d.top,m.top),$=Math.max(d.right,m.right),B=Math.max(d.bottom,m.bottom);return de.some({top:w,right:$,bottom:B,left:v,width:$-v,height:B-w})}),de.none()),ev=(s,l,d)=>{const m=Math.max(Math.min(l,s.left+s.width),s.left),v=Math.max(Math.min(d,s.top+s.height),s.top);return Math.sqrt((l-m)*(l-m)+(d-v)*(d-v))},dw=(s,l)=>Math.max(0,Math.min(s.bottom,l.bottom)-Math.max(s.top,l.top)),kb=(s,l,d)=>Math.min(Math.max(s,l),d),_g=s=>{const l=s.startContainer,d=s.startOffset;return l===s.endContainer&&l.hasChildNodes()&&s.endOffset===d+1?l.childNodes[d]:null},du=(s,l)=>{if(Zn(s)&&s.hasChildNodes()){const d=s.childNodes,m=kb(l,0,d.length-1);return d[m]}else return s},GO=(s,l)=>{if(!(l<0&&Zn(s)&&s.hasChildNodes()))return du(s,l)},wg=new RegExp("[̀-ͯ҃-҇҈-҉֑-ֽֿׁ-ׂׄ-ׇׅؐ-ًؚ-ٰٟۖ-ۜ۟-ۤۧ-۪ۨ-ܑۭܰ-݊ަ-ް߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣣ-ंऺ़ु-ै्॑-ॗॢ-ॣঁ়াু-ৄ্ৗৢ-ৣਁ-ਂ਼ੁ-ੂੇ-ੈੋ-੍ੑੰ-ੱੵઁ-ં઼ુ-ૅે-ૈ્ૢ-ૣଁ଼ାିୁ-ୄ୍ୖୗୢ-ୣஂாீ்ௗఀా-ీె-ైొ-్ౕ-ౖౢ-ౣಁ಼ಿೂೆೌ-್ೕ-ೖೢ-ೣഁാു-ൄ്ൗൢ-ൣ්ාි-ුූෟัิ-ฺ็-๎ັິ-ູົ-ຼ່-ໍ༘-ཱ༹༙༵༷-ཾྀ-྄྆-྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္-်ွ-ှၘ-ၙၞ-ၠၱ-ၴႂႅ-ႆႍႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒ-ᝓᝲ-ᝳ឴-឵ិ-ួំ៉-៓៝᠋-᠍ᢩᤠ-ᤢᤧ-ᤨᤲ᤹-᤻ᨗ-ᨘᨛᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼᪰-᪽᪾ᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀ-ᮁᮢ-ᮥᮨ-ᮩ᮫-ᮭ᯦ᯨ-ᯩᯭᯯ-ᯱᰬ-ᰳᰶ-᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸-᳹᷀-᷵᷼-᷿‌-‍⃐-⃜⃝-⃠⃡⃢-⃤⃥-⃰⳯-⵿⳱ⷠ-〪ⷿ-〭〮-゙〯-゚꙯꙰-꙲ꙴ-꙽ꚞ-ꚟ꛰-꛱ꠂ꠆ꠋꠥ-ꠦ꣄꣠-꣱ꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꧥꨩ-ꨮꨱ-ꨲꨵ-ꨶꩃꩌꩼꪰꪲ-ꪴꪷ-ꪸꪾ-꪿꫁ꫬ-ꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-゙︯-゚]"),KO=s=>j(s)&&s.charCodeAt(0)>=768&&wg.test(s),fw=(...s)=>l=>{for(let d=0;dl=>{for(let d=0;ds?s.createRange():Jr.DOM.createRng(),$h=s=>j(s)&&/[\r\n\t ]/.test(s),Tb=s=>!!s.setStart&&!!s.setEnd,_1=s=>{const l=s.startContainer,d=s.startOffset;if($h(s.toString())&&Sg(l.parentNode)&&un(l)){const m=l.data;if($h(m[d-1])||$h(m[d+1]))return!0}return!1},w1=s=>{const l=s.ownerDocument,d=ff(l),m=l.createTextNode(Fs),v=s.parentNode;v.insertBefore(m,s),d.setStart(m,0),d.setEnd(m,1);const w=dp(d.getBoundingClientRect());return v.removeChild(m),w},tv=s=>{const l=s.startContainer,d=s.endContainer,m=s.startOffset,v=s.endOffset;if(l===d&&un(d)&&m===0&&v===1){const w=s.cloneRange();return w.setEndAfter(d),ed(w)}else return null},Ab=s=>s.left===0&&s.right===0&&s.top===0&&s.bottom===0,ed=s=>{var l;let d;const m=s.getClientRects();return m.length>0?d=dp(m[0]):d=dp(s.getBoundingClientRect()),!Tb(s)&&Cg(s)&&Ab(d)?w1(s):Ab(d)&&Tb(s)&&(l=tv(s))!==null&&l!==void 0?l:d},Nd=(s,l)=>{const d=Ah(s,l);return d.width=1,d.right=d.left+1,d},hw=s=>{const l=[],d=$=>{$.height!==0&&(l.length>0&&YO($,l[l.length-1])||l.push($))},m=($,B)=>{const H=ff($.ownerDocument);if(B<$.data.length){if(KO($.data[B]))return;if(KO($.data[B-1])&&(H.setStart($,B),H.setEnd($,B+1),!_1(H))){d(Nd(ed(H),!1));return}}B>0&&(H.setStart($,B-1),H.setEnd($,B),_1(H)||d(Nd(ed(H),!1))),B<$.data.length&&(H.setStart($,B),H.setEnd($,B+1),_1(H)||d(Nd(ed(H),!0)))},v=s.container(),w=s.offset();if(Er(v))return m(v,w),l;if(bm(v))if(s.isAtEnd()){const $=wa(v,w);Er($)&&m($,$.data.length),df($)&&!Cg($)&&d(Nd(ed($),!1))}else{const $=wa(v,w);if(Er($)&&m($,0),df($)&&s.isAtEnd())return d(Nd(ed($),!1)),l;const B=wa(s.container(),s.offset()-1);df(B)&&!Cg(B)&&(Ps(B)||Ps($)||!df($))&&d(Nd(ed(B),!1)),df($)&&d(Nd(ed($),!0))}return l},Dt=(s,l,d)=>{const m=()=>(Er(s),l===0),v=()=>Er(s)?l>=s.data.length:l>=s.childNodes.length,w=()=>{const le=ff(s.ownerDocument);return le.setStart(s,l),le.setEnd(s,l),le},$=()=>(d||(d=hw(Dt(s,l))),d),B=()=>$().length>0,H=le=>le&&s===le.container()&&l===le.offset(),G=le=>wa(s,le?l-1:l);return{container:je(s),offset:je(l),toRange:w,getClientRects:$,isVisible:B,isAtStart:m,isAtEnd:v,isEqual:H,getNode:G}};Dt.fromRangeStart=s=>Dt(s.startContainer,s.startOffset),Dt.fromRangeEnd=s=>Dt(s.endContainer,s.endOffset),Dt.after=s=>Dt(s.parentNode,Eb(s)+1),Dt.before=s=>Dt(s.parentNode,Eb(s)),Dt.isAbove=(s,l)=>yr(Oo(l.getClientRects()),wo(s.getClientRects()),pm).getOr(!1),Dt.isBelow=(s,l)=>yr(wo(l.getClientRects()),Oo(s.getClientRects()),gm).getOr(!1),Dt.isAtStart=s=>s?s.isAtStart():!1,Dt.isAtEnd=s=>s?s.isAtEnd():!1,Dt.isTextPosition=s=>s?un(s.container()):!1,Dt.isElementPosition=s=>!Dt.isTextPosition(s);const hp=(s,l)=>{un(l)&&l.data.length===0&&s.remove(l)},mp=(s,l,d)=>{l.insertNode(d),hp(s,d.previousSibling),hp(s,d.nextSibling)},Au=(s,l,d)=>{const m=de.from(d.firstChild),v=de.from(d.lastChild);l.insertNode(d),m.each(w=>hp(s,w.previousSibling)),v.each(w=>hp(s,w.nextSibling))},nv=(s,l,d)=>{li(d)?Au(s,l,d):mp(s,l,d)},bi=un,$b=Su,Ph=Jr.nodeIndex,ov=s=>{const l=s.parentNode;return $b(l)?ov(l):l},Pb=s=>s?Ge(s.childNodes,(l,d)=>($b(d)&&d.nodeName!=="BR"?l=l.concat(Pb(d)):l.push(d),l),[]):[],sv=(s,l)=>{let d=s;for(;(d=d.previousSibling)&&bi(d);)l+=d.data.length;return l},S1=s=>l=>s===l,kg=s=>{let l,d;l=Pb(ov(s)),d=Xe(l,S1(s),s),l=l.slice(0,d+1);const m=Ge(l,(v,w,$)=>(bi(w)&&bi(l[$-1])&&v++,v),0);return l=cc(l,ea([s.nodeName])),d=Xe(l,S1(s),s),d-m},rv=s=>(bi(s)?"text()":s.nodeName.toLowerCase())+"["+kg(s)+"]",mw=(s,l,d)=>{const m=[];for(let v=l.parentNode;v&&v!==s;v=v.parentNode)m.push(v);return m},sa=(s,l)=>{let d=[],m=l.container(),v=l.offset(),w;if(bi(m))w=sv(m,v);else{const B=m.childNodes;v>=B.length?(w="after",v=B.length-1):w="before",m=B[v]}d.push(rv(m));let $=mw(s,m);return $=cc($,ct(Su)),d=d.concat(Di($,B=>rv(B))),d.reverse().join("/")+","+w},Qa=(s,l,d)=>{let m=Pb(s);return m=cc(m,(v,w)=>!bi(v)||!bi(m[w-1])),m=cc(m,ea([l])),m[d]},kl=(s,l)=>{let d=s,m=0;for(;bi(d);){const v=d.data.length;if(l>=m&&l<=m+v){s=d,l=l-m;break}if(!bi(d.nextSibling)){s=d,l=v;break}m+=v,d=d.nextSibling}return bi(s)&&l>s.data.length&&(l=s.data.length),Dt(s,l)},Va=(s,l)=>{if(!l)return null;const d=l.split(","),m=d[0].split("/"),v=d.length>1?d[1]:"before",w=Ge(m,($,B)=>{const H=/([\w\-\(\)]+)\[([0-9]+)\]/.exec(B);return H?(H[1]==="text()"&&(H[1]="#text"),Qa($,H[1],parseInt(H[2],10))):null},s);if(!w)return null;if(!bi(w)&&w.parentNode){let $;return v==="after"?$=Ph(w)+1:$=Ph(w),Dt(w.parentNode,$)}return kl(w,parseInt(v,10))},os=ys,oc=(s,l,d)=>{let m=s(l.data.slice(0,d)).length;for(let v=l.previousSibling;v&&un(v);v=v.previousSibling)m+=s(v.data).length;return m},zr=(s,l,d,m,v)=>{const w=v?m.startContainer:m.endContainer;let $=v?m.startOffset:m.endOffset;const B=[],H=s.getRoot();if(un(w))B.push(d?oc(l,w,$):$);else{let G=0;const le=w.childNodes;$>=le.length&&le.length&&(G=1,$=Math.max(0,le.length-1)),B.push(s.nodeIndex(le[$],d)+G)}for(let G=w;G&&G!==H;G=G.parentNode)B.push(s.nodeIndex(G,d));return B},za=(s,l,d,m)=>{const v=l.dom,w=zr(v,s,d,m,!0),$=l.isForward(),B=uh(m)?{isFakeCaret:!0}:{};if(l.isCollapsed())return{start:w,forward:$,...B};{const H=zr(v,s,d,m,!1);return{start:w,end:H,forward:$,...B}}},C1=(s,l,d)=>{let m=0;return cn.each(s.select(l),v=>{if(v.getAttribute("data-mce-bogus")!=="all"){if(v===d)return!1;m++;return}}),m},Bf=(s,l)=>{let d=l?s.startContainer:s.endContainer,m=l?s.startOffset:s.endOffset;if(Zn(d)&&d.nodeName==="TR"){const v=d.childNodes;d=v[Math.min(l?m:m-1,v.length-1)],d&&(m=l?0:d.childNodes.length,l?s.setStart(d,m):s.setEnd(d,m))}},k1=s=>(Bf(s,!0),Bf(s,!1),s),iv=(s,l)=>{if(Zn(s)&&(s=du(s,l),os(s)))return s;if(ao(s)){un(s)&&gn(s)&&(s=s.parentNode);let d=s.previousSibling;if(os(d)||(d=s.nextSibling,os(d)))return d}},JO=s=>iv(s.startContainer,s.startOffset)||iv(s.endContainer,s.endOffset),Db=(s,l,d)=>{const m=d.getNode(),v=d.getRng();if(m.nodeName==="IMG"||os(m)){const $=m.nodeName;return{name:$,index:C1(d.dom,$,m)}}const w=JO(v);if(w){const $=w.tagName;return{name:$,index:C1(d.dom,$,w)}}return za(s,d,l,v)},av=s=>{const l=s.getRng();return{start:sa(s.dom.getRoot(),Dt.fromRangeStart(l)),end:sa(s.dom.getRoot(),Dt.fromRangeEnd(l)),forward:s.isForward()}},lv=s=>({rng:s.getRng(),forward:s.isForward()}),pw=(s,l,d)=>{const m={"data-mce-type":"bookmark",id:l,style:"overflow:hidden;line-height:0px"};return d?s.create("span",m,""):s.create("span",m)},Lf=(s,l)=>{const d=s.dom;let m=s.getRng();const v=d.uniqueId(),w=s.isCollapsed(),$=s.getNode(),B=$.nodeName,H=s.isForward();if(B==="IMG")return{name:B,index:C1(d,B,$)};const G=k1(m.cloneRange());if(!w){G.collapse(!1);const ue=pw(d,v+"_end",l);nv(d,G,ue)}m=k1(m),m.collapse(!0);const le=pw(d,v+"_start",l);return nv(d,m,le),s.moveToBookmark({id:v,keep:!0,forward:H}),{id:v,forward:H}},ey=(s,l,d=!1)=>l===2?Db(ve,d,s):l===3?av(s):l?lv(s):Lf(s,!1),Dh=Ue(Db,mn,!0),ha=s=>{const l=w=>w(s),d=je(s),m=()=>v,v={tag:!0,inner:s,fold:(w,$)=>$(s),isValue:mt,isError:Fe,map:w=>zc.value(w(s)),mapError:m,bind:l,exists:l,forall:l,getOr:d,or:m,getOrThunk:d,orThunk:m,getOrDie:d,each:w=>{w(s)},toOptional:()=>de.some(s)};return v},Wa=s=>{const l=()=>d,d={tag:!1,inner:s,fold:(m,v)=>m(s),isValue:Fe,isError:mt,map:l,mapError:m=>zc.error(m(s)),bind:l,exists:Fe,forall:mt,getOr:mn,or:mn,getOrThunk:Zt,orThunk:Zt,getOrDie:dn(String(s)),each:St,toOptional:de.none};return d},zc={value:ha,error:Wa,fromOption:(s,l)=>s.fold(()=>Wa(l),ha)},hf={generate:s=>{if(!_e(s))throw new Error("cases must be an array");if(s.length===0)throw new Error("there must be at least one case");const l=[],d={};return Ne(s,(m,v)=>{const w=ts(m);if(w.length!==1)throw new Error("one and only one name per case");const $=w[0],B=m[$];if(d[$]!==void 0)throw new Error("duplicate key detected:"+$);if($==="cata")throw new Error("cannot have a case named cata (sorry)");if(!_e(B))throw new Error("case arguments must be an array");l.push($),d[$]=(...H)=>{const G=H.length;if(G!==B.length)throw new Error("Wrong number of arguments to case "+$+". Expected "+B.length+" ("+B+"), got "+G);return{fold:(...ue)=>{if(ue.length!==s.length)throw new Error("Wrong number of arguments to fold. Expected "+s.length+", got "+ue.length);return ue[v].apply(null,H)},match:ue=>{const ge=ts(ue);if(l.length!==ge.length)throw new Error("Wrong number of arguments to match. Expected: "+l.join(",")+` -Actual: `+ge.join(","));if(!Vs(l,He=>gt(ge,He)))throw new Error("Not all branches were specified when using match. Specified: "+ge.join(", ")+` -Required: `+l.join(", "));return ue[$].apply(null,H)},log:ue=>{console.log(ue,{constructors:l,constructor:$,params:H})}}}}),d}};hf.generate([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const On=s=>{const l=[],d=[];return Ne(s,m=>{m.fold(v=>{l.push(v)},v=>{d.push(v)})}),{errors:l,values:d}},cv=s=>s.type==="inline-command"||s.type==="inline-format",Za=s=>s.type==="block-command"||s.type==="block-format",uv=s=>{const l=m=>zc.error({message:m,pattern:s}),d=(m,v,w)=>{if(s.format!==void 0){let $;if(_e(s.format)){if(!Vs(s.format,j))return l(m+" pattern has non-string items in the `format` array");$=s.format}else if(j(s.format))$=[s.format];else return l(m+" pattern has non-string `format` parameter");return zc.value(v($))}else return s.cmd!==void 0?j(s.cmd)?zc.value(w(s.cmd,s.value)):l(m+" pattern has non-string `cmd` parameter"):l(m+" pattern is missing both `format` and `cmd` parameters")};if(!ae(s))return l("Raw pattern is not an object");if(!j(s.start))return l("Raw pattern is missing `start` parameter");if(s.end!==void 0){if(!j(s.end))return l("Inline pattern has non-string `end` parameter");if(s.start.length===0&&s.end.length===0)return l("Inline pattern has empty `start` and `end` parameters");let m=s.start,v=s.end;return v.length===0&&(v=m,m=""),d("Inline",w=>({type:"inline-format",start:m,end:v,format:w}),(w,$)=>({type:"inline-command",start:m,end:v,cmd:w,value:$}))}else return s.replacement!==void 0?j(s.replacement)?s.start.length===0?l("Replacement pattern has empty `start` parameter"):zc.value({type:"inline-command",start:"",end:s.start,cmd:"mceInsertContent",value:s.replacement}):l("Replacement pattern has non-string `replacement` parameter"):s.start.length===0?l("Block pattern has empty `start` parameter"):d("Block",m=>({type:"block-format",start:s.start,format:m[0]}),(m,v)=>({type:"block-command",start:s.start,cmd:m,value:v}))},vm=s=>xt(s,Za),x1=s=>xt(s,cv),Wc=(s,l)=>({inlinePatterns:x1(s),blockPatterns:vm(s),dynamicPatternsLookup:l}),ty=s=>{const l=On(pt(s,uv));return Ne(l.errors,d=>console.error(d.message,d.pattern)),l.values},E1=s=>l=>{const d=s(l);return ty(d)},ji=Ko().deviceType,mf=ji.isTouch(),T1=Jr.DOM,Ff=s=>{const l=s.indexOf("=")>0?s.split(/[;,](?![^=;,]*(?:[;,]|$))/):s.split(",");return Dn(l,(d,m)=>{const v=m.split("="),w=v[0],$=v.length>1?v[1]:w;return d[Pl(w)]=Pl($),d},{})},Id=s=>te(s,RegExp),Hn=s=>l=>l.options.get(s),$u=s=>j(s)||ae(s),dv=(s,l="")=>d=>{const m=j(d);if(m)if(d.indexOf("=")!==-1){const v=Ff(d);return{value:ro(v,s.id).getOr(l),valid:m}}else return{value:d,valid:m};else return{valid:!1,message:"Must be a string."}},Hf=s=>{const l=s.options.register;l("id",{processor:"string",default:s.id}),l("selector",{processor:"string"}),l("target",{processor:"object"}),l("suffix",{processor:"string"}),l("cache_suffix",{processor:"string"}),l("base_url",{processor:"string"}),l("referrer_policy",{processor:"string",default:""}),l("language_load",{processor:"boolean",default:!0}),l("inline",{processor:"boolean",default:!1}),l("iframe_attrs",{processor:"object",default:{}}),l("doctype",{processor:"string",default:""}),l("document_base_url",{processor:"string",default:s.documentBaseUrl}),l("body_id",{processor:dv(s,"tinymce"),default:"tinymce"}),l("body_class",{processor:dv(s),default:""}),l("content_security_policy",{processor:"string",default:""}),l("br_in_pre",{processor:"boolean",default:!0}),l("forced_root_block",{processor:d=>{const m=j(d)&&Ls(d);return m?{value:d,valid:m}:{valid:!1,message:"Must be a non-empty string."}},default:"p"}),l("forced_root_block_attrs",{processor:"object",default:{}}),l("newline_behavior",{processor:d=>{const m=gt(["block","linebreak","invert","default"],d);return m?{value:d,valid:m}:{valid:!1,message:"Must be one of: block, linebreak, invert or default."}},default:"default"}),l("br_newline_selector",{processor:"string",default:".mce-toc h2,figcaption,caption"}),l("no_newline_selector",{processor:"string",default:""}),l("keep_styles",{processor:"boolean",default:!0}),l("end_container_on_empty_block",{processor:d=>Se(d)?{valid:!0,value:d}:j(d)?{valid:!0,value:d}:{valid:!1,message:"Must be boolean or a string"},default:"blockquote"}),l("font_size_style_values",{processor:"string",default:"xx-small,x-small,small,medium,large,x-large,xx-large"}),l("font_size_legacy_values",{processor:"string",default:"xx-small,small,medium,large,x-large,xx-large,300%"}),l("font_size_classes",{processor:"string",default:""}),l("automatic_uploads",{processor:"boolean",default:!0}),l("images_reuse_filename",{processor:"boolean",default:!1}),l("images_replace_blob_uris",{processor:"boolean",default:!0}),l("icons",{processor:"string",default:""}),l("icons_url",{processor:"string",default:""}),l("images_upload_url",{processor:"string",default:""}),l("images_upload_base_path",{processor:"string",default:""}),l("images_upload_credentials",{processor:"boolean",default:!1}),l("images_upload_handler",{processor:"function"}),l("language",{processor:"string",default:"en"}),l("language_url",{processor:"string",default:""}),l("entity_encoding",{processor:"string",default:"named"}),l("indent",{processor:"boolean",default:!0}),l("indent_before",{processor:"string",default:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,details,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist"}),l("indent_after",{processor:"string",default:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,details,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist"}),l("indent_use_margin",{processor:"boolean",default:!1}),l("indentation",{processor:"string",default:"40px"}),l("content_css",{processor:d=>{const m=d===!1||j(d)||Tt(d,j);return m?j(d)?{value:pt(d.split(","),Pl),valid:m}:_e(d)?{value:d,valid:m}:d===!1?{value:[],valid:m}:{value:d,valid:m}:{valid:!1,message:"Must be false, a string or an array of strings."}},default:Ov(s)?[]:["default"]}),l("content_style",{processor:"string"}),l("content_css_cors",{processor:"boolean",default:!1}),l("font_css",{processor:d=>{const m=j(d)||Tt(d,j);return m?{value:_e(d)?d:pt(d.split(","),Pl),valid:m}:{valid:!1,message:"Must be a string or an array of strings."}},default:[]}),l("inline_boundaries",{processor:"boolean",default:!0}),l("inline_boundaries_selector",{processor:"string",default:"a[href],code,span.mce-annotation"}),l("object_resizing",{processor:d=>{const m=Se(d)||j(d);return m?d===!1||ji.isiPhone()||ji.isiPad()?{value:"",valid:m}:{value:d===!0?"table,img,figure.image,div,video,iframe":d,valid:m}:{valid:!1,message:"Must be boolean or a string"}},default:!mf}),l("resize_img_proportional",{processor:"boolean",default:!0}),l("event_root",{processor:"object"}),l("service_message",{processor:"string"}),l("theme",{processor:d=>d===!1||j(d)||Oe(d),default:"silver"}),l("theme_url",{processor:"string"}),l("formats",{processor:"object"}),l("format_empty_lines",{processor:"boolean",default:!1}),l("format_noneditable_selector",{processor:"string",default:""}),l("preview_styles",{processor:d=>{const m=d===!1||j(d);return m?{value:d===!1?"":d,valid:m}:{valid:!1,message:"Must be false or a string"}},default:"font-family font-size font-weight font-style text-decoration text-transform color background-color border border-radius outline text-shadow"}),l("custom_ui_selector",{processor:"string",default:""}),l("hidden_input",{processor:"boolean",default:!0}),l("submit_patch",{processor:"boolean",default:!0}),l("encoding",{processor:"string"}),l("add_form_submit_trigger",{processor:"boolean",default:!0}),l("add_unload_trigger",{processor:"boolean",default:!0}),l("custom_undo_redo_levels",{processor:"number",default:0}),l("disable_nodechange",{processor:"boolean",default:!1}),l("readonly",{processor:"boolean",default:!1}),l("editable_root",{processor:"boolean",default:!0}),l("plugins",{processor:"string[]",default:[]}),l("external_plugins",{processor:"object"}),l("forced_plugins",{processor:"string[]"}),l("model",{processor:"string",default:s.hasPlugin("rtc")?"plugin":"dom"}),l("model_url",{processor:"string"}),l("block_unsupported_drop",{processor:"boolean",default:!0}),l("visual",{processor:"boolean",default:!0}),l("visual_table_class",{processor:"string",default:"mce-item-table"}),l("visual_anchor_class",{processor:"string",default:"mce-item-anchor"}),l("iframe_aria_text",{processor:"string",default:"Rich Text Area. Press ALT-0 for help."}),l("setup",{processor:"function"}),l("init_instance_callback",{processor:"function"}),l("url_converter",{processor:"function",default:s.convertURL}),l("url_converter_scope",{processor:"object",default:s}),l("urlconverter_callback",{processor:"function"}),l("allow_conditional_comments",{processor:"boolean",default:!1}),l("allow_html_data_urls",{processor:"boolean",default:!1}),l("allow_svg_data_urls",{processor:"boolean"}),l("allow_html_in_named_anchor",{processor:"boolean",default:!1}),l("allow_script_urls",{processor:"boolean",default:!1}),l("allow_unsafe_link_target",{processor:"boolean",default:!1}),l("convert_fonts_to_spans",{processor:"boolean",default:!0,deprecated:!0}),l("fix_list_elements",{processor:"boolean",default:!1}),l("preserve_cdata",{processor:"boolean",default:!1}),l("remove_trailing_brs",{processor:"boolean",default:!0}),l("pad_empty_with_br",{processor:"boolean",default:!1}),l("inline_styles",{processor:"boolean",default:!0,deprecated:!0}),l("element_format",{processor:"string",default:"html"}),l("entities",{processor:"string"}),l("schema",{processor:"string",default:"html5"}),l("convert_urls",{processor:"boolean",default:!0}),l("relative_urls",{processor:"boolean",default:!0}),l("remove_script_host",{processor:"boolean",default:!0}),l("custom_elements",{processor:"string"}),l("extended_valid_elements",{processor:"string"}),l("invalid_elements",{processor:"string"}),l("invalid_styles",{processor:$u}),l("valid_children",{processor:"string"}),l("valid_classes",{processor:$u}),l("valid_elements",{processor:"string"}),l("valid_styles",{processor:$u}),l("verify_html",{processor:"boolean",default:!0}),l("auto_focus",{processor:d=>j(d)||d===!0}),l("browser_spellcheck",{processor:"boolean",default:!1}),l("protect",{processor:"array"}),l("images_file_types",{processor:"string",default:"jpeg,jpg,jpe,jfi,jif,jfif,png,gif,bmp,webp"}),l("deprecation_warnings",{processor:"boolean",default:!0}),l("a11y_advanced_options",{processor:"boolean",default:!1}),l("api_key",{processor:"string"}),l("paste_block_drop",{processor:"boolean",default:!1}),l("paste_data_images",{processor:"boolean",default:!0}),l("paste_preprocess",{processor:"function"}),l("paste_postprocess",{processor:"function"}),l("paste_webkit_styles",{processor:"string",default:"none"}),l("paste_remove_styles_if_webkit",{processor:"boolean",default:!0}),l("paste_merge_formats",{processor:"boolean",default:!0}),l("smart_paste",{processor:"boolean",default:!0}),l("paste_as_text",{processor:"boolean",default:!1}),l("paste_tab_spaces",{processor:"number",default:4}),l("text_patterns",{processor:d=>Tt(d,ae)||d===!1?{value:ty(d===!1?[]:d),valid:!0}:{valid:!1,message:"Must be an array of objects or false."},default:[{start:"*",end:"*",format:"italic"},{start:"**",end:"**",format:"bold"},{start:"#",format:"h1"},{start:"##",format:"h2"},{start:"###",format:"h3"},{start:"####",format:"h4"},{start:"#####",format:"h5"},{start:"######",format:"h6"},{start:"1. ",cmd:"InsertOrderedList"},{start:"* ",cmd:"InsertUnorderedList"},{start:"- ",cmd:"InsertUnorderedList"}]}),l("text_patterns_lookup",{processor:d=>Oe(d)?{value:E1(d),valid:!0}:{valid:!1,message:"Must be a single function"},default:d=>[]}),l("noneditable_class",{processor:"string",default:"mceNonEditable"}),l("editable_class",{processor:"string",default:"mceEditable"}),l("noneditable_regexp",{processor:d=>Tt(d,Id)?{value:d,valid:!0}:Id(d)?{value:[d],valid:!0}:{valid:!1,message:"Must be a RegExp or an array of RegExp."},default:[]}),l("table_tab_navigation",{processor:"boolean",default:!0}),l("highlight_on_focus",{processor:"boolean",default:!1}),l("xss_sanitization",{processor:"boolean",default:!0}),l("details_initial_state",{processor:d=>{const m=gt(["inherited","collapsed","expanded"],d);return m?{value:d,valid:m}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),l("details_serialized_state",{processor:d=>{const m=gt(["inherited","collapsed","expanded"],d);return m?{value:d,valid:m}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),l("init_content_sync",{processor:"boolean",default:!1}),l("newdocument_content",{processor:"string",default:""}),l("force_hex_color",{processor:d=>{const m=["always","rgb_only","off"],v=gt(m,d);return v?{value:d,valid:v}:{valid:!1,message:`Must be one of: ${m.join(", ")}.`}},default:"off"}),l("sandbox_iframes",{processor:"boolean",default:!1}),l("convert_unsafe_embeds",{processor:"boolean",default:!1}),s.on("ScriptsLoaded",()=>{l("directionality",{processor:"string",default:Md.isRtl()?"rtl":void 0}),l("placeholder",{processor:"string",default:T1.getAttrib(s.getElement(),"placeholder")})})},cr=Hn("iframe_attrs"),fv=Hn("doctype"),Pu=Hn("document_base_url"),Rb=Hn("body_id"),bw=Hn("body_class"),vi=Hn("content_security_policy"),vw=Hn("br_in_pre"),Vl=Hn("forced_root_block"),Om=Hn("forced_root_block_attrs"),Ow=Hn("newline_behavior"),yw=Hn("br_newline_selector"),hv=Hn("no_newline_selector"),_w=Hn("keep_styles"),ny=Hn("end_container_on_empty_block"),oy=Hn("automatic_uploads"),A1=Hn("images_reuse_filename"),sy=Hn("images_replace_blob_uris"),mv=Hn("icons"),pp=Hn("icons_url"),ww=Hn("images_upload_url"),Sw=Hn("images_upload_base_path"),pv=Hn("images_upload_credentials"),gv=Hn("images_upload_handler"),Rh=Hn("content_css_cors"),fs=Hn("referrer_policy"),bv=Hn("language"),sc=Hn("language_url"),Mb=Hn("indent_use_margin"),xl=Hn("indentation"),Zc=Hn("content_css"),Nb=Hn("content_style"),ry=Hn("font_css"),Cw=Hn("directionality"),iy=Hn("inline_boundaries_selector"),xg=Hn("object_resizing"),ay=Hn("resize_img_proportional"),rC=Hn("placeholder"),Mh=Hn("event_root"),kw=Hn("service_message"),Eg=Hn("theme"),xw=Hn("theme_url"),Ib=Hn("model"),vv=Hn("model_url"),gp=Hn("inline_boundaries"),Ew=Hn("formats"),ly=Hn("preview_styles"),cy=Hn("format_empty_lines"),pf=Hn("format_noneditable_selector"),uy=Hn("custom_ui_selector"),Ov=Hn("inline"),Tw=Hn("hidden_input"),dy=Hn("submit_patch"),Qf=Hn("add_form_submit_trigger"),Tg=Hn("add_unload_trigger"),Ag=Hn("custom_undo_redo_levels"),Bb=Hn("disable_nodechange"),$1=Hn("readonly"),td=Hn("editable_root"),$g=Hn("content_css_cors"),P1=Hn("plugins"),ym=Hn("external_plugins"),Lb=Hn("block_unsupported_drop"),Aw=Hn("visual"),$w=Hn("visual_table_class"),fy=Hn("visual_anchor_class"),Pw=Hn("iframe_aria_text"),yv=Hn("setup"),Dw=Hn("init_instance_callback"),Rw=Hn("urlconverter_callback"),hy=Hn("auto_focus"),Mw=Hn("browser_spellcheck"),my=Hn("protect"),Nw=Hn("paste_block_drop"),Fb=Hn("paste_data_images"),Iw=Hn("paste_preprocess"),py=Hn("paste_postprocess"),Pg=Hn("newdocument_content"),_v=Hn("paste_webkit_styles"),wv=Hn("paste_remove_styles_if_webkit"),Sv=Hn("paste_merge_formats"),Hb=Hn("smart_paste"),Qb=Hn("paste_as_text"),gy=Hn("paste_tab_spaces"),Vb=Hn("allow_html_data_urls"),zb=Hn("text_patterns"),Bw=Hn("text_patterns_lookup"),D1=Hn("noneditable_class"),by=Hn("editable_class"),Lw=Hn("noneditable_regexp"),Cv=Hn("preserve_cdata"),Du=Hn("highlight_on_focus"),_m=Hn("xss_sanitization"),Fw=Hn("init_content_sync"),kv=s=>s.options.isSet("text_patterns_lookup"),Hw=s=>cn.explode(s.options.get("font_size_style_values")),Qw=s=>cn.explode(s.options.get("font_size_classes")),xv=s=>s.options.get("encoding")==="xml",vy=s=>cn.explode(s.options.get("images_file_types")),Ev=Hn("table_tab_navigation"),bl=Hn("details_initial_state"),iC=Hn("details_serialized_state"),Dg=Hn("force_hex_color"),Wb=Hn("sandbox_iframes"),Tv=Zn,Av=un,Oy=s=>{const l=s.parentNode;l&&l.removeChild(s)},yy=s=>{const l=ve(s);return{count:s.length-l.length,text:l}},Nh=s=>{let l;for(;(l=s.data.lastIndexOf(z))!==-1;)s.deleteData(l,1)},bp=(s,l)=>(Ua(s),l),Vw=(s,l)=>{const d=yy(s.data.substr(0,l.offset())),m=yy(s.data.substr(l.offset()));return(d.text+m.text).length>0?(Nh(s),Dt(s,l.offset()-d.count)):l},zw=(s,l)=>{const d=l.container(),m=cs(Gs(d.childNodes),s).map(v=>vAv(s)&&l.container()===s?Vw(s,l):bp(s,l),$v=(s,l)=>l.container()===s.parentNode?zw(s,l):bp(s,l),_y=(s,l)=>Dt.isTextPosition(l)?R1(s,l):$v(s,l),Ua=s=>{Tv(s)&&ao(s)&&(Uo(s)?s.removeAttribute("data-mce-caret"):Oy(s)),Av(s)&&(Nh(s),s.data.length===0&&Oy(s))},wy=ys,Pv=Qr,aC=lh,Rg="*[contentEditable=false],video,audio,embed,object",Ww=(s,l,d)=>{const m=Ah(l.getBoundingClientRect(),d);let v,w;if(s.tagName==="BODY"){const B=s.ownerDocument.documentElement;v=s.scrollLeft||B.scrollLeft,w=s.scrollTop||B.scrollTop}else{const B=s.getBoundingClientRect();v=s.scrollLeft-B.left,w=s.scrollTop-B.top}m.left+=v,m.right+=v,m.top+=w,m.bottom+=w,m.width=1;let $=l.offsetWidth-l.clientWidth;return $>0&&(d&&($*=-1),m.left+=$,m.right+=$),m},Sy=s=>{var l,d;const m=Fa(qe.fromDom(s),Rg);for(let v=0;v{const v=fm();let w,$;const B=Vl(s),H=s.dom,G=($e,Ve)=>{let rt;if(le(),aC(Ve))return null;if(d(Ve)){const ft=gc(B,Ve,$e),ut=Ww(l,Ve,$e);H.setStyle(ft,"top",ut.top),$=ft;const kt=H.create("div",{class:"mce-visual-caret","data-mce-bogus":"all"});H.setStyles(kt,{...ut}),H.add(l,kt),v.set({caret:kt,element:Ve,before:$e}),$e&&H.addClass(kt,"mce-visual-caret-before"),ue(),rt=Ve.ownerDocument.createRange(),rt.setStart(ft,0),rt.setEnd(ft,0)}else return $=_i(Ve,$e),rt=Ve.ownerDocument.createRange(),Zb($.nextSibling)?(rt.setStart($,0),rt.setEnd($,0)):(rt.setStart($,1),rt.setEnd($,1)),rt;return rt},le=()=>{Sy(l),$&&(Ua($),$=null),v.on($e=>{H.remove($e.caret),v.clear()}),w&&(clearInterval(w),w=void 0)},ue=()=>{w=setInterval(()=>{v.on($e=>{m()?H.toggleClass($e.caret,"mce-visual-caret-hidden"):H.addClass($e.caret,"mce-visual-caret-hidden")})},500)};return{show:G,hide:le,getCss:()=>".mce-visual-caret {position: absolute;background-color: black;background-color: currentcolor;}.mce-visual-caret-hidden {display: none;}*[data-mce-caret] {position: absolute;left: -1000px;right: auto;top: 0;margin: 0;padding: 0;}",reposition:()=>{v.on($e=>{const Ve=Ww(l,$e.element,$e.before);H.setStyles($e.caret,{...Ve})})},destroy:()=>clearInterval(w)}},M1=()=>Mn.browser.isFirefox(),Zb=s=>wy(s)||Pv(s),Mg=s=>(Zb(s)||wd(s)&&M1())&&br(qe.fromDom(s)).exists(Zo),Zw=wl,wm=ys,Cy=Qr,Sm=tf("display","block table table-cell table-caption list-item"),Cm=ao,E=gn,D=Zn,Z=un,ce=_s,Ce=s=>s>0,ze=s=>s<0,it=(s,l)=>{let d;for(;d=s(l);)if(!E(d))return d;return null},bt=(s,l,d,m,v)=>{const w=new Hr(s,m),$=wm(s)||E(s);let B;if(ze(l)){if($&&(B=it(w.prev.bind(w),!0),d(B)))return B;for(;B=it(w.prev.bind(w),v);)if(d(B))return B}if(Ce(l)){if($&&(B=it(w.next.bind(w),!0),d(B)))return B;for(;B=it(w.next.bind(w),v);)if(d(B))return B}return null},Lt=(s,l)=>{const d=v=>Zw(v.dom),m=v=>v.dom===l;return Rr(qe.fromDom(s),d,m).map(v=>v.dom).getOr(l)},wn=(s,l)=>{for(;s&&s!==l;){if(Sm(s))return s;s=s.parentNode}return null},_n=(s,l,d)=>wn(s.container(),d)===wn(l.container(),d),Bn=(s,l)=>{if(!l)return de.none();const d=l.container(),m=l.offset();return D(d)?de.from(d.childNodes[m+s]):de.none()},yo=(s,l)=>{var d;const v=((d=l.ownerDocument)!==null&&d!==void 0?d:document).createRange();return s?(v.setStartBefore(l),v.setEndBefore(l)):(v.setStartAfter(l),v.setEndAfter(l)),v},jo=(s,l,d)=>wn(l,s)===wn(d,s),Cs=(s,l,d)=>{const m=s?"previousSibling":"nextSibling";let v=d;for(;v&&v!==l;){let w=v[m];if(w&&Cm(w)&&(w=w[m]),wm(w)||Cy(w)){if(jo(l,w,v))return w;break}if(ce(w))break;v=v.parentNode}return null},nr=Ue(yo,!0),bs=Ue(yo,!1),Tr=(s,l,d)=>{let m;const v=Ue(Cs,!0,l),w=Ue(Cs,!1,l),$=d.startContainer,B=d.startOffset;if(gn($)){const H=Z($)?$.parentNode:$,G=H.getAttribute("data-mce-caret");if(G==="before"&&(m=H.nextSibling,Mg(m)))return nr(m);if(G==="after"&&(m=H.previousSibling,Mg(m)))return bs(m)}if(!d.collapsed)return d;if(un($)){if(Cm($)){if(s===1){if(m=w($),m)return nr(m);if(m=v($),m)return bs(m)}if(s===-1){if(m=v($),m)return bs(m);if(m=w($),m)return nr(m)}return d}if(Bc($)&&B>=$.data.length-1)return s===1&&(m=w($),m)?nr(m):d;if(Cl($)&&B<=1)return s===-1&&(m=v($),m)?bs(m):d;if(B===$.data.length)return m=w($),m?nr(m):d;if(B===0)return m=v($),m?bs(m):d}return d},Wr=(s,l)=>Bn(s?0:-1,l).filter(wm),El=(s,l,d)=>{const m=Tr(s,l,d);return s===-1?Dt.fromRangeStart(m):Dt.fromRangeEnd(m)},rc=s=>de.from(s.getNode()).map(qe.fromDom),nd=s=>de.from(s.getNode(!0)).map(qe.fromDom),rl=(s,l)=>{let d=l;for(;d=s(d);)if(d.isVisible())return d;return d},od=(s,l)=>{const d=_n(s,l);return!d&&Js(s.getNode())?!0:d};var ei;(function(s){s[s.Backwards=-1]="Backwards",s[s.Forwards=1]="Forwards"})(ei||(ei={}));const Uw=ys,vp=un,lC=Zn,ky=Js,Ng=_s,Oc=gi,Ub=Fc,Rv=(s,l)=>{const d=[];let m=s;for(;m&&m!==l;)d.push(m),m=m.parentNode;return d},qb=(s,l)=>s.hasChildNodes()&&l{if(Ce(s)){if(Ng(l.previousSibling)&&!vp(l.previousSibling))return Dt.before(l);if(vp(l))return Dt(l,0)}if(ze(s)){if(Ng(l.nextSibling)&&!vp(l.nextSibling))return Dt.after(l);if(vp(l))return Dt(l,l.data.length)}return ze(s)?ky(l)?Dt.before(l):Dt.after(l):Dt.before(l)},Xb=(s,l)=>{const d=l.nextSibling;return d&&Ng(d)?vp(d)?Dt(d,0):Dt.before(d):N1(ei.Forwards,Dt.after(l),s)},N1=(s,l,d)=>{let m,v,w,$;if(!lC(d)||!l)return null;if(l.isEqual(Dt.after(d))&&d.lastChild){if($=Dt.after(d.lastChild),ze(s)&&Ng(d.lastChild)&&lC(d.lastChild))return ky(d.lastChild)?Dt.before(d.lastChild):$}else $=l;const B=$.container();let H=$.offset();if(vp(B)){if(ze(s)&&H>0)return Dt(B,--H);if(Ce(s)&&H0&&(v=qb(B,H-1),Ng(v)))return!Oc(v)&&(w=bt(v,s,Ub,v),w)?vp(w)?Dt(w,w.data.length):Dt.after(w):vp(v)?Dt(v,v.data.length):Dt.before(v);if(Ce(s)&&H({next:l=>N1(ei.Forwards,l,s),prev:l=>N1(ei.Backwards,l,s)}),HE=(s,l,d)=>{const m=s?Dt.before(d):Dt.after(d);return zl(s,l,m)},QE=s=>Js(s)?Dt.before(s):Dt.after(s),Ig=s=>Dt.isTextPosition(s)?s.offset()===0:_s(s.getNode()),jb=s=>{if(Dt.isTextPosition(s)){const l=s.container();return s.offset()===l.data.length}else return _s(s.getNode(!0))},xy=(s,l)=>!Dt.isTextPosition(s)&&!Dt.isTextPosition(l)&&s.getNode()===l.getNode(!0),km=s=>!Dt.isTextPosition(s)&&Js(s.getNode()),Xw=(s,l,d)=>s?!xy(l,d)&&!km(l)&&jb(l)&&Ig(d):!xy(d,l)&&Ig(l)&&jb(d),zl=(s,l,d)=>{const m=Ih(l);return de.from(s?m.next(d):m.prev(d))},Op=(s,l,d)=>zl(s,l,d).bind(m=>_n(d,m,l)&&Xw(s,d,m)?zl(s,l,m):de.some(m)),Vf=(s,l,d,m)=>Op(s,l,d).bind(v=>m(v)?Vf(s,l,v,m):de.some(v)),Yb=(s,l)=>{const d=s?l.firstChild:l.lastChild;return un(d)?de.some(Dt(d,s?0:d.data.length)):d?_s(d)?de.some(s?Dt.before(d):QE(d)):HE(s,l,d):de.none()},Uc=Ue(zl,!0),Ru=Ue(zl,!1),hu=Ue(Yb,!0),zf=Ue(Yb,!1),Ey="_mce_caret",Bd=s=>Zn(s)&&s.id===Ey,I1=(s,l)=>{let d=l;for(;d&&d!==s;){if(Bd(d))return d;d=d.parentNode}return null},jw=s=>j(s.start),VE=s=>an(s,"rng"),cC=s=>an(s,"id"),Mv=s=>an(s,"name"),uC=s=>cn.isArray(s.start),Nv=s=>!Mv(s)&&Se(s.forward)?s.forward:!0,Ty=(s,l)=>(Zn(l)&&s.isBlock(l)&&!l.innerHTML&&(l.innerHTML='
    '),l),zE=(s,l)=>{const d=de.from(Va(s.getRoot(),l.start)),m=de.from(Va(s.getRoot(),l.end));return yr(d,m,(v,w)=>{const $=s.createRng();return $.setStart(v.container(),v.offset()),$.setEnd(w.container(),w.offset()),{range:$,forward:Nv(l)}})},dC=(s,l)=>{var d;const v=((d=s.ownerDocument)!==null&&d!==void 0?d:document).createTextNode(z);s.appendChild(v),l.setStart(v,0),l.setEnd(v,0)},WE=s=>!s.hasChildNodes(),o4=(s,l)=>zf(s).fold(Fe,d=>(l.setStart(d.container(),d.offset()),l.setEnd(d.container(),d.offset()),!0)),fC=(s,l,d)=>WE(l)&&I1(s,l)?(dC(l,d),!0):!1,Is=(s,l,d,m)=>{const v=d[l?"start":"end"],w=s.getRoot();if(v){let $=w,B=v[0];for(let H=v.length-1;$&&H>=1;H--){const G=$.childNodes;if(fC(w,$,m))return!0;if(v[H]>G.length-1)return fC(w,$,m)?!0:o4($,m);$=G[v[H]]}un($)&&(B=Math.min(v[0],$.data.length)),Zn($)&&(B=Math.min(v[0],$.childNodes.length)),l?m.setStart($,B):m.setEnd($,B)}return!0},Bh=s=>un(s)&&s.data.length>0,B1=(s,l,d)=>{const m=s.get(d.id+"_"+l),v=m==null?void 0:m.parentNode,w=d.keep;if(m&&v){let $,B;if(l==="start"?w?m.hasChildNodes()?($=m.firstChild,B=1):Bh(m.nextSibling)?($=m.nextSibling,B=0):Bh(m.previousSibling)?($=m.previousSibling,B=m.previousSibling.data.length):($=v,B=s.nodeIndex(m)+1):($=v,B=s.nodeIndex(m)):w?m.hasChildNodes()?($=m.firstChild,B=1):Bh(m.previousSibling)?($=m.previousSibling,B=m.previousSibling.data.length):($=v,B=s.nodeIndex(m)):($=v,B=s.nodeIndex(m)),!w){const H=m.previousSibling,G=m.nextSibling;cn.each(cn.grep(m.childNodes),ue=>{un(ue)&&(ue.data=ue.data.replace(/\uFEFF/g,""))});let le;for(;le=s.get(d.id+"_"+l);)s.remove(le,!0);if(un(G)&&un(H)&&!Mn.browser.isOpera()){const ue=H.data.length;H.appendData(G.data),s.remove(G),$=H,B=ue}}return de.some(Dt($,B))}else return de.none()},Yw=(s,l)=>{const d=s.createRng();return Is(s,!0,l,d)&&Is(s,!1,l,d)?de.some({range:d,forward:Nv(l)}):de.none()},hC=(s,l)=>{const d=B1(s,"start",l),m=B1(s,"end",l);return yr(d,m.or(d),(v,w)=>{const $=s.createRng();return $.setStart(Ty(s,v.container()),v.offset()),$.setEnd(Ty(s,w.container()),w.offset()),{range:$,forward:Nv(l)}})},Iv=(s,l)=>de.from(s.select(l.name)[l.index]).map(d=>{const m=s.createRng();return m.selectNode(d),{range:m,forward:!0}}),ZE=(s,l)=>{const d=s.dom;if(l){if(uC(l))return Yw(d,l);if(jw(l))return zE(d,l);if(cC(l))return hC(d,l);if(Mv(l))return Iv(d,l);if(VE(l))return de.some({range:l.rng,forward:Nv(l)})}return de.none()},Gb=(s,l,d)=>ey(s,l,d),Ay=(s,l)=>{ZE(s,l).each(({range:d,forward:m})=>{s.setRng(d,m)})},Ld=s=>Zn(s)&&s.tagName==="SPAN"&&s.getAttribute("data-mce-type")==="bookmark",$y=(s=>l=>s===l)(Fs),Kb=s=>s!==""&&` \f -\r \v`.indexOf(s)!==-1,Bg=s=>!Kb(s)&&!$y(s)&&!Li(s),Py=s=>{const l=[];if(s)for(let d=0;dNs(s,l=>{const d=_g(l);return d?[qe.fromDom(d)]:[]}),L1=s=>Py(s).length>1,UE=s=>xt(Dy(s),Kl),mC=s=>Fa(s,"td[data-mce-selected],th[data-mce-selected]"),qE=(s,l)=>{const d=mC(l);return d.length>0?d:UE(s)},Jb=s=>qE(Py(s.selection.getSel()),qe.fromDom(s.getBody())),yp=(s,l)=>Dc(s,"table",l),XE=s=>{const l=s.startContainer,d=s.startOffset;return un(l)?d===0?de.some(qe.fromDom(l)):de.none():de.from(l.childNodes[d]).map(qe.fromDom)},jE=s=>{const l=s.endContainer,d=s.endOffset;return un(l)?d===l.data.length?de.some(qe.fromDom(l)):de.none():de.from(l.childNodes[d-1]).map(qe.fromDom)},pC=s=>Dr(s).fold(je([s]),l=>[s].concat(pC(l))),Gw=s=>Pc(s).fold(je([s]),l=>Os(l)==="br"?Ui(l).map(d=>[s].concat(Gw(d))).getOr([]):[s].concat(Gw(l))),Kw=(s,l)=>yr(XE(l),jE(l),(d,m)=>{const v=Gn(pC(s),Ue(dt,d)),w=Gn(Gw(s),Ue(dt,m));return v.isSome()&&w.isSome()}).getOr(!1),Jw=(s,l,d,m)=>{const v=d,w=new Hr(d,v),$=Ft(s.schema.getMoveCaretBeforeOnEnterElements(),(H,G)=>!gt(["td","th","table"],G.toLowerCase()));let B=d;do{if(un(B)&&cn.trim(B.data).length!==0){m?l.setStart(B,0):l.setEnd(B,B.data.length);return}if($[B.nodeName]){m?l.setStartBefore(B):B.nodeName==="BR"?l.setEndBefore(B):l.setEndAfter(B);return}}while(B=m?w.next():w.prev());v.nodeName==="BODY"&&(m?l.setStart(v,0):l.setEnd(v,v.childNodes.length))},Ry=s=>{const l=s.selection.getSel();return Te(l)&&l.rangeCount>0},Lg=(s,l)=>{const d=Jb(s);d.length>0?Ne(d,m=>{const v=m.dom,w=s.dom.createRng();w.setStartBefore(v),w.setEndAfter(v),l(w,!0)}):l(s.selection.getRng(),!1)},gC=(s,l,d)=>{const m=Lf(s,l);d(m),s.moveToBookmark(m)},Bv=s=>yt(s==null?void 0:s.nodeType),eS=s=>Zn(s)&&!Ld(s)&&!Bd(s)&&!Su(s),YE=(s,l)=>{if(eS(l)&&!/^(TD|TH)$/.test(l.nodeName)){const d=s.getAttrib(l,"data-mce-selected"),m=parseInt(d,10);return!isNaN(m)&&m>0}else return!1},Lv=(s,l,d)=>{const{selection:m,dom:v}=s,w=m.getNode(),$=ys(w);gC(m,!0,()=>{l()}),$&&ys(w)&&v.isChildOf(w,s.getBody())?s.selection.select(w):d(m.getStart())&&GE(v,m)},GE=(s,l)=>{var d,m;const v=l.getRng(),{startContainer:w,startOffset:$}=v,B=l.getNode();if(!YE(s,B)&&Zn(w)){const H=w.childNodes,G=s.getRoot();let le;if(${if(s){const m=l?"nextSibling":"previousSibling";for(s=s[m];s;s=s[m])if(Zn(s)||!$a(s))return s}},il=(s,l)=>!!s.getTextBlockElements()[l.nodeName.toLowerCase()]||gs(s,l),_p=(s,l,d)=>s.schema.isValidChild(l,d),$a=(s,l=!1)=>{if(Te(s)&&un(s)){const d=l?s.data.replace(/ /g," "):s.data;return hh(d)}else return!1},gf=s=>Te(s)&&un(s)&&s.length===0,My=(s,l)=>{const d="[data-mce-cef-wrappable]",m=pf(s),v=Ji(m)?d:`${d},${m}`;return mc(qe.fromDom(l),v)},Fv=(s,l)=>{const d=s.dom;return eS(l)&&d.getContentEditable(l)==="false"&&My(s,l)&&d.select('[contenteditable="true"]',l).length===0},Lh=(s,l)=>Oe(s)?s(l):(Te(l)&&(s=s.replace(/%(\w+)/g,(d,m)=>l[m]||d)),s),Ny=(s,l)=>(s=s||"",l=l||"",s=""+(s.nodeName||s),l=""+(l.nodeName||l),s.toLowerCase()===l.toLowerCase()),Iy=(s,l)=>{if(Be(s))return null;{let d=String(s);return(l==="color"||l==="backgroundColor")&&(d=lu(d)),l==="fontWeight"&&s===700&&(d="bold"),l==="fontFamily"&&(d=d.replace(/[\'\"]/g,"").replace(/,\s+/g,",")),d}},e0=(s,l,d)=>{const m=s.getStyle(l,d);return Iy(m,d)},bC=(s,l)=>{let d;return s.getParent(l,m=>Zn(m)?(d=s.getStyle(m,"text-decoration"),!!d&&d!=="none"):!1),d},Hv=(s,l,d)=>s.getParents(l,d,s.getRoot()),tS=(s,l,d)=>{const m=s.formatter.get(l);return Te(m)&&Ut(m,d)},nS=(s,l)=>tS(s,l,m=>{const v=w=>Oe(w)||w.length>1&&w.charAt(0)==="%";return Ut(["styles","attributes"],w=>ro(m,w).exists($=>{const B=_e($)?$:Xn($);return Ut(B,v)}))}),KE=(s,l,d)=>{const m=["inline","block","selector","attributes","styles","classes"],v=w=>Ft(w,($,B)=>Ut(m,H=>H===B));return tS(s,l,w=>{const $=v(w);return tS(s,d,B=>{const H=v(B);return io($,H)})})},Fh=s=>Do(s,"block"),By=s=>Fh(s)&&s.wrapper===!0,t0=s=>Fh(s)&&s.wrapper!==!0,ic=s=>Do(s,"selector"),qa=s=>Do(s,"inline"),Ly=s=>ic(s)&&qa(s)&&Or(ro(s,"mixed"),!0),Qv=s=>ic(s)&&s.expand!==!1&&!qa(s),Fy=s=>{const l=[];let d=s;for(;d;){if(un(d)&&d.data!==z||d.childNodes.length>1)return[];Zn(d)&&l.push(d),d=d.firstChild}return l},Vv=s=>Fy(s).length>0,zv=s=>Bd(s.dom)&&Vv(s.dom),n0=Ld,vC=Hv,Wv=$a,OC=il,yC=s=>Js(s)&&s.getAttribute("data-mce-bogus")&&!s.nextSibling,_C=(s,l)=>{let d=l;for(;d;){if(Zn(d)&&s.getContentEditable(d))return s.getContentEditable(d)==="false"?d:l;d=d.parentNode}return l},bf=(s,l,d,m)=>{const v=l.data;if(s){for(let w=d;w>0;w--)if(m(v.charAt(w-1)))return w}else for(let w=d;wbf(s,l,d,m=>$y(m)||Kb(m)),Wf=(s,l,d)=>bf(s,l,d,Bg),Mu=(s,l,d,m,v,w)=>{let $;const B=s.getParent(d,s.isBlock)||l,H=(le,ue,ge)=>{const Me=mm(s),He=v?Me.backwards:Me.forwards;return de.from(He(le,ue,($e,Ve)=>n0($e.parentNode)?-1:($=$e,ge(v,$e,Ve)),B))};return H(d,m,yc).bind(le=>w?H(le.container,le.offset+(v?-1:0),Wf):de.some(le)).orThunk(()=>$?de.some({container:$,offset:v?0:$.length}):de.none())},Zv=(s,l,d,m,v)=>{const w=m[v];un(m)&&Ji(m.data)&&w&&(m=w);const $=vC(s,m);for(let B=0;B<$.length;B++)for(let H=0;H{var v;let w=d;const $=s.getRoot(),B=l[0];if(Fh(B)&&(w=B.wrapper?null:s.getParent(d,B.block,$)),!w){const H=(v=s.getParent(d,"LI,TD,TH,SUMMARY"))!==null&&v!==void 0?v:$;w=s.getParent(un(d)?d.parentNode:d,G=>G!==$&&OC(s.schema,G),H)}if(w&&Fh(B)&&B.wrapper&&(w=vC(s,w,"ul,ol").reverse()[0]||w),!w)for(w=d;w&&w[m]&&!s.isBlock(w[m])&&(w=w[m],!Ny(w,"br")););return w||d},wC=(s,l,d,m)=>{const v=d.parentNode;return Te(d[m])?!1:v===l||Be(v)||s.isBlock(v)?!0:wC(s,l,v,m)},Uv=(s,l,d,m,v)=>{let w=d;const $=v?"previousSibling":"nextSibling",B=s.getRoot();if(un(d)&&!Wv(d)&&(v?m>0:mn0(s.parentNode)||n0(s),wp=(s,l,d,m=!1)=>{let{startContainer:v,startOffset:w,endContainer:$,endOffset:B}=l;const H=d[0];return Zn(v)&&v.hasChildNodes()&&(v=du(v,w),un(v)&&(w=0)),Zn($)&&$.hasChildNodes()&&($=du($,l.collapsed?B:B-1),un($)&&(B=$.data.length)),v=_C(s,v),$=_C(s,$),JE(v)&&(v=n0(v)?v:v.parentNode,l.collapsed?v=v.previousSibling||v:v=v.nextSibling||v,un(v)&&(w=l.collapsed?v.length:0)),JE($)&&($=n0($)?$:$.parentNode,l.collapsed?$=$.nextSibling||$:$=$.previousSibling||$,un($)&&(B=l.collapsed?0:$.length)),l.collapsed&&(Mu(s,s.getRoot(),v,w,!0,m).each(({container:ue,offset:ge})=>{v=ue,w=ge}),Mu(s,s.getRoot(),$,B,!1,m).each(({container:ue,offset:ge})=>{$=ue,B=ge})),(qa(H)||H.block_expand)&&((!qa(H)||!un(v)||w===0)&&(v=Uv(s,d,v,w,!0)),(!qa(H)||!un($)||B===$.data.length)&&($=Uv(s,d,$,B,!1))),Qv(H)&&(v=Zv(s,d,l,v,"previousSibling"),$=Zv(s,d,l,$,"nextSibling")),(Fh(H)||ic(H))&&(v=Hy(s,d,v,"previousSibling"),$=Hy(s,d,$,"nextSibling"),Fh(H)&&(s.isBlock(v)||(v=Uv(s,d,v,w,!0)),s.isBlock($)||($=Uv(s,d,$,B,!1)))),Zn(v)&&v.parentNode&&(w=s.nodeIndex(v),v=v.parentNode),Zn($)&&$.parentNode&&(B=s.nodeIndex($)+1,$=$.parentNode),{startContainer:v,startOffset:w,endContainer:$,endOffset:B}},qv=(s,l,d)=>{var m;const v=l.startOffset,w=du(l.startContainer,v),$=l.endOffset,B=du(l.endContainer,$-1),H=Ve=>{const rt=Ve[0];un(rt)&&rt===w&&v>=rt.data.length&&Ve.splice(0,1);const ft=Ve[Ve.length-1];return $===0&&Ve.length>0&&ft===B&&un(ft)&&Ve.splice(Ve.length-1,1),Ve},G=(Ve,rt,ft)=>{const ut=[];for(;Ve&&Ve!==ft;Ve=Ve[rt])ut.push(Ve);return ut},le=(Ve,rt)=>s.getParent(Ve,ft=>ft.parentNode===rt,rt),ue=(Ve,rt,ft)=>{const ut=ft?"nextSibling":"previousSibling";for(let kt=Ve,en=kt.parentNode;kt&&kt!==rt;kt=en){en=kt.parentNode;const vn=G(kt===Ve?kt:kt[ut],ut);vn.length&&(ft||vn.reverse(),d(H(vn)))}};if(w===B)return d(H([w]));const ge=(m=s.findCommonAncestor(w,B))!==null&&m!==void 0?m:s.getRoot();if(s.isChildOf(w,B))return ue(w,ge,!0);if(s.isChildOf(B,w))return ue(B,ge);const Me=le(w,ge)||w,He=le(B,ge)||B;ue(w,Me,!0);const $e=G(Me===w?Me:Me.nextSibling,"nextSibling",He===B?He.nextSibling:He);$e.length&&d(H($e)),ue(B,He)},oS=['pre[class*=language-][contenteditable="false"]',"figure.image","div[data-ephox-embed-iri]","div.tiny-pageembed","div.mce-toc","div[data-mce-toc]"],SC=s=>va(s)&&Ic(s)===z,CC=(s,l,d,m)=>gr(l).fold(()=>"skipping",v=>m==="br"||SC(l)?"valid":UO(l)?"existing":Bd(l.dom)?"caret":Ut(oS,w=>mc(l,w))?"valid-block":!_p(s,d,m)||!_p(s,Os(v),d)?"invalid-child":"valid"),sS=(s,l)=>{const d=wp(s.dom,l,[{inline:"span"}]);l.setStart(d.startContainer,d.startOffset),l.setEnd(d.endContainer,d.endOffset),s.selection.setRng(l)},Qy=(s,l,d,m,v,w)=>{const{uid:$=l,...B}=d;Ou(s,wb()),Sr(s,`${vg()}`,$),Sr(s,`${If()}`,m);const{attributes:H={},classes:G=[]}=v($,B);if($c(s,H),cw(s,G),w){G.length>0&&Sr(s,`${ip()}`,G.join(","));const le=ts(H);le.length>0&&Sr(s,`${ap()}`,le.join(","))}},ti=s=>{hl(s,wb()),ii(s,`${vg()}`),ii(s,`${If()}`),ii(s,`${hm()}`);const l=aa(s,`${ap()}`).map(m=>m.split(",")).getOr([]),d=aa(s,`${ip()}`).map(m=>m.split(",")).getOr([]);Ne(l,m=>ii(s,m)),jO(s,d),ii(s,`${ip()}`),ii(s,`${ap()}`)},Sp=(s,l,d,m,v)=>{const w=qe.fromTag("span",s);return Qy(w,l,d,m,v,!1),w},kC=(s,l,d,m,v,w)=>{const $=[],B=Sp(s.getDoc(),d,w,m,v),H=fm(),G=()=>{H.clear()},le=()=>H.get().getOrThunk(()=>{const He=uu(B);return $.push(He),H.set(He),He}),ue=He=>{Ne(He,ge)},ge=He=>{switch(CC(s,He,"span",Os(He))){case"invalid-child":{G();const Ve=Ci(He);ue(Ve),G();break}case"valid-block":{G(),Qy(He,d,w,m,v,!0);break}case"valid":{const Ve=le();Xm(He,Ve);break}}},Me=He=>{const $e=pt(He,qe.fromDom);ue($e)};return qv(s.dom,l,He=>{G(),Me(He)}),$},rS=(s,l,d,m)=>{s.undoManager.transact(()=>{const v=s.selection,w=v.getRng(),$=Jb(s).length>0,B=cp("mce-annotation");if(w.collapsed&&!$&&sS(s,w),v.getRng().collapsed&&!$){const H=Sp(s.getDoc(),B,m,l,d.decorate);Nc(H,Fs),v.getRng().insertNode(H.dom),v.select(H.dom)}else gC(v,!1,()=>{Lg(s,H=>{kC(s,H,B,l,d.decorate,m)})})})},iS=s=>{const l=XO();cu(s,l);const d=Ql(s,l),m=fc("span"),v=w=>{Ne(w,$=>{m($)?La($):ti($)})};return{register:(w,$)=>{l.register(w,$)},annotate:(w,$)=>{l.lookup(w).each(B=>{rS(s,w,B,$)})},annotationChanged:(w,$)=>{d.addListener(w,$)},remove:w=>{Xi(s,de.some(w)).each(({elements:$})=>{const B=s.selection.getBookmark();v($),s.selection.moveToBookmark(B)})},removeAll:w=>{const $=s.selection.getBookmark();nn(Sb(s,w),(B,H)=>{v(B)}),s.selection.moveToBookmark($)},getAll:w=>{const $=Sb(s,w);return ns($,B=>pt(B,H=>H.dom))}}},F1=s=>({getBookmark:Ue(Gb,s),moveToBookmark:Ue(Ay,s)});F1.isBookmarkNode=Ld;const aS=(s,l,d)=>d.collapsed?!1:Ut(d.getClientRects(),m=>J0(m,s,l)),lS=(s,l)=>s.dispatch("PreProcess",l),eT=(s,l)=>s.dispatch("PostProcess",l),o0=s=>{s.dispatch("remove")},s0=s=>{s.dispatch("detach")},cS=(s,l)=>{s.dispatch("SwitchMode",{mode:l})},uS=(s,l,d,m,v)=>{s.dispatch("ObjectResizeStart",{target:l,width:d,height:m,origin:v})},Zf=(s,l,d,m,v)=>{s.dispatch("ObjectResized",{target:l,width:d,height:m,origin:v})},Fg=s=>{s.dispatch("PreInit")},tT=s=>{s.dispatch("PostRender")},Xv=s=>{s.dispatch("Init")},nT=(s,l)=>{s.dispatch("PlaceholderToggle",{state:l})},sd=(s,l,d)=>{s.dispatch(l,d)},_c=(s,l,d,m)=>{s.dispatch("FormatApply",{format:l,node:d,vars:m})},H1=(s,l,d,m)=>{s.dispatch("FormatRemove",{format:l,node:d,vars:m})},s4=(s,l)=>s.dispatch("BeforeSetContent",l),xC=(s,l)=>s.dispatch("SetContent",l),oT=(s,l)=>s.dispatch("BeforeGetContent",l),Ds=(s,l)=>s.dispatch("GetContent",l),dS=(s,l)=>{s.dispatch("AutocompleterStart",l)},EC=(s,l)=>{s.dispatch("AutocompleterUpdate",l)},fS=s=>{s.dispatch("AutocompleterEnd")},sT=(s,l,d)=>s.dispatch("PastePreProcess",{content:l,internal:d}),rT=(s,l,d)=>s.dispatch("PastePostProcess",{node:l,internal:d}),TC=(s,l)=>s.dispatch("PastePlainTextToggle",{state:l}),iT=(s,l)=>s.dispatch("EditableRootStateChange",{state:l}),zn={BACKSPACE:8,DELETE:46,DOWN:40,ENTER:13,ESC:27,LEFT:37,RIGHT:39,SPACEBAR:32,TAB:9,UP:38,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,modifierPressed:s=>s.shiftKey||s.ctrlKey||s.altKey||zn.metaKeyPressed(s),metaKeyPressed:s=>Mn.os.isMacOS()||Mn.os.isiOS()?s.metaKey:s.ctrlKey&&!s.altKey},Hg="data-mce-selected",AC="table,img,figure.image,hr,video,span.mce-preview-object,details",jv=Math.abs,Yv=Math.round,aT={nw:[0,0,-1,-1],ne:[1,0,1,-1],se:[1,1,1,1],sw:[0,1,-1,1]},r4=s=>s.type==="longpress"||s.type.indexOf("touch")===0,i4=(s,l)=>{const d=l.dom,m=l.getDoc(),v=document,w=l.getBody();let $,B,H,G,le,ue,ge,Me,He,$e,Ve,rt,ft,ut,kt,en,vn;const Fn=Sn=>Te(Sn)&&(Ei(Sn)||d.is(Sn,"figure.image")),zt=Sn=>Qr(Sn)||d.hasClass(Sn,"mce-preview-object"),It=(Sn,Qo)=>{if(r4(Sn)){const Qs=Sn.touches[0];return Fn(Sn.target)&&!aS(Qs.clientX,Qs.clientY,Qo)}else return Fn(Sn.target)&&!aS(Sn.clientX,Sn.clientY,Qo)},Jt=Sn=>{const Qo=Sn.target;It(Sn,l.selection.getRng())&&!Sn.isDefaultPrevented()&&l.selection.select(Qo)},qn=Sn=>d.hasClass(Sn,"mce-preview-object")&&Te(Sn.firstElementChild)?[Sn,Sn.firstElementChild]:d.is(Sn,"figure.image")?[Sn.querySelector("img")]:[Sn],mo=Sn=>{const Qo=xg(l);return!Qo||Sn.getAttribute("data-mce-resize")==="false"||Sn===l.getBody()?!1:d.hasClass(Sn,"mce-preview-object")&&Te(Sn.firstElementChild)?mc(qe.fromDom(Sn.firstElementChild),Qo):mc(qe.fromDom(Sn),Qo)},es=Sn=>zt(Sn)?d.create("img",{src:Mn.transparentSrc}):Sn.cloneNode(!0),Es=(Sn,Qo,Qs)=>{if(Te(Qs)){const ni=qn(Sn);Ne(ni,Br=>{Br.style[Qo]||!l.schema.isValid(Br.nodeName.toLowerCase(),Qo)?d.setStyle(Br,Qo,Qs):d.setAttrib(Br,Qo,""+Qs)})}},Ir=(Sn,Qo,Qs)=>{Es(Sn,"width",Qo),Es(Sn,"height",Qs)},hi=Sn=>{let Qo,Qs,ni,Br,Zl;Qo=Sn.screenX-ue,Qs=Sn.screenY-ge,ut=Qo*G[2]+$e,kt=Qs*G[3]+Ve,ut=ut<5?5:ut,kt=kt<5?5:kt,(Fn($)||zt($))&&ay(l)!==!1?ni=!zn.modifierPressed(Sn):ni=zn.modifierPressed(Sn),ni&&(jv(Qo)>jv(Qs)?(kt=Yv(ut*rt),ut=Yv(kt/rt)):(ut=Yv(kt/rt),kt=Yv(ut*rt))),Ir(B,ut,kt),Br=G.startPos.x+Qo,Zl=G.startPos.y+Qs,Br=Br>0?Br:0,Zl=Zl>0?Zl:0,d.setStyles(H,{left:Br,top:Zl,display:"block"}),H.innerHTML=ut+" × "+kt,G[2]<0&&B.clientWidth<=ut&&d.setStyle(B,"left",Me+($e-ut)),G[3]<0&&B.clientHeight<=kt&&d.setStyle(B,"top",He+(Ve-kt)),Qo=w.scrollWidth-en,Qs=w.scrollHeight-vn,Qo+Qs!==0&&d.setStyles(H,{left:Br-Qo,top:Zl-Qs}),ft||(uS(l,$,$e,Ve,"corner-"+G.name),ft=!0)},pa=()=>{const Sn=ft;ft=!1,Sn&&(Es($,"width",ut),Es($,"height",kt)),d.unbind(m,"mousemove",hi),d.unbind(m,"mouseup",pa),v!==m&&(d.unbind(v,"mousemove",hi),d.unbind(v,"mouseup",pa)),d.remove(B),d.remove(H),d.remove(le),Cc($),Sn&&(Zf(l,$,ut,kt,"corner-"+G.name),d.setAttrib($,"style",d.getAttrib($,"style"))),l.nodeChanged()},Cc=Sn=>{Rs();const Qo=d.getPos(Sn,w),Qs=Qo.x,ni=Qo.y,Br=Sn.getBoundingClientRect(),Zl=Br.width||Br.right-Br.left,Hm=Br.height||Br.bottom-Br.top;$!==Sn&&(En(),$=Sn,ut=kt=0);const n1=l.dispatch("ObjectSelected",{target:Sn});mo(Sn)&&!n1.isDefaultPrevented()?nn(aT,(ld,Xh)=>{const Xo=Pr=>{const Ca=qn($)[0];ue=Pr.screenX,ge=Pr.screenY,$e=Ca.clientWidth,Ve=Ca.clientHeight,rt=Ve/$e,G=ld,G.name=Xh,G.startPos={x:Zl*ld[0]+Qs,y:Hm*ld[1]+ni},en=w.scrollWidth,vn=w.scrollHeight,le=d.add(w,"div",{class:"mce-resize-backdrop","data-mce-bogus":"all"}),d.setStyles(le,{position:"fixed",left:"0",top:"0",width:"100%",height:"100%"}),B=es($),d.addClass(B,"mce-clonedresizable"),d.setAttrib(B,"data-mce-bogus","all"),B.contentEditable="false",d.setStyles(B,{left:Qs,top:ni,margin:0}),Ir(B,Zl,Hm),B.removeAttribute(Hg),w.appendChild(B),d.bind(m,"mousemove",hi),d.bind(m,"mouseup",pa),v!==m&&(d.bind(v,"mousemove",hi),d.bind(v,"mouseup",pa)),H=d.add(w,"div",{class:"mce-resize-helper","data-mce-bogus":"all"},$e+" × "+Ve)};let ir=d.get("mceResizeHandle"+Xh);ir&&d.remove(ir),ir=d.add(w,"div",{id:"mceResizeHandle"+Xh,"data-mce-bogus":"all",class:"mce-resizehandle",unselectable:!0,style:"cursor:"+Xh+"-resize; margin:0; padding:0"}),d.bind(ir,"mousedown",Pr=>{Pr.stopImmediatePropagation(),Pr.preventDefault(),Xo(Pr)}),ld.elm=ir,d.setStyles(ir,{left:Zl*ld[0]+Qs-ir.offsetWidth/2,top:Hm*ld[1]+ni-ir.offsetHeight/2})}):En(!1)},qr=O1(Cc,0),En=(Sn=!0)=>{qr.cancel(),Rs(),$&&Sn&&$.removeAttribute(Hg),nn(aT,(Qo,Qs)=>{const ni=d.get("mceResizeHandle"+Qs);ni&&(d.unbind(ni),d.remove(ni))})},Qn=(Sn,Qo)=>d.isChildOf(Sn,Qo),or=Sn=>{if(ft||l.removed||l.composing)return;const Qo=Sn.type==="mousedown"?Sn.target:s.getNode(),Qs=Rc(qe.fromDom(Qo),AC).map(Br=>Br.dom).filter(Br=>d.isEditable(Br.parentElement)||Br.nodeName==="IMG"&&d.isEditable(Br)).getOrUndefined(),ni=Te(Qs)?d.getAttrib(Qs,Hg,"1"):"1";if(Ne(d.select(`img[${Hg}],hr[${Hg}]`),Br=>{Br.removeAttribute(Hg)}),Te(Qs)&&Qn(Qs,w)&&l.hasFocus()){to();const Br=s.getStart(!0);if(Qn(Br,Qs)&&Qn(s.getEnd(!0),Qs)){d.setAttrib(Qs,Hg,ni),qr.throttle(Qs);return}}En()},Rs=()=>{nn(aT,Sn=>{Sn.elm&&(d.unbind(Sn.elm),delete Sn.elm)})},to=()=>{try{l.getDoc().execCommand("enableObjectResizing",!1,"false")}catch{}};return l.on("init",()=>{to(),l.on("NodeChange ResizeEditor ResizeWindow ResizeContent drop",or),l.on("keyup compositionend",Sn=>{$&&$.nodeName==="TABLE"&&or(Sn)}),l.on("hide blur",En),l.on("contextmenu longpress",Jt,!0)}),l.on("remove",Rs),{isResizable:mo,showResizeRect:Cc,hideResizeRect:En,updateResizeRect:or,destroy:()=>{qr.cancel(),$=B=le=null}}},BL=(s,l)=>{l.fold(d=>{s.setStartBefore(d.dom)},(d,m)=>{s.setStart(d.dom,m)},d=>{s.setStartAfter(d.dom)})},lT=(s,l)=>{l.fold(d=>{s.setEndBefore(d.dom)},(d,m)=>{s.setEnd(d.dom,m)},d=>{s.setEndAfter(d.dom)})},$C=(s,l,d)=>{const m=s.document.createRange();return BL(m,l),lT(m,d),m},ko=(s,l,d,m,v)=>{const w=s.document.createRange();return w.setStart(l.dom,d),w.setEnd(m.dom,v),w},Cp=hf.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),PC=(s,l,d)=>l(qe.fromDom(d.startContainer),d.startOffset,qe.fromDom(d.endContainer),d.endOffset),cT=(s,l)=>l.match({domRange:d=>({ltr:je(d),rtl:de.none}),relative:(d,m)=>({ltr:Qt(()=>$C(s,d,m)),rtl:Qt(()=>de.some($C(s,m,d)))}),exact:(d,m,v,w)=>({ltr:Qt(()=>ko(s,d,m,v,w)),rtl:Qt(()=>de.some(ko(s,v,w,d,m)))})}),Gv=(s,l)=>{const d=l.ltr();return d.collapsed?l.rtl().filter(v=>v.collapsed===!1).map(v=>Cp.rtl(qe.fromDom(v.endContainer),v.endOffset,qe.fromDom(v.startContainer),v.startOffset)).getOrThunk(()=>PC(s,Cp.ltr,d)):PC(s,Cp.ltr,d)},uT=(s,l)=>{const d=cT(s,l);return Gv(s,d)};Cp.ltr,Cp.rtl;const hS={create:(s,l,d,m)=>({start:s,soffset:l,finish:d,foffset:m})},RC=(s,l,d)=>{var m,v;return de.from((v=(m=s.dom).caretPositionFromPoint)===null||v===void 0?void 0:v.call(m,l,d)).bind(w=>{if(w.offsetNode===null)return de.none();const $=s.dom.createRange();return $.setStart(w.offsetNode,w.offset),$.collapse(),de.some($)})},Vy=(s,l,d)=>{var m,v;return de.from((v=(m=s.dom).caretRangeFromPoint)===null||v===void 0?void 0:v.call(m,l,d))},dT=document.caretPositionFromPoint?RC:document.caretRangeFromPoint?Vy:de.none,fT=(s,l,d)=>{const m=qe.fromDom(s.document);return dT(m,l,d).map(v=>hS.create(qe.fromDom(v.startContainer),v.startOffset,qe.fromDom(v.endContainer),v.endOffset))},r0=hf.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),mS=(s,l,d,m)=>s.fold(l,d,m),MC=s=>s.fold(mn,mn,mn),hT=r0.before,mT=r0.on,zy=r0.after,xm={before:hT,on:mT,after:zy,cata:mS,getStart:MC},Wy=hf.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),ur=s=>Wy.exact(s.start,s.soffset,s.finish,s.foffset),pT=s=>s.match({domRange:l=>qe.fromDom(l.startContainer),relative:(l,d)=>xm.getStart(l),exact:(l,d,m,v)=>l}),kp=Wy.domRange,Em=Wy.relative,Zy=Wy.exact,Fd=s=>{const l=pT(s);return qs(l)},Uy=hS.create,xp={domRange:kp,relative:Em,exact:Zy,exactFromRange:ur,getWin:Fd,range:Uy},i0=(s,l)=>{const d=Os(s);return d==="input"?xm.after(s):gt(["br","img"],d)?l===0?xm.before(s):xm.after(s):xm.on(s,l)},Kv=(s,l)=>{const d=s.fold(xm.before,i0,xm.after),m=l.fold(xm.before,i0,xm.after);return xp.relative(d,m)},pS=(s,l,d,m)=>{const v=i0(s,l),w=i0(d,m);return xp.relative(v,w)},gT=s=>s.match({domRange:l=>{const d=qe.fromDom(l.startContainer),m=qe.fromDom(l.endContainer);return pS(d,l.startOffset,m,l.endOffset)},relative:Kv,exact:pS}),gS=(s,l)=>{const m=document.createDocumentFragment();return Ne(s,v=>{m.appendChild(v.dom)}),qe.fromDom(m)},bT=s=>{const l=xp.getWin(s).dom,d=(v,w,$,B)=>ko(l,v,w,$,B),m=gT(s);return uT(l,m).match({ltr:d,rtl:d})},Bs=(s,l,d)=>fT(s,l,d),Hd=(s,l,d)=>{const m=qs(qe.fromDom(d));return Bs(m.dom,s,l).map(v=>{const w=d.createRange();return w.setStart(v.start.dom,v.soffset),w.setEnd(v.finish.dom,v.foffset),w}).getOrUndefined()},Ep=(s,l)=>Te(s)&&Te(l)&&s.startContainer===l.startContainer&&s.startOffset===l.startOffset&&s.endContainer===l.endContainer&&s.endOffset===l.endOffset,vT=(s,l,d)=>{let m=s;for(;m&&m!==l;){if(d(m))return m;m=m.parentNode}return null},a0=(s,l,d)=>vT(s,l,d)!==null,js=(s,l,d)=>a0(s,l,m=>m.nodeName===d),OT=(s,l)=>ao(s)&&!a0(s,l,Bd),bS=(s,l,d)=>{const m=l.parentNode;if(m){const v=new Hr(l,s.getParent(m,s.isBlock)||s.getRoot());let w;for(;w=v[d?"prev":"next"]();)if(Js(w))return!0}return!1},_=(s,l)=>{var d;return((d=s.previousSibling)===null||d===void 0?void 0:d.nodeName)===l},T=(s,l)=>{let d=l;for(;d&&d!==s;){if(ys(d))return!0;d=d.parentNode}return!1},M=(s,l,d,m,v)=>{const w=s.getRoot(),$=s.schema.getNonEmptyElements(),B=v.parentNode;let H,G;if(!B)return de.none();const le=s.getParent(B,s.isBlock)||w;if(m&&Js(v)&&l&&s.isEmpty(le))return de.some(Dt(B,s.nodeIndex(v)));const ue=new Hr(v,le);for(;G=ue[m?"prev":"next"]();){if(s.getContentEditableParent(G)==="false"||OT(G,w))return de.none();if(un(G)&&G.data.length>0)return js(G,w,"A")?de.none():de.some(Dt(G,m?G.data.length:0));if(s.isBlock(G)||$[G.nodeName.toLowerCase()])return de.none();H=G}return sf(H)?de.none():d&&H?de.some(Dt(H,0)):de.none()},L=(s,l,d,m)=>{const v=s.getRoot();let w,$=!1,B=d?m.startContainer:m.endContainer,H=d?m.startOffset:m.endOffset;const G=Zn(B)&&H===B.childNodes.length,le=s.schema.getNonEmptyElements();let ue=d;if(ao(B))return de.none();if(Zn(B)&&H>B.childNodes.length-1&&(ue=!1),ru(B)&&(B=v,H=0),B===v){if(ue&&(w=B.childNodes[H>0?H-1:0],w&&(ao(w)||le[w.nodeName]||wd(w))))return de.none();if(B.hasChildNodes()){if(H=Math.min(!ue&&H>0?H-1:H,B.childNodes.length-1),B=B.childNodes[H],H=un(B)&&G?B.data.length:0,!l&&B===v.lastChild&&wd(B)||T(v,B)||ao(B)||Gt(B))return de.none();if(B.hasChildNodes()&&!wd(B)){w=B;const ge=new Hr(B,v);do{if(ys(w)||ao(w)){$=!1;break}if(un(w)&&w.data.length>0){H=ue?0:w.data.length,B=w,$=!0;break}if(le[w.nodeName.toLowerCase()]&&!ca(w)){H=s.nodeIndex(w),B=w.parentNode,ue||H++,$=!0;break}}while(w=ue?ge.next():ge.prev())}}}return l&&(un(B)&&H===0&&M(s,G,l,!0,B).each(ge=>{B=ge.container(),H=ge.offset(),$=!0}),Zn(B)&&(w=B.childNodes[H],w||(w=B.childNodes[H-1]),w&&Js(w)&&!_(w,"A")&&!bS(s,w,!1)&&!bS(s,w,!0)&&M(s,G,l,!0,w).each(ge=>{B=ge.container(),H=ge.offset(),$=!0}))),ue&&!l&&un(B)&&H===B.data.length&&M(s,G,l,!1,B).each(ge=>{B=ge.container(),H=ge.offset(),$=!0}),$&&B?de.some(Dt(B,H)):de.none()},Y=(s,l)=>{const d=l.collapsed,m=l.cloneRange(),v=Dt.fromRangeStart(l);return L(s,d,!0,m).each(w=>{(!d||!Dt.isAbove(v,w))&&m.setStart(w.container(),w.offset())}),d||L(s,d,!1,m).each(w=>{m.setEnd(w.container(),w.offset())}),d&&m.collapse(!0),Ep(l,m)?de.none():de.some(m)},oe=(s,l)=>s.splitText(l),pe=s=>{let l=s.startContainer,d=s.startOffset,m=s.endContainer,v=s.endOffset;if(l===m&&un(l)){if(d>0&&dd){v=v-d;const w=oe(m,v).previousSibling;l=m=w,v=w.data.length,d=0}else v=0}else if(un(l)&&d>0&&d0&&v({walk:(w,$)=>qv(s,w,$),split:pe,expand:(w,$={type:"word"})=>{if($.type==="word"){const B=wp(s,w,[{inline:"span"}]),H=s.createRng();return H.setStart(B.startContainer,B.startOffset),H.setEnd(B.endContainer,B.endOffset),H}return w},normalize:w=>Y(s,w).fold(Fe,$=>(w.setStart($.startContainer,$.startOffset),w.setEnd($.endContainer,$.endOffset),!0))});ke.compareRanges=Ep,ke.getCaretRangeFromPoint=Hd,ke.getSelectedNode=_g,ke.getNode=du;const et=((s,l)=>{const d=(B,H)=>{if(!yt(H)&&!H.match(/^[0-9]+$/))throw new Error(s+".set accepts only positive integer values. Value was "+H);const G=B.dom;Od(G)&&(G.style[s]=H+"px")},m=B=>{const H=l(B);if(H<=0||H===null){const G=ki(B,s);return parseFloat(G)||0}return H},v=m,w=(B,H)=>Dn(H,(G,le)=>{const ue=ki(B,le),ge=ue===void 0?0:parseInt(ue,10);return isNaN(ge)?G:G+ge},0);return{set:d,get:m,getOuter:v,aggregate:w,max:(B,H,G)=>{const le=w(B,G);return H>le?H-le:0}}})("height",s=>{const l=s.dom;return ef(s)?l.getBoundingClientRect().height:l.offsetHeight}),vt=s=>et.get(s),ln=()=>qe.fromDom(document),Nn=(s,l)=>s.view(l).fold(je([]),m=>{const v=s.owner(m),w=Nn(s,v);return[m].concat(w)}),Pn=(s,l)=>{const d=l.owner(s);return Nn(l,d)};var Xt=Object.freeze({__proto__:null,view:s=>{var l;return(s.dom===document?de.none():de.from((l=s.dom.defaultView)===null||l===void 0?void 0:l.frameElement)).map(qe.fromDom)},owner:s=>uo(s)});const oo=s=>{const l=ln(),d=Kn(l),m=Pn(s,Xt),v=tn(s),w=kn(m,($,B)=>{const H=tn(B);return{left:$.left+H.left,top:$.top+H.top}},{left:0,top:0});return re(w.left+v.left+d.left,w.top+v.top+d.top)},Bo=s=>Os(s)==="textarea",us=(s,l)=>s.dispatch("ScrollIntoView",l).isDefaultPrevented(),Si=(s,l)=>{s.dispatch("AfterScrollIntoView",l)},vl=(s,l)=>{const d=Ci(s);if(d.length===0||Bo(s))return{element:s,offset:l};if(l{const d=tt(s),m=vt(s);return{element:s,bottom:d.top+m,height:m,pos:d,cleanup:l}},Nu=(s,l)=>{const d=vl(s,l),m=qe.fromHtml(''+z+"");return xi(d.element,m),ma(m,()=>$s(m))},Q1=s=>ma(qe.fromDom(s),St),V1=(s,l,d,m)=>{qc(s,(v,w)=>qy(s,l,d,m),d)},vS=(s,l,d,m,v)=>{const w={elm:m.element.dom,alignToTop:v};if(us(s,w))return;const $=Kn(l).top;d(s,l,$,m,v),Si(s,w)},qy=(s,l,d,m)=>{const v=qe.fromDom(s.getBody()),w=qe.fromDom(s.getDoc());Kr(v);const $=Nu(qe.fromDom(d.startContainer),d.startOffset);vS(s,w,l,$,m),$.cleanup()},Zr=(s,l,d,m)=>{const v=qe.fromDom(s.getDoc());vS(s,v,d,Q1(l),m)},qc=(s,l,d)=>{const m=d.startContainer,v=d.startOffset,w=d.endContainer,$=d.endOffset;l(qe.fromDom(m),qe.fromDom(w));const B=s.dom.createRng();B.setStart(m,v),B.setEnd(w,$),s.selection.setRng(d)},ac=(s,l,d,m,v)=>{const w=l.pos;if(m)Mo(w.left,w.top,v);else{const $=w.top-d+l.height;Mo(-s.getBody().getBoundingClientRect().left,$,v)}},Qd=(s,l,d,m,v,w)=>{const $=m+d,B=v.pos.top,H=v.bottom,G=H-B>=m;B$?ac(s,v,m,G?w!==!1:w===!0,l):H>$&&!G&&ac(s,v,m,w===!0,l)},rd=(s,l,d,m,v)=>{const w=qs(l).dom.innerHeight;Qd(s,l,d,w,m,v)},Qg=(s,l,d,m,v)=>{const w=qs(l).dom.innerHeight;Qd(s,l,d,w,m,v);const $=oo(m.element),B=pi(window);$.topB.bottom&&To(m.element,v===!0)},mu=(s,l,d)=>V1(s,rd,l,d),OS=(s,l,d)=>Zr(s,l,rd,d),Jv=(s,l,d)=>V1(s,Qg,l,d),Tm=(s,l,d)=>Zr(s,l,Qg,d),wc=(s,l,d)=>{(s.inline?OS:Tm)(s,l,d)},eO=(s,l,d)=>{(s.inline?mu:Jv)(s,l,d)},NC=(s,l=!1)=>s.dom.focus({preventScroll:l}),IC=s=>{const l=pl(s).dom;return s.dom===l.activeElement},l0=(s=ln())=>de.from(s.dom.activeElement).map(qe.fromDom),BC=s=>l0(pl(s)).filter(l=>s.dom.contains(l.dom)),Xy=(s,l)=>{const d=va(l)?Ic(l).length:Ci(l).length+1;return s>d?d:s<0?0:s},LC=s=>xp.range(s.start,Xy(s.soffset,s.start),s.finish,Xy(s.foffset,s.finish)),z1=(s,l)=>!yd(l.dom)&&(sn(s,l)||dt(s,l)),a4=s=>l=>z1(s,l.start)&&z1(s,l.finish),LL=s=>s.inline||Mn.browser.isFirefox(),FL=s=>xp.range(qe.fromDom(s.startContainer),s.startOffset,qe.fromDom(s.endContainer),s.endOffset),HL=s=>{const l=s.getSelection();return(!l||l.rangeCount===0?de.none():de.from(l.getRangeAt(0))).map(FL)},QL=s=>{const l=qs(s);return HL(l.dom).filter(a4(s))},l4=(s,l)=>de.from(l).filter(a4(s)).map(LC),c4=s=>{const l=document.createRange();try{return l.setStart(s.start.dom,s.soffset),l.setEnd(s.finish.dom,s.foffset),de.some(l)}catch{return de.none()}},jy=s=>{const l=LL(s)?QL(qe.fromDom(s.getBody())):de.none();s.bookmark=l.isSome()?l:s.bookmark},yT=s=>(s.bookmark?s.bookmark:de.none()).bind(d=>l4(qe.fromDom(s.getBody()),d)).bind(c4),VL=s=>{yT(s).each(l=>s.selection.setRng(l))},d4={isEditorUIElement:s=>{const l=s.className.toString();return l.indexOf("tox-")!==-1||l.indexOf("mce-")!==-1}},f4=(s,l)=>(yt(l)||(l=0),setTimeout(s,l)),h4=(s,l)=>(yt(l)||(l=0),setInterval(s,l)),Uf={setEditorTimeout:(s,l,d)=>f4(()=>{s.removed||l()},d),setEditorInterval:(s,l,d)=>{const m=h4(()=>{s.removed?clearInterval(m):l()},d);return m}},zL=s=>s.type==="nodechange"&&s.selectionChange,WL=(s,l)=>{const d=()=>{l.throttle()};Jr.DOM.bind(document,"mouseup",d),s.on("remove",()=>{Jr.DOM.unbind(document,"mouseup",d)})},ZL=(s,l)=>{s.on("mouseup touchend",d=>{l.throttle()})},UL=(s,l)=>{ZL(s,l),s.on("keyup NodeChange AfterSetSelectionRange",d=>{zL(d)||jy(s)})},FC=s=>{const l=O1(()=>{jy(s)},0);s.on("init",()=>{s.inline&&WL(s,l),UL(s,l)}),s.on("remove",()=>{l.cancel()})};let tO;const HC=Jr.DOM,m4=s=>Zn(s)&&d4.isEditorUIElement(s),QC=s=>{const l=s.classList;return l!==void 0?l.contains("tox-edit-area")||l.contains("tox-edit-area__iframe")||l.contains("mce-content-body"):!1},VC=(s,l)=>{const d=uy(s);return HC.getParent(l,v=>m4(v)||(d?s.dom.is(v,d):!1))!==null},_T=s=>{try{const l=pl(qe.fromDom(s.getElement()));return l0(l).fold(()=>document.body,d=>d.dom)}catch{return document.body}},qL=(s,l)=>{const d=l.editor;FC(d);const m=(v,w)=>{if(Du(v)&&v.inline!==!0){const $=qe.fromDom(v.getContainer());w($,"tox-edit-focus")}};d.on("focusin",()=>{const v=s.focusedEditor;QC(_T(d))&&m(d,Ou),v!==d&&(v&&v.dispatch("blur",{focusedEditor:d}),s.setActive(d),s.focusedEditor=d,d.dispatch("focus",{blurredEditor:v}),d.focus(!0))}),d.on("focusout",()=>{Uf.setEditorTimeout(d,()=>{const v=s.focusedEditor;(!QC(_T(d))||v!==d)&&m(d,hl),!VC(d,_T(d))&&v===d&&(d.dispatch("blur",{focusedEditor:null}),s.focusedEditor=null)})}),tO||(tO=v=>{const w=s.activeEditor;w&&bd(v).each($=>{const B=$;B.ownerDocument===document&&B!==document.body&&!VC(w,B)&&s.focusedEditor===w&&(w.dispatch("blur",{focusedEditor:null}),s.focusedEditor=null)})},HC.bind(document,"focusin",tO))},XL=(s,l)=>{s.focusedEditor===l.editor&&(s.focusedEditor=null),!s.activeEditor&&tO&&(HC.unbind(document,"focusin",tO),tO=null)},jL=s=>{s.on("AddEditor",Ue(qL,s)),s.on("RemoveEditor",Ue(XL,s))},YL=(s,l)=>s.dom.getParent(l,d=>s.dom.getContentEditable(d)==="true"),GL=s=>s.collapsed?de.from(du(s.startContainer,s.startOffset)).map(qe.fromDom):de.none(),KL=(s,l)=>GL(l).bind(d=>Fl(d)?de.some(d):sn(s,d)?de.none():de.some(s)),p4=(s,l)=>{KL(qe.fromDom(s.getBody()),l).bind(d=>hu(d.dom)).fold(()=>{s.selection.normalize()},d=>s.selection.setRng(d.toRange()))},wT=s=>{if(s.setActive)try{s.setActive()}catch{s.focus()}else s.focus()},JL=s=>IC(s)||BC(s).isSome(),e6=s=>Te(s.iframeElement)&&IC(qe.fromDom(s.iframeElement)),zC=s=>{const l=s.getBody();return l&&JL(qe.fromDom(l))},g4=s=>{const l=pl(qe.fromDom(s.getElement()));return l0(l).filter(d=>!QC(d.dom)&&VC(s,d.dom)).isSome()},c0=s=>s.inline?zC(s):e6(s),b4=s=>c0(s)||g4(s),t6=s=>{const l=s.selection,d=s.getBody();let m=l.getRng();s.quirks.refreshContentEditable(),Te(s.bookmark)&&!c0(s)&&yT(s).each(w=>{s.selection.setRng(w),m=w});const v=YL(s,l.getNode());if(v&&s.dom.isChildOf(v,d)){wT(v),p4(s,m),ST(s);return}s.inline||(Mn.browser.isOpera()||wT(d),s.getWin().focus()),(Mn.browser.isFirefox()||s.inline)&&(wT(d),p4(s,m)),ST(s)},ST=s=>s.editorManager.setActive(s),n6=(s,l)=>{s.removed||(l?ST(s):t6(s))},O4=(s,l)=>l.collapsed?s.isEditable(l.startContainer):s.isEditable(l.startContainer)&&s.isEditable(l.endContainer),y4=(s,l,d,m,v)=>{const w=d?l.startContainer:l.endContainer,$=d?l.startOffset:l.endOffset;return de.from(w).map(qe.fromDom).map(B=>!m||!l.collapsed?nu(B,v(B,$)).getOr(B):B).bind(B=>Ra(B)?de.some(B):gr(B).filter(Ra)).map(B=>B.dom).getOr(s)},CT=(s,l,d=!1)=>y4(s,l,!0,d,(m,v)=>Math.min(el(m),v)),_4=(s,l,d=!1)=>y4(s,l,!1,d,(m,v)=>v>0?v-1:v),kT=(s,l)=>{const d=s;for(;s&&un(s)&&s.length===0;)s=l?s.nextSibling:s.previousSibling;return s||d},w4=(s,l)=>{if(!l)return s;let d=l.startContainer,m=l.endContainer;const v=l.startOffset,w=l.endOffset;let $=l.commonAncestorContainer;l.collapsed||(d===m&&w-v<2&&d.hasChildNodes()&&($=d.childNodes[v]),un(d)&&un(m)&&(d.length===v?d=kT(d.nextSibling,!0):d=d.parentNode,w===0?m=kT(m.previousSibling,!1):m=m.parentNode,d&&d===m&&($=d)));const B=un($)?$.parentNode:$;return Ha(B)?B:s},o6=(s,l,d,m)=>{const v=[],w=s.getRoot(),$=s.getParent(d||CT(w,l,l.collapsed),s.isBlock),B=s.getParent(m||_4(w,l,l.collapsed),s.isBlock);if($&&$!==w&&v.push($),$&&B&&$!==B){let H;const G=new Hr($,w);for(;(H=G.next())&&H!==B;)s.isBlock(H)&&v.push(H)}return B&&$!==B&&B!==w&&v.push(B),v},s6=(s,l,d)=>de.from(l).bind(m=>de.from(m.parentNode).map(v=>{const w=s.nodeIndex(m),$=s.createRng();return $.setStart(v,w),$.setEnd(v,w+1),d&&(Jw(s,$,m,!0),Jw(s,$,m,!1)),$})),xT=(s,l)=>pt(l,d=>{const m=s.dispatch("GetSelectionRange",{range:d});return m.range!==d?m.range:d}),r6=s=>Os(s)==="img"?1:am(s).fold(()=>Ci(s).length,l=>l.length),i6=s=>am(s).filter(l=>l.trim().length!==0||l.indexOf(Fs)>-1).isSome(),a6=s=>ri(s)&&Ja(s,"contenteditable")==="false",l6=["img","br"],S4=s=>i6(s)||gt(l6,Os(s))||a6(s),c6=s=>Ea(s,S4),u6=s=>d6(s,S4),d6=(s,l)=>{const d=m=>{const v=Ci(m);for(let w=v.length-1;w>=0;w--){const $=v[w];if(l($))return de.some($);const B=d($);if(B.isSome())return B}return de.none()};return d(s)},C4="[data-mce-autocompleter]",f6=(s,l)=>{if(k4(qe.fromDom(s.getBody())).isNone()){const d=qe.fromHtml('',s.getDoc());di(d,qe.fromDom(l.extractContents())),l.insertNode(d.dom),gr(d).each(m=>m.dom.normalize()),u6(d).map(m=>{s.selection.setCursorLocation(m.dom,r6(m))})}},h6=s=>Rc(s,C4),k4=s=>Na(s,C4),m6=(s,l)=>k4(l).each(d=>{const m=s.selection.getBookmark();La(d),s.selection.moveToBookmark(m)}),p6={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11},WC=(s,l,d)=>{const m=d?"lastChild":"firstChild",v=d?"prev":"next";if(s[m])return s[m];if(s!==l){let w=s[v];if(w)return w;for(let $=s.parent;$&&$!==l;$=$.parent)if(w=$[v],w)return w}},g6=s=>{var l;const d=(l=s.value)!==null&&l!==void 0?l:"";if(!hh(d))return!1;const m=s.parent;return!(m&&(m.name!=="span"||m.attr("style"))&&/^[ ]+$/.test(d))},vo=s=>{const l=s.name==="a"&&!s.attr("href")&&s.attr("id");return s.attr("name")||s.attr("id")&&!s.firstChild||s.attr("data-mce-bookmark")||l};class Iu{static create(l,d){const m=new Iu(l,p6[l]||1);return d&&nn(d,(v,w)=>{m.attr(w,v)}),m}constructor(l,d){this.name=l,this.type=d,d===1&&(this.attributes=[],this.attributes.map={})}replace(l){const d=this;return l.parent&&l.remove(),d.insert(l,d),d.remove(),d}attr(l,d){const m=this;if(!j(l))return Te(l)&&nn(l,(w,$)=>{m.attr($,w)}),m;const v=m.attributes;if(v){if(d!==void 0){if(d===null){if(l in v.map){delete v.map[l];let w=v.length;for(;w--;)if(v[w].name===l)return v.splice(w,1),m}return m}if(l in v.map){let w=v.length;for(;w--;)if(v[w].name===l){v[w].value=d;break}}else v.push({name:l,value:d});return v.map[l]=d,m}return v.map[l]}}clone(){const l=this,d=new Iu(l.name,l.type),m=l.attributes;if(m){const v=[];v.map={};for(let w=0,$=m.length;w<$;w++){const B=m[w];B.name!=="id"&&(v[v.length]={name:B.name,value:B.value},v.map[B.name]=B.value)}d.attributes=v}return d.value=l.value,d}wrap(l){const d=this;return d.parent&&(d.parent.insert(l,d),l.append(d)),d}unwrap(){const l=this;for(let d=l.firstChild;d;){const m=d.next;l.insert(d,l,!0),d=m}l.remove()}remove(){const l=this,d=l.parent,m=l.next,v=l.prev;return d&&(d.firstChild===l?(d.firstChild=m,m&&(m.prev=null)):v&&(v.next=m),d.lastChild===l?(d.lastChild=v,v&&(v.next=null)):m&&(m.prev=v),l.parent=l.next=l.prev=null),l}append(l){const d=this;l.parent&&l.remove();const m=d.lastChild;return m?(m.next=l,l.prev=m,d.lastChild=l):d.lastChild=d.firstChild=l,l.parent=d,l}insert(l,d,m){l.parent&&l.remove();const v=d.parent||this;return m?(d===v.firstChild?v.firstChild=l:d.prev&&(d.prev.next=l),l.prev=d.prev,l.next=d,d.prev=l):(d===v.lastChild?v.lastChild=l:d.next&&(d.next.prev=l),l.next=d.next,l.prev=d,d.next=l),l.parent=v,l}getAll(l){const d=this,m=[];for(let v=d.firstChild;v;v=WC(v,d))v.name===l&&m.push(v);return m}children(){const l=this,d=[];for(let m=l.firstChild;m;m=m.next)d.push(m);return d}empty(){const l=this;if(l.firstChild){const d=[];for(let v=l.firstChild;v;v=WC(v,l))d.push(v);let m=d.length;for(;m--;){const v=d[m];v.parent=v.firstChild=v.lastChild=v.next=v.prev=null}}return l.firstChild=l.lastChild=null,l}isEmpty(l,d={},m){var v;const w=this;let $=w.firstChild;if(vo(w))return!1;if($)do{if($.type===1){if($.attr("data-mce-bogus"))continue;if(l[$.name]||vo($))return!1}if($.type===8||$.type===3&&!g6($)||$.type===3&&$.parent&&d[$.parent.name]&&hh((v=$.value)!==null&&v!==void 0?v:"")||m&&m($))return!1}while($=WC($,w));return!0}walk(l){return WC(this,null,l)}}const x4=cn.makeMap("NOSCRIPT STYLE SCRIPT XMP IFRAME NOEMBED NOFRAMES PLAINTEXT"," "),E4=s=>j(s.nodeValue)&&s.nodeValue.includes(z),ZC=s=>`${s.length===0?"":`${pt(s,l=>`[${l}]`).join(",")},`}[data-mce-bogus="all"]`,b6=(s,l)=>l.querySelectorAll(ZC(s)),T4=s=>document.createTreeWalker(s,NodeFilter.SHOW_COMMENT,l=>E4(l)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP),A4=s=>document.createTreeWalker(s,NodeFilter.SHOW_TEXT,l=>{if(E4(l)){const d=l.parentNode;return d&&an(x4,d.nodeName)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}else return NodeFilter.FILTER_SKIP}),v6=s=>T4(s).nextNode()!==null,O6=s=>A4(s).nextNode()!==null,UC=(s,l)=>l.querySelector(ZC(s))!==null,$4=(s,l)=>{Ne(b6(s,l),d=>{const m=qe.fromDom(d);Ja(m,"data-mce-bogus")==="all"?$s(m):Ne(s,v=>{Zi(m,v)&&ii(m,v)})})},y6=s=>{let l=s.nextNode();for(;l!==null;)l.nodeValue=null,l=s.nextNode()},_6=q(y6,T4),Yo=q(y6,A4),P4=(s,l)=>{const d=[{condition:Ue(UC,l),action:Ue($4,l)},{condition:v6,action:_6},{condition:O6,action:Yo}];let m=s,v=!1;return Ne(d,({condition:w,action:$})=>{w(m)&&(v||(m=s.cloneNode(!0),v=!0),$(m))}),m},ss=s=>{const l=Fa(s,"[data-mce-bogus]");Ne(l,d=>{Ja(d,"data-mce-bogus")==="all"?$s(d):xu(d)?(xi(d,qe.fromText(Km)),$s(d)):La(d)})},ET=s=>{const l=Fa(s,"input");Ne(l,d=>{ii(d,"name")})},uU=(s,l)=>{const d=Vl(s),m=new RegExp(`^(<${d}[^>]*>( | |\\s| |
    |)<\\/${d}>[\r -]*|
    [\r -]*)$`);return l.replace(m,"")},dU=(s,l)=>{const d=s.getDoc(),m=pl(qe.fromDom(s.getBody())),v=qe.fromTag("div",d);Sr(v,"data-mce-bogus","all"),Ba(v,{position:"fixed",left:"-9999999px",top:"0"}),Nc(v,l.innerHTML),ss(v),ET(v);const w=l1(m);di(w,v);const $=ve(v.dom.innerText);return $s(v),$},w6=(s,l,d)=>{let m;return l.format==="raw"?m=cn.trim(ve(P4(d,s.serializer.getTempAttrs()).innerHTML)):l.format==="text"?m=dU(s,d):l.format==="tree"?m=s.serializer.serialize(d,l):m=uU(s,s.serializer.serialize(d,l)),l.format!=="text"&&!ya(qe.fromDom(d))&&j(m)?cn.trim(m):m},fU=(s,l)=>de.from(s.getBody()).fold(je(l.format==="tree"?new Iu("body",11):""),d=>w6(s,l,d)),S6=cn.makeMap,D4=s=>{const l=[];s=s||{};const d=s.indent,m=S6(s.indent_before||""),v=S6(s.indent_after||""),w=op.getEncodeFunc(s.entity_encoding||"raw",s.entities),$=s.element_format!=="xhtml";return{start:(B,H,G)=>{if(d&&m[B]&&l.length>0){const le=l[l.length-1];le.length>0&&le!==` -`&&l.push(` -`)}if(l.push("<",B),H)for(let le=0,ue=H.length;le0){const le=l[l.length-1];le.length>0&&le!==` -`&&l.push(` -`)}},end:B=>{let H;l.push(""),d&&v[B]&&l.length>0&&(H=l[l.length-1],H.length>0&&H!==` -`&&l.push(` -`))},text:(B,H)=>{B.length>0&&(l[l.length]=H?B:w(B))},cdata:B=>{l.push("")},comment:B=>{l.push("")},pi:(B,H)=>{H?l.push(""):l.push(""),d&&l.push(` -`)},doctype:B=>{l.push("",d?` -`:"")},reset:()=>{l.length=0},getContent:()=>l.join("").replace(/\n$/,"")}},u0=(s={},l=Df())=>{const d=D4(s);return s.validate="validate"in s?s.validate:!0,{serialize:v=>{const w=s.validate,$={3:H=>{var G;d.text((G=H.value)!==null&&G!==void 0?G:"",H.raw)},8:H=>{var G;d.comment((G=H.value)!==null&&G!==void 0?G:"")},7:H=>{d.pi(H.name,H.value)},10:H=>{var G;d.doctype((G=H.value)!==null&&G!==void 0?G:"")},4:H=>{var G;d.cdata((G=H.value)!==null&&G!==void 0?G:"")},11:H=>{let G=H;if(G=G.firstChild)do B(G);while(G=G.next)}};d.reset();const B=H=>{var G;const le=$[H.type];if(le)le(H);else{const ue=H.name,ge=ue in l.getVoidElements();let Me=H.attributes;if(w&&Me&&Me.length>1){const He=[];He.map={};const $e=l.getElementRule(H.name);if($e){for(let Ve=0,rt=$e.attributesOrder.length;Ve{Ao.add(l)});const R4=["font","text-decoration","text-emphasis"],TT=(s,l)=>ts(s.parseStyle(s.getAttrib(l,"style"))),C6=s=>Ao.has(s),yS=(s,l)=>Vs(TT(s,l),d=>!C6(d)),M4=s=>xt(s,l=>Ut(R4,d=>rr(l,d))),k6=(s,l,d)=>{const m=TT(s,l),v=TT(s,d),w=$=>{var B,H;const G=(B=s.getStyle(l,$))!==null&&B!==void 0?B:"",le=(H=s.getStyle(d,$))!==null&&H!==void 0?H:"";return Ls(G)&&Ls(le)&&G!==le};return Ut(m,$=>{const B=H=>Ut(H,G=>G===$);if(!B(v)&&B(R4)){const H=M4(v);return Ut(H,w)}else return w($)})},N4=(s,l,d)=>de.from(d.container()).filter(un).exists(m=>{const v=s?0:-1;return l(m.data.charAt(d.offset()+v))}),AT=Ue(N4,!0,Kb),qC=Ue(N4,!1,Kb),x6=s=>{const l=s.container();return un(l)&&(l.data.length===0||K(l.data)&&F1.isBookmarkNode(l.parentNode))},nO=(s,l)=>d=>Bn(s?0:-1,d).filter(l).isSome(),E6=s=>Ei(s)&&ki(qe.fromDom(s),"display")==="block",I4=s=>ys(s)&&!Xp(s),T6=nO(!0,E6),A6=nO(!1,E6),_S=nO(!0,Qr),Yy=nO(!1,Qr),B4=nO(!0,wd),hs=nO(!1,wd),W1=nO(!0,I4),Tp=nO(!1,I4),L4=s=>s.slice(0,-1),F4=(s,l,d)=>sn(l,s)?L4(rh(s,m=>d(m)||dt(m,l))):[],$T=(s,l)=>F4(s,l,Fe),Vg=(s,l)=>[s].concat($T(s,l)),XC=(s,l,d)=>Vf(s,l,d,x6),$6=s=>l=>s.isBlock(Os(l)),PT=(s,l,d)=>Gn(Vg(qe.fromDom(l.container()),s),$6(d)),H4=(s,l,d,m)=>XC(s,l.dom,d).forall(v=>PT(l,d,m).fold(()=>!_n(v,d,l.dom),w=>!_n(v,d,l.dom)&&sn(w,qe.fromDom(v.container())))),Q4=(s,l,d,m)=>PT(l,d,m).fold(()=>XC(s,l.dom,d).forall(v=>!_n(v,d,l.dom)),v=>XC(s,v.dom,d).isNone()),DT=Ue(Q4,!1),V4=Ue(Q4,!0),P6=Ue(H4,!1),D6=Ue(H4,!0),R6=s=>rc(s).exists(xu),jC=(s,l,d,m)=>{const v=xt(Vg(qe.fromDom(d.container()),l),$=>m.isBlock(Os($))),w=Oo(v).getOr(l);return zl(s,w.dom,d).filter(R6)},wS=(s,l,d)=>rc(l).exists(xu)||jC(!0,s,l,d).isSome(),SS=(s,l,d)=>nd(l).exists(xu)||jC(!1,s,l,d).isSome(),M6=Ue(jC,!1),N6=Ue(jC,!0),z4=s=>Dt.isTextPosition(s)&&!s.isAtStart()&&!s.isAtEnd(),W4=(s,l,d)=>{const m=xt(Vg(qe.fromDom(l.container()),s),v=>d.isBlock(Os(v)));return Oo(m).getOr(s)},Z4=(s,l,d)=>z4(l)?qC(l):qC(l)||Ru(W4(s,l,d).dom,l).exists(qC),U4=(s,l,d)=>z4(l)?AT(l):AT(l)||Uc(W4(s,l,d).dom,l).exists(AT),I6=s=>gt(["pre","pre-wrap"],s),RT=s=>rc(s).bind(l=>Ma(l,Ra)).exists(l=>I6(ki(l,"white-space"))),q4=(s,l)=>Ru(s.dom,l).isNone(),B6=(s,l)=>Uc(s.dom,l).isNone(),L6=(s,l,d)=>q4(s,l)||B6(s,l)||DT(s,l,d)||V4(s,l,d)||SS(s,l,d)||wS(s,l,d),oO=s=>Te(s)&&ys(s)&&Sm(s),X4=(s,l)=>d=>oO(new Hr(d,s)[l]()),j4=(s,l)=>{const d=Uc(s.dom,l).getOr(l),m=X4(s.dom,"next");return l.isAtEnd()&&(m(l.container())||m(d.container()))},F6=(s,l)=>{const d=Ru(s.dom,l).getOr(l),m=X4(s.dom,"prev");return l.isAtStart()&&(m(l.container())||m(d.container()))},Y4=(s,l,d)=>RT(l)?!1:L6(s,l,d)||Z4(s,l,d)||U4(s,l,d),Gy=(s,l,d)=>RT(l)?!1:DT(s,l,d)||P6(s,l,d)||SS(s,l,d)||Z4(s,l,d)||F6(s,l),G4=s=>{const l=s.container(),d=s.offset();return un(l)&&dRT(l)?!1:V4(s,l,d)||D6(s,l,d)||wS(s,l,d)||U4(s,l,d)||j4(s,l),YC=(s,l,d)=>Gy(s,l,d)||Ky(s,G4(l),d),Bu=(s,l)=>$y(s.charAt(l)),K4=(s,l)=>Kb(s.charAt(l)),H6=s=>{const l=s.container();return un(l)&&As(l.data,Fs)},Q6=s=>{const l=s.split("");return pt(l,(d,m)=>$y(d)&&m>0&&m{const v=l.data,w=Dt(l,0);return!d&&Bu(v,0)&&!YC(s,w,m)?(l.data=" "+v.slice(1),!0):d&&K4(v,0)&&Gy(s,w,m)?(l.data=Fs+v.slice(1),!0):!1},V6=s=>{const l=s.data,d=Q6(l);return d!==l?(s.data=d,!0):!1},d0=(s,l,d,m)=>{const v=l.data,w=Dt(l,v.length-1);return!d&&Bu(v,v.length-1)&&!YC(s,w,m)?(l.data=v.slice(0,-1)+" ",!0):d&&K4(v,v.length-1)&&Ky(s,w,m)?(l.data=v.slice(0,-1)+Fs,!0):!1},z6=(s,l,d)=>{const m=l.container();if(!un(m))return de.none();if(H6(l)){const v=J4(s,m,!1,d)||V6(m)||d0(s,m,!1,d);return Jo(v,l)}else if(YC(s,l,d)){const v=J4(s,m,!0,d)||d0(s,m,!0,d);return Jo(v,l)}else return de.none()},W6=s=>{const l=qe.fromDom(s.getBody());s.selection.isCollapsed()&&z6(l,Dt.fromRangeStart(s.selection.getRng()),s.schema).each(d=>{s.selection.setRng(d.toRange())})},Yi=(s,l,d,m)=>{if(d===0)return;const v=qe.fromDom(s),w=Rr(v,G=>m.isBlock(Os(G))).getOr(v),$=s.data.slice(l,l+d),B=l+d>=s.data.length&&Ky(w,Dt(s,s.data.length),m),H=l===0&&Gy(w,Dt(s,0),m);s.replaceData(l,d,mh($,4,H,B))},sO=(s,l,d)=>{const m=s.data.slice(l),v=m.length-Tc(m).length;Yi(s,l,v,d)},eD=(s,l,d)=>{const m=s.data.slice(0,l),v=m.length-Ac(m).length;Yi(s,l-v,v,d)},Wl=(s,l,d,m,v=!0)=>{const w=Ac(s.data).length,$=v?s:l,B=v?l:s;return v?$.appendData(B.data):$.insertData(0,B.data),$s(qe.fromDom(B)),m&&sO($,w,d),$},Z6=(s,l)=>{const d=s.container(),m=s.offset();return!Dt.isTextPosition(s)&&d===l.parentNode&&m>Dt.before(l).offset()},U6=(s,l)=>Z6(l,s)?Dt(l.container(),l.offset()-1):l,Z1=s=>un(s)?Dt(s,0):Dt.before(s),Ar=s=>un(s)?Dt(s,s.data.length):Dt.after(s),MT=s=>_s(s.previousSibling)?de.some(Ar(s.previousSibling)):s.previousSibling?zf(s.previousSibling):de.none(),NT=s=>_s(s.nextSibling)?de.some(Z1(s.nextSibling)):s.nextSibling?hu(s.nextSibling):de.none(),q6=(s,l)=>de.from(l.previousSibling?l.previousSibling:l.parentNode).bind(d=>Ru(s,Dt.before(d))).orThunk(()=>Uc(s,Dt.after(l))),X6=(s,l)=>Uc(s,Dt.after(l)).orThunk(()=>Ru(s,Dt.before(l))),j6=(s,l)=>MT(l).orThunk(()=>NT(l)).orThunk(()=>q6(s,l)),vf=(s,l)=>NT(l).orThunk(()=>MT(l)).orThunk(()=>X6(s,l)),Ap=(s,l,d)=>s?vf(l,d):j6(l,d),Y6=(s,l,d)=>Ap(s,l,d).map(Ue(U6,d)),GC=(s,l,d)=>{d.fold(()=>{s.focus()},m=>{s.selection.setRng(m.toRange(),l)})},IT=s=>l=>l.dom===s,G6=(s,l)=>l&&an(s.schema.getBlockElements(),Os(l)),K6=(s,l)=>{if(Fi(s)){const d=qe.fromHtml('
    ');return l?Ne(Ci(s),m=>{zv(m)||$s(m)}):ou(s),di(s,d),de.some(Dt.before(d.dom))}else return de.none()},CS=(s,l,d,m)=>{const v=Ui(s).filter(va),w=pc(s).filter(va);return $s(s),Kc(v,w,l,($,B,H)=>{const G=$.dom,le=B.dom,ue=G.data.length;return Wl(G,le,d,m),H.container()===le?Dt(G,ue):H}).orThunk(()=>(m&&(v.each($=>eD($.dom,$.dom.length,d)),w.each($=>sO($.dom,0,d))),l))},KC=(s,l)=>an(s.schema.getTextInlineElements(),Os(l)),U1=(s,l,d,m=!0,v=!1)=>{const w=Y6(l,s.getBody(),d.dom),$=Rr(d,Ue(G6,s),IT(s.getBody())),B=CS(d,w,s.schema,KC(s,d));s.dom.isEmpty(s.getBody())?(s.setContent(""),s.selection.setCursorLocation()):$.bind(H=>K6(H,v)).fold(()=>{m&&GC(s,l,B)},H=>{m&&GC(s,l,de.some(H))})},J6=/[\u0591-\u07FF\uFB1D-\uFDFF\uFE70-\uFEFC]/,$p=s=>J6.test(s),rO=(s,l)=>mc(qe.fromDom(l),iy(s))&&!gs(s.schema,l)&&s.dom.isEditable(l),tD=s=>{var l;return Jr.DOM.getStyle(s,"direction",!0)==="rtl"||$p((l=s.textContent)!==null&&l!==void 0?l:"")},Hh=(s,l,d)=>xt(Jr.DOM.getParents(d.container(),"*",l),s),Am=(s,l,d)=>{const m=Hh(s,l,d);return de.from(m[m.length-1])},$m=(s,l,d)=>{const m=wn(l,s),v=wn(d,s);return Te(m)&&m===v},e7=s=>tr(s)||Vr(s),Hs=(s,l)=>{const d=l.container(),m=l.offset();return s?xn(d)?un(d.nextSibling)?Dt(d.nextSibling,0):Dt.after(d):tr(l)?Dt(d,m+1):l:xn(d)?un(d.previousSibling)?Dt(d.previousSibling,d.previousSibling.data.length):Dt.before(d):Vr(l)?Dt(d,m-1):l},iO=Ue(Hs,!0),kS=Ue(Hs,!1),BT=(s,l)=>{const d=m=>m.stopImmediatePropagation();s.on("beforeinput input",d,!0),s.getDoc().execCommand(l),s.off("beforeinput input",d)},LT=s=>{s.execCommand("delete")},xS=s=>BT(s,"Delete"),t7=s=>BT(s,"ForwardDelete"),FT=s=>l=>Or(gr(l),s,dt),n7=s=>_t(s)||iu(s),ES=(s,l)=>sn(s,l)?Ma(l,n7,FT(s)):de.none(),JC=(s,l=!0)=>{s.dom.isEmpty(s.getBody())&&s.setContent("",{no_selection:!l})},ek=(s,l,d)=>yr(hu(d),zf(d),(m,v)=>{const w=Hs(!0,m),$=Hs(!1,v),B=Hs(!1,l);return s?Uc(d,B).exists(H=>H.isEqual($)&&l.isEqual(w)):Ru(d,B).exists(H=>H.isEqual(w)&&l.isEqual($))}).getOr(!0),HT=s=>(Qp(s)?Ui(s):Pc(s)).bind(HT).orThunk(()=>de.some(s)),TS=(s,l,d,m=!0)=>{var v;l.deleteContents();const w=HT(d).getOr(d),$=qe.fromDom((v=s.dom.getParent(w.dom,s.dom.isBlock))!==null&&v!==void 0?v:d.dom);if($.dom===s.getBody()?JC(s,m):Fi($)&&(Sd($),m&&s.selection.setCursorLocation($.dom,0)),!dt(d,$)){const B=Or(gr($),d)?[]:Vp($);Ne(B.concat(Ci(d)),H=>{!dt(H,$)&&!sn(H,$)&&Fi(H)&&$s(H)})}},o7=(s,l,d)=>Rr(s,l,d).isSome(),s7=(s,l)=>qm(s,l).isSome(),nD=(s,l)=>Ea(s,l).isSome(),r7=s=>l=>dt(s,l),QT=s=>Fa(s,"td,th"),VT=(s,l)=>yp(qe.fromDom(s),l),i7=s=>yr(s.startTable,s.endTable,(l,d)=>{const m=nD(l,w=>dt(w,d)),v=nD(d,w=>dt(w,l));return!m&&!v?s:{...s,startTable:m?de.none():s.startTable,endTable:v?de.none():s.endTable,isSameTable:!1,isMultiTable:!1}}).getOr(s),a7=s=>i7(s),oD=(s,l)=>{const d=VT(s.startContainer,l),m=VT(s.endContainer,l),v=d.isSome(),w=m.isSome(),$=yr(d,m,dt).getOr(!1);return a7({startTable:d,endTable:m,isStartInTable:v,isEndInTable:w,isSameTable:$,isMultiTable:!$&&v&&w})},tk=(s,l)=>({start:s,end:l}),l7=(s,l,d)=>({rng:s,table:l,cells:d}),AS=hf.generate([{singleCellTable:["rng","cell"]},{fullTable:["table"]},{partialTable:["cells","outsideDetails"]},{multiTable:["startTableCells","endTableCells","betweenRng"]}]),$S=(s,l)=>Rc(qe.fromDom(s),"td,th",l),sD=s=>!dt(s.start,s.end),zT=(s,l)=>yp(s.start,l).bind(d=>yp(s.end,l).bind(m=>Jo(dt(d,m),d))),qf=(s,l)=>!sD(s)&&zT(s,l).exists(d=>{const m=d.dom.rows;return m.length===1&&m[0].cells.length===1}),c7=(s,l)=>{const d=$S(s.startContainer,l),m=$S(s.endContainer,l);return yr(d,m,tk)},rD=s=>l=>yp(l,s).bind(d=>wo(QT(d)).map(m=>tk(l,m))),WT=s=>l=>yp(l,s).bind(d=>Oo(QT(d)).map(m=>tk(m,l))),PS=s=>l=>zT(l,s).map(d=>l7(l,d,QT(d))),ZT=(s,l,d,m)=>{if(d.collapsed||!s.forall(sD))return de.none();if(l.isSameTable){const v=s.bind(PS(m));return de.some({start:v,end:v})}else{const v=$S(d.startContainer,m),w=$S(d.endContainer,m),$=v.bind(rD(m)).bind(PS(m)),B=w.bind(WT(m)).bind(PS(m));return de.some({start:$,end:B})}},UT=(s,l)=>as(s,d=>dt(d,l)),qT=s=>yr(UT(s.cells,s.rng.start),UT(s.cells,s.rng.end),(l,d)=>s.cells.slice(l,d+1)),u7=(s,l,d)=>s.exists(m=>qf(m,d)&&Kw(m.start,l)),nk=(s,l)=>{const{startTable:d,endTable:m}=l,v=s.cloneRange();return d.each(w=>v.setStartAfter(w.dom)),m.each(w=>v.setEndBefore(w.dom)),v},iD=(s,l,d,m)=>ZT(s,l,d,m).bind(({start:v,end:w})=>v.or(w)).bind(v=>{const{isSameTable:w}=l,$=qT(v).getOr([]);if(w&&v.cells.length===$.length)return de.some(AS.fullTable(v.table));if($.length>0){if(w)return de.some(AS.partialTable($,de.none()));{const B=nk(d,l);return de.some(AS.partialTable($,de.some({...l,rng:B})))}}else return de.none()}),Pm=(s,l,d,m)=>ZT(s,l,d,m).bind(({start:v,end:w})=>{const $=v.bind(qT).getOr([]),B=w.bind(qT).getOr([]);if($.length>0&&B.length>0){const H=nk(d,l);return de.some(AS.multiTable($,B,H))}else return de.none()}),d7=(s,l)=>{const d=r7(s),m=c7(l,d),v=oD(l,d);return u7(m,l,d)?m.map(w=>AS.singleCellTable(l,w.start)):v.isMultiTable?Pm(m,v,l,d):iD(m,v,l,d)},aD=s=>Ne(s,l=>{ii(l,"contenteditable"),Sd(l)}),hU=(s,l)=>de.from(s.dom.getParent(l,s.dom.isBlock)).map(qe.fromDom),XT=(s,l,d)=>{d.each(m=>{l?$s(m):(Sd(m),s.selection.setCursorLocation(m.dom,0))})},jT=(s,l,d,m)=>{const v=d.cloneRange();m?(v.setStart(d.startContainer,d.startOffset),v.setEndAfter(l.dom.lastChild)):(v.setStartBefore(l.dom.firstChild),v.setEnd(d.endContainer,d.endOffset)),Of(s,v,l,!1).each(w=>w())},aO=s=>{const l=Jb(s),d=qe.fromDom(s.selection.getNode());lh(d.dom)&&Fi(d)?s.selection.setCursorLocation(d.dom,0):s.selection.collapse(!0),l.length>1&&Ut(l,m=>dt(m,d))&&Sr(d,"data-mce-selected","1")},lD=(s,l,d)=>de.some(()=>{const m=s.selection.getRng(),v=d.bind(({rng:w,isStartInTable:$})=>{const B=hU(s,$?w.endContainer:w.startContainer);w.deleteContents(),XT(s,$,B.filter(Fi));const H=$?l[0]:l[l.length-1];return jT(s,H,m,$),Fi(H)?de.none():de.some($?l.slice(1):l.slice(0,-1))}).getOr(l);aD(v),aO(s)}),Jy=(s,l,d,m)=>de.some(()=>{const v=s.selection.getRng(),w=l[0],$=d[d.length-1];jT(s,w,v,!0),jT(s,$,v,!1);const B=Fi(w)?l:l.slice(1),H=Fi($)?d:d.slice(0,-1);aD(B.concat(H)),m.deleteContents(),aO(s)}),Of=(s,l,d,m=!0)=>de.some(()=>{TS(s,l,d,m)}),DS=(s,l)=>de.some(()=>U1(s,!1,l)),ci=(s,l,d)=>d7(l,d).bind(m=>m.fold(Ue(Of,s),Ue(DS,s),Ue(lD,s),Ue(Jy,s))),RS=(s,l)=>e_(s,l),cD=(s,l,d,m)=>MS(l,m).fold(()=>ci(s,l,d),v=>RS(s,v)),uD=(s,l,d)=>{const m=qe.fromDom(s.getBody()),v=s.selection.getRng();return d.length!==0?lD(s,d,de.none()):cD(s,m,v,l)},ok=(s,l)=>Gn(Vg(l,s),Kl),MS=(s,l)=>Gn(Vg(l,s),fc("caption")),YT=(s,l,d,m,v)=>Op(d,s.getBody(),v).bind(w=>ok(l,qe.fromDom(w.getNode())).bind($=>dt($,m)?de.none():de.some(St))),e_=(s,l)=>de.some(()=>{Sd(l),s.selection.setCursorLocation(l.dom,0)}),sk=(s,l,d,m)=>hu(s.dom).bind(v=>zf(s.dom).map(w=>l?d.isEqual(v)&&m.isEqual(w):d.isEqual(w)&&m.isEqual(v))).getOr(!0),GT=(s,l)=>e_(s,l),dD=(s,l,d)=>MS(s,qe.fromDom(d.getNode())).fold(()=>de.some(St),m=>Jo(!dt(m,l),St)),fD=(s,l,d,m,v)=>Op(d,s.getBody(),v).fold(()=>de.some(St),w=>sk(m,d,v,w)?GT(s,m):dD(l,m,w)),hD=(s,l,d,m)=>{const v=Dt.fromRangeStart(s.selection.getRng());return ok(d,m).bind(w=>Fi(w)?e_(s,w):YT(s,d,l,w,v))},mD=(s,l,d,m)=>{const v=Dt.fromRangeStart(s.selection.getRng());return Fi(m)?e_(s,m):fD(s,d,l,m,v)},KT=(s,l)=>s?B4(l):hs(l),t_=(s,l)=>{const d=Dt.fromRangeStart(s.selection.getRng());return KT(l,d)||zl(l,s.getBody(),d).exists(m=>KT(l,m))},pD=(s,l,d)=>{const m=qe.fromDom(s.getBody());return MS(m,d).fold(()=>hD(s,l,m,d).orThunk(()=>Jo(t_(s,l),St)),v=>mD(s,l,m,v))},NS=(s,l)=>{const d=qe.fromDom(s.selection.getStart(!0)),m=Jb(s);return s.selection.isCollapsed()&&m.length===0?pD(s,l,d):uD(s,d,m)},lO=(s,l)=>{let d=l;for(;d&&d!==s;){if(wl(d)||ys(d))return d;d=d.parentNode}return null},f7=["data-ephox-","data-mce-","data-alloy-","data-snooker-","_"],gD=cn.each,rk=s=>{const l=s.dom,d=new Set(s.serializer.getTempAttrs()),m=(w,$)=>{if(w.nodeName!==$.nodeName||w.nodeType!==$.nodeType)return!1;const B=G=>{const le={};return gD(l.getAttribs(G),ue=>{const ge=ue.nodeName.toLowerCase();ge!=="style"&&!v(ge)&&(le[ge]=l.getAttrib(G,ge))}),le},H=(G,le)=>{for(const ue in G)if(an(G,ue)){const ge=le[ue];if(De(ge)||G[ue]!==ge)return!1;delete le[ue]}for(const ue in le)if(an(le,ue))return!1;return!0};return Zn(w)&&Zn($)&&(!H(B(w),B($))||!H(l.parseStyle(l.getAttrib(w,"style")),l.parseStyle(l.getAttrib($,"style"))))?!1:!Ld(w)&&!Ld($)},v=w=>Ut(f7,$=>rr(w,$))||d.has(w);return{compare:m,isAttributeInternal:v}},JT=s=>["h1","h2","h3","h4","h5","h6"].includes(s.name),ik=s=>s.name==="summary",bD=(s,l)=>{let d=s;for(;d=d.walk();)l(d)},eA=(s,l,d,m)=>{const v=d.name;for(let w=0,$=s.length;w<$;w++){const B=s[w];if(B.name===v){const H=m.nodes[v];H?H.nodes.push(d):m.nodes[v]={filter:B,nodes:[d]}}}if(d.attributes)for(let w=0,$=l.length;w<$;w++){const B=l[w],H=B.name;if(H in d.attributes.map){const G=m.attributes[H];G?G.nodes.push(d):m.attributes[H]={filter:B,nodes:[d]}}}},vD=(s,l,d)=>{const m={nodes:{},attributes:{}};return d.firstChild&&bD(d,v=>{eA(s,l,v,m)}),m},tA=(s,l)=>{const d=(m,v)=>{nn(m,w=>{const $=Gs(w.nodes);Ne(w.filter.callbacks,B=>{for(let H=$.length-1;H>=0;H--){const G=$[H];(!(v?G.attr(w.filter.name)!==void 0:G.name===w.filter.name)||Be(G.parent))&&$.splice(H,1)}$.length>0&&B($,w.filter.name,l)})})};d(s.nodes,!1),d(s.attributes,!0)},nA=(s,l,d,m={})=>{const v=vD(s,l,d);tA(v,m)},ak=(s,l,d,m)=>{if((s.pad_empty_with_br||l.insert)&&d(m)){const w=new Iu("br",1);l.insert&&w.attr("data-mce-bogus","1"),m.empty().append(w)}else m.empty().append(new Iu("#text",3)).value=Fs},OD=s=>{var l;return oA(s,"#text")&&((l=s==null?void 0:s.firstChild)===null||l===void 0?void 0:l.value)===Fs},oA=(s,l)=>{const d=s==null?void 0:s.firstChild;return Te(d)&&d===s.lastChild&&d.name===l},yD=(s,l)=>{const d=s.getElementRule(l.name);return(d==null?void 0:d.paddEmpty)===!0},n_=(s,l,d,m)=>m.isEmpty(l,d,v=>yD(s,v)),sA=(s,l)=>Te(s)&&(l(s)||s.name==="br"),_D=s=>{let l;for(let d=s;d;d=d.parent){const m=d.attr("contenteditable");if(m==="false")break;m==="true"&&(l=d)}return de.from(l)},lk=(s,l,d=s.parent)=>{if(l.getSpecialElements()[s.name])s.empty().remove();else{const m=s.children();for(const v of m)d&&!l.isValidChild(d.name,v.name)&&lk(v,l,d);s.unwrap()}},ck=(s,l,d,m=St)=>{const v=l.getTextBlockElements(),w=l.getNonEmptyElements(),$=l.getWhitespaceElements(),B=cn.makeMap("tr,td,th,tbody,thead,tfoot,table,summary"),H=new Set,G=le=>le!==d&&!B[le.name];for(let le=0;le1)if(uk(l,ue,ge))lk(ue,l);else{$e.reverse(),Me=$e[0].clone(),m(Me);let Ve=Me;for(let rt=0;rt<$e.length-1;rt++){l.isValidChild(Ve.name,$e[rt].name)&&rt>0?(He=$e[rt].clone(),m(He),Ve.append(He)):He=Ve;for(let ft=$e[rt].firstChild;ft&&ft!==$e[rt+1];){const ut=ft.next;He.append(ft),ft=ut}Ve=He}n_(l,w,$,Me)?ge.insert(ue,$e[0],!0):(ge.insert(Me,$e[0],!0),ge.insert(ue,Me)),ge=$e[0],(n_(l,w,$,ge)||oA(ge,"br"))&&ge.empty().remove()}else if(ue.parent){if(ue.name==="li"){let Ve=ue.prev;if(Ve&&(Ve.name==="ul"||Ve.name==="ol")){Ve.append(ue);continue}if(Ve=ue.next,Ve&&(Ve.name==="ul"||Ve.name==="ol")&&Ve.firstChild){Ve.insert(ue,Ve.firstChild,!0);continue}const rt=new Iu("ul",1);m(rt),ue.wrap(rt);continue}if(l.isValidChild(ue.parent.name,"div")&&l.isValidChild("div",ue.name)){const Ve=new Iu("div",1);m(Ve),ue.wrap(Ve)}else lk(ue,l)}}},wD=(s,l)=>{let d=s;for(;d;){if(d.name===l)return!0;d=d.parent}return!1},uk=(s,l,d=l.parent)=>d?s.children[l.name]&&!s.isValidChild(d.name,l.name)||l.name==="a"&&wD(d,"a")?!0:ik(d)&&JT(l)?!((d==null?void 0:d.firstChild)===l&&(d==null?void 0:d.lastChild)===l):!1:!1,SD=(s,l,d,m)=>{const v=document.createRange();return v.setStart(s,l),v.setEnd(d,m),v},rA=s=>{const l=Dt.fromRangeStart(s),d=Dt.fromRangeEnd(s),m=s.commonAncestorContainer;return zl(!1,m,d).map(v=>!_n(l,d,m)&&_n(l,v,m)?SD(l.container(),l.offset(),v.container(),v.offset()):s).getOr(s)},o_=s=>s.collapsed?s:rA(s),dk=s=>Te(s.firstChild)&&s.firstChild===s.lastChild,fk=s=>s.name==="br"||s.value===Fs,CD=(s,l)=>s.getBlockElements()[l.name]&&dk(l)&&fk(l.firstChild),hk=(s,l)=>{const d=s.getNonEmptyElements();return Te(l)&&(l.isEmpty(d)||CD(s,l))},iA=(s,l)=>{let d=l.firstChild,m=l.lastChild;return d&&d.name==="meta"&&(d=d.next),m&&m.attr("id")==="mce_marker"&&(m=m.prev),hk(s,m)&&(m=m==null?void 0:m.prev),!d||d!==m?!1:d.name==="ul"||d.name==="ol"},IS=s=>{var l,d;const m=s.firstChild,v=s.lastChild;return m&&m.nodeName==="META"&&((l=m.parentNode)===null||l===void 0||l.removeChild(m)),v&&v.id==="mce_marker"&&((d=v.parentNode)===null||d===void 0||d.removeChild(v)),s},aA=(s,l,d)=>{const m=l.serialize(d),v=s.createFragment(m);return IS(v)},kD=s=>{var l;return xt((l=s==null?void 0:s.childNodes)!==null&&l!==void 0?l:[],d=>d.nodeName==="LI")},s_=s=>s.data===Fs||Js(s),lA=s=>Te(s==null?void 0:s.firstChild)&&s.firstChild===s.lastChild&&s_(s.firstChild),cA=s=>!s.firstChild||lA(s),BS=s=>s.length>0&&cA(s[s.length-1])?s.slice(0,-1):s,zg=(s,l)=>{const d=s.getParent(l,s.isBlock);return d&&d.nodeName==="LI"?d:null},xD=(s,l)=>!!zg(s,l),h7=(s,l)=>{const d=l.cloneRange(),m=l.cloneRange();return d.setStartBefore(s),m.setEndAfter(s),[d.cloneContents(),m.cloneContents()]},ED=(s,l)=>{const d=Dt.before(s),v=Ih(l).next(d);return v?v.toRange():null},uA=(s,l)=>{const d=Dt.after(s),v=Ih(l).prev(d);return v?v.toRange():null},m7=(s,l,d,m)=>{const v=h7(s,m),w=s.parentNode;return w&&(w.insertBefore(v[0],s),cn.each(l,$=>{w.insertBefore($,s)}),w.insertBefore(v[1],s),w.removeChild(s)),uA(l[l.length-1],d)},mU=(s,l,d)=>{const m=s.parentNode;return m&&cn.each(l,v=>{m.insertBefore(v,s)}),ED(s,d)},p7=(s,l,d,m)=>(m.insertAfter(l.reverse(),s),uA(l[0],d)),dA=(s,l,d,m)=>{const v=aA(l,s,m),w=zg(l,d.startContainer),$=BS(kD(v.firstChild)),B=1,H=2,G=l.getRoot(),le=ue=>{const ge=Dt.fromRangeStart(d),Me=Ih(l.getRoot()),He=ue===B?Me.prev(ge):Me.next(ge),$e=He==null?void 0:He.getNode();return $e?zg(l,$e)!==w:!0};return w?le(B)?mU(w,$,G):le(H)?p7(w,$,G,l):m7(w,$,G,d):null},Pp=["pre"],fA=(s,l,d,m)=>{var v;const w=l.firstChild,$=l.lastChild,B=$.attr("data-mce-type")==="bookmark"?$.prev:$,H=w===B,G=gt(Pp,w.name);if(H&&G){const le=w.attr("contenteditable")!=="false",ue=((v=s.getParent(d,s.isBlock))===null||v===void 0?void 0:v.nodeName.toLowerCase())===w.name,ge=de.from(lO(m,d)).forall(wl);return le&&ue&&ge}else return!1},r_=lh,hA=(s,l,d)=>{if(Te(d)){const m=s.getParent(l.endContainer,r_);return d===m&&Kw(qe.fromDom(d),l)}else return!1},g7=(s,l,d)=>{var m;if(d.getAttribute("data-mce-bogus")==="all")(m=d.parentNode)===null||m===void 0||m.insertBefore(s.dom.createFragment(l),d);else{const v=d.firstChild,w=d.lastChild;!v||v===w&&v.nodeName==="BR"?s.dom.setHTML(d,l):s.selection.setContent(l,{no_events:!0})}},TD=(s,l,d)=>{de.from(s.getParent(l,"td,th")).map(qe.fromDom).each(m=>bo(m,d))},b7=(s,l)=>{const d=s.schema.getTextInlineElements(),m=s.dom;if(l){const v=s.getBody(),w=rk(s);cn.each(m.select("*[data-mce-fragment]"),$=>{if(Te(d[$.nodeName.toLowerCase()])&&yS(m,$)){for(let H=$.parentElement;Te(H)&&H!==v&&!k6(m,$,H);H=H.parentElement)if(w.compare(H,$)){m.remove($,!0);break}}})}},AD=s=>{let l=s;for(;l=l.walk();)l.type===1&&l.attr("data-mce-fragment","1")},mA=s=>{cn.each(s.getElementsByTagName("*"),l=>{l.removeAttribute("data-mce-fragment")})},v7=s=>!!s.getAttribute("data-mce-fragment"),$D=(s,l)=>Te(l)&&!s.schema.getVoidElements()[l.nodeName],O7=(s,l)=>{var d,m,v;let w;const $=s.dom,B=s.selection;if(!l)return;B.scrollIntoView(l);const H=lO(s.getBody(),l);if(H&&$.getContentEditable(H)==="false"){$.remove(l),B.select(H);return}let G=$.createRng();const le=l.previousSibling;if(un(le)){G.setStart(le,(m=(d=le.nodeValue)===null||d===void 0?void 0:d.length)!==null&&m!==void 0?m:0);const Me=l.nextSibling;un(Me)&&(le.appendData(Me.data),(v=Me.parentNode)===null||v===void 0||v.removeChild(Me))}else G.setStartBefore(l),G.setEndBefore(l);const ue=Me=>{let He=Dt.fromRangeStart(Me);return He=Ih(s.getBody()).next(He),He==null?void 0:He.toRange()},ge=$.getParent(l,$.isBlock);if($.remove(l),ge&&$.isEmpty(ge)){const Me=r_(ge);ou(qe.fromDom(ge)),G.setStart(ge,0),G.setEnd(ge,0),!Me&&!v7(ge)&&(w=ue(G))?(G=w,$.remove(ge)):$.add(ge,$.create("br",Me?{}:{"data-mce-bogus":"1"}))}B.setRng(G)},LS=s=>{const l=s.dom,d=o_(s.selection.getRng());s.selection.setRng(d);const m=l.getParent(d.startContainer,r_);hA(l,d,m)?Of(s,d,qe.fromDom(m)):d.startContainer===d.endContainer&&d.endOffset-d.startOffset===1&&un(d.startContainer.childNodes[d.startOffset])?d.deleteContents():s.getDoc().execCommand("Delete",!1)},PD=s=>{for(let l=s;l;l=l.walk())if(l.attr("id")==="mce_marker")return de.some(l);return de.none()},y7=(s,l,d)=>{var m;return Ut(d.children(),JT)&&((m=s.getParent(l,s.isBlock))===null||m===void 0?void 0:m.nodeName)==="SUMMARY"},DD=(s,l,d)=>{var m,v;const w=s.selection,$=s.dom,B=s.parser,H=d.merge,G=u0({validate:!0},s.schema),le='';d.preserve_zwsp||(l=ve(l)),l.indexOf("{$caret}")===-1&&(l+="{$caret}"),l=l.replace(/\{\$caret\}/,le);let ue=w.getRng();const ge=ue.startContainer,Me=s.getBody();ge===Me&&w.isCollapsed()&&$.isBlock(Me.firstChild)&&$D(s,Me.firstChild)&&$.isEmpty(Me.firstChild)&&(ue=$.createRng(),ue.setStart(Me.firstChild,0),ue.setEnd(Me.firstChild,0),w.setRng(ue)),w.isCollapsed()||LS(s);const He=w.getNode(),$e={context:He.nodeName.toLowerCase(),data:d.data,insert:!0},Ve=B.parse(l,$e);if(d.paste===!0&&iA(s.schema,Ve)&&xD($,He))return ue=dA(G,$,w.getRng(),Ve),ue&&w.setRng(ue),l;d.paste===!0&&fA($,Ve,He,s.getBody())&&((m=Ve.firstChild)===null||m===void 0||m.unwrap()),AD(Ve);let rt=Ve.lastChild;if(rt&&rt.attr("id")==="mce_marker"){const ft=rt;for(rt=rt.prev;rt;rt=rt.walk(!0))if(rt.type===3||!$.isBlock(rt.name)){rt.parent&&s.schema.isValidChild(rt.parent.name,"span")&&rt.parent.insert(ft,rt,rt.name==="br");break}}if(s._selectionOverrides.showBlockCaretContainer(He),!$e.invalid&&!y7($,He,Ve))l=G.serialize(Ve),g7(s,l,He);else{s.selection.setContent(le);let ft=w.getNode(),ut;const kt=s.getBody();for(ru(ft)?ft=ut=kt:ut=ft;ut&&ut!==kt;)ft=ut,ut=ut.parentNode;l=ft===kt?kt.innerHTML:$.getOuterHTML(ft);const en=B.parse(l),vn=PD(en),Fn=vn.bind(_D).getOr(en);vn.each(qn=>qn.replace(Ve));const zt=Ve.children(),It=(v=Ve.parent)!==null&&v!==void 0?v:en;Ve.unwrap();const Jt=xt(zt,qn=>uk(s.schema,qn,It));ck(Jt,s.schema,Fn),nA(B.getNodeFilters(),B.getAttributeFilters(),en),l=G.serialize(en),ft===kt?$.setHTML(kt,l):$.setOuterHTML(ft,l)}return b7(s,H),O7(s,$.get("mce_marker")),mA(s.getBody()),TD($,w.getStart(),s.schema),Jp(s.schema,s.getBody(),w.getStart()),l},mk=s=>s instanceof Iu,_7=s=>{c0(s)&&hu(s.getBody()).each(l=>{const d=l.getNode(),m=wd(d)?hu(d).getOr(l):l;s.selection.setRng(m.toRange())})},pA=(s,l,d)=>{s.dom.setHTML(s.getBody(),l),d!==!0&&_7(s)},w7=(s,l,d,m)=>{if(d=ve(d),d.length===0||/^\s+$/.test(d)){const v='
    ';l.nodeName==="TABLE"?d=""+v+"":/^(UL|OL)$/.test(l.nodeName)&&(d="
  • "+v+"
  • ");const w=Vl(s);return s.schema.isValidChild(l.nodeName.toLowerCase(),w.toLowerCase())?(d=v,d=s.dom.createHTML(w,Om(s),d)):d||(d=v),pA(s,d,m.no_selection),{content:d,html:d}}else{m.format!=="raw"&&(d=u0({validate:!1},s.schema).serialize(s.parser.parse(d,{isRootContent:!0,insert:!0})));const v=ya(qe.fromDom(l))?d:cn.trim(d);return pA(s,v,m.no_selection),{content:v,html:v}}},S7=(s,l,d,m)=>{nA(s.parser.getNodeFilters(),s.parser.getAttributeFilters(),d);const v=u0({validate:!1},s.schema).serialize(d),w=ve(ya(qe.fromDom(l))?v:cn.trim(v));return pA(s,w,m.no_selection),{content:d,html:w}},RD=(s,l,d)=>de.from(s.getBody()).map(m=>mk(l)?S7(s,m,l,d):w7(s,m,l,d)).getOr({content:l,html:mk(d.content)?"":d.content}),MD=s=>Oe(s)?s:Fe,gA=(s,l,d)=>{let m=s.dom;const v=MD(d);for(;m.parentNode;){m=m.parentNode;const w=qe.fromDom(m),$=l(w);if($.isSome())return $;if(v(w))break}return de.none()},q1=(s,l,d)=>{const m=l(s),v=MD(d);return m.orThunk(()=>v(s)?de.none():gA(s,l,v))},bA=Ny,ND=(s,l,d)=>{const m=s.formatter.get(d);if(m)for(let v=0;v{const w=s.dom.getRoot();if(l===w)return!1;const $=s.dom.getParent(l,B=>ND(s,B,d)?!0:B.parentNode===w||!!Wg(s,B,d,m,!0));return!!Wg(s,$,d,m,v)},FS=(s,l,d)=>qa(d)&&bA(l,d.inline)||Fh(d)&&bA(l,d.block)?!0:ic(d)?Zn(l)&&s.is(l,d.selector):!1,vA=(s,l,d,m,v,w)=>{const $=d[m],B=m==="attributes";if(Oe(d.onmatch))return d.onmatch(l,d,m);if($){if(sr($)){for(let H=0;H<$.length;H++)if(B?s.getAttrib(l,$[H]):e0(s,l,$[H]))return!0}else for(const H in $)if(an($,H)){const G=B?s.getAttrib(l,H):e0(s,l,H),le=Lh($[H],w),ue=Be(G)||Ji(G);if(ue&&Be(le))continue;if(v&&ue&&!d.exact||(!v||d.exact)&&!bA(G,Iy(le,H)))return!1}}return!0},Wg=(s,l,d,m,v)=>{const w=s.formatter.get(d),$=s.dom;if(w&&Zn(l))for(let B=0;B{if(m)return i_(s,m,l,d,v);if(m=s.selection.getNode(),i_(s,m,l,d,v))return!0;const w=s.selection.getStart();return!!(w!==m&&i_(s,w,l,d,v))},C7=(s,l,d)=>{const m=[],v={},w=s.selection.getStart();return s.dom.getParent(w,$=>{for(let B=0;B{const d=v=>dt(v,qe.fromDom(s.getBody())),m=(v,w)=>Wg(s,v.dom,w)?de.some(w):de.none();return de.from(s.selection.getStart(!0)).bind(v=>q1(qe.fromDom(v),w=>ws(l,$=>m(w,$)),d)).getOrNull()},ID=(s,l)=>{const d=s.formatter.get(l),m=s.dom;if(d&&s.selection.isEditable()){const v=s.selection.getStart(),w=Hv(m,v);for(let $=d.length-1;$>=0;$--){const B=d[$];if(!ic(B))return!0;for(let H=w.length-1;H>=0;H--)if(m.is(w[H],B.selector))return!0}}return!1},BD=(s,l,d)=>Dn(d,(m,v)=>{const w=nS(s,v);return s.formatter.matchNode(l,v,{},w)?m.concat([v]):m},[]),a_=z,gk=(s,l)=>s.importNode(l,!0),OA=s=>{if(s){const l=new Hr(s,s);for(let d=l.current();d;d=l.next())if(un(d))return d}return null},yA=s=>{const l=qe.fromTag("span");return $c(l,{id:Ey,"data-mce-bogus":"1","data-mce-type":"format-caret"}),s&&di(l,qe.fromText(a_)),l},LD=s=>{const l=OA(s);return l&&l.data.charAt(0)===a_&&l.deleteData(0,1),l},_A=(s,l,d)=>{const m=s.dom,v=s.selection;if(Vv(l))U1(s,!1,qe.fromDom(l),d,!0);else{const w=v.getRng(),$=m.getParent(l,m.isBlock),B=w.startContainer,H=w.startOffset,G=w.endContainer,le=w.endOffset,ue=LD(l);m.remove(l,!0),B===ue&&H>0&&w.setStart(ue,H-1),G===ue&&le>0&&w.setEnd(ue,le-1),$&&m.isEmpty($)&&Sd(qe.fromDom($)),v.setRng(w)}},wA=(s,l,d)=>{const m=s.dom,v=s.selection;if(l)_A(s,l,d);else if(l=I1(s.getBody(),v.getStart()),!l)for(;l=m.get(Ey);)_A(s,l,d)},bk=(s,l,d)=>{var m,v;const w=s.dom,$=w.getParent(d,Ue(il,s.schema));$&&w.isEmpty($)?(m=d.parentNode)===null||m===void 0||m.replaceChild(l,d):(u1(qe.fromDom(d)),w.isEmpty(d)?(v=d.parentNode)===null||v===void 0||v.replaceChild(l,d):w.insertAfter(l,d))},SA=(s,l)=>(s.appendChild(l),l),vk=(s,l)=>{var d;const m=kn(s,(w,$)=>SA(w,$.cloneNode(!1)),l),v=(d=m.ownerDocument)!==null&&d!==void 0?d:document;return SA(m,v.createTextNode(a_))},k7=(s,l,d,m,v,w)=>{const $=s.formatter,B=s.dom,H=xt(ts($.get()),ue=>ue!==m&&!As(ue,"removeformat")),G=BD(s,d,H);if(xt(G,ue=>!KE(s,ue,m)).length>0){const ue=d.cloneNode(!1);return B.add(l,ue),$.remove(m,v,ue,w),B.remove(ue),de.some(ue)}else return de.none()},x7=(s,l,d)=>{let m;const v=s.selection,w=s.formatter.get(l);if(!w)return;const $=v.getRng();let B=$.startOffset;const G=$.startContainer.nodeValue;m=I1(s.getBody(),v.getStart());const le=/[^\s\u00a0\u00ad\u200b\ufeff]/;if(G&&B>0&&B{const v=s.dom,w=s.selection;let $=!1;const B=s.formatter.get(l);if(!B)return;const H=w.getRng(),G=H.startContainer,le=H.startOffset;let ue=G;un(G)&&(le!==G.data.length&&($=!0),ue=ue.parentNode);const ge=[];let Me;for(;ue;){if(Wg(s,ue,l,d,m)){Me=ue;break}ue.nextSibling&&($=!0),ge.push(ue),ue=ue.parentNode}if(Me)if($){const He=w.getBookmark();H.collapse(!0);let $e=wp(v,H,B,!0);$e=pe($e),s.formatter.remove(l,d,$e,m),w.moveToBookmark(He)}else{const He=I1(s.getBody(),Me),$e=Te(He)?v.getParents(Me.parentNode,mt,He):[],Ve=yA(!1).dom;bk(s,Ve,He??Me);const rt=k7(s,Ve,Me,l,d,m),ft=vk([...ge,...rt.toArray(),...$e],Ve);He&&_A(s,He,Te(He)),w.setCursorLocation(ft,1),v.isEmpty(Me)&&v.remove(Me)}},CA=(s,l,d)=>{const m=s.selection,v=s.getBody();wA(s,null,d),(l===8||l===46)&&m.isCollapsed()&&m.getStart().innerHTML===a_&&wA(s,I1(v,m.getStart()),!0),(l===37||l===39)&&wA(s,I1(v,m.getStart()),!0)},HD=s=>un(s)&&Vi(s.data,Fs),E7=s=>{s.on("mouseup keydown",l=>{CA(s,l.keyCode,HD(s.selection.getRng().endContainer))})},QD=s=>{const l=yA(!1),d=vk(s,l.dom);return{caretContainer:l,caretPosition:Dt(d,0)}},VD=(s,l)=>{const{caretContainer:d,caretPosition:m}=QD(l);return xi(qe.fromDom(s),d),$s(qe.fromDom(s)),m},Ok=(s,l)=>{const{caretContainer:d,caretPosition:m}=QD(l);return s.insertNode(d.dom),m},Zg=(s,l)=>{if(Bd(l.dom))return!1;const d=s.schema.getTextInlineElements();return an(d,Os(l))&&!Bd(l.dom)&&!Su(l.dom)},HS={},yk=ea(["pre"]),Xa=(s,l)=>{HS[s]||(HS[s]=[]),HS[s].push(l)},kA=(s,l)=>{an(HS,s)&&Ne(HS[s],d=>{d(l)})};Xa("pre",s=>{const l=s.selection.getRng(),d=v=>w=>{const $=w.previousSibling;return yk($)&>(v,$)},m=(v,w)=>{const $=qe.fromDom(w),B=uo($).dom;$s($),lr(qe.fromDom(v),[qe.fromTag("br",B),qe.fromTag("br",B),...Ci($)])};if(!l.collapsed){const v=s.selection.getSelectedBlocks(),w=xt(xt(v,yk),d(v));Ne(w,$=>{m($.previousSibling,$)})}});const _k=["fontWeight","fontStyle","color","fontSize","fontFamily"],X1=s=>ae(s.styles)&&Ut(ts(s.styles),l=>gt(_k,l)),zD=s=>Gn(s,l=>qa(l)&&l.inline==="span"&&X1(l)),xA=(s,l)=>{const d=s.get(l);return _e(d)?zD(d):de.none()},l_=(s,l)=>Ru(l,Dt.fromRangeStart(s)).isNone(),WD=(s,l)=>Uc(l,Dt.fromRangeEnd(s)).exists(d=>!Js(d.getNode())||Uc(l,d).isSome())===!1,ZD=s=>l=>Gm(l)&&s.isEditable(l),c_=s=>{const l=s.getSelectedBlocks(),d=s.getRng();if(s.isCollapsed())return[];if(l.length===1)return l_(d,l[0])&&WD(d,l[0])?l:[];{const m=Oo(l).filter($=>l_(d,$)).toArray(),v=wo(l).filter($=>WD(d,$)).toArray(),w=l.slice(1,-1);return m.concat(w).concat(v)}},T7=s=>xt(c_(s),ZD(s.dom)),f0=s=>xt(s.getSelectedBlocks(),ZD(s.dom)),EA=cn.each,Ug=s=>Zn(s)&&!Ld(s)&&!Bd(s)&&!Su(s),Xf=(s,l)=>{for(let d=s;d;d=d[l]){if(un(d)&&Ls(d.data))return s;if(Zn(d)&&!Ld(d))return d}return s},QS=(s,l,d)=>{const m=rk(s),v=Ha(l)&&s.dom.isEditable(l),w=Ha(d)&&s.dom.isEditable(d);if(v&&w){const $=Xf(l,"previousSibling"),B=Xf(d,"nextSibling");if(m.compare($,B)){for(let H=$.nextSibling;H&&H!==B;){const G=H;H=H.nextSibling,$.appendChild(G)}return s.dom.remove(B),cn.each(cn.grep(B.childNodes),H=>{$.appendChild(H)}),$}}return d},wk=(s,l,d,m)=>{var v;if(m&&l.merge_siblings!==!1){const w=(v=QS(s,Ln(m),m))!==null&&v!==void 0?v:m;QS(s,w,Ln(w,!0))}},A7=(s,l,d)=>{if(l.clear_child_styles){const m=l.links?"*:not(a)":"*";EA(s.select(m,d),v=>{Ug(v)&&s.isEditable(v)&&EA(l.styles,(w,$)=>{s.setStyle(v,$,"")})})}},TA=(s,l,d)=>{EA(s.childNodes,m=>{Ug(m)&&(l(m)&&d(m),m.hasChildNodes()&&TA(m,l,d))})},Sk=(s,l)=>{l.nodeName==="SPAN"&&s.getAttribs(l).length===0&&s.remove(l,!0)},UD=(s,l)=>d=>!!(d&&e0(s,d,l)),Qh=(s,l,d)=>m=>{s.setStyle(m,l,d),m.getAttribute("style")===""&&m.removeAttribute("style"),Sk(s,m)},qg=hf.generate([{keep:[]},{rename:["name"]},{removed:[]}]),qD=/^(src|href|style)$/,VS=cn.each,u_=Ny,uO=s=>/^(TR|TH|TD)$/.test(s.nodeName),Ck=(s,l,d)=>s.isChildOf(l,d)&&l!==d&&!s.isBlock(d),XD=(s,l,d)=>{let m=l[d?"startContainer":"endContainer"],v=l[d?"startOffset":"endOffset"];if(Zn(m)){const w=m.childNodes.length-1;!d&&v&&v--,m=m.childNodes[v>w?w:v]}return un(m)&&d&&v>=m.data.length&&(m=new Hr(m,s.getBody()).next()||m),un(m)&&!d&&v===0&&(m=new Hr(m,s.getBody()).prev()||m),m},AA=(s,l)=>{const d=l?"firstChild":"lastChild",m=s[d];return uO(s)&&m?s.nodeName==="TR"&&m[d]||m:s},$A=(s,l,d,m)=>{var v;const w=s.create(d,m);return(v=l.parentNode)===null||v===void 0||v.insertBefore(w,l),w.appendChild(l),w},jD=(s,l,d,m,v)=>{const w=qe.fromDom(l),$=qe.fromDom(s.create(m,v)),B=d?la(w):Um(w);return lr($,B),d?(xi(w,$),_u($,w)):(Bl(w,$),di($,w)),$.dom},$7=(s,l)=>l.links&&s.nodeName==="A",YD=(s,l,d)=>{const m=l.parentNode;let v;const w=s.dom,$=Vl(s);Fh(d)&&m===w.getRoot()&&(!d.list_block||!u_(l,d.list_block))&&Ne(Gs(l.childNodes),B=>{_p(s,$,B.nodeName.toLowerCase())?v?v.appendChild(B):(v=$A(w,B,$),w.setAttribs(v,Om(s))):v=null}),!(Ly(d)&&!u_(d.inline,l))&&w.remove(l,!0)},d_=(s,l,d)=>yt(s)?{name:l,value:null}:{name:s,value:Lh(l,d)},GD=(s,l)=>{s.getAttrib(l,"style")===""&&(l.removeAttribute("style"),l.removeAttribute("data-mce-style"))},PA=(s,l,d,m,v)=>{let w=!1;VS(d.styles,($,B)=>{const{name:H,value:G}=d_(B,$,m),le=Iy(G,H);(d.remove_similar||ne(G)||!Zn(v)||u_(e0(s,v,H),le))&&s.setStyle(l,H,""),w=!0}),w&&GD(s,l)},DA=(s,l,d)=>{l==="removeformat"?Ne(f0(s.selection),m=>{Ne(_k,v=>s.dom.setStyle(m,v,"")),GD(s.dom,m)}):xA(s.formatter,l).each(m=>{Ne(f0(s.selection),v=>PA(s.dom,v,m,d,null))})},KD=(s,l,d,m,v)=>{const w=s.dom,$=rk(s),B=s.schema;if(qa(l)&&eg(B,l.inline)&&gs(B,m)&&m.parentElement===s.getBody())return YD(s,m,l),qg.removed();if(!l.ceFalseOverride&&m&&w.getContentEditableParent(m)==="false"||m&&!FS(w,m,l)&&!$7(m,l))return qg.keep();const H=m,G=l.preserve_attributes;if(qa(l)&&l.remove==="all"&&_e(G)){const le=xt(w.getAttribs(H),ue=>gt(G,ue.name.toLowerCase()));if(w.removeAllAttribs(H),Ne(le,ue=>w.setAttrib(H,ue.name,ue.value)),le.length>0)return qg.rename("span")}if(l.remove!=="all"){PA(w,H,l,d,v),VS(l.attributes,(ue,ge)=>{const{name:Me,value:He}=d_(ge,ue,d);if(l.remove_similar||ne(He)||!Zn(v)||u_(w.getAttrib(v,Me),He)){if(Me==="class"){const $e=w.getAttrib(H,Me);if($e){let Ve="";if(Ne($e.split(/\s+/),rt=>{/mce\-\w+/.test(rt)&&(Ve+=(Ve?" ":"")+rt)}),Ve){w.setAttrib(H,Me,Ve);return}}}if(qD.test(Me)&&H.removeAttribute("data-mce-"+Me),Me==="style"&&ea(["li"])(H)&&w.getStyle(H,"list-style-type")==="none"){H.removeAttribute(Me),w.setStyle(H,"list-style-type","none");return}Me==="class"&&H.removeAttribute("className"),H.removeAttribute(Me)}}),VS(l.classes,ue=>{ue=Lh(ue,d),(!Zn(v)||w.hasClass(v,ue))&&w.removeClass(H,ue)});const le=w.getAttribs(H);for(let ue=0;ue{let w;return l.parentNode&&Ne(Hv(s.dom,l.parentNode).reverse(),$=>{if(!w&&Zn($)&&$.id!=="_start"&&$.id!=="_end"){const B=Wg(s,$,d,m,v);B&&B.split!==!1&&(w=$)}}),w},eR=(s,l,d,m)=>KD(s,l,d,m,m).fold(je(m),v=>(s.dom.createFragment().appendChild(m),s.dom.rename(m,v)),je(null)),P7=(s,l,d,m,v,w,$,B)=>{var H,G;let le,ue;const ge=s.dom;if(d){const Me=d.parentNode;for(let He=m.parentNode;He&&He!==Me;He=He.parentNode){let $e=ge.clone(He,!1);for(let Ve=0;Ve{const w=s.formatter.get(l),$=w[0],B=s.dom,H=s.selection,G=$e=>{const Ve=JD(s,$e,l,d,v);return P7(s,w,Ve,$e,$e,!0,$,d)},le=$e=>Ld($e)&&Zn($e)&&($e.id==="_start"||$e.id==="_end"),ue=$e=>Ut(w,Ve=>zS(s,Ve,d,$e,$e)),ge=$e=>{const Ve=Gs($e.childNodes),ft=ue($e)||Ut(w,en=>FS(B,$e,en)),ut=$e.parentNode;if(!ft&&Te(ut)&&Qv($)&&ue(ut),$.deep&&Ve.length)for(let en=0;en{Zn($e)&&s.dom.getStyle($e,"text-decoration")===en&&$e.parentNode&&bC(B,$e.parentNode)===en&&zS(s,{deep:!1,exact:!0,inline:"span",styles:{textDecoration:en}},void 0,$e)})},Me=$e=>{const Ve=B.get($e?"_start":"_end");if(Ve){let rt=Ve[$e?"firstChild":"lastChild"];return le(rt)&&(rt=rt[$e?"firstChild":"lastChild"]),un(rt)&&rt.data.length===0&&(rt=$e?Ve.previousSibling||Ve.nextSibling:Ve.nextSibling||Ve.previousSibling),B.remove(Ve,!0),rt}else return null},He=$e=>{let Ve,rt,ft=wp(B,$e,w,$e.collapsed);if($.split){if(ft=pe(ft),Ve=XD(s,ft,!0),rt=XD(s,ft),Ve!==rt){if(Ve=AA(Ve,!0),rt=AA(rt,!1),Ck(B,Ve,rt)){const kt=de.from(Ve.firstChild).getOr(Ve);G(jD(B,kt,!0,"span",{id:"_start","data-mce-type":"bookmark"})),Me(!0);return}if(Ck(B,rt,Ve)){const kt=de.from(rt.lastChild).getOr(rt);G(jD(B,kt,!1,"span",{id:"_end","data-mce-type":"bookmark"})),Me(!1);return}Ve=$A(B,Ve,"span",{id:"_start","data-mce-type":"bookmark"}),rt=$A(B,rt,"span",{id:"_end","data-mce-type":"bookmark"});const ut=B.createRng();ut.setStartAfter(Ve),ut.setEndBefore(rt),qv(B,ut,kt=>{Ne(kt,en=>{!Ld(en)&&!Ld(en.parentNode)&&G(en)})}),G(Ve),G(rt),Ve=Me(!0),rt=Me()}else Ve=rt=G(Ve);ft.startContainer=Ve.parentNode?Ve.parentNode:Ve,ft.startOffset=B.nodeIndex(Ve),ft.endContainer=rt.parentNode?rt.parentNode:rt,ft.endOffset=B.nodeIndex(rt)+1}qv(B,ft,ut=>{Ne(ut,ge)})};if(m){if(Bv(m)){const $e=B.createRng();$e.setStartBefore(m),$e.setEndAfter(m),He($e)}else He(m);H1(s,l,m,d);return}!H.isCollapsed()||!qa($)||Jb(s).length?(Lv(s,()=>Lg(s,He),$e=>qa($)&&pk(s,l,d,$e)),s.nodeChanged()):FD(s,l,d,v),DA(s,l,d),H1(s,l,m,d)},tR=(s,l,d,m,v)=>{(m||s.selection.isEditable())&&D7(s,l,d,m,v)},zS=(s,l,d,m,v)=>KD(s,l,d,m,v).fold(Fe,w=>(s.dom.rename(m,w),!0),mt),nR=cn.each,R7=(s,l,d,m)=>{const v=w=>{if(Ha(w)&&Zn(w.parentNode)&&s.isEditable(w)){const $=bC(s,w.parentNode);s.getStyle(w,"color")&&$?s.setStyle(w,"text-decoration",$):s.getStyle(w,"text-decoration")===$&&s.setStyle(w,"text-decoration",null)}};l.styles&&(l.styles.color||l.styles.textDecoration)&&(cn.walk(m,v,"childNodes"),v(m))},M7=(s,l,d,m)=>{if(l.styles&&l.styles.backgroundColor){const v=UD(s,"fontSize");TA(m,w=>v(w)&&s.isEditable(w),Qh(s,"backgroundColor",Lh(l.styles.backgroundColor,d)))}},N7=(s,l,d,m)=>{if(qa(l)&&(l.inline==="sub"||l.inline==="sup")){const v=UD(s,"fontSize");TA(m,$=>v($)&&s.isEditable($),Qh(s,"fontSize",""));const w=xt(s.select(l.inline==="sup"?"sub":"sup",m),s.isEditable);s.remove(w,!0)}},I7=(s,l,d,m)=>{nR(l,v=>{qa(v)&&nR(s.dom.select(v.inline,m),w=>{Ug(w)&&zS(s,v,d,w,v.exact?w:null)}),A7(s.dom,v,m)})},B7=(s,l,d,m,v)=>{const w=v.parentNode;Wg(s,w,d,m)&&zS(s,l,m,v)||l.merge_with_parents&&w&&s.dom.getParent(w,$=>Wg(s,$,d,m)?(zS(s,l,m,v),!0):!1)},kk=cn.each,L7=(s,l,d,m)=>{if(cy(s)&&qa(l)&&d.parentNode){const v=LO(s.schema),w=s7(qe.fromDom(d),$=>Bd($.dom));return Do(v,m)&&Fi(qe.fromDom(d.parentNode),!1)&&!w}else return!1},oR=(s,l,d,m)=>{if(kk(d.styles,(v,w)=>{s.setStyle(l,w,Lh(v,m))}),d.styles){const v=s.getAttrib(l,"style");v&&s.setAttrib(l,"data-mce-style",v)}},sR=(s,l,d,m)=>{const v=s.formatter.get(l),w=v[0],$=!m&&s.selection.isCollapsed(),B=s.dom,H=s.selection,G=(He,$e=w)=>{Oe($e.onformat)&&$e.onformat(He,$e,d,m),oR(B,He,$e,d),kk($e.attributes,(Ve,rt)=>{B.setAttrib(He,rt,Lh(Ve,d))}),kk($e.classes,Ve=>{const rt=Lh(Ve,d);B.hasClass(He,rt)||B.addClass(He,rt)})},le=(He,$e)=>{let Ve=!1;return kk(He,rt=>ic(rt)?B.getContentEditable($e)==="false"&&!rt.ceFalseOverride||Te(rt.collapsed)&&rt.collapsed!==$?!0:B.is($e,rt.selector)&&!Bd($e)?(G($e,rt),Ve=!0,!1):!0:!1),Ve},ue=He=>{if(j(He)){const $e=B.create(He);return G($e),$e}else return null},ge=(He,$e,Ve)=>{const rt=[];let ft=!0;const ut=w.inline||w.block,kt=ue(ut),en=zt=>By(w)&&Wg(s,zt,l,d),vn=(zt,It,Jt)=>{const qn=t0(w)&&il(s.schema,zt)&&_p(s,It,ut);return Jt&&qn},Fn=(zt,It,Jt,qn)=>{const mo=zt.nodeName.toLowerCase(),es=_p(s,ut,mo)&&_p(s,It,ut),Es=!Ve&&un(zt)&&K(zt.data),Ir=Bd(zt),hi=!qa(w)||!He.isBlock(zt);return(Jt||qn)&&es&&!Es&&!Ir&&hi};qv(He,$e,zt=>{let It;const Jt=qn=>{let mo=!1,es=ft,Es=!1;const Ir=qn.parentNode,hi=Ir.nodeName.toLowerCase(),pa=He.getContentEditable(qn);Te(pa)&&(es=ft,ft=pa==="true",mo=!0,Es=Fv(s,qn));const Cc=ft&&!mo;if(Js(qn)&&!L7(s,w,qn,hi)){It=null,Fh(w)&&He.remove(qn);return}if(en(qn)){It=null;return}if(vn(qn,hi,Cc)){const qr=He.rename(qn,ut);G(qr),rt.push(qr),It=null;return}if(ic(w)){let qr=le(v,qn);if(!qr&&Te(Ir)&&Qv(w)&&(qr=le(v,Ir)),!qa(w)||qr){It=null;return}}Te(kt)&&Fn(qn,hi,Cc,Es)?(It||(It=He.clone(kt,!1),Ir.insertBefore(It,qn),rt.push(It)),Es&&mo&&(ft=es),It.appendChild(qn)):(It=null,Ne(Gs(qn.childNodes),Jt),mo&&(ft=es),It=null)};Ne(zt,Jt)}),w.links===!0&&Ne(rt,zt=>{const It=Jt=>{Jt.nodeName==="A"&&G(Jt,w),Ne(Gs(Jt.childNodes),It)};It(zt)}),Ne(rt,zt=>{const It=mo=>{let es=0;return Ne(mo.childNodes,Es=>{!gf(Es)&&!Ld(Es)&&es++}),es},Jt=mo=>Gn(mo.childNodes,eS).filter(Es=>He.getContentEditable(Es)!=="false"&&FS(He,Es,w)).map(Es=>{const Ir=He.clone(Es,!1);return G(Ir),He.replace(Ir,mo,!0),He.remove(Es,!0),Ir}).getOr(mo),qn=It(zt);if((rt.length>1||!He.isBlock(zt))&&qn===0){He.remove(zt,!0);return}(qa(w)||Fh(w)&&w.wrapper)&&(!w.exact&&qn===1&&(zt=Jt(zt)),I7(s,v,d,zt),B7(s,w,l,d,zt),M7(He,w,d,zt),R7(He,w,d,zt),N7(He,w,d,zt),wk(s,w,d,zt))})},Me=Bv(m)?m:H.getNode();if(B.getContentEditable(Me)==="false"&&!Fv(s,Me)){m=Me,le(v,m),_c(s,l,m,d);return}if(w){if(m)if(Bv(m)){if(!le(v,m)){const He=B.createRng();He.setStartBefore(m),He.setEndAfter(m),ge(B,wp(B,He,v),!0)}}else ge(B,m,!0);else!$||!qa(w)||Jb(s).length?(H.setRng(o_(H.getRng())),Lv(s,()=>{Lg(s,(He,$e)=>{const Ve=$e?He:wp(B,He,v);ge(B,Ve,!1)})},mt),s.nodeChanged()):x7(s,l,d),xA(s.formatter,l).each(He=>{Ne(T7(s.selection),$e=>oR(B,$e,He,d))});kA(l,s)}_c(s,l,m,d)},rR=(s,l,d,m)=>{(m||s.selection.isEditable())&&sR(s,l,d,m)},dO=s=>an(s,"vars"),F7=(s,l)=>{s.set({}),l.on("NodeChange",d=>{RA(l,d.element,s.get())}),l.on("FormatApply FormatRemove",d=>{const m=de.from(d.node).map(v=>Bv(v)?v:v.startContainer).bind(v=>Zn(v)?de.some(v):de.from(v.parentElement)).getOrThunk(()=>iR(l));RA(l,m,s.get())})},iR=s=>s.selection.getStart(),aR=(s,l,d,m,v)=>is(l,B=>{const H=s.formatter.matchNode(B,d,v??{},m);return!De(H)},B=>ND(s,B,d)?!0:m?!1:Te(s.formatter.matchNode(B,d,v,!0))),lR=(s,l)=>{const d=l??iR(s);return xt(Hv(s.dom,d),m=>Zn(m)&&!Su(m))},RA=(s,l,d)=>{const m=lR(s,l);nn(d,(v,w)=>{const $=B=>{const H=aR(s,m,w,B.similar,dO(B)?B.vars:void 0),G=H.isSome();if(B.state.get()!==G){B.state.set(G);const le=H.getOr(l);dO(B)?B.callback(G,{node:le,format:w,parents:m}):Ne(B.callbacks,ue=>ue(G,{node:le,format:w,parents:m}))}};Ne([v.withSimilar,v.withoutSimilar],$),Ne(v.withVars,$)})},H7=(s,l,d,m,v,w)=>{const $=l.get();Ne(d.split(","),B=>{const H=ro($,B).getOrThunk(()=>{const le={withSimilar:{state:Ai(!1),similar:!0,callbacks:[]},withoutSimilar:{state:Ai(!1),similar:!1,callbacks:[]},withVars:[]};return $[B]=le,le}),G=()=>{const le=lR(s);return aR(s,le,B,v,w).isSome()};if(De(w)){const le=v?H.withSimilar:H.withoutSimilar;le.callbacks.push(m),le.callbacks.length===1&&le.state.set(G())}else H.withVars.push({state:Ai(G()),similar:v,vars:w,callback:m})}),l.set($)},Q7=(s,l,d)=>{const m=s.get();Ne(l.split(","),v=>ro(m,v).each(w=>{m[v]={withSimilar:{...w.withSimilar,callbacks:xt(w.withSimilar.callbacks,$=>$!==d)},withoutSimilar:{...w.withoutSimilar,callbacks:xt(w.withoutSimilar.callbacks,$=>$!==d)},withVars:xt(w.withVars,$=>$.callback!==d)}})),s.set(m)},V7=(s,l,d,m,v,w)=>(H7(s,l,d,m,v,w),{unbind:()=>Q7(l,d,m)}),z7=(s,l,d,m)=>{const v=s.formatter.get(l);v&&(pk(s,l,d,m)&&(!("toggle"in v[0])||v[0].toggle)?tR(s,l,d,m):rR(s,l,d,m))},cR=cn.explode,uR=()=>{const s={};return{addFilter:(v,w)=>{Ne(cR(v),$=>{an(s,$)||(s[$]={name:$,callbacks:[]}),s[$].callbacks.push(w)})},getFilters:()=>Xn(s),removeFilter:(v,w)=>{Ne(cR(v),$=>{if(an(s,$))if(Te(w)){const B=s[$],H=xt(B.callbacks,G=>G!==w);H.length>0?B.callbacks=H:delete s[$]}else delete s[$]})}}},W7=(s,l)=>{Ne(l,d=>{s.attr(d,null)})},Z7=(s,l,d)=>{s.addNodeFilter("font",m=>{Ne(m,v=>{const w=l.parse(v.attr("style")),$=v.attr("color"),B=v.attr("face"),H=v.attr("size");$&&(w.color=$),B&&(w["font-family"]=B),H&&Gc(H).each(G=>{w["font-size"]=d[G-1]}),v.name="span",v.attr("style",l.serialize(w)),W7(v,["color","face","size"])})})},U7=(s,l,d)=>{s.addNodeFilter("strike",m=>{const v=l.type!=="html4";Ne(m,w=>{if(v)w.name="s";else{const $=d.parse(w.attr("style"));$["text-decoration"]="line-through",w.name="span",w.attr("style",d.serialize($))}})})},q7=(s,l,d)=>{var m;const v=Rf();l.convert_fonts_to_spans&&Z7(s,v,cn.explode((m=l.font_size_legacy_values)!==null&&m!==void 0?m:"")),U7(s,d,v)},MA=(s,l,d)=>{l.inline_styles&&q7(s,l,d)},NA=(s,l,d)=>{l.addNodeFilter("br",(m,v,w)=>{const $=cn.extend({},d.getBlockElements()),B=d.getNonEmptyElements(),H=d.getWhitespaceElements();$.body=1;const G=le=>le.name in $||Td(d,le);for(let le=0,ue=m.length;lefetch(s).then(l=>l.ok?l.blob():Promise.reject()).catch(()=>Promise.reject({message:`Cannot convert ${s} to Blob. Resource might not exist or is inaccessible.`,uriType:"blob"})),WS=s=>{const l=/([a-z0-9+\/=\s]+)/i.exec(s);return l?l[1]:""},xk=s=>{const[l,...d]=s.split(","),m=d.join(","),v=/data:([^/]+\/[^;]+)(;.+)?/.exec(l);if(v){const w=v[2]===";base64",$=w?WS(m):decodeURIComponent(m);return de.some({type:v[1],data:$,base64Encoded:w})}else return de.none()},f_=(s,l,d=!0)=>{let m=l;if(d)try{m=atob(l)}catch{return de.none()}const v=new Uint8Array(m.length);for(let w=0;wnew Promise((l,d)=>{xk(s).bind(({type:m,data:v,base64Encoded:w})=>f_(m,v,w)).fold(()=>d("Invalid data URI"),l)}),dR=s=>rr(s,"blob:")?pU(s):rr(s,"data:")?ZS(s):Promise.reject("Unknown URI format"),X7=s=>new Promise((l,d)=>{const m=new FileReader;m.onloadend=()=>{l(m.result)},m.onerror=()=>{var v;d((v=m.error)===null||v===void 0?void 0:v.message)},m.readAsDataURL(s)});let j7=0;const gU=s=>"blobid"+j7++,fR=(s,l,d)=>xk(s).bind(({data:m,type:v,base64Encoded:w})=>{if(l&&!w)return de.none();{const $=w?m:btoa(m);return d($,v)}}),hR=(s,l,d)=>{const m=s.create(gU(),l,d);return s.add(m),m},Y7=(s,l,d=!1)=>fR(l,d,(m,v)=>de.from(s.getByData(m,v)).orThunk(()=>f_(v,m).map(w=>hR(s,w,m)))),G7=(s,l)=>{const d=()=>Promise.reject("Invalid data URI");if(rr(l,"blob:")){const m=s.getByUri(l);return Te(m)?Promise.resolve(m):dR(l).then(v=>X7(v).then(w=>fR(w,!1,$=>de.some(hR(s,v,$))).getOrThunk(d)))}else return rr(l,"data:")?Y7(s,l).fold(d,m=>Promise.resolve(m)):Promise.reject("Unknown image data format")},mR=s=>Te(s.attr("data-mce-bogus")),K7=s=>s.attr("src")===Mn.transparentSrc||Te(s.attr("data-mce-placeholder")),pR=(s,l)=>{const{blob_cache:d}=l;if(d){const m=v=>{const w=v.attr("src");K7(v)||mR(v)||Be(w)||Y7(d,w,!0).each($=>{v.attr("src",$.blobUri())})};s.addAttributeFilter("src",v=>Ne(v,m))}},IA=(s,l)=>rr(s,`${l}/`),Ek=(s,l,d,m,v)=>{let w;De(s)?w="iframe":IA(s,"image")?w="img":IA(s,"video")?w="video":IA(s,"audio")?w="audio":w="iframe";const $=new Iu(w,1);return $.attr(w==="audio"?{src:l}:{src:l,width:d,height:m}),(w==="audio"||w==="video")&&$.attr("controls",""),w==="iframe"&&v&&$.attr("sandbox",""),$},gR=(s,l)=>{const d=s.schema;l.remove_trailing_brs&&NA(l,s,d),s.addAttributeFilter("href",v=>{let w=v.length;const $=H=>H.split(" ").filter(le=>le.length>0).concat(["noopener"]).sort().join(" "),B=H=>{const G=H?cn.trim(H):"";return/\b(noopener)\b/g.test(G)?G:$(G)};if(!l.allow_unsafe_link_target)for(;w--;){const H=v[w];H.name==="a"&&H.attr("target")==="_blank"&&H.attr("rel",B(H.attr("rel")))}}),l.allow_html_in_named_anchor||s.addAttributeFilter("id,name",v=>{let w=v.length,$,B,H,G;for(;w--;)if(G=v[w],G.name==="a"&&G.firstChild&&!G.attr("href"))for(H=G.parent,$=G.lastChild;$&&H;)B=$.prev,H.insert($,G),$=B}),l.fix_list_elements&&s.addNodeFilter("ul,ol",v=>{let w=v.length,$,B;for(;w--;)if($=v[w],B=$.parent,B&&(B.name==="ul"||B.name==="ol"))if($.prev&&$.prev.name==="li")$.prev.append($);else{const H=new Iu("li",1);H.attr("style","list-style-type: none"),$.wrap(H)}});const m=d.getValidClasses();l.validate&&m&&s.addAttributeFilter("class",v=>{var w;let $=v.length;for(;$--;){const B=v[$],H=(w=B.attr("class"))!==null&&w!==void 0?w:"",G=cn.explode(H," ");let le="";for(let ue=0;ueNe(v,w=>{w.replace(Ek(w.attr("type"),w.name==="object"?w.attr("data"):w.attr("src"),w.attr("width"),w.attr("height"),l.sandbox_iframes))})),l.sandbox_iframes&&s.addNodeFilter("iframe",v=>Ne(v,w=>w.attr("sandbox","")))},{entries:Ol,setPrototypeOf:J7,isFrozen:bU,getPrototypeOf:vU,getOwnPropertyDescriptor:OU}=Object;let{freeze:al,seal:jf,create:h0}=Object,{apply:Xg,construct:BA}=typeof Reflect<"u"&&Reflect;Xg||(Xg=function(l,d,m){return l.apply(d,m)}),al||(al=function(l){return l}),jf||(jf=function(l){return l}),BA||(BA=function(l,d){return new l(...d)});const eF=Rm(Array.prototype.forEach),h_=Rm(Array.prototype.pop),jg=Rm(Array.prototype.push),j1=Rm(String.prototype.toLowerCase),Tk=Rm(String.prototype.toString),LA=Rm(String.prototype.match),Dm=Rm(String.prototype.replace),bR=Rm(String.prototype.indexOf),tF=Rm(String.prototype.trim),Vh=Rm(RegExp.prototype.test),m_=nF(TypeError);function Rm(s){return function(l){for(var d=arguments.length,m=new Array(d>1?d-1:0),v=1;v/gm),CR=jf(/\${[\w\W]*}/gm),kR=jf(/^data-[\-\w.\u00B7-\uFFFF]/),xR=jf(/^aria-[\-\w]+$/),ER=jf(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),oF=jf(/^(?:\w+script|data):/i),sF=jf(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),$k=jf(/^html$/i);var g_=Object.freeze({__proto__:null,MUSTACHE_EXPR:wR,ERB_EXPR:SR,TMPLIT_EXPR:CR,DATA_ATTR:kR,ARIA_ATTR:xR,IS_ALLOWED_URI:ER,IS_SCRIPT_OR_DATA:oF,ATTR_WHITESPACE:sF,DOCTYPE_NAME:$k});const TR=()=>typeof window>"u"?null:window,AR=function(l,d){if(typeof l!="object"||typeof l.createPolicy!="function")return null;let m=null;const v="data-tt-policy-suffix";d&&d.hasAttribute(v)&&(m=d.getAttribute(v));const w="dompurify"+(m?"#"+m:"");try{return l.createPolicy(w,{createHTML($){return $},createScriptURL($){return $}})}catch{return console.warn("TrustedTypes policy "+w+" could not be created."),null}};function qS(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:TR();const l=xs=>qS(xs);if(l.version="3.0.5",l.removed=[],!s||!s.document||s.document.nodeType!==9)return l.isSupported=!1,l;const d=s.document,m=d.currentScript;let{document:v}=s;const{DocumentFragment:w,HTMLTemplateElement:$,Node:B,Element:H,NodeFilter:G,NamedNodeMap:le=s.NamedNodeMap||s.MozNamedAttrMap,HTMLFormElement:ue,DOMParser:ge,trustedTypes:Me}=s,He=H.prototype,$e=Ak(He,"cloneNode"),Ve=Ak(He,"nextSibling"),rt=Ak(He,"childNodes"),ft=Ak(He,"parentNode");if(typeof $=="function"){const xs=v.createElement("template");xs.content&&xs.content.ownerDocument&&(v=xs.content.ownerDocument)}let ut,kt="";const{implementation:en,createNodeIterator:vn,createDocumentFragment:Fn,getElementsByTagName:zt}=v,{importNode:It}=d;let Jt={};l.isSupported=typeof Ol=="function"&&typeof ft=="function"&&en&&en.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:qn,ERB_EXPR:mo,TMPLIT_EXPR:es,DATA_ATTR:Es,ARIA_ATTR:Ir,IS_SCRIPT_OR_DATA:hi,ATTR_WHITESPACE:pa}=g_;let{IS_ALLOWED_URI:Cc}=g_,qr=null;const En=Ur({},[...FA,...HA,...fO,...QA,...yR]);let Qn=null;const or=Ur({},[...VA,...zA,..._R,...US]);let Rs=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),to=null,Ho=null,Sn=!0,Qo=!0,Qs=!1,ni=!0,Br=!1,Zl=!1,Hm=!1,n1=!1,ld=!1,Xh=!1,Xo=!1,ir=!0,Pr=!1;const Ca="user-content-";let Gi=!0,Xd=!1,Lp={},nb=null;const $O=Ur({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let G_=null;const AE=Ur({},["audio","video","img","source","image","track"]);let PO=null;const Z2=Ur({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),K_="http://www.w3.org/1998/Math/MathML",N0="http://www.w3.org/2000/svg",Fp="http://www.w3.org/1999/xhtml";let o1=Fp,U2=!1,J_=null;const q2=Ur({},[K_,N0,Fp],Tk);let s1;const $E=["application/xhtml+xml","text/html"],X2="text/html";let Yc,I0=null;const PE=v.createElement("form"),DE=function(Bt){return Bt instanceof RegExp||Bt instanceof Function},j2=function(Bt){if(!(I0&&I0===Bt)){if((!Bt||typeof Bt!="object")&&(Bt={}),Bt=p_(Bt),s1=$E.indexOf(Bt.PARSER_MEDIA_TYPE)===-1?s1=X2:s1=Bt.PARSER_MEDIA_TYPE,Yc=s1==="application/xhtml+xml"?Tk:j1,qr="ALLOWED_TAGS"in Bt?Ur({},Bt.ALLOWED_TAGS,Yc):En,Qn="ALLOWED_ATTR"in Bt?Ur({},Bt.ALLOWED_ATTR,Yc):or,J_="ALLOWED_NAMESPACES"in Bt?Ur({},Bt.ALLOWED_NAMESPACES,Tk):q2,PO="ADD_URI_SAFE_ATTR"in Bt?Ur(p_(Z2),Bt.ADD_URI_SAFE_ATTR,Yc):Z2,G_="ADD_DATA_URI_TAGS"in Bt?Ur(p_(AE),Bt.ADD_DATA_URI_TAGS,Yc):AE,nb="FORBID_CONTENTS"in Bt?Ur({},Bt.FORBID_CONTENTS,Yc):$O,to="FORBID_TAGS"in Bt?Ur({},Bt.FORBID_TAGS,Yc):{},Ho="FORBID_ATTR"in Bt?Ur({},Bt.FORBID_ATTR,Yc):{},Lp="USE_PROFILES"in Bt?Bt.USE_PROFILES:!1,Sn=Bt.ALLOW_ARIA_ATTR!==!1,Qo=Bt.ALLOW_DATA_ATTR!==!1,Qs=Bt.ALLOW_UNKNOWN_PROTOCOLS||!1,ni=Bt.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Br=Bt.SAFE_FOR_TEMPLATES||!1,Zl=Bt.WHOLE_DOCUMENT||!1,ld=Bt.RETURN_DOM||!1,Xh=Bt.RETURN_DOM_FRAGMENT||!1,Xo=Bt.RETURN_TRUSTED_TYPE||!1,n1=Bt.FORCE_BODY||!1,ir=Bt.SANITIZE_DOM!==!1,Pr=Bt.SANITIZE_NAMED_PROPS||!1,Gi=Bt.KEEP_CONTENT!==!1,Xd=Bt.IN_PLACE||!1,Cc=Bt.ALLOWED_URI_REGEXP||ER,o1=Bt.NAMESPACE||Fp,Rs=Bt.CUSTOM_ELEMENT_HANDLING||{},Bt.CUSTOM_ELEMENT_HANDLING&&DE(Bt.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Rs.tagNameCheck=Bt.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Bt.CUSTOM_ELEMENT_HANDLING&&DE(Bt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Rs.attributeNameCheck=Bt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Bt.CUSTOM_ELEMENT_HANDLING&&typeof Bt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Rs.allowCustomizedBuiltInElements=Bt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Br&&(Qo=!1),Xh&&(ld=!0),Lp&&(qr=Ur({},[...yR]),Qn=[],Lp.html===!0&&(Ur(qr,FA),Ur(Qn,VA)),Lp.svg===!0&&(Ur(qr,HA),Ur(Qn,zA),Ur(Qn,US)),Lp.svgFilters===!0&&(Ur(qr,fO),Ur(Qn,zA),Ur(Qn,US)),Lp.mathMl===!0&&(Ur(qr,QA),Ur(Qn,_R),Ur(Qn,US))),Bt.ADD_TAGS&&(qr===En&&(qr=p_(qr)),Ur(qr,Bt.ADD_TAGS,Yc)),Bt.ADD_ATTR&&(Qn===or&&(Qn=p_(Qn)),Ur(Qn,Bt.ADD_ATTR,Yc)),Bt.ADD_URI_SAFE_ATTR&&Ur(PO,Bt.ADD_URI_SAFE_ATTR,Yc),Bt.FORBID_CONTENTS&&(nb===$O&&(nb=p_(nb)),Ur(nb,Bt.FORBID_CONTENTS,Yc)),Gi&&(qr["#text"]=!0),Zl&&Ur(qr,["html","head","body"]),qr.table&&(Ur(qr,["tbody"]),delete to.tbody),Bt.TRUSTED_TYPES_POLICY){if(typeof Bt.TRUSTED_TYPES_POLICY.createHTML!="function")throw m_('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Bt.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw m_('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ut=Bt.TRUSTED_TYPES_POLICY,kt=ut.createHTML("")}else ut===void 0&&(ut=AR(Me,m)),ut!==null&&typeof kt=="string"&&(kt=ut.createHTML(""));al&&al(Bt),I0=Bt}},r1=Ur({},["mi","mo","mn","ms","mtext"]),Y2=Ur({},["foreignobject","desc","title","annotation-xml"]),Et=Ur({},["title","style","font","a","script"]),Mt=Ur({},HA);Ur(Mt,fO),Ur(Mt,vR);const Cn=Ur({},QA);Ur(Cn,OR);const bn=function(Bt){let so=ft(Bt);(!so||!so.tagName)&&(so={namespaceURI:o1,tagName:"template"});const $o=j1(Bt.tagName),Da=j1(so.tagName);return J_[Bt.namespaceURI]?Bt.namespaceURI===N0?so.namespaceURI===Fp?$o==="svg":so.namespaceURI===K_?$o==="svg"&&(Da==="annotation-xml"||r1[Da]):!!Mt[$o]:Bt.namespaceURI===K_?so.namespaceURI===Fp?$o==="math":so.namespaceURI===N0?$o==="math"&&Y2[Da]:!!Cn[$o]:Bt.namespaceURI===Fp?so.namespaceURI===N0&&!Y2[Da]||so.namespaceURI===K_&&!r1[Da]?!1:!Cn[$o]&&(Et[$o]||!Mt[$o]):!!(s1==="application/xhtml+xml"&&J_[Bt.namespaceURI]):!1},fo=function(Bt){jg(l.removed,{element:Bt});try{Bt.parentNode.removeChild(Bt)}catch{Bt.remove()}},ks=function(Bt,so){try{jg(l.removed,{attribute:so.getAttributeNode(Bt),from:so})}catch{jg(l.removed,{attribute:null,from:so})}if(so.removeAttribute(Bt),Bt==="is"&&!Qn[Bt])if(ld||Xh)try{fo(so)}catch{}else try{so.setAttribute(Bt,"")}catch{}},Hi=function(Bt){let so,$o;if(n1)Bt=""+Bt;else{const Yh=LA(Bt,/^[\r\n\t ]+/);$o=Yh&&Yh[0]}s1==="application/xhtml+xml"&&o1===Fp&&(Bt=''+Bt+"");const Da=ut?ut.createHTML(Bt):Bt;if(o1===Fp)try{so=new ge().parseFromString(Da,s1)}catch{}if(!so||!so.documentElement){so=en.createDocument(o1,"template",null);try{so.documentElement.innerHTML=U2?kt:Da}catch{}}const gu=so.body||so.documentElement;return Bt&&$o&&gu.insertBefore(v.createTextNode($o),gu.childNodes[0]||null),o1===Fp?zt.call(so,Zl?"html":"body")[0]:Zl?so.documentElement:gu},Hu=function(Bt){return vn.call(Bt.ownerDocument||Bt,Bt,G.SHOW_ELEMENT|G.SHOW_COMMENT|G.SHOW_TEXT,null,!1)},kc=function(Bt){return Bt instanceof ue&&(typeof Bt.nodeName!="string"||typeof Bt.textContent!="string"||typeof Bt.removeChild!="function"||!(Bt.attributes instanceof le)||typeof Bt.removeAttribute!="function"||typeof Bt.setAttribute!="function"||typeof Bt.namespaceURI!="string"||typeof Bt.insertBefore!="function"||typeof Bt.hasChildNodes!="function")},B0=function(Bt){return typeof B=="object"?Bt instanceof B:Bt&&typeof Bt=="object"&&typeof Bt.nodeType=="number"&&typeof Bt.nodeName=="string"},jh=function(Bt,so,$o){Jt[Bt]&&eF(Jt[Bt],Da=>{Da.call(l,so,$o,I0)})},RE=function(Bt){let so;if(jh("beforeSanitizeElements",Bt,null),kc(Bt))return fo(Bt),!0;const $o=Yc(Bt.nodeName);if(jh("uponSanitizeElement",Bt,{tagName:$o,allowedTags:qr}),Bt.hasChildNodes()&&!B0(Bt.firstElementChild)&&(!B0(Bt.content)||!B0(Bt.content.firstElementChild))&&Vh(/<[/\w]/g,Bt.innerHTML)&&Vh(/<[/\w]/g,Bt.textContent))return fo(Bt),!0;if(!qr[$o]||to[$o]){if(!to[$o]&&KP($o)&&(Rs.tagNameCheck instanceof RegExp&&Vh(Rs.tagNameCheck,$o)||Rs.tagNameCheck instanceof Function&&Rs.tagNameCheck($o)))return!1;if(Gi&&!nb[$o]){const Da=ft(Bt)||Bt.parentNode,gu=rt(Bt)||Bt.childNodes;if(gu&&Da){const Yh=gu.length;for(let Ul=Yh-1;Ul>=0;--Ul)Da.insertBefore($e(gu[Ul],!0),Ve(Bt))}}return fo(Bt),!0}return Bt instanceof H&&!bn(Bt)||($o==="noscript"||$o==="noembed"||$o==="noframes")&&Vh(/<\/no(script|embed|frames)/i,Bt.innerHTML)?(fo(Bt),!0):(Br&&Bt.nodeType===3&&(so=Bt.textContent,so=Dm(so,qn," "),so=Dm(so,mo," "),so=Dm(so,es," "),Bt.textContent!==so&&(jg(l.removed,{element:Bt.cloneNode()}),Bt.textContent=so)),jh("afterSanitizeElements",Bt,null),!1)},GP=function(Bt,so,$o){if(ir&&(so==="id"||so==="name")&&($o in v||$o in PE))return!1;if(!(Qo&&!Ho[so]&&Vh(Es,so))){if(!(Sn&&Vh(Ir,so))){if(!Qn[so]||Ho[so]){if(!(KP(Bt)&&(Rs.tagNameCheck instanceof RegExp&&Vh(Rs.tagNameCheck,Bt)||Rs.tagNameCheck instanceof Function&&Rs.tagNameCheck(Bt))&&(Rs.attributeNameCheck instanceof RegExp&&Vh(Rs.attributeNameCheck,so)||Rs.attributeNameCheck instanceof Function&&Rs.attributeNameCheck(so))||so==="is"&&Rs.allowCustomizedBuiltInElements&&(Rs.tagNameCheck instanceof RegExp&&Vh(Rs.tagNameCheck,$o)||Rs.tagNameCheck instanceof Function&&Rs.tagNameCheck($o))))return!1}else if(!PO[so]){if(!Vh(Cc,Dm($o,pa,""))){if(!((so==="src"||so==="xlink:href"||so==="href")&&Bt!=="script"&&bR($o,"data:")===0&&G_[Bt])){if(!(Qs&&!Vh(hi,Dm($o,pa,"")))){if($o)return!1}}}}}}return!0},KP=function(Bt){return Bt.indexOf("-")>0},TL=function(Bt){let so,$o,Da,gu;jh("beforeSanitizeAttributes",Bt,null);const{attributes:Yh}=Bt;if(!Yh)return;const Ul={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Qn};for(gu=Yh.length;gu--;){so=Yh[gu];const{name:Gh,namespaceURI:JP}=so;$o=Gh==="value"?so.value:tF(so.value);const $L=$o;if(Da=Yc(Gh),Ul.attrName=Da,Ul.attrValue=$o,Ul.keepAttr=!0,Ul.forceKeepAttr=void 0,jh("uponSanitizeAttribute",Bt,Ul),$o=Ul.attrValue,Ul.forceKeepAttr)continue;if(!Ul.keepAttr){ks(Gh,Bt);continue}if(!ni&&Vh(/\/>/i,$o)){ks(Gh,Bt);continue}Br&&($o=Dm($o,qn," "),$o=Dm($o,mo," "),$o=Dm($o,es," "));const ME=Yc(Bt.nodeName);if(!GP(ME,Da,$o)){ks(Gh,Bt);continue}if(Pr&&(Da==="id"||Da==="name")&&(ks(Gh,Bt),$o=Ca+$o),ut&&typeof Me=="object"&&typeof Me.getAttributeType=="function"&&!JP)switch(Me.getAttributeType(ME,Da)){case"TrustedHTML":{$o=ut.createHTML($o);break}case"TrustedScriptURL":{$o=ut.createScriptURL($o);break}}if($o!==$L)try{JP?Bt.setAttributeNS(JP,Gh,$o):Bt.setAttribute(Gh,$o)}catch{ks(Gh,Bt)}}jh("afterSanitizeAttributes",Bt,null)},AL=function xs(Bt){let so;const $o=Hu(Bt);for(jh("beforeSanitizeShadowDOM",Bt,null);so=$o.nextNode();)jh("uponSanitizeShadowNode",so,null),!RE(so)&&(so.content instanceof w&&xs(so.content),TL(so));jh("afterSanitizeShadowDOM",Bt,null)};return l.sanitize=function(xs){let Bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},so,$o,Da,gu;if(U2=!xs,U2&&(xs=""),typeof xs!="string"&&!B0(xs))if(typeof xs.toString=="function"){if(xs=xs.toString(),typeof xs!="string")throw m_("dirty is not a string, aborting")}else throw m_("toString is not a function");if(!l.isSupported)return xs;if(Hm||j2(Bt),l.removed=[],typeof xs=="string"&&(Xd=!1),Xd){if(xs.nodeName){const Gh=Yc(xs.nodeName);if(!qr[Gh]||to[Gh])throw m_("root node is forbidden and cannot be sanitized in-place")}}else if(xs instanceof B)so=Hi(""),$o=so.ownerDocument.importNode(xs,!0),$o.nodeType===1&&$o.nodeName==="BODY"||$o.nodeName==="HTML"?so=$o:so.appendChild($o);else{if(!ld&&!Br&&!Zl&&xs.indexOf("<")===-1)return ut&&Xo?ut.createHTML(xs):xs;if(so=Hi(xs),!so)return ld?null:Xo?kt:""}so&&n1&&fo(so.firstChild);const Yh=Hu(Xd?xs:so);for(;Da=Yh.nextNode();)RE(Da)||(Da.content instanceof w&&AL(Da.content),TL(Da));if(Xd)return xs;if(ld){if(Xh)for(gu=Fn.call(so.ownerDocument);so.firstChild;)gu.appendChild(so.firstChild);else gu=so;return(Qn.shadowroot||Qn.shadowrootmode)&&(gu=It.call(d,gu,!0)),gu}let Ul=Zl?so.outerHTML:so.innerHTML;return Zl&&qr["!doctype"]&&so.ownerDocument&&so.ownerDocument.doctype&&so.ownerDocument.doctype.name&&Vh($k,so.ownerDocument.doctype.name)&&(Ul=" -`+Ul),Br&&(Ul=Dm(Ul,qn," "),Ul=Dm(Ul,mo," "),Ul=Dm(Ul,es," ")),ut&&Xo?ut.createHTML(Ul):Ul},l.setConfig=function(xs){j2(xs),Hm=!0},l.clearConfig=function(){I0=null,Hm=!1},l.isValidAttribute=function(xs,Bt,so){I0||j2({});const $o=Yc(xs),Da=Yc(Bt);return GP($o,Da,so)},l.addHook=function(xs,Bt){typeof Bt=="function"&&(Jt[xs]=Jt[xs]||[],jg(Jt[xs],Bt))},l.removeHook=function(xs){if(Jt[xs])return h_(Jt[xs])},l.removeHooks=function(xs){Jt[xs]&&(Jt[xs]=[])},l.removeAllHooks=function(){Jt={}},l}var $R=qS();const PR=cn.each,m0=cn.trim,WA=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],DR={ftp:21,http:80,https:443,mailto:25},XS=["img","video"],RR=(s,l)=>Te(s)?!s:Te(l)?!gt(XS,l):!0,ZA=s=>{try{return decodeURIComponent(s)}catch{return unescape(s)}},UA=(s,l,d)=>{const m=ZA(l).replace(/\s/g,"");return s.allow_script_urls?!1:/((java|vb)script|mhtml):/i.test(m)?!0:s.allow_html_data_urls?!1:/^data:image\//i.test(m)?RR(s.allow_svg_data_urls,d)&&/^data:image\/svg\+xml/i.test(m):/^data:/i.test(m)};class zh{static parseDataUri(l){let d;const m=decodeURIComponent(l).split(","),v=/data:([^;]+)/.exec(m[0]);return v&&(d=v[1]),{type:d,data:m[1]}}static isDomSafe(l,d,m={}){if(m.allow_script_urls)return!0;{const v=op.decode(l).replace(/[\s\u0000-\u001F]+/g,"");return!UA(m,v,d)}}static getDocumentBaseUrl(l){var d;let m;return l.protocol.indexOf("http")!==0&&l.protocol!=="file:"?m=(d=l.href)!==null&&d!==void 0?d:"":m=l.protocol+"//"+l.host+l.pathname,/^[^:]+:\/\/\/?[^\/]+\//.test(m)&&(m=m.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(m)||(m+="/")),m}constructor(l,d={}){this.path="",this.directory="",l=m0(l),this.settings=d;const m=d.base_uri,v=this;if(/^([\w\-]+):([^\/]{2})/i.test(l)||/^\s*#/.test(l)){v.source=l;return}const w=l.indexOf("//")===0;if(l.indexOf("/")===0&&!w&&(l=(m&&m.protocol||"http")+"://mce_host"+l),!/^[\w\-]*:?\/\//.test(l)){const B=m?m.path:new zh(document.location.href).directory;if((m==null?void 0:m.protocol)==="")l="//mce_host"+v.toAbsPath(B,l);else{const H=/([^#?]*)([#?]?.*)/.exec(l);H&&(l=(m&&m.protocol||"http")+"://mce_host"+v.toAbsPath(B,H[1])+H[2])}}l=l.replace(/@@/g,"(mce_at)");const $=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?(\[[a-zA-Z0-9:.%]+\]|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(l);$&&PR(WA,(B,H)=>{let G=$[H];G&&(G=G.replace(/\(mce_at\)/g,"@@")),v[B]=G}),m&&(v.protocol||(v.protocol=m.protocol),v.userInfo||(v.userInfo=m.userInfo),!v.port&&v.host==="mce_host"&&(v.port=m.port),(!v.host||v.host==="mce_host")&&(v.host=m.host),v.source=""),w&&(v.protocol="")}setPath(l){const d=/^(.*?)\/?(\w+)?$/.exec(l);d&&(this.path=d[0],this.directory=d[1],this.file=d[2]),this.source="",this.getURI()}toRelative(l){if(l==="./")return l;const d=new zh(l,{base_uri:this});if(d.host!=="mce_host"&&this.host!==d.host&&d.host||this.port!==d.port||this.protocol!==d.protocol&&d.protocol!=="")return d.getURI();const m=this.getURI(),v=d.getURI();if(m===v||m.charAt(m.length-1)==="/"&&m.substr(0,m.length-1)===v)return m;let w=this.toRelPath(this.path,d.path);return d.query&&(w+="?"+d.query),d.anchor&&(w+="#"+d.anchor),w}toAbsolute(l,d){const m=new zh(l,{base_uri:this});return m.getURI(d&&this.isSameOrigin(m))}isSameOrigin(l){if(this.host==l.host&&this.protocol==l.protocol){if(this.port==l.port)return!0;const d=this.protocol?DR[this.protocol]:null;if(d&&(this.port||d)==(l.port||d))return!0}return!1}toRelPath(l,d){let m=0,v="",w,$;const B=l.substring(0,l.lastIndexOf("/")).split("/"),H=d.split("/");if(B.length>=H.length){for(w=0,$=B.length;w<$;w++)if(w>=H.length||B[w]!==H[w]){m=w+1;break}}if(B.length=B.length||B[w]!==H[w]){m=w+1;break}}if(m===1)return d;for(w=0,$=B.length-(m-1);w<$;w++)v+="../";for(w=m-1,$=H.length;w<$;w++)w!==m-1?v+="/"+H[w]:v+=H[w];return v}toAbsPath(l,d){let m=0;const v=/\/$/.test(d)?"/":"",w=l.split("/"),$=d.split("/"),B=[];PR(w,ue=>{ue&&B.push(ue)});const H=[];for(let ue=$.length-1;ue>=0;ue--)if(!($[ue].length===0||$[ue]===".")){if($[ue]===".."){m++;continue}if(m>0){m--;continue}H.push($[ue])}const G=B.length-m;let le;return G<=0?le=Ts(H).join("/"):le=B.slice(0,G).join("/")+"/"+Ts(H).join("/"),le.indexOf("/")!==0&&(le="/"+le),v&&le.lastIndexOf("/")!==le.length-1&&(le+=v),le}getURI(l=!1){let d;return(!this.source||l)&&(d="",l||(this.protocol?d+=this.protocol+"://":d+="//",this.userInfo&&(d+=this.userInfo+"@"),this.host&&(d+=this.host),this.port&&(d+=":"+this.port)),this.path&&(d+=this.path),this.query&&(d+="?"+this.query),this.anchor&&(d+="#"+this.anchor),this.source=d),this.source}}const rF=cn.makeMap("src,href,data,background,action,formaction,poster,xlink:href"),qA="data-mce-type";let MR=0;const Pk=(s,l,d,m,v)=>{var w,$,B,H;const G=l.validate,le=d.getSpecialElements();s.nodeType===Jc&&!l.allow_conditional_comments&&/^\[if/i.test((w=s.nodeValue)!==null&&w!==void 0?w:"")&&(s.nodeValue=" "+s.nodeValue);const ue=($=v==null?void 0:v.tagName)!==null&&$!==void 0?$:s.nodeName.toLowerCase();if(m!=="html"&&d.isValid(m)){Te(v)&&(v.allowedTags[ue]=!0);return}if(s.nodeType!==dc||ue==="body")return;const ge=qe.fromDom(s),Me=Zi(ge,qA),He=Ja(ge,"data-mce-bogus");if(!Me&&j(He)){He==="all"?$s(ge):La(ge);return}const $e=d.getElementRule(ue);if(G&&!$e){an(le,ue)?$s(ge):La(ge);return}else Te(v)&&(v.allowedTags[ue]=!0);if(G&&$e&&!Me){if(Ne((B=$e.attributesForced)!==null&&B!==void 0?B:[],Ve=>{Sr(ge,Ve.name,Ve.value==="{$uid}"?`mce_${MR++}`:Ve.value)}),Ne((H=$e.attributesDefault)!==null&&H!==void 0?H:[],Ve=>{Zi(ge,Ve.name)||Sr(ge,Ve.name,Ve.value==="{$uid}"?`mce_${MR++}`:Ve.value)}),$e.attributesRequired&&!Ut($e.attributesRequired,Ve=>Zi(ge,Ve))){La(ge);return}if($e.removeEmptyAttrs&&hc(ge)){La(ge);return}$e.outputName&&$e.outputName!==ue&&uf(ge,$e.outputName)}},iF=(s,l,d,m,v)=>{const w=s.tagName.toLowerCase(),{attrName:$,attrValue:B}=v;v.keepAttr=XA(l,d,m,w,$,B),v.keepAttr?(v.allowedAttributes[$]=!0,IR($,d)&&(v.attrValue=$),l.allow_svg_data_urls&&rr(B,"data:image/svg+xml")&&(v.forceKeepAttr=!0)):NR(s,$)&&(v.forceKeepAttr=!0)},XA=(s,l,d,m,v,w)=>d!=="html"&&!Ed(m)?!0:!(v in rF&&UA(s,w,m))&&(!s.validate||l.isValid(m,v)||rr(v,"data-")||rr(v,"aria-")),NR=(s,l)=>s.hasAttribute(qA)&&(l==="id"||l==="class"||l==="style"),IR=(s,l)=>s in l.getBoolAttrs(),aF=(s,l,d,m)=>{const{attributes:v}=s;for(let w=v.length-1;w>=0;w--){const $=v[w],B=$.name,H=$.value;!XA(l,d,m,s.tagName.toLowerCase(),B,H)&&!NR(s,B)?s.removeAttribute(B):IR(B,d)&&s.setAttribute(B,B)}},lF=(s,l,d)=>{const m=$R();return m.addHook("uponSanitizeElement",(v,w)=>{Pk(v,s,l,d.track(v),w)}),m.addHook("uponSanitizeAttribute",(v,w)=>{iF(v,s,l,d.current(),w)}),m},cF=(s,l)=>{const m={...{IN_PLACE:!0,ALLOW_UNKNOWN_PROTOCOLS:!0,ALLOWED_TAGS:["#comment","#cdata-section","body"],ALLOWED_ATTR:[]}};return m.PARSER_MEDIA_TYPE=l,s.allow_script_urls?m.ALLOWED_URI_REGEXP=/.*/:s.allow_html_data_urls&&(m.ALLOWED_URI_REGEXP=/^(?!(\w+script|mhtml):)/i),m},uF=s=>{const l=["type","href","role","arcrole","title","show","actuate","label","from","to"].map(m=>`xlink:${m}`),d={IN_PLACE:!0,USE_PROFILES:{html:!0,svg:!0,svgFilters:!0},ALLOWED_ATTR:l};return $R().sanitize(s,d),s.innerHTML},dF=(s,l)=>{const d=vh();if(s.sanitize){const m=lF(s,l,d);return{sanitizeHtmlElement:(w,$)=>{m.sanitize(w,cF(s,$)),m.removed=[],d.reset()},sanitizeNamespaceElement:uF}}else return{sanitizeHtmlElement:(w,$)=>{const B=document.createNodeIterator(w,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_TEXT);let H;for(;H=B.nextNode();){const G=d.track(H);Pk(H,s,l,G),Zn(H)&&aF(H,s,l,G)}d.reset()},sanitizeNamespaceElement:St}},BR=cn.makeMap,LR=cn.extend,jS=(s,l,d,m)=>{const v=s.name,w=v in d&&v!=="title"&&v!=="textarea"&&v!=="noscript",$=l.childNodes;for(let B=0,H=$.length;B{const m=[];for(let v=s,w=v;v;w=v,v=v.walk()){const $=v;Ne(l,B=>B($)),Be($.parent)&&$!==s?v=w:m.push($)}for(let v=m.length-1;v>=0;v--){const w=m[v];Ne(d,$=>$(w))}},fF=(s,l,d,m)=>{const v=d.validate,w=l.getNonEmptyElements(),$=l.getWhitespaceElements(),B=LR(BR("script,style,head,html,body,title,meta,param"),l.getBlockElements()),H=LO(l),G=/[ \t\r\n]+/g,le=/^[ \t\r\n]+/,ue=/[ \t\r\n]+$/,ge=ft=>{let ut=ft.parent;for(;Te(ut);){if(ut.name in $)return!0;ut=ut.parent}return!1},Me=ft=>{let ut=ft;for(;Te(ut);){if(ut.name in H)return n_(l,w,$,ut);ut=ut.parent}return!1},He=ft=>ft.name in B||Td(l,ft)||Ed(ft.name)&&ft.parent===s,$e=(ft,ut)=>{const kt=ut?ft.prev:ft.next;return Te(kt)||Be(ft.parent)?!1:He(ft.parent)&&(ft.parent!==s||m.isRootContent===!0)};return[ft=>{var ut;if(ft.type===3&&!ge(ft)){let kt=(ut=ft.value)!==null&&ut!==void 0?ut:"";kt=kt.replace(G," "),(sA(ft.prev,He)||$e(ft,!0))&&(kt=kt.replace(le,"")),kt.length===0?ft.remove():ft.value=kt}},ft=>{var ut;if(ft.type===1){const kt=l.getElementRule(ft.name);if(v&&kt){const en=n_(l,w,$,ft);kt.paddInEmptyBlock&&en&&Me(ft)?ak(d,m,He,ft):kt.removeEmpty&&en?He(ft)?ft.remove():ft.unwrap():kt.paddEmpty&&(en||OD(ft))&&ak(d,m,He,ft)}}else if(ft.type===3&&!ge(ft)){let kt=(ut=ft.value)!==null&&ut!==void 0?ut:"";(ft.next&&He(ft.next)||$e(ft,!1))&&(kt=kt.replace(ue,"")),kt.length===0?ft.remove():ft.value=kt}}]},Dk=(s,l)=>{var d;const m=(d=l.forced_root_block)!==null&&d!==void 0?d:s.forced_root_block;return m===!1?"":m===!0?"p":m},Mm=(s={},l=Df())=>{const d=uR(),m=uR(),v={validate:!0,root_name:"body",sanitize:!0,...s},w=new DOMParser,$=dF(v,l),B=(ut,kt,en="html")=>{const vn=en==="xhtml"?"application/xhtml+xml":"text/html",Fn=an(l.getSpecialElements(),kt.toLowerCase()),zt=Fn?`<${kt}>${ut}`:ut,It=en==="xhtml"?`${zt}`:`${zt}`,Jt=w.parseFromString(It,vn).body;return $.sanitizeHtmlElement(Jt,vn),Fn?Jt.firstChild:Jt},H=d.addFilter,G=d.getFilters,le=d.removeFilter,ue=m.addFilter,ge=m.getFilters,Me=m.removeFilter,He=(ut,kt)=>{uk(l,ut)&&kt.push(ut)},$e=(ut,kt)=>{const en=j(kt.attr(qA)),vn=kt.type===1&&!an(ut,kt.name)&&!Td(l,kt)&&!Ed(kt.name);return kt.type===3||vn&&!en},Ve=(ut,kt)=>{const en=LR(BR("script,style,head,html,body,title,meta,param"),l.getBlockElements()),vn=/^[ \t\r\n]+/,Fn=/[ \t\r\n]+$/;let zt=ut.firstChild,It=null;const Jt=qn=>{var mo,es;qn&&(zt=qn.firstChild,zt&&zt.type===3&&(zt.value=(mo=zt.value)===null||mo===void 0?void 0:mo.replace(vn,"")),zt=qn.lastChild,zt&&zt.type===3&&(zt.value=(es=zt.value)===null||es===void 0?void 0:es.replace(Fn,"")))};if(l.isValidChild(ut.name,kt.toLowerCase())){for(;zt;){const qn=zt.next;$e(en,zt)?(It||(It=new Iu(kt,1),It.attr(v.forced_root_block_attrs),ut.insert(It,zt)),It.append(zt)):(Jt(It),It=null),zt=qn}Jt(It)}},ft={schema:l,addAttributeFilter:ue,getAttributeFilters:ge,removeAttributeFilter:Me,addNodeFilter:H,getNodeFilters:G,removeNodeFilter:le,parse:(ut,kt={})=>{var en;const vn=v.validate,Fn=(en=kt.context)!==null&&en!==void 0?en:v.root_name,zt=B(ut,Fn,kt.format);Kp(l,zt);const It=new Iu(Fn,11);jS(It,zt,l.getSpecialElements(),$.sanitizeNamespaceElement),zt.innerHTML="";const[Jt,qn]=fF(It,l,v,kt),mo=[],es=vn?pa=>He(pa,mo):St,Es={nodes:{},attributes:{}},Ir=pa=>eA(G(),ge(),pa,Es);if(Lu(It,[Jt,Ir],[qn,es]),mo.reverse(),vn&&mo.length>0)if(kt.context){const{pass:pa,fail:Cc}=pn(mo,qr=>qr.parent===It);ck(Cc,l,It,Ir),kt.invalid=pa.length>0}else ck(mo,l,It,Ir);const hi=Dk(v,kt);return hi&&(It.name==="body"||kt.isRootContent)&&Ve(It,hi),kt.invalid||tA(Es,kt),It}};return gR(ft,v),MA(ft,v,l),ft},FR=s=>mk(s)?u0({validate:!1}).serialize(s):s,Vd=(s,l,d)=>{const m=FR(s),v=l(m);if(v.isDefaultPrevented())return v;if(mk(s))if(v.content!==m){const w=Mm({validate:!1,forced_root_block:!1,...d}).parse(v.content,{context:s.name});return{...v,content:w}}else return{...v,content:s};else return v},p0=(s,l)=>{if(l.no_events)return zc.value(l);{const d=oT(s,l);return d.isDefaultPrevented()?zc.error(Ds(s,{content:"",...d}).content):zc.value(d)}},jA=(s,l,d)=>d.no_events?l:Vd(l,v=>Ds(s,{...d,content:v}),{sanitize:_m(s),sandbox_iframes:Wb(s)}).content,YA=(s,l)=>{if(l.no_events)return zc.value(l);{const d=Vd(l.content,m=>s4(s,{...l,content:m}),{sanitize:_m(s),sandbox_iframes:Wb(s)});return d.isDefaultPrevented()?(xC(s,d),zc.error(void 0)):zc.value(d)}},Rk=(s,l,d)=>{d.no_events||xC(s,{...d,content:l})},GA=(s,l,d)=>({element:s,width:l,rows:d}),KA=(s,l)=>({element:s,cells:l}),YS=(s,l)=>({x:s,y:l}),Mk=(s,l)=>aa(s,l).bind(Gc).getOr(1),hF=(s,l,d,m,v)=>{const w=Mk(v,"rowspan"),$=Mk(v,"colspan"),B=s.rows;for(let H=d;H{const m=s.rows;return!!(m[d]?m[d].cells:[])[l]},mF=(s,l,d)=>{for(;HR(s,l,d);)l++;return l},Nk=s=>Dn(s,(l,d)=>d.cells.length>l?d.cells.length:l,0),Ik=(s,l)=>{const d=s.rows;for(let m=0;m{const w=[],$=s.rows;for(let B=d;B<=v;B++){const H=$[B].cells,G=l{const m=l.x,v=l.y,w=d.x,$=d.y,B=v<$?QR(s,m,v,w,$):QR(s,m,$,w,v);return GA(s.element,Nk(B),B)},Yg=(s,l)=>{const d=uu(s.element),m=qe.fromTag("tbody");return lr(m,l),di(d,m),d},JA=s=>pt(s.rows,l=>{const d=pt(l.cells,v=>{const w=Cb(v);return ii(w,"colspan"),ii(w,"rowspan"),w}),m=uu(l.element);return lr(m,d),m}),gF=s=>{const l=GA(uu(s),0,[]);return Ne(Fa(s,"tr"),(d,m)=>{Ne(Fa(d,"td,th"),(v,w)=>{hF(l,mF(l,w,m),m,d,v)})}),GA(l.element,Nk(l.rows),l.rows)},Bk=s=>Yg(s,JA(s)),e3=(s,l,d)=>Ik(s,l).bind(m=>Ik(s,d).map(v=>pF(s,m,v))),VR=s=>Gn(s,l=>Os(l)==="ul"||Os(l)==="ol"),zR=(s,l)=>Gn(s,d=>Os(d)==="li"&&Kw(d,l)).fold(je([]),d=>VR(s).map(m=>{const v=qe.fromTag(Os(m)),w=Ft(yu(m),($,B)=>rr(B,"list-style"));return Ba(v,w),[qe.fromTag("li"),v]}).getOr([])),WR=(s,l)=>{const d=Dn(l,(m,v)=>(di(v,m),v),s);return l.length>0?gS([d]):d},bF=s=>iu(s)?gr(s).filter(Gl).fold(je([]),l=>[s,l]):Gl(s)?[s]:[],vF=(s,l,d)=>{const m=qe.fromDom(l.commonAncestorContainer),v=Vg(m,s),w=xt(v,H=>d.isWrapper(Os(H))),$=zR(v,l),B=w.concat($.length?$:bF(m));return pt(B,uu)},ZR=()=>gS([]),OF=(s,l,d)=>WR(qe.fromDom(l.cloneContents()),vF(s,l,d)),yF=(s,l)=>Dc(l,"table",Ue(dt,s)),UR=(s,l)=>yF(s,l[0]).bind(d=>{const m=l[0],v=l[l.length-1],w=gF(d);return e3(w,m,v).map($=>gS([Bk($)]))}).getOrThunk(ZR),_F=(s,l,d)=>l.length>0&&l[0].collapsed?ZR():OF(s,l[0],d),wF=(s,l,d)=>{const m=qE(l,s);return m.length>0?UR(s,m):_F(s,l,d)},Lk=(s,l)=>l>=0&&lve(s.innerText),n3=s=>s.map(l=>l.nodeName).getOr("div").toLowerCase(),o3=s=>de.from(s.selection.getRng()).map(l=>{var d;const m=de.from(s.dom.getParent(l.commonAncestorContainer,s.dom.isBlock)),v=s.getBody(),w=n3(m),$=qe.fromDom(l.cloneContents());ss($),ET($);const B=s.dom.add(v,w,{"data-mce-bogus":"all",style:"overflow: hidden; opacity: 0;"},$.dom),H=t3(B),G=ve((d=B.textContent)!==null&&d!==void 0?d:"");if(s.dom.remove(B),Lk(G,0)||Lk(G,G.length-1)){const le=m.getOr(v),ue=t3(le),ge=ue.indexOf(H);if(ge===-1)return H;{const Me=Lk(ue,ge-1),He=Lk(ue,ge+H.length);return(Me?" ":"")+H+(He?" ":"")}}else return H}).getOr(""),qR=(s,l)=>{const d=s.selection.getRng(),m=s.dom.create("body"),v=s.selection.getSel(),w=xT(s,Py(v)),$=l.contextual?wF(qe.fromDom(s.getBody()),w,s.schema).dom:d.cloneContents();return $&&m.appendChild($),s.selection.serializer.serialize(m,l)},s3=(s,l)=>{if(l.format==="text")return o3(s);{const d=qR(s,l);return l.format==="tree"?d:s.selection.isCollapsed()?"":d}},XR=(s,l)=>({...s,format:l,get:!0,selection:!0,getInner:!0}),jR=(s,l,d={})=>{const m=XR(d,l);return p0(s,m).fold(mn,v=>{const w=s3(s,v);return jA(s,w,v)})},GS=0,r3=1,i3=2,YR=(s,l)=>{const d=s.length+l.length+2,m=new Array(d),v=new Array(d),w=(le,ue,ge)=>({start:le,end:ue,diag:ge}),$=(le,ue,ge,Me,He)=>{const $e=H(le,ue,ge,Me);if($e===null||$e.start===ue&&$e.diag===ue-Me||$e.end===le&&$e.diag===le-ge){let Ve=le,rt=ge;for(;VeMe-ge?(He.push([i3,s[Ve]]),++Ve):(He.push([r3,l[rt]]),++rt)}else{$(le,$e.start,ge,$e.start-$e.diag,He);for(let Ve=$e.start;Ve<$e.end;++Ve)He.push([GS,s[Ve]]);$($e.end,ue,$e.end-$e.diag,Me,He)}},B=(le,ue,ge,Me)=>{let He=le;for(;He-ue{const He=ue-le,$e=Me-ge;if(He===0||$e===0)return null;const Ve=He-$e,rt=$e+He,ft=(rt%2===0?rt:rt+1)/2;m[1+ft]=le,v[1+ft]=ue+1;let ut,kt,en,vn,Fn;for(ut=0;ut<=ft;++ut){for(kt=-ut;kt<=ut;kt+=2){for(en=kt+ft,kt===-ut||kt!==ut&&m[en-1]=le&&Fn>=ge&&s[vn]===l[Fn];)v[en]=vn--,Fn--;if(Ve%2===0&&-ut<=kt&&kt<=ut&&v[en]<=m[en+Ve])return B(v[en],kt+le-ge,ue,Me)}}return null},G=[];return $(0,s.length,0,l.length,G),G},GR=s=>Zn(s)?s.outerHTML:un(s)?op.encodeRaw(s.data,!1):sf(s)?"":"",a3=s=>{let l;const d=document.createElement("div"),m=document.createDocumentFragment();for(s&&(d.innerHTML=s);l=d.firstChild;)m.appendChild(l);return m},SF=(s,l,d)=>{const m=a3(l);if(s.hasChildNodes()&&d{if(s.hasChildNodes()&&l{let d=0;Ne(s,m=>{m[0]===GS?d++:m[0]===r3?(SF(l,m[1],d),d++):m[0]===i3&&Fk(l,d)})},kF=(s,l)=>xt(pt(Gs(s.childNodes),q(ve,GR)),d=>d.length>0),xF=(s,l)=>{const d=pt(Gs(l.childNodes),GR);return CF(YR(d,s),l),l},KR=Qt(()=>document.implementation.createHTMLDocument("undo")),JR=s=>s.querySelector("iframe")!==null,EF=s=>({type:"fragmented",fragments:s,content:"",bookmark:null,beforeBookmark:null}),TF=s=>({type:"complete",fragments:null,content:s,bookmark:null,beforeBookmark:null}),Hk=s=>{const l=s.serializer.getTempAttrs(),d=P4(s.getBody(),l);return JR(d)?EF(kF(d)):TF(ve(d.innerHTML))},l3=(s,l,d)=>{const m=d?l.beforeBookmark:l.bookmark;l.type==="fragmented"?xF(l.fragments,s.getBody()):s.setContent(l.content,{format:"raw",no_selection:Te(m)&&uC(m)?!m.isFakeCaret:!0}),m&&(s.selection.moveToBookmark(m),s.selection.scrollIntoView())},c3=s=>s.type==="fragmented"?s.fragments.join(""):s.content,u3=s=>{const l=qe.fromTag("body",KR());return Nc(l,c3(s)),Ne(Fa(l,"*[data-mce-bogus]"),La),xe(l)},yU=(s,l)=>c3(s)===c3(l),AF=(s,l)=>u3(s)===u3(l),d3=(s,l)=>!s||!l?!1:yU(s,l)?!0:AF(s,l),f3=s=>s.get()===0,Qk=(s,l,d)=>{f3(d)&&(s.typing=l)},eM=(s,l)=>{s.typing&&(Qk(s,!1,l),s.add())},$F=s=>{s.typing&&(s.typing=!1,s.add())},PF=(s,l,d)=>{f3(l)&&d.set(Dh(s.selection))},tM=(s,l,d,m,v,w,$)=>{const B=Hk(s),H=cn.extend(w||{},B);if(!f3(m)||s.removed)return null;const G=l.data[d.get()];if(s.dispatch("BeforeAddUndo",{level:H,lastLevel:G,originalEvent:$}).isDefaultPrevented()||G&&d3(G,H))return null;l.data[d.get()]&&v.get().each(ge=>{l.data[d.get()].beforeBookmark=ge});const le=Ag(s);if(le&&l.data.length>le){for(let ge=0;ge0?(s.setDirty(!0),s.dispatch("AddUndo",ue),s.dispatch("change",ue)):s.dispatch("AddUndo",ue),H},DF=(s,l,d)=>{l.data=[],d.set(0),l.typing=!1,s.dispatch("ClearUndos")},RF=(s,l,d,m,v)=>{if(l.transact(m)){const w=l.data[d.get()].bookmark,$=l.data[d.get()-1];l3(s,$,!0),l.transact(v)&&(l.data[d.get()-1].beforeBookmark=w)}},MF=(s,l,d)=>{let m;return l.get(){let v;return l.typing&&(l.add(),l.typing=!1,Qk(l,!1,d)),m.get()>0&&(m.set(m.get()-1),v=l.data[m.get()],l3(s,v,!0),s.setDirty(!0),s.dispatch("Undo",{level:v})),v},IF=s=>{s.clear(),s.add()},_U=(s,l,d)=>d.get()>0||l.typing&&l.data[0]&&!d3(Hk(s),l.data[0]),wU=(s,l)=>l.get()(eM(s,l),s.beforeChange(),s.ignore(d),s.add()),LF=(s,l)=>{try{s.set(s.get()+1),l()}finally{s.set(s.get()-1)}},SU=(s,l)=>{const d=s.dom,m=Te(l)?l:s.getBody();Ne(d.select("table,a",m),v=>{switch(v.nodeName){case"TABLE":const w=$w(s),$=d.getAttrib(v,"border");(!$||$==="0")&&s.hasVisual?d.addClass(v,w):d.removeClass(v,w);break;case"A":if(!d.getAttrib(v,"href")){const B=d.getAttrib(v,"name")||v.id,H=fy(s);B&&s.hasVisual?d.addClass(v,H):d.removeClass(v,H)}break}}),s.dispatch("VisualAid",{element:l,hasVisual:s.hasVisual})},nM=s=>({init:{bindEvents:St},undoManager:{beforeChange:(l,d)=>PF(s,l,d),add:(l,d,m,v,w,$)=>tM(s,l,d,m,v,w,$),undo:(l,d,m)=>NF(s,l,d,m),redo:(l,d)=>MF(s,l,d),clear:(l,d)=>DF(s,l,d),reset:l=>IF(l),hasUndo:(l,d)=>_U(s,l,d),hasRedo:(l,d)=>wU(l,d),transact:(l,d,m)=>BF(l,d,m),ignore:(l,d)=>LF(l,d),extra:(l,d,m,v)=>RF(s,l,d,m,v)},formatter:{match:(l,d,m,v)=>pk(s,l,d,m,v),matchAll:(l,d)=>C7(s,l,d),matchNode:(l,d,m,v)=>Wg(s,l,d,m,v),canApply:l=>ID(s,l),closest:l=>cO(s,l),apply:(l,d,m)=>rR(s,l,d,m),remove:(l,d,m,v)=>tR(s,l,d,m,v),toggle:(l,d,m)=>z7(s,l,d,m),formatChanged:(l,d,m,v,w)=>V7(s,l,d,m,v,w)},editor:{getContent:l=>fU(s,l),setContent:(l,d)=>RD(s,l,d),insertContent:(l,d)=>DD(s,l,d),addVisual:l=>SU(s,l)},selection:{getContent:(l,d)=>jR(s,l,d)},autocompleter:{addDecoration:l=>f6(s,l),removeDecoration:()=>m6(s,qe.fromDom(s.getBody()))},raw:{getModel:()=>de.none()}}),Sa=s=>{const l=G=>ae(G)?G:{},{init:d,undoManager:m,formatter:v,editor:w,selection:$,autocompleter:B,raw:H}=s;return{init:{bindEvents:d.bindEvents},undoManager:{beforeChange:m.beforeChange,add:m.add,undo:m.undo,redo:m.redo,clear:m.clear,reset:m.reset,hasUndo:m.hasUndo,hasRedo:m.hasRedo,transact:(G,le,ue)=>m.transact(ue),ignore:(G,le)=>m.ignore(le),extra:(G,le,ue,ge)=>m.extra(ue,ge)},formatter:{match:(G,le,ue,ge)=>v.match(G,l(le),ge),matchAll:v.matchAll,matchNode:v.matchNode,canApply:G=>v.canApply(G),closest:G=>v.closest(G),apply:(G,le,ue)=>v.apply(G,l(le)),remove:(G,le,ue,ge)=>v.remove(G,l(le)),toggle:(G,le,ue)=>v.toggle(G,l(le)),formatChanged:(G,le,ue,ge,Me)=>v.formatChanged(le,ue,ge,Me)},editor:{getContent:G=>w.getContent(G),setContent:(G,le)=>({content:w.setContent(G,le),html:""}),insertContent:(G,le)=>(w.insertContent(G),""),addVisual:w.addVisual},selection:{getContent:(G,le)=>$.getContent(le)},autocompleter:{addDecoration:B.addDecoration,removeDecoration:B.removeDecoration},raw:{getModel:()=>de.some(H.getRawModel())}}},h3=()=>{const s=je(null),l=je("");return{init:{bindEvents:St},undoManager:{beforeChange:St,add:s,undo:s,redo:s,clear:St,reset:St,hasUndo:Fe,hasRedo:Fe,transact:s,ignore:St,extra:St},formatter:{match:Fe,matchAll:je([]),matchNode:je(void 0),canApply:Fe,closest:l,apply:St,remove:St,toggle:St,formatChanged:je({unbind:St})},editor:{getContent:l,setContent:je({content:"",html:""}),insertContent:je(""),addVisual:St},selection:{getContent:l},autocompleter:{addDecoration:St,removeDecoration:St},raw:{getModel:je(de.none())}}},Y1=s=>an(s.plugins,"rtc"),FF=s=>ro(s.plugins,"rtc").bind(l=>de.from(l.setup)),HF=s=>{const l=s;return FF(s).fold(()=>(l.rtcInstance=nM(s),de.none()),d=>(l.rtcInstance=h3(),de.some(()=>d().then(m=>(l.rtcInstance=Sa(m),m.rtc.isRemote)))))},g0=s=>s.rtcInstance?s.rtcInstance:nM(s),Tl=s=>{const l=s.rtcInstance;if(l)return l;throw new Error("Failed to get RTC instance not yet initialized.")},CU=(s,l,d)=>{Tl(s).undoManager.beforeChange(l,d)},Xc=(s,l,d,m,v,w,$)=>Tl(s).undoManager.add(l,d,m,v,w,$),oM=(s,l,d,m)=>Tl(s).undoManager.undo(l,d,m),sM=(s,l,d)=>Tl(s).undoManager.redo(l,d),rM=(s,l,d)=>{Tl(s).undoManager.clear(l,d)},QF=(s,l)=>{Tl(s).undoManager.reset(l)},VF=(s,l,d)=>Tl(s).undoManager.hasUndo(l,d),Vk=(s,l,d)=>Tl(s).undoManager.hasRedo(l,d),zF=(s,l,d,m)=>Tl(s).undoManager.transact(l,d,m),m3=(s,l,d)=>{Tl(s).undoManager.ignore(l,d)},WF=(s,l,d,m,v)=>{Tl(s).undoManager.extra(l,d,m,v)},iM=(s,l,d,m,v)=>Tl(s).formatter.match(l,d,m,v),aM=(s,l,d)=>Tl(s).formatter.matchAll(l,d),p3=(s,l,d,m,v)=>Tl(s).formatter.matchNode(l,d,m,v),lM=(s,l)=>Tl(s).formatter.canApply(l),g3=(s,l)=>Tl(s).formatter.closest(l),ZF=(s,l,d,m)=>{Tl(s).formatter.apply(l,d,m)},UF=(s,l,d,m,v)=>{Tl(s).formatter.remove(l,d,m,v)},qF=(s,l,d,m)=>{Tl(s).formatter.toggle(l,d,m)},Wh=(s,l,d,m,v,w)=>Tl(s).formatter.formatChanged(l,d,m,v,w),XF=(s,l)=>g0(s).editor.getContent(l),jF=(s,l,d)=>g0(s).editor.setContent(l,d),YF=(s,l,d)=>g0(s).editor.insertContent(l,d),GF=(s,l,d)=>Tl(s).selection.getContent(l,d),KF=(s,l)=>Tl(s).editor.addVisual(l),b3=s=>Tl(s).init.bindEvents(),JF=(s,l)=>Tl(s).autocompleter.addDecoration(l),e8=s=>Tl(s).autocompleter.removeDecoration(),t8=(s,l={})=>{const d=l.format?l.format:"html";return GF(s,d,l)},KS=s=>s.dom.length===0?($s(s),de.none()):de.some(s),n8=(s,l)=>s.filter(d=>F1.isBookmarkNode(d.dom)).bind(l?pc:Ui),o8=(s,l,d,m,v)=>{const w=s.dom,$=l.dom,B=m?w.length:$.length;m?(Wl(w,$,v,!1,!m),d.setStart($,B)):(Wl($,w,v,!1,!m),d.setEnd($,B))},cM=(s,l,d)=>{gr(s).each(m=>{const v=s.dom;l&&Gy(m,Dt(v,0),d)?sO(v,0,d):!l&&Ky(m,Dt(v,v.length),d)&&eD(v,v.length,d)})},zk=(s,l,d,m,v)=>{s.bind(w=>((m?eD:sO)(w.dom,m?w.dom.length:0,v),l.filter(va).map(B=>o8(w,B,d,m,v)))).orThunk(()=>n8(l,m).or(l).filter(va).map($=>cM($,m,v)))},s8=(s,l,d)=>{const m=de.from(l.firstChild).map(qe.fromDom),v=de.from(l.lastChild).map(qe.fromDom);s.deleteContents(),s.insertNode(l);const w=m.bind(Ui).filter(va).bind(KS),$=v.bind(pc).filter(va).bind(KS);zk(w,m,s,!0,d),zk($,v,s,!1,d),s.collapse(!1)},r8=(s,l)=>({format:"html",...s,set:!0,selection:!0,content:l}),kU=(s,l)=>{if(l.format!=="raw"){const d=s.selection.getRng(),m=s.dom.getParent(d.commonAncestorContainer,s.dom.isBlock),v=m?{context:m.nodeName.toLowerCase()}:{},w=s.parser.parse(l.content,{forced_root_block:!1,...v,...l});return u0({validate:!1},s.schema).serialize(w)}else return l.content},i8=(s,l,d={})=>{const m=r8(d,l);YA(s,m).each(v=>{const w=kU(s,v),$=s.selection.getRng();s8($,$.createContextualFragment(w),s.schema),s.selection.setRng($),eO(s,$),Rk(s,w,v)})},uM=(s,l,d)=>{if(an(s,l)){const m=xt(s[l],v=>v!==d);m.length===0?delete s[l]:s[l]=m}};var dM=(s,l)=>{let d,m;const v=(B,H)=>Gn(H,G=>s.is(G,B)),w=B=>s.getParents(B,void 0,s.getRoot()),$=()=>{d={},m={},l.on("NodeChange",B=>{const H=B.element,G=w(H),le={};nn(d,(ue,ge)=>{v(ge,G).each(Me=>{m[ge]||(Ne(ue,He=>{He(!0,{node:Me,selector:ge,parents:G})}),m[ge]=ue),le[ge]=ue})}),nn(m,(ue,ge)=>{le[ge]||(delete m[ge],Ne(ue,Me=>{Me(!1,{node:H,selector:ge,parents:G})}))})})};return{selectorChangedWithUnbind:(B,H)=>(d||$(),d[B]||(d[B]=[]),d[B].push(H),v(B,w(l.selection.getStart())).each(()=>{m[B]=d[B]}),{unbind:()=>{uM(d,B,H),uM(m,B,H)}})}};const v3=s=>!!(s&&s.ownerDocument)&&sn(qe.fromDom(s.ownerDocument),qe.fromDom(s)),a8=s=>s?v3(s.startContainer)&&v3(s.endContainer):!1,b0=(s,l,d,m)=>{let v,w;const{selectorChangedWithUnbind:$}=dM(s,m),B=(En,Qn)=>{const or=s.createRng();Te(En)&&Te(Qn)?(or.setStart(En,Qn),or.setEnd(En,Qn),kt(or),rt(!1)):(Jw(s,or,m.getBody(),!0),kt(or))},H=En=>t8(m,En),G=(En,Qn)=>i8(m,En,Qn),le=En=>CT(m.getBody(),ut(),En),ue=En=>_4(m.getBody(),ut(),En),ge=(En,Qn)=>Cc.getBookmark(En,Qn),Me=En=>Cc.moveToBookmark(En),He=(En,Qn)=>(s6(s,En,Qn).each(kt),En),$e=()=>{const En=ut(),Qn=ft();return!En||En.item?!1:En.compareEndPoints?En.compareEndPoints("StartToEnd",En)===0:!Qn||En.collapsed},Ve=()=>{const En=ut(),Qn=m.getBody().querySelectorAll('[data-mce-selected="1"]');return Qn.length>0?Vs(Qn,or=>s.isEditable(or.parentElement)):O4(s,En)},rt=En=>{const Qn=ut();Qn.collapse(!!En),kt(Qn)},ft=()=>l.getSelection?l.getSelection():l.document.selection,ut=()=>{let En;const Qn=(Rs,to,Ho)=>{try{return to.compareBoundaryPoints(Rs,Ho)}catch{return-1}},or=l.document;if(Te(m.bookmark)&&!c0(m)){const Rs=yT(m);if(Rs.isSome())return Rs.map(to=>xT(m,[to])[0]).getOr(or.createRange())}try{const Rs=ft();Rs&&!yd(Rs.anchorNode)&&(Rs.rangeCount>0?En=Rs.getRangeAt(0):En=or.createRange(),En=xT(m,[En])[0])}catch{}if(En||(En=or.createRange()),ru(En.startContainer)&&En.collapsed){const Rs=s.getRoot();En.setStart(Rs,0),En.setEnd(Rs,0)}return v&&w&&(Qn(En.START_TO_START,En,v)===0&&Qn(En.END_TO_END,En,v)===0?En=w:(v=null,w=null)),En},kt=(En,Qn)=>{if(!a8(En))return;const or=ft();if(En=m.dispatch("SetSelectionRange",{range:En,forward:Qn}).range,or){w=En;try{or.removeAllRanges(),or.addRange(En)}catch{}Qn===!1&&or.extend&&(or.collapse(En.endContainer,En.endOffset),or.extend(En.startContainer,En.startOffset)),v=or.rangeCount>0?or.getRangeAt(0):null}if(!En.collapsed&&En.startContainer===En.endContainer&&(or!=null&&or.setBaseAndExtent)&&En.endOffset-En.startOffset<2&&En.startContainer.hasChildNodes()){const to=En.startContainer.childNodes[En.startOffset];to&&to.nodeName==="IMG"&&(or.setBaseAndExtent(En.startContainer,En.startOffset,En.endContainer,En.endOffset),(or.anchorNode!==En.startContainer||or.focusNode!==En.endContainer)&&or.setBaseAndExtent(to,0,to,1))}m.dispatch("AfterSetSelectionRange",{range:En,forward:Qn})},en=En=>(G(s.getOuterHTML(En)),En),vn=()=>w4(m.getBody(),ut()),Fn=(En,Qn)=>o6(s,ut(),En,Qn),zt=()=>{const En=ft(),Qn=En==null?void 0:En.anchorNode,or=En==null?void 0:En.focusNode;if(!En||!Qn||!or||yd(Qn)||yd(or))return!0;const Rs=s.createRng(),to=s.createRng();try{Rs.setStart(Qn,En.anchorOffset),Rs.collapse(!0),to.setStart(or,En.focusOffset),to.collapse(!0)}catch{return!0}return Rs.compareBoundaryPoints(Rs.START_TO_START,to)<=0},pa={dom:s,win:l,serializer:d,editor:m,expand:(En={type:"word"})=>kt(ke(s).expand(ut(),En)),collapse:rt,setCursorLocation:B,getContent:H,setContent:G,getBookmark:ge,moveToBookmark:Me,select:He,isCollapsed:$e,isEditable:Ve,isForward:zt,setNode:en,getNode:vn,getSel:ft,setRng:kt,getRng:ut,getStart:le,getEnd:ue,getSelectedBlocks:Fn,normalize:()=>{const En=ut(),Qn=ft();if(!L1(Qn)&&Ry(m)){const or=Y(s,En);return or.each(Rs=>{kt(Rs,zt())}),or.getOr(En)}return En},selectorChanged:(En,Qn)=>($(En,Qn),pa),selectorChangedWithUnbind:$,getScrollContainer:()=>{let En,Qn=s.getRoot();for(;Qn&&Qn.nodeName!=="BODY";){if(Qn.scrollHeight>Qn.clientHeight){En=Qn;break}Qn=Qn.parentNode}return En},scrollIntoView:(En,Qn)=>{Te(En)?wc(m,En,Qn):eO(m,ut(),Qn)},placeCaretAt:(En,Qn)=>kt(Hd(En,Qn,m.getDoc())),getBoundingClientRect:()=>{const En=ut();return En.collapsed?Dt.fromRangeStart(En).getClientRects()[0]:En.getBoundingClientRect()},destroy:()=>{l=v=w=null,qr.destroy()}},Cc=F1(pa),qr=i4(pa,m);return pa.bookmarkManager=Cc,pa.controlSelection=qr,pa},b_=(s,l,d)=>{s.addAttributeFilter("data-mce-tabindex",(m,v)=>{let w=m.length;for(;w--;){const $=m[w];$.attr("tabindex",$.attr("data-mce-tabindex")),$.attr(v,null)}}),s.addAttributeFilter("src,href,style",(m,v)=>{const w="data-mce-"+v,$=l.url_converter,B=l.url_converter_scope;let H=m.length;for(;H--;){const G=m[H];let le=G.attr(w);le!==void 0?(G.attr(v,le.length>0?le:null),G.attr(w,null)):(le=G.attr(v),v==="style"?le=d.serializeStyle(d.parseStyle(le),G.name):$&&(le=$.call(B,le,v,G.name)),G.attr(v,le.length>0?le:null))}}),s.addAttributeFilter("class",m=>{let v=m.length;for(;v--;){const w=m[v];let $=w.attr("class");$&&($=$.replace(/(?:^|\s)mce-item-\w+(?!\S)/g,""),w.attr("class",$.length>0?$:null))}}),s.addAttributeFilter("data-mce-type",(m,v,w)=>{let $=m.length;for(;$--;){const B=m[$];B.attr("data-mce-type")==="bookmark"&&!w.cleanup&&(de.from(B.firstChild).exists(G=>{var le;return!K((le=G.value)!==null&&le!==void 0?le:"")})?B.unwrap():B.remove())}}),s.addNodeFilter("script,style",(m,v)=>{var w;const $=H=>H.replace(/()/g,` -`).replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*(()?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"");let B=m.length;for(;B--;){const H=m[B],G=H.firstChild,le=(w=G==null?void 0:G.value)!==null&&w!==void 0?w:"";if(v==="script"){const ue=H.attr("type");ue&&H.attr("type",ue==="mce-no/type"?null:ue.replace(/^mce\-/,"")),l.element_format==="xhtml"&&G&&le.length>0&&(G.value=`// `)}else l.element_format==="xhtml"&&G&&le.length>0&&(G.value=``)}}),s.addNodeFilter("#comment",m=>{let v=m.length;for(;v--;){const w=m[v],$=w.value;l.preserve_cdata&&($==null?void 0:$.indexOf("[CDATA["))===0?(w.name="#cdata",w.type=4,w.value=d.decode($.replace(/^\[CDATA\[|\]\]$/g,""))):($==null?void 0:$.indexOf("mce:protected "))===0&&(w.name="#text",w.type=3,w.raw=!0,w.value=unescape($).substr(14))}}),s.addNodeFilter("xml:namespace,input",(m,v)=>{let w=m.length;for(;w--;){const $=m[w];$.type===7?$.remove():$.type===1&&v==="input"&&!$.attr("type")&&$.attr("type","text")}}),s.addAttributeFilter("data-mce-type",m=>{Ne(m,v=>{v.attr("data-mce-type")==="format-caret"&&(v.isEmpty(s.schema.getNonEmptyElements())?v.remove():v.unwrap())})}),s.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style,data-mce-selected,data-mce-expando,data-mce-block,data-mce-type,data-mce-resize,data-mce-placeholder",(m,v)=>{let w=m.length;for(;w--;)m[w].attr(v,null)}),l.remove_trailing_brs&&NA(l,s,s.schema)},JS=s=>{const l=m=>(m==null?void 0:m.name)==="br",d=s.lastChild;if(l(d)){const m=d.prev;l(m)&&(d.remove(),m.remove())}},fM=(s,l,d)=>{let m;const v=s.dom;let w=l.cloneNode(!0);const $=document.implementation;if($.createHTMLDocument){const B=$.createHTMLDocument("");cn.each(w.nodeName==="BODY"?w.childNodes:[w],H=>{B.body.appendChild(B.importNode(H,!0))}),w.nodeName!=="BODY"?w=B.body.firstChild:w=B.body,m=v.doc,v.doc=B}return lS(s,{...d,node:w}),m&&(v.doc=m),w},hM=(s,l)=>Te(s)&&s.hasEventListeners("PreProcess")&&!l.no_events,l8=(s,l,d)=>hM(s,d)?fM(s,l,d):l,mM=(s,l,d)=>{cn.inArray(l,d)===-1&&(s.addAttributeFilter(d,(m,v)=>{let w=m.length;for(;w--;)m[w].attr(v,null)}),l.push(d))},c8=(s,l,d)=>!l.no_events&&s?eT(s,{...l,content:d}).content:d,u8=(s,l,d)=>{const m=ve(d.getInner?l.innerHTML:s.getOuterHTML(l));return d.selection||ya(qe.fromDom(l))?m:cn.trim(m)},d8=(s,l,d)=>{const m=d.selection?{forced_root_block:!1,...d}:d,v=s.parse(l,m);return JS(v),v},f8=(s,l,d)=>u0(s,l).serialize(d),pM=(s,l,d,m,v)=>{const w=f8(l,d,m);return c8(s,v,w)},h8=(s,l)=>{const d=["data-mce-selected"],m={entity_encoding:"named",remove_trailing_brs:!0,pad_empty_with_br:!1,...s},v=l&&l.dom?l.dom:Jr.DOM,w=l&&l.schema?l.schema:Df(m),$=Mm(m,w);b_($,m,v);const B=(H,G={})=>{const le={format:"html",...G},ue=l8(l,H,le),ge=u8(v,ue,le),Me=d8($,ge,le);return le.format==="tree"?Me:pM(l,m,w,Me,le)};return{schema:w,addNodeFilter:$.addNodeFilter,addAttributeFilter:$.addAttributeFilter,serialize:B,addRules:w.addValidElements,setRules:w.setValidElements,addTempAttr:Ue(mM,$,d),getTempAttrs:je(d),getNodeFilters:$.getNodeFilters,getAttributeFilters:$.getAttributeFilters,removeNodeFilter:$.removeNodeFilter,removeAttributeFilter:$.removeAttributeFilter}},gM=(s,l)=>{const d=h8(s,l);return{schema:d.schema,addNodeFilter:d.addNodeFilter,addAttributeFilter:d.addAttributeFilter,serialize:d.serialize,addRules:d.addRules,setRules:d.setRules,addTempAttr:d.addTempAttr,getTempAttrs:d.getTempAttrs,getNodeFilters:d.getNodeFilters,getAttributeFilters:d.getAttributeFilters,removeNodeFilter:d.removeNodeFilter,removeAttributeFilter:d.removeAttributeFilter}},e2="html",bM=(s,l)=>({...s,format:l,get:!0,getInner:!0}),vM=(s,l={})=>{const d=l.format?l.format:e2,m=bM(l,d);return p0(s,m).fold(mn,v=>{const w=XF(s,v);return jA(s,w,v)})},m8="html",p8=(s,l)=>({format:m8,...s,set:!0,content:l}),O3=(s,l,d={})=>{const m=p8(d,l);return YA(s,m).map(v=>{const w=jF(s,v.content,v);return Rk(s,w.html,v),w.content}).getOr(l)},OM="autoresize_on_init,content_editable_state,padd_empty_with_br,block_elements,boolean_attributes,editor_deselector,editor_selector,elements,file_browser_callback_types,filepicker_validator_handler,force_hex_style_colors,force_p_newlines,gecko_spellcheck,images_dataimg_filter,media_scripts,mode,move_caret_before_on_enter_elements,non_empty_elements,self_closing_elements,short_ended_elements,special,spellchecker_select_languages,spellchecker_whitelist,tab_focus,tabfocus_elements,table_responsive_width,text_block_elements,text_inline_elements,toolbar_drawer,types,validate,whitespace_elements,paste_enable_default_filters,paste_filter_drop,paste_word_valid_elements,paste_retain_style_properties,paste_convert_word_fake_lists".split(","),g8="template_cdate_classes,template_mdate_classes,template_selected_content_classes,template_preview_replace_values,template_replace_values,templates,template_cdate_format,template_mdate_format".split(","),b8="bbcode,colorpicker,contextmenu,fullpage,legacyoutput,spellchecker,textcolor".split(","),yM=[{name:"template",replacedWith:"Advanced Template"},{name:"rtc"}],_M=(s,l)=>{const d=xt(l,m=>an(s,m));return ms(d)},xU=s=>{const l=_M(s,OM),d=s.forced_root_block;return(d===!1||d==="")&&l.push("forced_root_block (false only)"),ms(l)},Dp=s=>_M(s,g8),Wk=(s,l)=>{const d=cn.makeMap(s.plugins," "),v=xt(l,w=>an(d,w));return ms(v)},v8=s=>Wk(s,b8),O8=s=>Wk(s,yM.map(l=>l.name)),y8=(s,l)=>{const d=xU(s),m=v8(l),v=m.length>0,w=d.length>0,$=l.theme==="mobile";if(v||w||$){const B=` -- `,H=$?` - -Themes:${B}mobile`:"",G=v?` - -Plugins:${B}${m.join(B)}`:"",le=w?` - -Options:${B}${d.join(B)}`:"";console.warn("The following deprecated features are currently enabled and have been removed in TinyMCE 6.0. These features will no longer work and should be removed from the TinyMCE configuration. See https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/ for more information."+H+G+le)}},_8=s=>Gn(yM,l=>l.name===s).fold(()=>s,l=>l.replacedWith?`${s}, replaced by ${l.replacedWith}`:s),$r=(s,l)=>{const d=Dp(s),m=O8(l),v=m.length>0,w=d.length>0;if(v||w){const $=` -- `,B=v?` - -Plugins:${$}${m.map(_8).join($)}`:"",H=w?` - -Options:${$}${d.join($)}`:"";console.warn("The following deprecated features are currently enabled but will be removed soon."+B+H)}},EU=(s,l)=>{y8(s,l),$r(s,l)},Zk=Jr.DOM,w8=s=>{Zk.setStyle(s.id,"display",s.orgDisplay)},$i=s=>de.from(s).each(l=>l.destroy()),S8=s=>{const l=s;l.contentAreaContainer=l.formElement=l.container=l.editorContainer=null,l.bodyElement=l.contentDocument=l.contentWindow=null,l.iframeElement=l.targetElm=null;const d=s.selection;if(d){const m=d.dom;l.selection=d.win=d.dom=m.doc=null}},t2=s=>{const l=s.formElement;l&&(l._mceOldSubmit&&(l.submit=l._mceOldSubmit,delete l._mceOldSubmit),Zk.unbind(l,"submit reset",s.formEventDelegate))},C8=s=>{if(!s.removed){const{_selectionOverrides:l,editorUpload:d}=s,m=s.getBody(),v=s.getElement();m&&s.save({is_removing:!0}),s.removed=!0,s.unbindAllNativeEvents(),s.hasHiddenInput&&Te(v==null?void 0:v.nextSibling)&&Zk.remove(v.nextSibling),o0(s),s.editorManager.remove(s),!s.inline&&m&&w8(s),s0(s),Zk.remove(s.getContainer()),$i(l),$i(d),s.destroy()}},k8=(s,l)=>{const{selection:d,dom:m}=s;if(!s.destroyed){if(!l&&!s.removed){s.remove();return}l||(s.editorManager.off("beforeunload",s._beforeUnload),s.theme&&s.theme.destroy&&s.theme.destroy(),$i(d),$i(m)),t2(s),S8(s),s.destroyed=!0}},n2=(()=>{const s={};return{add:(v,w)=>{s[v]=w},get:v=>s[v]?s[v]:{icons:{}},has:v=>an(s,v)}})(),Zh=nc.ModelManager,zd=(s,l)=>l.dom[s],v_=(s,l)=>parseInt(ki(l,s),10),v0=Ue(zd,"clientWidth"),Gg=Ue(zd,"clientHeight"),o2=Ue(v_,"margin-top"),y3=Ue(v_,"margin-left"),_3=s=>s.dom.getBoundingClientRect(),wM=(s,l,d)=>{const m=v0(s),v=Gg(s);return l>=0&&d>=0&&l<=m&&d<=v},SM=(s,l,d,m)=>{const v=_3(l),w=s?v.left+l.dom.clientLeft+y3(l):0,$=s?v.top+l.dom.clientTop+o2(l):0,B=d-w,H=m-$;return{x:B,y:H}},x8=(s,l,d)=>{const m=qe.fromDom(s.getBody()),v=s.inline?m:ps(m),w=SM(s.inline,v,l,d);return wM(v,w.x,w.y)},E8=s=>de.from(s).map(qe.fromDom),CM=s=>{const l=s.inline?s.getBody():s.getContentAreaContainer();return E8(l).map(ef).getOr(!1)};var kM=()=>{const s=()=>{throw new Error("Theme did not provide a NotificationManager implementation.")};return{open:s,close:s,getArgs:s}};const w3=s=>{const l=[],d=()=>{const ge=s.theme;return ge&&ge.getNotificationManagerImpl?ge.getNotificationManagerImpl():kM()},m=()=>de.from(l[0]),v=(ge,Me)=>ge.type===Me.type&&ge.text===Me.text&&!ge.progressBar&&!ge.timeout&&!Me.progressBar&&!Me.timeout,w=()=>{Ne(l,ge=>{ge.reposition()})},$=ge=>{l.push(ge)},B=ge=>{as(l,Me=>Me===ge).each(Me=>{l.splice(Me,1)})},H=(ge,Me=!0)=>s.removed||!CM(s)?{}:(Me&&s.dispatch("BeforeOpenNotification",{notification:ge}),Gn(l,He=>v(d().getArgs(He),ge)).getOrThunk(()=>{s.editorManager.setActive(s);const He=d().open(ge,()=>{B(He),w(),b4(s)&&m().fold(()=>s.focus(),$e=>NC(qe.fromDom($e.getEl())))});return $(He),w(),s.dispatch("OpenNotification",{notification:{...He}}),He})),G=()=>{m().each(ge=>{d().close(ge),B(ge),w()})},le=je(l);return(ge=>{ge.on("SkinLoaded",()=>{const Me=kw(ge);Me&&H({text:Me,type:"warning",timeout:0},!1),w()}),ge.on("show ResizeEditor ResizeWindow NodeChange",()=>{requestAnimationFrame(w)}),ge.on("remove",()=>{Ne(l.slice(),Me=>{d().close(Me)})})})(s),{open:H,close:G,getNotifications:le}},hO=nc.PluginManager,G1=nc.ThemeManager;var AU=()=>{const s=()=>{throw new Error("Theme did not provide a WindowManager implementation.")};return{open:s,openUrl:s,alert:s,confirm:s,close:s}};const xM=s=>{let l=[];const d=()=>{const $e=s.theme;return $e&&$e.getWindowManagerImpl?$e.getWindowManagerImpl():AU()},m=($e,Ve)=>(...rt)=>Ve?Ve.apply($e,rt):void 0,v=$e=>{s.dispatch("OpenWindow",{dialog:$e})},w=$e=>{s.dispatch("CloseWindow",{dialog:$e})},$=$e=>{l.push($e),v($e)},B=$e=>{w($e),l=xt(l,Ve=>Ve!==$e),l.length===0&&s.focus()},H=()=>de.from(l[l.length-1]),G=$e=>{s.editorManager.setActive(s),jy(s),s.ui.show();const Ve=$e();return $(Ve),Ve},le=($e,Ve)=>G(()=>d().open($e,Ve,B)),ue=$e=>G(()=>d().openUrl($e,B)),ge=($e,Ve,rt)=>{const ft=d();ft.alert($e,m(rt||ft,Ve))},Me=($e,Ve,rt)=>{const ft=d();ft.confirm($e,m(rt||ft,Ve))},He=()=>{H().each($e=>{d().close($e),B($e)})};return s.on("remove",()=>{Ne(l,$e=>{d().close($e)})}),{open:le,openUrl:ue,alert:ge,confirm:Me,close:He}},T8=(s,l)=>{s.notificationManager.open({type:"error",text:l})},Uk=(s,l)=>{s._skinLoaded?T8(s,l):s.on("SkinLoaded",()=>{T8(s,l)})},A8=(s,l)=>{Uk(s,Md.translate(["Failed to upload image: {0}",l]))},Yf=(s,l,d)=>{sd(s,l,{message:d}),console.error(d)},qk=(s,l,d)=>d?`Failed to load ${s}: ${d} from url ${l}`:`Failed to load ${s} url: ${l}`,$U=(s,l,d)=>{Yf(s,"PluginLoadError",qk("plugin",l,d))},$8=(s,l,d)=>{Yf(s,"IconsLoadError",qk("icons",l,d))},s2=(s,l,d)=>{Yf(s,"LanguageLoadError",qk("language",l,d))},P8=(s,l,d)=>{Yf(s,"ThemeLoadError",qk("theme",l,d))},EM=(s,l,d)=>{Yf(s,"ModelLoadError",qk("model",l,d))},TM=(s,l,d)=>{const m=Md.translate(["Failed to initialize plugin: {0}",l]);sd(s,"PluginLoadError",{message:m}),r2(m,d),Uk(s,m)},r2=(s,...l)=>{const d=window.console;d&&(d.error?d.error(s,...l):d.log(s,...l))},D8=s=>/^[a-z0-9\-]+$/i.test(s),S3=s=>"content/"+s+"/content.css",O0=s=>tinymce.Resource.has(S3(s)),R8=s=>AM(s,Zc(s)),M8=s=>AM(s,ry(s)),AM=(s,l)=>{const d=s.editorManager.baseURL+"/skins/content",v=`content${s.editorManager.suffix}.css`;return pt(l,w=>O0(w)?w:D8(w)&&!s.inline?`${d}/${w}/${v}`:s.documentBaseURI.toAbsolute(w))},N8=s=>{s.contentCSS=s.contentCSS.concat(R8(s),M8(s))},I8=s=>s?Gs(s.getElementsByTagName("img")):[],B8=(s,l)=>{const d={};return{findAll:(v,w=mt)=>{const $=xt(I8(v),H=>{const G=H.src;return H.hasAttribute("data-mce-bogus")||H.hasAttribute("data-mce-placeholder")||!G||G===Mn.transparentSrc?!1:rr(G,"blob:")?!s.isUploaded(G)&&w(H):rr(G,"data:")?w(H):!1}),B=pt($,H=>{const G=H.src;if(an(d,G))return d[G].then(le=>j(le)?le:{image:H,blobInfo:le.blobInfo});{const le=G7(l,G).then(ue=>(delete d[G],{image:H,blobInfo:ue})).catch(ue=>(delete d[G],ue));return d[G]=le,le}});return Promise.all(B)}}},$M=()=>{let d={};const m=(ge,Me)=>({status:ge,resultUri:Me}),v=ge=>ge in d;return{hasBlobUri:v,getResultUri:ge=>{const Me=d[ge];return Me?Me.resultUri:null},isPending:ge=>v(ge)?d[ge].status===1:!1,isUploaded:ge=>v(ge)?d[ge].status===2:!1,markPending:ge=>{d[ge]=m(1,null)},markUploaded:(ge,Me)=>{d[ge]=m(2,Me)},removeFailed:ge=>{delete d[ge]},destroy:()=>{d={}}}};let L8=0;const F8=()=>{const s=()=>Math.round(Math.random()*4294967295).toString(36);return"s"+new Date().getTime().toString(36)+s()+s()+s()},Xk=s=>s+L8+++F8(),H8=()=>{let s=[];const l=ue=>({"image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/png":"png","image/apng":"apng","image/avif":"avif","image/svg+xml":"svg","image/webp":"webp","image/bmp":"bmp","image/tiff":"tiff"})[ue.toLowerCase()]||"dat",d=(ue,ge,Me,He,$e)=>{if(j(ue))return m({id:ue,name:He,filename:$e,blob:ge,base64:Me});if(ae(ue))return m(ue);throw new Error("Unknown input type")},m=ue=>{if(!ue.blob||!ue.base64)throw new Error("blob and base64 representations of the image are required for BlobInfo to be created");const ge=ue.id||Xk("blobid"),Me=ue.name||ge,He=ue.blob;return{id:je(ge),name:je(Me),filename:je(ue.filename||Me+"."+l(He.type)),blob:je(He),base64:je(ue.base64),blobUri:je(ue.blobUri||URL.createObjectURL(He)),uri:je(ue.uri)}},v=ue=>{$(ue.id())||s.push(ue)},w=ue=>Gn(s,ue).getOrUndefined(),$=ue=>w(ge=>ge.id()===ue);return{create:d,add:v,get:$,getByUri:ue=>w(ge=>ge.blobUri()===ue),getByData:(ue,ge)=>w(Me=>Me.base64()===ue&&Me.blob().type===ge),findFirst:w,removeByUri:ue=>{s=xt(s,ge=>ge.blobUri()===ue?(URL.revokeObjectURL(ge.blobUri()),!1):!0)},destroy:()=>{Ne(s,ue=>{URL.revokeObjectURL(ue.blobUri())}),s=[]}}},Q8=(s,l)=>{const d={},m=($e,Ve)=>$e?$e.replace(/\/$/,"")+"/"+Ve.replace(/^\//,""):Ve,v=($e,Ve)=>new Promise((rt,ft)=>{const ut=new XMLHttpRequest;ut.open("POST",l.url),ut.withCredentials=l.credentials,ut.upload.onprogress=en=>{Ve(en.loaded/en.total*100)},ut.onerror=()=>{ft("Image upload failed due to a XHR Transport error. Code: "+ut.status)},ut.onload=()=>{if(ut.status<200||ut.status>=300){ft("HTTP Error: "+ut.status);return}const en=JSON.parse(ut.responseText);if(!en||!j(en.location)){ft("Invalid JSON: "+ut.responseText);return}rt(m(l.basePath,en.location))};const kt=new FormData;kt.append("file",$e.blob(),$e.filename()),ut.send(kt)}),w=Oe(l.handler)?l.handler:v,$=()=>new Promise($e=>{$e([])}),B=($e,Ve)=>({url:Ve,blobInfo:$e,status:!0}),H=($e,Ve)=>({url:"",blobInfo:$e,status:!1,error:Ve}),G=($e,Ve)=>{cn.each(d[$e],rt=>{rt(Ve)}),delete d[$e]},le=($e,Ve,rt)=>(s.markPending($e.blobUri()),new Promise(ft=>{let ut,kt;try{const en=()=>{ut&&(ut.close(),kt=St)},vn=zt=>{en(),s.markUploaded($e.blobUri(),zt),G($e.blobUri(),B($e,zt)),ft(B($e,zt))},Fn=zt=>{en(),s.removeFailed($e.blobUri()),G($e.blobUri(),H($e,zt)),ft(H($e,zt))};kt=zt=>{zt<0||zt>100||de.from(ut).orThunk(()=>de.from(rt).map(Zt)).each(It=>{ut=It,It.progressBar.value(zt)})},Ve($e,kt).then(vn,zt=>{Fn(j(zt)?{message:zt}:zt)})}catch(en){ft(H($e,en))}})),ue=$e=>$e===v,ge=$e=>{const Ve=$e.blobUri();return new Promise(rt=>{d[Ve]=d[Ve]||[],d[Ve].push(rt)})},Me=($e,Ve)=>($e=cn.grep($e,rt=>!s.isUploaded(rt.blobUri())),Promise.all(cn.map($e,rt=>s.isPending(rt.blobUri())?ge(rt):le(rt,w,Ve))));return{upload:($e,Ve)=>!l.url&&ue(w)?$():Me($e,Ve)}},V8=s=>()=>s.notificationManager.open({text:s.translate("Image uploading..."),type:"info",timeout:-1,progressBar:!0}),O_=(s,l)=>Q8(l,{url:ww(s),basePath:Sw(s),credentials:pv(s),handler:gv(s)}),z8=s=>{const l=$M(),d=O_(s,l);return{upload:(m,v=!0)=>d.upload(m,v?V8(s):void 0)}},C3=(s,l)=>s.dom.isEmpty(l.dom)&&Te(s.schema.getTextBlockElements()[Os(l)]),W8=s=>l=>{C3(s,l)&&di(l,qe.fromHtml('
    '))},Z8=s=>{const l=H8();let d,m;const v=$M(),w=[],$=ut=>kt=>s.selection?ut(kt):[],B=ut=>ut+(ut.indexOf("?")===-1?"?":"&")+new Date().getTime(),H=(ut,kt,en)=>{let vn=0;do vn=ut.indexOf(kt,vn),vn!==-1&&(ut=ut.substring(0,vn)+en+ut.substr(vn+kt.length),vn+=en.length-kt.length+1);while(vn!==-1);return ut},G=(ut,kt,en)=>{const vn=`src="${en}"${en===Mn.transparentSrc?' data-mce-placeholder="1"':""}`;return ut=H(ut,`src="${kt}"`,vn),ut=H(ut,'data-mce-src="'+kt+'"','data-mce-src="'+en+'"'),ut},le=(ut,kt)=>{Ne(s.undoManager.data,en=>{en.type==="fragmented"?en.fragments=pt(en.fragments,vn=>G(vn,ut,kt)):en.content=G(en.content,ut,kt)})},ue=(ut,kt)=>{const en=s.convertURL(kt,"src");le(ut.src,kt),$c(qe.fromDom(ut),{src:A1(s)?B(kt):kt,"data-mce-src":en})},ge=()=>(d||(d=O_(s,v)),Ve().then($(ut=>{const kt=pt(ut,en=>en.blobInfo);return d.upload(kt,V8(s)).then($(en=>{const vn=[];let Fn=!1;const zt=pt(en,(It,Jt)=>{const{blobInfo:qn,image:mo}=ut[Jt];let es=!1;return It.status&&sy(s)?(It.url&&!As(mo.src,It.url)&&(Fn=!0),l.removeByUri(mo.src),Y1(s)||ue(mo,It.url)):It.error&&(It.error.remove&&(le(mo.src,Mn.transparentSrc),vn.push(mo),es=!0),A8(s,It.error.message)),{element:mo,status:It.status,uploadUri:It.url,blobInfo:qn,removed:es}});return vn.length>0&&!Y1(s)?s.undoManager.transact(()=>{Ne(wu(vn),It=>{const Jt=gr(It);$s(It),Jt.each(W8(s)),l.removeByUri(It.dom.src)})}):Fn&&s.undoManager.dispatchChange(),zt}))}))),Me=()=>oy(s)?ge():Promise.resolve([]),He=ut=>Vs(w,kt=>kt(ut)),$e=ut=>{w.push(ut)},Ve=()=>(m||(m=B8(v,l)),m.findAll(s.getBody(),He).then($(ut=>{const kt=xt(ut,en=>j(en)?(Uk(s,en),!1):en.uriType!=="blob");return Y1(s)||Ne(kt,en=>{le(en.image.src,en.blobInfo.blobUri()),en.image.src=en.blobInfo.blobUri(),en.image.removeAttribute("data-mce-src")}),kt}))),rt=()=>{l.destroy(),v.destroy(),m=d=null},ft=ut=>ut.replace(/src="(blob:[^"]+)"/g,(kt,en)=>{const vn=v.getResultUri(en);if(vn)return'src="'+vn+'"';let Fn=l.getByUri(en);return Fn||(Fn=Dn(s.editorManager.get(),(zt,It)=>zt||It.editorUpload&&It.editorUpload.blobCache.getByUri(en),void 0)),Fn?'src="data:'+Fn.blob().type+";base64,"+Fn.base64()+'"':kt});return s.on("SetContent",()=>{oy(s)?Me():Ve()}),s.on("RawSaveContent",ut=>{ut.content=ft(ut.content)}),s.on("GetContent",ut=>{ut.source_view||ut.format==="raw"||ut.format==="tree"||(ut.content=ft(ut.content))}),s.on("PostRender",()=>{s.parser.addNodeFilter("img",ut=>{Ne(ut,kt=>{const en=kt.attr("src");if(!en||l.getByUri(en))return;const vn=v.getResultUri(en);vn&&kt.attr("src",vn)})})}),{blobCache:l,addFilter:$e,uploadImages:ge,uploadImagesAuto:Me,scanForImages:Ve,destroy:rt}},U8=s=>{const l=s.dom,d=s.schema.type,m={valigntop:[{selector:"td,th",styles:{verticalAlign:"top"}}],valignmiddle:[{selector:"td,th",styles:{verticalAlign:"middle"}}],valignbottom:[{selector:"td,th",styles:{verticalAlign:"bottom"}}],alignleft:[{selector:"figure.image",collapsed:!1,classes:"align-left",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"left"},inherit:!1,preview:!1},{selector:"img,audio,video",collapsed:!1,styles:{float:"left"},preview:"font-family font-size"},{selector:"table",collapsed:!1,styles:{marginLeft:"0px",marginRight:"auto"},onformat:v=>{l.setStyle(v,"float",null)},preview:"font-family font-size"},{selector:".mce-preview-object,[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{float:"left"}}],aligncenter:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"center"},inherit:!1,preview:"font-family font-size"},{selector:"figure.image",collapsed:!1,classes:"align-center",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"img,audio,video",collapsed:!1,styles:{display:"block",marginLeft:"auto",marginRight:"auto"},preview:!1},{selector:"table",collapsed:!1,styles:{marginLeft:"auto",marginRight:"auto"},preview:"font-family font-size"},{selector:".mce-preview-object",ceFalseOverride:!0,styles:{display:"table",marginLeft:"auto",marginRight:"auto"},preview:!1},{selector:"[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{marginLeft:"auto",marginRight:"auto"},preview:!1}],alignright:[{selector:"figure.image",collapsed:!1,classes:"align-right",ceFalseOverride:!0,preview:"font-family font-size"},{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"right"},inherit:!1,preview:"font-family font-size"},{selector:"img,audio,video",collapsed:!1,styles:{float:"right"},preview:"font-family font-size"},{selector:"table",collapsed:!1,styles:{marginRight:"0px",marginLeft:"auto"},onformat:v=>{l.setStyle(v,"float",null)},preview:"font-family font-size"},{selector:".mce-preview-object,[data-ephox-embed-iri]",ceFalseOverride:!0,styles:{float:"right"},preview:!1}],alignjustify:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li,pre",styles:{textAlign:"justify"},inherit:!1,preview:"font-family font-size"}],bold:[{inline:"strong",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all",preserve_attributes:["class","style"]}],italic:[{inline:"em",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all",preserve_attributes:["class","style"]}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:!0},{inline:"u",remove:"all",preserve_attributes:["class","style"]}],strikethrough:(()=>{const v={inline:"span",styles:{textDecoration:"line-through"},exact:!0},w={inline:"strike",remove:"all",preserve_attributes:["class","style"]},$={inline:"s",remove:"all",preserve_attributes:["class","style"]};return d!=="html4"?[$,v,w]:[v,$,w]})(),forecolor:{inline:"span",styles:{color:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0},fontname:{inline:"span",toggle:!1,styles:{fontFamily:"%value"},clear_child_styles:!0},fontsize:{inline:"span",toggle:!1,styles:{fontSize:"%value"},clear_child_styles:!0},lineheight:{selector:"h1,h2,h3,h4,h5,h6,p,li,td,th,div",styles:{lineHeight:"%value"}},fontsize_class:{inline:"span",attributes:{class:"%value"}},blockquote:{block:"blockquote",wrapper:!0,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},code:{inline:"code"},link:{inline:"a",selector:"a",remove:"all",split:!0,deep:!0,onmatch:(v,w,$)=>Zn(v)&&v.hasAttribute("href"),onformat:(v,w,$)=>{cn.each($,(B,H)=>{l.setAttrib(v,H,B)})}},lang:{inline:"span",clear_child_styles:!0,remove_similar:!0,attributes:{lang:"%value","data-mce-lang":v=>{var w;return(w=v==null?void 0:v.customValue)!==null&&w!==void 0?w:null}}},removeformat:[{selector:"b,strong,em,i,font,u,strike,s,sub,sup,dfn,code,samp,kbd,var,cite,mark,q,del,ins,small",remove:"all",split:!0,expand:!1,block_expand:!0,deep:!0},{selector:"span",attributes:["style","class"],remove:"empty",split:!0,expand:!1,deep:!0},{selector:"*",attributes:["style","class"],split:!1,expand:!1,deep:!0}]};return cn.each("p h1 h2 h3 h4 h5 h6 div address pre dt dd samp".split(/\s/),v=>{m[v]={block:v,remove:"all"}}),m},PM={remove_similar:!0,inherit:!1},Nm={selector:"td,th",...PM},mO={tablecellbackgroundcolor:{styles:{backgroundColor:"%value"},...Nm},tablecellverticalalign:{styles:{"vertical-align":"%value"},...Nm},tablecellbordercolor:{styles:{borderColor:"%value"},...Nm},tablecellclass:{classes:["%value"],...Nm},tableclass:{selector:"table",classes:["%value"],...PM},tablecellborderstyle:{styles:{borderStyle:"%value"},...Nm},tablecellborderwidth:{styles:{borderWidth:"%value"},...Nm}},jk=je(mO),Yk=s=>{const l={},d=$=>Te($)?l[$]:l,m=$=>an(l,$),v=($,B)=>{$&&(j($)?(_e(B)||(B=[B]),Ne(B,H=>{De(H.deep)&&(H.deep=!ic(H)),De(H.split)&&(H.split=!ic(H)||qa(H)),De(H.remove)&&ic(H)&&!qa(H)&&(H.remove="none"),ic(H)&&qa(H)&&(H.mixed=!0,H.block_expand=!0),j(H.classes)&&(H.classes=H.classes.split(/\s+/))}),l[$]=B):nn($,(H,G)=>{v(G,H)}))},w=$=>($&&l[$]&&delete l[$],l);return v(U8(s)),v(jk()),v(Ew(s)),{get:d,has:m,register:v,unregister:w}},Kg=cn.each,pu=Jr.DOM,y_=s=>Te(s)&&ae(s),i2=(s,l)=>{const d=l&&l.schema||Df({}),m=(H,G)=>{G.classes.length>0&&pu.addClass(H,G.classes.join(" ")),pu.setAttribs(H,G.attrs)},v=H=>{const G=j(H)?{name:H,classes:[],attrs:{}}:H,le=pu.create(G.name);return m(le,G),le},w=(H,G)=>{const le=d.getElementRule(H.nodeName.toLowerCase()),ue=le==null?void 0:le.parentsRequired;return ue&&ue.length?G&>(ue,G)?G:ue[0]:!1},$=(H,G,le)=>{let ue;const ge=G[0],Me=y_(ge)?ge.name:void 0,He=w(H,Me);if(He)Me===He?(ue=ge,G=G.slice(1)):ue=He;else if(ge)ue=ge,G=G.slice(1);else if(!le)return H;const $e=ue?v(ue):pu.create("div");$e.appendChild(H),le&&cn.each(le,rt=>{const ft=v(rt);$e.insertBefore(ft,H)});const Ve=y_(ue)?ue.siblings:void 0;return $($e,G,Ve)},B=pu.create("div");if(s.length>0){const H=s[0],G=v(H),le=y_(H)?H.siblings:void 0;B.appendChild($(G,s.slice(1),le))}return B},DM=s=>{s=cn.trim(s);let l="div";const d={name:l,classes:[],attrs:{},selector:s};return s!=="*"&&(l=s.replace(/(?:([#\.]|::?)([\w\-]+)|(\[)([^\]]+)\]?)/g,(m,v,w,$,B)=>{switch(v){case"#":d.attrs.id=w;break;case".":d.classes.push(w);break;case":":cn.inArray("checked disabled enabled read-only required".split(" "),w)!==-1&&(d.attrs[w]=w);break}if($==="["){const H=B.match(/([\w\-]+)(?:\=\"([^\"]+))?/);H&&(d.attrs[H[1]]=H[2])}return""})),d.name=l||"div",d},k3=s=>j(s)?(s=s.split(/\s*,\s*/)[0],s=s.replace(/\s*(~\+|~|\+|>)\s*/g,"$1"),cn.map(s.split(/(?:>|\s+(?![^\[\]]+\]))/),l=>{const d=cn.map(l.split(/(?:~\+|~|\+)/),DM),m=d.pop();return d.length&&(m.siblings=d),m}).reverse()):[],x3=(s,l)=>{let d="",m=ly(s);if(m==="")return"";const v=ge=>j(ge)?ge.replace(/%(\w+)/g,""):"",w=(ge,Me)=>pu.getStyle(Me??s.getBody(),ge,!0);if(j(l)){const ge=s.formatter.get(l);if(!ge)return"";l=ge[0]}if("preview"in l){const ge=l.preview;if(ge===!1)return"";m=ge||m}let $=l.block||l.inline||"span",B;const H=k3(l.selector);H.length>0?(H[0].name||(H[0].name=$),$=l.selector,B=i2(H,s)):B=i2([$],s);const G=pu.select($,B)[0]||B.firstChild;Kg(l.styles,(ge,Me)=>{const He=v(ge);He&&pu.setStyle(G,Me,He)}),Kg(l.attributes,(ge,Me)=>{const He=v(ge);He&&pu.setAttrib(G,Me,He)}),Kg(l.classes,ge=>{const Me=v(ge);pu.hasClass(G,Me)||pu.addClass(G,Me)}),s.dispatch("PreviewFormats"),pu.setStyles(B,{position:"absolute",left:-65535}),s.getBody().appendChild(B);const le=w("fontSize"),ue=/px$/.test(le)?parseInt(le,10):0;return Kg(m.split(" "),ge=>{let Me=w(ge,G);if(!(ge==="background-color"&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(Me)&&(Me=w(ge),lu(Me).toLowerCase()==="#ffffff"))&&!(ge==="color"&&lu(Me).toLowerCase()==="#000000")){if(ge==="font-size"&&/em|%$/.test(Me)){if(ue===0)return;Me=parseFloat(Me)/(/%$/.test(Me)?100:1)*ue+"px"}ge==="border"&&Me&&(d+="padding:0 2px;"),d+=ge+":"+Me+";"}}),s.dispatch("AfterPreviewFormats"),pu.remove(B),d},RM=s=>{s.addShortcut("meta+b","","Bold"),s.addShortcut("meta+i","","Italic"),s.addShortcut("meta+u","","Underline");for(let l=1;l<=6;l++)s.addShortcut("access+"+l,"",["FormatBlock",!1,"h"+l]);s.addShortcut("access+7","",["FormatBlock",!1,"p"]),s.addShortcut("access+8","",["FormatBlock",!1,"div"]),s.addShortcut("access+9","",["FormatBlock",!1,"address"])},E3=s=>{const l=Yk(s),d=Ai({});return RM(s),E7(s),Y1(s)||F7(d,s),{get:l.get,has:l.has,register:l.register,unregister:l.unregister,apply:(m,v,w)=>{ZF(s,m,v,w)},remove:(m,v,w,$)=>{UF(s,m,v,w,$)},toggle:(m,v,w)=>{qF(s,m,v,w)},match:(m,v,w,$)=>iM(s,m,v,w,$),closest:m=>g3(s,m),matchAll:(m,v)=>aM(s,m,v),matchNode:(m,v,w,$)=>p3(s,m,v,w,$),canApply:m=>lM(s,m),formatChanged:(m,v,w,$)=>Wh(s,d,m,v,w,$),getCssText:Ue(x3,s)}},pO=s=>{switch(s.toLowerCase()){case"undo":case"redo":case"mcefocus":return!0;default:return!1}},MM=(s,l,d)=>{const m=Ai(!1),v=H=>{Qk(l,!1,d),l.add({},H)};s.on("init",()=>{l.add()}),s.on("BeforeExecCommand",H=>{const G=H.command;pO(G)||(eM(l,d),l.beforeChange())}),s.on("ExecCommand",H=>{const G=H.command;pO(G)||v(H)}),s.on("ObjectResizeStart cut",()=>{l.beforeChange()}),s.on("SaveContent ObjectResized blur",v),s.on("dragend",v),s.on("keyup",H=>{const G=H.keyCode;if(H.isDefaultPrevented())return;const le=Mn.os.isMacOS()&&H.key==="Meta";(G>=33&&G<=36||G>=37&&G<=40||G===45||H.ctrlKey||le)&&(v(),s.nodeChanged()),(G===46||G===8)&&s.nodeChanged(),m.get()&&l.typing&&!d3(Hk(s),l.data[0])&&(s.isDirty()||s.setDirty(!0),s.dispatch("TypingUndo"),m.set(!1),s.nodeChanged())}),s.on("keydown",H=>{const G=H.keyCode;if(H.isDefaultPrevented())return;if(G>=33&&G<=36||G>=37&&G<=40||G===45){l.typing&&v(H);return}const le=H.ctrlKey&&!H.altKey||H.metaKey;if((G<16||G>20)&&G!==224&&G!==91&&!l.typing&&!le){l.beforeChange(),Qk(l,!0,d),l.add({},H),m.set(!0);return}(Mn.os.isMacOS()?H.metaKey:H.ctrlKey&&!H.altKey)&&l.beforeChange()}),s.on("mousedown",H=>{l.typing&&v(H)});const w=H=>H.inputType==="insertReplacementText",$=H=>H.inputType==="insertText"&&H.data===null,B=H=>H.inputType==="insertFromPaste"||H.inputType==="insertFromDrop";s.on("input",H=>{H.inputType&&(w(H)||$(H)||B(H))&&v(H)}),s.on("AddUndo Undo Redo ClearUndos",H=>{H.isDefaultPrevented()||s.nodeChanged()})},NM=s=>{s.addShortcut("meta+z","","Undo"),s.addShortcut("meta+y,meta+shift+z","","Redo")},T3=s=>{const l=fm(),d=Ai(0),m=Ai(0),v={data:[],typing:!1,beforeChange:()=>{CU(s,d,l)},add:(w,$)=>Xc(s,v,m,d,l,w,$),dispatchChange:()=>{s.setDirty(!0);const w=Hk(s);w.bookmark=Dh(s.selection),s.dispatch("change",{level:w,lastLevel:dr(v.data,m.get()).getOrUndefined()})},undo:()=>oM(s,v,d,m),redo:()=>sM(s,m,v.data),clear:()=>{rM(s,v,m)},reset:()=>{QF(s,v)},hasUndo:()=>VF(s,v,m),hasRedo:()=>Vk(s,v,m),transact:w=>zF(s,v,d,w),ignore:w=>{m3(s,d,w)},extra:(w,$)=>{WF(s,v,m,w,$)}};return Y1(s)||MM(s,v,d),NM(s),v},Gk=[9,27,zn.HOME,zn.END,19,20,44,144,145,33,34,45,16,17,18,91,92,93,zn.DOWN,zn.UP,zn.LEFT,zn.RIGHT].concat(Mn.browser.isFirefox()?[224]:[]),A3="data-mce-placeholder",$3=s=>s.type==="keydown"||s.type==="keyup",P3=s=>{const l=s.keyCode;return l===zn.BACKSPACE||l===zn.DELETE},IM=s=>{if($3(s)){const l=s.keyCode;return!P3(s)&&(zn.metaKeyPressed(s)||s.altKey||l>=112&&l<=123||gt(Gk,l))}else return!1},K1=s=>$3(s)&&!(P3(s)||s.type==="keyup"&&s.keyCode===229),y0=(s,l,d)=>{if(Fi(qe.fromDom(l),!1)){const m=l.firstElementChild;return m?s.getStyle(l.firstElementChild,"padding-left")||s.getStyle(l.firstElementChild,"padding-right")?!1:d===m.nodeName.toLowerCase():!0}else return!1},Im=s=>{var l;const d=s.dom,m=Vl(s),v=(l=rC(s))!==null&&l!==void 0?l:"",w=($,B)=>{if(IM($))return;const H=s.getBody(),G=K1($)?!1:y0(d,H,m);(d.getAttrib(H,A3)!==""!==G||B)&&(d.setAttrib(H,A3,G?v:null),d.setAttrib(H,"aria-placeholder",G?v:null),nT(s,G),s.on(G?"keydown":"keyup",w),s.off(G?"keyup":"keydown",w))};Ls(v)&&s.on("init",$=>{w($,!0),s.on("change SetContent ExecCommand",w),s.on("paste",B=>Uf.setEditorTimeout(s,()=>w(B)))})},q8=(s,l)=>({block:s,position:l}),X8=(s,l)=>({from:s,to:l}),D3=(s,l)=>{const d=qe.fromDom(s),m=qe.fromDom(l.container());return ES(d,m).map(v=>q8(v,l))},j8=s=>!dt(s.from.block,s.to.block),BM=(s,l)=>Ma(l,v=>Kl(v)||wl(v.dom),v=>dt(v,s)).filter(Ra).getOr(s),Y8=(s,l)=>{const d=qe.fromDom(s);return dt(BM(d,l.from.block),BM(d,l.to.block))},G8=s=>ys(s.from.block.dom)===!1&&ys(s.to.block.dom)===!1,K8=s=>{const l=d=>_t(d)||lb(d.dom);return l(s.from.block)&&l(s.to.block)},J8=(s,l,d)=>Js(d.position.getNode())&&!Fi(d.block)?Yb(!1,d.block.dom).bind(m=>m.isEqual(d.position)?zl(l,s,m).bind(v=>D3(s,v)):de.some(d)).getOr(d):d,e9=(s,l,d)=>{const m=D3(s,Dt.fromRangeStart(d)),v=m.bind(w=>zl(l,s,w.position).bind($=>D3(s,$).map(B=>J8(s,l,B))));return yr(m,v,X8).filter(w=>j8(w)&&Y8(s,w)&&G8(w)&&K8(w))},t9=(s,l,d)=>d.collapsed?e9(s,l,d):de.none(),n9=(s,l)=>{const d=Ci(s);return as(d,m=>l.isBlock(Os(m))).fold(je(d),m=>d.slice(0,m))},Kk=(s,l)=>{const d=n9(s,l);return Ne(d,$s),d},Jk=(s,l)=>{const d=Vg(l,s);return Gn(d.reverse(),m=>Fi(m)).each($s)},LM=s=>xt(Um(s),l=>!Fi(l)).length===0,o9=(s,l,d,m,v)=>{if(Fi(d))return Sd(d),hu(d.dom);LM(v)&&Fi(l)&&xi(v,qe.fromTag("br"));const w=Ru(d.dom,Dt.before(v.dom));return Ne(Kk(l,m),$=>{xi(v,$)}),Jk(s,l),w},s9=(s,l)=>s.isInline(Os(l)),FM=(s,l,d,m)=>{if(Fi(d)){if(Fi(l)){const $=kn((B=>{const H=(G,le)=>Dr(G).fold(()=>le,ue=>s9(m,ue)?H(ue,le.concat(uu(ue))):le);return H(B,[])})(d),(B,H)=>(Xm(B,H),H),Jl());ou(l),di(l,$)}return $s(d),hu(l.dom)}const v=zf(d.dom);return Ne(Kk(l,m),w=>{di(d,w)}),Jk(s,l),v},HM=(s,l)=>{const d=Vg(l,s);return de.from(d[d.length-1])},R3=(s,l)=>sn(l,s)?HM(l,s):de.none(),M3=(s,l)=>{Yb(s,l.dom).bind(d=>de.from(d.getNode())).map(qe.fromDom).filter(xu).each($s)},N3=(s,l,d,m)=>(M3(!0,l),M3(!1,d),R3(l,d).fold(Ue(FM,s,l,d,m),Ue(o9,s,l,d,m))),ex=(s,l,d,m,v)=>l?N3(s,m,d,v):N3(s,d,m,v),I3=(s,l)=>{const d=qe.fromDom(s.getBody());return t9(d.dom,l,s.selection.getRng()).map(v=>()=>{ex(d,l,v.from.block,v.to.block,s.schema).each(w=>{s.selection.setRng(w.toRange())})})},r9=(s,l,d)=>{const m=l.getRng();return yr(ES(s,qe.fromDom(m.startContainer)),ES(s,qe.fromDom(m.endContainer)),(v,w)=>dt(v,w)?de.none():de.some(()=>{m.deleteContents(),ex(s,!0,v,w,d).each($=>{l.setRng($.toRange())})})).getOr(de.none())},Rp=(s,l)=>{const d=qe.fromDom(l),m=Ue(dt,s);return Rr(d,Kl,m).isSome()},Bm=(s,l)=>Rp(s,l.startContainer)||Rp(s,l.endContainer),tx=(s,l)=>{const d=Ru(s.dom,Dt.fromRangeStart(l)).isNone(),m=Uc(s.dom,Dt.fromRangeEnd(l)).isNone();return!Bm(s,l)&&d&&m},QM=s=>de.some(()=>{s.setContent(""),s.selection.setCursorLocation()}),nx=s=>{const l=qe.fromDom(s.getBody()),d=s.selection.getRng();return tx(l,d)?QM(s):r9(l,s.selection,s.schema)},ox=(s,l)=>s.selection.isCollapsed()?de.none():nx(s),Jg=(s,l,d,m,v)=>de.from(l._selectionOverrides.showCaret(s,d,m,v)),VM=s=>{const l=s.ownerDocument.createRange();return l.selectNode(s),l},__=(s,l)=>s.dispatch("BeforeObjectSelected",{target:l}).isDefaultPrevented()?de.none():de.some(VM(l)),zM=(s,l,d)=>{const m=Tr(1,s.getBody(),l),v=Dt.fromRangeStart(m),w=v.getNode();if(Zb(w))return Jg(1,s,w,!v.isAtEnd(),!1);const $=v.getNode(!0);if(Zb($))return Jg(1,s,$,!1,!1);const B=lO(s.dom.getRoot(),v.getNode());return Zb(B)?Jg(1,s,B,!1,d):de.none()},sx=(s,l,d)=>l.collapsed?zM(s,l,d).getOr(l):l,rx=s=>W1(s)||_S(s),B3=s=>Tp(s)||Yy(s),i9=(s,l)=>{un(l)&&l.data.length===0&&s.remove(l)},WM=(s,l,d,m,v,w)=>{Jg(m,s,w.getNode(!v),v,!0).each($=>{if(l.collapsed){const B=l.cloneRange();v?B.setEnd($.startContainer,$.startOffset):B.setStart($.endContainer,$.endOffset),B.deleteContents()}else l.deleteContents();s.selection.setRng($)}),i9(s.dom,d)},a9=(s,l)=>{const d=s.selection.getRng();if(!un(d.commonAncestorContainer))return de.none();const m=l?ei.Forwards:ei.Backwards,v=Ih(s.getBody()),w=Ue(rl,l?v.next:v.prev),$=l?rx:B3,B=El(m,s.getBody(),d),H=w(B),G=H&&Hs(l,H);if(!G||!od(B,G))return de.none();if($(G))return de.some(()=>WM(s,d,B.getNode(),m,l,G));const le=w(G);return le&&$(le)&&od(G,le)?de.some(()=>WM(s,d,B.getNode(),m,l,le)):de.none()},L3=(s,l)=>a9(s,l),ix=(s,l)=>{const d=s.getBody();return l?hu(d).filter(W1):zf(d).filter(Tp)},F3=s=>{const l=s.selection.getRng();return!l.collapsed&&(ix(s,!0).exists(d=>d.isEqual(Dt.fromRangeStart(l)))||ix(s,!1).exists(d=>d.isEqual(Dt.fromRangeEnd(l))))},l9=s=>Te(s)&&(Kl(qe.fromDom(s))||iu(qe.fromDom(s))),Wd=hf.generate([{remove:["element"]},{moveToElement:["element"]},{moveToPosition:["position"]}]),c9=(s,l)=>{const d=l.getNode(!s),m=s?"after":"before";return Zn(d)&&d.getAttribute("data-mce-caret")===m},u9=(s,l,d,m,v)=>{const w=$=>v.isInline($.nodeName.toLowerCase())&&!_n(d,m,s);return Wr(!l,d).fold(()=>Wr(l,m).fold(Fe,w),w)},ZM=(s,l,d,m)=>{const v=m.getNode(!l);return ES(qe.fromDom(s),qe.fromDom(d.getNode())).map(w=>Fi(w)?Wd.remove(w.dom):Wd.moveToElement(v)).orThunk(()=>de.some(Wd.moveToElement(v)))},UM=(s,l,d,m)=>zl(l,s,d).bind(v=>l9(v.getNode())||u9(s,l,d,v,m)?de.none():l&&ys(v.getNode())||!l&&ys(v.getNode(!0))?ZM(s,l,d,v):l&&Tp(d)||!l&&W1(d)?de.some(Wd.moveToPosition(v)):de.none()),d9=(s,l)=>Be(l)?de.none():s&&ys(l.nextSibling)?de.some(Wd.moveToElement(l.nextSibling)):!s&&ys(l.previousSibling)?de.some(Wd.moveToElement(l.previousSibling)):de.none(),f9=(s,l,d)=>d.fold(m=>de.some(Wd.remove(m)),m=>de.some(Wd.moveToElement(m)),m=>_n(l,m,s)?de.none():de.some(Wd.moveToPosition(m))),h9=(s,l,d,m)=>c9(l,d)?d9(l,d.getNode(!l)).orThunk(()=>UM(s,l,d,m)):UM(s,l,d,m).bind(v=>f9(s,d,v)),ax=(s,l,d,m)=>{const v=Tr(l?1:-1,s,d),w=Dt.fromRangeStart(v),$=qe.fromDom(s);return!l&&Tp(w)?de.some(Wd.remove(w.getNode(!0))):l&&W1(w)?de.some(Wd.remove(w.getNode())):!l&&W1(w)&&SS($,w,m)?M6($,w,m).map(B=>Wd.remove(B.getNode())):l&&Tp(w)&&wS($,w,m)?N6($,w,m).map(B=>Wd.remove(B.getNode())):h9(s,l,w,m)},H3=(s,l)=>d=>(s._selectionOverrides.hideFakeCaret(),U1(s,l,qe.fromDom(d)),!0),m9=(s,l)=>d=>{const m=l?Dt.before(d):Dt.after(d);return s.selection.setRng(m.toRange()),!0},p9=s=>l=>(s.selection.setRng(l.toRange()),!0),qM=(s,l)=>de.from(lO(s.getBody(),l)),g9=(s,l)=>{const d=s.selection.getNode();return qM(s,d).filter(ys).fold(()=>ax(s.getBody(),l,s.selection.getRng(),s.schema).map(m=>()=>m.fold(H3(s,l),m9(s,l),p9(s))),()=>de.some(St))},XM=s=>{Ne(Fa(s,".mce-offscreen-selection"),$s)},b9=(s,l)=>{const d=s.selection.getNode();return ys(d)&&!lh(d)?qM(s,d.parentNode).filter(ys).fold(()=>de.some(()=>{XM(qe.fromDom(s.getBody())),U1(s,l,qe.fromDom(s.selection.getNode())),JC(s)}),()=>de.some(St)):F3(s)?de.some(()=>{TS(s,s.selection.getRng(),qe.fromDom(s.getBody()))}):de.none()},jM=s=>{const l=s.dom,d=s.selection,m=lO(s.getBody(),d.getNode());if(wl(m)&&l.isBlock(m)&&l.isEmpty(m)){const v=l.create("br",{"data-mce-bogus":"1"});l.setHTML(m,""),m.appendChild(v),d.setRng(Dt.before(v).toRange())}return!0},a2=(s,l)=>s.selection.isCollapsed()?g9(s,l):b9(s,l),v9=(s,l)=>{const d=Dt.fromRangeStart(s.selection.getRng());return zl(l,s.getBody(),d).filter(m=>l?T6(m):A6(m)).bind(m=>Bn(l?0:-1,m)).map(m=>()=>s.selection.select(m))},Q3=(s,l)=>s.selection.isCollapsed()?v9(s,l):de.none(),w_=un,YM=s=>w_(s)&&s.data[0]===z,GM=s=>w_(s)&&s.data[s.data.length-1]===z,KM=s=>{var l;return((l=s.ownerDocument)!==null&&l!==void 0?l:document).createTextNode(z)},O9=s=>{var l;if(w_(s.previousSibling))return GM(s.previousSibling)||s.previousSibling.appendData(z),s.previousSibling;if(w_(s))return YM(s)||s.insertData(0,z),s;{const d=KM(s);return(l=s.parentNode)===null||l===void 0||l.insertBefore(d,s),d}},lx=s=>{var l,d;if(w_(s.nextSibling))return YM(s.nextSibling)||s.nextSibling.insertData(0,z),s.nextSibling;if(w_(s))return GM(s)||s.appendData(z),s;{const m=KM(s);return s.nextSibling?(l=s.parentNode)===null||l===void 0||l.insertBefore(m,s.nextSibling):(d=s.parentNode)===null||d===void 0||d.appendChild(m),m}},gO=(s,l)=>s?O9(l):lx(l),y9=Ue(gO,!0),_9=Ue(gO,!1),l2=(s,l)=>un(s.container())?gO(l,s.container()):gO(l,s.getNode()),JM=(s,l)=>{const d=l.get();return d&&s.container()===d&&xn(d)},V3=(s,l)=>l.fold(d=>{Ua(s.get());const m=y9(d);return s.set(m),de.some(Dt(m,m.length-1))},d=>hu(d).map(m=>{if(JM(m,s)){const v=s.get();return Dt(v,1)}else{Ua(s.get());const v=l2(m,!0);return s.set(v),Dt(v,1)}}),d=>zf(d).map(m=>{if(JM(m,s)){const v=s.get();return Dt(v,v.length-1)}else{Ua(s.get());const v=l2(m,!1);return s.set(v),Dt(v,v.length-1)}}),d=>{Ua(s.get());const m=_9(d);return s.set(m),de.some(Dt(m,1))}),e5=(s,l)=>{for(let d=0;d{const d=wn(l,s);return d||s},w9=(s,l,d)=>{const m=iO(d),v=t5(l,m.container());return Am(s,v,m).fold(()=>Uc(v,m).bind(Ue(Am,s,v)).map(w=>ad.before(w)),de.none)},S9=(s,l)=>I1(s,l)===null,n5=(s,l,d)=>Am(s,l,d).filter(Ue(S9,l)),C9=(s,l,d)=>{const m=kS(d);return n5(s,l,m).bind(v=>Ru(v,m).isNone()?de.some(ad.start(v)):de.none())},k9=(s,l,d)=>{const m=iO(d);return n5(s,l,m).bind(v=>Uc(v,m).isNone()?de.some(ad.end(v)):de.none())},x9=(s,l,d)=>{const m=kS(d),v=t5(l,m.container());return Am(s,v,m).fold(()=>Ru(v,m).bind(Ue(Am,s,v)).map(w=>ad.after(w)),de.none)},E9=s=>!tD(c2(s)),Sc=(s,l,d)=>e5([w9,C9,k9,x9],[s,l,d]).filter(E9),c2=s=>s.fold(mn,mn,mn,mn),z3=s=>s.fold(je("before"),je("start"),je("end"),je("after")),u2=s=>s.fold(ad.before,ad.before,ad.after,ad.after),W3=s=>s.fold(ad.start,ad.start,ad.end,ad.end),o5=(s,l)=>z3(s)===z3(l)&&c2(s)===c2(l),T9=(s,l,d,m,v,w)=>yr(Am(l,d,m),Am(l,d,v),($,B)=>$!==B&&$m(d,$,B)?ad.after(s?$:B):w).getOr(w),s5=(s,l)=>s.fold(mt,d=>!o5(d,l)),A9=(s,l,d,m,v)=>{const w=Hs(s,v);return zl(s,d,w).map(Ue(Hs,s)).fold(()=>m.map(u2),H=>Sc(l,d,H).map(Ue(T9,s,l,d,w,H)).filter(Ue(s5,m))).filter(E9)},$9=(s,l)=>s?l.fold(q(de.some,ad.start),de.none,q(de.some,ad.after),de.none):l.fold(de.none,q(de.some,ad.before),de.none,q(de.some,ad.end)),P9=(s,l,d,m)=>{const v=Hs(s,m),w=Sc(l,d,v);return Sc(l,d,v).bind(Ue($9,s)).orThunk(()=>A9(s,l,d,w,m))},S_=s=>Oe(s.selection.getSel().modify),Z3=(s,l,d)=>{const m=s?1:-1;return l.setRng(Dt(d.container(),d.offset()+m).toRange()),l.getSel().modify("move",s?"forward":"backward","word"),!0},r5=(s,l)=>{const d=l.selection.getRng(),m=s?Dt.fromRangeEnd(d):Dt.fromRangeStart(d);return S_(l)?s&&tr(m)?Z3(!0,l.selection,m):!s&&Vr(m)?Z3(!1,l.selection,m):!1:!1};var Mp;(function(s){s[s.Br=0]="Br",s[s.Block=1]="Block",s[s.Wrap=2]="Wrap",s[s.Eol=3]="Eol"})(Mp||(Mp={}));const C_=(s,l)=>s===ei.Backwards?Ts(l):l,D9=(s,l,d)=>s===ei.Forwards?l.next(d):l.prev(d),R9=(s,l,d,m)=>Js(m.getNode(l===ei.Forwards))?Mp.Br:_n(d,m)===!1?Mp.Block:Mp.Wrap,i5=(s,l,d,m)=>{const v=Ih(d);let w=m;const $=[];for(;w;){const B=D9(l,v,w);if(!B)break;if(Js(B.getNode(!1)))return l===ei.Forwards?{positions:C_(l,$).concat([B]),breakType:Mp.Br,breakAt:de.some(B)}:{positions:C_(l,$),breakType:Mp.Br,breakAt:de.some(B)};if(!B.isVisible()){w=B;continue}if(s(w,B)){const H=R9(d,l,w,B);return{positions:C_(l,$),breakType:H,breakAt:de.some(B)}}$.push(B),w=B}return{positions:C_(l,$),breakType:Mp.Eol,breakAt:de.none()}},M9=(s,l,d,m)=>l(d,m).breakAt.map(v=>{const w=l(d,v).positions;return s===ei.Backwards?w.concat(v):[v].concat(w)}).getOr([]),a5=(s,l)=>Dn(s,(d,m)=>d.fold(()=>de.some(m),v=>yr(Oo(v.getClientRects()),Oo(m.getClientRects()),(w,$)=>{const B=Math.abs(l-w.left);return Math.abs(l-$.left)<=B?m:v}).or(d)),de.none()),U3=(s,l)=>Oo(l.getClientRects()).bind(d=>a5(s,d.left)),Zd=Ue(i5,Dt.isAbove,-1),d2=Ue(i5,Dt.isBelow,1),l5=Ue(M9,-1,Zd),_0=Ue(M9,1,d2),q3=(s,l)=>Zd(s,l).breakAt.isNone(),c5=(s,l)=>d2(s,l).breakAt.isNone(),cx=s=>hu(s).map(l=>[l].concat(d2(s,l).positions)).getOr([]),N9=s=>zf(s).map(l=>Zd(s,l).positions.concat(l)).getOr([]),I9=(s,l)=>U3(l5(s,l),l),B9=(s,l)=>U3(_0(s,l),l),L9=ys,u5=(s,l)=>Math.abs(s.left-l),d5=(s,l)=>Math.abs(s.right-l),J1=s=>Do(s,"node"),f5=(s,l)=>Ge(s,(d,m)=>{const v=Math.min(u5(d,l),d5(d,l)),w=Math.min(u5(m,l),d5(m,l));return w===v&&J1(m)&&L9(m.node)||w{const l=d=>pt(d,m=>{const v=dp(m);return v.node=s,v});if(Zn(s))return l(s.getClientRects());if(un(s)){const d=s.ownerDocument.createRange();return d.setStart(s,0),d.setEnd(s,s.data.length),l(d.getClientRects())}else return[]},h5=s=>Ns(s,F9);var f2;(function(s){s[s.Up=-1]="Up",s[s.Down=1]="Down"})(f2||(f2={}));const H9=(s,l,d,m)=>{let v=m;for(;v=bt(v,s,Fc,l);)if(d(v))return},ux=(s,l,d,m,v,w)=>{let $=0;const B=[],H=ue=>{let ge=h5([ue]);s===-1&&(ge=ge.reverse());for(let Me=0;Me0&&l(He,$t(B))&&$++,He.line=$,v(He))return!0;B.push(He)}}return!1},G=$t(w.getClientRects());if(!G)return B;const le=w.getNode();return le&&(H(le),H9(s,m,H,le)),B},X3=(s,l)=>l.line>s,j3=(s,l)=>l.line===s,m5=Ue(ux,f2.Up,pm,gm),p5=Ue(ux,f2.Down,gm,pm),Y3=s=>$t(s.getClientRects()),Q9=(s,l,d,m)=>{const v=Ih(l);let w,$,B,H;const G=[];let le=0;s===1?(w=v.next,$=gm,B=pm,H=Dt.after(m)):(w=v.prev,$=pm,B=gm,H=Dt.before(m));const ue=Y3(H);do{if(!H.isVisible())continue;const ge=Y3(H);if(B(ge,ue))continue;G.length>0&&$(ge,$t(G))&&le++;const Me=dp(ge);if(Me.position=H,Me.line=le,d(Me))return G;G.push(Me)}while(H=w(H));return G},k_=s=>l=>X3(s,l),x_=s=>l=>j3(s,l),e1=(s,l)=>{s.selection.setRng(l),eO(s,s.selection.getRng())},dx=(s,l,d)=>de.some(sx(s,l,d)),G3=(s,l,d,m,v,w)=>{const $=l===ei.Forwards,B=Ih(s.getBody()),H=Ue(rl,$?B.next:B.prev),G=$?m:v;if(!d.collapsed){const He=_g(d);if(w(He))return Jg(l,s,He,l===ei.Backwards,!1);if(F3(s)){const $e=d.cloneRange();return $e.collapse(l===ei.Backwards),de.from($e)}}const le=El(l,s.getBody(),d);if(G(le))return __(s,le.getNode(!$));let ue=H(le);const ge=uh(d);if(ue)ue=Hs($,ue);else return ge?de.some(d):de.none();if(G(ue))return Jg(l,s,ue.getNode(!$),$,!1);const Me=H(ue);return Me&&G(Me)&&od(ue,Me)?Jg(l,s,Me.getNode(!$),$,!1):ge?dx(s,ue.toRange(),!1):de.none()},K3=(s,l,d,m,v,w)=>{const $=El(l,s.getBody(),d),B=$t($.getClientRects()),H=l===f2.Down,G=s.getBody();if(!B)return de.none();if(F3(s)){const Ve=H?Dt.fromRangeEnd(d):Dt.fromRangeStart(d);return(H?B9:I9)(G,Ve).orThunk(()=>de.from(Ve)).map(ft=>ft.toRange())}const ue=(H?p5:m5)(G,k_(1),$),ge=xt(ue,x_(1)),Me=B.left,He=f5(ge,Me);if(He&&w(He.node)){const Ve=Math.abs(Me-He.left),rt=Math.abs(Me-He.right);return Jg(l,s,He.node,Vesx(s,Ve.toRange(),!1)):de.none()},E_=(s,l)=>{const d=s.selection.getRng(),m=l?Dt.fromRangeEnd(d):Dt.fromRangeStart(d),v=Lt(m.container(),s.getBody());if(l){const w=d2(v,m);return wo(w.positions)}else{const w=Zd(v,m);return Oo(w.positions)}},fx=(s,l,d)=>E_(s,l).filter(d).exists(m=>(s.selection.setRng(m.toRange()),!0)),w0=(s,l)=>{const d=s.dom.createRng();d.setStart(l.container(),l.offset()),d.setEnd(l.container(),l.offset()),s.selection.setRng(d)},g5=(s,l)=>{s?l.setAttribute("data-mce-selected","inline-boundary"):l.removeAttribute("data-mce-selected")},J3=(s,l,d)=>V3(l,d).map(m=>(w0(s,m),d)),V9=(s,l,d)=>{const m=Dt.fromRangeStart(s);if(s.collapsed)return m;{const v=Dt.fromRangeEnd(s);return d?Ru(l,v).getOr(v):Uc(l,m).getOr(m)}},z9=(s,l,d)=>{const m=s.getBody(),v=V9(s.selection.getRng(),m,d),w=Ue(rO,s);return P9(d,w,m,v).bind(B=>J3(s,l,B))},b5=(s,l,d)=>{const m=pt(Fa(qe.fromDom(l.getRoot()),'*[data-mce-selected="inline-boundary"]'),$=>$.dom),v=xt(m,s),w=xt(d,s);Ne(Ki(v,w),Ue(g5,!1)),Ne(Ki(w,v),Ue(g5,!0))},W9=(s,l)=>{const d=l.get();if(s.selection.isCollapsed()&&!s.composing&&d){const m=Dt.fromRangeStart(s.selection.getRng());Dt.isTextPosition(m)&&!e7(m)&&(w0(s,_y(d,m)),l.set(null))}},v5=(s,l,d,m)=>{if(l.selection.isCollapsed()){const v=xt(m,s);Ne(v,w=>{const $=Dt.fromRangeStart(l.selection.getRng());Sc(s,l.getBody(),$).bind(B=>J3(l,d,B))})}},Z9=(s,l,d)=>gp(s)?z9(s,l,d).isSome():!1,O5=(s,l,d)=>gp(l)?r5(s,l):!1,U9=s=>{const l=Ai(null),d=Ue(rO,s);return s.on("NodeChange",m=>{gp(s)&&(b5(d,s.dom,m.parents),W9(s,l),v5(d,s,l,m.parents))}),l},q9=Ue(O5,!0),X9=Ue(O5,!1),hx=(s,l,d)=>{if(gp(s)){const m=E_(s,l).getOrThunk(()=>{const v=s.selection.getRng();return l?Dt.fromRangeEnd(v):Dt.fromRangeStart(v)});return Sc(Ue(rO,s),s.getBody(),m).exists(v=>{const w=u2(v);return V3(d,w).exists($=>(w0(s,$),!0))})}else return!1},j9=(s,l)=>{const d=document.createRange();return d.setStart(s.container(),s.offset()),d.setEnd(l.container(),l.offset()),d},Y9=s=>yr(hu(s),zf(s),(l,d)=>{const m=Hs(!0,l),v=Hs(!1,d);return Uc(s,m).forall(w=>w.isEqual(v))}).getOr(!0),y5=(s,l)=>d=>V3(l,d).map(m=>()=>w0(s,m)),e$=(s,l,d,m)=>{const v=s.getBody(),w=Ue(rO,s);s.undoManager.ignore(()=>{s.selection.setRng(j9(d,m)),xS(s),Sc(w,v,Dt.fromRangeStart(s.selection.getRng())).map(W3).bind(y5(s,l)).each(rn)}),s.nodeChanged()},G9=(s,l)=>{const d=wn(l,s);return d||s},bO=(s,l,d,m)=>{const v=G9(s.getBody(),m.container()),w=Ue(rO,s),$=Sc(w,v,m);return $.bind(H=>d?H.fold(je(de.some(W3(H))),de.none,je(de.some(u2(H))),de.none):H.fold(de.none,je(de.some(u2(H))),de.none,je(de.some(W3(H))))).map(y5(s,l)).getOrThunk(()=>{const H=Op(d,v,m),G=H.bind(le=>Sc(w,v,le));return yr($,G,()=>Am(w,v,m).bind(le=>Y9(le)?de.some(()=>{U1(s,d,qe.fromDom(le))}):de.none())).getOrThunk(()=>G.bind(()=>H.map(le=>()=>{d?e$(s,l,m,le):e$(s,l,le,m)})))})},mx=(s,l,d)=>{if(s.selection.isCollapsed()&&gp(s)){const m=Dt.fromRangeStart(s.selection.getRng());return bO(s,l,d,m)}return de.none()},t$=s=>el(s)>1,n$=(s,l)=>{const d=qe.fromDom(s.getBody()),m=qe.fromDom(s.selection.getStart()),v=Vg(m,d);return as(v,l).fold(je(v),w=>v.slice(0,w))},o$=s=>el(s)===1,S0=s=>n$(s,l=>s.schema.isBlock(Os(l))||t$(l)),_5=s=>n$(s,l=>s.schema.isBlock(Os(l))),Gf=(s,l)=>{const d=Ue(Zg,s);return Ns(l,m=>d(m)?[m.dom]:[])},C0=s=>{const l=_5(s);return Gf(s,l)},s$=(s,l,d,m)=>{const v=Gf(l,m);if(v.length===0)U1(l,s,d);else{const w=VD(d.dom,v);l.selection.setRng(w.toRange())}},K9=(s,l)=>{const d=xt(S0(s),o$);return wo(d).bind(m=>{const v=Dt.fromRangeStart(s.selection.getRng());return ek(l,v,m.dom)&&!zv(m)?de.some(()=>s$(l,s,m,d)):de.none()})},w5=(s,l)=>{const d=l.parentElement;return Js(l)&&!ne(d)&&s.dom.isEmpty(d)},J9=s=>zv(qe.fromDom(s)),S5=(s,l)=>{const d=s.selection.getStart(),m=w5(s,d)||J9(d)?VD(d,l):Ok(s.selection.getRng(),l);s.selection.setRng(m.toRange())},eH=(s,l)=>{const d=Ki(l,C0(s));d.length>0&&S5(s,d)},C5=s=>un(s.startContainer),tH=s=>s.startOffset===0&&C5(s),k5=(s,l)=>{const d=l.startContainer.parentElement;return!ne(d)&&Zg(s,qe.fromDom(d))},nH=s=>{const l=s.startContainer.parentNode,d=s.endContainer.parentNode;return!ne(l)&&!ne(d)&&l.isEqualNode(d)},oH=s=>{const l=s.endContainer;return s.endOffset===(un(l)?l.length:l.childNodes.length)},T_=s=>nH(s)&&oH(s),r$=s=>!s.endContainer.isEqualNode(s.commonAncestorContainer),x5=s=>T_(s)||r$(s),E5=s=>{const l=s.selection.getRng();return tH(l)&&k5(s,l)&&x5(l)},i$=s=>{if(E5(s)){const l=C0(s);return de.some(()=>{xS(s),eH(s,l)})}else return de.none()},a$=(s,l)=>s.selection.isCollapsed()?K9(s,l):i$(s),sH=(s,l)=>o7(s,d=>Bd(d.dom),d=>l.isBlock(Os(d))),rH=s=>sH(qe.fromDom(s.selection.getStart()),s.schema),iH=s=>{const l=s.selection.getRng();return l.collapsed&&(C5(l)||s.dom.isEmpty(l.startContainer))&&!rH(s)},h2=s=>(iH(s)&&S5(s,[]),!0),l$=(s,l,d)=>Te(d)?de.some(()=>{s._selectionOverrides.hideFakeCaret(),U1(s,l,qe.fromDom(d))}):de.none(),aH=(s,l)=>{const d=l?_S:Yy,m=l?ei.Forwards:ei.Backwards,v=El(m,s.getBody(),s.selection.getRng());return d(v)?l$(s,l,v.getNode(!l)):de.from(Hs(l,v)).filter(w=>d(w)&&od(v,w)).bind(w=>l$(s,l,w.getNode(!l)))},T5=(s,l)=>{const d=s.selection.getNode();return Qr(d)?l$(s,l,d):de.none()},c$=(s,l)=>s.selection.isCollapsed()?aH(s,l):T5(s,l),lH=s=>Ma(s,l=>wl(l.dom)||ys(l.dom)).exists(l=>wl(l.dom)),Ud=s=>Gc(s??"").getOr(0),A5=(s,l)=>{const d=s||Ll(l)?"margin":"padding",m=ki(l,"direction")==="rtl"?"-right":"-left";return d+m},u$=(s,l,d,m,v,w)=>{const $=A5(d,qe.fromDom(w)),B=Ud(s.getStyle(w,$));if(l==="outdent"){const H=Math.max(0,B-m);s.setStyle(w,$,H?H+v:"")}else{const H=B+m+v;s.setStyle(w,$,H)}},$5=(s,l)=>Vs(l,d=>{const m=A5(Mb(s),d),v=Bi(d,m).map(Ud).getOr(0);return s.dom.getContentEditable(d.dom)!=="false"&&v>0}),px=s=>{const l=D5(s);return!s.mode.isReadOnly()&&(l.length>1||$5(s,l))},P5=s=>Gl(s)||iu(s),cH=s=>gr(s).exists(P5),D5=s=>xt(wu(s.selection.getSelectedBlocks()),l=>!P5(l)&&!cH(l)&&lH(l)),R5=(s,l)=>{var d,m;const{dom:v}=s,w=xl(s),$=(m=(d=/[a-z%]+$/i.exec(w))===null||d===void 0?void 0:d[0])!==null&&m!==void 0?m:"px",B=Ud(w),H=Mb(s);Ne(D5(s),G=>{u$(v,l,H,B,$,G.dom)})},uH=s=>R5(s,"indent"),d$=s=>R5(s,"outdent"),M5=s=>{if(s.selection.isCollapsed()&&px(s)){const l=s.dom,d=s.selection.getRng(),m=Dt.fromRangeStart(d),v=l.getParent(d.startContainer,l.isBlock);if(v!==null&&DT(qe.fromDom(v),m,s.schema))return de.some(()=>d$(s))}return de.none()},N5=(s,l,d)=>ws([M5,a2,L3,(m,v)=>mx(m,l,v),I3,NS,Q3,c$,ox,a$],m=>m(s,d)).filter(m=>s.selection.isEditable()),m2=(s,l)=>{N5(s,l,!1).fold(()=>{s.selection.isEditable()&&(xS(s),JC(s))},rn)},eb=(s,l)=>{N5(s,l,!0).fold(()=>{s.selection.isEditable()&&t7(s)},rn)},vO=(s,l)=>{s.addCommand("delete",()=>{m2(s,l)}),s.addCommand("forwardDelete",()=>{eb(s,l)})},p2=5,f$=400,gx=s=>s.touches===void 0||s.touches.length!==1?de.none():de.some(s.touches[0]),I5=(s,l)=>{const d=Math.abs(s.clientX-l.x),m=Math.abs(s.clientY-l.y);return d>p2||m>p2},dH=s=>{const l=fm(),d=Ai(!1),m=_b(v=>{s.dispatch("longpress",{...v,type:"longpress"}),d.set(!0)},f$);s.on("touchstart",v=>{gx(v).each(w=>{m.cancel();const $={x:w.clientX,y:w.clientY,target:v.target};m.throttle(v),d.set(!1),l.set($)})},!0),s.on("touchmove",v=>{m.cancel(),gx(v).each(w=>{l.on($=>{I5(w,$)&&(l.clear(),d.set(!1),s.dispatch("longpresscancel"))})})},!0),s.on("touchend touchcancel",v=>{m.cancel(),v.type!=="touchcancel"&&l.get().filter(w=>w.target.isEqualNode(v.target)).each(()=>{d.get()?v.preventDefault():s.dispatch("tap",{...v,type:"tap"})})},!0)},bx=(s,l)=>an(s,l.nodeName),B5=(s,l)=>un(l)?!0:Zn(l)?!bx(s.getBlockElements(),l)&&!Ld(l)&&!gs(s,l)&&!ib(l):!1,fH=(s,l,d)=>Ut($T(qe.fromDom(d),qe.fromDom(l)),m=>bx(s,m.dom)),hH=(s,l)=>{if(un(l)){if(l.data.length===0)return!0;if(/^\s+$/.test(l.data))return!l.nextSibling||bx(s,l.nextSibling)||ib(l.nextSibling)}return!1},L5=s=>s.dom.create(Vl(s),Om(s)),mH=s=>{const l=s.dom,d=s.selection,m=s.schema,v=m.getBlockElements(),w=d.getStart(),$=s.getBody();let B,H,G=!1;const le=Vl(s);if(!w||!Zn(w))return;const ue=$.nodeName.toLowerCase();if(!m.isValidChild(ue,le.toLowerCase())||fH(v,$,w))return;const ge=d.getRng(),{startContainer:Me,startOffset:He,endContainer:$e,endOffset:Ve}=ge,rt=c0(s);let ft=$.firstChild;for(;ft;)if(Zn(ft)&&yh(m,ft),B5(m,ft)){if(hH(v,ft)){H=ft,ft=ft.nextSibling,l.remove(H);continue}B||(B=L5(s),$.insertBefore(B,ft),G=!0),H=ft,ft=ft.nextSibling,B.appendChild(H)}else B=null,ft=ft.nextSibling;G&&rt&&(ge.setStart(Me,He),ge.setEnd($e,Ve),d.setRng(ge),s.nodeChanged())},F5=(s,l,d)=>{const m=qe.fromDom(L5(s)),v=Jl();di(m,v),d(l,m);const w=document.createRange();return w.setStartBefore(v.dom),w.setEndBefore(v.dom),w},pH=s=>{s.on("NodeChange",Ue(mH,s))},h$=s=>l=>(" "+l.attr("class")+" ").indexOf(s)!==-1,H5=(s,l,d)=>function(m){const v=arguments,w=v[v.length-2],$=w>0?l.charAt(w-1):"";if($==='"')return m;if($===">"){const B=l.lastIndexOf("<",w);if(B!==-1&&l.substring(B,w).indexOf('contenteditable="false"')!==-1)return m}return''+s.dom.encode(typeof v[1]=="string"?v[1]:v[0])+""},PU=(s,l,d)=>{let m=l.length,v=d.content;if(d.format!=="raw"){for(;m--;)v=v.replace(l[m],H5(s,v,D1(s)));d.content=v}},DU=(s,l)=>Vs(s,d=>{const m=l.match(d);return m!==null&&m[0].length===l.length}),RU=s=>{const l="contenteditable",d=" "+cn.trim(by(s))+" ",m=" "+cn.trim(D1(s))+" ",v=h$(d),w=h$(m),$=Lw(s);$.length>0&&s.on("BeforeSetContent",B=>{PU(s,$,B)}),s.parser.addAttributeFilter("class",B=>{let H=B.length;for(;H--;){const G=B[H];v(G)?G.attr(l,"true"):w(G)&&G.attr(l,"false")}}),s.serializer.addAttributeFilter(l,B=>{let H=B.length;for(;H--;){const G=B[H];if(!v(G)&&!w(G))continue;const le=G.attr("data-mce-content");$.length>0&&le?DU($,le)?(G.name="#text",G.type=3,G.raw=!0,G.value=le):G.remove():G.attr(l,null)}})},gH=s=>Na(qe.fromDom(s.getBody()),"*[data-mce-caret]").map(l=>l.dom).getOrNull(),bH=(s,l)=>{l.hasAttribute("data-mce-caret")&&(qu(l),s.selection.setRng(s.selection.getRng()),s.selection.scrollIntoView(l))},MU=(s,l)=>{const d=gH(s);if(d){if(l.type==="compositionstart"){l.preventDefault(),l.stopPropagation(),bH(s,d);return}Uo(d)&&(bH(s,d),s.undoManager.add())}},vH=s=>{s.on("keyup compositionstart",Ue(MU,s))},Q5=ys,NU=(s,l,d)=>G3(l,s,d,W1,Tp,Q5),OH=(s,l,d)=>K3(l,s,d,w=>W1(w)||B4(w),w=>Tp(w)||hs(w),Q5),yf=s=>{const l=s.dom.create(Vl(s));return l.innerHTML='
    ',l},m$=(s,l,d)=>{const m=Ih(s.getBody()),v=Ue(rl,l===1?m.next:m.prev);if(d.collapsed){const w=s.dom.getParent(d.startContainer,"PRE");if(!w)return;if(!v(Dt.fromRangeStart(d))){const B=qe.fromDom(yf(s));l===1?Bl(qe.fromDom(w),B):xi(qe.fromDom(w),B),s.selection.select(B.dom,!0),s.selection.collapse()}}},g2=(s,l)=>{const d=l?ei.Forwards:ei.Backwards,m=s.selection.getRng();return NU(d,s,m).orThunk(()=>(m$(s,d,m),de.none()))},yH=(s,l)=>{const d=l?1:-1,m=s.selection.getRng();return OH(d,s,m).orThunk(()=>(m$(s,d,m),de.none()))},V5=(s,l)=>{const d=l?s.getEnd(!0):s.getStart(!0);return tD(d)?!l:l},p$=(s,l)=>g2(s,V5(s.selection,l)).exists(d=>(e1(s,d),!0)),vx=(s,l)=>yH(s,l).exists(d=>(e1(s,d),!0)),z5=(s,l)=>fx(s,l,l?Tp:W1),Ox=(s,l)=>ix(s,!l).map(d=>{const m=d.toRange(),v=s.selection.getRng();return l?m.setStart(v.startContainer,v.startOffset):m.setEnd(v.endContainer,v.endOffset),m}).exists(d=>(e1(s,d),!0)),W5=s=>gt(["figcaption"],Os(s)),_H=(s,l,d)=>{const m=Ue(dt,l);return Ma(qe.fromDom(s.container()),v=>d.isBlock(Os(v)),m).filter(W5)},wH=(s,l,d)=>l?c5(s.dom,d):q3(s.dom,d),SH=(s,l)=>{const d=qe.fromDom(s.getBody()),m=Dt.fromRangeStart(s.selection.getRng());return _H(m,d,s.schema).exists(()=>{if(wH(d,l,m)){const w=F5(s,d,l?di:_u);return s.selection.setRng(w),!0}else return!1})},yx=(s,l)=>s.selection.isCollapsed()?SH(s,l):!1,CH=(s,l,d)=>{const m=s.selection.getRng(),v=Dt.fromRangeStart(m);return s.getBody().firstChild===l&&q3(d,v)?(s.execCommand("InsertNewBlockBefore"),!0):!1},kH=(s,l)=>{const d=s.selection.getRng(),m=Dt.fromRangeStart(d);return s.getBody().lastChild===l&&c5(l,m)?(s.execCommand("InsertNewBlockAfter"),!0):!1},IU=(s,l)=>l?de.from(s.dom.getParent(s.selection.getNode(),"details")).map(d=>kH(s,d)).getOr(!1):de.from(s.dom.getParent(s.selection.getNode(),"summary")).bind(d=>de.from(s.dom.getParent(d,"details")).map(m=>CH(s,m,d))).getOr(!1),Z5=(s,l)=>IU(s,l),g$={shiftKey:!1,altKey:!1,ctrlKey:!1,metaKey:!1,keyCode:0},BU=s=>pt(s,l=>({...g$,...l})),xH=s=>pt(s,l=>({...g$,...l})),U5=(s,l)=>l.keyCode===s.keyCode&&l.shiftKey===s.shiftKey&&l.altKey===s.altKey&&l.ctrlKey===s.ctrlKey&&l.metaKey===s.metaKey,EH=(s,l)=>Ns(BU(s),d=>U5(d,l)?[d]:[]),b$=(s,l)=>Ns(xH(s),d=>U5(d,l)?[d]:[]),No=(s,...l)=>()=>s.apply(null,l),A_=(s,l)=>Gn(EH(s,l),d=>d.action()),v$=(s,l)=>ws(b$(s,l),d=>d.action()),q5=(s,l)=>{const d=l?ei.Forwards:ei.Backwards,m=s.selection.getRng();return G3(s,d,m,_S,Yy,Qr).exists(v=>(e1(s,v),!0))},X5=(s,l)=>{const d=l?1:-1,m=s.selection.getRng();return K3(s,d,m,_S,Yy,Qr).exists(v=>(e1(s,v),!0))},_x=(s,l)=>fx(s,l,l?Yy:_S),j5=hf.generate([{none:["current"]},{first:["current"]},{middle:["current","target"]},{last:["current"]}]),b2={...j5,none:s=>j5.none(s)},TH=(s,l)=>Uh(s,l,mt),Uh=(s,l,d)=>Ns(Ci(s),m=>mc(m,l)?d(m)?[m]:[]:Uh(m,l,d)),Y5=(s,l,d=Fe)=>{if(d(l))return de.none();if(gt(s,Os(l)))return de.some(l);const m=v=>mc(v,"table")||d(v);return Dc(l,s.join(","),m)},G5=(s,l)=>Y5(["td","th"],s,l),FU=s=>TH(s,"th,td"),AH=(s,l)=>Rc(s,"table",l),K5=(s,l,d,m,v=mt)=>{const w=m===1;if(!w&&d<=0)return b2.first(s[0]);if(w&&d>=s.length-1)return b2.last(s[s.length-1]);{const $=d+m,B=s[$];return v(B)?b2.middle(l,B):K5(s,l,$,m,v)}},$H=(s,l)=>AH(s,l).bind(d=>{const m=FU(d);return as(m,w=>dt(s,w)).map(w=>({index:w,all:m}))}),PH=(s,l,d)=>$H(s,d).fold(()=>b2.none(s),v=>K5(v.all,s,v.index,1,l)),wx=(s,l,d)=>$H(s,d).fold(()=>b2.none(),v=>K5(v.all,s,v.index,-1,l)),DH=(s,l)=>({left:s.left-l,top:s.top-l,right:s.right+l*2,bottom:s.bottom+l*2,width:s.width+l,height:s.height+l}),O$=(s,l)=>Ns(l,d=>{const m=DH(dp(d.getBoundingClientRect()),-1);return[{x:m.left,y:s(m),cell:d},{x:m.right,y:s(m),cell:d}]}),J5=(s,l,d)=>Dn(s,(m,v)=>m.fold(()=>de.some(v),w=>{const $=Math.sqrt(Math.abs(w.x-l)+Math.abs(w.y-d)),B=Math.sqrt(Math.abs(v.x-l)+Math.abs(v.y-d));return de.some(B<$?v:w)}),de.none()),y$=(s,l,d,m,v)=>{const w=Fa(qe.fromDom(d),"td,th,caption").map(B=>B.dom),$=xt(O$(s,w),B=>l(B,v));return J5($,m,v).map(B=>B.cell)},eN=s=>s.bottom,RH=s=>s.top,MH=(s,l)=>s.ys.y>l,IH=Ue(y$,eN,MH),Sx=Ue(y$,RH,NH),BH=(s,l)=>Oo(l.getClientRects()).bind(d=>IH(s,d.left,d.top)).bind(d=>U3(N9(d),l)),LH=(s,l)=>wo(l.getClientRects()).bind(d=>Sx(s,d.left,d.top)).bind(d=>U3(cx(d),l)),FH=(s,l,d)=>d.breakAt.exists(m=>s(l,m).breakAt.isSome()),_$=s=>s.breakType===Mp.Wrap&&s.positions.length===0,HH=s=>s.breakType===Mp.Br&&s.positions.length===1,tN=(s,l,d)=>{const m=s(l,d);return _$(m)||!Js(d.getNode())&&HH(m)?!FH(s,l,m):m.breakAt.isNone()},nN=Ue(tN,Zd),QH=Ue(tN,d2),VH=(s,l,d)=>{const m=Dt.fromRangeStart(l);return Yb(!s,d).exists(v=>v.isEqual(m))},zH=(s,l,d,m)=>{const v=s.selection.getRng(),w=l?1:-1;return M1()&&VH(l,v,d)?(Jg(w,s,d,!l,!1).each($=>{e1(s,$)}),!0):!1},WH=(s,l,d)=>BH(l,d).orThunk(()=>Oo(d.getClientRects()).bind(m=>a5(l5(s,Dt.before(l)),m.left))).getOr(Dt.before(l)),ZH=(s,l,d)=>LH(l,d).orThunk(()=>Oo(d.getClientRects()).bind(m=>a5(_0(s,Dt.after(l)),m.left))).getOr(Dt.after(l)),oN=(s,l)=>{const d=l.getNode(s);return wd(d)?de.some(d):de.none()},w$=(s,l,d)=>{l.undoManager.transact(()=>{const m=s?Bl:xi,v=F5(l,qe.fromDom(d),m);e1(l,v)})},sN=(s,l,d)=>{const m=oN(!!l,d),v=l===!1;m.fold(()=>e1(s,d.toRange()),w=>Yb(v,s.getBody()).filter($=>$.isEqual(d)).fold(()=>e1(s,d.toRange()),$=>w$(l,s,w)))},rN=(s,l,d,m)=>{const v=s.selection.getRng(),w=Dt.fromRangeStart(v),$=s.getBody();if(!l&&nN(m,w)){const B=WH($,d,w);return sN(s,l,B),!0}else if(l&&QH(m,w)){const B=ZH($,d,w);return sN(s,l,B),!0}else return!1},iN=(s,l,d)=>de.from(s.dom.getParent(s.selection.getNode(),"td,th")).bind(m=>de.from(s.dom.getParent(m,"table")).map(v=>d(s,l,v,m))).getOr(!1),aN=(s,l)=>iN(s,l,zH),S$=(s,l)=>iN(s,l,rN),UH=s=>{const l=xp.exact(s,0,s,0);return bT(l)},lN=(s,l,d)=>d.fold(de.none,de.none,(m,v)=>c6(v).map(w=>UH(w)),m=>(s.execCommand("mceTableInsertRowAfter"),cN(s,l,m))),cN=(s,l,d)=>lN(s,l,PH(d,Zo)),Al=(s,l,d)=>lN(s,l,wx(d,Zo)),uN=(s,l)=>{const d=["table","li","dl"],m=qe.fromDom(s.getBody()),v=B=>{const H=Os(B);return dt(B,m)||gt(d,H)},w=s.selection.getRng(),$=qe.fromDom(l?w.endContainer:w.startContainer);return G5($,v).map(B=>(AH(B,v).each(le=>{s.model.table.clearSelectedCells(le.dom)}),s.selection.collapse(!l),(l?cN:Al)(s,v,B).each(le=>{s.selection.setRng(le)}),!0)).getOr(!1)},qH=(s,l,d)=>{const m=Mn.os.isMacOS()||Mn.os.isiOS();A_([{keyCode:zn.RIGHT,action:No(p$,s,!0)},{keyCode:zn.LEFT,action:No(p$,s,!1)},{keyCode:zn.UP,action:No(vx,s,!1)},{keyCode:zn.DOWN,action:No(vx,s,!0)},...m?[{keyCode:zn.UP,action:No(Ox,s,!1),metaKey:!0,shiftKey:!0},{keyCode:zn.DOWN,action:No(Ox,s,!0),metaKey:!0,shiftKey:!0}]:[],{keyCode:zn.RIGHT,action:No(aN,s,!0)},{keyCode:zn.LEFT,action:No(aN,s,!1)},{keyCode:zn.UP,action:No(S$,s,!1)},{keyCode:zn.DOWN,action:No(S$,s,!0)},{keyCode:zn.UP,action:No(S$,s,!1)},{keyCode:zn.UP,action:No(Z5,s,!1)},{keyCode:zn.DOWN,action:No(Z5,s,!0)},{keyCode:zn.RIGHT,action:No(q5,s,!0)},{keyCode:zn.LEFT,action:No(q5,s,!1)},{keyCode:zn.UP,action:No(X5,s,!1)},{keyCode:zn.DOWN,action:No(X5,s,!0)},{keyCode:zn.RIGHT,action:No(Z9,s,l,!0)},{keyCode:zn.LEFT,action:No(Z9,s,l,!1)},{keyCode:zn.RIGHT,ctrlKey:!m,altKey:m,action:No(q9,s,l)},{keyCode:zn.LEFT,ctrlKey:!m,altKey:m,action:No(X9,s,l)},{keyCode:zn.UP,action:No(yx,s,!1)},{keyCode:zn.DOWN,action:No(yx,s,!0)}],d).each(v=>{d.preventDefault()})},XH=(s,l)=>{s.on("keydown",d=>{d.isDefaultPrevented()||qH(s,l,d)})},Lm=(s,l)=>({container:s,offset:l}),$_=Jr.DOM,v2=s=>l=>s===l?-1:0,k0=s=>l=>s.isBlock(l)||gt(["BR","IMG","HR","INPUT"],l.nodeName)||s.getContentEditable(l)==="false",O2=(s,l,d)=>{if(un(s)&&l>=0)return de.some(Lm(s,l));{const m=mm($_);return de.from(m.backwards(s,l,v2(s),d)).map(v=>Lm(v.container,v.container.data.length))}},dN=(s,l,d)=>{if(un(s)&&l>=s.length)return de.some(Lm(s,l));{const m=mm($_);return de.from(m.forwards(s,l,v2(s),d)).map(v=>Lm(v.container,0))}},y2=(s,l,d)=>{if(!un(s))return de.none();const m=s.data;if(l>=0&&l<=m.length)return de.some(Lm(s,l));{const v=mm($_);return de.from(v.backwards(s,l,v2(s),d)).bind(w=>{const $=w.container.data;return y2(w.container,l+$.length,d)})}},Cx=(s,l,d)=>{if(!un(s))return de.none();const m=s.data;if(l<=m.length)return de.some(Lm(s,l));{const v=mm($_);return de.from(v.forwards(s,l,v2(s),d)).bind(w=>Cx(w.container,l-m.length,d))}},_2=(s,l,d,m,v)=>{const w=mm(s,k0(s));return de.from(w.backwards(l,d,m,v))},fN=s=>s.collapsed&&un(s.startContainer),w2=s=>ve(s.toString().replace(/\u00A0/g," ")),S2=s=>s!==""&&`  \f -\r \v`.indexOf(s)!==-1,OO=(s,l)=>s.substring(l.length),C2=(s,l,d)=>{let m;const v=d.charAt(0);for(m=l-1;m>=0;m--){const w=s.charAt(m);if(S2(w))return de.none();if(v===w&&As(s,d,m,l))break}return de.some(m)},Fm=(s,l,d,m=0)=>{if(!fN(l))return de.none();const v={text:"",offset:0},w=(B,H,G)=>(v.text=G+v.text,v.offset+=H,C2(v.text,v.offset,d).getOr(H)),$=s.getParent(l.startContainer,s.isBlock)||s.getRoot();return _2(s,l.startContainer,l.startOffset,w,$).bind(B=>{const H=l.cloneRange();if(H.setStart(B.container,B.offset),H.setEnd(l.endContainer,l.endOffset),H.collapsed)return de.none();const G=w2(H);return G.lastIndexOf(d)!==0||OO(G,d).lengthh6(qe.fromDom(l.startContainer)).fold(()=>Fm(s,l,d,m),v=>{const w=s.createRng();w.selectNode(v.dom);const $=w2(w);return de.some({range:w,text:OO($,d),trigger:d})}),hN=s=>s.nodeType===th,mN=s=>s.nodeType===dc,pN=s=>{if(hN(s))return Lm(s,s.data.length);{const l=s.childNodes;return l.length>0?pN(l[l.length-1]):Lm(s,l.length)}},C$=(s,l)=>{const d=s.childNodes;return d.length>0&&l0&&mN(s)&&d.length===l?pN(d[d.length-1]):Lm(s,l)},jH=(s,l)=>{var d;const m=(d=s.getParent(l.container,s.isBlock))!==null&&d!==void 0?d:s.getRoot();return _2(s,l.container,l.offset,(v,w)=>w===0?-1:w,m).filter(v=>{const w=v.container.data.charAt(v.offset-1);return!S2(w)}).isSome()},YH=s=>l=>{const d=C$(l.startContainer,l.startOffset);return!jH(s,d)},k2=(s,l,d)=>ws(d.triggers,m=>P_(s,l,m)),GH=(s,l)=>{const d=l(),m=s.selection.getRng();return k2(s.dom,m,d).bind(v=>gN(s,l,v))},gN=(s,l,d,m={})=>{var v;const w=l(),B=(v=s.selection.getRng().startContainer.nodeValue)!==null&&v!==void 0?v:"",H=xt(w.lookupByTrigger(d.trigger),le=>d.text.length>=le.minChars&&le.matches.getOrThunk(()=>YH(s.dom))(d.range,B,d.text));if(H.length===0)return de.none();const G=Promise.all(pt(H,le=>le.fetch(d.text,le.maxResults,m).then(ge=>({matchText:d.text,items:ge,columns:le.columns,onAction:le.onAction,highlightOn:le.highlightOn}))));return de.some({lookupData:G,context:d})};var Np;(function(s){s[s.Error=0]="Error",s[s.Value=1]="Value"})(Np||(Np={}));const k$=(s,l,d)=>s.stype===Np.Error?l(s.serror):d(s.svalue),KH=s=>{const l=[],d=[];return Ne(s,m=>{k$(m,v=>d.push(v),v=>l.push(v))}),{values:l,errors:d}},JH=(s,l)=>s.stype===Np.Error?{stype:Np.Error,serror:l(s.serror)}:s,eQ=(s,l)=>s.stype===Np.Value?{stype:Np.Value,svalue:l(s.svalue)}:s,tQ=(s,l)=>s.stype===Np.Value?l(s.svalue):s,nQ=(s,l)=>s.stype===Np.Error?l(s.serror):s,bN=s=>({stype:Np.Value,svalue:s}),vN=s=>({stype:Np.Error,serror:s}),jc={fromResult:s=>s.fold(vN,bN),toResult:s=>k$(s,zc.error,zc.value),svalue:bN,partition:KH,serror:vN,bind:tQ,bindError:nQ,map:eQ,mapError:JH,fold:k$},kx=s=>ae(s)&&ts(s).length>100?" removed due to size":JSON.stringify(s,null,2),ON=s=>{const l=s.length>10?s.slice(0,10).concat([{path:[],getErrorInfo:je("... (only showing first ten failures)")}]):s;return pt(l,d=>"Failed path: ("+d.path.join(" > ")+`) -`+d.getErrorInfo())},x2=(s,l)=>jc.serror([{path:s,getErrorInfo:l}]),oQ=(s,l,d)=>x2(s,()=>'Could not find valid *required* value for "'+l+'" in '+kx(d)),sQ=(s,l)=>x2(s,()=>'Choice schema did not contain choice key: "'+l+'"'),rQ=(s,l,d)=>x2(s,()=>'The chosen schema: "'+d+'" did not exist in branches: '+kx(l)),iQ=(s,l)=>x2(s,je(l)),yN=(s,l,d,m)=>ro(d,m).fold(()=>rQ(s,d,m),w=>w.extract(s.concat(["branch: "+m]),l)),aQ=(s,l)=>({extract:(v,w)=>ro(w,s).fold(()=>sQ(v,s),B=>yN(v,w,l,B)),toString:()=>"chooseOn("+s+"). Possible values: "+ts(l)}),_N=(s,l)=>l,lQ=(s,l)=>fe(s)&&fe(l)?E2(s,l):l,x$=s=>(...l)=>{if(l.length===0)throw new Error("Can't merge zero objects");const d={};for(let m=0;m({tag:"required",process:{}}),uQ=s=>({tag:"defaultedThunk",process:s}),E$=s=>uQ(je(s)),dQ=()=>({tag:"option",process:{}}),fQ=(s,l)=>s.length>0?jc.svalue(E2(l,cQ.apply(void 0,s))):jc.svalue(l),T$=s=>q(jc.serror,vr)(s),SN={consolidateObj:(s,l)=>{const d=jc.partition(s);return d.errors.length>0?T$(d.errors):fQ(d.values,l)},consolidateArr:s=>{const l=jc.partition(s);return l.errors.length>0?T$(l.errors):jc.svalue(l.values)}},hQ=(s,l,d,m)=>({tag:"field",key:s,newKey:l,presence:d,prop:m}),mQ=(s,l)=>({tag:"custom",newKey:s,instantiator:l}),CN=(s,l,d)=>{switch(s.tag){case"field":return l(s.key,s.newKey,s.presence,s.prop);case"custom":return d(s.newKey,s.instantiator)}},xx=s=>{const l=(m,v)=>jc.bindError(s(v),w=>iQ(m,w)),d=je("val");return{extract:l,toString:d}},kN=xx(jc.svalue),pQ=(s,l,d,m)=>ro(l,d).fold(()=>oQ(s,d,l),m),xN=(s,l,d,m)=>{const v=ro(s,l).getOrThunk(()=>d(s));return m(v)},gQ=(s,l,d)=>d(ro(s,l)),bQ=(s,l,d,m)=>{const v=ro(s,l).map(w=>w===!0?d(s):w);return m(v)},vQ=(s,l,d,m,v)=>{const w=B=>v.extract(l.concat([m]),B),$=B=>B.fold(()=>jc.svalue(de.none()),H=>{const G=v.extract(l.concat([m]),H);return jc.map(G,de.some)});switch(s.tag){case"required":return pQ(l,d,m,w);case"defaultedThunk":return xN(d,m,s.process,w);case"option":return gQ(d,m,$);case"defaultedOptionThunk":return bQ(d,m,s.process,$);case"mergeWithThunk":return xN(d,m,je({}),B=>{const H=E2(s.process(d),B);return w(H)})}},OQ=(s,l,d)=>{const m={},v=[];for(const w of d)CN(w,($,B,H,G)=>{const le=vQ(H,s,l,$,G);jc.fold(le,ue=>{v.push(...ue)},ue=>{m[B]=ue})},($,B)=>{m[$]=B(l)});return v.length>0?jc.serror(v):jc.svalue(m)},A$=s=>({extract:(m,v)=>OQ(m,v,s),toString:()=>`obj{ -`+pt(s,v=>CN(v,(w,$,B,H)=>w+" -> "+H.toString(),(w,$)=>"state("+w+")")).join(` -`)+"}"}),EN=s=>({extract:(m,v)=>{const w=pt(v,($,B)=>s.extract(m.concat(["["+B+"]"]),$));return SN.consolidateArr(w)},toString:()=>"array("+s.toString()+")"}),WU=s=>xx(l=>s(l).fold(jc.serror,jc.svalue)),yQ=(s,l,d)=>{const m=l.extract([s],d);return jc.mapError(m,v=>({input:d,errors:v}))},Ex=(s,l,d)=>jc.toResult(yQ(s,l,d)),TN=s=>`Errors: -`+ON(s.errors).join(` -`)+` - -Input object: `+kx(s.input),$$=(s,l)=>aQ(s,ns(l,A$)),_Q=je(kN),T2=(s,l)=>xx(d=>{const m=typeof d;return s(d)?jc.svalue(d):jc.serror(`Expected type: ${l} but got: ${m}`)}),AN=T2(yt,"number"),Tx=T2(j,"string"),wQ=T2(Se,"boolean"),P$=T2(Oe,"function"),D_=hQ,$N=mQ,D$=s=>WU(l=>gt(s,l)?zc.value(l):zc.error(`Unsupported value: "${l}", choose one of "${s.join(", ")}".`)),PN=(s,l)=>D_(s,s,wN(),l),DN=s=>PN(s,Tx),RN=s=>PN(s,P$),MN=(s,l)=>D_(s,s,wN(),EN(l)),R$=(s,l)=>D_(s,s,dQ(),l),Ax=s=>R$(s,Tx),SQ=s=>R$(s,P$),CQ=(s,l)=>D_(s,s,E$(l),_Q()),R_=(s,l,d)=>D_(s,s,E$(l),d),$l=(s,l)=>R_(s,l,AN),t1=(s,l)=>R_(s,l,Tx),NN=(s,l,d)=>R_(s,l,D$(d)),IN=(s,l)=>R_(s,l,wQ),M$=(s,l)=>R_(s,l,P$),kQ=(s,l,d)=>R_(s,l,EN(d)),xQ=DN("type"),EQ=RN("fetch"),$x=RN("onAction"),M_=M$("onSetup",()=>St),ZU=Ax("text"),TQ=Ax("icon"),AQ=Ax("tooltip"),Ip=Ax("label"),$Q=IN("active",!1),PQ=IN("enabled",!0),N$=IN("primary",!1),DQ=s=>CQ("columns",s),yO=s=>t1("type",s),BN=A$([xQ,DN("trigger"),$l("minChars",1),DQ(1),$l("maxResults",10),SQ("matches"),EQ,$x,kQ("highlightOn",[],Tx)]),RQ=s=>Ex("Autocompleter",BN,{trigger:s.ch,...s}),I$=[PQ,AQ,TQ,ZU,M_],LN=[$Q].concat(I$),FN=[M$("predicate",Fe),NN("scope","node",["node","editor"]),NN("position","selection",["node","selection","line"])],HN=I$.concat([yO("contextformbutton"),N$,$x,$N("original",mn)]),B$=LN.concat([yO("contextformbutton"),N$,$x,$N("original",mn)]),L$=I$.concat([yO("contextformbutton")]),F$=LN.concat([yO("contextformtogglebutton")]),MQ=$$("type",{contextformbutton:HN,contextformtogglebutton:B$});A$([yO("contextform"),M$("initValue",je("")),Ip,MN("commands",MQ),R$("launch",$$("type",{contextformbutton:L$,contextformtogglebutton:F$}))].concat(FN));const NQ=s=>{const l=s.ui.registry.getAll().popups,d=ns(l,$=>RQ($).fold(B=>{throw new Error(TN(B))},mn)),m=Wo(Rn(d,$=>$.trigger)),v=Xn(d);return{dataset:d,triggers:m,lookupByTrigger:$=>xt(v,B=>B.trigger===$)}},IQ=(s,l)=>{const d=_b(l.load,50);s.on("keypress compositionend",m=>{m.which!==27&&d.throttle()}),s.on("keydown",m=>{const v=m.which;v===8?d.throttle():v===27&&l.cancelIfNecessary()}),s.on("remove",d.cancel)},BQ=s=>{const l=fm(),d=Ai(!1),m=l.isSet,v=()=>{m()&&(e8(s),fS(s),d.set(!1),l.clear())},w=G=>{m()||(JF(s,G.range),l.set({trigger:G.trigger,matchLength:G.text.length}))},$=Qt(()=>NQ(s)),B=G=>l.get().map(le=>P_(s.dom,s.selection.getRng(),le.trigger).bind(ue=>gN(s,$,ue,G))).getOrThunk(()=>GH(s,$)),H=G=>{B(G).fold(v,le=>{w(le.context),le.lookupData.then(ue=>{l.get().map(ge=>{const Me=le.context;ge.trigger===Me.trigger&&(Me.text.length-ge.matchLength>=10?v():(l.set({...ge,matchLength:Me.text.length}),d.get()?EC(s,{lookupData:ue}):(d.set(!0),dS(s,{lookupData:ue}))))})})})};s.addCommand("mceAutocompleterReload",(G,le)=>{const ue=ae(le)?le.fetchOptions:{};H(ue)}),s.addCommand("mceAutocompleterClose",v),IQ(s,{cancelIfNecessary:v,load:H})},VN=Ko().browser.isSafari(),zN=s=>Sd(qe.fromDom(s)),H$=(s,l)=>{var d;return s.startOffset===0&&s.endOffset===((d=l.textContent)===null||d===void 0?void 0:d.length)},Px=(s,l)=>de.from(s.getParent(l.container(),"details")),Dx=(s,l)=>Px(s,l).isSome(),LQ=(s,l)=>{const d=de.from(s.getParent(l.startContainer,"details")),m=de.from(s.getParent(l.endContainer,"details"));if(d.isSome()||m.isSome()){const v=d.bind(w=>de.from(s.select("summary",w)[0]));return de.some({startSummary:v,startDetails:d,endDetails:m})}else return de.none()},FQ=(s,l)=>hu(l).exists(d=>d.isEqual(s)),HQ=(s,l)=>zf(l).exists(d=>Js(d.getNode())&&Ru(l,d).exists(m=>m.isEqual(s))||d.isEqual(s)),QQ=(s,l)=>l.startSummary.exists(d=>FQ(s,d)),VQ=(s,l)=>l.startSummary.exists(d=>HQ(s,d)),WN=(s,l)=>l.startDetails.exists(d=>Ru(d,s).forall(m=>l.startSummary.exists(v=>!v.contains(s.container())&&v.contains(m.container())))),Q$=(s,l,d)=>d.startDetails.exists(m=>Uc(s,l).forall(v=>!m.contains(v.container()))),V$=(s,l)=>{const d=l.getNode();De(d)||s.selection.setCursorLocation(d,l.offset())},z$=(s,l,d)=>{const m=s.dom.getParent(l.container(),"details");if(m&&!m.open){const v=s.dom.select("summary",m)[0];v&&(d?hu(v):zf(v)).each($=>V$(s,$))}else V$(s,l)},zQ=(s,l)=>{const d=H=>H.contains(s.startContainer),m=H=>H.contains(s.endContainer),v=l.startSummary.exists(d),w=l.startSummary.exists(m),$=l.startDetails.forall(H=>l.endDetails.forall(G=>H!==G));return(v||w)&&!(v&&w)||$},ZN=(s,l,d)=>{const{dom:m,selection:v}=s,w=s.getBody();if(d==="character"){const $=Dt.fromRangeStart(v.getRng()),B=m.getParent($.container(),m.isBlock),H=Px(m,$),G=B&&m.isEmpty(B),le=ne(B==null?void 0:B.previousSibling),ue=ne(B==null?void 0:B.nextSibling);return G&&(l?ue:le)&&Op(!l,w,$).exists(He=>Dx(m,He)&&!Ka(H,Px(m,He)))?!0:Op(l,w,$).fold(Fe,ge=>{const Me=Px(m,ge);if(Dx(m,ge)&&!Ka(H,Me)){if(l||z$(s,ge,!1),B&&G){if(l&&le)return!0;if(!l&&ue)return!0;z$(s,ge,l),s.dom.remove(B)}return!0}else return!1})}else return!1},WQ=(s,l,d,m)=>{const w=s.selection.getRng(),$=Dt.fromRangeStart(w),B=s.getBody();return m==="selection"?zQ(w,l):d?VQ($,l)||Q$(B,$,l):QQ($,l)||WN($,l)},Rx=(s,l,d)=>LQ(s.dom,s.selection.getRng()).fold(()=>ZN(s,l,d),m=>WQ(s,m,l,d)||ZN(s,l,d)),UN=(s,l,d)=>{const m=s.selection,v=m.getNode(),w=m.getRng(),$=Dt.fromRangeStart(w);return Sl(v)?(d==="selection"&&H$(w,v)||ek(l,$,v)?zN(v):s.undoManager.transact(()=>{const B=m.getSel();let{anchorNode:H,anchorOffset:G,focusNode:le,focusOffset:ue}=B??{};const ge=()=>{Te(H)&&Te(G)&&Te(le)&&Te(ue)&&(B==null||B.setBaseAndExtent(H,G,le,ue))},Me=()=>{H=B==null?void 0:B.anchorNode,G=B==null?void 0:B.anchorOffset,le=B==null?void 0:B.focusNode,ue=B==null?void 0:B.focusOffset},He=(Ve,rt)=>{Ne(Ve.childNodes,ft=>{Bv(ft)&&rt.appendChild(ft)})},$e=s.dom.create("span",{"data-mce-bogus":"1"});He(v,$e),v.appendChild($e),ge(),(d==="word"||d==="line")&&(B==null||B.modify("extend",l?"right":"left",d)),!m.isCollapsed()&&H$(m.getRng(),$e)?zN(v):(s.execCommand(l?"ForwardDelete":"Delete"),Me(),He($e,v),ge()),s.dom.remove($e)}),!0):!1},x0=(s,l,d)=>Rx(s,l,d)||VN&&UN(s,l,d)?de.some(St):de.none(),qN=s=>(l,d,m={})=>{const v=l.getBody(),w={bubbles:!0,composed:!0,data:null,isComposing:!1,detail:0,view:null,target:v,currentTarget:v,eventPhase:Event.AT_TARGET,originalTarget:v,explicitOriginalTarget:v,isTrusted:!1,srcElement:v,cancelable:!1,preventDefault:St,inputType:d},$=fg(new InputEvent(s));return l.dispatch(s,{...$,...w,...m})},A2=qN("input"),W$=qN("beforeinput"),ZQ=Ko(),UQ=ZQ.os,XN=UQ.isMacOS()||UQ.isiOS(),qQ=ZQ.browser.isFirefox(),XQ=(s,l,d)=>{const m=d.keyCode===zn.BACKSPACE?"deleteContentBackward":"deleteContentForward",v=s.selection.isCollapsed(),w=v?"character":"selection",$=B=>v?B?"word":"line":"selection";v$([{keyCode:zn.BACKSPACE,action:No(M5,s)},{keyCode:zn.BACKSPACE,action:No(a2,s,!1)},{keyCode:zn.DELETE,action:No(a2,s,!0)},{keyCode:zn.BACKSPACE,action:No(L3,s,!1)},{keyCode:zn.DELETE,action:No(L3,s,!0)},{keyCode:zn.BACKSPACE,action:No(mx,s,l,!1)},{keyCode:zn.DELETE,action:No(mx,s,l,!0)},{keyCode:zn.BACKSPACE,action:No(NS,s,!1)},{keyCode:zn.DELETE,action:No(NS,s,!0)},{keyCode:zn.BACKSPACE,action:No(x0,s,!1,w)},{keyCode:zn.DELETE,action:No(x0,s,!0,w)},...XN?[{keyCode:zn.BACKSPACE,altKey:!0,action:No(x0,s,!1,$(!0))},{keyCode:zn.DELETE,altKey:!0,action:No(x0,s,!0,$(!0))},{keyCode:zn.BACKSPACE,metaKey:!0,action:No(x0,s,!1,$(!1))}]:[{keyCode:zn.BACKSPACE,ctrlKey:!0,action:No(x0,s,!1,$(!0))},{keyCode:zn.DELETE,ctrlKey:!0,action:No(x0,s,!0,$(!0))}],{keyCode:zn.BACKSPACE,action:No(Q3,s,!1)},{keyCode:zn.DELETE,action:No(Q3,s,!0)},{keyCode:zn.BACKSPACE,action:No(c$,s,!1)},{keyCode:zn.DELETE,action:No(c$,s,!0)},{keyCode:zn.BACKSPACE,action:No(ox,s,!1)},{keyCode:zn.DELETE,action:No(ox,s,!0)},{keyCode:zn.BACKSPACE,action:No(I3,s,!1)},{keyCode:zn.DELETE,action:No(I3,s,!0)},{keyCode:zn.BACKSPACE,action:No(a$,s,!1)},{keyCode:zn.DELETE,action:No(a$,s,!0)}],d).filter(B=>s.selection.isEditable()).each(B=>{d.preventDefault(),W$(s,m).isDefaultPrevented()||(B(),A2(s,m))})},UU=(s,l,d)=>A_([{keyCode:zn.BACKSPACE,action:No(jM,s)},{keyCode:zn.DELETE,action:No(jM,s)},...XN?[{keyCode:zn.BACKSPACE,altKey:!0,action:No(h2,s)},{keyCode:zn.DELETE,altKey:!0,action:No(h2,s)},...d?[{keyCode:qQ?224:91,action:No(h2,s)}]:[]]:[{keyCode:zn.BACKSPACE,ctrlKey:!0,action:No(h2,s)},{keyCode:zn.DELETE,ctrlKey:!0,action:No(h2,s)}]],l),jQ=(s,l)=>{let d=!1;s.on("keydown",m=>{d=m.keyCode===zn.BACKSPACE,m.isDefaultPrevented()||XQ(s,l,m)}),s.on("keyup",m=>{m.isDefaultPrevented()||UU(s,m,d),d=!1})},Pa=s=>{for(;s;){if(Zn(s)||un(s)&&s.data&&/[\r\n\s]/.test(s.data))return s;s=s.nextSibling}return null},E0=(s,l)=>{const d=s.dom,m=s.schema.getMoveCaretBeforeOnEnterElements();if(!l)return;if(/^(LI|DT|DD)$/.test(l.nodeName)){const w=Pa(l.firstChild);w&&/^(UL|OL|DL)$/.test(w.nodeName)&&l.insertBefore(d.doc.createTextNode(Fs),l.firstChild)}const v=d.createRng();if(l.normalize(),l.hasChildNodes()){const w=new Hr(l,l);let $=l,B;for(;B=w.current();){if(un(B)){v.setStart(B,0),v.setEnd(B,0);break}if(m[B.nodeName.toLowerCase()]){v.setStartBefore(B),v.setEndBefore(B);break}$=B,B=w.next()}B||(v.setStart($,0),v.setEnd($,0))}else Js(l)?l.nextSibling&&d.isBlock(l.nextSibling)?(v.setStartBefore(l),v.setEndBefore(l)):(v.setStartAfter(l),v.setEndAfter(l)):(v.setStart(l,0),v.setEnd(l,0));s.selection.setRng(v),eO(s,v)},Kf=(s,l)=>{const d=s.getRoot();let m,v=l;for(;v!==d&&v&&s.getContentEditable(v)!=="false";){if(s.getContentEditable(v)==="true"){m=v;break}v=v.parentNode}return v!==d?m:d},Mx=s=>de.from(s.dom.getParent(s.selection.getStart(!0),s.dom.isBlock)),jN=s=>Mx(s).fold(je(""),l=>l.nodeName.toUpperCase()),YQ=s=>Mx(s).filter(l=>iu(qe.fromDom(l))).isSome(),N_=s=>{s.innerHTML='
    '},Z$=(s,l,d)=>{const m=s.dom;de.from(d.style).map(m.parseStyle).each(H=>{const le={...yu(qe.fromDom(l)),...H};m.setStyles(l,le)});const v=de.from(d.class).map(H=>H.split(/\s+/)),w=de.from(l.className).map(H=>xt(H.split(/\s+/),G=>G!==""));yr(v,w,(H,G)=>{const le=xt(G,ge=>!gt(H,ge)),ue=[...H,...le];m.setAttrib(l,"class",ue.join(" "))});const $=["style","class"],B=Ft(d,(H,G)=>!gt($,G));m.setAttribs(l,B)},I_=(s,l)=>{if(Vl(s).toLowerCase()===l.tagName.toLowerCase()){const m=Om(s);Z$(s,l,m)}},U$=(s,l,d,m,v=!0,w,$)=>{const B=s.dom,H=s.schema,G=Vl(s),le=d?d.nodeName.toUpperCase():"";let ue=l;const ge=H.getTextInlineElements();let Me;w||le==="TABLE"||le==="HR"?Me=B.create(w||G,$||{}):Me=d.cloneNode(!1);let He=Me;if(!v)B.setAttrib(Me,"style",null),B.setAttrib(Me,"class",null);else do if(ge[ue.nodeName]){if(Bd(ue)||Ld(ue))continue;const $e=ue.cloneNode(!1);B.setAttrib($e,"id",""),Me.hasChildNodes()?($e.appendChild(Me.firstChild),Me.appendChild($e)):(He=$e,Me.appendChild($e))}while((ue=ue.parentNode)&&ue!==m);return I_(s,Me),N_(He),Me},GQ=(s,l)=>s.dom.getParent(l,Gt),KQ=(s,l,d)=>{let m=l;for(;m&&m!==s&&ne(m.nextSibling);){const v=m.parentElement;if(!v||!d(v))return Gt(v);m=v}return!1},JQ=(s,l,d)=>!l&&d.nodeName.toLowerCase()===Vl(s)&&s.dom.isEmpty(d)&&KQ(s.getBody(),d,m=>an(s.schema.getTextBlockElements(),m.nodeName.toLowerCase())),eV=(s,l,d)=>{var m,v,w;const $=l(Vl(s)),B=GQ(s,d);B&&(s.dom.insertAfter($,B),E0(s,$),((w=(v=(m=d.parentElement)===null||m===void 0?void 0:m.childNodes)===null||v===void 0?void 0:v.length)!==null&&w!==void 0?w:0)>1&&s.dom.remove(d))},tV=(s,l)=>s.firstChild&&s.firstChild.nodeName===l,YN=s=>{var l;return((l=s.parentNode)===null||l===void 0?void 0:l.firstChild)===s},GN=(s,l)=>{const d=s==null?void 0:s.parentNode;return Te(d)&&d.nodeName===l},KN=s=>Te(s)&&/^(OL|UL|LI)$/.test(s.nodeName),q$=s=>Te(s)&&/^(LI|DT|DD)$/.test(s.nodeName),nV=s=>KN(s)&&KN(s.parentNode),Nx=s=>{const l=s.parentNode;return q$(l)?l:s},$2=(s,l,d)=>{let m=s[d?"firstChild":"lastChild"];for(;m&&!Zn(m);)m=m[d?"nextSibling":"previousSibling"];return m===l},X$=s=>Dn(Rn(yu(qe.fromDom(s)),(l,d)=>`${d}: ${l};`),(l,d)=>l+d,""),oV=(s,l,d,m,v)=>{const w=s.dom,$=s.selection.getRng(),B=d.parentNode;if(d===s.getBody()||!B)return;nV(d)&&(v="LI");const H=q$(m)?X$(m):void 0;let G=q$(m)&&H?l(v,{style:X$(m)}):l(v);if($2(d,m,!0)&&$2(d,m,!1))if(GN(d,"LI")){const le=Nx(d);w.insertAfter(G,le),YN(d)?w.remove(le):w.remove(d)}else w.replace(G,d);else if($2(d,m,!0))GN(d,"LI")?(w.insertAfter(G,Nx(d)),G.appendChild(w.doc.createTextNode(" ")),G.appendChild(d)):B.insertBefore(G,d),w.remove(m);else if($2(d,m,!1))w.insertAfter(G,Nx(d)),w.remove(m);else{d=Nx(d);const le=$.cloneRange();le.setStartAfter(m),le.setEndAfter(d);const ue=le.extractContents();if(v==="LI"&&tV(ue,"LI")){const ge=xt(pt(G.children,qe.fromDom),ct(fc("br")));G=ue.firstChild,w.insertAfter(ue,d),Ne(ge,Me=>_u(qe.fromDom(G),Me)),H&&G.setAttribute("style",H)}else w.insertAfter(ue,d),w.insertAfter(G,d);w.remove(m)}E0(s,G)},sV=s=>{Ne(Uu(qe.fromDom(s),va),l=>{const d=l.dom;d.nodeValue=ve(d.data)})},qU=(s,l)=>{const d=s.dom.getParent(l,"ol,ul,dl");return d!==null&&s.dom.getContentEditableParent(d)==="false"},j$=(s,l)=>l&&l.nodeName==="A"&&s.isEmpty(l),Y$=(s,l)=>s.nodeName===l||s.previousSibling&&s.previousSibling.nodeName===l,G$=(s,l)=>Te(l)&&s.isBlock(l)&&!/^(TD|TH|CAPTION|FORM)$/.test(l.nodeName)&&!/^(fixed|absolute)/i.test(l.style.position)&&s.isEditable(l.parentNode)&&s.getContentEditable(l)!=="false",rV=(s,l,d)=>{var m;const v=[];if(!d)return;let w=d;for(;w=w.firstChild;){if(s.isBlock(w))return;Zn(w)&&!l[w.nodeName.toLowerCase()]&&v.push(w)}let $=v.length;for(;$--;)w=v[$],(!w.hasChildNodes()||w.firstChild===w.lastChild&&((m=w.firstChild)===null||m===void 0?void 0:m.nodeValue)===""||j$(s,w))&&s.remove(w)},Ix=(s,l,d)=>un(l)?s?d===1&&l.data.charAt(d-1)===z?0:d:d===l.data.length-1&&l.data.charAt(d)===z?l.data.length:d:d,iV=s=>{const l=s.cloneRange();return l.setStart(s.startContainer,Ix(!0,s.startContainer,s.startOffset)),l.setEnd(s.endContainer,Ix(!1,s.endContainer,s.endOffset)),l},JN=s=>{let l=s;do un(l)&&(l.data=l.data.replace(/^[\r\n]+/,"")),l=l.firstChild;while(l)},aV=(s,l,d,m,v)=>{var w,$;const B=s.dom,H=(w=Kf(B,m))!==null&&w!==void 0?w:B.getRoot();let G=B.getParent(m,B.isBlock);if(!G||!G$(B,G)){if(G=G||H,!G.hasChildNodes()){const Me=B.create(l);return I_(s,Me),G.appendChild(Me),d.setStart(Me,0),d.setEnd(Me,0),Me}let le=m;for(;le&&le.parentNode!==G;)le=le.parentNode;let ue;for(;le&&!B.isBlock(le);)ue=le,le=le.previousSibling;const ge=($=ue==null?void 0:ue.parentElement)===null||$===void 0?void 0:$.nodeName;if(ue&&ge&&s.schema.isValidChild(ge,l.toLowerCase())){const Me=ue.parentNode,He=B.create(l);for(I_(s,He),Me.insertBefore(He,ue),le=ue;le&&!B.isBlock(le);){const $e=le.nextSibling;He.appendChild(le),le=$e}d.setStart(m,v),d.setEnd(m,v)}}return m},lV=(s,l)=>{l.normalize();const d=l.lastChild;(!d||Zn(d)&&/^(left|right)$/gi.test(s.getStyle(d,"float",!0)))&&s.add(l,"br")},XU=(s,l)=>{const d=ny(s);return Be(l)?!1:j(d)?gt(cn.explode(d),l.nodeName.toLowerCase()):d},eI={insert:(s,l)=>{let d,m,v,w,$=!1;const B=s.dom,H=s.schema,G=H.getNonEmptyElements(),le=s.selection.getRng(),ue=Vl(s),ge=qe.fromDom(le.startContainer),Me=nu(ge,le.startOffset),He=Me.exists(Jt=>ri(Jt)&&!Zo(Jt)),$e=le.collapsed&&He,Ve=(Jt,qn)=>U$(s,d,vn,en,_w(s),Jt,qn),rt=Jt=>{const qn=Ix(Jt,d,m);if(un(d)&&(Jt?qn>0:qn{let Jt;return/^(H[1-6]|PRE|FIGURE)$/.test(v)&&Fn!=="HGROUP"?Jt=Ve(ue):Jt=Ve(),XU(s,w)&&G$(B,w)&&B.isEmpty(vn,void 0,{includeZwsp:!0})?Jt=B.split(w,vn):B.insertAfter(Jt,vn),E0(s,Jt),Jt};Y(B,le).each(Jt=>{le.setStart(Jt.startContainer,Jt.startOffset),le.setEnd(Jt.endContainer,Jt.endOffset)}),d=le.startContainer,m=le.startOffset;const ut=!!(l&&l.shiftKey),kt=!!(l&&l.ctrlKey);Zn(d)&&d.hasChildNodes()&&!$e&&($=m>d.childNodes.length-1,d=d.childNodes[Math.min(m,d.childNodes.length-1)]||d,$&&un(d)?m=d.data.length:m=0);const en=Kf(B,d);if(!en||qU(s,d))return;ut||(d=aV(s,ue,le,d,m));let vn=B.getParent(d,B.isBlock)||B.getRoot();w=Te(vn==null?void 0:vn.parentNode)?B.getParent(vn.parentNode,B.isBlock):null,v=vn?vn.nodeName.toUpperCase():"";const Fn=w?w.nodeName.toUpperCase():"";if(Fn==="LI"&&!kt){const Jt=w;vn=Jt,w=Jt.parentNode,v=Fn}if(Zn(w)&&JQ(s,ut,vn))return eV(s,Ve,vn);if(/^(LI|DT|DD)$/.test(v)&&Zn(w)&&B.isEmpty(vn)){oV(s,Ve,w,vn,ue);return}if(!$e&&(vn===s.getBody()||!G$(B,vn)))return;const zt=vn.parentNode;let It;if($e)It=Ve(ue),Me.fold(()=>{di(ge,qe.fromDom(It))},Jt=>{xi(Jt,qe.fromDom(It))}),s.selection.setCursorLocation(It,0);else if(gn(vn))It=qu(vn),B.isEmpty(vn)&&N_(vn),I_(s,It),E0(s,It);else if(rt(!1))It=ft();else if(rt(!0)&&zt){It=zt.insertBefore(Ve(),vn);const Jt=xf(qe.fromDom(le.startContainer))&&le.collapsed;E0(s,Y$(vn,"HR")||Jt?It:vn)}else{const Jt=iV(le).cloneRange();Jt.setEndAfter(vn);const qn=Jt.extractContents();sV(qn),JN(qn),It=qn.firstChild,B.insertAfter(qn,vn),rV(B,G,It),lV(B,vn),B.isEmpty(vn)&&N_(vn),It.normalize(),B.isEmpty(It)?(B.remove(It),ft()):(I_(s,It),E0(s,It))}B.setAttrib(It,"id",""),s.dispatch("NewBlock",{newBlock:It})},fakeEventName:"insertParagraph"},cV=(s,l,d)=>{const m=new Hr(l,d);let v;const w=s.getNonEmptyElements();for(;v=m.next();)if(w[v.nodeName.toLowerCase()]||un(v)&&v.length>0)return!0;return!1},tI=(s,l,d)=>{const m=s.dom.createRng();d?(m.setStartBefore(l),m.setEndBefore(l)):(m.setStartAfter(l),m.setEndAfter(l)),s.selection.setRng(m),eO(s,m)},uV=(s,l)=>{const d=s.selection,m=s.dom,v=d.getRng();let w,$=!1;Y(m,v).each(Me=>{v.setStart(Me.startContainer,Me.startOffset),v.setEnd(Me.endContainer,Me.endOffset)});let B=v.startOffset,H=v.startContainer;if(Zn(H)&&H.hasChildNodes()){const Me=B>H.childNodes.length-1;H=H.childNodes[Math.min(B,H.childNodes.length-1)]||H,Me&&un(H)?B=H.data.length:B=0}let G=m.getParent(H,m.isBlock);const le=G&&G.parentNode?m.getParent(G.parentNode,m.isBlock):null,ue=le?le.nodeName.toUpperCase():"",ge=!!(l&&l.ctrlKey);ue==="LI"&&!ge&&(G=le),un(H)&&B>=H.data.length&&(cV(s.schema,H,G||m.getRoot())||(w=m.create("br"),v.insertNode(w),v.setStartAfter(w),v.setEndAfter(w),$=!0)),w=m.create("br"),nv(m,v,w),tI(s,w,$),s.undoManager.add()},dV=(s,l)=>{const d=qe.fromTag("br");xi(qe.fromDom(l),d),s.undoManager.add()},fV=(s,l)=>{hV(s.getBody(),l)||Bl(qe.fromDom(l),qe.fromTag("br"));const d=qe.fromTag("br");Bl(qe.fromDom(l),d),tI(s,d.dom,!1),s.undoManager.add()},Bx=s=>Js(s.getNode()),hV=(s,l)=>Bx(Dt.after(l))?!0:Uc(s,Dt.after(l)).map(d=>Js(d.getNode())).getOr(!1),nI=s=>s&&s.nodeName==="A"&&"href"in s,K$=s=>s.fold(Fe,nI,nI,Fe),J$=s=>{const l=Ue(rO,s),d=Dt.fromRangeStart(s.selection.getRng());return Sc(l,s.getBody(),d).filter(K$)},mV=(s,l)=>{l.fold(St,Ue(dV,s),Ue(fV,s),St)},pV={insert:(s,l)=>{const d=J$(s);d.isSome()?d.each(Ue(mV,s)):uV(s,l)},fakeEventName:"insertLineBreak"},oI=(s,l)=>Mx(s).filter(d=>l.length>0&&mc(qe.fromDom(d),l)).isSome(),gV=s=>oI(s,yw(s)),YU=s=>oI(s,hv(s)),Jf=hf.generate([{br:[]},{block:[]},{none:[]}]),Bp=(s,l)=>YU(s),sI=s=>(l,d)=>YQ(l)===s,eP=(s,l)=>(d,m)=>jN(d)===s.toUpperCase()===l,bV=s=>{const l=Kf(s.dom,s.selection.getStart());return Be(l)},P2=s=>eP("pre",s),vV=()=>eP("summary",!0),Lx=s=>(l,d)=>vw(l)===s,OV=(s,l)=>gV(s),Fx=(s,l)=>l,yV=s=>{const l=Vl(s),d=Kf(s.dom,s.selection.getStart());return Te(d)&&s.schema.isValidChild(d.nodeName,l)},tP=s=>{const l=s.selection.getRng(),d=qe.fromDom(l.startContainer),v=nu(d,l.startOffset).map(w=>ri(w)&&!Zo(w));return l.collapsed&&v.getOr(!0)},eh=(s,l)=>(d,m)=>Dn(s,(w,$)=>w&&$(d,m),!0)?de.some(l):de.none(),Hx=(s,l)=>e5([eh([Bp],Jf.none()),eh([P2(!0),bV],Jf.none()),eh([vV()],Jf.br()),eh([P2(!0),Lx(!1),Fx],Jf.br()),eh([P2(!0),Lx(!1)],Jf.block()),eh([P2(!0),Lx(!0),Fx],Jf.block()),eh([P2(!0),Lx(!0)],Jf.br()),eh([sI(!0),Fx],Jf.br()),eh([sI(!0)],Jf.block()),eh([OV],Jf.br()),eh([Fx],Jf.br()),eh([yV],Jf.block()),eh([tP],Jf.block())],[s,!!(l&&l.shiftKey)]).getOr(Jf.none()),Qx=(s,l,d)=>{l.selection.isCollapsed()||LT(l),!(Te(d)&&W$(l,s.fakeEventName).isDefaultPrevented())&&(s.insert(l,d),Te(d)&&A2(l,s.fakeEventName))},rI=(s,l)=>{const d=()=>Qx(pV,s,l),m=()=>Qx(eI,s,l),v=Hx(s,l);switch(Ow(s)){case"linebreak":v.fold(d,d,St);break;case"block":v.fold(m,m,St);break;case"invert":v.fold(m,d,St);break;default:v.fold(d,m,St);break}},iI=Ko(),_V=iI.os.isiOS()&&iI.browser.isSafari(),aI=(s,l)=>{l.isDefaultPrevented()||(l.preventDefault(),$F(s.undoManager),s.undoManager.transact(()=>{rI(s,l)}))},lI=s=>{if(!s.collapsed)return!1;const l=s.startContainer;if(un(l)){const d=/^[\uAC00-\uD7AF\u1100-\u11FF\u3130-\u318F\uA960-\uA97F\uD7B0-\uD7FF]$/,m=l.data.charAt(s.startOffset-1);return d.test(m)}else return!1},wV=s=>{let l=de.none();const d=v=>{l=de.some(v.selection.getBookmark()),v.undoManager.add()},m=(v,w)=>{v.undoManager.undo(),l.fold(St,$=>v.selection.moveToBookmark($)),aI(v,w),l=de.none()};s.on("keydown",v=>{v.keyCode===zn.ENTER&&(_V&&lI(s.selection.getRng())?d(s):aI(s,v))}),s.on("keyup",v=>{v.keyCode===zn.ENTER&&l.each(()=>m(s,v))})},cI=(s,l,d)=>{const m=Mn.os.isMacOS()||Mn.os.isiOS();A_([{keyCode:zn.END,action:No(z5,s,!0)},{keyCode:zn.HOME,action:No(z5,s,!1)},...m?[]:[{keyCode:zn.HOME,action:No(Ox,s,!1),ctrlKey:!0,shiftKey:!0},{keyCode:zn.END,action:No(Ox,s,!0),ctrlKey:!0,shiftKey:!0}],{keyCode:zn.END,action:No(_x,s,!0)},{keyCode:zn.HOME,action:No(_x,s,!1)},{keyCode:zn.END,action:No(hx,s,!0,l)},{keyCode:zn.HOME,action:No(hx,s,!1,l)}],d).each(v=>{d.preventDefault()})},uI=(s,l)=>{s.on("keydown",d=>{d.isDefaultPrevented()||cI(s,l,d)})},SV=s=>{s.on("input",l=>{l.isComposing||W6(s)})},CV=Ko(),nP=(s,l,d)=>{A_([{keyCode:zn.PAGE_UP,action:No(hx,s,!1,l)},{keyCode:zn.PAGE_DOWN,action:No(hx,s,!0,l)}],d)},dI=s=>s.stopImmediatePropagation(),fI=s=>s.keyCode===zn.PAGE_UP||s.keyCode===zn.PAGE_DOWN,D2=(s,l,d)=>{d&&!s.get()?l.on("NodeChange",dI,!0):!d&&s.get()&&l.off("NodeChange",dI),s.set(d)},kV=(s,l)=>{if(CV.os.isMacOS())return;const d=Ai(!1);s.on("keydown",m=>{fI(m)&&D2(d,s,!0)}),s.on("keyup",m=>{m.isDefaultPrevented()||nP(s,l,m),fI(m)&&d.get()&&(D2(d,s,!1),s.nodeChanged())})},oP=s=>{s.on("beforeinput",l=>{(!s.selection.isEditable()||Ut(l.getTargetRanges(),d=>!O4(s.dom,d)))&&l.preventDefault()})},Vx=(s,l)=>{const d=l.container(),m=l.offset();return un(d)?(d.insertData(m,s),de.some(Dt(d,m+s.length))):rc(l).map(v=>{const w=qe.fromText(s);return l.isAtEnd()?Bl(v,w):xi(v,w),Dt(w.dom,s.length)})},sP=Ue(Vx,Fs),hI=Ue(Vx," "),GU=(s,l,d)=>Y4(s,l,d)?sP(l):hI(l),T0=s=>l=>l.fold(d=>Ru(s.dom,Dt.before(d)),d=>hu(d),d=>zf(d),d=>Uc(s.dom,Dt.after(d))),xV=(s,l,d)=>m=>Y4(s,m,d)?sP(l):hI(l),mI=s=>l=>{s.selection.setRng(l.toRange()),s.nodeChanged()},EV=(s,l)=>s.isEditable(s.getParent(l,"summary")),zx=s=>{const l=Dt.fromRangeStart(s.selection.getRng()),d=qe.fromDom(s.getBody());if(s.selection.isCollapsed()){const m=Ue(rO,s),v=Dt.fromRangeStart(s.selection.getRng());return Sc(m,s.getBody(),v).bind(T0(d)).map(w=>()=>xV(d,l,s.schema)(w).each(mI(s)))}else return de.none()},pI=s=>{const l=()=>{const d=qe.fromDom(s.getBody());s.selection.isCollapsed()||s.getDoc().execCommand("Delete");const m=Dt.fromRangeStart(s.selection.getRng());GU(d,m,s.schema).each(mI(s))};return Jo(Mn.browser.isFirefox()&&s.selection.isEditable()&&EV(s.dom,s.selection.getRng().startContainer),l)},gI=(s,l)=>{v$([{keyCode:zn.SPACEBAR,action:No(zx,s)},{keyCode:zn.SPACEBAR,action:No(pI,s)}],l).each(d=>{l.preventDefault(),W$(s,"insertText",{data:" "}).isDefaultPrevented()||(d(),A2(s,"insertText",{data:" "}))})},TV=s=>{s.on("keydown",l=>{l.isDefaultPrevented()||gI(s,l)})},bI=s=>Ev(s)?[{keyCode:zn.TAB,action:No(uN,s,!0)},{keyCode:zn.TAB,shiftKey:!0,action:No(uN,s,!1)}]:[],AV=(s,l)=>{A_([...bI(s)],l).each(d=>{l.preventDefault()})},$V=s=>{s.on("keydown",l=>{l.isDefaultPrevented()||AV(s,l)})},PV=s=>{if(s.addShortcut("Meta+P","","mcePrint"),BQ(s),Y1(s))return Ai(null);{const l=U9(s);return oP(s),vH(s),XH(s,l),jQ(s,l),wV(s),TV(s),SV(s),$V(s),uI(s,l),kV(s,l),l}};class vI{constructor(l){this.lastPath=[],this.editor=l;let d;const m=this;"onselectionchange"in l.getDoc()||l.on("NodeChange click mouseup keyup focus",v=>{const w=l.selection.getRng(),$={startContainer:w.startContainer,startOffset:w.startOffset,endContainer:w.endContainer,endOffset:w.endOffset};(v.type==="nodechange"||!Ep($,d))&&l.dispatch("SelectionChange"),d=$}),l.on("contextmenu",()=>{l.dispatch("SelectionChange")}),l.on("SelectionChange",()=>{const v=l.selection.getStart(!0);v&&Ry(l)&&!m.isSameElementPath(v)&&l.dom.isChildOf(v,l.getBody())&&l.nodeChanged({selectionChange:!0})}),l.on("mouseup",v=>{!v.isDefaultPrevented()&&Ry(l)&&(l.selection.getNode().nodeName==="IMG"?Uf.setEditorTimeout(l,()=>{l.nodeChanged()}):l.nodeChanged())})}nodeChanged(l={}){const d=this.editor.selection;let m;if(this.editor.initialized&&d&&!Bb(this.editor)&&!this.editor.mode.isReadOnly()){const v=this.editor.getBody();m=d.getStart(!0)||v,(m.ownerDocument!==this.editor.getDoc()||!this.editor.dom.isChildOf(m,v))&&(m=v);const w=[];this.editor.dom.getParent(m,$=>$===v?!0:(w.push($),!1)),this.editor.dispatch("NodeChange",{...l,element:m,parents:w})}}isSameElementPath(l){let d;const m=this.editor,v=Ts(m.dom.getParents(l,mt,m.getBody()));if(v.length===this.lastPath.length){for(d=v.length;d>=0&&v[d]===this.lastPath[d];d--);if(d===-1)return this.lastPath=v,!0}return this.lastPath=v,!1}}const Wx=cp("image"),DV=s=>{const l=s;return de.from(l[Wx])},rP=(s,l)=>{const d=s;d[Wx]=l},Zx=cp("event"),Ux=s=>{const l=s;return de.from(l[Zx])},R2=s=>l=>{const d=l;d[Zx]=s},OI=(s,l)=>R2(l)(s),yI=R2(0),RV=R2(2),qx=R2(1),NV=(s=>l=>{const d=l;return de.from(d[Zx]).exists(m=>m===s)})(0),IV=()=>Object.freeze({length:0,item:s=>null}),Xx=cp("mode"),BV=s=>{const l=s;return de.from(l[Xx])},jx=s=>l=>{const d=l;d[Xx]=s},_I=(s,l)=>jx(l)(s),wI=jx(0),iP=jx(2),SI=jx(1),CI=s=>l=>{const d=l;return de.from(d[Xx]).exists(m=>m===s)},_O=CI(0),kI=CI(1),LV=(s,l)=>({...l,get length(){return l.length},add:(d,m)=>{if(_O(s))if(j(d)){if(!De(m))return l.add(d,m)}else return l.add(d);return null},remove:d=>{_O(s)&&l.remove(d)},clear:()=>{_O(s)&&l.clear()}}),FV=["none","copy","link","move"],HV=["none","copy","copyLink","copyMove","link","linkMove","move","all","uninitialized"],aP=()=>{const s=new window.DataTransfer;let l="move",d="all";const m={get dropEffect(){return l},set dropEffect(v){gt(FV,v)&&(l=v)},get effectAllowed(){return d},set effectAllowed(v){NV(m)&>(HV,v)&&(d=v)},get items(){return LV(m,s.items)},get files(){return kI(m)?IV():s.files},get types(){return s.types},setDragImage:(v,w,$)=>{_O(m)&&(rP(m,{image:v,x:w,y:$}),s.setDragImage(v,w,$))},getData:v=>kI(m)?"":s.getData(v),setData:(v,w)=>{_O(m)&&s.setData(v,w)},clearData:v=>{_O(m)&&s.clearData(v)}};return wI(m),m},B_=s=>{const l=aP(),d=BV(s);return iP(s),yI(l),l.dropEffect=s.dropEffect,l.effectAllowed=s.effectAllowed,DV(s).each(m=>l.setDragImage(m.image,m.x,m.y)),Ne(s.types,m=>{m!=="Files"&&l.setData(m,s.getData(m))}),Ne(s.files,m=>l.items.add(m)),Ux(s).each(m=>{OI(l,m)}),d.each(m=>{_I(s,m),_I(l,m)}),l},QV=s=>{const l=s.getData("text/html");return l===""?de.none():de.some(l)},xI=(s,l)=>s.setData("text/html",l),lP="x-tinymce/html",Yx=je(lP),cP="",VV=s=>cP+s,EI=s=>s.replace(cP,""),TI=s=>s.indexOf(cP)!==-1,zV=s=>!/<(?:\/?(?!(?:div|p|br|span)>)\w+|(?:(?!(?:span style="white-space:\s?pre;?">)|br\s?\/>))\w+\s[^>]+)>/i.test(s),KU=(s,l)=>{let d="<"+s;const m=Rn(l,(v,w)=>w+'="'+op.encodeAllRaw(v)+'"');return m.length&&(d+=" "+m.join(" ")),d+">"},Gx=(s,l,d)=>{const m=s.split(/\n\n/),v=KU(l,d),w="",$=pt(m,H=>H.split(/\n/).join("
    ")),B=H=>v+H+w;return $.length===1?$[0]:pt($,B).join("")},AI="%MCEPASTEBIN%",WV=(s,l)=>{const{dom:d,selection:m}=s,v=s.getBody();l.set(m.getRng());const w=d.add(s.getBody(),"div",{id:"mcepastebin",class:"mce-pastebin",contentEditable:!0,"data-mce-bogus":"all",style:"position: fixed; top: 50%; width: 10px; height: 10px; overflow: hidden; opacity: 0"},AI);Mn.browser.isFirefox()&&d.setStyle(w,"left",d.getStyle(v,"direction",!0)==="rtl"?65535:-65535),d.bind(w,"beforedeactivate focusin focusout",$=>{$.stopPropagation()}),w.focus(),m.select(w,!0)},ZV=(s,l)=>{const d=s.dom;if(uP(s)){let m;const v=l.get();for(;m=uP(s);)d.remove(m),d.unbind(m);v&&s.selection.setRng(v)}l.set(null)},uP=s=>s.dom.get("mcepastebin"),UV=s=>Te(s)&&s.id==="mcepastebin",qV=s=>{const l=s.dom,d=($,B)=>{$.appendChild(B),l.remove(B,!0)},[m,...v]=xt(s.getBody().childNodes,UV);Ne(v,$=>{d(m,$)});const w=l.select("div[id=mcepastebin]",m);for(let $=w.length-1;$>=0;$--){const B=l.create("div");m.insertBefore(B,w[$]),d(B,w[$])}return m?m.innerHTML:""},$I=s=>s===AI,XV=s=>{const l=Ai(null);return{create:()=>WV(s,l),remove:()=>ZV(s,l),getEl:()=>uP(s),getHtml:()=>qV(s),getLastRng:l.get}},PI=(s,l)=>(cn.each(l,d=>{te(d,RegExp)?s=s.replace(d,""):s=s.replace(d[0],d[1])}),s),jV=s=>{const l=Df(),d=Mm({},l);let m="";const v=l.getVoidElements(),w=cn.makeMap("script noscript style textarea video audio iframe object"," "),$=l.getBlockElements(),B=H=>{const G=H.name,le=H;if(G==="br"){m+=` -`;return}if(G!=="wbr"){if(v[G]&&(m+=" "),w[G]){m+=" ";return}if(H.type===3&&(m+=H.value),!(H.name in l.getVoidElements())){let ue=H.firstChild;if(ue)do B(ue);while(ue=ue.next)}$[G]&&le.next&&(m+=` -`,G==="p"&&(m+=` -`))}};return s=PI(s,[//g]),B(d.parse(s)),m},DI=s=>(s=PI(s,[/^[\s\S]*]*>\s*|\s*<\/body[^>]*>[\s\S]*$/ig,/|/g,[/( ?)\u00a0<\/span>( ?)/g,(d,m,v)=>!m&&!v?" ":Fs],/
    /g,/
    $/i]),s),YV=s=>{let l=0;return()=>s+l++},GV=s=>{const l=s.toLowerCase(),d={jpg:"jpeg",jpe:"jpeg",jfi:"jpeg",jif:"jpeg",jfif:"jpeg",pjpeg:"jpeg",pjp:"jpeg",svg:"svg+xml"};return cn.hasOwn(d,l)?"image/"+d[l]:"image/"+l},fi=(s,l)=>{const d=Mm({sanitize:_m(s),sandbox_iframes:Wb(s)},s.schema);d.addNodeFilter("meta",v=>{cn.each(v,w=>{w.remove()})});const m=d.parse(l,{forced_root_block:!1,isRootContent:!0});return u0({validate:!0},s.schema).serialize(m)},RI=(s,l)=>({content:s,cancelled:l}),MI=(s,l,d)=>{const m=s.dom.create("div",{style:"display:none"},l),v=rT(s,m,d);return RI(v.node.innerHTML,v.isDefaultPrevented())},KV=(s,l,d)=>{const m=sT(s,l,d),v=fi(s,m.content);return s.hasEventListeners("PastePostProcess")&&!m.isDefaultPrevented()?MI(s,v,d):RI(v,m.isDefaultPrevented())},dP=(s,l,d)=>KV(s,l,d),Kx=(s,l)=>(s.insertContent(l,{merge:Sv(s),paste:!0}),!0),fP=s=>/^https?:\/\/[\w\-\/+=.,!;:&%@^~(){}?#]+$/i.test(s),JV=(s,l)=>fP(l)&&Ut(vy(s),d=>Vi(l.toLowerCase(),`.${d.toLowerCase()}`)),NI=(s,l,d)=>(s.undoManager.extra(()=>{d(s,l)},()=>{s.insertContent('')}),!0),hP=(s,l,d)=>(s.undoManager.extra(()=>{d(s,l)},()=>{s.execCommand("mceInsertLink",!1,l)}),!0),ez=(s,l,d)=>!s.selection.isCollapsed()&&fP(l)?hP(s,l,d):!1,tz=(s,l,d)=>JV(s,l)?NI(s,l,d):!1,nz=(s,l)=>{cn.each([ez,tz,Kx],d=>!d(s,l,Kx))},II=(s,l,d)=>{d||!Hb(s)?Kx(s,l):nz(s,l)},oz=YV("mceclip"),sz=s=>{const l=aP();return xI(l,s),iP(l),l},wO=(s,l,d,m,v)=>{const w=dP(s,l,d);if(!w.cancelled){const $=w.content,B=()=>II(s,$,m);v?W$(s,"insertFromPaste",{dataTransfer:sz($)}).isDefaultPrevented()||(B(),A2(s,"insertFromPaste")):B()}},Jx=(s,l,d,m)=>{const v=d||TI(l);wO(s,EI(l),v,!1,m)},A0=(s,l,d)=>{const m=s.dom.encode(l).replace(/\r\n/g,` -`),v=mh(m,gy(s)),w=Gx(v,Vl(s),Om(s));wO(s,w,!1,!0,d)},L_=s=>{const l={};if(s&&s.types)for(let d=0;dl in s&&s[l].length>0,BI=s=>$0(s,"text/html")||$0(s,"text/plain"),F_=(s,l)=>{const d=l.match(/([\s\S]+?)(?:\.[a-z0-9.]+)$/i);return Te(d)?s.dom.encode(d[1]):void 0},rz=(s,l,d,m)=>{const v=oz(),w=A1(s)&&Te(d.name),$=w?F_(s,d.name):v,B=w?d.name:void 0,H=l.create(v,d,m,$,B);return l.add(H),H},mP=(s,l)=>{xk(l.uri).each(({data:d,type:m,base64Encoded:v})=>{const w=v?d:btoa(d),$=l.file,B=s.editorUpload.blobCache,H=B.getByData(w,m),G=H??rz(s,B,$,w);Jx(s,``,!1,!0)})},iz=s=>s.type==="paste",LI=s=>Promise.all(pt(s,l=>X7(l).then(d=>({file:l,uri:d})))),FI=s=>{const l=vy(s);return d=>rr(d.type,"image/")&&Ut(l,m=>GV(m)===d.type)},pP=(s,l)=>{const d=l.items?Ns(Gs(l.items),v=>v.kind==="file"?[v.getAsFile()]:[]):[],m=l.files?Gs(l.files):[];return xt(d.length>0?d:m,FI(s))},gP=(s,l,d)=>{const m=iz(l)?l.clipboardData:l.dataTransfer;if(Fb(s)&&m){const v=pP(s,m);if(v.length>0)return l.preventDefault(),LI(v).then(w=>{d&&s.selection.setRng(d),Ne(w,$=>{mP(s,$)})}),!0}return!1},az=s=>{var l,d;return Mn.os.isAndroid()&&((d=(l=s.clipboardData)===null||l===void 0?void 0:l.items)===null||d===void 0?void 0:d.length)===0},lz=s=>zn.metaKeyPressed(s)&&s.keyCode===86||s.shiftKey&&s.keyCode===45,eE=(s,l,d,m,v)=>{let w=DI(d);const $=$0(l,Yx())||TI(d),B=!$&&zV(w),H=fP(w);($I(w)||!w.length||B&&!H)&&(m=!0),(m||H)&&($0(l,"text/plain")&&B?w=l["text/plain"]:w=jV(w)),!$I(w)&&(m?A0(s,w,v):Jx(s,w,$,v))},cz=(s,l,d)=>{let m;const v=()=>l.getLastRng()||s.selection.getRng();s.on("keydown",w=>{lz(w)&&!w.isDefaultPrevented()&&(m=w.shiftKey&&w.keyCode===86)}),s.on("paste",w=>{if(w.isDefaultPrevented()||az(w))return;const $=d.get()==="text"||m;m=!1;const B=L_(w.clipboardData);!BI(B)&&gP(s,w,v())||($0(B,"text/html")?(w.preventDefault(),eE(s,B,B["text/html"],$,!0)):$0(B,"text/plain")&&$0(B,"text/uri-list")?(w.preventDefault(),eE(s,B,B["text/plain"],$,!0)):(l.create(),Uf.setEditorTimeout(s,()=>{const H=l.getHtml();l.remove(),eE(s,B,H,$,!1)},0)))})},HI=s=>{const l=v=>rr(v,"webkit-fake-url"),d=v=>rr(v,"data:"),m=v=>{var w;return((w=v.data)===null||w===void 0?void 0:w.paste)===!0};s.parser.addNodeFilter("img",(v,w,$)=>{if(!Fb(s)&&m($))for(const B of v){const H=B.attr("src");j(H)&&!B.attr("data-mce-object")&&H!==Mn.transparentSrc&&(l(H)||!Vb(s)&&d(H))&&B.remove()}})},bP=(s,l,d)=>{cz(s,l,d),HI(s)},QI=(s,l)=>{l.get()==="text"?(l.set("html"),TC(s,!1)):(l.set("text"),TC(s,!0)),s.focus()},uz=(s,l)=>{s.addCommand("mceTogglePlainTextPaste",()=>{QI(s,l)}),s.addCommand("mceInsertClipboardContent",(d,m)=>{m.html&&Jx(s,m.html,m.internal,!1),m.text&&A0(s,m.text,!1)})},dz=(s,l,d)=>{if(s)try{return s.clearData(),s.setData("text/html",l),s.setData("text/plain",d),s.setData(Yx(),l),!0}catch{return!1}else return!1},VI=(s,l,d,m)=>{dz(s.clipboardData,l.html,l.text)?(s.preventDefault(),m()):d(l.html,m)},vP=s=>(l,d)=>{const{dom:m,selection:v}=s,w=m.create("div",{contenteditable:"false","data-mce-bogus":"all"}),$=m.create("div",{contenteditable:"true"},l);m.setStyles(w,{position:"fixed",top:"0",left:"-3000px",width:"1000px",overflow:"hidden"}),w.appendChild($),m.add(s.getBody(),w);const B=v.getRng();$.focus();const H=m.createRng();H.selectNodeContents($),v.setRng(H),Uf.setEditorTimeout(s,()=>{v.setRng(B),m.remove(w),d()},0)},tE=s=>({html:VV(s.selection.getContent({contextual:!0})),text:s.selection.getContent({format:"text"})}),fz=s=>!!s.dom.getParent(s.selection.getStart(),"td[data-mce-selected],th[data-mce-selected]",s.getBody()),OP=s=>!s.selection.isCollapsed()||fz(s),zI=s=>l=>{!l.isDefaultPrevented()&&OP(s)&&s.selection.isEditable()&&VI(l,tE(s),vP(s),()=>{if(Mn.browser.isChromium()||Mn.browser.isFirefox()){const d=s.selection.getRng();Uf.setEditorTimeout(s,()=>{s.selection.setRng(d),s.execCommand("Delete")},0)}else s.execCommand("Delete")})},hz=s=>l=>{!l.isDefaultPrevented()&&OP(s)&&VI(l,tE(s),vP(s),St)},WI=s=>{s.on("cut",zI(s)),s.on("copy",hz(s))},ZI=(s,l)=>{var d,m;return ke.getCaretRangeFromPoint((d=l.clientX)!==null&&d!==void 0?d:0,(m=l.clientY)!==null&&m!==void 0?m:0,s.getDoc())},mz=s=>{const l=s["text/plain"];return l?l.indexOf("file://")===0:!1},UI=(s,l)=>{s.focus(),l&&s.selection.setRng(l)},pz=s=>Ut(s.files,l=>/^image\//.test(l.type)),gz=(s,l,d,m)=>{const v=s.getParent(d,$=>gs(l,$));if(!ne(s.getParent(d,"summary")))return!0;if(v&&an(m,"text/html")){const $=new DOMParser().parseFromString(m["text/html"],"text/html").body;return!ne($.querySelector(v.nodeName.toLowerCase()))}else return!1},nE=s=>{s.on("input",l=>{const d=m=>ne(m.querySelector("summary"));if(l.inputType==="deleteByDrag"){const m=xt(s.dom.select("details"),d);Ne(m,v=>{Js(v.firstChild)&&v.firstChild.remove();const w=s.dom.create("summary");w.appendChild(Jl().dom),v.prepend(w)})}})},bz=(s,l)=>{Nw(s)&&s.on("dragend dragover draggesture dragdrop drop drag",d=>{d.preventDefault(),d.stopPropagation()}),Fb(s)||s.on("drop",d=>{const m=d.dataTransfer;m&&pz(m)&&d.preventDefault()}),s.on("drop",d=>{if(d.isDefaultPrevented())return;const m=ZI(s,d);if(Be(m))return;const v=L_(d.dataTransfer),w=$0(v,Yx());if((!BI(v)||mz(v))&&gP(s,d,m))return;const $=v[Yx()],B=$||v["text/html"]||v["text/plain"],H=gz(s.dom,s.schema,m.startContainer,v),G=l.get();G&&!H||B&&(d.preventDefault(),Uf.setEditorTimeout(s,()=>{s.undoManager.transact(()=>{($||G&&H)&&s.execCommand("Delete"),UI(s,m);const le=DI(B);v["text/html"]?Jx(s,le,w,!0):A0(s,le,!0)})}))}),s.on("dragstart",d=>{l.set(!0)}),s.on("dragover dragend",d=>{Fb(s)&&!l.get()&&(d.preventDefault(),UI(s,ZI(s,d))),d.type==="dragend"&&l.set(!1)}),nE(s)},qI=s=>{const l=v=>w=>{v(s,w)},d=Iw(s);Oe(d)&&s.on("PastePreProcess",l(d));const m=py(s);Oe(m)&&s.on("PastePostProcess",l(m))},vz=(s,l)=>{s.on("PastePreProcess",d=>{d.content=l(s,d.content,d.internal)})},Oz=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,yP=s=>cn.trim(s).replace(Oz,lu).toLowerCase(),XI=(s,l,d)=>{const m=_v(s);if(d||m==="all"||!wv(s))return l;const v=m?m.split(/[, ]/):[];if(v&&m!=="none"){const w=s.dom,$=s.selection.getNode();l=l.replace(/(<[^>]+) style="([^"]*)"([^>]*>)/gi,(B,H,G,le)=>{const ue=w.parseStyle(w.decode(G)),ge={};for(let He=0;He]+) style="([^"]*)"([^>]*>)/gi,"$1$3");return l=l.replace(/(<[^>]+) data-mce-style="([^"]+)"([^>]*>)/gi,(w,$,B,H)=>$+' style="'+B+'"'+H),l},yz=s=>{(Mn.browser.isChromium()||Mn.browser.isSafari())&&vz(s,XI)},_z=s=>{const l=Ai(!1),d=Ai(Qb(s)?"text":"html"),m=XV(s);yz(s),uz(s,d),qI(s),s.on("PreInit",()=>{WI(s),bz(s,l),bP(s,m,d)})},wz=s=>{s.on("click",l=>{s.dom.getParent(l.target,"details")&&l.preventDefault()})},Sz=s=>{s.parser.addNodeFilter("details",l=>{const d=bl(s);Ne(l,m=>{d==="expanded"?m.attr("open","open"):d==="collapsed"&&m.attr("open",null)})}),s.serializer.addNodeFilter("details",l=>{const d=iC(s);Ne(l,m=>{d==="expanded"?m.attr("open","open"):d==="collapsed"&&m.attr("open",null)})})},Cz=s=>{wz(s),Sz(s)},jI=Js,YI=un,kz=s=>ys(s.dom),xz=s=>wl(s.dom),GI=s=>l=>dt(qe.fromDom(s),l),Ez=(s,l,d)=>Ma(qe.fromDom(s),m=>xz(m)||d.isBlock(Os(m)),GI(l)).getOr(qe.fromDom(l)).dom,KI=(s,l)=>Ma(qe.fromDom(s),kz,GI(l)),JI=(s,l,d)=>{const m=new Hr(s,l),v=d?m.next.bind(m):m.prev.bind(m);let w=s;for(let $=d?s:v();$&&!jI($);$=v())_s($)&&(w=$);return w},Tz=(s,l,d)=>{const v=Dt.fromRangeStart(s).getNode(),w=Ez(v,l,d),$=JI(v,w,!1),B=JI(v,w,!0),H=document.createRange();return KI($,w).fold(()=>{YI($)?H.setStart($,0):H.setStartBefore($)},G=>H.setStartBefore(G.dom)),KI(B,w).fold(()=>{YI(B)?H.setEnd(B,B.data.length):H.setEndAfter(B)},G=>H.setEndAfter(G.dom)),H},eB=s=>{const l=Tz(s.selection.getRng(),s.getBody(),s.schema);s.selection.setRng(o_(l))},tB=s=>{s.on("mousedown",l=>{l.detail>=3&&(l.preventDefault(),eB(s))})};var H_;(function(s){s.Before="before",s.After="after"})(H_||(H_={}));const Az=(s,l)=>Math.abs(s.left-l),$z=(s,l)=>Math.abs(s.right-l),Pz=(s,l)=>s>=l.top&&s<=l.bottom,Dz=(s,l)=>s.topl.top,Rz=(s,l)=>{const d=dw(s,l)/Math.min(s.height,l.height);return Dz(s,l)&&d>.5},Mz=(s,l)=>{const d=xt(s,m=>Pz(l,m));return uw(d).fold(()=>[[],s],m=>{const{pass:v,fail:w}=pn(s,$=>Rz($,m));return[v,w]})},oE=(s,l)=>({node:s.node,position:Az(s,l)<$z(s,l)?H_.Before:H_.After}),nB=(s,l,d)=>l>s.left&&l{const v=ue=>_s(ue.node)?de.some(ue):Zn(ue.node)?_P(Gs(ue.node.childNodes),l,d,!1):de.none(),w=(ue,ge,Me)=>v(ge).filter(He=>Math.abs(Me(ue,l,d)-Me(He,l,d))<2&&un(He.node)),$=(ue,ge)=>{const Me=ms(ue,(He,$e)=>ge(He,l,d)-ge($e,l,d));return ws(Me,v).map(He=>m&&!un(He.node)&&Me.length>1?w(He,Me[1],ge).getOr(He):He)},[B,H]=Mz(h5(s),d),{pass:G,fail:le}=pn(H,ue=>ue.top$(le,ev)).orThunk(()=>$(G,ev))},oB=(s,l,d,m)=>{const v=(w,$)=>{const B=G=>Zn(G)&&G.classList.contains("mce-drag-container"),H=xt(w.dom.childNodes,ct(B));return $.fold(()=>_P(H,d,m,!0),G=>{const le=xt(H,ue=>ue!==G.dom);return _P(le,d,m,!0)}).orThunk(()=>(dt(w,s)?de.none():br(w)).bind(le=>v(le,de.some(w))))};return v(l,de.none())},sB=(s,l,d)=>{const m=qe.fromDom(s),v=uo(m),$=qe.fromPoint(v,l,d).filter(B=>sn(m,B)).getOr(m);return oB(m,$,l,d)},sE=(s,l,d)=>sB(s,l,d).filter(m=>Mg(m.node)).map(m=>oE(m,l)),rB=s=>{var l,d;const m=s.getBoundingClientRect(),v=s.ownerDocument,w=v.documentElement,$=v.defaultView;return{top:m.top+((l=$==null?void 0:$.scrollY)!==null&&l!==void 0?l:0)-w.clientTop,left:m.left+((d=$==null?void 0:$.scrollX)!==null&&d!==void 0?d:0)-w.clientLeft}},iB=s=>s.inline?rB(s.getBody()):{left:0,top:0},Nz=s=>{const l=s.getBody();return s.inline?{left:l.scrollLeft,top:l.scrollTop}:{left:0,top:0}},aB=s=>{const l=s.getBody(),d=s.getDoc().documentElement,m={left:l.scrollLeft,top:l.scrollTop},v={left:l.scrollLeft||d.scrollLeft,top:l.scrollTop||d.scrollTop};return s.inline?m:v},Iz=(s,l)=>{if(l.target.ownerDocument!==s.getDoc()){const d=rB(s.getContentAreaContainer()),m=aB(s);return{left:l.pageX-d.left+m.left,top:l.pageY-d.top+m.top}}return{left:l.pageX,top:l.pageY}},lB=(s,l,d)=>({pageX:d.left-s.left+l.left,pageY:d.top-s.top+l.top}),Bz=(s,l)=>lB(iB(s),Nz(s),Iz(s,l)),cB=s=>({target:s,srcElement:s}),Lz=(s,l,d,m)=>({...l,dataTransfer:m,type:s,...cB(d)}),M2=(s,l,d)=>{const m=dn("Function not supported on simulated event.");return{bubbles:!0,cancelBubble:!1,cancelable:!0,composed:!1,currentTarget:null,defaultPrevented:!1,eventPhase:0,isTrusted:!0,returnValue:!1,timeStamp:0,type:s,composedPath:m,initEvent:m,preventDefault:St,stopImmediatePropagation:St,stopPropagation:St,AT_TARGET:window.Event.AT_TARGET,BUBBLING_PHASE:window.Event.BUBBLING_PHASE,CAPTURING_PHASE:window.Event.CAPTURING_PHASE,NONE:window.Event.NONE,altKey:!1,button:0,buttons:0,clientX:0,clientY:0,ctrlKey:!1,metaKey:!1,movementX:0,movementY:0,offsetX:0,offsetY:0,pageX:0,pageY:0,relatedTarget:null,screenX:0,screenY:0,shiftKey:!1,x:0,y:0,detail:0,view:null,which:0,initUIEvent:m,initMouseEvent:m,getModifierState:m,dataTransfer:d,...cB(l)}},Fz=(s,l)=>{const d=B_(s);return l==="dragstart"?(yI(d),wI(d)):l==="drop"?(RV(d),iP(d)):(qx(d),SI(d)),d},Hz=(s,l,d,m)=>{const v=Fz(d,s);return De(m)?M2(s,l,v):Lz(s,m,l,v)},N2=32,Qz=100,rE=8,iE=16,uB=ys,Vz=fw(uB,wl),aE=(s,l,d)=>uB(d)&&d!==l&&s.isEditable(d.parentElement),dB=(s,l,d)=>Be(l)||l===d||s.dom.isChildOf(l,d)?!1:s.dom.isEditable(l),fB=(s,l,d,m)=>{const v=s.dom,w=l.cloneNode(!0);v.setStyles(w,{width:d,height:m}),v.setAttrib(w,"data-mce-selected",null);const $=v.create("div",{class:"mce-drag-container","data-mce-bogus":"all",unselectable:"on",contenteditable:"false"});return v.setStyles($,{position:"absolute",opacity:.5,overflow:"hidden",border:0,padding:0,margin:0,width:d,height:m}),v.setStyles(w,{margin:0,boxSizing:"border-box"}),$.appendChild(w),$},zz=(s,l)=>{s.parentNode!==l&&l.appendChild(s)},lE=(s,l)=>d=>()=>{const m=s==="left"?d.scrollX:d.scrollY;d.scroll({[s]:m+l,behavior:"smooth"})},hB=lE("left",-N2),Wz=lE("left",N2),mB=lE("top",-N2),cE=lE("top",N2),wP=(s,l,d,m,v,w,$,B,H,G,le,ue)=>{let ge=0,Me=0;s.style.left=l.pageX+"px",s.style.top=l.pageY+"px",l.pageX+d>v&&(ge=l.pageX+d-v),l.pageY+m>w&&(Me=l.pageY+m-w),s.style.width=d-ge+"px",s.style.height=m-Me+"px";const He=H.clientHeight,$e=H.clientWidth,Ve=$+H.getBoundingClientRect().top,rt=B+H.getBoundingClientRect().left;le.on(ft=>{ft.intervalId.clear(),ft.dragging&&ue&&($+rE>=He?ft.intervalId.set(cE(G)):$-rE<=0?ft.intervalId.set(mB(G)):B+rE>=$e?ft.intervalId.set(Wz(G)):B-rE<=0?ft.intervalId.set(hB(G)):Ve+iE>=window.innerHeight?ft.intervalId.set(cE(window)):Ve-iE<=0?ft.intervalId.set(mB(window)):rt+iE>=window.innerWidth?ft.intervalId.set(Wz(window)):rt-iE<=0&&ft.intervalId.set(hB(window)))})},I2=s=>{s&&s.parentNode&&s.parentNode.removeChild(s)},Zz=(s,l)=>{const d=s.getParent(l.parentNode,s.isBlock);I2(l),d&&d!==s.getRoot()&&s.isEmpty(d)&&Sd(qe.fromDom(d))},Uz=s=>s.button===0,pB=(s,l)=>({pageX:l.pageX-s.relX,pageY:l.pageY+5}),qz=(s,l)=>d=>{if(Uz(d)){const m=Gn(l.dom.getParents(d.target),Vz).getOr(null);if(Te(m)&&aE(l.dom,l.getBody(),m)){const v=l.dom.getPos(m),w=l.getBody(),$=l.getDoc().documentElement;s.set({element:m,dataTransfer:aP(),dragging:!1,screenX:d.screenX,screenY:d.screenY,maxX:(l.inline?w.scrollWidth:$.offsetWidth)-2,maxY:(l.inline?w.scrollHeight:$.offsetHeight)-2,relX:d.pageX-v.x,relY:d.pageY-v.y,width:m.offsetWidth,height:m.offsetHeight,ghost:fB(l,m,m.offsetWidth,m.offsetHeight),intervalId:lw(Qz)})}}},SP=(s,l,d)=>{s._selectionOverrides.hideFakeCaret(),sE(s.getBody(),l,d).fold(()=>s.selection.placeCaretAt(l,d),m=>{const v=s._selectionOverrides.showCaret(1,m.node,m.position===H_.Before,!1);v?s.selection.setRng(v):s.selection.placeCaretAt(l,d)})},Q_=(s,l,d,m,v)=>{l==="dragstart"&&xI(m,s.dom.getOuterHTML(d));const w=Hz(l,d,m,v);return s.dispatch(l,w)},Xz=(s,l)=>{const d=O1((v,w)=>SP(l,v,w),0);l.on("remove",d.cancel);const m=s;return v=>s.on(w=>{const $=Math.max(Math.abs(v.screenX-w.screenX),Math.abs(v.screenY-w.screenY));if(!w.dragging&&$>10){const B=Q_(l,"dragstart",w.element,w.dataTransfer,v);if(Te(B.dataTransfer)&&(w.dataTransfer=B.dataTransfer),B.isDefaultPrevented())return;w.dragging=!0,l.focus()}if(w.dragging){const B=v.currentTarget===l.getDoc().documentElement,H=pB(w,Bz(l,v));zz(w.ghost,l.getBody()),wP(w.ghost,H,w.width,w.height,w.maxX,w.maxY,v.clientY,v.clientX,l.getContentAreaContainer(),l.getWin(),m,B),d.throttle(v.clientX,v.clientY)}})},jz=s=>{const l=s.getSel();if(Te(l)){const m=l.getRangeAt(0).startContainer;return un(m)?m.parentNode:m}else return null},gB=(s,l)=>d=>{s.on(m=>{var v;if(m.intervalId.clear(),m.dragging){if(dB(l,jz(l.selection),m.element)){const w=(v=l.getDoc().elementFromPoint(d.clientX,d.clientY))!==null&&v!==void 0?v:l.getBody();Q_(l,"drop",w,m.dataTransfer,d).isDefaultPrevented()||l.undoManager.transact(()=>{Zz(l.dom,m.element),QV(m.dataTransfer).each(B=>l.insertContent(B)),l._selectionOverrides.hideFakeCaret()})}Q_(l,"dragend",l.getBody(),m.dataTransfer,d)}}),vB(s)},bB=(s,l,d)=>{s.on(m=>{m.intervalId.clear(),m.dragging&&d.fold(()=>Q_(l,"dragend",m.element,m.dataTransfer),v=>Q_(l,"dragend",m.element,m.dataTransfer,v))}),vB(s)},JU=(s,l)=>d=>bB(s,l,de.some(d)),vB=s=>{s.on(l=>{l.intervalId.clear(),I2(l.ghost)}),s.clear()},Yz=s=>{const l=fm(),d=Jr.DOM,m=document,v=qz(l,s),w=Xz(l,s),$=gB(l,s),B=JU(l,s);s.on("mousedown",v),s.on("mousemove",w),s.on("mouseup",$),d.bind(m,"mousemove",w),d.bind(m,"mouseup",B),s.on("remove",()=>{d.unbind(m,"mousemove",w),d.unbind(m,"mouseup",B)}),s.on("keydown",H=>{H.keyCode===zn.ESC&&bB(l,s,de.none())})},Gz=s=>{const l=v=>{if(!v.isDefaultPrevented()){const w=v.dataTransfer;w&&(gt(w.types,"Files")||w.files.length>0)&&(v.preventDefault(),v.type==="drop"&&Uk(s,"Dropped file type is not supported"))}},d=v=>{VC(s,v.target)&&l(v)},m=()=>{const v=Jr.DOM,w=s.dom,$=document,B=s.inline?s.getBody():s.getDoc(),H=["drop","dragover"];Ne(H,G=>{v.bind($,G,d),w.bind(B,G,l)}),s.on("remove",()=>{Ne(H,G=>{v.unbind($,G,d),w.unbind(B,G,l)})})};s.on("init",()=>{Uf.setEditorTimeout(s,m,0)})},OB=s=>{Yz(s),Lb(s)&&Gz(s)},Kz=s=>{const l=O1(()=>{if(!s.removed&&s.getBody().contains(document.activeElement)){const d=s.selection.getRng();if(d.collapsed){const m=sx(s,d,!1);s.selection.setRng(m)}}},0);s.on("focus",()=>{l.throttle()}),s.on("blur",()=>{l.cancel()})},yB=s=>{s.on("init",()=>{s.on("focusin",l=>{const d=l.target;if(Qr(d)){const m=lO(s.getBody(),d),v=ys(m)?m:d;s.selection.getNode()!==v&&__(s,v).each(w=>s.selection.setRng(w))}})})},B2=ys,_B=(s,l)=>lO(s.getBody(),l),Jz=s=>{const l=s.selection,d=s.dom,m=s.getBody(),v=Dv(s,m,d.isBlock,()=>c0(s)),w="sel-"+d.uniqueId(),$="data-mce-selected";let B;const H=Fn=>Te(Fn)&&d.hasClass(Fn,"mce-offscreen-selection"),G=Fn=>Fn!==m&&(B2(Fn)||Qr(Fn))&&d.isChildOf(Fn,m)&&d.isEditable(Fn.parentNode),le=Fn=>{Fn&&l.setRng(Fn)},ue=(Fn,zt,It,Jt=!0)=>s.dispatch("ShowCaret",{target:zt,direction:Fn,before:It}).isDefaultPrevented()?null:(Jt&&l.scrollIntoView(zt,Fn===-1),v.show(It,zt)),ge=Fn=>{Fn.hasAttribute("data-mce-caret")&&(qu(Fn),l.scrollIntoView(Fn))},Me=()=>{s.on("click",zt=>{d.isEditable(zt.target)||(zt.preventDefault(),s.focus())}),s.on("blur NewBlock",kt),s.on("ResizeWindow FullscreenStateChanged",v.reposition),s.on("tap",zt=>{const It=zt.target,Jt=_B(s,It);B2(Jt)?(zt.preventDefault(),__(s,Jt).each(ut)):G(It)&&__(s,It).each(ut)},!0),s.on("mousedown",zt=>{const It=zt.target;if(It!==m&&It.nodeName!=="HTML"&&!d.isChildOf(It,m)||!x8(s,zt.clientX,zt.clientY))return;kt(),vn();const Jt=_B(s,It);B2(Jt)?(zt.preventDefault(),__(s,Jt).each(ut)):sE(m,zt.clientX,zt.clientY).each(qn=>{zt.preventDefault();const mo=ue(1,qn.node,qn.position===H_.Before,!1);le(mo),Ha(Jt)?Jt.focus():s.getBody().focus()})}),s.on("keypress",zt=>{zn.modifierPressed(zt)||B2(l.getNode())&&zt.preventDefault()}),s.on("GetSelectionRange",zt=>{let It=zt.range;if(B){if(!B.parentNode){B=null;return}It=It.cloneRange(),It.selectNode(B),zt.range=It}}),s.on("SetSelectionRange",zt=>{zt.range=Ve(zt.range);const It=ut(zt.range,zt.forward);It&&(zt.range=It)});const Fn=zt=>Zn(zt)&&zt.id==="mcepastebin";s.on("AfterSetSelectionRange",zt=>{const It=zt.range,Jt=It.startContainer.parentElement;!$e(It)&&!Fn(Jt)&&vn(),H(Jt)||kt()}),OB(s),Kz(s),yB(s)},He=Fn=>ao(Fn)||Cl(Fn)||Bc(Fn),$e=Fn=>He(Fn.startContainer)||He(Fn.endContainer),Ve=Fn=>{const zt=s.schema.getVoidElements(),It=d.createRng(),Jt=Fn.startContainer,qn=Fn.startOffset,mo=Fn.endContainer,es=Fn.endOffset;return an(zt,Jt.nodeName.toLowerCase())?qn===0?It.setStartBefore(Jt):It.setStartAfter(Jt):It.setStart(Jt,qn),an(zt,mo.nodeName.toLowerCase())?es===0?It.setEndBefore(mo):It.setEndAfter(mo):It.setEnd(mo,es),It},rt=(Fn,zt)=>{const It=qe.fromDom(s.getBody()),Jt=s.getDoc(),qn=Na(It,"#"+w).getOrThunk(()=>{const Es=qe.fromHtml('
    ',Jt);return Sr(Es,"id",w),di(It,Es),Es}),mo=d.createRng();ou(qn),lr(qn,[qe.fromText(Fs,Jt),qe.fromDom(zt),qe.fromText(Fs,Jt)]),mo.setStart(qn.dom.firstChild,1),mo.setEnd(qn.dom.lastChild,0),Ba(qn,{top:d.getPos(Fn,s.getBody()).y+"px"}),NC(qn);const es=l.getSel();return es&&(es.removeAllRanges(),es.addRange(mo)),mo},ft=Fn=>{const zt=Fn.cloneNode(!0),It=s.dispatch("ObjectSelected",{target:Fn,targetClone:zt});if(It.isDefaultPrevented())return null;const Jt=rt(Fn,It.targetClone),qn=qe.fromDom(Fn);return Ne(Fa(qe.fromDom(s.getBody()),`*[${$}]`),mo=>{dt(qn,mo)||ii(mo,$)}),d.getAttrib(Fn,$)||Fn.setAttribute($,"1"),B=Fn,vn(),Jt},ut=(Fn,zt)=>{if(!Fn)return null;if(Fn.collapsed){if(!$e(Fn)){const mo=zt?1:-1,es=El(mo,m,Fn),Es=es.getNode(!zt);if(Te(Es)){if(Mg(Es))return ue(mo,Es,zt?!es.isAtEnd():!1,!1);if(xn(Es)&&ys(Es.nextSibling)){const hi=d.createRng();return hi.setStart(Es,0),hi.setEnd(Es,0),hi}}const Ir=es.getNode(zt);if(Te(Ir)){if(Mg(Ir))return ue(mo,Ir,zt?!1:!es.isAtEnd(),!1);if(xn(Ir)&&ys(Ir.previousSibling)){const hi=d.createRng();return hi.setStart(Ir,1),hi.setEnd(Ir,1),hi}}}return null}let It=Fn.startContainer,Jt=Fn.startOffset;const qn=Fn.endOffset;if(un(It)&&Jt===0&&B2(It.parentNode)&&(It=It.parentNode,Jt=d.nodeIndex(It),It=It.parentNode),!Zn(It))return null;if(qn===Jt+1&&It===Fn.endContainer){const mo=It.childNodes[Jt];if(G(mo))return ft(mo)}return null},kt=()=>{B&&B.removeAttribute($),Na(qe.fromDom(s.getBody()),"#"+w).each($s),B=null},en=()=>{v.destroy(),B=null},vn=()=>{v.hide()};return Y1(s)||Me(),{showCaret:ue,showBlockCaretContainer:ge,hideFakeCaret:vn,destroy:en}},eW=(s,l)=>{let d=l;for(let m=s.previousSibling;un(m);m=m.previousSibling)d+=m.data.length;return d},wB=(s,l,d,m,v)=>{if(un(d)&&(m<0||m>d.data.length))return[];const w=v&&un(d)?[eW(d,m)]:[m];let $=d;for(;$!==l&&$.parentNode;)w.push(s.nodeIndex($,v)),$=$.parentNode;return $===l?w.reverse():[]},uE=(s,l,d,m,v,w,$=!1)=>{const B=wB(s,l,d,m,$),H=wB(s,l,v,w,$);return{start:B,end:H}},tW=(s,l)=>{const d=l.slice(),m=d.pop();return yt(m)?Dn(d,(w,$)=>w.bind(B=>de.from(B.childNodes[$])),de.some(s)).bind(w=>un(w)&&(m<0||m>w.data.length)?de.none():de.some({node:w,offset:m})):de.none()},SB=(s,l)=>tW(s,l.start).bind(({node:d,offset:m})=>tW(s,l.end).map(({node:v,offset:w})=>{const $=document.createRange();return $.setStart(d,m),$.setEnd(v,w),$})),CB=(s,l,d,m=!1)=>uE(s,l,d.startContainer,d.startOffset,d.endContainer,d.endOffset,m),V_=(s,l,d)=>{if(l&&s.isEmpty(l)&&!d(l)){const m=l.parentNode;s.remove(l,un(l.firstChild)&&hh(l.firstChild.data)),V_(s,m,d)}},z_=(s,l,d,m=!0)=>{const v=l.startContainer.parentNode,w=l.endContainer.parentNode;l.deleteContents(),m&&!d(l.startContainer)&&(un(l.startContainer)&&l.startContainer.data.length===0&&s.remove(l.startContainer),un(l.endContainer)&&l.endContainer.data.length===0&&s.remove(l.endContainer),V_(s,v,d),v!==w&&V_(s,w,d))},CP=(s,l)=>de.from(s.dom.getParent(l.startContainer,s.dom.isBlock)),kB=(s,l,d)=>{const m=s.dynamicPatternsLookup({text:d,block:l});return{...s,blockPatterns:vm(m).concat(s.blockPatterns),inlinePatterns:x1(m).concat(s.inlinePatterns)}},xB=(s,l,d,m)=>{const v=s.createRng();return v.setStart(l,0),v.setEnd(d,m),v.toString()},EB=s=>/^\s[^\s]/.test(s),L2=(s,l,d)=>{dN(l,0,l).each(v=>{const w=v.container;Cx(w,d.start.length,l).each(H=>{const G=s.createRng();G.setStart(w,0),G.setEnd(H.container,H.offset),z_(s,G,le=>le===l)});const $=qe.fromDom(w),B=Ic($);EB(B)&&tl($,B.slice(1))})},TB=(s,l)=>{const d=s.dom,m=l.pattern,v=SB(d.getRoot(),l.range).getOrDie("Unable to resolve path range"),w=($,B)=>{const H=B.get($);return _e(H)&&Oo(H).exists(G=>an(G,"block"))};return CP(s,v).each($=>{m.type==="block-format"?w(m.format,s.formatter)&&s.undoManager.transact(()=>{L2(s.dom,$,m),s.formatter.apply(m.format)}):m.type==="block-command"&&s.undoManager.transact(()=>{L2(s.dom,$,m),s.execCommand(m.cmd,!1,m.value)})}),!0},AB=s=>ms(s,(l,d)=>d.start.length-l.start.length),nW=(s,l)=>{const d=AB(s),m=l.replace(Fs," ");return Gn(d,v=>l.indexOf(v.start)===0||m.indexOf(v.start)===0)},oW=(s,l,d,m)=>{var v;const w=s.dom,$=Vl(s);if(!w.is(l,$))return[];const B=(v=l.textContent)!==null&&v!==void 0?v:"";return nW(d.blockPatterns,B).map(H=>cn.trim(B).length===H.start.length?[]:[{pattern:H,range:uE(w,w.getRoot(),l,0,l,0,m)}]).getOr([])},$B=(s,l)=>{if(l.length===0)return;const d=s.selection.getBookmark();Ne(l,m=>TB(s,m)),s.selection.moveToBookmark(d)},PB=(s,l)=>s.create("span",{"data-mce-type":"bookmark",id:l}),dE=(s,l)=>{const d=s.createRng();return d.setStartAfter(l.start),d.setEndBefore(l.end),d},DB=(s,l,d)=>{const m=SB(s.getRoot(),d).getOrDie("Unable to resolve path range"),v=m.startContainer,w=m.endContainer,$=m.endOffset===0?w:w.splitText(m.endOffset),B=m.startOffset===0?v:v.splitText(m.startOffset),H=B.parentNode,G=$.parentNode;return{prefix:l,end:G.insertBefore(PB(s,l+"-end"),$),start:H.insertBefore(PB(s,l+"-start"),B)}},fE=(s,l,d)=>{V_(s,s.get(l.prefix+"-end"),d),V_(s,s.get(l.prefix+"-start"),d)},kP=s=>s.start.length===0,sW=s=>(l,d)=>{const v=l.data.substring(0,d),w=v.lastIndexOf(s.charAt(s.length-1)),$=v.lastIndexOf(s);return $!==-1?$+s.length:w!==-1?w+1:-1},RB=(s,l,d,m)=>{const v=l.start;return _2(s,m.container,m.offset,sW(v),d).bind($=>{var B,H;const G=(H=(B=d.textContent)===null||B===void 0?void 0:B.indexOf(v))!==null&&H!==void 0?H:-1;if(G!==-1&&$.offset>=G+v.length){const ue=s.createRng();return ue.setStart($.container,$.offset-v.length),ue.setEnd($.container,$.offset),de.some(ue)}else{const ue=$.offset-v.length;return y2($.container,ue,d).map(ge=>{const Me=s.createRng();return Me.setStart(ge.container,ge.offset),Me.setEnd($.container,$.offset),Me}).filter(ge=>ge.toString()===v).orThunk(()=>RB(s,l,d,Lm($.container,0)))}})},rW=(s,l,d,m,v,w=!1)=>{if(l.start.length===0&&!w){const $=s.createRng();return $.setStart(d,m),$.setEnd(d,m),de.some($)}return O2(d,m,v).bind($=>RB(s,l,v,$).bind(H=>{var G;if(w){if(H.endContainer===$.container&&H.endOffset===$.offset)return de.none();if($.offset===0&&((G=H.endContainer.textContent)===null||G===void 0?void 0:G.length)===H.endOffset)return de.none()}return de.some(H)}))},iW=(s,l,d,m)=>{const v=s.dom,w=v.getRoot(),$=d.pattern,B=d.position.container,H=d.position.offset;return y2(B,H-d.pattern.end.length,l).bind(G=>{const le=uE(v,w,G.container,G.offset,B,H,m);if(kP($))return de.some({matches:[{pattern:$,startRng:le,endRng:le}],position:G});{const ue=hE(s,d.remainingPatterns,G.container,G.offset,l,m),ge=ue.getOr({matches:[],position:G}),Me=ge.position;return rW(v,$,Me.container,Me.offset,l,ue.isNone()).map($e=>{const Ve=CB(v,w,$e,m);return{matches:ge.matches.concat([{pattern:$,startRng:Ve,endRng:le}]),position:Lm($e.startContainer,$e.startOffset)}})}})},hE=(s,l,d,m,v,w)=>{const $=s.dom;return O2(d,m,$.getRoot()).bind(B=>{const H=xB($,v,d,m);for(let G=0;G0)return hE(s,l,d,m-1,v,w);if(ge.isSome())return ge}return de.none()})},xP=(s,l,d)=>{s.selection.setRng(d),l.type==="inline-format"?Ne(l.format,m=>{s.formatter.apply(m)}):s.execCommand(l.cmd,!1,l.value)},MB=(s,l,d,m)=>{const v=dE(s.dom,d);z_(s.dom,v,m),xP(s,l,v)},EP=(s,l,d,m,v)=>{const w=s.dom,$=dE(w,m),B=dE(w,d);z_(w,B,v),z_(w,$,v);const H={prefix:d.prefix,start:d.end,end:m.start},G=dE(w,H);xP(s,l,G)},TP=(s,l)=>{const d=cp("mce_textpattern"),m=kn(l,(v,w)=>{const $=DB(s,d+`_end${v.length}`,w.endRng);return v.concat([{...w,endMarker:$}])},[]);return kn(m,(v,w)=>{const $=m.length-v.length-1,B=kP(w.pattern)?w.endMarker:DB(s,d+`_start${$}`,w.startRng);return v.concat([{...w,startMarker:B}])},[])},aW=s=>ms(s,(l,d)=>d.end.length-l.end.length),AP=(s,l)=>{const d=Vs(s,m=>Ut(l,v=>m.pattern.start===v.pattern.start&&m.pattern.end===v.pattern.end));return s.length===l.length?d?s:l:s.length>l.length?s:l},NB=(s,l,d,m,v,w)=>{const $=hE(s,v.inlinePatterns,d,m,l,w).fold(()=>[],H=>H.matches),B=hE(s,aW(v.inlinePatterns),d,m,l,w).fold(()=>[],H=>H.matches);return AP($,B)},IB=(s,l)=>{if(l.length===0)return;const d=s.dom,m=s.selection.getBookmark(),v=TP(d,l);Ne(v,w=>{const $=d.getParent(w.startMarker.start,d.isBlock),B=H=>H===$;kP(w.pattern)?MB(s,w.pattern,w.endMarker,B):EP(s,w.pattern,w.startMarker,w.endMarker,B),fE(d,w.endMarker,B),fE(d,w.startMarker,B)}),s.selection.moveToBookmark(m)},BB=(s,l)=>{const d=s.selection.getRng();return CP(s,d).map(m=>{var v;const w=Math.max(0,d.startOffset),$=kB(l,m,(v=m.textContent)!==null&&v!==void 0?v:""),B=NB(s,m,d.startContainer,w,$,!0),H=oW(s,m,$,!0);return H.length>0||B.length>0?(s.undoManager.add(),s.undoManager.extra(()=>{s.execCommand("mceInsertNewLine")},()=>{Ae(s),IB(s,B),$B(s,H);const G=s.selection.getRng(),le=O2(G.startContainer,G.startOffset,s.dom.getRoot());s.execCommand("mceInsertNewLine"),le.each(ue=>{const ge=ue.container;ge.data.charAt(ue.offset-1)===Km&&(ge.deleteData(ue.offset-1,1),V_(s.dom,ge.parentNode,Me=>Me===s.dom.getRoot()))})}),!0):!1}).getOr(!1)},lW=(s,l)=>{const d=s.selection.getRng();CP(s,d).map(m=>{const v=Math.max(0,d.startOffset-1),w=xB(s.dom,m,d.startContainer,v),$=kB(l,m,w),B=NB(s,m,d.startContainer,v,$,!1);B.length>0&&s.undoManager.transact(()=>{IB(s,B)})})},LB=(s,l,d)=>{for(let m=0;mLB(s,l,(d,m)=>d===m.keyCode&&!zn.modifierPressed(m)),uW=(s,l)=>LB(s,l,(d,m)=>d.charCodeAt(0)===m.charCode),dW=s=>{const l=[",",".",";",":","!","?"],d=[32],m=()=>Wc(zb(s),Bw(s)),v=()=>kv(s);s.on("keydown",$=>{if($.keyCode===13&&!zn.modifierPressed($)&&s.selection.isCollapsed()){const B=m();(B.inlinePatterns.length>0||B.blockPatterns.length>0||v())&&BB(s,B)&&$.preventDefault()}},!0);const w=()=>{if(s.selection.isCollapsed()){const $=m();($.inlinePatterns.length>0||v())&&lW(s,$)}};s.on("keyup",$=>{cW(d,$)&&w()}),s.on("keypress",$=>{uW(l,$)&&Uf.setEditorTimeout(s,w)})},fW=s=>{dW(s)},hW=s=>{const l=cn.each,d=zn.BACKSPACE,m=zn.DELETE,v=s.dom,w=s.selection,$=s.parser,B=Mn.browser,H=B.isFirefox(),G=B.isChromium()||B.isSafari(),le=Mn.deviceType.isiPhone()||Mn.deviceType.isiPad(),ue=Mn.os.isMacOS()||Mn.os.isiOS(),ge=(to,Ho)=>{try{s.getDoc().execCommand(to,!1,String(Ho))}catch{}},Me=to=>to.isDefaultPrevented(),He=()=>{const to=Sn=>{const Qo=v.create("body"),Qs=Sn.cloneContents();return Qo.appendChild(Qs),w.serializer.serialize(Qo,{format:"html"})},Ho=Sn=>{const Qo=to(Sn),Qs=v.createRng();Qs.selectNode(s.getBody());const ni=to(Qs);return Qo===ni};s.on("keydown",Sn=>{const Qo=Sn.keyCode;if(!Me(Sn)&&(Qo===m||Qo===d)&&s.selection.isEditable()){const Qs=s.selection.isCollapsed(),ni=s.getBody();if(Qs&&!Fi(qe.fromDom(ni))||!Qs&&!Ho(s.selection.getRng()))return;Sn.preventDefault(),s.setContent(""),ni.firstChild&&v.isBlock(ni.firstChild)?s.selection.setCursorLocation(ni.firstChild,0):s.selection.setCursorLocation(ni,0),s.nodeChanged()}})},$e=()=>{s.shortcuts.add("meta+a",null,"SelectAll")},Ve=()=>{s.inline||v.bind(s.getDoc(),"mousedown mouseup",to=>{let Ho;if(to.target===s.getDoc().documentElement)if(Ho=w.getRng(),s.getBody().focus(),to.type==="mousedown"){if(ao(Ho.startContainer))return;w.placeCaretAt(to.clientX,to.clientY)}else w.setRng(Ho)})},rt=()=>{s.on("keydown",to=>{if(!Me(to)&&to.keyCode===d){if(!s.getBody().getElementsByTagName("hr").length)return;if(w.isCollapsed()&&w.getRng().startOffset===0){const Ho=w.getNode(),Sn=Ho.previousSibling;if(Ho.nodeName==="HR"){v.remove(Ho),to.preventDefault();return}Sn&&Sn.nodeName&&Sn.nodeName.toLowerCase()==="hr"&&(v.remove(Sn),to.preventDefault())}}})},ft=()=>{Range.prototype.getClientRects||s.on("mousedown",to=>{if(!Me(to)&&to.target.nodeName==="HTML"){const Ho=s.getBody();Ho.blur(),Uf.setEditorTimeout(s,()=>{Ho.focus()})}})},ut=()=>{const to=fy(s);s.on("click",Ho=>{const Sn=Ho.target;/^(IMG|HR)$/.test(Sn.nodeName)&&v.isEditable(Sn)&&(Ho.preventDefault(),s.selection.select(Sn),s.nodeChanged()),Sn.nodeName==="A"&&v.hasClass(Sn,to)&&Sn.childNodes.length===0&&v.isEditable(Sn.parentNode)&&(Ho.preventDefault(),w.select(Sn))})},kt=()=>{const to=()=>{const Sn=v.getAttribs(w.getStart().cloneNode(!1));return()=>{const Qo=w.getStart();Qo!==s.getBody()&&(v.setAttrib(Qo,"style",null),l(Sn,Qs=>{Qo.setAttributeNode(Qs.cloneNode(!0))}))}},Ho=()=>!w.isCollapsed()&&v.getParent(w.getStart(),v.isBlock)!==v.getParent(w.getEnd(),v.isBlock);s.on("keypress",Sn=>{let Qo;return!Me(Sn)&&(Sn.keyCode===8||Sn.keyCode===46)&&Ho()?(Qo=to(),s.getDoc().execCommand("delete",!1),Qo(),Sn.preventDefault(),!1):!0}),v.bind(s.getDoc(),"cut",Sn=>{if(!Me(Sn)&&Ho()){const Qo=to();Uf.setEditorTimeout(s,()=>{Qo()})}})},en=()=>{s.on("keydown",to=>{if(!Me(to)&&to.keyCode===d&&w.isCollapsed()&&w.getRng().startOffset===0){const Ho=w.getNode().previousSibling;if(Ho&&Ho.nodeName&&Ho.nodeName.toLowerCase()==="table")return to.preventDefault(),!1}return!0})},vn=()=>{s.on("keydown",to=>{if(Me(to)||to.keyCode!==zn.BACKSPACE)return;let Ho=w.getRng();const Sn=Ho.startContainer,Qo=Ho.startOffset,Qs=v.getRoot();let ni=Sn;if(!(!Ho.collapsed||Qo!==0)){for(;ni.parentNode&&ni.parentNode.firstChild===ni&&ni.parentNode!==Qs;)ni=ni.parentNode;ni.nodeName==="BLOCKQUOTE"&&(s.formatter.toggle("blockquote",void 0,ni),Ho=v.createRng(),Ho.setStart(Sn,0),Ho.setEnd(Sn,0),w.setRng(Ho))}})},Fn=()=>{const to=()=>{ge("StyleWithCSS",!1),ge("enableInlineTableEditing",!1),xg(s)||ge("enableObjectResizing",!1)};$1(s)||s.on("BeforeExecCommand mousedown",to)},zt=()=>{const to=()=>{l(v.select("a:not([data-mce-block])"),Ho=>{var Sn;let Qo=Ho.parentNode;const Qs=v.getRoot();if((Qo==null?void 0:Qo.lastChild)===Ho){for(;Qo&&!v.isBlock(Qo);){if(((Sn=Qo.parentNode)===null||Sn===void 0?void 0:Sn.lastChild)!==Qo||Qo===Qs)return;Qo=Qo.parentNode}v.add(Qo,"br",{"data-mce-bogus":1})}})};s.on("SetContent ExecCommand",Ho=>{(Ho.type==="setcontent"||Ho.command==="mceInsertLink")&&to()})},It=()=>{s.on("init",()=>{ge("DefaultParagraphSeparator",Vl(s))})},Jt=to=>{const Ho=to.getBody(),Sn=to.selection.getRng();return Sn.startContainer===Sn.endContainer&&Sn.startContainer===Ho&&Sn.startOffset===0&&Sn.endOffset===Ho.childNodes.length},qn=()=>{s.on("keyup focusin mouseup",to=>{!zn.modifierPressed(to)&&!Jt(s)&&w.normalize()},!0)},mo=()=>{s.contentStyles.push("img:-moz-broken {-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}")},es=()=>{s.inline||s.on("keydown",()=>{document.activeElement===document.body&&s.getWin().focus()})},Es=()=>{s.inline||(s.contentStyles.push("body {min-height: 150px}"),s.on("click",to=>{let Ho;to.target.nodeName==="HTML"&&(Ho=s.selection.getRng(),s.getBody().focus(),s.selection.setRng(Ho),s.selection.normalize(),s.nodeChanged())}))},Ir=()=>{ue&&s.on("keydown",to=>{zn.metaKeyPressed(to)&&!to.shiftKey&&(to.keyCode===37||to.keyCode===39)&&(to.preventDefault(),s.selection.getSel().modify("move",to.keyCode===37?"backward":"forward","lineboundary"))})},hi=()=>{s.on("click",to=>{let Ho=to.target;do if(Ho.tagName==="A"){to.preventDefault();return}while(Ho=Ho.parentNode)}),s.contentStyles.push(".mce-content-body {-webkit-touch-callout: none}")},pa=()=>{s.on("init",()=>{s.dom.bind(s.getBody(),"submit",to=>{to.preventDefault()})})},Cc=()=>{$.addNodeFilter("br",to=>{let Ho=to.length;for(;Ho--;)to[Ho].attr("class")==="Apple-interchange-newline"&&to[Ho].remove()})},qr=St,En=()=>{if(!H||s.removed)return!1;const to=s.selection.getSel();return!to||!to.rangeCount||to.rangeCount===0},Qn=()=>{G&&(Ve(),ut(),pa(),$e(),le&&(es(),Es(),hi())),H&&(ft(),Fn(),mo(),Ir())},or=()=>{s.on("drop",to=>{var Ho;const Sn=(Ho=to.dataTransfer)===null||Ho===void 0?void 0:Ho.getData("text/html");j(Sn)&&/^]*>$/.test(Sn)&&s.dispatch("dragend",new window.DragEvent("dragend",to))})},Rs=()=>{vn(),He(),Mn.windowsPhone||qn(),G&&(Ve(),ut(),It(),pa(),en(),Cc(),le?(es(),Es(),hi()):$e()),H&&(rt(),ft(),kt(),Fn(),zt(),mo(),Ir(),en(),or())};return Y1(s)?Qn():Rs(),{refreshContentEditable:qr,isHidden:En}},mE=Jr.DOM,mW=(s,l)=>{const d=qe.fromDom(s.getBody()),m=ah(pl(d)),v=qe.fromTag("style");Sr(v,"type","text/css"),di(v,qe.fromText(l)),di(m,v),s.on("remove",()=>{$s(v)})},$P=s=>s.inline?s.getElement().nodeName.toLowerCase():void 0,PP=s=>Ft(s,l=>De(l)===!1),FB=s=>{const l=s.options.get,d=s.editorUpload.blobCache;return PP({allow_conditional_comments:l("allow_conditional_comments"),allow_html_data_urls:l("allow_html_data_urls"),allow_svg_data_urls:l("allow_svg_data_urls"),allow_html_in_named_anchor:l("allow_html_in_named_anchor"),allow_script_urls:l("allow_script_urls"),allow_unsafe_link_target:l("allow_unsafe_link_target"),convert_unsafe_embeds:l("convert_unsafe_embeds"),convert_fonts_to_spans:l("convert_fonts_to_spans"),fix_list_elements:l("fix_list_elements"),font_size_legacy_values:l("font_size_legacy_values"),forced_root_block:l("forced_root_block"),forced_root_block_attrs:l("forced_root_block_attrs"),preserve_cdata:l("preserve_cdata"),inline_styles:l("inline_styles"),root_name:$P(s),sandbox_iframes:l("sandbox_iframes"),sanitize:l("xss_sanitization"),validate:!0,blob_cache:d,document:s.getDoc()})},HB=s=>{const l=s.options.get;return PP({custom_elements:l("custom_elements"),extended_valid_elements:l("extended_valid_elements"),invalid_elements:l("invalid_elements"),invalid_styles:l("invalid_styles"),schema:l("schema"),valid_children:l("valid_children"),valid_classes:l("valid_classes"),valid_elements:l("valid_elements"),valid_styles:l("valid_styles"),verify_html:l("verify_html"),padd_empty_block_inline_children:l("format_empty_lines")})},pW=s=>{const l=s.options.get;return{...FB(s),...HB(s),...PP({remove_trailing_brs:l("remove_trailing_brs"),pad_empty_with_br:l("pad_empty_with_br"),url_converter:l("url_converter"),url_converter_scope:l("url_converter_scope"),element_format:l("element_format"),entities:l("entities"),entity_encoding:l("entity_encoding"),indent:l("indent"),indent_after:l("indent_after"),indent_before:l("indent_before")})}},gW=s=>{const l=Mm(FB(s),s.schema);return l.addAttributeFilter("src,href,style,tabindex",(d,m)=>{const v=s.dom,w="data-mce-"+m;let $=d.length;for(;$--;){const B=d[$];let H=B.attr(m);if(H&&!B.attr(w)){if(H.indexOf("data:")===0||H.indexOf("blob:")===0)continue;m==="style"?(H=v.serializeStyle(v.parseStyle(H),B.name),H.length||(H=null),B.attr(w,H),B.attr(m,H)):m==="tabindex"?(B.attr(w,H),B.attr(m,null)):B.attr(w,s.convertURL(H,m,B.name))}}}),l.addNodeFilter("script",d=>{let m=d.length;for(;m--;){const v=d[m],w=v.attr("type")||"no/type";w.indexOf("mce-")!==0&&v.attr("type","mce-"+w)}}),Cv(s)&&l.addNodeFilter("#cdata",d=>{var m;let v=d.length;for(;v--;){const w=d[v];w.type=8,w.name="#comment",w.value="[CDATA["+s.dom.encode((m=w.value)!==null&&m!==void 0?m:"")+"]]"}}),l.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",d=>{let m=d.length;const v=s.schema.getNonEmptyElements();for(;m--;){const w=d[m];w.isEmpty(v)&&w.getAll("br").length===0&&w.append(new Iu("br",1))}}),l},bW=s=>{const l=hy(s);l&&Uf.setEditorTimeout(s,()=>{let d;l===!0?d=s:d=s.editorManager.get(l),d&&!d.destroyed&&(d.focus(),d.selection.scrollIntoView())},100)},pE=s=>{const l=s.dom.getRoot();!s.inline&&(!Ry(s)||s.selection.getStart(!0)===l)&&hu(l).each(d=>{const m=d.getNode(),v=wd(m)?hu(m).getOr(d):d;s.selection.setRng(v.toRange())})},vW=s=>{s.bindPendingEventDelegates(),s.initialized=!0,Xv(s),s.focus(!0),pE(s),s.nodeChanged({initial:!0});const l=Dw(s);Oe(l)&&l.call(s,s),bW(s)},DP=s=>s.inline?s.ui.styleSheetLoader:s.dom.styleSheetLoader,OW=(s,l,d)=>{const{pass:m,fail:v}=pn(l,B=>tinymce.Resource.has(S3(B))),$=[...m.map(B=>{const H=tinymce.Resource.get(S3(B));return j(H)?Promise.resolve(DP(s).loadRawCss(B,H)):Promise.resolve()}),DP(s).loadAll(v)];return s.inline?$:$.concat([s.ui.styleSheetLoader.loadAll(d)])},QB=s=>{const l=DP(s),d=ry(s),m=s.contentCSS,v=()=>{l.unloadAll(m),s.inline||s.ui.styleSheetLoader.unloadAll(d)},w=()=>{s.removed?v():s.on("remove",v)};if(s.contentStyles.length>0){let H="";cn.each(s.contentStyles,G=>{H+=G+`\r -`}),s.dom.addStyle(H)}const $=Promise.all(OW(s,m,d)).then(w).catch(w),B=Nb(s);return B&&mW(s,B),$},yW=s=>{const l=s.getDoc(),d=s.getBody();Fg(s),Mw(s)||(l.body.spellcheck=!1,mE.setAttrib(d,"spellcheck","false")),s.quirks=hW(s),tT(s);const m=Cw(s);m!==void 0&&(d.dir=m);const v=my(s);v&&s.on("BeforeSetContent",w=>{cn.each(v,$=>{w.content=w.content.replace($,B=>"")})}),s.on("SetContent",()=>{s.addVisual(s.getBody())}),s.on("compositionstart compositionend",w=>{s.composing=w.type==="compositionstart"})},_W=s=>{Y1(s)||s.load({initial:!0,format:"html"}),s.startContent=s.getContent({format:"raw"})},RP=s=>{s.removed!==!0&&(_W(s),vW(s))},wW=s=>{let l=!1;const d=setTimeout(()=>{l||s.setProgressState(!0)},500);return()=>{clearTimeout(d),l=!0,s.setProgressState(!1)}},VB=s=>{const l=s.getElement();let d=s.getDoc();s.inline&&(mE.addClass(l,"mce-content-body"),s.contentDocument=d=document,s.contentWindow=window,s.bodyElement=l,s.contentAreaContainer=l);const m=s.getBody();m.disabled=!0,s.readonly=$1(s),s._editableRoot=td(s),!s.readonly&&s.hasEditableRoot()&&(s.inline&&mE.getStyle(m,"position",!0)==="static"&&(m.style.position="relative"),m.contentEditable="true"),m.disabled=!1,s.editorUpload=Z8(s),s.schema=Df(HB(s)),s.dom=Jr(d,{keep_values:!0,url_converter:s.convertURL,url_converter_scope:s,update_styles:!0,root_element:s.inline?s.getBody():null,collect:s.inline,schema:s.schema,contentCssCors:Rh(s),referrerPolicy:fs(s),onSetAttrib:$=>{s.dispatch("SetAttrib",$)},force_hex_color:Dg(s)}),s.parser=gW(s),s.serializer=gM(pW(s),s),s.selection=b0(s.dom,s.getWin(),s.serializer,s),s.annotator=iS(s),s.formatter=E3(s),s.undoManager=T3(s),s._nodeChangeDispatcher=new vI(s),s._selectionOverrides=Jz(s),dH(s),Cz(s),RU(s),Y1(s)||(tB(s),fW(s));const v=PV(s);vO(s,v),pH(s),Im(s),_z(s);const w=HF(s);yW(s),w.fold(()=>{const $=wW(s);QB(s).then(()=>{RP(s),$()})},$=>{s.setProgressState(!0),QB(s).then(()=>{$().then(B=>{s.setProgressState(!1),RP(s),b3(s)},B=>{s.notificationManager.open({type:"error",text:String(B)}),RP(s),b3(s)})})})},zB=mt,SW=(s,l,d)=>jm(s,l,zB,d),gE=Jr.DOM,CW=(s,l,d,m)=>{const v=qe.fromTag("iframe");return m.each(w=>Sr(v,"tabindex",w)),$c(v,d),$c(v,{id:s+"_ifr",frameBorder:"0",allowTransparency:"true",title:l}),Ou(v,"tox-edit-area__iframe"),v},kW=s=>{let l=fv(s)+"";Pu(s)!==s.documentBaseUrl&&(l+=''),l+='';const d=Rb(s),m=bw(s),v=s.translate(Pw(s));return vi(s)&&(l+=''),l+=`
    `,l},WB=(s,l)=>{const d=s.translate("Rich Text Area"),m=aa(qe.fromDom(s.getElement()),"tabindex").bind(Gc),v=CW(s.id,d,cr(s),m).dom;v.onload=()=>{v.onload=null,s.dispatch("load")},s.contentAreaContainer=l.iframeContainer,s.iframeElement=v,s.iframeHTML=kW(s),gE.add(l.iframeContainer,v)},F2=s=>{const l=s.iframeElement,d=()=>{s.contentDocument=l.contentDocument,VB(s)};if(Fw(s)||Mn.browser.isFirefox()){const m=s.getDoc();m.open(),m.write(s.iframeHTML),m.close(),d()}else{const m=SW(qe.fromDom(l),"load",()=>{m.unbind(),d()});l.srcdoc=s.iframeHTML}},xW=(s,l)=>{WB(s,l),l.editorContainer&&(l.editorContainer.style.display=s.orgDisplay,s.hidden=gE.isHidden(l.editorContainer)),s.getElement().style.display="none",gE.setAttrib(s.id,"aria-hidden","true"),s.getElement().style.visibility=s.orgVisibility,F2(s)},MP=Jr.DOM,EW=(s,l,d)=>{const m=hO.get(d),v=hO.urls[d]||s.documentBaseUrl.replace(/\/$/,"");if(d=cn.trim(d),m&&cn.inArray(l,d)===-1){if(s.plugins[d])return;try{const w=m(s,v)||{};s.plugins[d]=w,Oe(w.init)&&(w.init(s,v),l.push(d))}catch(w){TM(s,d,w)}}},TW=s=>s.replace(/^\-/,""),AW=s=>{const l=[];Ne(P1(s),d=>{EW(s,l,TW(d))})},$W=s=>{const l=cn.trim(mv(s)),d=s.ui.registry.getAll().icons,m={...n2.get("default").icons,...n2.get(l).icons};nn(m,(v,w)=>{an(d,w)||s.ui.registry.addIcon(w,v)})},ZB=s=>{const l=Eg(s);if(j(l)){const d=G1.get(l);s.theme=d(s,G1.urls[l])||{},Oe(s.theme.init)&&s.theme.init(s,G1.urls[l]||s.documentBaseUrl.replace(/\/$/,""))}else s.theme={}},PW=s=>{const l=Ib(s),d=Zh.get(l);s.model=d(s,Zh.urls[l])},UB=s=>{const l=s.theme.renderUI;return l?l():XB(s)},DW=s=>{const l=s.getElement(),m=Eg(s)(s,l);return m.editorContainer.nodeType&&(m.editorContainer.id=m.editorContainer.id||s.id+"_parent"),m.iframeContainer&&m.iframeContainer.nodeType&&(m.iframeContainer.id=m.iframeContainer.id||s.id+"_iframecontainer"),m.height=m.iframeHeight?m.iframeHeight:l.offsetHeight,m},qB=(s,l)=>({editorContainer:s,iframeContainer:l,api:{}}),RW=s=>{const l=MP.create("div");return MP.insertAfter(l,s),qB(l,l)},XB=s=>{const l=s.getElement();return s.inline?qB(null):RW(l)},MW=s=>{const l=s.getElement();return s.orgDisplay=l.style.display,j(Eg(s))?UB(s):Oe(Eg(s))?DW(s):XB(s)},NW=(s,l)=>{const d={show:de.from(l.show).getOr(St),hide:de.from(l.hide).getOr(St),isEnabled:de.from(l.isEnabled).getOr(mt),setEnabled:m=>{s.mode.isReadOnly()||de.from(l.setEnabled).each(v=>v(m))}};s.ui={...s.ui,...d}},IW=async s=>{s.dispatch("ScriptsLoaded"),$W(s),ZB(s),PW(s),AW(s);const l=await MW(s);NW(s,de.from(l.api).getOr({})),s.editorContainer=l.editorContainer,N8(s),s.inline?VB(s):xW(s,{editorContainer:l.editorContainer,iframeContainer:l.iframeContainer})},SO=Jr.DOM,jB=s=>s.charAt(0)==="-",YB=(s,l)=>{const d=bv(l),m=sc(l);if(!Md.hasCode(d)&&d!=="en"){const v=Ls(m)?m:`${l.editorManager.baseURL}/langs/${d}.js`;s.add(v).catch(()=>{s2(l,v,d)})}},NP=(s,l)=>{const d=Eg(s);if(j(d)&&!jB(d)&&!an(G1.urls,d)){const m=xw(s),v=m?s.documentBaseURI.toAbsolute(m):`themes/${d}/theme${l}.js`;G1.load(d,v).catch(()=>{P8(s,v,d)})}},GB=(s,l)=>{const d=Ib(s);if(d!=="plugin"&&!an(Zh.urls,d)){const m=vv(s),v=j(m)?s.documentBaseURI.toAbsolute(m):`models/${d}/model${l}.js`;Zh.load(d,v).catch(()=>{EM(s,v,d)})}},KB=s=>de.from(pp(s)).filter(Ls).map(l=>({url:l,name:de.none()})),JB=(s,l,d)=>de.from(l).filter(m=>Ls(m)&&!n2.has(m)).map(m=>({url:`${s.editorManager.baseURL}/icons/${m}/icons${d}.js`,name:de.some(m)})),BW=(s,l,d)=>{const m=JB(l,"default",d),v=KB(l).orThunk(()=>JB(l,mv(l),""));Ne(Gr([m,v]),w=>{s.add(w.url).catch(()=>{$8(l,w.url,w.name.getOrUndefined())})})},LW=(s,l)=>{const d=(m,v)=>{hO.load(m,v).catch(()=>{$U(s,v,m)})};nn(ym(s),(m,v)=>{d(v,m),s.options.set("plugins",P1(s).concat(v))}),Ne(P1(s),m=>{m=cn.trim(m),m&&!hO.urls[m]&&!jB(m)&&d(m,`plugins/${m}/plugin${l}.js`)})},eL=s=>{const l=Eg(s);return!j(l)||Te(G1.get(l))},tL=s=>{const l=Ib(s);return Te(Zh.get(l))},FW=(s,l)=>{const d=Aa.ScriptLoader,m=()=>{!s.removed&&eL(s)&&tL(s)&&IW(s)};NP(s,l),GB(s,l),YB(d,s),BW(d,s,l),LW(s,l),d.loadQueue().then(m,m)},HW=(s,l)=>Q0.forElement(s,{contentCssCors:$g(l),referrerPolicy:fs(l)}),IP=s=>{const l=s.id;Md.setCode(bv(s));const d=()=>{SO.unbind(window,"ready",d),s.render()};if(!Vc.Event.domLoaded){SO.bind(window,"ready",d);return}if(!s.getElement())return;const m=qe.fromDom(s.getElement()),v=md(m);s.on("remove",()=>{Nt(m.dom.attributes,$=>ii(m,$.name)),$c(m,v)}),s.ui.styleSheetLoader=HW(m,s),Ov(s)?s.inline=!0:(s.orgVisibility=s.getElement().style.visibility,s.getElement().style.visibility="hidden");const w=s.getElement().form||SO.getParent(l,"form");w&&(s.formElement=w,Tw(s)&&!nf(s.getElement())&&(SO.insertAfter(SO.create("input",{type:"hidden",name:l}),l),s.hasHiddenInput=!0),s.formEventDelegate=$=>{s.dispatch($.type,$)},SO.bind(w,"submit reset",s.formEventDelegate),s.on("reset",()=>{s.resetContent()}),dy(s)&&!w.submit.nodeType&&!w.submit.length&&!w._mceOldSubmit&&(w._mceOldSubmit=w.submit,w.submit=()=>(s.editorManager.triggerSave(),s.setDirty(!1),w._mceOldSubmit(w)))),s.windowManager=xM(s),s.notificationManager=w3(s),xv(s)&&s.on("GetContent",$=>{$.save&&($.content=SO.encode($.content))}),Qf(s)&&s.on("submit",()=>{s.initialized&&s.save()}),Tg(s)&&(s._beforeUnload=()=>{s.initialized&&!s.destroyed&&!s.isHidden()&&s.save({format:"raw",no_events:!0,set_dirty:!1})},s.editorManager.on("BeforeUnload",s._beforeUnload)),s.editorManager.add(s),FW(s,s.suffix)},bE=(s,l)=>{s._editableRoot!==l&&(s._editableRoot=l,s.readonly||(s.getBody().contentEditable=String(s.hasEditableRoot()),s.nodeChanged()),iT(s,l))},vE=s=>s._editableRoot,tb=(s,l)=>({sections:je(s),options:je(l)}),H2=Ko().deviceType,CO=H2.isPhone(),nL=H2.isTablet(),Q2=s=>{if(Be(s))return[];{const l=_e(s)?s:s.split(/[ ,]/),d=pt(l,Pl);return xt(d,Ls)}},QW=(s,l)=>{const d=wt(l,(m,v)=>gt(s,v));return tb(d.t,d.f)},oL=(s,l,d={})=>{const m=s.sections(),v=ro(m,l).getOr({});return cn.extend({},d,v)},BP=(s,l)=>an(s.sections(),l),LP=(s,l)=>BP(s,l)?s.sections()[l]:{},OE=(s,l)=>({...{table_grid:!1,object_resizing:!1,resize:!1,toolbar_mode:ro(s,"toolbar_mode").getOr("scrolling"),toolbar_sticky:!1},...l?{menubar:!1}:{}}),P0=(s,l)=>{var d;const m=(d=l.external_plugins)!==null&&d!==void 0?d:{};return s&&s.external_plugins?cn.extend({},s.external_plugins,m):m},kO=(s,l)=>[...Q2(s),...Q2(l)],sL=(s,l,d,m)=>s&&BP(l,"mobile")?m:d,VW=(s,l,d,m)=>{const v=Q2(d.forced_plugins),w=Q2(m.plugins),$=LP(l,"mobile"),B=$.plugins?Q2($.plugins):w,H=sL(s,l,w,B),G=kO(v,H);return cn.extend(m,{forced_plugins:v,plugins:G})},zW=(s,l)=>s&&BP(l,"mobile"),WW=(s,l,d,m,v)=>{var w;const $=s?{mobile:OE((w=v.mobile)!==null&&w!==void 0?w:{},l)}:{},B=QW(["mobile"],E2($,v)),H=cn.extend(d,m,B.options(),zW(s,B)?oL(B,"mobile"):{},{external_plugins:P0(m,B.options())});return VW(s,B,m,H)},ZW=(s,l)=>WW(CO||nL,CO,l,s,l),UW=(s,l)=>KF(s,l),qW=s=>{const l=(m,v)=>{s.formatter.toggle(m,v),s.nodeChanged()},d=m=>()=>{Ne("left,center,right,justify".split(","),v=>{m!==v&&s.formatter.remove("align"+v)}),m!=="none"&&l("align"+m)};s.editorCommands.addCommands({JustifyLeft:d("left"),JustifyCenter:d("center"),JustifyRight:d("right"),JustifyFull:d("justify"),JustifyNone:d("none")})},rL=s=>{const l=d=>()=>{const m=s.selection,v=m.isCollapsed()?[s.dom.getParent(m.getNode(),s.dom.isBlock)]:m.getSelectedBlocks();return Ut(v,w=>Te(s.formatter.matchNode(w,d)))};s.editorCommands.addCommands({JustifyLeft:l("alignleft"),JustifyCenter:l("aligncenter"),JustifyRight:l("alignright"),JustifyFull:l("alignjustify")},"state")},XW=s=>{qW(s),rL(s)},jW=s=>{s.editorCommands.addCommands({"Cut,Copy,Paste":l=>{const d=s.getDoc();let m;try{d.execCommand(l)}catch{m=!0}if(l==="paste"&&!d.queryCommandEnabled(l)&&(m=!0),m||!d.queryCommandSupported(l)){let v=s.translate("Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead.");(Mn.os.isMacOS()||Mn.os.isiOS())&&(v=v.replace(/Ctrl\+/g,"⌘+")),s.notificationManager.open({text:v,type:"error"})}}})},YW=(s,l,d,m)=>{const v=qe.fromDom(s.getRoot());return Gy(v,Dt.fromRangeStart(l),m)?d=d.replace(/^ /," "):d=d.replace(/^ /," "),Ky(v,Dt.fromRangeEnd(l),m)?d=d.replace(/( | )()?$/," "):d=d.replace(/ ()?$/," "),d},eq=s=>{if(typeof s!="string"){const l=cn.extend({paste:s.paste,data:{paste:s.paste}},s);return{content:s.content,details:l}}return{content:s,details:{}}},GW=(s,l)=>{const d=s.selection,m=s.dom;return/^ | $/.test(l)?YW(m,d.getRng(),l,s.schema):l},W_=(s,l)=>{if(s.selection.isEditable()){const{content:d,details:m}=eq(l);YA(s,{...m,content:GW(s,d),format:"html",set:!1,selection:!0}).each(v=>{const w=YF(s,v.content,m);Rk(s,w,v),s.addVisual()})}},KW=s=>{s.editorCommands.addCommands({mceCleanup:()=>{const l=s.selection.getBookmark();s.setContent(s.getContent()),s.selection.moveToBookmark(l)},insertImage:(l,d,m)=>{W_(s,s.dom.createHTML("img",{src:m}))},insertHorizontalRule:()=>{s.execCommand("mceInsertContent",!1,"
    ")},insertText:(l,d,m)=>{W_(s,s.dom.encode(m))},insertHTML:(l,d,m)=>{W_(s,m)},mceInsertContent:(l,d,m)=>{W_(s,m)},mceSetContent:(l,d,m)=>{s.setContent(m)},mceReplaceContent:(l,d,m)=>{s.execCommand("mceInsertContent",!1,m.replace(/\{\$selection\}/g,s.selection.getContent({format:"text"})))},mceNewDocument:()=>{s.setContent(Pg(s))}})},JW={"font-size":"size","font-family":"face"},iL=fc("font"),eZ=(s,l,d)=>{const m=w=>Bi(w,s).orThunk(()=>iL(w)?ro(JW,s).bind($=>aa(w,$)):de.none()),v=w=>dt(qe.fromDom(l),w);return q1(qe.fromDom(d),w=>m(w),v)},aL=s=>s.replace(/[\'\"\\]/g,"").replace(/,\s+/g,","),tZ=(s,l)=>de.from(Jr.DOM.getStyle(l,s,!0)),yE=s=>(l,d)=>de.from(d).map(qe.fromDom).filter(Ra).bind(m=>eZ(s,l,m.dom).or(tZ(s,m.dom))).getOr(""),nZ=yE("font-size"),oZ=q(aL,yE("font-family")),sZ=s=>hu(s.getBody()).bind(l=>{const d=l.container();return de.from(un(d)?d.parentNode:d)}),rZ=s=>de.from(s.selection.getRng()).bind(l=>{const d=s.getBody();return l.startContainer===d&&l.startOffset===0?de.none():de.from(s.selection.getStart(!0))}),lL=(s,l)=>rZ(s).orThunk(Ue(sZ,s)).map(qe.fromDom).filter(Ra).bind(l),V2=(s,l)=>lL(s,Le(de.some,l)),FP=(s,l)=>{if(/^[0-9.]+$/.test(l)){const d=parseInt(l,10);if(d>=1&&d<=7){const m=Hw(s),v=Qw(s);return v.length>0?v[d-1]||l:m[d-1]||l}else return l}else return l},HP=s=>{const l=s.split(/\s*,\s*/);return pt(l,d=>d.indexOf(" ")!==-1&&!(rr(d,'"')||rr(d,"'"))?`'${d}'`:d).join(",")},iZ=(s,l)=>{const d=FP(s,l);s.formatter.toggle("fontname",{value:HP(d)}),s.nodeChanged()},tq=s=>V2(s,l=>oZ(s.getBody(),l.dom)).getOr(""),nq=(s,l)=>{s.formatter.toggle("fontsize",{value:FP(s,l)}),s.nodeChanged()},aZ=s=>V2(s,l=>nZ(s.getBody(),l.dom)).getOr(""),cL=s=>V2(s,l=>{const d=qe.fromDom(s.getBody()),m=q1(l,w=>Bi(w,"line-height"),Ue(dt,d)),v=()=>{const w=parseFloat(ki(l,"line-height")),$=parseFloat(ki(l,"font-size"));return String(w/$)};return m.getOrThunk(v)}).getOr(""),lZ=(s,l)=>{s.formatter.toggle("lineheight",{value:String(l)}),s.nodeChanged()},cZ=s=>{const l=(d,m)=>{s.formatter.toggle(d,m),s.nodeChanged()};s.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":d=>{l(d)},"ForeColor,HiliteColor":(d,m,v)=>{l(d,{value:v})},BackColor:(d,m,v)=>{l("hilitecolor",{value:v})},FontName:(d,m,v)=>{iZ(s,v)},FontSize:(d,m,v)=>{nq(s,v)},LineHeight:(d,m,v)=>{lZ(s,v)},Lang:(d,m,v)=>{var w;l(d,{value:v.code,customValue:(w=v.customCode)!==null&&w!==void 0?w:null})},RemoveFormat:d=>{s.formatter.remove(d)},mceBlockQuote:()=>{l("blockquote")},FormatBlock:(d,m,v)=>{l(j(v)?v:"p")},mceToggleFormat:(d,m,v)=>{l(v)}})},uZ=s=>{const l=d=>s.formatter.match(d);s.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":d=>l(d),mceBlockQuote:()=>l("blockquote")},"state"),s.editorCommands.addQueryValueHandler("FontName",()=>tq(s)),s.editorCommands.addQueryValueHandler("FontSize",()=>aZ(s)),s.editorCommands.addQueryValueHandler("LineHeight",()=>cL(s))},oq=s=>{cZ(s),uZ(s)},sq=s=>{s.editorCommands.addCommands({mceAddUndoLevel:()=>{s.undoManager.add()},mceEndUndoLevel:()=>{s.undoManager.add()},Undo:()=>{s.undoManager.undo()},Redo:()=>{s.undoManager.redo()}})},uL=s=>{s.editorCommands.addCommands({Indent:()=>{uH(s)},Outdent:()=>{d$(s)}}),s.editorCommands.addCommands({Outdent:()=>px(s)},"state")},dL=s=>{const l=(d,m,v)=>{const w=j(v)?{href:v}:v,$=s.dom.getParent(s.selection.getNode(),"a");ae(w)&&j(w.href)&&(w.href=w.href.replace(/ /g,"%20"),(!$||!w.href)&&s.formatter.remove("link"),w.href&&s.formatter.apply("link",w,$))};s.editorCommands.addCommands({unlink:()=>{if(s.selection.isEditable()){if(s.selection.isCollapsed()){const d=s.dom.getParent(s.selection.getStart(),"a");d&&s.dom.remove(d,!0);return}s.formatter.remove("link")}},mceInsertLink:l,createLink:l})},dZ=s=>{s.editorCommands.addCommands({"InsertUnorderedList,InsertOrderedList":l=>{s.getDoc().execCommand(l);const d=s.dom.getParent(s.selection.getNode(),"ol,ul");if(d){const m=d.parentNode;if(m&&/^(H[1-6]|P|ADDRESS|PRE)$/.test(m.nodeName)){const v=s.selection.getBookmark();s.dom.split(m,d),s.selection.moveToBookmark(v)}}}})},fZ=s=>{s.editorCommands.addCommands({"InsertUnorderedList,InsertOrderedList":l=>{const d=s.dom.getParent(s.selection.getNode(),"ul,ol");return d&&(l==="insertunorderedlist"&&d.tagName==="UL"||l==="insertorderedlist"&&d.tagName==="OL")}},"state")},hZ=s=>{dZ(s),fZ(s)},rq=(s,l,d,m)=>{const v=s.dom,w=B=>v.isBlock(B)&&B.parentElement===d,$=w(l)?l:v.getParent(m,w,d);return de.from($).map(qe.fromDom)},mZ=(s,l)=>{const d=s.dom,m=s.selection.getRng(),v=l?s.selection.getStart():s.selection.getEnd(),w=l?m.startContainer:m.endContainer,$=Kf(d,w);if(!$||!$.isContentEditable)return;const B=l?xi:Bl,H=Vl(s);rq(s,v,$,w).each(G=>{const le=U$(s,w,G.dom,$,!1,H);B(G,qe.fromDom(le)),s.selection.setCursorLocation(le,0),s.dispatch("NewBlock",{newBlock:le}),A2(s,"insertParagraph")})},iq=s=>mZ(s,!0),pZ=s=>mZ(s,!1),aq=s=>{s.editorCommands.addCommands({InsertNewBlockBefore:()=>{iq(s)},InsertNewBlockAfter:()=>{pZ(s)}})},gZ=s=>{s.editorCommands.addCommands({insertParagraph:()=>{Qx(eI,s)},mceInsertNewLine:(l,d,m)=>{rI(s,m)},InsertLineBreak:(l,d,m)=>{Qx(pV,s)}})},xO=s=>{s.editorCommands.addCommands({mceSelectNodeDepth:(l,d,m)=>{let v=0;s.dom.getParent(s.selection.getNode(),w=>Zn(w)&&v++===m?(s.selection.select(w),!1):!0,s.getBody())},mceSelectNode:(l,d,m)=>{s.selection.select(m)},selectAll:()=>{const l=s.dom.getParent(s.selection.getStart(),wl);if(l){const d=s.dom.createRng();d.selectNodeContents(l),s.selection.setRng(d)}}})},QP=s=>{s.editorCommands.addCommands({mceRemoveNode:(l,d,m)=>{const v=m??s.selection.getNode();if(v!==s.getBody()){const w=s.selection.getBookmark();s.dom.remove(v,!0),s.selection.moveToBookmark(w)}},mcePrint:()=>{s.getWin().print()},mceFocus:(l,d,m)=>{n6(s,m===!0)},mceToggleVisualAid:()=>{s.hasVisual=!s.hasVisual,s.addVisual()}})},_E=s=>{XW(s),jW(s),sq(s),xO(s),KW(s),dL(s),uL(s),aq(s),gZ(s),hZ(s),oq(s),QP(s)},fL=["toggleview"],VP=s=>gt(fL,s.toLowerCase());class zP{constructor(l){this.commands={state:{},exec:{},value:{}},this.editor=l}execCommand(l,d=!1,m,v){const w=this.editor,$=l.toLowerCase(),B=v==null?void 0:v.skip_focus;if(w.removed||($!=="mcefocus"&&(!/^(mceAddUndoLevel|mceEndUndoLevel)$/i.test($)&&!B?w.focus():VL(w)),w.dispatch("BeforeExecCommand",{command:l,ui:d,value:m}).isDefaultPrevented()))return!1;const G=this.commands.exec[$];return Oe(G)?(G($,d,m),w.dispatch("ExecCommand",{command:l,ui:d,value:m}),!0):!1}queryCommandState(l){if(!VP(l)&&this.editor.quirks.isHidden()||this.editor.removed)return!1;const d=l.toLowerCase(),m=this.commands.state[d];return Oe(m)?m(d):!1}queryCommandValue(l){if(!VP(l)&&this.editor.quirks.isHidden()||this.editor.removed)return"";const d=l.toLowerCase(),m=this.commands.value[d];return Oe(m)?m(d):""}addCommands(l,d="exec"){const m=this.commands;nn(l,(v,w)=>{Ne(w.toLowerCase().split(","),$=>{m[d][$]=v})})}addCommand(l,d,m){const v=l.toLowerCase();this.commands.exec[v]=(w,$,B)=>d.call(m??this.editor,$,B)}queryCommandSupported(l){const d=l.toLowerCase();return!!this.commands.exec[d]}addQueryStateHandler(l,d,m){this.commands.state[l.toLowerCase()]=()=>d.call(m??this.editor)}addQueryValueHandler(l,d,m){this.commands.value[l.toLowerCase()]=()=>d.call(m??this.editor)}}const EO="data-mce-contenteditable",bZ=(s,l,d)=>{zu(s,l)&&!d?hl(s,l):d&&Ou(s,l)},WP=(s,l,d)=>{try{s.getDoc().execCommand(l,!1,String(d))}catch{}},wE=(s,l)=>{s.dom.contentEditable=l?"true":"false"},D0=s=>{Ne(Fa(s,'*[contenteditable="true"]'),l=>{Sr(l,EO,"true"),wE(l,!1)})},vZ=s=>{Ne(Fa(s,`*[${EO}="true"]`),l=>{ii(l,EO),wE(l,!0)})},hL=s=>{de.from(s.selection.getNode()).each(l=>{l.removeAttribute("data-mce-selected")})},OZ=s=>{s.selection.setRng(s.selection.getRng())},SE=(s,l)=>{const d=qe.fromDom(s.getBody());bZ(d,"mce-content-readonly",l),l?(s.selection.controlSelection.hideResizeRect(),s._selectionOverrides.hideFakeCaret(),hL(s),s.readonly=!0,wE(d,!1),D0(d)):(s.readonly=!1,s.hasEditableRoot()&&wE(d,!0),vZ(d),WP(s,"StyleWithCSS",!1),WP(s,"enableInlineTableEditing",!1),WP(s,"enableObjectResizing",!1),b4(s)&&s.focus(),OZ(s),s.nodeChanged())},TO=s=>s.readonly,mL=s=>{s.parser.addAttributeFilter("contenteditable",l=>{TO(s)&&Ne(l,d=>{d.attr(EO,d.attr("contenteditable")),d.attr("contenteditable","false")})}),s.serializer.addAttributeFilter(EO,l=>{TO(s)&&Ne(l,d=>{d.attr("contenteditable",d.attr(EO))})}),s.serializer.addTempAttr(EO)},yZ=s=>{s.serializer?mL(s):s.on("PreInit",()=>{mL(s)})},pL=s=>s.type==="click",_Z=["copy"],wZ=s=>gt(_Z,s.type),SZ=(s,l)=>Rc(l,"a",m=>dt(m,qe.fromDom(s.getBody()))).bind(m=>aa(m,"href")),ZP=(s,l)=>{if(pL(l)&&!zn.metaKeyPressed(l)){const d=qe.fromDom(l.target);SZ(s,d).each(m=>{if(l.preventDefault(),/^#/.test(m)){const v=s.dom.select(`${m},[name="${Ri(m,"#")}"]`);v.length&&s.selection.scrollIntoView(v[0],!0)}else window.open(m,"_blank","rel=noopener noreferrer,menubar=yes,toolbar=yes,location=yes,status=yes,resizable=yes,scrollbars=yes")})}else wZ(l)&&s.dispatch(l.type,l)},CZ=s=>{s.on("ShowCaret",l=>{TO(s)&&l.preventDefault()}),s.on("ObjectSelected",l=>{TO(s)&&l.preventDefault()})},kZ=cn.makeMap("focus blur focusin focusout click dblclick mousedown mouseup mousemove mouseover beforepaste paste cut copy selectionchange mouseout mouseenter mouseleave wheel keydown keypress keyup input beforeinput contextmenu dragstart dragend dragover draggesture dragdrop drop drag submit compositionstart compositionend compositionupdate touchstart touchmove touchend touchcancel"," ");class ll{static isNative(l){return!!kZ[l.toLowerCase()]}constructor(l){this.bindings={},this.settings=l||{},this.scope=this.settings.scope||this,this.toggleEvent=this.settings.toggleEvent||Fe}fire(l,d){return this.dispatch(l,d)}dispatch(l,d){const m=l.toLowerCase(),v=hg(m,d??{},this.scope);this.settings.beforeFire&&this.settings.beforeFire(v);const w=this.bindings[m];if(w)for(let $=0,B=w.length;${this.toggleEvent(H,!1),delete this.bindings[H]}),this;if($){if(!d)$.length=0;else{const B=pn($,H=>H.func===d);$=B.fail,this.bindings[w]=$,Ne(B.pass,H=>{H.removed=!0})}$.length||(this.toggleEvent(l,!1),delete this.bindings[w])}}}else nn(this.bindings,(m,v)=>{this.toggleEvent(v,!1)}),this.bindings={};return this}once(l,d,m){return this.on(l,d,m,{once:!0})}has(l){l=l.toLowerCase();const d=this.bindings[l];return!(!d||d.length===0)}}const z2=s=>(s._eventDispatcher||(s._eventDispatcher=new ll({scope:s,toggleEvent:(l,d)=>{ll.isNative(l)&&s.toggleNativeEvent&&s.toggleNativeEvent(l,d)}})),s._eventDispatcher),UP={fire(s,l,d){return this.dispatch(s,l,d)},dispatch(s,l,d){const m=this;if(m.removed&&s!=="remove"&&s!=="detach")return hg(s.toLowerCase(),l??{},m);const v=z2(m).dispatch(s,l);if(d!==!1&&m.parent){let w=m.parent();for(;w&&!v.isPropagationStopped();)w.dispatch(s,v,!1),w=w.parent?w.parent():void 0}return v},on(s,l,d){return z2(this).on(s,l,d)},off(s,l){return z2(this).off(s,l)},once(s,l){return z2(this).once(s,l)},hasEventListeners(s){return z2(this).has(s)}},Z_=Jr.DOM;let R0;const U_=(s,l)=>{if(l==="selectionchange")return s.getDoc();if(!s.inline&&/^(?:mouse|touch|click|contextmenu|drop|dragover|dragend)/.test(l))return s.getDoc().documentElement;const d=Mh(s);return d?(s.eventRoot||(s.eventRoot=Z_.select(d)[0]),s.eventRoot):s.getBody()},xZ=s=>!s.hidden&&!TO(s),gL=(s,l,d)=>{xZ(s)?s.dispatch(l,d):TO(s)&&ZP(s,d)},bL=(s,l)=>{if(s.delegates||(s.delegates={}),s.delegates[l]||s.removed)return;const d=U_(s,l);if(Mh(s)){if(R0||(R0={},s.editorManager.on("removeEditor",()=>{s.editorManager.activeEditor||R0&&(nn(R0,(v,w)=>{s.dom.unbind(U_(s,w))}),R0=null)})),R0[l])return;const m=v=>{const w=v.target,$=s.editorManager.get();let B=$.length;for(;B--;){const H=$[B].getBody();(H===w||Z_.isChildOf(w,H))&&gL($[B],l,v)}};R0[l]=m,Z_.bind(d,l,m)}else{const m=v=>{gL(s,l,v)};Z_.bind(d,l,m),s.delegates[l]=m}},vL={...UP,bindPendingEventDelegates(){const s=this;cn.each(s._pendingNativeEvents,l=>{bL(s,l)})},toggleNativeEvent(s,l){const d=this;s==="focus"||s==="blur"||d.removed||(l?d.initialized?bL(d,s):d._pendingNativeEvents?d._pendingNativeEvents.push(s):d._pendingNativeEvents=[s]:d.initialized&&d.delegates&&(d.dom.unbind(U_(d,s),s,d.delegates[s]),delete d.delegates[s]))},unbindAllNativeEvents(){const s=this,l=s.getBody(),d=s.dom;s.delegates&&(nn(s.delegates,(m,v)=>{s.dom.unbind(U_(s,v),v,m)}),delete s.delegates),!s.inline&&l&&d&&(l.onload=null,d.unbind(s.getWin()),d.unbind(s.getDoc())),d&&(d.unbind(l),d.unbind(s.getContainer()))}},EZ=s=>j(s)?{value:s.split(/[ ,]/),valid:!0}:Tt(s,j)?{value:s,valid:!0}:{valid:!1,message:"The value must be a string[] or a comma/space separated string."},TZ=s=>{const l=(()=>{switch(s){case"array":return _e;case"boolean":return Se;case"function":return Oe;case"number":return yt;case"object":return ae;case"string":return j;case"string[]":return EZ;case"object[]":return d=>Tt(d,ae);case"regexp":return d=>te(d,RegExp);default:return mt}})();return d=>qh(d,l,`The value must be a ${s}.`)},AZ=s=>j(s.processor),OL=(s,l)=>{const d=Ji(l.message)?"":`. ${l.message}`;return s+d},AO=s=>s.valid,qh=(s,l,d="")=>{const m=l(s);return Se(m)?m?{value:s,valid:!0}:{valid:!1,message:d}:m},$Z=(s,l,d)=>{if(!De(l)){const m=qh(l,d);if(AO(m))return m.value;console.error(OL(`Invalid default value passed for the "${s}" option`,m))}},PZ=(s,l)=>{const d={},m={},v=(ue,ge,Me)=>{const He=qh(ge,Me);return AO(He)?(m[ue]=He.value,!0):(console.warn(OL(`Invalid value passed for the ${ue} option`,He)),!1)},w=(ue,ge)=>{const Me=AZ(ge)?TZ(ge.processor):ge.processor,He=$Z(ue,ge.default,Me);d[ue]={...ge,default:He,processor:Me},ro(m,ue).orThunk(()=>ro(l,ue)).each(Ve=>v(ue,Ve,Me))},$=ue=>an(d,ue);return{register:w,isRegistered:$,get:ue=>ro(m,ue).orThunk(()=>ro(d,ue).map(ge=>ge.default)).getOrUndefined(),set:(ue,ge)=>{if($(ue)){const Me=d[ue];return Me.immutable?(console.error(`"${ue}" is an immutable option and cannot be updated`),!1):v(ue,ge,Me.processor)}else return console.warn(`"${ue}" is not a registered option. Ensure the option has been registered before setting a value.`),!1},unset:ue=>{const ge=$(ue);return ge&&delete m[ue],ge},isSet:ue=>an(m,ue)}},DZ=["design","readonly"],yL=(s,l,d,m)=>{const v=d[l.get()],w=d[m];try{w.activate()}catch($){console.error(`problem while activating editor mode ${m}:`,$);return}v.deactivate(),v.editorReadOnly!==w.editorReadOnly&&SE(s,w.editorReadOnly),l.set(m),cS(s,m)},RZ=(s,l,d,m)=>{if(m!==d.get()){if(!an(l,m))throw new Error(`Editor mode '${m}' is invalid`);s.initialized?yL(s,d,l,m):s.on("init",()=>yL(s,d,l,m))}},MZ=(s,l,d)=>{if(gt(DZ,l))throw new Error(`Cannot override default mode ${l}`);return{...s,[l]:{...d,deactivate:()=>{try{d.deactivate()}catch(m){console.error(`problem while deactivating editor mode ${l}:`,m)}}}}},NZ=s=>{const l=Ai("design"),d=Ai({design:{activate:St,deactivate:St,editorReadOnly:!1},readonly:{activate:St,deactivate:St,editorReadOnly:!0}});return yZ(s),CZ(s),{isReadOnly:()=>TO(s),set:m=>RZ(s,d.get(),l,m),get:()=>l.get(),register:(m,v)=>{d.set(MZ(d.get(),m,v))}}},qP=cn.each,XP=cn.explode,lq={f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},_L=cn.makeMap("alt,ctrl,shift,meta,access"),IZ=s=>s in _L,BZ=s=>{const l={},d=Mn.os.isMacOS()||Mn.os.isiOS();qP(XP(s.toLowerCase(),"+"),w=>{IZ(w)?l[w]=!0:/^[0-9]{2,}$/.test(w)?l.keyCode=parseInt(w,10):(l.charCode=w.charCodeAt(0),l.keyCode=lq[w]||w.toUpperCase().charCodeAt(0))});const m=[l.keyCode];let v;for(v in _L)l[v]?m.push(v):l[v]=!1;return l.id=m.join(","),l.access&&(l.alt=!0,d?l.ctrl=!0:l.shift=!0),l.meta&&(d?l.meta=!0:(l.ctrl=!0,l.meta=!1)),l};class wL{constructor(l){this.shortcuts={},this.pendingPatterns=[],this.editor=l;const d=this;l.on("keyup keypress keydown",m=>{(d.hasModifier(m)||d.isFunctionKey(m))&&!m.isDefaultPrevented()&&(qP(d.shortcuts,v=>{d.matchShortcut(m,v)&&(d.pendingPatterns=v.subpatterns.slice(0),m.type==="keydown"&&d.executeShortcutAction(v))}),d.matchShortcut(m,d.pendingPatterns[0])&&(d.pendingPatterns.length===1&&m.type==="keydown"&&d.executeShortcutAction(d.pendingPatterns[0]),d.pendingPatterns.shift()))})}add(l,d,m,v){const w=this,$=w.normalizeCommandFunc(m);return qP(XP(cn.trim(l)),B=>{const H=w.createShortcut(B,d,$,v);w.shortcuts[H.id]=H}),!0}remove(l){const d=this.createShortcut(l);return this.shortcuts[d.id]?(delete this.shortcuts[d.id],!0):!1}normalizeCommandFunc(l){const d=this,m=l;return typeof m=="string"?()=>{d.editor.execCommand(m,!1,null)}:cn.isArray(m)?()=>{d.editor.execCommand(m[0],m[1],m[2])}:m}createShortcut(l,d,m,v){const w=cn.map(XP(l,">"),BZ);return w[w.length-1]=cn.extend(w[w.length-1],{func:m,scope:v||this.editor}),cn.extend(w[0],{desc:this.editor.translate(d),subpatterns:w.slice(1)})}hasModifier(l){return l.altKey||l.ctrlKey||l.metaKey}isFunctionKey(l){return l.type==="keydown"&&l.keyCode>=112&&l.keyCode<=123}matchShortcut(l,d){return!d||d.ctrl!==l.ctrlKey||d.meta!==l.metaKey||d.alt!==l.altKey||d.shift!==l.shiftKey?!1:l.keyCode===d.keyCode||l.charCode&&l.charCode===d.charCode?(l.preventDefault(),!0):!1}executeShortcutAction(l){return l.func?l.func.call(l.scope):null}}const LZ=()=>{const s={},l={},d={},m={},v={},w={},$={},B={},H=(le,ue)=>(ge,Me)=>{le[ge.toLowerCase()]={...Me,type:ue}},G=(le,ue)=>m[le.toLowerCase()]=ue;return{addButton:H(s,"button"),addGroupToolbarButton:H(s,"grouptoolbarbutton"),addToggleButton:H(s,"togglebutton"),addMenuButton:H(s,"menubutton"),addSplitButton:H(s,"splitbutton"),addMenuItem:H(l,"menuitem"),addNestedMenuItem:H(l,"nestedmenuitem"),addToggleMenuItem:H(l,"togglemenuitem"),addAutocompleter:H(d,"autocompleter"),addContextMenu:H(v,"contextmenu"),addContextToolbar:H(w,"contexttoolbar"),addContextForm:H(w,"contextform"),addSidebar:H($,"sidebar"),addView:H(B,"views"),addIcon:G,getAll:()=>({buttons:s,menuItems:l,icons:m,popups:d,contextMenus:v,contextToolbars:w,sidebars:$,views:B})}},FZ=()=>{const s=LZ();return{addAutocompleter:s.addAutocompleter,addButton:s.addButton,addContextForm:s.addContextForm,addContextMenu:s.addContextMenu,addContextToolbar:s.addContextToolbar,addIcon:s.addIcon,addMenuButton:s.addMenuButton,addMenuItem:s.addMenuItem,addNestedMenuItem:s.addNestedMenuItem,addSidebar:s.addSidebar,addSplitButton:s.addSplitButton,addToggleButton:s.addToggleButton,addGroupToolbarButton:s.addGroupToolbarButton,addToggleMenuItem:s.addToggleMenuItem,addView:s.addView,getAll:s.getAll}},q_=Jr.DOM,SL=cn.extend,HZ=cn.each;class CE{constructor(l,d,m){this.plugins={},this.contentCSS=[],this.contentStyles=[],this.loadedCSS={},this.isNotDirty=!1,this.composing=!1,this.destroyed=!1,this.hasHiddenInput=!1,this.iframeElement=null,this.initialized=!1,this.readonly=!1,this.removed=!1,this.startContent="",this._pendingNativeEvents=[],this._skinLoaded=!1,this._editableRoot=!0,this.editorManager=m,this.documentBaseUrl=m.documentBaseURL,SL(this,vL);const v=this;this.id=l,this.hidden=!1;const w=ZW(m.defaultOptions,d);this.options=PZ(v,w),Hf(v);const $=this.options.get;$("deprecation_warnings")&&EU(d,w);const B=$("suffix");B&&(m.suffix=B),this.suffix=m.suffix;const H=$("base_url");H&&m._setBaseUrl(H),this.baseUri=m.baseURI;const G=fs(v);G&&(Aa.ScriptLoader._setReferrerPolicy(G),Jr.DOM.styleSheetLoader._setReferrerPolicy(G));const le=$g(v);Te(le)&&Jr.DOM.styleSheetLoader._setContentCssCors(le),nc.languageLoad=$("language_load"),nc.baseURL=m.baseURL,this.setDirty(!1),this.documentBaseURI=new zh(Pu(v),{base_uri:this.baseUri}),this.baseURI=this.baseUri,this.inline=Ov(v),this.hasVisual=Aw(v),this.shortcuts=new wL(this),this.editorCommands=new zP(this),_E(this);const ue=$("cache_suffix");ue&&(Mn.cacheSuffix=ue.replace(/^[\?\&]+/,"")),this.ui={registry:FZ(),styleSheetLoader:void 0,show:St,hide:St,setEnabled:St,isEnabled:mt},this.mode=NZ(v),m.dispatch("SetupEditor",{editor:this});const ge=yv(v);Oe(ge)&&ge.call(v,v)}render(){IP(this)}focus(l){this.execCommand("mceFocus",!1,l)}hasFocus(){return c0(this)}translate(l){return Md.translate(l)}getParam(l,d,m){const v=this.options;return v.isRegistered(l)||(Te(m)?v.register(l,{processor:m,default:d}):v.register(l,{processor:mt,default:d})),!v.isSet(l)&&!De(d)?d:v.get(l)}hasPlugin(l,d){return gt(P1(this),l)?d?hO.get(l)!==void 0:!0:!1}nodeChanged(l){this._nodeChangeDispatcher.nodeChanged(l)}addCommand(l,d,m){this.editorCommands.addCommand(l,d,m)}addQueryStateHandler(l,d,m){this.editorCommands.addQueryStateHandler(l,d,m)}addQueryValueHandler(l,d,m){this.editorCommands.addQueryValueHandler(l,d,m)}addShortcut(l,d,m,v){this.shortcuts.add(l,d,m,v)}execCommand(l,d,m,v){return this.editorCommands.execCommand(l,d,m,v)}queryCommandState(l){return this.editorCommands.queryCommandState(l)}queryCommandValue(l){return this.editorCommands.queryCommandValue(l)}queryCommandSupported(l){return this.editorCommands.queryCommandSupported(l)}show(){const l=this;l.hidden&&(l.hidden=!1,l.inline?l.getBody().contentEditable="true":(q_.show(l.getContainer()),q_.hide(l.id)),l.load(),l.dispatch("show"))}hide(){const l=this;l.hidden||(l.save(),l.inline?(l.getBody().contentEditable="false",l===l.editorManager.focusedEditor&&(l.editorManager.focusedEditor=null)):(q_.hide(l.getContainer()),q_.setStyle(l.id,"display",l.orgDisplay)),l.hidden=!0,l.dispatch("hide"))}isHidden(){return this.hidden}setProgressState(l,d){this.dispatch("ProgressState",{state:l,time:d})}load(l={}){const d=this,m=d.getElement();if(d.removed)return"";if(m){const v={...l,load:!0},w=nf(m)?m.value:m.innerHTML,$=d.setContent(w,v);return v.no_events||d.dispatch("LoadContent",{...v,element:m}),$}else return""}save(l={}){const d=this;let m=d.getElement();if(!m||!d.initialized||d.removed)return"";const v={...l,save:!0,element:m};let w=d.getContent(v);const $={...v,content:w};if($.no_events||d.dispatch("SaveContent",$),$.format==="raw"&&d.dispatch("RawSaveContent",$),w=$.content,nf(m))m.value=w;else{(l.is_removing||!d.inline)&&(m.innerHTML=w);const B=q_.getParent(d.id,"form");B&&HZ(B.elements,H=>H.name===d.id?(H.value=w,!1):!0)}return $.element=v.element=m=null,$.set_dirty!==!1&&d.setDirty(!1),w}setContent(l,d){return O3(this,l,d)}getContent(l){return vM(this,l)}insertContent(l,d){d&&(l=SL({content:l},d)),this.execCommand("mceInsertContent",!1,l)}resetContent(l){l===void 0?O3(this,this.startContent,{format:"raw"}):O3(this,l),this.undoManager.reset(),this.setDirty(!1),this.nodeChanged()}isDirty(){return!this.isNotDirty}setDirty(l){const d=!this.isNotDirty;this.isNotDirty=!l,l&&l!==d&&this.dispatch("dirty")}getContainer(){const l=this;return l.container||(l.container=l.editorContainer||q_.get(l.id+"_parent")),l.container}getContentAreaContainer(){return this.contentAreaContainer}getElement(){return this.targetElm||(this.targetElm=q_.get(this.id)),this.targetElm}getWin(){const l=this;if(!l.contentWindow){const d=l.iframeElement;d&&(l.contentWindow=d.contentWindow)}return l.contentWindow}getDoc(){const l=this;if(!l.contentDocument){const d=l.getWin();d&&(l.contentDocument=d.document)}return l.contentDocument}getBody(){var l,d;const m=this.getDoc();return(d=(l=this.bodyElement)!==null&&l!==void 0?l:m==null?void 0:m.body)!==null&&d!==void 0?d:null}convertURL(l,d,m){const v=this,w=v.options.get,$=Rw(v);if(Oe($))return $.call(v,l,m,!0,d);if(!w("convert_urls")||m==="link"||ae(m)&&m.nodeName==="LINK"||l.indexOf("file:")===0||l.length===0)return l;const B=new zh(l);return B.protocol!=="http"&&B.protocol!=="https"&&B.protocol!==""?l:w("relative_urls")?v.documentBaseURI.toRelative(l):(l=v.documentBaseURI.toAbsolute(l,w("remove_script_host")),l)}addVisual(l){UW(this,l)}setEditableRoot(l){bE(this,l)}hasEditableRoot(){return vE(this)}remove(){C8(this)}destroy(l){k8(this,l)}uploadImages(){return this.editorUpload.uploadImages()}_scanForImages(){return this.editorUpload.scanForImages()}}const X_=Jr.DOM,kE=cn.each;let CL=!1,xE,qd=[];const EE=s=>{const l=s.type;kE(M0.get(),d=>{switch(l){case"scroll":d.dispatch("ScrollWindow",s);break;case"resize":d.dispatch("ResizeWindow",s);break}})},kL=s=>{if(s!==CL){const l=Jr.DOM;s?(l.bind(window,"resize",EE),l.bind(window,"scroll",EE)):(l.unbind(window,"resize",EE),l.unbind(window,"scroll",EE)),CL=s}},xL=s=>{const l=qd;return qd=xt(qd,d=>s!==d),M0.activeEditor===s&&(M0.activeEditor=qd.length>0?qd[0]:null),M0.focusedEditor===s&&(M0.focusedEditor=null),l.length!==qd.length},QZ=s=>{s&&s.initialized&&!(s.getContainer()||s.getBody()).parentNode&&(xL(s),s.unbindAllNativeEvents(),s.destroy(!0),s.removed=!0)},VZ=document.compatMode!=="CSS1Compat",M0={...UP,baseURI:null,baseURL:null,defaultOptions:{},documentBaseURL:null,suffix:null,majorVersion:"6",minorVersion:"8.4",releaseDate:"2024-06-19",i18n:Md,activeEditor:null,focusedEditor:null,setup(){const s=this;let l="",d="",m=zh.getDocumentBaseUrl(document.location);/^[^:]+:\/\/\/?[^\/]+\//.test(m)&&(m=m.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(m)||(m+="/"));const v=window.tinymce||window.tinyMCEPreInit;if(v)l=v.base||v.baseURL,d=v.suffix;else{const w=document.getElementsByTagName("script");for(let $=0;${nc.PluginManager.urls[w]=v})},init(s){const l=this;let d;const m=cn.makeMap("area base basefont br col frame hr img input isindex link meta param embed source wbr track colgroup option table tbody tfoot thead tr th td script noscript style textarea video audio iframe object menu"," "),v=(le,ue)=>le.inline&&ue.tagName.toLowerCase()in m,w=le=>{let ue=le.id;return ue||(ue=ro(le,"name").filter(ge=>!X_.get(ge)).getOrThunk(X_.uniqueId),le.setAttribute("id",ue)),ue},$=le=>{const ue=s[le];if(ue)return ue.apply(l,[])},B=le=>Mn.browser.isIE()||Mn.browser.isEdge()?(r2("TinyMCE does not support the browser you are using. For a list of supported browsers please see: https://www.tiny.cloud/docs/tinymce/6/support/#supportedwebbrowsers"),[]):VZ?(r2("Failed to initialize the editor as the document is not in standards mode. TinyMCE requires standards mode."),[]):j(le.selector)?X_.select(le.selector):Te(le.target)?[le.target]:[];let H=le=>{d=le};const G=()=>{let le=0;const ue=[];let ge;const Me=(He,$e,Ve)=>{const rt=new CE(He,$e,l);ue.push(rt),rt.on("init",()=>{++le===ge.length&&H(ue)}),rt.targetElm=rt.targetElm||Ve,rt.render()};X_.unbind(window,"ready",G),$("onpageload"),ge=Pi(B(s)),cn.each(ge,He=>{QZ(l.get(He.id))}),ge=cn.grep(ge,He=>!l.get(He.id)),ge.length===0?H([]):kE(ge,He=>{v(s,He)?r2("Could not initialize inline editor on invalid inline target element",He):Me(w(He),s,He)})};return X_.bind(window,"ready",G),new Promise(le=>{d?le(d):H=ue=>{le(ue)}})},get(s){return arguments.length===0?qd.slice(0):j(s)?Gn(qd,l=>l.id===s).getOr(null):yt(s)&&qd[s]?qd[s]:null},add(s){const l=this,d=l.get(s.id);return d===s||(d===null&&qd.push(s),kL(!0),l.activeEditor=s,l.dispatch("AddEditor",{editor:s}),xE||(xE=m=>{const v=l.dispatch("BeforeUnload");if(v.returnValue)return m.preventDefault(),m.returnValue=v.returnValue,v.returnValue},window.addEventListener("beforeunload",xE))),s},createEditor(s,l){return this.add(new CE(s,l,this))},remove(s){const l=this;let d;if(!s){for(let m=qd.length-1;m>=0;m--)l.remove(qd[m]);return}if(j(s)){kE(X_.select(s),m=>{d=l.get(m.id),d&&l.remove(d)});return}return d=s,ne(l.get(d.id))?null:(xL(d)&&l.dispatch("RemoveEditor",{editor:d}),qd.length===0&&window.removeEventListener("beforeunload",xE),d.remove(),kL(qd.length>0),d)},execCommand(s,l,d){var m;const v=this,w=ae(d)?(m=d.id)!==null&&m!==void 0?m:d.index:d;switch(s){case"mceAddEditor":{if(!v.get(w)){const $=d.options;new CE(w,$,v).render()}return!0}case"mceRemoveEditor":{const $=v.get(w);return $&&$.remove(),!0}case"mceToggleEditor":{const $=v.get(w);return $?($.isHidden()?$.show():$.hide(),!0):(v.execCommand("mceAddEditor",!1,d),!0)}}return v.activeEditor?v.activeEditor.execCommand(s,l,d):!1},triggerSave:()=>{kE(qd,s=>{s.save()})},addI18n:(s,l)=>{Md.add(s,l)},translate:s=>Md.translate(s),setActive(s){const l=this.activeEditor;this.activeEditor!==s&&(l&&l.dispatch("deactivate",{relatedTarget:s}),s.dispatch("activate",{relatedTarget:l})),this.activeEditor=s},_setBaseUrl(s){this.baseURL=new zh(this.documentBaseURL).toAbsolute(s.replace(/\/+$/,"")),this.baseURI=new zh(this.baseURL)}};M0.setup();const zZ=(()=>{const s=fm(),l=w=>({items:w,types:ts(w),getType:$=>ro(w,$).getOrUndefined()}),d=w=>{s.set(w)},m=()=>s.get().getOrUndefined(),v=s.clear;return{FakeClipboardItem:l,write:d,read:m,clear:v}})(),jP=Math.min,j_=Math.max,TE=Math.round,EL=(s,l,d)=>{let m=l.x,v=l.y;const w=s.w,$=s.h,B=l.w,H=l.h,G=(d||"").split("");return G[0]==="b"&&(v+=H),G[1]==="r"&&(m+=B),G[0]==="c"&&(v+=TE(H/2)),G[1]==="c"&&(m+=TE(B/2)),G[3]==="b"&&(v-=$),G[4]==="r"&&(m-=w),G[3]==="c"&&(v-=TE($/2)),G[4]==="c"&&(m-=TE(w/2)),Y_(m,v,w,$)},WZ=(s,l,d,m)=>{for(let v=0;v=d.x&&w.x+w.w<=d.w+d.x&&w.y>=d.y&&w.y+w.h<=d.h+d.y)return m[v]}return null},ZZ=(s,l,d)=>Y_(s.x-l,s.y-d,s.w+l*2,s.h+d*2),UZ=(s,l)=>{const d=j_(s.x,l.x),m=j_(s.y,l.y),v=jP(s.x+s.w,l.x+l.w),w=jP(s.y+s.h,l.y+l.h);return v-d<0||w-m<0?null:Y_(d,m,v-d,w-m)},qZ=(s,l,d)=>{let m=s.x,v=s.y,w=s.x+s.w,$=s.y+s.h;const B=l.x+l.w,H=l.y+l.h,G=j_(0,l.x-m),le=j_(0,l.y-v),ue=j_(0,w-B),ge=j_(0,$-H);return m+=G,v+=le,d&&(w+=G,$+=le,m-=ue,v-=ge),w-=ue,$-=ge,Y_(m,v,w-m,$-v)},Y_=(s,l,d,m)=>({x:s,y:l,w:d,h:m}),jZ={inflate:ZZ,relativePosition:EL,findBestRelativePosition:WZ,intersect:UZ,clamp:qZ,create:Y_,fromClientRect:s=>Y_(s.left,s.top,s.width,s.height)},YZ=(s,l,d=1e3)=>{let m=!1,v=null;const w=G=>(...le)=>{m||(m=!0,v!==null&&(clearTimeout(v),v=null),G.apply(null,le))},$=w(s),B=w(l);return{start:(...G)=>{!m&&v===null&&(v=setTimeout(()=>B.apply(null,G),d))},resolve:$,reject:B}},GZ=(()=>{const s={},l={},d={};return{load:(H,G)=>{const le=`Script at URL "${G}" failed to load`,ue=`Script at URL "${G}" did not call \`tinymce.Resource.add('${H}', data)\` within 1 second`;if(s[H]!==void 0)return s[H];{const ge=new Promise((Me,He)=>{const $e=YZ(Me,He);l[H]=$e.resolve,Aa.ScriptLoader.loadScript(G).then(()=>$e.start(ue),()=>$e.reject(le))});return s[H]=ge,ge}},add:(H,G)=>{l[H]!==void 0&&(l[H](G),delete l[H]),s[H]=Promise.resolve(G),d[H]=G},has:H=>H in d,get:H=>d[H],unload:H=>{delete s[H]}}})(),KZ=()=>(()=>{let s={},l=[];const d={getItem:m=>{const v=s[m];return v||null},setItem:(m,v)=>{l.push(m),s[m]=String(v)},key:m=>l[m],removeItem:m=>{l=l.filter(v=>v===m),delete s[m]},clear:()=>{l=[],s={}},length:0};return Object.defineProperty(d,"length",{get:()=>l.length,configurable:!1,enumerable:!1}),d})();let W2;try{const s="__storage_test__";W2=window.localStorage,W2.setItem(s,s),W2.removeItem(s)}catch{W2=KZ()}var JZ=W2;const eU={geom:{Rect:jZ},util:{Delay:Uf,Tools:cn,VK:zn,URI:zh,EventDispatcher:ll,Observable:UP,I18n:Md,LocalStorage:JZ,ImageUploader:z8},dom:{EventUtils:Vc,TreeWalker:Hr,TextSeeker:mm,DOMUtils:Jr,ScriptLoader:Aa,RangeUtils:ke,Serializer:gM,StyleSheetLoader:ub,ControlSelection:i4,BookmarkManager:F1,Selection:b0,Event:Vc.Event},html:{Styles:Rf,Entities:op,Node:Iu,Schema:Df,DomParser:Mm,Writer:D4,Serializer:u0},Env:Mn,AddOnManager:nc,Annotator:iS,Formatter:E3,UndoManager:T3,EditorCommands:zP,WindowManager:xM,NotificationManager:w3,EditorObservable:vL,Shortcuts:wL,Editor:CE,FocusManager:d4,EditorManager:M0,DOM:Jr.DOM,ScriptLoader:Aa.ScriptLoader,PluginManager:hO,ThemeManager:G1,ModelManager:Zh,IconManager:n2,Resource:GZ,FakeClipboard:zZ,trim:cn.trim,isArray:cn.isArray,is:cn.is,toArray:cn.toArray,makeMap:cn.makeMap,each:cn.each,map:cn.map,grep:cn.grep,inArray:cn.inArray,extend:cn.extend,walk:cn.walk,resolve:cn.resolve,explode:cn.explode,_addCacheSuffix:cn._addCacheSuffix},YP=cn.extend(M0,eU),dq=s=>{try{o.exports=s}catch{}};(s=>{window.tinymce=s,window.tinyMCE=s})(YP),dq(YP)})()})(tinymce$2);var tinymceExports=tinymce$2.exports;const tinymce$1=getDefaultExportFromCjs(tinymceExports);(function(){var o=tinymce.util.Tools.resolve("tinymce.ModelManager");const e=(_,T,M)=>{var L;return M(_,T.prototype)?!0:((L=_.constructor)===null||L===void 0?void 0:L.name)===T.name},n=_=>{const T=typeof _;return _===null?"null":T==="object"&&Array.isArray(_)?"array":T==="object"&&e(_,String,(M,L)=>L.isPrototypeOf(M))?"string":T},r=_=>T=>n(T)===_,c=_=>T=>typeof T===_,u=_=>T=>_===T,h=r("string"),p=r("object"),b=r("array"),y=u(null),k=c("boolean"),A=u(void 0),R=_=>_==null,N=_=>!R(_),F=c("function"),V=c("number"),W=()=>{},J=(_,T)=>(...M)=>_(T.apply(null,M)),te=(_,T)=>M=>_(T(M)),j=_=>()=>_,ae=_=>_,fe=(_,T)=>_===T;function _e(_,...T){return(...M)=>{const L=T.concat(M);return _.apply(null,L)}}const ne=_=>T=>!_(T),Se=_=>()=>{throw new Error(_)},De=_=>_(),Be=j(!1),Te=j(!0);class Oe{constructor(T,M){this.tag=T,this.value=M}static some(T){return new Oe(!0,T)}static none(){return Oe.singletonNone}fold(T,M){return this.tag?M(this.value):T()}isSome(){return this.tag}isNone(){return!this.tag}map(T){return this.tag?Oe.some(T(this.value)):Oe.none()}bind(T){return this.tag?T(this.value):Oe.none()}exists(T){return this.tag&&T(this.value)}forall(T){return!this.tag||T(this.value)}filter(T){return!this.tag||T(this.value)?this:Oe.none()}getOr(T){return this.tag?this.value:T}or(T){return this.tag?this:T}getOrThunk(T){return this.tag?this.value:T()}orThunk(T){return this.tag?this:T()}getOrDie(T){if(this.tag)return this.value;throw new Error(T??"Called getOrDie on None")}static from(T){return N(T)?Oe.some(T):Oe.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(T){this.tag&&T(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}Oe.singletonNone=new Oe(!1);const yt=Array.prototype.slice,Tt=Array.prototype.indexOf,St=Array.prototype.push,q=(_,T)=>Tt.call(_,T),Le=(_,T)=>q(_,T)>-1,je=(_,T)=>{for(let M=0,L=_.length;M{const M=[];for(let L=0;L<_;L++)M.push(T(L));return M},Rt=(_,T)=>{const M=_.length,L=new Array(M);for(let Y=0;Y{for(let M=0,L=_.length;M{for(let M=_.length-1;M>=0;M--){const L=_[M];T(L,M)}},dn=(_,T)=>{const M=[],L=[];for(let Y=0,oe=_.length;Y{const M=[];for(let L=0,Y=_.length;L(ct(_,(L,Y)=>{M=T(M,L,Y)}),M),Fe=(_,T,M)=>(Ue(_,(L,Y)=>{M=T(M,L,Y)}),M),mt=(_,T,M)=>{for(let L=0,Y=_.length;Lmt(_,T,Be),Eo=(_,T)=>{for(let M=0,L=_.length;M{const T=[];for(let M=0,L=_.length;Mjn(Rt(_,T)),po=(_,T)=>{for(let M=0,L=_.length;M{const T=yt.call(_,0);return T.reverse(),T},gt=(_,T)=>{const M={};for(let L=0,Y=_.length;L{const M=yt.call(_,0);return M.sort(T),M},pt=(_,T)=>T>=0&&T<_.length?Oe.some(_[T]):Oe.none(),Ne=_=>pt(_,0),Nt=_=>pt(_,_.length-1),pn=(_,T)=>{for(let M=0;M<_.length;M++){const L=T(_[M],M);if(L.isSome())return L}return Oe.none()},xt=Object.keys,kn=Object.hasOwnProperty,Dn=(_,T)=>{const M=xt(_);for(let L=0,Y=M.length;LGn(_,(M,L)=>({k:L,v:T(M,L)})),Gn=(_,T)=>{const M={};return Dn(_,(L,Y)=>{const oe=T(L,Y);M[oe.k]=oe.v}),M},as=_=>(T,M)=>{_[M]=T},vr=(_,T,M,L)=>{Dn(_,(Y,oe)=>{(T(Y,oe)?M:L)(Y,oe)})},Ns=(_,T)=>{const M={};return vr(_,T,as(M),W),M},Vs=(_,T)=>{const M=[];return Dn(_,(L,Y)=>{M.push(T(L,Y))}),M},Ts=_=>Vs(_,ae),Ki=(_,T)=>vs(_,T)?Oe.from(_[T]):Oe.none(),vs=(_,T)=>kn.call(_,T),ms=(_,T)=>vs(_,T)&&_[T]!==void 0&&_[T]!==null,dr=_=>{for(const T in _)if(kn.call(_,T))return!1;return!0},Oo=typeof window<"u"?window:Function("return this;")(),wo=(_,T)=>{let M=T??Oo;for(let L=0;L<_.length&&M!==void 0&&M!==null;++L)M=M[_[L]];return M},Gs=(_,T)=>{const M=_.split(".");return wo(M,T)},ws=(_,T)=>Gs(_,T),Pi=(_,T)=>{const M=ws(_,T);if(M==null)throw new Error(_+" not available on this browser");return M},ts=Object.getPrototypeOf,Qi=_=>Pi("HTMLElement",_),nn=_=>{const T=Gs("ownerDocument.defaultView",_);return p(_)&&(Qi(T).prototype.isPrototypeOf(_)||/^HTML\w*Element$/.test(ts(_).constructor.name))},ns=8,Xr=9,Qe=11,Ye=1,wt=3,Ft=_=>_.dom.nodeName.toLowerCase(),Rn=_=>_.dom.nodeType,Xn=_=>T=>Rn(T)===_,ro=_=>Rn(_)===ns||Ft(_)==="#comment",an=_=>Do(_)&&nn(_.dom),Do=Xn(Ye),io=Xn(wt),Wo=Xn(Xr),sr=Xn(Qe),mr=_=>T=>Do(T)&&Ft(T)===_,Ks=(_,T,M)=>{if(h(M)||k(M)||V(M))_.setAttribute(T,M+"");else throw console.error("Invalid call to Attribute.set. Key ",T,":: Value ",M,":: Element ",_),new Error("Attribute value was not simple")},pr=(_,T,M)=>{Ks(_.dom,T,M)},Di=(_,T)=>{const M=_.dom;Dn(T,(L,Y)=>{Ks(M,Y,L)})},cc=(_,T)=>{Dn(T,(M,L)=>{M.fold(()=>{Xe(_,L)},Y=>{Ks(_.dom,L,Y)})})},mi=(_,T)=>{const M=_.dom.getAttribute(T);return M===null?void 0:M},Ge=(_,T)=>Oe.from(mi(_,T)),Xe=(_,T)=>{_.dom.removeAttribute(T)},$t=_=>Fe(_.dom.attributes,(T,M)=>(T[M.name]=M.value,T),{}),Qt=(_,T)=>{const L=(T||document).createElement("div");if(L.innerHTML=_,!L.hasChildNodes()||L.childNodes.length>1){const Y="HTML does not have a single root node";throw console.error(Y,_),new Error(Y)}return qo(L.childNodes[0])},eo=(_,T)=>{const L=(T||document).createElement(_);return qo(L)},co=(_,T)=>{const L=(T||document).createTextNode(_);return qo(L)},qo=_=>{if(_==null)throw new Error("Node cannot be null or undefined");return{dom:_}},nt={fromHtml:Qt,fromTag:eo,fromText:co,fromDom:qo,fromPoint:(_,T,M)=>Oe.from(_.dom.elementFromPoint(T,M)).map(qo)},xo=(_,T)=>{const M=_.dom;if(M.nodeType!==Ye)return!1;{const L=M;if(L.matches!==void 0)return L.matches(T);if(L.msMatchesSelector!==void 0)return L.msMatchesSelector(T);if(L.webkitMatchesSelector!==void 0)return L.webkitMatchesSelector(T);if(L.mozMatchesSelector!==void 0)return L.mozMatchesSelector(T);throw new Error("Browser lacks native selectors")}},jr=_=>_.nodeType!==Ye&&_.nodeType!==Xr&&_.nodeType!==Qe||_.childElementCount===0,Oi=(_,T)=>{const M=T===void 0?document:T.dom;return jr(M)?[]:Rt(M.querySelectorAll(_),nt.fromDom)},ra=(_,T)=>{const M=T===void 0?document:T.dom;return jr(M)?Oe.none():Oe.from(M.querySelector(_)).map(nt.fromDom)},zs=(_,T)=>_.dom===T.dom,Ec=(_,T)=>{const M=_.dom,L=T.dom;return M===L?!1:M.contains(L)},ul=xo,ga=_=>nt.fromDom(_.dom.ownerDocument),Ri=_=>Wo(_)?_:ga(_),As=_=>nt.fromDom(Ri(_).dom.documentElement),rr=_=>nt.fromDom(Ri(_).dom.defaultView),Vi=_=>Oe.from(_.dom.parentNode).map(nt.fromDom),ia=_=>Oe.from(_.dom.parentElement).map(nt.fromDom),Pl=(_,T)=>{const M=F(T)?T:Be;let L=_.dom;const Y=[];for(;L.parentNode!==null&&L.parentNode!==void 0;){const oe=L.parentNode,pe=nt.fromDom(oe);if(Y.push(pe),M(pe)===!0)break;L=oe}return Y},Tc=_=>Oe.from(_.dom.previousSibling).map(nt.fromDom),Ac=_=>Oe.from(_.dom.nextSibling).map(nt.fromDom),Ls=_=>Rt(_.dom.childNodes,nt.fromDom),Ji=(_,T)=>{const M=_.dom.childNodes;return Oe.from(M[T]).map(nt.fromDom)},ka=_=>Ji(_,0),Gc=(_,T)=>{Vi(_).each(L=>{L.dom.insertBefore(T.dom,_.dom)})},xa=(_,T)=>{Ac(_).fold(()=>{Vi(_).each(Y=>{hr(Y,T)})},L=>{Gc(L,T)})},Yr=(_,T)=>{ka(_).fold(()=>{hr(_,T)},L=>{_.dom.insertBefore(T.dom,L.dom)})},hr=(_,T)=>{_.dom.appendChild(T.dom)},ja=(_,T,M)=>{Ji(_,M).fold(()=>{hr(_,T)},L=>{Gc(L,T)})},bu=(_,T)=>{Gc(_,T),hr(T,_)},Us=(_,T)=>{Ue(T,(M,L)=>{const Y=L===0?_:T[L-1];xa(Y,M)})},Mi=(_,T)=>{Ue(T,M=>{hr(_,M)})},zi=_=>{_.dom.textContent="",Ue(Ls(_),T=>{yi(T)})},yi=_=>{const T=_.dom;T.parentNode!==null&&T.parentNode.removeChild(T)},yl=_=>{const T=Ls(_);T.length>0&&Us(_,T),yi(_)},ql=(_,T)=>nt.fromDom(_.dom.cloneNode(T)),ba=_=>ql(_,!1),Dl=_=>ql(_,!0),Rl=(_,T)=>{const M=nt.fromTag(T),L=$t(_);return Di(M,L),M},cd=(_,T)=>{const M=Rl(_,T),L=Ls(Dl(_));return Mi(M,L),M},Ml=(_,T)=>{const M=Rl(_,T);xa(_,M);const L=Ls(_);return Mi(M,L),yi(_),M},Qu=["tfoot","thead","tbody","colgroup"],Ya=_=>Le(Qu,_),uc=(_,T)=>({rows:_,columns:T}),vu=(_,T)=>({row:_,column:T}),ud=(_,T,M)=>({element:_,rowspan:T,colspan:M}),Kd=(_,T,M,L)=>({element:_,rowspan:T,colspan:M,isNew:L}),Ee=(_,T,M,L,Y,oe)=>({element:_,rowspan:T,colspan:M,row:L,column:Y,isLocked:oe}),Ke=(_,T,M)=>({element:_,cells:T,section:M}),ht=(_,T,M,L)=>({element:_,cells:T,section:M,isNew:L}),At=(_,T,M)=>({element:_,isNew:T,isLocked:M}),fn=(_,T,M,L)=>({element:_,cells:T,section:M,isNew:L}),go=(_,T,M,L)=>({startRow:_,startCol:T,finishRow:M,finishCol:L}),ar=(_,T,M)=>({element:_,colspan:T,column:M}),Ko=(_,T)=>({element:_,columns:T}),Io=_=>sr(_)&&N(_.dom.host),Mr=F(Element.prototype.attachShadow)&&F(Node.prototype.getRootNode),Ss=j(Mr),si=Mr?_=>nt.fromDom(_.dom.getRootNode()):Ri,Ga=_=>{const T=si(_);return Io(T)?Oe.some(T):Oe.none()},dd=_=>nt.fromDom(_.dom.host),Mn=_=>{if(Ss()&&N(_.target)){const T=nt.fromDom(_.target);if(Do(T)&&fd(T)&&_.composed&&_.composedPath){const M=_.composedPath();if(M)return Ne(M)}}return Oe.from(_.target)},fd=_=>N(_.dom.shadowRoot),ui=_=>{const T=io(_)?_.dom.parentNode:_.dom;if(T==null||T.ownerDocument===null)return!1;const M=T.ownerDocument;return Ga(nt.fromDom(T)).fold(()=>M.body.contains(T),te(ui,dd))},me=()=>Pe(nt.fromDom(document)),Pe=_=>{const T=_.dom.body;if(T==null)throw new Error("Body is not available yet");return nt.fromDom(T)},We=(_,T,M)=>Zt(Pl(_,M),T),Pt=(_,T)=>Zt(Ls(_),T),Tn=(_,T)=>{let M=[];return Ue(Ls(_),L=>{T(L)&&(M=M.concat([L])),M=M.concat(Tn(L,T))}),M},Ro=(_,T,M)=>We(_,L=>xo(L,T),M),Wn=(_,T)=>Pt(_,M=>xo(M,T)),Lr=(_,T)=>Oi(T,_);var cn=(_,T,M,L,Y)=>_(M,L)?Oe.some(M):F(Y)&&Y(M)?Oe.none():T(M,L,Y);const Or=(_,T,M)=>{let L=_.dom;const Y=F(M)?M:Be;for(;L.parentNode;){L=L.parentNode;const oe=nt.fromDom(L);if(T(oe))return Oe.some(oe);if(Y(oe))break}return Oe.none()},Ka=(_,T,M)=>cn((Y,oe)=>oe(Y),Or,_,T,M),Gr=(_,T)=>{const M=Y=>T(nt.fromDom(Y));return de(_.dom.childNodes,M).map(nt.fromDom)},yr=(_,T)=>{const M=L=>{for(let Y=0;YOr(_,L=>xo(L,T),M),Jo=(_,T)=>Gr(_,M=>xo(M,T)),dl=(_,T)=>ra(T,_),Fr=(_,T,M)=>cn((Y,oe)=>xo(Y,oe),Kc,_,T,M),fl=(_,T,M=fe)=>_.exists(L=>M(L,T)),Nr=_=>{const T=[],M=L=>{T.push(L)};for(let L=0;L<_.length;L++)_[L].each(M);return T},hd=(_,T)=>_!=null?T(_):Oe.none(),Ni=(_,T)=>_?Oe.some(T):Oe.none(),Vu=(_,T,M)=>T===""||_.length>=T.length&&_.substr(M,M+T.length)===T,Ws=(_,T,M=0,L)=>{const Y=_.indexOf(T,M);return Y!==-1?A(L)?!0:Y+T.length<=L:!1},Jc=(_,T)=>Vu(_,T,0),eu=(_,T)=>Vu(_,T,_.length-T.length),dc=(_=>T=>T.replace(_,""))(/^\s+|\s+$/g),th=_=>_.length>0,Os=_=>{const T=parseFloat(_);return isNaN(T)?Oe.none():Oe.some(T)},Ii=_=>_.style!==void 0&&F(_.style.getPropertyValue),Wi=(_,T,M)=>{if(!h(M))throw console.error("Invalid call to CSS.set. Property ",T,":: Value ",M,":: Element ",_),new Error("CSS value must be a string: "+M);Ii(_)&&_.style.setProperty(T,M)},Qp=(_,T)=>{Ii(_)&&_.style.removeProperty(T)},ri=(_,T,M)=>{const L=_.dom;Wi(L,T,M)},Ra=(_,T)=>{const M=_.dom;Dn(T,(L,Y)=>{Wi(M,Y,L)})},va=(_,T)=>{const M=_.dom,Y=window.getComputedStyle(M).getPropertyValue(T);return Y===""&&!ui(_)?Jh(M,T):Y},Jh=(_,T)=>Ii(_)?_.style.getPropertyValue(T):"",em=(_,T)=>{const M=_.dom,L=Jh(M,T);return Oe.from(L).filter(Y=>Y.length>0)},fc=(_,T)=>{const M=_.dom;Qp(M,T),fl(Ge(_,"style").map(dc),"")&&Xe(_,"style")},_f=(_,T)=>{const M=_.dom,L=T.dom;Ii(M)&&Ii(L)&&(L.style.cssText=M.style.cssText)},Sr=(_,T,M=0)=>Ge(_,T).map(L=>parseInt(L,10)).getOr(M),$c=(_,T)=>Sr(_,T,1),Ja=_=>mr("col")(_)?Sr(_,"span",1)>1:$c(_,"colspan")>1,aa=_=>$c(_,"rowspan")>1,Zi=(_,T)=>parseInt(va(_,T),10),ii=j(10),hc=j(10),md=(_,T)=>Jd(_,T,Te),Jd=(_,T,M)=>Yn(Ls(_),L=>xo(L,T)?M(L)?[L]:[]:Jd(L,T,M)),tm=(_,T,M=Be)=>{if(M(T))return Oe.none();if(Le(_,Ft(T)))return Oe.some(T);const L=Y=>xo(Y,"table")||M(Y);return Kc(T,_.join(","),L)},nh=(_,T)=>tm(["td","th"],_,T),_l=_=>md(_,"th,td"),oh=_=>xo(_,"colgroup")?Wn(_,"col"):Yn(sh(_),T=>Wn(T,"col")),Oa=(_,T)=>Fr(_,"table",T),tu=_=>md(_,"tr"),sh=_=>Oa(_).fold(j([]),T=>Wn(T,"colgroup")),Ou=(_,T)=>Rt(_,M=>{if(Ft(M)==="colgroup"){const L=Rt(oh(M),Y=>{const oe=Sr(Y,"span",1);return ud(Y,1,oe)});return Ke(M,L,"colgroup")}else{const L=Rt(_l(M),Y=>{const oe=Sr(Y,"rowspan",1),pe=Sr(Y,"colspan",1);return ud(Y,oe,pe)});return Ke(M,L,T(M))}}),wf=_=>Vi(_).map(T=>{const M=Ft(T);return Ya(M)?M:"tbody"}).getOr("tbody"),hl=_=>{const T=tu(_),L=[...sh(_),...T];return Ou(L,wf)},Sf=(_,T)=>Ou(_,()=>T),zu=_=>{let T=!1,M;return(...L)=>(T||(T=!0,M=_.apply(null,L)),M)},Vm=(_,T,M,L)=>{const Y=_.isiOS()&&/ipad/i.test(M)===!0,oe=_.isiOS()&&!Y,pe=_.isiOS()||_.isAndroid(),ke=pe||L("(pointer:coarse)"),Ie=Y||!oe&&pe&&L("(min-device-width:768px)"),et=oe||pe&&!Ie,vt=T.isSafari()&&_.isiOS()&&/safari/i.test(M)===!1,ln=!et&&!Ie&&!vt;return{isiPad:j(Y),isiPhone:j(oe),isTablet:j(Ie),isPhone:j(et),isTouch:j(ke),isAndroid:_.isAndroid,isiOS:_.isiOS,isWebView:j(vt),isDesktop:j(ln)}},zm=(_,T)=>{for(let M=0;M<_.length;M++){const L=_[M];if(L.test(T))return L}},pd=(_,T)=>{const M=zm(_,T);if(!M)return{major:0,minor:0};const L=Y=>Number(T.replace(M,"$"+Y));return qe(L(1),L(2))},ml=(_,T)=>{const M=String(T).toLowerCase();return _.length===0?Wm():pd(_,M)},Wm=()=>qe(0,0),qe=(_,T)=>({major:_,minor:T}),gd={nu:qe,detect:ml,unknown:Wm},mc=(_,T)=>pn(T.brands,M=>{const L=M.brand.toLowerCase();return de(_,Y=>{var oe;return L===((oe=Y.brand)===null||oe===void 0?void 0:oe.toLowerCase())}).map(Y=>({current:Y.name,version:gd.nu(parseInt(M.version,10),0)}))}),Cf=(_,T)=>{const M=String(T).toLowerCase();return de(_,L=>L.search(M))},Zm=(_,T)=>Cf(_,T).map(M=>{const L=gd.detect(M.versionRegexes,T);return{current:M.name,version:L}}),kf=(_,T)=>Cf(_,T).map(M=>{const L=gd.detect(M.versionRegexes,T);return{current:M.name,version:L}}),dt=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,sn=_=>T=>Ws(T,_),Kt=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:_=>Ws(_,"edge/")&&Ws(_,"chrome")&&Ws(_,"safari")&&Ws(_,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,dt],search:_=>Ws(_,"chrome")&&!Ws(_,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:_=>Ws(_,"msie")||Ws(_,"trident")},{name:"Opera",versionRegexes:[dt,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:sn("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:sn("firefox")},{name:"Safari",versionRegexes:[dt,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:_=>(Ws(_,"safari")||Ws(_,"mobile/"))&&Ws(_,"applewebkit")}],uo=[{name:"Windows",search:sn("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:_=>Ws(_,"iphone")||Ws(_,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:sn("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:sn("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:sn("linux"),versionRegexes:[]},{name:"Solaris",search:sn("sunos"),versionRegexes:[]},{name:"FreeBSD",search:sn("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:sn("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],ps={browsers:j(Kt),oses:j(uo)},qs="Edge",gr="Chromium",br="IE",rh="Opera",Vp="Firefox",Ui="Safari",pc=()=>Um({current:void 0,version:gd.unknown()}),Um=_=>{const T=_.current,M=_.version,L=Y=>()=>T===Y;return{current:T,version:M,isEdge:L(qs),isChromium:L(gr),isIE:L(br),isOpera:L(rh),isFirefox:L(Vp),isSafari:L(Ui)}},la={unknown:pc,nu:Um,edge:j(qs),chromium:j(gr),ie:j(br),opera:j(rh),firefox:j(Vp),safari:j(Ui)},Ci="Windows",nu="iOS",Dr="Android",Pc="Linux",el="macOS",xf="Solaris",zp="FreeBSD",ih="ChromeOS",nm=()=>Wu({current:void 0,version:gd.unknown()}),Wu=_=>{const T=_.current,M=_.version,L=Y=>()=>T===Y;return{current:T,version:M,isWindows:L(Ci),isiOS:L(nu),isAndroid:L(Dr),isMacOS:L(el),isLinux:L(Pc),isSolaris:L(xf),isFreeBSD:L(zp),isChromeOS:L(ih)}},pl={unknown:nm,nu:Wu,windows:j(Ci),ios:j(nu),android:j(Dr),linux:j(Pc),macos:j(el),solaris:j(xf),freebsd:j(zp),chromeos:j(ih)},l1={detect:(_,T,M)=>{const L=ps.browsers(),Y=ps.oses(),oe=T.bind(Ie=>mc(L,Ie)).orThunk(()=>Zm(L,_)).fold(la.unknown,la.nu),pe=kf(Y,_).fold(pl.unknown,pl.nu),ke=Vm(pe,oe,_,M);return{browser:oe,os:pe,deviceType:ke}}},Ef=_=>window.matchMedia(_).matches;let om=zu(()=>l1.detect(navigator.userAgent,Oe.from(navigator.userAgentData),Ef));const bd=()=>om(),vd=(_,T)=>{const M=(ke,Ie)=>{if(!V(Ie)&&!Ie.match(/^[0-9]+$/))throw new Error(_+".set accepts only positive integer values. Value was "+Ie);const et=ke.dom;Ii(et)&&(et.style[_]=Ie+"px")},L=ke=>{const Ie=T(ke);if(Ie<=0||Ie===null){const et=va(ke,_);return parseFloat(et)||0}return Ie},Y=L,oe=(ke,Ie)=>Fe(Ie,(et,vt)=>{const ln=va(ke,vt),Nn=ln===void 0?0:parseInt(ln,10);return isNaN(Nn)?et:et+Nn},0);return{set:M,get:L,getOuter:Y,aggregate:oe,max:(ke,Ie,et)=>{const vt=oe(ke,et);return Ie>vt?Ie-vt:0}}},ef=(_,T)=>Os(_).getOr(T),Cr=(_,T,M)=>ef(va(_,T),M),Rr=(_,T,M,L)=>{const Y=Cr(_,`padding-${M}`,0),oe=Cr(_,`padding-${L}`,0),pe=Cr(_,`border-${M}-width`,0),ke=Cr(_,`border-${L}-width`,0);return T-Y-oe-pe-ke},Ma=(_,T)=>{const M=_.dom,L=M.getBoundingClientRect().width||M.offsetWidth;return T==="border-box"?L:Rr(_,L,"left","right")},qm=_=>Cr(_,"height",_.dom.offsetHeight),Wp=_=>Cr(_,"width",_.dom.offsetWidth),Ea=_=>Ma(_,"content-box"),Dc=vd("width",_=>_.dom.offsetWidth),Na=_=>Dc.get(_),Rc=_=>Dc.getOuter(_),sm=Ea,Zo=Wp,Il=(_,T,M)=>{const L=_.cells,Y=L.slice(0,T),oe=L.slice(T),pe=Y.concat(M).concat(oe);return Ia(_,pe)},Od=(_,T,M)=>Il(_,T,[M]),qi=(_,T,M)=>{const L=_.cells;L[T]=M},Ia=(_,T)=>fn(_.element,T,_.section,_.isNew),Zp=(_,T)=>{const M=_.cells,L=Rt(M,T);return fn(_.element,L,_.section,_.isNew)},Ba=(_,T)=>_.cells[T],ki=(_,T)=>Ba(_,T).element,Xl=_=>_.cells.length,Bi=_=>{const T=dn(_,M=>M.section==="colgroup");return{rows:T.fail,cols:T.pass}},yu=(_,T,M)=>{const L=Rt(_.cells,M);return fn(T(_.element),L,_.section,!0)},Zu="data-snooker-locked-cols",Kr=_=>Ge(_,Zu).bind(T=>Oe.from(T.match(/\d+/g))).map(T=>gt(T,Te)),xi=_=>{const T=Fe(Bi(_).rows,(L,Y)=>(Ue(Y.cells,(oe,pe)=>{oe.isLocked&&(L[pe]=!0)}),L),{}),M=Vs(T,(L,Y)=>parseInt(Y,10));return Ut(M)},Bl=(_,T)=>_+","+T,_u=(_,T,M)=>Oe.from(_.access[Bl(T,M)]),di=(_,T,M)=>{const L=Xm(_,Y=>M(T,Y.element));return L.length>0?Oe.some(L[0]):Oe.none()},Xm=(_,T)=>{const M=Yn(_.all,L=>L.cells);return Zt(M,T)},Up=_=>{const T={};let M=0;return Ue(_.cells,L=>{const Y=L.colspan;mn(Y,oe=>{const pe=M+oe;T[pe]=ar(L.element,Y,pe)}),M+=Y}),T},lr=_=>{const T={},M=[],Y=Ne(_).map(Pn=>Pn.element).bind(Oa).bind(Kr).getOr({});let oe=0,pe=0,ke=0;const{pass:Ie,fail:et}=dn(_,Pn=>Pn.section==="colgroup");Ue(et,Pn=>{const Yt=[];Ue(Pn.cells,In=>{let Xt=0;for(;T[Bl(ke,Xt)]!==void 0;)Xt++;const oo=ms(Y,Xt.toString()),Bo=Ee(In.element,In.rowspan,In.colspan,ke,Xt,oo);for(let us=0;us{const Yt=Up(Pn);return{colgroups:[Ko(Pn.element,Ts(Yt))],columns:Yt}}).getOrThunk(()=>({colgroups:[],columns:{}}));return{grid:uc(oe,pe),access:T,all:M,columns:vt,colgroups:ln}},xe={fromTable:_=>{const T=hl(_);return lr(T)},generate:lr,getAt:_u,findItem:di,filterItems:Xm,justCells:_=>Yn(_.all,T=>T.cells),justColumns:_=>Ts(_.columns),hasColumns:_=>xt(_.columns).length>0,getColumnAt:(_,T)=>Oe.from(_.columns[T])},Nc=(_,T=Te)=>{const M=_.grid,L=mn(M.columns,ae),Y=mn(M.rows,ae);return Rt(L,oe=>Tf(()=>Yn(Y,et=>xe.getAt(_,et,oe).filter(vt=>vt.column===oe).toArray()),et=>et.colspan===1&&T(et.element),()=>xe.getAt(_,0,oe)))},Tf=(_,T,M)=>{const L=_();return de(L,T).orThunk(()=>Oe.from(L[0]).orThunk(M)).map(pe=>pe.element)},jl=_=>{const T=_.grid,M=mn(T.rows,ae),L=mn(T.columns,ae);return Rt(M,Y=>Tf(()=>Yn(L,Ie=>xe.getAt(_,Y,Ie).filter(et=>et.row===Y).fold(j([]),et=>[et])),Ie=>Ie.rowspan===1,()=>xe.getAt(_,Y,0)))},_r=(_,T)=>{if(T<0||T>=_.length-1)return Oe.none();const M=_[T].fold(()=>{const Y=cs(_.slice(0,T));return pn(Y,(oe,pe)=>oe.map(ke=>({value:ke,delta:pe+1})))},Y=>Oe.some({value:Y,delta:0})),L=_[T+1].fold(()=>{const Y=_.slice(T+1);return pn(Y,(oe,pe)=>oe.map(ke=>({value:ke,delta:pe+1})))},Y=>Oe.some({value:Y,delta:1}));return M.bind(Y=>L.map(oe=>{const pe=oe.delta+Y.delta;return Math.abs(oe.value-Y.value)/pe}))},qp=(_,T)=>M=>im(M)==="rtl"?T:_,im=_=>va(_,"direction")==="rtl"?"rtl":"ltr",jm=vd("height",_=>{const T=_.dom;return ui(_)?T.getBoundingClientRect().height:T.offsetHeight}),su=_=>jm.get(_),X=_=>jm.getOuter(_),re=qm,ye=(_,T)=>({left:_,top:T,translate:(L,Y)=>ye(_+L,T+Y)}),Ze=ye,tt=_=>{const T=_.getBoundingClientRect();return Ze(T.left,T.top)},tn=(_,T)=>_!==void 0?_:T!==void 0?T:0,Kn=_=>{const T=_.dom.ownerDocument,M=T.body,L=T.defaultView,Y=T.documentElement;if(M===_.dom)return Ze(M.offsetLeft,M.offsetTop);const oe=tn(L==null?void 0:L.pageYOffset,Y.scrollTop),pe=tn(L==null?void 0:L.pageXOffset,Y.scrollLeft),ke=tn(Y.clientTop,M.clientTop),Ie=tn(Y.clientLeft,M.clientLeft);return Mo(_).translate(pe-Ie,oe-ke)},Mo=_=>{const T=_.dom,L=T.ownerDocument.body;return L===T?Ze(L.offsetLeft,L.offsetTop):ui(_)?tt(T):Ze(0,0)},To=(_,T)=>({row:_,y:T}),_o=(_,T)=>({col:_,x:T}),ai=_=>Kn(_).left+Rc(_),pi=_=>Kn(_).left,Yl=(_,T)=>_o(_,pi(T)),Uu=(_,T)=>_o(_,ai(T)),Fa=_=>Kn(_).top,F0=(_,T)=>To(_,Fa(T)),Hr=(_,T)=>To(_,Fa(T)+X(T)),Jn=(_,T,M)=>{if(M.length===0)return[];const L=Rt(M.slice(1),(oe,pe)=>oe.map(ke=>_(pe,ke))),Y=M[M.length-1].map(oe=>T(M.length-1,oe));return L.concat([Y])},yd=_=>-_,Zn={delta:ae,positions:_=>Jn(F0,Hr,_),edge:Fa},_d=qp({delta:ae,edge:pi,positions:_=>Jn(Yl,Uu,_)},{delta:yd,edge:ai,positions:_=>Jn(Uu,Yl,_)}),ea={delta:(_,T)=>_d(T).delta(_,T),positions:(_,T)=>_d(T).positions(_,T),edge:_=>_d(_).edge(_)},tf={unsupportedLength:["em","ex","cap","ch","ic","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","cm","mm","Q","in","pc","pt","px"],fixed:["px","pt"],relative:["%"],empty:[""]},Ym=(()=>{const _="[0-9]+",M="[eE]"+("[+-]?"+_),L="\\.",Y=ke=>`(?:${ke})?`,pe=`[+-]?(?:${["Infinity",_+L+Y(_)+Y(M),L+_+Y(M),_+Y(M)].join("|")})`;return new RegExp(`^(${pe})(.*)$`)})(),Ta=(_,T)=>je(T,M=>je(tf[M],L=>_===L)),Su=(_,T)=>Oe.from(Ym.exec(_)).bind(L=>{const Y=Number(L[1]),oe=L[2];return Ta(oe,T)?Oe.some({value:Y,unit:oe}):Oe.none()}),Xp=/(\d+(\.\d+)?)%/,wd=/(\d+(\.\d+)?)px|em/,jp=mr("col"),nf=(_,T,M)=>{const L=ia(_).getOrThunk(()=>Pe(ga(_)));return T(_)/M(L)*100},un=(_,T)=>{ri(_,"width",T+"px")},rb=(_,T)=>{ri(_,"width",T+"%")},of=(_,T)=>{ri(_,"height",T+"px")},sf=_=>re(_)+"px",ru=(_,T,M,L)=>{const Y=Oa(_).map(oe=>{const pe=M(oe);return Math.floor(T/100*pe)}).getOr(T);return L(_,Y),Y},li=(_,T,M,L)=>{const Y=parseFloat(_);return eu(_,"%")&&Ft(T)!=="table"?ru(T,Y,M,L):Y},Js=_=>{const T=sf(_);return T?li(T,_,su,of):su(_)},Ei=(_,T,M)=>{const L=M(_),Y=$c(_,T);return L/Y},wl=(_,T)=>em(_,T).orThunk(()=>Ge(_,T).map(M=>M+"px")),ys=_=>wl(_,"width"),lh=_=>wl(_,"height"),ca=_=>nf(_,Na,sm),Qr=_=>jp(_)?Na(_):Zo(_),Gm=_=>Ei(_,"rowspan",Js),Gt=_=>ys(_).bind(M=>Su(M,["fixed","relative","empty"])),Sl=(_,T,M)=>{ri(_,"width",T+M)},Km=_=>Na(_)+"px",Fs=_=>nf(_,Na,sm)+"%",Li=_=>ys(_).exists(T=>Xp.test(T)),Yp=_=>ys(_).exists(T=>wd.test(T)),Cu=_=>ys(_).isNone(),ku=j(Xp),Ic=mr("col"),am=_=>ys(_).getOrThunk(()=>Qr(_)+"px"),tl=_=>lh(_).getOrThunk(()=>Gm(_)+"px"),er=_=>Rt(xe.justColumns(_),T=>Oe.from(T.element)),ua=_=>{const T=bd().browser,M=T.isChromium()||T.isFirefox();return Ic(_)?M:!0},rf=(_,T,M,L,Y,oe)=>_.filter(L).fold(()=>oe(_r(M,T)),pe=>Y(pe)),nl=(_,T,M,L)=>{const Y=Nc(_),oe=xe.hasColumns(_)?er(_):Y,pe=[Oe.some(ea.edge(T))].concat(Rt(ea.positions(Y,T),Ie=>Ie.map(et=>et.x))),ke=ne(Ja);return Rt(oe,(Ie,et)=>rf(Ie,et,pe,ke,vt=>{if(ua(vt))return M(vt);{const ln=hd(Y[et],ae);return rf(ln,et,pe,ke,Nn=>L(Oe.some(Na(Nn))),L)}},L))},c1=_=>_.map(T=>T+"px").getOr(""),ch=(_,T)=>nl(_,T,am,c1),af=(_,T,M)=>nl(_,T,ca,L=>L.fold(()=>M.minCellWidth(),Y=>Y/M.pixelWidth()*100)),Ll=(_,T,M)=>nl(_,T,Qr,L=>L.getOrThunk(M.minCellWidth)),xu=(_,T,M,L,Y)=>{const oe=jl(_),pe=[Oe.some(M.edge(T))].concat(Rt(M.positions(oe,T),ke=>ke.map(Ie=>Ie.y)));return Rt(oe,(ke,Ie)=>rf(ke,Ie,pe,ne(aa),L,Y))},_t=(_,T,M)=>xu(_,T,M,Gm,L=>L.getOrThunk(hc)),Gl=(_,T,M)=>xu(_,T,M,tl,c1),iu=(_,T)=>()=>ui(_)?T(_):parseFloat(em(_,"width").getOr("0")),Fl=_=>{const T=iu(_,Na),M=j(0);return{width:T,pixelWidth:T,getWidths:(Y,oe)=>Ll(Y,_,oe),getCellDelta:M,singleColumnWidth:j([0]),minCellWidth:M,setElementWidth:W,adjustTableWidth:W,isRelative:!0,label:"none"}},Kl=_=>{const T=iu(_,Ie=>parseFloat(Fs(Ie))),M=iu(_,Na);return{width:T,pixelWidth:M,getWidths:(Ie,et)=>af(Ie,_,et),getCellDelta:Ie=>Ie/M()*100,singleColumnWidth:(Ie,et)=>[100-Ie],minCellWidth:()=>ii()/M()*100,setElementWidth:rb,adjustTableWidth:Ie=>{const et=T(),vt=Ie/100*et,ln=et+vt;rb(_,ln)},isRelative:!0,label:"percent"}},ya=_=>{const T=iu(_,Na);return{width:T,pixelWidth:T,getWidths:(pe,ke)=>Ll(pe,_,ke),getCellDelta:ae,singleColumnWidth:(pe,ke)=>[Math.max(ii(),pe+ke)-pe],minCellWidth:ii,setElementWidth:un,adjustTableWidth:pe=>{const ke=T()+pe;un(_,ke)},isRelative:!1,label:"pixel"}},da=(_,T)=>ku().exec(T)!==null?Kl(_):ya(_),Jl={getTableSize:_=>ys(_).fold(()=>Fl(_),M=>da(_,M)),pixelSize:ya,percentageSize:Kl,noneSize:Fl},Sd=(_,T,M,L,Y,oe)=>({minRow:_,minCol:T,maxRow:M,maxCol:L,allCells:Y,selectedCells:oe}),bo=(_,T)=>{const M=_.grid.columns;let Y=_.grid.rows,oe=M,pe=0,ke=0;const Ie=[],et=[];return Dn(_.access,vt=>{if(Ie.push(vt),T(vt)){et.push(vt);const ln=vt.row,Nn=ln+vt.rowspan-1,Pn=vt.column,Yt=Pn+vt.colspan-1;lnpe&&(pe=Nn),Pnke&&(ke=Yt)}}),Sd(Y,oe,pe,ke,Ie,et)},z=(_,T,M)=>{const L=_[M].element,Y=nt.fromTag("td");hr(Y,nt.fromTag("br")),(T?hr:Yr)(L,Y)},K=(_,T,M,L)=>{const Y=Zt(_,ke=>ke.section!=="colgroup"),oe=T.grid.columns,pe=T.grid.rows;for(let ke=0;keM.maxRow||etM.maxCol||(xe.getAt(T,ke,et).filter(L).isNone()?z(Y,Ie,ke):Ie=!0)}},ve=(_,T,M,L)=>{Dn(M.columns,pe=>{(pe.columnT.maxCol)&&yi(pe.element)});const Y=Zt(md(_,"tr"),pe=>pe.dom.childElementCount===0);Ue(Y,yi),(T.minCol===T.maxCol||T.minRow===T.maxRow)&&Ue(md(_,"th,td"),pe=>{Xe(pe,"rowspan"),Xe(pe,"colspan")}),Xe(_,Zu),Xe(_,"data-snooker-col-series"),Jl.getTableSize(_).adjustTableWidth(L)},Ae=(_,T,M,L)=>{if(L.minCol===0&&T.grid.columns===L.maxCol+1)return 0;const Y=Ll(T,_,M),oe=Fe(Y,(et,vt)=>et+vt,0),Ie=Fe(Y.slice(L.minCol,L.maxCol+1),(et,vt)=>et+vt,0)/oe*M.pixelWidth()-M.pixelWidth();return M.getCellDelta(Ie)},ot=(_,T)=>{const M=Nn=>xo(Nn.element,T),L=Dl(_),Y=hl(L),oe=Jl.getTableSize(_),pe=xe.generate(Y),ke=bo(pe,M),Ie="th:not("+T+"),td:not("+T+")",et=Jd(L,"th,td",Nn=>xo(Nn,Ie));Ue(et,yi),K(Y,pe,ke,M);const vt=xe.fromTable(_),ln=Ae(_,vt,oe,ke);return ve(L,ke,pe,ln),L},Vt=" ",xn=((_,T)=>{const M=oe=>{if(!_(oe))throw new Error("Can only get "+T+" value of a "+T+" node");return L(oe).getOr("")},L=oe=>_(oe)?Oe.from(oe.dom.nodeValue):Oe.none();return{get:M,getOption:L,set:(oe,pe)=>{if(!_(oe))throw new Error("Can only set raw "+T+" value of a "+T+" node");oe.dom.nodeValue=pe}}})(io,"text"),ao=_=>xn.get(_),Uo=_=>xn.getOption(_),_i=(_,T)=>xn.set(_,T),tr=_=>Ft(_)==="img"?1:Uo(_).fold(()=>Ls(_).length,T=>T.length),Vr=_=>Uo(_).filter(T=>T.trim().length!==0||T.indexOf(Vt)>-1).isSome(),gc=_=>an(_)&&mi(_,"contenteditable")==="false",Cl=["img","br"],Bc=_=>Vr(_)||Le(Cl,Ft(_))||gc(_),Cd=_=>yr(_,Bc),qu=_=>uh(_,Bc),uh=(_,T)=>{const M=L=>{const Y=Ls(L);for(let oe=Y.length-1;oe>=0;oe--){const pe=Y[oe];if(T(pe))return Oe.some(pe);const ke=M(pe);if(ke.isSome())return ke}return Oe.none()};return M(_)},Xs={scope:["row","col"]},dh=_=>()=>{const T=nt.fromTag("td",_.dom);return hr(T,nt.fromTag("br",_.dom)),T},Jm=_=>()=>nt.fromTag("col",_.dom),Ti=_=>()=>nt.fromTag("colgroup",_.dom),Lc=_=>()=>nt.fromTag("tr",_.dom),lm=(_,T,M)=>{const L=cd(_,T);return Dn(M,(Y,oe)=>{Y===null?Xe(L,oe):pr(L,oe,Y)}),L},fh=_=>_,ds=(_,T,M)=>Cd(_).map(Y=>{const oe=M.join(","),pe=Ro(Y,oe,ke=>zs(ke,_));return rn(pe,(ke,Ie)=>{const et=ba(Ie);return hr(ke,et),et},T)}).getOr(T),_s=(_,T)=>{Dn(Xs,(M,L)=>Ge(_,L).filter(Y=>Le(M,Y)).each(Y=>pr(T,L,Y)))},fa=(_,T,M)=>{const L=(pe,ke)=>{_f(pe.element,ke),fc(ke,"height"),pe.colspan!==1&&fc(ke,"width")},Y=pe=>{const ke=nt.fromTag(Ft(pe.element),T.dom),Ie=M.getOr(["strong","em","b","i","span","font","h1","h2","h3","h4","h5","h6","p","div"]),et=Ie.length>0?ds(pe.element,ke,Ie):ke;return hr(et,nt.fromTag("br")),L(pe,ke),_s(pe.element,ke),_(pe.element,ke),ke};return{col:pe=>{const ke=nt.fromTag(Ft(pe.element),T.dom);return L(pe,ke),_(pe.element,ke),ke},colgroup:Ti(T),row:Lc(T),cell:Y,replace:lm,colGap:Jm(T),gap:dh(T)}},ol=_=>({col:Jm(_),colgroup:Ti(_),row:Lc(_),cell:dh(_),replace:fh,colGap:Jm(_),gap:dh(_)}),Gp=(_,T)=>{const L=document.createElement("div");return L.innerHTML=_,Ls(nt.fromDom(L))},kd=_=>Rt(_,nt.fromDom),gi=_=>T=>T.options.get(_),Fc="100%",Eu=_=>{var T;const M=_.dom,L=(T=M.getParent(_.selection.getStart(),M.isBlock))!==null&&T!==void 0?T:_.getBody();return sm(nt.fromDom(L))+"px"},hh=(_,T)=>bh(_)||!au(_)?T:gh(_)?{...T,width:Eu(_)}:{...T,width:Fc},Af=(_,T)=>bh(_)||au(_)?T:gh(_)?{...T,width:Eu(_)}:{...T,width:Fc},ep=_=>{const T=_.options.register;T("table_clone_elements",{processor:"string[]"}),T("table_use_colgroups",{processor:"boolean",default:!0}),T("table_header_type",{processor:M=>{const L=Le(["section","cells","sectionCells","auto"],M);return L?{value:M,valid:L}:{valid:!1,message:"Must be one of: section, cells, sectionCells or auto."}},default:"section"}),T("table_sizing_mode",{processor:"string",default:"auto"}),T("table_default_attributes",{processor:"object",default:{border:"1"}}),T("table_default_styles",{processor:"object",default:{"border-collapse":"collapse"}}),T("table_column_resizing",{processor:M=>{const L=Le(["preservetable","resizetable"],M);return L?{value:M,valid:L}:{valid:!1,message:"Must be preservetable, or resizetable."}},default:"preservetable"}),T("table_resize_bars",{processor:"boolean",default:!0}),T("table_style_by_css",{processor:"boolean",default:!0}),T("table_merge_content_on_paste",{processor:"boolean",default:!0})},lf=_=>Oe.from(_.options.get("table_clone_elements")),NO=_=>{const T=_.options.get("object_resizing");return Le(T.split(","),"table")},mh=gi("table_header_type"),d1=gi("table_column_resizing"),ph=_=>d1(_)==="preservetable",ta=_=>d1(_)==="resizetable",Xu=gi("table_sizing_mode"),xd=_=>Xu(_)==="relative",gh=_=>Xu(_)==="fixed",bh=_=>Xu(_)==="responsive",tp=gi("table_resize_bars"),au=gi("table_style_by_css"),Fi=gi("table_merge_content_on_paste"),Ed=_=>{const T=_.options,M=T.get("table_default_attributes");return T.isSet("table_default_attributes")?M:Af(_,M)},ib=_=>{const T=_.options,M=T.get("table_default_styles");return T.isSet("table_default_styles")?M:hh(_,M)},f1=gi("table_use_colgroups"),h1=_=>Fr(_,"[contenteditable]"),vh=(_,T=!1)=>ui(_)?_.dom.isContentEditable:h1(_).fold(j(T),M=>ec(M)==="true"),ec=_=>_.dom.contentEditable,ju=_=>nt.fromDom(_.getBody()),$f=_=>T=>zs(T,ju(_)),cf=_=>{Xe(_,"data-mce-style");const T=M=>Xe(M,"data-mce-style");Ue(_l(_),T),Ue(oh(_),T),Ue(tu(_),T)},bc=_=>nt.fromDom(_.selection.getStart()),Yu=_=>_.getBoundingClientRect().width,Oh=_=>_.getBoundingClientRect().height,H0=(_,T)=>{const M=_.dom.getStyle(T,"width")||_.dom.getAttrib(T,"width");return Oe.from(M).filter(th)},ab=_=>/^(\d+(\.\d+)?)%$/.test(_),Kp=_=>/^(\d+(\.\d+)?)px$/.test(_),yh=_=>Ka(_,mr("table")).exists(vh),Jp=(_,T)=>{const M=T.column,L=T.column+T.colspan-1,Y=T.row,oe=T.row+T.rowspan-1;return M<=_.finishCol&&L>=_.startCol&&Y<=_.finishRow&&oe>=_.startRow},lb=(_,T)=>T.column>=_.startCol&&T.column+T.colspan-1<=_.finishCol&&T.row>=_.startRow&&T.row+T.rowspan-1<=_.finishRow,eg=(_,T)=>{let M=!0;const L=_e(lb,T);for(let Y=T.startRow;Y<=T.finishRow;Y++)for(let oe=T.startCol;oe<=T.finishCol;oe++)M=M&&xe.getAt(_,Y,oe).exists(L);return M?Oe.some(T):Oe.none()},tg=(_,T)=>go(Math.min(_.row,T.row),Math.min(_.column,T.column),Math.max(_.row+_.rowspan-1,T.row+T.rowspan-1),Math.max(_.column+_.colspan-1,T.column+T.colspan-1)),gs=(_,T,M)=>{const L=xe.findItem(_,T,zs),Y=xe.findItem(_,M,zs);return L.bind(oe=>Y.map(pe=>tg(oe,pe)))},ho=(_,T,M)=>gs(_,T,M).bind(L=>eg(_,L)),Td=(_,T,M,L)=>xe.findItem(_,T,zs).bind(Y=>{const oe=M>0?Y.row+Y.rowspan-1:Y.row,pe=L>0?Y.column+Y.colspan-1:Y.column;return xe.getAt(_,oe+M,pe+L).map(Ie=>Ie.element)}),ng=(_,T,M)=>gs(_,T,M).map(L=>{const Y=xe.filterItems(_,_e(Jp,L));return Rt(Y,oe=>oe.element)}),cm=(_,T)=>{const M=(L,Y)=>Ec(Y,L);return xe.findItem(_,T,M).map(L=>L.element)},tw=(_,T,M)=>Oa(_).bind(L=>{const Y=m1(L);return Td(Y,_,T,M)}),cb=(_,T,M)=>{const L=m1(_);return ng(L,T,M)},kr=(_,T,M,L,Y)=>{const oe=m1(_),pe=zs(_,M)?Oe.some(T):cm(oe,T),ke=zs(_,Y)?Oe.some(L):cm(oe,L);return pe.bind(Ie=>ke.bind(et=>ng(oe,Ie,et)))},ub=(_,T,M)=>{const L=m1(_);return ho(L,T,M)},m1=xe.fromTable;var Q0=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","li","table","thead","tbody","tfoot","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],qt=()=>{const _=et=>nt.fromDom(et.dom.cloneNode(!1)),T=et=>Ri(et).dom,M=et=>Do(et)?Ft(et)==="body"?!0:Le(Q0,Ft(et)):!1,L=et=>Do(et)?Le(["br","img","hr","input"],Ft(et)):!1,Y=et=>Do(et)&&mi(et,"contenteditable")==="false",oe=(et,vt)=>et.dom.compareDocumentPosition(vt.dom),pe=(et,vt)=>{const ln=$t(et);Di(vt,ln)},ke=et=>{const vt=Ft(et);return Le(["script","noscript","iframe","noframes","noembed","title","style","textarea","xmp"],vt)},Ie=et=>Do(et)?Ge(et,"lang"):Oe.none();return{up:j({selector:Kc,closest:Fr,predicate:Or,all:Pl}),down:j({selector:Lr,predicate:Tn}),styles:j({get:va,getRaw:em,set:ri,remove:fc}),attrs:j({get:mi,set:pr,remove:Xe,copyTo:pe}),insert:j({before:Gc,after:xa,afterAll:Us,append:hr,appendAll:Mi,prepend:Yr,wrap:bu}),remove:j({unwrap:yl,remove:yi}),create:j({nu:nt.fromTag,clone:_,text:nt.fromText}),query:j({comparePosition:oe,prevSibling:Tc,nextSibling:Ac}),property:j({children:Ls,name:Ft,parent:Vi,document:T,isText:io,isComment:ro,isElement:Do,isSpecial:ke,getLanguage:Ie,getText:ao,setText:_i,isBoundary:M,isEmptyTag:L,isNonEditable:Y}),eq:zs,is:ul}};const Ad=(_,T,M,L)=>{const Y=M[0],oe=M.slice(1);return L(_,T,Y,oe)},IO=(_,T,M)=>M.length>0?Ad(_,T,M,og):Oe.none(),og=(_,T,M,L)=>{const Y=T(_,M);return rn(L,(oe,pe)=>{const ke=T(_,pe);return nw(_,oe,ke)},Y)},nw=(_,T,M)=>T.bind(L=>M.filter(_e(_.eq,L))),np=(_,T)=>_e(_.eq,T),V0=(_,T,M,L=Be)=>{const Y=[T].concat(_.up().all(T)),oe=[M].concat(_.up().all(M)),pe=vt=>Eo(vt,L).fold(()=>vt,Nn=>vt.slice(0,Nn+1)),ke=pe(Y),Ie=pe(oe),et=de(ke,vt=>je(Ie,np(_,vt)));return{firstpath:ke,secondpath:Ie,shared:et}},_h=IO,wh=V0,$d=qt(),xr=(_,T)=>_h($d,(M,L)=>_(L),T),Pd=(_,T,M)=>wh($d,_,T,M),sg=_=>Kc(_,"table"),vc=(_,T,M)=>{const L=Y=>oe=>M!==void 0&&M(oe)||zs(oe,Y);return zs(_,T)?Oe.some({boxes:Oe.some([_]),start:_,finish:T}):sg(_).bind(Y=>sg(T).bind(oe=>{if(zs(Y,oe))return Oe.some({boxes:cb(Y,_,T),start:_,finish:T});if(Ec(Y,oe)){const pe=Ro(T,"td,th",L(Y)),ke=pe.length>0?pe[pe.length-1]:T;return Oe.some({boxes:kr(Y,_,Y,T,oe),start:_,finish:ke})}else if(Ec(oe,Y)){const pe=Ro(_,"td,th",L(oe)),ke=pe.length>0?pe[pe.length-1]:_;return Oe.some({boxes:kr(oe,_,Y,T,oe),start:_,finish:ke})}else return Pd(_,T).shared.bind(pe=>Fr(pe,"table",M).bind(ke=>{const Ie=Ro(T,"td,th",L(ke)),et=Ie.length>0?Ie[Ie.length-1]:T,vt=Ro(_,"td,th",L(ke)),ln=vt.length>0?vt[vt.length-1]:_;return Oe.some({boxes:kr(ke,_,Y,T,oe),start:ln,finish:et})}))}))},ls=(_,T)=>{const M=Lr(_,T);return M.length>0?Oe.some(M):Oe.none()},rg=(_,T)=>de(_,M=>xo(M,T)),Sh=(_,T,M)=>dl(_,T).bind(L=>dl(_,M).bind(Y=>xr(sg,[L,Y]).map(oe=>({first:L,last:Y,table:oe})))),um=(_,T)=>Kc(_,"table").bind(M=>dl(M,T).bind(L=>vc(L,_).bind(Y=>Y.boxes.map(oe=>({boxes:oe,start:Y.start,finish:Y.finish}))))),db=(_,T,M,L,Y)=>rg(_,Y).bind(oe=>tw(oe,T,M).bind(pe=>um(pe,L))),p1=(_,T)=>ls(_,T),BO=(_,T,M)=>Sh(_,T,M).bind(L=>{const Y=Ie=>zs(_,Ie),oe="thead,tfoot,tbody,table",pe=Kc(L.first,oe,Y),ke=Kc(L.last,oe,Y);return pe.bind(Ie=>ke.bind(et=>zs(Ie,et)?ub(L.table,L.first,L.last):Oe.none()))}),tc=ae,Pf=_=>{const T=(L,Y)=>Ge(L,Y).exists(oe=>parseInt(oe,10)>1),M=L=>T(L,"rowspan")||T(L,"colspan");return _.length>0&&po(_,M)?Oe.some(_):Oe.none()},eC=(_,T,M)=>T.length<=1?Oe.none():BO(_,M.firstSelectedSelector,M.lastSelectedSelector).map(L=>({bounds:L,cells:T})),fb="data-mce-selected",op="td["+fb+"],th["+fb+"]",gl="["+fb+"]",Vn="data-mce-first-selected",ow="td["+Vn+"],th["+Vn+"]",z0="data-mce-last-selected",Ch="td["+z0+"],th["+z0+"]",Hc=gl,kh={selected:fb,selectedSelector:op,firstSelected:Vn,firstSelectedSelector:ow,lastSelected:z0,lastSelectedSelector:Ch},ig=(_,T,M)=>({element:M,mergable:eC(T,_,kh),unmergable:Pf(_),selection:tc(_)}),sp=(_,T,M)=>({element:_,clipboard:T,generators:M}),ag=(_,T,M,L)=>({selection:tc(_),clipboard:M,generators:L}),hb=_=>Oa(_).bind(T=>p1(T,kh.firstSelectedSelector)).fold(j(_),T=>T[0]),Gu=_=>(T,M)=>{const L=Ft(T),Y=L==="col"||L==="colgroup"?hb(T):T;return Fr(Y,_,M)},Dd=Gu("th,td,caption"),lg=Gu("th,td"),Ku=_=>kd(_.model.table.getSelectedCells()),mb=_=>Zt(Ku(_),T=>xo(T,kh.selectedSelector)),LO=_=>Oa(_[0]).map(T=>{const M=ot(T,Hc);return cf(M),[M]}),cg=(_,T)=>Rt(T,M=>_.selection.serializer.serialize(M.dom,{})).join(""),Df=_=>Rt(_,T=>T.dom.innerText).join(""),FO=(_,T)=>{_.on("BeforeGetContent",M=>{const L=Y=>{M.preventDefault(),LO(Y).each(oe=>{M.content=M.format==="text"?Df(oe):cg(_,oe)})};if(M.selection===!0){const Y=mb(_);Y.length>=1&&L(Y)}}),_.on("BeforeSetContent",M=>{if(M.selection===!0&&M.paste===!0){const L=Ku(_);Ne(L).each(Y=>{Oa(Y).each(oe=>{const pe=Zt(Gp(M.content),Ie=>Ft(Ie)!=="meta"),ke=mr("table");if(Fi(_)&&pe.length===1&&ke(pe[0])){M.preventDefault();const Ie=nt.fromDom(_.getDoc()),et=ol(Ie),vt=sp(Y,pe[0],et);T.pasteCells(oe,vt).each(()=>{_.focus()})}})})}})},ug=(_,T)=>({element:_,offset:T}),xh=(_,T,M)=>_.property().isText(T)&&_.property().getText(T).trim().length===0||_.property().isComment(T)?M(T).bind(L=>xh(_,L,M).orThunk(()=>Oe.some(L))):Oe.none(),Ju=(_,T)=>_.property().isText(T)?_.property().getText(T).length:_.property().children(T).length,Hl=(_,T)=>{const M=xh(_,T,_.query().prevSibling).getOr(T);if(_.property().isText(M))return ug(M,Ju(_,M));const L=_.property().children(M);return L.length>0?Hl(_,L[L.length-1]):ug(M,Ju(_,M))},W0=Hl,Z0=qt(),U0=_=>W0(Z0,_),dg=(_,T)=>{Ja(_)||Gt(_).each(L=>{const Y=L.value/2;Sl(_,Y,L.unit),Sl(T,Y,L.unit)})},Qc=_=>Rt(_,j(0)),lu=(_,T,M,L,Y)=>Y(_.slice(0,T)).concat(L).concat(Y(_.slice(M))),Rf=_=>(T,M,L,Y)=>{if(_(L)){const oe=Math.max(Y,T[M]-Math.abs(L)),pe=Math.abs(oe-T[M]);return L>=0?pe:-pe}else return L},pb=Rf(_=>_<0),HO=Rf(Te),QO=()=>{const _=(ke,Ie,et,vt,ln)=>{const Nn=pb(ke,Ie,vt,ln);return lu(ke,Ie,et+1,[Nn,0],Qc)},T=(ke,Ie,et,vt)=>{const ln=(100+et)/100,Nn=Math.max(vt,(ke[Ie]+et)/ln);return Rt(ke,(Pn,Yt)=>(Yt===Ie?Nn:Pn/ln)-Pn)},M=(ke,Ie,et,vt,ln,Nn)=>Nn?T(ke,Ie,vt,ln):_(ke,Ie,et,vt,ln);return{resizeTable:(ke,Ie)=>ke(Ie),clampTableDelta:pb,calcLeftEdgeDeltas:M,calcMiddleDeltas:(ke,Ie,et,vt,ln,Nn,Pn)=>M(ke,et,vt,ln,Nn,Pn),calcRightEdgeDeltas:(ke,Ie,et,vt,ln,Nn)=>{if(Nn)return T(ke,et,vt,ln);{const Pn=pb(ke,et,vt,ln);return Qc(ke.slice(0,et)).concat([Pn])}},calcRedestributedWidths:(ke,Ie,et,vt)=>{if(vt){const Nn=(Ie+et)/Ie,Pn=Rt(ke,Yt=>Yt/Nn);return{delta:Nn*100-100,newSizes:Pn}}else return{delta:et,newSizes:ke}}}},q0=()=>{const _=(pe,ke,Ie,et,vt)=>{const ln=et>=0?Ie:ke,Nn=HO(pe,ln,et,vt);return lu(pe,ke,Ie+1,[Nn,-Nn],Qc)};return{resizeTable:(pe,ke,Ie)=>{Ie&&pe(ke)},clampTableDelta:(pe,ke,Ie,et,vt)=>{if(vt){if(Ie>=0)return Ie;{const ln=Fe(pe,(Nn,Pn)=>Nn+Pn-et,0);return Math.max(-ln,Ie)}}else return pb(pe,ke,Ie,et)},calcLeftEdgeDeltas:_,calcMiddleDeltas:(pe,ke,Ie,et,vt,ln)=>_(pe,Ie,et,vt,ln),calcRightEdgeDeltas:(pe,ke,Ie,et,vt,ln)=>{if(ln)return Qc(pe);{const Nn=et/pe.length;return Rt(pe,j(Nn))}},calcRedestributedWidths:(pe,ke,Ie,et)=>({delta:0,newSizes:pe})}},fg=_=>xe.fromTable(_).grid,hg=mr("th"),gb=_=>po(_,T=>hg(T.element)),sw=(_,T)=>_&&T?"sectionCells":_?"section":"cells",bb=_=>{const T=_.section==="thead",M=fl(mg(_.cells),"th");return _.section==="tfoot"?{type:"footer"}:T||M?{type:"header",subType:sw(T,M)}:{type:"body"}},mg=_=>{const T=Zt(_,M=>hg(M.element));return T.length===0?Oe.some("td"):T.length===_.length?Oe.some("th"):Oe.none()},rw=_=>{const T=Rt(_,Y=>bb(Y).type),M=Le(T,"header"),L=Le(T,"footer");if(!M&&!L)return Oe.some("body");{const Y=Le(T,"body");return M&&!Y&&!L?Oe.some("header"):!M&&!Y&&L?Oe.some("footer"):Oe.none()}},g1=_=>pn(_.all,T=>{const M=bb(T);return M.type==="header"?Oe.from(M.subType):Oe.none()}),X0=(_,T,M)=>At(M(_.element,T),!0,_.isLocked),Vc=(_,T)=>_.section!==T?fn(_.element,_.cells,T,_.isNew):_,b1=()=>({transformRow:Vc,transformCell:(_,T,M)=>{const L=M(_.element,T),Y=Ft(L)!=="td"?Ml(L,"td"):L;return At(Y,_.isNew,_.isLocked)}}),j0=()=>({transformRow:Vc,transformCell:X0}),vb=()=>({transformRow:(_,T)=>Vc(_,T==="thead"?"tbody":T),transformCell:X0}),Eh={getTableSectionType:(_,T)=>{const M=xe.fromTable(_);switch(g1(M).getOr(T)){case"section":return b1();case"sectionCells":return j0();case"cells":return vb()}},section:b1,sectionCells:j0,cells:vb,fallback:()=>({transformRow:ae,transformCell:X0})},Mf=(_,T,M,L)=>{M===L?Xe(_,T):pr(_,T,M)},Y0=(_,T,M)=>{Nt(Wn(_,T)).fold(()=>Yr(_,M),L=>xa(L,M))},pg=(_,T)=>{const M=Jo(_,T).getOrThunk(()=>{const L=nt.fromTag(T,ga(_).dom);return T==="thead"?Y0(_,"caption,colgroup",L):T==="colgroup"?Y0(_,"caption",L):hr(_,L),L});return zi(M),M},yb=(_,T)=>{const M=[],L=[],Y=Pn=>Rt(Pn,Yt=>{Yt.isNew&&M.push(Yt.element);const In=Yt.element;return zi(In),Ue(Yt.cells,Xt=>{Xt.isNew&&L.push(Xt.element),Mf(Xt.element,"colspan",Xt.colspan,1),Mf(Xt.element,"rowspan",Xt.rowspan,1),hr(In,Xt.element)}),In}),oe=Pn=>Yn(Pn,Yt=>Rt(Yt.cells,In=>(Mf(In.element,"span",In.colspan,1),In.element))),pe=(Pn,Yt)=>{const In=pg(_,Yt),oo=(Yt==="colgroup"?oe:Y)(Pn);Mi(In,oo)},ke=Pn=>{Jo(_,Pn).each(yi)},Ie=(Pn,Yt)=>{Pn.length>0?pe(Pn,Yt):ke(Yt)},et=[],vt=[],ln=[],Nn=[];return Ue(T,Pn=>{switch(Pn.section){case"thead":et.push(Pn);break;case"tbody":vt.push(Pn);break;case"tfoot":ln.push(Pn);break;case"colgroup":Nn.push(Pn);break}}),Ie(Nn,"colgroup"),Ie(et,"thead"),Ie(vt,"tbody"),Ie(ln,"tfoot"),{newRows:M,newCells:L}},VO=_=>Rt(_,T=>{const M=ba(T.element);return Ue(T.cells,L=>{const Y=Dl(L.element);Mf(Y,"colspan",L.colspan,1),Mf(Y,"rowspan",L.rowspan,1),hr(M,Y)}),M}),Jr=(_,T)=>Rt(_,M=>Ba(M,T)),Rd=(_,T)=>_[T],na=(_,T)=>{if(_.length===0)return 0;const M=_[0];return Eo(_,Y=>!T(M.element,Y.element)).getOr(_.length)},zO=(_,T,M,L)=>{const Y=Rd(_,T),oe=Y.section==="colgroup",pe=na(Y.cells.slice(M),L),ke=oe?1:na(Jr(_.slice(T),M),L);return{colspan:pe,rowspan:ke}},wi=(_,T)=>{const M=Rt(_,Y=>Rt(Y.cells,Be)),L=(Y,oe,pe,ke)=>{for(let Ie=Y;Ie{const pe=Yn(Y.cells,(ke,Ie)=>{if(M[oe][Ie]===!1){const et=zO(_,oe,Ie,T);return L(oe,Ie,et.rowspan,et.colspan),[Kd(ke.element,et.rowspan,et.colspan,ke.isNew)]}else return[]});return ht(Y.element,pe,Y.section,Y.isNew)})},rp=(_,T,M)=>{const L=[];Ue(_.colgroups,Y=>{const oe=[];for(let pe=0;pe<_.grid.columns;pe++){const ke=xe.getColumnAt(_,pe).map(Ie=>At(Ie.element,M,!1)).getOrThunk(()=>At(T.colGap(),!0,!1));oe.push(ke)}L.push(fn(Y.element,oe,"colgroup",M))});for(let Y=0;Y<_.grid.rows;Y++){const oe=[];for(let Ie=0;Ie<_.grid.columns;Ie++){const et=xe.getAt(_,Y,Ie).map(vt=>At(vt.element,M,vt.isLocked)).getOrThunk(()=>At(T.gap(),!0,!1));oe.push(et)}const pe=_.all[Y],ke=fn(pe.element,oe,pe.section,M);L.push(ke)}return L},Aa=(_,T)=>rp(_,T,!1),Ai=_=>wi(_,zs),Tu=(_,T)=>pn(_.all,M=>de(M.cells,L=>zs(T,L.element))),G0=(_,T,M)=>{const L=Rt(T.selection,oe=>nh(oe).bind(pe=>Tu(_,pe)).filter(M)),Y=Nr(L);return Ni(Y.length>0,Y)},sl=(_,T,M,L,Y)=>(oe,pe,ke,Ie)=>{const et=xe.fromTable(oe),vt=Oe.from(Ie==null?void 0:Ie.section).getOrThunk(Eh.fallback);return T(et,pe).map(Nn=>{const Pn=Aa(et,ke),Yt=_(Pn,Nn,zs,Y(ke),vt),In=xi(Yt.grid),Xt=Ai(Yt.grid);return{info:Nn,grid:Xt,cursor:Yt.cursor,lockedColumns:In}}).bind(Nn=>{const Pn=yb(oe,Nn.grid),Yt=Oe.from(Ie==null?void 0:Ie.sizing).getOrThunk(()=>Jl.getTableSize(oe)),In=Oe.from(Ie==null?void 0:Ie.resize).getOrThunk(q0);return M(oe,Nn.grid,Nn.info,{sizing:Yt,resize:In,section:vt}),L(oe),Xe(oe,Zu),Nn.lockedColumns.length>0&&pr(oe,Zu,Nn.lockedColumns.join(",")),Oe.some({cursor:Nn.cursor,newRows:Pn.newRows,newCells:Pn.newCells})})},v1=(_,T)=>nh(T.element).bind(M=>Tu(_,M).map(L=>({...L,generators:T.generators,clipboard:T.clipboard}))),gg=(_,T)=>G0(_,T,Te).map(M=>({cells:M,generators:T.generators,clipboard:T.clipboard})),Nf=(_,T)=>T.mergable,bg=(_,T)=>T.unmergable,dm=(_,T)=>G0(_,T,Te),Th=(_,T)=>G0(_,T,M=>!M.isLocked),iw=(_,T)=>Tu(_,T).exists(M=>!M.isLocked),WO=(_,T)=>po(T,M=>iw(_,M)),nC=(_,T)=>Nf(_,T).filter(M=>WO(_,M.cells)),oC=(_,T)=>bg(_,T).filter(M=>WO(_,M)),Md=(_,T,M,L)=>{const Y=Bi(_).rows;if(Y.length===0)return _;for(let oe=T.startRow;oe<=T.finishRow;oe++)for(let pe=T.startCol;pe<=T.finishCol;pe++){const ke=Y[oe],Ie=Ba(ke,pe).isLocked;qi(ke,pe,At(L(),!1,Ie))}return _},nc=(_,T,M,L)=>{const Y=Bi(_).rows;let oe=!0;for(let pe=0;peFe(_,(M,L)=>je(M,Y=>T(Y.element,L.element))?M:M.concat([L]),[]),lw=(_,T,M,L)=>(T>0&&T<_[0].cells.length&&Ue(_,Y=>{const oe=Y.cells[T-1];let pe=0;const ke=L();for(;Y.cells.length>T+pe&&M(oe.element,Y.cells[T+pe].element);)qi(Y,T+pe,At(ke,!0,Y.cells[T+pe].isLocked)),pe++}),_),fm=(_,T,M,L)=>{const Y=Bi(_).rows;if(T>0&&T{let Ie=Oe.none();for(let et=T;et{qi(ln,vt,At(Yt,!0,Nn.isLocked))}))}})}return _},O1=_=>{const T=oe=>oe(_),M=j(_),L=()=>Y,Y={tag:!0,inner:_,fold:(oe,pe)=>pe(_),isValue:Te,isError:Be,map:oe=>If.value(oe(_)),mapError:L,bind:T,exists:T,forall:T,getOr:M,or:L,getOrThunk:M,orThunk:L,getOrDie:M,each:oe=>{oe(_)},toOptional:()=>Oe.some(_)};return Y},_b=_=>{const T=()=>M,M={tag:!1,inner:_,fold:(L,Y)=>L(_),isValue:Be,isError:Te,map:T,mapError:L=>If.error(L(_)),bind:T,exists:Be,forall:Te,getOr:ae,or:ae,getOrThunk:De,orThunk:De,getOrDie:Se(String(_)),each:W,toOptional:Oe.none};return M},If={value:O1,error:_b,fromOption:(_,T)=>_.fold(()=>_b(T),O1)},vg=(_,T,M)=>{if(_.row>=T.length||_.column>Xl(T[0]))return If.error("invalid start address out of table bounds, row: "+_.row+", column: "+_.column);const L=T.slice(_.row),Y=L[0].cells.slice(_.column),oe=Xl(M[0]),pe=M.length;return If.value({rowDelta:L.length-pe,colDelta:Y.length-oe})},hm=(_,T)=>{const M=Xl(_[0]),L=Xl(T[0]);return{rowDelta:0,colDelta:M-L}},ip=(_,T)=>{const M=_.length,L=T.length;return{rowDelta:M-L,colDelta:0}},ap=(_,T,M,L)=>{const Y=T.section==="colgroup"?M.col:M.cell;return mn(_,oe=>At(Y(),!0,L(oe)))},ZO=(_,T,M,L)=>{const Y=_[_.length-1];return _.concat(mn(T,()=>{const oe=Y.section==="colgroup"?M.colgroup:M.row,pe=yu(Y,oe,ae),ke=ap(pe.cells.length,pe,M,Ie=>vs(L,Ie.toString()));return Ia(pe,ke)}))},Xi=(_,T,M,L)=>Rt(_,Y=>{const oe=ap(T,Y,M,Be);return Il(Y,L,oe)}),UO=(_,T,M)=>Rt(_,L=>Fe(M,(Y,oe)=>{const pe=ap(1,L,T,Te)[0];return Od(Y,oe,pe)},L)),Og=(_,T,M)=>{const L=T.colDelta<0?Xi:ae,Y=T.rowDelta<0?ZO:ae,oe=xi(_),pe=Xl(_[0]),ke=je(oe,vt=>vt===pe-1),Ie=L(_,Math.abs(T.colDelta),M,ke?pe-1:pe),et=xi(Ie);return Y(Ie,Math.abs(T.rowDelta),M,gt(et,Te))},qO=(_,T,M,L)=>{const Y=Ba(_[T],M),oe=_e(L,Y.element),pe=_[T];return _.length>1&&Xl(pe)>1&&(M>0&&oe(ki(pe,M-1))||M0&&oe(ki(_[T-1],M))||T<_.length-1&&oe(ki(_[T+1],M)))},Sb=(_,T,M,L,Y,oe)=>{const pe=_.row,ke=_.column,Ie=M.length,et=Xl(M[0]),vt=pe+Ie,ln=ke+et+oe.length,Nn=gt(oe,Te);for(let Pn=pe;Pn{const L=Xl(T[0]),Y=Bi(T).cols.length+_.row,oe=mn(L-_.column,ke=>ke+_.column),pe=de(oe,ke=>po(M,Ie=>Ie!==ke)).getOr(L-1);return{row:Y,column:pe}},cu=(_,T,M)=>Zt(M,L=>L>=_.column&&L<=Xl(T[0])+_.column),XO=(_,T,M,L,Y)=>{const oe=xi(T),pe=Ql(_,T,oe),ke=Bi(M).rows,Ie=cu(pe,ke,oe);return vg(pe,T,ke).map(vt=>{const ln={...vt,colDelta:vt.colDelta-Ie.length},Nn=Og(T,ln,L),Pn=xi(Nn),Yt=cu(pe,ke,Pn);return Sb(pe,Nn,ke,L,Y,Yt)})},lp=(_,T,M,L,Y)=>{lw(T,_,Y,L.cell);const oe=ip(M,T),pe=Og(M,oe,L),ke=ip(T,pe),Ie=Og(T,ke,L);return Rt(Ie,(et,vt)=>Il(et,_,pe[vt].cells))},cp=(_,T,M,L,Y)=>{fm(T,_,Y,L.cell);const oe=xi(T),pe=hm(T,M),ke={...pe,colDelta:pe.colDelta-oe.length},Ie=Og(T,ke,L),{cols:et,rows:vt}=Bi(Ie),ln=xi(Ie),Nn=hm(M,T),Pn={...Nn,colDelta:Nn.colDelta+ln.length},Yt=UO(M,L,ln),In=Og(Yt,Pn,L);return[...et,...vt.slice(0,_),...In,...vt.slice(_,vt.length)]},cw=(_,T,M,L)=>yu(_,Y=>L(Y,M),T),jO=(_,T,M,L,Y)=>{const{rows:oe,cols:pe}=Bi(_),ke=oe.slice(0,T),Ie=oe.slice(T),et=cw(oe[M],(vt,ln)=>T>0&&T{if(M==="colgroup"||!L){const ke=Ba(_,Y);return At(pe(ke.element,oe),!0,!1)}else return Ba(_,T)},uu=(_,T,M,L,Y)=>Rt(_,oe=>{const pe=T>0&&TYn(_,M=>{const L=M.cells,Y=rn(T,(oe,pe)=>pe>=0&&pe0?[fn(M.element,Y,M.section,M.isNew)]:[]}),oa=(_,T,M)=>{const{rows:L,cols:Y}=Bi(_);return[...Y,...L.slice(0,T),...L.slice(M+1)]},uf=(_,T,M,L)=>ki(_[T],M)!==void 0&&T>0&&L(ki(_[T-1],M),ki(_[T],M)),yg=(_,T,M)=>T>0&&M(ki(_,T-1),ki(_,T)),mm=(_,T,M,L)=>uf(_,T,M,L)||yg(_[T],M,L),up=(_,T)=>po(T,ae)&&gb(_.cells)?Te:(L,Y,oe)=>!(Ft(L.element)==="th"&&T[oe]),dp=(_,T)=>po(T,ae)&&gb(_)?Te:(L,Y,oe)=>!(Ft(L.element)==="th"&&T[Y]),Ah=(_,T,M,L)=>{const Y=pe=>pe==="row"?aa(T):Ja(T),oe=pe=>Y(pe)?`${pe}group`:pe;return _?hg(T)?oe(M):null:L&&hg(T)?oe(M==="row"?"col":"row"):null},YO=(_,T)=>(M,L,Y)=>Oe.some(Ah(_,M.element,"col",T[Y])),fp=(_,T)=>(M,L)=>Oe.some(Ah(_,M.element,"row",T[L])),pm=(_,T,M)=>At(M(_.element,T),!0,_.isLocked),gm=(_,T,M,L,Y,oe,pe)=>{const ke=Ie=>je(T,et=>M(Ie.element,et.element));return Rt(_,(Ie,et)=>Zp(Ie,(vt,ln)=>{if(ke(vt)){const Nn=pe(vt,et,ln)?Y(vt,M,L):vt;return oe(Nn,et,ln).each(Pn=>{cc(Nn.element,{scope:Oe.from(Pn)})}),Nn}else return vt}))},J0=(_,T,M)=>Yn(_,(L,Y)=>mm(_,Y,T,M)?[]:[Ba(L,T)]),uw=(_,T,M)=>{const L=_[T];return Yn(L.cells,(Y,oe)=>mm(_,T,oe,M)?[]:[Y])},ev=(_,T,M,L,Y)=>{const oe=Bi(_).rows,pe=Yn(T,vt=>J0(oe,vt,L)),ke=Rt(oe,vt=>gb(vt.cells)),Ie=dp(pe,ke),et=fp(M,ke);return gm(_,pe,L,Y,pm,et,Ie)},dw=(_,T,M,L,Y,oe,pe)=>{const{cols:ke,rows:Ie}=Bi(_),et=Ie[T[0]],vt=Yn(T,Xt=>uw(Ie,Xt,Y)),ln=Rt(et.cells,(Xt,oo)=>gb(J0(Ie,oo,Y))),Nn=[...Ie];Ue(T,Xt=>{Nn[Xt]=pe.transformRow(Ie[Xt],M)});const Pn=[...ke,...Nn],Yt=up(et,ln),In=YO(L,ln);return gm(Pn,vt,Y,oe,pe.transformCell,In,Yt)},kb=(_,T,M,L)=>{const Y=Bi(_).rows,oe=Rt(T,pe=>Ba(Y[pe.row],pe.column));return gm(_,oe,M,L,pm,Oe.none,Te)},du={generate:_=>{if(!b(_))throw new Error("cases must be an array");if(_.length===0)throw new Error("there must be at least one case");const T=[],M={};return Ue(_,(L,Y)=>{const oe=xt(L);if(oe.length!==1)throw new Error("one and only one name per case");const pe=oe[0],ke=L[pe];if(M[pe]!==void 0)throw new Error("duplicate key detected:"+pe);if(pe==="cata")throw new Error("cannot have a case named cata (sorry)");if(!b(ke))throw new Error("case arguments must be an array");T.push(pe),M[pe]=(...Ie)=>{const et=Ie.length;if(et!==ke.length)throw new Error("Wrong number of arguments to case "+pe+". Expected "+ke.length+" ("+ke+"), got "+et);return{fold:(...ln)=>{if(ln.length!==_.length)throw new Error("Wrong number of arguments to fold. Expected "+_.length+", got "+ln.length);return ln[Y].apply(null,Ie)},match:ln=>{const Nn=xt(ln);if(T.length!==Nn.length)throw new Error("Wrong number of arguments to match. Expected: "+T.join(",")+` -Actual: `+Nn.join(","));if(!po(T,Yt=>Le(Nn,Yt)))throw new Error("Not all branches were specified when using match. Specified: "+Nn.join(", ")+` -Required: `+T.join(", "));return ln[pe].apply(null,Ie)},log:ln=>{console.log(ln,{constructors:T,constructor:pe,params:Ie})}}}}),M}},wg={...du.generate([{none:[]},{only:["index"]},{left:["index","next"]},{middle:["prev","index","next"]},{right:["prev","index"]}])},KO=(_,T)=>_.length===0?wg.none():_.length===1?wg.only(0):T===0?wg.left(0,1):T===_.length-1?wg.right(T-1,T):T>0&&T<_.length-1?wg.middle(T-1,T,T+1):wg.none(),fw=(_,T,M,L,Y)=>{const oe=_.slice(0),pe=KO(_,T),ke=j(Rt(oe,j(0))),Ie=Nn=>L.singleColumnWidth(oe[Nn],M),et=(Nn,Pn)=>Y.calcLeftEdgeDeltas(oe,Nn,Pn,M,L.minCellWidth(),L.isRelative),vt=(Nn,Pn,Yt)=>Y.calcMiddleDeltas(oe,Nn,Pn,Yt,M,L.minCellWidth(),L.isRelative),ln=(Nn,Pn)=>Y.calcRightEdgeDeltas(oe,Nn,Pn,M,L.minCellWidth(),L.isRelative);return pe.fold(ke,Ie,et,vt,ln)},y1=(_,T,M)=>{let L=0;for(let Y=_;Y{const M=xe.justCells(_);return Rt(M,L=>{const Y=y1(L.column,L.column+L.colspan,T);return{element:L.element,width:Y,colspan:L.colspan}})},xb=(_,T)=>{const M=xe.justColumns(_);return Rt(M,(L,Y)=>({element:L.element,width:T[Y],colspan:L.colspan}))},Ps=(_,T)=>{const M=xe.justCells(_);return Rt(M,L=>{const Y=y1(L.row,L.row+L.rowspan,T);return{element:L.element,height:Y,rowspan:L.rowspan}})},fu=(_,T)=>Rt(_.all,(M,L)=>({element:M.element,height:T[L]})),df=_=>rn(_,(T,M)=>T+M,0),Sg=(_,T)=>xe.hasColumns(_)?xb(_,T):bm(_,T),Er=(_,T,M)=>{const L=Sg(_,T);Ue(L,Y=>{M.setElementWidth(Y.element,Y.width)})},Cg=(_,T,M,L,Y)=>{const oe=xe.fromTable(_),pe=Y.getCellDelta(T),ke=Y.getWidths(oe,Y),Ie=M===oe.grid.columns-1,et=L.clampTableDelta(ke,M,pe,Y.minCellWidth(),Ie),vt=fw(ke,M,et,Y,L),ln=Rt(vt,(Nn,Pn)=>Nn+ke[Pn]);Er(oe,ln,Y),L.resizeTable(Y.adjustTableWidth,et,Ie)},Eb=(_,T,M,L)=>{const Y=xe.fromTable(_),oe=_t(Y,_,L),pe=Rt(oe,(vt,ln)=>M===ln?Math.max(T+vt,hc()):vt),ke=Ps(Y,pe),Ie=fu(Y,pe);Ue(Ie,vt=>{of(vt.element,vt.height)}),Ue(ke,vt=>{of(vt.element,vt.height)});const et=df(pe);of(_,et)},wa=(_,T,M,L,Y)=>{const oe=xe.generate(T),pe=L.getWidths(oe,L),ke=L.pixelWidth(),{newSizes:Ie,delta:et}=Y.calcRedestributedWidths(pe,ke,M.pixelDelta,L.isRelative);Er(oe,Ie,L),L.adjustTableWidth(et)},ff=(_,T,M,L)=>{const Y=xe.generate(T),oe=L.getWidths(Y,L);Er(Y,oe,L)},$h=_=>Fe(_,(M,L)=>je(M,oe=>oe.column===L.column)?M:M.concat([L]),[]).sort((M,L)=>M.column-L.column),Tb=mr("col"),_1=mr("colgroup"),w1=_=>Ft(_)==="tr"||_1(_),tv=_=>{const T=Sr(_,"colspan",1),M=Sr(_,"rowspan",1);return{element:_,colspan:T,rowspan:M}},Ab=(_,T=tv)=>{const M=ke=>Tb(ke.element)?_.col(ke):_.cell(ke),L=ke=>_1(ke.element)?_.colgroup(ke):_.row(ke),Y=ke=>{if(w1(ke))return L({element:ke});{const Ie=ke,et=M(T(Ie));return oe=Oe.some({item:Ie,replacement:et}),et}};let oe=Oe.none();return{getOrInit:(ke,Ie)=>oe.fold(()=>Y(ke),et=>Ie(ke,et.item)?et.replacement:Y(ke))}},ed=_=>T=>{const M=[],L=(pe,ke)=>de(M,Ie=>ke(Ie.item,pe)),Y=pe=>{const ke=_==="td"?{scope:null}:{},Ie=T.replace(pe,_,ke);return M.push({item:pe,sub:Ie}),Ie};return{replaceOrInit:(pe,ke)=>{if(w1(pe)||Tb(pe))return pe;{const Ie=pe;return L(Ie,ke).fold(()=>Y(Ie),et=>ke(pe,et.item)?et.sub:Y(Ie))}}}},Nd=_=>Ge(_,"scope").map(T=>T.substr(0,3)),Dt={modification:Ab,transform:ed,merging:_=>({unmerge:L=>{const Y=Nd(L);return Y.each(oe=>pr(L,"scope",oe)),()=>{const oe=_.cell({element:L,colspan:1,rowspan:1});return fc(oe,"width"),fc(L,"width"),Y.each(pe=>pr(oe,"scope",pe)),oe}},merge:L=>{const Y=()=>{const oe=Nr(Rt(L,Nd));if(oe.length===0)return Oe.none();{const pe=oe[0],ke=["row","col"];return je(oe,et=>et!==pe&&Le(ke,et))?Oe.none():Oe.from(pe)}};return fc(L[0],"width"),Y().fold(()=>Xe(L[0],"scope"),oe=>pr(L[0],"scope",oe+"group")),j(L[0])}})},hp=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","table","thead","tfoot","tbody","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],mp=(_,T)=>{const M=_.property().name(T);return Le(["ol","ul"],M)},Au=(_,T)=>{const M=_.property().name(T);return Le(hp,M)},nv=(_,T)=>Le(["br","img","hr","input"],_.property().name(T)),bi=qt(),$b=_=>Au(bi,_),Ph=_=>mp(bi,_),ov=_=>nv(bi,_),Pb=_=>{const T=mr("br"),M=Ie=>po(Ie,et=>T(et)||io(et)&&ao(et).trim().length===0),L=Ie=>Ft(Ie)==="li"||Or(Ie,Ph).isSome(),Y=Ie=>Ac(Ie).map(et=>$b(et)?!0:ov(et)?Ft(et)!=="img":!1).getOr(!1),oe=Ie=>qu(Ie).bind(et=>{const vt=Y(et);return Vi(et).map(ln=>vt===!0||L(ln)||T(et)||$b(ln)&&!zs(Ie,ln)?[]:[nt.fromTag("br")])}).getOr([]),ke=(()=>{const Ie=Yn(_,et=>{const vt=Ls(et);return M(vt)?[]:vt.concat(oe(et))});return Ie.length===0?[nt.fromTag("br")]:Ie})();zi(_[0]),Mi(_[0],ke)},sv=_=>vh(_,!0),S1=_=>{_l(_).length===0&&yi(_)},kg=(_,T)=>({grid:_,cursor:T}),rv=_=>pn(_,T=>pn(T.cells,M=>{const L=M.element;return Ni(sv(L),L)})),mw=(_,T,M)=>{var L,Y;const oe=Bi(_).rows;return Oe.from((Y=(L=oe[T])===null||L===void 0?void 0:L.cells[M])===null||Y===void 0?void 0:Y.element).filter(sv).orThunk(()=>rv(oe))},sa=(_,T,M)=>{const L=mw(_,T,M);return kg(_,L)},Qa=_=>Fe(_,(M,L)=>je(M,oe=>oe.row===L.row)?M:M.concat([L]),[]).sort((M,L)=>M.row-L.row),kl=(_,T,M,L)=>{const Y=T[0].row,oe=Qa(T),pe=rn(oe,(ke,Ie)=>({grid:jO(ke.grid,Y,Ie.row+ke.delta,M,L.getOrInit),delta:ke.delta+1}),{grid:_,delta:0}).grid;return sa(pe,Y,T[0].column)},Va=(_,T,M,L)=>{const Y=Qa(T),oe=Y[Y.length-1],pe=oe.row+oe.rowspan,ke=rn(Y,(Ie,et)=>jO(Ie,pe,et.row,M,L.getOrInit),_);return sa(ke,pe,T[0].column)},os=(_,T,M,L)=>{const Y=T.details,oe=$h(Y),pe=oe[0].column,ke=rn(oe,(Ie,et)=>({grid:uu(Ie.grid,pe,et.column+Ie.delta,M,L.getOrInit),delta:Ie.delta+1}),{grid:_,delta:0}).grid;return sa(ke,Y[0].row,pe)},oc=(_,T,M,L)=>{const Y=T.details,oe=Y[Y.length-1],pe=oe.column+oe.colspan,ke=$h(Y),Ie=rn(ke,(et,vt)=>uu(et,pe,vt.column,M,L.getOrInit),_);return sa(Ie,Y[0].row,pe)},zr=(_,T,M,L)=>{const Y=$h(T),oe=Rt(Y,ke=>ke.column),pe=ev(_,oe,!0,M,L.replaceOrInit);return sa(pe,T[0].row,T[0].column)},za=(_,T,M,L)=>{const Y=kb(_,T,M,L.replaceOrInit);return sa(Y,T[0].row,T[0].column)},C1=(_,T,M,L)=>{const Y=$h(T),oe=Rt(Y,ke=>ke.column),pe=ev(_,oe,!1,M,L.replaceOrInit);return sa(pe,T[0].row,T[0].column)},Bf=(_,T,M,L)=>{const Y=kb(_,T,M,L.replaceOrInit);return sa(Y,T[0].row,T[0].column)},k1=(_,T)=>(M,L,Y,oe,pe)=>{const ke=Qa(L),Ie=Rt(ke,vt=>vt.row),et=dw(M,Ie,_,T,Y,oe.replaceOrInit,pe);return sa(et,L[0].row,L[0].column)},iv=k1("thead",!0),JO=k1("tbody",!1),Db=k1("tfoot",!1),av=(_,T,M,L)=>{const Y=$h(T.details),oe=Cb(_,Rt(Y,ke=>ke.column)),pe=oe.length>0?oe[0].cells.length-1:0;return sa(oe,Y[0].row,Math.min(Y[0].column,pe))},lv=(_,T,M,L)=>{const Y=Qa(T),oe=oa(_,Y[0].row,Y[Y.length-1].row),pe=oe.length>0?oe.length-1:0;return sa(oe,Math.min(T[0].row,pe),T[0].column)},pw=(_,T,M,L)=>{const Y=T.cells;Pb(Y);const oe=Md(_,T.bounds,M,L.merge(Y));return kg(oe,Oe.from(Y[0]))},Lf=(_,T,M,L)=>{const oe=rn(T,(pe,ke)=>nc(pe,ke,M,L.unmerge(ke)),_);return kg(oe,Oe.from(T[0]))},ey=(_,T,M,L)=>{const oe=((Ie,et)=>{const vt=xe.fromTable(Ie);return rp(vt,et,!0)})(T.clipboard,T.generators),pe=vu(T.row,T.column);return XO(pe,_,oe,T.generators,M).fold(()=>kg(_,Oe.some(T.element)),Ie=>sa(Ie,T.row,T.column))},Dh=(_,T,M)=>{const L=Sf(_,M.section),Y=xe.generate(L);return rp(Y,T,!0)},ha=(_,T,M,L)=>{const Y=Bi(_).rows,oe=T.cells[0].column,pe=Y[T.cells[0].row],ke=Dh(T.clipboard,T.generators,pe),Ie=lp(oe,_,ke,T.generators,M);return sa(Ie,T.cells[0].row,T.cells[0].column)},Wa=(_,T,M,L)=>{const Y=Bi(_).rows,oe=T.cells[T.cells.length-1].column+T.cells[T.cells.length-1].colspan,pe=Y[T.cells[0].row],ke=Dh(T.clipboard,T.generators,pe),Ie=lp(oe,_,ke,T.generators,M);return sa(Ie,T.cells[0].row,T.cells[0].column)},gw=(_,T,M,L)=>{const Y=Bi(_).rows,oe=T.cells[0].row,pe=Y[oe],ke=Dh(T.clipboard,T.generators,pe),Ie=cp(oe,_,ke,T.generators,M);return sa(Ie,T.cells[0].row,T.cells[0].column)},zc=(_,T,M,L)=>{const Y=Bi(_).rows,oe=T.cells[T.cells.length-1].row+T.cells[T.cells.length-1].rowspan,pe=Y[T.cells[0].row],ke=Dh(T.clipboard,T.generators,pe),Ie=cp(oe,_,ke,T.generators,M);return sa(Ie,T.cells[0].row,T.cells[0].column)},sC=(_,T)=>{const M=xe.fromTable(_);return dm(M,T).bind(Y=>{const oe=Y[Y.length-1],pe=Y[0].column,ke=oe.column+oe.colspan,Ie=jn(Rt(M.all,et=>Zt(et.cells,vt=>vt.column>=pe&&vt.column{const M=xe.fromTable(_);return dm(M,T).bind(mg).getOr("")},On=(_,T)=>{const M=xe.fromTable(_);return dm(M,T).bind(Y=>{const oe=Y[Y.length-1],pe=Y[0].row,ke=oe.row+oe.rowspan,Ie=M.all.slice(pe,ke);return rw(Ie)}).getOr("")},cv=(_,T,M,L)=>ff(_,T,M,L.sizing),Za=(_,T,M,L)=>wa(_,T,M,L.sizing,L.resize),uv=(_,T)=>je(T,M=>M.column===0&&M.isLocked),vm=(_,T)=>je(T,M=>M.column+M.colspan>=_.grid.columns&&M.isLocked),x1=(_,T)=>{const M=Nc(_),L=$h(T);return Fe(L,(Y,oe)=>{const ke=M[oe.column].map(Rc).getOr(0);return Y+ke},0)},Wc=_=>(T,M)=>dm(T,M).filter(L=>!(_?uv:vm)(T,L)).map(L=>({details:L,pixelDelta:x1(T,L)})),ty=(_,T)=>Th(_,T).map(M=>({details:M,pixelDelta:-x1(_,M)})),E1=_=>(T,M)=>gg(T,M).filter(L=>!(_?uv:vm)(T,L.cells)),ji=Dt.transform("th"),mf=Dt.transform("td"),T1=sl(kl,dm,W,W,Dt.modification),Ff=sl(Va,dm,W,W,Dt.modification),Id=sl(os,Wc(!0),Za,W,Dt.modification),Hn=sl(oc,Wc(!1),Za,W,Dt.modification),$u=sl(av,ty,Za,S1,Dt.modification),dv=sl(lv,dm,W,S1,Dt.modification),Hf=sl(zr,Th,W,W,ji),cr=sl(C1,Th,W,W,mf),fv=sl(iv,Th,W,W,ji),Pu=sl(JO,Th,W,W,mf),Rb=sl(Db,Th,W,W,mf),bw=sl(za,Th,W,W,ji),vi=sl(Bf,Th,W,W,mf),vw=sl(pw,nC,cv,W,Dt.merging),Vl=sl(Lf,oC,cv,W,Dt.merging),Om=sl(ey,v1,cv,W,Dt.modification),Ow=sl(ha,E1(!0),W,W,Dt.modification),yw=sl(Wa,E1(!1),W,W,Dt.modification),hv=sl(gw,gg,W,W,Dt.modification),_w=sl(zc,gg,W,W,Dt.modification),ny=sC,oy=hf,A1=On,sy=(_,T)=>_.dispatch("NewRow",{node:T}),mv=(_,T)=>_.dispatch("NewCell",{node:T}),pp=(_,T,M)=>{_.dispatch("TableModified",{...M,table:T})},ww=(_,T,M,L,Y)=>{_.dispatch("TableSelectionChange",{cells:T,start:M,finish:L,otherCells:Y})},Sw=_=>{_.dispatch("TableSelectionClear")},pv=(_,T,M,L,Y)=>{_.dispatch("ObjectResizeStart",{target:T,width:M,height:L,origin:Y})},gv=(_,T,M,L,Y)=>{_.dispatch("ObjectResized",{target:T,width:M,height:L,origin:Y})},Rh={structure:!1,style:!0},fs={structure:!0,style:!1},bv={structure:!0,style:!0},sc=(_,T)=>xd(_)?Jl.percentageSize(T):gh(_)?Jl.pixelSize(T):Jl.getTableSize(T),Mb=(_,T,M)=>{const L=mu=>Ft(ju(mu))==="table",Y=mu=>!L(_)||fg(mu).rows>1,oe=mu=>!L(_)||fg(mu).columns>1,pe=lf(_),ke=ta(_)?W:dg,Ie=mu=>{switch(mh(_)){case"section":return Eh.section();case"sectionCells":return Eh.sectionCells();case"cells":return Eh.cells();default:return Eh.getTableSectionType(mu,"section")}},et=(mu,OS)=>OS.cursor.fold(()=>{const Jv=_l(mu);return Ne(Jv).filter(ui).map(Tm=>{M.clearSelectedCells(mu.dom);const wc=_.dom.createRng();return wc.selectNode(Tm.dom),_.selection.setRng(wc),pr(Tm,"data-mce-selected","1"),wc})},Jv=>{const Tm=U0(Jv),wc=_.dom.createRng();return wc.setStart(Tm.element.dom,Tm.offset),wc.setEnd(Tm.element.dom,Tm.offset),_.selection.setRng(wc),M.clearSelectedCells(mu.dom),Oe.some(wc)}),vt=(mu,OS,Jv,Tm)=>(wc,eO,NC=!1)=>{cf(wc);const IC=nt.fromDom(_.getDoc()),l0=fa(Jv,IC,pe),BC={sizing:sc(_,wc),resize:ta(_)?QO():q0(),section:Ie(wc)};return OS(wc)?mu(wc,eO,l0,BC).bind(Xy=>{T.refresh(wc.dom),Ue(Xy.newRows,z1=>{sy(_,z1.dom)}),Ue(Xy.newCells,z1=>{mv(_,z1.dom)});const LC=et(wc,Xy);return ui(wc)&&(cf(wc),NC||pp(_,wc.dom,Tm)),LC.map(z1=>({rng:z1,effect:Tm}))}):Oe.none()},ln=vt(dv,Y,W,fs),Nn=vt($u,oe,W,fs),Pn=vt(T1,Te,W,fs),Yt=vt(Ff,Te,W,fs),In=vt(Id,Te,ke,fs),Xt=vt(Hn,Te,ke,fs),oo=vt(vw,Te,W,fs),Bo=vt(Vl,Te,W,fs),us=vt(Ow,Te,W,fs),Si=vt(yw,Te,W,fs),vl=vt(hv,Te,W,fs),ma=vt(_w,Te,W,fs),Nu=vt(Om,Te,W,bv),Q1=vt(bw,Te,W,fs),V1=vt(vi,Te,W,fs),vS=vt(Hf,Te,W,fs),qy=vt(cr,Te,W,fs),Zr=vt(fv,Te,W,fs),qc=vt(Pu,Te,W,fs),ac=vt(Rb,Te,W,fs);return{deleteRow:ln,deleteColumn:Nn,insertRowsBefore:Pn,insertRowsAfter:Yt,insertColumnsBefore:In,insertColumnsAfter:Xt,mergeCells:oo,unmergeCells:Bo,pasteColsBefore:us,pasteColsAfter:Si,pasteRowsBefore:vl,pasteRowsAfter:ma,pasteCells:Nu,makeCellsHeader:Q1,unmakeCellsHeader:V1,makeColumnsHeader:vS,unmakeColumnsHeader:qy,makeRowsHeader:Zr,makeRowsBody:qc,makeRowsFooter:ac,getTableRowType:A1,getTableCellType:oy,getTableColType:ny}},xl=(_,T,M)=>{const L=Sr(_,T,1);M===1||L<=1?Xe(_,T):pr(_,T,Math.min(M,L))},Zc=(_,T)=>M=>{const L=M.column+M.colspan-1,Y=M.column;return L>=_&&Y{if(xe.hasColumns(_)){const L=Zt(xe.justColumns(_),Zc(T,M)),Y=Rt(L,pe=>{const ke=Dl(pe.element);return xl(ke,"span",M-T),ke}),oe=nt.fromTag("colgroup");return Mi(oe,Y),[oe]}else return[]},ry=(_,T,M)=>Rt(_.all,L=>{const Y=Zt(L.cells,Zc(T,M)),oe=Rt(Y,ke=>{const Ie=Dl(ke.element);return xl(Ie,"colspan",M-T),Ie}),pe=nt.fromTag("tr");return Mi(pe,oe),pe}),Cw=(_,T)=>{const M=xe.fromTable(_);return Th(M,T).map(Y=>{const oe=Y[Y.length-1],pe=Y[0].column,ke=oe.column+oe.colspan,Ie=Nb(M,pe,ke),et=ry(M,pe,ke);return[...Ie,...et]})},iy=(_,T,M)=>{const L=xe.fromTable(_);return dm(L,T).bind(oe=>{const pe=rp(L,M,!1),Ie=Bi(pe).rows.slice(oe[0].row,oe[oe.length-1].row+oe[oe.length-1].rowspan),et=Yn(Ie,ln=>{const Nn=Zt(ln.cells,Pn=>!Pn.isLocked);return Nn.length>0?[{...ln,cells:Nn}]:[]}),vt=Ai(et);return Ni(vt.length>0,vt)}).map(oe=>VO(oe))},xg=du.generate([{invalid:["raw"]},{pixels:["value"]},{percent:["value"]}]),ay=(_,T,M)=>{const L=M.substring(0,M.length-_.length),Y=parseFloat(L);return L===Y.toString()?T(Y):xg.invalid(M)},Mh={...xg,from:_=>eu(_,"%")?ay("%",xg.percent,_):eu(_,"px")?ay("px",xg.pixels,_):xg.invalid(_)},kw=(_,T)=>Rt(_,M=>Mh.from(M).fold(()=>M,Y=>Y/T*100+"%",Y=>Y+"%")),Eg=(_,T,M)=>{const L=M/T;return Rt(_,Y=>Mh.from(Y).fold(()=>Y,pe=>pe*L+"px",pe=>pe/100*M+"px"))},xw=(_,T)=>{const M=_.fold(()=>j(""),L=>{const Y=L/T;return j(Y+"px")},()=>{const L=100/T;return j(L+"%")});return mn(T,M)},Ib=(_,T,M)=>_.fold(()=>T,L=>Eg(T,M,L),L=>kw(T,M)),vv=(_,T,M)=>{const L=Mh.from(M),Y=po(_,oe=>oe==="0px")?xw(L,_.length):Ib(L,_,T);return cy(Y)},gp=(_,T)=>_.length===0?T:rn(_,(M,L)=>Mh.from(L).fold(j(0),ae,ae)+M,0),Ew=(_,T)=>{const M=Math.floor(_);return{value:M+T,remainder:_-M}},ly=(_,T)=>Mh.from(_).fold(j(_),M=>M+T+"px",M=>M+T+"%"),cy=_=>{if(_.length===0)return _;const T=rn(_,(L,Y)=>{const oe=Mh.from(Y).fold(()=>({value:Y,remainder:0}),pe=>Ew(pe,"px"),pe=>({value:pe+"%",remainder:0}));return{output:[oe.value].concat(L.output),remainder:L.remainder+oe.remainder}},{output:[],remainder:0}),M=T.output;return M.slice(0,M.length-1).concat([ly(M[M.length-1],Math.round(T.remainder))])},pf=Mh.from,uy=(_,T,M)=>{Ue(T,L=>{const Y=_.slice(L.column,L.colspan+L.column),oe=gp(Y,ii());ri(L.element,"width",oe+M)})},Ov=(_,T,M)=>{Ue(T,(L,Y)=>{const oe=gp([_[Y]],ii());ri(L.element,"width",oe+M)})},Tw=(_,T,M,L)=>{Ue(M,Y=>{const oe=_.slice(Y.row,Y.rowspan+Y.row),pe=gp(oe,hc());ri(Y.element,"height",pe+L)}),Ue(T,(Y,oe)=>{ri(Y.element,"height",_[oe])})},dy=_=>pf(_).fold(j("px"),j("px"),j("%")),Qf=(_,T,M)=>{const L=xe.fromTable(_),Y=L.all,oe=xe.justCells(L),pe=xe.justColumns(L);T.each(ke=>{const Ie=dy(ke),et=Na(_),vt=ch(L,_),ln=vv(vt,et,ke);xe.hasColumns(L)?Ov(ln,pe,Ie):uy(ln,oe,Ie),ri(_,"width",ke)}),M.each(ke=>{const Ie=dy(ke),et=su(_),vt=Gl(L,_,Zn),ln=vv(vt,et,ke);Tw(ln,Y,oe,Ie),ri(_,"height",ke)})},Tg=Li,Ag=Yp,Bb=Cu,$1=_=>{Xe(_,"width")},td=_=>{const T=Fs(_);Qf(_,Oe.some(T),Oe.none()),$1(_)},$g=_=>{const T=Km(_);Qf(_,Oe.some(T),Oe.none()),$1(_)},P1=_=>{fc(_,"width");const T=oh(_),M=T.length>0?T:_l(_);Ue(M,L=>{fc(L,"width"),$1(L)}),$1(_)},ym={styles:{"border-collapse":"collapse",width:"100%"},attributes:{border:"1"},colGroups:!1},Lb=()=>nt.fromTag("th"),Aw=()=>nt.fromTag("td"),$w=()=>nt.fromTag("col"),fy=(_,T,M,L)=>{const Y=nt.fromTag("tr");for(let oe=0;oe<_;oe++){const pe=L{const T=nt.fromTag("colgroup");return mn(_,()=>hr(T,$w())),T},yv=(_,T,M,L)=>mn(_,Y=>fy(T,M,L,Y)),Dw=(_,T,M,L,Y,oe=ym)=>{const pe=nt.fromTag("table"),ke=Y!=="cells";Ra(pe,oe.styles),Di(pe,oe.attributes),oe.colGroups&&hr(pe,Pw(T));const Ie=Math.min(_,M);if(ke&&M>0){const Pn=nt.fromTag("thead");hr(pe,Pn);const In=yv(M,T,Y==="sectionCells"?Ie:0,L);Mi(Pn,In)}const et=nt.fromTag("tbody");hr(pe,et);const vt=ke?_-Ie:_,Nn=yv(vt,T,ke?0:M,L);return Mi(et,Nn),pe},Rw=_=>_.dom.innerHTML,hy=_=>{const T=nt.fromTag("div"),M=nt.fromDom(_.dom.cloneNode(!0));return hr(T,M),Rw(T)},Mw=(_,T)=>{_.selection.select(T.dom,!0),_.selection.collapse(!0)},my=(_,T)=>{dl(T,"td,th").each(_e(Mw,_))},Nw=(_,T)=>{Ue(Lr(T,"tr"),M=>{sy(_,M.dom),Ue(Lr(M,"th,td"),L=>{mv(_,L.dom)})})},Fb=_=>h(_)&&_.indexOf("%")!==-1,Iw=(_,T,M,L,Y)=>{const oe=ib(_),pe={styles:oe,attributes:Ed(_),colGroups:f1(_)};return _.undoManager.ignore(()=>{const ke=Dw(M,T,Y,L,mh(_),pe);pr(ke,"data-mce-id","__mce");const Ie=hy(ke);_.insertContent(Ie),_.addVisual()}),dl(ju(_),'table[data-mce-id="__mce"]').map(ke=>(gh(_)?$g(ke):bh(_)?P1(ke):(xd(_)||Fb(oe.width))&&td(ke),cf(ke),Xe(ke,"data-mce-id"),Nw(_,ke),my(_,ke),ke.dom)).getOrNull()},py=(_,T,M,L={})=>{const Y=oe=>V(oe)&&oe>0;if(Y(T)&&Y(M)){const oe=L.headerRows||0,pe=L.headerColumns||0;return Iw(_,M,T,pe,oe)}else return console.error("Invalid values for mceInsertTable - rows and columns values are required to insert a table."),null};var Pg=tinymce.util.Tools.resolve("tinymce.FakeClipboard");const _v="x-tinymce/dom-table-",wv=_v+"rows",Sv=_v+"columns",Hb=_=>{const T=Pg.FakeClipboardItem(_);Pg.write([T])},Qb=_=>{var T;const M=(T=Pg.read())!==null&&T!==void 0?T:[];return pn(M,L=>Oe.from(L.getType(_)))},gy=_=>{Qb(_).isSome()&&Pg.clear()},Vb=_=>{_.fold(Bw,T=>Hb({[wv]:T}))},zb=()=>Qb(wv),Bw=()=>gy(wv),D1=_=>{_.fold(Lw,T=>Hb({[Sv]:T}))},by=()=>Qb(Sv),Lw=()=>gy(Sv),Cv=_=>Dd(bc(_),$f(_)).filter(yh),Du=_=>lg(bc(_),$f(_)).filter(yh),_m=(_,T)=>{const M=$f(_),L=()=>Cv(_).each(Xt=>{Oa(Xt,M).filter(ne(M)).each(oo=>{const Bo=nt.fromText("");if(xa(oo,Bo),yi(oo),_.dom.isEmpty(_.getBody()))_.setContent(""),_.selection.setCursorLocation();else{const us=_.dom.createRng();us.setStart(Bo.dom,0),us.setEnd(Bo.dom,0),_.selection.setRng(us),_.nodeChanged()}})}),Y=Xt=>Cv(_).each(oo=>{bh(_)||gh(_)||xd(_)||Oa(oo,M).each(us=>{Xt==="relative"&&!Tg(us)?td(us):Xt==="fixed"&&!Ag(us)?$g(us):Xt==="responsive"&&!Bb(us)&&P1(us),cf(us),pp(_,us.dom,fs)})}),oe=Xt=>Oa(Xt,M),pe=Xt=>Du(_).bind(oo=>oe(oo).map(Bo=>Xt(Bo,oo))),ke=(Xt,oo)=>{pe(Bo=>{_.formatter.toggle("tableclass",{value:oo},Bo.dom),pp(_,Bo.dom,Rh)})},Ie=(Xt,oo)=>{pe(Bo=>{const us=Ku(_),vl=po(us,ma=>_.formatter.match("tablecellclass",{value:oo},ma.dom))?_.formatter.remove:_.formatter.apply;Ue(us,ma=>vl("tablecellclass",{value:oo},ma.dom)),pp(_,Bo.dom,Rh)})},et=()=>{Cv(_).each(Xt=>{Oa(Xt,M).each(oo=>{Jo(oo,"caption").fold(()=>{const Bo=nt.fromTag("caption");hr(Bo,nt.fromText("Caption")),ja(oo,Bo,0),_.selection.setCursorLocation(Bo.dom,0)},Bo=>{mr("caption")(Xt)&&ra("td",oo).each(us=>_.selection.setCursorLocation(us.dom,0)),yi(Bo)}),pp(_,oo.dom,fs)})})},vt=Xt=>{_.focus()},ln=(Xt,oo=!1)=>pe((Bo,us)=>{const Si=ig(Ku(_),Bo,us);Xt(Bo,Si,oo).each(vt)}),Nn=()=>pe((Xt,oo)=>{const Bo=ig(Ku(_),Xt,oo),us=fa(W,nt.fromDom(_.getDoc()),Oe.none());return iy(Xt,Bo,us)}),Pn=()=>pe((Xt,oo)=>{const Bo=ig(Ku(_),Xt,oo);return Cw(Xt,Bo)}),Yt=(Xt,oo)=>oo().each(Bo=>{const us=Rt(Bo,Si=>Dl(Si));pe((Si,vl)=>{const ma=ol(nt.fromDom(_.getDoc())),Nu=ag(Ku(_),vl,us,ma);Xt(Si,Nu).each(vt)})}),In=Xt=>(oo,Bo)=>Ki(Bo,"type").each(us=>{ln(Xt(us),Bo.no_events)});Dn({mceTableSplitCells:()=>ln(T.unmergeCells),mceTableMergeCells:()=>ln(T.mergeCells),mceTableInsertRowBefore:()=>ln(T.insertRowsBefore),mceTableInsertRowAfter:()=>ln(T.insertRowsAfter),mceTableInsertColBefore:()=>ln(T.insertColumnsBefore),mceTableInsertColAfter:()=>ln(T.insertColumnsAfter),mceTableDeleteCol:()=>ln(T.deleteColumn),mceTableDeleteRow:()=>ln(T.deleteRow),mceTableCutCol:()=>Pn().each(Xt=>{D1(Xt),ln(T.deleteColumn)}),mceTableCutRow:()=>Nn().each(Xt=>{Vb(Xt),ln(T.deleteRow)}),mceTableCopyCol:()=>Pn().each(Xt=>D1(Xt)),mceTableCopyRow:()=>Nn().each(Xt=>Vb(Xt)),mceTablePasteColBefore:()=>Yt(T.pasteColsBefore,by),mceTablePasteColAfter:()=>Yt(T.pasteColsAfter,by),mceTablePasteRowBefore:()=>Yt(T.pasteRowsBefore,zb),mceTablePasteRowAfter:()=>Yt(T.pasteRowsAfter,zb),mceTableDelete:L,mceTableCellToggleClass:Ie,mceTableToggleClass:ke,mceTableToggleCaption:et,mceTableSizingMode:(Xt,oo)=>Y(oo),mceTableCellType:In(Xt=>Xt==="th"?T.makeCellsHeader:T.unmakeCellsHeader),mceTableColType:In(Xt=>Xt==="th"?T.makeColumnsHeader:T.unmakeColumnsHeader),mceTableRowType:In(Xt=>{switch(Xt){case"header":return T.makeRowsHeader;case"footer":return T.makeRowsFooter;default:return T.makeRowsBody}})},(Xt,oo)=>_.addCommand(oo,Xt)),_.addCommand("mceInsertTable",(Xt,oo)=>{py(_,oo.rows,oo.columns,oo.options)}),_.addCommand("mceTableApplyCellStyle",(Xt,oo)=>{const Bo=vl=>"tablecell"+vl.toLowerCase().replace("-","");if(!p(oo))return;const us=Zt(Ku(_),yh);if(us.length===0)return;const Si=Ns(oo,(vl,ma)=>_.formatter.has(Bo(ma))&&h(vl));dr(Si)||(Dn(Si,(vl,ma)=>{const Nu=Bo(ma);Ue(us,Q1=>{vl===""?_.formatter.remove(Nu,{value:null},Q1.dom,!0):_.formatter.apply(Nu,{value:vl},Q1.dom)})}),oe(us[0]).each(vl=>pp(_,vl.dom,Rh)))})},Fw=(_,T)=>{const M=$f(_),L=Y=>lg(bc(_)).bind(oe=>Oa(oe,M).map(pe=>{const ke=ig(Ku(_),pe,oe);return Y(pe,ke)})).getOr("");Dn({mceTableRowType:()=>L(T.getTableRowType),mceTableCellType:()=>L(T.getTableCellType),mceTableColType:()=>L(T.getTableColType)},(Y,oe)=>_.addQueryValueHandler(oe,Y))},kv=du.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Hw=(_,T,M,L)=>_.fold(T,M,L),Qw=_=>_.fold(ae,ae,ae),xv=kv.before,vy=kv.on,Ev=kv.after,bl={before:xv,on:vy,after:Ev,cata:Hw,getStart:Qw},Dg={create:(_,T)=>({selection:_,kill:T})},Wb=(_,T)=>{const M=_.document.createRange();return M.selectNode(T.dom),M},Tv=(_,T)=>{const M=_.document.createRange();return Av(M,T),M},Av=(_,T)=>_.selectNodeContents(T.dom),Oy=(_,T)=>{T.fold(M=>{_.setStartBefore(M.dom)},(M,L)=>{_.setStart(M.dom,L)},M=>{_.setStartAfter(M.dom)})},yy=(_,T)=>{T.fold(M=>{_.setEndBefore(M.dom)},(M,L)=>{_.setEnd(M.dom,L)},M=>{_.setEndAfter(M.dom)})},Nh=(_,T,M)=>{const L=_.document.createRange();return Oy(L,T),yy(L,M),L},bp=(_,T,M,L,Y)=>{const oe=_.document.createRange();return oe.setStart(T.dom,M),oe.setEnd(L.dom,Y),oe},Vw=_=>({left:_.left,top:_.top,right:_.right,bottom:_.bottom,width:_.width,height:_.height}),zw=_=>{const T=_.getClientRects(),M=T.length>0?T[0]:_.getBoundingClientRect();return M.width>0||M.height>0?Oe.some(M).map(Vw):Oe.none()},R1=du.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),$v=(_,T,M)=>T(nt.fromDom(M.startContainer),M.startOffset,nt.fromDom(M.endContainer),M.endOffset),_y=(_,T)=>T.match({domRange:M=>({ltr:j(M),rtl:Oe.none}),relative:(M,L)=>({ltr:zu(()=>Nh(_,M,L)),rtl:zu(()=>Oe.some(Nh(_,L,M)))}),exact:(M,L,Y,oe)=>({ltr:zu(()=>bp(_,M,L,Y,oe)),rtl:zu(()=>Oe.some(bp(_,Y,oe,M,L)))})}),Ua=(_,T)=>{const M=T.ltr();return M.collapsed?T.rtl().filter(Y=>Y.collapsed===!1).map(Y=>R1.rtl(nt.fromDom(Y.endContainer),Y.endOffset,nt.fromDom(Y.startContainer),Y.startOffset)).getOrThunk(()=>$v(_,R1.ltr,M)):$v(_,R1.ltr,M)},wy=(_,T)=>{const M=_y(_,T);return Ua(_,M)},Pv=(_,T)=>wy(_,T).match({ltr:(L,Y,oe,pe)=>{const ke=_.document.createRange();return ke.setStart(L.dom,Y),ke.setEnd(oe.dom,pe),ke},rtl:(L,Y,oe,pe)=>{const ke=_.document.createRange();return ke.setStart(oe.dom,pe),ke.setEnd(L.dom,Y),ke}});R1.ltr,R1.rtl;const Rg={create:(_,T,M,L)=>({start:_,soffset:T,finish:M,foffset:L})},Sy={create:(_,T,M,L)=>({start:bl.on(_,T),finish:bl.on(M,L)})},Dv=(_,T)=>{const M=Pv(_,T);return Rg.create(nt.fromDom(M.startContainer),M.startOffset,nt.fromDom(M.endContainer),M.endOffset)},M1=Sy.create,Zb=(_,T,M,L,Y,oe,pe)=>zs(M,Y)&&L===oe?Oe.none():Fr(M,"td,th",T).bind(ke=>Fr(Y,"td,th",T).bind(Ie=>Mg(_,T,ke,Ie,pe))),Mg=(_,T,M,L,Y)=>zs(M,L)?Oe.none():vc(M,L,T).bind(oe=>{const pe=oe.boxes.getOr([]);return pe.length>1?(Y(_,pe,oe.start,oe.finish),Oe.some(Dg.create(Oe.some(M1(M,0,M,tr(M))),!0))):Oe.none()}),Zw=(_,T,M,L,Y)=>{const oe=pe=>(Y.clearBeforeUpdate(M),Y.selectRange(M,pe.boxes,pe.start,pe.finish),pe.boxes);return db(L,_,T,Y.firstSelectedSelector,Y.lastSelectedSelector).map(oe)},wm=(_,T)=>({item:_,mode:T}),Cy=(_,T,M,L=Sm)=>_.property().parent(T).map(Y=>wm(Y,L)),Sm=(_,T,M,L=Cm)=>M.sibling(_,T).map(Y=>wm(Y,L)),Cm=(_,T,M,L=Cm)=>{const Y=_.property().children(T);return M.first(Y).map(pe=>wm(pe,L))},E=[{current:Cy,next:Sm,fallback:Oe.none()},{current:Sm,next:Cm,fallback:Oe.some(Cy)},{current:Cm,next:Cm,fallback:Oe.some(Sm)}],D=(_,T,M,L,Y=E)=>de(Y,pe=>pe.current===M).bind(pe=>pe.current(_,T,L,pe.next).orThunk(()=>pe.fallback.bind(ke=>D(_,T,ke,L)))),Ce={left:()=>({sibling:(M,L)=>M.query().prevSibling(L),first:M=>M.length>0?Oe.some(M[M.length-1]):Oe.none()}),right:()=>({sibling:(M,L)=>M.query().nextSibling(L),first:M=>M.length>0?Oe.some(M[0]):Oe.none()})},ze=(_,T,M,L,Y,oe)=>D(_,T,L,Y).bind(ke=>oe(ke.item)?Oe.none():M(ke.item)?Oe.some(ke.item):ze(_,ke.item,M,ke.mode,Y,oe)),it=(_,T,M,L)=>ze(_,T,M,Sm,Ce.left(),L),bt=(_,T,M,L)=>ze(_,T,M,Sm,Ce.right(),L),Lt=_=>T=>_.property().children(T).length===0,wn=(_,T,M)=>Bn(_,T,Lt(_),M),_n=(_,T,M)=>yo(_,T,Lt(_),M),Bn=it,yo=bt,jo=qt(),Cs=(_,T)=>wn(jo,_,T),nr=(_,T)=>_n(jo,_,T),bs=(_,T,M)=>Bn(jo,_,T,M),Tr=(_,T,M)=>yo(jo,_,T,M),Wr=(_,T,M)=>Or(_,T,M).isSome(),El=du.generate([{none:["message"]},{success:[]},{failedUp:["cell"]},{failedDown:["cell"]}]),rc=(_,T,M)=>{const L=_.getRect(T),Y=_.getRect(M);return Y.right>L.left&&Y.leftFr(_,"tr"),ei={...El,verify:(_,T,M,L,Y,oe,pe)=>Fr(L,"td,th",pe).bind(ke=>Fr(T,"td,th",pe).map(Ie=>zs(ke,Ie)?zs(L,ke)&&tr(ke)===Y?oe(Ie):El.none("in same cell"):xr(nd,[ke,Ie]).fold(()=>rc(_,Ie,ke)?El.success():oe(Ie),et=>oe(Ie)))).getOr(El.none("default")),cata:(_,T,M,L,Y)=>_.fold(T,M,L,Y)},Uw=(_,T,M,L)=>({parent:_,children:T,element:M,index:L}),vp=_=>Vi(_).bind(T=>{const M=Ls(T);return lC(M,_).map(L=>Uw(T,M,_,L))}),lC=(_,T)=>Eo(_,_e(zs,T)),ky=mr("br"),Ng=(_,T,M)=>T(_,M).bind(L=>io(L)&&ao(L).trim().length===0?Ng(L,T,M):Oe.some(L)),Oc=(_,T,M)=>M.traverse(T).orThunk(()=>Ng(T,M.gather,_)).map(M.relative),Ub=(_,T)=>Ji(_,T).filter(ky).orThunk(()=>Ji(_,T-1).filter(ky)),Rv=(_,T,M,L)=>Ub(T,M).bind(Y=>L.traverse(Y).fold(()=>Ng(Y,L.gather,_).map(L.relative),oe=>vp(oe).map(pe=>bl.on(pe.parent,pe.index)))),qb=(_,T,M,L)=>(ky(T)?Oc(_,T,L):Rv(_,T,M,L)).map(oe=>({start:oe,finish:oe})),qw=_=>ei.cata(_,T=>Oe.none(),()=>Oe.none(),T=>Oe.some(ug(T,0)),T=>Oe.some(ug(T,tr(T)))),Xb=(_,T)=>({left:_.left,top:_.top+T,right:_.right,bottom:_.bottom+T}),N1=(_,T)=>({left:_.left,top:_.top-T,right:_.right,bottom:_.bottom-T}),Ih=(_,T,M)=>({left:_.left+T,top:_.top+M,right:_.right+T,bottom:_.bottom+M}),HE=_=>_.top,QE=_=>_.bottom,Ig=(_,T,M)=>M>=0&&M0?_.getRangedRect(T,M-1,T,M):Oe.none(),jb=_=>({left:_.left,top:_.top,right:_.right,bottom:_.bottom}),xy=(_,T)=>Oe.some(_.getRect(T)),km=(_,T,M)=>Do(T)?xy(_,T).map(jb):io(T)?Ig(_,T,M).map(jb):Oe.none(),Xw=(_,T)=>Do(T)?xy(_,T).map(jb):io(T)?_.getRangedRect(T,0,T,tr(T)).map(jb):Oe.none(),zl=5,Op=100,Vf=du.generate([{none:[]},{retry:["caret"]}]),Yb=(_,T)=>_.leftT.right,Uc=(_,T,M)=>Ka(T,$b).fold(Be,L=>Xw(_,L).exists(Y=>Yb(M,Y))),Ru=(_,T,M,L,Y)=>{const oe=Xb(Y,zl);return Math.abs(M.bottom-L.bottom)<1||M.top>Y.bottom?Vf.retry(oe):M.top===Y.bottom?Vf.retry(Xb(Y,1)):Uc(_,T,Y)?Vf.retry(Ih(oe,zl,0)):Vf.none()},zf={point:HE,adjuster:(_,T,M,L,Y)=>{const oe=N1(Y,zl);return Math.abs(M.top-L.top)<1||M.bottom_.elementFromPoint(T,M).filter(L=>Ft(L)==="table").isSome(),I1=(_,T,M,L,Y)=>jw(_,T,M,T.move(L,zl),Y),jw=(_,T,M,L,Y)=>Y===0?Oe.some(L):Bd(_,L.left,T.point(L))?I1(_,T,M,L,Y-1):_.situsFromPoint(L.left,T.point(L)).bind(oe=>oe.start.fold(Oe.none,pe=>Xw(_,pe).bind(ke=>T.adjuster(_,pe,ke,M,L).fold(Oe.none,Ie=>jw(_,T,M,Ie,Y-1))).orThunk(()=>Oe.some(L)),Oe.none)),VE=(_,T,M)=>_.point(T)>M.getInnerHeight()?Oe.some(_.point(T)-M.getInnerHeight()):_.point(T)<0?Oe.some(-_.point(T)):Oe.none(),cC=(_,T,M)=>{const L=_.move(M,zl),Y=jw(T,_,M,L,Op).getOr(L);return VE(_,Y,T).fold(()=>T.situsFromPoint(Y.left,_.point(Y)),oe=>(T.scrollBy(0,oe),T.situsFromPoint(Y.left,_.point(Y)-oe)))},Mv={tryUp:_e(cC,zf),tryDown:_e(cC,Ey),getJumpSize:j(zl)},uC=20,Nv=(_,T,M)=>_.getSelection().bind(L=>qb(T,L.finish,L.foffset,M).fold(()=>Oe.some(ug(L.finish,L.foffset)),Y=>{const oe=_.fromSitus(Y),pe=ei.verify(_,L.finish,L.foffset,oe.finish,oe.foffset,M.failure,T);return qw(pe)})),Ty=(_,T,M,L,Y,oe)=>oe===0?Oe.none():WE(_,T,M,L,Y).bind(pe=>{const ke=_.fromSitus(pe),Ie=ei.verify(_,M,L,ke.finish,ke.foffset,Y.failure,T);return ei.cata(Ie,()=>Oe.none(),()=>Oe.some(pe),et=>zs(M,et)&&L===0?zE(_,M,L,N1,Y):Ty(_,T,et,0,Y,oe-1),et=>zs(M,et)&&L===tr(et)?zE(_,M,L,Xb,Y):Ty(_,T,et,tr(et),Y,oe-1))}),zE=(_,T,M,L,Y)=>km(_,T,M).bind(oe=>dC(_,Y,L(oe,Mv.getJumpSize()))),dC=(_,T,M)=>{const L=bd().browser;return L.isChromium()||L.isSafari()||L.isFirefox()?T.retry(_,M):Oe.none()},WE=(_,T,M,L,Y)=>km(_,M,L).bind(oe=>dC(_,Y,oe)),o4=(_,T,M)=>Nv(_,T,M).bind(L=>Ty(_,T,L.element,L.offset,M,uC).map(_.fromSitus)),fC=(_,T)=>Wr(_,M=>Vi(M).exists(L=>zs(L,T))),Is=(_,T,M,L,Y)=>Fr(L,"td,th",T).bind(oe=>Fr(oe,"table",T).bind(pe=>fC(Y,pe)?o4(_,T,M).bind(ke=>Fr(ke.finish,"td,th",T).map(Ie=>({start:oe,finish:Ie,range:ke}))):Oe.none())),Bh=(_,T,M,L,Y,oe)=>oe(L,T).orThunk(()=>Is(_,T,M,L,Y).map(pe=>{const ke=pe.range;return Dg.create(Oe.some(M1(ke.start,ke.soffset,ke.finish,ke.foffset)),!0)})),B1=(_,T)=>Fr(_,"tr",T).bind(M=>Fr(M,"table",T).bind(L=>{const Y=Lr(L,"tr");return zs(M,Y[0])?bs(L,oe=>qu(oe).isSome(),T).map(oe=>{const pe=tr(oe);return Dg.create(Oe.some(M1(oe,pe,oe,pe)),!0)}):Oe.none()})),Yw=(_,T)=>Fr(_,"tr",T).bind(M=>Fr(M,"table",T).bind(L=>{const Y=Lr(L,"tr");return zs(M,Y[Y.length-1])?Tr(L,oe=>Cd(oe).isSome(),T).map(oe=>Dg.create(Oe.some(M1(oe,0,oe,0)),!0)):Oe.none()})),hC=(_,T,M,L,Y,oe,pe)=>Is(_,M,L,Y,oe).bind(ke=>Mg(T,M,ke.start,ke.finish,pe)),Iv=_=>{let T=_;return{get:()=>T,set:Y=>{T=Y}}},ZE=_=>{const T=Iv(Oe.none()),M=()=>T.get().each(_);return{clear:()=>{M(),T.set(Oe.none())},isSet:()=>T.get().isSome(),get:()=>T.get(),set:ke=>{M(),T.set(Oe.some(ke))}}},Gb=()=>{const _=ZE(W);return{..._,on:M=>_.get().each(M)}},Ay=(_,T)=>Fr(_,"td,th",T),Ld=_=>ia(_).exists(vh),IL=(_,T,M,L)=>{const Y=Gb(),oe=Y.clear,pe=vt=>{Y.on(ln=>{L.clearBeforeUpdate(T),Ay(vt.target,M).each(Nn=>{vc(ln,Nn,M).each(Pn=>{const Yt=Pn.boxes.getOr([]);if(Yt.length===1){const In=Yt[0],Xt=ec(In)==="false",oo=fl(h1(vt.target),In,zs);Xt&&oo&&(L.selectRange(T,Yt,In,In),_.selectContents(In))}else Yt.length>1&&(L.selectRange(T,Yt,Pn.start,Pn.finish),_.selectContents(Nn))})})})};return{clearstate:oe,mousedown:vt=>{L.clear(T),Ay(vt.target,M).filter(Ld).each(Y.set)},mouseover:vt=>{pe(vt)},mouseup:vt=>{pe(vt),oe()}}},$y={traverse:Ac,gather:nr,relative:bl.before,retry:Mv.tryDown,failure:ei.failedDown},Kb={traverse:Tc,gather:Cs,relative:bl.before,retry:Mv.tryUp,failure:ei.failedUp},Bg=_=>T=>T===_,Py=Bg(38),Dy=Bg(40),L1=_=>_>=37&&_<=40,UE={isBackward:Bg(37),isForward:Bg(39)},mC={isBackward:Bg(39),isForward:Bg(37)},qE=_=>{const T=_!==void 0?_.dom:document,M=T.body.scrollLeft||T.documentElement.scrollLeft,L=T.body.scrollTop||T.documentElement.scrollTop;return Ze(M,L)},Jb=(_,T,M)=>{const Y=(M!==void 0?M.dom:document).defaultView;Y&&Y.scrollBy(_,T)},yp=du.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),XE=_=>yp.exact(_.start,_.soffset,_.finish,_.foffset),jE=_=>_.match({domRange:T=>nt.fromDom(T.startContainer),relative:(T,M)=>bl.getStart(T),exact:(T,M,L,Y)=>T}),pC=yp.domRange,Gw=yp.relative,Kw=yp.exact,Jw=_=>{const T=jE(_);return rr(T)},Ry=Rg.create,Lg={domRange:pC,relative:Gw,exact:Kw,exactFromRange:XE,getWin:Jw,range:Ry},gC=(_,T,M)=>{var L,Y;return Oe.from((Y=(L=_.dom).caretPositionFromPoint)===null||Y===void 0?void 0:Y.call(L,T,M)).bind(oe=>{if(oe.offsetNode===null)return Oe.none();const pe=_.dom.createRange();return pe.setStart(oe.offsetNode,oe.offset),pe.collapse(),Oe.some(pe)})},Bv=(_,T,M)=>{var L,Y;return Oe.from((Y=(L=_.dom).caretRangeFromPoint)===null||Y===void 0?void 0:Y.call(L,T,M))},eS=document.caretPositionFromPoint?gC:document.caretRangeFromPoint?Bv:Oe.none,YE=(_,T,M)=>{const L=nt.fromDom(_.document);return eS(L,T,M).map(Y=>Rg.create(nt.fromDom(Y.startContainer),Y.startOffset,nt.fromDom(Y.endContainer),Y.endOffset))},Lv=(_,T)=>{const M=Ft(_);return M==="input"?bl.after(_):Le(["br","img"],M)?T===0?bl.before(_):bl.after(_):bl.on(_,T)},GE=(_,T)=>{const M=_.fold(bl.before,Lv,bl.after),L=T.fold(bl.before,Lv,bl.after);return Lg.relative(M,L)},Ln=(_,T,M,L)=>{const Y=Lv(_,T),oe=Lv(M,L);return Lg.relative(Y,oe)},il=(_,T,M,L)=>{const oe=ga(_).dom.createRange();return oe.setStart(_.dom,T),oe.setEnd(M.dom,L),oe},_p=(_,T,M,L)=>{const Y=il(_,T,M,L),oe=zs(_,M)&&T===L;return Y.collapsed&&!oe},$a=_=>Oe.from(_.getSelection()),gf=(_,T)=>{$a(_).each(M=>{M.removeAllRanges(),M.addRange(T)})},My=(_,T,M,L,Y)=>{const oe=bp(_,T,M,L,Y);gf(_,oe)},Fv=(_,T,M,L,Y,oe)=>{T.collapse(M.dom,L),T.extend(Y.dom,oe)},Lh=(_,T)=>wy(_,T).match({ltr:(M,L,Y,oe)=>{My(_,M,L,Y,oe)},rtl:(M,L,Y,oe)=>{$a(_).each(pe=>{if(pe.setBaseAndExtent)pe.setBaseAndExtent(M.dom,L,Y.dom,oe);else if(pe.extend)try{Fv(_,pe,M,L,Y,oe)}catch{My(_,Y,oe,M,L)}else My(_,Y,oe,M,L)})}}),Ny=(_,T,M,L,Y)=>{const oe=Ln(T,M,L,Y);Lh(_,oe)},Iy=(_,T,M)=>{const L=GE(T,M);Lh(_,L)},e0=_=>{if(_.rangeCount>0){const T=_.getRangeAt(0),M=_.getRangeAt(_.rangeCount-1);return Oe.some(Rg.create(nt.fromDom(T.startContainer),T.startOffset,nt.fromDom(M.endContainer),M.endOffset))}else return Oe.none()},bC=_=>{if(_.anchorNode===null||_.focusNode===null)return e0(_);{const T=nt.fromDom(_.anchorNode),M=nt.fromDom(_.focusNode);return _p(T,_.anchorOffset,M,_.focusOffset)?Oe.some(Rg.create(T,_.anchorOffset,M,_.focusOffset)):e0(_)}},Hv=(_,T,M=!0)=>{const Y=(M?Tv:Wb)(_,T);gf(_,Y)},tS=_=>$a(_).filter(T=>T.rangeCount>0).bind(bC),nS=_=>tS(_).map(T=>Lg.exact(T.start,T.soffset,T.finish,T.foffset)),KE=(_,T)=>{const M=Pv(_,T);return zw(M)},Fh=(_,T,M)=>YE(_,T,M),By=_=>{$a(_).each(T=>T.removeAllRanges())},t0=_=>({elementFromPoint:(Xt,oo)=>nt.fromPoint(nt.fromDom(_.document),Xt,oo),getRect:Xt=>Xt.dom.getBoundingClientRect(),getRangedRect:(Xt,oo,Bo,us)=>{const Si=Lg.exact(Xt,oo,Bo,us);return KE(_,Si)},getSelection:()=>nS(_).map(Xt=>Dv(_,Xt)),fromSitus:Xt=>{const oo=Lg.relative(Xt.start,Xt.finish);return Dv(_,oo)},situsFromPoint:(Xt,oo)=>Fh(_,Xt,oo).map(Bo=>Sy.create(Bo.start,Bo.soffset,Bo.finish,Bo.foffset)),clearSelection:()=>{By(_)},collapseSelection:(Xt=!1)=>{nS(_).each(oo=>oo.fold(Bo=>Bo.collapse(Xt),(Bo,us)=>{const Si=Xt?Bo:us;Iy(_,Si,Si)},(Bo,us,Si,vl)=>{const ma=Xt?Bo:Si,Nu=Xt?us:vl;Ny(_,ma,Nu,ma,Nu)}))},setSelection:Xt=>{Ny(_,Xt.start,Xt.soffset,Xt.finish,Xt.foffset)},setRelativeSelection:(Xt,oo)=>{Iy(_,Xt,oo)},selectNode:Xt=>{Hv(_,Xt,!1)},selectContents:Xt=>{Hv(_,Xt)},getInnerHeight:()=>_.innerHeight,getScrollY:()=>qE(nt.fromDom(_.document)).top,scrollBy:(Xt,oo)=>{Jb(Xt,oo,nt.fromDom(_.document))}}),ic=(_,T)=>({rows:_,cols:T}),qa=(_,T,M,L)=>{const Y=t0(_),oe=IL(Y,T,M,L);return{clearstate:oe.clearstate,mousedown:oe.mousedown,mouseover:oe.mouseover,mouseup:oe.mouseup}},Ly=_=>Ka(_,an).exists(vh),Qv=(_,T)=>Ly(_)||Ly(T),Fy=(_,T,M,L)=>{const Y=t0(_),oe=()=>(L.clear(T),Oe.none());return{keydown:(Ie,et,vt,ln,Nn,Pn)=>{const Yt=Ie.raw,In=Yt.which,Xt=Yt.shiftKey===!0;return ls(T,L.selectedSelector).fold(()=>(L1(In)&&!Xt&&L.clearBeforeUpdate(T),L1(In)&&Xt&&!Qv(et,ln)?Oe.none:Dy(In)&&Xt?_e(hC,Y,T,M,$y,ln,et,L.selectRange):Py(In)&&Xt?_e(hC,Y,T,M,Kb,ln,et,L.selectRange):Dy(In)?_e(Bh,Y,M,$y,ln,et,Yw):Py(In)?_e(Bh,Y,M,Kb,ln,et,B1):Oe.none),Bo=>{const us=Si=>()=>pn(Si,ma=>Zw(ma.rows,ma.cols,T,Bo,L)).fold(()=>Sh(T,L.firstSelectedSelector,L.lastSelectedSelector).map(ma=>{const Nu=Dy(In)||Pn.isForward(In)?bl.after:bl.before;return Y.setRelativeSelection(bl.on(ma.first,0),Nu(ma.table)),L.clear(T),Dg.create(Oe.none(),!0)}),ma=>Oe.some(Dg.create(Oe.none(),!0)));return L1(In)&&Xt&&!Qv(et,ln)?Oe.none:Dy(In)&&Xt?us([ic(1,0)]):Py(In)&&Xt?us([ic(-1,0)]):Pn.isBackward(In)&&Xt?us([ic(0,-1),ic(-1,0)]):Pn.isForward(In)&&Xt?us([ic(0,1),ic(1,0)]):L1(In)&&!Xt?oe:Oe.none})()},keyup:(Ie,et,vt,ln,Nn)=>ls(T,L.selectedSelector).fold(()=>{const Pn=Ie.raw,Yt=Pn.which;return Pn.shiftKey===!0&&L1(Yt)&&Qv(et,ln)?Zb(T,M,et,vt,ln,Nn,L.selectRange):Oe.none()},Oe.none)}},Vv=(_,T,M,L)=>{const Y=t0(_);return(oe,pe)=>{L.clearBeforeUpdate(T),vc(oe,pe,M).each(ke=>{const Ie=ke.boxes.getOr([]);L.selectRange(T,Ie,ke.start,ke.finish),Y.selectContents(pe),Y.collapseSelection()})}},zv=(_,T)=>{const M=mi(_,T);return M===void 0||M===""?[]:M.split(" ")},n0=(_,T,M)=>{const Y=zv(_,T).concat([M]);return pr(_,T,Y.join(" ")),!0},vC=(_,T,M)=>{const L=Zt(zv(_,T),Y=>Y!==M);return L.length>0?pr(_,T,L.join(" ")):Xe(_,T),!1},Wv=_=>_.dom.classList!==void 0,OC=_=>zv(_,"class"),yC=(_,T)=>n0(_,"class",T),_C=(_,T)=>vC(_,"class",T),bf=(_,T)=>{Wv(_)?_.dom.classList.add(T):yC(_,T)},yc=_=>{(Wv(_)?_.dom.classList:OC(_)).length===0&&Xe(_,"class")},Wf=(_,T)=>{Wv(_)?_.dom.classList.remove(T):_C(_,T),yc(_)},Mu=(_,T)=>Wv(_)&&_.dom.classList.contains(T),Zv=(_,T)=>{Ue(T,M=>{Wf(_,M)})},Hy=_=>T=>{bf(T,_)},wC=_=>T=>{Zv(T,_)},wp={byClass:_=>{const T=Hy(_.selected),M=wC([_.selected,_.lastSelected,_.firstSelected]),L=oe=>{const pe=Lr(oe,_.selectedSelector);Ue(pe,M)};return{clearBeforeUpdate:L,clear:L,selectRange:(oe,pe,ke,Ie)=>{L(oe),Ue(pe,T),bf(ke,_.firstSelected),bf(Ie,_.lastSelected)},selectedSelector:_.selectedSelector,firstSelectedSelector:_.firstSelectedSelector,lastSelectedSelector:_.lastSelectedSelector}},byAttr:(_,T,M)=>{const L=Ie=>{Xe(Ie,_.selected),Xe(Ie,_.firstSelected),Xe(Ie,_.lastSelected)},Y=Ie=>{pr(Ie,_.selected,"1")},oe=Ie=>{pe(Ie),M()},pe=Ie=>{const et=Lr(Ie,`${_.selectedSelector},${_.firstSelectedSelector},${_.lastSelectedSelector}`);Ue(et,L)};return{clearBeforeUpdate:pe,clear:oe,selectRange:(Ie,et,vt,ln)=>{oe(Ie),Ue(et,Y),pr(vt,_.firstSelected,"1"),pr(ln,_.lastSelected,"1"),T(et,vt,ln)},selectedSelector:_.selectedSelector,firstSelectedSelector:_.firstSelectedSelector,lastSelectedSelector:_.lastSelectedSelector}}},qv=(_,T,M,L)=>{switch(_.tag){case"none":return T();case"single":return L(_.element);case"multiple":return M(_.elements)}},oS=()=>({tag:"none"}),SC=_=>({tag:"multiple",elements:_}),CC=_=>({tag:"single",element:_}),sS=(_,T,M)=>({get:()=>p1(_(),M).fold(()=>T().fold(oS,CC),SC)}),Qy=(_,T)=>{const M=_.slice(0,T[T.length-1].row+1),L=Ai(M);return Yn(L,Y=>{const oe=Y.cells.slice(0,T[T.length-1].column+1);return Rt(oe,pe=>pe.element)})},ti=(_,T)=>{const M=_.slice(T[0].row+T[0].rowspan-1,_.length),L=Ai(M);return Yn(L,Y=>{const oe=Y.cells.slice(T[0].column+T[0].colspan-1,Y.cells.length);return Rt(oe,pe=>pe.element)})},Sp=(_,T,M)=>{const L=xe.fromTable(_);return dm(L,T).map(oe=>{const pe=rp(L,M,!1),{rows:ke}=Bi(pe),Ie=Qy(ke,oe),et=ti(ke,oe);return{upOrLeftCells:Ie,downOrRightCells:et}})},kC=(_,T,M,L,Y,oe,pe)=>({target:_,x:T,y:M,stop:L,prevent:Y,kill:oe,raw:pe}),rS=_=>{const T=nt.fromDom(Mn(_).getOr(_.target)),M=()=>_.stopPropagation(),L=()=>_.preventDefault(),Y=J(L,M);return kC(T,_.clientX,_.clientY,M,L,Y,_)},iS=(_,T)=>M=>{_(M)&&T(rS(M))},F1=(_,T,M,L,Y)=>{const oe=iS(M,L);return _.dom.addEventListener(T,oe,Y),{unbind:_e(lS,_,T,oe,Y)}},aS=(_,T,M,L)=>F1(_,T,M,L,!1),lS=(_,T,M,L)=>{_.dom.removeEventListener(T,M,L)},eT=Te,o0=(_,T,M)=>aS(_,T,eT,M),s0=rS,cS=_=>!Mu(nt.fromDom(_.target),"ephox-snooker-resizer-bar"),uS=(_,T)=>{const M=sS(()=>nt.fromDom(_.getBody()),()=>lg(bc(_),$f(_)),kh.selectedSelector),L=(Ie,et,vt)=>{Oa(et).each(Nn=>{const Pn=lf(_),Yt=fa(W,nt.fromDom(_.getDoc()),Pn),In=Ku(_),Xt=Sp(Nn,{selection:In},Yt);ww(_,Ie,et,vt,Xt)})},Y=()=>Sw(_),oe=wp.byAttr(kh,L,Y);return _.on("init",Ie=>{const et=_.getWin(),vt=ju(_),ln=$f(_),Nn=()=>{const Zr=_.selection,qc=nt.fromDom(Zr.getStart()),ac=nt.fromDom(Zr.getEnd());xr(Oa,[qc,ac]).fold(()=>oe.clear(vt),W)},Pn=qa(et,vt,ln,oe),Yt=Fy(et,vt,ln,oe),In=Vv(et,vt,ln,oe),Xt=Zr=>Zr.raw.shiftKey===!0;_.on("TableSelectorChange",Zr=>In(Zr.start,Zr.finish));const oo=(Zr,qc)=>{Xt(Zr)&&(qc.kill&&Zr.kill(),qc.selection.each(ac=>{const Qd=Lg.relative(ac.start,ac.finish),rd=Pv(et,Qd);_.selection.setRng(rd)}))},Bo=Zr=>{const qc=s0(Zr);if(qc.raw.shiftKey&&L1(qc.raw.which)){const ac=_.selection.getRng(),Qd=nt.fromDom(ac.startContainer),rd=nt.fromDom(ac.endContainer);Yt.keyup(qc,Qd,ac.startOffset,rd,ac.endOffset).each(Qg=>{oo(qc,Qg)})}},us=Zr=>{const qc=s0(Zr);T.hide();const ac=_.selection.getRng(),Qd=nt.fromDom(ac.startContainer),rd=nt.fromDom(ac.endContainer),Qg=qp(UE,mC)(nt.fromDom(_.selection.getStart()));Yt.keydown(qc,Qd,ac.startOffset,rd,ac.endOffset,Qg).each(mu=>{oo(qc,mu)}),T.show()},Si=Zr=>Zr.button===0,vl=Zr=>Zr.buttons===void 0?!0:(Zr.buttons&1)!==0,ma=Zr=>{Pn.clearstate()},Nu=Zr=>{Si(Zr)&&cS(Zr)&&Pn.mousedown(s0(Zr))},Q1=Zr=>{vl(Zr)&&cS(Zr)&&Pn.mouseover(s0(Zr))},V1=Zr=>{Si(Zr)&&cS(Zr)&&Pn.mouseup(s0(Zr))},qy=(()=>{const Zr=Iv(nt.fromDom(vt)),qc=Iv(0);return{touchEnd:Qd=>{const rd=nt.fromDom(Qd.target);if(mr("td")(rd)||mr("th")(rd)){const Qg=Zr.get(),mu=qc.get();zs(Qg,rd)&&Qd.timeStamp-mu<300&&(Qd.preventDefault(),In(rd,rd))}Zr.set(rd),qc.set(Qd.timeStamp)}}})();_.on("dragstart",ma),_.on("mousedown",Nu),_.on("mouseover",Q1),_.on("mouseup",V1),_.on("touchend",qy.touchEnd),_.on("keyup",Bo),_.on("keydown",us),_.on("NodeChange",Nn)}),_.on("PreInit",()=>{_.serializer.addTempAttr(kh.firstSelected),_.serializer.addTempAttr(kh.lastSelected)}),{getSelectedCells:()=>qv(M.get(),j([]),Ie=>Rt(Ie,et=>et.dom),Ie=>[Ie.dom]),clearSelectedCells:Ie=>oe.clear(nt.fromDom(Ie))}},Zf=_=>{let T=[];return{bind:oe=>{if(oe===void 0)throw new Error("Event bind error: undefined handler");T.push(oe)},unbind:oe=>{T=Zt(T,pe=>pe!==oe)},trigger:(...oe)=>{const pe={};Ue(_,(ke,Ie)=>{pe[ke]=oe[Ie]}),Ue(T,ke=>{ke(pe)})}}},Fg=_=>{const T=is(_,L=>({bind:L.bind,unbind:L.unbind})),M=is(_,L=>L.trigger);return{registry:T,trigger:M}},tT=(_,T)=>{let M=null;const L=()=>{y(M)||(clearTimeout(M),M=null)};return{cancel:L,throttle:(...oe)=>{L(),M=setTimeout(()=>{M=null,_.apply(null,oe)},T)}}},Xv=_=>_.slice(0).sort(),nT=(_,T)=>{throw new Error("All required keys ("+Xv(_).join(", ")+") were not specified. Specified keys were: "+Xv(T).join(", ")+".")},sd=_=>{throw new Error("Unsupported keys for object: "+Xv(_).join(", "))},_c=(_,T)=>{if(!b(T))throw new Error("The "+_+" fields must be an array. Was: "+T+".");Ue(T,M=>{if(!h(M))throw new Error("The value "+M+" in the "+_+" fields was not a string.")})},H1=(_,T)=>{throw new Error("All values need to be of type: "+T+". Keys ("+Xv(_).join(", ")+") were not.")},s4=_=>{const T=Xv(_);de(T,(L,Y)=>Y{throw new Error("The field: "+L+" occurs more than once in the combined fields: ["+T.join(", ")+"].")})},xC=(_,T)=>oT(_,T,{validate:F,label:"function"}),oT=(_,T,M)=>{if(T.length===0)throw new Error("You must specify at least one required field.");return _c("required",T),s4(T),L=>{const Y=xt(L);po(T,ke=>Le(Y,ke))||nT(T,Y),_(T,Y);const pe=Zt(T,ke=>!M.validate(L[ke],ke));return pe.length>0&&H1(pe,M.label),L}},Ds=(_,T)=>{const M=Zt(T,L=>!Le(_,L));M.length>0&&sd(M)},dS=_=>xC(Ds,_),EC=dS(["compare","extract","mutate","sink"]),fS=dS(["element","start","stop","destroy"]),sT=dS(["forceDrop","drop","move","delayDrop"]),rT=()=>{let _=Oe.none();const T=()=>{_=Oe.none()},M=(oe,pe)=>{const ke=_.map(Ie=>oe.compare(Ie,pe));return _=Oe.some(pe),ke},L=(oe,pe)=>{pe.extract(oe).each(Ie=>{M(pe,Ie).each(vt=>{Y.trigger.move(vt)})})},Y=Fg({move:Zf(["info"])});return{onEvent:L,reset:T,events:Y.registry}},TC=()=>{const _=Fg({move:Zf(["info"])});return{onEvent:W,reset:W,events:_.registry}},iT=()=>{const _=TC(),T=rT();let M=_;return{on:()=>{M.reset(),M=T},off:()=>{M.reset(),M=_},isOn:()=>M===T,onEvent:(ke,Ie)=>{M.onEvent(ke,Ie)},events:T.events}},zn=(_,T,M)=>{let L=!1;const Y=Fg({start:Zf([]),stop:Zf([])}),oe=iT(),pe=()=>{Yt.stop(),oe.isOn()&&(oe.off(),Y.trigger.stop())},ke=tT(pe,200),Ie=Xt=>{Yt.start(Xt),oe.on(),Y.trigger.start()},et=Xt=>{ke.cancel(),oe.onEvent(Xt,T)};oe.events.move.bind(Xt=>{T.mutate(_,Xt.info)});const vt=()=>{L=!0},ln=()=>{L=!1},Nn=()=>L,Pn=Xt=>(...oo)=>{L&&Xt.apply(null,oo)},Yt=T.sink(sT({forceDrop:pe,drop:Pn(pe),move:Pn(et),delayDrop:Pn(ke.throttle)}),M),In=()=>{Yt.destroy()};return{element:Yt.element,go:Ie,on:vt,off:ln,isActive:Nn,destroy:In,events:Y.registry}},Hg=_=>{const T=_.replace(/\./g,"-");return{resolve:L=>T+"-"+L}},jv=Hg("ephox-dragster").resolve,Yv=_=>{const T={layerClass:jv("blocker"),..._},M=nt.fromTag("div");return pr(M,"role","presentation"),Ra(M,{position:"fixed",left:"0px",top:"0px",width:"100%",height:"100%"}),bf(M,jv("blocker")),bf(M,T.layerClass),{element:j(M),destroy:()=>{yi(M)}}};var lT=EC({compare:(_,T)=>Ze(T.left-_.left,T.top-_.top),extract:_=>Oe.some(Ze(_.x,_.y)),sink:(_,T)=>{const M=Yv(T),L=o0(M.element(),"mousedown",_.forceDrop),Y=o0(M.element(),"mouseup",_.drop),oe=o0(M.element(),"mousemove",_.move),pe=o0(M.element(),"mouseout",_.delayDrop),ke=()=>{M.destroy(),Y.unbind(),oe.unbind(),pe.unbind(),L.unbind()},Ie=vt=>{hr(vt,M.element())},et=()=>{yi(M.element())};return fS({element:M.element,start:Ie,stop:et,destroy:ke})},mutate:(_,T)=>{_.mutate(T.left,T.top)}});const $C=(_,T={})=>{var M;const L=(M=T.mode)!==null&&M!==void 0?M:lT;return zn(_,L,T)},Cp=Hg("ephox-snooker").resolve,PC=()=>{const _=Fg({drag:Zf(["xDelta","yDelta"])});return{mutate:(M,L)=>{_.trigger.drag(M,L)},events:_.registry}},cT=()=>{const _=Fg({drag:Zf(["xDelta","yDelta","target"])});let T=Oe.none();const M=PC();return M.events.drag.bind(oe=>{T.each(pe=>{_.trigger.drag(oe.xDelta,oe.yDelta,pe)})}),{assign:oe=>{T=Oe.some(oe)},get:()=>T,mutate:M.mutate,events:_.registry}},Gv=(_,T,M,L,Y)=>{const oe=nt.fromTag("div");return Ra(oe,{position:"absolute",left:T-L/2+"px",top:M+"px",height:Y+"px",width:L+"px"}),Di(oe,{"data-column":_,role:"presentation"}),oe},uT=(_,T,M,L,Y)=>{const oe=nt.fromTag("div");return Ra(oe,{position:"absolute",left:T+"px",top:M-Y/2+"px",height:Y+"px",width:L+"px"}),Di(oe,{"data-row":_,role:"presentation"}),oe},DC=Cp("resizer-bar"),hS=Cp("resizer-rows"),RC=Cp("resizer-cols"),Vy=7,dT=(_,T)=>Yn(_.all,(M,L)=>T(M.element)?[L]:[]),fT=(_,T)=>{const M=[];return mn(_.grid.columns,L=>{xe.getColumnAt(_,L).map(oe=>oe.element).forall(T)&&M.push(L)}),Zt(M,L=>{const Y=xe.filterItems(_,oe=>oe.column===L);return po(Y,oe=>T(oe.element))})},r0=_=>{const T=Lr(_.parent(),"."+DC);Ue(T,yi)},mS=(_,T,M)=>{const L=_.origin();Ue(T,Y=>{Y.each(oe=>{const pe=M(L,oe);bf(pe,DC),hr(_.parent(),pe)})})},MC=(_,T,M,L)=>{mS(_,T,(Y,oe)=>{const pe=Gv(oe.col,oe.x-Y.left,M.top-Y.top,Vy,L);return bf(pe,RC),pe})},hT=(_,T,M,L)=>{mS(_,T,(Y,oe)=>{const pe=uT(oe.row,M.left-Y.left,oe.y-Y.top,L,Vy);return bf(pe,hS),pe})},mT=(_,T,M,L,Y)=>{const oe=Kn(M),pe=T.isResizable,ke=L.length>0?Zn.positions(L,M):[],Ie=ke.length>0?dT(_,pe):[],et=Zt(ke,(Pn,Yt)=>je(Ie,In=>Yt===In));hT(T,et,oe,Rc(M));const vt=Y.length>0?ea.positions(Y,M):[],ln=vt.length>0?fT(_,pe):[],Nn=Zt(vt,(Pn,Yt)=>je(ln,In=>Yt===In));MC(T,Nn,oe,X(M))},zy=(_,T)=>{if(r0(_),_.isResizable(T)){const M=xe.fromTable(T),L=jl(M),Y=Nc(M);mT(M,_,T,L,Y)}},xm=(_,T)=>{const M=Lr(_.parent(),"."+DC);Ue(M,T)},Wy=_=>{xm(_,T=>{ri(T,"display","none")})},ur=_=>{xm(_,T=>{ri(T,"display","block")})},pT=_=>Mu(_,hS),kp=_=>Mu(_,RC),Em=Cp("resizer-bar-dragging"),Zy=_=>{const T=cT(),M=$C(T,{});let L=Oe.none();const Y=(Yt,In)=>Oe.from(mi(Yt,In));T.events.drag.bind(Yt=>{Y(Yt.target,"data-row").each(In=>{const Xt=Zi(Yt.target,"top");ri(Yt.target,"top",Xt+Yt.yDelta+"px")}),Y(Yt.target,"data-column").each(In=>{const Xt=Zi(Yt.target,"left");ri(Yt.target,"left",Xt+Yt.xDelta+"px")})});const oe=(Yt,In)=>{const Xt=Zi(Yt,In),oo=Sr(Yt,"data-initial-"+In,0);return Xt-oo};M.events.stop.bind(()=>{T.get().each(Yt=>{L.each(In=>{Y(Yt,"data-row").each(Xt=>{const oo=oe(Yt,"top");Xe(Yt,"data-initial-top"),Pn.trigger.adjustHeight(In,oo,parseInt(Xt,10))}),Y(Yt,"data-column").each(Xt=>{const oo=oe(Yt,"left");Xe(Yt,"data-initial-left"),Pn.trigger.adjustWidth(In,oo,parseInt(Xt,10))}),zy(_,In)})})});const pe=(Yt,In)=>{Pn.trigger.startAdjust(),T.assign(Yt),pr(Yt,"data-initial-"+In,Zi(Yt,In)),bf(Yt,Em),ri(Yt,"opacity","0.2"),M.go(_.parent())},ke=o0(_.parent(),"mousedown",Yt=>{pT(Yt.target)&&pe(Yt.target,"top"),kp(Yt.target)&&pe(Yt.target,"left")}),Ie=Yt=>zs(Yt,_.view()),et=Yt=>Fr(Yt,"table",Ie).filter(vh),vt=o0(_.view(),"mouseover",Yt=>{et(Yt.target).fold(()=>{ui(Yt.target)&&r0(_)},In=>{M.isActive()&&(L=Oe.some(In),zy(_,In))})}),ln=()=>{ke.unbind(),vt.unbind(),M.destroy(),r0(_)},Nn=Yt=>{zy(_,Yt)},Pn=Fg({adjustHeight:Zf(["table","delta","row"]),adjustWidth:Zf(["table","delta","column"]),startAdjust:Zf([])});return{destroy:ln,refresh:Nn,on:M.on,off:M.off,hideBars:_e(Wy,_),showBars:_e(ur,_),events:Pn.registry}},Uy={create:(_,T,M)=>{const L=Zn,Y=ea,oe=Zy(_),pe=Fg({beforeResize:Zf(["table","type"]),afterResize:Zf(["table","type"]),startDrag:Zf([])});return oe.events.adjustHeight.bind(ke=>{const Ie=ke.table;pe.trigger.beforeResize(Ie,"row");const et=L.delta(ke.delta,Ie);Eb(Ie,et,ke.row,L),pe.trigger.afterResize(Ie,"row")}),oe.events.startAdjust.bind(ke=>{pe.trigger.startDrag()}),oe.events.adjustWidth.bind(ke=>{const Ie=ke.table;pe.trigger.beforeResize(Ie,"col");const et=Y.delta(ke.delta,Ie),vt=M(Ie);Cg(Ie,et,ke.column,T,vt),pe.trigger.afterResize(Ie,"col")}),{on:oe.on,off:oe.off,refreshBars:oe.refresh,hideBars:oe.hideBars,showBars:oe.showBars,destroy:oe.destroy,events:pe.registry}}},pS={only:(_,T)=>{const M=Wo(_)?As(_):_;return{parent:j(M),view:j(_),origin:j(Ze(0,0)),isResizable:T}},detached:(_,T,M)=>{const L=()=>Kn(T);return{parent:j(T),view:j(_),origin:L,isResizable:M}},body:(_,T,M)=>({parent:j(T),view:j(_),origin:j(Ze(0,0)),isResizable:M})},gT=()=>{const _=nt.fromTag("div");return Ra(_,{position:"static",height:"0",width:"0",padding:"0",margin:"0",border:"0"}),hr(me(),_),_},gS=(_,T)=>_.inline?pS.body(nt.fromDom(_.getBody()),gT(),T):pS.only(nt.fromDom(_.getDoc()),T),bT=(_,T)=>{_.inline&&yi(T.parent())},Bs=_=>N(_)&&_.nodeName==="TABLE",Hd="bar-",Ep=_=>mi(_,"data-mce-resize")!=="false",vT=_=>{const T=xe.fromTable(_);xe.hasColumns(T)||Ue(_l(_),M=>{const L=va(M,"width");ri(M,"width",L),Xe(M,"width")})},a0=_=>{const T=Gb(),M=Gb(),L=Gb();let Y,oe;const pe=Yt=>sc(_,Yt),ke=()=>ph(_)?q0():QO(),Ie=Yt=>fg(Yt).columns,et=(Yt,In,Xt)=>{const oo=eu(In,"e");if(oe===""&&td(Yt),Xt!==Y&&oe!==""){ri(Yt,"width",oe);const Bo=ke(),us=pe(Yt),Si=ph(_)||oo?Ie(Yt)-1:0;Cg(Yt,Xt-Y,Si,Bo,us)}else if(ab(oe)){const Bo=parseFloat(oe.replace("%","")),us=Xt*Bo/Y;ri(Yt,"width",us+"%")}Kp(oe)&&vT(Yt)},vt=()=>{M.on(Yt=>{Yt.destroy()}),L.on(Yt=>{bT(_,Yt)})};return _.on("init",()=>{const Yt=gS(_,Ep);if(L.set(Yt),NO(_)&&tp(_)){const In=ke(),Xt=Uy.create(Yt,In,pe);Xt.on(),Xt.events.startDrag.bind(oo=>{T.set(_.selection.getRng())}),Xt.events.beforeResize.bind(oo=>{const Bo=oo.table.dom;pv(_,Bo,Yu(Bo),Oh(Bo),Hd+oo.type)}),Xt.events.afterResize.bind(oo=>{const Bo=oo.table,us=Bo.dom;cf(Bo),T.on(Si=>{_.selection.setRng(Si),_.focus()}),gv(_,us,Yu(us),Oh(us),Hd+oo.type),_.undoManager.add()}),M.set(Xt)}}),_.on("ObjectResizeStart",Yt=>{const In=Yt.target;if(Bs(In)){const Xt=nt.fromDom(In);Ue(_.dom.select(".mce-clonedresizable"),oo=>{_.dom.addClass(oo,"mce-"+d1(_)+"-columns")}),!Ag(Xt)&&gh(_)?$g(Xt):!Tg(Xt)&&xd(_)&&td(Xt),Bb(Xt)&&Jc(Yt.origin,Hd)&&td(Xt),Y=Yt.width,oe=bh(_)?"":H0(_,In).getOr("")}}),_.on("ObjectResized",Yt=>{const In=Yt.target;if(Bs(In)){const Xt=nt.fromDom(In),oo=Yt.origin;Jc(oo,"corner-")&&et(Xt,oo,Yt.width),cf(Xt),pp(_,Xt.dom,Rh)}}),_.on("SwitchMode",()=>{M.on(Yt=>{_.mode.isReadOnly()?Yt.hideBars():Yt.showBars()})}),_.on("dragstart dragend",Yt=>{M.on(In=>{Yt.type==="dragstart"?(In.hideBars(),In.off()):(In.on(),In.showBars())})}),_.on("remove",()=>{vt()}),{refresh:Yt=>{M.on(In=>In.refreshBars(nt.fromDom(Yt)))},hide:()=>{M.on(Yt=>Yt.hideBars())},show:()=>{M.on(Yt=>Yt.showBars())}}},js=_=>{ep(_);const T=a0(_),M=uS(_,T),L=Mb(_,T,M);return _m(_,L),Fw(_,L),FO(_,L),{getSelectedCells:M.getSelectedCells,clearSelectedCells:M.clearSelectedCells}},OT=_=>({table:js(_)});var bS=()=>{o.add("dom",OT)};bS()})();tinymce.IconManager.add("default",{icons:{"accessibility-check":'',"accordion-toggle":'',accordion:'',"action-next":'',"action-prev":'',addtag:'',"ai-prompt":'',ai:'',"align-center":'',"align-justify":'',"align-left":'',"align-none":'',"align-right":'',"arrow-left":'',"arrow-right":'',bold:'',bookmark:'',"border-style":'',"border-width":'',brightness:'',browse:'',cancel:'',"cell-background-color":'',"cell-border-color":'',"change-case":'',"character-count":'',"checklist-rtl":'',checklist:'',checkmark:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',close:'',"code-sample":'',"color-levels":'',"color-picker":'',"color-swatch-remove-color":'',"color-swatch":'',"comment-add":'',comment:'',contrast:'',copy:'',crop:'',"cut-column":'',"cut-row":'',cut:'',"document-properties":'',drag:'',"duplicate-column":'',"duplicate-row":'',duplicate:'',"edit-block":'',"edit-image":'',"embed-page":'',embed:'',emoji:'',export:'',fill:'',"flip-horizontally":'',"flip-vertically":'',footnote:'',"format-painter":'',format:'',fullscreen:'',gallery:'',gamma:'',help:'',"highlight-bg-color":'',home:'',"horizontal-rule":'',"image-options":'',image:'',indent:'',info:'',"insert-character":'',"insert-time":'',invert:'',italic:'',language:'',"line-height":'',line:'',link:'',"list-bull-circle":'',"list-bull-default":'',"list-bull-square":'',"list-num-default-rtl":'',"list-num-default":'',"list-num-lower-alpha-rtl":'',"list-num-lower-alpha":'',"list-num-lower-greek-rtl":'',"list-num-lower-greek":'',"list-num-lower-roman-rtl":'',"list-num-lower-roman":'',"list-num-upper-alpha-rtl":'',"list-num-upper-alpha":'',"list-num-upper-roman-rtl":'',"list-num-upper-roman":'',lock:'',ltr:'',minus:'',"more-drawer":'',"new-document":'',"new-tab":'',"non-breaking":'',notice:'',"ordered-list-rtl":'',"ordered-list":'',orientation:'',outdent:'',"page-break":'',paragraph:'',"paste-column-after":'',"paste-column-before":'',"paste-row-after":'',"paste-row-before":'',"paste-text":'',paste:'',"permanent-pen":'',plus:'',preferences:'',preview:'',print:'',quote:'',redo:'',reload:'',"remove-formatting":'',remove:'',"resize-handle":'',resize:'',"restore-draft":'',"rotate-left":'',"rotate-right":'',rtl:'',save:'',search:'',"select-all":'',selected:'',send:'',settings:'',sharpen:'',sourcecode:'',"spell-check":'',"strike-through":'',subscript:'',superscript:'',"table-caption":'',"table-cell-classes":'',"table-cell-properties":'',"table-cell-select-all":'',"table-cell-select-inner":'',"table-classes":'',"table-delete-column":'',"table-delete-row":'',"table-delete-table":'',"table-insert-column-after":'',"table-insert-column-before":'',"table-insert-row-above":'',"table-insert-row-after":'',"table-left-header":'',"table-merge-cells":'',"table-row-numbering-rtl":'',"table-row-numbering":'',"table-row-properties":'',"table-split-cells":'',"table-top-header":'',table:'',"template-add":'',template:'',"temporary-placeholder":'',"text-color":'',"text-size-decrease":'',"text-size-increase":'',toc:'',translate:'',typography:'',underline:'',undo:'',unlink:'',unlock:'',"unordered-list":'',unselected:'',upload:'',user:'',"vertical-align":'',visualblocks:'',visualchars:'',warning:'',"zoom-in":'',"zoom-out":''}});(function(){const o=Object.getPrototypeOf,e=(a,f,g)=>{var O;return g(a,f.prototype)?!0:((O=a.constructor)===null||O===void 0?void 0:O.name)===f.name},n=a=>{const f=typeof a;return a===null?"null":f==="object"&&Array.isArray(a)?"array":f==="object"&&e(a,String,(g,O)=>O.isPrototypeOf(g))?"string":f},r=a=>f=>n(f)===a,c=a=>f=>typeof f===a,u=a=>f=>a===f,h=(a,f)=>b(a)&&e(a,f,(g,O)=>o(g)===O),p=r("string"),b=r("object"),y=a=>h(a,Object),k=r("array"),A=u(null),R=c("boolean"),N=u(void 0),F=a=>a==null,V=a=>!F(a),W=c("function"),J=c("number"),te=(a,f)=>{if(k(a)){for(let g=0,O=a.length;g{},ae=a=>()=>a(),fe=(a,f)=>(...g)=>a(f.apply(null,g)),_e=(a,f)=>g=>a(f(g)),ne=a=>()=>a,Se=a=>a,De=(a,f)=>a===f;function Be(a,...f){return(...g)=>{const O=f.concat(g);return a.apply(null,O)}}const Te=a=>f=>!a(f),Oe=a=>()=>{throw new Error(a)},yt=a=>a(),Tt=ne(!1),St=ne(!0);class q{constructor(f,g){this.tag=f,this.value=g}static some(f){return new q(!0,f)}static none(){return q.singletonNone}fold(f,g){return this.tag?g(this.value):f()}isSome(){return this.tag}isNone(){return!this.tag}map(f){return this.tag?q.some(f(this.value)):q.none()}bind(f){return this.tag?f(this.value):q.none()}exists(f){return this.tag&&f(this.value)}forall(f){return!this.tag||f(this.value)}filter(f){return!this.tag||f(this.value)?this:q.none()}getOr(f){return this.tag?this.value:f}or(f){return this.tag?this:f}getOrThunk(f){return this.tag?this.value:f()}orThunk(f){return this.tag?this:f()}getOrDie(f){if(this.tag)return this.value;throw new Error(f??"Called getOrDie on None")}static from(f){return V(f)?q.some(f):q.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(f){this.tag&&f(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}q.singletonNone=new q(!1);const Le=Array.prototype.slice,je=Array.prototype.indexOf,mn=Array.prototype.push,Rt=(a,f)=>je.call(a,f),Ue=(a,f)=>{const g=Rt(a,f);return g===-1?q.none():q.some(g)},ct=(a,f)=>Rt(a,f)>-1,dn=(a,f)=>{for(let g=0,O=a.length;g{const g=[];for(let O=0;O{const g=[];for(let O=0;O{const g=a.length,O=new Array(g);for(let x=0;x{for(let g=0,O=a.length;g{for(let g=a.length-1;g>=0;g--){const O=a[g];f(O,g)}},Eo=(a,f)=>{const g=[],O=[];for(let x=0,P=a.length;x{const g=[];for(let O=0,x=a.length;O(de(a,(O,x)=>{g=f(g,O,x)}),g),po=(a,f,g)=>(mt(a,(O,x)=>{g=f(g,O,x)}),g),cs=(a,f,g)=>{for(let O=0,x=a.length;Ocs(a,f,Tt),Ut=(a,f)=>{for(let g=0,O=a.length;g{const f=[];for(let g=0,O=a.length;gpt(Fe(a,f)),Nt=(a,f)=>{for(let g=0,O=a.length;g{const f=Le.call(a,0);return f.reverse(),f},xt=(a,f)=>jn(a,g=>!ct(f,g)),kn=(a,f)=>{const g={};for(let O=0,x=a.length;O[a],is=(a,f)=>{const g=Le.call(a,0);return g.sort(f),g},Gn=(a,f)=>f>=0&&fGn(a,0),vr=a=>Gn(a,a.length-1),Ns=W(Array.from)?Array.from:a=>Le.call(a),Vs=(a,f)=>{for(let g=0;g{const g=Ts(a);for(let O=0,x=g.length;Odr(a,(g,O)=>({k:O,v:f(g,O)})),dr=(a,f)=>{const g={};return vs(a,(O,x)=>{const P=f(O,x);g[P.k]=P.v}),g},Oo=a=>(f,g)=>{a[g]=f},wo=(a,f,g,O)=>{vs(a,(x,P)=>{(f(x,P)?g:O)(x,P)})},Gs=(a,f)=>{const g={},O={};return wo(a,f,Oo(g),Oo(O)),{t:g,f:O}},ws=(a,f)=>{const g={};return wo(a,f,Oo(g),j),g},Pi=(a,f)=>{const g=[];return vs(a,(O,x)=>{g.push(f(O,x))}),g},ts=(a,f)=>{const g=Ts(a);for(let O=0,x=g.length;OPi(a,Se),nn=(a,f)=>ns(a,f)?q.from(a[f]):q.none(),ns=(a,f)=>Ki.call(a,f),Xr=(a,f)=>ns(a,f)&&a[f]!==void 0&&a[f]!==null,Qe=(a,f,g=De)=>a.exists(O=>g(O,f)),Ye=(a,f,g=De)=>Rn(a,f,g).getOr(a.isNone()&&f.isNone()),wt=a=>{const f=[],g=O=>{f.push(O)};for(let O=0;O{const f=[];for(let g=0;ga.isSome()&&f.isSome()?q.some(g(a.getOrDie(),f.getOrDie())):q.none(),Xn=(a,f,g,O)=>a.isSome()&&f.isSome()&&g.isSome()?q.some(O(a.getOrDie(),f.getOrDie(),g.getOrDie())):q.none(),ro=(a,f)=>a!=null?q.some(f(a)):q.none(),an=(a,f)=>a?q.some(f):q.none(),Do=(a,f)=>a+f,io=(a,f)=>a.substring(f),Wo=(a,f,g)=>f===""||a.length>=f.length&&a.substr(g,g+f.length)===f,sr=(a,f)=>pr(a,f)?io(a,f.length):a,mr=(a,f)=>Di(a,f)?a:Do(a,f),Ks=(a,f,g=0,O)=>{const x=a.indexOf(f,g);return x!==-1?N(O)?!0:x+f.length<=O:!1},pr=(a,f)=>Wo(a,f,0),Di=(a,f)=>Wo(a,f,a.length-f.length),mi=(a=>f=>f.replace(a,""))(/^\s+|\s+$/g),Ge=a=>a.length>0,Xe=a=>!Ge(a),$t=a=>a.style!==void 0&&W(a.style.getPropertyValue),Qt=(a,f)=>{const O=(f||document).createElement("div");if(O.innerHTML=a,!O.hasChildNodes()||O.childNodes.length>1){const x="HTML does not have a single root node";throw console.error(x,a),new Error(x)}return qo(O.childNodes[0])},eo=(a,f)=>{const O=(f||document).createElement(a);return qo(O)},co=(a,f)=>{const O=(f||document).createTextNode(a);return qo(O)},qo=a=>{if(a==null)throw new Error("Node cannot be null or undefined");return{dom:a}},nt={fromHtml:Qt,fromTag:eo,fromText:co,fromDom:qo,fromPoint:(a,f,g)=>q.from(a.dom.elementFromPoint(f,g)).map(qo)},xo=typeof window<"u"?window:Function("return this;")(),jr=(a,f)=>{let g=f??xo;for(let O=0;O{const g=a.split(".");return jr(g,f)},ra=(a,f)=>Oi(a,f),zs=(a,f)=>{const g=ra(a,f);if(g==null)throw new Error(a+" not available on this browser");return g},Ec=Object.getPrototypeOf,ul=a=>zs("HTMLElement",a),ga=a=>{const f=Oi("ownerDocument.defaultView",a);return b(a)&&(ul(f).prototype.isPrototypeOf(a)||/^HTML\w*Element$/.test(Ec(a).constructor.name))},Ri=9,As=11,rr=1,Vi=3,ia=a=>a.dom.nodeName.toLowerCase(),Pl=a=>a.dom.nodeType,Tc=a=>f=>Pl(f)===a,Ac=a=>Ls(a)&&ga(a.dom),Ls=Tc(rr),Ji=Tc(Vi),ka=Tc(Ri),Gc=Tc(As),xa=a=>f=>Ls(f)&&ia(f)===a,Yr=(a,f)=>{const g=a.dom;if(g.nodeType!==rr)return!1;{const O=g;if(O.matches!==void 0)return O.matches(f);if(O.msMatchesSelector!==void 0)return O.msMatchesSelector(f);if(O.webkitMatchesSelector!==void 0)return O.webkitMatchesSelector(f);if(O.mozMatchesSelector!==void 0)return O.mozMatchesSelector(f);throw new Error("Browser lacks native selectors")}},hr=a=>a.nodeType!==rr&&a.nodeType!==Ri&&a.nodeType!==As||a.childElementCount===0,ja=(a,f)=>{const g=f===void 0?document:f.dom;return hr(g)?[]:Fe(g.querySelectorAll(a),nt.fromDom)},bu=(a,f)=>{const g=f===void 0?document:f.dom;return hr(g)?q.none():q.from(g.querySelector(a)).map(nt.fromDom)},Us=(a,f)=>a.dom===f.dom,Mi=(a,f)=>{const g=a.dom,O=f.dom;return g===O?!1:g.contains(O)},zi=a=>nt.fromDom(a.dom.ownerDocument),yi=a=>ka(a)?a:zi(a),yl=a=>nt.fromDom(yi(a).dom.documentElement),ql=a=>nt.fromDom(yi(a).dom.defaultView),ba=a=>q.from(a.dom.parentNode).map(nt.fromDom),Dl=a=>ba(a),Rl=a=>q.from(a.dom.parentElement).map(nt.fromDom),cd=(a,f)=>{const g=W(f)?f:Tt;let O=a.dom;const x=[];for(;O.parentNode!==null&&O.parentNode!==void 0;){const P=O.parentNode,I=nt.fromDom(P);if(x.push(I),g(I)===!0)break;O=P}return x},Ml=a=>q.from(a.dom.offsetParent).map(nt.fromDom),Qu=a=>q.from(a.dom.nextSibling).map(nt.fromDom),Ya=a=>Fe(a.dom.childNodes,nt.fromDom),uc=(a,f)=>{const g=a.dom.childNodes;return q.from(g[f]).map(nt.fromDom)},vu=a=>uc(a,0),ud=(a,f)=>({element:a,offset:f}),Kd=(a,f)=>{const g=Ya(a);return g.length>0&&fGc(a)&&V(a.dom.host),Ke=W(Element.prototype.attachShadow)&&W(Node.prototype.getRootNode),ht=ne(Ke),At=Ke?a=>nt.fromDom(a.dom.getRootNode()):yi,fn=a=>Ee(a)?a:nt.fromDom(yi(a).dom.body),go=a=>ar(a).isSome(),ar=a=>{const f=At(a);return Ee(f)?q.some(f):q.none()},Ko=a=>nt.fromDom(a.dom.host),Io=a=>{if(ht()&&V(a.target)){const f=nt.fromDom(a.target);if(Ls(f)&&Mr(f)&&a.composed&&a.composedPath){const g=a.composedPath();if(g)return as(g)}}return q.from(a.target)},Mr=a=>V(a.dom.shadowRoot),Ss=a=>{const f=Ji(a)?a.dom.parentNode:a.dom;if(f==null||f.ownerDocument===null)return!1;const g=f.ownerDocument;return ar(nt.fromDom(f)).fold(()=>g.body.contains(f),_e(Ss,Ko))},si=()=>Ga(nt.fromDom(document)),Ga=a=>{const f=a.dom.body;if(f==null)throw new Error("Body is not available yet");return nt.fromDom(f)},dd=(a,f,g)=>{if(p(g)||R(g)||J(g))a.setAttribute(f,g+"");else throw console.error("Invalid call to Attribute.set. Key ",f,":: Value ",g,":: Element ",a),new Error("Attribute value was not simple")},Mn=(a,f,g)=>{dd(a.dom,f,g)},fd=(a,f)=>{const g=a.dom;vs(f,(O,x)=>{dd(g,x,O)})},ui=(a,f)=>{const g=a.dom.getAttribute(f);return g===null?void 0:g},me=(a,f)=>q.from(ui(a,f)),Pe=(a,f)=>{const g=a.dom;return g&&g.hasAttribute?g.hasAttribute(f):!1},We=(a,f)=>{a.dom.removeAttribute(f)},Pt=a=>po(a.dom.attributes,(f,g)=>(f[g.name]=g.value,f),{}),Tn=(a,f,g)=>{if(!p(g))throw console.error("Invalid call to CSS.set. Property ",f,":: Value ",g,":: Element ",a),new Error("CSS value must be a string: "+g);$t(a)&&a.style.setProperty(f,g)},Ro=(a,f)=>{$t(a)&&a.style.removeProperty(f)},Wn=(a,f,g)=>{const O=a.dom;Tn(O,f,g)},Lr=(a,f)=>{const g=a.dom;vs(f,(O,x)=>{Tn(g,x,O)})},cn=(a,f)=>{const g=a.dom;vs(f,(O,x)=>{O.fold(()=>{Ro(g,x)},P=>{Tn(g,x,P)})})},Or=(a,f)=>{const g=a.dom,x=window.getComputedStyle(g).getPropertyValue(f);return x===""&&!Ss(a)?Ka(g,f):x},Ka=(a,f)=>$t(a)?a.style.getPropertyValue(f):"",Gr=(a,f)=>{const g=a.dom,O=Ka(g,f);return q.from(O).filter(x=>x.length>0)},yr=a=>{const f={},g=a.dom;if($t(g))for(let O=0;O{const O=nt.fromTag(a);return Wn(O,f,g),Gr(O,f).isSome()},Jo=(a,f)=>{const g=a.dom;Ro(g,f),Qe(me(a,"style").map(mi),"")&&We(a,"style")},dl=a=>a.dom.offsetWidth,Fr=(a,f)=>{const g=(Q,U)=>{if(!J(U)&&!U.match(/^[0-9]+$/))throw new Error(a+".set accepts only positive integer values. Value was "+U);const ee=Q.dom;$t(ee)&&(ee.style[a]=U+"px")},O=Q=>{const U=f(Q);if(U<=0||U===null){const ee=Or(Q,a);return parseFloat(ee)||0}return U},x=O,P=(Q,U)=>po(U,(ee,se)=>{const he=Or(Q,se),be=he===void 0?0:parseInt(he,10);return isNaN(be)?ee:ee+be},0);return{set:g,get:O,getOuter:x,aggregate:P,max:(Q,U,ee)=>{const se=P(Q,ee);return U>se?U-se:0}}},fl=Fr("height",a=>{const f=a.dom;return Ss(a)?f.getBoundingClientRect().height:f.offsetHeight}),Nr=a=>fl.get(a),hd=a=>fl.getOuter(a),Ni=(a,f)=>{const g=["margin-top","border-top-width","padding-top","padding-bottom","border-bottom-width","margin-bottom"],O=fl.max(a,f,g);Wn(a,"max-height",O+"px")},Vu=(a,f)=>({left:a,top:f,translate:(O,x)=>Vu(a+O,f+x)}),Ws=Vu,Jc=a=>{const f=a.getBoundingClientRect();return Ws(f.left,f.top)},eu=(a,f)=>a!==void 0?a:f!==void 0?f:0,Nl=a=>{const f=a.dom.ownerDocument,g=f.body,O=f.defaultView,x=f.documentElement;if(g===a.dom)return Ws(g.offsetLeft,g.offsetTop);const P=eu(O==null?void 0:O.pageYOffset,x.scrollTop),I=eu(O==null?void 0:O.pageXOffset,x.scrollLeft),Q=eu(x.clientTop,g.clientTop),U=eu(x.clientLeft,g.clientLeft);return dc(a).translate(I-U,P-Q)},dc=a=>{const f=a.dom,O=f.ownerDocument.body;return O===f?Ws(O.offsetLeft,O.offsetTop):Ss(a)?Jc(f):Ws(0,0)},th=Fr("width",a=>a.dom.offsetWidth),Os=(a,f)=>th.set(a,f),Ii=a=>th.get(a),Wi=a=>th.getOuter(a),Qp=(a,f)=>{const g=["margin-left","border-left-width","padding-left","padding-right","border-right-width","margin-right"],O=th.max(a,f,g);Wn(a,"max-width",O+"px")},ri=a=>{let f=!1,g;return(...O)=>(f||(f=!0,g=a.apply(null,O)),g)},Ra=(a,f,g,O)=>{const x=a.isiOS()&&/ipad/i.test(g)===!0,P=a.isiOS()&&!x,I=a.isiOS()||a.isAndroid(),Q=I||O("(pointer:coarse)"),U=x||!P&&I&&O("(min-device-width:768px)"),ee=P||I&&!U,se=f.isSafari()&&a.isiOS()&&/safari/i.test(g)===!1,he=!ee&&!U&&!se;return{isiPad:ne(x),isiPhone:ne(P),isTablet:ne(U),isPhone:ne(ee),isTouch:ne(Q),isAndroid:a.isAndroid,isiOS:a.isiOS,isWebView:ne(se),isDesktop:ne(he)}},va=(a,f)=>{for(let g=0;g{const g=va(a,f);if(!g)return{major:0,minor:0};const O=x=>Number(f.replace(g,"$"+x));return _f(O(1),O(2))},em=(a,f)=>{const g=String(f).toLowerCase();return a.length===0?fc():Jh(a,g)},fc=()=>_f(0,0),_f=(a,f)=>({major:a,minor:f}),Sr={nu:_f,detect:em,unknown:fc},$c=(a,f)=>Vs(f.brands,g=>{const O=g.brand.toLowerCase();return gt(a,x=>{var P;return O===((P=x.brand)===null||P===void 0?void 0:P.toLowerCase())}).map(x=>({current:x.name,version:Sr.nu(parseInt(g.version,10),0)}))}),Ja=(a,f)=>{const g=String(f).toLowerCase();return gt(a,O=>O.search(g))},aa=(a,f)=>Ja(a,f).map(g=>{const O=Sr.detect(g.versionRegexes,f);return{current:g.name,version:O}}),Zi=(a,f)=>Ja(a,f).map(g=>{const O=Sr.detect(g.versionRegexes,f);return{current:g.name,version:O}}),ii=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,hc=a=>f=>Ks(f,a),md=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:a=>Ks(a,"edge/")&&Ks(a,"chrome")&&Ks(a,"safari")&&Ks(a,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,ii],search:a=>Ks(a,"chrome")&&!Ks(a,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:a=>Ks(a,"msie")||Ks(a,"trident")},{name:"Opera",versionRegexes:[ii,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:hc("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:hc("firefox")},{name:"Safari",versionRegexes:[ii,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:a=>(Ks(a,"safari")||Ks(a,"mobile/"))&&Ks(a,"applewebkit")}],Jd=[{name:"Windows",search:hc("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:a=>Ks(a,"iphone")||Ks(a,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:hc("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:hc("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:hc("linux"),versionRegexes:[]},{name:"Solaris",search:hc("sunos"),versionRegexes:[]},{name:"FreeBSD",search:hc("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:hc("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],tm={browsers:ne(md),oses:ne(Jd)},nh="Edge",_l="Chromium",oh="IE",Oa="Opera",tu="Firefox",sh="Safari",Ou=()=>wf({current:void 0,version:Sr.unknown()}),wf=a=>{const f=a.current,g=a.version,O=x=>()=>f===x;return{current:f,version:g,isEdge:O(nh),isChromium:O(_l),isIE:O(oh),isOpera:O(Oa),isFirefox:O(tu),isSafari:O(sh)}},hl={unknown:Ou,nu:wf,edge:ne(nh),chromium:ne(_l),ie:ne(oh),opera:ne(Oa),firefox:ne(tu),safari:ne(sh)},Sf="Windows",zu="iOS",Vm="Android",zm="Linux",pd="macOS",ml="Solaris",Wm="FreeBSD",qe="ChromeOS",gd=()=>mc({current:void 0,version:Sr.unknown()}),mc=a=>{const f=a.current,g=a.version,O=x=>()=>f===x;return{current:f,version:g,isWindows:O(Sf),isiOS:O(zu),isAndroid:O(Vm),isMacOS:O(pd),isLinux:O(zm),isSolaris:O(ml),isFreeBSD:O(Wm),isChromeOS:O(qe)}},Cf={unknown:gd,nu:mc,windows:ne(Sf),ios:ne(zu),android:ne(Vm),linux:ne(zm),macos:ne(pd),solaris:ne(ml),freebsd:ne(Wm),chromeos:ne(qe)},kf={detect:(a,f,g)=>{const O=tm.browsers(),x=tm.oses(),P=f.bind(U=>$c(O,U)).orThunk(()=>aa(O,a)).fold(hl.unknown,hl.nu),I=Zi(x,a).fold(Cf.unknown,Cf.nu),Q=Ra(I,P,a,g);return{browser:P,os:I,deviceType:Q}}},dt=a=>window.matchMedia(a).matches;let sn=ri(()=>kf.detect(navigator.userAgent,q.from(navigator.userAgentData),dt));const Kt=()=>sn(),uo=(a,f,g,O,x,P,I)=>({target:a,x:f,y:g,stop:O,prevent:x,kill:P,raw:I}),ps=a=>{const f=nt.fromDom(Io(a).getOr(a.target)),g=()=>a.stopPropagation(),O=()=>a.preventDefault(),x=fe(O,g);return uo(f,a.clientX,a.clientY,g,O,x,a)},qs=(a,f)=>g=>{a(g)&&f(ps(g))},gr=(a,f,g,O,x)=>{const P=qs(g,O);return a.dom.addEventListener(f,P,x),{unbind:Be(Vp,a,f,P,x)}},br=(a,f,g,O)=>gr(a,f,g,O,!1),rh=(a,f,g,O)=>gr(a,f,g,O,!0),Vp=(a,f,g,O)=>{a.dom.removeEventListener(f,g,O)},Ui=(a,f)=>{ba(a).each(O=>{O.dom.insertBefore(f.dom,a.dom)})},pc=(a,f)=>{Qu(a).fold(()=>{ba(a).each(x=>{la(x,f)})},O=>{Ui(O,f)})},Um=(a,f)=>{vu(a).fold(()=>{la(a,f)},O=>{a.dom.insertBefore(f.dom,O.dom)})},la=(a,f)=>{a.dom.appendChild(f.dom)},Ci=(a,f,g)=>{uc(a,g).fold(()=>{la(a,f)},O=>{Ui(O,f)})},nu=(a,f)=>{mt(f,g=>{la(a,g)})},Dr=a=>{a.dom.textContent="",mt(Ya(a),f=>{Pc(f)})},Pc=a=>{const f=a.dom;f.parentNode!==null&&f.parentNode.removeChild(f)},el=a=>{const f=a!==void 0?a.dom:document,g=f.body.scrollLeft||f.documentElement.scrollLeft,O=f.body.scrollTop||f.documentElement.scrollTop;return Ws(g,O)},xf=(a,f,g)=>{const x=(g!==void 0?g.dom:document).defaultView;x&&x.scrollTo(a,f)},zp=a=>{const f=a===void 0?window:a;return Kt().browser.isFirefox()?q.none():q.from(f.visualViewport)},ih=(a,f,g,O)=>({x:a,y:f,width:g,height:O,right:a+g,bottom:f+O}),nm=a=>{const f=a===void 0?window:a,g=f.document,O=el(nt.fromDom(g));return zp(f).fold(()=>{const x=f.document.documentElement,P=x.clientWidth,I=x.clientHeight;return ih(O.left,O.top,P,I)},x=>ih(Math.max(x.pageLeft,O.left),Math.max(x.pageTop,O.top),x.width,x.height))},Wu=()=>nt.fromDom(document),pl=(a,f)=>a.view(f).fold(ne([]),O=>{const x=a.owner(O),P=pl(a,x);return[O].concat(P)}),ah=(a,f)=>{const g=f.owner(a),O=pl(f,g);return q.some(O)};var om=Object.freeze({__proto__:null,view:a=>{var f;return(a.dom===document?q.none():q.from((f=a.dom.defaultView)===null||f===void 0?void 0:f.frameElement)).map(nt.fromDom)},owner:a=>zi(a)});const bd=a=>{const f=Wu(),g=el(f);return ah(a,om).fold(Be(Nl,a),x=>{const P=dc(a),I=Yn(x,(Q,U)=>{const ee=dc(U);return{left:Q.left+ee.left,top:Q.top+ee.top}},{left:0,top:0});return Ws(I.left+P.left+g.left,I.top+P.top+g.top)})},vd=(a,f,g)=>({point:a,width:f,height:g}),ef=(a,f,g,O)=>({x:a,y:f,width:g,height:O}),Cr=(a,f,g,O)=>({x:a,y:f,width:g,height:O,right:a+g,bottom:f+O}),Rr=a=>{const f=Nl(a),g=Wi(a),O=hd(a);return Cr(f.left,f.top,g,O)},Ma=a=>{const f=bd(a),g=Wi(a),O=hd(a);return Cr(f.left,f.top,g,O)},qm=(a,f)=>{const g=Math.max(a.x,f.x),O=Math.max(a.y,f.y),x=Math.min(a.right,f.right),P=Math.min(a.bottom,f.bottom),I=x-g,Q=P-O;return Cr(g,O,I,Q)},Wp=(a,f)=>po(f,(g,O)=>qm(g,O),a),Ea=()=>nm(window);var Dc=tinymce.util.Tools.resolve("tinymce.ThemeManager");const Na=a=>{const f=P=>P(a),g=ne(a),O=()=>x,x={tag:!0,inner:a,fold:(P,I)=>I(a),isValue:St,isError:Tt,map:P=>Zo.value(P(a)),mapError:O,bind:f,exists:f,forall:f,getOr:g,or:O,getOrThunk:g,orThunk:O,getOrDie:g,each:P=>{P(a)},toOptional:()=>q.some(a)};return x},Rc=a=>{const f=()=>g,g={tag:!1,inner:a,fold:(O,x)=>O(a),isValue:Tt,isError:St,map:f,mapError:O=>Zo.error(O(a)),bind:f,exists:Tt,forall:St,getOr:Se,or:Se,getOrThunk:yt,orThunk:yt,getOrDie:Oe(String(a)),each:j,toOptional:q.none};return g},Zo={value:Na,error:Rc,fromOption:(a,f)=>a.fold(()=>Rc(f),Na)};var Il;(function(a){a[a.Error=0]="Error",a[a.Value=1]="Value"})(Il||(Il={}));const Od=(a,f,g)=>a.stype===Il.Error?f(a.serror):g(a.svalue),qi=a=>{const f=[],g=[];return mt(a,O=>{Od(O,x=>g.push(x),x=>f.push(x))}),{values:f,errors:g}},Ia=(a,f)=>a.stype===Il.Error?{stype:Il.Error,serror:f(a.serror)}:a,Zp=(a,f)=>a.stype===Il.Value?{stype:Il.Value,svalue:f(a.svalue)}:a,Ba=(a,f)=>a.stype===Il.Value?f(a.svalue):a,ki=(a,f)=>a.stype===Il.Error?f(a.serror):a,Xl=a=>({stype:Il.Value,svalue:a}),Bi=a=>({stype:Il.Error,serror:a}),Kr={fromResult:a=>a.fold(Bi,Xl),toResult:a=>Od(a,Zo.error,Zo.value),svalue:Xl,partition:qi,serror:Bi,bind:Ba,bindError:ki,map:Zp,mapError:Ia,fold:Od},xi=(a,f,g,O)=>({tag:"field",key:a,newKey:f,presence:g,prop:O}),Bl=(a,f)=>({tag:"custom",newKey:a,instantiator:f}),_u=(a,f,g)=>{switch(a.tag){case"field":return f(a.key,a.newKey,a.presence,a.prop);case"custom":return g(a.newKey,a.instantiator)}},di=(a,f)=>f,Xm=(a,f)=>y(a)&&y(f)?lr(a,f):f,Up=a=>(...f)=>{if(f.length===0)throw new Error("Can't merge zero objects");const g={};for(let O=0;O({tag:"required",process:{}}),La=a=>({tag:"defaultedThunk",process:a}),Mc=a=>La(ne(a)),wu=()=>({tag:"option",process:{}}),xe=a=>({tag:"mergeWithThunk",process:a}),Nc=a=>xe(ne(a)),Tf=(a,f)=>a.length>0?Kr.svalue(lr(f,ou.apply(void 0,a))):Kr.svalue(f),jl=a=>fe(Kr.serror,pt)(a),im={consolidateObj:(a,f)=>{const g=Kr.partition(a);return g.errors.length>0?jl(g.errors):Tf(g.values,f)},consolidateArr:a=>{const f=Kr.partition(a);return f.errors.length>0?jl(f.errors):Kr.svalue(f.values)}},jm=a=>b(a)&&Ts(a).length>100?" removed due to size":JSON.stringify(a,null,2),su=a=>{const f=a.length>10?a.slice(0,10).concat([{path:[],getErrorInfo:ne("... (only showing first ten failures)")}]):a;return Fe(f,g=>"Failed path: ("+g.path.join(" > ")+`) -`+g.getErrorInfo())},X=(a,f)=>Kr.serror([{path:a,getErrorInfo:f}]),re=(a,f,g)=>X(a,()=>'Could not find valid *required* value for "'+f+'" in '+jm(g)),ye=(a,f)=>X(a,()=>'Choice schema did not contain choice key: "'+f+'"'),Ze=(a,f,g)=>X(a,()=>'The chosen schema: "'+g+'" did not exist in branches: '+jm(f)),tt=(a,f)=>X(a,()=>"There are unsupported fields: ["+f.join(", ")+"] specified"),tn=(a,f)=>X(a,ne(f)),Kn=a=>{const f=(O,x)=>Kr.bindError(a(x),P=>tn(O,P)),g=ne("val");return{extract:f,toString:g}},Mo=Kn(Kr.svalue),To=(a,f,g,O)=>nn(f,g).fold(()=>re(a,g,f),O),_o=(a,f,g,O)=>{const x=nn(a,f).getOrThunk(()=>g(a));return O(x)},ai=(a,f,g)=>g(nn(a,f)),pi=(a,f,g,O)=>{const x=nn(a,f).map(P=>P===!0?g(a):P);return O(x)},Yl=(a,f,g,O,x)=>{const P=Q=>x.extract(f.concat([O]),Q),I=Q=>Q.fold(()=>Kr.svalue(q.none()),U=>{const ee=x.extract(f.concat([O]),U);return Kr.map(ee,q.some)});switch(a.tag){case"required":return To(f,g,O,P);case"defaultedThunk":return _o(g,O,a.process,P);case"option":return ai(g,O,I);case"defaultedOptionThunk":return pi(g,O,a.process,I);case"mergeWithThunk":return _o(g,O,ne({}),Q=>{const U=lr(a.process(g),Q);return P(U)})}},Uu=(a,f,g)=>{const O={},x=[];for(const P of g)_u(P,(I,Q,U,ee)=>{const se=Yl(U,a,f,I,ee);Kr.fold(se,he=>{x.push(...he)},he=>{O[Q]=he})},(I,Q)=>{O[I]=Q(f)});return x.length>0?Kr.serror(x):Kr.svalue(O)},Fa=a=>({extract:(O,x)=>a().extract(O,x),toString:()=>a().toString()}),F0=a=>Ts(ws(a,V)),Hr=a=>{const f=Jn(a),g=Yn(a,(x,P)=>_u(P,I=>lr(x,{[I]:!0}),ne(x)),{});return{extract:(x,P)=>{const I=R(P)?[]:F0(P),Q=jn(I,U=>!Xr(g,U));return Q.length===0?f.extract(x,P):tt(x,Q)},toString:f.toString}},Jn=a=>({extract:(O,x)=>Uu(O,x,a),toString:()=>`obj{ -`+Fe(a,x=>_u(x,(P,I,Q,U)=>P+" -> "+U.toString(),(P,I)=>"state("+P+")")).join(` -`)+"}"}),yd=a=>({extract:(O,x)=>{const P=Fe(x,(I,Q)=>a.extract(O.concat(["["+Q+"]"]),I));return im.consolidateArr(P)},toString:()=>"array("+a.toString()+")"}),Zn=(a,f)=>{const g=f!==void 0?f:Se;return{extract:(P,I)=>{const Q=[];for(const U of a){const ee=U.extract(P,I);if(ee.stype===Il.Value)return{stype:Il.Value,svalue:g(ee.svalue)};Q.push(ee)}return im.consolidateArr(Q)},toString:()=>"oneOf("+Fe(a,P=>P.toString()).join(", ")+")"}},Ha=(a,f)=>{const g=(P,I)=>yd(Kn(a)).extract(P,I);return{extract:(P,I)=>{const Q=Ts(I),U=g(P,Q);return Kr.bind(U,ee=>{const se=Fe(ee,he=>xi(he,he,$s(),f));return Jn(se).extract(P,I)})},toString:()=>"setOf("+f.toString()+")"}},sb=(a,f)=>{const g=ri(f);return{extract:(P,I)=>g().extract(P,I),toString:()=>g().toString()}},_d=fe(yd,Jn),ea=ne(Mo),tf=(a,f)=>Kn(g=>{const O=typeof g;return a(g)?Kr.svalue(g):Kr.serror(`Expected type: ${f} but got: ${O}`)}),Ym=tf(J,"number"),Ta=tf(p,"string"),Su=tf(R,"boolean"),Xp=tf(W,"function"),wd=a=>{if(Object(a)!==a)return!0;switch({}.toString.call(a).slice(8,-1)){case"Boolean":case"Number":case"String":case"Date":case"RegExp":case"Blob":case"FileList":case"ImageData":case"ImageBitmap":case"ArrayBuffer":return!0;case"Array":case"Object":return Object.keys(a).every(f=>wd(a[f]));default:return!1}},jp=Kn(a=>wd(a)?Kr.svalue(a):Kr.serror("Expected value to be acceptable for sending via postMessage")),nf=(a,f,g,O)=>nn(g,O).fold(()=>Ze(a,g,O),P=>P.extract(a.concat(["branch: "+O]),f)),un=(a,f)=>({extract:(x,P)=>nn(P,a).fold(()=>ye(x,a),Q=>nf(x,P,f,Q)),toString:()=>"chooseOn("+a+"). Possible values: "+Ts(f)}),rb=()=>yd(Mo),of=a=>Kn(f=>a(f).fold(Kr.serror,Kr.svalue)),sf=(a,f)=>Ha(g=>Kr.fromResult(a(g)),f),ru=(a,f,g)=>{const O=f.extract([a],g);return Kr.mapError(O,x=>({input:g,errors:x}))},li=(a,f,g)=>Kr.toResult(ru(a,f,g)),Js=a=>a.fold(f=>{throw new Error(wl(f))},Se),Ei=(a,f,g)=>Js(li(a,f,g)),wl=a=>`Errors: -`+su(a.errors).join(` -`)+` - -Input object: `+jm(a.input),ys=(a,f)=>un(a,ms(f,Jn)),lh=(a,f)=>sb(a,f),ca=xi,Qr=Bl,Gm=a=>of(f=>ct(a,f)?Zo.value(f):Zo.error(`Unsupported value: "${f}", choose one of "${a.join(", ")}".`)),Gt=a=>ca(a,a,$s(),ea()),Sl=(a,f)=>ca(a,a,$s(),f),Km=a=>Sl(a,Ym),Fs=a=>Sl(a,Ta),Li=(a,f)=>ca(a,a,$s(),Gm(f)),Yp=a=>Sl(a,Su),Cu=a=>Sl(a,Xp),ku=(a,f)=>ca(a,a,wu(),Kn(g=>Kr.serror("The field: "+a+" is forbidden. "+f))),Ic=(a,f)=>ca(a,a,$s(),Jn(f)),am=(a,f)=>ca(a,a,$s(),_d(f)),tl=(a,f)=>ca(a,a,$s(),yd(f)),er=a=>ca(a,a,wu(),ea()),ua=(a,f)=>ca(a,a,wu(),f),rf=a=>ua(a,Ym),nl=a=>ua(a,Ta),c1=(a,f)=>ua(a,Gm(f)),ch=a=>ua(a,Xp),af=(a,f)=>ua(a,yd(f)),Ll=(a,f)=>ua(a,Jn(f)),xu=(a,f)=>ua(a,Hr(f)),_t=(a,f)=>ca(a,a,Mc(f),ea()),Gl=(a,f,g)=>ca(a,a,Mc(f),g),iu=(a,f)=>Gl(a,f,Ym),Fl=(a,f)=>Gl(a,f,Ta),Kl=(a,f,g)=>Gl(a,f,Gm(g)),ya=(a,f)=>Gl(a,f,Su),da=(a,f)=>Gl(a,f,Xp),u1=(a,f)=>Gl(a,f,jp),Jl=(a,f,g)=>Gl(a,f,yd(g)),Sd=(a,f,g)=>Gl(a,f,Jn(g)),bo=a=>{let f=a;return{get:()=>f,set:x=>{f=x}}},K={generate:a=>{if(!k(a))throw new Error("cases must be an array");if(a.length===0)throw new Error("there must be at least one case");const f=[],g={};return mt(a,(O,x)=>{const P=Ts(O);if(P.length!==1)throw new Error("one and only one name per case");const I=P[0],Q=O[I];if(g[I]!==void 0)throw new Error("duplicate key detected:"+I);if(I==="cata")throw new Error("cannot have a case named cata (sorry)");if(!k(Q))throw new Error("case arguments must be an array");f.push(I),g[I]=(...U)=>{const ee=U.length;if(ee!==Q.length)throw new Error("Wrong number of arguments to case "+I+". Expected "+Q.length+" ("+Q+"), got "+ee);return{fold:(...he)=>{if(he.length!==a.length)throw new Error("Wrong number of arguments to fold. Expected "+a.length+", got "+he.length);return he[x].apply(null,U)},match:he=>{const be=Ts(he);if(f.length!==be.length)throw new Error("Wrong number of arguments to match. Expected: "+f.join(",")+` -Actual: `+be.join(","));if(!Nt(f,Re=>ct(be,Re)))throw new Error("Not all branches were specified when using match. Specified: "+be.join(", ")+` -Required: `+f.join(", "));return he[I].apply(null,U)},log:he=>{console.log(he,{constructors:f,constructor:I,params:U})}}}}),g}};K.generate([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const ve=a=>{const f=[],g=[];return mt(a,O=>{O.fold(x=>{f.push(x)},x=>{g.push(x)})}),{errors:f,values:g}},Ae=(a,f)=>{const g={};return vs(a,(O,x)=>{ct(f,x)||(g[x]=O)}),g},ot=(a,f)=>({[a]:f}),Vt=a=>{const f={};return mt(a,g=>{f[g.key]=g.value}),f},gn=(a,f)=>Ae(a,f),xn=(a,f)=>ot(a,f),ao=a=>Vt(a),Uo=(a,f)=>a.length===0?Zo.value(f):Zo.value(lr(f,ou.apply(void 0,a))),_i=a=>Zo.error(pt(a)),tr=(a,f)=>{const g=ve(a);return g.errors.length>0?_i(g.errors):Uo(g.values,f)},Vr=a=>W(a)?a:Tt,gc=(a,f,g)=>{let O=a.dom;const x=Vr(g);for(;O.parentNode;){O=O.parentNode;const P=nt.fromDom(O),I=f(P);if(I.isSome())return I;if(x(P))break}return q.none()},Cl=(a,f,g)=>{const O=f(a),x=Vr(g);return O.orThunk(()=>x(a)?q.none():gc(a,f,x))},Bc=(a,f)=>Us(a.element,f.event.target),Cd={can:St,abort:Tt,run:j},qu=a=>{if(!Xr(a,"can")&&!Xr(a,"abort")&&!Xr(a,"run"))throw new Error("EventHandler defined by: "+JSON.stringify(a,null,2)+" does not have can, abort, or run!");return{...Cd,...a}},uh=(a,f)=>(...g)=>po(a,(O,x)=>O&&f(x).apply(void 0,g),!0),Xs=(a,f)=>(...g)=>po(a,(O,x)=>O||f(x).apply(void 0,g),!1),dh=a=>W(a)?{can:St,abort:Tt,run:a}:a,Jm=a=>{const f=uh(a,x=>x.can),g=Xs(a,x=>x.abort);return{can:f,abort:g,run:(...x)=>{mt(a,P=>{P.run.apply(void 0,x)})}}},Ti=ne,Lc=Ti("touchstart"),lm=Ti("touchmove"),fh=Ti("touchend"),ds=Ti("touchcancel"),_s=Ti("mousedown"),fa=Ti("mousemove"),ol=Ti("mouseout"),Gp=Ti("mouseup"),kd=Ti("mouseover"),gi=Ti("focusin"),Fc=Ti("focusout"),Eu=Ti("keydown"),hh=Ti("keyup"),Af=Ti("input"),ep=Ti("change"),lf=Ti("click"),NO=Ti("transitioncancel"),mh=Ti("transitionend"),d1=Ti("transitionstart"),ph=Ti("selectstart"),ta=a=>ne("alloy."+a),Xu={tap:ta("tap")},xd=ta("focus"),gh=ta("blur.post"),bh=ta("paste.post"),tp=ta("receive"),au=ta("execute"),Fi=ta("focus.item"),Ed=Xu.tap,ib=ta("longpress"),f1=ta("sandbox.close"),h1=ta("typeahead.cancel"),vh=ta("system.init"),ec=ta("system.touchmove"),ju=ta("system.touchend"),$f=ta("system.scroll"),cf=ta("system.resize"),bc=ta("system.attached"),Yu=ta("system.detached"),Oh=ta("system.dismissRequested"),H0=ta("system.repositionRequested"),ab=ta("focusmanager.shifted"),Kp=ta("slotcontainer.visibility"),yh=ta("system.external.element.scroll"),Jp=ta("change.tab"),lb=ta("dismiss.tab"),eg=ta("highlight"),tg=ta("dehighlight"),gs=(a,f)=>{cm(a,a.element,f,{})},ho=(a,f,g)=>{cm(a,a.element,f,g)},Td=a=>{gs(a,au())},ng=(a,f,g)=>{cm(a,f,g,{})},cm=(a,f,g,O)=>{const x={target:f,...O};a.getSystem().triggerEvent(g,f,x)},tw=(a,f,g,O)=>{const x={...O,target:f};a.getSystem().triggerEvent(g,f,x)},cb=(a,f,g,O)=>{a.getSystem().triggerEvent(g,f,O.event)},kr=a=>ao(a),ub=(a,f)=>({key:a,value:qu({abort:f})}),m1=(a,f)=>({key:a,value:qu({can:f})}),Q0=a=>({key:a,value:qu({run:(f,g)=>{g.event.prevent()}})}),qt=(a,f)=>({key:a,value:qu({run:f})}),Ad=(a,f,g)=>({key:a,value:qu({run:(O,x)=>{f.apply(void 0,[O,x].concat(g))}})}),IO=a=>f=>qt(a,f),og=a=>f=>({key:a,value:qu({run:(g,O)=>{Bc(g,O)&&f(g,O)}})}),nw=(a,f)=>qt(a,(g,O)=>{g.getSystem().getByUid(f).each(x=>{cb(x,x.element,a,O)})}),np=(a,f,g)=>{const O=f.partUids[g];return nw(a,O)},V0=(a,f)=>qt(a,(g,O)=>{const x=O.event,P=g.getSystem().getByDom(x.target).getOrThunk(()=>Cl(x.target,Q=>g.getSystem().getByDom(Q).toOptional(),Tt).getOr(g));f(g,P,O)}),_h=a=>qt(a,(f,g)=>{g.cut()}),wh=a=>qt(a,(f,g)=>{g.stop()}),$d=(a,f)=>og(a)(f),xr=og(bc()),Pd=og(Yu()),sg=og(vh()),vc=IO(au()),ls=(a,f)=>{const O=(f||document).createElement("div");return O.innerHTML=a,Ya(nt.fromDom(O))},rg=a=>a.dom.innerHTML,Sh=(a,f)=>{const O=zi(a).dom,x=nt.fromDom(O.createDocumentFragment()),P=ls(f,O);nu(x,P),Dr(a),la(a,x)},um=a=>{const f=nt.fromTag("div"),g=nt.fromDom(a.dom.cloneNode(!0));return la(f,g),rg(f)},db=(a,f)=>nt.fromDom(a.dom.cloneNode(f)),p1=a=>db(a,!1),BO=a=>db(a,!0),tc=a=>{if(Ee(a))return"#shadow-root";{const f=p1(a);return um(f)}},Pf=a=>tc(a),eC=(a,f,g)=>Us(f,a.element)&&!Us(f,g),fb=kr([m1(xd(),(a,f)=>{const g=f.event,O=g.originator,x=g.target;return eC(a,O,x)?(console.warn(xd()+` did not get interpreted by the desired target. -Originator: `+Pf(O)+` -Target: `+Pf(x)+` -Check the `+xd()+" event handlers"),!1):!0})]);var op=Object.freeze({__proto__:null,events:fb});let gl=0;const Vn=a=>{const g=new Date().getTime(),O=Math.floor(Math.random()*1e9);return gl++,a+"_"+O+gl+String(g)},ow=ne("alloy-id-"),z0=ne("data-alloy-id"),Ch=ow(),Hc=z0(),kh=(a,f)=>{const g=Vn(Ch+a);return ig(f,g),g},ig=(a,f)=>{Object.defineProperty(a.dom,Hc,{value:f,writable:!0})},sp=a=>{const f=Ls(a)?a.dom[Hc]:null;return q.from(f)},ag=a=>Vn(a),hb=Se,Gu=a=>{const f=x=>`The component must be in a context to execute: ${x}`+(a?` -`+Pf(a().element)+" is not in context.":""),g=x=>()=>{throw new Error(f(x))},O=x=>()=>{console.warn(f(x))};return{debugInfo:ne("fake"),triggerEvent:O("triggerEvent"),triggerFocus:O("triggerFocus"),triggerEscape:O("triggerEscape"),broadcast:O("broadcast"),broadcastOn:O("broadcastOn"),broadcastEvent:O("broadcastEvent"),build:g("build"),buildOrPatch:g("buildOrPatch"),addToWorld:g("addToWorld"),removeFromWorld:g("removeFromWorld"),addToGui:g("addToGui"),removeFromGui:g("removeFromGui"),getByUid:g("getByUid"),getByDom:g("getByDom"),isConnected:Tt}},Dd=Gu(),lg=(a,f,g)=>{const O=g.toString(),x=O.indexOf(")")+1,P=O.indexOf("("),I=O.substring(P+1,x-1).split(/,\s*/);return a.toFunctionAnnotation=()=>({name:f,parameters:Ku(I.slice(0,1).concat(I.slice(3)))}),a},Ku=a=>Fe(a,f=>Di(f,"/*")?f.substring(0,f.length-2):f),mb=(a,f)=>{const g=a.toString(),O=g.indexOf(")")+1,x=g.indexOf("("),P=g.substring(x+1,O-1).split(/,\s*/);return a.toFunctionAnnotation=()=>({name:f,parameters:Ku(P)}),a},LO=(a,f)=>{const g=f.toString(),O=g.indexOf(")")+1,x=g.indexOf("("),P=g.substring(x+1,O-1).split(/,\s*/);return a.toFunctionAnnotation=()=>({name:"OVERRIDE",parameters:Ku(P.slice(1))}),a},cg=Vn("alloy-premade"),Df=a=>(Object.defineProperty(a.element.dom,cg,{value:a.uid,writable:!0}),xn(cg,a)),FO=a=>ns(a.dom,cg),ug=a=>nn(a,cg),xh=a=>LO((f,...g)=>a(f.getApis(),f,...g),a),Ju={init:()=>Hl({readState:ne("No State required")})},Hl=a=>a,W0=(a,f)=>{const g=Fe(f,x=>Ll(x.name(),[Gt("config"),_t("state",Ju)])),O=li("component.behaviours",Jn(g),a.behaviours).fold(x=>{throw new Error(wl(x)+` -Complete spec: -`+JSON.stringify(a,null,2))},Se);return{list:f,data:ms(O,x=>{const P=x.map(I=>({config:I.config,state:I.state.init(I.config)}));return ne(P)})}},Z0=a=>a.list,U0=a=>a.data,dg=(a,f)=>{const g={};return vs(a,(O,x)=>{vs(O,(P,I)=>{const Q=nn(g,I).getOr([]);g[I]=Q.concat([f(x,P)])})}),g},Qc=a=>({classes:N(a.classes)?[]:a.classes,attributes:N(a.attributes)?{}:a.attributes,styles:N(a.styles)?{}:a.styles}),lu=(a,f)=>({...a,attributes:{...a.attributes,...f.attributes},styles:{...a.styles,...f.styles},classes:a.classes.concat(f.classes)}),Rf=(a,f,g,O)=>{const x={...f};mt(g,se=>{x[se.name()]=se.exhibit(a,O)});const P=dg(x,(se,he)=>({name:se,modification:he})),I=se=>Yn(se,(he,be)=>({...be.modification,...he}),{}),Q=Yn(P.classes,(se,he)=>he.modification.concat(se),[]),U=I(P.attributes),ee=I(P.styles);return Qc({classes:Q,attributes:U,styles:ee})},pb=(a,f,g,O)=>{try{const x=is(g,(P,I)=>{const Q=P[f],U=I[f],ee=O.indexOf(Q),se=O.indexOf(U);if(ee===-1)throw new Error("The ordering for "+a+" does not have an entry for "+Q+`. -Order specified: `+JSON.stringify(O,null,2));if(se===-1)throw new Error("The ordering for "+a+" does not have an entry for "+U+`. -Order specified: `+JSON.stringify(O,null,2));return ee({handler:a,purpose:f}),QO=(a,f)=>({cHandler:a,purpose:f}),q0=(a,f)=>QO(Be.apply(void 0,[a.handler].concat(f)),a.purpose),fg=a=>a.cHandler,hg=(a,f)=>({name:a,handler:f}),gb=(a,f)=>{const g={};return mt(a,O=>{g[O.name()]=O.handlers(f)}),g},sw=(a,f,g)=>{const O={...g,...gb(f,a)};return dg(O,hg)},bb=(a,f,g,O)=>{const x=sw(a,g,O);return X0(x,f)},mg=a=>{const f=dh(a);return(g,O,...x)=>{const P=[g,O].concat(x);f.abort.apply(void 0,P)?O.stop():f.can.apply(void 0,P)&&f.run.apply(void 0,P)}},rw=(a,f)=>Zo.error(["The event ("+a+`) has more than one behaviour that listens to it. -When this occurs, you must specify an event ordering for the behaviours in your spec (e.g. [ "listing", "toggling" ]). -The behaviours that can trigger it are: `+JSON.stringify(Fe(f,g=>g.name),null,2)]),g1=(a,f,g)=>{const O=f[g];return O?pb("Event: "+g,"name",a,O).map(x=>{const P=Fe(x,I=>I.handler);return Jm(P)}):rw(g,a)},X0=(a,f)=>{const g=Pi(a,(O,x)=>(O.length===1?Zo.value(O[0].handler):g1(O,f,x)).map(I=>{const Q=mg(I),U=O.length>1?jn(f[x],ee=>dn(O,se=>se.name===ee)).join(" > "):O[0].name;return xn(x,HO(Q,U))}));return tr(g,{})},Vc="alloy.base.behaviour",b1=Jn([ca("dom","dom",$s(),Jn([Gt("tag"),_t("styles",{}),_t("classes",[]),_t("attributes",{}),er("value"),er("innerHtml")])),Gt("components"),Gt("uid"),_t("events",{}),_t("apis",{}),ca("eventOrder","eventOrder",Nc({[au()]:["disabling",Vc,"toggling","typeaheadevents"],[xd()]:[Vc,"focusing","keying"],[vh()]:[Vc,"disabling","toggling","representing"],[Af()]:[Vc,"representing","streaming","invalidating"],[Yu()]:[Vc,"representing","item-events","tooltipping"],[_s()]:["focusing",Vc,"item-type-events"],[Lc()]:["focusing",Vc,"item-type-events"],[kd()]:["item-type-events","tooltipping"],[tp()]:["receiving","reflecting","tooltipping"]}),ea()),er("domModification")]),j0=a=>li("custom.definition",b1,a),vb=a=>({...a.dom,uid:a.uid,domChildren:Fe(a.components,f=>f.element)}),tC=a=>a.domModification.fold(()=>Qc({}),Qc),Ob=a=>a.events,Eh=(a,f)=>{const g=ui(a,f);return g===void 0||g===""?[]:g.split(" ")},Mf=(a,f,g)=>{const x=Eh(a,f).concat([g]);return Mn(a,f,x.join(" ")),!0},Y0=(a,f,g)=>{const O=jn(Eh(a,f),x=>x!==g);return O.length>0?Mn(a,f,O.join(" ")):We(a,f),!1},pg=a=>a.dom.classList!==void 0,yb=a=>Eh(a,"class"),VO=(a,f)=>Mf(a,"class",f),Jr=(a,f)=>Y0(a,"class",f),Rd=(a,f)=>ct(yb(a),f)?Jr(a,f):VO(a,f),na=(a,f)=>{pg(a)?a.dom.classList.add(f):VO(a,f)},zO=a=>{(pg(a)?a.dom.classList:yb(a)).length===0&&We(a,"class")},wi=(a,f)=>{pg(a)?a.dom.classList.remove(f):Jr(a,f),zO(a)},rp=(a,f)=>{const g=pg(a)?a.dom.classList.toggle(f):Rd(a,f);return zO(a),g},Aa=(a,f)=>pg(a)&&a.dom.classList.contains(f),Ai=(a,f)=>{mt(f,g=>{na(a,g)})},Tu=(a,f)=>{mt(f,g=>{wi(a,g)})},G0=(a,f)=>{mt(f,g=>{rp(a,g)})},sl=(a,f)=>Nt(f,g=>Aa(a,g)),v1=a=>{const f=a.dom.classList,g=new Array(f.length);for(let O=0;Opg(a)?v1(a):yb(a),Nf=a=>a.dom.value,bg=(a,f)=>{if(f===void 0)throw new Error("Value.set was undefined");a.dom.value=f},dm=(a,f,g)=>uc(a,f).map(x=>{if(g.exists(I=>!Us(I,x))){const I=g.map(ia).getOr("span"),Q=nt.fromTag(I);return Ui(x,Q),Q}else return x}),Th=(a,f,g)=>{g.fold(()=>la(a,f),O=>{Us(O,f)||(Ui(O,f),Pc(O))})},iw=(a,f,g)=>{const O=Fe(f,g),x=Ya(a);return mt(x.slice(O.length),Pc),O},WO=(a,f,g,O)=>{const x=uc(a,f),P=O(g,x),I=dm(a,f,x);return Th(a,P.element,I),P},nC=(a,f,g)=>iw(a,f,(O,x)=>WO(a,x,O,g)),oC=(a,f)=>iw(a,f,(g,O)=>{const x=uc(a,O);return Th(a,g,x),g}),Md=(a,f)=>{const g=Ts(a),O=Ts(f),x=xt(O,g),P=Gs(a,(I,Q)=>!ns(f,Q)||I!==f[Q]).t;return{toRemove:x,toSet:P}},nc=(a,f)=>{const{class:g,style:O,...x}=Pt(f),{toSet:P,toRemove:I}=Md(a.attributes,x),Q=()=>{mt(I,Ot=>We(f,Ot)),fd(f,P)},U=yr(f),{toSet:ee,toRemove:se}=Md(a.styles,U),he=()=>{mt(se,Ot=>Jo(f,Ot)),Lr(f,ee)},be=gg(f),we=xt(be,a.classes),Re=xt(a.classes,be),Je=()=>{Ai(f,Re),Tu(f,we)},Ct=Ot=>{Sh(f,Ot)},at=()=>{const Ot=a.domChildren;oC(f,Ot)},st=()=>{const Ot=f,hn=a.value.getOrUndefined();hn!==Nf(Ot)&&bg(Ot,hn??"")};return Q(),Je(),he(),a.innerHtml.fold(at,Ct),st(),f},aw=a=>{const f=nt.fromTag(a.tag);fd(f,a.attributes),Ai(f,a.classes),Lr(f,a.styles),a.innerHtml.each(O=>Sh(f,O));const g=a.domChildren;return nu(f,g),a.value.each(O=>{bg(f,O)}),f},lw=(a,f)=>{try{const g=nc(a,f);return q.some(g)}catch{return q.none()}},fm=a=>a.innerHtml.isSome()&&a.domChildren.length>0,O1=(a,f)=>{const g=x=>ia(x)===a.tag&&!fm(a)&&!FO(x),O=f.filter(g).bind(x=>lw(a,x)).getOrThunk(()=>aw(a));return ig(O,a.uid),O},_b=a=>{const f=nn(a,"behaviours").getOr({});return Ne(Ts(f),g=>{const O=f[g];return V(O)?[O.me]:[]})},wb=(a,f)=>W0(a,f),If=a=>{const f=_b(a);return wb(a,f)},vg=(a,f,g)=>{const O=vb(a),x=tC(a),P={"alloy.base.modification":x},I=f.length>0?Rf(g,P,f,O):x;return lu(O,I)},hm=(a,f,g)=>{const O={"alloy.base.behaviour":Ob(a)};return bb(g,a.eventOrder,f,O).getOrDie()},ip=(a,f)=>{const g=()=>Ot,O=bo(Dd),x=Js(j0(a)),P=If(a),I=Z0(P),Q=U0(P),U=vg(x,I,Q),ee=O1(U,f),se=hm(x,I,Q),he=bo(x.components),be=hn=>{O.set(hn)},we=()=>{O.set(Gu(g))},Re=()=>{const hn=Ya(ee),jt=Ne(hn,Wt=>O.get().getByDom(Wt).fold(()=>[],Dn));he.set(jt)},Je=hn=>{const jt=Q;return(W(jt[hn.name()])?jt[hn.name()]:()=>{throw new Error("Could not find "+hn.name()+" in "+JSON.stringify(a,null,2))})()},Ct=hn=>W(Q[hn.name()]),at=()=>x.apis,st=hn=>Q[hn]().map(jt=>jt.state.readState()).getOr("not enabled"),Ot={uid:a.uid,getSystem:O.get,config:Je,hasConfigured:Ct,spec:a,readState:st,getApis:at,connect:be,disconnect:we,element:ee,syncComponents:Re,components:he.get,events:se};return Ot},ap=(a,f)=>{const g=nn(a,"components").getOr([]);return f.fold(()=>Fe(g,Ql),O=>Fe(g,(x,P)=>Sb(x,uc(O,P))))},ZO=(a,f)=>{const{events:g,...O}=hb(a),x=ap(O,f),P={...O,events:{...op,...g},components:x};return Zo.value(ip(P,f))},Xi=a=>{const f=nt.fromText(a);return UO({element:f})},UO=a=>{const f=Ei("external.component",Hr([Gt("element"),er("uid")]),a),g=bo(Gu()),O=Q=>{g.set(Q)},x=()=>{g.set(Gu(()=>I))},P=f.uid.getOrThunk(()=>ag("external"));ig(f.element,P);const I={uid:P,getSystem:g.get,config:q.none,hasConfigured:Tt,connect:O,disconnect:x,getApis:()=>({}),element:f.element,spec:a,readState:ne("No state"),syncComponents:j,components:ne([]),events:{}};return Df(I)},Og=ag,qO=a=>ns(a,"uid"),Sb=(a,f)=>ug(a).getOrThunk(()=>{const g=qO(a)?a:{uid:Og(""),...a};return ZO(g,f).getOrDie()}),Ql=a=>Sb(a,q.none()),cu=Df;var XO=(a,f,g,O,x)=>a(g,O)?q.some(g):W(x)&&x(g)?q.none():f(g,O,x);const lp=(a,f,g)=>{let O=a.dom;const x=W(g)?g:Tt;for(;O.parentNode;){O=O.parentNode;const P=nt.fromDom(O);if(f(P))return q.some(P);if(x(P))break}return q.none()},cp=(a,f,g)=>XO((x,P)=>P(x),lp,a,f,g),cw=(a,f)=>{const g=x=>f(nt.fromDom(x));return gt(a.dom.childNodes,g).map(nt.fromDom)},jO=(a,f)=>{const g=O=>{for(let x=0;xcp(a,f,g).isSome(),uu=(a,f,g)=>lp(a,O=>Yr(O,f),g),Cb=(a,f)=>cw(a,g=>Yr(g,f)),oa=(a,f)=>bu(f,a),uf=(a,f,g)=>XO((x,P)=>Yr(x,P),uu,a,f,g),yg="aria-controls",mm=a=>cp(a,g=>{if(!Ls(g))return!1;const O=ui(g,"id");return O!==void 0&&O.indexOf(yg)>-1}).bind(g=>{const O=ui(g,"id"),x=At(g);return oa(x,`[${yg}="${O}"]`)}),up=()=>{const a=Vn(yg);return{id:a,link:O=>{Mn(O,yg,a)},unlink:O=>{We(O,yg)}}},dp=(a,f)=>mm(f).exists(g=>Ah(a,g)),Ah=(a,f)=>K0(f,g=>Us(g,a.element),Tt)||dp(a,f),YO="unknown";var fp;(function(a){a[a.STOP=0]="STOP",a[a.NORMAL=1]="NORMAL",a[a.LOGGING=2]="LOGGING"})(fp||(fp={}));const pm=bo({}),gm=(a,f)=>{const g=[],O=new Date().getTime();return{logEventCut:(x,P,I)=>{g.push({outcome:"cut",target:P,purpose:I})},logEventStopped:(x,P,I)=>{g.push({outcome:"stopped",target:P,purpose:I})},logNoParent:(x,P,I)=>{g.push({outcome:"no-parent",target:P,purpose:I})},logEventNoHandlers:(x,P)=>{g.push({outcome:"no-handlers-left",target:P})},logEventResponse:(x,P,I)=>{g.push({outcome:"response",purpose:I,target:P})},write:()=>{const x=new Date().getTime();ct(["mousemove","mouseover","mouseout",vh()],a)||console.log(a,{event:a,time:x-O,target:f.dom,sequence:Fe(g,P=>ct(["cut","stopped","response"],P.outcome)?"{"+P.purpose+"} "+P.outcome+" at ("+Pf(P.target)+")":P.outcome)})}}},J0=(a,f,g)=>{switch(nn(pm.get(),a).orThunk(()=>{const x=Ts(pm.get());return Vs(x,P=>a.indexOf(P)>-1?q.some(pm.get()[P]):q.none())}).getOr(fp.NORMAL)){case fp.NORMAL:return g(_g());case fp.LOGGING:{const x=gm(a,f),P=g(x);return x.write(),P}case fp.STOP:return!0}},uw=["alloy/data/Fields","alloy/debugging/Debugging"],ev=()=>{const a=new Error;if(a.stack!==void 0){const f=a.stack.split(` -`);return gt(f,g=>g.indexOf("alloy")>0&&!dn(uw,O=>g.indexOf(O)>-1)).getOr(YO)}else return YO},dw={logEventCut:j,logEventStopped:j,logNoParent:j,logEventNoHandlers:j,logEventResponse:j,write:j},kb=(a,f,g)=>J0(a,f,g),_g=ne(dw),du=ne([Gt("menu"),Gt("selectedMenu")]),GO=ne([Gt("item"),Gt("selectedItem")]);ne(Jn(GO().concat(du())));const wg=ne(Jn(GO())),KO=Ic("initSize",[Gt("numColumns"),Gt("numRows")]),fw=()=>Sl("markers",wg()),y1=()=>Ic("markers",[Gt("backgroundMenu")].concat(du()).concat(GO())),bm=a=>Ic("markers",Fe(a,Gt)),xb=(a,f,g)=>(ev(),ca(f,f,g,of(O=>Zo.value((...x)=>O.apply(void 0,x))))),Ps=a=>xb("onHandler",a,Mc(j)),fu=a=>xb("onKeyboardHandler",a,Mc(q.none)),df=a=>xb("onHandler",a,$s()),Sg=a=>xb("onKeyboardHandler",a,$s()),Er=(a,f)=>Qr(a,ne(f)),Cg=a=>Qr(a,Se),Eb=ne(KO),wa=(a,f,g,O,x,P,I,Q=!1)=>({x:a,y:f,bubble:g,direction:O,placement:x,restriction:P,label:`${I}-${x}`,alwaysFit:Q}),ff=K.generate([{southeast:[]},{southwest:[]},{northeast:[]},{northwest:[]},{south:[]},{north:[]},{east:[]},{west:[]}]),$h=(a,f,g,O,x,P,I,Q,U)=>a.fold(f,g,O,x,P,I,Q,U),Tb=(a,f,g,O)=>a.fold(f,f,O,O,f,O,g,g),_1=(a,f,g,O)=>a.fold(f,O,f,O,g,g,f,O),w1=ff.southeast,tv=ff.southwest,Ab=ff.northeast,ed=ff.northwest,Nd=ff.south,hw=ff.north,Dt=ff.east,hp=ff.west,mp=(a,f,g,O)=>{const x=a+f;return x>O?g:xMath.min(Math.max(a,f),g),nv=(a,f)=>{switch(f){case 1:return a.x;case 0:return a.x+a.width;case 2:return a.y;case 3:return a.y+a.height}},bi=(a,f)=>kn(["left","right","top","bottom"],g=>nn(f,g).map(O=>nv(a,O))),$b=(a,f,g)=>{const O=(U,ee)=>f[U].map(se=>{const he=U==="top"||U==="bottom",be=he?g.top:g.left,Re=(U==="left"||U==="top"?Math.max:Math.min)(se,ee)+be;return he?Au(Re,a.y,a.bottom):Au(Re,a.x,a.right)}).getOr(ee),x=O("left",a.x),P=O("top",a.y),I=O("right",a.right),Q=O("bottom",a.bottom);return Cr(x,P,I-x,Q-P)},Ph="layout",ov=a=>a.x,Pb=(a,f)=>a.x+a.width/2-f.width/2,sv=(a,f)=>a.x+a.width-f.width,S1=(a,f)=>a.y-f.height,kg=a=>a.y+a.height,rv=(a,f)=>a.y+a.height/2-f.height/2,mw=a=>a.x+a.width,sa=(a,f)=>a.x-f.width,Qa=(a,f,g)=>wa(ov(a),kg(a),g.southeast(),w1(),"southeast",bi(a,{left:1,top:3}),Ph),kl=(a,f,g)=>wa(sv(a,f),kg(a),g.southwest(),tv(),"southwest",bi(a,{right:0,top:3}),Ph),Va=(a,f,g)=>wa(ov(a),S1(a,f),g.northeast(),Ab(),"northeast",bi(a,{left:1,bottom:2}),Ph),os=(a,f,g)=>wa(sv(a,f),S1(a,f),g.northwest(),ed(),"northwest",bi(a,{right:0,bottom:2}),Ph),oc=(a,f,g)=>wa(Pb(a,f),S1(a,f),g.north(),hw(),"north",bi(a,{bottom:2}),Ph),zr=(a,f,g)=>wa(Pb(a,f),kg(a),g.south(),Nd(),"south",bi(a,{top:3}),Ph),za=(a,f,g)=>wa(mw(a),rv(a,f),g.east(),Dt(),"east",bi(a,{left:0}),Ph),C1=(a,f,g)=>wa(sa(a,f),rv(a,f),g.west(),hp(),"west",bi(a,{right:1}),Ph),Bf=()=>[Qa,kl,Va,os,zr,oc,za,C1],k1=()=>[kl,Qa,os,Va,zr,oc,za,C1],iv=()=>[Va,os,Qa,kl,oc,zr],JO=()=>[os,Va,kl,Qa,oc,zr],Db=()=>[Qa,kl,Va,os,zr,oc],av=()=>[kl,Qa,os,Va,zr,oc],lv=(a,f)=>f.universal?a:jn(a,g=>ct(f.channels,g));var Lf=Object.freeze({__proto__:null,events:a=>kr([qt(tp(),(f,g)=>{const O=a.channels,x=Ts(O),P=g,I=lv(x,P);mt(I,Q=>{const U=O[Q],ee=U.schema,se=Ei("channel["+Q+`] data -Receiver: `+Pf(f.element),ee,P.data);U.onReceive(f,se)})})])}),ey=[Sl("channels",sf(Zo.value,Hr([df("onReceive"),_t("schema",ea())])))];const Dh=(a,f,g)=>vc(O=>{g(O,a,f)}),ha=(a,f,g)=>sg((O,x)=>{g(O,a,f)}),Wa=(a,f,g,O,x,P)=>{const I=Hr(a),Q=Ll(f,[xu("config",a)]);return hf(I,Q,f,g,O,x,P)},gw=(a,f,g,O,x,P)=>{const I=a,Q=Ll(f,[ua("config",a)]);return hf(I,Q,f,g,O,x,P)},zc=(a,f,g)=>lg((x,...P)=>{const I=[x].concat(P);return x.config({name:ne(a)}).fold(()=>{throw new Error("We could not find any behaviour configuration for: "+a+". Using API: "+g)},Q=>{const U=Array.prototype.slice.call(I,1);return f.apply(void 0,[x,Q.config,Q.state].concat(U))})},g,f),sC=a=>({key:a,value:void 0}),hf=(a,f,g,O,x,P,I)=>{const Q=he=>Xr(he,g)?he[g]():q.none(),U=ms(x,(he,be)=>zc(g,he,be)),se={...ms(P,(he,be)=>mb(he,be)),...U,revoke:Be(sC,g),config:he=>{const be=Ei(g+"-config",a,he);return{key:g,value:{config:be,me:se,configAsRaw:ri(()=>Ei(g+"-config",a,he)),initialConfig:he,state:I}}},schema:ne(f),exhibit:(he,be)=>Rn(Q(he),nn(O,"exhibit"),(we,Re)=>Re(be,we.config,we.state)).getOrThunk(()=>Qc({})),name:ne(g),handlers:he=>Q(he).map(be=>nn(O,"events").getOr(()=>({}))(be.config,be.state)).getOr({})};return se},On=a=>ao(a),cv=Hr([Gt("fields"),Gt("name"),_t("active",{}),_t("apis",{}),_t("state",Ju),_t("extra",{})]),Za=a=>{const f=Ei("Creating behaviour: "+a.name,cv,a);return Wa(f.fields,f.name,f.active,f.apis,f.extra,f.state)},uv=Hr([Gt("branchKey"),Gt("branches"),Gt("name"),_t("active",{}),_t("apis",{}),_t("state",Ju),_t("extra",{})]),vm=a=>{const f=Ei("Creating behaviour: "+a.name,uv,a);return gw(ys(f.branchKey,f.branches),f.name,f.active,f.apis,f.extra,f.state)},x1=ne(void 0),Wc=Za({fields:ey,name:"receiving",active:Lf});var E1=Object.freeze({__proto__:null,exhibit:(a,f)=>Qc({classes:[],styles:f.useFixed()?{}:{position:"relative"}})});const ji=(a,f=!1)=>a.dom.focus({preventScroll:f}),mf=a=>a.dom.blur(),T1=a=>{const f=At(a).dom;return a.dom===f.activeElement},Ff=(a=Wu())=>q.from(a.dom.activeElement).map(nt.fromDom),Id=a=>Ff(At(a)).filter(f=>a.dom.contains(f.dom)),Hn=(a,f)=>{const g=At(f),O=Ff(g).bind(P=>{const I=Q=>Us(P,Q);return I(f)?q.some(f):jO(f,I)}),x=a(f);return O.each(P=>{Ff(g).filter(I=>Us(I,P)).fold(()=>{ji(P)},j)}),x},$u=(a,f,g,O,x)=>{const P=I=>I+"px";return{position:a,left:f.map(P),top:g.map(P),right:O.map(P),bottom:x.map(P)}},dv=a=>({...a,position:q.some(a.position)}),Hf=(a,f)=>{cn(a,dv(f))},cr=K.generate([{none:[]},{relative:["x","y","width","height"]},{fixed:["x","y","width","height"]}]),fv=(a,f,g,O,x,P)=>{const I=f.rect,Q=I.x-g,U=I.y-O,ee=I.width,se=I.height,he=x-(Q+ee),be=P-(U+se),we=q.some(Q),Re=q.some(U),Je=q.some(he),Ct=q.some(be),at=q.none();return $h(f.direction,()=>$u(a,we,Re,at,at),()=>$u(a,at,Re,Je,at),()=>$u(a,we,at,at,Ct),()=>$u(a,at,at,Je,Ct),()=>$u(a,we,Re,at,at),()=>$u(a,we,at,at,Ct),()=>$u(a,we,Re,at,at),()=>$u(a,at,Re,Je,at))},Pu=(a,f)=>a.fold(()=>{const g=f.rect;return $u("absolute",q.some(g.x),q.some(g.y),q.none(),q.none())},(g,O,x,P)=>fv("absolute",f,g,O,x,P),(g,O,x,P)=>fv("fixed",f,g,O,x,P)),Rb=(a,f)=>{const g=Be(bd,f),O=a.fold(g,g,()=>{const I=el();return bd(f).translate(-I.left,-I.top)}),x=Wi(f),P=hd(f);return Cr(O.left,O.top,x,P)},bw=(a,f)=>f.fold(()=>a.fold(Ea,Ea,Cr),g=>a.fold(ne(g),ne(g),()=>{const O=vi(a,g.x,g.y);return Cr(O.left,O.top,g.width,g.height)})),vi=(a,f,g)=>{const O=Ws(f,g),x=()=>{const P=el();return O.translate(-P.left,-P.top)};return a.fold(ne(O),ne(O),x)},vw=(a,f,g,O)=>a.fold(f,g,O);cr.none;const Vl=cr.relative,Om=cr.fixed,Ow=(a,f)=>({anchorBox:a,origin:f}),yw=(a,f)=>Ow(a,f),hv="data-alloy-placement",_w=(a,f)=>{Mn(a,hv,f)},ny=a=>me(a,hv),oy=a=>We(a,hv),A1=K.generate([{fit:["reposition"]},{nofit:["reposition","visibleW","visibleH","isVisible"]}]),sy=(a,f)=>{const{x:g,y:O,right:x,bottom:P}=f,{x:I,y:Q,right:U,bottom:ee,width:se,height:he}=a,be=I>=g&&I<=x,we=Q>=O&&Q<=P,Re=be&&we,Je=U<=x&&U>=g,Ct=ee<=P&&ee>=O,at=Je&&Ct,st=Math.min(se,I>=g?x-I:U-g),Ot=Math.min(he,Q>=O?P-Q:ee-O);return{originInBounds:Re,sizeInBounds:at,visibleW:st,visibleH:Ot}},mv=(a,f)=>{const{x:g,y:O,right:x,bottom:P}=f,{x:I,y:Q,width:U,height:ee}=a,se=Math.max(g,x-U),he=Math.max(O,P-ee),be=Au(I,g,se),we=Au(Q,O,he),Re=Math.min(be+U,x)-be,Je=Math.min(we+ee,P)-we;return Cr(be,we,Re,Je)},pp=(a,f,g)=>{const O=ne(f.bottom-g.y),x=ne(g.bottom-f.y),P=Tb(a,x,x,O),I=ne(f.right-g.x),Q=ne(g.right-f.x);return{maxWidth:_1(a,Q,Q,I),maxHeight:P}},ww=(a,f,g,O)=>{const x=a.bubble,P=x.offset,I=$b(O,a.restriction,P),Q=a.x+P.left,U=a.y+P.top,ee=Cr(Q,U,f,g),{originInBounds:se,sizeInBounds:he,visibleW:be,visibleH:we}=sy(ee,I),Re=se&&he,Je=Re?ee:mv(ee,I),Ct=Je.width>0&&Je.height>0,{maxWidth:at,maxHeight:st}=pp(a.direction,Je,O),Ot={rect:Je,maxHeight:st,maxWidth:at,direction:a.direction,placement:a.placement,classes:{on:x.classesOn,off:x.classesOff},layout:a.label,testY:U};return Re||a.alwaysFit?A1.fit(Ot):A1.nofit(Ot,be,we,Ct)},Sw=(a,f,g,O,x,P)=>{const I=O.width,Q=O.height,U=(se,he,be,we,Re)=>{const Je=se(g,O,x,a,P),Ct=ww(Je,I,Q,P);return Ct.fold(ne(Ct),(at,st,Ot,hn)=>(Re===hn?Ot>we||st>be:!Re&&hn)?Ct:A1.nofit(he,be,we,Re))};return po(f,(se,he)=>{const be=Be(U,he);return se.fold(ne(se),be)},A1.nofit({rect:g,maxHeight:O.height,maxWidth:O.width,direction:w1(),placement:"southeast",classes:{on:[],off:[]},layout:"none",testY:g.y},-1,-1,!1)).fold(Se,Se)},pv=a=>{const f=bo(q.none()),g=()=>f.get().each(a);return{clear:()=>{g(),f.set(q.none())},isSet:()=>f.get().isSome(),get:()=>f.get(),set:Q=>{g(),f.set(q.some(Q))}}},gv=()=>pv(a=>a.destroy()),Rh=()=>pv(a=>a.unbind()),fs=()=>{const a=pv(j);return{...a,on:g=>a.get().each(g)}},bv=St,sc=(a,f,g)=>br(a,f,bv,g),Mb=(a,f,g)=>rh(a,f,bv,g),xl=ps,Zc=["top","bottom","right","left"],Nb="data-alloy-transition-timer",ry=(a,f)=>sl(a,f.classes),Cw=(a,f,g)=>g.exists(O=>{const x=a.mode;return x==="all"?!0:O[x]!==f[x]}),iy=(a,f)=>{const g=O=>parseFloat(O).toFixed(3);return ts(f,(O,x)=>{const P=a[x].map(g),I=O.map(g);return!Ye(P,I)}).isSome()},xg=a=>{const f=P=>{const Q=Or(a,P).split(/\s*,\s*/);return jn(Q,Ge)},g=P=>{if(p(P)&&/^[\d.]+/.test(P)){const I=parseFloat(P);return Di(P,"ms")?I:I*1e3}else return 0},O=f("transition-delay"),x=f("transition-duration");return po(x,(P,I,Q)=>{const U=g(O[Q])+g(I);return Math.max(P,U)},0)},ay=(a,f)=>{const g=Rh(),O=Rh();let x;const P=ee=>{var se;const he=(se=ee.raw.pseudoElement)!==null&&se!==void 0?se:"";return Us(ee.target,a)&&Xe(he)&&ct(Zc,ee.raw.propertyName)},I=ee=>{if(F(ee)||P(ee)){g.clear(),O.clear();const se=ee==null?void 0:ee.raw.type;(F(se)||se===mh())&&(clearTimeout(x),We(a,Nb),Tu(a,f.classes))}},Q=sc(a,d1(),ee=>{P(ee)&&(Q.unbind(),g.set(sc(a,mh(),I)),O.set(sc(a,NO(),I)))}),U=xg(a);requestAnimationFrame(()=>{x=setTimeout(I,U+17),Mn(a,Nb,x)})},rC=(a,f)=>{Ai(a,f.classes),me(a,Nb).each(g=>{clearTimeout(parseInt(g,10)),We(a,Nb)}),ay(a,f)},Mh=(a,f,g,O,x,P)=>{const I=Cw(O,x,P);if(I||ry(a,O)){Wn(a,"position",g.position);const Q=Rb(f,a),U=Pu(f,{...x,rect:Q}),ee=kn(Zc,se=>U[se]);iy(g,ee)&&(cn(a,ee),I&&rC(a,O),dl(a))}else Tu(a,O.classes)},kw=a=>({width:Wi(a),height:hd(a)}),Eg=(a,f,g,O)=>{Jo(f,"max-height"),Jo(f,"max-width");const x=kw(f);return Sw(f,O.preference,a,x,g,O.bounds)},xw=(a,f)=>{const g=f.classes;Tu(a,g.off),Ai(a,g.on)},Ib=(a,f,g)=>{const O=g.maxHeightFunction;O(a,f.maxHeight)},vv=(a,f,g)=>{const O=g.maxWidthFunction;O(a,f.maxWidth)},gp=(a,f,g)=>{const O=Pu(g.origin,f);g.transition.each(x=>{Mh(a,g.origin,O,x,f,g.lastPlacement)}),Hf(a,O)},Ew=(a,f)=>{_w(a,f.placement)},ly=(a,f)=>{Ni(a,Math.floor(f))},cy=ne((a,f)=>{ly(a,f),Lr(a,{"overflow-x":"hidden","overflow-y":"auto"})}),pf=ne((a,f)=>{ly(a,f)}),uy=(a,f,g)=>a[f]===void 0?g:a[f],Ov=(a,f,g,O,x,P,I,Q)=>{const U=uy(I,"maxHeightFunction",cy()),ee=uy(I,"maxWidthFunction",j),se=a.anchorBox,he=a.origin,be={bounds:bw(he,P),origin:he,preference:O,maxHeightFunction:U,maxWidthFunction:ee,lastPlacement:x,transition:Q};return Tw(se,f,g,be)},Tw=(a,f,g,O)=>{const x=Eg(a,f,g,O);return gp(f,x,O),Ew(f,x),xw(f,x),Ib(f,x,O),vv(f,x,O),{layout:x.layout,placement:x.placement}},dy=["valignCentre","alignLeft","alignRight","alignCentre","top","bottom","left","right","inset"],Qf=(a,f,g,O=1)=>{const x=a*O,P=f*O,I=U=>nn(g,U).getOr([]),Q=(U,ee,se)=>{const he=xt(dy,se);return{offset:Ws(U,ee),classesOn:Ne(se,I),classesOff:Ne(he,I)}};return{southeast:()=>Q(-a,f,["top","alignLeft"]),southwest:()=>Q(a,f,["top","alignRight"]),south:()=>Q(-a/2,f,["top","alignCentre"]),northeast:()=>Q(-a,-f,["bottom","alignLeft"]),northwest:()=>Q(a,-f,["bottom","alignRight"]),north:()=>Q(-a/2,-f,["bottom","alignCentre"]),east:()=>Q(a,-f/2,["valignCentre","left"]),west:()=>Q(-a,-f/2,["valignCentre","right"]),insetNortheast:()=>Q(x,P,["top","alignLeft","inset"]),insetNorthwest:()=>Q(-x,P,["top","alignRight","inset"]),insetNorth:()=>Q(-x/2,P,["top","alignCentre","inset"]),insetSoutheast:()=>Q(x,-P,["bottom","alignLeft","inset"]),insetSouthwest:()=>Q(-x,-P,["bottom","alignRight","inset"]),insetSouth:()=>Q(-x/2,-P,["bottom","alignCentre","inset"]),insetEast:()=>Q(-x,-P/2,["valignCentre","right","inset"]),insetWest:()=>Q(x,-P/2,["valignCentre","left","inset"])}},Tg=()=>Qf(0,0,{}),Ag=Se,Bb=(a,f)=>g=>$1(g)==="rtl"?f:a,$1=a=>Or(a,"direction")==="rtl"?"rtl":"ltr";var td;(function(a){a.TopToBottom="toptobottom",a.BottomToTop="bottomtotop"})(td||(td={}));const $g="data-alloy-vertical-dir",P1=a=>K0(a,f=>Ls(f)&&ui(f,"data-alloy-vertical-dir")===td.BottomToTop),ym=()=>Ll("layouts",[Gt("onLtr"),Gt("onRtl"),er("onBottomLtr"),er("onBottomRtl")]),Lb=(a,f,g,O,x,P,I)=>{const Q=I.map(P1).getOr(!1),U=f.layouts.map(we=>we.onLtr(a)),ee=f.layouts.map(we=>we.onRtl(a)),se=Q?f.layouts.bind(we=>we.onBottomLtr.map(Re=>Re(a))).or(U).getOr(x):U.getOr(g),he=Q?f.layouts.bind(we=>we.onBottomRtl.map(Re=>Re(a))).or(ee).getOr(P):ee.getOr(O);return Bb(se,he)(a)},Aw=(a,f,g)=>{const O=f.hotspot,x=Rb(g,O.element),P=Lb(a.element,f,Db(),av(),iv(),JO(),q.some(f.hotspot.element));return q.some(Ag({anchorBox:x,bubble:f.bubble.getOr(Tg()),overrides:f.overrides,layouts:P}))};var $w=[Gt("hotspot"),er("bubble"),_t("overrides",{}),ym(),Er("placement",Aw)];const fy=(a,f,g)=>{const O=vi(g,f.x,f.y),x=Cr(O.left,O.top,f.width,f.height),P=Lb(a.element,f,Bf(),k1(),Bf(),k1(),q.none());return q.some(Ag({anchorBox:x,bubble:f.bubble,overrides:f.overrides,layouts:P}))};var Pw=[Gt("x"),Gt("y"),_t("height",0),_t("width",0),_t("bubble",Tg()),_t("overrides",{}),ym(),Er("placement",fy)];const yv=K.generate([{screen:["point"]},{absolute:["point","scrollLeft","scrollTop"]}]),Dw=a=>a.fold(Se,(f,g,O)=>f.translate(-g,-O)),Rw=a=>a.fold(Se,Se),hy=a=>po(a,(f,g)=>f.translate(g.left,g.top),Ws(0,0)),Mw=a=>{const f=Fe(a,Dw);return hy(f)},my=a=>{const f=Fe(a,Rw);return hy(f)},Nw=yv.screen,Fb=yv.absolute,Iw=(a,f,g)=>{const O=ql(g.root).dom,x=P=>{const I=zi(P),Q=zi(a.element);return Us(I,Q)};return q.from(O.frameElement).map(nt.fromDom).filter(x).map(Nl)},py=(a,f,g)=>{const O=zi(a.element),x=el(O),P=Iw(a,f,g).getOr(x);return Fb(P,x.left,x.top)},Pg=(a,f,g,O)=>{const x=Nw(Ws(a,f));return q.some(vd(x,g,O))},_v=(a,f,g,O,x)=>a.map(P=>{const I=[f,P.point],Q=vw(O,()=>my(I),()=>my(I),()=>Mw(I)),U=ef(Q.left,Q.top,P.width,P.height),ee=g.showAbove?iv():Db(),se=g.showAbove?JO():av(),he=Lb(x,g,ee,se,ee,se,q.none());return Ag({anchorBox:U,bubble:g.bubble.getOr(Tg()),overrides:g.overrides,layouts:he})}),wv=(a,f,g)=>{const O=py(a,g,f);return f.node.filter(Ss).bind(x=>{const P=x.dom.getBoundingClientRect(),I=Pg(P.left,P.top,P.width,P.height),Q=f.node.getOr(a.element);return _v(I,O,f,g,Q)})};var Sv=[Gt("node"),Gt("root"),er("bubble"),ym(),_t("overrides",{}),_t("showAbove",!1),Er("placement",wv)];const Hb="\uFEFF",Qb=" ",Vb={create:(a,f,g,O)=>({start:a,soffset:f,finish:g,foffset:O})},zb=K.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Bw=(a,f,g,O)=>a.fold(f,g,O),D1=a=>a.fold(Se,Se,Se),by=zb.before,Lw=zb.on,Cv=zb.after,Du={before:by,on:Lw,after:Cv,cata:Bw,getStart:D1},_m=K.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Fw=a=>_m.exact(a.start,a.soffset,a.finish,a.foffset),kv=a=>a.match({domRange:f=>nt.fromDom(f.startContainer),relative:(f,g)=>Du.getStart(f),exact:(f,g,O,x)=>f}),Hw=_m.domRange,Qw=_m.relative,xv=_m.exact,vy=a=>{const f=kv(a);return ql(f)},Ev=Vb.create,bl={domRange:Hw,relative:Qw,exact:xv,exactFromRange:Fw,getWin:vy,range:Ev},iC=(a,f)=>{f.fold(g=>{a.setStartBefore(g.dom)},(g,O)=>{a.setStart(g.dom,O)},g=>{a.setStartAfter(g.dom)})},Dg=(a,f)=>{f.fold(g=>{a.setEndBefore(g.dom)},(g,O)=>{a.setEnd(g.dom,O)},g=>{a.setEndAfter(g.dom)})},Wb=(a,f,g)=>{const O=a.document.createRange();return iC(O,f),Dg(O,g),O},Tv=(a,f,g,O,x)=>{const P=a.document.createRange();return P.setStart(f.dom,g),P.setEnd(O.dom,x),P},Av=a=>({left:a.left,top:a.top,right:a.right,bottom:a.bottom,width:a.width,height:a.height}),Oy=a=>{const f=a.getClientRects(),g=f.length>0?f[0]:a.getBoundingClientRect();return g.width>0||g.height>0?q.some(g).map(Av):q.none()},yy=a=>{const f=a.getBoundingClientRect();return f.width>0||f.height>0?q.some(f).map(Av):q.none()},Nh=K.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),bp=(a,f,g)=>f(nt.fromDom(g.startContainer),g.startOffset,nt.fromDom(g.endContainer),g.endOffset),Vw=(a,f)=>f.match({domRange:g=>({ltr:ne(g),rtl:q.none}),relative:(g,O)=>({ltr:ri(()=>Wb(a,g,O)),rtl:ri(()=>q.some(Wb(a,O,g)))}),exact:(g,O,x,P)=>({ltr:ri(()=>Tv(a,g,O,x,P)),rtl:ri(()=>q.some(Tv(a,x,P,g,O)))})}),zw=(a,f)=>{const g=f.ltr();return g.collapsed?f.rtl().filter(x=>x.collapsed===!1).map(x=>Nh.rtl(nt.fromDom(x.endContainer),x.endOffset,nt.fromDom(x.startContainer),x.startOffset)).getOrThunk(()=>bp(a,Nh.ltr,g)):bp(a,Nh.ltr,g)},R1=(a,f)=>{const g=Vw(a,f);return zw(a,g)},$v=(a,f)=>R1(a,f).match({ltr:(O,x,P,I)=>{const Q=a.document.createRange();return Q.setStart(O.dom,x),Q.setEnd(P.dom,I),Q},rtl:(O,x,P,I)=>{const Q=a.document.createRange();return Q.setStart(P.dom,I),Q.setEnd(O.dom,x),Q}});Nh.ltr,Nh.rtl;const _y=(a,f,g)=>jn(cd(a,g),f),Ua=(a,f)=>ja(f,a),wy=(a,f,g,O)=>{const P=zi(a).dom.createRange();return P.setStart(a.dom,f),P.setEnd(g.dom,O),P},Pv=(a,f,g,O)=>{const x=wy(a,f,g,O),P=Us(a,g)&&f===O;return x.collapsed&&!P},aC=a=>q.from(a.getSelection()),Rg=a=>{if(a.rangeCount>0){const f=a.getRangeAt(0),g=a.getRangeAt(a.rangeCount-1);return q.some(Vb.create(nt.fromDom(f.startContainer),f.startOffset,nt.fromDom(g.endContainer),g.endOffset))}else return q.none()},Ww=a=>{if(a.anchorNode===null||a.focusNode===null)return Rg(a);{const f=nt.fromDom(a.anchorNode),g=nt.fromDom(a.focusNode);return Pv(f,a.anchorOffset,g,a.focusOffset)?q.some(Vb.create(f,a.anchorOffset,g,a.focusOffset)):Rg(a)}},Sy=a=>aC(a).filter(f=>f.rangeCount>0).bind(Ww),Dv=(a,f)=>{const g=$v(a,f);return Oy(g)},M1=(a,f)=>{const g=$v(a,f);return yy(g)},Mg=((a,f)=>{const g=P=>{if(!a(P))throw new Error("Can only get "+f+" value of a "+f+" node");return O(P).getOr("")},O=P=>a(P)?q.from(P.dom.nodeValue):q.none();return{get:g,getOption:O,set:(P,I)=>{if(!a(P))throw new Error("Can only set raw "+f+" value of a "+f+" node");P.dom.nodeValue=I}}})(Ji,"text"),Zw=a=>Mg.get(a),wm=(a,f)=>({element:a,offset:f}),Cy=(a,f)=>{const g=Ya(a);if(g.length===0)return wm(a,f);if(fJi(a)?wm(a,f):Cy(a,f),Cm=a=>a.foffset!==void 0,E=(a,f)=>f.getSelection.getOrThunk(()=>()=>Sy(a))().map(O=>{if(Cm(O)){const x=Sm(O.start,O.soffset),P=Sm(O.finish,O.foffset);return bl.range(x.element,x.offset,P.element,P.offset)}else return O}),D=(a,f,g)=>{const O=ql(f.root).dom,x=py(a,g,f),P=E(O,f).bind(U=>{if(Cm(U))return M1(O,bl.exactFromRange(U)).orThunk(()=>{const se=nt.fromText(Hb);Ui(U.start,se);const he=Dv(O,bl.exact(se,0,se,1));return Pc(se),he}).bind(se=>Pg(se.left,se.top,se.width,se.height));{const ee=ms(U,he=>he.dom.getBoundingClientRect()),se={left:Math.min(ee.firstCell.left,ee.lastCell.left),right:Math.max(ee.firstCell.right,ee.lastCell.right),top:Math.min(ee.firstCell.top,ee.lastCell.top),bottom:Math.max(ee.firstCell.bottom,ee.lastCell.bottom)};return Pg(se.left,se.top,se.right-se.left,se.bottom-se.top)}}),Q=E(O,f).bind(U=>Cm(U)?Ls(U.start)?q.some(U.start):Rl(U.start):q.some(U.firstCell)).getOr(a.element);return _v(P,x,f,g,Q)};var Z=[er("getSelection"),Gt("root"),er("bubble"),ym(),_t("overrides",{}),_t("showAbove",!1),Er("placement",D)];const ce="link-layout",Ce=a=>a.x+a.width,ze=(a,f)=>a.x-f.width,it=(a,f)=>a.y-f.height+a.height,bt=a=>a.y,Lt=(a,f,g)=>wa(Ce(a),bt(a),g.southeast(),w1(),"southeast",bi(a,{left:0,top:2}),ce),wn=(a,f,g)=>wa(ze(a,f),bt(a),g.southwest(),tv(),"southwest",bi(a,{right:1,top:2}),ce),_n=(a,f,g)=>wa(Ce(a),it(a,f),g.northeast(),Ab(),"northeast",bi(a,{left:0,bottom:3}),ce),Bn=(a,f,g)=>wa(ze(a,f),it(a,f),g.northwest(),ed(),"northwest",bi(a,{right:1,bottom:3}),ce),yo=()=>[Lt,wn,_n,Bn],jo=()=>[wn,Lt,Bn,_n],Cs=(a,f,g)=>{const O=Rb(g,f.item.element),x=Lb(a.element,f,yo(),jo(),yo(),jo(),q.none());return q.some(Ag({anchorBox:O,bubble:Tg(),overrides:f.overrides,layouts:x}))};var nr=[Gt("item"),ym(),_t("overrides",{}),Er("placement",Cs)],bs=ys("type",{selection:Z,node:Sv,hotspot:$w,submenu:nr,makeshift:Pw});const Tr=[tl("classes",Ta),Kl("mode","all",["all","layout","placement"])],Wr=[_t("useFixed",Tt),er("getBounds")],El=[Sl("anchor",bs),Ll("transition",Tr)],rc=()=>{const a=document.documentElement;return Om(0,0,a.clientWidth,a.clientHeight)},nd=a=>{const f=Nl(a.element),g=a.element.dom.getBoundingClientRect();return Vl(f.left,f.top,g.width,g.height)},rl=(a,f,g,O,x,P)=>{const I=yw(f.anchorBox,a);return Ov(I,O.element,f.bubble,f.layouts,x,g,f.overrides,P)},od=(a,f,g,O,x)=>{const P=q.none();ei(a,f,g,O,x,P)},ei=(a,f,g,O,x,P)=>{const I=Ei("placement.info",Jn(El),x),Q=I.anchor,U=O.element,ee=g.get(O.uid);Hn(()=>{Wn(U,"position","fixed");const se=Gr(U,"visibility");Wn(U,"visibility","hidden");const he=f.useFixed()?rc():nd(a);Q.placement(a,Q,he).each(be=>{const we=P.orThunk(()=>f.getBounds.map(yt)),Re=rl(he,be,we,O,ee,I.transition);g.set(O.uid,Re)}),se.fold(()=>{Jo(U,"visibility")},be=>{Wn(U,"visibility",be)}),Gr(U,"left").isNone()&&Gr(U,"top").isNone()&&Gr(U,"right").isNone()&&Gr(U,"bottom").isNone()&&Qe(Gr(U,"position"),"fixed")&&Jo(U,"position")},U)};var lC=Object.freeze({__proto__:null,position:od,positionWithinBounds:ei,getMode:(a,f,g)=>f.useFixed()?"fixed":"absolute",reset:(a,f,g,O)=>{const x=O.element;mt(["position","left","right","top","bottom"],P=>Jo(x,P)),oy(x),g.clear(O.uid)}}),Ng=Object.freeze({__proto__:null,init:()=>{let a={};return Hl({readState:()=>a,clear:x=>{V(x)?delete a[x]:a={}},set:(x,P)=>{a[x]=P},get:x=>nn(a,x)})}});const Oc=Za({fields:Wr,name:"positioning",active:E1,apis:lC,state:Ng}),Ub=a=>a.getSystem().isConnected(),Rv=a=>{gs(a,Yu());const f=a.components();mt(f,Rv)},qb=a=>{const f=a.components();mt(f,qb),gs(a,bc())},qw=(a,f)=>{a.getSystem().addToWorld(f),Ss(a.element)&&qb(f)},Xb=a=>{Rv(a),a.getSystem().removeFromWorld(a)},N1=(a,f)=>{la(a.element,f.element)},Ih=a=>{mt(a.components(),f=>Pc(f.element)),Dr(a.element),a.syncComponents()},HE=(a,f,g)=>{const O=a.components();Ih(a);const x=g(f),P=xt(O,x);mt(P,I=>{Rv(I),a.getSystem().removeFromWorld(I)}),mt(x,I=>{Ub(I)?N1(a,I):(a.getSystem().addToWorld(I),N1(a,I),Ss(a.element)&&qb(I))}),a.syncComponents()},QE=(a,f,g)=>{const O=a.components(),x=Ne(f,Q=>ug(Q).toArray());mt(O,Q=>{ct(x,Q)||Xb(Q)});const P=g(f),I=xt(O,P);mt(I,Q=>{Ub(Q)&&Xb(Q)}),mt(P,Q=>{Ub(Q)||qw(a,Q)}),a.syncComponents()},Ig=(a,f)=>{jb(a,f,la)},jb=(a,f,g)=>{a.getSystem().addToWorld(f),g(a.element,f.element),Ss(a.element)&&qb(f),a.syncComponents()},xy=a=>{Rv(a),Pc(a.element),a.getSystem().removeFromWorld(a)},km=a=>{const f=ba(a.element).bind(g=>a.getSystem().getByDom(g).toOptional());xy(a),f.each(g=>{g.syncComponents()})},Xw=a=>{const f=a.components();mt(f,xy),Dr(a.element),a.syncComponents()},zl=(a,f)=>{Vf(a,f,la)},Op=(a,f)=>{Vf(a,f,pc)},Vf=(a,f,g)=>{g(a,f.element);const O=Ya(f.element);mt(O,x=>{f.getByDom(x).each(qb)})},Yb=a=>{const f=Ya(a.element);mt(f,g=>{a.getByDom(g).each(Rv)}),Pc(a.element)},Uc=(a,f,g,O)=>{g.get().each(I=>{Xw(a)});const x=f.getAttachPoint(a);Ig(x,a);const P=a.getSystem().build(O);return Ig(a,P),g.set(P),P},Ru=(a,f,g,O)=>{const x=Uc(a,f,g,O);return f.onOpen(a,x),x},hu=(a,f,g,O)=>g.get().map(()=>Uc(a,f,g,O)),zf=(a,f,g,O,x)=>{Mv(a,f),Ru(a,f,g,O),x(),Nv(a,f)},Ey=(a,f,g)=>{g.get().each(O=>{Xw(a),km(a),f.onClose(a,O),g.clear()})},Bd=(a,f,g)=>g.isOpen(),I1=(a,f,g,O)=>Bd(a,f,g)&&g.get().exists(x=>f.isPartOf(a,x,O)),jw=(a,f,g)=>g.get(),VE=(a,f,g,O)=>{Gr(a.element,f).fold(()=>{We(a.element,g)},x=>{Mn(a.element,g,x)}),Wn(a.element,f,O)},cC=(a,f,g)=>{me(a.element,g).fold(()=>Jo(a.element,f),O=>Wn(a.element,f,O))},Mv=(a,f,g)=>{const O=f.getAttachPoint(a);Wn(a.element,"position",Oc.getMode(O)),VE(a,"visibility",f.cloakVisibilityAttr,"hidden")},uC=a=>dn(["top","left","right","bottom"],f=>Gr(a,f).isSome()),Nv=(a,f,g)=>{uC(a.element)||Jo(a.element,"position"),cC(a,"visibility",f.cloakVisibilityAttr)};var Ty=Object.freeze({__proto__:null,cloak:Mv,decloak:Nv,open:Ru,openWhileCloaked:zf,close:Ey,isOpen:Bd,isPartOf:I1,getState:jw,setContent:hu}),dC=Object.freeze({__proto__:null,events:(a,f)=>kr([qt(f1(),(g,O)=>{Ey(g,a,f)})])}),WE=[Ps("onOpen"),Ps("onClose"),Gt("isPartOf"),Gt("getAttachPoint"),_t("cloakVisibilityAttr","data-precloak-visibility")],fC=Object.freeze({__proto__:null,init:()=>{const a=fs(),f=ne("not-implemented");return Hl({readState:f,isOpen:a.isSet,clear:a.clear,set:a.set,get:a.get})}});const Is=Za({fields:WE,name:"sandboxing",active:dC,apis:Ty,state:fC}),Bh=ne("dismiss.popups"),B1=ne("reposition.popups"),Yw=ne("mouse.released"),hC=Hr([_t("isExtraPart",Tt),Ll("fireEventInstead",[_t("event",Oh())])]),Iv=a=>{const f=Ei("Dismissal",hC,a);return{[Bh()]:{schema:Hr([Gt("target")]),onReceive:(g,O)=>{Is.isOpen(g)&&(Is.isPartOf(g,O.target)||f.isExtraPart(g,O.target)||f.fireEventInstead.fold(()=>Is.close(g),P=>gs(g,P.event)))}}}},ZE=Hr([Ll("fireEventInstead",[_t("event",H0())]),Cu("doReposition")]),Gb=a=>{const f=Ei("Reposition",ZE,a);return{[B1()]:{onReceive:g=>{Is.isOpen(g)&&f.fireEventInstead.fold(()=>f.doReposition(g),O=>gs(g,O.event))}}}},Ay=(a,f,g)=>{f.store.manager.onLoad(a,f,g)},Ld=(a,f,g)=>{f.store.manager.onUnload(a,f,g)};var Bg=Object.freeze({__proto__:null,onLoad:Ay,onUnload:Ld,setValue:(a,f,g,O)=>{f.store.manager.setValue(a,f,g,O)},getValue:(a,f,g)=>f.store.manager.getValue(a,f,g),getState:(a,f,g)=>g}),Dy=Object.freeze({__proto__:null,events:(a,f)=>{const g=a.resetOnDom?[xr((O,x)=>{Ay(O,a,f)}),Pd((O,x)=>{Ld(O,a,f)})]:[ha(a,f,Ay)];return kr(g)}});const L1=()=>{const a=bo(null),f=()=>({mode:"memory",value:a.get()}),g=()=>a.get()===null,O=()=>{a.set(null)};return Hl({set:a.set,get:a.get,isNotSet:g,clear:O,readState:f})},UE=()=>Hl({readState:j}),mC=()=>{const a=bo({}),f=bo({});return Hl({readState:()=>({mode:"dataset",dataByValue:a.get(),dataByText:f.get()}),lookup:I=>nn(a.get(),I).orThunk(()=>nn(f.get(),I)),update:I=>{const Q=a.get(),U=f.get(),ee={},se={};mt(I,he=>{ee[he.value]=he,nn(he,"meta").each(be=>{nn(be,"text").each(we=>{se[we]=he})})}),a.set({...Q,...ee}),f.set({...U,...se})},clear:()=>{a.set({}),f.set({})}})};var Jb=Object.freeze({__proto__:null,memory:L1,dataset:mC,manual:UE,init:a=>a.store.manager.state(a)});const yp=(a,f,g,O)=>{const x=f.store;g.update([O]),x.setValue(a,O),f.onSetValue(a,O)},XE=(a,f,g)=>{const O=f.store,x=O.getDataKey(a);return g.lookup(x).getOrThunk(()=>O.getFallbackEntry(x))},jE=(a,f,g)=>{f.store.initialValue.each(x=>{yp(a,f,g,x)})},pC=(a,f,g)=>{g.clear()};var Gw=[er("initialValue"),Gt("getFallbackEntry"),Gt("getDataKey"),Gt("setValue"),Er("manager",{setValue:yp,getValue:XE,onLoad:jE,onUnload:pC,state:mC})];const Kw=(a,f,g)=>f.store.getValue(a),Jw=(a,f,g,O)=>{f.store.setValue(a,O),f.onSetValue(a,O)},Ry=(a,f,g)=>{f.store.initialValue.each(O=>{f.store.setValue(a,O)})};var Lg=[Gt("getValue"),_t("setValue",j),er("initialValue"),Er("manager",{setValue:Jw,getValue:Kw,onLoad:Ry,onUnload:j,state:Ju.init})];const gC=(a,f,g,O)=>{g.set(O),f.onSetValue(a,O)},Bv=(a,f,g)=>g.get(),eS=(a,f,g)=>{f.store.initialValue.each(O=>{g.isNotSet()&&g.set(O)})},YE=(a,f,g)=>{g.clear()};var Lv=[er("initialValue"),Er("manager",{setValue:gC,getValue:Bv,onLoad:eS,onUnload:YE,state:L1})],GE=[Gl("store",{mode:"memory"},ys("mode",{memory:Lv,manual:Lg,dataset:Gw})),Ps("onSetValue"),_t("resetOnDom",!1)];const Ln=Za({fields:GE,name:"representing",active:Dy,apis:Bg,extra:{setValueFrom:(a,f)=>{const g=Ln.getValue(f);Ln.setValue(a,g)}},state:Jb}),il=(a,f)=>Sd(a,{},Fe(f,g=>ku(g.name(),"Cannot configure "+g.name()+" for "+a)).concat([Qr("dump",Se)])),_p=a=>a.dump,$a=(a,f)=>({...On(f),...a.dump}),gf={field:il,augment:$a,get:_p},My="placeholder",Fv=K.generate([{single:["required","valueThunk"]},{multiple:["required","valueThunks"]}]),Lh=a=>ns(a,"uiType"),Ny=(a,f,g,O)=>a.exists(x=>x!==g.owner)?Fv.single(!0,ne(g)):nn(O,g.name).fold(()=>{throw new Error("Unknown placeholder component: "+g.name+` -Known: [`+Ts(O)+`] -Namespace: `+a.getOr("none")+` -Spec: `+JSON.stringify(g,null,2))},x=>x.replace()),Iy=(a,f,g,O)=>Lh(g)&&g.uiType===My?Ny(a,f,g,O):Fv.single(!1,ne(g)),e0=(a,f,g,O)=>Iy(a,f,g,O).fold((P,I)=>{const Q=Lh(g)?I(f,g.config,g.validated):I(f),U=nn(Q,"components").getOr([]),ee=Ne(U,se=>e0(a,f,se,O));return[{...Q,components:ee}]},(P,I)=>{if(Lh(g)){const Q=I(f,g.config,g.validated);return g.validated.preprocess.getOr(Se)(Q)}else return I(f)}),bC=(a,f,g,O)=>Ne(g,x=>e0(a,f,x,O)),Hv=(a,f)=>{let g=!1;const O=()=>g,x=()=>{if(g)throw new Error("Trying to use the same placeholder more than once: "+a);return g=!0,f},P=()=>f.fold((I,Q)=>I,(I,Q)=>I);return{name:ne(a),required:P,used:O,replace:x}},tS=(a,f,g,O)=>{const x=ms(O,(I,Q)=>Hv(Q,I)),P=bC(a,f,g,x);return vs(x,I=>{if(I.used()===!1&&I.required())throw new Error("Placeholder: "+I.name()+` was not found in components list -Namespace: `+a.getOr("none")+` -Components: `+JSON.stringify(f.components,null,2))}),P},nS=Fv.single,KE=Fv.multiple,Fh=ne(My),By=K.generate([{required:["data"]},{external:["data"]},{optional:["data"]},{group:["data"]}]),t0=_t("factory",{sketch:Se}),ic=_t("schema",[]),qa=Gt("name"),Ly=ca("pname","pname",La(a=>""),ea()),Qv=Qr("schema",()=>[er("preprocess")]),Fy=_t("defaults",ne({})),Vv=_t("overrides",ne({})),zv=Jn([t0,ic,qa,Ly,Fy,Vv]),n0=Jn([t0,ic,qa,Fy,Vv]),vC=Jn([t0,ic,qa,Ly,Fy,Vv]),Wv=Jn([t0,Qv,qa,Gt("unit"),Ly,Fy,Vv]),OC=a=>a.fold(q.some,q.none,q.some,q.some),yC=a=>{const f=g=>g.name;return a.fold(f,f,f,f)},_C=a=>a.fold(Se,Se,Se,Se),bf=(a,f)=>g=>{const O=Ei("Converting part type",f,g);return a(O)},yc=bf(By.required,zv),Wf=bf(By.external,n0),Mu=bf(By.optional,vC),Zv=bf(By.group,Wv),Hy=ne("entirety");var wC=Object.freeze({__proto__:null,required:yc,external:Wf,optional:Mu,group:Zv,asNamedPart:OC,name:yC,asCommon:_C,original:Hy});const Uv=(a,f,g,O)=>lr(f.defaults(a,g,O),g,{uid:a.partUids[f.name]},f.overrides(a,g,O)),JE=(a,f,g)=>{const O={},x={};return mt(g,P=>{P.fold(I=>{O[I.pname]=nS(!0,(Q,U,ee)=>I.factory.sketch(Uv(Q,I,U,ee)))},I=>{const Q=f.parts[I.name];x[I.name]=ne(I.factory.sketch(Uv(f,I,Q[Hy()]),Q))},I=>{O[I.pname]=nS(!1,(Q,U,ee)=>I.factory.sketch(Uv(Q,I,U,ee)))},I=>{O[I.pname]=KE(!0,(Q,U,ee)=>{const se=Q[I.name];return Fe(se,he=>I.factory.sketch(lr(I.defaults(Q,he,ee),he,I.overrides(Q,he))))})})}),{internals:ne(O),externals:ne(x)}},wp=(a,f)=>{const g={};return mt(f,O=>{OC(O).each(x=>{const P=qv(a,x.pname);g[x.name]=I=>{const Q=Ei("Part: "+x.name+" in "+a,Jn(x.schema),I);return{...P,config:I,validated:Q}}})}),g},qv=(a,f)=>({uiType:Fh(),owner:a,name:f}),oS=(a,f,g)=>({uiType:Fh(),owner:a,name:f,config:g,validated:{}}),SC=a=>Ne(a,f=>f.fold(q.none,q.some,q.none,q.none).map(g=>Ic(g.name,g.schema.concat([Cg(Hy())]))).toArray()),CC=a=>Fe(a,yC),sS=(a,f,g)=>JE(a,f,g),Qy=(a,f,g)=>tS(q.some(a),f,f.components,g),ti=(a,f,g)=>{const O=f.partUids[g];return a.getSystem().getByUid(O).toOptional()},Sp=(a,f,g)=>ti(a,f,g).getOrDie("Could not find part: "+g),kC=(a,f,g)=>{const O={},x=f.partUids,P=a.getSystem();return mt(g,I=>{O[I]=ne(P.getByUid(x[I]))}),O},rS=(a,f)=>{const g=a.getSystem();return ms(f.partUids,(O,x)=>ne(g.getByUid(O)))},iS=a=>Ts(a.partUids),F1=(a,f,g)=>{const O={},x=f.partUids,P=a.getSystem();return mt(g,I=>{O[I]=ne(P.getByUid(x[I]).getOrDie())}),O},aS=(a,f)=>{const g=CC(f);return ao(Fe(g,O=>({key:O,value:a+"-"+O})))},lS=a=>ca("partUids","partUids",xe(f=>aS(f.uid,a)),ea());var eT=Object.freeze({__proto__:null,generate:wp,generateOne:oS,schemas:SC,names:CC,substitutes:sS,components:Qy,defaultUids:aS,defaultUidsSchema:lS,getAllParts:rS,getAllPartNames:iS,getPart:ti,getPartOrDie:Sp,getParts:kC,getPartsOrDie:F1});const o0=(a,f)=>(a.length>0?[Ic("parts",a)]:[]).concat([Gt("uid"),_t("dom",{}),_t("components",[]),Cg("originalSpec"),_t("debug.sketcher",{})]).concat(f),s0=(a,f,g,O,x)=>{const P=o0(O,x);return Ei(a+" [SpecSchema]",Hr(P.concat(f)),g)},cS=(a,f,g,O)=>{const x=Fg(O),P=s0(a,f,x,[],[]);return g(P,x)},uS=(a,f,g,O,x)=>{const P=Fg(x),I=SC(g),Q=lS(g),U=s0(a,f,P,I,[Q]),ee=sS(a,U,g),se=Qy(a,U,ee.internals());return O(U,se,P,ee.externals())},Zf=a=>ns(a,"uid"),Fg=a=>Zf(a)?a:{...a,uid:ag("uid")},tT=a=>a.uid!==void 0,Xv=Hr([Gt("name"),Gt("factory"),Gt("configFields"),_t("apis",{}),_t("extraApis",{})]),nT=Hr([Gt("name"),Gt("factory"),Gt("configFields"),Gt("partFields"),_t("apis",{}),_t("extraApis",{})]),sd=a=>{const f=Ei("Sketcher for "+a.name,Xv,a),g=P=>cS(f.name,f.configFields,f.factory,P),O=ms(f.apis,xh),x=ms(f.extraApis,(P,I)=>mb(P,I));return{name:f.name,configFields:f.configFields,sketch:g,...O,...x}},_c=a=>{const f=Ei("Sketcher for "+a.name,nT,a),g=I=>uS(f.name,f.configFields,f.partFields,f.factory,I),O=wp(f.name,f.partFields),x=ms(f.apis,xh),P=ms(f.extraApis,(I,Q)=>mb(I,Q));return{name:f.name,partFields:f.partFields,configFields:f.configFields,sketch:g,parts:O,...x,...P}},H1=a=>xa("input")(a)&&ui(a,"type")!=="radio"||xa("textarea")(a);var xC=Object.freeze({__proto__:null,getCurrent:(a,f,g)=>f.find(a)});const oT=[Gt("find")],Ds=Za({fields:oT,name:"composing",apis:xC}),dS=["input","button","textarea","select"],EC=(a,f,g)=>{(f.disabled()?AC:jv)(a,f)},fS=(a,f)=>f.useNative===!0&&ct(dS,ia(a.element)),sT=a=>Pe(a.element,"disabled"),rT=a=>{Mn(a.element,"disabled","disabled")},TC=a=>{We(a.element,"disabled")},iT=a=>ui(a.element,"aria-disabled")==="true",zn=a=>{Mn(a.element,"aria-disabled","true")},Hg=a=>{Mn(a.element,"aria-disabled","false")},AC=(a,f,g)=>{f.disableClass.each(x=>{na(a.element,x)}),(fS(a,f)?rT:zn)(a),f.onDisabled(a)},jv=(a,f,g)=>{f.disableClass.each(x=>{wi(a.element,x)}),(fS(a,f)?TC:Hg)(a),f.onEnabled(a)},Yv=(a,f)=>fS(a,f)?sT(a):iT(a);var r4=Object.freeze({__proto__:null,enable:jv,disable:AC,isDisabled:Yv,onLoad:EC,set:(a,f,g,O)=>{(O?AC:jv)(a,f)}}),lT=Object.freeze({__proto__:null,exhibit:(a,f)=>Qc({classes:f.disabled()?f.disableClass.toArray():[]}),events:(a,f)=>kr([ub(au(),(g,O)=>Yv(g,a)),ha(a,f,EC)])}),$C=[da("disabled",Tt),_t("useNative",!0),er("disableClass"),Ps("onDisabled"),Ps("onEnabled")];const ko=Za({fields:$C,name:"disabling",active:lT,apis:r4}),Cp=(a,f,g,O)=>{const x=Ua(a.element,"."+f.highlightClass);mt(x,P=>{dn(O,Q=>Us(Q.element,P))||(wi(P,f.highlightClass),a.getSystem().getByDom(P).each(Q=>{f.onDehighlight(a,Q),gs(Q,tg())}))})},PC=(a,f,g)=>Cp(a,f,g,[]),cT=(a,f,g,O)=>{Vy(a,f,g,O)&&(wi(O.element,f.highlightClass),f.onDehighlight(a,O),gs(O,tg()))},Gv=(a,f,g,O)=>{Cp(a,f,g,[O]),Vy(a,f,g,O)||(na(O.element,f.highlightClass),f.onHighlight(a,O),gs(O,eg()))},uT=(a,f,g)=>{r0(a,f).each(O=>{Gv(a,f,g,O)})},DC=(a,f,g)=>{mS(a,f).each(O=>{Gv(a,f,g,O)})},hS=(a,f,g,O)=>{fT(a,f,g,O).fold(x=>{throw x},x=>{Gv(a,f,g,x)})},RC=(a,f,g,O)=>{const x=zy(a,f);gt(x,O).each(I=>{Gv(a,f,g,I)})},Vy=(a,f,g,O)=>Aa(O.element,f.highlightClass),dT=(a,f,g)=>oa(a.element,"."+f.highlightClass).bind(O=>a.getSystem().getByDom(O).toOptional()),fT=(a,f,g,O)=>{const x=Ua(a.element,"."+f.itemClass);return q.from(x[O]).fold(()=>Zo.error(new Error("No element found with index "+O)),a.getSystem().getByDom)},r0=(a,f,g)=>oa(a.element,"."+f.itemClass).bind(O=>a.getSystem().getByDom(O).toOptional()),mS=(a,f,g)=>{const O=Ua(a.element,"."+f.itemClass);return(O.length>0?q.some(O[O.length-1]):q.none()).bind(P=>a.getSystem().getByDom(P).toOptional())},MC=(a,f,g,O)=>{const x=Ua(a.element,"."+f.itemClass);return Ut(x,I=>Aa(I,f.highlightClass)).bind(I=>{const Q=mp(I,O,0,x.length-1);return a.getSystem().getByDom(x[Q]).toOptional()})},hT=(a,f,g)=>MC(a,f,g,-1),mT=(a,f,g)=>MC(a,f,g,1),zy=(a,f,g)=>{const O=Ua(a.element,"."+f.itemClass);return wt(Fe(O,x=>a.getSystem().getByDom(x).toOptional()))};var xm=Object.freeze({__proto__:null,dehighlightAll:PC,dehighlight:cT,highlight:Gv,highlightFirst:uT,highlightLast:DC,highlightAt:hS,highlightBy:RC,isHighlighted:Vy,getHighlighted:dT,getFirst:r0,getLast:mS,getPrevious:hT,getNext:mT,getCandidates:zy}),Wy=[Gt("highlightClass"),Gt("itemClass"),Ps("onHighlight"),Ps("onDehighlight")];const ur=Za({fields:Wy,name:"highlighting",apis:xm}),pT=[8],kp=[9],Em=[13],Zy=[27],Fd=[32],Uy=[37],xp=[38],i0=[39],Kv=[40],pS=(a,f,g)=>{const O=pn(a.slice(0,f)),x=pn(a.slice(f+1));return gt(O.concat(x),g)},gT=(a,f,g)=>{const O=pn(a.slice(0,f));return gt(O,g)},gS=(a,f,g)=>{const O=a.slice(0,f),x=a.slice(f+1);return gt(x.concat(O),g)},bT=(a,f,g)=>{const O=a.slice(f+1);return gt(O,g)},Bs=a=>f=>{const g=f.raw;return ct(a,g.which)},Hd=a=>f=>Nt(a,g=>g(f)),Ep=a=>a.raw.shiftKey===!0,vT=a=>a.raw.ctrlKey===!0,a0=Te(Ep),js=(a,f)=>({matches:a,classification:f}),OT=(a,f)=>gt(a,O=>O.matches(f)).map(O=>O.classification),bS=(a,f,g)=>{f.exists(x=>g.exists(P=>Us(P,x)))||ho(a,ab(),{prevFocus:f,newFocus:g})},_=()=>{const a=g=>Id(g.element);return{get:a,set:(g,O)=>{const x=a(g);g.getSystem().triggerFocus(O,g.element);const P=a(g);bS(g,x,P)}}},T=()=>{const a=g=>ur.getHighlighted(g).map(O=>O.element);return{get:a,set:(g,O)=>{const x=a(g);g.getSystem().getByDom(O).fold(j,I=>{ur.highlight(g,I)});const P=a(g);bS(g,x,P)}}};var M;(function(a){a.OnFocusMode="onFocus",a.OnEnterOrSpaceMode="onEnterOrSpace",a.OnApiMode="onApi"})(M||(M={}));const L=(a,f,g,O,x)=>{const P=()=>a.concat([_t("focusManager",_()),Gl("focusInside","onFocus",of(ee=>ct(["onFocus","onEnterOrSpace","onApi"],ee)?Zo.value(ee):Zo.error("Invalid value for focusInside"))),Er("handler",U),Er("state",f),Er("sendFocusIn",x)]),I=(ee,se,he,be,we)=>{const Re=he(ee,se,be,we);return OT(Re,se.event).bind(Je=>Je(ee,se,be,we))},U={schema:P,processKey:I,toEvents:(ee,se)=>{const he=ee.focusInside!==M.OnFocusMode?q.none():x(ee).map(Re=>qt(xd(),(Je,Ct)=>{Re(Je,ee,se),Ct.stop()})),be=(Re,Je)=>{const Ct=Bs(Fd.concat(Em))(Je.event);ee.focusInside===M.OnEnterOrSpaceMode&&Ct&&Bc(Re,Je)&&x(ee).each(at=>{at(Re,ee,se),Je.stop()})},we=[qt(Eu(),(Re,Je)=>{I(Re,Je,g,ee,se).fold(()=>{be(Re,Je)},Ct=>{Je.stop()})}),qt(hh(),(Re,Je)=>{I(Re,Je,O,ee,se).each(Ct=>{Je.stop()})})];return kr(he.toArray().concat(we))}};return U},Y=a=>{const f=[er("onEscape"),er("onEnter"),_t("selector",'[data-alloy-tabstop="true"]:not(:disabled)'),_t("firstTabstop",0),_t("useTabstopAt",St),er("visibilitySelector")].concat([a]),g=(at,st)=>{const Ot=at.visibilitySelector.bind(hn=>uf(st,hn)).getOr(st);return Nr(Ot)>0},O=(at,st)=>{const Ot=Ua(at.element,st.selector),hn=jn(Ot,jt=>g(st,jt));return q.from(hn[st.firstTabstop])},x=(at,st)=>st.focusManager.get(at).bind(Ot=>uf(Ot,st.selector)),P=(at,st)=>g(at,st)&&at.useTabstopAt(st),I=(at,st,Ot)=>{O(at,st).each(hn=>{st.focusManager.set(at,hn)})},Q=(at,st,Ot,hn,jt)=>jt(st,Ot,Wt=>P(hn,Wt)).fold(()=>hn.cyclic?q.some(!0):q.none(),Wt=>(hn.focusManager.set(at,Wt),q.some(!0))),U=(at,st,Ot,hn)=>{const jt=Ua(at.element,Ot.selector);return x(at,Ot).bind(Wt=>Ut(jt,Be(Us,Wt)).bind(An=>Q(at,jt,An,Ot,hn)))},ee=(at,st,Ot)=>{const hn=Ot.cyclic?pS:gT;return U(at,st,Ot,hn)},se=(at,st,Ot)=>{const hn=Ot.cyclic?gS:bT;return U(at,st,Ot,hn)},he=at=>Dl(at).bind(vu).exists(st=>Us(st,at)),be=(at,st,Ot)=>x(at,Ot).filter(hn=>!Ot.useTabstopAt(hn)).bind(hn=>(he(hn)?ee:se)(at,st,Ot)),we=(at,st,Ot)=>Ot.onEnter.bind(hn=>hn(at,st)),Re=(at,st,Ot)=>Ot.onEscape.bind(hn=>hn(at,st)),Je=ne([js(Hd([Ep,Bs(kp)]),ee),js(Bs(kp),se),js(Hd([a0,Bs(Em)]),we)]),Ct=ne([js(Bs(Zy),Re),js(Bs(kp),be)]);return L(f,Ju.init,Je,Ct,()=>q.some(I))};var oe=Y(Qr("cyclic",Tt)),pe=Y(Qr("cyclic",St));const ke=(a,f,g)=>(ng(a,g,au()),q.some(!0)),Ie=(a,f,g)=>H1(g)&&Bs(Fd)(f.event)?q.none():ke(a,f,g),et=(a,f)=>q.some(!0),vt=[_t("execute",Ie),_t("useSpace",!1),_t("useEnter",!0),_t("useControlEnter",!1),_t("useDown",!1)],ln=(a,f,g)=>g.execute(a,f,a.element),Nn=(a,f,g,O)=>{const x=g.useSpace&&!H1(a.element)?Fd:[],P=g.useEnter?Em:[],I=g.useDown?Kv:[],Q=x.concat(P).concat(I);return[js(Bs(Q),ln)].concat(g.useControlEnter?[js(Hd([vT,Bs(Em)]),ln)]:[])},Pn=(a,f,g,O)=>g.useSpace&&!H1(a.element)?[js(Bs(Fd),et)]:[];var Yt=L(vt,Ju.init,Nn,Pn,()=>q.none());const In=()=>{const a=fs();return Hl({readState:()=>a.get().map(x=>({numRows:String(x.numRows),numColumns:String(x.numColumns)})).getOr({numRows:"?",numColumns:"?"}),setGridSize:(x,P)=>{a.set({numRows:x,numColumns:P})},getNumRows:()=>a.get().map(x=>x.numRows),getNumColumns:()=>a.get().map(x=>x.numColumns)})};var oo=Object.freeze({__proto__:null,flatgrid:In,init:a=>a.state(a)});const Bo=a=>(f,g,O,x)=>{const P=a(f.element);return ma(P,f,g,O,x)},us=(a,f)=>{const g=Bb(a,f);return Bo(g)},Si=(a,f)=>{const g=Bb(f,a);return Bo(g)},vl=a=>(f,g,O,x)=>ma(a,f,g,O,x),ma=(a,f,g,O,x)=>O.focusManager.get(f).bind(I=>a(f.element,I,O,x)).map(I=>(O.focusManager.set(f,I),!0)),Nu=vl,Q1=vl,V1=vl,vS=a=>a.offsetWidth<=0&&a.offsetHeight<=0,qy=a=>!vS(a.dom),Zr=(a,f)=>Ut(a,f).map(g=>({index:g,candidates:a})),qc=(a,f,g)=>{const O=I=>Us(I,f),x=Ua(a,g),P=jn(x,qy);return Zr(P,O)},ac=(a,f)=>Ut(a,g=>Us(f,g)),Qd=(a,f,g,O)=>{const x=Math.floor(f/g),P=f%g;return O(x,P).bind(I=>{const Q=I.row*g+I.column;return Q>=0&&QQd(a,f,O,(P,I)=>{const U=P===g-1?a.length-P*O:O,ee=mp(I,x,0,U-1);return q.some({row:P,column:ee})}),Qg=(a,f,g,O,x)=>Qd(a,f,O,(P,I)=>{const Q=mp(P,x,0,g-1),ee=Q===g-1?a.length-Q*O:O,se=Au(I,0,ee-1);return q.some({row:Q,column:se})}),mu=(a,f,g,O)=>rd(a,f,g,O,1),OS=(a,f,g,O)=>rd(a,f,g,O,-1),Jv=(a,f,g,O)=>Qg(a,f,g,O,-1),Tm=(a,f,g,O)=>Qg(a,f,g,O,1),wc=[Gt("selector"),_t("execute",Ie),fu("onEscape"),_t("captureTab",!1),Eb()],eO=(a,f,g)=>{oa(a.element,f.selector).each(O=>{f.focusManager.set(a,O)})},NC=(a,f)=>f.focusManager.get(a).bind(g=>uf(g,f.selector)),IC=(a,f,g,O)=>NC(a,g).bind(x=>g.execute(a,f,x)),l0=a=>(f,g,O,x)=>qc(f,g,O.selector).bind(P=>a(P.candidates,P.index,x.getNumRows().getOr(O.initSize.numRows),x.getNumColumns().getOr(O.initSize.numColumns))),BC=(a,f,g)=>g.captureTab?q.some(!0):q.none(),Xy=(a,f,g)=>g.onEscape(a,f),LC=l0(OS),z1=l0(mu),a4=l0(Jv),LL=l0(Tm),FL=ne([js(Bs(Uy),us(LC,z1)),js(Bs(i0),Si(LC,z1)),js(Bs(xp),Nu(a4)),js(Bs(Kv),Q1(LL)),js(Hd([Ep,Bs(kp)]),BC),js(Hd([a0,Bs(kp)]),BC),js(Bs(Fd.concat(Em)),IC)]),HL=ne([js(Bs(Zy),Xy),js(Bs(Fd),et)]);var QL=L(wc,In,FL,HL,()=>q.some(eO));const l4=(a,f,g,O,x)=>{const P=Q=>ia(Q)==="button"&&ui(Q,"disabled")==="disabled",I=(Q,U,ee)=>x(Q,U,O,0,ee.length-1,ee[U],se=>P(ee[se])?I(Q,se,ee):q.from(ee[se]));return qc(a,g,f).bind(Q=>{const U=Q.index,ee=Q.candidates;return I(U,U,ee)})},c4=(a,f,g,O)=>l4(a,f,g,O,(x,P,I,Q,U,ee,se)=>{const he=Au(P+I,Q,U);return he===x?q.from(ee):se(he)}),jy=(a,f,g,O)=>l4(a,f,g,O,(x,P,I,Q,U,ee,se)=>{const he=mp(P,I,Q,U);return he===x?q.none():se(he)}),yT=[Gt("selector"),_t("getInitial",q.none),_t("execute",Ie),fu("onEscape"),_t("executeOnMove",!1),_t("allowVertical",!0),_t("allowHorizontal",!0),_t("cycles",!0)],VL=(a,f)=>f.focusManager.get(a).bind(g=>uf(g,f.selector)),u4=(a,f,g)=>VL(a,g).bind(O=>g.execute(a,f,O)),d4=(a,f,g)=>{f.getInitial(a).orThunk(()=>oa(a.element,f.selector)).each(O=>{f.focusManager.set(a,O)})},f4=(a,f,g)=>(g.cycles?jy:c4)(a,g.selector,f,-1),h4=(a,f,g)=>(g.cycles?jy:c4)(a,g.selector,f,1),Uf=a=>(f,g,O,x)=>a(f,g,O,x).bind(()=>O.executeOnMove?u4(f,g,O):q.some(!0)),zL=(a,f,g)=>g.onEscape(a,f),WL=(a,f,g,O)=>{const x=[...g.allowHorizontal?Uy:[]].concat(g.allowVertical?xp:[]),P=[...g.allowHorizontal?i0:[]].concat(g.allowVertical?Kv:[]);return[js(Bs(x),Uf(us(f4,h4))),js(Bs(P),Uf(Si(f4,h4))),js(Bs(Em),u4),js(Bs(Fd),u4)]},ZL=ne([js(Bs(Fd),et),js(Bs(Zy),zL)]);var UL=L(yT,Ju.init,WL,ZL,()=>q.some(d4));const FC=(a,f,g)=>q.from(a[f]).bind(O=>q.from(O[g]).map(x=>({rowIndex:f,columnIndex:g,cell:x}))),tO=(a,f,g,O)=>{const P=a[f].length,I=mp(g,O,0,P-1);return FC(a,f,I)},HC=(a,f,g,O)=>{const x=mp(g,O,0,a.length-1),P=a[x].length,I=Au(f,0,P-1);return FC(a,x,I)},m4=(a,f,g,O)=>{const P=a[f].length,I=Au(g+O,0,P-1);return FC(a,f,I)},QC=(a,f,g,O)=>{const x=Au(g+O,0,a.length-1),P=a[x].length,I=Au(f,0,P-1);return FC(a,x,I)},VC=(a,f,g)=>tO(a,f,g,1),_T=(a,f,g)=>tO(a,f,g,-1),qL=(a,f,g)=>HC(a,g,f,-1),XL=(a,f,g)=>HC(a,g,f,1),jL=(a,f,g)=>m4(a,f,g,-1),YL=(a,f,g)=>m4(a,f,g,1),GL=(a,f,g)=>QC(a,g,f,-1),KL=(a,f,g)=>QC(a,g,f,1),p4=[Ic("selectors",[Gt("row"),Gt("cell")]),_t("cycles",!0),_t("previousSelector",q.none),_t("execute",Ie)],wT=(a,f,g)=>{f.previousSelector(a).orThunk(()=>{const x=f.selectors;return oa(a.element,x.cell)}).each(x=>{f.focusManager.set(a,x)})},JL=(a,f,g)=>Id(a.element).bind(O=>g.execute(a,f,O)),e6=(a,f)=>Fe(a,g=>Ua(g,f.selectors.cell)),zC=(a,f)=>(g,O,x)=>{const P=x.cycles?a:f;return uf(O,x.selectors.row).bind(I=>{const Q=Ua(I,x.selectors.cell);return ac(Q,O).bind(U=>{const ee=Ua(g,x.selectors.row);return ac(ee,I).bind(se=>{const he=e6(ee,x);return P(he,se,U).map(be=>be.cell)})})})},g4=zC(_T,jL),c0=zC(VC,YL),b4=zC(qL,GL),t6=zC(XL,KL),ST=ne([js(Bs(Uy),us(g4,c0)),js(Bs(i0),Si(g4,c0)),js(Bs(xp),Nu(b4)),js(Bs(Kv),Q1(t6)),js(Bs(Fd.concat(Em)),JL)]),n6=ne([js(Bs(Fd),et)]);var O4=L(p4,Ju.init,ST,n6,()=>q.some(wT));const y4=[Gt("selector"),_t("execute",Ie),_t("moveOnTab",!1)],CT=(a,f,g)=>g.focusManager.get(a).bind(O=>g.execute(a,f,O)),_4=(a,f,g)=>{oa(a.element,f.selector).each(O=>{f.focusManager.set(a,O)})},kT=(a,f,g)=>jy(a,g.selector,f,-1),w4=(a,f,g)=>jy(a,g.selector,f,1),o6=(a,f,g,O)=>g.moveOnTab?V1(kT)(a,f,g,O):q.none(),s6=(a,f,g,O)=>g.moveOnTab?V1(w4)(a,f,g,O):q.none(),xT=ne([js(Bs(xp),V1(kT)),js(Bs(Kv),V1(w4)),js(Hd([Ep,Bs(kp)]),o6),js(Hd([a0,Bs(kp)]),s6),js(Bs(Em),CT),js(Bs(Fd),CT)]),r6=ne([js(Bs(Fd),et)]);var i6=L(y4,Ju.init,xT,r6,()=>q.some(_4));const a6=[fu("onSpace"),fu("onEnter"),fu("onShiftEnter"),fu("onLeft"),fu("onRight"),fu("onTab"),fu("onShiftTab"),fu("onUp"),fu("onDown"),fu("onEscape"),_t("stopSpaceKeyup",!1),er("focusIn")],l6=(a,f,g)=>[js(Bs(Fd),g.onSpace),js(Hd([a0,Bs(Em)]),g.onEnter),js(Hd([Ep,Bs(Em)]),g.onShiftEnter),js(Hd([Ep,Bs(kp)]),g.onShiftTab),js(Hd([a0,Bs(kp)]),g.onTab),js(Bs(xp),g.onUp),js(Bs(Kv),g.onDown),js(Bs(Uy),g.onLeft),js(Bs(i0),g.onRight),js(Bs(Fd),g.onSpace)],S4=(a,f,g)=>[...g.stopSpaceKeyup?[js(Bs(Fd),et)]:[],js(Bs(Zy),g.onEscape)];var c6=L(a6,Ju.init,l6,S4,a=>a.focusIn);const u6=oe.schema(),d6=pe.schema(),C4=UL.schema(),f6=QL.schema(),h6=O4.schema(),k4=Yt.schema(),m6=i6.schema(),p6=c6.schema();var WC=Object.freeze({__proto__:null,acyclic:u6,cyclic:d6,flow:C4,flatgrid:f6,matrix:h6,execution:k4,menu:m6,special:p6});const g6=a=>Xr(a,"setGridSize"),vo=vm({branchKey:"mode",branches:WC,name:"keying",active:{events:(a,f)=>a.handler.toEvents(a,f)},apis:{focusIn:(a,f,g)=>{f.sendFocusIn(f).fold(()=>{a.getSystem().triggerFocus(a.element,a.element)},O=>{O(a,f,g)})},setGridSize:(a,f,g,O,x)=>{g6(g)?g.setGridSize(O,x):console.error("Layout does not support setGridSize")}},state:oo}),Iu=(a,f)=>{Hn(()=>{HE(a,f,()=>Fe(f,a.getSystem().build))},a.element)},x4=(a,f)=>{Hn(()=>{QE(a,f,()=>nC(a.element,f,a.getSystem().buildOrPatch))},a.element)},E4=(a,f,g,O)=>{Xb(f);const x=WO(a.element,g,O,a.getSystem().buildOrPatch);qw(a,x),a.syncComponents()},ZC=(a,f,g)=>{const O=a.getSystem().build(g);jb(a,O,f)},b6=(a,f,g,O)=>{km(f),ZC(a,(x,P)=>Ci(x,P,g),O)},T4=(a,f,g,O)=>(f.reuseDom?x4:Iu)(a,O),A4=(a,f,g,O)=>{ZC(a,la,O)},v6=(a,f,g,O)=>{ZC(a,Um,O)},O6=(a,f,g,O)=>{const x=UC(a);gt(x,I=>Us(O.element,I.element)).each(km)},UC=(a,f)=>a.components(),$4=(a,f,g,O,x)=>{const P=UC(a);return q.from(P[O]).map(I=>(x.fold(()=>km(I),Q=>{(f.reuseDom?E4:b6)(a,I,O,Q)}),I))};var _6=Object.freeze({__proto__:null,append:A4,prepend:v6,remove:O6,replaceAt:$4,replaceBy:(a,f,g,O,x)=>{const P=UC(a);return Ut(P,O).bind(I=>$4(a,f,g,I,x))},set:T4,contents:UC});const Yo=Za({fields:[ya("reuseDom",!0)],name:"replacing",apis:_6}),P4=(a,f)=>{const g=kr(f);return Za({fields:[Gt("enabled")],name:a,active:{events:ne(g)}})},ss=(a,f)=>{const g=P4(a,f);return{key:a,value:{config:{},me:g,configAsRaw:ne({}),initialConfig:{},state:Ju}}},ET=(a,f)=>{f.ignore||(ji(a.element),f.onFocus(a))};var w6=Object.freeze({__proto__:null,focus:ET,blur:(a,f)=>{f.ignore||mf(a.element)},isFocused:a=>T1(a.element)}),D4=Object.freeze({__proto__:null,exhibit:(a,f)=>{const g=f.ignore?{}:{attributes:{tabindex:"-1"}};return Qc(g)},events:a=>kr([qt(xd(),(f,g)=>{ET(f,a),g.stop()})].concat(a.stopMousedown?[qt(_s(),(f,g)=>{g.event.prevent()})]:[]))}),u0=[Ps("onFocus"),_t("stopMousedown",!1),_t("ignore",!1)];const Ao=Za({fields:u0,name:"focusing",active:D4,apis:w6}),R4=a=>({init:()=>{const g=bo(a);return{get:()=>g.get(),set:Q=>g.set(Q),clear:()=>g.set(a),readState:()=>g.get()}}}),TT=(a,f,g)=>{const O=f.aria;O.update(a,O,g.get())},C6=(a,f,g)=>{f.toggleClass.each(O=>{g.get()?na(a.element,O):wi(a.element,O)})},yS=(a,f,g,O)=>{const x=g.get();g.set(O),C6(a,f,g),TT(a,f,g),x!==O&&f.onToggled(a,O)},M4=(a,f,g)=>{yS(a,f,g,!g.get())},k6=(a,f,g)=>{yS(a,f,g,!0)},N4=(a,f,g)=>{yS(a,f,g,!1)},AT=(a,f,g)=>g.get(),qC=(a,f,g)=>{yS(a,f,g,f.selected)};var x6=Object.freeze({__proto__:null,onLoad:qC,toggle:M4,isOn:AT,on:k6,off:N4,set:yS}),I4=Object.freeze({__proto__:null,exhibit:()=>Qc({}),events:(a,f)=>{const g=Dh(a,f,M4),O=ha(a,f,qC);return kr(pt([a.toggleOnExecute?[g]:[],[O]]))}});const T6=(a,f,g)=>{Mn(a.element,"aria-pressed",g),f.syncWithExpanded&&Yy(a,f,g)},A6=(a,f,g)=>{Mn(a.element,"aria-selected",g)},_S=(a,f,g)=>{Mn(a.element,"aria-checked",g)},Yy=(a,f,g)=>{Mn(a.element,"aria-expanded",g)};var B4=[_t("selected",!1),er("toggleClass"),_t("toggleOnExecute",!0),Ps("onToggled"),Gl("aria",{mode:"none"},ys("mode",{pressed:[_t("syncWithExpanded",!1),Er("update",T6)],checked:[Er("update",_S)],expanded:[Er("update",Yy)],selected:[Er("update",A6)],none:[Er("update",j)]}))];const hs=Za({fields:B4,name:"toggling",active:I4,apis:x6,state:R4(!1)}),W1=()=>{const a=(f,g)=>{g.stop(),Td(f)};return[qt(lf(),a),qt(Ed(),a),_h(Lc()),_h(_s())]},Tp=a=>{const f=g=>vc((O,x)=>{g(O),x.stop()});return kr(pt([a.map(f).toArray(),W1()]))},L4="alloy.item-hover",F4="alloy.item-focus",$T="alloy.item-toggled",Vg=a=>{(Id(a.element).isNone()||Ao.isFocused(a))&&(Ao.isFocused(a)||Ao.focus(a),ho(a,L4,{item:a}))},XC=a=>{ho(a,F4,{item:a})},$6=(a,f)=>{ho(a,$T,{item:a,state:f})},PT=ne(L4),H4=ne(F4),Q4=ne($T),DT=a=>a.toggling.map(f=>f.exclusive?"menuitemradio":"menuitemcheckbox").getOr("menuitem"),V4=a=>({aria:{mode:"checked"},...ws(a,(f,g)=>g!=="exclusive"),onToggled:(f,g)=>{W(a.onToggled)&&a.onToggled(f,g),$6(f,g)}}),P6=a=>({dom:a.dom,domModification:{...a.domModification,attributes:{role:DT(a),...a.domModification.attributes,"aria-haspopup":a.hasSubmenu,...a.hasSubmenu?{"aria-expanded":!1}:{}}},behaviours:gf.augment(a.itemBehaviours,[a.toggling.fold(hs.revoke,f=>hs.config(V4(f))),Ao.config({ignore:a.ignoreFocus,stopMousedown:a.ignoreFocus,onFocus:f=>{XC(f)}}),vo.config({mode:"execution"}),Ln.config({store:{mode:"memory",initialValue:a.data}}),ss("item-type-events",[...W1(),qt(kd(),Vg),qt(Fi(),Ao.focus)])]),components:a.components,eventOrder:a.eventOrder}),D6=[Gt("data"),Gt("components"),Gt("dom"),_t("hasSubmenu",!1),er("toggling"),gf.field("itemBehaviours",[hs,Ao,vo,Ln]),_t("ignoreFocus",!1),_t("domModification",{}),Er("builder",P6),_t("eventOrder",{})],R6=a=>({dom:a.dom,components:a.components,events:kr([wh(Fi())])}),jC=[Gt("dom"),Gt("components"),Er("builder",R6)],wS=ne("item-widget"),SS=ne([yc({name:"widget",overrides:a=>({behaviours:On([Ln.config({store:{mode:"manual",getValue:f=>a.data,setValue:j}})])})})]),M6=a=>{const f=sS(wS(),a,SS()),g=Qy(wS(),a,f.internals()),O=P=>ti(P,a,"widget").map(I=>(vo.focusIn(I),I)),x=(P,I)=>H1(I.event.target)?q.none():(a.autofocus&&I.setSource(P.element),q.none());return{dom:a.dom,components:g,domModification:a.domModification,events:kr([vc((P,I)=>{O(P).each(Q=>{I.stop()})}),qt(kd(),Vg),qt(Fi(),(P,I)=>{a.autofocus?O(P):Ao.focus(P)})]),behaviours:gf.augment(a.widgetBehaviours,[Ln.config({store:{mode:"memory",initialValue:a.data}}),Ao.config({ignore:a.ignoreFocus,onFocus:P=>{XC(P)}}),vo.config({mode:"special",focusIn:a.autofocus?P=>{O(P)}:x1(),onLeft:x,onRight:x,onEscape:(P,I)=>!Ao.isFocused(P)&&!a.autofocus?(Ao.focus(P),q.some(!0)):(a.autofocus&&I.setSource(P.element),q.none())})])}},N6=[Gt("uid"),Gt("data"),Gt("components"),Gt("dom"),_t("autofocus",!1),_t("ignoreFocus",!1),gf.field("widgetBehaviours",[Ln,Ao,vo]),_t("domModification",{}),lS(SS()),Er("builder",M6)],z4=ys("type",{widget:N6,item:D6,separator:jC}),W4=(a,f)=>({mode:"flatgrid",selector:"."+a.markers.item,initSize:{numColumns:f.initSize.numColumns,numRows:f.initSize.numRows},focusManager:a.focusManager}),Z4=(a,f)=>({mode:"matrix",selectors:{row:f.rowSelector,cell:"."+a.markers.item},previousSelector:f.previousSelector,focusManager:a.focusManager}),U4=(a,f)=>({mode:"menu",selector:"."+a.markers.item,moveOnTab:f.moveOnTab,focusManager:a.focusManager}),I6=ne([Zv({factory:{sketch:a=>{const f=Ei("menu.spec item",z4,a);return f.builder(f)}},name:"items",unit:"item",defaults:(a,f)=>ns(f,"uid")?f:{...f,uid:ag("item")},overrides:(a,f)=>({type:f.type,ignoreFocus:a.fakeFocus,domModification:{classes:[a.markers.item]}})})]),RT=ne([Gt("value"),Gt("items"),Gt("dom"),Gt("components"),_t("eventOrder",{}),il("menuBehaviours",[ur,Ln,Ds,vo]),Gl("movement",{mode:"menu",moveOnTab:!0},ys("mode",{grid:[Eb(),Er("config",W4)],matrix:[Er("config",Z4),Gt("rowSelector"),_t("previousSelector",q.none)],menu:[_t("moveOnTab",!0),Er("config",U4)]})),fw(),_t("fakeFocus",!1),_t("focusManager",_()),Ps("onHighlight"),Ps("onDehighlight")]),q4=ne("alloy.menu-focus"),B6=(a,f)=>{const g=Ua(a.element,'[role="menuitemradio"][aria-checked="true"]');mt(g,O=>{Us(O,f.element)||a.getSystem().getByDom(O).each(x=>{hs.off(x)})})},L6=(a,f,g,O)=>({uid:a.uid,dom:a.dom,markers:a.markers,behaviours:$a(a.menuBehaviours,[ur.config({highlightClass:a.markers.selectedItem,itemClass:a.markers.item,onHighlight:a.onHighlight,onDehighlight:a.onDehighlight}),Ln.config({store:{mode:"memory",initialValue:a.value}}),Ds.config({find:q.some}),vo.config(a.movement.config(a,a.movement))]),events:kr([qt(H4(),(x,P)=>{const I=P.event;x.getSystem().getByDom(I.target).each(Q=>{ur.highlight(x,Q),P.stop(),ho(x,q4(),{menu:x,item:Q})})}),qt(PT(),(x,P)=>{const I=P.event.item;ur.highlight(x,I)}),qt(Q4(),(x,P)=>{const{item:I,state:Q}=P.event;Q&&ui(I.element,"role")==="menuitemradio"&&B6(x,I)})]),components:f,eventOrder:a.eventOrder,domModification:{attributes:{role:"menu"}}}),oO=_c({name:"Menu",configFields:RT(),partFields:I6(),factory:L6}),X4=a=>dr(a,(f,g)=>({k:f,v:g})),j4=(a,f,g,O)=>nn(g,O).bind(x=>nn(a,x).bind(P=>{const I=j4(a,f,g,P);return q.some([P].concat(I))})).getOr([]),F6=(a,f)=>{const g={};vs(a,(I,Q)=>{mt(I,U=>{g[U]=Q})});const O=f,x=X4(f),P=ms(x,(I,Q)=>[Q].concat(j4(g,O,x,Q)));return ms(g,I=>nn(P,I).getOr([I]))},Y4=()=>{const a=bo({}),f=bo({}),g=bo({}),O=fs(),x=bo({}),P=()=>{a.set({}),f.set({}),g.set({}),O.clear()},I=()=>O.get().isNone(),Q=(jt,Wt)=>{f.set({...f.get(),[jt]:{type:"prepared",menu:Wt}})},U=(jt,Wt,yn,An)=>{O.set(jt),a.set(yn),f.set(Wt),x.set(An);const rs=F6(An,yn);g.set(rs)},ee=jt=>ts(a.get(),(Wt,yn)=>Wt===jt),se=(jt,Wt,yn)=>Je(jt).bind(An=>ee(jt).bind(rs=>Wt(rs).map(Un=>({triggeredMenu:An,triggeringItem:Un,triggeringPath:yn})))),he=(jt,Wt)=>{const yn=jn(at(jt).toArray(),An=>Je(An).isSome());return nn(g.get(),jt).bind(An=>{const rs=pn(yn.concat(An)),Un=Ne(rs,(Lo,Po)=>se(Lo,Wt,rs.slice(0,Po+1)).fold(()=>Qe(O.get(),Lo)?[]:[q.none()],wr=>[q.some(wr)]));return Ft(Un)})},be=jt=>nn(a.get(),jt).map(Wt=>{const yn=nn(g.get(),jt).getOr([]);return[Wt].concat(yn)}),we=jt=>nn(g.get(),jt).bind(Wt=>Wt.length>1?q.some(Wt.slice(1)):q.none()),Re=jt=>nn(g.get(),jt),Je=jt=>Ct(jt).bind(Gy),Ct=jt=>nn(f.get(),jt),at=jt=>nn(a.get(),jt);return{setMenuBuilt:Q,setContents:U,expand:be,refresh:Re,collapse:we,lookupMenu:Ct,lookupItem:at,otherMenus:jt=>{const Wt=x.get();return xt(Ts(Wt),jt)},getPrimary:()=>O.get().bind(Je),getMenus:()=>f.get(),clear:P,isClear:I,getTriggeringPath:he}},Gy=a=>a.type==="prepared"?q.some(a.menu):q.none(),G4={init:Y4,extractPreparedMenu:Gy},Ky=Vn("tiered-menu-item-highlight"),YC=Vn("tiered-menu-item-dehighlight");var Bu;(function(a){a[a.HighlightMenuAndItem=0]="HighlightMenuAndItem",a[a.HighlightJustMenu=1]="HighlightJustMenu",a[a.HighlightNone=2]="HighlightNone"})(Bu||(Bu={}));const K4=(a,f)=>{const g=fs(),O=($n,no,Fo)=>ms(Fo,(Vo,Co)=>{const Go=()=>oO.sketch({...Vo,value:Co,markers:a.markers,fakeFocus:a.fakeFocus,onHighlight:(oi,Ys)=>{ho(oi,Ky,{menuComp:oi,itemComp:Ys})},onDehighlight:(oi,Ys)=>{ho(oi,YC,{menuComp:oi,itemComp:Ys})},focusManager:a.fakeFocus?T():_()});return Co===no?{type:"prepared",menu:$n.getSystem().build(Go())}:{type:"notbuilt",nbMenu:Go}}),x=G4.init(),P=$n=>{const no=O($n,a.data.primary,a.data.menus),Fo=U();return x.setContents(a.data.primary,no,a.data.expansions,Fo),x.getPrimary()},I=$n=>Ln.getValue($n).value,Q=($n,no,Fo)=>Vs(no,Vo=>{if(!Vo.getSystem().isConnected())return q.none();const Co=ur.getCandidates(Vo);return gt(Co,Go=>I(Go)===Fo)}),U=$n=>ms(a.data.menus,(no,Fo)=>Ne(no.items,Vo=>Vo.type==="separator"?[]:[Vo.data.value])),ee=ur.highlight,se=($n,no)=>{ee($n,no),ur.getHighlighted(no).orThunk(()=>ur.getFirst(no)).each(Fo=>{a.fakeFocus?ur.highlight(no,Fo):ng($n,Fo.element,Fi())})},he=($n,no)=>wt(Fe(no,Fo=>$n.lookupMenu(Fo).bind(Vo=>Vo.type==="prepared"?q.some(Vo.menu):q.none()))),be=($n,no,Fo)=>{const Vo=he(no,no.otherMenus(Fo));mt(Vo,Co=>{Tu(Co.element,[a.markers.backgroundMenu]),a.stayInDom||Yo.remove($n,Co)})},we=$n=>g.get().getOrThunk(()=>{const no={},Fo=Ua($n.element,`.${a.markers.item}`),Vo=jn(Fo,Co=>ui(Co,"aria-haspopup")==="true");return mt(Vo,Co=>{$n.getSystem().getByDom(Co).each(Go=>{const oi=I(Go);no[oi]=Go})}),g.set(no),no}),Re=($n,no)=>{const Fo=we($n);vs(Fo,(Vo,Co)=>{const Go=ct(no,Co);Mn(Vo.element,"aria-expanded",Go)})},Je=($n,no,Fo)=>q.from(Fo[0]).bind(Vo=>no.lookupMenu(Vo).bind(Co=>{if(Co.type==="notbuilt")return q.none();{const Go=Co.menu,oi=he(no,Fo.slice(1));return mt(oi,Ys=>{na(Ys.element,a.markers.backgroundMenu)}),Ss(Go.element)||Yo.append($n,cu(Go)),Tu(Go.element,[a.markers.backgroundMenu]),se($n,Go),be($n,no,Fo),q.some(Go)}}));let Ct;(function($n){$n[$n.HighlightSubmenu=0]="HighlightSubmenu",$n[$n.HighlightParent=1]="HighlightParent"})(Ct||(Ct={}));const at=($n,no,Fo)=>{if(Fo.type==="notbuilt"){const Vo=$n.getSystem().build(Fo.nbMenu());return x.setMenuBuilt(no,Vo),Vo}else return Fo.menu},st=($n,no,Fo=Ct.HighlightSubmenu)=>{if(no.hasConfigured(ko)&&ko.isDisabled(no))return q.some(no);{const Vo=I(no);return x.expand(Vo).bind(Co=>(Re($n,Co),q.from(Co[0]).bind(Go=>x.lookupMenu(Go).bind(oi=>{const Ys=at($n,Go,oi);return Ss(Ys.element)||Yo.append($n,cu(Ys)),a.onOpenSubmenu($n,no,Ys,pn(Co)),Fo===Ct.HighlightSubmenu?(ur.highlightFirst(Ys),Je($n,x,Co)):(ur.dehighlightAll(Ys),q.some(no))}))))}},Ot=($n,no)=>{const Fo=I(no);return x.collapse(Fo).bind(Vo=>(Re($n,Vo),Je($n,x,Vo).map(Co=>(a.onCollapseMenu($n,no,Co),Co))))},hn=($n,no)=>{const Fo=I(no);return x.refresh(Fo).bind(Vo=>(Re($n,Vo),Je($n,x,Vo)))},jt=($n,no)=>H1(no.element)?q.none():st($n,no,Ct.HighlightSubmenu),Wt=($n,no)=>H1(no.element)?q.none():Ot($n,no),yn=($n,no)=>Ot($n,no).orThunk(()=>a.onEscape($n,no).map(()=>$n)),An=$n=>(no,Fo)=>uf(Fo.getSource(),`.${a.markers.item}`).bind(Vo=>no.getSystem().getByDom(Vo).toOptional().bind(Co=>$n(no,Co).map(St))),rs=kr([qt(q4(),($n,no)=>{const Fo=no.event.item;x.lookupItem(I(Fo)).each(()=>{const Vo=no.event.menu;ur.highlight($n,Vo);const Co=I(no.event.item);x.refresh(Co).each(Go=>be($n,x,Go))})}),vc(($n,no)=>{const Fo=no.event.target;$n.getSystem().getByDom(Fo).each(Vo=>{I(Vo).indexOf("collapse-item")===0&&Ot($n,Vo),st($n,Vo,Ct.HighlightSubmenu).fold(()=>{a.onExecute($n,Vo)},j)})}),xr(($n,no)=>{P($n).each(Fo=>{Yo.append($n,cu(Fo)),a.onOpenMenu($n,Fo),a.highlightOnOpen===Bu.HighlightMenuAndItem?se($n,Fo):a.highlightOnOpen===Bu.HighlightJustMenu&&ee($n,Fo)})}),qt(Ky,($n,no)=>{a.onHighlightItem($n,no.event.menuComp,no.event.itemComp)}),qt(YC,($n,no)=>{a.onDehighlightItem($n,no.event.menuComp,no.event.itemComp)}),...a.navigateOnHover?[qt(PT(),($n,no)=>{const Fo=no.event.item;hn($n,Fo),st($n,Fo,Ct.HighlightParent),a.onHover($n,Fo)})]:[]]),Un=$n=>ur.getHighlighted($n).bind(ur.getHighlighted),Lo=$n=>{Un($n).each(no=>{Ot($n,no)})},Po=$n=>{x.getPrimary().each(no=>{se($n,no)})},wr=$n=>q.from($n.components()[0]).filter(no=>ui(no.element,"role")==="menu"),Zs={collapseMenu:Lo,highlightPrimary:Po,repositionMenus:$n=>{x.getPrimary().bind(Fo=>Un($n).bind(Vo=>{const Co=I(Vo),Go=Qi(x.getMenus()),oi=wt(Fe(Go,G4.extractPreparedMenu));return x.getTriggeringPath(Co,Ys=>Q($n,oi,Ys))}).map(Vo=>({primary:Fo,triggeringPath:Vo}))).fold(()=>{wr($n).each(Fo=>{a.onRepositionMenu($n,Fo,[])})},({primary:Fo,triggeringPath:Vo})=>{a.onRepositionMenu($n,Fo,Vo)})}};return{uid:a.uid,dom:a.dom,markers:a.markers,behaviours:$a(a.tmenuBehaviours,[vo.config({mode:"special",onRight:An(jt),onLeft:An(Wt),onEscape:An(yn),focusIn:($n,no)=>{x.getPrimary().each(Fo=>{ng($n,Fo.element,Fi())})}}),ur.config({highlightClass:a.markers.selectedMenu,itemClass:a.markers.menu}),Ds.config({find:$n=>ur.getHighlighted($n)}),Yo.config({})]),eventOrder:a.eventOrder,apis:Zs,events:rs}},H6=ne("collapse-item"),Q6=(a,f,g)=>({primary:a,menus:f,expansions:g}),J4=(a,f)=>({primary:a,menus:xn(a,f),expansions:{}}),V6=a=>({value:Vn(H6()),meta:{text:a}}),d0=sd({name:"TieredMenu",configFields:[Sg("onExecute"),Sg("onEscape"),df("onOpenMenu"),df("onOpenSubmenu"),Ps("onRepositionMenu"),Ps("onCollapseMenu"),_t("highlightOnOpen",Bu.HighlightMenuAndItem),Ic("data",[Gt("primary"),Gt("menus"),Gt("expansions")]),_t("fakeFocus",!1),Ps("onHighlightItem"),Ps("onDehighlightItem"),Ps("onHover"),y1(),Gt("dom"),_t("navigateOnHover",!0),_t("stayInDom",!1),il("tmenuBehaviours",[vo,ur,Ds,Yo]),_t("eventOrder",{})],apis:{collapseMenu:(a,f)=>{a.collapseMenu(f)},highlightPrimary:(a,f)=>{a.highlightPrimary(f)},repositionMenus:(a,f)=>{a.repositionMenus(f)}},factory:K4,extraApis:{tieredData:Q6,singleData:J4,collapseItem:V6}}),z6=(a,f,g,O,x)=>{const P=()=>a.lazySink(f),I=O.type==="horizontal"?{layouts:{onLtr:()=>Db(),onRtl:()=>av()}}:{},Q=ee=>ee.length===2,U=ee=>Q(ee)?I:{};return d0.sketch({dom:{tag:"div"},data:O.data,markers:O.menu.markers,highlightOnOpen:O.menu.highlightOnOpen,fakeFocus:O.menu.fakeFocus,onEscape:()=>(Is.close(f),a.onEscape.map(ee=>ee(f)),q.some(!0)),onExecute:()=>q.some(!0),onOpenMenu:(ee,se)=>{Oc.positionWithinBounds(P().getOrDie(),se,g,x())},onOpenSubmenu:(ee,se,he,be)=>{const we=P().getOrDie();Oc.position(we,he,{anchor:{type:"submenu",item:se,...U(be)}})},onRepositionMenu:(ee,se,he)=>{const be=P().getOrDie();Oc.positionWithinBounds(be,se,g,x()),mt(he,we=>{const Re=U(we.triggeringPath);Oc.position(be,we.triggeredMenu,{anchor:{type:"submenu",item:we.triggeringItem,...Re}})})}})},W6=(a,f)=>{const g=(be,we)=>a.getRelated(be).exists(Je=>Ah(Je,we)),O=(be,we)=>{Is.setContent(be,we)},x=(be,we,Re)=>{const Je=q.none;P(be,we,Re,Je)},P=(be,we,Re,Je)=>{const Ct=a.lazySink(be).getOrDie();Is.openWhileCloaked(be,we,()=>Oc.positionWithinBounds(Ct,be,Re,Je())),Ln.setValue(be,q.some({mode:"position",config:Re,getBounds:Je}))},I=(be,we,Re)=>{Q(be,we,Re,q.none)},Q=(be,we,Re,Je)=>{const Ct=z6(a,be,we,Re,Je);Is.open(be,Ct),Ln.setValue(be,q.some({mode:"menu",menu:Ct}))},U=be=>{Is.isOpen(be)&&(Ln.setValue(be,q.none()),Is.close(be))},ee=be=>Is.getState(be),se=be=>{Is.isOpen(be)&&Ln.getValue(be).each(we=>{switch(we.mode){case"menu":Is.getState(be).each(d0.repositionMenus);break;case"position":const Re=a.lazySink(be).getOrDie();Oc.positionWithinBounds(Re,be,we.config,we.getBounds());break}})},he={setContent:O,showAt:x,showWithinBounds:P,showMenuAt:I,showMenuWithinBounds:Q,hide:U,getContent:ee,reposition:se,isOpen:Is.isOpen};return{uid:a.uid,dom:a.dom,behaviours:$a(a.inlineBehaviours,[Is.config({isPartOf:(be,we,Re)=>Ah(we,Re)||g(be,Re),getAttachPoint:be=>a.lazySink(be).getOrDie(),onOpen:be=>{a.onShow(be)},onClose:be=>{a.onHide(be)}}),Ln.config({store:{mode:"memory",initialValue:q.none()}}),Wc.config({channels:{...Iv({isExtraPart:f.isExtraPart,...a.fireDismissalEventInstead.map(be=>({fireEventInstead:{event:be.event}})).getOr({})}),...Gb({...a.fireRepositionEventInstead.map(be=>({fireEventInstead:{event:be.event}})).getOr({}),doReposition:se})}})]),eventOrder:a.eventOrder,apis:he}},Yi=sd({name:"InlineView",configFields:[Gt("lazySink"),Ps("onShow"),Ps("onHide"),ch("onEscape"),il("inlineBehaviours",[Is,Ln,Wc]),Ll("fireDismissalEventInstead",[_t("event",Oh())]),Ll("fireRepositionEventInstead",[_t("event",H0())]),_t("getRelated",q.none),_t("isExtraPart",Tt),_t("eventOrder",q.none)],factory:W6,apis:{showAt:(a,f,g,O)=>{a.showAt(f,g,O)},showWithinBounds:(a,f,g,O,x)=>{a.showWithinBounds(f,g,O,x)},showMenuAt:(a,f,g,O)=>{a.showMenuAt(f,g,O)},showMenuWithinBounds:(a,f,g,O,x)=>{a.showMenuWithinBounds(f,g,O,x)},hide:(a,f)=>{a.hide(f)},isOpen:(a,f)=>a.isOpen(f),getContent:(a,f)=>a.getContent(f),setContent:(a,f,g)=>{a.setContent(f,g)},reposition:(a,f)=>{a.reposition(f)}}});var sO=tinymce.util.Tools.resolve("tinymce.util.Delay");const Wl=sd({name:"Button",factory:a=>{const f=Tp(a.action),g=a.dom.tag,O=P=>nn(a.dom,"attributes").bind(I=>nn(I,P)),x=()=>{if(g==="button"){const P=O("type").getOr("button"),I=O("role").map(Q=>({role:Q})).getOr({});return{type:P,...I}}else return{role:a.role.getOr(O("role").getOr("button"))}};return{uid:a.uid,dom:a.dom,components:a.components,events:f,behaviours:gf.augment(a.buttonBehaviours,[Ao.config({}),vo.config({mode:"execution",useSpace:!0,useEnter:!0})]),domModification:{attributes:x()},eventOrder:a.eventOrder}},configFields:[_t("uid",void 0),Gt("dom"),_t("components",[]),gf.field("buttonBehaviours",[Ao,vo]),er("action"),er("role"),_t("eventOrder",{})]}),Z6=a=>{const f=a.dom.attributes!==void 0?a.dom.attributes:[];return po(f,(g,O)=>O.name==="class"?g:{...g,[O.name]:O.value},{})},U6=a=>Array.prototype.slice.call(a.dom.classList,0),Z1=a=>{const f=nt.fromHtml(a),g=Ya(f),O=Z6(f),x=U6(f),P=g.length===0?{}:{innerHtml:rg(f)};return{tag:ia(f),classes:x,attributes:O,...P}},Ar=a=>{const f=tT(a)&&Xr(a,"uid")?a.uid:ag("memento");return{get:P=>P.getSystem().getByUid(f).getOrDie(),getOpt:P=>P.getSystem().getByUid(f).toOptional(),asSpec:()=>({...a,uid:f})}},{entries:MT,setPrototypeOf:NT,isFrozen:q6,getPrototypeOf:X6,getOwnPropertyDescriptor:j6}=Object;let{freeze:vf,seal:Ap,create:Y6}=Object,{apply:GC,construct:IT}=typeof Reflect<"u"&&Reflect;GC||(GC=function(f,g,O){return f.apply(g,O)}),vf||(vf=function(f){return f}),Ap||(Ap=function(f){return f}),IT||(IT=function(f,g){return new f(...g)});const G6=$m(Array.prototype.forEach),K6=$m(Array.prototype.pop),CS=$m(Array.prototype.push),KC=$m(String.prototype.toLowerCase),U1=$m(String.prototype.toString),J6=$m(String.prototype.match),$p=$m(String.prototype.replace),rO=$m(String.prototype.indexOf),tD=$m(String.prototype.trim),Hh=$m(RegExp.prototype.test),Am=e7(TypeError);function $m(a){return function(f){for(var g=arguments.length,O=new Array(g>1?g-1:0),x=1;x/gm),nD=Ap(/\${[\w\W]*}/gm),r7=Ap(/^data-[\-\w.\u00B7-\uFFFF]/),QT=Ap(/^aria-[\-\w]+$/),VT=Ap(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),i7=Ap(/^(?:\w+script|data):/i),a7=Ap(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),oD=Ap(/^html$/i);var tk=Object.freeze({__proto__:null,MUSTACHE_EXPR:o7,ERB_EXPR:s7,TMPLIT_EXPR:nD,DATA_ATTR:r7,ARIA_ATTR:QT,IS_ALLOWED_URI:VT,IS_SCRIPT_OR_DATA:i7,ATTR_WHITESPACE:a7,DOCTYPE_NAME:oD});const l7=()=>typeof window>"u"?null:window,AS=function(f,g){if(typeof f!="object"||typeof f.createPolicy!="function")return null;let O=null;const x="data-tt-policy-suffix";g&&g.hasAttribute(x)&&(O=g.getAttribute(x));const P="dompurify"+(O?"#"+O:"");try{return f.createPolicy(P,{createHTML(I){return I},createScriptURL(I){return I}})}catch{return console.warn("TrustedTypes policy "+P+" could not be created."),null}};function $S(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:l7();const f=Ms=>$S(Ms);if(f.version="3.0.5",f.removed=[],!a||!a.document||a.document.nodeType!==9)return f.isSupported=!1,f;const g=a.document,O=g.currentScript;let{document:x}=a;const{DocumentFragment:P,HTMLTemplateElement:I,Node:Q,Element:U,NodeFilter:ee,NamedNodeMap:se=a.NamedNodeMap||a.MozNamedAttrMap,HTMLFormElement:he,DOMParser:be,trustedTypes:we}=a,Re=U.prototype,Je=kS(Re,"cloneNode"),Ct=kS(Re,"nextSibling"),at=kS(Re,"childNodes"),st=kS(Re,"parentNode");if(typeof I=="function"){const Ms=x.createElement("template");Ms.content&&Ms.content.ownerDocument&&(x=Ms.content.ownerDocument)}let Ot,hn="";const{implementation:jt,createNodeIterator:Wt,createDocumentFragment:yn,getElementsByTagName:An}=x,{importNode:rs}=g;let Un={};f.isSupported=typeof MT=="function"&&typeof st=="function"&&jt&&jt.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:Lo,ERB_EXPR:Po,TMPLIT_EXPR:wr,DATA_ATTR:So,ARIA_ATTR:Zs,IS_SCRIPT_OR_DATA:$n,ATTR_WHITESPACE:no}=tk;let{IS_ALLOWED_URI:Fo}=tk,Vo=null;const Co=Hs({},[...BT,...LT,...xS,...FT,...ES]);let Go=null;const oi=Hs({},[...JC,...ek,...HT,...TS]);let Ys=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),lc=null,jd=null,Kh=!0,Qm=!0,L0=!1,DO=!0,Hp=!1,ob=!1,G2=!1,e4=!1,ew=!1,NE=!1,PL=!1,gq=!0,bq=!1;const Uq="user-content-";let nU=!0,t4=!1,IE={},BE=null;const vq=Hs({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Oq=null;const yq=Hs({},["audio","video","img","source","image","track"]);let oU=null;const _q=Hs({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),DL="http://www.w3.org/1998/Math/MathML",RL="http://www.w3.org/2000/svg",RO="http://www.w3.org/1999/xhtml";let LE=RO,sU=!1,rU=null;const qq=Hs({},[DL,RL,RO],U1);let K2;const Xq=["application/xhtml+xml","text/html"],jq="text/html";let Yd,FE=null;const Yq=x.createElement("form"),wq=function(Ht){return Ht instanceof RegExp||Ht instanceof Function},iU=function(Ht){if(!(FE&&FE===Ht)){if((!Ht||typeof Ht!="object")&&(Ht={}),Ht=iO(Ht),K2=Xq.indexOf(Ht.PARSER_MEDIA_TYPE)===-1?K2=jq:K2=Ht.PARSER_MEDIA_TYPE,Yd=K2==="application/xhtml+xml"?U1:KC,Vo="ALLOWED_TAGS"in Ht?Hs({},Ht.ALLOWED_TAGS,Yd):Co,Go="ALLOWED_ATTR"in Ht?Hs({},Ht.ALLOWED_ATTR,Yd):oi,rU="ALLOWED_NAMESPACES"in Ht?Hs({},Ht.ALLOWED_NAMESPACES,U1):qq,oU="ADD_URI_SAFE_ATTR"in Ht?Hs(iO(_q),Ht.ADD_URI_SAFE_ATTR,Yd):_q,Oq="ADD_DATA_URI_TAGS"in Ht?Hs(iO(yq),Ht.ADD_DATA_URI_TAGS,Yd):yq,BE="FORBID_CONTENTS"in Ht?Hs({},Ht.FORBID_CONTENTS,Yd):vq,lc="FORBID_TAGS"in Ht?Hs({},Ht.FORBID_TAGS,Yd):{},jd="FORBID_ATTR"in Ht?Hs({},Ht.FORBID_ATTR,Yd):{},IE="USE_PROFILES"in Ht?Ht.USE_PROFILES:!1,Kh=Ht.ALLOW_ARIA_ATTR!==!1,Qm=Ht.ALLOW_DATA_ATTR!==!1,L0=Ht.ALLOW_UNKNOWN_PROTOCOLS||!1,DO=Ht.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Hp=Ht.SAFE_FOR_TEMPLATES||!1,ob=Ht.WHOLE_DOCUMENT||!1,ew=Ht.RETURN_DOM||!1,NE=Ht.RETURN_DOM_FRAGMENT||!1,PL=Ht.RETURN_TRUSTED_TYPE||!1,e4=Ht.FORCE_BODY||!1,gq=Ht.SANITIZE_DOM!==!1,bq=Ht.SANITIZE_NAMED_PROPS||!1,nU=Ht.KEEP_CONTENT!==!1,t4=Ht.IN_PLACE||!1,Fo=Ht.ALLOWED_URI_REGEXP||VT,LE=Ht.NAMESPACE||RO,Ys=Ht.CUSTOM_ELEMENT_HANDLING||{},Ht.CUSTOM_ELEMENT_HANDLING&&wq(Ht.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Ys.tagNameCheck=Ht.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ht.CUSTOM_ELEMENT_HANDLING&&wq(Ht.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Ys.attributeNameCheck=Ht.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ht.CUSTOM_ELEMENT_HANDLING&&typeof Ht.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Ys.allowCustomizedBuiltInElements=Ht.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Hp&&(Qm=!1),NE&&(ew=!0),IE&&(Vo=Hs({},[...ES]),Go=[],IE.html===!0&&(Hs(Vo,BT),Hs(Go,JC)),IE.svg===!0&&(Hs(Vo,LT),Hs(Go,ek),Hs(Go,TS)),IE.svgFilters===!0&&(Hs(Vo,xS),Hs(Go,ek),Hs(Go,TS)),IE.mathMl===!0&&(Hs(Vo,FT),Hs(Go,HT),Hs(Go,TS))),Ht.ADD_TAGS&&(Vo===Co&&(Vo=iO(Vo)),Hs(Vo,Ht.ADD_TAGS,Yd)),Ht.ADD_ATTR&&(Go===oi&&(Go=iO(Go)),Hs(Go,Ht.ADD_ATTR,Yd)),Ht.ADD_URI_SAFE_ATTR&&Hs(oU,Ht.ADD_URI_SAFE_ATTR,Yd),Ht.FORBID_CONTENTS&&(BE===vq&&(BE=iO(BE)),Hs(BE,Ht.FORBID_CONTENTS,Yd)),nU&&(Vo["#text"]=!0),ob&&Hs(Vo,["html","head","body"]),Vo.table&&(Hs(Vo,["tbody"]),delete lc.tbody),Ht.TRUSTED_TYPES_POLICY){if(typeof Ht.TRUSTED_TYPES_POLICY.createHTML!="function")throw Am('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Ht.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Am('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Ot=Ht.TRUSTED_TYPES_POLICY,hn=Ot.createHTML("")}else Ot===void 0&&(Ot=AS(we,O)),Ot!==null&&typeof hn=="string"&&(hn=Ot.createHTML(""));vf&&vf(Ht),FE=Ht}},Sq=Hs({},["mi","mo","mn","ms","mtext"]),Cq=Hs({},["foreignobject","desc","title","annotation-xml"]),Gq=Hs({},["title","style","font","a","script"]),ML=Hs({},LT);Hs(ML,xS),Hs(ML,t7);const aU=Hs({},FT);Hs(aU,n7);const Kq=function(Ht){let lo=st(Ht);(!lo||!lo.tagName)&&(lo={namespaceURI:LE,tagName:"template"});const zo=KC(Ht.tagName),cl=KC(lo.tagName);return rU[Ht.namespaceURI]?Ht.namespaceURI===RL?lo.namespaceURI===RO?zo==="svg":lo.namespaceURI===DL?zo==="svg"&&(cl==="annotation-xml"||Sq[cl]):!!ML[zo]:Ht.namespaceURI===DL?lo.namespaceURI===RO?zo==="math":lo.namespaceURI===RL?zo==="math"&&Cq[cl]:!!aU[zo]:Ht.namespaceURI===RO?lo.namespaceURI===RL&&!Cq[cl]||lo.namespaceURI===DL&&!Sq[cl]?!1:!aU[zo]&&(Gq[zo]||!ML[zo]):!!(K2==="application/xhtml+xml"&&rU[Ht.namespaceURI]):!1},J2=function(Ht){CS(f.removed,{element:Ht});try{Ht.parentNode.removeChild(Ht)}catch{Ht.remove()}},n4=function(Ht,lo){try{CS(f.removed,{attribute:lo.getAttributeNode(Ht),from:lo})}catch{CS(f.removed,{attribute:null,from:lo})}if(lo.removeAttribute(Ht),Ht==="is"&&!Go[Ht])if(ew||NE)try{J2(lo)}catch{}else try{lo.setAttribute(Ht,"")}catch{}},kq=function(Ht){let lo,zo;if(e4)Ht=""+Ht;else{const i1=J6(Ht,/^[\r\n\t ]+/);zo=i1&&i1[0]}K2==="application/xhtml+xml"&&LE===RO&&(Ht=''+Ht+"");const cl=Ot?Ot.createHTML(Ht):Ht;if(LE===RO)try{lo=new be().parseFromString(cl,K2)}catch{}if(!lo||!lo.documentElement){lo=jt.createDocument(LE,"template",null);try{lo.documentElement.innerHTML=sU?hn:cl}catch{}}const Gd=lo.body||lo.documentElement;return Ht&&zo&&Gd.insertBefore(x.createTextNode(zo),Gd.childNodes[0]||null),LE===RO?An.call(lo,ob?"html":"body")[0]:ob?lo.documentElement:Gd},xq=function(Ht){return Wt.call(Ht.ownerDocument||Ht,Ht,ee.SHOW_ELEMENT|ee.SHOW_COMMENT|ee.SHOW_TEXT,null,!1)},Jq=function(Ht){return Ht instanceof he&&(typeof Ht.nodeName!="string"||typeof Ht.textContent!="string"||typeof Ht.removeChild!="function"||!(Ht.attributes instanceof se)||typeof Ht.removeAttribute!="function"||typeof Ht.setAttribute!="function"||typeof Ht.namespaceURI!="string"||typeof Ht.insertBefore!="function"||typeof Ht.hasChildNodes!="function")},NL=function(Ht){return typeof Q=="object"?Ht instanceof Q:Ht&&typeof Ht=="object"&&typeof Ht.nodeType=="number"&&typeof Ht.nodeName=="string"},MO=function(Ht,lo,zo){Un[Ht]&&G6(Un[Ht],cl=>{cl.call(f,lo,zo,FE)})},Eq=function(Ht){let lo;if(MO("beforeSanitizeElements",Ht,null),Jq(Ht))return J2(Ht),!0;const zo=Yd(Ht.nodeName);if(MO("uponSanitizeElement",Ht,{tagName:zo,allowedTags:Vo}),Ht.hasChildNodes()&&!NL(Ht.firstElementChild)&&(!NL(Ht.content)||!NL(Ht.content.firstElementChild))&&Hh(/<[/\w]/g,Ht.innerHTML)&&Hh(/<[/\w]/g,Ht.textContent))return J2(Ht),!0;if(!Vo[zo]||lc[zo]){if(!lc[zo]&&Aq(zo)&&(Ys.tagNameCheck instanceof RegExp&&Hh(Ys.tagNameCheck,zo)||Ys.tagNameCheck instanceof Function&&Ys.tagNameCheck(zo)))return!1;if(nU&&!BE[zo]){const cl=st(Ht)||Ht.parentNode,Gd=at(Ht)||Ht.childNodes;if(Gd&&cl){const i1=Gd.length;for(let xc=i1-1;xc>=0;--xc)cl.insertBefore(Je(Gd[xc],!0),Ct(Ht))}}return J2(Ht),!0}return Ht instanceof U&&!Kq(Ht)||(zo==="noscript"||zo==="noembed"||zo==="noframes")&&Hh(/<\/no(script|embed|frames)/i,Ht.innerHTML)?(J2(Ht),!0):(Hp&&Ht.nodeType===3&&(lo=Ht.textContent,lo=$p(lo,Lo," "),lo=$p(lo,Po," "),lo=$p(lo,wr," "),Ht.textContent!==lo&&(CS(f.removed,{element:Ht.cloneNode()}),Ht.textContent=lo)),MO("afterSanitizeElements",Ht,null),!1)},Tq=function(Ht,lo,zo){if(gq&&(lo==="id"||lo==="name")&&(zo in x||zo in Yq))return!1;if(!(Qm&&!jd[lo]&&Hh(So,lo))){if(!(Kh&&Hh(Zs,lo))){if(!Go[lo]||jd[lo]){if(!(Aq(Ht)&&(Ys.tagNameCheck instanceof RegExp&&Hh(Ys.tagNameCheck,Ht)||Ys.tagNameCheck instanceof Function&&Ys.tagNameCheck(Ht))&&(Ys.attributeNameCheck instanceof RegExp&&Hh(Ys.attributeNameCheck,lo)||Ys.attributeNameCheck instanceof Function&&Ys.attributeNameCheck(lo))||lo==="is"&&Ys.allowCustomizedBuiltInElements&&(Ys.tagNameCheck instanceof RegExp&&Hh(Ys.tagNameCheck,zo)||Ys.tagNameCheck instanceof Function&&Ys.tagNameCheck(zo))))return!1}else if(!oU[lo]){if(!Hh(Fo,$p(zo,no,""))){if(!((lo==="src"||lo==="xlink:href"||lo==="href")&&Ht!=="script"&&rO(zo,"data:")===0&&Oq[Ht])){if(!(L0&&!Hh($n,$p(zo,no,"")))){if(zo)return!1}}}}}}return!0},Aq=function(Ht){return Ht.indexOf("-")>0},$q=function(Ht){let lo,zo,cl,Gd;MO("beforeSanitizeAttributes",Ht,null);const{attributes:i1}=Ht;if(!i1)return;const xc={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Go};for(Gd=i1.length;Gd--;){lo=i1[Gd];const{name:a1,namespaceURI:lU}=lo;zo=a1==="value"?lo.value:tD(lo.value);const tX=zo;if(cl=Yd(a1),xc.attrName=cl,xc.attrValue=zo,xc.keepAttr=!0,xc.forceKeepAttr=void 0,MO("uponSanitizeAttribute",Ht,xc),zo=xc.attrValue,xc.forceKeepAttr)continue;if(!xc.keepAttr){n4(a1,Ht);continue}if(!DO&&Hh(/\/>/i,zo)){n4(a1,Ht);continue}Hp&&(zo=$p(zo,Lo," "),zo=$p(zo,Po," "),zo=$p(zo,wr," "));const Pq=Yd(Ht.nodeName);if(!Tq(Pq,cl,zo)){n4(a1,Ht);continue}if(bq&&(cl==="id"||cl==="name")&&(n4(a1,Ht),zo=Uq+zo),Ot&&typeof we=="object"&&typeof we.getAttributeType=="function"&&!lU)switch(we.getAttributeType(Pq,cl)){case"TrustedHTML":{zo=Ot.createHTML(zo);break}case"TrustedScriptURL":{zo=Ot.createScriptURL(zo);break}}if(zo!==tX)try{lU?Ht.setAttributeNS(lU,a1,zo):Ht.setAttribute(a1,zo)}catch{n4(a1,Ht)}}MO("afterSanitizeAttributes",Ht,null)},eX=function Ms(Ht){let lo;const zo=xq(Ht);for(MO("beforeSanitizeShadowDOM",Ht,null);lo=zo.nextNode();)MO("uponSanitizeShadowNode",lo,null),!Eq(lo)&&(lo.content instanceof P&&Ms(lo.content),$q(lo));MO("afterSanitizeShadowDOM",Ht,null)};return f.sanitize=function(Ms){let Ht=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},lo,zo,cl,Gd;if(sU=!Ms,sU&&(Ms=""),typeof Ms!="string"&&!NL(Ms))if(typeof Ms.toString=="function"){if(Ms=Ms.toString(),typeof Ms!="string")throw Am("dirty is not a string, aborting")}else throw Am("toString is not a function");if(!f.isSupported)return Ms;if(G2||iU(Ht),f.removed=[],typeof Ms=="string"&&(t4=!1),t4){if(Ms.nodeName){const a1=Yd(Ms.nodeName);if(!Vo[a1]||lc[a1])throw Am("root node is forbidden and cannot be sanitized in-place")}}else if(Ms instanceof Q)lo=kq(""),zo=lo.ownerDocument.importNode(Ms,!0),zo.nodeType===1&&zo.nodeName==="BODY"||zo.nodeName==="HTML"?lo=zo:lo.appendChild(zo);else{if(!ew&&!Hp&&!ob&&Ms.indexOf("<")===-1)return Ot&&PL?Ot.createHTML(Ms):Ms;if(lo=kq(Ms),!lo)return ew?null:PL?hn:""}lo&&e4&&J2(lo.firstChild);const i1=xq(t4?Ms:lo);for(;cl=i1.nextNode();)Eq(cl)||(cl.content instanceof P&&eX(cl.content),$q(cl));if(t4)return Ms;if(ew){if(NE)for(Gd=yn.call(lo.ownerDocument);lo.firstChild;)Gd.appendChild(lo.firstChild);else Gd=lo;return(Go.shadowroot||Go.shadowrootmode)&&(Gd=rs.call(g,Gd,!0)),Gd}let xc=ob?lo.outerHTML:lo.innerHTML;return ob&&Vo["!doctype"]&&lo.ownerDocument&&lo.ownerDocument.doctype&&lo.ownerDocument.doctype.name&&Hh(oD,lo.ownerDocument.doctype.name)&&(xc=" -`+xc),Hp&&(xc=$p(xc,Lo," "),xc=$p(xc,Po," "),xc=$p(xc,wr," ")),Ot&&PL?Ot.createHTML(xc):xc},f.setConfig=function(Ms){iU(Ms),G2=!0},f.clearConfig=function(){FE=null,G2=!1},f.isValidAttribute=function(Ms,Ht,lo){FE||iU({});const zo=Yd(Ms),cl=Yd(Ht);return Tq(zo,cl,lo)},f.addHook=function(Ms,Ht){typeof Ht=="function"&&(Un[Ms]=Un[Ms]||[],CS(Un[Ms],Ht))},f.removeHook=function(Ms){if(Un[Ms])return K6(Un[Ms])},f.removeHooks=function(Ms){Un[Ms]&&(Un[Ms]=[])},f.removeAllHooks=function(){Un={}},f}var sD=$S();const zT=a=>sD().sanitize(a);var qf=tinymce.util.Tools.resolve("tinymce.util.I18n");const c7={indent:!0,outdent:!0,"table-insert-column-after":!0,"table-insert-column-before":!0,"paste-column-after":!0,"paste-column-before":!0,"unordered-list":!0,"list-bull-circle":!0,"list-bull-default":!0,"list-bull-square":!0},rD="temporary-placeholder",WT=a=>()=>nn(a,rD).getOr("!not found!"),PS=(a,f)=>{const g=a.toLowerCase();if(qf.isRtl()){const O=mr(g,"-rtl");return ns(f,O)?O:g}else return g},ZT=(a,f)=>nn(f,PS(a,f)),UT=(a,f)=>{const g=f();return ZT(a,g).getOrThunk(WT(g))},qT=(a,f,g)=>{const O=f();return ZT(a,O).or(g).getOrThunk(WT(O))},u7=a=>qf.isRtl()?ns(c7,a):!1,nk=()=>ss("add-focusable",[xr(a=>{Cb(a.element,"svg").each(f=>Mn(f,"focusable","false"))})]),iD=(a,f,g,O)=>{var x,P;const I=u7(f)?["tox-icon--flip"]:[],Q=nn(g,PS(f,g)).or(O).getOrThunk(WT(g));return{dom:{tag:a.tag,attributes:(x=a.attributes)!==null&&x!==void 0?x:{},classes:a.classes.concat(I),innerHtml:Q},behaviours:On([...(P=a.behaviours)!==null&&P!==void 0?P:[],nk()])}},Pm=(a,f,g,O=q.none())=>iD(f,a,g(),O),d7=(a,f,g)=>{const O=g(),x=gt(a,P=>ns(O,PS(P,O)));return iD(f,x.getOr(rD),O,q.none())},aD={success:"checkmark",error:"warning",err:"error",warning:"warning",warn:"warning",info:"info"},XT=sd({name:"Notification",factory:a=>{const f=Ar({dom:Z1(`

    ${zT(a.translationProvider(a.text))}

    `),behaviours:On([Yo.config({})])}),g=we=>({dom:{tag:"div",classes:["tox-bar"],styles:{width:`${we}%`}}}),O=we=>({dom:{tag:"div",classes:["tox-text"],innerHtml:`${we}%`}}),x=Ar({dom:{tag:"div",classes:a.progress?["tox-progress-bar","tox-progress-indicator"]:["tox-progress-bar"]},components:[{dom:{tag:"div",classes:["tox-bar-container"]},components:[g(0)]},O(0)],behaviours:On([Yo.config({})])}),Q={updateProgress:(we,Re)=>{we.getSystem().isConnected()&&x.getOpt(we).each(Je=>{Yo.set(Je,[{dom:{tag:"div",classes:["tox-bar-container"]},components:[g(Re)]},O(Re)])})},updateText:(we,Re)=>{if(we.getSystem().isConnected()){const Je=f.get(we);Yo.set(Je,[Xi(Re)])}}},U=pt([a.icon.toArray(),a.level.toArray(),a.level.bind(we=>q.from(aD[we])).toArray()]),ee=Ar(Wl.sketch({dom:{tag:"button",classes:["tox-notification__dismiss","tox-button","tox-button--naked","tox-button--icon"]},components:[Pm("close",{tag:"span",classes:["tox-icon"],attributes:{"aria-label":a.translationProvider("Close")}},a.iconProvider)],action:we=>{a.onAction(we)}})),se=d7(U,{tag:"div",classes:["tox-notification__icon"]},a.iconProvider),he={dom:{tag:"div",classes:["tox-notification__body"]},components:[f.asSpec()],behaviours:On([Yo.config({})])},be=[se,he];return{uid:a.uid,dom:{tag:"div",attributes:{role:"alert"},classes:a.level.map(we=>["tox-notification","tox-notification--in",`tox-notification--${we}`]).getOr(["tox-notification","tox-notification--in"])},behaviours:On([Ao.config({}),ss("notification-events",[qt(gi(),we=>{ee.getOpt(we).each(Ao.focus)})])]),components:be.concat(a.progress?[x.asSpec()]:[]).concat(a.closeButton?[ee.asSpec()]:[]),apis:Q}},configFields:[er("level"),Gt("progress"),er("icon"),Gt("onAction"),Gt("text"),Gt("iconProvider"),Gt("translationProvider"),ya("closeButton",!0)],apis:{updateProgress:(a,f,g)=>{a.updateProgress(f,g)},updateText:(a,f,g)=>{a.updateText(f,g)}}});var jT=(a,f,g)=>{const O=f.backstage.shared,x=()=>{const U=Rr(nt.fromDom(a.getContentAreaContainer())),ee=Ea(),se=Au(ee.x,U.x,U.right),he=Au(ee.y,U.y,U.bottom),be=Math.max(U.right,ee.right),we=Math.max(U.bottom,ee.bottom);return q.some(Cr(se,he,be-se,we-he))};return{open:(U,ee)=>{const se=()=>{ee(),Yi.hide(be)},he=Ql(XT.sketch({text:U.text,level:ct(["success","error","warning","warn","info"],U.type)?U.type:void 0,progress:U.progressBar===!0,icon:U.icon,closeButton:U.closeButton,onAction:se,iconProvider:O.providers.icons,translationProvider:O.providers.translate})),be=Ql(Yi.sketch({dom:{tag:"div",classes:["tox-notifications-container"]},lazySink:O.getSink,fireDismissalEventInstead:{},...O.header.isPositionedAtTop()?{}:{fireRepositionEventInstead:{}}}));g.add(be),J(U.timeout)&&U.timeout>0&&sO.setEditorTimeout(a,()=>{se()},U.timeout);const Re={close:se,reposition:()=>{const Je=cu(he),Ct={maxHeightFunction:pf()},at=a.notificationManager.getNotifications();if(at[0]===Re){const st={...O.anchors.banner(),overrides:Ct};Yi.showWithinBounds(be,Je,{anchor:st},x)}else Ue(at,Re).each(st=>{const Ot=at[st-1].getEl(),hn={type:"node",root:si(),node:q.some(nt.fromDom(Ot)),overrides:Ct,layouts:{onRtl:()=>[zr],onLtr:()=>[zr]}};Yi.showWithinBounds(be,Je,{anchor:hn},x)})},text:Je=>{XT.updateText(he,Je)},settings:U,getEl:()=>he.element.dom,progressBar:{value:Je=>{XT.updateProgress(he,Je)}}};return Re},close:U=>{U.close()},getArgs:U=>U.settings}},aO=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),lD=tinymce.util.Tools.resolve("tinymce.EditorManager"),Jy=tinymce.util.Tools.resolve("tinymce.Env"),Of;(function(a){a.default="wrap",a.floating="floating",a.sliding="sliding",a.scrolling="scrolling"})(Of||(Of={}));var DS;(function(a){a.auto="auto",a.top="top",a.bottom="bottom"})(DS||(DS={}));const ci=a=>f=>f.options.get(a),RS=a=>f=>q.from(a(f)),cD=a=>{const f=Jy.deviceType.isPhone(),g=Jy.deviceType.isTablet()||f,O=a.options.register,x=I=>p(I)||I===!1,P=I=>p(I)||J(I);O("skin",{processor:I=>p(I)||I===!1,default:"oxide"}),O("skin_url",{processor:"string"}),O("height",{processor:P,default:Math.max(a.getElement().offsetHeight,400)}),O("width",{processor:P,default:aO.DOM.getStyle(a.getElement(),"width")}),O("min_height",{processor:"number",default:100}),O("min_width",{processor:"number"}),O("max_height",{processor:"number"}),O("max_width",{processor:"number"}),O("style_formats",{processor:"object[]"}),O("style_formats_merge",{processor:"boolean",default:!1}),O("style_formats_autohide",{processor:"boolean",default:!1}),O("line_height_formats",{processor:"string",default:"1 1.1 1.2 1.3 1.4 1.5 2"}),O("font_family_formats",{processor:"string",default:"Andale Mono=andale mono,monospace;Arial=arial,helvetica,sans-serif;Arial Black=arial black,sans-serif;Book Antiqua=book antiqua,palatino,serif;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,palatino,serif;Helvetica=helvetica,arial,sans-serif;Impact=impact,sans-serif;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco,monospace;Times New Roman=times new roman,times,serif;Trebuchet MS=trebuchet ms,geneva,sans-serif;Verdana=verdana,geneva,sans-serif;Webdings=webdings;Wingdings=wingdings,zapf dingbats"}),O("font_size_formats",{processor:"string",default:"8pt 10pt 12pt 14pt 18pt 24pt 36pt"}),O("font_size_input_default_unit",{processor:"string",default:"pt"}),O("block_formats",{processor:"string",default:"Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h3;Heading 4=h4;Heading 5=h5;Heading 6=h6;Preformatted=pre"}),O("content_langs",{processor:"object[]"}),O("removed_menuitems",{processor:"string",default:""}),O("menubar",{processor:I=>p(I)||R(I),default:!f}),O("menu",{processor:"object",default:{}}),O("toolbar",{processor:I=>R(I)||p(I)||k(I)?{value:I,valid:!0}:{valid:!1,message:"Must be a boolean, string or array."},default:!0}),Zt(9,I=>{O("toolbar"+(I+1),{processor:"string"})}),O("toolbar_mode",{processor:"string",default:g?"scrolling":"floating"}),O("toolbar_groups",{processor:"object",default:{}}),O("toolbar_location",{processor:"string",default:DS.auto}),O("toolbar_persist",{processor:"boolean",default:!1}),O("toolbar_sticky",{processor:"boolean",default:a.inline}),O("toolbar_sticky_offset",{processor:"number",default:0}),O("fixed_toolbar_container",{processor:"string",default:""}),O("fixed_toolbar_container_target",{processor:"object"}),O("ui_mode",{processor:"string",default:"combined"}),O("file_picker_callback",{processor:"function"}),O("file_picker_validator_handler",{processor:"function"}),O("file_picker_types",{processor:"string"}),O("typeahead_urls",{processor:"boolean",default:!0}),O("anchor_top",{processor:x,default:"#top"}),O("anchor_bottom",{processor:x,default:"#bottom"}),O("draggable_modal",{processor:"boolean",default:!1}),O("statusbar",{processor:"boolean",default:!0}),O("elementpath",{processor:"boolean",default:!0}),O("branding",{processor:"boolean",default:!0}),O("promotion",{processor:"boolean",default:!0}),O("resize",{processor:I=>I==="both"||R(I),default:!Jy.deviceType.isTouch()}),O("sidebar_show",{processor:"string"}),O("help_accessibility",{processor:"boolean",default:a.hasPlugin("help")}),O("default_font_stack",{processor:"string[]",default:[]})},uD=ci("readonly"),ok=ci("height"),MS=ci("width"),YT=RS(ci("min_width")),e_=RS(ci("min_height")),sk=RS(ci("max_width")),GT=RS(ci("max_height")),dD=RS(ci("style_formats")),fD=ci("style_formats_merge"),hD=ci("style_formats_autohide"),mD=ci("content_langs"),KT=ci("removed_menuitems"),t_=ci("toolbar_mode"),pD=ci("toolbar_groups"),NS=ci("toolbar_location"),lO=ci("fixed_toolbar_container"),f7=ci("fixed_toolbar_container_target"),gD=ci("toolbar_persist"),rk=ci("toolbar_sticky_offset"),JT=ci("menubar"),ik=ci("toolbar"),bD=ci("file_picker_callback"),eA=ci("file_picker_validator_handler"),vD=ci("font_size_input_default_unit"),tA=ci("file_picker_types"),nA=ci("typeahead_urls"),ak=ci("anchor_top"),OD=ci("anchor_bottom"),oA=ci("draggable_modal"),yD=ci("statusbar"),n_=ci("elementpath"),sA=ci("branding"),_D=ci("resize"),lk=ci("paste_as_text"),ck=ci("sidebar_show"),wD=ci("promotion"),uk=ci("help_accessibility"),SD=ci("default_font_stack"),rA=a=>a.options.get("skin")===!1,o_=a=>a.options.get("menubar")!==!1,dk=a=>{const f=a.options.get("skin_url");if(rA(a))return f;if(f)return a.documentBaseURI.toAbsolute(f);{const g=a.options.get("skin");return lD.baseURL+"/skins/ui/"+g}},fk=a=>q.from(a.options.get("skin_url")),CD=a=>a.options.get("line_height_formats").split(" "),hk=a=>{const f=ik(a),g=p(f),O=k(f)&&f.length>0;return!IS(a)&&(O||g||f===!0)},iA=a=>{const f=Zt(9,O=>a.options.get("toolbar"+(O+1))),g=jn(f,p);return an(g.length>0,g)},IS=a=>iA(a).fold(()=>{const f=ik(a);return te(f,p)&&f.length>0},St),aA=a=>NS(a)===DS.bottom,kD=a=>{var f;if(!a.inline)return q.none();const g=(f=lO(a))!==null&&f!==void 0?f:"";if(g.length>0)return oa(si(),g);const O=f7(a);return V(O)?q.some(nt.fromDom(O)):q.none()},s_=a=>a.inline&&kD(a).isSome(),lA=a=>kD(a).getOrThunk(()=>fn(At(nt.fromDom(a.getElement())))),cA=a=>a.inline&&!o_(a)&&!hk(a)&&!IS(a),BS=a=>(a.options.get("toolbar_sticky")||a.inline)&&!s_(a)&&!cA(a),zg=a=>!s_(a)&&a.options.get("ui_mode")==="split",xD=a=>{const f=a.options.get("menu");return ms(f,g=>({...g,items:g.items}))};var h7=Object.freeze({__proto__:null,get ToolbarMode(){return Of},get ToolbarLocation(){return DS},register:cD,getSkinUrl:dk,getSkinUrlOption:fk,isReadOnly:uD,isSkinDisabled:rA,getHeightOption:ok,getWidthOption:MS,getMinWidthOption:YT,getMinHeightOption:e_,getMaxWidthOption:sk,getMaxHeightOption:GT,getUserStyleFormats:dD,shouldMergeStyleFormats:fD,shouldAutoHideStyleFormats:hD,getLineHeightFormats:CD,getContentLanguages:mD,getRemovedMenuItems:KT,isMenubarEnabled:o_,isMultipleToolbars:IS,isToolbarEnabled:hk,isToolbarPersist:gD,getMultipleToolbarsOption:iA,getUiContainer:lA,useFixedContainer:s_,isSplitUiMode:zg,getToolbarMode:t_,isDraggableModal:oA,isDistractionFree:cA,isStickyToolbar:BS,getStickyToolbarOffset:rk,getToolbarLocation:NS,isToolbarLocationBottom:aA,getToolbarGroups:pD,getMenus:xD,getMenubar:JT,getToolbar:ik,getFilePickerCallback:bD,getFilePickerTypes:tA,useTypeaheadUrls:nA,getAnchorTop:ak,getAnchorBottom:OD,getFilePickerValidatorHandler:eA,getFontSizeInputDefaultUnit:vD,useStatusBar:yD,useElementPath:n_,promotionEnabled:wD,useBranding:sA,getResize:_D,getPasteAsText:lk,getSidebarShow:ck,useHelpAccessibility:uk,getDefaultFontStack:SD});const ED="[data-mce-autocompleter]",uA=a=>uf(a,ED),m7=a=>oa(a,ED),p7={setup:(a,f)=>{const g=(x,P)=>{ho(x,Eu(),{raw:P})},O=()=>a.getMenu().bind(ur.getHighlighted);f.on("keydown",x=>{const P=x.which;a.isActive()&&(a.isMenuOpen()?P===13?(O().each(Td),x.preventDefault()):P===40?(O().fold(()=>{a.getMenu().each(ur.highlightFirst)},I=>{g(I,x)}),x.preventDefault(),x.stopImmediatePropagation()):(P===37||P===38||P===39)&&O().each(I=>{g(I,x),x.preventDefault(),x.stopImmediatePropagation()}):(P===13||P===38||P===40)&&a.cancelIfNecessary())}),f.on("NodeChange",x=>{a.isActive()&&!a.isProcessingAction()&&uA(nt.fromDom(x.element)).isNone()&&a.cancelIfNecessary()})}};var dA;(function(a){a[a.CLOSE_ON_EXECUTE=0]="CLOSE_ON_EXECUTE",a[a.BUBBLE_TO_SANDBOX=1]="BUBBLE_TO_SANDBOX"})(dA||(dA={}));var Pp=dA;const fA="tox-menu-nav__js",r_="tox-collection__item",hA="tox-swatch",g7={normal:fA,color:hA},TD="tox-collection__item--enabled",b7="tox-collection__group-heading",AD="tox-collection__item-icon",mA="tox-collection__item-label",v7="tox-collection__item-accessory",$D="tox-collection__item-caret",O7="tox-collection__item-checkmark",LS="tox-collection__item--active",PD="tox-collection__item-container",y7="tox-collection__item-container--column",DD="tox-collection__item-container--row",mk="tox-collection__item-container--align-right",_7="tox-collection__item-container--align-left",pA="tox-collection__item-container--valign-top",w7="tox-collection__item-container--valign-middle",S7="tox-collection__item-container--valign-bottom",RD=a=>nn(g7,a).getOr(fA),MD=a=>a==="color"?"tox-swatches":"tox-menu",gA=a=>({backgroundMenu:"tox-background-menu",selectedMenu:"tox-selected-menu",selectedItem:"tox-collection__item--active",hasIcons:"tox-menu--has-icons",menu:MD(a),tieredMenu:"tox-tiered-menu"}),q1=a=>{const f=gA(a);return{backgroundMenu:f.backgroundMenu,selectedMenu:f.selectedMenu,menu:f.menu,selectedItem:f.selectedItem,item:RD(a)}},bA=(a,f,g)=>{const O=gA(g);return{tag:"div",classes:pt([[O.menu,`tox-menu-${f}-column`],a?[O.hasIcons]:[]])}},ND=[oO.parts.items({})],i_=(a,f,g)=>{const O=gA(g);return{dom:{tag:"div",classes:pt([[O.tieredMenu]])},markers:q1(g)}},FS=ne([er("data"),_t("inputAttributes",{}),_t("inputStyles",{}),_t("tag","input"),_t("inputClasses",[]),Ps("onSetValue"),_t("styles",{}),_t("eventOrder",{}),il("inputBehaviours",[Ln,Ao]),_t("selectOnFocus",!0)]),vA=a=>On([Ao.config({onFocus:a.selectOnFocus?f=>{const g=f.element,O=Nf(g);g.dom.setSelectionRange(0,O.length)}:j})]),Wg=a=>({...vA(a),...$a(a.inputBehaviours,[Ln.config({store:{mode:"manual",...a.data.map(f=>({initialValue:f})).getOr({}),getValue:f=>Nf(f.element),setValue:(f,g)=>{Nf(f.element)!==g&&bg(f.element,g)}},onSetValue:a.onSetValue})])}),pk=a=>({tag:a.tag,attributes:{type:"text",...a.inputAttributes},styles:a.inputStyles,classes:a.inputClasses}),C7=(a,f)=>({uid:a.uid,dom:pk(a),components:[],behaviours:Wg(a),eventOrder:a.eventOrder}),cO=sd({name:"Input",configFields:FS(),factory:C7}),ID=Vn("refetch-trigger-event"),BD=Vn("redirect-menu-item-interaction"),a_="tox-menu__searcher",gk=a=>oa(a.element,`.${a_}`).bind(f=>a.getSystem().getByDom(f).toOptional()),OA=gk,yA=(a,f)=>{Ln.setValue(a,f.fetchPattern),a.element.dom.selectionStart=f.selectionStart,a.element.dom.selectionEnd=f.selectionEnd},LD=a=>{const f=Ln.getValue(a),g=a.element.dom.selectionStart,O=a.element.dom.selectionEnd;return{fetchPattern:f,selectionStart:g,selectionEnd:O}},_A=(a,f)=>{me(f.element,"id").each(g=>Mn(a.element,"aria-activedescendant",g))},wA=a=>{const f=(x,P)=>(P.cut(),q.none()),g=(x,P)=>{const I={interactionEvent:P.event,eventType:P.event.raw.type};return ho(x,BD,I),q.some(!0)},O="searcher-events";return{dom:{tag:"div",classes:[r_]},components:[cO.sketch({inputClasses:[a_,"tox-textfield"],inputAttributes:{...a.placeholder.map(x=>({placeholder:a.i18n(x)})).getOr({}),type:"search","aria-autocomplete":"list"},inputBehaviours:On([ss(O,[qt(Af(),x=>{gs(x,ID)}),qt(Eu(),(x,P)=>{P.event.raw.key==="Escape"&&P.stop()})]),vo.config({mode:"special",onLeft:f,onRight:f,onSpace:f,onEnter:g,onEscape:g,onUp:g,onDown:g})]),eventOrder:{keydown:[O,vo.name()]}})]}},bk="tox-collection--results__js",SA=a=>{var f;return a.dom?{...a,dom:{...a.dom,attributes:{...(f=a.dom.attributes)!==null&&f!==void 0?f:{},id:Vn("aria-item-search-result-id"),"aria-selected":"false"}}}:a},vk=(a,f)=>g=>{const O=rn(g,f);return Fe(O,x=>({dom:a,components:x}))},k7=a=>({dom:{tag:"div",classes:["tox-menu","tox-swatches-menu"]},components:[{dom:{tag:"div",classes:["tox-swatches"]},components:[oO.parts.items({preprocess:a!=="auto"?vk({tag:"div",classes:["tox-swatches__row"]},a):Se})]}]}),x7=a=>({dom:{tag:"div",classes:["tox-menu","tox-collection","tox-collection--toolbar","tox-collection--toolbar-lg"]},components:[oO.parts.items({preprocess:vk({tag:"div",classes:["tox-collection__group"]},a)})]}),FD=(a,f)=>{const g=[];let O=[];return mt(a,(x,P)=>{f(x,P)?(O.length>0&&g.push(O),O=[],(ns(x.dom,"innerHtml")||x.components&&x.components.length>0)&&O.push(x)):O.push(x)}),O.length>0&&g.push(O),Fe(g,x=>({dom:{tag:"div",classes:["tox-collection__group"]},components:x}))},CA=(a,f,g)=>oO.parts.items({preprocess:O=>{const x=Fe(O,g);return a!=="auto"&&a>1?vk({tag:"div",classes:["tox-collection__group"]},a)(x):FD(x,(P,I)=>f[I].type==="separator")}}),HD=(a,f,g=!0)=>({dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(a===1?["tox-collection--list"]:["tox-collection--grid"])},components:[CA(a,f,Se)]}),E7=(a,f,g=!0)=>{const O=Vn("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection",bk].concat(a===1?["tox-collection--list"]:["tox-collection--grid"]),attributes:{id:O}},components:[CA(a,f,SA)]}},QD=(a,f,g)=>{const O=Vn("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(a===1?["tox-collection--list"]:["tox-collection--grid"])},components:[wA({i18n:qf.translate,placeholder:g.placeholder}),{dom:{tag:"div",classes:[...a===1?["tox-collection--list"]:["tox-collection--grid"],bk],attributes:{id:O}},components:[CA(a,f,SA)]}]}},VD=(a,f=!0)=>({dom:{tag:"div",classes:["tox-collection","tox-collection--horizontal"]},components:[oO.parts.items({preprocess:g=>FD(g,(O,x)=>a[x].type==="separator")})]}),Ok=a=>dn(a,f=>"icon"in f&&f.icon!==void 0),Zg=a=>(console.error(wl(a)),console.log(a),q.none()),HS=(a,f,g,O,x)=>{const P=VD(g);return{value:a,dom:P.dom,components:P.components,items:g}},yk=(a,f,g,O,x)=>{const P=()=>x.menuType!=="searchable"?HD(O,g):x.searchMode.searchMode==="search-with-field"?QD(O,g,x.searchMode):E7(O,g);if(x.menuType==="color"){const I=k7(O);return{value:a,dom:I.dom,components:I.components,items:g}}else if(x.menuType==="normal"&&O==="auto"){const I=HD(O,g);return{value:a,dom:I.dom,components:I.components,items:g}}else if(x.menuType==="normal"||x.menuType==="searchable"){const I=P();return{value:a,dom:I.dom,components:I.components,items:g}}else if(x.menuType==="listpreview"&&O!=="auto"){const I=x7(O);return{value:a,dom:I.dom,components:I.components,items:g}}else return{value:a,dom:bA(f,O,x.menuType),components:ND,items:g}},Xa=Fs("type"),kA=Fs("name"),_k=Fs("label"),X1=Fs("text"),zD=Fs("title"),xA=Fs("icon"),l_=Fs("value"),WD=Cu("fetch"),ZD=Cu("getSubmenuItems"),c_=Cu("onAction"),T7=Cu("onItemAction"),f0=da("onSetup",()=>j),EA=nl("name"),Ug=nl("text"),Xf=nl("icon"),QS=nl("tooltip"),wk=nl("label"),A7=nl("shortcut"),TA=ch("select"),Sk=ya("active",!1),UD=ya("borderless",!1),Qh=ya("enabled",!0),qg=ya("primary",!1),qD=a=>_t("columns",a),VS=_t("meta",{}),u_=da("onAction",j),uO=a=>Fl("type",a),Ck=a=>ca("name","name",La(()=>Vn(`${a}-name`)),Ta),XD=a=>ca("value","value",La(()=>Vn(`${a}-value`)),ea()),AA=Jn([Xa,Ug]),$A=a=>li("separatormenuitem",AA,a),jD=Jn([uO("autocompleteitem"),Sk,Qh,VS,l_,Ug,Xf]),$7=a=>li("Autocompleter.Separator",AA,a),YD=a=>li("Autocompleter.Item",jD,a),d_=[Qh,QS,Xf,Ug,f0],GD=Jn([Xa,c_].concat(d_)),PA=a=>li("toolbarbutton",GD,a),DA=[Sk].concat(d_),KD=Jn(DA.concat([Xa,c_])),JD=a=>li("ToggleButton",KD,a),eR=[da("predicate",Tt),Kl("scope","node",["node","editor"]),Kl("position","selection",["node","selection","line"])],P7=d_.concat([uO("contextformbutton"),qg,c_,Qr("original",Se)]),D7=DA.concat([uO("contextformbutton"),qg,c_,Qr("original",Se)]),tR=d_.concat([uO("contextformbutton")]),zS=DA.concat([uO("contextformtogglebutton")]),nR=ys("type",{contextformbutton:P7,contextformtogglebutton:D7}),R7=Jn([uO("contextform"),da("initValue",ne("")),wk,tl("commands",nR),ua("launch",ys("type",{contextformbutton:tR,contextformtogglebutton:zS}))].concat(eR)),M7=a=>li("ContextForm",R7,a),N7=Jn([uO("contexttoolbar"),Fs("items")].concat(eR)),I7=a=>li("ContextToolbar",N7,a),B7=[Xa,Fs("src"),nl("alt"),Jl("classes",[],Ta)],kk=Jn(B7),L7=[Xa,X1,EA,Jl("classes",["tox-collection__item-label"],Ta)],oR=Jn(L7),sR=Fa(()=>un("type",{cardimage:kk,cardtext:oR,cardcontainer:rR})),rR=Jn([Xa,Fl("direction","horizontal"),Fl("align","left"),Fl("valign","middle"),tl("items",sR)]),dO=[Qh,Ug,A7,XD("menuitem"),VS],F7=Jn([Xa,wk,tl("items",sR),f0,u_].concat(dO)),iR=a=>li("cardmenuitem",F7,a),aR=Jn([Xa,Sk,Xf].concat(dO)),lR=a=>li("choicemenuitem",aR,a),RA=[Xa,Fs("fancytype"),u_],H7=[_t("initData",{})].concat(RA),Q7=[ch("select"),Sd("initData",{},[ya("allowCustomColors",!0),Fl("storageKey","default"),af("colors",ea())])].concat(RA),V7=ys("fancytype",{inserttable:H7,colorswatch:Q7}),z7=a=>li("fancymenuitem",V7,a),cR=Jn([Xa,f0,u_,Xf].concat(dO)),uR=a=>li("menuitem",cR,a),W7=Jn([Xa,ZD,f0,Xf].concat(dO)),Z7=a=>li("nestedmenuitem",W7,a),U7=Jn([Xa,Xf,Sk,f0,c_].concat(dO)),q7=a=>li("togglemenuitem",U7,a),MA=(a,f,g)=>{const O=Ua(a.element,"."+g);if(O.length>0){const x=Ut(O,P=>{const I=P.dom.getBoundingClientRect().top,Q=O[0].dom.getBoundingClientRect().top;return Math.abs(I-Q)>f}).getOr(O.length);return q.some({numColumns:x,numRows:Math.ceil(O.length/x)})}else return q.none()},NA=(a,f)=>On([ss(a,f)]),WS={namedEvents:NA,unnamedEvents:a=>NA(Vn("unnamed-events"),a)},xk=Vn("tooltip.exclusive"),f_=Vn("tooltip.show"),ZS=Vn("tooltip.hide"),dR=(a,f,g)=>{a.getSystem().broadcastOn([xk],{})};var j7=Object.freeze({__proto__:null,hideAllExclusive:dR,setComponents:(a,f,g,O)=>{g.getTooltip().each(x=>{x.getSystem().isConnected()&&Yo.set(x,O)})}}),fR=Object.freeze({__proto__:null,events:(a,f)=>{const g=x=>{f.getTooltip().each(P=>{km(P),a.onHide(x,P),f.clearTooltip()}),f.clearTimer()},O=x=>{if(!f.isShowing()){dR(x);const P=a.lazySink(x).getOrDie(),I=x.getSystem().build({dom:a.tooltipDom,components:a.tooltipComponents,events:kr(a.mode==="normal"?[qt(kd(),Q=>{gs(x,f_)}),qt(ol(),Q=>{gs(x,ZS)})]:[]),behaviours:On([Yo.config({})])});f.setTooltip(I),Ig(P,I),a.onShow(x,I),Oc.position(P,I,{anchor:a.anchor(x)})}};return kr(pt([[qt(f_,x=>{f.resetTimer(()=>{O(x)},a.delay)}),qt(ZS,x=>{f.resetTimer(()=>{g(x)},a.delay)}),qt(tp(),(x,P)=>{const I=P;I.universal||ct(I.channels,xk)&&g(x)}),Pd(x=>{g(x)})],a.mode==="normal"?[qt(gi(),x=>{gs(x,f_)}),qt(gh(),x=>{gs(x,ZS)}),qt(kd(),x=>{gs(x,f_)}),qt(ol(),x=>{gs(x,ZS)})]:[qt(eg(),(x,P)=>{gs(x,f_)}),qt(tg(),x=>{gs(x,ZS)})]]))}}),hR=[Gt("lazySink"),Gt("tooltipDom"),_t("exclusive",!0),_t("tooltipComponents",[]),_t("delay",300),Kl("mode","normal",["normal","follow-highlight"]),_t("anchor",a=>({type:"hotspot",hotspot:a,layouts:{onLtr:ne([zr,oc,Qa,Va,kl,os]),onRtl:ne([zr,oc,Qa,Va,kl,os])}})),Ps("onHide"),Ps("onShow")],G7=Object.freeze({__proto__:null,init:()=>{const a=fs(),f=fs(),g=()=>{a.on(clearTimeout)},O=(P,I)=>{g(),a.set(setTimeout(P,I))},x=ne("not-implemented");return Hl({getTooltip:f.get,isShowing:f.isSet,setTooltip:f.set,clearTooltip:f.clear,clearTimer:g,resetTimer:O,readState:x})}});const mR=Za({fields:hR,name:"tooltipping",active:fR,state:G7,apis:j7}),K7=a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),pR="silver.readonly",IA=Jn([Yp("readonly")]),Ek=(a,f)=>{const O=a.mainUi.outerContainer.element,x=[a.mainUi.mothership,...a.uiMotherships];f&&mt(x,P=>{P.broadcastOn([Bh()],{target:O})}),mt(x,P=>{P.broadcastOn([pR],{readonly:f})})},gR=(a,f)=>{a.on("init",()=>{a.mode.isReadOnly()&&Ek(f,!0)}),a.on("SwitchMode",()=>Ek(f,a.mode.isReadOnly())),uD(a)&&a.mode.set("readonly")},Ol=()=>Wc.config({channels:{[pR]:{schema:IA,onReceive:(a,f)=>{ko.set(a,f.readonly)}}}}),al={item:a=>ko.config({disabled:a,disableClass:"tox-collection__item--state-disabled"}),button:a=>ko.config({disabled:a}),splitButton:a=>ko.config({disabled:a,disableClass:"tox-tbtn--disabled"}),toolbarButton:a=>ko.config({disabled:a,disableClass:"tox-tbtn--disabled",useNative:!1})},jf=(a,f)=>{const g=a.getApi(f);return O=>{O(g)}},h0=(a,f)=>xr(g=>{jf(a,g)(x=>{const P=a.onSetup(x);W(P)&&f.set(P)})}),Xg=(a,f)=>Pd(g=>jf(a,g)(f.get())),BA=(a,f)=>vc((g,O)=>{jf(a,g)(a.onAction),!a.triggersSubmenu&&f===Pp.CLOSE_ON_EXECUTE&&(g.getSystem().isConnected()&&gs(g,f1()),O.stop())}),eF={[au()]:["disabling","alloy.base.behaviour","toggling","item-events"]},h_=wt,jg=(a,f,g,O)=>{const x=bo(j);return{type:"item",dom:f.dom,components:h_(f.optComponents),data:a.data,eventOrder:eF,hasSubmenu:a.triggersSubmenu,itemBehaviours:On([ss("item-events",[BA(a,g),h0(a,x),Xg(a,x)]),al.item(()=>!a.enabled||O.isDisabled()),Ol(),Yo.config({})].concat(a.itemBehaviours))}},j1=a=>({value:a.value,meta:{text:a.text.getOr(""),...a.meta}}),Tk=a=>{const f=Jy.os.isMacOS()||Jy.os.isiOS(),x=f?{alt:"⌥",ctrl:"⌃",shift:"⇧",meta:"⌘",access:"⌃⌥"}:{meta:"Ctrl",access:"Shift+Alt"},P=a.split("+"),I=Fe(P,Q=>{const U=Q.toLowerCase().trim();return ns(x,U)?x[U]:Q});return f?I.join(""):I.join("+")},LA=(a,f,g=[AD])=>Pm(a,{tag:"div",classes:g},f),Dm=a=>({dom:{tag:"div",classes:[mA]},components:[Xi(qf.translate(a))]}),bR=(a,f)=>({dom:{tag:"div",classes:f,innerHtml:a}}),tF=(a,f)=>({dom:{tag:"div",classes:[mA]},components:[{dom:{tag:a.tag,styles:a.styles},components:[Xi(qf.translate(f))]}]}),Vh=a=>({dom:{tag:"div",classes:[v7]},components:[Xi(Tk(a))]}),m_=a=>LA("checkmark",a,[O7]),Rm=a=>LA("chevron-right",a,[$D]),nF=a=>LA("chevron-down",a,[$D]),Ur=(a,f)=>{const g=a.direction==="vertical"?y7:DD,O=a.align==="left"?_7:mk;return{dom:{tag:"div",classes:[PD,g,O,(()=>{switch(a.valign){case"top":return pA;case"middle":return w7;case"bottom":return S7}})()]},components:f}},p_=(a,f,g)=>({dom:{tag:"img",classes:f,attributes:{src:a,alt:g.getOr("")}}}),Ak=(a,f,g)=>{const O="custom",x="remove",P=a.ariaLabel,I=a.value,Q=a.iconContent.map(ee=>qT(ee,f.icons,g));return{dom:(()=>{const ee=hA,se=Q.getOr(""),be={tag:"div",attributes:P.map(we=>({title:f.translate(we)})).getOr({}),classes:[ee]};return I===O?{...be,tag:"button",classes:[...be.classes,"tox-swatches__picker-btn"],innerHtml:se}:I===x?{...be,classes:[...be.classes,"tox-swatch--remove"],innerHtml:se}:V(I)?{...be,attributes:{...be.attributes,"data-mce-color":I},styles:{"background-color":I},innerHtml:se}:be})(),optComponents:[]}},FA=a=>{const f=a.map(g=>({attributes:{title:qf.translate(g),id:Vn("menu-item")}})).getOr({});return{tag:"div",classes:[fA,r_],...f}},HA=(a,f,g,O)=>{const x={tag:"div",classes:[AD]},P=be=>Pm(be,x,f.icons,O),I=()=>q.some({dom:x}),Q=g?a.iconContent.map(P).orThunk(I):q.none(),U=a.checkMark,ee=q.from(a.meta).fold(()=>Dm,be=>ns(be,"style")?Be(tF,be.style):Dm),se=a.htmlContent.fold(()=>a.textContent.map(ee),be=>q.some(bR(be,[mA])));return{dom:FA(a.ariaLabel),optComponents:[Q,se,a.shortcutContent.map(Vh),U,a.caret]}},fO=(a,f,g,O=q.none())=>a.presets==="color"?Ak(a,f,O):HA(a,f,g,O),vR=(a,f)=>nn(a,"tooltipWorker").map(g=>[mR.config({lazySink:f.getSink,tooltipDom:{tag:"div",classes:["tox-tooltip-worker-container"]},tooltipComponents:[],anchor:O=>({type:"submenu",item:O,overrides:{maxHeightFunction:pf}}),mode:"follow-highlight",onShow:(O,x)=>{g(P=>{mR.setComponents(O,[UO({element:nt.fromDom(P)})])})}})]).getOr([]),QA=a=>aO.DOM.encode(a),OR=(a,f)=>{const g=qf.translate(a),O=QA(g);if(f.length>0){const x=new RegExp(K7(f),"gi");return O.replace(x,P=>`${P}`)}else return O},yR=(a,f,g,O,x,P,I,Q=!0)=>{const U=fO({presets:O,textContent:q.none(),htmlContent:g?a.text.map(ee=>OR(ee,f)):q.none(),ariaLabel:a.text,iconContent:a.icon,shortcutContent:q.none(),checkMark:q.none(),caret:q.none(),value:a.value},I.providers,Q,a.icon);return jg({data:j1(a),enabled:a.enabled,getApi:ne({}),onAction:ee=>x(a.value,a.meta),onSetup:ne(j),triggersSubmenu:!1,itemBehaviours:vR(a.meta,I)},U,P,I.providers)},VA=(a,f)=>Fe(a,g=>{switch(g.type){case"cardcontainer":return Ur(g,VA(g.items,f));case"cardimage":return p_(g.src,g.classes,g.alt);case"cardtext":const x=g.name.exists(P=>ct(f.cardText.highlightOn,P))?q.from(f.cardText.matchText).getOr(""):"";return bR(OR(g.text,x),g.classes)}}),zA=(a,f,g,O)=>{const x=I=>({isEnabled:()=>!ko.isDisabled(I),setEnabled:Q=>{ko.set(I,!Q),mt(Ua(I.element,"*"),U=>{I.getSystem().getByDom(U).each(ee=>{ee.hasConfigured(ko)&&ko.set(ee,!Q)})})}}),P={dom:FA(a.label),optComponents:[q.some({dom:{tag:"div",classes:[PD,DD]},components:VA(a.items,O)})]};return jg({data:j1({text:q.none(),...a}),enabled:a.enabled,getApi:x,onAction:a.onAction,onSetup:a.onSetup,triggersSubmenu:!1,itemBehaviours:q.from(O.itemBehaviours).getOr([])},P,f,g.providers)},_R=(a,f,g,O,x,P,I,Q=!0)=>{const U=se=>({setActive:he=>{hs.set(se,he)},isActive:()=>hs.isOn(se),isEnabled:()=>!ko.isDisabled(se),setEnabled:he=>ko.set(se,!he)}),ee=fO({presets:g,textContent:f?a.text:q.none(),htmlContent:q.none(),ariaLabel:a.text,iconContent:a.icon,shortcutContent:f?a.shortcut:q.none(),checkMark:f?q.some(m_(I.icons)):q.none(),caret:q.none(),value:a.value},I,Q);return lr(jg({data:j1(a),enabled:a.enabled,getApi:U,onAction:se=>O(a.value),onSetup:se=>(se.setActive(x),j),triggersSubmenu:!1,itemBehaviours:[]},ee,P,I),{toggling:{toggleClass:TD,toggleOnExecute:!1,selected:a.active,exclusive:!0}})},US=wp(wS(),SS()),wR=a=>({value:xR(a)}),SR=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,CR=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,kR=a=>SR.test(a)||CR.test(a),xR=a=>sr(a,"#").toUpperCase(),ER=a=>kR(a)?q.some({value:xR(a)}):q.none(),oF=a=>({value:a.value.replace(SR,(g,O,x,P)=>O+O+x+x+P+P)}),sF=a=>{const f=oF(a),g=CR.exec(f.value);return g===null?["FFFFFF","FF","FF","FF"]:g},$k=a=>{const f=a.toString(16);return(f.length===1?"0"+f:f).toUpperCase()},g_=a=>{const f=$k(a.red)+$k(a.green)+$k(a.blue);return wR(f)},TR=Math.min,AR=Math.max,qS=Math.round,$R=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,PR=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,m0=(a,f,g,O)=>({red:a,green:f,blue:g,alpha:O}),WA=a=>{const f=parseInt(a,10);return f.toString()===a&&f>=0&&f<=255},DR=a=>{let f,g,O;const x=(a.hue||0)%360;let P=a.saturation/100,I=a.value/100;if(P=AR(0,TR(P,1)),I=AR(0,TR(I,1)),P===0)return f=g=O=qS(255*I),m0(f,g,O,1);const Q=x/60,U=I*P,ee=U*(1-Math.abs(Q%2-1)),se=I-U;switch(Math.floor(Q)){case 0:f=U,g=ee,O=0;break;case 1:f=ee,g=U,O=0;break;case 2:f=0,g=U,O=ee;break;case 3:f=0,g=ee,O=U;break;case 4:f=ee,g=0,O=U;break;case 5:f=U,g=0,O=ee;break;default:f=g=O=0}return f=qS(255*(f+se)),g=qS(255*(g+se)),O=qS(255*(O+se)),m0(f,g,O,1)},XS=a=>{const f=sF(a),g=parseInt(f[1],16),O=parseInt(f[2],16),x=parseInt(f[3],16);return m0(g,O,x,1)},RR=(a,f,g,O)=>{const x=parseInt(a,10),P=parseInt(f,10),I=parseInt(g,10),Q=parseFloat(O);return m0(x,P,I,Q)},ZA=a=>{if(a==="transparent")return q.some(m0(0,0,0,0));const f=$R.exec(a);if(f!==null)return q.some(RR(f[1],f[2],f[3],"1"));const g=PR.exec(a);return g!==null?q.some(RR(g[1],g[2],g[3],g[4])):q.none()},UA=a=>`rgba(${a.red},${a.green},${a.blue},${a.alpha})`,zh=m0(255,0,0,1),rF=a=>{a.dispatch("SkinLoaded")},qA=(a,f)=>{a.dispatch("SkinLoadError",f)},MR=a=>{a.dispatch("ResizeEditor")},Pk=(a,f)=>{a.dispatch("ResizeContent",f)},iF=(a,f)=>{a.dispatch("ScrollContent",f)},XA=(a,f)=>{a.dispatch("TextColorChange",f)},NR=(a,f)=>{a.dispatch("AfterProgressState",{state:f})},IR=(a,f)=>a.dispatch("ResolveName",{name:f.nodeName.toLowerCase(),target:f}),aF=(a,f)=>{a.dispatch("ToggleToolbarDrawer",{state:f})},lF=(a,f)=>{a.dispatch("StylesTextUpdate",f)},cF=(a,f)=>{a.dispatch("AlignTextUpdate",f)},uF=(a,f)=>{a.dispatch("FontSizeTextUpdate",f)},dF=(a,f)=>{a.dispatch("FontSizeInputTextUpdate",f)},BR=(a,f)=>{a.dispatch("BlocksTextUpdate",f)},LR=(a,f)=>{a.dispatch("FontFamilyTextUpdate",f)},jS=(a,f)=>()=>{a(),f()},Lu=a=>Mm(a,"NodeChange",f=>{f.setEnabled(a.selection.isEditable())}),fF=(a,f)=>g=>{const O=Rh(),x=()=>{g.setActive(a.formatter.match(f));const P=a.formatter.formatChanged(f,g.setActive);O.set(P)};return a.initialized?x():a.once("init",x),()=>{a.off("init",x),O.clear()}},Dk=(a,f)=>g=>{const O=Lu(a)(g),x=fF(a,f)(g);return()=>{O(),x()}},Mm=(a,f,g)=>O=>{const x=()=>g(O),P=()=>{g(O),a.on(f,x)};return a.initialized?P():a.once("init",P),()=>{a.off("init",P),a.off(f,x)}},FR=a=>f=>()=>{a.undoManager.transact(()=>{a.focus(),a.execCommand("mceToggleFormat",!1,f.format)})},Vd=(a,f)=>()=>a.execCommand(f);var p0=tinymce.util.Tools.resolve("tinymce.util.LocalStorage");const jA={},YA=(a,f=10)=>{const g=p0.getItem(a),O=p(g)?JSON.parse(g):[],P=(ee=>f-ee.length<0?ee.slice(0,f):ee)(O),I=ee=>{Ue(P,ee).each(Q),P.unshift(ee),P.length>f&&P.pop(),p0.setItem(a,JSON.stringify(P))},Q=ee=>{P.splice(ee,1)};return{add:I,state:()=>P.slice(0)}},Rk=a=>nn(jA,a).getOrThunk(()=>{const f=`tinymce-custom-colors-${a}`,g=p0.getItem(f);if(F(g)){const x=p0.getItem("tinymce-custom-colors");p0.setItem(f,V(x)?x:"[]")}const O=YA(f,10);return jA[a]=O,O}),GA=a=>Fe(Rk(a).state(),f=>({type:"choiceitem",text:f,icon:"checkmark",value:f})),KA=(a,f)=>{Rk(a).add(f)},YS=(a,f,g)=>({hue:a,saturation:f,value:g}),Mk=a=>{let f=0,g=0,O=0;const x=a.red/255,P=a.green/255,I=a.blue/255,Q=Math.min(x,Math.min(P,I)),U=Math.max(x,Math.max(P,I));if(Q===U)return O=Q,YS(0,0,O*100);const ee=x===Q?P-I:I===Q?x-P:I-x;return f=x===Q?3:I===Q?1:5,f=60*(f-ee/(U-Q)),g=(U-Q)/U,O=U,YS(Math.round(f),Math.round(g*100),Math.round(O*100))},hF=a=>Mk(XS(a)),HR=a=>g_(DR(a)),mF=a=>ER(a).orThunk(()=>ZA(a).map(g_)).getOrThunk(()=>{const f=document.createElement("canvas");f.height=1,f.width=1;const g=f.getContext("2d");g.clearRect(0,0,f.width,f.height),g.fillStyle="#FFFFFF",g.fillStyle=a,g.fillRect(0,0,1,1);const O=g.getImageData(0,0,1,1).data,x=O[0],P=O[1],I=O[2],Q=O[3];return g_(m0(x,P,I,Q))}),Nk="forecolor",Ik="hilitecolor",QR=5,pF=a=>{const f=[];for(let g=0;gf=>f.options.get(a),JA="#000000",gF=a=>{const f=a.options.register,g=x=>te(x,p)?{value:pF(x),valid:!0}:{valid:!1,message:"Must be an array of strings."},O=x=>J(x)&&x>0?{value:x,valid:!0}:{valid:!1,message:"Must be a positive number."};f("color_map",{processor:g,default:["#BFEDD2","Light Green","#FBEEB8","Light Yellow","#F8CAC6","Light Red","#ECCAFA","Light Purple","#C2E0F4","Light Blue","#2DC26B","Green","#F1C40F","Yellow","#E03E2D","Red","#B96AD9","Purple","#3598DB","Blue","#169179","Dark Turquoise","#E67E23","Orange","#BA372A","Dark Red","#843FA1","Dark Purple","#236FA1","Dark Blue","#ECF0F1","Light Gray","#CED4D9","Medium Gray","#95A5A6","Gray","#7E8C8D","Dark Gray","#34495E","Navy Blue","#000000","Black","#ffffff","White"]}),f("color_map_background",{processor:g}),f("color_map_foreground",{processor:g}),f("color_cols",{processor:O,default:e3(a)}),f("color_cols_foreground",{processor:O,default:VR(a,Nk)}),f("color_cols_background",{processor:O,default:VR(a,Ik)}),f("custom_colors",{processor:"boolean",default:!0}),f("color_default_foreground",{processor:"string",default:JA}),f("color_default_background",{processor:"string",default:JA})},Bk=(a,f)=>f===Nk&&a.options.isSet("color_map_foreground")?Yg("color_map_foreground")(a):f===Ik&&a.options.isSet("color_map_background")?Yg("color_map_background")(a):Yg("color_map")(a),e3=(a,f="default")=>Math.max(QR,Math.ceil(Math.sqrt(Bk(a,f).length))),VR=(a,f)=>{const g=Yg("color_cols")(a),O=e3(a,f);return g===e3(a)?O:g},zR=(a,f="default")=>Math.round(f===Nk?Yg("color_cols_foreground")(a):f===Ik?Yg("color_cols_background")(a):Yg("color_cols")(a)),WR=Yg("custom_colors"),bF=Yg("color_default_foreground"),vF=Yg("color_default_background"),ZR="rgba(0, 0, 0, 0)",OF=a=>ZA(a).exists(f=>f.alpha!==0),yF=a=>Cl(a,f=>{if(Ls(f)){const g=Or(f,"background-color");return an(OF(g),g)}else return q.none()}).getOr(ZR),UR=(a,f)=>{const g=nt.fromDom(a.selection.getStart()),O=f==="hilitecolor"?yF(g):Or(g,"color");return ZA(O).map(x=>"#"+g_(x).value)},_F=(a,f,g)=>{a.undoManager.transact(()=>{a.focus(),a.formatter.apply(f,{value:g}),a.nodeChanged()})},wF=(a,f)=>{a.undoManager.transact(()=>{a.focus(),a.formatter.remove(f,{value:null},void 0,!0),a.nodeChanged()})},Lk=a=>{a.addCommand("mceApplyTextcolor",(f,g)=>{_F(a,f,g)}),a.addCommand("mceRemoveTextcolor",f=>{wF(a,f)})},t3=a=>{const f="choiceitem",g={type:f,text:"Remove color",icon:"color-swatch-remove-color",value:"remove"};return a?[g,{type:f,text:"Custom color",icon:"color-picker",value:"custom"}]:[g]},n3=(a,f,g,O)=>{g==="custom"?YR(a)(P=>{P.each(I=>{KA(f,I),a.execCommand("mceApplyTextcolor",f,I),O(I)})},UR(a,f).getOr(JA)):g==="remove"?(O(""),a.execCommand("mceRemoveTextcolor",f)):(O(g),a.execCommand("mceApplyTextcolor",f,g))},o3=(a,f,g)=>a.concat(GA(f).concat(t3(g))),qR=(a,f,g)=>O=>{O(o3(a,f,g))},s3=(a,f,g)=>{const O=f==="forecolor"?"tox-icon-text-color__color":"tox-icon-highlight-bg-color__color";a.setIconFill(O,g)},XR=(a,f)=>{a.setTooltip(f)},jR=(a,f)=>g=>{const O=UR(a,f);return Qe(O,g.toUpperCase())},GS=(a,f,g)=>{if(Xe(g))return f==="forecolor"?"Text color":"Background color";const O=f==="forecolor"?"Text color {0}":"Background color {0}",x=o3(Bk(a,f),f,!1),P=gt(x,I=>I.value===g).getOr({text:""}).text;return a.translate([O,a.translate(P)])},r3=(a,f,g,O)=>{a.ui.registry.addSplitButton(f,{tooltip:GS(a,g,O.get()),presets:"color",icon:f==="forecolor"?"text-color":"highlight-bg-color",select:jR(a,g),columns:zR(a,g),fetch:qR(Bk(a,g),g,WR(a)),onAction:x=>{n3(a,g,O.get(),j)},onItemAction:(x,P)=>{n3(a,g,P,I=>{O.set(I),XA(a,{name:f,color:I})})},onSetup:x=>{s3(x,f,O.get());const P=I=>{I.name===f&&(s3(x,I.name,I.color),XR(x,GS(a,g,I.color)))};return a.on("TextColorChange",P),jS(Lu(a)(x),()=>{a.off("TextColorChange",P)})}})},i3=(a,f,g,O,x)=>{a.ui.registry.addNestedMenuItem(f,{text:O,icon:f==="forecolor"?"text-color":"highlight-bg-color",onSetup:P=>(XR(P,GS(a,g,x.get())),s3(P,f,x.get()),Lu(a)(P)),getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"colorswatch",select:jR(a,g),initData:{storageKey:g},onAction:P=>{n3(a,g,P.value,I=>{x.set(I),XA(a,{name:f,color:I})})}}]})},YR=a=>(f,g)=>{let O=!1;const x=Q=>{const ee=Q.getData().colorpicker;O?(f(q.from(ee)),Q.close()):a.windowManager.alert(a.translate(["Invalid hex color code: {0}",ee]))},P=(Q,U)=>{U.name==="hex-valid"&&(O=U.value)},I={colorpicker:g};a.windowManager.open({title:"Color Picker",size:"normal",body:{type:"panel",items:[{type:"colorpicker",name:"colorpicker",label:"Color"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:I,onAction:P,onSubmit:x,onClose:j,onCancel:()=>{f(q.none())}})},GR=a=>{Lk(a);const f=bF(a),g=vF(a),O=bo(f),x=bo(g);r3(a,"forecolor","forecolor",O),r3(a,"backcolor","hilitecolor",x),i3(a,"forecolor","forecolor","Text color",O),i3(a,"backcolor","hilitecolor","Background color",x)},a3=(a,f,g,O,x,P,I,Q)=>{const U=Ok(f),se=SF(f,g,O,x!=="color"?"normal":"color",P,I,Q);return yk(a,U,se,O,{menuType:x})},SF=(a,f,g,O,x,P,I)=>wt(Fe(a,Q=>Q.type==="choiceitem"?lR(Q).fold(Zg,U=>q.some(_R(U,g===1,O,f,P(U.value),x,I,Ok(a)))):q.none())),Fk=(a,f)=>{const g=q1(f);return a===1?{mode:"menu",moveOnTab:!0}:a==="auto"?{mode:"grid",selector:"."+g.item,initSize:{numColumns:1,numRows:1}}:{mode:"matrix",rowSelector:"."+(f==="color"?"tox-swatches__row":"tox-collection__group"),previousSelector:x=>f==="color"?oa(x.element,"[aria-checked=true]"):q.none()}},CF=(a,f)=>a===1?{mode:"menu",moveOnTab:!1,selector:".tox-collection__item"}:a==="auto"?{mode:"flatgrid",selector:".tox-collection__item",initSize:{numColumns:1,numRows:1}}:{mode:"matrix",selectors:{row:f==="color"?".tox-swatches__row":".tox-collection__group",cell:f==="color"?`.${hA}`:`.${r_}`}},kF=(a,f)=>{const g=xF(a,f),O=f.colorinput.getColorCols(a.initData.storageKey),x="color",I={...a3(Vn("menu-value"),g,Q=>{a.onAction({value:Q})},O,x,Pp.CLOSE_ON_EXECUTE,a.select.getOr(Tt),f.shared.providers),markers:q1(x),movement:Fk(O,x)};return{type:"widget",data:{value:Vn("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[US.widget(oO.sketch(I))]}},xF=(a,f)=>{const g=a.initData.allowCustomColors&&f.colorinput.hasCustomColors();return a.initData.colors.fold(()=>o3(f.colorinput.getColors(a.initData.storageKey),a.initData.storageKey,g),O=>O.concat(t3(g)))},KR=Vn("cell-over"),JR=Vn("cell-execute"),EF=a=>(f,g)=>a.shared.providers.translate(["{0} columns, {1} rows",g,f]),TF=(a,f,g)=>{const O=I=>ho(I,KR,{row:a,col:f}),x=I=>ho(I,JR,{row:a,col:f}),P=(I,Q)=>{Q.stop(),x(I)};return Ql({dom:{tag:"div",attributes:{role:"button","aria-label":g}},behaviours:On([ss("insert-table-picker-cell",[qt(kd(),Ao.focus),qt(au(),x),qt(lf(),P),qt(Ed(),P)]),hs.config({toggleClass:"tox-insert-table-picker__selected",toggleOnExecute:!1}),Ao.config({onFocus:O})])})},Hk=(a,f,g)=>{const O=[];for(let x=0;x{for(let P=0;PNe(a,f=>Fe(f,cu)),u3=(a,f)=>Xi(`${f}x${a}`),AF={inserttable:(a,f)=>{const x=EF(f),P=Hk(x,10,10),I=u3(0,0),Q=Ar({dom:{tag:"span",classes:["tox-insert-table-picker__label"]},components:[I],behaviours:On([Yo.config({})])});return{type:"widget",data:{value:Vn("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[US.widget({dom:{tag:"div",classes:["tox-insert-table-picker"]},components:c3(P).concat(Q.asSpec()),behaviours:On([ss("insert-table-picker",[xr(U=>{Yo.set(Q.get(U),[I])}),V0(KR,(U,ee,se)=>{const{row:he,col:be}=se.event;l3(P,he,be,10,10),Yo.set(Q.get(U),[u3(he+1,be+1)])}),V0(JR,(U,ee,se)=>{const{row:he,col:be}=se.event;a.onAction({numRows:he+1,numColumns:be+1}),gs(U,f1())})]),vo.config({initSize:{numRows:10,numColumns:10},mode:"flatgrid",selector:'[role="button"]'})])})]}},colorswatch:kF},d3=(a,f)=>nn(AF,a.fancytype).map(g=>g(a,f)),f3=(a,f,g,O=!0,x=!1)=>{const P=x?nF(g.icons):Rm(g.icons),I=U=>({isEnabled:()=>!ko.isDisabled(U),setEnabled:ee=>ko.set(U,!ee),setIconFill:(ee,se)=>{oa(U.element,`svg path[class="${ee}"], rect[class="${ee}"]`).each(he=>{Mn(he,"fill",se)})},setTooltip:ee=>{const se=g.translate(ee);fd(U.element,{"aria-label":se,title:se})}}),Q=fO({presets:"normal",iconContent:a.icon,textContent:a.text,htmlContent:q.none(),ariaLabel:a.text,caret:q.some(P),checkMark:q.none(),shortcutContent:a.shortcut},g,O);return jg({data:j1(a),getApi:I,enabled:a.enabled,onAction:j,onSetup:a.onSetup,triggersSubmenu:!0,itemBehaviours:[]},Q,f,g)},Qk=(a,f,g,O=!0)=>{const x=I=>({isEnabled:()=>!ko.isDisabled(I),setEnabled:Q=>ko.set(I,!Q)}),P=fO({presets:"normal",iconContent:a.icon,textContent:a.text,htmlContent:q.none(),ariaLabel:a.text,caret:q.none(),checkMark:q.none(),shortcutContent:a.shortcut},g,O);return jg({data:j1(a),getApi:x,enabled:a.enabled,onAction:a.onAction,onSetup:a.onSetup,triggersSubmenu:!1,itemBehaviours:[]},P,f,g)},eM=a=>({type:"separator",dom:{tag:"div",classes:[r_,b7]},components:a.text.map(Xi).toArray()}),$F=(a,f,g,O=!0)=>{const x=I=>({setActive:Q=>{hs.set(I,Q)},isActive:()=>hs.isOn(I),isEnabled:()=>!ko.isDisabled(I),setEnabled:Q=>ko.set(I,!Q)}),P=fO({iconContent:a.icon,textContent:a.text,htmlContent:q.none(),ariaLabel:a.text,checkMark:q.some(m_(g.icons)),caret:q.none(),shortcutContent:a.shortcut,presets:"normal",meta:a.meta},g,O);return lr(jg({data:j1(a),enabled:a.enabled,getApi:x,onAction:a.onAction,onSetup:a.onSetup,triggersSubmenu:!1,itemBehaviours:[]},P,f,g),{toggling:{toggleClass:TD,toggleOnExecute:!1,selected:a.active}})},PF=yR,tM=eM,DF=Qk,RF=f3,MF=$F,NF=d3,IF=zA;var BF=Object.freeze({__proto__:null,getCoupled:(a,f,g,O)=>g.getOrCreate(a,f,O),getExistingCoupled:(a,f,g,O)=>g.getExisting(a,f,O)}),LF=[Sl("others",sf(Zo.value,ea()))],nM=Object.freeze({__proto__:null,init:()=>{const a={},f=(P,I)=>{if(Ts(P.others).length===0)throw new Error("Cannot find any known coupled components");return nn(a,I)},g=(P,I,Q)=>f(I,Q).getOrThunk(()=>{const ee=nn(I.others,Q).getOrDie("No information found for coupled component: "+Q)(P),se=P.getSystem().build(ee);return a[Q]=se,se}),O=(P,I,Q)=>f(I,Q).orThunk(()=>(nn(I.others,Q).getOrDie("No information found for coupled component: "+Q),q.none())),x=ne({});return Hl({readState:x,getExisting:O,getOrCreate:g})}});const Sa=Za({fields:LF,name:"coupling",apis:BF,state:nM}),h3=a=>{let f=q.none(),g=[];const O=ee=>h3(se=>{x(he=>{se(ee(he))})}),x=ee=>{I()?U(ee):g.push(ee)},P=ee=>{I()||(f=q.some(ee),Q(g),g=[])},I=()=>f.isSome(),Q=ee=>{mt(ee,U)},U=ee=>{f.each(se=>{setTimeout(()=>{ee(se)},0)})};return a(P),{get:x,map:O,isReady:I}},FF={nu:h3,pure:a=>h3(f=>{f(a)})},HF=a=>{setTimeout(()=>{throw a},0)},g0=a=>{const f=U=>{a().then(U,HF)};return{map:U=>g0(()=>a().then(U)),bind:U=>g0(()=>a().then(ee=>U(ee).toPromise())),anonBind:U=>g0(()=>a().then(()=>U.toPromise())),toLazy:()=>FF.nu(f),toCached:()=>{let U=null;return g0(()=>(U===null&&(U=a()),U))},toPromise:a,get:f}},Xc={nu:a=>g0(()=>new Promise(a)),pure:a=>g0(()=>Promise.resolve(a))},oM=ne("sink"),sM=ne(Mu({name:oM(),overrides:ne({dom:{tag:"div"},behaviours:On([Oc.config({useFixed:St})]),events:kr([_h(Eu()),_h(_s()),_h(lf())])})})),rM=(a,f)=>{const g=a.getHotspot(f).getOr(f),O="hotspot",x=a.getAnchorOverrides();return a.layouts.fold(()=>({type:O,hotspot:g,overrides:x}),P=>({type:O,hotspot:g,overrides:x,layouts:P}))},QF=(a,f,g)=>{const O=a.fetch;return O(g).map(f)},VF=(a,f,g,O,x,P,I)=>{const Q=QF(a,f,O),U=iM(O,a);return Q.map(ee=>ee.bind(se=>q.from(d0.sketch({...P.menu(),uid:ag(""),data:se,highlightOnOpen:I,onOpenMenu:(he,be)=>{const we=U().getOrDie();Oc.position(we,be,{anchor:g}),Is.decloak(x)},onOpenSubmenu:(he,be,we)=>{const Re=U().getOrDie();Oc.position(Re,we,{anchor:{type:"submenu",item:be}}),Is.decloak(x)},onRepositionMenu:(he,be,we)=>{const Re=U().getOrDie();Oc.position(Re,be,{anchor:g}),mt(we,Je=>{Oc.position(Re,Je.triggeredMenu,{anchor:{type:"submenu",item:Je.triggeringItem}})})},onEscape:()=>(Ao.focus(O),Is.close(x),q.some(!0))}))))},Vk=(a,f,g,O,x,P,I)=>{const Q=rM(a,g);return VF(a,f,Q,g,O,x,I).map(ee=>(ee.fold(()=>{Is.isOpen(O)&&Is.close(O)},se=>{Is.cloak(O),Is.open(O,se),P(O)}),O))},zF=(a,f,g,O,x,P,I)=>(Is.close(O),Xc.pure(O)),m3=(a,f,g,O,x,P)=>{const I=Sa.getCoupled(g,"sandbox");return(Is.isOpen(I)?zF:Vk)(a,f,g,I,O,x,P)},WF=(a,f,g)=>{const O=Ds.getCurrent(f).getOr(f),x=Ii(a.element);g?Wn(O.element,"min-width",x+"px"):Os(O.element,x)},iM=(a,f)=>a.getSystem().getByUid(f.uid+"-"+oM()).map(g=>()=>Zo.value(g)).getOrThunk(()=>f.lazySink.fold(()=>()=>Zo.error(new Error("No internal sink is specified, nor could an external sink be found")),g=>()=>g(a))),aM=a=>{Is.getState(a).each(f=>{d0.repositionMenus(f)})},p3=(a,f,g)=>{const O=up(),x=(Q,U)=>{const ee=rM(a,f);O.link(f.element),a.matchWidth&&WF(ee.hotspot,U,a.useMinWidth),a.onOpen(ee,Q,U),g!==void 0&&g.onOpen!==void 0&&g.onOpen(Q,U)},P=(Q,U)=>{O.unlink(f.element),g!==void 0&&g.onClose!==void 0&&g.onClose(Q,U)},I=iM(f,a);return{dom:{tag:"div",classes:a.sandboxClasses,attributes:{id:O.id,role:"listbox"}},behaviours:gf.augment(a.sandboxBehaviours,[Ln.config({store:{mode:"memory",initialValue:f}}),Is.config({onOpen:x,onClose:P,isPartOf:(Q,U,ee)=>Ah(U,ee)||Ah(f,ee),getAttachPoint:()=>I().getOrDie()}),Ds.config({find:Q=>Is.getState(Q).bind(U=>Ds.getCurrent(U))}),Wc.config({channels:{...Iv({isExtraPart:Tt}),...Gb({doReposition:aM})}})])}},lM=a=>{const f=Sa.getCoupled(a,"sandbox");aM(f)},g3=()=>[_t("sandboxClasses",[]),gf.field("sandboxBehaviours",[Ds,Wc,Is,Ln])],ZF=ne([Gt("dom"),Gt("fetch"),Ps("onOpen"),fu("onExecute"),_t("getHotspot",q.some),_t("getAnchorOverrides",ne({})),ym(),il("dropdownBehaviours",[hs,Sa,vo,Ao]),Gt("toggleClass"),_t("eventOrder",{}),er("lazySink"),_t("matchWidth",!1),_t("useMinWidth",!1),er("role")].concat(g3())),UF=ne([Wf({schema:[y1(),_t("fakeFocus",!1)],name:"menu",defaults:a=>({onExecute:a.onExecute})}),sM()]),qF=(a,f,g,O)=>{const x=se=>nn(a.dom,"attributes").bind(he=>nn(he,se)),P=se=>{Is.getState(se).each(he=>{d0.highlightPrimary(he)})},I=(se,he,be)=>m3(a,Se,se,O,he,be),Q=se=>{I(se,P,Bu.HighlightMenuAndItem).get(j)},U={expand:se=>{hs.isOn(se)||I(se,j,Bu.HighlightNone).get(j)},open:se=>{hs.isOn(se)||I(se,j,Bu.HighlightMenuAndItem).get(j)},refetch:se=>Sa.getExistingCoupled(se,"sandbox").fold(()=>I(se,j,Bu.HighlightMenuAndItem).map(j),be=>Vk(a,Se,se,be,O,j,Bu.HighlightMenuAndItem).map(j)),isOpen:hs.isOn,close:se=>{hs.isOn(se)&&I(se,j,Bu.HighlightMenuAndItem).get(j)},repositionMenus:se=>{hs.isOn(se)&&lM(se)}},ee=(se,he)=>(Td(se),q.some(!0));return{uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.dropdownBehaviours,[hs.config({toggleClass:a.toggleClass,aria:{mode:"expanded"}}),Sa.config({others:{sandbox:se=>p3(a,se,{onOpen:()=>hs.on(se),onClose:()=>hs.off(se)})}}),vo.config({mode:"special",onSpace:ee,onEnter:ee,onDown:(se,he)=>{if(Wh.isOpen(se)){const be=Sa.getCoupled(se,"sandbox");P(be)}else Wh.open(se);return q.some(!0)},onEscape:(se,he)=>Wh.isOpen(se)?(Wh.close(se),q.some(!0)):q.none()}),Ao.config({})]),events:Tp(q.some(Q)),eventOrder:{...a.eventOrder,[au()]:["disabling","toggling","alloy.base.behaviour"]},apis:U,domModification:{attributes:{"aria-haspopup":"true",...a.role.fold(()=>({}),se=>({role:se})),...a.dom.tag==="button"?{type:x("type").getOr("button")}:{}}}}},Wh=_c({name:"Dropdown",configFields:ZF(),partFields:UF(),factory:qF,apis:{open:(a,f)=>a.open(f),refetch:(a,f)=>a.refetch(f),expand:(a,f)=>a.expand(f),close:(a,f)=>a.close(f),isOpen:(a,f)=>a.isOpen(f),repositionMenus:(a,f)=>a.repositionMenus(f)}}),XF=a=>{switch(a.searchMode){case"no-search":return{menuType:"normal"};default:return{menuType:"searchable",searchMode:a}}},jF=a=>{const f=Ln.getValue(a),g=gk(a).map(LD);Wh.refetch(f).get(()=>{const O=Sa.getCoupled(f,"sandbox");g.each(x=>gk(O).each(P=>yA(P,x)))})},YF=(a,f)=>{GF(a).each(g=>{tw(a,g.element,f.event.eventType,f.event.interactionEvent)})},GF=a=>Is.getState(a).bind(ur.getHighlighted).bind(ur.getHighlighted),KF=a=>Aa(a.element,bk)?q.some(a.element):oa(a.element,"."+bk),b3=(a,f,g)=>{OA(a).each(O=>{_A(O,g),KF(f).each(P=>{me(P,"id").each(I=>Mn(O.element,"aria-controls",I))})}),Mn(g.element,"aria-selected","true")},JF=(a,f,g)=>{Mn(g.element,"aria-selected","false")},e8=a=>{OA(a).each(f=>Ao.focus(f))},t8=a=>Sa.getExistingCoupled(a,"sandbox").bind(gk).map(LD).map(g=>g.fetchPattern).getOr("");var KS;(function(a){a[a.ContentFocus=0]="ContentFocus",a[a.UiFocus=1]="UiFocus"})(KS||(KS={}));const n8=(a,f,g,O,x)=>{const P=g.shared.providers,I=Q=>x?{...Q,shortcut:q.none(),icon:Q.text.isSome()?q.none():Q.icon}:Q;switch(a.type){case"menuitem":return uR(a).fold(Zg,Q=>q.some(DF(I(Q),f,P,O)));case"nestedmenuitem":return Z7(a).fold(Zg,Q=>q.some(RF(I(Q),f,P,O,x)));case"togglemenuitem":return q7(a).fold(Zg,Q=>q.some(MF(I(Q),f,P,O)));case"separator":return $A(a).fold(Zg,Q=>q.some(tM(Q)));case"fancymenuitem":return z7(a).fold(Zg,Q=>NF(Q,g));default:return console.error("Unknown item in general menu",a),q.none()}},o8=(a,f,g,O,x,P,I)=>{const Q=O===1,U=!Q||Ok(a);return wt(Fe(a,ee=>{switch(ee.type){case"separator":return $7(ee).fold(Zg,se=>q.some(tM(se)));case"cardmenuitem":return iR(ee).fold(Zg,se=>q.some(IF({...se,onAction:he=>{se.onAction(he),g(se.value,se.meta)}},x,P,{itemBehaviours:vR(se.meta,P),cardText:{matchText:f,highlightOn:I}})));case"autocompleteitem":default:return YD(ee).fold(Zg,se=>q.some(PF(se,f,Q,"normal",g,x,P,U)))}}))},cM=(a,f,g,O,x,P)=>{const I=Ok(f),Q=wt(Fe(f,se=>{const he=we=>x?!ns(we,"text"):I,be=we=>n8(we,g,O,he(we),x);return se.type==="nestedmenuitem"&&se.getSubmenuItems().length<=0?be({...se,enabled:!1}):be(se)})),U=XF(P);return(x?HS:yk)(a,I,Q,1,U)},zk=a=>d0.singleData(a.value,a),s8=(a,f,g,O)=>{const x=Fk(f,O),P=q1(O);return{data:zk({...a,movement:x,menuBehaviours:WS.unnamedEvents(f!=="auto"?[]:[xr((I,Q)=>{MA(I,4,P.item).each(({numColumns:U,numRows:ee})=>{vo.setGridSize(I,ee,U)})})])}),menu:{markers:q1(O),fakeFocus:g===KS.ContentFocus}}},r8=(a,f)=>uA(nt.fromDom(f.startContainer)).map(g=>{const O=a.createRng();return O.selectNode(g.dom),O}),i8={register:(a,f)=>{const g=Vn("autocompleter"),O=bo(!1),x=bo(!1),P=Ql(Yi.sketch({dom:{tag:"div",classes:["tox-autocompleter"],attributes:{id:g}},components:[],fireDismissalEventInstead:{},inlineBehaviours:On([ss("dismissAutocompleter",[qt(Oh(),()=>se()),qt(eg(),(Ct,at)=>{me(at.event.target,"id").each(st=>Mn(nt.fromDom(a.getBody()),"aria-activedescendant",st))})])]),lazySink:f.getSink})),I=()=>Yi.isOpen(P),Q=x.get,U=()=>{if(I()){Yi.hide(P),a.dom.remove(g,!1);const Ct=nt.fromDom(a.getBody());me(Ct,"aria-owns").filter(at=>at===g).each(()=>{We(Ct,"aria-owns"),We(Ct,"aria-activedescendant")})}},ee=()=>Yi.getContent(P).bind(Ct=>Gn(Ct.components(),0)),se=()=>a.execCommand("mceAutocompleterClose"),he=Ct=>{const at=Vs(Ct,st=>q.from(st.columns)).getOr(1);return Ne(Ct,st=>{const Ot=st.items;return o8(Ot,st.matchText,(hn,jt)=>{const Wt=a.selection.getRng();r8(a.dom,Wt).each(yn=>{const An={hide:()=>se(),reload:rs=>{U(),a.execCommand("mceAutocompleterReload",!1,{fetchOptions:rs})}};O.set(!0),st.onAction(An,yn,hn,jt),O.set(!1)})},at,Pp.BUBBLE_TO_SANDBOX,f,st.highlightOn)})},be=(Ct,at)=>{m7(nt.fromDom(a.getBody())).each(st=>{const Ot=Vs(Ct,hn=>q.from(hn.columns)).getOr(1);Yi.showMenuAt(P,{anchor:{type:"node",root:nt.fromDom(a.getBody()),node:q.from(st)}},s8(yk("autocompleter-value",!0,at,Ot,{menuType:"normal"}),Ot,KS.ContentFocus,"normal"))}),ee().each(ur.highlightFirst)},we=Ct=>{const at=he(Ct);at.length>0?(be(Ct,at),Mn(nt.fromDom(a.getBody()),"aria-owns",g),a.inline||Re()):U()},Re=()=>{a.dom.get(g)&&a.dom.remove(g,!1);const Ct=a.getDoc().documentElement,at=a.selection.getNode(),st=BO(P.element);Lr(st,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px",top:`${at.offsetTop}px`,left:`${at.offsetLeft}px`}),a.dom.add(Ct,st.dom),oa(st,'[role="menu"]').each(Ot=>{Jo(Ot,"position"),Jo(Ot,"max-height")})};a.on("AutocompleterStart",({lookupData:Ct})=>{x.set(!0),O.set(!1),we(Ct)}),a.on("AutocompleterUpdate",({lookupData:Ct})=>we(Ct)),a.on("AutocompleterEnd",()=>{U(),x.set(!1),O.set(!1)});const Je={cancelIfNecessary:se,isMenuOpen:I,isActive:Q,isProcessingAction:O.get,getMenu:ee};p7.setup(Je,a)}},uM=["visible","hidden","clip"],dM=a=>mi(a).length>0&&!ct(uM,a),v3=a=>{if(Ac(a)){const f=Or(a,"overflow-x"),g=Or(a,"overflow-y");return dM(f)||dM(g)}else return!1},a8=a=>{const f=_y(a,v3),g=f.length===0?ar(a).map(Ko).map(O=>_y(O,v3)).getOr([]):f;return as(g).map(O=>({element:O,others:g.slice(1)}))},b0=(a,f)=>zg(a)?a8(f):q.none(),b_=a=>{const f=[...Fe(a.others,Rr),Ea()];return Wp(Rr(a.element),f)},JS=(a,f,g)=>uf(a,f,g).isSome(),fM=(a,f)=>{let g=null;return{cancel:()=>{g!==null&&(clearTimeout(g),g=null)},schedule:(...P)=>{g=setTimeout(()=>{a.apply(null,P),g=null},f)}}},hM=5,l8=400,mM=a=>{const f=a.raw;return f.touches===void 0||f.touches.length!==1?q.none():q.some(f.touches[0])},c8=(a,f)=>{const g=Math.abs(a.clientX-f.x),O=Math.abs(a.clientY-f.y);return g>hM||O>hM},u8=a=>{const f=fs(),g=bo(!1),O=fM(ee=>{a.triggerEvent(ib(),ee),g.set(!0)},l8),x=ee=>(mM(ee).each(se=>{O.cancel();const he={x:se.clientX,y:se.clientY,target:ee.target};O.schedule(ee),g.set(!1),f.set(he)}),q.none()),P=ee=>(O.cancel(),mM(ee).each(se=>{f.on(he=>{c8(se,he)&&f.clear()})}),q.none()),I=ee=>{O.cancel();const se=he=>Us(he.target,ee.target);return f.get().filter(se).map(he=>g.get()?(ee.prevent(),!1):a.triggerEvent(Ed(),ee))},Q=ao([{key:Lc(),value:x},{key:lm(),value:P},{key:fh(),value:I}]);return{fireIfReady:(ee,se)=>nn(Q,se).bind(he=>he(ee))}},d8=a=>a.raw.which===pT[0]&&!ct(["input","textarea"],ia(a.target))&&!JS(a.target,'[contenteditable="true"]'),f8=(a,f)=>{const g={stopBackspace:!0,...f},O=["touchstart","touchmove","touchend","touchcancel","gesturestart","mousedown","mouseup","mouseover","mousemove","mouseout","click"],x=u8(g),P=Fe(O.concat(["selectstart","input","contextmenu","change","transitionend","transitioncancel","drag","dragstart","dragend","dragenter","dragleave","dragover","drop","keyup"]),we=>sc(a,we,Re=>{x.fireIfReady(Re,we).each(Ct=>{Ct&&Re.kill()}),g.triggerEvent(we,Re)&&Re.kill()})),I=fs(),Q=sc(a,"paste",we=>{x.fireIfReady(we,"paste").each(Je=>{Je&&we.kill()}),g.triggerEvent("paste",we)&&we.kill(),I.set(setTimeout(()=>{g.triggerEvent(bh(),we)},0))}),U=sc(a,"keydown",we=>{g.triggerEvent("keydown",we)?we.kill():g.stopBackspace&&d8(we)&&we.prevent()}),ee=sc(a,"focusin",we=>{g.triggerEvent("focusin",we)&&we.kill()}),se=fs(),he=sc(a,"focusout",we=>{g.triggerEvent("focusout",we)&&we.kill(),se.set(setTimeout(()=>{g.triggerEvent(gh(),we)},0))});return{unbind:()=>{mt(P,we=>{we.unbind()}),U.unbind(),ee.unbind(),he.unbind(),Q.unbind(),I.on(clearTimeout),se.on(clearTimeout)}}},pM=(a,f)=>{const g=nn(a,"target").getOr(f);return bo(g)},h8=(a,f)=>{const g=bo(!1),O=bo(!1);return{stop:()=>{g.set(!0)},cut:()=>{O.set(!0)},isStopped:g.get,isCut:O.get,event:a,setSource:f.set,getSource:f.get}},gM=a=>{const f=bo(!1);return{stop:()=>{f.set(!0)},cut:j,isStopped:f.get,isCut:Tt,event:a,setSource:Oe("Cannot set source of a broadcasted event"),getSource:Oe("Cannot get source of a broadcasted event")}},e2=K.generate([{stopped:[]},{resume:["element"]},{complete:[]}]),bM=(a,f,g,O,x,P)=>{const I=a(f,O),Q=h8(g,x);return I.fold(()=>(P.logEventNoHandlers(f,O),e2.complete()),U=>{const ee=U.descHandler;return fg(ee)(Q),Q.isStopped()?(P.logEventStopped(f,U.element,ee.purpose),e2.stopped()):Q.isCut()?(P.logEventCut(f,U.element,ee.purpose),e2.complete()):ba(U.element).fold(()=>(P.logNoParent(f,U.element,ee.purpose),e2.complete()),he=>(P.logEventResponse(f,U.element,ee.purpose),e2.resume(he)))})},vM=(a,f,g,O,x,P)=>bM(a,f,g,O,x,P).fold(St,I=>vM(a,f,g,I,x,P),Tt),m8=(a,f,g,O,x)=>{const P=pM(g,O);return bM(a,f,g,O,P,x)},p8=(a,f,g)=>{const O=gM(f);return mt(a,x=>{const P=x.descHandler;fg(P)(O)}),O.isStopped()},O3=(a,f,g,O)=>OM(a,f,g,g.target,O),OM=(a,f,g,O,x)=>{const P=pM(g,O);return vM(a,f,g,O,P,x)},g8=(a,f)=>({element:a,descHandler:f}),b8=(a,f)=>({id:a,descHandler:f}),yM=()=>{const a={},f=(I,Q,U)=>{vs(U,(ee,se)=>{const he=a[se]!==void 0?a[se]:{};he[Q]=q0(ee,I),a[se]=he})},g=(I,Q)=>sp(Q).bind(U=>nn(I,U)).map(U=>g8(Q,U));return{registerId:f,unregisterId:I=>{vs(a,(Q,U)=>{ns(Q,I)&&delete Q[I]})},filterByType:I=>nn(a,I).map(Q=>Pi(Q,(U,ee)=>b8(ee,U))).getOr([]),find:(I,Q,U)=>nn(a,Q).bind(ee=>Cl(U,se=>g(ee,se),I))}},_M=()=>{const a=yM(),f={},g=ee=>{const se=ee.element;return sp(se).getOrThunk(()=>kh("uid-",ee.element))},O=(ee,se)=>{const he=f[se];if(he===ee)P(ee);else throw new Error('The tagId "'+se+'" is already used by: '+Pf(he.element)+` -Cannot use it for: `+Pf(ee.element)+` -The conflicting element is`+(Ss(he.element)?" ":" not ")+"already in the DOM")},x=ee=>{const se=g(ee);Xr(f,se)&&O(ee,se);const he=[ee];a.registerId(he,se,ee.events),f[se]=ee},P=ee=>{sp(ee.element).each(se=>{delete f[se],a.unregisterId(se)})};return{find:(ee,se,he)=>a.find(ee,se,he),filter:ee=>a.filterByType(ee),register:x,unregister:P,getById:ee=>nn(f,ee)}},Dp=sd({name:"Container",factory:a=>{const{attributes:f,...g}=a.dom;return{uid:a.uid,dom:{tag:"div",attributes:{role:"presentation",...f},...g},components:a.components,behaviours:_p(a.containerBehaviours),events:a.events,domModification:a.domModification,eventOrder:a.eventOrder}},configFields:[_t("components",[]),il("containerBehaviours",[]),_t("events",{}),_t("domModification",{}),_t("eventOrder",{})]}),Wk=a=>{const f=at=>ba(a.element).fold(St,st=>Us(at,st)),g=_M(),O=(at,st)=>g.find(f,at,st),x=f8(a.element,{triggerEvent:(at,st)=>kb(at,st.target,Ot=>O3(O,at,st,Ot))}),P={debugInfo:ne("real"),triggerEvent:(at,st,Ot)=>{kb(at,st,hn=>OM(O,at,Ot,st,hn))},triggerFocus:(at,st)=>{sp(at).fold(()=>{ji(at)},Ot=>{kb(xd(),at,hn=>(m8(O,xd(),{originator:st,kill:j,prevent:j,target:at},at,hn),!1))})},triggerEscape:(at,st)=>{P.triggerEvent("keydown",at.element,st.event)},getByUid:at=>Je(at),getByDom:at=>Ct(at),build:Ql,buildOrPatch:Sb,addToGui:at=>{U(at)},removeFromGui:at=>{ee(at)},addToWorld:at=>{I(at)},removeFromWorld:at=>{Q(at)},broadcast:at=>{be(at)},broadcastOn:(at,st)=>{we(at,st)},broadcastEvent:(at,st)=>{Re(at,st)},isConnected:St},I=at=>{at.connect(P),Ji(at.element)||(g.register(at),mt(at.components(),I),P.triggerEvent(vh(),at.element,{target:at.element}))},Q=at=>{Ji(at.element)||(mt(at.components(),Q),g.unregister(at)),at.disconnect()},U=at=>{Ig(a,at)},ee=at=>{km(at)},se=()=>{x.unbind(),Pc(a.element)},he=at=>{const st=g.filter(tp());mt(st,Ot=>{const hn=Ot.descHandler;fg(hn)(at)})},be=at=>{he({universal:!0,data:at})},we=(at,st)=>{he({universal:!1,channels:at,data:st})},Re=(at,st)=>{const Ot=g.filter(at);return p8(Ot,st)},Je=at=>g.getById(at).fold(()=>Zo.error(new Error('Could not find component with uid: "'+at+'" in system.')),Zo.value),Ct=at=>{const st=sp(at).getOr("not found");return Je(st)};return I(a),{root:a,element:a.element,destroy:se,add:U,remove:ee,getByUid:Je,getByDom:Ct,addToWorld:I,removeFromWorld:Q,broadcast:be,broadcastOn:we,broadcastEvent:Re}},v8=(a,f)=>({dom:{tag:"div",classes:["tox-bar","tox-form__controls-h-stack"]},components:Fe(a.items,f.interpreter)}),O8=ne([_t("prefix","form-field"),il("fieldBehaviours",[Ds,Ln])]),y8=ne([Mu({schema:[Gt("dom")],name:"label"}),Mu({factory:{sketch:a=>({uid:a.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:a.text}})},schema:[Gt("text")],name:"aria-descriptor"}),yc({factory:{sketch:a=>{const f=gn(a,["factory"]);return a.factory.sketch(f)}},schema:[Gt("factory")],name:"field"})]),_8=(a,f,g,O)=>{const x=$a(a.fieldBehaviours,[Ds.config({find:Q=>ti(Q,a,"field")}),Ln.config({store:{mode:"manual",getValue:Q=>Ds.getCurrent(Q).bind(Ln.getValue),setValue:(Q,U)=>{Ds.getCurrent(Q).each(ee=>{Ln.setValue(ee,U)})}}})]),P=kr([xr((Q,U)=>{const ee=kC(Q,a,["label","field","aria-descriptor"]);ee.field().each(se=>{const he=Vn(a.prefix);ee.label().each(be=>{Mn(be.element,"for",he),Mn(se.element,"id",he)}),ee["aria-descriptor"]().each(be=>{const we=Vn(a.prefix);Mn(be.element,"id",we),Mn(se.element,"aria-describedby",we)})})})]),I={getField:Q=>ti(Q,a,"field"),getLabel:Q=>ti(Q,a,"label")};return{uid:a.uid,dom:a.dom,components:f,behaviours:x,events:P,apis:I}},$r=_c({name:"FormField",configFields:O8(),partFields:y8(),factory:_8,apis:{getField:(a,f)=>a.getField(f),getLabel:(a,f)=>a.getLabel(f)}});var Zk=Object.freeze({__proto__:null,exhibit:(a,f)=>Qc({attributes:ao([{key:f.tabAttr,value:"true"}])})}),w8=[_t("tabAttr","data-alloy-tabstop")];const $i=Za({fields:w8,name:"tabstopping",active:Zk});var S8=tinymce.util.Tools.resolve("tinymce.html.Entities");const t2=(a,f,g,O)=>{const x=k8(a,f,g,O);return $r.sketch(x)},C8=(a,f)=>t2(a,f,[],[]),k8=(a,f,g,O)=>({dom:n2(g),components:a.toArray().concat([f]),fieldBehaviours:On(O)}),TU=()=>n2([]),n2=a=>({tag:"div",classes:["tox-form__group"].concat(a)}),Zh=(a,f)=>$r.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[Xi(f.translate(a))]}),zd=Vn("form-component-change"),v_=Vn("form-close"),v0=Vn("form-cancel"),Gg=Vn("form-action"),o2=Vn("form-submit"),y3=Vn("form-block"),_3=Vn("form-unblock"),wM=Vn("form-tabchange"),SM=Vn("form-resize"),x8=(a,f,g)=>{const O=a.label.map(we=>Zh(we,f)),x=f.icons(),P=we=>{var Re;return(Re=x[we])!==null&&Re!==void 0?Re:we},I=we=>(Re,Je)=>{uf(Je.event.target,"[data-collection-item-value]").each(Ct=>{we(Re,Je,Ct,ui(Ct,"data-collection-item-value"))})},Q=(we,Re)=>{const Je=Fe(Re,st=>{const Ot=qf.translate(st.text),hn=a.columns===1?`
    ${Ot}
    `:"",jt=`
    ${P(st.icon)}
    `,Wt={_:" "," - ":" ","-":" "},yn=Ot.replace(/\_| \- |\-/g,rs=>Wt[rs]);return`
    ${jt}${hn}
    `}),Ct=a.columns!=="auto"&&a.columns>1?rn(Je,a.columns):[Je],at=Fe(Ct,st=>`
    ${st.join("")}
    `);Sh(we.element,at.join(""))},U=I((we,Re,Je,Ct)=>{Re.stop(),f.isDisabled()||ho(we,Gg,{name:a.name,value:Ct})}),ee=[qt(kd(),I((we,Re,Je)=>{ji(Je)})),qt(lf(),U),qt(Ed(),U),qt(gi(),I((we,Re,Je)=>{oa(we.element,"."+LS).each(Ct=>{wi(Ct,LS)}),na(Je,LS)})),qt(Fc(),I(we=>{oa(we.element,"."+LS).each(Re=>{wi(Re,LS)})})),vc(I((we,Re,Je,Ct)=>{ho(we,Gg,{name:a.name,value:Ct})}))],se=(we,Re)=>Fe(Ua(we.element,".tox-collection__item"),Re),he=$r.parts.field({dom:{tag:"div",classes:["tox-collection"].concat(a.columns!==1?["tox-collection--grid"]:["tox-collection--list"])},components:[],factory:{sketch:Se},behaviours:On([ko.config({disabled:f.isDisabled,onDisabled:we=>{se(we,Re=>{na(Re,"tox-collection__item--state-disabled"),Mn(Re,"aria-disabled",!0)})},onEnabled:we=>{se(we,Re=>{wi(Re,"tox-collection__item--state-disabled"),We(Re,"aria-disabled")})}}),Ol(),Yo.config({}),Ln.config({store:{mode:"memory",initialValue:g.getOr([])},onSetValue:(we,Re)=>{Q(we,Re),a.columns==="auto"&&MA(we,5,"tox-collection__item").each(({numRows:Je,numColumns:Ct})=>{vo.setGridSize(we,Je,Ct)}),gs(we,SM)}}),$i.config({}),vo.config(CF(a.columns,"normal")),ss("collection-events",ee)]),eventOrder:{[au()]:["disabling","alloy.base.behaviour","collection-events"]}});return t2(O,he,["tox-form__group--collection"],[])},E8=["input","textarea"],CM=a=>{const f=ia(a);return ct(E8,f)},kM=(a,f)=>{const g=f.getRoot(a).getOr(a.element);wi(g,f.invalidClass),f.notify.each(O=>{CM(a.element)&&Mn(a.element,"aria-invalid",!1),O.getContainer(a).each(x=>{Sh(x,O.validHtml)}),O.onValid(a)})},w3=(a,f,g,O)=>{const x=f.getRoot(a).getOr(a.element);na(x,f.invalidClass),f.notify.each(P=>{CM(a.element)&&Mn(a.element,"aria-invalid",!0),P.getContainer(a).each(I=>{Sh(I,O)}),P.onInvalid(a,O)})},hO=(a,f,g)=>f.validator.fold(()=>Xc.pure(Zo.value(!0)),O=>O.validate(a)),G1=(a,f,g)=>(f.notify.each(O=>{O.onValidate(a)}),hO(a,f).map(O=>a.getSystem().isConnected()?O.fold(x=>(w3(a,f,g,x),Zo.error(x)),x=>(kM(a,f),Zo.value(x))):Zo.error("No longer in system")));var xM=Object.freeze({__proto__:null,markValid:kM,markInvalid:w3,query:hO,run:G1,isInvalid:(a,f)=>{const g=f.getRoot(a).getOr(a.element);return Aa(g,f.invalidClass)}}),Uk=Object.freeze({__proto__:null,events:(a,f)=>a.validator.map(g=>kr([qt(g.onEvent,O=>{G1(O,a,f).get(Se)})].concat(g.validateOnLoad?[xr(O=>{G1(O,a,f).get(j)})]:[]))).getOr({})}),A8=[Gt("invalidClass"),_t("getRoot",q.none),Ll("notify",[_t("aria","alert"),_t("getContainer",q.none),_t("validHtml",""),Ps("onValid"),Ps("onInvalid"),Ps("onValidate")]),Ll("validator",[Gt("validate"),_t("onEvent","input"),_t("validateOnLoad",!0)])];const Yf=Za({fields:A8,name:"invalidating",active:Uk,apis:xM,extra:{validation:a=>f=>{const g=Ln.getValue(f);return Xc.pure(a(g))}}});var $8=Object.freeze({__proto__:null,events:()=>kr([ub(ph(),St)]),exhibit:()=>Qc({styles:{"-webkit-user-select":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"-moz-none"},attributes:{unselectable:"on"}})});const s2=Za({fields:[],name:"unselecting",active:$8}),P8=(a,f)=>Wh.sketch({dom:a.dom,components:a.components,toggleClass:"mce-active",dropdownBehaviours:On([al.button(f.providers.isDisabled),Ol(),s2.config({}),$i.config({})]),layouts:a.layouts,sandboxClasses:["tox-dialog__popups"],lazySink:f.getSink,fetch:g=>Xc.nu(O=>a.fetch(O)).map(O=>q.from(zk(lr(a3(Vn("menu-value"),O,x=>{a.onItemAction(g,x)},a.columns,a.presets,Pp.CLOSE_ON_EXECUTE,Tt,f.providers),{movement:Fk(a.columns,a.presets)})))),parts:{menu:i_(!1,1,a.presets)}}),EM=Vn("color-input-change"),TM=Vn("color-swatch-change"),r2=Vn("color-picker-cancel"),D8=(a,f,g,O)=>{const x=$r.parts.field({factory:cO,inputClasses:["tox-textfield"],data:O,onSetValue:ee=>Yf.run(ee).get(j),inputBehaviours:On([ko.config({disabled:f.providers.isDisabled}),Ol(),$i.config({}),Yf.config({invalidClass:"tox-textbox-field-invalid",getRoot:ee=>Rl(ee.element),notify:{onValid:ee=>{const se=Ln.getValue(ee);ho(ee,EM,{color:se})}},validator:{validateOnLoad:!1,validate:ee=>{const se=Ln.getValue(ee);if(se.length===0)return Xc.pure(Zo.value(!0));{const he=nt.fromTag("span");Wn(he,"background-color",se);const be=Gr(he,"background-color").fold(()=>Zo.error("blah"),we=>Zo.value(se));return Xc.pure(be)}}}})]),selectOnFocus:!1}),P=a.label.map(ee=>Zh(ee,f.providers)),I=(ee,se)=>{ho(ee,TM,{value:se})},Q=(ee,se)=>{U.getOpt(ee).each(he=>{se==="custom"?g.colorPicker(be=>{be.fold(()=>gs(he,r2),we=>{I(he,we),KA(a.storageKey,we)})},"#ffffff"):se==="remove"?I(he,""):I(he,se)})},U=Ar(P8({dom:{tag:"span",attributes:{"aria-label":f.providers.translate("Color swatch")}},layouts:{onRtl:()=>[kl,Qa,zr],onLtr:()=>[Qa,kl,zr]},components:[],fetch:qR(g.getColors(a.storageKey),a.storageKey,g.hasCustomColors()),columns:g.getColorCols(a.storageKey),presets:"color",onItemAction:Q},f));return $r.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:P.toArray().concat([{dom:{tag:"div",classes:["tox-color-input"]},components:[x,U.asSpec()]}]),fieldBehaviours:On([ss("form-field-events",[qt(EM,(ee,se)=>{U.getOpt(ee).each(he=>{Wn(he.element,"background-color",se.event.color)}),ho(ee,zd,{name:a.name})}),qt(TM,(ee,se)=>{$r.getField(ee).each(he=>{Ln.setValue(he,se.event.value),Ds.getCurrent(ee).each(Ao.focus)})}),qt(r2,(ee,se)=>{$r.getField(ee).each(he=>{Ds.getCurrent(ee).each(Ao.focus)})})])])})},S3=Mu({schema:[Gt("dom")],name:"label"}),O0=a=>Mu({name:""+a+"-edge",overrides:f=>f.model.manager.edgeActions[a].fold(()=>({}),O=>({events:kr([Ad(Lc(),(x,P,I)=>O(x,I),[f]),Ad(_s(),(x,P,I)=>O(x,I),[f]),Ad(fa(),(x,P,I)=>{I.mouseIsDown.get()&&O(x,I)},[f])])}))}),R8=O0("top-left"),M8=O0("top"),AM=O0("top-right"),N8=O0("right"),I8=O0("bottom-right"),B8=O0("bottom"),$M=O0("bottom-left"),L8=O0("left"),F8=yc({name:"thumb",defaults:ne({dom:{styles:{position:"absolute"}}}),overrides:a=>({events:kr([np(Lc(),a,"spectrum"),np(lm(),a,"spectrum"),np(fh(),a,"spectrum"),np(_s(),a,"spectrum"),np(fa(),a,"spectrum"),np(Gp(),a,"spectrum")])})}),Xk=a=>Ep(a.event),H8=yc({schema:[Qr("mouseIsDown",()=>bo(!1))],name:"spectrum",overrides:a=>{const g=a.model.manager,O=(x,P)=>g.getValueFromEvent(P).map(I=>g.setValueFrom(x,a,I));return{behaviours:On([vo.config({mode:"special",onLeft:(x,P)=>g.onLeft(x,a,Xk(P)),onRight:(x,P)=>g.onRight(x,a,Xk(P)),onUp:(x,P)=>g.onUp(x,a,Xk(P)),onDown:(x,P)=>g.onDown(x,a,Xk(P))}),$i.config({}),Ao.config({})]),events:kr([qt(Lc(),O),qt(lm(),O),qt(_s(),O),qt(fa(),(x,P)=>{a.mouseIsDown.get()&&O(x,P)})])}}});var Q8=[S3,L8,N8,M8,B8,R8,AM,$M,I8,F8,H8];const O_=ne("slider.change.value"),z8=a=>a.type.indexOf("touch")!==-1,C3=a=>{const f=a.event.raw;if(z8(f)){const g=f;return g.touches!==void 0&&g.touches.length===1?q.some(g.touches[0]).map(O=>Ws(O.clientX,O.clientY)):q.none()}else{const g=f;return g.clientX!==void 0?q.some(g).map(O=>Ws(O.clientX,O.clientY)):q.none()}},W8="top",Z8="right",U8="bottom",PM="left",Nm=a=>a.model.minX,mO=a=>a.model.minY,jk=a=>a.model.minX-1,Yk=a=>a.model.minY-1,Kg=a=>a.model.maxX,pu=a=>a.model.maxY,y_=a=>a.model.maxX+1,i2=a=>a.model.maxY+1,DM=(a,f,g)=>f(a)-g(a),k3=a=>DM(a,Kg,Nm),x3=a=>DM(a,pu,mO),RM=a=>k3(a)/2,E3=a=>x3(a)/2,pO=(a,f)=>f?a.stepSize*a.speedMultiplier:a.stepSize,MM=a=>a.snapToGrid,NM=a=>a.snapStart,T3=a=>a.rounded,Gk=(a,f)=>a[f+"-edge"]!==void 0,A3=a=>Gk(a,PM),$3=a=>Gk(a,Z8),P3=a=>Gk(a,W8),IM=a=>Gk(a,U8),K1=a=>a.model.value.get(),y0=(a,f)=>({x:a,y:f}),Im=(a,f)=>{ho(a,O_(),{value:f})},q8=(a,f)=>{Im(a,y0(jk(f),Yk(f)))},X8=(a,f)=>{Im(a,Yk(f))},D3=(a,f)=>{Im(a,y0(RM(f),Yk(f)))},j8=(a,f)=>{Im(a,y0(y_(f),Yk(f)))},BM=(a,f)=>{Im(a,y_(f))},Y8=(a,f)=>{Im(a,y0(y_(f),E3(f)))},G8=(a,f)=>{Im(a,y0(y_(f),i2(f)))},K8=(a,f)=>{Im(a,i2(f))},J8=(a,f)=>{Im(a,y0(RM(f),i2(f)))},e9=(a,f)=>{Im(a,y0(jk(f),i2(f)))},t9=(a,f)=>{Im(a,jk(f))},n9=(a,f)=>{Im(a,y0(jk(f),E3(f)))},Kk=(a,f,g,O)=>ag?g:a===f?f-1:Math.max(f,a-O),Jk=(a,f,g,O)=>a>g?a:aMath.max(f,Math.min(g,a)),o9=(a,f,g,O,x)=>x.fold(()=>{const P=a-f,I=Math.round(P/O)*O;return LM(f+I,f-1,g+1)},P=>{const I=(a-P)%O,Q=Math.round(I/O),U=Math.floor((a-P)/O),ee=Math.floor((g-P)/O),se=Math.min(ee,U+Q),he=P+se*O;return Math.max(P,he)}),s9=(a,f,g)=>Math.min(g,Math.max(a,f))-f,FM=a=>{const{min:f,max:g,range:O,value:x,step:P,snap:I,snapStart:Q,rounded:U,hasMinEdge:ee,hasMaxEdge:se,minBound:he,maxBound:be,screenRange:we}=a,Re=ee?f-1:f,Je=se?g+1:g;if(xbe)return Je;{const Ct=s9(x,he,be),at=LM(Ct/we*O+f,Re,Je);return I&&at>=f&&at<=g?o9(at,f,g,P,Q):U?Math.round(at):at}},HM=a=>{const{min:f,max:g,range:O,value:x,hasMinEdge:P,hasMaxEdge:I,maxBound:Q,maxOffset:U,centerMinEdge:ee,centerMaxEdge:se}=a;return xg?I?Q:se:(x-f)/O*U},R3="top",M3="right",N3="bottom",ex="left",I3="width",r9="height",Rp=a=>a.element.dom.getBoundingClientRect(),Bm=(a,f)=>a[f],tx=a=>{const f=Rp(a);return Bm(f,ex)},QM=a=>{const f=Rp(a);return Bm(f,M3)},nx=a=>{const f=Rp(a);return Bm(f,R3)},ox=a=>{const f=Rp(a);return Bm(f,N3)},Jg=a=>{const f=Rp(a);return Bm(f,I3)},VM=a=>{const f=Rp(a);return Bm(f,r9)},__=(a,f,g)=>(a+f)/2-g,zM=(a,f)=>{const g=Rp(a),O=Rp(f),x=Bm(g,ex),P=Bm(g,M3),I=Bm(O,ex);return __(x,P,I)},sx=(a,f)=>{const g=Rp(a),O=Rp(f),x=Bm(g,R3),P=Bm(g,N3),I=Bm(O,R3);return __(x,P,I)},rx=(a,f)=>{ho(a,O_(),{value:f})},B3=(a,f,g)=>{const O={min:Nm(f),max:Kg(f),range:k3(f),value:g,step:pO(f),snap:MM(f),snapStart:NM(f),rounded:T3(f),hasMinEdge:A3(f),hasMaxEdge:$3(f),minBound:tx(a),maxBound:QM(a),screenRange:Jg(a)};return FM(O)},i9=(a,f,g)=>{const O=B3(a,f,g);return rx(a,O),O},WM=(a,f)=>{const g=Nm(f);rx(a,g)},a9=(a,f)=>{const g=Kg(f);rx(a,g)},L3=(a,f,g,O)=>{const P=(a>0?Jk:Kk)(K1(g),Nm(g),Kg(g),pO(g,O));return rx(f,P),q.some(P)},ix=a=>(f,g,O)=>L3(a,f,g,O).map(St),F3=a=>C3(a).map(g=>g.left),l9=(a,f,g,O,x)=>{const I=Jg(a),Q=O.bind(se=>q.some(zM(se,a))).getOr(0),U=x.bind(se=>q.some(zM(se,a))).getOr(I),ee={min:Nm(f),max:Kg(f),range:k3(f),value:g,hasMinEdge:A3(f),hasMaxEdge:$3(f),minBound:tx(a),minOffset:0,maxBound:QM(a),maxOffset:I,centerMinEdge:Q,centerMaxEdge:U};return HM(ee)},Wd=(a,f,g,O,x,P)=>{const I=l9(f,P,g,O,x);return tx(f)-tx(a)+I},c9=(a,f,g,O)=>{const x=K1(g),P=Wd(a,O.getSpectrum(a),x,O.getLeftEdge(a),O.getRightEdge(a),g),I=Ii(f.element)/2;Wn(f.element,"left",P-I+"px")},u9=ix(-1),ZM=ix(1),UM=q.none,d9=q.none,f9={"top-left":q.none(),top:q.none(),"top-right":q.none(),right:q.some(BM),"bottom-right":q.none(),bottom:q.none(),"bottom-left":q.none(),left:q.some(t9)};var h9=Object.freeze({__proto__:null,setValueFrom:i9,setToMin:WM,setToMax:a9,findValueOfOffset:B3,getValueFromEvent:F3,findPositionOfValue:Wd,setPositionFromValue:c9,onLeft:u9,onRight:ZM,onUp:UM,onDown:d9,edgeActions:f9});const ax=(a,f)=>{ho(a,O_(),{value:f})},H3=(a,f,g)=>{const O={min:mO(f),max:pu(f),range:x3(f),value:g,step:pO(f),snap:MM(f),snapStart:NM(f),rounded:T3(f),hasMinEdge:P3(f),hasMaxEdge:IM(f),minBound:nx(a),maxBound:ox(a),screenRange:VM(a)};return FM(O)},m9=(a,f,g)=>{const O=H3(a,f,g);return ax(a,O),O},p9=(a,f)=>{const g=mO(f);ax(a,g)},qM=(a,f)=>{const g=pu(f);ax(a,g)},g9=(a,f,g,O)=>{const P=(a>0?Jk:Kk)(K1(g),mO(g),pu(g),pO(g,O));return ax(f,P),q.some(P)},XM=a=>(f,g,O)=>g9(a,f,g,O).map(St),b9=a=>C3(a).map(g=>g.top),jM=(a,f,g,O,x)=>{const I=VM(a),Q=O.bind(se=>q.some(sx(se,a))).getOr(0),U=x.bind(se=>q.some(sx(se,a))).getOr(I),ee={min:mO(f),max:pu(f),range:x3(f),value:g,hasMinEdge:P3(f),hasMaxEdge:IM(f),minBound:nx(a),minOffset:0,maxBound:ox(a),maxOffset:I,centerMinEdge:Q,centerMaxEdge:U};return HM(ee)},a2=(a,f,g,O,x,P)=>{const I=jM(f,P,g,O,x);return nx(f)-nx(a)+I},v9=(a,f,g,O)=>{const x=K1(g),P=a2(a,O.getSpectrum(a),x,O.getTopEdge(a),O.getBottomEdge(a),g),I=Nr(f.element)/2;Wn(f.element,"top",P-I+"px")},Q3=q.none,w_=q.none,YM=XM(-1),GM=XM(1),KM={"top-left":q.none(),top:q.some(X8),"top-right":q.none(),right:q.none(),"bottom-right":q.none(),bottom:q.some(K8),"bottom-left":q.none(),left:q.none()};var O9=Object.freeze({__proto__:null,setValueFrom:m9,setToMin:p9,setToMax:qM,findValueOfOffset:H3,getValueFromEvent:b9,findPositionOfValue:a2,setPositionFromValue:v9,onLeft:Q3,onRight:w_,onUp:YM,onDown:GM,edgeActions:KM});const lx=(a,f)=>{ho(a,O_(),{value:f})},gO=(a,f)=>({x:a,y:f}),y9=(a,f,g)=>{const O=B3(a,f,g.left),x=H3(a,f,g.top),P=gO(O,x);return lx(a,P),P},_9=(a,f,g,O,x)=>{const P=a>0?Jk:Kk,I=f?K1(O).x:P(K1(O).x,Nm(O),Kg(O),pO(O,x)),Q=f?P(K1(O).y,mO(O),pu(O),pO(O,x)):K1(O).y;return lx(g,gO(I,Q)),q.some(I)},l2=(a,f)=>(g,O,x)=>_9(a,f,g,O,x).map(St),JM=(a,f)=>{const g=Nm(f),O=mO(f);lx(a,gO(g,O))},V3=(a,f)=>{const g=Kg(f),O=pu(f);lx(a,gO(g,O))},e5=a=>C3(a),ad=(a,f,g,O)=>{const x=K1(g),P=Wd(a,O.getSpectrum(a),x.x,O.getLeftEdge(a),O.getRightEdge(a),g),I=a2(a,O.getSpectrum(a),x.y,O.getTopEdge(a),O.getBottomEdge(a),g),Q=Ii(f.element)/2,U=Nr(f.element)/2;Wn(f.element,"left",P-Q+"px"),Wn(f.element,"top",I-U+"px")},t5=l2(-1,!1),w9=l2(1,!1),S9=l2(-1,!0),n5=l2(1,!0),C9={"top-left":q.some(q8),top:q.some(D3),"top-right":q.some(j8),right:q.some(Y8),"bottom-right":q.some(G8),bottom:q.some(J8),"bottom-left":q.some(e9),left:q.some(n9)};var k9=Object.freeze({__proto__:null,setValueFrom:y9,setToMin:JM,setToMax:V3,getValueFromEvent:e5,setPositionFromValue:ad,onLeft:t5,onRight:w9,onUp:S9,onDown:n5,edgeActions:C9});const x9=[_t("stepSize",1),_t("speedMultiplier",10),_t("onChange",j),_t("onChoose",j),_t("onInit",j),_t("onDragStart",j),_t("onDragEnd",j),_t("snapToGrid",!1),_t("rounded",!0),er("snapStart"),Sl("model",ys("mode",{x:[_t("minX",0),_t("maxX",100),Qr("value",a=>bo(a.mode.minX)),Gt("getInitialValue"),Er("manager",h9)],y:[_t("minY",0),_t("maxY",100),Qr("value",a=>bo(a.mode.minY)),Gt("getInitialValue"),Er("manager",O9)],xy:[_t("minX",0),_t("maxX",100),_t("minY",0),_t("maxY",100),Qr("value",a=>bo({x:a.mode.minX,y:a.mode.minY})),Gt("getInitialValue"),Er("manager",k9)]})),il("sliderBehaviours",[vo,Ln]),Qr("mouseIsDown",()=>bo(!1))],Sc=_c({name:"Slider",configFields:x9,partFields:Q8,factory:(a,f,g,O)=>{const x=jt=>Sp(jt,a,"thumb"),P=jt=>Sp(jt,a,"spectrum"),I=jt=>ti(jt,a,"left-edge"),Q=jt=>ti(jt,a,"right-edge"),U=jt=>ti(jt,a,"top-edge"),ee=jt=>ti(jt,a,"bottom-edge"),se=a.model,he=se.manager,be=(jt,Wt)=>{he.setPositionFromValue(jt,Wt,a,{getLeftEdge:I,getRightEdge:Q,getTopEdge:U,getBottomEdge:ee,getSpectrum:P})},we=(jt,Wt)=>{se.value.set(Wt);const yn=x(jt);be(jt,yn)},Re=(jt,Wt)=>{we(jt,Wt);const yn=x(jt);return a.onChange(jt,yn,Wt),q.some(!0)},Je=jt=>{he.setToMin(jt,a)},Ct=jt=>{he.setToMax(jt,a)},at=jt=>{const Wt=()=>{ti(jt,a,"thumb").each(An=>{const rs=se.value.get();a.onChoose(jt,An,rs)})},yn=a.mouseIsDown.get();a.mouseIsDown.set(!1),yn&&Wt()},st=(jt,Wt)=>{Wt.stop(),a.mouseIsDown.set(!0),a.onDragStart(jt,x(jt))},Ot=(jt,Wt)=>{Wt.stop(),a.onDragEnd(jt,x(jt)),at(jt)},hn=jt=>{ti(jt,a,"spectrum").map(vo.focusIn)};return{uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.sliderBehaviours,[vo.config({mode:"special",focusIn:hn}),Ln.config({store:{mode:"manual",getValue:jt=>se.value.get(),setValue:we}}),Wc.config({channels:{[Yw()]:{onReceive:at}}})]),events:kr([qt(O_(),(jt,Wt)=>{Re(jt,Wt.event.value)}),xr((jt,Wt)=>{const yn=se.getInitialValue();se.value.set(yn);const An=x(jt);be(jt,An);const rs=P(jt);a.onInit(jt,An,rs,se.value.get())}),qt(Lc(),st),qt(fh(),Ot),qt(_s(),(jt,Wt)=>{hn(jt),st(jt,Wt)}),qt(Gp(),Ot)]),apis:{resetToMin:Je,resetToMax:Ct,setValue:we,refresh:be},domModification:{styles:{position:"relative"}}}},apis:{setValue:(a,f,g)=>{a.setValue(f,g)},resetToMin:(a,f)=>{a.resetToMin(f)},resetToMax:(a,f)=>{a.resetToMax(f)},refresh:(a,f)=>{a.refresh(f)}}}),c2=Vn("rgb-hex-update"),z3=Vn("slider-update"),u2=Vn("palette-update"),W3=(a,f)=>{const g=Sc.parts.spectrum({dom:{tag:"div",classes:[f("hue-slider-spectrum")],attributes:{role:"presentation"}}}),O=Sc.parts.thumb({dom:{tag:"div",classes:[f("hue-slider-thumb")],attributes:{role:"presentation"}}});return Sc.sketch({dom:{tag:"div",classes:[f("hue-slider")],attributes:{role:"slider","aria-valuemin":0,"aria-valuemax":360,"aria-valuenow":120}},rounded:!1,model:{mode:"y",getInitialValue:ne(0)},components:[g,O],sliderBehaviours:On([Ao.config({})]),onChange:(x,P,I)=>{Mn(x.element,"aria-valuenow",Math.floor(360-I*3.6)),ho(x,z3,{value:I})}})},o5="form",T9=[il("formBehaviours",[Ln])],s5=a=>"",A9=a=>{const f=(()=>{const P=[];return{field:(Q,U)=>(P.push(Q),oS(o5,s5(Q),U)),record:ne(P)}})(),g=a(f),O=f.record(),x=Fe(O,P=>yc({name:P,pname:s5(P)}));return uS(o5,T9,x,P9,g)},$9=(a,f)=>a.fold(()=>Zo.error(f),Zo.value),P9=(a,f)=>({uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.formBehaviours,[Ln.config({store:{mode:"manual",getValue:g=>{const O=rS(g,a);return ms(O,(x,P)=>x().bind(I=>{const Q=Ds.getCurrent(I);return $9(Q,new Error(`Cannot find a current component to extract the value from for form part '${P}': `+Pf(I.element)))}).map(Ln.getValue))},setValue:(g,O)=>{vs(O,(x,P)=>{ti(g,a,P).each(I=>{Ds.getCurrent(I).each(Q=>{Ln.setValue(Q,x)})})})}}})]),apis:{getField:(g,O)=>ti(g,a,O).bind(Ds.getCurrent)}}),S_={getField:xh((a,f,g)=>a.getField(f,g)),sketch:A9},Z3=Vn("valid-input"),r5=Vn("invalid-input"),Mp=Vn("validating-input"),C_="colorcustom.rgb.",D9=(a,f,g,O)=>{const x=(be,we)=>Yf.config({invalidClass:f("invalid"),notify:{onValidate:Re=>{ho(Re,Mp,{type:be})},onValid:Re=>{ho(Re,Z3,{type:be,value:Ln.getValue(Re)})},onInvalid:Re=>{ho(Re,r5,{type:be,value:Ln.getValue(Re)})}},validator:{validate:Re=>{const Je=Ln.getValue(Re),Ct=we(Je)?Zo.value(!0):Zo.error(a("aria.input.invalid"));return Xc.pure(Ct)},validateOnLoad:!1}}),P=(be,we,Re,Je,Ct)=>{const at=a(C_+"range"),st=$r.parts.label({dom:{tag:"label",attributes:{"aria-label":Je}},components:[Xi(Re)]}),Ot=$r.parts.field({data:Ct,factory:cO,inputAttributes:{type:"text",...we==="hex"?{"aria-live":"polite"}:{}},inputClasses:[f("textfield")],inputBehaviours:On([x(we,be),$i.config({})]),onSetValue:yn=>{Yf.isInvalid(yn)&&Yf.run(yn).get(j)}}),hn=[st,Ot],jt=we!=="hex"?[$r.parts["aria-descriptor"]({text:at})]:[],Wt=hn.concat(jt);return{dom:{tag:"div",attributes:{role:"presentation"}},components:Wt}},I=(be,we)=>{const Re=g_(we);return S_.getField(be,"hex").each(Je=>{Ao.isFocused(Je)||Ln.setValue(be,{hex:Re.value})}),Re},Q=(be,we)=>{const Re=we.red,Je=we.green,Ct=we.blue;Ln.setValue(be,{red:Re,green:Je,blue:Ct})},U=Ar({dom:{tag:"div",classes:[f("rgba-preview")],styles:{"background-color":"white"},attributes:{role:"presentation"}}}),ee=(be,we)=>{U.getOpt(be).each(Re=>{Wn(Re.element,"background-color","#"+we.value)})};return sd({factory:()=>{const be={red:bo(q.some(255)),green:bo(q.some(255)),blue:bo(q.some(255)),hex:bo(q.some("ffffff"))},we=(Po,wr)=>{const So=XS(wr);Q(Po,So),at(So)},Re=Po=>be[Po].get(),Je=(Po,wr)=>{be[Po].set(wr)},Ct=()=>Re("red").bind(Po=>Re("green").bind(wr=>Re("blue").map(So=>m0(Po,wr,So,1)))),at=Po=>{const wr=Po.red,So=Po.green,Zs=Po.blue;Je("red",q.some(wr)),Je("green",q.some(So)),Je("blue",q.some(Zs))},st=(Po,wr)=>{const So=wr.event;So.type!=="hex"?Je(So.type,q.none()):O(Po)},Ot=(Po,wr)=>{g(Po);const So=wR(wr);Je("hex",q.some(So.value));const Zs=XS(So);Q(Po,Zs),at(Zs),ho(Po,c2,{hex:So}),ee(Po,So)},hn=(Po,wr,So)=>{const Zs=parseInt(So,10);Je(wr,q.some(Zs)),Ct().each($n=>{const no=I(Po,$n);ho(Po,c2,{hex:no}),ee(Po,no)})},jt=Po=>Po.type==="hex",Wt=(Po,wr)=>{const So=wr.event;jt(So)?Ot(Po,So.value):hn(Po,So.type,So.value)},yn=Po=>({label:a(C_+Po+".label"),description:a(C_+Po+".description")}),An=yn("red"),rs=yn("green"),Un=yn("blue"),Lo=yn("hex");return lr(S_.sketch(Po=>({dom:{tag:"form",classes:[f("rgb-form")],attributes:{"aria-label":a("aria.color.picker")}},components:[Po.field("red",$r.sketch(P(WA,"red",An.label,An.description,255))),Po.field("green",$r.sketch(P(WA,"green",rs.label,rs.description,255))),Po.field("blue",$r.sketch(P(WA,"blue",Un.label,Un.description,255))),Po.field("hex",$r.sketch(P(kR,"hex",Lo.label,Lo.description,"ffffff"))),U.asSpec()],formBehaviours:On([Yf.config({invalidClass:f("form-invalid")}),ss("rgb-form-events",[qt(Z3,Wt),qt(r5,st),qt(Mp,st)])])})),{apis:{updateHex:(Po,wr)=>{Ln.setValue(Po,{hex:wr.value}),we(Po,wr),ee(Po,wr)}}})},name:"RgbForm",configFields:[],apis:{updateHex:(be,we,Re)=>{be.updateHex(we,Re)}},extraApis:{}})},R9=(a,f)=>{const g=Sc.parts.spectrum({dom:{tag:"canvas",attributes:{role:"presentation"},classes:[f("sv-palette-spectrum")]}}),O=Sc.parts.thumb({dom:{tag:"div",attributes:{role:"presentation"},classes:[f("sv-palette-thumb")],innerHtml:``}}),x=(ee,se)=>{const{width:he,height:be}=ee,we=ee.getContext("2d");if(we===null)return;we.fillStyle=se,we.fillRect(0,0,he,be);const Re=we.createLinearGradient(0,0,he,0);Re.addColorStop(0,"rgba(255,255,255,1)"),Re.addColorStop(1,"rgba(255,255,255,0)"),we.fillStyle=Re,we.fillRect(0,0,he,be);const Je=we.createLinearGradient(0,0,0,be);Je.addColorStop(0,"rgba(0,0,0,0)"),Je.addColorStop(1,"rgba(0,0,0,1)"),we.fillStyle=Je,we.fillRect(0,0,he,be)},P=(ee,se)=>{const he=ee.components()[0].element.dom,be=YS(se,100,100),we=DR(be);x(he,UA(we))},I=(ee,se)=>{const he=Mk(XS(se));Sc.setValue(ee,{x:he.saturation,y:100-he.value}),Mn(ee.element,"aria-valuetext",a(["Saturation {0}%, Brightness {1}%",he.saturation,he.value]))};return sd({factory:ee=>{const se=ne({x:0,y:0}),he=(Re,Je,Ct)=>{J(Ct)||Mn(Re.element,"aria-valuetext",a(["Saturation {0}%, Brightness {1}%",Math.floor(Ct.x),Math.floor(100-Ct.y)])),ho(Re,u2,{value:Ct})},be=(Re,Je,Ct,at)=>{x(Ct.element.dom,UA(zh))},we=On([Ds.config({find:q.some}),Ao.config({})]);return Sc.sketch({dom:{tag:"div",attributes:{role:"slider","aria-valuetext":a(["Saturation {0}%, Brightness {1}%",0,0])},classes:[f("sv-palette")]},model:{mode:"xy",getInitialValue:se},rounded:!1,components:[g,O],onChange:he,onInit:be,sliderBehaviours:we})},name:"SaturationBrightnessPalette",configFields:[],apis:{setHue:(ee,se,he)=>{P(se,he)},setThumb:(ee,se,he)=>{I(se,he)}},extraApis:{}})},i5=(a,f)=>{const g=x=>{const P=D9(a,f,x.onValidHex,x.onInvalidHex),I=R9(a,f),Q=Wt=>(100-Wt)/100*360,U=Wt=>100-Wt/360*100,ee={paletteRgba:bo(zh),paletteHue:bo(0)},se=Ar(W3(a,f)),he=Ar(I.sketch({})),be=Ar(P.sketch({})),we=(Wt,yn,An)=>{he.getOpt(Wt).each(rs=>{I.setHue(rs,An)})},Re=(Wt,yn)=>{be.getOpt(Wt).each(An=>{P.updateHex(An,yn)})},Je=(Wt,yn,An)=>{se.getOpt(Wt).each(rs=>{Sc.setValue(rs,U(An))})},Ct=(Wt,yn)=>{he.getOpt(Wt).each(An=>{I.setThumb(An,yn)})},at=(Wt,yn)=>{const An=XS(Wt);ee.paletteRgba.set(An),ee.paletteHue.set(yn)},st=(Wt,yn,An,rs)=>{at(yn,An),mt(rs,Un=>{Un(Wt,yn,An)})},Ot=()=>{const Wt=[Re];return(yn,An)=>{const rs=An.event.value,Un=ee.paletteHue.get(),Lo=YS(Un,rs.x,100-rs.y),Po=HR(Lo);st(yn,Po,Un,Wt)}},hn=()=>{const Wt=[we,Re];return(yn,An)=>{const rs=Q(An.event.value),Un=ee.paletteRgba.get(),Lo=Mk(Un),Po=YS(rs,Lo.saturation,Lo.value),wr=HR(Po);st(yn,wr,rs,Wt)}},jt=()=>{const Wt=[we,Je,Ct];return(yn,An)=>{const rs=An.event.hex,Un=hF(rs);st(yn,rs,Un.hue,Wt)}};return{uid:x.uid,dom:x.dom,components:[he.asSpec(),se.asSpec(),be.asSpec()],behaviours:On([ss("colour-picker-events",[qt(c2,jt()),qt(u2,Ot()),qt(z3,hn())]),Ds.config({find:Wt=>be.getOpt(Wt)}),vo.config({mode:"acyclic"})])}};return sd({name:"ColourPicker",configFields:[Gt("dom"),_t("onValidHex",j),_t("onInvalidHex",j)],factory:g})},Zd={self:()=>Ds.config({find:q.some}),memento:a=>Ds.config({find:a.getOpt}),childAt:a=>Ds.config({find:f=>uc(f.element,a).bind(g=>f.getSystem().getByDom(g).toOptional())})},d2=Jn([_t("preprocess",Se),_t("postprocess",Se)]),l5=(a,f)=>{const g=Ei("RepresentingConfigs.memento processors",d2,f);return Ln.config({store:{mode:"manual",getValue:O=>{const x=a.get(O),P=Ln.getValue(x);return g.postprocess(P)},setValue:(O,x)=>{const P=g.preprocess(x),I=a.get(O);Ln.setValue(I,P)}}})},_0=(a,f,g)=>Ln.config({store:{mode:"manual",...a.map(O=>({initialValue:O})).getOr({}),getValue:f,setValue:g}}),q3=(a,f,g)=>_0(a,O=>f(O.element),(O,x)=>g(O.element,x)),c5=a=>q3(a,rg,Sh),cx=a=>Ln.config({store:{mode:"memory",initialValue:a}}),N9={"colorcustom.rgb.red.label":"R","colorcustom.rgb.red.description":"Red component","colorcustom.rgb.green.label":"G","colorcustom.rgb.green.description":"Green component","colorcustom.rgb.blue.label":"B","colorcustom.rgb.blue.description":"Blue component","colorcustom.rgb.hex.label":"#","colorcustom.rgb.hex.description":"Hex color code","colorcustom.rgb.range":"Range 0 to 255","aria.color.picker":"Color Picker","aria.input.invalid":"Invalid input"},I9=a=>f=>p(f)?a.translate(N9[f]):a.translate(f),B9=(a,f,g)=>{const O=U=>"tox-"+U,x=i5(I9(f),O),P=U=>{ho(U,Gg,{name:"hex-valid",value:!0})},I=U=>{ho(U,Gg,{name:"hex-valid",value:!1})},Q=Ar(x.sketch({dom:{tag:"div",classes:[O("color-picker-container")],attributes:{role:"presentation"}},onValidHex:P,onInvalidHex:I}));return{dom:{tag:"div"},components:[Q.asSpec()],behaviours:On([_0(g,U=>{const ee=Q.get(U);return Ds.getCurrent(ee).bind(be=>Ln.getValue(be).hex).map(be=>"#"+sr(be,"#")).getOr("")},(U,ee)=>{const se=/^#([a-fA-F0-9]{3}(?:[a-fA-F0-9]{3})?)/,he=q.from(se.exec(ee)).bind(Re=>Gn(Re,1)),be=Q.get(U);Ds.getCurrent(be).fold(()=>{console.log("Can not find form")},Re=>{Ln.setValue(Re,{hex:he.getOr("")}),S_.getField(Re,"hex").each(Je=>{gs(Je,Af())})})}),Zd.self()])}};var L9=tinymce.util.Tools.resolve("tinymce.Resource");const u5=a=>ns(a,"init"),d5=a=>{const f=fs(),g=Ar({dom:{tag:a.tag}}),O=fs();return{dom:{tag:"div",classes:["tox-custom-editor"]},behaviours:On([ss("custom-editor-events",[xr(x=>{g.getOpt(x).each(P=>{(u5(a)?a.init(P.element.dom):L9.load(a.scriptId,a.scriptUrl).then(I=>I(P.element.dom,a.settings))).then(I=>{O.on(Q=>{I.setValue(Q)}),O.clear(),f.set(I)})})})]),_0(q.none(),()=>f.get().fold(()=>O.get().getOr(""),x=>x.getValue()),(x,P)=>{f.get().fold(()=>O.set(P),I=>I.setValue(P))}),Zd.self()]),components:[g.asSpec()]}};var J1=tinymce.util.Tools.resolve("tinymce.util.Tools");const f5=(a,f)=>{const g=J1.explode(f.getOption("images_file_types")),O=x=>dn(g,P=>Di(x.name.toLowerCase(),`.${P.toLowerCase()}`));return jn(Ns(a),O)},F9=(a,f,g)=>{const O=(be,we)=>{we.stop()},x=be=>(we,Re)=>{mt(be,Je=>{Je(we,Re)})},P=(be,we)=>{var Re;if(!ko.isDisabled(be)){const Je=we.event.raw;Q(be,(Re=Je.dataTransfer)===null||Re===void 0?void 0:Re.files)}},I=(be,we)=>{const Re=we.event.raw.target;Q(be,Re.files)},Q=(be,we)=>{we&&(Ln.setValue(be,f5(we,f)),ho(be,zd,{name:a.name}))},U=Ar({dom:{tag:"input",attributes:{type:"file",accept:"image/*"},styles:{display:"none"}},behaviours:On([ss("input-file-events",[_h(lf()),_h(Ed())])])}),ee=be=>({uid:be.uid,dom:{tag:"div",classes:["tox-dropzone-container"]},behaviours:On([cx(g.getOr([])),Zd.self(),ko.config({}),hs.config({toggleClass:"dragenter",toggleOnExecute:!1}),ss("dropzone-events",[qt("dragenter",x([O,hs.toggle])),qt("dragleave",x([O,hs.toggle])),qt("dragover",O),qt("drop",x([O,P])),qt(ep(),I)])]),components:[{dom:{tag:"div",classes:["tox-dropzone"],styles:{}},components:[{dom:{tag:"p"},components:[Xi(f.translate("Drop an image here"))]},Wl.sketch({dom:{tag:"button",styles:{position:"relative"},classes:["tox-button","tox-button--secondary"]},components:[Xi(f.translate("Browse for an image")),U.asSpec()],action:we=>{U.get(we).element.dom.click()},buttonBehaviours:On([$i.config({}),al.button(f.isDisabled),Ol()])})]}]}),se=a.label.map(be=>Zh(be,f)),he=$r.parts.field({factory:{sketch:ee}});return t2(se,he,["tox-form__group--stretched"],[])},h5=(a,f)=>({dom:{tag:"div",classes:["tox-form__grid",`tox-form__grid--${a.columns}col`]},components:Fe(a.items,f.interpreter)}),f2=(a,f)=>{let g=null,O=null;return{cancel:()=>{A(g)||(clearTimeout(g),g=null,O=null)},throttle:(...I)=>{O=I,A(g)&&(g=setTimeout(()=>{const Q=O;g=null,O=null,a.apply(null,Q)},f))}}},H9=(a,f)=>{let g=null;return{cancel:()=>{A(g)||(clearTimeout(g),g=null)},throttle:(...P)=>{A(g)&&(g=setTimeout(()=>{g=null,a.apply(null,P)},f))}}},ux=(a,f)=>{let g=null;const O=()=>{A(g)||(clearTimeout(g),g=null)};return{cancel:O,throttle:(...P)=>{O(),g=setTimeout(()=>{g=null,a.apply(null,P)},f)}}},X3=Vn("alloy-fake-before-tabstop"),j3=Vn("alloy-fake-after-tabstop"),m5=a=>({dom:{tag:"div",styles:{width:"1px",height:"1px",outline:"none"},attributes:{tabindex:"0"},classes:a},behaviours:On([Ao.config({ignore:!0}),$i.config({})])}),p5=(a,f)=>({dom:{tag:"div",classes:["tox-navobj",...a.getOr([])]},components:[m5([X3]),f,m5([j3])],behaviours:On([Zd.childAt(1)])}),Y3=(a,f)=>{ho(a,Eu(),{raw:{which:9,shiftKey:f}})},Q9=(a,f)=>{const g=f.element;Aa(g,X3)?Y3(a,!0):Aa(g,j3)&&Y3(a,!1)},k_=a=>JS(a,["."+X3,"."+j3].join(","),Tt),x_=Vn("update-dialog"),e1=Vn("update-title"),dx=Vn("update-body"),G3=Vn("update-footer"),K3=Vn("body-send-message"),E_=Vn("dialog-focus-shifted"),fx=Kt().browser,w0=fx.isSafari(),g5=fx.isFirefox(),J3=w0||g5,V9=fx.isChromium(),z9=({scrollTop:a,scrollHeight:f,clientHeight:g})=>Math.ceil(a)+g>=f,b5=(a,f)=>a.scrollTo(0,f==="bottom"?99999999:f),W9=(a,f)=>{const g=a.body;return q.from(!/^1))?g:a.documentElement)},v5=(a,f,g)=>{const O=a.dom;q.from(O.contentDocument).fold(g,x=>{let P=0;const I=W9(x,f).map(U=>(P=U.scrollTop,U)).forall(z9),Q=()=>{const U=O.contentWindow;V(U)&&(I?b5(U,"bottom"):!I&&J3&&P!==0&&b5(U,P))};w0&&O.addEventListener("load",Q,{once:!0}),x.open(),x.write(f),x.close(),w0||Q()})},O5=an(J3,w0?500:200).map(a=>f2(v5,a)),U9=(a,f)=>{const g=bo(a.getOr(""));return{getValue:O=>g.get(),setValue:(O,x)=>{if(g.get()!==x){const P=O.element,I=()=>Mn(P,"srcdoc",x);f?O5.fold(ne(v5),Q=>Q.throttle)(P,x,I):I()}g.set(x)}}},q9=(a,f,g)=>{const O="tox-dialog__iframe",x=a.transparent?[]:[`${O}--opaque`],P=a.border?["tox-navobj-bordered"]:[],I={...a.label.map(he=>({title:he})).getOr({}),...g.map(he=>({srcdoc:he})).getOr({}),...a.sandboxed?{sandbox:"allow-scripts allow-same-origin"}:{}},Q=U9(g,a.streamContent),U=a.label.map(he=>Zh(he,f)),ee=he=>p5(q.from(P),{uid:he.uid,dom:{tag:"iframe",attributes:I,classes:[O,...x]},behaviours:On([$i.config({}),Ao.config({}),_0(g,Q.getValue,Q.setValue),Wc.config({channels:{[E_]:{onReceive:(be,we)=>{we.newFocus.each(Re=>{Rl(be.element).each(Je=>{(Us(be.element,Re)?na:wi)(Je,"tox-navobj-bordered-focus")})})}}}})])}),se=$r.parts.field({factory:{sketch:ee}});return t2(U,se,["tox-form__group--stretched"],[])},X9=a=>new Promise((f,g)=>{const O=()=>{P(),f(a)},x=[sc(a,"load",O),sc(a,"error",()=>{P(),g("Unable to load data from image: "+a.dom.src)})],P=()=>mt(x,I=>I.unbind());a.dom.complete&&O()}),hx=(a,f,g,O,x)=>{const P=g*x,I=O*x,Q=Math.max(0,a/2-P/2),U=Math.max(0,f/2-I/2);return{left:Q.toString()+"px",top:U.toString()+"px",width:P.toString()+"px",height:I.toString()+"px"}},j9=(a,f,g)=>{const O=Ii(a),x=Nr(a);return Math.min(O/f,x/g,1)},Y9=(a,f)=>{const g=bo(f.getOr({url:""})),O=Ar({dom:{tag:"img",classes:["tox-imagepreview__image"],attributes:f.map(U=>({src:U.url})).getOr({})}}),x=Ar({dom:{tag:"div",classes:["tox-imagepreview__container"],attributes:{role:"presentation"}},components:[O.asSpec()]}),P=(U,ee)=>{const se={url:ee.url};ee.zoom.each(be=>se.zoom=be),ee.cachedWidth.each(be=>se.cachedWidth=be),ee.cachedHeight.each(be=>se.cachedHeight=be),g.set(se);const he=()=>{const{cachedWidth:be,cachedHeight:we,zoom:Re}=se;if(!N(be)&&!N(we)){if(N(Re)){const Ct=j9(U.element,be,we);se.zoom=Ct}const Je=hx(Ii(U.element),Nr(U.element),be,we,se.zoom);x.getOpt(U).each(Ct=>{Lr(Ct.element,Je)})}};O.getOpt(U).each(be=>{const we=be.element;ee.url!==ui(we,"src")&&(Mn(we,"src",ee.url),wi(U.element,"tox-imagepreview__loaded")),he(),X9(we).then(Re=>{U.getSystem().isConnected()&&(na(U.element,"tox-imagepreview__loaded"),se.cachedWidth=Re.dom.naturalWidth,se.cachedHeight=Re.dom.naturalHeight,he())})})},I={};a.height.each(U=>I.height=U);const Q=f.map(U=>({url:U.url,zoom:q.from(U.zoom),cachedWidth:q.from(U.cachedWidth),cachedHeight:q.from(U.cachedHeight)}));return{dom:{tag:"div",classes:["tox-imagepreview"],styles:I,attributes:{role:"presentation"}},components:[x.asSpec()],behaviours:On([Zd.self(),_0(Q,()=>g.get(),P)])}},y5=(a,f)=>{const g="tox-label",O=a.align==="center"?[`${g}--center`]:[],x=a.align==="end"?[`${g}--end`]:[],P={dom:{tag:"label",classes:[g,...O,...x]},components:[Xi(f.providers.translate(a.label))]},I=Fe(a.items,f.interpreter);return{dom:{tag:"div",classes:["tox-form__group"]},components:[P,...I],behaviours:On([Zd.self(),Yo.config({}),c5(q.none()),vo.config({mode:"acyclic"})])}},e$=Vn("toolbar.button.execute"),G9=a=>vc((f,g)=>{jf(a,f)(O=>{ho(f,e$,{buttonApi:O}),a.onAction(O)})}),bO=Vn("common-button-display-events"),mx={[au()]:["disabling","alloy.base.behaviour","toggling","toolbar-button-events"],[bc()]:["toolbar-button-events",bO],[_s()]:["focusing","alloy.base.behaviour",bO]},t$=a=>Wn(a.element,"width",Or(a.element,"width")),n$=(a,f,g)=>Pm(a,{tag:"span",classes:["tox-icon","tox-tbtn__icon-wrap"],behaviours:g},f),o$=(a,f)=>n$(a,f,[]),S0=(a,f)=>n$(a,f,[Yo.config({})]),_5=(a,f,g)=>({dom:{tag:"span",classes:[`${f}__select-label`]},components:[Xi(g.translate(a))],behaviours:On([Yo.config({})])}),Gf=Vn("update-menu-text"),C0=Vn("update-menu-icon"),s$=(a,f,g)=>{const O=bo(j),x=a.text.map(be=>Ar(_5(be,f,g.providers))),P=a.icon.map(be=>Ar(S0(be,g.providers.icons))),I=(be,we)=>{const Re=Ln.getValue(be);return Ao.focus(Re),ho(Re,"keydown",{raw:we.event.raw}),Wh.close(Re),q.some(!0)},Q=a.role.fold(()=>({}),be=>({role:be})),U=a.tooltip.fold(()=>({}),be=>{const we=g.providers.translate(be);return{title:we,"aria-label":we}}),ee=Pm("chevron-down",{tag:"div",classes:[`${f}__select-chevron`]},g.providers.icons),se=Vn("common-button-display-events");return Ar(Wh.sketch({...a.uid?{uid:a.uid}:{},...Q,dom:{tag:"button",classes:[f,`${f}--select`].concat(Fe(a.classes,be=>`${f}--${be}`)),attributes:{...U}},components:h_([P.map(be=>be.asSpec()),x.map(be=>be.asSpec()),q.some(ee)]),matchWidth:!0,useMinWidth:!0,onOpen:(be,we,Re)=>{a.searchable&&e8(Re)},dropdownBehaviours:On([...a.dropdownBehaviours,al.button(()=>a.disabled||g.providers.isDisabled()),Ol(),s2.config({}),Yo.config({}),ss("dropdown-events",[h0(a,O),Xg(a,O)]),ss(se,[xr((be,we)=>t$(be))]),ss("menubutton-update-display-text",[qt(Gf,(be,we)=>{x.bind(Re=>Re.getOpt(be)).each(Re=>{Yo.set(Re,[Xi(g.providers.translate(we.event.text))])})}),qt(C0,(be,we)=>{P.bind(Re=>Re.getOpt(be)).each(Re=>{Yo.set(Re,[S0(we.event.icon,g.providers.icons)])})})])]),eventOrder:lr(mx,{mousedown:["focusing","alloy.base.behaviour","item-type-events","normal-dropdown-events"],[bc()]:["toolbar-button-events","dropdown-events",se]}),sandboxBehaviours:On([vo.config({mode:"special",onLeft:I,onRight:I}),ss("dropdown-sandbox-events",[qt(ID,(be,we)=>{jF(be),we.stop()}),qt(BD,(be,we)=>{YF(be,we),we.stop()})])]),lazySink:g.getSink,toggleClass:`${f}--active`,parts:{menu:{...i_(!1,a.columns,a.presets),fakeFocus:a.searchable,onHighlightItem:b3,onCollapseMenu:(be,we,Re)=>{ur.getHighlighted(Re).each(Je=>{b3(be,Re,Je)})},onDehighlightItem:JF}},getAnchorOverrides:()=>({maxHeightFunction:(be,we)=>{cy()(be,we-10)}}),fetch:be=>Xc.nu(Be(a.fetch,be))})).asSpec()},K9=a=>p(a),w5=a=>a.type==="separator",J9=a=>ns(a,"getSubmenuItems"),S5={type:"separator"},eH=(a,f)=>{const g=po(a,(O,x)=>K9(x)?x===""?O:x==="|"?O.length>0&&!w5(O[O.length-1])?O.concat([S5]):O:ns(f,x.toLowerCase())?O.concat([f[x.toLowerCase()]]):O:O.concat([x]),[]);return g.length>0&&w5(g[g.length-1])&&g.pop(),g},C5=(a,f)=>{const g=a.getSubmenuItems(),O=k5(g,f),x=lr(O.menus,{[a.value]:O.items}),P=lr(O.expansions,{[a.value]:a.value});return{item:a,menus:x,expansions:P}},tH=a=>{const f=nn(a,"value").getOrThunk(()=>Vn("generated-menu-item"));return lr({value:f},a)},k5=(a,f)=>{const g=eH(p(a)?a.split(" "):a,f);return Yn(g,(O,x)=>{if(J9(x)){const P=tH(x),I=C5(P,f);return{menus:lr(O.menus,I.menus),items:[I.item,...O.items],expansions:lr(O.expansions,I.expansions)}}else return{...O,items:[x,...O.items]}},{menus:{},expansions:{},items:[]})},nH=a=>a.search.fold(()=>({searchMode:"no-search"}),f=>({searchMode:"search-with-field",placeholder:f.placeholder})),oH=a=>a.search.fold(()=>({searchMode:"no-search"}),f=>({searchMode:"search-with-results"})),T_=(a,f,g,O)=>{const x=Vn("primary-menu"),P=k5(a,g.shared.providers.menuItems());if(P.items.length===0)return q.none();const I=nH(O),Q=cM(x,P.items,f,g,O.isHorizontalMenu,I),U=oH(O),ee=ms(P.menus,(he,be)=>cM(be,he,f,g,!1,U)),se=lr(ee,xn(x,Q));return q.from(d0.tieredData(x,se,P.expansions))},r$=a=>!ns(a,"items"),x5="data-value",E5=(a,f,g,O)=>Fe(g,x=>r$(x)?{type:"togglemenuitem",text:x.text,value:x.value,active:x.value===O,onAction:()=>{Ln.setValue(a,x.value),ho(a,zd,{name:f}),Ao.focus(a)}}:{type:"nestedmenuitem",text:x.text,getSubmenuItems:()=>E5(a,f,x.items,O)}),i$=(a,f)=>Vs(a,g=>r$(g)?an(g.value===f,g):i$(g.items,f)),a$=(a,f,g)=>{const O=f.shared.providers,x=g.bind(U=>i$(a.items,U)).orThunk(()=>as(a.items).filter(r$)),P=a.label.map(U=>Zh(U,O)),I=$r.parts.field({dom:{},factory:{sketch:U=>s$({uid:U.uid,text:x.map(ee=>ee.text),icon:q.none(),tooltip:a.label,role:q.none(),fetch:(ee,se)=>{const he=E5(ee,a.name,a.items,Ln.getValue(ee));se(T_(he,Pp.CLOSE_ON_EXECUTE,f,{isHorizontalMenu:!1,search:q.none()}))},onSetup:ne(j),getApi:ne({}),columns:1,presets:"normal",classes:[],dropdownBehaviours:[$i.config({}),_0(x.map(ee=>ee.value),ee=>ui(ee.element,x5),(ee,se)=>{i$(a.items,se).each(he=>{Mn(ee.element,x5,he.value),ho(ee,Gf,{text:he.text})})})]},"tox-listbox",f.shared)}}),Q={dom:{tag:"div",classes:["tox-listboxfield"]},components:[I]};return $r.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:pt([P.toArray(),[Q]]),fieldBehaviours:On([ko.config({disabled:ne(!a.enabled),onDisabled:U=>{$r.getField(U).each(ko.disable)},onEnabled:U=>{$r.getField(U).each(ko.enable)}})])})},sH=(a,f)=>({dom:{tag:"div",classes:a.classes},components:Fe(a.items,f.shared.interpreter)}),rH=(a,f)=>{const g=Fe(a.options,x=>({dom:{tag:"option",value:x.value,innerHtml:x.text}})),O=a.data.map(x=>xn("initialValue",x)).getOr({});return{uid:a.uid,dom:{tag:"select",classes:a.selectClasses,attributes:a.selectAttributes},components:g,behaviours:$a(a.selectBehaviours,[Ao.config({}),Ln.config({store:{mode:"manual",getValue:x=>Nf(x.element),setValue:(x,P)=>{const I=as(a.options);gt(a.options,U=>U.value===P).isSome()?bg(x.element,P):x.element.dom.selectedIndex===-1&&P===""&&I.each(U=>bg(x.element,U.value))},...O}})])}},iH=sd({name:"HtmlSelect",configFields:[Gt("options"),il("selectBehaviours",[Ao,Ln]),_t("selectClasses",[]),_t("selectAttributes",{}),er("data")],factory:rH}),h2=(a,f,g)=>{const O=Fe(a.items,U=>({text:f.translate(U.text),value:U.value})),x=a.label.map(U=>Zh(U,f)),P=$r.parts.field({dom:{},...g.map(U=>({data:U})).getOr({}),selectAttributes:{size:a.size},options:O,factory:iH,selectBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled()}),$i.config({}),ss("selectbox-change",[qt(ep(),(U,ee)=>{ho(U,zd,{name:a.name})})])])}),I=a.size>1?q.none():q.some(Pm("chevron-down",{tag:"div",classes:["tox-selectfield__icon-js"]},f.icons)),Q={dom:{tag:"div",classes:["tox-selectfield"]},components:pt([[P],I.toArray()])};return $r.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:pt([x.toArray(),[Q]]),fieldBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled(),onDisabled:U=>{$r.getField(U).each(ko.disable)},onEnabled:U=>{$r.getField(U).each(ko.enable)}}),Ol()])})},l$=ne([_t("field1Name","field1"),_t("field2Name","field2"),df("onLockedChange"),bm(["lockClass"]),_t("locked",!1),gf.field("coupledFieldBehaviours",[Ds,Ln])]),aH=(a,f,g)=>ti(a,f,g).bind(Ds.getCurrent),T5=(a,f)=>yc({factory:$r,name:a,overrides:g=>({fieldBehaviours:On([ss("coupled-input-behaviour",[qt(Af(),O=>{aH(O,g,f).each(x=>{ti(O,g,"lock").each(P=>{hs.isOn(P)&&g.onLockedChange(O,x,P)})})})])])})}),c$=ne([T5("field1","field2"),T5("field2","field1"),yc({factory:Wl,schema:[Gt("dom")],name:"lock",overrides:a=>({buttonBehaviours:On([hs.config({selected:a.locked,toggleClass:a.markers.lockClass,aria:{mode:"pressed"}})])})})]),lH=(a,f,g,O)=>({uid:a.uid,dom:a.dom,components:f,behaviours:gf.augment(a.coupledFieldBehaviours,[Ds.config({find:q.some}),Ln.config({store:{mode:"manual",getValue:x=>{const P=F1(x,a,["field1","field2"]);return{[a.field1Name]:Ln.getValue(P.field1()),[a.field2Name]:Ln.getValue(P.field2())}},setValue:(x,P)=>{const I=F1(x,a,["field1","field2"]);Xr(P,a.field1Name)&&Ln.setValue(I.field1(),P[a.field1Name]),Xr(P,a.field2Name)&&Ln.setValue(I.field2(),P[a.field2Name])}}})]),apis:{getField1:x=>ti(x,a,"field1"),getField2:x=>ti(x,a,"field2"),getLock:x=>ti(x,a,"lock")}}),Ud=_c({name:"FormCoupledInputs",configFields:l$(),partFields:c$(),factory:lH,apis:{getField1:(a,f)=>a.getField1(f),getField2:(a,f)=>a.getField2(f),getLock:(a,f)=>a.getLock(f)}}),A5=a=>{const f={"":0,px:0,pt:1,mm:1,pc:2,ex:2,em:2,ch:2,rem:2,cm:3,in:4,"%":4},g=x=>x in f?f[x]:1;let O=a.value.toFixed(g(a.unit));return O.indexOf(".")!==-1&&(O=O.replace(/\.?0*$/,"")),O+a.unit},u$=a=>{const g=/^\s*(\d+(?:\.\d+)?)\s*(|cm|mm|in|px|pt|pc|em|ex|ch|rem|vw|vh|vmin|vmax|%)\s*$/.exec(a);if(g!==null){const O=parseFloat(g[1]),x=g[2];return Zo.value({value:O,unit:x})}else return Zo.error(a)},$5=(a,f)=>{const g={"":96,px:96,pt:72,cm:2.54,pc:12,mm:25.4,in:1},O=x=>ns(g,x);return a.unit===f?q.some(a.value):O(a.unit)&&O(f)?g[a.unit]===g[f]?q.some(a.value):q.some(a.value/g[a.unit]*g[f]):q.none()},px=a=>q.none(),P5=(a,f)=>g=>$5(g,f).map(O=>({value:O*a,unit:f})),cH=(a,f)=>{const g=u$(a).toOptional(),O=u$(f).toOptional();return Rn(g,O,(x,P)=>$5(x,P.unit).map(I=>P.value/I).map(I=>P5(I,P.unit)).getOr(px)).getOr(px)},D5=(a,f)=>{let g=px;const O=Vn("ratio-event"),x=he=>Pm(he,{tag:"span",classes:["tox-icon","tox-lock-icon__"+he]},f.icons),P=Ud.parts.lock({dom:{tag:"button",classes:["tox-lock","tox-button","tox-button--naked","tox-button--icon"],attributes:{title:f.translate(a.label.getOr("Constrain proportions"))}},components:[x("lock"),x("unlock")],buttonBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled()}),Ol(),$i.config({})])}),I=he=>({dom:{tag:"div",classes:["tox-form__group"]},components:he}),Q=he=>$r.parts.field({factory:cO,inputClasses:["tox-textfield"],inputBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled()}),Ol(),$i.config({}),ss("size-input-events",[qt(gi(),(be,we)=>{ho(be,O,{isField1:he})}),qt(ep(),(be,we)=>{ho(be,zd,{name:a.name})})])]),selectOnFocus:!1}),U=he=>({dom:{tag:"label",classes:["tox-label"]},components:[Xi(f.translate(he))]}),ee=Ud.parts.field1(I([$r.parts.label(U("Width")),Q(!0)])),se=Ud.parts.field2(I([$r.parts.label(U("Height")),Q(!1)]));return Ud.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:[{dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:[ee,se,I([U(Qb),P])]}],field1Name:"width",field2Name:"height",locked:!0,markers:{lockClass:"tox-locked"},onLockedChange:(he,be,we)=>{u$(Ln.getValue(he)).each(Re=>{g(Re).each(Je=>{Ln.setValue(be,A5(Je))})})},coupledFieldBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled(),onDisabled:he=>{Ud.getField1(he).bind($r.getField).each(ko.disable),Ud.getField2(he).bind($r.getField).each(ko.disable),Ud.getLock(he).each(ko.disable)},onEnabled:he=>{Ud.getField1(he).bind($r.getField).each(ko.enable),Ud.getField2(he).bind($r.getField).each(ko.enable),Ud.getLock(he).each(ko.enable)}}),Ol(),ss("size-input-events2",[qt(O,(he,be)=>{const we=be.event.isField1,Re=we?Ud.getField1(he):Ud.getField2(he),Je=we?Ud.getField2(he):Ud.getField1(he),Ct=Re.map(Ln.getValue).getOr(""),at=Je.map(Ln.getValue).getOr("");g=cH(Ct,at)})])])})},R5=(a,f,g)=>{const O=Sc.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[Xi(f.translate(a.label))]}),x=Sc.parts.spectrum({dom:{tag:"div",classes:["tox-slider__rail"],attributes:{role:"presentation"}}}),P=Sc.parts.thumb({dom:{tag:"div",classes:["tox-slider__handle"],attributes:{role:"presentation"}}});return Sc.sketch({dom:{tag:"div",classes:["tox-slider"],attributes:{role:"presentation"}},model:{mode:"x",minX:a.min,maxX:a.max,getInitialValue:ne(g.getOrThunk(()=>(Math.abs(a.max)-Math.abs(a.min))/2))},components:[O,x,P],sliderBehaviours:On([Zd.self(),Ao.config({})]),onChoose:(I,Q,U)=>{ho(I,zd,{name:a.name,value:U})}})},uH=(a,f)=>{const g=Q=>({dom:{tag:"th",innerHtml:f.translate(Q)}}),O=Q=>({dom:{tag:"thead"},components:[{dom:{tag:"tr"},components:Fe(Q,g)}]}),x=Q=>({dom:{tag:"td",innerHtml:f.translate(Q)}}),P=Q=>({dom:{tag:"tr"},components:Fe(Q,x)}),I=Q=>({dom:{tag:"tbody"},components:Fe(Q,P)});return{dom:{tag:"table",classes:["tox-dialog__table"]},components:[O(a.header),I(a.cells)],behaviours:On([$i.config({}),Ao.config({})])}},d$=(a,f)=>{const g=a.label.map(we=>Zh(we,f)),O=[ko.config({disabled:()=>a.disabled||f.isDisabled()}),Ol(),vo.config({mode:"execution",useEnter:a.multiline!==!0,useControlEnter:a.multiline===!0,execute:we=>(gs(we,o2),q.some(!0))}),ss("textfield-change",[qt(Af(),(we,Re)=>{ho(we,zd,{name:a.name})}),qt(bh(),(we,Re)=>{ho(we,zd,{name:a.name})})]),$i.config({})],x=a.validation.map(we=>Yf.config({getRoot:Re=>Rl(Re.element),invalidClass:"tox-invalid",validator:{validate:Re=>{const Je=Ln.getValue(Re),Ct=we.validator(Je);return Xc.pure(Ct===!0?Zo.value(Je):Zo.error(Ct))},validateOnLoad:we.validateOnLoad}})).toArray(),P=a.placeholder.fold(ne({}),we=>({placeholder:f.translate(we)})),I=a.inputMode.fold(ne({}),we=>({inputmode:we})),Q={...P,...I},U=$r.parts.field({tag:a.multiline===!0?"textarea":"input",...a.data.map(we=>({data:we})).getOr({}),inputAttributes:Q,inputClasses:[a.classname],inputBehaviours:On(pt([O,x])),selectOnFocus:!1,factory:cO}),ee=a.multiline?{dom:{tag:"div",classes:["tox-textarea-wrap"]},components:[U]}:U,he=(a.flex?["tox-form__group--stretched"]:[]).concat(a.maximized?["tox-form-group--maximize"]:[]),be=[ko.config({disabled:()=>a.disabled||f.isDisabled(),onDisabled:we=>{$r.getField(we).each(ko.disable)},onEnabled:we=>{$r.getField(we).each(ko.enable)}}),Ol()];return t2(g,ee,he,be)},M5=(a,f,g)=>d$({name:a.name,multiline:!1,label:a.label,inputMode:a.inputMode,placeholder:a.placeholder,flex:!1,disabled:!a.enabled,classname:"tox-textfield",validation:q.none(),maximized:a.maximized,data:g},f),N5=(a,f,g)=>d$({name:a.name,multiline:!0,label:a.label,inputMode:q.none(),placeholder:a.placeholder,flex:!0,disabled:!a.enabled,classname:"tox-textarea",validation:q.none(),maximized:a.maximized,data:g},f),m2=(a,f)=>f.getAnimationRoot.fold(()=>a.element,g=>g(a)),eb=a=>a.dimension.property,vO=(a,f)=>a.dimension.getDimension(f),p2=(a,f)=>{const g=m2(a,f);Tu(g,[f.shrinkingClass,f.growingClass])},f$=(a,f)=>{wi(a.element,f.openClass),na(a.element,f.closedClass),Wn(a.element,eb(f),"0px"),dl(a.element)},gx=(a,f)=>{wi(a.element,f.closedClass),na(a.element,f.openClass),Jo(a.element,eb(f))},I5=(a,f,g,O)=>{g.setCollapsed(),Wn(a.element,eb(f),vO(f,a.element)),p2(a,f),f$(a,f),f.onStartShrink(a),f.onShrunk(a)},dH=(a,f,g,O)=>{const x=O.getOrThunk(()=>vO(f,a.element));g.setCollapsed(),Wn(a.element,eb(f),x),dl(a.element);const P=m2(a,f);wi(P,f.growingClass),na(P,f.shrinkingClass),f$(a,f),f.onStartShrink(a)},bx=(a,f,g)=>{const O=vO(f,a.element);(O==="0px"?I5:dH)(a,f,g,q.some(O))},B5=(a,f,g)=>{const O=m2(a,f),x=Aa(O,f.shrinkingClass),P=vO(f,a.element);gx(a,f);const I=vO(f,a.element);(x?()=>{Wn(a.element,eb(f),P),dl(a.element)}:()=>{f$(a,f)})(),wi(O,f.shrinkingClass),na(O,f.growingClass),gx(a,f),Wn(a.element,eb(f),I),g.setExpanded(),f.onStartGrow(a)},fH=(a,f,g)=>{if(g.isExpanded()){Jo(a.element,eb(f));const O=vO(f,a.element);Wn(a.element,eb(f),O)}},hH=(a,f,g)=>{g.isExpanded()||B5(a,f,g)},L5=(a,f,g)=>{g.isExpanded()&&bx(a,f,g)},mH=(a,f,g)=>{g.isExpanded()&&I5(a,f,g)},F5=(a,f,g)=>g.isExpanded(),pH=(a,f,g)=>g.isCollapsed(),h$=(a,f,g)=>{const O=m2(a,f);return Aa(O,f.growingClass)===!0},H5=(a,f,g)=>{const O=m2(a,f);return Aa(O,f.shrinkingClass)===!0};var gH=Object.freeze({__proto__:null,refresh:fH,grow:hH,shrink:L5,immediateShrink:mH,hasGrown:F5,hasShrunk:pH,isGrowing:h$,isShrinking:H5,isTransitioning:(a,f,g)=>h$(a,f)||H5(a,f),toggleGrow:(a,f,g)=>{(g.isExpanded()?bx:B5)(a,f,g)},disableTransitions:p2,immediateGrow:(a,f,g)=>{g.isExpanded()||(gx(a,f),Wn(a.element,eb(f),vO(f,a.element)),p2(a,f),g.setExpanded(),f.onStartGrow(a),f.onGrown(a))}}),vH=Object.freeze({__proto__:null,exhibit:(a,f,g)=>{const O=f.expanded;return Qc(O?{classes:[f.openClass],styles:{}}:{classes:[f.closedClass],styles:xn(f.dimension.property,"0px")})},events:(a,f)=>kr([$d(mh(),(g,O)=>{O.event.raw.propertyName===a.dimension.property&&(p2(g,a),f.isExpanded()&&Jo(g.element,a.dimension.property),(f.isExpanded()?a.onGrown:a.onShrunk)(g))})])}),Q5=[Gt("closedClass"),Gt("openClass"),Gt("shrinkingClass"),Gt("growingClass"),er("getAnimationRoot"),Ps("onShrunk"),Ps("onStartShrink"),Ps("onGrown"),Ps("onStartGrow"),_t("expanded",!1),Sl("dimension",ys("property",{width:[Er("property","width"),Er("getDimension",a=>Ii(a)+"px")],height:[Er("property","height"),Er("getDimension",a=>Nr(a)+"px")]}))],OH=Object.freeze({__proto__:null,init:a=>{const f=bo(a.expanded),g=()=>"expanded: "+f.get();return Hl({isExpanded:()=>f.get()===!0,isCollapsed:()=>f.get()===!1,setCollapsed:Be(f.set,!1),setExpanded:Be(f.set,!0),readState:g})}});const yf=Za({fields:Q5,name:"sliding",active:vH,apis:gH,state:OH}),m$=a=>({isEnabled:()=>!ko.isDisabled(a),setEnabled:f=>ko.set(a,!f),setActive:f=>{const g=a.element;f?(na(g,"tox-tbtn--enabled"),Mn(g,"aria-pressed",!0)):(wi(g,"tox-tbtn--enabled"),We(g,"aria-pressed"))},isActive:()=>Aa(a.element,"tox-tbtn--enabled"),setText:f=>{ho(a,Gf,{text:f})},setIcon:f=>ho(a,C0,{icon:f})}),g2=(a,f,g,O,x=!0)=>s$({text:a.text,icon:a.icon,tooltip:a.tooltip,searchable:a.search.isSome(),role:O,fetch:(P,I)=>{const Q={pattern:a.search.isSome()?t8(P):""};a.fetch(U=>{I(T_(U,Pp.CLOSE_ON_EXECUTE,g,{isHorizontalMenu:!1,search:a.search}))},Q,m$(P))},onSetup:a.onSetup,getApi:m$,columns:1,presets:"normal",classes:[],dropdownBehaviours:[...x?[$i.config({})]:[]]},f,g.shared),yH=(a,f,g)=>{const O=P=>I=>{const Q=!I.isActive();I.setActive(Q),P.storage.set(Q),g.shared.getSink().each(U=>{f().getOpt(U).each(ee=>{ji(ee.element),ho(ee,Gg,{name:P.name,value:P.storage.get()})})})},x=P=>I=>{I.setActive(P.storage.get())};return P=>{P(Fe(a,I=>{const Q=I.text.fold(()=>({}),U=>({text:U}));return{type:I.type,active:!1,...Q,onAction:O(I),onSetup:x(I)}}))}},V5=a=>({dom:{tag:"span",classes:["tox-tree__label"],attributes:{title:a,"aria-label":a}},components:[Xi(a)]}),p$=Vn("leaf-label-event-id"),vx=({leaf:a,onLeafAction:f,visible:g,treeId:O,selectedId:x,backstage:P})=>{const I=a.menu.map(U=>g2(U,"tox-mbtn",P,q.none(),g)),Q=[V5(a.title)];return I.each(U=>Q.push(U)),Wl.sketch({dom:{tag:"div",classes:["tox-tree--leaf__label","tox-trbtn"].concat(g?["tox-tree--leaf__label--visible"]:[])},components:Q,role:"treeitem",action:U=>{f(a.id),U.getSystem().broadcastOn([`update-active-item-${O}`],{value:a.id})},eventOrder:{[Eu()]:[p$,"keying"]},buttonBehaviours:On([...g?[$i.config({})]:[],hs.config({toggleClass:"tox-trbtn--enabled",toggleOnExecute:!1,aria:{mode:"selected"}}),Wc.config({channels:{[`update-active-item-${O}`]:{onReceive:(U,ee)=>{(ee.value===a.id?hs.on:hs.off)(U)}}}}),ss(p$,[xr((U,ee)=>{x.each(se=>{(se===a.id?hs.on:hs.off)(U)})}),qt(Eu(),(U,ee)=>{const se=ee.event.raw.code==="ArrowLeft",he=ee.event.raw.code==="ArrowRight";se?(uu(U.element,".tox-tree--directory").each(be=>{U.getSystem().getByDom(be).each(we=>{Cb(be,".tox-tree--directory__label").each(Re=>{we.getSystem().getByDom(Re).each(Ao.focus)})})}),ee.stop()):he&&ee.stop()})])])})},z5=(a,f,g)=>Pm(a,{tag:"span",classes:["tox-tree__icon-wrap","tox-icon"],behaviours:g},f),Ox=(a,f)=>z5(a,f,[]),W5=Vn("directory-label-event-id"),_H=({directory:a,visible:f,noChildren:g,backstage:O})=>{const x=a.menu.map(Q=>g2(Q,"tox-mbtn",O,q.none())),P=[{dom:{tag:"div",classes:["tox-chevron"]},components:[Ox("chevron-right",O.shared.providers.icons)]},V5(a.title)];x.each(Q=>{P.push(Q)});const I=Q=>{uu(Q.element,".tox-tree--directory").each(U=>{Q.getSystem().getByDom(U).each(ee=>{const se=!hs.isOn(ee);hs.toggle(ee),ho(Q,"expand-tree-node",{expanded:se,node:a.id})})})};return Wl.sketch({dom:{tag:"div",classes:["tox-tree--directory__label","tox-trbtn"].concat(f?["tox-tree--directory__label--visible"]:[])},components:P,action:I,eventOrder:{[Eu()]:[W5,"keying"]},buttonBehaviours:On([...f?[$i.config({})]:[],ss(W5,[qt(Eu(),(Q,U)=>{const ee=U.event.raw.code==="ArrowRight",se=U.event.raw.code==="ArrowLeft";ee&&g&&U.stop(),(ee||se)&&uu(Q.element,".tox-tree--directory").each(he=>{Q.getSystem().getByDom(he).each(be=>{!hs.isOn(be)&&ee||hs.isOn(be)&&se?(I(Q),U.stop()):se&&!hs.isOn(be)&&(uu(be.element,".tox-tree--directory").each(we=>{Cb(we,".tox-tree--directory__label").each(Re=>{be.getSystem().getByDom(Re).each(Ao.focus)})}),U.stop())})})})])])})},wH=({children:a,onLeafAction:f,visible:g,treeId:O,expandedIds:x,selectedId:P,backstage:I})=>({dom:{tag:"div",classes:["tox-tree--directory__children"]},components:a.map(Q=>Q.type==="leaf"?vx({leaf:Q,selectedId:P,onLeafAction:f,visible:g,treeId:O,backstage:I}):yx({directory:Q,expandedIds:x,selectedId:P,onLeafAction:f,labelTabstopping:g,treeId:O,backstage:I})),behaviours:On([yf.config({dimension:{property:"height"},closedClass:"tox-tree--directory__children--closed",openClass:"tox-tree--directory__children--open",growingClass:"tox-tree--directory__children--growing",shrinkingClass:"tox-tree--directory__children--shrinking",expanded:g}),Yo.config({})])}),SH=Vn("directory-event-id"),yx=({directory:a,onLeafAction:f,labelTabstopping:g,treeId:O,backstage:x,expandedIds:P,selectedId:I})=>{const{children:Q}=a,U=bo(P),ee=he=>Q.map(be=>be.type==="leaf"?vx({leaf:be,selectedId:I,onLeafAction:f,visible:he,treeId:O,backstage:x}):yx({directory:be,expandedIds:U.get(),selectedId:I,onLeafAction:f,labelTabstopping:he,treeId:O,backstage:x})),se=P.includes(a.id);return{dom:{tag:"div",classes:["tox-tree--directory"],attributes:{role:"treeitem"}},components:[_H({directory:a,visible:g,noChildren:a.children.length===0,backstage:x}),wH({children:Q,expandedIds:P,selectedId:I,onLeafAction:f,visible:se,treeId:O,backstage:x})],behaviours:On([ss(SH,[xr((he,be)=>{hs.set(he,se)}),qt("expand-tree-node",(he,be)=>{const{expanded:we,node:Re}=be.event;U.set(we?[...U.get(),Re]:U.get().filter(Je=>Je!==Re))})]),hs.config({...a.children.length>0?{aria:{mode:"expanded"}}:{},toggleClass:"tox-tree--directory--expanded",onToggled:(he,be)=>{const we=he.components()[1],Re=ee(be);be?yf.grow(we):yf.shrink(we),Yo.set(we,Re)}})])}},CH=Vn("tree-event-id"),kH=(a,f)=>{const g=a.onLeafAction.getOr(j),O=a.onToggleExpand.getOr(j),x=a.defaultExpandedIds,P=bo(x),I=bo(a.defaultSelectedId),Q=Vn("tree-id"),U=(ee,se)=>a.items.map(he=>he.type==="leaf"?vx({leaf:he,selectedId:ee,onLeafAction:g,visible:!0,treeId:Q,backstage:f}):yx({directory:he,selectedId:ee,onLeafAction:g,expandedIds:se,labelTabstopping:!0,treeId:Q,backstage:f}));return{dom:{tag:"div",classes:["tox-tree"],attributes:{role:"tree"}},components:U(I.get(),P.get()),behaviours:On([vo.config({mode:"flow",selector:".tox-tree--leaf__label--visible, .tox-tree--directory__label--visible",cycles:!1}),ss(CH,[qt("expand-tree-node",(ee,se)=>{const{expanded:he,node:be}=se.event;P.set(he?[...P.get(),be]:P.get().filter(we=>we!==be)),O(P.get(),{expanded:he,node:be})})]),Wc.config({channels:{[`update-active-item-${Q}`]:{onReceive:(ee,se)=>{I.set(q.some(se.value)),Yo.set(ee,U(q.some(se.value),P.get()))}}}}),Yo.config({})])}};var Z5=Object.freeze({__proto__:null,events:(a,f)=>{const O=a.stream.streams.setup(a,f);return kr([qt(a.event,O),Pd(()=>f.cancel())].concat(a.cancelEvent.map(x=>[qt(x,()=>f.cancel())]).getOr([])))}});const g$=a=>{const f=bo(null);return Hl({readState:()=>({timer:f.get()!==null?"set":"unset"}),setTimer:P=>{f.set(P)},cancel:()=>{const P=f.get();P!==null&&P.cancel()}})};var xH=Object.freeze({__proto__:null,throttle:g$,init:a=>a.stream.streams.state(a)});const U5=(a,f)=>{const g=a.stream,O=ux(a.onStream,g.delay);return f.setTimer(O),(x,P)=>{O.throttle(x,P),g.stopEvent&&P.stop()}};var EH=[Sl("stream",ys("mode",{throttle:[Gt("delay"),_t("stopEvent",!0),Er("streams",{setup:U5,state:g$})]})),_t("event","input"),er("cancelEvent"),df("onStream")];const b$=Za({fields:EH,name:"streaming",active:Z5,state:xH}),No=(a,f,g)=>{const O=Ln.getValue(g);Ln.setValue(f,O),v$(f)},A_=(a,f)=>{const g=a.element,O=Nf(g),x=g.dom;ui(g,"type")!=="number"&&f(x,O)},v$=a=>{A_(a,(f,g)=>f.setSelectionRange(g.length,g.length))},q5=(a,f)=>{A_(a,(g,O)=>g.setSelectionRange(f,O.length))},X5=(a,f,g)=>{if(a.selectsOver){const O=Ln.getValue(f),x=a.getDisplayText(O),P=Ln.getValue(g);return a.getDisplayText(P).indexOf(x)===0?q.some(()=>{No(a,f,g),q5(f,x.length)}):q.none()}else return q.none()},_x=ne("alloy.typeahead.itemexecute"),j5=(a,f,g,O)=>{const x=(he,be,we)=>{a.previewing.set(!1);const Re=Sa.getCoupled(he,"sandbox");if(Is.isOpen(Re))Ds.getCurrent(Re).each(Je=>{ur.getHighlighted(Je).fold(()=>{we(Je)},()=>{cb(Re,Je.element,"keydown",be)})});else{const Je=Ct=>{Ds.getCurrent(Ct).each(we)};Vk(a,I(he),he,Re,O,Je,Bu.HighlightMenuAndItem).get(j)}},P=vA(a),I=he=>be=>be.map(we=>{const Re=Qi(we.menus),Je=Ne(Re,at=>jn(at.items,st=>st.type==="item"));return Ln.getState(he).update(Fe(Je,at=>at.data)),we}),Q=he=>Ds.getCurrent(he),U="typeaheadevents",ee=[Ao.config({}),Ln.config({onSetValue:a.onSetValue,store:{mode:"dataset",getDataKey:he=>Nf(he.element),getFallbackEntry:he=>({value:he,meta:{}}),setValue:(he,be)=>{bg(he.element,a.model.getDisplayText(be))},...a.initialData.map(he=>xn("initialValue",he)).getOr({})}}),b$.config({stream:{mode:"throttle",delay:a.responseTime,stopEvent:!1},onStream:(he,be)=>{const we=Sa.getCoupled(he,"sandbox");if(Ao.isFocused(he)&&Nf(he.element).length>=a.minChars){const Je=Q(we).bind(at=>ur.getHighlighted(at).map(Ln.getValue));a.previewing.set(!0);const Ct=at=>{Q(we).each(st=>{Je.fold(()=>{a.model.selectsOver&&ur.highlightFirst(st)},Ot=>{ur.highlightBy(st,hn=>Ln.getValue(hn).value===Ot.value),ur.getHighlighted(st).orThunk(()=>(ur.highlightFirst(st),q.none()))})})};Vk(a,I(he),he,we,O,Ct,Bu.HighlightJustMenu).get(j)}},cancelEvent:h1()}),vo.config({mode:"special",onDown:(he,be)=>(x(he,be,ur.highlightFirst),q.some(!0)),onEscape:he=>{const be=Sa.getCoupled(he,"sandbox");return Is.isOpen(be)?(Is.close(be),q.some(!0)):q.none()},onUp:(he,be)=>(x(he,be,ur.highlightLast),q.some(!0)),onEnter:he=>{const be=Sa.getCoupled(he,"sandbox"),we=Is.isOpen(be);if(we&&!a.previewing.get())return Q(be).bind(Re=>ur.getHighlighted(Re)).map(Re=>(ho(he,_x(),{item:Re}),!0));{const Re=Ln.getValue(he);return gs(he,h1()),a.onExecute(be,he,Re),we&&Is.close(be),q.some(!0)}}}),hs.config({toggleClass:a.markers.openClass,aria:{mode:"expanded"}}),Sa.config({others:{sandbox:he=>p3(a,he,{onOpen:()=>hs.on(he),onClose:()=>{a.lazyTypeaheadComp.get().each(be=>We(be.element,"aria-activedescendant")),hs.off(he)}})}}),ss(U,[xr(he=>{a.lazyTypeaheadComp.set(q.some(he))}),Pd(he=>{a.lazyTypeaheadComp.set(q.none())}),vc(he=>{const be=j;m3(a,I(he),he,O,be,Bu.HighlightMenuAndItem).get(j)}),qt(_x(),(he,be)=>{const we=Sa.getCoupled(he,"sandbox");No(a.model,he,be.event.item),gs(he,h1()),a.onItemExecute(he,we,be.event.item,Ln.getValue(he)),Is.close(we),v$(he)})].concat(a.dismissOnBlur?[qt(gh(),he=>{const be=Sa.getCoupled(he,"sandbox");Id(be.element).isNone()&&Is.close(be)})]:[]))],se={[Yu()]:[Ln.name(),b$.name(),U],...a.eventOrder};return{uid:a.uid,dom:pk(lr(a,{inputAttributes:{role:"combobox","aria-autocomplete":"list","aria-haspopup":"true"}})),behaviours:{...P,...$a(a.typeaheadBehaviours,ee)},eventOrder:se}},LU=ne([er("lazySink"),Gt("fetch"),_t("minChars",5),_t("responseTime",1e3),Ps("onOpen"),_t("getHotspot",q.some),_t("getAnchorOverrides",ne({})),_t("layouts",q.none()),_t("eventOrder",{}),Sd("model",{},[_t("getDisplayText",a=>a.meta!==void 0&&a.meta.text!==void 0?a.meta.text:a.value),_t("selectsOver",!0),_t("populateFromBrowse",!0)]),Ps("onSetValue"),fu("onExecute"),Ps("onItemExecute"),_t("inputClasses",[]),_t("inputAttributes",{}),_t("inputStyles",{}),_t("matchWidth",!0),_t("useMinWidth",!1),_t("dismissOnBlur",!0),bm(["openClass"]),er("initialData"),il("typeaheadBehaviours",[Ao,Ln,b$,vo,hs,Sa]),Qr("lazyTypeaheadComp",()=>bo(q.none)),Qr("previewing",()=>bo(!0))].concat(FS()).concat(g3())),b2=ne([Wf({schema:[y1()],name:"menu",overrides:a=>({fakeFocus:!0,onHighlightItem:(f,g,O)=>{a.previewing.get()?a.lazyTypeaheadComp.get().each(x=>{X5(a.model,x,O).fold(()=>{a.model.selectsOver?(ur.dehighlight(g,O),a.previewing.set(!0)):a.previewing.set(!1)},P=>{P(),a.previewing.set(!1)})}):a.lazyTypeaheadComp.get().each(x=>{a.model.populateFromBrowse&&No(a.model,x,O),me(O.element,"id").each(P=>Mn(x.element,"aria-activedescendant",P))})},onExecute:(f,g)=>a.lazyTypeaheadComp.get().map(O=>(ho(O,_x(),{item:g}),!0)),onHover:(f,g)=>{a.previewing.set(!1),a.lazyTypeaheadComp.get().each(O=>{a.model.populateFromBrowse&&No(a.model,O,g)})}})})]),TH=_c({name:"Typeahead",configFields:LU(),partFields:b2(),factory:j5}),Uh=a=>({...a,toCached:()=>Uh(a.toCached()),bindFuture:U=>Uh(a.bind(ee=>ee.fold(se=>Xc.pure(Zo.error(se)),se=>U(se)))),bindResult:U=>Uh(a.map(ee=>ee.bind(U))),mapResult:U=>Uh(a.map(ee=>ee.map(U))),mapError:U=>Uh(a.map(ee=>ee.mapError(U))),foldResult:(U,ee)=>a.map(se=>se.fold(U,ee)),withTimeout:(U,ee)=>Uh(Xc.nu(se=>{let he=!1;const be=setTimeout(()=>{he=!0,se(Zo.error(ee()))},U);a.get(we=>{he||(clearTimeout(be),se(we))})}))}),Y5=a=>Uh(Xc.nu(a)),G5=a=>Uh(Xc.pure(Zo.value(a))),PH={nu:Y5,wrap:Uh,pure:G5,value:G5,error:a=>Uh(Xc.pure(Zo.error(a))),fromResult:a=>Uh(Xc.pure(a)),fromFuture:a=>Uh(a.map(Zo.value)),fromPromise:a=>Y5(f=>{a.then(g=>{f(Zo.value(g))},g=>{f(Zo.error(g))})})},wx=(a,f,g=[],O,x,P)=>{const I=f.fold(()=>({}),ee=>({action:ee})),Q={buttonBehaviours:On([al.button(()=>!a.enabled||P.isDisabled()),Ol(),$i.config({}),ss("button press",[Q0("click"),Q0("mousedown")])].concat(g)),eventOrder:{click:["button press","alloy.base.behaviour"],mousedown:["button press","alloy.base.behaviour"]},...I},U=lr(Q,{dom:O});return lr(U,{components:x})},DH=(a,f,g,O=[])=>{const x=a.tooltip.map(U=>({"aria-label":g.translate(U),title:g.translate(U)})).getOr({}),P={tag:"button",classes:["tox-tbtn"],attributes:x},I=a.icon.map(U=>o$(U,g.icons)),Q=h_([I]);return wx(a,f,O,P,Q,g)},O$=a=>{switch(a){case"primary":return["tox-button"];case"toolbar":return["tox-tbtn"];case"secondary":default:return["tox-button","tox-button--secondary"]}},J5=(a,f,g,O=[],x=[])=>{const P=g.translate(a.text),I=a.icon.map(be=>o$(be,g.icons)),Q=[I.getOrThunk(()=>Xi(P))],U=a.buttonType.getOr(!a.primary&&!a.borderless?"secondary":"primary"),he={tag:"button",classes:[...O$(U),...I.isSome()?["tox-button--icon"]:[],...a.borderless?["tox-button--naked"]:[],...x],attributes:{title:P}};return wx(a,f,O,he,Q,g)},y$=(a,f,g,O=[],x=[])=>{const P=J5(a,q.some(f),g,O,x);return Wl.sketch(P)},eN=(a,f)=>g=>{f==="custom"?ho(g,Gg,{name:a,value:{}}):f==="submit"?gs(g,o2):f==="cancel"?gs(g,v0):console.error("Unknown button type: ",f)},RH=(a,f)=>f==="menu",MH=(a,f)=>f==="custom"||f==="cancel"||f==="submit",NH=(a,f)=>f==="togglebutton",IH=(a,f)=>{var g,O;const x=a.icon.map(st=>S0(st,f.icons)).map(Ar),P=st=>{ho(st,Gg,{name:a.name,value:{setIcon:Ot=>{x.map(hn=>hn.getOpt(st).each(jt=>{Yo.set(jt,[S0(Ot,f.icons)])}))}}})},I=a.buttonType.getOr(a.primary?"primary":"secondary"),Q={...a,name:(g=a.name)!==null&&g!==void 0?g:"",primary:I==="primary",tooltip:q.from(a.tooltip),enabled:(O=a.enabled)!==null&&O!==void 0?O:!1,borderless:!1},U=Q.tooltip.map(st=>({"aria-label":f.translate(st),title:f.translate(st)})).getOr({}),ee=O$(I??"secondary"),se=a.icon.isSome()&&a.text.isSome(),he={tag:"button",classes:[...ee.concat(a.icon.isSome()?["tox-button--icon"]:[]),...a.active?["tox-button--enabled"]:[],...se?["tox-button--icon-and-text"]:[]],attributes:U},be=[],we=f.translate(a.text.getOr("")),Re=Xi(we),Ct=[...h_([x.map(st=>st.asSpec())]),...a.text.isSome()?[Re]:[]],at=wx(Q,q.some(P),be,he,Ct,f);return Wl.sketch(at)},Sx=(a,f,g)=>{if(RH(a,f)){const O=()=>I,x=a,P={...a,type:"menubutton",search:q.none(),onSetup:Q=>(Q.setEnabled(a.enabled),j),fetch:yH(x.items,O,g)},I=Ar(g2(P,"tox-tbtn",g,q.none()));return I.asSpec()}else if(MH(a,f)){const O=eN(a.name,f),x={...a,borderless:!1};return y$(x,O,g.shared.providers,[])}else{if(NH(a,f))return IH(a,g.shared.providers);throw console.error("Unknown footer button type: ",f),new Error("Unknown footer button type")}},BH=(a,f)=>{const g=eN(a.name,"custom");return C8(q.none(),$r.parts.field({factory:Wl,...J5(a,q.some(g),f,[cx(""),Zd.self()])}))},LH={type:"separator"},FH=a=>({type:"menuitem",value:a.url,text:a.title,meta:{attach:a.attach},onAction:j}),_$=(a,f)=>({type:"menuitem",value:f,text:a,meta:{attach:void 0},onAction:j}),HH=a=>Fe(a,FH),tN=(a,f)=>jn(f,g=>g.type===a),nN=(a,f)=>HH(tN(a,f)),QH=a=>nN("header",a.targets),VH=a=>nN("anchor",a.targets),zH=a=>q.from(a.anchorTop).map(f=>_$("",f)).toArray(),WH=a=>q.from(a.anchorBottom).map(f=>_$("",f)).toArray(),ZH=a=>Fe(a,f=>_$(f,f)),oN=a=>po(a,(f,g)=>f.length===0||g.length===0?f.concat(g):f.concat(LH,g),[]),w$=(a,f)=>{const g=a.toLowerCase();return jn(f,O=>{var x;const P=O.meta!==void 0&&O.meta.text!==void 0?O.meta.text:O.text,I=(x=O.value)!==null&&x!==void 0?x:"";return Ks(P.toLowerCase(),g)||Ks(I.toLowerCase(),g)})},sN=(a,f,g)=>{var O,x;const P=Ln.getValue(f),I=(x=(O=P==null?void 0:P.meta)===null||O===void 0?void 0:O.text)!==null&&x!==void 0?x:P.value;return g.getLinkInformation().fold(()=>[],U=>{const ee=w$(I,ZH(g.getHistory(a)));return a==="file"?oN([ee,w$(I,QH(U)),w$(I,pt([zH(U),VH(U),WH(U)]))]):ee})},rN=Vn("aria-invalid"),iN=(a,f,g,O)=>{const x=f.shared.providers,P=st=>{const Ot=Ln.getValue(st);g.addToHistory(Ot.value,a.filetype)},I={...O.map(st=>({initialData:st})).getOr({}),dismissOnBlur:!0,inputClasses:["tox-textfield"],sandboxClasses:["tox-dialog__popups"],inputAttributes:{"aria-errormessage":rN,type:"url"},minChars:0,responseTime:0,fetch:st=>{const Ot=sN(a.filetype,st,g),hn=T_(Ot,Pp.BUBBLE_TO_SANDBOX,f,{isHorizontalMenu:!1,search:q.none()});return Xc.pure(hn)},getHotspot:st=>Re.getOpt(st),onSetValue:(st,Ot)=>{st.hasConfigured(Yf)&&Yf.run(st).get(j)},typeaheadBehaviours:On([...g.getValidationHandler().map(st=>Yf.config({getRoot:Ot=>Rl(Ot.element),invalidClass:"tox-control-wrap--status-invalid",notify:{onInvalid:(Ot,hn)=>{se.getOpt(Ot).each(jt=>{Mn(jt.element,"title",x.translate(hn))})}},validator:{validate:Ot=>{const hn=Ln.getValue(Ot);return PH.nu(jt=>{st({type:a.filetype,url:hn.value},Wt=>{if(Wt.status==="invalid"){const yn=Zo.error(Wt.message);jt(yn)}else{const yn=Zo.value(Wt.message);jt(yn)}})})},validateOnLoad:!1}})).toArray(),ko.config({disabled:()=>!a.enabled||x.isDisabled()}),$i.config({}),ss("urlinput-events",[qt(Af(),st=>{const Ot=Nf(st.element),hn=Ot.trim();hn!==Ot&&bg(st.element,hn),a.filetype==="file"&&ho(st,zd,{name:a.name})}),qt(ep(),st=>{ho(st,zd,{name:a.name}),P(st)}),qt(bh(),st=>{ho(st,zd,{name:a.name}),P(st)})])]),eventOrder:{[Af()]:["streaming","urlinput-events","invalidating"]},model:{getDisplayText:st=>st.value,selectsOver:!1,populateFromBrowse:!1},markers:{openClass:"tox-textfield--popup-open"},lazySink:f.shared.getSink,parts:{menu:i_(!1,1,"normal")},onExecute:(st,Ot,hn)=>{ho(Ot,o2,{})},onItemExecute:(st,Ot,hn,jt)=>{P(st),ho(st,zd,{name:a.name})}},Q=$r.parts.field({...I,factory:TH}),U=a.label.map(st=>Zh(st,x)),se=Ar(((st,Ot,hn=st,jt=st)=>Pm(hn,{tag:"div",classes:["tox-icon","tox-control-wrap__status-icon-"+st],attributes:{title:x.translate(jt),"aria-live":"polite",...Ot.fold(()=>({}),Wt=>({id:Wt}))}},x.icons))("invalid",q.some(rN),"warning")),he=Ar({dom:{tag:"div",classes:["tox-control-wrap__status-icon-wrap"]},components:[se.asSpec()]}),be=g.getUrlPicker(a.filetype),we=Vn("browser.url.event"),Re=Ar({dom:{tag:"div",classes:["tox-control-wrap"]},components:[Q,he.asSpec()],behaviours:On([ko.config({disabled:()=>!a.enabled||x.isDisabled()})])}),Je=Ar(y$({name:a.name,icon:q.some("browse"),text:a.picker_text.or(a.label).getOr(""),enabled:a.enabled,primary:!1,buttonType:q.none(),borderless:!0},st=>gs(st,we),x,[],["tox-browse-url"])),Ct=()=>({dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:pt([[Re.asSpec()],be.map(()=>Je.asSpec()).toArray()])}),at=st=>{Ds.getCurrent(st).each(Ot=>{const hn=Ln.getValue(Ot),jt={fieldname:a.name,...hn};be.each(Wt=>{Wt(jt).get(yn=>{Ln.setValue(Ot,yn),ho(st,zd,{name:a.name})})})})};return $r.sketch({dom:TU(),components:U.toArray().concat([Ct()]),fieldBehaviours:On([ko.config({disabled:()=>!a.enabled||x.isDisabled(),onDisabled:st=>{$r.getField(st).each(ko.disable),Je.getOpt(st).each(ko.disable)},onEnabled:st=>{$r.getField(st).each(ko.enable),Je.getOpt(st).each(ko.enable)}}),Ol(),ss("url-input-events",[qt(we,at)])])})},aN=(a,f)=>{const g=UT(a.icon,f.icons);return Dp.sketch({dom:{tag:"div",attributes:{role:"alert"},classes:["tox-notification","tox-notification--in",`tox-notification--${a.level}`]},components:[{dom:{tag:"div",classes:["tox-notification__icon"],innerHtml:a.url?void 0:g},components:a.url?[Wl.sketch({dom:{tag:"button",classes:["tox-button","tox-button--naked","tox-button--icon"],innerHtml:g,attributes:{title:f.translate(a.iconTooltip)}},action:O=>ho(O,Gg,{name:"alert-banner",value:a.url}),buttonBehaviours:On([nk()])})]:void 0},{dom:{tag:"div",classes:["tox-notification__body"],innerHtml:f.translate(a.text)}}]})},S$=(a,f)=>{a.dom.checked=f},UH=a=>a.dom.checked,lN=(a,f,g)=>{const O=U=>(U.element.dom.click(),q.some(!0)),x=$r.parts.field({factory:{sketch:Se},dom:{tag:"input",classes:["tox-checkbox__input"],attributes:{type:"checkbox"}},behaviours:On([Zd.self(),ko.config({disabled:()=>!a.enabled||f.isDisabled(),onDisabled:U=>{Rl(U.element).each(ee=>na(ee,"tox-checkbox--disabled"))},onEnabled:U=>{Rl(U.element).each(ee=>wi(ee,"tox-checkbox--disabled"))}}),$i.config({}),Ao.config({}),q3(g,UH,S$),vo.config({mode:"special",onEnter:O,onSpace:O,stopSpaceKeyup:!0}),ss("checkbox-events",[qt(ep(),(U,ee)=>{ho(U,zd,{name:a.name})})])])}),P=$r.parts.label({dom:{tag:"span",classes:["tox-checkbox__label"]},components:[Xi(f.translate(a.label))],behaviours:On([s2.config({})])}),I=U=>Pm(U==="checked"?"selected":"unselected",{tag:"span",classes:["tox-icon","tox-checkbox-icon__"+U]},f.icons),Q=Ar({dom:{tag:"div",classes:["tox-checkbox__icons"]},components:[I("checked"),I("unchecked")]});return $r.sketch({dom:{tag:"label",classes:["tox-checkbox"]},components:[x,Q.asSpec(),P],fieldBehaviours:On([ko.config({disabled:()=>!a.enabled||f.isDisabled()}),Ol()])})},cN=a=>a.presets==="presentation"?Dp.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:a.html}}):Dp.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:a.html,attributes:{role:"document"}},containerBehaviours:On([$i.config({}),Ao.config({})])}),Al=a=>(f,g,O,x)=>nn(g,"name").fold(()=>a(g,x,q.none()),P=>f.field(P,a(g,x,nn(O,P)))),uN=a=>(f,g,O,x)=>{const P=lr(g,{source:"dynamic"});return Al(a)(f,P,O,x)},qH={bar:Al((a,f)=>v8(a,f.shared)),collection:Al((a,f,g)=>x8(a,f.shared.providers,g)),alertbanner:Al((a,f)=>aN(a,f.shared.providers)),input:Al((a,f,g)=>M5(a,f.shared.providers,g)),textarea:Al((a,f,g)=>N5(a,f.shared.providers,g)),label:Al((a,f)=>y5(a,f.shared)),iframe:uN((a,f,g)=>q9(a,f.shared.providers,g)),button:Al((a,f)=>BH(a,f.shared.providers)),checkbox:Al((a,f,g)=>lN(a,f.shared.providers,g)),colorinput:Al((a,f,g)=>D8(a,f.shared,f.colorinput,g)),colorpicker:Al((a,f,g)=>B9(a,f.shared.providers,g)),dropzone:Al((a,f,g)=>F9(a,f.shared.providers,g)),grid:Al((a,f)=>h5(a,f.shared)),listbox:Al((a,f,g)=>a$(a,f,g)),selectbox:Al((a,f,g)=>h2(a,f.shared.providers,g)),sizeinput:Al((a,f)=>D5(a,f.shared.providers)),slider:Al((a,f,g)=>R5(a,f.shared.providers,g)),urlinput:Al((a,f,g)=>iN(a,f,f.urlinput,g)),customeditor:Al(d5),htmlpanel:Al(cN),imagepreview:Al((a,f,g)=>Y9(a,g)),table:Al((a,f)=>uH(a,f.shared.providers)),tree:Al((a,f)=>kH(a,f)),panel:Al((a,f)=>sH(a,f))},XH={field:(a,f)=>f,record:ne([])},Lm=(a,f,g,O)=>{const x=lr(O,{shared:{interpreter:P=>$_(a,P,g,x)}});return $_(a,f,g,x)},$_=(a,f,g,O)=>nn(qH,f.type).fold(()=>(console.error(`Unknown factory type "${f.type}", defaulting to container: `,f),f),x=>x(a,f,g,O)),v2=(a,f,g)=>$_(XH,a,f,g),k0="layout-inset",O2=a=>a.x,dN=(a,f)=>a.x+a.width/2-f.width/2,y2=(a,f)=>a.x+a.width-f.width,Cx=a=>a.y,_2=(a,f)=>a.y+a.height-f.height,fN=(a,f)=>a.y+a.height/2-f.height/2,w2=(a,f,g)=>wa(y2(a,f),_2(a,f),g.insetSouthwest(),ed(),"southwest",bi(a,{right:0,bottom:3}),k0),S2=(a,f,g)=>wa(O2(a),_2(a,f),g.insetSoutheast(),Ab(),"southeast",bi(a,{left:1,bottom:3}),k0),OO=(a,f,g)=>wa(y2(a,f),Cx(a),g.insetNorthwest(),tv(),"northwest",bi(a,{right:0,top:2}),k0),C2=(a,f,g)=>wa(O2(a),Cx(a),g.insetNortheast(),w1(),"northeast",bi(a,{left:1,top:2}),k0),Fm=(a,f,g)=>wa(dN(a,f),Cx(a),g.insetNorth(),Nd(),"north",bi(a,{top:2}),k0),P_=(a,f,g)=>wa(dN(a,f),_2(a,f),g.insetSouth(),hw(),"south",bi(a,{bottom:3}),k0),hN=(a,f,g)=>wa(y2(a,f),fN(a,f),g.insetEast(),hp(),"east",bi(a,{right:0}),k0),mN=(a,f,g)=>wa(O2(a),fN(a,f),g.insetWest(),Dt(),"west",bi(a,{left:1}),k0),pN=a=>{switch(a){case"north":return Fm;case"northeast":return C2;case"northwest":return OO;case"south":return P_;case"southeast":return S2;case"southwest":return w2;case"east":return hN;case"west":return mN}},C$=(a,f,g,O,x)=>ny(O).map(pN).getOr(Fm)(a,f,g,O,x),jH=a=>{switch(a){case"north":return P_;case"northeast":return S2;case"northwest":return w2;case"south":return Fm;case"southeast":return C2;case"southwest":return OO;case"east":return mN;case"west":return hN}},YH=(a,f,g,O,x)=>ny(O).map(jH).getOr(Fm)(a,f,g,O,x),k2={valignCentre:[],alignCentre:[],alignLeft:[],alignRight:[],right:[],left:[],bottom:[],top:[]},GH=(a,f,g)=>{const x={maxHeightFunction:pf()},P=()=>({type:"node",root:fn(At(a())),node:q.from(a()),bubble:Qf(12,12,k2),layouts:{onRtl:()=>[C2],onLtr:()=>[OO]},overrides:x}),I=()=>({type:"hotspot",hotspot:f(),bubble:Qf(-12,12,k2),layouts:{onRtl:()=>[Qa,kl,zr],onLtr:()=>[kl,Qa,zr]},overrides:x});return()=>g()?P():I()},gN=(a,f,g,O)=>{const P={maxHeightFunction:pf()},I=()=>({type:"node",root:fn(At(f())),node:q.from(f()),bubble:Qf(12,12,k2),layouts:{onRtl:()=>[Fm],onLtr:()=>[Fm]},overrides:P}),Q=()=>a?{type:"node",root:fn(At(f())),node:q.from(f()),bubble:Qf(0,-hd(f()),k2),layouts:{onRtl:()=>[oc],onLtr:()=>[oc]},overrides:P}:{type:"hotspot",hotspot:g(),bubble:Qf(0,0,k2),layouts:{onRtl:()=>[oc],onLtr:()=>[oc]},overrides:P};return()=>O()?I():Q()},Np=(a,f,g)=>{const O=()=>({type:"node",root:fn(At(a())),node:q.from(a()),layouts:{onRtl:()=>[Fm],onLtr:()=>[Fm]}}),x=()=>({type:"hotspot",hotspot:f(),layouts:{onRtl:()=>[zr],onLtr:()=>[zr]}});return()=>g()?O():x()},k$=(a,f)=>()=>({type:"selection",root:f(),getSelection:()=>{const g=a.selection.getRng(),O=a.model.table.getSelectedCells();if(O.length>1){const x=O[0],P=O[O.length-1],I={firstCell:nt.fromDom(x),lastCell:nt.fromDom(P)};return q.some(I)}return q.some(bl.range(nt.fromDom(g.startContainer),g.startOffset,nt.fromDom(g.endContainer),g.endOffset))}}),KH=a=>f=>({type:"node",root:a(),node:f}),JH=(a,f,g,O)=>{const x=s_(a),P=()=>nt.fromDom(a.getBody()),I=()=>nt.fromDom(a.getContentAreaContainer()),Q=()=>x||!O();return{inlineDialog:GH(I,f,Q),inlineBottomDialog:gN(a.inline,I,g,Q),banner:Np(I,f,Q),cursor:k$(a,P),node:KH(P)}},eQ=a=>(f,g)=>{YR(a)(f,g)},tQ=a=>()=>WR(a),nQ=a=>f=>Bk(a,f),bN=a=>f=>zR(a,f),vN=a=>({colorPicker:eQ(a),hasCustomColors:tQ(a),getColors:nQ(a),getColorCols:bN(a)}),HU=a=>()=>oA(a),QU=a=>({isDraggableModal:HU(a)}),jc=a=>{const f=bo(aA(a)?"bottom":"top");return{isPositionedAtTop:()=>f.get()==="top",getDockingMode:f.get,setDockingMode:f.set}},kx=a=>Xr(a,"items"),ON=a=>Xr(a,"format"),x2=[{title:"Headings",items:[{title:"Heading 1",format:"h1"},{title:"Heading 2",format:"h2"},{title:"Heading 3",format:"h3"},{title:"Heading 4",format:"h4"},{title:"Heading 5",format:"h5"},{title:"Heading 6",format:"h6"}]},{title:"Inline",items:[{title:"Bold",format:"bold"},{title:"Italic",format:"italic"},{title:"Underline",format:"underline"},{title:"Strikethrough",format:"strikethrough"},{title:"Superscript",format:"superscript"},{title:"Subscript",format:"subscript"},{title:"Code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Align",items:[{title:"Left",format:"alignleft"},{title:"Center",format:"aligncenter"},{title:"Right",format:"alignright"},{title:"Justify",format:"alignjustify"}]}],oQ=a=>ns(a,"items"),sQ=a=>ns(a,"block"),rQ=a=>ns(a,"inline"),iQ=a=>ns(a,"selector"),yN=a=>po(a,(f,g)=>{if(oQ(g)){const O=yN(g.items);return{customFormats:f.customFormats.concat(O.customFormats),formats:f.formats.concat([{title:g.title,items:O.formats}])}}else if(rQ(g)||sQ(g)||iQ(g)){const x=`custom-${p(g.name)?g.name:g.title.toLowerCase()}`;return{customFormats:f.customFormats.concat([{name:x,format:g}]),formats:f.formats.concat([{title:g.title,format:x,icon:g.icon}])}}else return{...f,formats:f.formats.concat(g)}},{customFormats:[],formats:[]}),aQ=(a,f)=>{const g=yN(f),O=x=>{mt(x,P=>{a.formatter.has(P.name)||a.formatter.register(P.name,P.format)})};return a.formatter?O(g.customFormats):a.on("init",()=>{O(g.customFormats)}),g.formats},_N=a=>dD(a).map(f=>{const g=aQ(a,f);return fD(a)?x2.concat(g):g}).getOr(x2),lQ=a=>{const f=Ts(a);return f.length===1&&ct(f,"title")},x$=(a,f,g)=>({...a,type:"formatter",isSelected:f(a.format),getStylePreview:g(a.format)}),E2=(a,f,g,O)=>{const x=U=>x$(U,g,O),P=U=>{const ee=Q(U.items);return{...U,type:"submenu",getStyleItems:ne(ee)}},I=U=>{const ee=p(U.name)?U.name:Vn(U.title),se=`custom-${ee}`,he={...U,type:"formatter",format:se,isSelected:g(se),getStylePreview:O(se)};return a.formatter.register(ee,he),he},Q=U=>Fe(U,ee=>kx(ee)?P(ee):ON(ee)?x(ee):lQ(ee)?{...ee,type:"separator"}:I(ee));return Q(f)},cQ=a=>{const f=Q=>()=>a.formatter.match(Q),g=Q=>()=>{const U=a.formatter.get(Q);return U!==void 0?q.some({tag:U.length>0&&(U[0].inline||U[0].block)||"div",styles:a.dom.parseStyle(a.formatter.getCssText(Q))}):q.none()},O=bo([]),x=bo([]),P=bo(!1);return a.on("PreInit",Q=>{const U=_N(a),ee=E2(a,U,f,g);O.set(ee)}),a.on("addStyleModifications",Q=>{const U=E2(a,Q.items,f,g);x.set(U),P.set(Q.replace)}),{getData:()=>{const Q=P.get()?[]:O.get(),U=x.get();return Q.concat(U)}}},wN=a=>V(a)&&a.nodeType===1,uQ=J1.trim,E$=a=>f=>!!(wN(f)&&(f.contentEditable===a||f.getAttribute("data-mce-contenteditable")===a)),dQ=E$("true"),fQ=E$("false"),T$=(a,f,g,O,x)=>({type:a,title:f,url:g,level:O,attach:x}),VU=a=>{let f=a;for(;f=f.parentNode;){const g=f.contentEditable;if(g&&g!=="inherit")return dQ(f)}return!1},zU=(a,f)=>Fe(Ua(nt.fromDom(f),a),g=>g.dom),SN=a=>a.innerText||a.textContent,hQ=a=>a.id?a.id:Vn("h"),mQ=a=>a&&a.nodeName==="A"&&(a.id||a.name)!==void 0,CN=a=>mQ(a)&&kN(a),xx=a=>a&&/^(H[1-6])$/.test(a.nodeName),kN=a=>VU(a)&&!fQ(a),pQ=a=>xx(a)&&kN(a),xN=a=>xx(a)?parseInt(a.nodeName.substr(1),10):0,gQ=a=>{var f;const g=hQ(a),O=()=>{a.id=g};return T$("header",(f=SN(a))!==null&&f!==void 0?f:"","#"+g,xN(a),O)},bQ=a=>{const f=a.id||a.name,g=SN(a);return T$("anchor",g||"#"+f,"#"+f,0,j)},vQ=a=>Fe(jn(a,pQ),gQ),OQ=a=>Fe(jn(a,CN),bQ),A$=a=>zU("h1,h2,h3,h4,h5,h6,a:not([href])",a),EN=a=>uQ(a.title).length>0,yQ={find:a=>{const f=A$(a);return jn(vQ(f).concat(OQ(f)),EN)}},Ex="tinymce-url-history",TN=5,$$=a=>p(a)&&/^https?/.test(a),_Q=a=>k(a)&&a.length<=TN&&Nt(a,$$),T2=a=>b(a)&&ts(a,f=>!_Q(f)).isNone(),AN=()=>{const a=p0.getItem(Ex);if(a===null)return{};let f;try{f=JSON.parse(a)}catch(g){if(g instanceof SyntaxError)return console.log("Local storage "+Ex+" was not valid JSON",g),{};throw g}return T2(f)?f:(console.log("Local storage "+Ex+" was not valid format",f),{})},Tx=a=>{if(!T2(a))throw new Error(`Bad format for history: -`+JSON.stringify(a));p0.setItem(Ex,JSON.stringify(a))},wQ=a=>{const f=AN();return nn(f,a).getOr([])},P$=(a,f)=>{if(!$$(a))return;const g=AN(),O=nn(g,f).getOr([]),x=jn(O,P=>P!==a);g[f]=[a].concat(x).slice(0,TN),Tx(g)},D_=a=>!!a,$N=a=>ms(J1.makeMap(a,/[, ]/),D_),D$=a=>q.from(bD(a)),PN=a=>{const f=q.from(tA(a)).filter(D_).map($N);return D$(a).fold(Tt,g=>f.fold(St,O=>Ts(O).length>0?O:!1))},DN=(a,f)=>{const g=PN(a);return R(g)?g?D$(a):q.none():g[f]?D$(a):q.none()},RN=(a,f)=>DN(a,f).map(g=>O=>Xc.nu(x=>{const P=(Q,U)=>{if(!p(Q))throw new Error("Expected value to be string");if(U!==void 0&&!b(U))throw new Error("Expected meta to be a object");x({value:Q,meta:U})},I={filetype:f,fieldname:O.fieldname,...q.from(O.meta).getOr({})};g.call(a,P,O.value,I)})),MN=a=>q.from(a).filter(p).getOrUndefined(),R$=a=>nA(a)?q.some({targets:yQ.find(a.getBody()),anchorTop:MN(ak(a)),anchorBottom:MN(OD(a))}):q.none(),Ax=a=>q.from(eA(a)),SQ=a=>({getHistory:wQ,addToHistory:P$,getLinkInformation:()=>R$(a),getValidationHandler:()=>Ax(a),getUrlPicker:f=>RN(a,f)}),CQ=(a,f,g,O)=>{const x=bo(!1),P=jc(f),I={icons:()=>f.ui.registry.getAll().icons,menuItems:()=>f.ui.registry.getAll().menuItems,translate:qf.translate,isDisabled:()=>f.mode.isReadOnly()||!f.ui.isEnabled(),getOption:f.options.get},Q=SQ(f),U=cQ(f),ee=vN(f),se=QU(f),he=()=>x.get(),be=Ct=>x.set(Ct),we={shared:{providers:I,anchors:JH(f,g,O,P.isPositionedAtTop),header:P},urlinput:Q,styles:U,colorinput:ee,dialog:se,isContextMenuOpen:he,setContextMenuState:be},Re={...we,shared:{...we.shared,interpreter:Ct=>v2(Ct,{},Re),getSink:a.popup}},Je={...we,shared:{...we.shared,interpreter:Ct=>v2(Ct,{},Je),getSink:a.dialog}};return{popup:Re,dialog:Je}},R_=(a,f,g)=>{const O=(Wt,yn)=>{mt([f,...g],An=>{An.broadcastEvent(Wt,yn)})},x=(Wt,yn)=>{mt([f,...g],An=>{An.broadcastOn([Wt],yn)})},P=Wt=>x(Bh(),{target:Wt.target}),I=Wu(),Q=sc(I,"touchstart",P),U=sc(I,"touchmove",Wt=>O(ec(),Wt)),ee=sc(I,"touchend",Wt=>O(ju(),Wt)),se=sc(I,"mousedown",P),he=sc(I,"mouseup",Wt=>{Wt.raw.button===0&&x(Yw(),{target:Wt.target})}),be=Wt=>x(Bh(),{target:nt.fromDom(Wt.target)}),we=Wt=>{Wt.button===0&&x(Yw(),{target:nt.fromDom(Wt.target)})},Re=()=>{mt(a.editorManager.get(),Wt=>{a!==Wt&&Wt.dispatch("DismissPopups",{relatedTarget:a})})},Je=Wt=>O($f(),xl(Wt)),Ct=Wt=>{x(B1(),{}),O(cf(),xl(Wt))},at=At(nt.fromDom(a.getElement())),st=Mb(at,"scroll",Wt=>{requestAnimationFrame(()=>{const yn=a.getContainer();if(yn!=null){const rs=b0(a,f.element).map(Un=>[Un.element,...Un.others]).getOr([]);dn(rs,Un=>Us(Un,Wt.target))&&(a.dispatch("ElementScroll",{target:Wt.target.dom}),O(yh(),Wt))}})}),Ot=()=>x(B1(),{}),hn=Wt=>{Wt.state&&x(Bh(),{target:nt.fromDom(a.getContainer())})},jt=Wt=>{x(Bh(),{target:nt.fromDom(Wt.relatedTarget.getContainer())})};a.on("PostRender",()=>{a.on("click",be),a.on("tap",be),a.on("mouseup",we),a.on("mousedown",Re),a.on("ScrollWindow",Je),a.on("ResizeWindow",Ct),a.on("ResizeEditor",Ot),a.on("AfterProgressState",hn),a.on("DismissPopups",jt)}),a.on("remove",()=>{a.off("click",be),a.off("tap",be),a.off("mouseup",we),a.off("mousedown",Re),a.off("ScrollWindow",Je),a.off("ResizeWindow",Ct),a.off("ResizeEditor",Ot),a.off("AfterProgressState",hn),a.off("DismissPopups",jt),se.unbind(),Q.unbind(),U.unbind(),ee.unbind(),he.unbind(),st.unbind()}),a.on("detach",()=>{mt([f,...g],Yb),mt([f,...g],Wt=>Wt.destroy())})},$l=eT,t1=wC,NN=ne([_t("shell",!1),Gt("makeItem"),_t("setupItem",j),gf.field("listBehaviours",[Yo])]),M$=Mu({name:"items",overrides:()=>({behaviours:On([Yo.config({})])})}),kQ=ne([M$]),xQ=ne("CustomList"),EQ=(a,f,g,O)=>{const x=(Q,U)=>{I(Q).fold(()=>{throw console.error("Custom List was defined to not be a shell, but no item container was specified in components"),new Error("Custom List was defined to not be a shell, but no item container was specified in components")},ee=>{const se=Yo.contents(ee),he=U.length,be=he-se.length,we=be>0?Zt(be,()=>a.makeItem()):[],Re=se.slice(he);mt(Re,Ct=>Yo.remove(ee,Ct)),mt(we,Ct=>Yo.append(ee,Ct));const Je=Yo.contents(ee);mt(Je,(Ct,at)=>{a.setupItem(Q,Ct,U[at],at)})})},P=a.shell?{behaviours:[Yo.config({})],components:[]}:{behaviours:[],components:f},I=Q=>a.shell?q.some(Q):ti(Q,a,"items");return{uid:a.uid,dom:a.dom,components:P.components,behaviours:$a(a.listBehaviours,P.behaviours),apis:{setItems:x}}},$x=_c({name:xQ(),configFields:NN(),partFields:kQ(),factory:EQ,apis:{setItems:(a,f,g)=>{a.setItems(f,g)}}}),M_=ne([Gt("dom"),_t("shell",!0),il("toolbarBehaviours",[Yo])]),TQ=ne([Mu({name:"groups",overrides:()=>({behaviours:On([Yo.config({})])})})]),AQ=(a,f,g,O)=>{const x=(Q,U)=>{P(Q).fold(()=>{throw console.error("Toolbar was defined to not be a shell, but no groups container was specified in components"),new Error("Toolbar was defined to not be a shell, but no groups container was specified in components")},ee=>{Yo.set(ee,U)})},P=Q=>a.shell?q.some(Q):ti(Q,a,"groups"),I=a.shell?{behaviours:[Yo.config({})],components:[]}:{behaviours:[],components:f};return{uid:a.uid,dom:a.dom,components:I.components,behaviours:$a(a.toolbarBehaviours,I.behaviours),apis:{setGroups:x,refresh:j},domModification:{attributes:{role:"group"}}}},Ip=_c({name:"Toolbar",configFields:M_(),partFields:TQ(),factory:AQ,apis:{setGroups:(a,f,g)=>{a.setGroups(f,g)}}}),$Q=j,PQ=Tt,N$=ne([]);var DQ=Object.freeze({__proto__:null,setup:$Q,isDocked:PQ,getBehaviours:N$});const yO=a=>(Qe(Gr(a,"position"),"fixed")?q.none():Ml(a)).orThunk(()=>{const O=nt.fromTag("span");return ba(a).bind(x=>{la(x,O);const P=Ml(O);return Pc(O),P})}),BN=a=>yO(a).map(Nl).getOrThunk(()=>Ws(0,0)),RQ=(a,f)=>{const g=a.element;na(g,f.transitionClass),wi(g,f.fadeOutClass),na(g,f.fadeInClass),f.onShow(a)},I$=(a,f)=>{const g=a.element;na(g,f.transitionClass),wi(g,f.fadeInClass),na(g,f.fadeOutClass),f.onHide(a)},LN=(a,f)=>a.yf.y,FN=(a,f)=>a.y>=f.y,HN=(a,f)=>a.bottom<=f.bottom,B$=(a,f,g)=>({location:"top",leftX:f,topY:g.bounds.y-a.y}),L$=(a,f,g)=>({location:"bottom",leftX:f,bottomY:a.bottom-g.bounds.bottom}),F$=a=>a.box.x-a.win.x,MQ=(a,f,g)=>{const O=f.win,x=f.box,P=F$(f);return Vs(a,I=>{switch(I){case"bottom":return HN(x,g.bounds)?q.none():q.some(L$(O,P,g));case"top":return FN(x,g.bounds)?q.none():q.some(B$(O,P,g));default:return q.none()}}).getOr({location:"no-dock"})},NQ=(a,f,g)=>Nt(a,O=>{switch(O){case"bottom":return HN(f,g.bounds);case"top":return FN(f,g.bounds)}}),IQ=(a,f)=>{const g=f.optScrollEnv.fold(ne(a.bounds.y),O=>O.scrollElmTop+(a.bounds.y-O.currentScrollTop));return Ws(a.bounds.x,g)},BQ=(a,f)=>{const g=f.optScrollEnv.fold(ne(a.y),O=>a.y+O.currentScrollTop-O.scrollElmTop);return Ws(a.x,g)},QN=(a,f,g)=>g.getInitialPos().map(O=>{const x=IQ(O,f);return{box:Cr(x.left,x.top,Ii(a),Nr(a)),location:O.location}}),VN=(a,f,g,O,x)=>{const P=BQ(f,g),I=Cr(P.left,P.top,f.width,f.height);O.setInitialPos({style:yr(a),position:Or(a,"position")||"static",bounds:I,location:x.location})},zN=(a,f,g,O,x)=>{O.getInitialPos().fold(()=>VN(a,f,g,O,x),()=>j)},H$=(a,f,g)=>g.getInitialPos().bind(O=>{var x;switch(g.clearInitialPos(),O.position){case"static":return q.some({morph:"static"});case"absolute":const P=yO(a).getOr(si()),I=Rr(P),Q=(x=P.dom.scrollTop)!==null&&x!==void 0?x:0;return q.some({morph:"absolute",positionCss:$u("absolute",nn(O.style,"left").map(U=>f.x-I.x),nn(O.style,"top").map(U=>f.y-I.y+Q),nn(O.style,"right").map(U=>I.right-f.right),nn(O.style,"bottom").map(U=>I.bottom-f.bottom))});default:return q.none()}}),Px=(a,f,g)=>QN(a,f,g).filter(({box:O})=>NQ(g.getModes(),O,f)).bind(({box:O})=>H$(a,O,g)),Dx=a=>{switch(a.location){case"top":return q.some({morph:"fixed",positionCss:$u("fixed",q.some(a.leftX),q.some(a.topY),q.none(),q.none())});case"bottom":return q.some({morph:"fixed",positionCss:$u("fixed",q.some(a.leftX),q.none(),q.none(),q.some(a.bottomY))});default:return q.none()}},LQ=(a,f,g)=>{const O=Rr(a),x=Ea(),P=MQ(g.getModes(),{win:x,box:O},f);return P.location==="top"||P.location==="bottom"?(VN(a,O,f,g,P),Dx(P)):q.none()},FQ=(a,f,g)=>Px(a,f,g).orThunk(()=>f.optScrollEnv.bind(O=>QN(a,f,g)).bind(({box:O,location:x})=>{const P=Ea(),I=F$({win:P,box:O}),Q=x==="top"?B$(P,I,f):L$(P,I,f);return Dx(Q)})),HQ=(a,f,g)=>{const O=a.element;return Qe(Gr(O,"position"),"fixed")?FQ(O,f,g):LQ(O,f,g)},QQ=(a,f,g)=>{const O=a.element;return QN(O,f,g).bind(({box:x})=>H$(O,x,g))},VQ=(a,f,g,O)=>{const x=Rr(a),P=Ea(),I=F$({win:P,box:x}),Q=O(P,I,f);return Q.location==="bottom"||Q.location==="top"?(zN(a,x,f,g,Q),Dx(Q)):q.none()},WN=(a,f,g)=>{g.setDocked(!1),mt(["left","right","top","bottom","position"],O=>Jo(a.element,O)),f.onUndocked(a)},Q$=(a,f,g,O)=>{const x=O.position==="fixed";g.setDocked(x),Hf(a.element,O),(x?f.onDocked:f.onUndocked)(a)},V$=(a,f,g,O,x=!1)=>{f.contextual.each(P=>{P.lazyContext(a).each(I=>{const Q=LN(I,O.bounds);Q!==g.isVisible()&&(g.setVisible(Q),x&&!Q?(Ai(a.element,[P.fadeOutClass]),P.onHide(a)):(Q?RQ:I$)(a,P))})})},z$=(a,f,g,O,x)=>{V$(a,f,g,O,!0),Q$(a,f,g,x.positionCss)},zQ=(a,f,g,O,x)=>{switch(x.morph){case"static":return WN(a,f,g);case"absolute":return Q$(a,f,g,x.positionCss);case"fixed":return z$(a,f,g,O,x)}},ZN=(a,f,g)=>{const O=f.lazyViewport(a);V$(a,f,g,O),HQ(a,O,g).each(x=>{zQ(a,f,g,O,x)})},WQ=(a,f,g)=>{const O=a.element;g.setDocked(!1);const x=f.lazyViewport(a);QQ(a,x,g).each(P=>{switch(P.morph){case"static":{WN(a,f,g);break}case"absolute":{Q$(a,f,g,P.positionCss);break}}}),g.setVisible(!0),f.contextual.each(P=>{Tu(O,[P.fadeInClass,P.fadeOutClass,P.transitionClass]),P.onShow(a)}),Rx(a,f,g)},Rx=(a,f,g)=>{a.getSystem().isConnected()&&ZN(a,f,g)},UN=(a,f,g)=>{g.isDocked()&&WQ(a,f,g)},x0=a=>(f,g,O)=>{const x=g.lazyViewport(f);VQ(f.element,x,O,a).each(I=>{z$(f,g,O,x,I)})},qN=x0(B$),A2=x0(L$);var XN=Object.freeze({__proto__:null,refresh:Rx,reset:UN,isDocked:(a,f,g)=>g.isDocked(),getModes:(a,f,g)=>g.getModes(),setModes:(a,f,g,O)=>g.setModes(O),forceDockToTop:qN,forceDockToBottom:A2}),qQ=Object.freeze({__proto__:null,events:(a,f)=>kr([$d(mh(),(g,O)=>{a.contextual.each(x=>{Aa(g.element,x.transitionClass)&&(Tu(g.element,[x.transitionClass,x.fadeInClass]),(f.isVisible()?x.onShown:x.onHidden)(g)),O.stop()})}),qt($f(),(g,O)=>{Rx(g,a,f)}),qt(yh(),(g,O)=>{Rx(g,a,f)}),qt(cf(),(g,O)=>{UN(g,a,f)})])}),XQ=[Ll("contextual",[Fs("fadeInClass"),Fs("fadeOutClass"),Fs("transitionClass"),Cu("lazyContext"),Ps("onShow"),Ps("onShown"),Ps("onHide"),Ps("onHidden")]),da("lazyViewport",()=>({bounds:Ea(),optScrollEnv:q.none()})),Jl("modes",["top","bottom"],Ta),Ps("onDocked"),Ps("onUndocked")],jQ=Object.freeze({__proto__:null,init:a=>{const f=bo(!1),g=bo(!0),O=fs(),x=bo(a.modes),P=()=>`docked: ${f.get()}, visible: ${g.get()}, modes: ${x.get().join(",")}`;return Hl({isDocked:f.get,setDocked:f.set,getInitialPos:O.get,setInitialPos:O.set,clearInitialPos:O.clear,isVisible:g.get,setVisible:g.set,getModes:x.get,setModes:x.set,readState:P})}});const Pa=Za({fields:XQ,name:"docking",active:qQ,apis:XN,state:jQ}),E0=ne(Vn("toolbar-height-change")),Kf={fadeInClass:"tox-editor-dock-fadein",fadeOutClass:"tox-editor-dock-fadeout",transitionClass:"tox-editor-dock-transition"},Mx="tox-tinymce--toolbar-sticky-on",jN="tox-tinymce--toolbar-sticky-off",YQ=(a,f)=>{const g=zi(f),x=ql(f).dom.innerHeight,P=el(g),I=nt.fromDom(a.elm),Q=Ma(I),U=Nr(I),ee=Q.y,se=ee+U,he=Nl(f),be=Nr(f),we=he.top,Re=we+be,Je=Math.abs(we-P.top)<2,Ct=Math.abs(Re-(P.top+x))<2;if(Je&&eewe){const at=ee-x+U+be;xf(P.left,at,g)}},N_=(a,f)=>ct(Pa.getModes(a),f),Z$=a=>{const f=O=>hd(O)+(parseInt(Or(O,"margin-top"),10)||0)+(parseInt(Or(O,"margin-bottom"),10)||0),g=a.element;Rl(g).each(O=>{const x="padding-"+Pa.getModes(a)[0];if(Pa.isDocked(a)){const P=Ii(O);Wn(g,"width",P+"px"),Wn(O,x,f(g)+"px")}else Jo(g,"width"),Jo(O,x)})},I_=(a,f)=>{f?(wi(a,Kf.fadeOutClass),Ai(a,[Kf.transitionClass,Kf.fadeInClass])):(wi(a,Kf.fadeInClass),Ai(a,[Kf.fadeOutClass,Kf.transitionClass]))},U$=(a,f)=>{const g=nt.fromDom(a.getContainer());f?(na(g,Mx),wi(g,jN)):(na(g,jN),wi(g,Mx))},GQ=(a,f)=>{const g=zi(f);Ff(g).filter(O=>!Us(f,O)).filter(O=>Us(O,nt.fromDom(g.dom.body))||Mi(a,O)).each(()=>ji(f))},KQ=(a,f)=>Id(a).orThunk(()=>f().toOptional().bind(g=>Id(g.element))),JQ=(a,f,g)=>{a.inline||(f.header.isPositionedAtTop()||a.on("ResizeEditor",()=>{g().each(Pa.reset)}),a.on("ResizeWindow ResizeEditor",()=>{g().each(Z$)}),a.on("SkinLoaded",()=>{g().each(O=>{Pa.isDocked(O)?Pa.reset(O):Pa.refresh(O)})}),a.on("FullscreenStateChanged",()=>{g().each(Pa.reset)})),a.on("AfterScrollIntoView",O=>{g().each(x=>{Pa.refresh(x);const P=x.element;qy(P)&&YQ(O,P)})}),a.on("PostRender",()=>{U$(a,!1)})},eV=a=>a().map(Pa.isDocked).getOr(!1),tV=()=>[Wc.config({channels:{[E0()]:{onReceive:Z$}}})],YN=(a,f)=>{const g=fs(),O=f.getSink,x=Q=>{O().each(U=>Q(U.element))},P=Q=>{a.inline||Z$(Q),U$(a,Pa.isDocked(Q)),Q.getSystem().broadcastOn([B1()],{}),O().each(U=>U.getSystem().broadcastOn([B1()],{}))},I=a.inline?[]:tV();return[Ao.config({}),Pa.config({contextual:{lazyContext:Q=>{const U=hd(Q.element),ee=a.inline?a.getContentAreaContainer():a.getContainer();return q.from(ee).map(se=>{const he=Rr(nt.fromDom(se));return b0(a,Q.element).fold(()=>{const we=he.height-U,Re=he.y+(N_(Q,"top")?0:U);return Cr(he.x,Re,he.width,we)},we=>{const Re=qm(he,b_(we)),Je=N_(Q,"top")?Re.y:Re.y+U;return Cr(Re.x,Je,Re.width,Re.height-U)})})},onShow:()=>{x(Q=>I_(Q,!0))},onShown:Q=>{x(U=>Tu(U,[Kf.transitionClass,Kf.fadeInClass])),g.get().each(U=>{GQ(Q.element,U),g.clear()})},onHide:Q=>{KQ(Q.element,O).fold(g.clear,g.set),x(U=>I_(U,!1))},onHidden:()=>{x(Q=>Tu(Q,[Kf.transitionClass]))},...Kf},lazyViewport:Q=>b0(a,Q.element).fold(()=>{const ee=Ea(),se=rk(a),he=ee.y+(N_(Q,"top")?se:0),be=ee.height-(N_(Q,"bottom")?se:0);return{bounds:Cr(ee.x,he,ee.width,be),optScrollEnv:q.none()}},ee=>({bounds:b_(ee),optScrollEnv:q.some({currentScrollTop:ee.element.dom.scrollTop,scrollElmTop:Nl(ee.element).top})})),modes:[f.header.getDockingMode()],onDocked:P,onUndocked:P}),...I]};var GN=Object.freeze({__proto__:null,setup:JQ,isDocked:eV,getBehaviours:YN});const KN=a=>{const f=a.editor,g=a.sticky?YN:N$;return{uid:a.uid,dom:a.dom,components:a.components,behaviours:On(g(f,a.sharedBackstage))}},q$=Jn([Xa,Sl("items",Zn([_d([kA,tl("items",Ta)]),Ta]))].concat(d_)),nV=a=>li("GroupToolbarButton",q$,a),Nx=[nl("text"),nl("tooltip"),nl("icon"),Gl("search",!1,Zn([Su,Jn([nl("placeholder")])],a=>R(a)?a?q.some({placeholder:q.none()}):q.none():q.some(a))),Cu("fetch"),da("onSetup",()=>j)],$2=Jn([Xa,...Nx]),X$=a=>li("menubutton",$2,a),oV=Jn([Xa,QS,Xf,Ug,TA,WD,f0,Kl("presets","normal",["normal","color","listpreview"]),qD(1),c_,T7]),sV=a=>li("SplitButton",oV,a);var j$=sd({factory:(a,f)=>{const g=(x,P)=>{const I=Fe(P,Q=>{const U={type:"menubutton",text:Q.text,fetch:se=>{se(Q.getItems())}},ee=X$(U).mapError(se=>wl(se)).getOrDie();return g2(ee,"tox-mbtn",f.backstage,q.some("menuitem"))});Yo.set(x,I)},O={focus:vo.focusIn,setMenus:g};return{uid:a.uid,dom:a.dom,components:[],behaviours:On([Yo.config({}),ss("menubar-events",[xr(x=>{a.onSetup(x)}),qt(kd(),(x,P)=>{oa(x.element,".tox-mbtn--active").each(I=>{uf(P.event.target,".tox-mbtn").each(Q=>{Us(I,Q)||x.getSystem().getByDom(I).each(U=>{x.getSystem().getByDom(Q).each(ee=>{Wh.expand(ee),Wh.close(U),Ao.focus(ee)})})})})}),qt(ab(),(x,P)=>{P.event.prevFocus.bind(I=>x.getSystem().getByDom(I).toOptional()).each(I=>{P.event.newFocus.bind(Q=>x.getSystem().getByDom(Q).toOptional()).each(Q=>{Wh.isOpen(I)&&(Wh.expand(Q),Wh.close(I))})})})]),vo.config({mode:"flow",selector:".tox-mbtn",onEscape:x=>(a.onEscape(x),q.some(!0))}),$i.config({})]),apis:O,domModification:{attributes:{role:"menubar"}}}},name:"silver.Menubar",configFields:[Gt("dom"),Gt("uid"),Gt("onEscape"),Gt("backstage"),_t("onSetup",j)],apis:{focus:(a,f)=>{a.focus(f)},setMenus:(a,f,g)=>{a.setMenus(f,g)}}});const Y$="⚡️Upgrade",G$="https://www.tiny.cloud/tinymce-self-hosted-premium-features/?utm_campaign=self_hosted_upgrade_promo&utm_source=tiny&utm_medium=referral",rV=a=>({uid:a.uid,dom:a.dom,components:[{dom:{tag:"a",attributes:{href:G$,rel:"noopener",target:"_blank","aria-hidden":"true"},classes:["tox-promotion-link"],innerHtml:Y$}}]}),Ix="container",iV=[il("slotBehaviours",[])],JN=a=>"",aV=a=>{const f=(()=>{const P=[];return{slot:(Q,U)=>(P.push(Q),oS(Ix,JN(Q),U)),record:ne(P)}})(),g=a(f),O=f.record(),x=Fe(O,P=>yc({name:P,pname:JN(P)}));return uS(Ix,iV,x,lV,g)},lV=(a,f)=>{const g=Je=>iS(a),O=(Je,Ct)=>ti(Je,a,Ct),x=(Je,Ct)=>(at,st)=>ti(at,a,st).map(Ot=>Je(Ot,st)).getOr(Ct),P=Je=>(Ct,at)=>{mt(at,st=>Je(Ct,st))},I=(Je,Ct)=>ui(Je.element,"aria-hidden")!=="true",Q=(Je,Ct)=>{if(!I(Je)){const at=Je.element;Jo(at,"display"),We(at,"aria-hidden"),ho(Je,Kp(),{name:Ct,visible:!0})}},U=(Je,Ct)=>{if(I(Je)){const at=Je.element;Wn(at,"display","none"),Mn(at,"aria-hidden","true"),ho(Je,Kp(),{name:Ct,visible:!1})}},ee=x(I,!1),se=x(U),he=P(se),be=Je=>he(Je,g()),we=x(Q),Re={getSlotNames:g,getSlot:O,isShowing:ee,hideSlot:se,hideAllSlots:be,showSlot:we};return{uid:a.uid,dom:a.dom,components:f,behaviours:_p(a.slotBehaviours),apis:Re}},Fu={...ms({getSlotNames:(a,f)=>a.getSlotNames(f),getSlot:(a,f,g)=>a.getSlot(f,g),isShowing:(a,f,g)=>a.isShowing(f,g),hideSlot:(a,f,g)=>a.hideSlot(f,g),hideAllSlots:(a,f)=>a.hideAllSlots(f),showSlot:(a,f,g)=>a.showSlot(f,g)},a=>xh(a)),sketch:aV},jU=Jn([Xf,QS,da("onShow",j),da("onHide",j),f0]),eI=a=>li("sidebar",jU,a),cV=a=>{const{sidebars:f}=a.ui.registry.getAll();mt(Ts(f),g=>{const O=f[g],x=()=>Qe(q.from(a.queryCommandValue("ToggleSidebar")),g);a.ui.registry.addToggleButton(g,{icon:O.icon,tooltip:O.tooltip,onAction:P=>{a.execCommand("ToggleSidebar",!1,g),P.setActive(x())},onSetup:P=>{P.setActive(x());const I=()=>P.setActive(x());return a.on("ToggleSidebar",I),()=>{a.off("ToggleSidebar",I)}}})})},tI=a=>({element:()=>a.element.dom}),uV=(a,f)=>{const g=Fe(Ts(f),O=>{const x=f[O],P=Js(eI(x));return{name:O,getApi:tI,onSetup:P.onSetup,onShow:P.onShow,onHide:P.onHide}});return Fe(g,O=>{const x=bo(j);return a.slot(O.name,{dom:{tag:"div",classes:["tox-sidebar__pane"]},behaviours:WS.unnamedEvents([h0(O,x),Xg(O,x),qt(Kp(),(P,I)=>{const Q=I.event;gt(g,ee=>ee.name===Q.name).each(ee=>{(Q.visible?ee.onShow:ee.onHide)(ee.getApi(P))})})])})})},dV=a=>Fu.sketch(f=>({dom:{tag:"div",classes:["tox-sidebar__pane-container"]},components:uV(f,a),slotBehaviours:WS.unnamedEvents([xr(g=>Fu.hideAllSlots(g))])})),fV=(a,f,g)=>{Ds.getCurrent(a).each(x=>{Yo.set(x,[dV(f)]);const P=g==null?void 0:g.toLowerCase();p(P)&&ns(f,P)&&Ds.getCurrent(x).each(I=>{Fu.showSlot(I,P),yf.immediateGrow(x),Jo(x.element,"width"),Bx(a.element,"region")})})},Bx=(a,f)=>{Mn(a,"role",f)},hV=(a,f)=>{Ds.getCurrent(a).each(O=>{Ds.getCurrent(O).each(P=>{yf.hasGrown(O)?Fu.isShowing(P,f)?(yf.shrink(O),Bx(a.element,"presentation")):(Fu.hideAllSlots(P),Fu.showSlot(P,f),Bx(a.element,"region")):(Fu.hideAllSlots(P),Fu.showSlot(P,f),yf.grow(O),Bx(a.element,"region"))})})},nI=a=>Ds.getCurrent(a).bind(g=>yf.isGrowing(g)||yf.hasGrown(g)?Ds.getCurrent(g).bind(P=>gt(Fu.getSlotNames(P),I=>Fu.isShowing(P,I))):q.none()),K$=Vn("FixSizeEvent"),J$=Vn("AutoSizeEvent"),mV=a=>({uid:a.uid,dom:{tag:"div",classes:["tox-sidebar"],attributes:{role:"presentation"}},components:[{dom:{tag:"div",classes:["tox-sidebar__slider"]},components:[],behaviours:On([$i.config({}),Ao.config({}),yf.config({dimension:{property:"width"},closedClass:"tox-sidebar--sliding-closed",openClass:"tox-sidebar--sliding-open",shrinkingClass:"tox-sidebar--sliding-shrinking",growingClass:"tox-sidebar--sliding-growing",onShrunk:f=>{Ds.getCurrent(f).each(Fu.hideAllSlots),gs(f,J$)},onGrown:f=>{gs(f,J$)},onStartGrow:f=>{ho(f,K$,{width:Gr(f.element,"width").getOr("")})},onStartShrink:f=>{ho(f,K$,{width:Ii(f.element)+"px"})}}),Yo.config({}),Ds.config({find:f=>{const g=Yo.contents(f);return as(g)}})])}],behaviours:On([Zd.childAt(0),ss("sidebar-sliding-events",[qt(K$,(f,g)=>{Wn(f.element,"width",g.event.width)}),qt(J$,(f,g)=>{Jo(f.element,"width")})])])});var oI=Object.freeze({__proto__:null,block:(a,f,g,O)=>{Mn(a.element,"aria-busy",!0);const x=f.getRoot(a).getOr(a),P=On([vo.config({mode:"special",onTab:()=>q.some(!0),onShiftTab:()=>q.some(!0)}),Ao.config({})]),I=O(x,P),Q=x.getSystem().build(I);Yo.append(x,cu(Q)),Q.hasConfigured(vo)&&f.focus&&vo.focusIn(Q),g.isBlocked()||f.onBlock(a),g.blockWith(()=>Yo.remove(x,Q))},unblock:(a,f,g)=>{We(a.element,"aria-busy"),g.isBlocked()&&f.onUnblock(a),g.clear()},isBlocked:(a,f,g)=>g.isBlocked()}),gV=[da("getRoot",q.none),ya("focus",!0),Ps("onBlock"),Ps("onUnblock")],Jf=Object.freeze({__proto__:null,init:()=>{const a=gv(),f=g=>{a.set({destroy:g})};return Hl({readState:a.isSet,blockWith:f,clear:a.clear,isBlocked:a.isSet})}});const Bp=Za({fields:gV,name:"blocking",apis:oI,state:Jf}),sI=a=>(f,g)=>({dom:{tag:"div",attributes:{"aria-label":a.translate("Loading..."),tabindex:"0"},classes:["tox-throbber__busy-spinner"]},components:[{dom:Z1('
    ')}]}),eP=a=>Ds.getCurrent(a).each(f=>ji(f.element,!0)),bV=(a,f)=>{const g="tabindex",O=`data-mce-${g}`;q.from(a.iframeElement).map(nt.fromDom).each(x=>{f?(me(x,g).each(P=>Mn(x,O,P)),Mn(x,g,-1)):(We(x,g),me(x,O).each(P=>{Mn(x,g,P),We(x,O)}))})},P2=(a,f,g,O)=>{const x=f.element;if(bV(a,g),g)Bp.block(f,sI(O)),Jo(x,"display"),We(x,"aria-hidden"),a.hasFocus()&&eP(f);else{const P=Ds.getCurrent(f).exists(I=>T1(I.element));Bp.unblock(f),Wn(x,"display","none"),Mn(x,"aria-hidden","true"),P&&a.focus()}},vV=a=>({uid:a.uid,dom:{tag:"div",attributes:{"aria-hidden":"true"},classes:["tox-throbber"],styles:{display:"none"}},behaviours:On([Yo.config({}),Bp.config({focus:!1}),Ds.config({find:f=>as(f.components())})]),components:[]}),Lx=a=>a.type==="focusin",OV=a=>Lx(a)?(a.composed?as(a.composedPath()):q.from(a.target)).map(nt.fromDom).filter(Ls).exists(g=>Aa(g,"mce-pastebin")):!1,Fx=(a,f,g)=>{const O=bo(!1),x=fs(),P=Q=>{O.get()&&!OV(Q)&&(Q.preventDefault(),eP(f()),a.editorManager.setActive(a))};a.inline||a.on("PreInit",()=>{a.dom.bind(a.getWin(),"focusin",P),a.on("BeforeExecCommand",Q=>{Q.command.toLowerCase()==="mcefocus"&&Q.value!==!0&&P(Q)})});const I=Q=>{Q!==O.get()&&(O.set(Q),P2(a,f(),Q,g.providers),NR(a,Q))};a.on("ProgressState",Q=>{if(x.on(clearTimeout),J(Q.time)){const U=sO.setEditorTimeout(a,()=>I(Q.state),Q.time);x.set(U)}else I(Q.state),x.clear()})},yV=(a,f)=>po(a,(x,P)=>f(P,x.len).fold(ne(x),Q=>({len:Q.finish,list:x.list.concat([Q])})),{len:0,list:[]}).list,tP=(a,f,g)=>({within:a,extra:f,withinWidth:g}),eh=(a,f,g)=>{const O=yV(a,(Q,U)=>{const ee=g(Q);return q.some({element:Q,start:U,finish:U+ee,width:ee})}),x=jn(O,Q=>Q.finish<=f),P=Yn(x,(Q,U)=>Q+U.width,0),I=O.slice(x.length);return{within:x,extra:I,withinWidth:P}},Hx=a=>Fe(a,f=>f.element),Qx=(a,f,g)=>{const O=Hx(a.concat(f));return tP(O,[],g)},rI=(a,f,g,O)=>{const x=Hx(a).concat([g]);return tP(x,Hx(f),O)},iI=(a,f,g)=>tP(Hx(a),[],g),_V=(a,f,g)=>{const O=eh(f,a,g);return O.extra.length===0?q.some(O):q.none()},aI=(a,f,g,O)=>{const x=_V(a,f,g).getOrThunk(()=>eh(f,a-g(O),g)),P=x.within,I=x.extra,Q=x.withinWidth;return I.length===1&&I[0].width<=g(O)?Qx(P,I,Q):I.length>=1?rI(P,I,O,Q):iI(P,I,Q)},lI=(a,f)=>{const g=Fe(f,O=>cu(O));Ip.setGroups(a,g)},wV=a=>Vs(a,f=>Id(f.element).bind(g=>f.getSystem().getByDom(g).toOptional())),cI=(a,f,g)=>{const O=f.builtGroups.get();if(O.length===0)return;const x=Sp(a,f,"primary"),P=Sa.getCoupled(a,"overflowGroup");Wn(x.element,"visibility","hidden");const I=O.concat([P]),Q=wV(I);g([]),lI(x,I);const U=Ii(x.element),ee=aI(U,f.builtGroups.get(),se=>Ii(se.element),P);ee.extra.length===0?(Yo.remove(x,P),g([])):(lI(x,ee.within),g(ee.extra)),Jo(x.element,"visibility"),dl(x.element),Q.each(Ao.focus)},uI=ne([il("splitToolbarBehaviours",[Sa]),Qr("builtGroups",()=>bo([]))]),SV=ne([bm(["overflowToggledClass"]),ch("getOverflowBounds"),Gt("lazySink"),Qr("overflowGroups",()=>bo([])),Ps("onOpened"),Ps("onClosed")].concat(uI())),CV=ne([yc({factory:Ip,schema:M_(),name:"primary"}),Wf({schema:M_(),name:"overflow"}),Wf({name:"overflow-button"}),Wf({name:"overflow-group"})]),nP=ne((a,f)=>{Qp(a,Math.floor(f))}),dI=ne([bm(["toggledClass"]),Gt("lazySink"),Cu("fetch"),ch("getBounds"),Ll("fireDismissalEventInstead",[_t("event",Oh())]),ym(),Ps("onToggled")]),fI=ne([Wf({name:"button",overrides:a=>({dom:{attributes:{"aria-haspopup":"true"}},buttonBehaviours:On([hs.config({toggleClass:a.markers.toggledClass,aria:{mode:"expanded"},toggleOnExecute:!1,onToggled:a.onToggled})])})}),Wf({factory:Ip,schema:M_(),name:"toolbar",overrides:a=>({toolbarBehaviours:On([vo.config({mode:"cyclic",onEscape:f=>(ti(f,a,"button").each(Ao.focus),q.none())})])})})]),D2=fs(),kV=(a,f)=>{D2.set(!0),oP(a,f),D2.clear()},oP=(a,f)=>{const g=Sa.getCoupled(a,"toolbarSandbox");Is.isOpen(g)?Is.close(g):Is.open(g,f.toolbar())},Vx=(a,f,g,O)=>{const x=g.getBounds.map(I=>I()),P=g.lazySink(a).getOrDie();Oc.positionWithinBounds(P,f,{anchor:{type:"hotspot",hotspot:a,layouts:O,overrides:{maxWidthFunction:nP()}}},x)},sP=(a,f,g,O,x)=>{Ip.setGroups(f,x),Vx(a,f,g,O),hs.on(a)},hI=(a,f,g)=>{const O=up(),x=(I,Q)=>{const U=D2.get().getOr(!1);g.fetch().get(ee=>{sP(a,Q,g,f.layouts,ee),O.link(a.element),U||vo.focusIn(Q)})},P=()=>{hs.off(a),D2.get().getOr(!1)||Ao.focus(a),O.unlink(a.element)};return{dom:{tag:"div",attributes:{id:O.id}},behaviours:On([vo.config({mode:"special",onEscape:I=>(Is.close(I),q.some(!0))}),Is.config({onOpen:x,onClose:P,isPartOf:(I,Q,U)=>Ah(Q,U)||Ah(a,U),getAttachPoint:()=>g.lazySink(a).getOrDie()}),Wc.config({channels:{...Iv({isExtraPart:Tt,...g.fireDismissalEventInstead.map(I=>({fireEventInstead:{event:I.event}})).getOr({})}),...Gb({doReposition:()=>{Is.getState(Sa.getCoupled(a,"toolbarSandbox")).each(I=>{Vx(a,I,g,f.layouts)})}})}})])}},T0=_c({name:"FloatingToolbarButton",factory:(a,f,g,O)=>({...Wl.sketch({...O.button(),action:x=>{oP(x,O)},buttonBehaviours:gf.augment({dump:O.button().buttonBehaviours},[Sa.config({others:{toolbarSandbox:x=>hI(x,g,a)}})])}),apis:{setGroups:(x,P)=>{Is.getState(Sa.getCoupled(x,"toolbarSandbox")).each(I=>{sP(x,I,a,g.layouts,P)})},reposition:x=>{Is.getState(Sa.getCoupled(x,"toolbarSandbox")).each(P=>{Vx(x,P,a,g.layouts)})},toggle:x=>{oP(x,O)},toggleWithoutFocusing:x=>{kV(x,O)},getToolbar:x=>Is.getState(Sa.getCoupled(x,"toolbarSandbox")),isOpen:x=>Is.isOpen(Sa.getCoupled(x,"toolbarSandbox"))}}),configFields:dI(),partFields:fI(),apis:{setGroups:(a,f,g)=>{a.setGroups(f,g)},reposition:(a,f)=>{a.reposition(f)},toggle:(a,f)=>{a.toggle(f)},toggleWithoutFocusing:(a,f)=>{a.toggleWithoutFocusing(f)},getToolbar:(a,f)=>a.getToolbar(f),isOpen:(a,f)=>a.isOpen(f)}}),xV=ne([Gt("items"),bm(["itemSelector"]),il("tgroupBehaviours",[vo])]),mI=ne([Zv({name:"items",unit:"item"})]),EV=(a,f,g,O)=>({uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.tgroupBehaviours,[vo.config({mode:"flow",selector:a.markers.itemSelector})]),domModification:{attributes:{role:"toolbar"}}}),zx=_c({name:"ToolbarGroup",configFields:xV(),partFields:mI(),factory:EV}),pI=a=>Fe(a,f=>cu(f)),gI=(a,f,g)=>{cI(a,g,O=>{g.overflowGroups.set(O),f.getOpt(a).each(x=>{T0.setGroups(x,pI(O))})})},TV=(a,f,g,O)=>{const x=Ar(T0.sketch({fetch:()=>Xc.nu(P=>{P(pI(a.overflowGroups.get()))}),layouts:{onLtr:()=>[kl,Qa],onRtl:()=>[Qa,kl],onBottomLtr:()=>[os,Va],onBottomRtl:()=>[Va,os]},getBounds:g.getOverflowBounds,lazySink:a.lazySink,fireDismissalEventInstead:{},markers:{toggledClass:a.markers.overflowToggledClass},parts:{button:O["overflow-button"](),toolbar:O.overflow()},onToggled:(P,I)=>a[I?"onOpened":"onClosed"](P)}));return{uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.splitToolbarBehaviours,[Sa.config({others:{overflowGroup:()=>zx.sketch({...O["overflow-group"](),items:[x.asSpec()]})}})]),apis:{setGroups:(P,I)=>{a.builtGroups.set(Fe(I,P.getSystem().build)),gI(P,x,a)},refresh:P=>gI(P,x,a),toggle:P=>{x.getOpt(P).each(I=>{T0.toggle(I)})},toggleWithoutFocusing:P=>{x.getOpt(P).each(T0.toggleWithoutFocusing)},isOpen:P=>x.getOpt(P).map(T0.isOpen).getOr(!1),reposition:P=>{x.getOpt(P).each(I=>{T0.reposition(I)})},getOverflow:P=>x.getOpt(P).bind(T0.getToolbar)},domModification:{attributes:{role:"group"}}}},bI=_c({name:"SplitFloatingToolbar",configFields:SV(),partFields:CV(),factory:TV,apis:{setGroups:(a,f,g)=>{a.setGroups(f,g)},refresh:(a,f)=>{a.refresh(f)},reposition:(a,f)=>{a.reposition(f)},toggle:(a,f)=>{a.toggle(f)},toggleWithoutFocusing:(a,f)=>{a.toggle(f)},isOpen:(a,f)=>a.isOpen(f),getOverflow:(a,f)=>a.getOverflow(f)}}),AV=ne([bm(["closedClass","openClass","shrinkingClass","growingClass","overflowToggledClass"]),Ps("onOpened"),Ps("onClosed")].concat(uI())),$V=ne([yc({factory:Ip,schema:M_(),name:"primary"}),yc({factory:Ip,schema:M_(),name:"overflow",overrides:a=>({toolbarBehaviours:On([yf.config({dimension:{property:"height"},closedClass:a.markers.closedClass,openClass:a.markers.openClass,shrinkingClass:a.markers.shrinkingClass,growingClass:a.markers.growingClass,onShrunk:f=>{ti(f,a,"overflow-button").each(g=>{hs.off(g),Ao.focus(g)}),a.onClosed(f)},onGrown:f=>{vo.focusIn(f),a.onOpened(f)},onStartGrow:f=>{ti(f,a,"overflow-button").each(hs.on)}}),vo.config({mode:"acyclic",onEscape:f=>(ti(f,a,"overflow-button").each(Ao.focus),q.some(!0))})])})}),Wf({name:"overflow-button",overrides:a=>({buttonBehaviours:On([hs.config({toggleClass:a.markers.overflowToggledClass,aria:{mode:"pressed"},toggleOnExecute:!1})])})}),Wf({name:"overflow-group"})]),PV=(a,f)=>ti(a,f,"overflow").map(yf.hasGrown).getOr(!1),vI=(a,f)=>{ti(a,f,"overflow-button").bind(()=>ti(a,f,"overflow")).each(g=>{Wx(a,f),yf.toggleGrow(g)})},Wx=(a,f)=>{ti(a,f,"overflow").each(g=>{cI(a,f,O=>{const x=Fe(O,P=>cu(P));Ip.setGroups(g,x)}),ti(a,f,"overflow-button").each(O=>{yf.hasGrown(g)&&hs.on(O)}),yf.refresh(g)})},DV=(a,f,g,O)=>{const x="alloy.toolbar.toggle",P=(I,Q)=>{const U=Fe(Q,I.getSystem().build);a.builtGroups.set(U)};return{uid:a.uid,dom:a.dom,components:f,behaviours:$a(a.splitToolbarBehaviours,[Sa.config({others:{overflowGroup:I=>zx.sketch({...O["overflow-group"](),items:[Wl.sketch({...O["overflow-button"](),action:Q=>{gs(I,x)}})]})}}),ss("toolbar-toggle-events",[qt(x,I=>{vI(I,a)})])]),apis:{setGroups:(I,Q)=>{P(I,Q),Wx(I,a)},refresh:I=>Wx(I,a),toggle:I=>vI(I,a),isOpen:I=>PV(I,a)},domModification:{attributes:{role:"group"}}}},rP=_c({name:"SplitSlidingToolbar",configFields:AV(),partFields:$V(),factory:DV,apis:{setGroups:(a,f,g)=>{a.setGroups(f,g)},refresh:(a,f)=>{a.refresh(f)},toggle:(a,f)=>{a.toggle(f)},isOpen:(a,f)=>a.isOpen(f)}}),Zx=a=>{const f=a.title.fold(()=>({}),g=>({attributes:{title:g}}));return{dom:{tag:"div",classes:["tox-toolbar__group"],...f},components:[zx.parts.items({})],items:a.items,markers:{itemSelector:"*:not(.tox-split-button) > .tox-tbtn:not([disabled]), .tox-split-button:not([disabled]), .tox-toolbar-nav-js:not([disabled]), .tox-number-input:not([disabled])"},tgroupBehaviours:On([$i.config({}),Ao.config({})])}},Ux=a=>zx.sketch(Zx(a)),R2=(a,f)=>{const g=xr(O=>{const x=Fe(a.initGroups,Ux);Ip.setGroups(O,x)});return On([al.toolbarButton(a.providers.isDisabled),Ol(),vo.config({mode:f,onEscape:a.onEscape,selector:".tox-toolbar__group"}),ss("toolbar-events",[g])])},OI=a=>{const f=a.cyclicKeying?"cyclic":"acyclic";return{uid:a.uid,dom:{tag:"div",classes:["tox-toolbar-overlord"]},parts:{"overflow-group":Zx({title:q.none(),items:[]}),"overflow-button":DH({name:"more",icon:q.some("more-drawer"),enabled:!0,tooltip:q.some("Reveal or hide additional toolbar items"),primary:!1,buttonType:q.none(),borderless:!1},q.none(),a.providers)},splitToolbarBehaviours:R2(a,f)}},yI=a=>{const f=OI(a),g=4,O=bI.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}});return bI.sketch({...f,lazySink:a.getSink,getOverflowBounds:()=>{const x=a.moreDrawerData.lazyHeader().element,P=Ma(x),I=yl(x),Q=Ma(I),U=Math.max(I.dom.scrollHeight,Q.height);return Cr(P.x+g,Q.y,P.width-g*2,U)},parts:{...f.parts,overflow:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:a.attributes}}},components:[O],markers:{overflowToggledClass:"tox-tbtn--enabled"},onOpened:x=>a.onToggled(x,!0),onClosed:x=>a.onToggled(x,!1)})},RV=a=>{const f=rP.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}}),g=rP.parts.overflow({dom:{tag:"div",classes:["tox-toolbar__overflow"]}}),O=OI(a);return rP.sketch({...O,components:[f,g],markers:{openClass:"tox-toolbar__overflow--open",closedClass:"tox-toolbar__overflow--closed",growingClass:"tox-toolbar__overflow--growing",shrinkingClass:"tox-toolbar__overflow--shrinking",overflowToggledClass:"tox-tbtn--enabled"},onOpened:x=>{x.getSystem().broadcastOn([E0()],{type:"opened"}),a.onToggled(x,!0)},onClosed:x=>{x.getSystem().broadcastOn([E0()],{type:"closed"}),a.onToggled(x,!1)}})},qx=a=>{const f=a.cyclicKeying?"cyclic":"acyclic";return Ip.sketch({uid:a.uid,dom:{tag:"div",classes:["tox-toolbar"].concat(a.type===Of.scrolling?["tox-toolbar--scrolling"]:[])},components:[Ip.parts.groups({})],toolbarBehaviours:R2(a,f)})},MV=[Ug,Xf,nl("tooltip"),Kl("buttonType","secondary",["primary","secondary"]),ya("borderless",!1),Cu("onAction")],NV=[...MV,X1,Li("type",["button"])],IV=[...MV,ya("active",!1),Li("type",["togglebutton"])],Xx={button:NV,togglebutton:IV},BV=[Li("type",["group"]),Jl("buttons",[],ys("type",Xx))],jx=ys("type",{...Xx,group:BV}),_I=Jn([Jl("buttons",[],jx),Cu("onShow"),Cu("onHide")]),wI=a=>li("view",_I,a),iP=(a,f)=>{var g,O;const x=a.type==="togglebutton",P=a.icon.map(Ot=>S0(Ot,f.icons)).map(Ar),Q=Ot=>{const hn=yn=>{P.map(An=>An.getOpt(Ot).each(rs=>{Yo.set(rs,[S0(yn,f.icons)])}))},jt=yn=>{const An=Ot.element;yn?(na(An,"tox-button--enabled"),Mn(An,"aria-pressed",!0)):(wi(An,"tox-button--enabled"),We(An,"aria-pressed"))},Wt=()=>Aa(Ot.element,"tox-button--enabled");if(x)return a.onAction({setIcon:hn,setActive:jt,isActive:Wt});if(a.type==="button")return a.onAction({setIcon:hn})},U={...a,name:x?a.text.getOr(a.icon.getOr("")):(g=a.text)!==null&&g!==void 0?g:a.icon.getOr(""),primary:a.buttonType==="primary",buttonType:q.from(a.buttonType),tooltip:a.tooltip,icon:a.icon,enabled:!0,borderless:a.borderless},ee=O$((O=a.buttonType)!==null&&O!==void 0?O:"secondary"),se=x?a.text.map(f.translate):q.some(f.translate(a.text)),he=se.map(Xi),be=U.tooltip.or(se).map(Ot=>({"aria-label":f.translate(Ot),title:f.translate(Ot)})).getOr({}),we=P.map(Ot=>Ot.asSpec()),Re=h_([we,he]),Je=a.icon.isSome()&&he.isSome(),Ct={tag:"button",classes:ee.concat(...a.icon.isSome()&&!Je?["tox-button--icon"]:[]).concat(...Je?["tox-button--icon-and-text"]:[]).concat(...a.borderless?["tox-button--naked"]:[]).concat(...a.type==="togglebutton"&&a.active?["tox-button--enabled"]:[]),attributes:be},at=[],st=wx(U,q.some(Q),at,Ct,Re,f);return Wl.sketch(st)},SI=(a,f)=>iP(a,f),CI=(a,f)=>({dom:{tag:"div",classes:["tox-view__toolbar__group"]},components:Fe(a.buttons,g=>SI(g,f))}),_O=Kt().deviceType,kI=_O.isPhone(),LV=_O.isTablet(),FV=a=>{let f=!1;const g=Fe(a.buttons,O=>O.type==="group"?(f=!0,CI(O,a.providers)):SI(O,a.providers));return{uid:a.uid,dom:{tag:"div",classes:[f?"tox-view__toolbar":"tox-view__header",...kI||LV?["tox-view--mobile","tox-view--scrolling"]:[]]},behaviours:On([Ao.config({}),vo.config({mode:"flow",selector:"button, .tox-button",focusInside:M.OnEnterOrSpaceMode})]),components:f?g:[Dp.sketch({dom:{tag:"div",classes:["tox-view__header-start"]},components:[]}),Dp.sketch({dom:{tag:"div",classes:["tox-view__header-end"]},components:g})]}},HV=a=>({uid:a.uid,dom:{tag:"div",classes:["tox-view__pane"]}}),aP=(a,f,g,O)=>{const x={getPane:P=>$l.getPart(P,a,"pane"),getOnShow:P=>a.viewConfig.onShow,getOnHide:P=>a.viewConfig.onHide};return{uid:a.uid,dom:a.dom,components:f,apis:x}};var B_=_c({name:"silver.View",configFields:[Gt("viewConfig")],partFields:[Mu({factory:{sketch:FV},schema:[Gt("buttons"),Gt("providers")],name:"header"}),Mu({factory:{sketch:HV},schema:[],name:"pane"})],factory:aP,apis:{getPane:(a,f)=>a.getPane(f),getOnShow:(a,f)=>a.getOnShow(f),getOnHide:(a,f)=>a.getOnHide(f)}});const QV=(a,f,g)=>Pi(f,(O,x)=>{const P=Js(wI(O));return a.slot(x,B_.sketch({dom:{tag:"div",classes:["tox-view"]},viewConfig:P,components:[...P.buttons.length>0?[B_.parts.header({buttons:P.buttons,providers:g})]:[],B_.parts.pane({})]}))}),xI=(a,f)=>Fu.sketch(g=>({dom:{tag:"div",classes:["tox-view-wrap__slot-container"]},components:QV(g,a,f),slotBehaviours:WS.unnamedEvents([xr(O=>Fu.hideAllSlots(O))])})),lP=a=>gt(Fu.getSlotNames(a),f=>Fu.isShowing(a,f)),Yx=a=>{const f=a.element;Wn(f,"display","none"),Mn(f,"aria-hidden","true")},cP=a=>{const f=a.element;Jo(f,"display"),We(f,"aria-hidden")},VV=a=>({getContainer:ne(a)}),EI=(a,f,g)=>{Fu.getSlot(a,f).each(O=>{B_.getPane(O).each(x=>{g(O)(VV(x.element.dom))})})},TI=(a,f)=>EI(a,f,B_.getOnShow),zV=(a,f)=>EI(a,f,B_.getOnHide);var Gx=sd({factory:(a,f)=>{const P={setViews:(I,Q)=>{Yo.set(I,[xI(Q,f.backstage.shared.providers)])},whichView:I=>Ds.getCurrent(I).bind(lP),toggleView:(I,Q,U,ee)=>Ds.getCurrent(I).exists(se=>{const he=lP(se),be=he.exists(Re=>ee===Re),we=Fu.getSlot(se,ee).isSome();return we&&(Fu.hideAllSlots(se),be?(Yx(I),Q()):(U(),cP(I),Fu.showSlot(se,ee),TI(se,ee)),he.each(Re=>zV(se,Re))),we})};return{uid:a.uid,dom:{tag:"div",classes:["tox-view-wrap"],attributes:{"aria-hidden":"true"},styles:{display:"none"}},components:[],behaviours:On([Yo.config({}),Ds.config({find:I=>{const Q=Yo.contents(I);return as(Q)}})]),apis:P}},name:"silver.ViewWrapper",configFields:[Gt("backstage")],apis:{setViews:(a,f,g)=>a.setViews(f,g),toggleView:(a,f,g,O,x)=>a.toggleView(f,g,O,x),whichView:(a,f)=>a.whichView(f)}});const AI=(a,f,g)=>{let O=!1;const x={getSocket:P=>$l.getPart(P,a,"socket"),setSidebar:(P,I,Q)=>{$l.getPart(P,a,"sidebar").each(U=>fV(U,I,Q))},toggleSidebar:(P,I)=>{$l.getPart(P,a,"sidebar").each(Q=>hV(Q,I))},whichSidebar:P=>$l.getPart(P,a,"sidebar").bind(nI).getOrNull(),getHeader:P=>$l.getPart(P,a,"header"),getToolbar:P=>$l.getPart(P,a,"toolbar"),setToolbar:(P,I)=>{$l.getPart(P,a,"toolbar").each(Q=>{const U=Fe(I,Ux);Q.getApis().setGroups(Q,U)})},setToolbars:(P,I)=>{$l.getPart(P,a,"multiple-toolbar").each(Q=>{const U=Fe(I,ee=>Fe(ee,Ux));$x.setItems(Q,U)})},refreshToolbar:P=>{$l.getPart(P,a,"toolbar").each(Q=>Q.getApis().refresh(Q))},toggleToolbarDrawer:P=>{$l.getPart(P,a,"toolbar").each(I=>{ro(I.getApis().toggle,Q=>Q(I))})},toggleToolbarDrawerWithoutFocusing:P=>{$l.getPart(P,a,"toolbar").each(I=>{ro(I.getApis().toggleWithoutFocusing,Q=>Q(I))})},isToolbarDrawerToggled:P=>$l.getPart(P,a,"toolbar").bind(I=>q.from(I.getApis().isOpen).map(Q=>Q(I))).getOr(!1),getThrobber:P=>$l.getPart(P,a,"throbber"),focusToolbar:P=>{$l.getPart(P,a,"toolbar").orThunk(()=>$l.getPart(P,a,"multiple-toolbar")).each(Q=>{vo.focusIn(Q)})},setMenubar:(P,I)=>{$l.getPart(P,a,"menubar").each(Q=>{j$.setMenus(Q,I)})},focusMenubar:P=>{$l.getPart(P,a,"menubar").each(I=>{j$.focus(I)})},setViews:(P,I)=>{$l.getPart(P,a,"viewWrapper").each(Q=>{Gx.setViews(Q,I)})},toggleView:(P,I)=>$l.getPart(P,a,"viewWrapper").exists(Q=>Gx.toggleView(Q,()=>x.showMainView(P),()=>x.hideMainView(P),I)),whichView:P=>$l.getPart(P,a,"viewWrapper").bind(Gx.whichView).getOrNull(),hideMainView:P=>{O=x.isToolbarDrawerToggled(P),O&&x.toggleToolbarDrawer(P),$l.getPart(P,a,"editorContainer").each(I=>{const Q=I.element;Wn(Q,"display","none"),Mn(Q,"aria-hidden","true")})},showMainView:P=>{O&&x.toggleToolbarDrawer(P),$l.getPart(P,a,"editorContainer").each(I=>{const Q=I.element;Jo(Q,"display"),We(Q,"aria-hidden")})}};return{uid:a.uid,dom:a.dom,components:f,apis:x,behaviours:a.behaviours}},WV=t1.optional({factory:j$,name:"menubar",schema:[Gt("backstage")]}),ZV=a=>a.type===Of.sliding?RV:a.type===Of.floating?yI:qx,uP=t1.optional({factory:{sketch:a=>$x.sketch({uid:a.uid,dom:a.dom,listBehaviours:On([vo.config({mode:"acyclic",selector:".tox-toolbar"})]),makeItem:()=>qx({type:a.type,uid:Vn("multiple-toolbar-item"),cyclicKeying:!1,initGroups:[],providers:a.providers,onEscape:()=>(a.onEscape(),q.some(!0))}),setupItem:(f,g,O,x)=>{Ip.setGroups(g,O)},shell:!0})},name:"multiple-toolbar",schema:[Gt("dom"),Gt("onEscape")]}),UV=t1.optional({factory:{sketch:a=>{const f=ZV(a),g={type:a.type,uid:a.uid,onEscape:()=>(a.onEscape(),q.some(!0)),onToggled:(O,x)=>a.onToolbarToggled(x),cyclicKeying:!1,initGroups:[],getSink:a.getSink,providers:a.providers,moreDrawerData:{lazyToolbar:a.lazyToolbar,lazyMoreButton:a.lazyMoreButton,lazyHeader:a.lazyHeader},attributes:a.attributes};return f(g)}},name:"toolbar",schema:[Gt("dom"),Gt("onEscape"),Gt("getSink")]}),qV=t1.optional({factory:{sketch:KN},name:"header",schema:[Gt("dom")]}),$I=t1.optional({factory:{sketch:rV},name:"promotion",schema:[Gt("dom")]}),XV=t1.optional({name:"socket",schema:[Gt("dom")]}),PI=t1.optional({factory:{sketch:mV},name:"sidebar",schema:[Gt("dom")]}),jV=t1.optional({factory:{sketch:vV},name:"throbber",schema:[Gt("dom")]}),DI=t1.optional({factory:Gx,name:"viewWrapper",schema:[Gt("backstage")]}),YV=a=>({uid:a.uid,dom:{tag:"div",classes:["tox-editor-container"]},components:a.components}),GV=t1.optional({factory:{sketch:YV},name:"editorContainer",schema:[]});var fi=_c({name:"OuterContainer",factory:AI,configFields:[Gt("dom"),Gt("behaviours")],partFields:[qV,WV,UV,uP,XV,PI,$I,jV,DI,GV],apis:{getSocket:(a,f)=>a.getSocket(f),setSidebar:(a,f,g,O)=>{a.setSidebar(f,g,O)},toggleSidebar:(a,f,g)=>{a.toggleSidebar(f,g)},whichSidebar:(a,f)=>a.whichSidebar(f),getHeader:(a,f)=>a.getHeader(f),getToolbar:(a,f)=>a.getToolbar(f),setToolbar:(a,f,g)=>{a.setToolbar(f,g)},setToolbars:(a,f,g)=>{a.setToolbars(f,g)},refreshToolbar:(a,f)=>a.refreshToolbar(f),toggleToolbarDrawer:(a,f)=>{a.toggleToolbarDrawer(f)},toggleToolbarDrawerWithoutFocusing:(a,f)=>{a.toggleToolbarDrawerWithoutFocusing(f)},isToolbarDrawerToggled:(a,f)=>a.isToolbarDrawerToggled(f),getThrobber:(a,f)=>a.getThrobber(f),setMenubar:(a,f,g)=>{a.setMenubar(f,g)},focusMenubar:(a,f)=>{a.focusMenubar(f)},focusToolbar:(a,f)=>{a.focusToolbar(f)},setViews:(a,f,g)=>{a.setViews(f,g)},toggleView:(a,f,g)=>a.toggleView(f,g),whichView:(a,f)=>a.whichView(f)}});const RI="file edit view insert format tools table help",MI={file:{title:"File",items:"newdocument restoredraft | preview | export print | deleteallconversations"},edit:{title:"Edit",items:"undo redo | cut copy paste pastetext | selectall | searchreplace"},view:{title:"View",items:"code | visualaid visualchars visualblocks | spellchecker | preview fullscreen | showcomments"},insert:{title:"Insert",items:"image link media addcomment pageembed template inserttemplate codesample inserttable accordion | charmap emoticons hr | pagebreak nonbreaking anchor tableofcontents footnotes | mergetags | insertdatetime"},format:{title:"Format",items:"bold italic underline strikethrough superscript subscript codeformat | styles blocks fontfamily fontsize align lineheight | forecolor backcolor | language | removeformat"},tools:{title:"Tools",items:"aidialog aishortcuts | spellchecker spellcheckerlanguage | autocorrect capitalization | a11ycheck code typography wordcount addtemplate"},table:{title:"Table",items:"inserttable | cell row column | advtablesort | tableprops deletetable"},help:{title:"Help",items:"help"}},KV=(a,f,g)=>{const O=KT(g).split(/[ ,]/);return{text:a.title,getItems:()=>Ne(a.items,x=>{const P=x.toLowerCase();return P.trim().length===0?[]:dn(O,I=>I===P)?[]:P==="separator"||P==="|"?[{type:"separator"}]:f.menuItems[P]?[f.menuItems[P]]:[]})}},dP=a=>a.split(" "),Kx=(a,f)=>{const g={...MI,...f.menus},O=Ts(f.menus).length>0,x=f.menubar===void 0||f.menubar===!0?dP(RI):dP(f.menubar===!1?"":f.menubar),P=jn(x,Q=>{const U=ns(MI,Q);return O?U||nn(f.menus,Q).exists(ee=>ns(ee,"items")):U}),I=Fe(P,Q=>{const U=g[Q];return KV({title:U.title,items:dP(U.items)},f,a)});return jn(I,Q=>{const U=ee=>p(ee)||ee.type!=="separator";return Q.getItems().length>0&&dn(Q.getItems(),U)})},fP=a=>{const f=()=>{a._skinLoaded=!0,rF(a)};return()=>{a.initialized?f():a.on("init",f)}},JV=(a,f)=>()=>qA(a,{message:f}),NI=(a,f,g)=>(a.on("remove",()=>g.unload(f)),g.load(f)),hP=(a,f,g,O)=>(a.on("remove",()=>O.unloadRawCss(f)),O.loadRawCss(f,g)),ez=async(a,f)=>{const O="ui/"+fk(a).getOr("default")+"/skin.css",x=tinymce.Resource.get(O);if(p(x))return Promise.resolve(hP(a,O,x,a.ui.styleSheetLoader));{const P=f+"/skin.min.css";return NI(a,P,a.ui.styleSheetLoader)}},tz=async(a,f)=>{if(go(nt.fromDom(a.getElement()))){const x="ui/"+fk(a).getOr("default")+"/skin.shadowdom.css",P=tinymce.Resource.get(x);if(p(P))return hP(a,x,P,aO.DOM.styleSheetLoader),Promise.resolve();{const I=f+"/skin.shadowdom.min.css";return NI(a,I,aO.DOM.styleSheetLoader)}}},nz=async(a,f)=>{fk(f).fold(()=>{const O=dk(f);O&&f.contentCSS.push(O+(a?"/content.inline":"/content")+".min.css")},O=>{const x="ui/"+O+(a?"/content.inline":"/content")+".css",P=tinymce.Resource.get(x);if(p(P))hP(f,x,P,f.ui.styleSheetLoader);else{const I=dk(f);I&&f.contentCSS.push(I+(a?"/content.inline":"/content")+".min.css")}});const g=dk(f);if(!rA(f)&&p(g))return Promise.all([ez(f,g),tz(f,g)]).then()},II=(a,f)=>nz(a,f).then(fP(f),JV(f,"Skin could not be loaded")),oz=Be(II,!1),sz=Be(II,!0),wO=(a,f,g)=>a.translate([f,a.translate(g)]),Jx=(a,f)=>{const g=(I,Q,U,ee)=>{const se=a.shared.providers.translate(I.title);if(I.type==="separator")return q.some({type:"separator",text:se});if(I.type==="submenu"){const he=Ne(I.getStyleItems(),be=>O(be,Q,ee));return Q===0&&he.length<=0?q.none():q.some({type:"nestedmenuitem",text:se,enabled:he.length>0,getSubmenuItems:()=>Ne(I.getStyleItems(),be=>O(be,Q,ee))})}else return q.some({type:"togglemenuitem",text:se,icon:I.icon,active:I.isSelected(ee),enabled:!U,onAction:f.onAction(I),...I.getStylePreview().fold(()=>({}),he=>({meta:{style:he}}))})},O=(I,Q,U)=>{const ee=I.type==="formatter"&&f.isInvalid(I);return Q===0?ee?[]:g(I,Q,!1,U).toArray():g(I,Q,ee,U).toArray()},x=I=>{const Q=f.getCurrentValue(),U=f.shouldHide?0:1;return Ne(I,ee=>O(ee,U,Q))};return{validateItems:x,getFetch:(I,Q)=>(U,ee)=>{const se=Q(),he=x(se),be=T_(he,Pp.CLOSE_ON_EXECUTE,I,{isHorizontalMenu:!1,search:q.none()});ee(be)}}},A0=(a,f,g)=>{const O=g.dataset,x=O.type==="basic"?()=>Fe(O.data,P=>x$(P,g.isSelectedFor,g.getPreviewFor)):O.getData;return{items:Jx(f,g),getStyleItems:x}},L_=(a,f,g,O,x)=>{const{items:P,getStyleItems:I}=A0(a,f,g),Q=ee=>({getComponent:ne(ee),setTooltip:se=>{const he=f.shared.providers.translate(se);fd(ee.element,{"aria-label":he,title:he})}}),U=ee=>{const se=he=>ee.setTooltip(wO(a,O,he.value));return a.on(x,se),jS(Mm(a,"NodeChange",he=>{const be=he.getComponent();g.updateText(be),ko.set(he.getComponent(),!a.selection.isEditable())})(ee),()=>a.off(x,se))};return s$({text:g.icon.isSome()?q.none():g.text,icon:g.icon,tooltip:q.from(g.tooltip),role:q.none(),fetch:P.getFetch(f,I),onSetup:U,getApi:Q,columns:1,presets:"normal",classes:g.icon.isSome()?[]:["bespoke"],dropdownBehaviours:[]},"tox-tbtn",f.shared)},$0=a=>Fe(a,f=>{let g=f,O=f;const x=f.split("=");return x.length>1&&(g=x[0],O=x[1]),{title:g,format:O}}),BI=a=>({type:"basic",data:a});var F_;(function(a){a[a.SemiColon=0]="SemiColon",a[a.Space=1]="Space"})(F_||(F_={}));const rz=(a,f)=>f===F_.SemiColon?a.replace(/;$/,"").split(";"):a.split(" "),mP=(a,f,g)=>{const O=a.options.get(f);return{type:"basic",data:$0(rz(O,g))}},iz="Align",LI="Alignment {0}",FI="left",pP=[{title:"Left",icon:"align-left",format:"alignleft",command:"JustifyLeft"},{title:"Center",icon:"align-center",format:"aligncenter",command:"JustifyCenter"},{title:"Right",icon:"align-right",format:"alignright",command:"JustifyRight"},{title:"Justify",icon:"align-justify",format:"alignjustify",command:"JustifyFull"}],gP=a=>{const f=()=>gt(pP,Q=>a.formatter.match(Q.format)),g=Q=>()=>a.formatter.match(Q),O=Q=>q.none,x=Q=>{const ee=f().fold(ne(FI),se=>se.title.toLowerCase());ho(Q,C0,{icon:`align-${ee}`}),cF(a,{value:ee})},P=BI(pP),I=Q=>()=>gt(pP,U=>U.format===Q.format).each(U=>a.execCommand(U.command));return{tooltip:wO(a,LI,FI),text:q.none(),icon:q.some("align-left"),isSelectedFor:g,getCurrentValue:q.none,getPreviewFor:O,onAction:I,updateText:x,dataset:P,shouldHide:!1,isInvalid:Q=>!a.formatter.canApply(Q.format)}},az=(a,f)=>L_(a,f,gP(a),LI,"AlignTextUpdate"),lz=(a,f)=>{const g=A0(a,f,gP(a));a.ui.registry.addNestedMenuItem("align",{text:f.shared.providers.translate(iz),onSetup:Lu(a),getSubmenuItems:()=>g.items.validateItems(g.getStyleItems())})},eE=(a,f)=>{const g=f(),O=Fe(g,x=>x.format);return q.from(a.formatter.closest(O)).bind(x=>gt(g,P=>P.format===x)).orThunk(()=>an(a.formatter.match("p"),{title:"Paragraph",format:"p"}))},cz="Blocks",HI="Block {0}",bP="Paragraph",QI=a=>{const f=P=>()=>a.formatter.match(P),g=P=>()=>{const I=a.formatter.get(P);return I?q.some({tag:I.length>0&&(I[0].inline||I[0].block)||"div",styles:a.dom.parseStyle(a.formatter.getCssText(P))}):q.none()},O=P=>{const Q=eE(a,()=>x.data).fold(ne(bP),U=>U.title);ho(P,Gf,{text:Q}),BR(a,{value:Q})},x=mP(a,"block_formats",F_.SemiColon);return{tooltip:wO(a,HI,bP),text:q.some(bP),icon:q.none(),isSelectedFor:f,getCurrentValue:q.none,getPreviewFor:g,onAction:FR(a),updateText:O,dataset:x,shouldHide:!1,isInvalid:P=>!a.formatter.canApply(P.format)}},uz=(a,f)=>L_(a,f,QI(a),HI,"BlocksTextUpdate"),dz=(a,f)=>{const g=A0(a,f,QI(a));a.ui.registry.addNestedMenuItem("blocks",{text:cz,onSetup:Lu(a),getSubmenuItems:()=>g.items.validateItems(g.getStyleItems())})},VI="Fonts",vP="Font {0}",tE="System Font",fz=["-apple-system","Segoe UI","Roboto","Helvetica Neue","sans-serif"],OP=a=>{const f=a.split(/\s*,\s*/);return Fe(f,g=>g.replace(/^['"]+|['"]+$/g,""))},zI=(a,f)=>f.length>0&&Nt(f,g=>a.indexOf(g.toLowerCase())>-1),hz=(a,f)=>{if(a.indexOf("-apple-system")===0||f.length>0){const g=OP(a.toLowerCase());return zI(g,fz)||zI(g,f)}else return!1},WI=a=>{const f=()=>{const U=Re=>Re?OP(Re)[0]:"",ee=a.queryCommandValue("FontName"),se=Q.data,he=ee?ee.toLowerCase():"",be=SD(a);return{matchOpt:gt(se,Re=>{const Je=Re.format;return Je.toLowerCase()===he||U(Je).toLowerCase()===U(he).toLowerCase()}).orThunk(()=>an(hz(he,be),{title:tE,format:he})),font:ee}},g=U=>ee=>ee.exists(se=>se.format===U),O=()=>{const{matchOpt:U}=f();return U},x=U=>()=>q.some({tag:"div",styles:U.indexOf("dings")===-1?{"font-family":U}:{}}),P=U=>()=>{a.undoManager.transact(()=>{a.focus(),a.execCommand("FontName",!1,U.format)})},I=U=>{const{matchOpt:ee,font:se}=f(),he=ee.fold(ne(se),be=>be.title);ho(U,Gf,{text:he}),LR(a,{value:he})},Q=mP(a,"font_family_formats",F_.SemiColon);return{tooltip:wO(a,vP,tE),text:q.some(tE),icon:q.none(),isSelectedFor:g,getCurrentValue:O,getPreviewFor:x,onAction:P,updateText:I,dataset:Q,shouldHide:!1,isInvalid:Tt}},ZI=(a,f)=>L_(a,f,WI(a),vP,"FontFamilyTextUpdate"),mz=(a,f)=>{const g=A0(a,f,WI(a));a.ui.registry.addNestedMenuItem("fontfamily",{text:f.shared.providers.translate(VI),onSetup:Lu(a),getSubmenuItems:()=>g.items.validateItems(g.getStyleItems())})},UI={unsupportedLength:["em","ex","cap","ch","ic","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","cm","mm","Q","in","pc","pt","px"],fixed:["px","pt"],relative:["%"],empty:[""]},pz=(()=>{const a="[0-9]+",g="[eE]"+("[+-]?"+a),O="\\.",x=Q=>`(?:${Q})?`,I=`[+-]?(?:${["Infinity",a+O+x(a)+x(g),O+a+x(g),a+x(g)].join("|")})`;return new RegExp(`^(${I})(.*)$`)})(),gz=(a,f)=>dn(f,g=>dn(UI[g],O=>a===O)),nE=(a,f)=>q.from(pz.exec(a)).bind(O=>{const x=Number(O[1]),P=O[2];return gz(P,f)?q.some({value:x,unit:P}):q.none()}),bz=(a,f)=>nE(a,f).map(({value:g,unit:O})=>g+O),qI={tab:ne(9),escape:ne(27),enter:ne(13),backspace:ne(8),delete:ne(46),left:ne(37),up:ne(38),right:ne(39),down:ne(40),space:ne(32),home:ne(36),end:ne(35),pageUp:ne(33),pageDown:ne(34)},vz=(a,f,g)=>{let O=q.none();const x=st=>st.map(Ot=>Ln.getValue(Ot)).getOr(""),P=Mm(a,"NodeChange SwitchMode",st=>{const Ot=st.getComponent();O=q.some(Ot),g.updateInputValue(Ot),ko.set(Ot,!a.selection.isEditable())}),I=st=>({getComponent:ne(st)}),Q=bo(j),U=Vn("custom-number-input-events"),ee=(st,Ot,hn)=>{const jt=x(O),Wt=g.getNewValue(jt,st),yn=jt.length-`${Wt}`.length,An=O.map(Un=>Un.element.dom.selectionStart-yn),rs=O.map(Un=>Un.element.dom.selectionEnd-yn);g.onAction(Wt,hn),O.each(Un=>{Ln.setValue(Un,Wt),Ot&&(An.each(Lo=>Un.element.dom.selectionStart=Lo),rs.each(Lo=>Un.element.dom.selectionEnd=Lo))})},se=(st,Ot)=>ee((hn,jt)=>hn-jt,st,Ot),he=(st,Ot)=>ee((hn,jt)=>hn+jt,st,Ot),be=st=>Rl(st.element).fold(q.none,Ot=>(ji(Ot),q.some(!0))),we=st=>T1(st.element)?(vu(st.element).each(Ot=>ji(Ot)),q.some(!0)):q.none(),Re=(st,Ot,hn,jt)=>{const Wt=bo(j),yn=f.shared.providers.translate(hn),An=Vn("altExecuting"),rs=Mm(a,"NodeChange SwitchMode",Lo=>{ko.set(Lo.getComponent(),!a.selection.isEditable())}),Un=Lo=>{ko.isDisabled(Lo)||st(!0)};return Wl.sketch({dom:{tag:"button",attributes:{title:yn,"aria-label":yn},classes:jt.concat(Ot)},components:[o$(Ot,f.shared.providers.icons)],buttonBehaviours:On([ko.config({}),ss(An,[h0({onSetup:rs,getApi:I},Wt),Xg({getApi:I},Wt),qt(Eu(),(Lo,Po)=>{(Po.event.raw.keyCode===qI.space()||Po.event.raw.keyCode===qI.enter())&&(ko.isDisabled(Lo)||st(!1))}),qt(lf(),Un),qt(fh(),Un)])]),eventOrder:{[Eu()]:[An,"keying"],[lf()]:[An,"alloy.base.behaviour"],[fh()]:[An,"alloy.base.behaviour"]}})},Je=Ar(Re(st=>se(!1,st),"minus","Decrease font size",[])),Ct=Ar(Re(st=>he(!1,st),"plus","Increase font size",[])),at=Ar({dom:{tag:"div",classes:["tox-input-wrapper"]},components:[cO.sketch({inputBehaviours:On([ko.config({}),ss(U,[h0({onSetup:P,getApi:I},Q),Xg({getApi:I},Q)]),ss("input-update-display-text",[qt(Gf,(st,Ot)=>{Ln.setValue(st,Ot.event.text)}),qt(Fc(),st=>{g.onAction(Ln.getValue(st))}),qt(ep(),st=>{g.onAction(Ln.getValue(st))})]),vo.config({mode:"special",onEnter:st=>(ee(Se,!0,!0),q.some(!0)),onEscape:be,onUp:st=>(he(!0,!1),q.some(!0)),onDown:st=>(se(!0,!1),q.some(!0)),onLeft:(st,Ot)=>(Ot.cut(),q.none()),onRight:(st,Ot)=>(Ot.cut(),q.none())})])})],behaviours:On([Ao.config({}),vo.config({mode:"special",onEnter:we,onSpace:we,onEscape:be}),ss("input-wrapper-events",[qt(kd(),st=>{mt([Je,Ct],Ot=>{const hn=nt.fromDom(Ot.get(st).element.dom);T1(hn)&&mf(hn)})})])])});return{dom:{tag:"div",classes:["tox-number-input"]},components:[Je.asSpec(),at.asSpec(),Ct.asSpec()],behaviours:On([Ao.config({}),vo.config({mode:"flow",focusInside:M.OnEnterOrSpaceMode,cycles:!1,selector:"button, .tox-input-wrapper",onEscape:st=>T1(st.element)?q.none():(ji(st.element),q.some(!0))})])}},Oz="Font sizes",yP="Font size {0}",XI="12pt",yz={"8pt":"1","10pt":"2","12pt":"3","14pt":"4","18pt":"5","24pt":"6","36pt":"7"},_z={"xx-small":"7pt","x-small":"8pt",small:"10pt",medium:"12pt",large:"14pt","x-large":"18pt","xx-large":"24pt"},wz=(a,f)=>{const g=Math.pow(10,f);return Math.round(a*g)/g},Sz=(a,f)=>/[0-9.]+px$/.test(a)?wz(parseInt(a,10)*72/96,f||0)+"pt":nn(_z,a).getOr(a),Cz=a=>nn(yz,a).getOr(""),jI=a=>{const f=()=>{let U=q.none();const ee=Q.data,se=a.queryCommandValue("FontSize");if(se)for(let he=3;U.isNone()&&he>=0;he--){const be=Sz(se,he),we=Cz(be);U=gt(ee,Re=>Re.format===se||Re.format===be||Re.format===we)}return{matchOpt:U,size:se}},g=U=>ee=>ee.exists(se=>se.format===U),O=()=>{const{matchOpt:U}=f();return U},x=ne(q.none),P=U=>()=>{a.undoManager.transact(()=>{a.focus(),a.execCommand("FontSize",!1,U.format)})},I=U=>{const{matchOpt:ee,size:se}=f(),he=ee.fold(ne(se),be=>be.title);ho(U,Gf,{text:he}),uF(a,{value:he})},Q=mP(a,"font_size_formats",F_.Space);return{tooltip:wO(a,yP,XI),text:q.some(XI),icon:q.none(),isSelectedFor:g,getPreviewFor:x,getCurrentValue:O,onAction:P,updateText:I,dataset:Q,shouldHide:!1,isInvalid:Tt}},YI=(a,f)=>L_(a,f,jI(a),yP,"FontSizeTextUpdate"),kz=a=>{var f;const g={step:1};return(f={em:{step:.1},cm:{step:.1},in:{step:.1},pc:{step:.1},ch:{step:.1},rem:{step:.1}}[a])!==null&&f!==void 0?f:g},xz=16,GI=a=>a>=0,Ez=a=>{const f=()=>a.queryCommandValue("FontSize");return{updateInputValue:O=>ho(O,Gf,{text:f()}),onAction:(O,x)=>a.execCommand("FontSize",!1,O,{skip_focus:!x}),getNewValue:(O,x)=>{nE(O,["unsupportedLength","empty"]);const P=f(),I=nE(O,["unsupportedLength","empty"]).or(nE(P,["unsupportedLength","empty"])),Q=I.map(be=>be.value).getOr(xz),U=vD(a),ee=I.map(be=>be.unit).filter(be=>be!=="").getOr(U),se=x(Q,kz(ee).step),he=`${GI(se)?se:Q}${ee}`;return he!==P&&dF(a,{value:he}),he}}},KI=(a,f)=>vz(a,f,Ez(a)),JI=(a,f)=>{const g=A0(a,f,jI(a));a.ui.registry.addNestedMenuItem("fontsize",{text:Oz,onSetup:Lu(a),getSubmenuItems:()=>g.items.validateItems(g.getStyleItems())})},Tz="Formats",eB="Format {0}",tB=(a,f)=>{const g="Paragraph",O=I=>()=>a.formatter.match(I),x=I=>()=>{const Q=a.formatter.get(I);return Q!==void 0?q.some({tag:Q.length>0&&(Q[0].inline||Q[0].block)||"div",styles:a.dom.parseStyle(a.formatter.getCssText(I))}):q.none()},P=I=>{const Q=he=>kx(he)?Ne(he.items,Q):ON(he)?[{title:he.title,format:he.format}]:[],U=Ne(_N(a),Q),se=eE(a,ne(U)).fold(ne(g),he=>he.title);ho(I,Gf,{text:se}),lF(a,{value:se})};return{tooltip:wO(a,eB,g),text:q.some(g),icon:q.none(),isSelectedFor:O,getCurrentValue:q.none,getPreviewFor:x,onAction:FR(a),updateText:P,shouldHide:hD(a),isInvalid:I=>!a.formatter.canApply(I.format),dataset:f}},H_=(a,f)=>{const g={type:"advanced",...f.styles};return L_(a,f,tB(a,g),eB,"StylesTextUpdate")},Az=(a,f)=>{const g={type:"advanced",...f.styles},O=A0(a,f,tB(a,g));a.ui.registry.addNestedMenuItem("styles",{text:Tz,onSetup:Lu(a),getSubmenuItems:()=>O.items.validateItems(O.getStyleItems())})},$z=ne([Gt("toggleClass"),Gt("fetch"),df("onExecute"),_t("getHotspot",q.some),_t("getAnchorOverrides",ne({})),ym(),df("onItemExecute"),er("lazySink"),Gt("dom"),Ps("onOpen"),il("splitDropdownBehaviours",[Sa,vo,Ao]),_t("matchWidth",!1),_t("useMinWidth",!1),_t("eventOrder",{}),er("role")].concat(g3())),Pz=yc({factory:Wl,schema:[Gt("dom")],name:"arrow",defaults:()=>({buttonBehaviours:On([Ao.revoke()])}),overrides:a=>({dom:{tag:"span",attributes:{role:"presentation"}},action:f=>{f.getSystem().getByUid(a.uid).each(Td)},buttonBehaviours:On([hs.config({toggleOnExecute:!1,toggleClass:a.toggleClass})])})}),Dz=yc({factory:Wl,schema:[Gt("dom")],name:"button",defaults:()=>({buttonBehaviours:On([Ao.revoke()])}),overrides:a=>({dom:{tag:"span",attributes:{role:"presentation"}},action:f=>{f.getSystem().getByUid(a.uid).each(g=>{a.onExecute(g,f)})}})}),Rz=ne([Pz,Dz,Mu({factory:{sketch:a=>({uid:a.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:a.text}})},schema:[Gt("text")],name:"aria-descriptor"}),Wf({schema:[y1()],name:"menu",defaults:a=>({onExecute:(f,g)=>{f.getSystem().getByUid(a.uid).each(O=>{a.onItemExecute(O,f,g)})}})}),sM()]),Mz=(a,f,g,O)=>{const x=se=>{Ds.getCurrent(se).each(he=>{ur.highlightFirst(he),vo.focusIn(he)})},P=se=>{m3(a,Se,se,O,x,Bu.HighlightMenuAndItem).get(j)},I=se=>(P(se),q.some(!0)),Q=se=>{const he=Sp(se,a,"button");return Td(he),q.some(!0)},U={...kr([xr((se,he)=>{ti(se,a,"aria-descriptor").each(we=>{const Re=Vn("aria");Mn(we.element,"id",Re),Mn(se.element,"aria-describedby",Re)})})]),...Tp(q.some(P))},ee={repositionMenus:se=>{hs.isOn(se)&&lM(se)}};return{uid:a.uid,dom:a.dom,components:f,apis:ee,eventOrder:{...a.eventOrder,[au()]:["disabling","toggling","alloy.base.behaviour"]},events:U,behaviours:$a(a.splitDropdownBehaviours,[Sa.config({others:{sandbox:se=>{const he=Sp(se,a,"arrow");return p3(a,se,{onOpen:()=>{hs.on(he),hs.on(se)},onClose:()=>{hs.off(he),hs.off(se)}})}}}),vo.config({mode:"special",onSpace:Q,onEnter:Q,onDown:I}),Ao.config({}),hs.config({toggleOnExecute:!1,aria:{mode:"expanded"}})]),domModification:{attributes:{role:a.role.getOr("button"),"aria-haspopup":!0}}}},oE=_c({name:"SplitDropdown",configFields:$z(),partFields:Rz(),factory:Mz,apis:{repositionMenus:(a,f)=>a.repositionMenus(f)}}),nB=a=>({isEnabled:()=>!ko.isDisabled(a),setEnabled:f=>ko.set(a,!f),setText:f=>ho(a,Gf,{text:f}),setIcon:f=>ho(a,C0,{icon:f})}),_P=a=>({setActive:f=>{hs.set(a,f)},isActive:()=>hs.isOn(a),isEnabled:()=>!ko.isDisabled(a),setEnabled:f=>ko.set(a,!f),setText:f=>ho(a,Gf,{text:f}),setIcon:f=>ho(a,C0,{icon:f})}),oB=(a,f)=>a.map(g=>({"aria-label":f.translate(g),title:f.translate(g)})).getOr({}),sB=Vn("focus-button"),sE=(a,f,g,O,x)=>{const P=f.map(Q=>Ar(_5(Q,"tox-tbtn",x))),I=a.map(Q=>Ar(S0(Q,x.icons)));return{dom:{tag:"button",classes:["tox-tbtn"].concat(f.isSome()?["tox-tbtn--select"]:[]),attributes:oB(g,x)},components:h_([I.map(Q=>Q.asSpec()),P.map(Q=>Q.asSpec())]),eventOrder:{[_s()]:["focusing","alloy.base.behaviour",bO],[bc()]:[bO,"toolbar-group-button-events"]},buttonBehaviours:On([al.toolbarButton(x.isDisabled),Ol(),ss(bO,[xr((Q,U)=>t$(Q)),qt(Gf,(Q,U)=>{P.bind(ee=>ee.getOpt(Q)).each(ee=>{Yo.set(ee,[Xi(x.translate(U.event.text))])})}),qt(C0,(Q,U)=>{I.bind(ee=>ee.getOpt(Q)).each(ee=>{Yo.set(ee,[S0(U.event.icon,x.icons)])})}),qt(_s(),(Q,U)=>{U.event.prevent(),gs(Q,sB)})])].concat(O.getOr([])))}},rB=(a,f,g,O)=>{const x=f.shared,P=bo(j),I={toolbarButtonBehaviours:[],getApi:nB,onSetup:a.onSetup},Q=[ss("toolbar-group-button-events",[h0(I,P),Xg(I,P)])];return T0.sketch({lazySink:x.getSink,fetch:()=>Xc.nu(U=>{U(Fe(g(a.items),Ux))}),markers:{toggledClass:"tox-tbtn--enabled"},parts:{button:sE(a.icon,a.text,a.tooltip,q.some(Q),x.providers),toolbar:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:O}}}})},iB=(a,f,g)=>{var O;const x=bo(j),P=sE(a.icon,a.text,a.tooltip,q.none(),g);return Wl.sketch({dom:P.dom,components:P.components,eventOrder:mx,buttonBehaviours:{...On([ss("toolbar-button-events",[G9({onAction:a.onAction,getApi:f.getApi}),h0(f,x),Xg(f,x)]),al.toolbarButton(()=>!a.enabled||g.isDisabled()),Ol()].concat(f.toolbarButtonBehaviours)),[bO]:(O=P.buttonBehaviours)===null||O===void 0?void 0:O[bO]}})},Nz=(a,f)=>aB(a,f,[]),aB=(a,f,g)=>iB(a,{toolbarButtonBehaviours:g.length>0?[ss("toolbarButtonWith",g)]:[],getApi:nB,onSetup:a.onSetup},f),Iz=(a,f)=>lB(a,f,[]),lB=(a,f,g)=>iB(a,{toolbarButtonBehaviours:[Yo.config({}),hs.config({toggleClass:"tox-tbtn--enabled",aria:{mode:"pressed"},toggleOnExecute:!1})].concat(g.length>0?[ss("toolbarToggleButtonWith",g)]:[]),getApi:_P,onSetup:a.onSetup},f),Bz=(a,f,g)=>O=>Xc.nu(x=>f.fetch(x)).map(x=>q.from(zk(lr(a3(Vn("menu-value"),x,P=>{f.onItemAction(a(O),P)},f.columns,f.presets,Pp.CLOSE_ON_EXECUTE,f.select.getOr(Tt),g),{movement:Fk(f.columns,f.presets),menuBehaviours:WS.unnamedEvents(f.columns!=="auto"?[]:[xr((P,I)=>{MA(P,4,RD(f.presets)).each(({numRows:Q,numColumns:U})=>{vo.setGridSize(P,Q,U)})})])})))),cB=(a,f)=>{const g=P=>({isEnabled:()=>!ko.isDisabled(P),setEnabled:I=>ko.set(P,!I),setIconFill:(I,Q)=>{oa(P.element,`svg path[class="${I}"], rect[class="${I}"]`).each(U=>{Mn(U,"fill",Q)})},setActive:I=>{Mn(P.element,"aria-pressed",I),oa(P.element,"span").each(Q=>{P.getSystem().getByDom(Q).each(U=>hs.set(U,I))})},isActive:()=>oa(P.element,"span").exists(I=>P.getSystem().getByDom(I).exists(hs.isOn)),setText:I=>oa(P.element,"span").each(Q=>P.getSystem().getByDom(Q).each(U=>ho(U,Gf,{text:I}))),setIcon:I=>oa(P.element,"span").each(Q=>P.getSystem().getByDom(Q).each(U=>ho(U,C0,{icon:I}))),setTooltip:I=>{const Q=f.providers.translate(I);fd(P.element,{"aria-label":Q,title:Q})}}),O=bo(j),x={getApi:g,onSetup:a.onSetup};return oE.sketch({dom:{tag:"div",classes:["tox-split-button"],attributes:{"aria-pressed":!1,...oB(a.tooltip,f.providers)}},onExecute:P=>{const I=g(P);I.isEnabled()&&a.onAction(I)},onItemExecute:(P,I,Q)=>{},splitDropdownBehaviours:On([al.splitButton(f.providers.isDisabled),Ol(),ss("split-dropdown-events",[xr((P,I)=>t$(P)),qt(sB,Ao.focus),h0(x,O),Xg(x,O)]),s2.config({})]),eventOrder:{[bc()]:["alloy.base.behaviour","split-dropdown-events"]},toggleClass:"tox-tbtn--enabled",lazySink:f.getSink,fetch:Bz(g,a,f.providers),parts:{menu:i_(!1,a.columns,a.presets)},components:[oE.parts.button(sE(a.icon,a.text,q.none(),q.some([hs.config({toggleClass:"tox-tbtn--enabled",toggleOnExecute:!1})]),f.providers)),oE.parts.arrow({dom:{tag:"button",classes:["tox-tbtn","tox-split-button__chevron"],innerHtml:UT("chevron-down",f.providers.icons)},buttonBehaviours:On([al.splitButton(f.providers.isDisabled),Ol(),nk()])}),oE.parts["aria-descriptor"]({text:f.providers.translate("To open the popup, press Shift+Enter")})]})},Lz=[{name:"history",items:["undo","redo"]},{name:"ai",items:["aidialog","aishortcuts"]},{name:"styles",items:["styles"]},{name:"formatting",items:["bold","italic"]},{name:"alignment",items:["alignleft","aligncenter","alignright","alignjustify"]},{name:"indentation",items:["outdent","indent"]},{name:"permanent pen",items:["permanentpen"]},{name:"comments",items:["addcomment"]}],M2=(a,f)=>(g,O,x)=>{const P=a(g).mapError(I=>wl(I)).getOrDie();return f(P,O,x)},Fz={button:M2(PA,(a,f)=>Nz(a,f.shared.providers)),togglebutton:M2(JD,(a,f)=>Iz(a,f.shared.providers)),menubutton:M2(X$,(a,f)=>g2(a,"tox-tbtn",f,q.none(),!1)),splitbutton:M2(sV,(a,f)=>cB(a,f.shared)),grouptoolbarbutton:M2(nV,(a,f,g)=>{const O=g.ui.registry.getAll().buttons,x=I=>aE(g,{buttons:O,toolbar:I,allowToolbarGroups:!1},f,q.none()),P={[$g]:f.shared.header.isPositionedAtTop()?td.TopToBottom:td.BottomToTop};switch(t_(g)){case Of.floating:return rB(a,f,x,P);default:throw new Error("Toolbar groups are only supported when using floating toolbar mode")}})},Hz=(a,f,g)=>nn(Fz,a.type).fold(()=>(console.error("skipping button defined by",a),q.none()),O=>q.some(O(a,f,g))),N2={styles:H_,fontsize:YI,fontsizeinput:KI,fontfamily:ZI,blocks:uz,align:az},Qz=a=>{const f=Fe(Lz,g=>{const O=jn(g.items,x=>ns(a,x)||ns(N2,x));return{name:g.name,items:O}});return jn(f,g=>g.items.length>0)},rE=a=>{const f=a.split("|");return Fe(f,g=>({items:g.trim().split(" ")}))},iE=a=>te(a,f=>ns(f,"name")&&ns(f,"items")),uB=a=>{const f=a.toolbar,g=a.buttons;return f===!1?[]:f===void 0||f===!0?Qz(g):p(f)?rE(f):iE(f)?f:(console.error("Toolbar type should be string, string[], boolean or ToolbarGroup[]"),[])},Vz=(a,f,g,O,x,P)=>nn(f,g.toLowerCase()).orThunk(()=>P.bind(I=>Vs(I,Q=>nn(f,Q+g.toLowerCase())))).fold(()=>nn(N2,g.toLowerCase()).map(I=>I(a,x)),I=>I.type==="grouptoolbarbutton"&&!O?(console.warn(`Ignoring the '${g}' toolbar button. Group toolbar buttons are only supported when using floating toolbar mode and cannot be nested.`),q.none()):Hz(I,x,a)),aE=(a,f,g,O)=>{const x=uB(f),P=Fe(x,I=>{const Q=Ne(I.items,U=>U.trim().length===0?[]:Vz(a,f.buttons,U,f.allowToolbarGroups,g,O).toArray());return{title:q.from(a.translate(I.name)),items:Q}});return jn(P,I=>I.items.length>0)},dB=(a,f,g,O)=>{const x=f.mainUi.outerContainer,P=g.toolbar,I=g.buttons;if(te(P,p)){const Q=P.map(U=>{const ee={toolbar:U,buttons:I,allowToolbarGroups:g.allowToolbarGroups};return aE(a,ee,O,q.none())});fi.setToolbars(x,Q)}else fi.setToolbar(x,aE(a,g,O,q.none()))},fB=Kt(),zz=fB.os.isiOS()&&fB.os.version.major<=12,lE=(a,f)=>{const{uiMotherships:g}=f,O=a.dom;let x=a.getWin();const P=a.getDoc().documentElement,I=bo(Ws(x.innerWidth,x.innerHeight)),Q=bo(Ws(P.offsetWidth,P.offsetHeight)),U=()=>{const be=I.get();(be.left!==x.innerWidth||be.top!==x.innerHeight)&&(I.set(Ws(x.innerWidth,x.innerHeight)),Pk(a))},ee=()=>{const be=a.getDoc().documentElement,we=Q.get();(we.left!==be.offsetWidth||we.top!==be.offsetHeight)&&(Q.set(Ws(be.offsetWidth,be.offsetHeight)),Pk(a))},se=be=>{iF(a,be)};O.bind(x,"resize",U),O.bind(x,"scroll",se);const he=Mb(nt.fromDom(a.getBody()),"load",ee);a.on("hide",()=>{mt(g,be=>{Wn(be.element,"display","none")})}),a.on("show",()=>{mt(g,be=>{Jo(be.element,"display")})}),a.on("NodeChange",ee),a.on("remove",()=>{he.unbind(),O.unbind(x,"resize",U),O.unbind(x,"scroll",se),x=null})},hB=(a,f,g)=>{zg(a)&&Op(g.mainUi.mothership.element,g.popupUi.mothership),zl(f,g.dialogUi.mothership)};var mB=Object.freeze({__proto__:null,render:(a,f,g,O,x)=>{const{mainUi:P,uiMotherships:I}=f,Q=bo(0),U=P.outerContainer;oz(a);const ee=nt.fromDom(x.targetNode),se=fn(At(ee));Op(ee,P.mothership),hB(a,se,f),a.on("SkinLoaded",()=>{fi.setSidebar(U,g.sidebar,ck(a)),dB(a,f,g,O),Q.set(a.getWin().innerWidth),fi.setMenubar(U,Kx(a,g)),fi.setViews(U,g.views),lE(a,f)});const he=fi.getSocket(U).getOrDie("Could not find expected socket element");if(zz){Lr(he.element,{overflow:"scroll","-webkit-overflow-scrolling":"touch"});const Je=H9(()=>{a.dispatch("ScrollContent")},20),Ct=sc(he.element,"scroll",Je.throttle);a.on("remove",Ct.unbind)}gR(a,f),a.addCommand("ToggleSidebar",(Je,Ct)=>{fi.toggleSidebar(U,Ct),a.dispatch("ToggleSidebar")}),a.addQueryValueHandler("ToggleSidebar",()=>{var Je;return(Je=fi.whichSidebar(U))!==null&&Je!==void 0?Je:""}),a.addCommand("ToggleView",(Je,Ct)=>{if(fi.toggleView(U,Ct)){const at=U.element;P.mothership.broadcastOn([Bh()],{target:at}),mt(I,st=>{st.broadcastOn([Bh()],{target:at})}),A(fi.whichView(U))&&(a.focus(),a.nodeChanged(),fi.refreshToolbar(U))}}),a.addQueryValueHandler("ToggleView",()=>{var Je;return(Je=fi.whichView(U))!==null&&Je!==void 0?Je:""});const be=t_(a),we=()=>{fi.refreshToolbar(f.mainUi.outerContainer)};(be===Of.sliding||be===Of.floating)&&a.on("ResizeWindow ResizeEditor ResizeContent",()=>{const Je=a.getWin().innerWidth;Je!==Q.get()&&(we(),Q.set(Je))});const Re={setEnabled:Je=>{Ek(f,!Je)},isEnabled:()=>!ko.isDisabled(U)};return{iframeContainer:he.element.dom,editorContainer:U.element.dom,api:Re}}});const cE=a=>/^[0-9\.]+(|px)$/i.test(""+a)?q.some(parseInt(""+a,10)):q.none(),wP=a=>J(a)?a+"px":a,I2=(a,f,g)=>{const O=f.filter(P=>aa>P);return O.or(x).getOr(a)},Zz=a=>{const f=ok(a),g=e_(a),O=GT(a);return cE(f).map(x=>I2(x,g,O))},Uz=a=>Zz(a).getOr(ok(a)),pB=a=>{const f=MS(a),g=YT(a),O=sk(a);return cE(f).map(x=>I2(x,g,O))},qz=a=>pB(a).getOr(MS(a)),{ToolbarLocation:SP,ToolbarMode:Q_}=h7,Xz=40,jz=(a,f,g,O,x)=>{const{mainUi:P,uiMotherships:I}=g,Q=aO.DOM,U=s_(a),ee=BS(a),se=sk(a).or(pB(a)),he=O.shared.header,be=he.isPositionedAtTop,we=t_(a),Re=we===Q_.sliding||we===Q_.floating,Je=bo(!1),Ct=()=>Je.get()&&!a.removed,at=So=>Re?So.fold(ne(0),Zs=>Zs.components().length>1?Nr(Zs.components()[1].element):0):0,st=So=>{switch(NS(a)){case SP.auto:const Zs=fi.getToolbar(P.outerContainer),$n=at(Zs),no=Nr(So.element)-$n,Fo=Rr(f);if(Fo.y>no)return"top";{const Co=yl(f),Go=Math.max(Co.dom.scrollHeight,Nr(Co));return Fo.bottom{x.on(Zs=>{Pa.setModes(Zs,[So]),he.setDockingMode(So);const $n=be()?td.TopToBottom:td.BottomToTop;Mn(Zs.element,$g,$n)})},hn=()=>{x.on(So=>{const Zs=se.getOrThunk(()=>{const $n=cE(Or(si(),"margin-left")).getOr(0);return Ii(si())-Nl(f).left+$n});Wn(So.element,"max-width",Zs+"px")})},jt=So=>{x.on(Zs=>{const $n=fi.getToolbar(P.outerContainer),no=at($n),Fo=Rr(f),{top:Vo,left:Co}=Wt(a,P.outerContainer.element).fold(()=>({top:be()?Math.max(Fo.y-Nr(Zs.element)+no,0):Fo.bottom,left:Fo.x}),Ys=>{var lc;const jd=Rr(Ys),Kh=(lc=Ys.dom.scrollTop)!==null&&lc!==void 0?lc:0,Qm=Us(Ys,si()),L0=Qm?Math.max(Fo.y-Nr(Zs.element)+no,0):Fo.y-jd.y+Kh-Nr(Zs.element)+no;return{top:be()?L0:Fo.bottom,left:Qm?Fo.x:Fo.x-jd.x}}),Go={position:"absolute",left:Math.round(Co)+"px",top:Math.round(Vo)+"px"},oi=So.map(Ys=>{const lc=el(),jd=150,Kh=window.innerWidth-(Co-lc.left);return{width:Math.max(Math.min(Ys,Kh),jd)+"px"}}).getOr({});Lr(P.outerContainer.element,{...Go,...oi})})},Wt=(So,Zs)=>zg(So)?yO(Zs):q.none(),yn=()=>{mt(I,So=>{So.broadcastOn([B1()],{})})},An=()=>{if(U)return q.none();if(Nl(P.outerContainer.element).left+Wi(P.outerContainer.element)>=window.innerWidth-Xz||Gr(P.outerContainer.element,"width").isSome()){Wn(P.outerContainer.element,"position","absolute"),Wn(P.outerContainer.element,"left","0px"),Jo(P.outerContainer.element,"width");const Zs=Wi(P.outerContainer.element);return q.some(Zs)}else return q.none()},rs=So=>{if(!Ct())return;U||hn();const Zs=U?q.none():An();Re&&fi.refreshToolbar(P.outerContainer),U||jt(Zs),ee&&x.on(So),yn()},Un=()=>U||!ee||!Ct()?!1:x.get().exists(So=>{const Zs=he.getDockingMode(),$n=st(So);return $n!==Zs?(Ot($n),!0):!1});return{isVisible:Ct,isPositionedAtTop:be,show:()=>{Je.set(!0),Wn(P.outerContainer.element,"display","flex"),Q.addClass(a.getBody(),"mce-edit-focus"),mt(I,So=>{Jo(So.element,"display")}),Un(),zg(a)?rs(So=>Pa.isDocked(So)?Pa.reset(So):Pa.refresh(So)):rs(Pa.refresh)},hide:()=>{Je.set(!1),Wn(P.outerContainer.element,"display","none"),Q.removeClass(a.getBody(),"mce-edit-focus"),mt(I,So=>{Wn(So.element,"display","none")})},update:rs,updateMode:()=>{Un()&&rs(Pa.reset)},repositionPopups:yn}},gB=(a,f)=>{const g=Rr(a);return{pos:f?g.y:g.bottom,bounds:g}},bB=(a,f,g,O)=>{const x=bo(gB(f,g.isPositionedAtTop())),P=ee=>{const{pos:se,bounds:he}=gB(f,g.isPositionedAtTop()),{pos:be,bounds:we}=x.get(),Re=he.height!==we.height||he.width!==we.width;x.set({pos:se,bounds:he}),Re&&Pk(a,ee),g.isVisible()&&(be!==se?g.update(Pa.reset):Re&&(g.updateMode(),g.repositionPopups()))};O||(a.on("activate",g.show),a.on("deactivate",g.hide)),a.on("SkinLoaded ResizeWindow",()=>g.update(Pa.reset)),a.on("NodeChange keydown",ee=>{requestAnimationFrame(()=>P(ee))});let I=0;const Q=ux(()=>g.update(Pa.refresh),33);a.on("ScrollWindow",()=>{const ee=el().left;ee!==I&&(I=ee,Q.throttle()),g.updateMode()}),zg(a)&&a.on("ElementScroll",ee=>{g.update(Pa.refresh)});const U=Rh();U.set(Mb(nt.fromDom(a.getBody()),"load",ee=>P(ee.raw))),a.on("remove",()=>{U.clear()})};var vB=Object.freeze({__proto__:null,render:(a,f,g,O,x)=>{const{mainUi:P}=f,I=fs(),Q=nt.fromDom(x.targetNode),U=jz(a,Q,f,O,I),ee=gD(a);sz(a);const se=()=>{if(I.isSet()){U.show();return}I.set(fi.getHeader(P.outerContainer).getOrDie());const be=lA(a);zg(a)?(Op(Q,P.mothership),Op(Q,f.popupUi.mothership)):zl(be,P.mothership),zl(be,f.dialogUi.mothership),dB(a,f,g,O),fi.setMenubar(P.outerContainer,Kx(a,g)),U.show(),bB(a,Q,U,ee),a.nodeChanged()};a.on("show",se),a.on("hide",U.hide),ee||(a.on("focus",se),a.on("blur",U.hide)),a.on("init",()=>{(a.hasFocus()||ee)&&se()}),gR(a,f);const he={show:se,hide:U.hide,setEnabled:be=>{Ek(f,!be)},isEnabled:()=>!ko.isDisabled(P.outerContainer)};return{editorContainer:P.outerContainer.element.dom,api:he}}});const Yz=()=>{const a=fs(),f=fs(),g=fs();return{dialogUi:a,popupUi:f,mainUi:g,getUiMotherships:()=>{const P=a.get().map(Q=>Q.mothership),I=f.get().map(Q=>Q.mothership);return P.fold(()=>I.toArray(),Q=>I.fold(()=>[Q],U=>Us(Q.element,U.element)?[Q]:[Q,U]))},lazyGetInOuterOrDie:(P,I)=>()=>g.get().bind(Q=>I(Q.outerContainer)).getOrDie(`Could not find ${P} element in OuterContainer`)}},Gz="contexttoolbar-show",OB="contexttoolbar-hide",Kz=a=>({hide:()=>gs(a,f1()),getValue:()=>Ln.getValue(a)}),yB=(a,f)=>qt(e$,(g,O)=>{const x=a.get(g),P=Kz(x);f.onAction(P,O.event.buttonApi)}),B2=(a,f,g)=>{const{primary:O,...x}=f.original,P=Js(PA({...x,type:"button",onAction:j}));return aB(P,g,[yB(a,f)])},_B=(a,f,g)=>{const{primary:O,...x}=f.original,P=Js(JD({...x,type:"togglebutton",onAction:j}));return lB(P,g,[yB(a,f)])},Jz=a=>a.type==="contextformtogglebutton",eW=(a,f,g)=>Jz(f)?_B(a,f,g):B2(a,f,g),wB=(a,f,g)=>{const O=Fe(f,I=>Ar(eW(a,I,g)));return{asSpecs:()=>Fe(O,I=>I.asSpec()),findPrimary:I=>Vs(f,(Q,U)=>Q.primary?q.from(O[U]).bind(ee=>ee.getOpt(I)).filter(Te(ko.isDisabled)):q.none())}},uE=(a,f)=>{const g=a.label.fold(()=>({}),P=>({"aria-label":P})),O=Ar(cO.sketch({inputClasses:["tox-toolbar-textfield","tox-toolbar-nav-js"],data:a.initValue(),inputAttributes:g,selectOnFocus:!0,inputBehaviours:On([vo.config({mode:"special",onEnter:P=>x.findPrimary(P).map(I=>(Td(I),!0)),onLeft:(P,I)=>(I.cut(),q.none()),onRight:(P,I)=>(I.cut(),q.none())})])})),x=wB(O,a.commands,f);return[{title:q.none(),items:[O.asSpec()]},{title:q.none(),items:x.asSpecs()}]},SB={renderContextForm:(a,f,g)=>qx({type:a,uid:Vn("context-toolbar"),initGroups:uE(f,g),onEscape:q.none,cyclicKeying:!0,providers:g}),buildInitGroups:uE},CB=(a,f,g)=>f.bottom-a.y>=g&&a.bottom-f.y>=g,V_=a=>{const f=a.getBoundingClientRect();if(f.height<=0&&f.width<=0){const g=Kd(nt.fromDom(a.startContainer),a.startOffset).element;return(Ji(g)?ba(g):q.some(g)).filter(Ls).map(x=>x.dom.getBoundingClientRect()).getOr(f)}else return f},z_=a=>{const f=a.selection.getRng(),g=V_(f);if(a.inline){const O=el();return Cr(O.left+g.left,O.top+g.top,g.width,g.height)}else{const O=Ma(nt.fromDom(a.getBody()));return Cr(O.x+g.left,O.y+g.top,g.width,g.height)}},CP=(a,f)=>f.filter(g=>Ss(g)&&Ac(g)).map(Ma).getOrThunk(()=>z_(a)),kB=(a,f,g)=>{const O=Math.max(a.x+g,f.x),x=Math.min(a.right-g,f.right);return{x:O,width:x-O}},xB=(a,f,g,O,x,P)=>{const I=nt.fromDom(a.getContainer()),Q=oa(I,".tox-editor-header").getOr(I),U=Rr(Q),ee=U.y>=f.bottom,se=O&&!ee;if(a.inline&&se)return{y:Math.max(U.bottom+P,g.y),bottom:g.bottom};if(a.inline&&!se)return{y:g.y,bottom:Math.min(U.y-P,g.bottom)};const he=x==="line"?Rr(I):f;return se?{y:Math.max(U.bottom+P,g.y),bottom:Math.min(he.bottom-P,g.bottom)}:{y:Math.max(he.y+P,g.y),bottom:Math.min(U.y-P,g.bottom)}},EB=(a,f,g,O=0)=>{const x=nm(window),P=Rr(nt.fromDom(a.getContentAreaContainer())),I=o_(a)||hk(a)||IS(a),{x:Q,width:U}=kB(P,x,O);if(a.inline&&!I)return Cr(Q,x.y,U,x.height);{const ee=f.header.isPositionedAtTop(),{y:se,bottom:he}=xB(a,P,x,ee,g,O);return Cr(Q,se,U,he-se)}},L2=12,TB={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"],inset:["tox-pop--inset"]},AB={maxHeightFunction:pf(),maxWidthFunction:nP()},nW=(a,f)=>{const g=a.selection.getRng(),O=Kd(nt.fromDom(g.startContainer),g.startOffset);return g.startContainer===g.endContainer&&g.startOffset===g.endOffset-1&&Us(O.element,f)},oW=(a,f,g)=>{const O=Gr(a,"position");Wn(a,"position",f);const x=g(a);return O.each(P=>Wn(a,"position",P)),x},$B=a=>a==="node",PB=(a,f,g,O,x)=>{const P=z_(a),I=O.lastElement().exists(Q=>Us(g,Q));if(nW(a,g))return I?C$:Fm;if(I)return oW(f,O.getMode(),()=>CB(P,Rr(f),-20)&&!O.isReposition()?YH:C$);{const Q=O.getMode()==="fixed"?x.y+el().top:x.y,U=Nr(f)+L2;return Q+U<=P.y?Fm:P_}},dE=(a,f,g,O)=>{const x=U=>(ee,se,he,be,we)=>{const Re=PB(a,be,U,g,we),Je={...ee,y:we.y,height:we.height};return{...Re(Je,se,he,be,we),alwaysFit:!0}},P=U=>$B(O)?[x(U)]:[];return f?{onLtr:U=>[zr,Qa,kl,Va,os,oc].concat(P(U)),onRtl:U=>[zr,kl,Qa,os,Va,oc].concat(P(U))}:{onLtr:U=>[oc,zr,Va,Qa,os,kl].concat(P(U)),onRtl:U=>[oc,zr,os,kl,Va,Qa].concat(P(U))}},DB=(a,f,g,O)=>f==="line"?{bubble:Qf(L2,0,TB),layouts:{onLtr:()=>[za],onRtl:()=>[C1]},overrides:AB}:{bubble:Qf(0,L2,TB,1/L2),layouts:dE(a,g,O,f),overrides:AB},fE=(a,f)=>{const g=jn(f,P=>P.predicate(a.dom)),{pass:O,fail:x}=Eo(g,P=>P.type==="contexttoolbar");return{contextToolbars:O,contextForms:x}},kP=a=>{if(a.length<=1)return a;{const f=P=>dn(a,I=>I.position===P),g=P=>jn(a,I=>I.position===P),O=f("selection"),x=f("node");if(O||x)if(x&&O){const P=g("node"),I=Fe(g("selection"),Q=>({...Q,position:"node"}));return P.concat(I)}else return g(O?"selection":"node");else return g("line")}},sW=a=>{if(a.length<=1)return a;{const f=O=>gt(a,x=>x.position===O);return f("selection").orThunk(()=>f("node")).orThunk(()=>f("line")).map(O=>O.position).fold(()=>[],O=>jn(a,x=>x.position===O))}},RB=(a,f,g)=>{const O=fE(a,f);if(O.contextForms.length>0)return q.some({elem:a,toolbars:[O.contextForms[0]]});{const x=fE(a,g);if(x.contextForms.length>0)return q.some({elem:a,toolbars:[x.contextForms[0]]});if(O.contextToolbars.length>0||x.contextToolbars.length>0){const P=kP(O.contextToolbars.concat(x.contextToolbars));return q.some({elem:a,toolbars:P})}else return q.none()}},rW=(a,f,g)=>a(f)?q.none():gc(f,O=>{if(Ls(O)){const{contextToolbars:x,contextForms:P}=fE(O,g.inNodeScope),I=P.length>0?P:sW(x);return I.length>0?q.some({elem:O,toolbars:I}):q.none()}else return q.none()},a),iW=(a,f)=>{const g=nt.fromDom(f.getBody()),O=I=>Us(I,g),x=I=>!O(I)&&!Mi(g,I),P=nt.fromDom(f.selection.getNode());return x(P)?q.none():RB(P,a.inNodeScope,a.inEditorScope).orThunk(()=>rW(O,P,a))},hE=(a,f)=>{const g={},O=[],x=[],P={},I={},Q=(se,he)=>{const be=Js(M7(he));g[se]=be,be.launch.map(we=>{P["form:"+se]={...he.launch,type:we.type==="contextformtogglebutton"?"togglebutton":"button",onAction:()=>{f(be)}}}),be.scope==="editor"?x.push(be):O.push(be),I[se]=be},U=(se,he)=>{I7(he).each(be=>{he.scope==="editor"?x.push(be):O.push(be),I[se]=be})},ee=Ts(a);return mt(ee,se=>{const he=a[se];he.type==="contextform"?Q(se,he):he.type==="contexttoolbar"&&U(se,he)}),{forms:g,inNodeScope:O,inEditorScope:x,lookupTable:I,formNavigators:P}},xP=Vn("forward-slide"),MB=Vn("backward-slide"),EP=Vn("change-slide-event"),TP="tox-pop--resizing",aW=a=>{const f=bo([]);return Yi.sketch({dom:{tag:"div",classes:["tox-pop"]},fireDismissalEventInstead:{event:"doNotDismissYet"},onShow:g=>{f.set([]),Yi.getContent(g).each(O=>{Jo(O.element,"visibility")}),wi(g.element,TP),Jo(g.element,"width")},inlineBehaviours:On([ss("context-toolbar-events",[$d(mh(),(g,O)=>{O.event.raw.propertyName==="width"&&(wi(g.element,TP),Jo(g.element,"width"))}),qt(EP,(g,O)=>{const x=g.element;Jo(x,"width");const P=Ii(x);Yi.setContent(g,O.event.contents),na(x,TP);const I=Ii(x);Wn(x,"width",P+"px"),Yi.getContent(g).each(Q=>{O.event.focus.bind(U=>(ji(U),Id(x))).orThunk(()=>(vo.focusIn(Q),Ff(At(x))))}),setTimeout(()=>{Wn(g.element,"width",I+"px")},0)}),qt(xP,(g,O)=>{Yi.getContent(g).each(x=>{f.set(f.get().concat([{bar:x,focus:Ff(At(g.element))}]))}),ho(g,EP,{contents:O.event.forwardContents,focus:q.none()})}),qt(MB,(g,O)=>{vr(f.get()).each(x=>{f.set(f.get().slice(0,f.get().length-1)),ho(g,EP,{contents:cu(x.bar),focus:x.focus})})})]),vo.config({mode:"special",onEscape:g=>vr(f.get()).fold(()=>a.onEscape(),O=>(gs(g,MB),q.some(!0)))})]),lazySink:()=>Zo.value(a.sink)})},AP="tox-pop--transition",NB=(a,f,g,O)=>{const x=O.backstage,P=x.shared,I=Kt().deviceType.isTouch,Q=fs(),U=fs(),ee=fs(),se=Ql(aW({sink:g,onEscape:()=>(a.focus(),q.some(!0))})),he=()=>{const Un=ee.get().getOr("node"),Lo=$B(Un)?1:0;return EB(a,P,Un,Lo)},be=()=>!a.removed&&!(I()&&x.isContextMenuOpen()),we=Un=>Qe(Rn(Un,Q.get(),Us),!0),Re=()=>{if(be()){const Un=he(),Lo=Qe(ee.get(),"node")?CP(a,Q.get()):z_(a);return Un.height<=0||!CB(Lo,Un,.01)}else return!0},Je=()=>{Q.clear(),U.clear(),ee.clear(),Yi.hide(se)},Ct=()=>{if(Yi.isOpen(se)){const Un=se.element;Jo(Un,"display"),Re()?Wn(Un,"display","none"):(U.set(0),Yi.reposition(se))}},at=Un=>({dom:{tag:"div",classes:["tox-pop__dialog"]},components:[Un],behaviours:On([vo.config({mode:"acyclic"}),ss("pop-dialog-wrap-events",[xr(Lo=>{a.shortcuts.add("ctrl+F9","focus statusbar",()=>vo.focusIn(Lo))}),Pd(Lo=>{a.shortcuts.remove("ctrl+F9")})])])}),st=ri(()=>hE(f,Un=>{const Lo=jt([Un]);ho(se,xP,{forwardContents:at(Lo)})})),Ot=(Un,Lo)=>aE(a,{buttons:Un,toolbar:Lo.items,allowToolbarGroups:!1},O.backstage,q.some(["form:"])),hn=(Un,Lo)=>SB.buildInitGroups(Un,Lo),jt=Un=>{const{buttons:Lo}=a.ui.registry.getAll(),Po=st(),wr={...Lo,...Po.formNavigators},So=t_(a)===Of.scrolling?Of.scrolling:Of.default,Zs=pt(Fe(Un,$n=>$n.type==="contexttoolbar"?Ot(wr,$n):hn($n,P.providers)));return qx({type:So,uid:Vn("context-toolbar"),initGroups:Zs,onEscape:q.none,cyclicKeying:!0,providers:P.providers})},Wt=(Un,Lo)=>{const Po=Un==="node"?P.anchors.node(Lo):P.anchors.cursor(),wr=DB(a,Un,I(),{lastElement:Q.get,isReposition:()=>Qe(U.get(),0),getMode:()=>Oc.getMode(g)});return lr(Po,wr)},yn=(Un,Lo)=>{if(rs.cancel(),!be())return;const Po=jt(Un),wr=Un[0].position,So=Wt(wr,Lo);ee.set(wr),U.set(1);const Zs=se.element;Jo(Zs,"display"),we(Lo)||(wi(Zs,AP),Oc.reset(g,se)),Yi.showWithinBounds(se,at(Po),{anchor:So,transition:{classes:[AP],mode:"placement"}},()=>q.some(he())),Lo.fold(Q.clear,Q.set),Re()&&Wn(Zs,"display","none")};let An=!1;const rs=ux(()=>{if(!(!a.hasFocus()||a.removed||An))if(Aa(se.element,AP))rs.throttle();else{const Un=st();iW(Un,a).fold(Je,Lo=>{yn(Lo.toolbars,q.some(Lo.elem))})}},17);a.on("init",()=>{a.on("remove",Je),a.on("ScrollContent ScrollWindow ObjectResized ResizeEditor longpress",Ct),a.on("click keyup focus SetContent",rs.throttle),a.on(OB,Je),a.on(Gz,Un=>{const Lo=st();nn(Lo.lookupTable,Un.toolbarKey).each(Po=>{yn([Po],an(Un.target!==a,Un.target)),Yi.getContent(se).each(vo.focusIn)})}),a.on("focusout",Un=>{sO.setEditorTimeout(a,()=>{Id(g.element).isNone()&&Id(se.element).isNone()&&Je()},0)}),a.on("SwitchMode",()=>{a.mode.isReadOnly()&&Je()}),a.on("AfterProgressState",Un=>{Un.state?Je():a.hasFocus()&&rs.throttle()}),a.on("dragstart",()=>{An=!0}),a.on("dragend drop",()=>{An=!1}),a.on("NodeChange",Un=>{Id(se.element).fold(rs.throttle,j)})})},IB=a=>{mt([{name:"alignleft",text:"Align left",cmd:"JustifyLeft",icon:"align-left"},{name:"aligncenter",text:"Align center",cmd:"JustifyCenter",icon:"align-center"},{name:"alignright",text:"Align right",cmd:"JustifyRight",icon:"align-right"},{name:"alignjustify",text:"Justify",cmd:"JustifyFull",icon:"align-justify"}],g=>{a.ui.registry.addToggleButton(g.name,{tooltip:g.text,icon:g.icon,onAction:Vd(a,g.cmd),onSetup:Dk(a,g.name)})}),a.ui.registry.addButton("alignnone",{tooltip:"No alignment",icon:"align-none",onSetup:Lu(a),onAction:Vd(a,"JustifyNone")})},BB=(a,f)=>{const g=()=>{const O=f.getOptions(a),x=f.getCurrent(a).map(f.hash),P=fs();return Fe(O,I=>({type:"togglemenuitem",text:f.display(I),onSetup:Q=>{const U=se=>{se&&(P.on(he=>he.setActive(!1)),P.set(Q)),Q.setActive(se)};U(Qe(x,f.hash(I)));const ee=f.watcher(a,I,U);return()=>{P.clear(),ee()}},onAction:()=>f.setCurrent(a,I)}))};a.ui.registry.addMenuButton(f.name,{tooltip:f.text,icon:f.icon,fetch:O=>O(g()),onSetup:f.onToolbarSetup}),a.ui.registry.addNestedMenuItem(f.name,{type:"nestedmenuitem",text:f.text,getSubmenuItems:g,onSetup:f.onMenuSetup})},lW=a=>({name:"lineheight",text:"Line height",icon:"line-height",getOptions:CD,hash:f=>bz(f,["fixed","relative","empty"]).getOr(f),display:Se,watcher:(f,g,O)=>f.formatter.formatChanged("lineheight",O,!1,{value:g}).unbind,getCurrent:f=>q.from(f.queryCommandValue("LineHeight")),setCurrent:(f,g)=>f.execCommand("LineHeight",!1,g),onToolbarSetup:Lu(a),onMenuSetup:Lu(a)}),LB=a=>q.from(mD(a)).map(g=>({name:"language",text:"Language",icon:"language",getOptions:ne(g),hash:O=>N(O.customCode)?O.code:`${O.code}/${O.customCode}`,display:O=>O.title,watcher:(O,x,P)=>{var I;return O.formatter.formatChanged("lang",P,!1,{value:x.code,customValue:(I=x.customCode)!==null&&I!==void 0?I:null}).unbind},getCurrent:O=>{const x=nt.fromDom(O.selection.getNode());return Cl(x,P=>q.some(P).filter(Ls).bind(I=>me(I,"lang").map(U=>{const ee=me(I,"data-mce-lang").getOrUndefined();return{code:U,customCode:ee,title:""}})))},setCurrent:(O,x)=>O.execCommand("Lang",!1,x),onToolbarSetup:O=>{const x=Rh();return O.setActive(a.formatter.match("lang",{},void 0,!0)),x.set(a.formatter.formatChanged("lang",O.setActive,!0)),jS(x.clear,Lu(a)(O))},onMenuSetup:Lu(a)})),cW=a=>{BB(a,lW(a)),LB(a).each(f=>BB(a,f))},uW=(a,f)=>{lz(a,f),mz(a,f),Az(a,f),dz(a,f),JI(a,f)},dW=a=>Mm(a,"NodeChange",f=>{f.setEnabled(a.queryCommandState("outdent")&&a.selection.isEditable())}),fW=a=>{a.ui.registry.addButton("outdent",{tooltip:"Decrease indent",icon:"outdent",onSetup:dW(a),onAction:Vd(a,"outdent")}),a.ui.registry.addButton("indent",{tooltip:"Increase indent",icon:"indent",onSetup:Lu(a),onAction:Vd(a,"indent")})},hW=a=>{fW(a)},mE=(a,f)=>g=>{g.setActive(f.get());const O=x=>{f.set(x.state),g.setActive(x.state)};return a.on("PastePlainTextToggle",O),jS(()=>a.off("PastePlainTextToggle",O),Lu(a)(g))},mW=a=>{const f=bo(lk(a)),g=()=>a.execCommand("mceTogglePlainTextPaste");a.ui.registry.addToggleButton("pastetext",{active:!1,icon:"paste-text",tooltip:"Paste as text",onAction:g,onSetup:mE(a,f)}),a.ui.registry.addToggleMenuItem("pastetext",{text:"Paste as text",icon:"paste-text",onAction:g,onSetup:mE(a,f)})},$P=(a,f)=>()=>{a.execCommand("mceToggleFormat",!1,f)},PP=a=>{J1.each([{name:"bold",text:"Bold",icon:"bold"},{name:"italic",text:"Italic",icon:"italic"},{name:"underline",text:"Underline",icon:"underline"},{name:"strikethrough",text:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",icon:"superscript"}],(f,g)=>{a.ui.registry.addToggleButton(f.name,{tooltip:f.text,icon:f.icon,onSetup:Dk(a,f.name),onAction:$P(a,f.name)})});for(let f=1;f<=6;f++){const g="h"+f;a.ui.registry.addToggleButton(g,{text:g.toUpperCase(),tooltip:"Heading "+f,onSetup:Dk(a,g),onAction:$P(a,g)})}},FB=a=>{J1.each([{name:"copy",text:"Copy",action:"Copy",icon:"copy"},{name:"help",text:"Help",action:"mceHelp",icon:"help"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all"},{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"print",text:"Print",action:"mcePrint",icon:"print"}],f=>{a.ui.registry.addButton(f.name,{tooltip:f.text,icon:f.icon,onAction:Vd(a,f.action)})}),J1.each([{name:"cut",text:"Cut",action:"Cut",icon:"cut"},{name:"paste",text:"Paste",action:"Paste",icon:"paste"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"remove",text:"Remove",action:"Delete",icon:"remove"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],f=>{a.ui.registry.addButton(f.name,{tooltip:f.text,icon:f.icon,onSetup:Lu(a),onAction:Vd(a,f.action)})})},HB=a=>{J1.each([{name:"blockquote",text:"Blockquote",action:"mceBlockQuote",icon:"quote"}],f=>{a.ui.registry.addToggleButton(f.name,{tooltip:f.text,icon:f.icon,onAction:Vd(a,f.action),onSetup:Dk(a,f.name)})})},pW=a=>{PP(a),FB(a),HB(a)},gW=a=>{J1.each([{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"copy",text:"Copy",action:"Copy",icon:"copy",shortcut:"Meta+C"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all",shortcut:"Meta+A"},{name:"print",text:"Print...",action:"mcePrint",icon:"print",shortcut:"Meta+P"}],f=>{a.ui.registry.addMenuItem(f.name,{text:f.text,icon:f.icon,shortcut:f.shortcut,onAction:Vd(a,f.action)})}),J1.each([{name:"bold",text:"Bold",action:"Bold",icon:"bold",shortcut:"Meta+B"},{name:"italic",text:"Italic",action:"Italic",icon:"italic",shortcut:"Meta+I"},{name:"underline",text:"Underline",action:"Underline",icon:"underline",shortcut:"Meta+U"},{name:"strikethrough",text:"Strikethrough",action:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",action:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",action:"Superscript",icon:"superscript"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"cut",text:"Cut",action:"Cut",icon:"cut",shortcut:"Meta+X"},{name:"paste",text:"Paste",action:"Paste",icon:"paste",shortcut:"Meta+V"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],f=>{a.ui.registry.addMenuItem(f.name,{text:f.text,icon:f.icon,shortcut:f.shortcut,onSetup:Lu(a),onAction:Vd(a,f.action)})}),a.ui.registry.addMenuItem("codeformat",{text:"Code",icon:"sourcecode",onSetup:Lu(a),onAction:$P(a,"code")})},bW=a=>{pW(a),gW(a)},pE=(a,f)=>Mm(a,"Undo Redo AddUndo TypingUndo ClearUndos SwitchMode",g=>{g.setEnabled(!a.mode.isReadOnly()&&a.undoManager[f]())}),vW=a=>{a.ui.registry.addMenuItem("undo",{text:"Undo",icon:"undo",shortcut:"Meta+Z",onSetup:pE(a,"hasUndo"),onAction:Vd(a,"undo")}),a.ui.registry.addMenuItem("redo",{text:"Redo",icon:"redo",shortcut:"Meta+Y",onSetup:pE(a,"hasRedo"),onAction:Vd(a,"redo")})},DP=a=>{a.ui.registry.addButton("undo",{tooltip:"Undo",icon:"undo",enabled:!1,onSetup:pE(a,"hasUndo"),onAction:Vd(a,"undo")}),a.ui.registry.addButton("redo",{tooltip:"Redo",icon:"redo",enabled:!1,onSetup:pE(a,"hasRedo"),onAction:Vd(a,"redo")})},OW=a=>{vW(a),DP(a)},QB=a=>Mm(a,"VisualAid",f=>{f.setActive(a.hasVisual)}),yW=a=>{a.ui.registry.addToggleMenuItem("visualaid",{text:"Visual aids",onSetup:QB(a),onAction:Vd(a,"mceToggleVisualAid")})},_W=a=>{a.ui.registry.addButton("visualaid",{tooltip:"Visual aids",text:"Visual aids",onAction:Vd(a,"mceToggleVisualAid")})},RP=a=>{_W(a),yW(a)},wW=(a,f)=>{IB(a),bW(a),uW(a,f),OW(a),GR(a),RP(a),hW(a),cW(a),mW(a)},VB=a=>p(a)?a.split(/[ ,]/):a,zB=a=>f=>f.options.get(a),SW=a=>{const f=a.options.register;f("contextmenu_avoid_overlap",{processor:"string",default:""}),f("contextmenu_never_use_native",{processor:"boolean",default:!1}),f("contextmenu",{processor:g=>g===!1?{value:[],valid:!0}:p(g)||te(g,p)?{value:VB(g),valid:!0}:{valid:!1,message:"Must be false or a string."},default:"link linkchecker image editimage table spellchecker configurepermanentpen"})},gE=zB("contextmenu_never_use_native"),CW=zB("contextmenu_avoid_overlap"),kW=a=>WB(a).length===0,WB=a=>{const f=a.ui.registry.getAll().contextMenus,g=a.options.get("contextmenu");return a.options.isSet("contextmenu")?g:jn(g,O=>ns(f,O))},F2=(a,f)=>({type:"makeshift",x:a,y:f}),xW=(a,f,g)=>F2(a.x+f,a.y+g),MP=a=>a.type==="longpress"||a.type.indexOf("touch")===0,EW=a=>{if(MP(a)){const f=a.touches[0];return F2(f.pageX,f.pageY)}else return F2(a.pageX,a.pageY)},TW=a=>{if(MP(a)){const f=a.touches[0];return F2(f.clientX,f.clientY)}else return F2(a.clientX,a.clientY)},AW=(a,f)=>{const g=aO.DOM.getPos(a);return xW(f,g.x,g.y)},$W=(a,f)=>f.type==="contextmenu"||f.type==="longpress"?a.inline?EW(f):AW(a.getContentAreaContainer(),TW(f)):ZB(a),ZB=a=>({type:"selection",root:nt.fromDom(a.selection.getNode())}),PW=a=>({type:"node",node:q.some(nt.fromDom(a.selection.getNode())),root:nt.fromDom(a.getBody())}),UB=(a,f,g)=>{switch(g){case"node":return PW(a);case"point":return $W(a,f);case"selection":return ZB(a)}},DW=(a,f,g,O,x,P)=>{const I=g(),Q=UB(a,f,P);T_(I,Pp.CLOSE_ON_EXECUTE,O,{isHorizontalMenu:!1,search:q.none()}).map(U=>{f.preventDefault(),Yi.showMenuAt(x,{anchor:Q},{menu:{markers:q1("normal")},data:U})})},qB={onLtr:()=>[zr,Qa,kl,Va,os,oc,Fm,P_,C2,S2,OO,w2],onRtl:()=>[zr,kl,Qa,os,Va,oc,Fm,P_,OO,w2,C2,S2]},RW=12,XB={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"]},MW=(a,f)=>{const g=a.selection;if(g.isCollapsed()||f.touches.length<1)return!1;{const O=f.touches[0],x=g.getRng();return Dv(a.getWin(),bl.domRange(x)).exists(I=>I.left<=O.clientX&&I.right>=O.clientX&&I.top<=O.clientY&&I.bottom>=O.clientY)}},NW=a=>{const f=a.selection.getRng(),g=()=>{sO.setEditorTimeout(a,()=>{a.selection.setRng(f)},10),P()};a.once("touchend",g);const O=I=>{I.preventDefault(),I.stopImmediatePropagation()};a.on("mousedown",O,!0);const x=()=>P();a.once("longpresscancel",x);const P=()=>{a.off("touchend",g),a.off("longpresscancel",x),a.off("mousedown",O)}},IW=(a,f,g)=>{const O=UB(a,f,g);return{bubble:Qf(0,g==="point"?RW:0,XB),layouts:qB,overrides:{maxWidthFunction:nP(),maxHeightFunction:pf()},...O}},SO=(a,f,g,O,x,P,I)=>{const Q=IW(a,f,P);T_(g,Pp.CLOSE_ON_EXECUTE,O,{isHorizontalMenu:!0,search:q.none()}).map(U=>{f.preventDefault();const ee=I?Bu.HighlightMenuAndItem:Bu.HighlightNone;Yi.showMenuWithinBounds(x,{anchor:Q},{menu:{markers:q1("normal"),highlightOnOpen:ee},data:U,type:"horizontal"},()=>q.some(EB(a,O.shared,P==="node"?"node":"selection"))),a.dispatch(OB)})},jB=(a,f,g,O,x,P)=>{const I=Kt(),Q=I.os.isiOS(),U=I.os.isMacOS(),ee=I.os.isAndroid(),se=I.deviceType.isTouch(),he=()=>!(ee||Q||U&&se),be=()=>{const we=g();SO(a,f,we,O,x,P,he())};if((U||Q)&&P!=="node"){const we=()=>{NW(a),be()};MW(a,f)?we():(a.once("selectionchange",we),a.once("touchend",()=>a.off("selectionchange",we)))}else be()},YB=a=>p(a)?a==="|":a.type==="separator",NP={type:"separator"},GB=a=>{const f=g=>({text:g.text,icon:g.icon,enabled:g.enabled,shortcut:g.shortcut});if(p(a))return a;switch(a.type){case"separator":return NP;case"submenu":return{type:"nestedmenuitem",...f(a),getSubmenuItems:()=>{const O=a.getSubmenuItems();return p(O)?O:Fe(O,GB)}};default:const g=a;return{type:"menuitem",...f(g),onAction:ae(g.onAction)}}},KB=(a,f)=>{if(f.length===0)return a;const O=vr(a).filter(x=>!YB(x)).fold(()=>[],x=>[NP]);return a.concat(O).concat(f).concat([NP])},JB=(a,f,g)=>{const O=po(f,(x,P)=>nn(a,P.toLowerCase()).map(I=>{const Q=I.update(g);if(p(Q)&&Ge(mi(Q)))return KB(x,Q.split(" "));if(k(Q)&&Q.length>0){const U=Fe(Q,GB);return KB(x,U)}else return x}).getOrThunk(()=>x.concat([P])),[]);return O.length>0&&YB(O[O.length-1])&&O.pop(),O},BW=(a,f)=>f.ctrlKey&&!gE(a),LW=a=>a.type==="longpress"||ns(a,"touches"),eL=(a,f)=>!LW(f)&&(f.button!==2||f.target===a.getBody()&&f.pointerType===""),tL=(a,f)=>eL(a,f)?a.selection.getStart(!0):f.target,FW=(a,f)=>{const g=CW(a),O=eL(a,f)?"selection":"point";if(Ge(g)){const x=tL(a,f);return JS(nt.fromDom(x),g)?"node":O}else return O},HW=(a,f,g)=>{const x=Kt().deviceType.isTouch,P=Ql(Yi.sketch({dom:{tag:"div"},lazySink:f,onEscape:()=>a.focus(),onShow:()=>g.setContextMenuState(!0),onHide:()=>g.setContextMenuState(!1),fireDismissalEventInstead:{},inlineBehaviours:On([ss("dismissContextMenu",[qt(Oh(),(U,ee)=>{Is.close(U),a.focus()})])])})),I=()=>Yi.hide(P),Q=U=>{if(gE(a)&&U.preventDefault(),BW(a,U)||kW(a))return;const ee=FW(a,U),se=()=>{const be=tL(a,U),we=a.ui.registry.getAll(),Re=WB(a);return JB(we.contextMenus,Re,be)};(x()?jB:DW)(a,U,se,g,P,ee)};a.on("init",()=>{const U="ResizeEditor ScrollContent ScrollWindow longpresscancel"+(x()?"":" ResizeWindow");a.on(U,I),a.on("longpress contextmenu",Q)})},IP=K.generate([{offset:["x","y"]},{absolute:["x","y"]},{fixed:["x","y"]}]),bE=a=>f=>f.translate(-a.left,-a.top),vE=a=>f=>f.translate(a.left,a.top),tb=a=>(f,g)=>po(a,(O,x)=>x(O),Ws(f,g)),H2=(a,f,g)=>a.fold(tb([vE(g),bE(f)]),tb([bE(f)]),tb([])),CO=(a,f,g)=>a.fold(tb([vE(g)]),tb([]),tb([vE(f)])),nL=(a,f,g)=>a.fold(tb([]),tb([bE(g)]),tb([vE(f),bE(g)])),Q2=(a,f,g,O,x,P)=>{const I=CO(a,x,P),Q=CO(f,x,P);return Math.abs(I.left-Q.left)<=g&&Math.abs(I.top-Q.top)<=O},QW=(a,f,g,O,x,P)=>{const I=CO(a,x,P),Q=CO(f,x,P),U=Math.abs(I.left-Q.left),ee=Math.abs(I.top-Q.top);return Ws(U,ee)},oL=(a,f,g)=>{const O=a.fold((x,P)=>({position:q.some("absolute"),left:q.some(x+"px"),top:q.some(P+"px")}),(x,P)=>({position:q.some("absolute"),left:q.some(x-g.left+"px"),top:q.some(P-g.top+"px")}),(x,P)=>({position:q.some("fixed"),left:q.some(x+"px"),top:q.some(P+"px")}));return{right:q.none(),bottom:q.none(),...O}},BP=(a,f,g)=>a.fold((O,x)=>OE(O+f,x+g),(O,x)=>P0(O+f,x+g),(O,x)=>kO(O+f,x+g)),LP=(a,f,g,O)=>{const x=(P,I)=>(Q,U)=>{const ee=P(f,g,O);return I(Q.getOr(ee.left),U.getOr(ee.top))};return a.fold(x(nL,OE),x(CO,P0),x(H2,kO))},OE=IP.offset,P0=IP.absolute,kO=IP.fixed,sL=(a,f)=>{const g=ui(a,f);return N(g)?NaN:parseInt(g,10)},VW=(a,f)=>{const g=a.element,O=sL(g,f.leftAttr),x=sL(g,f.topAttr);return isNaN(O)||isNaN(x)?q.none():q.some(Ws(O,x))},zW=(a,f,g)=>{const O=a.element;Mn(O,f.leftAttr,g.left+"px"),Mn(O,f.topAttr,g.top+"px")},WW=(a,f)=>{const g=a.element;We(g,f.leftAttr),We(g,f.topAttr)},ZW=(a,f,g,O)=>VW(a,f).fold(()=>g,x=>kO(x.left+O.left,x.top+O.top)),UW=(a,f,g,O,x,P)=>{const I=ZW(a,f,g,O),Q=f.mustSnap?XW(a,f,I,x,P):jW(a,f,I,x,P),U=H2(I,x,P);return zW(a,f,U),Q.fold(()=>({coord:kO(U.left,U.top),extra:q.none()}),ee=>({coord:ee.output,extra:ee.extra}))},qW=(a,f)=>{WW(a,f)},rL=(a,f,g,O)=>Vs(a,x=>{const P=x.sensor;return Q2(f,P,x.range.left,x.range.top,g,O)?q.some({output:LP(x.output,f,g,O),extra:x.extra}):q.none()}),XW=(a,f,g,O,x)=>{const P=f.getSnapPoints(a);return rL(P,g,O,x).orThunk(()=>po(P,(U,ee)=>{const se=ee.sensor,he=QW(g,se,ee.range.left,ee.range.top,O,x);return U.deltas.fold(()=>({deltas:q.some(he),snap:q.some(ee)}),be=>{const we=(he.left+he.top)/2,Re=(be.left+be.top)/2;return we<=Re?{deltas:q.some(he),snap:q.some(ee)}:U})},{deltas:q.none(),snap:q.none()}).snap.map(U=>({output:LP(U.output,g,O,x),extra:U.extra})))},jW=(a,f,g,O,x)=>{const P=f.getSnapPoints(a);return rL(P,g,O,x)},YW=(a,f,g)=>({coord:LP(a.output,a.output,f,g),extra:a.extra});var GW=Object.freeze({__proto__:null,snapTo:(a,f,g,O)=>{const x=f.getTarget(a.element);if(f.repositionTarget){const P=zi(a.element),I=el(P),Q=BN(x),U=YW(O,I,Q),ee=oL(U.coord,I,Q);cn(x,ee)}}});const W_="data-initial-z-index",KW=a=>{ba(a.element).filter(Ls).each(f=>{me(f,W_).fold(()=>Jo(f,"z-index"),g=>Wn(f,"z-index",g)),We(f,W_)})},JW=a=>{ba(a.element).filter(Ls).each(f=>{Gr(f,"z-index").each(g=>{Mn(f,W_,g)}),Wn(f,"z-index",Or(a.element,"z-index"))})},iL=(a,f)=>{a.getSystem().addToGui(f),JW(f)},eZ=a=>{KW(a),a.getSystem().removeFromGui(a)},aL=(a,f,g)=>a.getSystem().build(Dp.sketch({dom:{styles:{left:"0px",top:"0px",width:"100%",height:"100%",position:"fixed","z-index":"1000000000000000"},classes:[f]},events:g}));var tZ=Ll("snaps",[Gt("getSnapPoints"),Ps("onSensor"),Gt("leftAttr"),Gt("topAttr"),_t("lazyViewport",Ea),_t("mustSnap",!1)]);const yE=[_t("useFixed",Tt),Gt("blockerClass"),_t("getTarget",Se),_t("onDrag",j),_t("repositionTarget",!0),_t("onDrop",j),da("getBounds",Ea),tZ],nZ=a=>Xn(Gr(a,"left"),Gr(a,"top"),Gr(a,"position"),(f,g,O)=>(O==="fixed"?kO:OE)(parseInt(f,10),parseInt(g,10))).getOrThunk(()=>{const f=Nl(a);return P0(f.left,f.top)}),oZ=(a,f,g,O,x)=>{const P=x.bounds,I=CO(f,g,O),Q=Au(I.left,P.x,P.x+P.width-x.width),U=Au(I.top,P.y,P.y+P.height-x.height),ee=P0(Q,U);return f.fold(()=>{const se=nL(ee,g,O);return OE(se.left,se.top)},ne(ee),()=>{const se=H2(ee,g,O);return kO(se.left,se.top)})},sZ=(a,f,g,O,x,P,I)=>{const Q=f.fold(()=>{const U=BP(g,P.left,P.top),ee=H2(U,O,x);return kO(ee.left,ee.top)},U=>{const ee=UW(a,U,g,P,O,x);return ee.extra.each(se=>{U.onSensor(a,se)}),ee.coord});return oZ(a,Q,O,x,I)},rZ=(a,f,g,O)=>{const x=f.getTarget(a.element);if(f.repositionTarget){const P=zi(a.element),I=el(P),Q=BN(x),U=nZ(x),ee=sZ(a,f.snaps,U,I,Q,O,g),se=oL(ee,I,Q);cn(x,se)}f.onDrag(a,x,O)},lL=(a,f)=>({bounds:a.getBounds(),height:hd(f.element),width:Wi(f.element)}),V2=(a,f,g,O,x)=>{const P=g.update(O,x),I=g.getStartData().getOrThunk(()=>lL(f,a));P.each(Q=>{rZ(a,f,I,Q)})},FP=(a,f,g,O)=>{f.each(eZ),g.snaps.each(P=>{qW(a,P)});const x=g.getTarget(a.element);O.reset(),g.onDrop(a,x)},HP=a=>(f,g)=>{const O=x=>{g.setStartData(lL(f,x))};return kr([qt($f(),x=>{g.getStartData().each(()=>O(x))}),...a(f,g,O)])},iZ=a=>kr([qt(_s(),a.forceDrop),qt(Gp(),a.drop),qt(fa(),(f,g)=>{a.move(g.event)}),qt(ol(),a.delayDrop)]);var aZ=Object.freeze({__proto__:null,getData:a=>q.from(Ws(a.x,a.y)),getDelta:(a,f)=>Ws(f.left-a.left,f.top-a.top)});const cL=(a,f,g)=>[qt(_s(),(O,x)=>{if(x.event.raw.button!==0)return;x.stop();const I=()=>FP(O,q.some(ee),a,f),Q=fM(I,200),U={drop:I,delayDrop:Q.schedule,forceDrop:I,move:he=>{Q.cancel(),V2(O,a,f,aZ,he)}},ee=aL(O,a.blockerClass,iZ(U));(()=>{g(O),iL(O,ee)})()})],lZ=[...yE,Er("dragger",{handlers:HP(cL)})],cZ=a=>kr([qt(Lc(),a.forceDrop),qt(fh(),a.drop),qt(ds(),a.drop),qt(lm(),(f,g)=>{a.move(g.event)})]),uZ=a=>{const f=a[0];return q.some(Ws(f.clientX,f.clientY))};var uL=Object.freeze({__proto__:null,getData:a=>{const g=a.raw.touches;return g.length===1?uZ(g):q.none()},getDelta:(a,f)=>Ws(f.left-a.left,f.top-a.top)});const dL=(a,f,g)=>{const O=fs(),x=P=>{FP(P,O.get(),a,f),O.clear()};return[qt(Lc(),(P,I)=>{I.stop();const Q=()=>x(P),U={drop:Q,delayDrop:j,forceDrop:Q,move:he=>{V2(P,a,f,uL,he)}},ee=aL(P,a.blockerClass,cZ(U));O.set(ee),(()=>{g(P),iL(P,ee)})()}),qt(lm(),(P,I)=>{I.stop(),V2(P,a,f,uL,I.event)}),qt(fh(),(P,I)=>{I.stop(),x(P)}),qt(ds(),x)]},dZ=[...yE,Er("dragger",{handlers:HP(dL)})],fZ=(a,f,g)=>[...cL(a,f,g),...dL(a,f,g)],hZ=[...yE,Er("dragger",{handlers:HP(fZ)})];var pZ=Object.freeze({__proto__:null,mouse:lZ,touch:dZ,mouseOrTouch:hZ}),gZ=Object.freeze({__proto__:null,init:()=>{let a=q.none(),f=q.none();const g=()=>{a=q.none(),f=q.none()},O=(U,ee)=>{const se=a.map(he=>U.getDelta(he,ee));return a=q.some(ee),se},x=(U,ee)=>U.getData(ee).bind(se=>O(U,se)),P=U=>{f=q.some(U)},I=()=>f,Q=ne({});return Hl({readState:Q,reset:g,update:x,getStartData:I,setStartData:P})}});const xO=vm({branchKey:"mode",branches:pZ,name:"dragging",active:{events:(a,f)=>a.dragger.handlers(a,f)},extra:{snap:a=>({sensor:a.sensor,range:a.range,output:a.output,extra:q.from(a.extra)})},state:gZ,apis:GW}),QP=40,_E=QP/2,fL=(a,f,g,O,x,P)=>a.fold(()=>xO.snap({sensor:P0(g-_E,O-_E),range:Ws(x,P),output:P0(q.some(g),q.some(O)),extra:{td:f}}),I=>{const Q=g-_E,U=O-_E,ee=QP,se=QP,he=I.element.dom.getBoundingClientRect();return xO.snap({sensor:P0(Q,U),range:Ws(ee,se),output:P0(q.some(g-he.width/2),q.some(O-he.height/2)),extra:{td:f}})}),VP=(a,f,g)=>{const O=(x,P)=>x.exists(I=>Us(I,P));return{getSnapPoints:a,leftAttr:"data-drag-left",topAttr:"data-drag-top",onSensor:(x,P)=>{const I=P.td;O(f.get(),I)||(f.set(I),g(I))},mustSnap:!0}},zP=a=>Ar(Wl.sketch({dom:{tag:"div",classes:["tox-selector"]},buttonBehaviours:On([xO.config({mode:"mouseOrTouch",blockerClass:"blocker",snaps:a}),s2.config({})]),eventOrder:{mousedown:["dragging","alloy.base.behaviour"],touchstart:["dragging","alloy.base.behaviour"]}})),EO=(a,f)=>{const g=bo([]),O=bo([]),x=bo(!1),P=fs(),I=fs(),Q=yn=>{const An=Ma(yn);return fL(we.getOpt(f),yn,An.x,An.y,An.width,An.height)},U=()=>Fe(g.get(),yn=>Q(yn)),ee=yn=>{const An=Ma(yn);return fL(Re.getOpt(f),yn,An.right,An.bottom,An.width,An.height)},se=()=>Fe(O.get(),yn=>ee(yn)),he=VP(U,P,yn=>{I.get().each(An=>{a.dispatch("TableSelectorChange",{start:yn,finish:An})})}),be=VP(se,I,yn=>{P.get().each(An=>{a.dispatch("TableSelectorChange",{start:An,finish:yn})})}),we=zP(he),Re=zP(be),Je=Ql(we.asSpec()),Ct=Ql(Re.asSpec()),at=(yn,An,rs,Un)=>{const Lo=An.dom.getBoundingClientRect();Jo(yn.element,"display");const Po=ql(nt.fromDom(a.getBody())).dom.innerHeight,wr=rs(Lo),So=Un(Lo,Po);(wr||So)&&Wn(yn.element,"display","none")},st=(yn,An,rs,Un)=>{const Lo=rs(An);xO.snapTo(yn,Lo),at(yn,An,So=>So[Un]<0,(So,Zs)=>So[Un]>Zs)},Ot=yn=>st(Je,yn,Q,"top"),hn=()=>P.get().each(Ot),jt=yn=>st(Ct,yn,ee,"bottom"),Wt=()=>I.get().each(jt);Kt().deviceType.isTouch()&&(a.on("TableSelectionChange",yn=>{x.get()||(Ig(f,Je),Ig(f,Ct),x.set(!0)),P.set(yn.start),I.set(yn.finish),yn.otherCells.each(An=>{g.set(An.upOrLeftCells),O.set(An.downOrRightCells),Ot(yn.start),jt(yn.finish)})}),a.on("ResizeEditor ResizeWindow ScrollContent",()=>{hn(),Wt()}),a.on("TableSelectionClear",()=>{x.get()&&(km(Je),km(Ct),x.set(!1)),P.clear(),I.clear()}))};var bZ=` - - -`;const WP=a=>a.nodeName==="BR"||!!a.getAttribute("data-mce-bogus")||a.getAttribute("data-mce-type")==="bookmark",wE=(a,f,g)=>{var O;const x=(O=f.delimiter)!==null&&O!==void 0?O:"›",P=(ee,se,he)=>Wl.sketch({dom:{tag:"div",classes:["tox-statusbar__path-item"],attributes:{"data-index":he,"aria-level":he+1}},components:[Xi(ee)],action:be=>{a.focus(),a.selection.select(se),a.nodeChanged()},buttonBehaviours:On([al.button(g.isDisabled),Ol()])}),I=()=>({dom:{tag:"div",classes:["tox-statusbar__path-divider"],attributes:{"aria-hidden":!0}},components:[Xi(` ${x} `)]}),Q=ee=>po(ee,(se,he,be)=>{const we=P(he.name,he.element,be);return be===0?se.concat([we]):se.concat([I(),we])},[]),U=ee=>{const se=[];let he=ee.length;for(;he-- >0;){const be=ee[he];if(be.nodeType===1&&!WP(be)){const we=IR(a,be);if(we.isDefaultPrevented()||se.push({name:we.name,element:be}),we.isPropagationStopped())break}}return se};return{dom:{tag:"div",classes:["tox-statusbar__path"],attributes:{role:"navigation"}},behaviours:On([vo.config({mode:"flow",selector:"div[role=button]"}),ko.config({disabled:g.isDisabled}),Ol(),$i.config({}),Yo.config({}),ss("elementPathEvents",[xr((ee,se)=>{a.shortcuts.add("alt+F11","focus statusbar elementpath",()=>vo.focusIn(ee)),a.on("NodeChange",he=>{const be=U(he.parents),we=be.length>0?Q(be):[];Yo.set(ee,we)})})])]),components:[]}};var D0;(function(a){a[a.None=0]="None",a[a.Both=1]="Both",a[a.Vertical=2]="Vertical"})(D0||(D0={}));const vZ=(a,f,g,O,x)=>{const P={height:I2(O+f.top,e_(a),GT(a))};return g===D0.Both&&(P.width=I2(x+f.left,YT(a),sk(a))),P},hL=(a,f,g)=>{const O=nt.fromDom(a.getContainer()),x=vZ(a,f,g,Nr(O),Ii(O));vs(x,(P,I)=>{J(P)&&Wn(O,I,wP(P))}),MR(a)},OZ=a=>{const f=_D(a);return f===!1?D0.None:f==="both"?D0.Both:D0.Vertical},SE=(a,f,g,O)=>{const P=Ws(g*20,O*20);return hL(a,P,f),q.some(!0)},TO=(a,f)=>{const g=OZ(a);if(g===D0.None)return q.none();const O=g===D0.Both?"Press the arrow keys to resize the editor.":"Press the Up and Down arrow keys to resize the editor.";return q.some(Pm("resize-handle",{tag:"div",classes:["tox-statusbar__resize-handle"],attributes:{title:f.translate("Resize"),"aria-label":f.translate(O)},behaviours:[xO.config({mode:"mouse",repositionTarget:!1,onDrag:(x,P,I)=>hL(a,I,g),blockerClass:"tox-blocker"}),vo.config({mode:"special",onLeft:()=>SE(a,g,-1,0),onRight:()=>SE(a,g,1,0),onUp:()=>SE(a,g,0,-1),onDown:()=>SE(a,g,0,1)}),$i.config({}),Ao.config({})]},f.icons))},mL=(a,f)=>{const g=(O,x,P)=>Yo.set(O,[Xi(f.translate(["{0} "+P,x[P]]))]);return Wl.sketch({dom:{tag:"button",classes:["tox-statusbar__wordcount"]},components:[],buttonBehaviours:On([al.button(f.isDisabled),Ol(),$i.config({}),Yo.config({}),Ln.config({store:{mode:"memory",initialValue:{mode:"words",count:{words:0,characters:0}}}}),ss("wordcount-events",[vc(O=>{const x=Ln.getValue(O),P=x.mode==="words"?"characters":"words";Ln.setValue(O,{mode:P,count:x.count}),g(O,x.count,P)}),xr(O=>{a.on("wordCountUpdate",x=>{const{mode:P}=Ln.getValue(O);Ln.setValue(O,{mode:P,count:x.wordCount}),g(O,x.wordCount,P)})})])]),eventOrder:{[au()]:["disabling","alloy.base.behaviour","wordcount-events"]}})},yZ=(a,f)=>{const g=()=>({dom:{tag:"span",classes:["tox-statusbar__branding"]},components:[{dom:{tag:"a",attributes:{href:"https://www.tiny.cloud/powered-by-tiny?utm_campaign=poweredby&utm_source=tiny&utm_medium=referral&utm_content=v6",rel:"noopener",target:"_blank","aria-label":qf.translate(["Powered by {0}","Tiny"])},innerHtml:bZ.trim()},behaviours:On([Ao.config({})])}]}),O=()=>{const Q=Tk("Alt+0");return{dom:{tag:"div",classes:["tox-statusbar__help-text"]},components:[Xi(qf.translate(["Press {0} for help",Q]))]}},x=()=>{const Q=[];return a.hasPlugin("wordcount")&&Q.push(mL(a,f)),sA(a)&&Q.push(g()),{dom:{tag:"div",classes:["tox-statusbar__right-container"]},components:Q}},P=()=>{const Q=[],U=uk(a),ee=n_(a),se=sA(a)||a.hasPlugin("wordcount"),he=()=>{const be="tox-statusbar__text-container--flex-start",we="tox-statusbar__text-container--flex-end",Re="tox-statusbar__text-container--space-around";if(U){const Je="tox-statusbar__text-container-3-cols";return!se&&!ee?[Je,Re]:se&&!ee?[Je,we]:[Je,be]}return[se&&!ee?we:be]};return ee&&Q.push(wE(a,{},f)),U&&Q.push(O()),se&&Q.push(x()),Q.length>0?[{dom:{tag:"div",classes:["tox-statusbar__text-container",...he()]},components:Q}]:[]};return{dom:{tag:"div",classes:["tox-statusbar"]},components:(()=>{const Q=P(),U=TO(a,f);return Q.concat(U.toArray())})()}},pL=(a,f)=>f.get().getOrDie(`UI for ${a} has not been rendered`),_Z=(a,f)=>{const g=a.inline,O=g?vB:mB,x=BS(a)?GN:DQ,P=Yz(),I=fs(),Q=fs(),U=fs(),be=Kt().deviceType.isTouch()?["tox-platform-touch"]:[],we=aA(a),Re=t_(a),Je=Ar({dom:{tag:"div",classes:["tox-anchorbar"]}}),Ct=Ar({dom:{tag:"div",classes:["tox-bottom-anchorbar"]}}),at=()=>P.mainUi.get().map(Co=>Co.outerContainer).bind(fi.getHeader),st=()=>Zo.fromOption(P.dialogUi.get().map(Co=>Co.sink),"UI has not been rendered"),Ot=()=>Zo.fromOption(P.popupUi.get().map(Co=>Co.sink),"(popup) UI has not been rendered"),hn=P.lazyGetInOuterOrDie("anchor bar",Je.getOpt),jt=P.lazyGetInOuterOrDie("bottom anchor bar",Ct.getOpt),Wt=P.lazyGetInOuterOrDie("toolbar",fi.getToolbar),yn=P.lazyGetInOuterOrDie("throbber",fi.getThrobber),An=CQ({popup:Ot,dialog:st},a,hn,jt),rs=()=>{const Co={attributes:{[$g]:we?td.BottomToTop:td.TopToBottom}},Go=fi.parts.menubar({dom:{tag:"div",classes:["tox-menubar"]},backstage:An.popup,onEscape:()=>{a.focus()}}),oi=fi.parts.toolbar({dom:{tag:"div",classes:["tox-toolbar"]},getSink:An.popup.shared.getSink,providers:An.popup.shared.providers,onEscape:()=>{a.focus()},onToolbarToggled:G2=>{aF(a,G2)},type:Re,lazyToolbar:Wt,lazyHeader:()=>at().getOrDie("Could not find header element"),...Co}),Ys=fi.parts["multiple-toolbar"]({dom:{tag:"div",classes:["tox-toolbar-overlord"]},providers:An.popup.shared.providers,onEscape:()=>{a.focus()},type:Re}),lc=IS(a),jd=hk(a),Kh=o_(a),Qm=wD(a),L0=Un(),DO=lc||jd||Kh,Hp=()=>lc?[Ys]:jd?[oi]:[],ob=Qm?[L0,Go]:[Go];return fi.parts.header({dom:{tag:"div",classes:["tox-editor-header"].concat(DO?[]:["tox-editor-header--empty"]),...Co},components:pt([Kh?ob:[],Hp(),s_(a)?[]:[Je.asSpec()]]),sticky:BS(a),editor:a,sharedBackstage:An.popup.shared})},Un=()=>fi.parts.promotion({dom:{tag:"div",classes:["tox-promotion"]}}),Lo=()=>{const Co=fi.parts.socket({dom:{tag:"div",classes:["tox-edit-area"]}}),Go=fi.parts.sidebar({dom:{tag:"div",classes:["tox-sidebar"]}});return{dom:{tag:"div",classes:["tox-sidebar-wrap"]},components:[Co,Go]}},Po=()=>{const Co=lA(a),Go=Us(si(),Co)&&Or(Co,"display")==="grid",oi={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-tinymce-aux"].concat(be),attributes:{...qf.isRtl()?{dir:"rtl"}:{}}},behaviours:On([Oc.config({useFixed:()=>x.isDocked(at)})])},Ys={dom:{styles:{width:document.body.clientWidth+"px"}},events:kr([qt(cf(),Kh=>{Wn(Kh.element,"width",document.body.clientWidth+"px")})])},lc=Ql(lr(oi,Go?Ys:{})),jd=Wk(lc);return Q.set(jd),{sink:lc,mothership:jd}},wr=()=>{const Co={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-silver-popup-sink","tox-tinymce-aux"].concat(be),attributes:{...qf.isRtl()?{dir:"rtl"}:{}}},behaviours:On([Oc.config({useFixed:()=>x.isDocked(at),getBounds:()=>f.getPopupSinkBounds()})])},Go=Ql(Co),oi=Wk(Go);return U.set(oi),{sink:Go,mothership:oi}},So=()=>{const Co=rs(),Go=Lo(),oi=fi.parts.throbber({dom:{tag:"div",classes:["tox-throbber"]},backstage:An.popup}),Ys=fi.parts.viewWrapper({backstage:An.popup}),lc=yD(a)&&!g?q.some(yZ(a,An.popup.shared.providers)):q.none(),jd=pt([we?[]:[Co],g?[]:[Go],we?[Co]:[]]),Kh=fi.parts.editorContainer({components:pt([jd,g?[]:[Ct.asSpec(),...lc.toArray()]])}),Qm=cA(a),L0={role:"application",...qf.isRtl()?{dir:"rtl"}:{},...Qm?{"aria-hidden":"true"}:{}},DO=Ql(fi.sketch({dom:{tag:"div",classes:["tox","tox-tinymce"].concat(g?["tox-tinymce-inline"]:[]).concat(we?["tox-tinymce--toolbar-bottom"]:[]).concat(be),styles:{visibility:"hidden",...Qm?{opacity:"0",border:"0"}:{}},attributes:L0},components:[Kh,...g?[]:[Ys],oi],behaviours:On([Ol(),ko.config({disableClass:"tox-tinymce--disabled"}),vo.config({mode:"cyclic",selector:".tox-menubar, .tox-toolbar, .tox-toolbar__primary, .tox-toolbar__overflow--open, .tox-sidebar__overflow--open, .tox-statusbar__path, .tox-statusbar__wordcount, .tox-statusbar__branding a, .tox-statusbar__resize-handle"})])})),Hp=Wk(DO);return I.set(Hp),{mothership:Hp,outerContainer:DO}},Zs=Co=>{const Go=wP(Uz(a)),oi=wP(qz(a));return a.inline||(Kc("div","width",oi)&&Wn(Co.element,"width",oi),Kc("div","height",Go)?Wn(Co.element,"height",Go):Wn(Co.element,"height","400px")),Go},$n=Co=>{a.addShortcut("alt+F9","focus menubar",()=>{fi.focusMenubar(Co)}),a.addShortcut("alt+F10","focus toolbar",()=>{fi.focusToolbar(Co)}),a.addCommand("ToggleToolbarDrawer",(Go,oi)=>{oi!=null&&oi.skipFocus?fi.toggleToolbarDrawerWithoutFocusing(Co):fi.toggleToolbarDrawer(Co)}),a.addQueryStateHandler("ToggleToolbarDrawer",()=>fi.isToolbarDrawerToggled(Co))},no=Co=>{const{mainUi:Go,popupUi:oi,uiMotherships:Ys}=Co;ms(pD(a),(ew,NE)=>{a.ui.registry.addGroupToolbarButton(NE,ew)});const{buttons:lc,menuItems:jd,contextToolbars:Kh,sidebars:Qm,views:L0}=a.ui.registry.getAll(),DO=iA(a),Hp={menuItems:jd,menus:xD(a),menubar:JT(a),toolbar:DO.getOrThunk(()=>ik(a)),allowToolbarGroups:Re===Of.floating,buttons:lc,sidebar:Qm,views:L0};$n(Go.outerContainer),R_(a,Go.mothership,Ys),x.setup(a,An.popup.shared,at),wW(a,An.popup),HW(a,An.popup.shared.getSink,An.popup),cV(a),Fx(a,yn,An.popup.shared),NB(a,Kh,oi.sink,{backstage:An.popup}),EO(a,oi.sink);const ob=a.getElement(),G2=Zs(Go.outerContainer),e4={targetNode:ob,height:G2};return O.render(a,Co,Hp,An.popup,e4)},Fo=Co=>(U.set(Co.mothership),Co),Vo=()=>{const Co=So(),Go=Po(),oi=zg(a)?wr():Fo(Go);P.dialogUi.set(Go),P.popupUi.set(oi),P.mainUi.set(Co);const Ys={popupUi:oi,dialogUi:Go,mainUi:Co,uiMotherships:P.getUiMotherships()};return no(Ys)};return{popups:{backstage:An.popup,getMothership:()=>pL("popups",U)},dialogs:{backstage:An.dialog,getMothership:()=>pL("dialogs",Q)},renderUI:Vo}},wZ=(a,f)=>{const g=me(a,"id").fold(()=>{const O=Vn("dialog-label");return Mn(f,"id",O),O},Se);Mn(a,"aria-labelledby",g)},SZ=ne([Gt("lazySink"),er("dragBlockClass"),da("getBounds",Ea),_t("useTabstopAt",St),_t("firstTabstop",0),_t("eventOrder",{}),il("modalBehaviours",[vo]),fu("onExecute"),Sg("onEscape")]),ZP={sketch:Se},CZ=ne([Mu({name:"draghandle",overrides:(a,f)=>({behaviours:On([xO.config({mode:"mouse",getTarget:g=>uu(g,'[role="dialog"]').getOr(g),blockerClass:a.dragBlockClass.getOrDie(new Error(`The drag blocker class was not specified for a dialog with a drag handle: -`+JSON.stringify(f,null,2)).message),getBounds:a.getDragBounds})])})}),yc({schema:[Gt("dom")],name:"title"}),yc({factory:ZP,schema:[Gt("dom")],name:"close"}),yc({factory:ZP,schema:[Gt("dom")],name:"body"}),Mu({factory:ZP,schema:[Gt("dom")],name:"footer"}),Wf({factory:{sketch:(a,f)=>({...a,dom:f.dom,components:f.components})},schema:[_t("dom",{tag:"div",styles:{position:"fixed",left:"0px",top:"0px",right:"0px",bottom:"0px"}}),_t("components",[])],name:"blocker"})]),kZ=(a,f,g,O)=>{const x=fs(),P=we=>{x.set(we);const Re=a.lazySink(we).getOrDie(),Je=O.blocker(),Ct=Re.getSystem().build({...Je,components:Je.components.concat([cu(we)]),behaviours:On([Ao.config({}),ss("dialog-blocker-events",[$d(gi(),()=>{Bp.isBlocked(we)?j():vo.focusIn(we)})])])});Ig(Re,Ct),vo.focusIn(we)},I=we=>{x.clear(),ba(we.element).each(Re=>{we.getSystem().getByDom(Re).each(Je=>{km(Je)})})},Q=we=>Sp(we,a,"body"),U=we=>ti(we,a,"footer"),ee=(we,Re)=>{Bp.block(we,Re)},se=we=>{Bp.unblock(we)},he=Vn("modal-events"),be={...a.eventOrder,[bc()]:[he].concat(a.eventOrder["alloy.system.attached"]||[])};return{uid:a.uid,dom:a.dom,components:f,apis:{show:P,hide:I,getBody:Q,getFooter:U,setIdle:se,setBusy:ee},eventOrder:be,domModification:{attributes:{role:"dialog","aria-modal":"true"}},behaviours:$a(a.modalBehaviours,[Yo.config({}),vo.config({mode:"cyclic",onEnter:a.onExecute,onEscape:a.onEscape,useTabstopAt:a.useTabstopAt,firstTabstop:a.firstTabstop}),Bp.config({getRoot:x.get}),ss(he,[xr(we=>{wZ(we.element,Sp(we,a,"title").element)})])])}},ll=_c({name:"ModalDialog",configFields:SZ(),partFields:CZ(),factory:kZ,apis:{show:(a,f)=>{a.show(f)},hide:(a,f)=>{a.hide(f)},getBody:(a,f)=>a.getBody(f),getFooter:(a,f)=>a.getFooter(f),setBusy:(a,f,g)=>{a.setBusy(f,g)},setIdle:(a,f)=>{a.setIdle(f)}}}),z2=Jn([Xa,kA].concat(dO)),UP=Su,Z_=[Ck("button"),Xf,Kl("align","end",["start","end"]),qg,Qh,c1("buttonType",["primary","secondary"])],R0=[...Z_,X1],U_=[Li("type",["submit","cancel","custom"]),...R0],xZ=[Li("type",["menu"]),Ug,QS,Xf,tl("items",z2),...Z_],gL=[...Z_,Li("type",["togglebutton"]),Fs("tooltip"),Xf,Ug,ya("active",!1)],bL=ys("type",{submit:U_,cancel:U_,custom:U_,menu:xZ,togglebutton:gL}),vL=[Xa,X1,Li("level",["info","warn","error","success"]),xA,_t("url","")],EZ=Jn(vL),TZ=a=>[Xa,a],AZ=[Xa,X1,Qh,Ck("button"),Xf,UD,c1("buttonType",["primary","secondary","toolbar"]),qg],OL=Jn(AZ),AO=[Xa,kA],qh=AO.concat([wk]),$Z=AO.concat([_k,Qh]),PZ=Jn($Z),DZ=Su,yL=qh.concat([qD("auto")]),RZ=Jn(yL),MZ=_d([l_,X1,xA]),NZ=qh.concat([Fl("storageKey","default")]),qP=Jn(NZ),XP=Ta,_L=Jn(qh),IZ=Ta,BZ=AO.concat([Fl("tag","textarea"),Fs("scriptId"),Fs("scriptUrl"),u1("settings",void 0)]),wL=AO.concat([Fl("tag","textarea"),Cu("init")]),LZ=of(a=>li("customeditor.old",Hr(wL),a).orThunk(()=>li("customeditor.new",Hr(BZ),a))),FZ=Ta,SL=Jn(qh),HZ=rb(),CE=a=>[Xa,Km("columns"),a],X_=[Xa,Fs("html"),Kl("presets","presentation",["presentation","document"])],kE=Jn(X_),CL=qh.concat([ya("border",!1),ya("sandboxed",!0),ya("streamContent",!1),ya("transparent",!0)]),xE=Jn(CL),qd=Ta,EE=Jn(AO.concat([nl("height")])),kL=Jn([Fs("url"),rf("zoom"),rf("cachedWidth"),rf("cachedHeight")]),xL=qh.concat([nl("inputMode"),nl("placeholder"),ya("maximized",!1),Qh]),QZ=Jn(xL),VZ=Ta,M0=a=>[Xa,_k,a,Kl("align","start",["start","center","end"])],cq=[X1,l_],zZ=[X1,tl("items",lh("items",()=>jP))],jP=Zn([Jn(cq),Jn(zZ)]),j_=qh.concat([tl("items",jP),Qh]),TE=Jn(j_),EL=Ta,WZ=qh.concat([am("items",[X1,l_]),iu("size",1),Qh]),ZZ=Jn(WZ),UZ=Ta,qZ=qh.concat([ya("constrain",!0),Qh]),Y_=Jn(qZ),XZ=Jn([Fs("width"),Fs("height")]),jZ=AO.concat([_k,iu("min",0),iu("max",0)]),YZ=Jn(jZ),uq=Ym,GZ=[Xa,tl("header",Ta),tl("cells",yd(Ta))],KZ=Jn(GZ),W2=qh.concat([nl("placeholder"),ya("maximized",!1),Qh]),JZ=Jn(W2),eU=Ta,YP=[Li("type",["directory","leaf"]),zD,Fs("id"),ua("menu",$2)],tU=Jn(YP),s=YP.concat([tl("children",lh("children",()=>un("type",{directory:l,leaf:tU})))]),l=Jn(s),d=un("type",{directory:l,leaf:tU}),m=[Xa,tl("items",d),ch("onLeafAction"),ch("onToggleExpand"),Jl("defaultExpandedIds",[],Ta),nl("defaultSelectedId")],v=Jn(m),w=qh.concat([Kl("filetype","file",["image","media","file"]),Qh,nl("picker_text")]),$=Jn(w),B=Jn([l_,VS]),H=a=>ca("items","items",$s(),yd(of(f=>li(`Checking item of ${a}`,G,f).fold(g=>Zo.error(wl(g)),g=>Zo.value(g))))),G=Fa(()=>un("type",{alertbanner:EZ,bar:Jn(TZ(H("bar"))),button:OL,checkbox:PZ,colorinput:qP,colorpicker:_L,dropzone:SL,grid:Jn(CE(H("grid"))),iframe:xE,input:QZ,listbox:TE,selectbox:ZZ,sizeinput:Y_,slider:YZ,textarea:JZ,urlinput:$,customeditor:LZ,htmlpanel:kE,imagepreview:EE,collection:RZ,label:Jn(M0(H("label"))),table:KZ,tree:v,panel:ue})),le=[Xa,_t("classes",[]),tl("items",G)],ue=Jn(le),ge=[Ck("tab"),zD,tl("items",G)],Me=[Xa,am("tabs",ge)],He=Jn(Me),$e=R0,Ve=bL,rt=Jn([Fs("title"),Sl("body",un("type",{panel:ue,tabpanel:He})),Fl("size","normal"),Jl("buttons",[],Ve),_t("initialData",{}),da("onAction",j),da("onChange",j),da("onSubmit",j),da("onClose",j),da("onCancel",j),da("onTabChange",j)]),ft=a=>li("dialog",rt,a),ut=Jn([Li("type",["cancel","custom"]),...$e]),kt=Jn([Fs("title"),Fs("url"),rf("height"),rf("width"),af("buttons",ut),da("onAction",j),da("onCancel",j),da("onClose",j),da("onMessage",j)]),en=a=>li("dialog",kt,a),vn=a=>b(a)?[a].concat(Ne(Qi(a),vn)):k(a)?Ne(a,vn):[],Fn=a=>p(a.type)&&p(a.name),zt={checkbox:DZ,colorinput:XP,colorpicker:IZ,dropzone:HZ,input:VZ,iframe:qd,imagepreview:kL,selectbox:UZ,sizeinput:XZ,slider:uq,listbox:EL,size:XZ,textarea:eU,urlinput:B,customeditor:FZ,collection:MZ,togglemenuitem:UP},It=a=>q.from(zt[a.type]),Jt=a=>jn(vn(a),Fn),qn=a=>{const f=Jt(a),g=Ne(f,O=>It(O).fold(()=>[],x=>[Sl(O.name,x)]));return Jn(g)},mo=a=>{var f;const g=Js(ft(a)),O=qn(a),x=(f=a.initialData)!==null&&f!==void 0?f:{};return{internalDialog:g,dataValidator:O,initialData:x}},es={open:(a,f)=>{const g=mo(f);return a(g.internalDialog,g.initialData,g.dataValidator)},openUrl:(a,f)=>{const g=Js(en(f));return a(g)},redial:a=>mo(a)};var Ir=Object.freeze({__proto__:null,events:(a,f)=>{const g=(O,x)=>{a.updateState.each(P=>{const I=P(O,x);f.set(I)}),a.renderComponents.each(P=>{const I=P(x,f.get());(a.reuseDom?x4:Iu)(O,I)})};return kr([qt(tp(),(O,x)=>{const P=x;if(!P.universal){const I=a.channel;ct(P.channels,I)&&g(O,P.data)}}),xr((O,x)=>{a.initialData.each(P=>{g(O,P)})})])}}),pa=Object.freeze({__proto__:null,getState:(a,f,g)=>g}),Cc=[Gt("channel"),er("renderComponents"),er("updateState"),er("initialData"),ya("reuseDom",!0)],En=Object.freeze({__proto__:null,init:()=>{const a=bo(q.none()),f=()=>a.set(q.none());return{readState:()=>a.get().getOr("none"),get:a.get,set:a.set,clear:f}}});const Qn=Za({fields:Cc,name:"reflecting",active:Ir,apis:pa,state:En}),or=a=>{const f=[],g={};return vs(a,(O,x)=>{O.fold(()=>{f.push(x)},P=>{g[x]=P})}),f.length>0?Zo.error(f):Zo.value(g)},Rs=(a,f,g)=>{const O=Ar(S_.sketch(x=>({dom:{tag:"div",classes:["tox-form"].concat(a.classes)},components:Fe(a.items,P=>Lm(x,P,f,g))})));return{dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[O.asSpec()]}],behaviours:On([vo.config({mode:"acyclic",useTabstopAt:Te(k_)}),Zd.memento(O),l5(O,{postprocess:x=>or(x).fold(P=>(console.error(P),{}),Se)}),ss("dialog-body-panel",[qt(gi(),(x,P)=>{x.getSystem().broadcastOn([E_],{newFocus:q.some(P.event.target)})})])])}},to=(a,f)=>({uid:a.uid,dom:a.dom,components:a.components,events:Tp(a.action),behaviours:$a(a.tabButtonBehaviours,[Ao.config({}),vo.config({mode:"execution",useSpace:!0,useEnter:!0}),Ln.config({store:{mode:"memory",initialValue:a.value}})]),domModification:a.domModification}),Ho=sd({name:"TabButton",configFields:[_t("uid",void 0),Gt("value"),ca("dom","dom",xe(()=>({attributes:{role:"tab",id:Vn("aria"),"aria-selected":"false"}})),ea()),er("action"),_t("domModification",{}),il("tabButtonBehaviours",[Ao,vo,Ln]),Gt("view")],factory:to}),Sn=ne([Gt("tabs"),Gt("dom"),_t("clickToDismiss",!1),il("tabbarBehaviours",[ur,vo]),bm(["tabClass","selectedClass"])]),Qo=Zv({factory:Ho,name:"tabs",unit:"tab",overrides:a=>{const f=(O,x)=>{ur.dehighlight(O,x),ho(O,lb(),{tabbar:O,button:x})},g=(O,x)=>{ur.highlight(O,x),ho(O,Jp(),{tabbar:O,button:x})};return{action:O=>{const x=O.getSystem().getByUid(a.uid).getOrDie(),P=ur.isHighlighted(x,O);(P&&a.clickToDismiss?f:P?j:g)(x,O)},domModification:{classes:[a.markers.tabClass]}}}}),Qs=ne([Qo]),ni=(a,f,g,O)=>({uid:a.uid,dom:a.dom,components:f,"debug.sketcher":"Tabbar",domModification:{attributes:{role:"tablist"}},behaviours:$a(a.tabbarBehaviours,[ur.config({highlightClass:a.markers.selectedClass,itemClass:a.markers.tabClass,onHighlight:(x,P)=>{Mn(P.element,"aria-selected","true")},onDehighlight:(x,P)=>{Mn(P.element,"aria-selected","false")}}),vo.config({mode:"flow",getInitial:x=>ur.getHighlighted(x).map(P=>P.element),selector:"."+a.markers.tabClass,executeOnMove:!0})])}),Br=_c({name:"Tabbar",configFields:Sn(),partFields:Qs(),factory:ni}),Zl=(a,f)=>({uid:a.uid,dom:a.dom,behaviours:$a(a.tabviewBehaviours,[Yo.config({})]),domModification:{attributes:{role:"tabpanel"}}}),Hm=sd({name:"Tabview",configFields:[il("tabviewBehaviours",[Yo])],factory:Zl}),n1=ne([_t("selectFirst",!0),Ps("onChangeTab"),Ps("onDismissTab"),_t("tabs",[]),il("tabSectionBehaviours",[])]),ld=yc({factory:Br,schema:[Gt("dom"),Ic("markers",[Gt("tabClass"),Gt("selectedClass")])],name:"tabbar",defaults:a=>({tabs:a.tabs})}),Xh=yc({factory:Hm,name:"tabview"}),Xo=ne([ld,Xh]),ir=(a,f,g,O)=>{const x=I=>{const Q=Ln.getValue(I);ti(I,a,"tabview").each(U=>{gt(a.tabs,se=>se.value===Q).each(se=>{const he=se.view();me(I.element,"id").each(be=>{Mn(U.element,"aria-labelledby",be)}),Yo.set(U,he),a.onChangeTab(U,I,he)})})},P=(I,Q)=>{ti(I,a,"tabbar").each(U=>{Q(U).each(Td)})};return{uid:a.uid,dom:a.dom,components:f,behaviours:_p(a.tabSectionBehaviours),events:kr(pt([a.selectFirst?[xr((I,Q)=>{P(I,ur.getFirst)})]:[],[qt(Jp(),(I,Q)=>{const U=Q.event.button;x(U)}),qt(lb(),(I,Q)=>{const U=Q.event.button;a.onDismissTab(I,U)})]])),apis:{getViewItems:I=>ti(I,a,"tabview").map(Q=>Yo.contents(Q)).getOr([]),showTab:(I,Q)=>{P(I,ee=>{const se=ur.getCandidates(ee);return gt(se,be=>Ln.getValue(be)===Q).filter(be=>!ur.isHighlighted(ee,be))})}}}},Pr=_c({name:"TabSection",configFields:n1(),partFields:Xo(),factory:ir,apis:{getViewItems:(a,f)=>a.getViewItems(f),showTab:(a,f,g)=>{a.showTab(f,g)}}}),Ca=(a,f,g)=>Fe(a,(O,x)=>{Yo.set(g,a[x].view());const P=f.dom.getBoundingClientRect();return Yo.set(g,[]),P.height}),Gi=a=>as(is(a,(f,g)=>f>g?-1:f{const O=yl(a).dom,x=uu(a,".tox-dialog-wrap").getOr(a),P=Or(x,"position")==="fixed";let I;P?I=Math.max(O.clientHeight,window.innerHeight):I=Math.max(O.offsetHeight,O.scrollHeight);const Q=Nr(f),ee=f.dom.offsetLeft>=g.dom.offsetLeft+Ii(g)?Math.max(Nr(g),Q):Q,se=parseInt(Or(a,"margin-top"),10)||0,he=parseInt(Or(a,"margin-bottom"),10)||0,we=Nr(a)+se+he-ee;return I-we},Lp=(a,f)=>{as(a).each(g=>Pr.showTab(f,g.value))},nb=(a,f)=>{Wn(a,"height",f+"px"),Wn(a,"flex-basis",f+"px")},$O=(a,f,g)=>{uu(a,'[role="dialog"]').each(O=>{oa(O,'[role="tablist"]').each(x=>{g.get().map(P=>(Wn(f,"height","0"),Wn(f,"flex-basis","0"),Math.min(P,Xd(O,f,x)))).each(P=>{nb(f,P)})})})},G_=a=>oa(a,'[role="tabpanel"]'),AE=a=>{const f=fs();return{extraEvents:[xr(x=>{const P=x.element;G_(P).each(I=>{Wn(I,"visibility","hidden"),x.getSystem().getByDom(I).toOptional().each(Q=>{const U=Ca(a,I,Q);Gi(U).fold(f.clear,f.set)}),$O(P,I,f),Jo(I,"visibility"),Lp(a,x),requestAnimationFrame(()=>{$O(P,I,f)})})}),qt(cf(),x=>{const P=x.element;G_(P).each(I=>{$O(P,I,f)})}),qt(SM,(x,P)=>{const I=x.element;G_(I).each(Q=>{const U=Ff(At(Q));Wn(Q,"visibility","hidden");const ee=Gr(Q,"height").map(be=>parseInt(be,10));Jo(Q,"height"),Jo(Q,"flex-basis");const se=Q.dom.getBoundingClientRect().height;ee.forall(be=>se>be)?(f.set(se),$O(I,Q,f)):ee.each(be=>{nb(Q,be)}),Jo(Q,"visibility"),U.each(ji)})})],selectFirst:!1}},PO="send-data-to-section",Z2="send-data-to-view",K_=(a,f,g)=>{const O=bo({}),x=ee=>{const se=Ln.getValue(ee),he=or(se).getOr({}),be=O.get(),we=lr(be,he);O.set(we)},P=ee=>{const se=O.get();Ln.setValue(ee,se)},I=bo(null),Q=Fe(a.tabs,ee=>({value:ee.name,dom:{tag:"div",classes:["tox-dialog__body-nav-item"]},components:[Xi(g.shared.providers.translate(ee.title))],view:()=>[S_.sketch(se=>({dom:{tag:"div",classes:["tox-form"]},components:Fe(ee.items,he=>Lm(se,he,f,g)),formBehaviours:On([vo.config({mode:"acyclic",useTabstopAt:Te(k_)}),ss("TabView.form.events",[xr(P),Pd(x)]),Wc.config({channels:ao([{key:PO,value:{onReceive:x}},{key:Z2,value:{onReceive:P}}])})])}))]})),U=AE(Q);return Pr.sketch({dom:{tag:"div",classes:["tox-dialog__body"]},onChangeTab:(ee,se,he)=>{const be=Ln.getValue(se);ho(ee,wM,{name:be,oldName:I.get()}),I.set(be)},tabs:Q,components:[Pr.parts.tabbar({dom:{tag:"div",classes:["tox-dialog__body-nav"]},components:[Br.parts.tabs({})],markers:{tabClass:"tox-tab",selectedClass:"tox-dialog__body-nav-item--active"},tabbarBehaviours:On([$i.config({})])}),Pr.parts.tabview({dom:{tag:"div",classes:["tox-dialog__body-content"]}})],selectFirst:U.selectFirst,tabSectionBehaviours:On([ss("tabpanel",U.extraEvents),vo.config({mode:"acyclic"}),Ds.config({find:ee=>as(Pr.getViewItems(ee))}),_0(q.none(),ee=>(ee.getSystem().broadcastOn([PO],{}),O.get()),(ee,se)=>{O.set(se),ee.getSystem().broadcastOn([Z2],{})})])})},N0=(a,f,g,O,x)=>{const P=U=>{const ee=U.body;switch(ee.type){case"tabpanel":return[K_(ee,U.initialData,O)];default:return[Rs(ee,U.initialData,O)]}},I=(U,ee)=>q.some({isTabPanel:()=>ee.body.type==="tabpanel"}),Q={"aria-live":"polite"};return{dom:{tag:"div",classes:["tox-dialog__content-js"],attributes:{...g.map(U=>({id:U})).getOr({}),...x?Q:{}}},components:[],behaviours:On([Zd.childAt(0),Qn.config({channel:`${dx}-${f}`,updateState:I,renderComponents:P,initialData:a})])}},Fp=(a,f,g,O,x)=>N0(a,f,q.some(g),O,x),o1=(a,f,g)=>{const O=N0(a,f,q.none(),g,!1);return ll.parts.body(O)},U2=a=>{const f={dom:{tag:"div",classes:["tox-dialog__content-js"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-iframe"]},components:[p5(q.none(),{dom:{tag:"iframe",attributes:{src:a.url}},behaviours:On([$i.config({}),Ao.config({})])})]}],behaviours:On([vo.config({mode:"acyclic",useTabstopAt:Te(k_)})])};return ll.parts.body(f)},J_=Jy.deviceType.isTouch(),q2=(a,f)=>({dom:{tag:"div",styles:{display:"none"},classes:["tox-dialog__header"]},components:[a,f]}),s1=(a,f)=>ll.parts.close(Wl.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":f.translate("Close")}},action:a,buttonBehaviours:On([$i.config({})])})),$E=()=>ll.parts.title({dom:{tag:"div",classes:["tox-dialog__title"],innerHtml:"",styles:{display:"none"}}}),X2=(a,f)=>ll.parts.body({dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[{dom:Z1(`

    ${zT(f.translate(a))}

    `)}]}]}),Yc=a=>ll.parts.footer({dom:{tag:"div",classes:["tox-dialog__footer"]},components:a}),I0=(a,f)=>[Dp.sketch({dom:{tag:"div",classes:["tox-dialog__footer-start"]},components:a}),Dp.sketch({dom:{tag:"div",classes:["tox-dialog__footer-end"]},components:f})],PE=a=>{const f="tox-dialog",g=f+"-wrap",O=g+"__backdrop",x=f+"__disable-scroll";return ll.sketch({lazySink:a.lazySink,onEscape:P=>(a.onEscape(P),q.some(!0)),useTabstopAt:P=>!k_(P),firstTabstop:a.firstTabstop,dom:{tag:"div",classes:[f].concat(a.extraClasses),styles:{position:"relative",...a.extraStyles}},components:[a.header,a.body,...a.footer.toArray()],parts:{blocker:{dom:Z1(`
    `),components:[{dom:{tag:"div",classes:J_?[O,O+"--opaque"]:[O]}}]}},dragBlockClass:g,modalBehaviours:On([Ao.config({}),ss("dialog-events",a.dialogEvents.concat([$d(gi(),(P,I)=>{Bp.isBlocked(P)?j():vo.focusIn(P)}),qt(ab(),(P,I)=>{P.getSystem().broadcastOn([E_],{newFocus:I.event.newFocus})})])),ss("scroll-lock",[xr(()=>{na(si(),x)}),Pd(()=>{wi(si(),x)})]),...a.extraBehaviours]),eventOrder:{[au()]:["dialog-events"],[bc()]:["scroll-lock","dialog-events","alloy.base.behaviour"],[Yu()]:["alloy.base.behaviour","dialog-events","scroll-lock"],...a.eventOrder}})},DE=a=>Wl.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":a.translate("Close"),title:a.translate("Close")}},buttonBehaviours:On([$i.config({})]),components:[Pm("close",{tag:"span",classes:["tox-icon"]},a.icons)],action:f=>{gs(f,v0)}}),j2=(a,f,g,O)=>{const x=P=>[Xi(O.translate(P.title))];return{dom:{tag:"div",classes:["tox-dialog__title"],attributes:{...g.map(P=>({id:P})).getOr({})}},components:[],behaviours:On([Qn.config({channel:`${e1}-${f}`,initialData:a,renderComponents:x})])}},r1=()=>({dom:Z1('
    ')}),Y2=(a,f,g,O)=>Dp.sketch({dom:Z1('
    '),components:[j2(a,f,q.some(g),O),r1(),DE(O)],containerBehaviours:On([xO.config({mode:"mouse",blockerClass:"blocker",getTarget:x=>uf(x,'[role="dialog"]').getOrDie(),snaps:{getSnapPoints:()=>[],leftAttr:"data-drag-left",topAttr:"data-drag-top"}})])}),Et=(a,f,g)=>{const O=ll.parts.title(j2(a,f,q.none(),g)),x=ll.parts.draghandle(r1()),P=ll.parts.close(DE(g)),I=[O].concat(a.draggable?[x]:[]).concat([P]);return Dp.sketch({dom:Z1('
    '),components:I})},Mt=(a,f,g)=>Et({title:g.shared.providers.translate(a),draggable:g.dialog.isDraggableModal()},f,g.shared.providers),Cn=(a,f,g,O)=>({dom:{tag:"div",classes:["tox-dialog__busy-spinner"],attributes:{"aria-label":g.translate(a)},styles:{left:"0px",right:"0px",bottom:"0px",top:`${O.getOr(0)}px`,position:"absolute"}},behaviours:f,components:[{dom:Z1('
    ')}]}),bn=(a,f,g)=>({onClose:()=>g.closeWindow(),onBlock:O=>{const x=oa(a().element,".tox-dialog__header").map(P=>Nr(P));ll.setBusy(a(),(P,I)=>Cn(O.message,I,f,x))},onUnblock:()=>{ll.setIdle(a())}}),fo="tox-dialog--fullscreen",ks="tox-dialog--width-lg",Hi="tox-dialog--width-md",Hu=a=>{switch(a){case"large":return q.some(ks);case"medium":return q.some(Hi);default:return q.none()}},kc=(a,f)=>{const g=nt.fromDom(f.element.dom);Aa(g,fo)||(Tu(g,[ks,Hi]),Hu(a).each(O=>na(g,O)))},B0=(a,f)=>{const g=nt.fromDom(a.element.dom),O=gg(g),x=gt(O,P=>P===ks||P===Hi).or(Hu(f));G0(g,[fo,...x.toArray()])},jh=(a,f,g)=>Ql(PE({...a,firstTabstop:1,lazySink:g.shared.getSink,extraBehaviours:[cx({}),...a.extraBehaviours],onEscape:O=>{gs(O,v0)},dialogEvents:f,eventOrder:{[tp()]:[Qn.name(),Wc.name()],[bc()]:["scroll-lock",Qn.name(),"messages","dialog-events","alloy.base.behaviour"],[Yu()]:["alloy.base.behaviour","dialog-events","messages",Qn.name(),"scroll-lock"]}})),RE=(a,f={})=>{const g=O=>{const x=Fe(O.items,P=>{const I=nn(f,P.name).getOr(bo(!1));return{...P,storage:I}});return{...O,items:x}};return Fe(a,O=>O.type==="menu"?g(O):O)},GP=a=>po(a,(f,g)=>g.type==="menu"?po(g.items,(x,P)=>(x[P.name]=P.storage,x),f):f,{}),KP=(a,f)=>[V0(gi(),Q9),a(v_,(g,O,x,P)=>{Ff(At(P.element)).fold(j,mf),f.onClose(),O.onClose()}),a(v0,(g,O,x,P)=>{O.onCancel(g),gs(P,v_)}),qt(_3,(g,O)=>f.onUnblock()),qt(y3,(g,O)=>f.onBlock(O.event))],TL=(a,f)=>{const g=(x,P)=>qt(x,(I,Q)=>{O(I,(U,ee)=>{P(a(),U,Q.event,I)})}),O=(x,P)=>{Qn.getState(x).get().each(I=>{P(I,x)})};return[...KP(g,f),g(Gg,(x,P,I)=>{P.onAction(x,{name:I.name})})]},AL=(a,f,g)=>{const O=(P,I)=>qt(P,(Q,U)=>{x(Q,(ee,se)=>{I(a(),ee,U.event,Q)})}),x=(P,I)=>{Qn.getState(P).get().each(Q=>{I(Q.internalDialog,P)})};return[...KP(O,f),O(o2,(P,I)=>I.onSubmit(P)),O(zd,(P,I,Q)=>{I.onChange(P,{name:Q.name})}),O(Gg,(P,I,Q,U)=>{const ee=()=>U.getSystem().isConnected()?vo.focusIn(U):void 0,se=we=>Pe(we,"disabled")||me(we,"aria-disabled").exists(Re=>Re==="true"),he=At(U.element),be=Ff(he);I.onAction(P,{name:Q.name,value:Q.value}),Ff(he).fold(ee,we=>{se(we)||be.exists(Re=>Mi(we,Re)&&se(Re))?ee():g().toOptional().filter(Re=>!Mi(Re.element,we)).each(ee)})}),O(wM,(P,I,Q)=>{I.onTabChange(P,{newTabName:Q.name,oldTabName:Q.oldName})}),Pd(P=>{const I=a();Ln.setValue(P,I.getData())})]},xs=(a,f)=>Sx(a,a.type,f),Bt=(a,f,g)=>gt(f,O=>O.name===g).bind(O=>O.memento.getOpt(a)),so=(a,f)=>{const g=f.map(Q=>Q.footerButtons).getOr([]),O=Eo(g,Q=>Q.align==="start"),x=(Q,U)=>Dp.sketch({dom:{tag:"div",classes:[`tox-dialog__footer-${Q}`]},components:Fe(U,ee=>ee.memento.asSpec())}),P=x("start",O.pass),I=x("end",O.fail);return[P,I]},$o=(a,f,g)=>{const O=(x,P)=>{const I=Fe(P.buttons,U=>{const ee=Ar(xs(U,g));return{name:U.name,align:U.align,memento:ee}}),Q=U=>Bt(x,I,U);return q.some({lookupByName:Q,footerButtons:I})};return{dom:Z1(''),components:[],behaviours:On([Qn.config({channel:`${G3}-${f}`,initialData:a,updateState:O,renderComponents:so})])}},Da=(a,f,g)=>$o(a,f,g),gu=(a,f,g)=>ll.parts.footer($o(a,f,g)),Yh=(a,f)=>{if(a.getRoot().getSystem().isConnected()){const O=Ds.getCurrent(a.getFormWrapper()).getOr(a.getFormWrapper());return S_.getField(O,f).orThunk(()=>a.getFooter().bind(I=>Qn.getState(I).get()).bind(I=>I.lookupByName(f)))}else return q.none()},Ul=(a,f)=>{const g=a.getRoot();return Qn.getState(g).get().map(O=>Js(li("data",O.dataValidator,f))).getOr(f)},Gh=(a,f,g)=>{const O=Re=>{const Je=a.getRoot();Je.getSystem().isConnected()&&Re(Je)},we={getData:()=>{const Re=a.getRoot(),Je=Re.getSystem().isConnected()?a.getFormWrapper():Re,Ct=Ln.getValue(Je),at=ms(g,st=>st.get());return{...Ct,...at}},setData:Re=>{O(Je=>{const Ct=we.getData(),at=lr(Ct,Re),st=Ul(a,at),Ot=a.getFormWrapper();Ln.setValue(Ot,st),vs(g,(hn,jt)=>{ns(at,jt)&&hn.set(at[jt])})})},setEnabled:(Re,Je)=>{Yh(a,Re).each(Je?ko.enable:ko.disable)},focus:Re=>{Yh(a,Re).each(Ao.focus)},block:Re=>{if(!p(Re))throw new Error("The dialogInstanceAPI.block function should be passed a blocking message of type string as an argument");O(Je=>{ho(Je,y3,{message:Re})})},unblock:()=>{O(Re=>{gs(Re,_3)})},showTab:Re=>{O(Je=>{const Ct=a.getBody();Qn.getState(Ct).get().exists(st=>st.isTabPanel())&&Ds.getCurrent(Ct).each(st=>{Pr.showTab(st,Re)})})},redial:Re=>{O(Je=>{const Ct=a.getId(),at=f(Re),st=RE(at.internalDialog.buttons,g);Je.getSystem().broadcastOn([`${x_}-${Ct}`],at),Je.getSystem().broadcastOn([`${e1}-${Ct}`],at.internalDialog),Je.getSystem().broadcastOn([`${dx}-${Ct}`],at.internalDialog),Je.getSystem().broadcastOn([`${G3}-${Ct}`],{...at.internalDialog,buttons:st}),we.setData(at.initialData)})},close:()=>{O(Re=>{gs(Re,v_)})},toggleFullscreen:a.toggleFullscreen};return we},JP=(a,f,g)=>{const O=Vn("dialog"),x=a.internalDialog,P=Mt(x.title,O,g),I=bo(x.size),Q=Hu(I.get()).toArray(),U=(st,Ot)=>(I.set(Ot.internalDialog.size),kc(Ot.internalDialog.size,st),q.some(Ot)),ee=o1({body:x.body,initialData:x.initialData},O,g),se=RE(x.buttons),he=GP(se),be=an(se.length!==0,gu({buttons:se},O,g)),we=AL(()=>at,bn(()=>Je,g.shared.providers,f),g.shared.getSink),Re={id:O,header:P,body:ee,footer:be,extraClasses:Q,extraBehaviours:[Qn.config({channel:`${x_}-${O}`,updateState:U,initialData:a})],extraStyles:{}},Je=jh(Re,we,g),Ct=(()=>{const st=()=>{const hn=ll.getBody(Je);return Ds.getCurrent(hn).getOr(hn)},Ot=()=>{B0(Je,I.get())};return{getId:ne(O),getRoot:ne(Je),getBody:()=>ll.getBody(Je),getFooter:()=>ll.getFooter(Je),getFormWrapper:st,toggleFullscreen:Ot}})(),at=Gh(Ct,f.redial,he);return{dialog:Je,instanceApi:at}},$L=(a,f,g,O=!1,x)=>{const P=Vn("dialog"),I=Vn("dialog-label"),Q=Vn("dialog-content"),U=a.internalDialog,ee=bo(U.size),se=Hu(ee.get()).toArray(),he=(Wt,yn)=>(ee.set(yn.internalDialog.size),kc(yn.internalDialog.size,Wt),x(),q.some(yn)),be=Ar(Y2({title:U.title,draggable:!0},P,I,g.shared.providers)),we=Ar(Fp({body:U.body,initialData:U.initialData},P,Q,g,O)),Re=RE(U.buttons),Je=GP(Re),Ct=an(Re.length!==0,Ar(Da({buttons:Re},P,g))),at=AL(()=>jt,{onBlock:Wt=>{Bp.block(Ot,(yn,An)=>{const rs=be.getOpt(Ot).map(Un=>Nr(Un.element));return Cn(Wt.message,An,g.shared.providers,rs)})},onUnblock:()=>{Bp.unblock(Ot)},onClose:()=>f.closeWindow()},g.shared.getSink),Ot=Ql({dom:{tag:"div",classes:["tox-dialog","tox-dialog-inline",...se],attributes:{role:"dialog","aria-labelledby":I}},eventOrder:{[tp()]:[Qn.name(),Wc.name()],[au()]:["execute-on-form"],[bc()]:["reflecting","execute-on-form"]},behaviours:On([vo.config({mode:"cyclic",onEscape:Wt=>(gs(Wt,v_),q.some(!0)),useTabstopAt:Wt=>!k_(Wt)&&(ia(Wt)!=="button"||ui(Wt,"disabled")!=="disabled"),firstTabstop:1}),Qn.config({channel:`${x_}-${P}`,updateState:he,initialData:a}),Ao.config({}),ss("execute-on-form",at.concat([$d(gi(),(Wt,yn)=>{vo.focusIn(Wt)}),qt(ab(),(Wt,yn)=>{Wt.getSystem().broadcastOn([E_],{newFocus:yn.event.newFocus})})])),Bp.config({getRoot:()=>q.some(Ot)}),Yo.config({}),cx({})]),components:[be.asSpec(),we.asSpec(),...Ct.map(Wt=>Wt.asSpec()).toArray()]}),hn=()=>{B0(Ot,ee.get())},jt=Gh({getId:ne(P),getRoot:ne(Ot),getFooter:()=>Ct.map(Wt=>Wt.get(Ot)),getBody:()=>we.get(Ot),getFormWrapper:()=>{const Wt=we.get(Ot);return Ds.getCurrent(Wt).getOr(Wt)},toggleFullscreen:hn},f.redial,Je);return{dialog:Ot,instanceApi:jt}};var ME=tinymce.util.Tools.resolve("tinymce.util.URI");const fq=a=>{const f=I=>{a.getSystem().isConnected()&&I(a)};return{block:I=>{if(!p(I))throw new Error("The urlDialogInstanceAPI.block function should be passed a blocking message of type string as an argument");f(Q=>{ho(Q,y3,{message:I})})},unblock:()=>{f(I=>{gs(I,_3)})},close:()=>{f(I=>{gs(I,v_)})},sendMessage:I=>{f(Q=>{Q.getSystem().broadcastOn([K3],I)})}}},Iq=["insertContent","setContent","execCommand","close","block","unblock"],hq=a=>b(a)&&Iq.indexOf(a.mceAction)!==-1,Bq=a=>!hq(a)&&b(a)&&ns(a,"mceAction"),Lq=(a,f,g)=>{switch(g.mceAction){case"insertContent":a.insertContent(g.content);break;case"setContent":a.setContent(g.content);break;case"execCommand":const O=R(g.ui)?g.ui:!1;a.execCommand(g.cmd,O,g.value);break;case"close":f.close();break;case"block":f.block(g.message);break;case"unblock":f.unblock();break}},Fq=(a,f,g,O)=>{const x=Vn("dialog"),P=Mt(a.title,x,O),I=U2(a),Q=a.buttons.bind(Ot=>Ot.length===0?q.none():q.some(gu({buttons:Ot},x,O))),U=TL(()=>st,bn(()=>at,O.shared.providers,f)),ee={...a.height.fold(()=>({}),Ot=>({height:Ot+"px","max-height":Ot+"px"})),...a.width.fold(()=>({}),Ot=>({width:Ot+"px","max-width":Ot+"px"}))},se=a.width.isNone()&&a.height.isNone()?["tox-dialog--width-lg"]:[],he=new ME(a.url,{base_uri:new ME(window.location.href)}),be=`${he.protocol}://${he.host}${he.port?":"+he.port:""}`,we=Rh(),Re=(Ot,hn)=>q.some(hn),Je=[Qn.config({channel:`${x_}-${x}`,updateState:Re,initialData:a}),ss("messages",[xr(()=>{const Ot=sc(nt.fromDom(window),"message",hn=>{if(he.isSameOrigin(new ME(hn.raw.origin))){const jt=hn.raw.data;hq(jt)?Lq(g,st,jt):Bq(jt)&&a.onMessage(st,jt)}});we.set(Ot)}),Pd(we.clear)]),Wc.config({channels:{[K3]:{onReceive:(Ot,hn)=>{oa(Ot.element,"iframe").each(jt=>{const Wt=jt.dom.contentWindow;V(Wt)&&Wt.postMessage(hn,be)})}}}})],at=jh({id:x,header:P,body:I,footer:Q,extraClasses:se,extraBehaviours:Je,extraStyles:ee},U,O),st=fq(at);return{dialog:at,instanceApi:st}},Hq=a=>{const f=a.shared;return{open:(O,x)=>{const P=()=>{ll.hide(ee),x()},I=Ar(Sx({name:"close-alert",text:"OK",primary:!0,buttonType:q.some("primary"),align:"end",enabled:!0,icon:q.none()},"cancel",a)),Q=$E(),U=s1(P,f.providers),ee=Ql(PE({lazySink:()=>f.getSink(),header:q2(Q,U),body:X2(O,f.providers),footer:q.some(Yc(I0([],[I.asSpec()]))),onEscape:P,extraClasses:["tox-alert-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[qt(v0,P)],eventOrder:{}}));ll.show(ee);const se=I.get(ee);Ao.focus(se)}}},Qq=a=>{const f=a.shared;return{open:(O,x)=>{const P=be=>{ll.hide(se),x(be)},I=Ar(Sx({name:"yes",text:"Yes",primary:!0,buttonType:q.some("primary"),align:"end",enabled:!0,icon:q.none()},"submit",a)),Q=Sx({name:"no",text:"No",primary:!1,buttonType:q.some("secondary"),align:"end",enabled:!0,icon:q.none()},"cancel",a),U=$E(),ee=s1(()=>P(!1),f.providers),se=Ql(PE({lazySink:()=>f.getSink(),header:q2(U,ee),body:X2(O,f.providers),footer:q.some(Yc(I0([],[Q,I.asSpec()]))),onEscape:()=>P(!1),extraClasses:["tox-confirm-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[qt(v0,()=>P(!1)),qt(o2,()=>P(!0))],eventOrder:{}}));ll.show(se);const he=I.get(se);Ao.focus(he)}}},mq=(a,f)=>Js(li("data",f,a)),pq=a=>JS(a,".tox-alert-dialog")||JS(a,".tox-confirm-dialog"),Vq=(a,f,g)=>f&&g?[]:[Pa.config({contextual:{lazyContext:()=>q.some(Rr(nt.fromDom(a.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition"},modes:["top"],lazyViewport:O=>b0(a,O.element).map(P=>({bounds:b_(P),optScrollEnv:q.some({currentScrollTop:P.element.dom.scrollTop,scrollElmTop:Nl(P.element).top})})).getOrThunk(()=>({bounds:Ea(),optScrollEnv:q.none()}))})],zq=a=>{const f=a.editor,g=BS(f),O=Hq(a.backstages.dialog),x=Qq(a.backstages.dialog),P=(Re,Je,Ct)=>{if(!N(Je)){if(Je.inline==="toolbar")return ee(Re,a.backstages.popup.shared.anchors.inlineDialog(),Ct,Je);if(Je.inline==="bottom")return se(Re,a.backstages.popup.shared.anchors.inlineBottomDialog(),Ct,Je);if(Je.inline==="cursor")return ee(Re,a.backstages.popup.shared.anchors.cursor(),Ct,Je)}return U(Re,Ct)},I=(Re,Je)=>Q(Re,Je),Q=(Re,Je)=>{const Ct=at=>{const st=Fq(at,{closeWindow:()=>{ll.hide(st.dialog),Je(st.instanceApi)}},f,a.backstages.dialog);return ll.show(st.dialog),st.instanceApi};return es.openUrl(Ct,Re)},U=(Re,Je)=>{const Ct=(at,st,Ot)=>{const hn=st,Wt=JP({dataValidator:Ot,initialData:hn,internalDialog:at},{redial:es.redial,closeWindow:()=>{ll.hide(Wt.dialog),Je(Wt.instanceApi)}},a.backstages.dialog);return ll.show(Wt.dialog),Wt.instanceApi.setData(hn),Wt.instanceApi};return es.open(Ct,Re)},ee=(Re,Je,Ct,at)=>{const st=(Ot,hn,jt)=>{const Wt=mq(hn,jt),yn=fs(),An=a.backstages.popup.shared.header.isPositionedAtTop(),rs={dataValidator:jt,initialData:Wt,internalDialog:Ot},Un=()=>yn.on(So=>{Yi.reposition(So),(!g||!An)&&Pa.refresh(So)}),Lo=$L(rs,{redial:es.redial,closeWindow:()=>{yn.on(Yi.hide),f.off("ResizeEditor",Un),yn.clear(),Ct(Lo.instanceApi)}},a.backstages.popup,at.ariaAttrs,Un),Po=Ql(Yi.sketch({lazySink:a.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:at.persistent?{event:"doNotDismissYet"}:{},...An?{}:{fireRepositionEventInstead:{}},inlineBehaviours:On([ss("window-manager-inline-events",[qt(Oh(),(So,Zs)=>{gs(Lo.dialog,v0)})]),...Vq(f,g,An)]),isExtraPart:(So,Zs)=>pq(Zs)}));yn.set(Po);const wr=()=>{const So=f.inline?si():nt.fromDom(f.getContainer()),Zs=Rr(So);return q.some(Zs)};return Yi.showWithinBounds(Po,cu(Lo.dialog),{anchor:Je},wr),(!g||!An)&&(Pa.refresh(Po),f.on("ResizeEditor",Un)),Lo.instanceApi.setData(Wt),vo.focusIn(Lo.dialog),Lo.instanceApi};return es.open(st,Re)},se=(Re,Je,Ct,at)=>{const st=(Ot,hn,jt)=>{const Wt=mq(hn,jt),yn=fs(),An=a.backstages.popup.shared.header.isPositionedAtTop(),rs={dataValidator:jt,initialData:Wt,internalDialog:Ot},Un=()=>yn.on(So=>{Yi.reposition(So),Pa.refresh(So)}),Lo=$L(rs,{redial:es.redial,closeWindow:()=>{yn.on(Yi.hide),f.off("ResizeEditor ScrollWindow ElementScroll",Un),yn.clear(),Ct(Lo.instanceApi)}},a.backstages.popup,at.ariaAttrs,Un),Po=Ql(Yi.sketch({lazySink:a.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:at.persistent?{event:"doNotDismissYet"}:{},...An?{}:{fireRepositionEventInstead:{}},inlineBehaviours:On([ss("window-manager-inline-events",[qt(Oh(),(So,Zs)=>{gs(Lo.dialog,v0)})]),Pa.config({contextual:{lazyContext:()=>q.some(Rr(nt.fromDom(f.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition"},modes:["top","bottom"],lazyViewport:So=>b0(f,So.element).map($n=>({bounds:b_($n),optScrollEnv:q.some({currentScrollTop:$n.element.dom.scrollTop,scrollElmTop:Nl($n.element).top})})).getOrThunk(()=>({bounds:Ea(),optScrollEnv:q.none()}))})]),isExtraPart:(So,Zs)=>pq(Zs)}));yn.set(Po);const wr=()=>a.backstages.popup.shared.getSink().toOptional().bind(So=>{const Zs=b0(f,So.element),$n=15,no=Zs.map(Co=>b_(Co)).getOr(Ea()),Fo=Rr(nt.fromDom(f.getContentAreaContainer())),Vo=qm(Fo,no);return q.some(Cr(Vo.x,Vo.y,Vo.width,Vo.height-$n))});return Yi.showWithinBounds(Po,cu(Lo.dialog),{anchor:Je},wr),Pa.refresh(Po),f.on("ResizeEditor ScrollWindow ElementScroll ResizeWindow",Un),Lo.instanceApi.setData(Wt),vo.focusIn(Lo.dialog),Lo.instanceApi};return es.open(st,Re)};return{open:P,openUrl:I,alert:(Re,Je)=>{O.open(Re,Je)},close:Re=>{Re.close()},confirm:(Re,Je)=>{x.open(Re,Je)}}},Wq=a=>{cD(a),gF(a),SW(a)};var Zq=()=>{Dc.add("silver",a=>{Wq(a);let f=()=>Ea();const{dialogs:g,popups:O,renderUI:x}=_Z(a,{getPopupSinkBounds:()=>f()}),P=()=>{const U=x();return b0(a,O.getMothership().element).each(se=>{f=()=>b_(se)}),U};i8.register(a,O.backstage.shared);const I=zq({editor:a,backstages:{popup:O.backstage,dialog:g.backstage}}),Q=()=>jT(a,{backstage:O.backstage},O.getMothership());return{renderUI:P,getWindowManagerImpl:ne(I),getNotificationManagerImpl:Q}})};Zq()})();const contentUiSkinCss=`.mce-content-body .mce-item-anchor{background:transparent url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'8'%20height%3D'12'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M0%200L8%200%208%2012%204.09117821%209%200%2012z'%2F%3E%3C%2Fsvg%3E%0A") no-repeat center}.mce-content-body .mce-item-anchor:empty{cursor:default;display:inline-block;height:12px!important;padding:0 2px;-webkit-user-modify:read-only;-moz-user-modify:read-only;-webkit-user-select:all;-moz-user-select:all;user-select:all;width:8px!important}.mce-content-body .mce-item-anchor:not(:empty){background-position-x:2px;display:inline-block;padding-left:12px}.mce-content-body .mce-item-anchor[data-mce-selected]{outline-offset:1px}.tox-comments-visible .tox-comment[contenteditable=false]:not([data-mce-selected]),.tox-comments-visible span.tox-comment img:not([data-mce-selected]),.tox-comments-visible span.tox-comment>audio:not([data-mce-selected]),.tox-comments-visible span.tox-comment>video:not([data-mce-selected]),.tox-comments-visible span.tox-comment span.mce-preview-object:not([data-mce-selected]){outline:3px solid #ffe89d}.tox-comments-visible .tox-comment[contenteditable=false][data-mce-annotation-active=true]:not([data-mce-selected]){outline:3px solid #fed635}.tox-comments-visible span.tox-comment[data-mce-annotation-active=true] img:not([data-mce-selected]),.tox-comments-visible span.tox-comment[data-mce-annotation-active=true]>audio:not([data-mce-selected]),.tox-comments-visible span.tox-comment[data-mce-annotation-active=true]>video:not([data-mce-selected]),.tox-comments-visible span.tox-comment[data-mce-annotation-active=true] span.mce-preview-object:not([data-mce-selected]){outline:3px solid #fed635}.tox-comments-visible span.tox-comment:not([data-mce-selected]){background-color:#ffe89d;outline:none}.tox-comments-visible span.tox-comment[data-mce-annotation-active=true]:not([data-mce-selected=inline-boundary]){background-color:#fed635}.tox-checklist>li:not(.tox-checklist--hidden){list-style:none;margin:.25em 0}.tox-checklist>li:not(.tox-checklist--hidden):before{content:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-unchecked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2215%22%20height%3D%2215%22%20x%3D%22.5%22%20y%3D%22.5%22%20fill-rule%3D%22nonzero%22%20stroke%3D%22%234C4C4C%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A);cursor:pointer;height:1em;margin-left:-1.5em;margin-top:.125em;position:absolute;width:1em}.tox-checklist li:not(.tox-checklist--hidden).tox-checklist--checked:before{content:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20id%3D%22checklist-checked%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20id%3D%22Rectangle%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%234099FF%22%20fill-rule%3D%22nonzero%22%20rx%3D%222%22%2F%3E%3Cpath%20id%3D%22Path%22%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M11.5703186%2C3.14417309%20C11.8516238%2C2.73724603%2012.4164781%2C2.62829933%2012.83558%2C2.89774797%20C13.260121%2C3.17069355%2013.3759736%2C3.72932262%2013.0909105%2C4.14168582%20L7.7580587%2C11.8560195%20C7.43776896%2C12.3193404%206.76483983%2C12.3852142%206.35607322%2C11.9948725%20L3.02491697%2C8.8138662%20C2.66090143%2C8.46625845%202.65798871%2C7.89594698%203.01850234%2C7.54483354%20C3.373942%2C7.19866177%203.94940006%2C7.19592841%204.30829608%2C7.5386474%20L6.85276923%2C9.9684299%20L11.5703186%2C3.14417309%20Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%0A)}[dir=rtl] .tox-checklist>li:not(.tox-checklist--hidden):before{margin-left:0;margin-right:-1.5em}code[class*=language-],pre[class*=language-]{color:#000;background:none;text-shadow:0 1px white;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#9a6e3a;background:#ffffff80}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function,.token.class-name{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.mce-content-body{overflow-wrap:break-word;word-wrap:break-word}.mce-content-body .mce-visual-caret{background-color:#000;background-color:currentColor;position:absolute}.mce-content-body .mce-visual-caret-hidden{display:none}.mce-content-body *[data-mce-caret]{left:-1000px;margin:0;padding:0;position:absolute;right:auto;top:0}.mce-content-body .mce-offscreen-selection{left:-2000000px;max-width:1000000px;position:absolute}.mce-content-body *[contentEditable=false]{cursor:default}.mce-content-body *[contentEditable=true]{cursor:text}.tox-cursor-format-painter{cursor:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%0A%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M15%2C6%20C15%2C5.45%2014.55%2C5%2014%2C5%20L6%2C5%20C5.45%2C5%205%2C5.45%205%2C6%20L5%2C10%20C5%2C10.55%205.45%2C11%206%2C11%20L14%2C11%20C14.55%2C11%2015%2C10.55%2015%2C10%20L15%2C9%20L16%2C9%20L16%2C12%20L9%2C12%20L9%2C19%20C9%2C19.55%209.45%2C20%2010%2C20%20L11%2C20%20C11.55%2C20%2012%2C19.55%2012%2C19%20L12%2C14%20L18%2C14%20L18%2C7%20L15%2C7%20L15%2C6%20Z%22%2F%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23000%22%20fill-rule%3D%22nonzero%22%20d%3D%22M1%2C1%20L8.25%2C1%20C8.66421356%2C1%209%2C1.33578644%209%2C1.75%20L9%2C1.75%20C9%2C2.16421356%208.66421356%2C2.5%208.25%2C2.5%20L2.5%2C2.5%20L2.5%2C8.25%20C2.5%2C8.66421356%202.16421356%2C9%201.75%2C9%20L1.75%2C9%20C1.33578644%2C9%201%2C8.66421356%201%2C8.25%20L1%2C1%20Z%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A),default}div.mce-footnotes hr{margin-inline-end:auto;margin-inline-start:0;width:25%}div.mce-footnotes li>a.mce-footnotes-backlink{text-decoration:none}@media print{sup.mce-footnote a{color:#000;text-decoration:none}div.mce-footnotes{break-inside:avoid;width:100%}div.mce-footnotes li>a.mce-footnotes-backlink{display:none}}.mce-content-body figure.align-left{float:left}.mce-content-body figure.align-right{float:right}.mce-content-body figure.image.align-center{display:table;margin-left:auto;margin-right:auto}.mce-preview-object{border:1px solid gray;display:inline-block;line-height:0;margin:0 2px;position:relative}.mce-preview-object .mce-shim{background:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);height:100%;left:0;position:absolute;top:0;width:100%}.mce-preview-object[data-mce-selected="2"] .mce-shim{display:none}.mce-content-body .mce-mergetag{cursor:default!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mce-content-body .mce-mergetag:hover{background-color:#006ce71a}.mce-content-body .mce-mergetag-affix{background-color:#006ce71a;color:#006ce7}.mce-object{background:transparent url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%203h16a1%201%200%200%201%201%201v16a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V4a1%201%200%200%201%201-1zm1%202v14h14V5H5zm4.79%202.565l5.64%204.028a.5.5%200%200%201%200%20.814l-5.64%204.028a.5.5%200%200%201-.79-.407V7.972a.5.5%200%200%201%20.79-.407z%22%2F%3E%3C%2Fsvg%3E%0A) no-repeat center;border:1px dashed #aaa}.mce-pagebreak{border:1px dashed #aaa;cursor:default;display:block;height:5px;margin-top:15px;page-break-before:always;width:100%}@media print{.mce-pagebreak{border:0}}.tiny-pageembed .mce-shim{background:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);height:100%;left:0;position:absolute;top:0;width:100%}.tiny-pageembed[data-mce-selected="2"] .mce-shim{display:none}.tiny-pageembed{display:inline-block;position:relative}.tiny-pageembed--21by9,.tiny-pageembed--16by9,.tiny-pageembed--4by3,.tiny-pageembed--1by1{display:block;overflow:hidden;padding:0;position:relative;width:100%}.tiny-pageembed--21by9{padding-top:42.857143%}.tiny-pageembed--16by9{padding-top:56.25%}.tiny-pageembed--4by3{padding-top:75%}.tiny-pageembed--1by1{padding-top:100%}.tiny-pageembed--21by9 iframe,.tiny-pageembed--16by9 iframe,.tiny-pageembed--4by3 iframe,.tiny-pageembed--1by1 iframe{border:0;height:100%;left:0;position:absolute;top:0;width:100%}.mce-content-body[data-mce-placeholder]{position:relative}.mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before{color:#222f3eb3;content:attr(data-mce-placeholder);position:absolute}.mce-content-body:not([dir=rtl])[data-mce-placeholder]:not(.mce-visualblocks):before{left:1px}.mce-content-body[dir=rtl][data-mce-placeholder]:not(.mce-visualblocks):before{right:1px}.mce-content-body div.mce-resizehandle{background-color:#4099ff;border-color:#4099ff;border-style:solid;border-width:1px;box-sizing:border-box;height:10px;position:absolute;width:10px;z-index:1298}.mce-content-body div.mce-resizehandle:hover{background-color:#4099ff}.mce-content-body div.mce-resizehandle:nth-of-type(1){cursor:nwse-resize}.mce-content-body div.mce-resizehandle:nth-of-type(2){cursor:nesw-resize}.mce-content-body div.mce-resizehandle:nth-of-type(3){cursor:nwse-resize}.mce-content-body div.mce-resizehandle:nth-of-type(4){cursor:nesw-resize}.mce-content-body .mce-resize-backdrop{z-index:10000}.mce-content-body .mce-clonedresizable{cursor:default;opacity:.5;outline:1px dashed black;position:absolute;z-index:10001}.mce-content-body .mce-clonedresizable.mce-resizetable-columns th,.mce-content-body .mce-clonedresizable.mce-resizetable-columns td{border:0}.mce-content-body .mce-resize-helper{background:#555;background:#000000bf;border:1px;border-radius:3px;color:#fff;display:none;font-family:sans-serif;font-size:12px;line-height:14px;margin:5px 10px;padding:5px;position:absolute;white-space:nowrap;z-index:10002}.tox-rtc-user-selection{position:relative}.tox-rtc-user-cursor{bottom:0;cursor:default;position:absolute;top:0;width:2px}.tox-rtc-user-cursor:before{background-color:inherit;border-radius:50%;content:"";display:block;height:8px;position:absolute;right:-3px;top:-3px;width:8px}.tox-rtc-user-cursor:hover:after{background-color:inherit;border-radius:100px;box-sizing:border-box;color:#fff;content:attr(data-user);display:block;font-size:12px;font-weight:700;left:-5px;min-height:8px;min-width:8px;padding:0 12px;position:absolute;top:-11px;white-space:nowrap;z-index:1000}.tox-rtc-user-selection--1 .tox-rtc-user-cursor{background-color:#2dc26b}.tox-rtc-user-selection--2 .tox-rtc-user-cursor{background-color:#e03e2d}.tox-rtc-user-selection--3 .tox-rtc-user-cursor{background-color:#f1c40f}.tox-rtc-user-selection--4 .tox-rtc-user-cursor{background-color:#3598db}.tox-rtc-user-selection--5 .tox-rtc-user-cursor{background-color:#b96ad9}.tox-rtc-user-selection--6 .tox-rtc-user-cursor{background-color:#e67e23}.tox-rtc-user-selection--7 .tox-rtc-user-cursor{background-color:#aaa69d}.tox-rtc-user-selection--8 .tox-rtc-user-cursor{background-color:#f368e0}.tox-rtc-remote-image{background:#eaeaea url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2236%22%20height%3D%2212%22%20viewBox%3D%220%200%2036%2012%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%223%22%20fill%3D%22rgba(0%2C%200%2C%200%2C%20.2)%22%3E%0A%20%20%20%20%3Canimate%20attributeName%3D%22r%22%20values%3D%223%3B5%3B3%22%20calcMode%3D%22linear%22%20dur%3D%221s%22%20repeatCount%3D%22indefinite%22%20%2F%3E%0A%20%20%3C%2Fcircle%3E%0A%20%20%3Ccircle%20cx%3D%2218%22%20cy%3D%226%22%20r%3D%223%22%20fill%3D%22rgba(0%2C%200%2C%200%2C%20.2)%22%3E%0A%20%20%20%20%3Canimate%20attributeName%3D%22r%22%20values%3D%223%3B5%3B3%22%20calcMode%3D%22linear%22%20begin%3D%22.33s%22%20dur%3D%221s%22%20repeatCount%3D%22indefinite%22%20%2F%3E%0A%20%20%3C%2Fcircle%3E%0A%20%20%3Ccircle%20cx%3D%2230%22%20cy%3D%226%22%20r%3D%223%22%20fill%3D%22rgba(0%2C%200%2C%200%2C%20.2)%22%3E%0A%20%20%20%20%3Canimate%20attributeName%3D%22r%22%20values%3D%223%3B5%3B3%22%20calcMode%3D%22linear%22%20begin%3D%22.66s%22%20dur%3D%221s%22%20repeatCount%3D%22indefinite%22%20%2F%3E%0A%20%20%3C%2Fcircle%3E%0A%3C%2Fsvg%3E%0A") no-repeat center center;border:1px solid #ccc;min-height:240px;min-width:320px}.mce-match-marker{background:#aaa;color:#fff}.mce-match-marker-selected{background:#39f;color:#fff}.mce-match-marker-selected::-moz-selection{background:#39f;color:#fff}.mce-match-marker-selected::selection{background:#39f;color:#fff}.mce-content-body img[data-mce-selected],.mce-content-body video[data-mce-selected],.mce-content-body audio[data-mce-selected],.mce-content-body object[data-mce-selected],.mce-content-body embed[data-mce-selected],.mce-content-body table[data-mce-selected],.mce-content-body details[data-mce-selected]{outline:3px solid #b4d7ff}.mce-content-body hr[data-mce-selected]{outline:3px solid #b4d7ff;outline-offset:1px}.mce-content-body *[contentEditable=false] *[contentEditable=true]:focus{outline:3px solid #b4d7ff}.mce-content-body *[contentEditable=false] *[contentEditable=true]:hover{outline:3px solid #b4d7ff}.mce-content-body *[contentEditable=false][data-mce-selected]{cursor:not-allowed;outline:3px solid #b4d7ff}.mce-content-body.mce-content-readonly *[contentEditable=true]:focus,.mce-content-body.mce-content-readonly *[contentEditable=true]:hover{outline:none}.mce-content-body *[data-mce-selected=inline-boundary]{background-color:#b4d7ff}.mce-content-body .mce-edit-focus{outline:3px solid #b4d7ff}.mce-content-body td[data-mce-selected],.mce-content-body th[data-mce-selected]{position:relative}.mce-content-body td[data-mce-selected]::-moz-selection,.mce-content-body th[data-mce-selected]::-moz-selection{background:none}.mce-content-body td[data-mce-selected]::selection,.mce-content-body th[data-mce-selected]::selection{background:none}.mce-content-body td[data-mce-selected] *,.mce-content-body th[data-mce-selected] *{outline:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mce-content-body td[data-mce-selected]:after,.mce-content-body th[data-mce-selected]:after{background-color:#b4d7ffb3;border:1px solid rgba(180,215,255,.7);bottom:-1px;content:"";left:-1px;mix-blend-mode:multiply;position:absolute;right:-1px;top:-1px}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.mce-content-body td[data-mce-selected]:after,.mce-content-body th[data-mce-selected]:after{border-color:#0054b4b3}}.mce-content-body img[data-mce-selected]::-moz-selection{background:none}.mce-content-body img[data-mce-selected]::selection{background:none}.ephox-snooker-resizer-bar{background-color:#b4d7ff;opacity:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ephox-snooker-resizer-cols{cursor:col-resize}.ephox-snooker-resizer-rows{cursor:row-resize}.ephox-snooker-resizer-bar.ephox-snooker-resizer-bar-dragging{opacity:1}.mce-spellchecker-word{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%23ff0000'%20fill%3D'none'%20stroke-linecap%3D'round'%20stroke-opacity%3D'.75'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position:0 calc(100% + 1px);background-repeat:repeat-x;background-size:auto 6px;cursor:default;height:2rem}.mce-spellchecker-grammar{background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D'4'%20height%3D'4'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20stroke%3D'%2300A835'%20fill%3D'none'%20stroke-linecap%3D'round'%20d%3D'M0%203L2%201%204%203'%2F%3E%3C%2Fsvg%3E%0A");background-position:0 calc(100% + 1px);background-repeat:repeat-x;background-size:auto 6px;cursor:default}.mce-toc{border:1px solid gray}.mce-toc h2{margin:4px}.mce-toc ul>li{list-style-type:none}[data-mce-block]{display:block}table[style*="border-width: 0px"],.mce-item-table:not([border]),.mce-item-table[border="0"],table[style*="border-width: 0px"] td,.mce-item-table:not([border]) td,.mce-item-table[border="0"] td,table[style*="border-width: 0px"] th,.mce-item-table:not([border]) th,.mce-item-table[border="0"] th,table[style*="border-width: 0px"] caption,.mce-item-table:not([border]) caption,.mce-item-table[border="0"] caption{border:1px dashed #bbb}.mce-visualblocks p,.mce-visualblocks h1,.mce-visualblocks h2,.mce-visualblocks h3,.mce-visualblocks h4,.mce-visualblocks h5,.mce-visualblocks h6,.mce-visualblocks div:not([data-mce-bogus]),.mce-visualblocks section,.mce-visualblocks article,.mce-visualblocks blockquote,.mce-visualblocks address,.mce-visualblocks pre,.mce-visualblocks figure,.mce-visualblocks figcaption,.mce-visualblocks hgroup,.mce-visualblocks aside,.mce-visualblocks ul,.mce-visualblocks ol,.mce-visualblocks dl{background-repeat:no-repeat;border:1px dashed #bbb;margin-left:3px;padding-top:10px}.mce-visualblocks p{background-image:url(data:image/gif;base64,R0lGODlhCQAJAJEAAAAAAP///7u7u////yH5BAEAAAMALAAAAAAJAAkAAAIQnG+CqCN/mlyvsRUpThG6AgA7)}.mce-visualblocks h1{background-image:url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGu1JuxHoAfRNRW3TWXyF2YiRUAOw==)}.mce-visualblocks h2{background-image:url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8Hybbx4oOuqgTynJd6bGlWg3DkJzoaUAAAOw==)}.mce-visualblocks h3{background-image:url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIZjI8Hybbx4oOuqgTynJf2Ln2NOHpQpmhAAQA7)}.mce-visualblocks h4{background-image:url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxInR0zqeAdhtJlXwV1oCll2HaWgAAOw==)}.mce-visualblocks h5{background-image:url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjane4iq5GlW05GgIkIZUAAAOw==)}.mce-visualblocks h6{background-image:url(data:image/gif;base64,R0lGODlhDgAKAIABALu7u////yH5BAEAAAEALAAAAAAOAAoAAAIajI8HybbxIoiuwjan04jep1iZ1XRlAo5bVgAAOw==)}.mce-visualblocks div:not([data-mce-bogus]){background-image:url(data:image/gif;base64,R0lGODlhEgAKAIABALu7u////yH5BAEAAAEALAAAAAASAAoAAAIfjI9poI0cgDywrhuxfbrzDEbQM2Ei5aRjmoySW4pAAQA7)}.mce-visualblocks section{background-image:url(data:image/gif;base64,R0lGODlhKAAKAIABALu7u////yH5BAEAAAEALAAAAAAoAAoAAAI5jI+pywcNY3sBWHdNrplytD2ellDeSVbp+GmWqaDqDMepc8t17Y4vBsK5hDyJMcI6KkuYU+jpjLoKADs=)}.mce-visualblocks article{background-image:url(data:image/gif;base64,R0lGODlhKgAKAIABALu7u////yH5BAEAAAEALAAAAAAqAAoAAAI6jI+pywkNY3wG0GBvrsd2tXGYSGnfiF7ikpXemTpOiJScasYoDJJrjsG9gkCJ0ag6KhmaIe3pjDYBBQA7)}.mce-visualblocks blockquote{background-image:url(data:image/gif;base64,R0lGODlhPgAKAIABALu7u////yH5BAEAAAEALAAAAAA+AAoAAAJPjI+py+0Knpz0xQDyuUhvfoGgIX5iSKZYgq5uNL5q69asZ8s5rrf0yZmpNkJZzFesBTu8TOlDVAabUyatguVhWduud3EyiUk45xhTTgMBBQA7)}.mce-visualblocks address{background-image:url(data:image/gif;base64,R0lGODlhLQAKAIABALu7u////yH5BAEAAAEALAAAAAAtAAoAAAI/jI+pywwNozSP1gDyyZcjb3UaRpXkWaXmZW4OqKLhBmLs+K263DkJK7OJeifh7FicKD9A1/IpGdKkyFpNmCkAADs=)}.mce-visualblocks pre{background-image:url(data:image/gif;base64,R0lGODlhFQAKAIABALu7uwAAACH5BAEAAAEALAAAAAAVAAoAAAIjjI+ZoN0cgDwSmnpz1NCueYERhnibZVKLNnbOq8IvKpJtVQAAOw==)}.mce-visualblocks figure{background-image:url(data:image/gif;base64,R0lGODlhJAAKAIAAALu7u////yH5BAEAAAEALAAAAAAkAAoAAAI0jI+py+2fwAHUSFvD3RlvG4HIp4nX5JFSpnZUJ6LlrM52OE7uSWosBHScgkSZj7dDKnWAAgA7)}.mce-visualblocks figcaption{border:1px dashed #bbb}.mce-visualblocks hgroup{background-image:url(data:image/gif;base64,R0lGODlhJwAKAIABALu7uwAAACH5BAEAAAEALAAAAAAnAAoAAAI3jI+pywYNI3uB0gpsRtt5fFnfNZaVSYJil4Wo03Hv6Z62uOCgiXH1kZIIJ8NiIxRrAZNMZAtQAAA7)}.mce-visualblocks aside{background-image:url(data:image/gif;base64,R0lGODlhHgAKAIABAKqqqv///yH5BAEAAAEALAAAAAAeAAoAAAItjI+pG8APjZOTzgtqy7I3f1yehmQcFY4WKZbqByutmW4aHUd6vfcVbgudgpYCADs=)}.mce-visualblocks ul{background-image:url(data:image/gif;base64,R0lGODlhDQAKAIAAALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybGuYnqUVSjvw26DzzXiqIDlVwAAOw==)}.mce-visualblocks ol{background-image:url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybH6HHt0qourxC6CvzXieHyeWQAAOw==)}.mce-visualblocks dl{background-image:url(data:image/gif;base64,R0lGODlhDQAKAIABALu7u////yH5BAEAAAEALAAAAAANAAoAAAIXjI8GybEOnmOvUoWznTqeuEjNSCqeGRUAOw==)}.mce-visualblocks:not([dir=rtl]) p,.mce-visualblocks:not([dir=rtl]) h1,.mce-visualblocks:not([dir=rtl]) h2,.mce-visualblocks:not([dir=rtl]) h3,.mce-visualblocks:not([dir=rtl]) h4,.mce-visualblocks:not([dir=rtl]) h5,.mce-visualblocks:not([dir=rtl]) h6,.mce-visualblocks:not([dir=rtl]) div:not([data-mce-bogus]),.mce-visualblocks:not([dir=rtl]) section,.mce-visualblocks:not([dir=rtl]) article,.mce-visualblocks:not([dir=rtl]) blockquote,.mce-visualblocks:not([dir=rtl]) address,.mce-visualblocks:not([dir=rtl]) pre,.mce-visualblocks:not([dir=rtl]) figure,.mce-visualblocks:not([dir=rtl]) figcaption,.mce-visualblocks:not([dir=rtl]) hgroup,.mce-visualblocks:not([dir=rtl]) aside,.mce-visualblocks:not([dir=rtl]) ul,.mce-visualblocks:not([dir=rtl]) ol,.mce-visualblocks:not([dir=rtl]) dl{margin-left:3px}.mce-visualblocks[dir=rtl] p,.mce-visualblocks[dir=rtl] h1,.mce-visualblocks[dir=rtl] h2,.mce-visualblocks[dir=rtl] h3,.mce-visualblocks[dir=rtl] h4,.mce-visualblocks[dir=rtl] h5,.mce-visualblocks[dir=rtl] h6,.mce-visualblocks[dir=rtl] div:not([data-mce-bogus]),.mce-visualblocks[dir=rtl] section,.mce-visualblocks[dir=rtl] article,.mce-visualblocks[dir=rtl] blockquote,.mce-visualblocks[dir=rtl] address,.mce-visualblocks[dir=rtl] pre,.mce-visualblocks[dir=rtl] figure,.mce-visualblocks[dir=rtl] figcaption,.mce-visualblocks[dir=rtl] hgroup,.mce-visualblocks[dir=rtl] aside,.mce-visualblocks[dir=rtl] ul,.mce-visualblocks[dir=rtl] ol,.mce-visualblocks[dir=rtl] dl{background-position-x:right;margin-right:3px}.mce-nbsp,.mce-shy{background:#aaa}.mce-shy:after{content:"-"}body{font-family:sans-serif}table{border-collapse:collapse}`,customcss='.mce-content-body .img{max-width:100%;height:auto}.mce-content-body{font-size:16px;line-height:20px}.mce-content-body p{margin-bottom:14px}.mce-content-body p:last-child{margin-bottom:0}.mce-content-body ul{padding:0 0 0 16px;list-style:none outside none}.mce-content-body li:before{content:"—";opacity:.5;font-size:12px;padding-right:6px;vertical-align:10%}.mce-content-body li{list-style:none;padding:0}';(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(Ee,Ke,ht)=>{var At;return ht(Ee,Ke.prototype)?!0:((At=Ee.constructor)===null||At===void 0?void 0:At.name)===Ke.name},n=Ee=>{const Ke=typeof Ee;return Ee===null?"null":Ke==="object"&&Array.isArray(Ee)?"array":Ke==="object"&&e(Ee,String,(ht,At)=>At.isPrototypeOf(ht))?"string":Ke},r=Ee=>Ke=>n(Ke)===Ee,c=Ee=>Ke=>typeof Ke===Ee,u=Ee=>Ke=>Ee===Ke,h=r("string"),p=r("object"),b=r("array"),y=u(null),k=c("boolean"),A=Ee=>Ee==null,R=Ee=>!A(Ee),N=c("function"),F=(Ee,Ke)=>{if(b(Ee)){for(let ht=0,At=Ee.length;ht{},W=Ee=>()=>Ee,J=(Ee,Ke)=>Ee===Ke;class te{constructor(Ke,ht){this.tag=Ke,this.value=ht}static some(Ke){return new te(!0,Ke)}static none(){return te.singletonNone}fold(Ke,ht){return this.tag?ht(this.value):Ke()}isSome(){return this.tag}isNone(){return!this.tag}map(Ke){return this.tag?te.some(Ke(this.value)):te.none()}bind(Ke){return this.tag?Ke(this.value):te.none()}exists(Ke){return this.tag&&Ke(this.value)}forall(Ke){return!this.tag||Ke(this.value)}filter(Ke){return!this.tag||Ke(this.value)?this:te.none()}getOr(Ke){return this.tag?this.value:Ke}or(Ke){return this.tag?this:Ke}getOrThunk(Ke){return this.tag?this.value:Ke()}orThunk(Ke){return this.tag?this:Ke()}getOrDie(Ke){if(this.tag)return this.value;throw new Error(Ke??"Called getOrDie on None")}static from(Ke){return R(Ke)?te.some(Ke):te.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Ke){this.tag&&Ke(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}te.singletonNone=new te(!1);const j=Array.prototype.indexOf,ae=Array.prototype.push,fe=(Ee,Ke)=>j.call(Ee,Ke),_e=(Ee,Ke)=>fe(Ee,Ke)>-1,ne=(Ee,Ke)=>{const ht=Ee.length,At=new Array(ht);for(let fn=0;fn{for(let ht=0,At=Ee.length;ht(Se(Ee,(At,fn)=>{ht=Ke(ht,At,fn)}),ht),Be=Ee=>{const Ke=[];for(let ht=0,At=Ee.length;htBe(ne(Ee,Ke)),Oe=(Ee,Ke)=>{for(let ht=0;htEe.exists(At=>ht(At,Ke)),Tt=Ee=>{const Ke=[],ht=At=>{Ke.push(At)};for(let At=0;AtEe?te.some(Ke):te.none(),q=Ee=>Ke=>Ke.options.get(Ee),Le=Ee=>{const Ke=Ee.options.register;Ke("link_assume_external_targets",{processor:ht=>{const At=h(ht)||k(ht);return At?ht===!0?{value:1,valid:At}:ht==="http"||ht==="https"?{value:ht,valid:At}:{value:0,valid:At}:{valid:!1,message:"Must be a string or a boolean."}},default:!1}),Ke("link_context_toolbar",{processor:"boolean",default:!1}),Ke("link_list",{processor:ht=>h(ht)||N(ht)||F(ht,p)}),Ke("link_default_target",{processor:"string"}),Ke("link_default_protocol",{processor:"string",default:"https"}),Ke("link_target_list",{processor:ht=>k(ht)||F(ht,p),default:!0}),Ke("link_rel_list",{processor:"object[]",default:[]}),Ke("link_class_list",{processor:"object[]",default:[]}),Ke("link_title",{processor:"boolean",default:!0}),Ke("allow_unsafe_link_target",{processor:"boolean",default:!1}),Ke("link_quicklink",{processor:"boolean",default:!1})},je=q("link_assume_external_targets"),mn=q("link_context_toolbar"),Rt=q("link_list"),Ue=q("link_default_target"),ct=q("link_default_protocol"),dn=q("link_target_list"),Zt=q("link_rel_list"),rn=q("link_class_list"),Fe=q("link_title"),mt=q("allow_unsafe_link_target"),de=q("link_quicklink");var Eo=tinymce.util.Tools.resolve("tinymce.util.Tools");const jn=Ee=>h(Ee.value)?Ee.value:"",Yn=Ee=>h(Ee.text)?Ee.text:h(Ee.title)?Ee.title:"",po=(Ee,Ke)=>{const ht=[];return Eo.each(Ee,At=>{const fn=Yn(At);if(At.menu!==void 0){const go=po(At.menu,Ke);ht.push({text:fn,items:go})}else{const go=Ke(At);ht.push({text:fn,value:go})}}),ht},cs=(Ee=jn)=>Ke=>te.from(Ke).map(ht=>po(ht,Ee)),pt={sanitize:Ee=>cs(jn)(Ee),sanitizeWith:cs,createUi:(Ee,Ke)=>ht=>({name:Ee,type:"listbox",label:Ke,items:ht}),getValue:jn},Ne=Object.keys,Nt=Object.hasOwnProperty,pn=(Ee,Ke)=>{const ht=Ne(Ee);for(let At=0,fn=ht.length;At(Ke,ht)=>{Ee[ht]=Ke},kn=(Ee,Ke,ht,At)=>{pn(Ee,(fn,go)=>{(Ke(fn,go)?ht:At)(fn,go)})},Dn=(Ee,Ke)=>{const ht={};return kn(Ee,Ke,xt(ht),V),ht},is=(Ee,Ke)=>Nt.call(Ee,Ke),Gn=(Ee,Ke)=>is(Ee,Ke)&&Ee[Ke]!==void 0&&Ee[Ke]!==null;var as=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker"),vr=tinymce.util.Tools.resolve("tinymce.util.URI");const Ns=Ee=>R(Ee)&&Ee.nodeName.toLowerCase()==="a",Vs=Ee=>Ns(Ee)&&!!vs(Ee),Ts=(Ee,Ke)=>{if(Ee.collapsed)return[];{const ht=Ee.cloneContents(),At=ht.firstChild,fn=new as(At,ht),go=[];let ar=At;do Ke(ar)&&go.push(ar);while(ar=fn.next());return go}},Ki=Ee=>/^\w+:/i.test(Ee),vs=Ee=>{var Ke,ht;return(ht=(Ke=Ee.getAttribute("data-mce-href"))!==null&&Ke!==void 0?Ke:Ee.getAttribute("href"))!==null&&ht!==void 0?ht:""},ms=(Ee,Ke)=>{const ht=["noopener"],At=Ee?Ee.split(/\s+/):[],fn=Io=>Eo.trim(Io.sort().join(" ")),go=Io=>(Io=ar(Io),Io.length>0?Io.concat(ht):ht),ar=Io=>Io.filter(Mr=>Eo.inArray(ht,Mr)===-1),Ko=Ke?go(At):ar(At);return Ko.length>0?fn(Ko):""},dr=Ee=>Ee.replace(/\uFEFF/g,""),Oo=(Ee,Ke)=>(Ke=Ke||ws(Ee.selection.getRng())[0]||Ee.selection.getNode(),ns(Ke)?te.from(Ee.dom.select("a[href]",Ke)[0]):te.from(Ee.dom.getParent(Ke,"a[href]"))),wo=(Ee,Ke)=>Oo(Ee,Ke).isSome(),Gs=(Ee,Ke)=>{const ht=Ke.fold(()=>Ee.getContent({format:"text"}),At=>At.innerText||At.textContent||"");return dr(ht)},ws=Ee=>Ts(Ee,Vs),Pi=Ee=>Eo.grep(Ee,Vs),ts=Ee=>Pi(Ee).length>0,Qi=Ee=>ws(Ee).length>0,nn=Ee=>{const Ke=Ee.schema.getTextInlineElements(),ht=go=>go.nodeType===1&&!Ns(go)&&!is(Ke,go.nodeName.toLowerCase());if(Oo(Ee).exists(go=>go.hasAttribute("data-mce-block")))return!1;const fn=Ee.selection.getRng();return fn.collapsed?!0:Ts(fn,ht).length===0},ns=Ee=>R(Ee)&&Ee.nodeName==="FIGURE"&&/\bimage\b/i.test(Ee.className),Xr=Ee=>De(["title","rel","class","target"],(ht,At)=>(Ee[At].each(fn=>{ht[At]=fn.length>0?fn:null}),ht),{href:Ee.href}),Qe=(Ee,Ke)=>(Ke==="http"||Ke==="https")&&!Ki(Ee)?Ke+"://"+Ee:Ee,Ye=(Ee,Ke)=>{const ht={...Ke};if(Zt(Ee).length===0&&!mt(Ee)){const At=ms(ht.rel,ht.target==="_blank");ht.rel=At||null}return te.from(ht.target).isNone()&&dn(Ee)===!1&&(ht.target=Ue(Ee)),ht.href=Qe(ht.href,je(Ee)),ht},wt=(Ee,Ke,ht,At)=>{ht.each(fn=>{is(Ke,"innerText")?Ke.innerText=fn:Ke.textContent=fn}),Ee.dom.setAttribs(Ke,At),Ee.selection.select(Ke)},Ft=(Ee,Ke,ht,At)=>{const fn=Ee.dom;ns(Ke)?mr(fn,Ke,At):ht.fold(()=>{Ee.execCommand("mceInsertLink",!1,At)},go=>{Ee.insertContent(fn.createHTML("a",At,fn.encode(go)))})},Rn=(Ee,Ke,ht)=>{const At=Ee.selection.getNode(),fn=Oo(Ee,At),go=Ye(Ee,Xr(ht));Ee.undoManager.transact(()=>{ht.href===Ke.href&&Ke.attach(),fn.fold(()=>{Ft(Ee,At,ht.text,go)},ar=>{Ee.focus(),wt(Ee,ar,ht.text,go)})})},Xn=Ee=>{const Ke=Ee.dom,ht=Ee.selection,At=ht.getBookmark(),fn=ht.getRng().cloneRange(),go=Ke.getParent(fn.startContainer,"a[href]",Ee.getBody()),ar=Ke.getParent(fn.endContainer,"a[href]",Ee.getBody());go&&fn.setStartBefore(go),ar&&fn.setEndAfter(ar),ht.setRng(fn),Ee.execCommand("unlink"),ht.moveToBookmark(At)},ro=Ee=>{Ee.undoManager.transact(()=>{const Ke=Ee.selection.getNode();ns(Ke)?sr(Ee,Ke):Xn(Ee),Ee.focus()})},an=Ee=>{const{class:Ke,href:ht,rel:At,target:fn,text:go,title:ar}=Ee;return Dn({class:Ke.getOrNull(),href:ht,rel:At.getOrNull(),target:fn.getOrNull(),text:go.getOrNull(),title:ar.getOrNull()},(Ko,Io)=>y(Ko)===!1)},Do=(Ee,Ke)=>{const ht=Ee.options.get,At={allow_html_data_urls:ht("allow_html_data_urls"),allow_script_urls:ht("allow_script_urls"),allow_svg_data_urls:ht("allow_svg_data_urls")},fn=Ke.href;return{...Ke,href:vr.isDomSafe(fn,"a",At)?fn:""}},io=(Ee,Ke,ht)=>{const At=Do(Ee,ht);Ee.hasPlugin("rtc",!0)?Ee.execCommand("createlink",!1,an(At)):Rn(Ee,Ke,At)},Wo=Ee=>{Ee.hasPlugin("rtc",!0)?Ee.execCommand("unlink"):ro(Ee)},sr=(Ee,Ke)=>{var ht;const At=Ee.dom.select("img",Ke)[0];if(At){const fn=Ee.dom.getParents(At,"a[href]",Ke)[0];fn&&((ht=fn.parentNode)===null||ht===void 0||ht.insertBefore(At,fn),Ee.dom.remove(fn))}},mr=(Ee,Ke,ht)=>{var At;const fn=Ee.select("img",Ke)[0];if(fn){const go=Ee.create("a",ht);(At=fn.parentNode)===null||At===void 0||At.insertBefore(go,fn),go.appendChild(fn)}},Ks=Ee=>Gn(Ee,"items"),pr=(Ee,Ke)=>Oe(Ke,ht=>Ks(ht)?pr(Ee,ht.items):St(ht.value===Ee,ht)),Di=(Ee,Ke,ht,At)=>{const fn=At[Ke],go=Ee.length>0;return fn!==void 0?pr(fn,ht).map(ar=>({url:{value:ar.value,meta:{text:go?Ee:ar.text,attach:V}},text:go?Ee:ar.text})):te.none()},cc=(Ee,Ke)=>Ke==="link"?Ee.link:Ke==="anchor"?Ee.anchor:te.none(),Ge={init:(Ee,Ke)=>{const ht={text:Ee.text,title:Ee.title},At=Io=>{var Mr;return St(ht.title.length<=0,te.from((Mr=Io.meta)===null||Mr===void 0?void 0:Mr.title).getOr(""))},fn=Io=>{var Mr;return St(ht.text.length<=0,te.from((Mr=Io.meta)===null||Mr===void 0?void 0:Mr.text).getOr(Io.value))},go=Io=>{const Mr=fn(Io.url),Ss=At(Io.url);return Mr.isSome()||Ss.isSome()?te.some({...Mr.map(si=>({text:si})).getOr({}),...Ss.map(si=>({title:si})).getOr({})}):te.none()},ar=(Io,Mr)=>{const Ss=cc(Ke,Mr).getOr([]);return Di(ht.text,Mr,Ss,Io)};return{onChange:(Io,Mr)=>{const Ss=Mr.name;return Ss==="url"?go(Io()):_e(["anchor","link"],Ss)?ar(Io(),Ss):((Ss==="text"||Ss==="title")&&(ht[Ss]=Io()[Ss]),te.none())}}},getDelta:Di};var Xe=tinymce.util.Tools.resolve("tinymce.util.Delay");const $t=(Ee,Ke,ht)=>{const At=Ee.selection.getRng();Xe.setEditorTimeout(Ee,()=>{Ee.windowManager.confirm(Ke,fn=>{Ee.selection.setRng(At),ht(fn)})})},Qt=Ee=>{const Ke=Ee.href;return Ke.indexOf("@")>0&&Ke.indexOf("/")===-1&&Ke.indexOf("mailto:")===-1?te.some({message:"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",preprocess:At=>({...At,href:"mailto:"+Ke})}):te.none()},eo=(Ee,Ke)=>ht=>{const At=ht.href;return Ee===1&&!Ki(At)||Ee===0&&/^\s*www(\.|\d\.)/i.test(At)?te.some({message:`The URL you entered seems to be an external link. Do you want to add the required ${Ke}:// prefix?`,preprocess:go=>({...go,href:Ke+"://"+At})}):te.none()},qo={preprocess:(Ee,Ke)=>Oe([Qt,eo(je(Ee),ct(Ee))],ht=>ht(Ke)).fold(()=>Promise.resolve(Ke),ht=>new Promise(At=>{$t(Ee,ht.message,fn=>{At(fn?ht.preprocess(Ke):Ke)})}))},nt={getAnchors:Ee=>{const Ke=Ee.dom.select("a:not([href])"),ht=Te(Ke,At=>{const fn=At.name||At.id;return fn?[{text:fn,value:"#"+fn}]:[]});return ht.length>0?te.some([{text:"None",value:""}].concat(ht)):te.none()}},jr={getClasses:Ee=>{const Ke=rn(Ee);return Ke.length>0?pt.sanitize(Ke):te.none()}},Oi=Ee=>{try{return te.some(JSON.parse(Ee))}catch{return te.none()}},zs={getLinks:Ee=>{const Ke=At=>Ee.convertURL(At.value||At.url||"","href"),ht=Rt(Ee);return new Promise(At=>{h(ht)?fetch(ht).then(fn=>fn.ok?fn.text().then(Oi):Promise.reject()).then(At,()=>At(te.none())):N(ht)?ht(fn=>At(te.some(fn))):At(te.from(ht))}).then(At=>At.bind(pt.sanitizeWith(Ke)).map(fn=>fn.length>0?[{text:"None",value:""}].concat(fn):fn))}},ul={getRels:(Ee,Ke)=>{const ht=Zt(Ee);if(ht.length>0){const At=yt(Ke,"_blank"),fn=mt(Ee)===!1,go=Ko=>ms(pt.getValue(Ko),At);return(fn?pt.sanitizeWith(go):pt.sanitize)(ht)}return te.none()}},ga=[{text:"Current window",value:""},{text:"New window",value:"_blank"}],As={getTargets:Ee=>{const Ke=dn(Ee);return b(Ke)?pt.sanitize(Ke).orThunk(()=>te.some(ga)):Ke===!1?te.none():te.some(ga)}},rr=(Ee,Ke,ht)=>{const At=Ee.getAttrib(Ke,ht);return At!==null&&At.length>0?te.some(At):te.none()},Vi=(Ee,Ke)=>{const ht=Ee.dom,fn=nn(Ee)?te.some(Gs(Ee.selection,Ke)):te.none(),go=Ke.bind(Ss=>te.from(ht.getAttrib(Ss,"href"))),ar=Ke.bind(Ss=>te.from(ht.getAttrib(Ss,"target"))),Ko=Ke.bind(Ss=>rr(ht,Ss,"rel")),Io=Ke.bind(Ss=>rr(ht,Ss,"class")),Mr=Ke.bind(Ss=>rr(ht,Ss,"title"));return{url:go,text:fn,title:Mr,target:ar,rel:Ko,linkClass:Io}},Pl={collect:(Ee,Ke)=>zs.getLinks(Ee).then(ht=>{const At=Vi(Ee,Ke);return{anchor:At,catalogs:{targets:As.getTargets(Ee),rels:ul.getRels(Ee,At.target),classes:jr.getClasses(Ee),anchor:nt.getAnchors(Ee),link:ht},optNode:Ke,flags:{titleEnabled:Fe(Ee)}}})},Tc=(Ee,Ke)=>ht=>{const At=ht.getData();if(!At.url.value){Wo(Ee),ht.close();return}const fn=Ko=>te.from(At[Ko]).filter(Io=>!yt(Ke.anchor[Ko],Io)),go={href:At.url.value,text:fn("text"),target:fn("target"),rel:fn("rel"),class:fn("linkClass"),title:fn("title")},ar={href:At.url.value,attach:At.url.meta!==void 0&&At.url.meta.attach?At.url.meta.attach:V};qo.preprocess(Ee,go).then(Ko=>{io(Ee,ar,Ko)}),ht.close()},Ac=Ee=>{const Ke=Oo(Ee);return Pl.collect(Ee,Ke)},Ls=(Ee,Ke)=>{const ht=Ee.anchor,At=ht.url.getOr("");return{url:{value:At,meta:{original:{value:At}}},text:ht.text.getOr(""),title:ht.title.getOr(""),anchor:At,link:At,rel:ht.rel.getOr(""),target:ht.target.or(Ke).getOr(""),linkClass:ht.linkClass.getOr("")}},Ji=(Ee,Ke,ht)=>{const At=[{name:"url",type:"urlinput",filetype:"file",label:"URL",picker_text:"Browse links"}],fn=Ee.anchor.text.map(()=>({name:"text",type:"input",label:"Text to display"})).toArray(),go=Ee.flags.titleEnabled?[{name:"title",type:"input",label:"Title"}]:[],ar=te.from(Ue(ht)),Ko=Ls(Ee,ar),Io=Ee.catalogs,Mr=Ge.init(Ko,Io);return{title:"Insert/Edit Link",size:"normal",body:{type:"panel",items:Be([At,fn,go,Tt([Io.anchor.map(pt.createUi("anchor","Anchors")),Io.rels.map(pt.createUi("rel","Rel")),Io.targets.map(pt.createUi("target","Open link in...")),Io.link.map(pt.createUi("link","Link list")),Io.classes.map(pt.createUi("linkClass","Class"))])])},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:Ko,onChange:(si,{name:Ga})=>{Mr.onChange(si.getData,{name:Ga}).each(dd=>{si.setData(dd)})},onSubmit:Ke}},ka=Ee=>{Ac(Ee).then(ht=>{const At=Tc(Ee,ht);return Ji(ht,At,Ee)}).then(ht=>{Ee.windowManager.open(ht)})},Gc=Ee=>{Ee.addCommand("mceLink",(Ke,ht)=>{(ht==null?void 0:ht.dialog)===!0||!de(Ee)?ka(Ee):Ee.dispatch("contexttoolbar-show",{toolbarKey:"quicklink"})})};var xa=tinymce.util.Tools.resolve("tinymce.util.VK");const Yr=(Ee,Ke)=>{document.body.appendChild(Ee),Ee.dispatchEvent(Ke),document.body.removeChild(Ee)},hr=Ee=>{const Ke=document.createElement("a");Ke.target="_blank",Ke.href=Ee,Ke.rel="noreferrer noopener";const ht=document.createEvent("MouseEvents");ht.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),Yr(Ke,ht)},ja=(Ee,Ke)=>Ee.dom.getParent(Ke,"a[href]"),bu=Ee=>ja(Ee,Ee.selection.getStart()),Us=Ee=>Ee.altKey===!0&&Ee.shiftKey===!1&&Ee.ctrlKey===!1&&Ee.metaKey===!1,Mi=(Ee,Ke)=>{if(Ke){const ht=vs(Ke);if(/^#/.test(ht)){const At=Ee.dom.select(ht);At.length&&Ee.selection.scrollIntoView(At[0],!0)}else hr(Ke.href)}},zi=Ee=>()=>{Ee.execCommand("mceLink",!1,{dialog:!0})},yi=Ee=>()=>{Mi(Ee,bu(Ee))},yl=Ee=>{Ee.on("click",Ke=>{const ht=ja(Ee,Ke.target);ht&&xa.metaKeyPressed(Ke)&&(Ke.preventDefault(),Mi(Ee,ht))}),Ee.on("keydown",Ke=>{if(!Ke.isDefaultPrevented()&&Ke.keyCode===13&&Us(Ke)){const ht=bu(Ee);ht&&(Ke.preventDefault(),Mi(Ee,ht))}})},ql=(Ee,Ke)=>(Ee.on("NodeChange",Ke),()=>Ee.off("NodeChange",Ke)),ba=Ee=>Ke=>{const ht=()=>{Ke.setActive(!Ee.mode.isReadOnly()&&wo(Ee,Ee.selection.getNode())),Ke.setEnabled(Ee.selection.isEditable())};return ht(),ql(Ee,ht)},Dl=Ee=>Ke=>{const ht=()=>{Ke.setEnabled(Ee.selection.isEditable())};return ht(),ql(Ee,ht)},Rl=Ee=>(Ee.selection.isCollapsed()?Pi(Ee.dom.getParents(Ee.selection.getStart())):ws(Ee.selection.getRng())).length===1,cd=Ee=>Ke=>{const ht=()=>Ke.setEnabled(Rl(Ee));return ht(),ql(Ee,ht)},Ml=Ee=>Ke=>{const ht=go=>ts(go)||Qi(Ee.selection.getRng()),At=Ee.dom.getParents(Ee.selection.getStart()),fn=go=>{Ke.setEnabled(ht(go)&&Ee.selection.isEditable())};return fn(At),ql(Ee,go=>fn(go.parents))},Qu=Ee=>{Ee.addShortcut("Meta+K","",()=>{Ee.execCommand("mceLink")})},Ya=Ee=>{Ee.ui.registry.addToggleButton("link",{icon:"link",tooltip:"Insert/edit link",onAction:zi(Ee),onSetup:ba(Ee)}),Ee.ui.registry.addButton("openlink",{icon:"new-tab",tooltip:"Open link",onAction:yi(Ee),onSetup:cd(Ee)}),Ee.ui.registry.addButton("unlink",{icon:"unlink",tooltip:"Remove link",onAction:()=>Wo(Ee),onSetup:Ml(Ee)})},uc=Ee=>{Ee.ui.registry.addMenuItem("openlink",{text:"Open link",icon:"new-tab",onAction:yi(Ee),onSetup:cd(Ee)}),Ee.ui.registry.addMenuItem("link",{icon:"link",text:"Link...",shortcut:"Meta+K",onSetup:Dl(Ee),onAction:zi(Ee)}),Ee.ui.registry.addMenuItem("unlink",{icon:"unlink",text:"Remove link",onAction:()=>Wo(Ee),onSetup:Ml(Ee)})},vu=Ee=>{const Ke="link unlink openlink",ht="link";Ee.ui.registry.addContextMenu("link",{update:At=>Ee.dom.isEditable(At)?ts(Ee.dom.getParents(At,"a"))?Ke:ht:""})},ud=Ee=>{const Ke=fn=>{fn.selection.collapse(!1)},ht=fn=>{const go=Ee.selection.getNode();return fn.setEnabled(wo(Ee,go)),V},At=fn=>{const go=Oo(Ee),ar=nn(Ee);if(go.isNone()&&ar){const Ko=Gs(Ee.selection,go);return St(Ko.length===0,fn)}else return te.none()};Ee.ui.registry.addContextForm("quicklink",{launch:{type:"contextformtogglebutton",icon:"link",tooltip:"Link",onSetup:ba(Ee)},label:"Link",predicate:fn=>mn(Ee)&&wo(Ee,fn),initValue:()=>Oo(Ee).fold(W(""),vs),commands:[{type:"contextformtogglebutton",icon:"link",tooltip:"Link",primary:!0,onSetup:fn=>{const go=Ee.selection.getNode();return fn.setActive(wo(Ee,go)),ba(Ee)(fn)},onAction:fn=>{const go=fn.getValue(),ar=At(go);io(Ee,{href:go,attach:V},{href:go,text:ar,title:te.none(),rel:te.none(),target:te.none(),class:te.none()}),Ke(Ee),fn.hide()}},{type:"contextformbutton",icon:"unlink",tooltip:"Remove link",onSetup:ht,onAction:fn=>{Wo(Ee),fn.hide()}},{type:"contextformbutton",icon:"new-tab",tooltip:"Open link",onSetup:ht,onAction:fn=>{yi(Ee)(),fn.hide()}}]})};var Kd=()=>{o.add("link",Ee=>{Le(Ee),Ya(Ee),uc(Ee),vu(Ee),ud(Ee),yl(Ee),Gc(Ee),Qu(Ee)})};Kd()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(p,b)=>{p.focus(),p.undoManager.transact(()=>{p.setContent(b)}),p.selection.setCursorLocation(),p.nodeChanged()},n=p=>p.getContent({source_view:!0}),r=p=>{const b=n(p);p.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:b},onSubmit:y=>{e(p,y.getData().code),y.close()}})},c=p=>{p.addCommand("mceCodeEditor",()=>{r(p)})},u=p=>{const b=()=>p.execCommand("mceCodeEditor");p.ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:b}),p.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:b})};var h=()=>{o.add("code",p=>(c(p),u(p),{}))};h()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=Object.getPrototypeOf,n=(me,Pe,We)=>{var Pt;return We(me,Pe.prototype)?!0:((Pt=me.constructor)===null||Pt===void 0?void 0:Pt.name)===Pe.name},r=me=>{const Pe=typeof me;return me===null?"null":Pe==="object"&&Array.isArray(me)?"array":Pe==="object"&&n(me,String,(We,Pt)=>Pt.isPrototypeOf(We))?"string":Pe},c=me=>Pe=>r(Pe)===me,u=me=>Pe=>typeof Pe===me,h=me=>Pe=>me===Pe,p=(me,Pe)=>y(me)&&n(me,Pe,(We,Pt)=>e(We)===Pt),b=c("string"),y=c("object"),k=me=>p(me,Object),A=c("array"),R=h(null),N=u("boolean"),F=me=>me==null,V=me=>!F(me),W=u("function"),J=u("number"),te=(me,Pe)=>{if(A(me)){for(let We=0,Pt=me.length;We{};class ae{constructor(Pe,We){this.tag=Pe,this.value=We}static some(Pe){return new ae(!0,Pe)}static none(){return ae.singletonNone}fold(Pe,We){return this.tag?We(this.value):Pe()}isSome(){return this.tag}isNone(){return!this.tag}map(Pe){return this.tag?ae.some(Pe(this.value)):ae.none()}bind(Pe){return this.tag?Pe(this.value):ae.none()}exists(Pe){return this.tag&&Pe(this.value)}forall(Pe){return!this.tag||Pe(this.value)}filter(Pe){return!this.tag||Pe(this.value)?this:ae.none()}getOr(Pe){return this.tag?this.value:Pe}or(Pe){return this.tag?this:Pe}getOrThunk(Pe){return this.tag?this.value:Pe()}orThunk(Pe){return this.tag?this:Pe()}getOrDie(Pe){if(this.tag)return this.value;throw new Error(Pe??"Called getOrDie on None")}static from(Pe){return V(Pe)?ae.some(Pe):ae.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Pe){this.tag&&Pe(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}ae.singletonNone=new ae(!1);const fe=Object.keys,_e=Object.hasOwnProperty,ne=(me,Pe)=>{const We=fe(me);for(let Pt=0,Tn=We.length;Pt(Pe,We)=>{me[We]=Pe},De=(me,Pe,We,Pt)=>{ne(me,(Tn,Ro)=>{(Pe(Tn,Ro)?We:Pt)(Tn,Ro)})},Be=(me,Pe)=>{const We={};return De(me,Pe,Se(We),j),We},Te=(me,Pe)=>_e.call(me,Pe),Oe=(me,Pe)=>Te(me,Pe)&&me[Pe]!==void 0&&me[Pe]!==null,yt=Array.prototype.push,Tt=me=>{const Pe=[];for(let We=0,Pt=me.length;WePe>=0&&PeSt(me,0),Le=(me,Pe)=>{for(let We=0;We{if(b(We)||N(We)||J(We))me.setAttribute(Pe,We+"");else throw console.error("Invalid call to Attribute.set. Key ",Pe,":: Value ",We,":: Element ",me),new Error("Attribute value was not simple")},mn=(me,Pe,We)=>{je(me.dom,Pe,We)},Rt=(me,Pe)=>{me.dom.removeAttribute(Pe)},Ue=(me,Pe)=>{const Pt=(Pe||document).createElement("div");if(Pt.innerHTML=me,!Pt.hasChildNodes()||Pt.childNodes.length>1){const Tn="HTML does not have a single root node";throw console.error(Tn,me),new Error(Tn)}return Zt(Pt.childNodes[0])},ct=(me,Pe)=>{const Pt=(Pe||document).createElement(me);return Zt(Pt)},dn=(me,Pe)=>{const Pt=(Pe||document).createTextNode(me);return Zt(Pt)},Zt=me=>{if(me==null)throw new Error("Node cannot be null or undefined");return{dom:me}},Fe={fromHtml:Ue,fromTag:ct,fromText:dn,fromDom:Zt,fromPoint:(me,Pe,We)=>ae.from(me.dom.elementFromPoint(Pe,We)).map(Zt)};var mt=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),de=tinymce.util.Tools.resolve("tinymce.util.URI");const Eo=me=>me.length>0,jn=me=>Pe=>Pe.options.get(me),Yn=me=>{const Pe=me.options.register;Pe("image_dimensions",{processor:"boolean",default:!0}),Pe("image_advtab",{processor:"boolean",default:!1}),Pe("image_uploadtab",{processor:"boolean",default:!0}),Pe("image_prepend_url",{processor:"string",default:""}),Pe("image_class_list",{processor:"object[]"}),Pe("image_description",{processor:"boolean",default:!0}),Pe("image_title",{processor:"boolean",default:!1}),Pe("image_caption",{processor:"boolean",default:!1}),Pe("image_list",{processor:We=>{const Pt=We===!1||b(We)||te(We,y)||W(We);return Pt?{value:We,valid:Pt}:{valid:!1,message:"Must be false, a string, an array or a function."}},default:!1})},po=jn("image_dimensions"),cs=jn("image_advtab"),gt=jn("image_uploadtab"),Ut=jn("image_prepend_url"),pt=jn("image_class_list"),Ne=jn("image_description"),Nt=jn("image_title"),pn=jn("image_caption"),xt=jn("image_list"),kn=jn("a11y_advanced_options"),Dn=jn("automatic_uploads"),is=me=>Eo(me.options.get("images_upload_url")),Gn=me=>V(me.options.get("images_upload_handler")),as=(me,Pe)=>Math.max(parseInt(me,10),parseInt(Pe,10)),vr=me=>new Promise(Pe=>{const We=document.createElement("img"),Pt=Ro=>{We.onload=We.onerror=null,We.parentNode&&We.parentNode.removeChild(We),Pe(Ro)};We.onload=()=>{const Ro=as(We.width,We.clientWidth),Wn=as(We.height,We.clientHeight),Lr={width:Ro,height:Wn};Pt(Promise.resolve(Lr))},We.onerror=()=>{Pt(Promise.reject(`Failed to get image dimensions for: ${me}`))};const Tn=We.style;Tn.visibility="hidden",Tn.position="fixed",Tn.bottom=Tn.left="0px",Tn.width=Tn.height="auto",document.body.appendChild(We),We.src=me}),Ns=me=>(me&&(me=me.replace(/px$/,"")),me),Vs=me=>(me.length>0&&/^[0-9]+$/.test(me)&&(me+="px"),me),Ts=me=>{if(me.margin){const Pe=String(me.margin).split(" ");switch(Pe.length){case 1:me["margin-top"]=me["margin-top"]||Pe[0],me["margin-right"]=me["margin-right"]||Pe[0],me["margin-bottom"]=me["margin-bottom"]||Pe[0],me["margin-left"]=me["margin-left"]||Pe[0];break;case 2:me["margin-top"]=me["margin-top"]||Pe[0],me["margin-right"]=me["margin-right"]||Pe[1],me["margin-bottom"]=me["margin-bottom"]||Pe[0],me["margin-left"]=me["margin-left"]||Pe[1];break;case 3:me["margin-top"]=me["margin-top"]||Pe[0],me["margin-right"]=me["margin-right"]||Pe[1],me["margin-bottom"]=me["margin-bottom"]||Pe[2],me["margin-left"]=me["margin-left"]||Pe[1];break;case 4:me["margin-top"]=me["margin-top"]||Pe[0],me["margin-right"]=me["margin-right"]||Pe[1],me["margin-bottom"]=me["margin-bottom"]||Pe[2],me["margin-left"]=me["margin-left"]||Pe[3]}delete me.margin}return me},Ki=(me,Pe)=>{const We=xt(me);b(We)?fetch(We).then(Pt=>{Pt.ok&&Pt.json().then(Pe)}):W(We)?We(Pe):Pe(We)},vs=(me,Pe,We)=>{const Pt=()=>{We.onload=We.onerror=null,me.selection&&(me.selection.select(We),me.nodeChanged())};We.onload=()=>{!Pe.width&&!Pe.height&&po(me)&&me.dom.setAttribs(We,{width:String(We.clientWidth),height:String(We.clientHeight)}),Pt()},We.onerror=Pt},ms=me=>new Promise((Pe,We)=>{const Pt=new FileReader;Pt.onload=()=>{Pe(Pt.result)},Pt.onerror=()=>{var Tn;We((Tn=Pt.error)===null||Tn===void 0?void 0:Tn.message)},Pt.readAsDataURL(me)}),dr=me=>me.nodeName==="IMG"&&(me.hasAttribute("data-mce-object")||me.hasAttribute("data-mce-placeholder")),Oo=(me,Pe)=>{const We=me.options.get;return de.isDomSafe(Pe,"img",{allow_html_data_urls:We("allow_html_data_urls"),allow_script_urls:We("allow_script_urls"),allow_svg_data_urls:We("allow_svg_data_urls")})},wo=mt.DOM,Gs=me=>me.style.marginLeft&&me.style.marginRight&&me.style.marginLeft===me.style.marginRight?Ns(me.style.marginLeft):"",ws=me=>me.style.marginTop&&me.style.marginBottom&&me.style.marginTop===me.style.marginBottom?Ns(me.style.marginTop):"",Pi=me=>me.style.borderWidth?Ns(me.style.borderWidth):"",ts=(me,Pe)=>{var We;return me.hasAttribute(Pe)&&(We=me.getAttribute(Pe))!==null&&We!==void 0?We:""},Qi=me=>me.parentNode!==null&&me.parentNode.nodeName==="FIGURE",nn=(me,Pe,We)=>{We===""||We===null?me.removeAttribute(Pe):me.setAttribute(Pe,We)},ns=me=>{const Pe=wo.create("figure",{class:"image"});wo.insertAfter(Pe,me),Pe.appendChild(me),Pe.appendChild(wo.create("figcaption",{contentEditable:"true"},"Caption")),Pe.contentEditable="false"},Xr=me=>{const Pe=me.parentNode;V(Pe)&&(wo.insertAfter(me,Pe),wo.remove(Pe))},Qe=me=>{Qi(me)?Xr(me):ns(me)},Ye=(me,Pe)=>{const We=me.getAttribute("style"),Pt=Pe(We!==null?We:"");Pt.length>0?(me.setAttribute("style",Pt),me.setAttribute("data-mce-style",Pt)):me.removeAttribute("style")},wt=(me,Pe)=>(We,Pt,Tn)=>{const Ro=We.style;Ro[Pt]?(Ro[Pt]=Vs(Tn),Ye(We,Pe)):nn(We,Pt,Tn)},Ft=(me,Pe)=>me.style[Pe]?Ns(me.style[Pe]):ts(me,Pe),Rn=(me,Pe)=>{const We=Vs(Pe);me.style.marginLeft=We,me.style.marginRight=We},Xn=(me,Pe)=>{const We=Vs(Pe);me.style.marginTop=We,me.style.marginBottom=We},ro=(me,Pe)=>{const We=Vs(Pe);me.style.borderWidth=We},an=(me,Pe)=>{me.style.borderStyle=Pe},Do=me=>{var Pe;return(Pe=me.style.borderStyle)!==null&&Pe!==void 0?Pe:""},io=me=>V(me)&&me.nodeName==="FIGURE",Wo=me=>me.nodeName==="IMG",sr=me=>wo.getAttrib(me,"alt").length===0&&wo.getAttrib(me,"role")==="presentation",mr=me=>sr(me)?"":ts(me,"alt"),Ks=()=>({src:"",alt:"",title:"",width:"",height:"",class:"",style:"",caption:!1,hspace:"",vspace:"",border:"",borderStyle:"",isDecorative:!1}),pr=(me,Pe)=>{var We;const Pt=document.createElement("img");return nn(Pt,"style",Pe.style),(Gs(Pt)||Pe.hspace!=="")&&Rn(Pt,Pe.hspace),(ws(Pt)||Pe.vspace!=="")&&Xn(Pt,Pe.vspace),(Pi(Pt)||Pe.border!=="")&&ro(Pt,Pe.border),(Do(Pt)||Pe.borderStyle!=="")&&an(Pt,Pe.borderStyle),me((We=Pt.getAttribute("style"))!==null&&We!==void 0?We:"")},Di=(me,Pe)=>{const We=document.createElement("img");if(Qt(me,{...Pe,caption:!1},We),Ge(We,Pe.alt,Pe.isDecorative),Pe.caption){const Pt=wo.create("figure",{class:"image"});return Pt.appendChild(We),Pt.appendChild(wo.create("figcaption",{contentEditable:"true"},"Caption")),Pt.contentEditable="false",Pt}else return We},cc=(me,Pe)=>({src:ts(Pe,"src"),alt:mr(Pe),title:ts(Pe,"title"),width:Ft(Pe,"width"),height:Ft(Pe,"height"),class:ts(Pe,"class"),style:me(ts(Pe,"style")),caption:Qi(Pe),hspace:Gs(Pe),vspace:ws(Pe),border:Pi(Pe),borderStyle:Do(Pe),isDecorative:sr(Pe)}),mi=(me,Pe,We,Pt,Tn)=>{We[Pt]!==Pe[Pt]&&Tn(me,Pt,String(We[Pt]))},Ge=(me,Pe,We)=>{if(We){wo.setAttrib(me,"role","presentation");const Pt=Fe.fromDom(me);mn(Pt,"alt","")}else{if(R(Pe)){const Pt=Fe.fromDom(me);Rt(Pt,"alt")}else{const Pt=Fe.fromDom(me);mn(Pt,"alt",Pe)}wo.getAttrib(me,"role")==="presentation"&&wo.setAttrib(me,"role","")}},Xe=(me,Pe,We)=>{(We.alt!==Pe.alt||We.isDecorative!==Pe.isDecorative)&&Ge(me,We.alt,We.isDecorative)},$t=(me,Pe)=>(We,Pt,Tn)=>{me(We,Tn),Ye(We,Pe)},Qt=(me,Pe,We)=>{const Pt=cc(me,We);mi(We,Pt,Pe,"caption",(Tn,Ro,Wn)=>Qe(Tn)),mi(We,Pt,Pe,"src",nn),mi(We,Pt,Pe,"title",nn),mi(We,Pt,Pe,"width",wt("width",me)),mi(We,Pt,Pe,"height",wt("height",me)),mi(We,Pt,Pe,"class",nn),mi(We,Pt,Pe,"style",$t((Tn,Ro)=>nn(Tn,"style",Ro),me)),mi(We,Pt,Pe,"hspace",$t(Rn,me)),mi(We,Pt,Pe,"vspace",$t(Xn,me)),mi(We,Pt,Pe,"border",$t(ro,me)),mi(We,Pt,Pe,"borderStyle",$t(an,me)),Xe(We,Pt,Pe)},eo=(me,Pe)=>{const We=me.dom.styles.parse(Pe),Pt=Ts(We),Tn=me.dom.styles.parse(me.dom.styles.serialize(Pt));return me.dom.styles.serialize(Tn)},co=me=>{const Pe=me.selection.getNode(),We=me.dom.getParent(Pe,"figure.image");return We?me.dom.select("img",We)[0]:Pe&&(Pe.nodeName!=="IMG"||dr(Pe))?null:Pe},qo=(me,Pe)=>{var We;const Pt=me.dom,Tn=Be(me.schema.getTextBlockElements(),(Wn,Lr)=>!me.schema.isValidChild(Lr,"figure")),Ro=Pt.getParent(Pe.parentNode,Wn=>Oe(Tn,Wn.nodeName),me.getBody());return Ro&&(We=Pt.split(Ro,Pe))!==null&&We!==void 0?We:Pe},fr=me=>{const Pe=co(me);return Pe?cc(We=>eo(me,We),Pe):Ks()},nt=(me,Pe)=>{const We=Di(Tn=>eo(me,Tn),Pe);me.dom.setAttrib(We,"data-mce-id","__mcenew"),me.focus(),me.selection.setContent(We.outerHTML);const Pt=me.dom.select('*[data-mce-id="__mcenew"]')[0];if(me.dom.setAttrib(Pt,"data-mce-id",null),io(Pt)){const Tn=qo(me,Pt);me.selection.select(Tn)}else me.selection.select(Pt)},xo=(me,Pe)=>{me.dom.setAttrib(Pe,"src",Pe.getAttribute("src"))},jr=(me,Pe)=>{if(Pe){const We=me.dom.is(Pe.parentNode,"figure.image")?Pe.parentNode:Pe;me.dom.remove(We),me.focus(),me.nodeChanged(),me.dom.isEmpty(me.getBody())&&(me.setContent(""),me.selection.setCursorLocation())}},Oi=(me,Pe)=>{const We=co(me);if(We)if(Qt(Pt=>eo(me,Pt),Pe,We),xo(me,We),io(We.parentNode)){const Pt=We.parentNode;qo(me,Pt),me.selection.select(We.parentNode)}else me.selection.select(We),vs(me,Pe,We)},ra=(me,Pe)=>{const We=Pe.src;return{...Pe,src:Oo(me,We)?We:""}},zs=(me,Pe)=>{const We=co(me);if(We){const Tn={...cc(Wn=>eo(me,Wn),We),...Pe},Ro=ra(me,Tn);Tn.src?Oi(me,Ro):jr(me,We)}else Pe.src&&nt(me,{...Ks(),...Pe})},ga=(me=>(...Pe)=>{if(Pe.length===0)throw new Error("Can't merge zero objects");const We={};for(let Pt=0;Ptk(me)&&k(Pe)?ga(me,Pe):Pe);var Ri=tinymce.util.Tools.resolve("tinymce.util.ImageUploader"),As=tinymce.util.Tools.resolve("tinymce.util.Tools");const rr=me=>b(me.value)?me.value:"",Vi=me=>b(me.text)?me.text:b(me.title)?me.title:"",ia=(me,Pe)=>{const We=[];return As.each(me,Pt=>{const Tn=Vi(Pt);if(Pt.menu!==void 0){const Ro=ia(Pt.menu,Pe);We.push({text:Tn,items:Ro})}else{const Ro=Pe(Pt);We.push({text:Tn,value:Ro})}}),We},Pl=(me=rr)=>Pe=>Pe?ae.from(Pe).map(We=>ia(We,me)):ae.none(),Tc=me=>Pl(rr)(me),Ac=me=>Te(me,"items"),Ls=(me,Pe)=>Le(me,We=>Ac(We)?Ls(We.items,Pe):We.value===Pe?ae.some(We):ae.none()),ka={sanitizer:Pl,sanitize:Tc,findEntry:(me,Pe)=>me.bind(We=>Ls(We,Pe))},xa={makeTab:me=>({title:"Advanced",name:"advanced",items:[{type:"grid",columns:2,items:[{type:"input",label:"Vertical space",name:"vspace",inputMode:"numeric"},{type:"input",label:"Horizontal space",name:"hspace",inputMode:"numeric"},{type:"input",label:"Border width",name:"border",inputMode:"numeric"},{type:"listbox",name:"borderstyle",label:"Border style",items:[{text:"Select...",value:""},{text:"Solid",value:"solid"},{text:"Dotted",value:"dotted"},{text:"Dashed",value:"dashed"},{text:"Double",value:"double"},{text:"Groove",value:"groove"},{text:"Ridge",value:"ridge"},{text:"Inset",value:"inset"},{text:"Outset",value:"outset"},{text:"None",value:"none"},{text:"Hidden",value:"hidden"}]}]}]})},Yr=me=>{const Pe=ka.sanitizer(Fr=>me.convertURL(Fr.value||Fr.url||"","src")),We=new Promise(Fr=>{Ki(me,fl=>{Fr(Pe(fl).map(Nr=>Tt([[{text:"None",value:""}],Nr])))})}),Pt=ka.sanitize(pt(me)),Tn=cs(me),Ro=gt(me),Wn=is(me),Lr=Gn(me),cn=fr(me),Or=Ne(me),Ka=Nt(me),Gr=po(me),yr=pn(me),Kc=kn(me),Jo=Dn(me),dl=ae.some(Ut(me)).filter(Fr=>b(Fr)&&Fr.length>0);return We.then(Fr=>({image:cn,imageList:Fr,classList:Pt,hasAdvTab:Tn,hasUploadTab:Ro,hasUploadUrl:Wn,hasUploadHandler:Lr,hasDescription:Or,hasImageTitle:Ka,hasDimensions:Gr,hasImageCaption:yr,prependURL:dl,hasAccessibilityOptions:Kc,automaticUploads:Jo}))},hr=me=>{const Pe={name:"src",type:"urlinput",filetype:"image",label:"Source",picker_text:"Browse files"},We=me.imageList.map(Ka=>({name:"images",type:"listbox",label:"Image list",items:Ka})),Pt={name:"alt",type:"input",label:"Alternative description",enabled:!(me.hasAccessibilityOptions&&me.image.isDecorative)},Tn={name:"title",type:"input",label:"Image title"},Ro={name:"dimensions",type:"sizeinput"},Wn={type:"label",label:"Accessibility",items:[{name:"isDecorative",type:"checkbox",label:"Image is decorative"}]},Lr=me.classList.map(Ka=>({name:"classes",type:"listbox",label:"Class",items:Ka})),cn={type:"label",label:"Caption",items:[{type:"checkbox",name:"caption",label:"Show caption"}]},Or=Ka=>Ka?{type:"grid",columns:2}:{type:"panel"};return Tt([[Pe],We.toArray(),me.hasAccessibilityOptions&&me.hasDescription?[Wn]:[],me.hasDescription?[Pt]:[],me.hasImageTitle?[Tn]:[],me.hasDimensions?[Ro]:[],[{...Or(me.classList.isSome()&&me.hasImageCaption),items:Tt([Lr.toArray(),me.hasImageCaption?[cn]:[]])}]])},bu={makeTab:me=>({title:"General",name:"general",items:hr(me)}),makeItems:hr},Mi={makeTab:me=>({title:"Upload",name:"upload",items:[{type:"dropzone",name:"fileinput"}]})},zi=me=>({prevImage:ka.findEntry(me.imageList,me.image.src),prevAlt:me.image.alt,open:!0}),yi=me=>({src:{value:me.src,meta:{}},images:me.src,alt:me.alt,title:me.title,dimensions:{width:me.width,height:me.height},classes:me.class,caption:me.caption,style:me.style,vspace:me.vspace,border:me.border,hspace:me.hspace,borderstyle:me.borderStyle,fileinput:[],isDecorative:me.isDecorative}),yl=(me,Pe)=>({src:me.src.value,alt:(me.alt===null||me.alt.length===0)&&Pe?null:me.alt,title:me.title,width:me.dimensions.width,height:me.dimensions.height,class:me.classes,style:me.style,caption:me.caption,hspace:me.hspace,vspace:me.vspace,border:me.border,borderStyle:me.borderstyle,isDecorative:me.isDecorative}),ql=(me,Pe)=>/^(?:[a-zA-Z]+:)?\/\//.test(Pe)?ae.none():me.prependURL.bind(We=>Pe.substring(0,We.length)!==We?ae.some(We+Pe):ae.none()),ba=(me,Pe)=>{const We=Pe.getData();ql(me,We.src.value).each(Pt=>{Pe.setData({src:{value:Pt,meta:We.src.meta}})})},Dl=(me,Pe,We)=>{me.hasDescription&&b(We.alt)&&(Pe.alt=We.alt),me.hasAccessibilityOptions&&(Pe.isDecorative=We.isDecorative||Pe.isDecorative||!1),me.hasImageTitle&&b(We.title)&&(Pe.title=We.title),me.hasDimensions&&(b(We.width)&&(Pe.dimensions.width=We.width),b(We.height)&&(Pe.dimensions.height=We.height)),b(We.class)&&ka.findEntry(me.classList,We.class).each(Pt=>{Pe.classes=Pt.value}),me.hasImageCaption&&N(We.caption)&&(Pe.caption=We.caption),me.hasAdvTab&&(b(We.style)&&(Pe.style=We.style),b(We.vspace)&&(Pe.vspace=We.vspace),b(We.border)&&(Pe.border=We.border),b(We.hspace)&&(Pe.hspace=We.hspace),b(We.borderstyle)&&(Pe.borderstyle=We.borderstyle))},Rl=(me,Pe)=>{const We=Pe.getData(),Pt=We.src.meta;if(Pt!==void 0){const Tn=ga({},We);Dl(me,Tn,Pt),Pe.setData(Tn)}},cd=(me,Pe,We,Pt)=>{const Tn=Pt.getData(),Ro=Tn.src.value,Wn=Tn.src.meta||{};!Wn.width&&!Wn.height&&Pe.hasDimensions&&(Eo(Ro)?me.imageSize(Ro).then(Lr=>{We.open&&Pt.setData({dimensions:Lr})}).catch(Lr=>console.error(Lr)):Pt.setData({dimensions:{width:"",height:""}}))},Ml=(me,Pe,We)=>{const Pt=We.getData(),Tn=ka.findEntry(me.imageList,Pt.src.value);Pe.prevImage=Tn,We.setData({images:Tn.map(Ro=>Ro.value).getOr("")})},Qu=(me,Pe,We,Pt)=>{ba(Pe,Pt),Rl(Pe,Pt),cd(me,Pe,We,Pt),Ml(Pe,We,Pt)},Ya=(me,Pe,We,Pt)=>{const Tn=Pt.getData(),Ro=ka.findEntry(Pe.imageList,Tn.images);Ro.each(Wn=>{Tn.alt===""||We.prevImage.map(cn=>cn.text===Tn.alt).getOr(!1)?Wn.value===""?Pt.setData({src:Wn,alt:We.prevAlt}):Pt.setData({src:Wn,alt:Wn.text}):Pt.setData({src:Wn})}),We.prevImage=Ro,Qu(me,Pe,We,Pt)},uc=(me,Pe,We,Pt)=>{const Tn=Pt.getData();Pt.block("Uploading image"),q(Tn.fileinput).fold(()=>{Pt.unblock()},Ro=>{const Wn=URL.createObjectURL(Ro),Lr=()=>{Pt.unblock(),URL.revokeObjectURL(Wn)},cn=Or=>{Pt.setData({src:{value:Or,meta:{}}}),Pt.showTab("general"),Qu(me,Pe,We,Pt)};ms(Ro).then(Or=>{const Ka=me.createBlobCache(Ro,Wn,Or);Pe.automaticUploads?me.uploadImage(Ka).then(Gr=>{cn(Gr.url),Lr()}).catch(Gr=>{Lr(),me.alertErr(Gr)}):(me.addToBlobCache(Ka),cn(Ka.blobUri()),Pt.unblock())})})},vu=(me,Pe,We)=>(Pt,Tn)=>{Tn.name==="src"?Qu(me,Pe,We,Pt):Tn.name==="images"?Ya(me,Pe,We,Pt):Tn.name==="alt"?We.prevAlt=Pt.getData().alt:Tn.name==="fileinput"?uc(me,Pe,We,Pt):Tn.name==="isDecorative"&&Pt.setEnabled("alt",!Pt.getData().isDecorative)},ud=me=>()=>{me.open=!1},Kd=me=>me.hasAdvTab||me.hasUploadUrl||me.hasUploadHandler?{type:"tabpanel",tabs:Tt([[bu.makeTab(me)],me.hasAdvTab?[xa.makeTab(me)]:[],me.hasUploadTab&&(me.hasUploadUrl||me.hasUploadHandler)?[Mi.makeTab(me)]:[]])}:{type:"panel",items:bu.makeItems(me)},Ee=(me,Pe,We)=>Pt=>{const Tn=ga(yi(Pe.image),Pt.getData()),Ro={...Tn,style:pr(We.normalizeCss,yl(Tn,!1))};me.execCommand("mceUpdateImage",!1,yl(Ro,Pe.hasAccessibilityOptions)),me.editorUpload.uploadImagesAuto(),Pt.close()},Ke=me=>Pe=>Oo(me,Pe)?vr(me.documentBaseURI.toAbsolute(Pe)).then(We=>({width:String(We.width),height:String(We.height)})):Promise.resolve({width:"",height:""}),ht=me=>(Pe,We,Pt)=>{var Tn;return me.editorUpload.blobCache.create({blob:Pe,blobUri:We,name:(Tn=Pe.name)===null||Tn===void 0?void 0:Tn.replace(/\.[^\.]+$/,""),filename:Pe.name,base64:Pt.split(",")[1]})},At=me=>Pe=>{me.editorUpload.blobCache.add(Pe)},fn=me=>Pe=>{me.windowManager.alert(Pe)},go=me=>Pe=>eo(me,Pe),ar=me=>Pe=>me.dom.parseStyle(Pe),Ko=me=>(Pe,We)=>me.dom.serializeStyle(Pe,We),Io=me=>Pe=>Ri(me).upload([Pe],!1).then(We=>{var Pt;return We.length===0?Promise.reject("Failed to upload image"):We[0].status===!1?Promise.reject((Pt=We[0].error)===null||Pt===void 0?void 0:Pt.message):We[0]}),Mr=me=>{const Pe={imageSize:Ke(me),addToBlobCache:At(me),createBlobCache:ht(me),alertErr:fn(me),normalizeCss:go(me),parseStyle:ar(me),serializeStyle:Ko(me),uploadImage:Io(me)};return{open:()=>{Yr(me).then(Pt=>{const Tn=zi(Pt);return{title:"Insert/Edit Image",size:"normal",body:Kd(Pt),buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:yi(Pt.image),onSubmit:Ee(me,Pt,Pe),onChange:vu(Pe,Pt,Tn),onClose:ud(Tn)}}).then(me.windowManager.open)}}},Ss=me=>{me.addCommand("mceImage",Mr(me).open),me.addCommand("mceUpdateImage",(Pe,We)=>{me.undoManager.transact(()=>zs(me,We))})},si=me=>{const Pe=me.attr("class");return V(Pe)&&/\bimage\b/.test(Pe)},Ga=me=>Pe=>{let We=Pe.length;const Pt=Tn=>{Tn.attr("contenteditable",me?"true":null)};for(;We--;){const Tn=Pe[We];si(Tn)&&(Tn.attr("contenteditable",me?"false":null),As.each(Tn.getAll("figcaption"),Pt))}},dd=me=>{me.on("PreInit",()=>{me.parser.addNodeFilter("figure",Ga(!0)),me.serializer.addNodeFilter("figure",Ga(!1))})},Mn=me=>Pe=>{const We=()=>{Pe.setEnabled(me.selection.isEditable())};return me.on("NodeChange",We),We(),()=>{me.off("NodeChange",We)}},fd=me=>{me.ui.registry.addToggleButton("image",{icon:"image",tooltip:"Insert/edit image",onAction:Mr(me).open,onSetup:Pe=>{Pe.setActive(V(co(me)));const We=me.selection.selectorChangedWithUnbind("img:not([data-mce-object]):not([data-mce-placeholder]),figure.image",Pe.setActive).unbind,Pt=Mn(me)(Pe);return()=>{We(),Pt()}}}),me.ui.registry.addMenuItem("image",{icon:"image",text:"Image...",onAction:Mr(me).open,onSetup:Mn(me)}),me.ui.registry.addContextMenu("image",{update:Pe=>me.selection.isEditable()&&(io(Pe)||Wo(Pe)&&!dr(Pe))?["image"]:[]})};var ui=()=>{o.add("image",me=>{Yn(me),dd(me),fd(me),Ss(me)})};ui()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(z,K,ve)=>{var Ae;return ve(z,K.prototype)?!0:((Ae=z.constructor)===null||Ae===void 0?void 0:Ae.name)===K.name},n=z=>{const K=typeof z;return z===null?"null":K==="object"&&Array.isArray(z)?"array":K==="object"&&e(z,String,(ve,Ae)=>Ae.isPrototypeOf(ve))?"string":K},r=z=>K=>n(K)===z,c=z=>K=>typeof K===z,u=z=>K=>z===K,h=r("string"),p=r("array"),b=c("boolean"),y=u(void 0),k=z=>z==null,A=z=>!k(z),R=c("function"),N=c("number"),F=()=>{},V=(z,K)=>ve=>z(K(ve)),W=z=>()=>z,J=z=>z,te=(z,K)=>z===K;function j(z,...K){return(...ve)=>{const Ae=K.concat(ve);return z.apply(null,Ae)}}const ae=z=>{z()},fe=W(!1),_e=W(!0);class ne{constructor(K,ve){this.tag=K,this.value=ve}static some(K){return new ne(!0,K)}static none(){return ne.singletonNone}fold(K,ve){return this.tag?ve(this.value):K()}isSome(){return this.tag}isNone(){return!this.tag}map(K){return this.tag?ne.some(K(this.value)):ne.none()}bind(K){return this.tag?K(this.value):ne.none()}exists(K){return this.tag&&K(this.value)}forall(K){return!this.tag||K(this.value)}filter(K){return!this.tag||K(this.value)?this:ne.none()}getOr(K){return this.tag?this.value:K}or(K){return this.tag?this:K}getOrThunk(K){return this.tag?this.value:K()}orThunk(K){return this.tag?this:K()}getOrDie(K){if(this.tag)return this.value;throw new Error(K??"Called getOrDie on None")}static from(K){return A(K)?ne.some(K):ne.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(K){this.tag&&K(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}ne.singletonNone=new ne(!1);const Se=Object.keys,De=Object.hasOwnProperty,Be=(z,K)=>{const ve=Se(z);for(let Ae=0,ot=ve.length;Ae(K,ve)=>{z[ve]=K},Oe=(z,K,ve,Ae)=>{Be(z,(ot,Vt)=>{(K(ot,Vt)?ve:Ae)(ot,Vt)})},yt=(z,K)=>{const ve={};return Oe(z,K,Te(ve),F),ve},Tt=(z,K)=>{const ve=[];return Be(z,(Ae,ot)=>{ve.push(K(Ae,ot))}),ve},St=z=>Tt(z,J),q=z=>Se(z).length,Le=(z,K)=>je(z,K)?ne.from(z[K]):ne.none(),je=(z,K)=>De.call(z,K),mn=(z,K)=>je(z,K)&&z[K]!==void 0&&z[K]!==null,Rt=z=>{for(const K in z)if(De.call(z,K))return!1;return!0},Ue=Array.prototype.indexOf,ct=Array.prototype.push,dn=(z,K)=>Ue.call(z,K),Zt=(z,K)=>dn(z,K)>-1,rn=(z,K)=>{for(let ve=0,Ae=z.length;ve{const ve=[];for(let Ae=0;Ae{const ve=z.length,Ae=new Array(ve);for(let ot=0;ot{for(let ve=0,Ae=z.length;ve{for(let ve=z.length-1;ve>=0;ve--){const Ae=z[ve];K(Ae,ve)}},jn=(z,K)=>{const ve=[],Ae=[];for(let ot=0,Vt=z.length;ot{const ve=[];for(let Ae=0,ot=z.length;Ae(Eo(z,(Ae,ot)=>{ve=K(ve,Ae,ot)}),ve),cs=(z,K,ve)=>(de(z,(Ae,ot)=>{ve=K(ve,Ae,ot)}),ve),gt=(z,K,ve)=>{for(let Ae=0,ot=z.length;Aegt(z,K,fe),pt=z=>{const K=[];for(let ve=0,Ae=z.length;vept(mt(z,K)),Nt=(z,K)=>{for(let ve=0,Ae=z.length;ve{const ve={};for(let Ae=0,ot=z.length;AeK>=0&&Kxt(z,0),Dn=z=>xt(z,z.length-1),is=(z,K)=>{for(let ve=0;ve{const Ae=(K||document).createElement("div");if(Ae.innerHTML=z,!Ae.hasChildNodes()||Ae.childNodes.length>1){const ot="HTML does not have a single root node";throw console.error(ot,z),new Error(ot)}return ms(Ae.childNodes[0])},Ki=(z,K)=>{const Ae=(K||document).createElement(z);return ms(Ae)},vs=(z,K)=>{const Ae=(K||document).createTextNode(z);return ms(Ae)},ms=z=>{if(z==null)throw new Error("Node cannot be null or undefined");return{dom:z}},Oo={fromHtml:Ts,fromTag:Ki,fromText:vs,fromDom:ms,fromPoint:(z,K,ve)=>ne.from(z.dom.elementFromPoint(K,ve)).map(ms)},wo=(z,K)=>{const ve=z.dom;if(ve.nodeType!==Ns)return!1;{const Ae=ve;if(Ae.matches!==void 0)return Ae.matches(K);if(Ae.msMatchesSelector!==void 0)return Ae.msMatchesSelector(K);if(Ae.webkitMatchesSelector!==void 0)return Ae.webkitMatchesSelector(K);if(Ae.mozMatchesSelector!==void 0)return Ae.mozMatchesSelector(K);throw new Error("Browser lacks native selectors")}},Gs=z=>z.nodeType!==Ns&&z.nodeType!==as&&z.nodeType!==vr||z.childElementCount===0,ws=(z,K)=>{const ve=K===void 0?document:K.dom;return Gs(ve)?[]:mt(ve.querySelectorAll(z),Oo.fromDom)},Pi=(z,K)=>{const ve=K===void 0?document:K.dom;return Gs(ve)?ne.none():ne.from(ve.querySelector(z)).map(Oo.fromDom)},ts=(z,K)=>z.dom===K.dom,Qi=wo;typeof window<"u"||Function("return this;")();const nn=z=>z.dom.nodeName.toLowerCase(),ns=z=>z.dom.nodeType,Xr=z=>K=>ns(K)===z,Qe=z=>ns(z)===Gn||nn(z)==="#comment",Ye=Xr(Ns),wt=Xr(Vs),Ft=Xr(as),Rn=Xr(vr),Xn=z=>K=>Ye(K)&&nn(K)===z,ro=z=>Oo.fromDom(z.dom.ownerDocument),an=z=>Ft(z)?z:ro(z),Do=z=>ne.from(z.dom.parentNode).map(Oo.fromDom),io=(z,K)=>{const ve=R(K)?K:fe;let Ae=z.dom;const ot=[];for(;Ae.parentNode!==null&&Ae.parentNode!==void 0;){const Vt=Ae.parentNode,gn=Oo.fromDom(Vt);if(ot.push(gn),ve(gn)===!0)break;Ae=Vt}return ot},Wo=z=>ne.from(z.dom.previousSibling).map(Oo.fromDom),sr=z=>ne.from(z.dom.nextSibling).map(Oo.fromDom),mr=z=>mt(z.dom.childNodes,Oo.fromDom),Ks=(z,K)=>{const ve=z.dom.childNodes;return ne.from(ve[K]).map(Oo.fromDom)},pr=z=>Ks(z,0),Di=z=>Rn(z)&&A(z.dom.host),mi=R(Element.prototype.attachShadow)&&R(Node.prototype.getRootNode)?z=>Oo.fromDom(z.dom.getRootNode()):an,Ge=z=>{const K=mi(z);return Di(K)?ne.some(K):ne.none()},Xe=z=>Oo.fromDom(z.dom.host),$t=z=>{const K=wt(z)?z.dom.parentNode:z.dom;if(K==null||K.ownerDocument===null)return!1;const ve=K.ownerDocument;return Ge(Oo.fromDom(K)).fold(()=>ve.body.contains(K),V($t,Xe))};var Qt=(z,K,ve,Ae,ot)=>z(ve,Ae)?ne.some(ve):R(ot)&&ot(ve)?ne.none():K(ve,Ae,ot);const eo=(z,K,ve)=>{let Ae=z.dom;const ot=R(ve)?ve:fe;for(;Ae.parentNode;){Ae=Ae.parentNode;const Vt=Oo.fromDom(Ae);if(K(Vt))return ne.some(Vt);if(ot(Vt))break}return ne.none()},co=(z,K,ve)=>Qt((ot,Vt)=>Vt(ot),eo,z,K,ve),qo=(z,K)=>{const ve=ot=>K(Oo.fromDom(ot));return Ut(z.dom.childNodes,ve).map(Oo.fromDom)},fr=(z,K,ve)=>eo(z,Ae=>wo(Ae,K),ve),nt=(z,K)=>qo(z,ve=>wo(ve,K)),xo=(z,K)=>Pi(K,z),jr=(z,K,ve)=>Qt((ot,Vt)=>wo(ot,Vt),fr,z,K,ve),Oi=z=>jr(z,"[contenteditable]"),ra=(z,K=!1)=>$t(z)?z.dom.isContentEditable:Oi(z).fold(W(K),ve=>zs(ve)==="true"),zs=z=>z.dom.contentEditable,Ec=z=>z.nodeName.toLowerCase(),ul=z=>Oo.fromDom(z.getBody()),ga=z=>K=>ts(K,ul(z)),Ri=z=>z?z.replace(/px$/,""):"",As=z=>/^\d+(\.\d+)?$/.test(z)?z+"px":z,rr=z=>Oo.fromDom(z.selection.getStart()),Vi=z=>Oo.fromDom(z.selection.getEnd()),ia=z=>co(z,Xn("table")).forall(ra),Pl=(z,K)=>Yn(mr(z),K),Tc=(z,K)=>{let ve=[];return de(mr(z),Ae=>{K(Ae)&&(ve=ve.concat([Ae])),ve=ve.concat(Tc(Ae,K))}),ve},Ac=(z,K)=>Pl(z,ve=>wo(ve,K)),Ls=(z,K)=>ws(K,z),Ji=(z,K,ve)=>{if(h(ve)||b(ve)||N(ve))z.setAttribute(K,ve+"");else throw console.error("Invalid call to Attribute.set. Key ",K,":: Value ",ve,":: Element ",z),new Error("Attribute value was not simple")},ka=(z,K,ve)=>{Ji(z.dom,K,ve)},Gc=(z,K)=>{const ve=z.dom;Be(K,(Ae,ot)=>{Ji(ve,ot,Ae)})},xa=(z,K)=>{const ve=z.dom.getAttribute(K);return ve===null?void 0:ve},Yr=(z,K)=>ne.from(xa(z,K)),hr=(z,K)=>{z.dom.removeAttribute(K)},ja=z=>cs(z.dom.attributes,(K,ve)=>(K[ve.name]=ve.value,K),{}),bu=(z,K,ve=te)=>z.exists(Ae=>ve(Ae,K)),Us=z=>{const K=[],ve=Ae=>{K.push(Ae)};for(let Ae=0;Aez.isSome()&&K.isSome()?ne.some(ve(z.getOrDie(),K.getOrDie())):ne.none(),zi=z=>z.bind(J),yi=(z,K)=>z?ne.some(K):ne.none(),yl=(z,K)=>z.substring(K),ql=(z,K,ve)=>K===""||z.length>=K.length&&z.substr(ve,ve+K.length)===K,ba=(z,K)=>Dl(z,K)?yl(z,K.length):z,Dl=(z,K)=>ql(z,K,0),cd=(z=>K=>K.replace(z,""))(/^\s+|\s+$/g),Ml=z=>z.length>0,Qu=z=>!Ml(z),Ya=(z,K=10)=>{const ve=parseInt(z,K);return isNaN(ve)?ne.none():ne.some(ve)},uc=z=>{const K=parseFloat(z);return isNaN(K)?ne.none():ne.some(K)},vu=z=>z.style!==void 0&&R(z.style.getPropertyValue),ud=(z,K,ve)=>{if(!h(ve))throw console.error("Invalid call to CSS.set. Property ",K,":: Value ",ve,":: Element ",z),new Error("CSS value must be a string: "+ve);vu(z)&&z.style.setProperty(K,ve)},Kd=(z,K)=>{vu(z)&&z.style.removeProperty(K)},Ee=(z,K,ve)=>{const Ae=z.dom;ud(Ae,K,ve)},Ke=(z,K)=>{const ve=z.dom,ot=window.getComputedStyle(ve).getPropertyValue(K);return ot===""&&!$t(z)?ht(ve,K):ot},ht=(z,K)=>vu(z)?z.style.getPropertyValue(K):"",At=(z,K)=>{const ve=z.dom,Ae=ht(ve,K);return ne.from(Ae).filter(ot=>ot.length>0)},fn=(z,K)=>{const ve=z.dom;Kd(ve,K),bu(Yr(z,"style").map(cd),"")&&hr(z,"style")},go=(z,K,ve=0)=>Yr(z,K).map(Ae=>parseInt(Ae,10)).getOr(ve),ar=(z,K)=>Ko(z,K,_e),Ko=(z,K,ve)=>Ne(mr(z),Ae=>wo(Ae,K)?ve(Ae)?[Ae]:[]:Ko(Ae,K,ve)),Io=["tfoot","thead","tbody","colgroup"],Mr=z=>Zt(Io,z),Ss=(z,K)=>({rows:z,columns:K}),si=(z,K,ve)=>({element:z,rowspan:K,colspan:ve}),Ga=(z,K,ve,Ae,ot,Vt)=>({element:z,rowspan:K,colspan:ve,row:Ae,column:ot,isLocked:Vt}),dd=(z,K,ve)=>({element:z,cells:K,section:ve}),Mn=(z,K,ve,Ae)=>({startRow:z,startCol:K,finishRow:ve,finishCol:Ae}),fd=(z,K,ve)=>({element:z,colspan:K,column:ve}),ui=(z,K)=>({element:z,columns:K}),me=(z,K,ve=fe)=>{if(ve(K))return ne.none();if(Zt(z,nn(K)))return ne.some(K);const Ae=ot=>wo(ot,"table")||ve(ot);return fr(K,z.join(","),Ae)},Pe=(z,K)=>me(["td","th"],z,K),We=z=>ar(z,"th,td"),Pt=z=>wo(z,"colgroup")?Ac(z,"col"):Ne(Wn(z),K=>Ac(K,"col")),Tn=(z,K)=>jr(z,"table",K),Ro=z=>ar(z,"tr"),Wn=z=>Tn(z).fold(W([]),K=>Ac(K,"colgroup")),Lr=(z,K)=>mt(z,ve=>{if(nn(ve)==="colgroup"){const Ae=mt(Pt(ve),ot=>{const Vt=go(ot,"span",1);return si(ot,1,Vt)});return dd(ve,Ae,"colgroup")}else{const Ae=mt(We(ve),ot=>{const Vt=go(ot,"rowspan",1),gn=go(ot,"colspan",1);return si(ot,Vt,gn)});return dd(ve,Ae,K(ve))}}),cn=z=>Do(z).map(K=>{const ve=nn(K);return Mr(ve)?ve:"tbody"}).getOr("tbody"),Or=z=>{const K=Ro(z),Ae=[...Wn(z),...K];return Lr(Ae,cn)},Ka="data-snooker-locked-cols",Gr=z=>Yr(z,Ka).bind(K=>ne.from(K.match(/\d+/g))).map(K=>pn(K,_e)),yr=(z,K)=>z+","+K,Kc=(z,K,ve)=>ne.from(z.access[yr(K,ve)]),Jo=(z,K,ve)=>{const Ae=dl(z,ot=>ve(K,ot.element));return Ae.length>0?ne.some(Ae[0]):ne.none()},dl=(z,K)=>{const ve=Ne(z.all,Ae=>Ae.cells);return Yn(ve,K)},Fr=z=>{const K={};let ve=0;return de(z.cells,Ae=>{const ot=Ae.colspan;Fe(ot,Vt=>{const gn=ve+Vt;K[gn]=fd(Ae.element,ot,gn)}),ve+=ot}),K},fl=z=>{const K={},ve=[],ot=kn(z).map(gc=>gc.element).bind(Tn).bind(Gr).getOr({});let Vt=0,gn=0,xn=0;const{pass:ao,fail:Uo}=jn(z,gc=>gc.section==="colgroup");de(Uo,gc=>{const Cl=[];de(gc.cells,Bc=>{let Cd=0;for(;K[yr(xn,Cd)]!==void 0;)Cd++;const qu=mn(ot,Cd.toString()),uh=Ga(Bc.element,Bc.rowspan,Bc.colspan,xn,Cd,qu);for(let Xs=0;Xs{const Cl=Fr(gc);return{colgroups:[ui(gc.element,St(Cl))],columns:Cl}}).getOrThunk(()=>({colgroups:[],columns:{}}));return{grid:Ss(Vt,gn),access:K,all:ve,columns:_i,colgroups:tr}},Jc={fromTable:z=>{const K=Or(z);return fl(K)},generate:fl,getAt:Kc,findItem:Jo,filterItems:dl,justCells:z=>Ne(z.all,K=>K.cells),justColumns:z=>St(z.columns),hasColumns:z=>Se(z.columns).length>0,getColumnAt:(z,K)=>ne.from(z.columns[K])};var eu=tinymce.util.Tools.resolve("tinymce.util.Tools");const Nl=(z,K,ve)=>{const Ae=z.select("td,th",K);let ot;for(let Vt=0;Vt{eu.each("left center right".split(" "),Ae=>{Ae!==ve&&z.formatter.remove("align"+Ae,{},K)}),ve&&z.formatter.apply("align"+ve,{},K)},th=(z,K,ve)=>{eu.each("top middle bottom".split(" "),Ae=>{Ae!==ve&&z.formatter.remove("valign"+Ae,{},K)}),ve&&z.formatter.apply("valign"+ve,{},K)},Os=(z,K,ve)=>{z.dispatch("TableModified",{...ve,table:K})},Ii=(z,K)=>uc(z).getOr(K),Wi=(z,K,ve)=>Ii(Ke(z,K),ve),Qp=(z,K,ve,Ae)=>{const ot=Wi(z,`padding-${ve}`,0),Vt=Wi(z,`padding-${Ae}`,0),gn=Wi(z,`border-${ve}-width`,0),xn=Wi(z,`border-${Ae}-width`,0);return K-ot-Vt-gn-xn},ri=(z,K)=>{const ve=z.dom,Ae=ve.getBoundingClientRect().width||ve.offsetWidth;return K==="border-box"?Ae:Qp(z,Ae,"left","right")},va=z=>ri(z,"content-box");var Jh=tinymce.util.Tools.resolve("tinymce.Env");const em="tableprops tabledelete | tableinsertrowbefore tableinsertrowafter tabledeleterow | tableinsertcolbefore tableinsertcolafter tabledeletecol",fc=Fe(5,z=>{const K=`${z+1}px`;return{title:K,value:K}}),_f=mt(["Solid","Dotted","Dashed","Double","Groove","Ridge","Inset","Outset","None","Hidden"],z=>({title:z,value:z.toLowerCase()})),Sr="100%",$c=z=>{var K;const ve=z.dom,Ae=(K=ve.getParent(z.selection.getStart(),ve.isBlock))!==null&&K!==void 0?K:z.getBody();return va(Oo.fromDom(Ae))+"px"},Ja=(z,K)=>zm(z)||!tu(z)?K:Vm(z)?{...K,width:$c(z)}:{...K,width:Sr},aa=(z,K)=>zm(z)||tu(z)?K:Vm(z)?{...K,width:$c(z)}:{...K,width:Sr},Zi=z=>K=>K.options.get(z),ii=z=>{const K=z.options.register;K("table_border_widths",{processor:"object[]",default:fc}),K("table_border_styles",{processor:"object[]",default:_f}),K("table_cell_advtab",{processor:"boolean",default:!0}),K("table_row_advtab",{processor:"boolean",default:!0}),K("table_advtab",{processor:"boolean",default:!0}),K("table_appearance_options",{processor:"boolean",default:!0}),K("table_grid",{processor:"boolean",default:!Jh.deviceType.isTouch()}),K("table_cell_class_list",{processor:"object[]",default:[]}),K("table_row_class_list",{processor:"object[]",default:[]}),K("table_class_list",{processor:"object[]",default:[]}),K("table_toolbar",{processor:"string",default:em}),K("table_background_color_map",{processor:"object[]",default:[]}),K("table_border_color_map",{processor:"object[]",default:[]})},hc=Zi("table_sizing_mode"),md=Zi("table_border_widths"),Jd=Zi("table_border_styles"),tm=Zi("table_cell_advtab"),nh=Zi("table_row_advtab"),_l=Zi("table_advtab"),oh=Zi("table_appearance_options"),Oa=Zi("table_grid"),tu=Zi("table_style_by_css"),sh=Zi("table_cell_class_list"),Ou=Zi("table_row_class_list"),wf=Zi("table_class_list"),hl=Zi("table_toolbar"),Sf=Zi("table_background_color_map"),zu=Zi("table_border_color_map"),Vm=z=>hc(z)==="fixed",zm=z=>hc(z)==="responsive",pd=z=>{const K=z.options,ve=K.get("table_default_styles");return K.isSet("table_default_styles")?ve:Ja(z,ve)},ml=z=>{const K=z.options,ve=K.get("table_default_attributes");return K.isSet("table_default_attributes")?ve:aa(z,ve)},Wm=(z,K)=>K.column>=z.startCol&&K.column+K.colspan-1<=z.finishCol&&K.row>=z.startRow&&K.row+K.rowspan-1<=z.finishRow,qe=(z,K)=>{let ve=!0;const Ae=j(Wm,K);for(let ot=K.startRow;ot<=K.finishRow;ot++)for(let Vt=K.startCol;Vt<=K.finishCol;Vt++)ve=ve&&Jc.getAt(z,ot,Vt).exists(Ae);return ve?ne.some(K):ne.none()},gd=(z,K)=>Mn(Math.min(z.row,K.row),Math.min(z.column,K.column),Math.max(z.row+z.rowspan-1,K.row+K.rowspan-1),Math.max(z.column+z.colspan-1,K.column+K.colspan-1)),mc=(z,K,ve)=>{const Ae=Jc.findItem(z,K,ts),ot=Jc.findItem(z,ve,ts);return Ae.bind(Vt=>ot.map(gn=>gd(Vt,gn)))},Cf=(z,K,ve)=>mc(z,K,ve).bind(Ae=>qe(z,Ae)),Zm=(z,K,ve)=>{const Ae=kf(z);return Cf(Ae,K,ve)},kf=Jc.fromTable,dt=(z,K)=>{Do(z).each(Ae=>{Ae.dom.insertBefore(K.dom,z.dom)})},sn=(z,K)=>{sr(z).fold(()=>{Do(z).each(ot=>{uo(ot,K)})},Ae=>{dt(Ae,K)})},Kt=(z,K)=>{pr(z).fold(()=>{uo(z,K)},Ae=>{z.dom.insertBefore(K.dom,Ae.dom)})},uo=(z,K)=>{z.dom.appendChild(K.dom)},ps=(z,K)=>{dt(z,K),uo(K,z)},qs=(z,K)=>{de(K,(ve,Ae)=>{const ot=Ae===0?z:K[Ae-1];sn(ot,ve)})},gr=(z,K)=>{de(K,ve=>{uo(z,ve)})},br=z=>{const K=z.dom;K.parentNode!==null&&K.parentNode.removeChild(K)},rh=z=>{const K=mr(z);K.length>0&&qs(z,K),br(z)},Ui=((z,K)=>{const ve=Vt=>{if(!z(Vt))throw new Error("Can only get "+K+" value of a "+K+" node");return Ae(Vt).getOr("")},Ae=Vt=>z(Vt)?ne.from(Vt.dom.nodeValue):ne.none();return{get:ve,getOption:Ae,set:(Vt,gn)=>{if(!z(Vt))throw new Error("Can only set raw "+K+" value of a "+K+" node");Vt.dom.nodeValue=gn}}})(wt,"text"),pc=z=>Ui.get(z),Um=(z,K)=>Ui.set(z,K);var la=["body","p","div","article","aside","figcaption","figure","footer","header","nav","section","ol","ul","li","table","thead","tbody","tfoot","caption","tr","td","th","h1","h2","h3","h4","h5","h6","blockquote","pre","address"],Ci=()=>{const z=Uo=>Oo.fromDom(Uo.dom.cloneNode(!1)),K=Uo=>an(Uo).dom,ve=Uo=>Ye(Uo)?nn(Uo)==="body"?!0:Zt(la,nn(Uo)):!1,Ae=Uo=>Ye(Uo)?Zt(["br","img","hr","input"],nn(Uo)):!1,ot=Uo=>Ye(Uo)&&xa(Uo,"contenteditable")==="false",Vt=(Uo,_i)=>Uo.dom.compareDocumentPosition(_i.dom),gn=(Uo,_i)=>{const tr=ja(Uo);Gc(_i,tr)},xn=Uo=>{const _i=nn(Uo);return Zt(["script","noscript","iframe","noframes","noembed","title","style","textarea","xmp"],_i)},ao=Uo=>Ye(Uo)?Yr(Uo,"lang"):ne.none();return{up:W({selector:fr,closest:jr,predicate:eo,all:io}),down:W({selector:Ls,predicate:Tc}),styles:W({get:Ke,getRaw:At,set:Ee,remove:fn}),attrs:W({get:xa,set:ka,remove:hr,copyTo:gn}),insert:W({before:dt,after:sn,afterAll:qs,append:uo,appendAll:gr,prepend:Kt,wrap:ps}),remove:W({unwrap:rh,remove:br}),create:W({nu:Oo.fromTag,clone:z,text:Oo.fromText}),query:W({comparePosition:Vt,prevSibling:Wo,nextSibling:sr}),property:W({children:mr,name:nn,parent:Do,document:K,isText:wt,isComment:Qe,isElement:Ye,isSpecial:xn,getLanguage:ao,getText:pc,setText:Um,isBoundary:ve,isEmptyTag:Ae,isNonEditable:ot}),eq:ts,is:Qi}};const nu=(z,K,ve,Ae)=>{const ot=ve[0],Vt=ve.slice(1);return Ae(z,K,ot,Vt)},Dr=(z,K,ve)=>ve.length>0?nu(z,K,ve,Pc):ne.none(),Pc=(z,K,ve,Ae)=>{const ot=K(z,ve);return po(Ae,(Vt,gn)=>{const xn=K(z,gn);return el(z,Vt,xn)},ot)},el=(z,K,ve)=>K.bind(Ae=>ve.filter(j(z.eq,Ae))),xf=Dr,zp=Ci(),ih=(z,K)=>xf(zp,(ve,Ae)=>z(Ae),K),nm=z=>fr(z,"table"),Wu=(z,K)=>{const ve=Ls(z,K);return ve.length>0?ne.some(ve):ne.none()},pl=(z,K,ve)=>xo(z,K).bind(Ae=>xo(z,ve).bind(ot=>ih(nm,[Ae,ot]).map(Vt=>({first:Ae,last:ot,table:Vt})))),ah=(z,K)=>Wu(z,K),l1=(z,K,ve)=>pl(z,K,ve).bind(Ae=>{const ot=ao=>ts(z,ao),Vt="thead,tfoot,tbody,table",gn=fr(Ae.first,Vt,ot),xn=fr(Ae.last,Vt,ot);return gn.bind(ao=>xn.bind(Uo=>ts(ao,Uo)?Zm(Ae.table,Ae.first,Ae.last):ne.none()))}),Ef=z=>mt(z,Oo.fromDom),om="data-mce-selected",bd="td["+om+"],th["+om+"]",vd="data-mce-first-selected",ef="td["+vd+"],th["+vd+"]",Cr="data-mce-last-selected",Rr="td["+Cr+"],th["+Cr+"]",Ma={selected:om,selectedSelector:bd,firstSelected:vd,firstSelectedSelector:ef,lastSelected:Cr,lastSelectedSelector:Rr},qm=z=>Tn(z).bind(K=>ah(K,Ma.firstSelectedSelector)).fold(W(z),K=>K[0]),Wp=z=>(K,ve)=>{const Ae=nn(K),ot=Ae==="col"||Ae==="colgroup"?qm(K):K;return jr(ot,z,ve)},Ea=Wp("th,td,caption"),Dc=Wp("th,td"),Na=z=>Ef(z.model.table.getSelectedCells()),Rc=(z,K)=>{const ve=Dc(z),Ae=ve.bind(ot=>Tn(ot)).map(ot=>Ro(ot));return Mi(ve,Ae,(ot,Vt)=>Yn(Vt,gn=>rn(Ef(gn.dom.cells),xn=>xa(xn,K)==="1"||ts(xn,ot)))).getOr([])},sm=[{text:"None",value:""},{text:"Top",value:"top"},{text:"Middle",value:"middle"},{text:"Bottom",value:"bottom"}],Zo=z=>({value:Ia(z)}),Il=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,Od=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,qi=z=>Il.test(z)||Od.test(z),Ia=z=>ba(z,"#").toUpperCase(),Zp=z=>qi(z)?ne.some({value:Ia(z)}):ne.none(),Ba=z=>{const K=z.toString(16);return(K.length===1?"0"+K:K).toUpperCase()},ki=z=>{const K=Ba(z.red)+Ba(z.green)+Ba(z.blue);return Zo(K)},Xl=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,Bi=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,yu=(z,K,ve,Ae)=>({red:z,green:K,blue:ve,alpha:Ae}),Zu=(z,K,ve,Ae)=>{const ot=parseInt(z,10),Vt=parseInt(K,10),gn=parseInt(ve,10),xn=parseFloat(Ae);return yu(ot,Vt,gn,xn)},Kr=z=>{if(z==="transparent")return ne.some(yu(0,0,0,0));const K=Xl.exec(z);if(K!==null)return ne.some(Zu(K[1],K[2],K[3],"1"));const ve=Bi.exec(z);return ve!==null?ne.some(Zu(ve[1],ve[2],ve[3],ve[4])):ne.none()},xi=z=>Zp(z).orThunk(()=>Kr(z).map(ki)).getOrThunk(()=>{const K=document.createElement("canvas");K.height=1,K.width=1;const ve=K.getContext("2d");ve.clearRect(0,0,K.width,K.height),ve.fillStyle="#FFFFFF",ve.fillStyle=z,ve.fillRect(0,0,1,1);const Ae=ve.getImageData(0,0,1,1).data,ot=Ae[0],Vt=Ae[1],gn=Ae[2],xn=Ae[3];return ki(yu(ot,Vt,gn,xn))}),Bl=z=>Kr(z).map(ki).map(K=>"#"+K.value).getOr(z),_u=z=>{let K=z;return{get:()=>K,set:ot=>{K=ot}}},di=z=>{const K=_u(ne.none()),ve=()=>K.get().each(z);return{clear:()=>{ve(),K.set(ne.none())},isSet:()=>K.get().isSome(),get:()=>K.get(),set:xn=>{ve(),K.set(ne.some(xn))}}},Xm=()=>di(z=>z.unbind()),Up=(z,K,ve)=>Ae=>{const ot=Xm(),Vt=Qu(ve),gn=()=>{const xn=Na(z),ao=Uo=>z.formatter.match(K,{value:ve},Uo.dom,Vt);Vt?(Ae.setActive(!rn(xn,ao)),ot.set(z.formatter.formatChanged(K,Uo=>Ae.setActive(!Uo),!0))):(Ae.setActive(Nt(xn,ao)),ot.set(z.formatter.formatChanged(K,Ae.setActive,!1,{value:ve})))};return z.initialized?gn():z.on("init",gn),ot.clear},lr=z=>mn(z,"menu"),ou=z=>mt(z,K=>{const ve=K.text||K.title||"";return lr(K)?{text:ve,items:ou(K.menu)}:{text:ve,value:K.value}}),$s=(z,K,ve,Ae)=>mt(K,ot=>{const Vt=ot.text||ot.title;return lr(ot)?{type:"nestedmenuitem",text:Vt,getSubmenuItems:()=>$s(z,ot.menu,ve,Ae)}:{text:Vt,type:"togglemenuitem",onAction:()=>Ae(ot.value),onSetup:Up(z,ve,ot.value)}}),La=(z,K)=>ve=>{z.execCommand("mceTableApplyCellStyle",!1,{[K]:ve})},Mc=z=>Ne(z,K=>lr(K)?[{...K,menu:Mc(K.menu)}]:Ml(K.value)?[K]:[]),wu=(z,K,ve,Ae)=>ot=>ot($s(z,K,ve,Ae)),xe=(z,K,ve)=>{const Ae=mt(K,ot=>({text:ot.title,value:"#"+xi(ot.value).value,type:"choiceitem"}));return[{type:"fancymenuitem",fancytype:"colorswatch",initData:{colors:Ae.length>0?Ae:void 0,allowCustomColors:!1},onAction:ot=>{const Vt=ot.value==="remove"?"":ot.value;z.execCommand("mceTableApplyCellStyle",!1,{[ve]:Vt})}}]},Nc=z=>()=>{const ve=z.queryCommandValue("mceTableRowType")==="header"?"body":"header";z.execCommand("mceTableRowType",!1,{type:ve})},Tf=z=>()=>{const ve=z.queryCommandValue("mceTableColType")==="th"?"td":"th";z.execCommand("mceTableColType",!1,{type:ve})},jl=z=>{const K=ou(sh(z));return K.length>0?ne.some({name:"class",type:"listbox",label:"Class",items:K}):ne.none()},_r=[{name:"width",type:"input",label:"Width"},{name:"height",type:"input",label:"Height"},{name:"celltype",type:"listbox",label:"Cell type",items:[{text:"Cell",value:"td"},{text:"Header cell",value:"th"}]},{name:"scope",type:"listbox",label:"Scope",items:[{text:"None",value:""},{text:"Row",value:"row"},{text:"Column",value:"col"},{text:"Row group",value:"rowgroup"},{text:"Column group",value:"colgroup"}]},{name:"halign",type:"listbox",label:"Horizontal align",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{name:"valign",type:"listbox",label:"Vertical align",items:sm}],qp=z=>_r.concat(jl(z).toArray()),im=(z,K)=>{const Ae=[{name:"borderstyle",type:"listbox",label:"Border style",items:[{text:"Select...",value:""}].concat(ou(Jd(z)))},{name:"bordercolor",type:"colorinput",label:"Border color"},{name:"backgroundcolor",type:"colorinput",label:"Background color"}];return{title:"Advanced",name:"advanced",items:K==="cell"?[{name:"borderwidth",type:"input",label:"Border width"}].concat(Ae):Ae}},su={normal:(z,K)=>{const ve=z.dom;return{setAttrib:(gn,xn)=>{ve.setAttrib(K,gn,xn)},setStyle:(gn,xn)=>{ve.setStyle(K,gn,xn)},setFormat:(gn,xn)=>{xn===""?z.formatter.remove(gn,{value:null},K,!0):z.formatter.apply(gn,{value:xn},K)}}}},X=Xn("th"),re=(z,K)=>z&&K?"sectionCells":z?"section":"cells",ye=z=>{const K=z.section==="thead",ve=bu(Ze(z.cells),"th");return z.section==="tfoot"?{type:"footer"}:K||ve?{type:"header",subType:re(K,ve)}:{type:"body"}},Ze=z=>{const K=Yn(z,ve=>X(ve.element));return K.length===0?ne.some("td"):K.length===z.length?ne.some("th"):ne.none()},tt=z=>{const K=mt(z,ot=>ye(ot).type),ve=Zt(K,"header"),Ae=Zt(K,"footer");if(!ve&&!Ae)return ne.some("body");{const ot=Zt(K,"body");return ve&&!ot&&!Ae?ne.some("header"):!ve&&!ot&&Ae?ne.some("footer"):ne.none()}},tn=z=>{let K=!1,ve;return(...Ae)=>(K||(K=!0,ve=z.apply(null,Ae)),ve)},Kn=(z,K)=>is(z.all,ve=>Ut(ve.cells,Ae=>ts(K,Ae.element))),Mo=(z,K,ve)=>{const Ae=mt(K.selection,Vt=>Pe(Vt).bind(gn=>Kn(z,gn)).filter(ve)),ot=Us(Ae);return yi(ot.length>0,ot)},To=(z,K)=>K.mergable,_o=(z,K)=>K.unmergable,ai=(z,K)=>Mo(z,K,_e),pi=(z,K)=>Kn(z,K).exists(ve=>!ve.isLocked),Yl=(z,K)=>Nt(K,ve=>pi(z,ve)),Uu=(z,K)=>To(z,K).filter(ve=>Yl(z,ve.cells)),Fa=(z,K)=>_o(z,K).filter(ve=>Yl(z,ve));({...{generate:z=>{if(!p(z))throw new Error("cases must be an array");if(z.length===0)throw new Error("there must be at least one case");const K=[],ve={};return de(z,(Ae,ot)=>{const Vt=Se(Ae);if(Vt.length!==1)throw new Error("one and only one name per case");const gn=Vt[0],xn=Ae[gn];if(ve[gn]!==void 0)throw new Error("duplicate key detected:"+gn);if(gn==="cata")throw new Error("cannot have a case named cata (sorry)");if(!p(xn))throw new Error("case arguments must be an array");K.push(gn),ve[gn]=(...ao)=>{const Uo=ao.length;if(Uo!==xn.length)throw new Error("Wrong number of arguments to case "+gn+". Expected "+xn.length+" ("+xn+"), got "+Uo);return{fold:(...tr)=>{if(tr.length!==z.length)throw new Error("Wrong number of arguments to fold. Expected "+z.length+", got "+tr.length);return tr[ot].apply(null,ao)},match:tr=>{const Vr=Se(tr);if(K.length!==Vr.length)throw new Error("Wrong number of arguments to match. Expected: "+K.join(",")+` -Actual: `+Vr.join(","));if(!Nt(K,Cl=>Zt(Vr,Cl)))throw new Error("Not all branches were specified when using match. Specified: "+Vr.join(", ")+` -Required: `+K.join(", "));return tr[gn].apply(null,ao)},log:tr=>{console.log(tr,{constructors:K,constructor:gn,params:ao})}}}}),ve}}.generate([{none:[]},{only:["index"]},{left:["index","next"]},{middle:["prev","index","next"]},{right:["prev","index"]}])});const Zn=(z,K)=>{const ve=Jc.fromTable(z);return ai(ve,K).bind(ot=>{const Vt=ot[ot.length-1],gn=ot[0].row,xn=Vt.row+Vt.rowspan,ao=ve.all.slice(gn,xn);return tt(ao)}).getOr("")},Ha=z=>Dl(z,"rgb")?Bl(z):z,sb=z=>{const K=Oo.fromDom(z);return{borderwidth:At(K,"border-width").getOr(""),borderstyle:At(K,"border-style").getOr(""),bordercolor:At(K,"border-color").map(Ha).getOr(""),backgroundcolor:At(K,"background-color").map(Ha).getOr("")}},_d=z=>{const K=z[0],ve=z.slice(1);return de(ve,Ae=>{de(Se(K),ot=>{Be(Ae,(Vt,gn)=>{const xn=K[ot];xn!==""&&ot===gn&&xn!==Vt&&(K[ot]="")})})}),K},ea=(z,K,ve,Ae)=>Ut(z,ot=>!y(ve.formatter.matchNode(Ae,K+ot))).getOr(""),tf=j(ea,["left","center","right"],"align"),Ym=j(ea,["top","middle","bottom"],"valign"),Ta=(z,K)=>{const ve=pd(z),Ae=ml(z),ot=()=>({borderstyle:Le(ve,"border-style").getOr(""),bordercolor:Ha(Le(ve,"border-color").getOr("")),backgroundcolor:Ha(Le(ve,"background-color").getOr(""))}),Vt={height:"",width:"100%",cellspacing:"",cellpadding:"",caption:!1,class:"",align:"",border:""},gn=()=>{const _i=ve["border-width"];return tu(z)&&_i?{border:_i}:Le(Ae,"border").fold(()=>({}),tr=>({border:tr}))},xn=K?ot():{},ao=()=>{const _i=Le(ve,"border-spacing").or(Le(Ae,"cellspacing")).fold(()=>({}),Vr=>({cellspacing:Vr})),tr=Le(ve,"border-padding").or(Le(Ae,"cellpadding")).fold(()=>({}),Vr=>({cellpadding:Vr}));return{..._i,...tr}};return{...Vt,...ve,...Ae,...xn,...gn(),...ao()}},Su=z=>Tn(Oo.fromDom(z)).map(K=>{const ve={selection:Ef(z.cells)};return Zn(K,ve)}).getOr(""),Xp=(z,K,ve)=>{const Ae=(xn,ao)=>{const Uo=At(Oo.fromDom(ao),"border-width");return tu(z)&&Uo.isSome()?Uo.getOr(""):xn.getAttrib(ao,"border")||Nl(z.dom,ao,"border-width")||Nl(z.dom,ao,"border")||""},ot=z.dom,Vt=tu(z)?ot.getStyle(K,"border-spacing")||ot.getAttrib(K,"cellspacing"):ot.getAttrib(K,"cellspacing")||ot.getStyle(K,"border-spacing"),gn=tu(z)?Nl(ot,K,"padding")||ot.getAttrib(K,"cellpadding"):ot.getAttrib(K,"cellpadding")||Nl(ot,K,"padding");return{width:ot.getStyle(K,"width")||ot.getAttrib(K,"width"),height:ot.getStyle(K,"height")||ot.getAttrib(K,"height"),cellspacing:Vt??"",cellpadding:gn??"",border:Ae(ot,K),caption:!!ot.select("caption",K)[0],class:ot.getAttrib(K,"class",""),align:tf(z,K),...ve?sb(K):{}}},wd=(z,K,ve)=>{const Ae=z.dom;return{height:Ae.getStyle(K,"height")||Ae.getAttrib(K,"height"),class:Ae.getAttrib(K,"class",""),type:Su(K),align:tf(z,K),...ve?sb(K):{}}},jp=(z,K,ve,Ae)=>{const ot=z.dom,Vt=Ae.getOr(K),gn=(xn,ao)=>ot.getStyle(xn,ao)||ot.getAttrib(xn,ao);return{width:gn(Vt,"width"),height:gn(K,"height"),scope:ot.getAttrib(K,"scope"),celltype:Ec(K),class:ot.getAttrib(K,"class",""),halign:tf(z,K),valign:Ym(z,K),...ve?sb(K):{}}},nf=(z,K)=>{const ve=Jc.fromTable(z),Ae=Jc.justCells(ve),ot=Yn(Ae,Vt=>rn(K,gn=>ts(Vt.element,gn)));return mt(ot,Vt=>({element:Vt.element.dom,column:Jc.getColumnAt(ve,Vt.column).map(gn=>gn.element.dom)}))},un=(z,K,ve,Ae)=>{Ae("scope")&&z.setAttrib("scope",ve.scope),Ae("class")&&z.setAttrib("class",ve.class),Ae("height")&&z.setStyle("height",As(ve.height)),Ae("width")&&K.setStyle("width",As(ve.width))},rb=(z,K,ve)=>{ve("backgroundcolor")&&z.setFormat("tablecellbackgroundcolor",K.backgroundcolor),ve("bordercolor")&&z.setFormat("tablecellbordercolor",K.bordercolor),ve("borderstyle")&&z.setFormat("tablecellborderstyle",K.borderstyle),ve("borderwidth")&&z.setFormat("tablecellborderwidth",As(K.borderwidth))},of=(z,K,ve,Ae)=>{const ot=K.length===1;de(K,Vt=>{const gn=Vt.element,xn=ot?_e:Ae,ao=su.normal(z,gn),Uo=Vt.column.map(_i=>su.normal(z,_i)).getOr(ao);un(ao,Uo,ve,xn),tm(z)&&rb(ao,ve,xn),Ae("halign")&&dc(z,gn,ve.halign),Ae("valign")&&th(z,gn,ve.valign)})},sf=(z,K)=>{z.execCommand("mceTableCellType",!1,{type:K.celltype,no_events:!0})},ru=(z,K,ve,Ae)=>{const ot=yt(Ae,(Vt,gn)=>ve[gn]!==Vt);q(ot)>0&&K.length>=1&&Tn(K[0]).each(Vt=>{const gn=nf(Vt,K),xn=q(yt(ot,(Uo,_i)=>_i!=="scope"&&_i!=="celltype"))>0,ao=je(ot,"celltype");(xn||je(ot,"scope"))&&of(z,gn,Ae,j(je,ot)),ao&&sf(z,Ae),Os(z,Vt.dom,{structure:ao,style:xn})})},li=(z,K,ve,Ae)=>{const ot=Ae.getData();Ae.close(),z.undoManager.transact(()=>{ru(z,K,ve,ot),z.focus()})},Js=(z,K)=>{const ve=Tn(K[0]).map(Ae=>mt(nf(Ae,K),ot=>jp(z,ot.element,tm(z),ot.column)));return _d(ve.getOrDie())},Ei=z=>{const K=Na(z);if(K.length===0)return;const ve=Js(z,K),Ae={type:"tabpanel",tabs:[{title:"General",name:"general",items:qp(z)},im(z,"cell")]},ot={type:"panel",items:[{type:"grid",columns:2,items:qp(z)}]};z.windowManager.open({title:"Cell Properties",size:"normal",body:tm(z)?Ae:ot,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:ve,onSubmit:j(li,z,K,ve)})},wl=z=>{const K=ou(Ou(z));return K.length>0?ne.some({name:"class",type:"listbox",label:"Class",items:K}):ne.none()},ys=[{type:"listbox",name:"type",label:"Row type",items:[{text:"Header",value:"header"},{text:"Body",value:"body"},{text:"Footer",value:"footer"}]},{type:"listbox",name:"align",label:"Alignment",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{label:"Height",name:"height",type:"input"}],lh=z=>ys.concat(wl(z).toArray()),ca=(z,K,ve)=>{ve("class")&&z.setAttrib("class",K.class),ve("height")&&z.setStyle("height",As(K.height))},Qr=(z,K,ve)=>{ve("backgroundcolor")&&z.setStyle("background-color",K.backgroundcolor),ve("bordercolor")&&z.setStyle("border-color",K.bordercolor),ve("borderstyle")&&z.setStyle("border-style",K.borderstyle)},Gm=(z,K,ve,Ae)=>{const Vt=K.length===1?_e:Ae;de(K,gn=>{const xn=su.normal(z,gn);ca(xn,ve,Vt),nh(z)&&Qr(xn,ve,Vt),Ae("align")&&dc(z,gn,ve.align)})},Gt=(z,K)=>{z.execCommand("mceTableRowType",!1,{type:K.type,no_events:!0})},Sl=(z,K,ve,Ae)=>{const ot=yt(Ae,(Vt,gn)=>ve[gn]!==Vt);if(q(ot)>0){const Vt=je(ot,"type"),gn=Vt?q(ot)>1:!0;gn&&Gm(z,K,Ae,j(je,ot)),Vt&&Gt(z,Ae),Tn(Oo.fromDom(K[0])).each(xn=>Os(z,xn.dom,{structure:Vt,style:gn}))}},Km=(z,K,ve,Ae)=>{const ot=Ae.getData();Ae.close(),z.undoManager.transact(()=>{Sl(z,K,ve,ot),z.focus()})},Fs=z=>{const K=Rc(rr(z),Ma.selected);if(K.length===0)return;const ve=mt(K,gn=>wd(z,gn.dom,nh(z))),Ae=_d(ve),ot={type:"tabpanel",tabs:[{title:"General",name:"general",items:lh(z)},im(z,"row")]},Vt={type:"panel",items:[{type:"grid",columns:2,items:lh(z)}]};z.windowManager.open({title:"Row Properties",size:"normal",body:nh(z)?ot:Vt,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:Ae,onSubmit:j(Km,z,mt(K,gn=>gn.dom),Ae)})},Li=(z,K,ve)=>{const Ae=ve?[{type:"input",name:"cols",label:"Cols",inputMode:"numeric"},{type:"input",name:"rows",label:"Rows",inputMode:"numeric"}]:[],ot=[{type:"input",name:"width",label:"Width"},{type:"input",name:"height",label:"Height"}],Vt=oh(z)?[{type:"input",name:"cellspacing",label:"Cell spacing",inputMode:"numeric"},{type:"input",name:"cellpadding",label:"Cell padding",inputMode:"numeric"},{type:"input",name:"border",label:"Border width"},{type:"label",label:"Caption",items:[{type:"checkbox",name:"caption",label:"Show caption"}]}]:[],gn=[{type:"listbox",name:"align",label:"Alignment",items:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]}],xn=K.length>0?[{type:"listbox",name:"class",label:"Class",items:K}]:[];return Ae.concat(ot).concat(Vt).concat(gn).concat(xn)},Yp=(z,K,ve,Ae)=>{if(K.tagName==="TD"||K.tagName==="TH")h(ve)&&A(Ae)?z.setStyle(K,ve,Ae):z.setStyles(K,ve);else if(K.children)for(let ot=0;ot{const ot=z.dom,Vt={},gn={},xn=tu(z),ao=_l(z);if(y(ve.class)||(Vt.class=ve.class),gn.height=As(ve.height),xn?gn.width=As(ve.width):ot.getAttrib(K,"width")&&(Vt.width=Ri(ve.width)),xn?(gn["border-width"]=As(ve.border),gn["border-spacing"]=As(ve.cellspacing)):(Vt.border=ve.border,Vt.cellpadding=ve.cellpadding,Vt.cellspacing=ve.cellspacing),xn&&K.children){const Uo={};if(Ae.border&&(Uo["border-width"]=As(ve.border)),Ae.cellpadding&&(Uo.padding=As(ve.cellpadding)),ao&&Ae.bordercolor&&(Uo["border-color"]=ve.bordercolor),!Rt(Uo))for(let _i=0;_i{const ot=z.dom,Vt=Ae.getData(),gn=yt(Vt,(xn,ao)=>ve[ao]!==xn);Ae.close(),Vt.class===""&&delete Vt.class,z.undoManager.transact(()=>{if(!K){const xn=Ya(Vt.cols).getOr(1),ao=Ya(Vt.rows).getOr(1);z.execCommand("mceInsertTable",!1,{rows:ao,columns:xn}),K=Dc(rr(z),ga(z)).bind(Uo=>Tn(Uo,ga(z))).map(Uo=>Uo.dom).getOrDie()}if(q(gn)>0){const xn={border:je(gn,"border"),bordercolor:je(gn,"bordercolor"),cellpadding:je(gn,"cellpadding")};Cu(z,K,Vt,xn);const ao=ot.select("caption",K)[0];(ao&&!Vt.caption||!ao&&Vt.caption)&&z.execCommand("mceTableToggleCaption"),dc(z,K,Vt.align)}if(z.focus(),z.addVisual(),q(gn)>0){const xn=je(gn,"caption"),ao=xn?q(gn)>1:!0;Os(z,K,{structure:xn,style:ao})}})},Ic=(z,K)=>{const ve=z.dom;let Ae,ot=Ta(z,_l(z));K?(ot.cols="1",ot.rows="1",_l(z)&&(ot.borderstyle="",ot.bordercolor="",ot.backgroundcolor="")):(Ae=ve.getParent(z.selection.getStart(),"table",z.getBody()),Ae?ot=Xp(z,Ae,_l(z)):_l(z)&&(ot.borderstyle="",ot.bordercolor="",ot.backgroundcolor=""));const Vt=ou(wf(z));Vt.length>0&&ot.class&&(ot.class=ot.class.replace(/\s*mce\-item\-table\s*/g,""));const gn={type:"grid",columns:2,items:Li(z,Vt,K)},xn=()=>({type:"panel",items:[gn]}),ao=()=>({type:"tabpanel",tabs:[{title:"General",name:"general",items:[gn]},im(z,"table")]}),Uo=_l(z)?ao():xn();z.windowManager.open({title:"Table Properties",size:"normal",body:Uo,onSubmit:j(ku,z,Ae,ot),buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:ot})},am=z=>{const K=ve=>{ia(rr(z))&&ve()};Be({mceTableProps:j(Ic,z,!1),mceTableRowProps:j(Fs,z),mceTableCellProps:j(Ei,z),mceInsertTableDialog:j(Ic,z,!0)},(ve,Ae)=>z.addCommand(Ae,()=>K(ve)))},tl=(z,K)=>nt(z,K).isSome(),er=J,ua=z=>{const K=(Ae,ot)=>Yr(Ae,ot).exists(Vt=>parseInt(Vt,10)>1),ve=Ae=>K(Ae,"rowspan")||K(Ae,"colspan");return z.length>0&&Nt(z,ve)?ne.some(z):ne.none()},rf=(z,K,ve)=>K.length<=1?ne.none():l1(z,ve.firstSelectedSelector,ve.lastSelectedSelector).map(Ae=>({bounds:Ae,cells:K})),nl=z=>({element:z,mergable:ne.none(),unmergable:ne.none(),selection:[z]}),c1=(z,K,ve)=>({element:ve,mergable:rf(K,z,Ma),unmergable:ua(z),selection:er(z)}),ch=z=>{const K=_u(ne.none()),ve=_u([]);let Ae=ne.none();const ot=Xn("caption"),Vt=ds=>Ae.forall(_s=>!_s[ds]),gn=()=>Ea(rr(z),ga(z)),xn=()=>Ea(Vi(z),ga(z)),ao=()=>gn().bind(ds=>zi(Mi(Tn(ds),xn().bind(Tn),(_s,fa)=>ts(_s,fa)?ot(ds)?ne.some(nl(ds)):ne.some(c1(Na(z),_s,ds)):ne.none()))),Uo=ds=>Tn(ds.element).map(fa=>{const ol=Jc.fromTable(fa),Gp=ai(ol,ds).getOr([]),kd=cs(Gp,(gi,Fc)=>(Fc.isLocked&&(gi.onAny=!0,Fc.column===0?gi.onFirst=!0:Fc.column+Fc.colspan>=ol.grid.columns&&(gi.onLast=!0)),gi),{onAny:!1,onFirst:!1,onLast:!1});return{mergeable:Uu(ol,ds).isSome(),unmergeable:Fa(ol,ds).isSome(),locked:kd}}),_i=()=>{K.set(tn(ao)()),Ae=K.get().bind(Uo),de(ve.get(),ae)},tr=ds=>(ds(),ve.set(ve.get().concat([ds])),()=>{ve.set(Yn(ve.get(),_s=>_s!==ds))}),Vr=(ds,_s)=>tr(()=>K.get().fold(()=>{ds.setEnabled(!1)},fa=>{ds.setEnabled(!_s(fa)&&z.selection.isEditable())})),gc=(ds,_s,fa)=>tr(()=>K.get().fold(()=>{ds.setEnabled(!1),ds.setActive(!1)},ol=>{ds.setEnabled(!_s(ol)&&z.selection.isEditable()),ds.setActive(fa(ol))})),Cl=ds=>Ae.exists(_s=>_s.locked[ds]),Bc=ds=>Vr(ds,_s=>!1),Cd=ds=>Vr(ds,_s=>ot(_s.element)),qu=ds=>_s=>Vr(_s,fa=>ot(fa.element)||Cl(ds)),uh=ds=>_s=>Vr(_s,fa=>ot(fa.element)||ds().isNone()),Xs=(ds,_s)=>fa=>Vr(fa,ol=>ot(ol.element)||ds().isNone()||Cl(_s)),dh=ds=>Vr(ds,_s=>Vt("mergeable")),Jm=ds=>Vr(ds,_s=>Vt("unmergeable")),Ti=ds=>gc(ds,fe,_s=>Tn(_s.element,ga(z)).exists(ol=>tl(ol,"caption"))),Lc=(ds,_s)=>fa=>gc(fa,ol=>ot(ol.element),()=>z.queryCommandValue(ds)===_s),lm=Lc("mceTableRowType","header"),fh=Lc("mceTableColType","th");return z.on("NodeChange ExecCommand TableSelectorChange",_i),{onSetupTable:Bc,onSetupCellOrRow:Cd,onSetupColumn:qu,onSetupPasteable:uh,onSetupPasteableColumn:Xs,onSetupMergeable:dh,onSetupUnmergeable:Jm,resetTargets:_i,onSetupTableWithCaption:Ti,onSetupTableRowHeaders:lm,onSetupTableColumnHeaders:fh,targets:K.get}};var af=tinymce.util.Tools.resolve("tinymce.FakeClipboard");const Ll="x-tinymce/dom-table-",xu=Ll+"rows",_t=Ll+"columns",Gl=z=>{var K;const ve=(K=af.read())!==null&&K!==void 0?K:[];return is(ve,Ae=>ne.from(Ae.getType(z)))},iu=()=>Gl(xu),Fl=()=>Gl(_t),Kl=z=>K=>{const ve=()=>{K.setEnabled(z.selection.isEditable())};return z.on("NodeChange",ve),ve(),()=>{z.off("NodeChange",ve)}},ya=(z,K)=>{z.ui.registry.addMenuButton("table",{tooltip:"Table",icon:"table",onSetup:Kl(z),fetch:xn=>xn("inserttable | cell row column | advtablesort | tableprops deletetable")});const ve=xn=>()=>z.execCommand(xn),Ae=(xn,ao)=>{z.queryCommandSupported(ao.command)&&z.ui.registry.addButton(xn,{...ao,onAction:R(ao.onAction)?ao.onAction:ve(ao.command)})},ot=(xn,ao)=>{z.queryCommandSupported(ao.command)&&z.ui.registry.addToggleButton(xn,{...ao,onAction:R(ao.onAction)?ao.onAction:ve(ao.command)})};Ae("tableprops",{tooltip:"Table properties",command:"mceTableProps",icon:"table",onSetup:K.onSetupTable}),Ae("tabledelete",{tooltip:"Delete table",command:"mceTableDelete",icon:"table-delete-table",onSetup:K.onSetupTable}),Ae("tablecellprops",{tooltip:"Cell properties",command:"mceTableCellProps",icon:"table-cell-properties",onSetup:K.onSetupCellOrRow}),Ae("tablemergecells",{tooltip:"Merge cells",command:"mceTableMergeCells",icon:"table-merge-cells",onSetup:K.onSetupMergeable}),Ae("tablesplitcells",{tooltip:"Split cell",command:"mceTableSplitCells",icon:"table-split-cells",onSetup:K.onSetupUnmergeable}),Ae("tableinsertrowbefore",{tooltip:"Insert row before",command:"mceTableInsertRowBefore",icon:"table-insert-row-above",onSetup:K.onSetupCellOrRow}),Ae("tableinsertrowafter",{tooltip:"Insert row after",command:"mceTableInsertRowAfter",icon:"table-insert-row-after",onSetup:K.onSetupCellOrRow}),Ae("tabledeleterow",{tooltip:"Delete row",command:"mceTableDeleteRow",icon:"table-delete-row",onSetup:K.onSetupCellOrRow}),Ae("tablerowprops",{tooltip:"Row properties",command:"mceTableRowProps",icon:"table-row-properties",onSetup:K.onSetupCellOrRow}),Ae("tableinsertcolbefore",{tooltip:"Insert column before",command:"mceTableInsertColBefore",icon:"table-insert-column-before",onSetup:K.onSetupColumn("onFirst")}),Ae("tableinsertcolafter",{tooltip:"Insert column after",command:"mceTableInsertColAfter",icon:"table-insert-column-after",onSetup:K.onSetupColumn("onLast")}),Ae("tabledeletecol",{tooltip:"Delete column",command:"mceTableDeleteCol",icon:"table-delete-column",onSetup:K.onSetupColumn("onAny")}),Ae("tablecutrow",{tooltip:"Cut row",command:"mceTableCutRow",icon:"cut-row",onSetup:K.onSetupCellOrRow}),Ae("tablecopyrow",{tooltip:"Copy row",command:"mceTableCopyRow",icon:"duplicate-row",onSetup:K.onSetupCellOrRow}),Ae("tablepasterowbefore",{tooltip:"Paste row before",command:"mceTablePasteRowBefore",icon:"paste-row-before",onSetup:K.onSetupPasteable(iu)}),Ae("tablepasterowafter",{tooltip:"Paste row after",command:"mceTablePasteRowAfter",icon:"paste-row-after",onSetup:K.onSetupPasteable(iu)}),Ae("tablecutcol",{tooltip:"Cut column",command:"mceTableCutCol",icon:"cut-column",onSetup:K.onSetupColumn("onAny")}),Ae("tablecopycol",{tooltip:"Copy column",command:"mceTableCopyCol",icon:"duplicate-column",onSetup:K.onSetupColumn("onAny")}),Ae("tablepastecolbefore",{tooltip:"Paste column before",command:"mceTablePasteColBefore",icon:"paste-column-before",onSetup:K.onSetupPasteableColumn(Fl,"onFirst")}),Ae("tablepastecolafter",{tooltip:"Paste column after",command:"mceTablePasteColAfter",icon:"paste-column-after",onSetup:K.onSetupPasteableColumn(Fl,"onLast")}),Ae("tableinsertdialog",{tooltip:"Insert table",command:"mceInsertTableDialog",icon:"table",onSetup:Kl(z)});const Vt=Mc(wf(z));Vt.length!==0&&z.queryCommandSupported("mceTableToggleClass")&&z.ui.registry.addMenuButton("tableclass",{icon:"table-classes",tooltip:"Table styles",fetch:wu(z,Vt,"tableclass",xn=>z.execCommand("mceTableToggleClass",!1,xn)),onSetup:K.onSetupTable});const gn=Mc(sh(z));gn.length!==0&&z.queryCommandSupported("mceTableCellToggleClass")&&z.ui.registry.addMenuButton("tablecellclass",{icon:"table-cell-classes",tooltip:"Cell styles",fetch:wu(z,gn,"tablecellclass",xn=>z.execCommand("mceTableCellToggleClass",!1,xn)),onSetup:K.onSetupCellOrRow}),z.queryCommandSupported("mceTableApplyCellStyle")&&(z.ui.registry.addMenuButton("tablecellvalign",{icon:"vertical-align",tooltip:"Vertical align",fetch:wu(z,sm,"tablecellverticalalign",La(z,"vertical-align")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addMenuButton("tablecellborderwidth",{icon:"border-width",tooltip:"Border width",fetch:wu(z,md(z),"tablecellborderwidth",La(z,"border-width")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addMenuButton("tablecellborderstyle",{icon:"border-style",tooltip:"Border style",fetch:wu(z,Jd(z),"tablecellborderstyle",La(z,"border-style")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addMenuButton("tablecellbackgroundcolor",{icon:"cell-background-color",tooltip:"Background color",fetch:xn=>xn(xe(z,Sf(z),"background-color")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addMenuButton("tablecellbordercolor",{icon:"cell-border-color",tooltip:"Border color",fetch:xn=>xn(xe(z,zu(z),"border-color")),onSetup:K.onSetupCellOrRow})),ot("tablecaption",{tooltip:"Table caption",icon:"table-caption",command:"mceTableToggleCaption",onSetup:K.onSetupTableWithCaption}),ot("tablerowheader",{tooltip:"Row header",icon:"table-top-header",command:"mceTableRowType",onAction:Nc(z),onSetup:K.onSetupTableRowHeaders}),ot("tablecolheader",{tooltip:"Column header",icon:"table-left-header",command:"mceTableColType",onAction:Tf(z),onSetup:K.onSetupTableColumnHeaders})},da=z=>{const K=Ae=>z.dom.is(Ae,"table")&&z.getBody().contains(Ae)&&z.dom.isEditable(Ae.parentNode),ve=hl(z);ve.length>0&&z.ui.registry.addContextToolbar("table",{predicate:K,items:ve,scope:"node",position:"node"})},u1=z=>K=>{const ve=()=>{K.setEnabled(z.selection.isEditable())};return z.on("NodeChange",ve),ve(),()=>{z.off("NodeChange",ve)}},Jl=(z,K)=>{const ve=tr=>()=>z.execCommand(tr),Ae=(tr,Vr)=>z.queryCommandSupported(Vr.command)?(z.ui.registry.addMenuItem(tr,{...Vr,onAction:R(Vr.onAction)?Vr.onAction:ve(Vr.command)}),!0):!1,ot=(tr,Vr)=>{z.queryCommandSupported(Vr.command)&&z.ui.registry.addToggleMenuItem(tr,{...Vr,onAction:R(Vr.onAction)?Vr.onAction:ve(Vr.command)})},Vt=tr=>{z.execCommand("mceInsertTable",!1,{rows:tr.numRows,columns:tr.numColumns})},gn=[Ae("tableinsertrowbefore",{text:"Insert row before",icon:"table-insert-row-above",command:"mceTableInsertRowBefore",onSetup:K.onSetupCellOrRow}),Ae("tableinsertrowafter",{text:"Insert row after",icon:"table-insert-row-after",command:"mceTableInsertRowAfter",onSetup:K.onSetupCellOrRow}),Ae("tabledeleterow",{text:"Delete row",icon:"table-delete-row",command:"mceTableDeleteRow",onSetup:K.onSetupCellOrRow}),Ae("tablerowprops",{text:"Row properties",icon:"table-row-properties",command:"mceTableRowProps",onSetup:K.onSetupCellOrRow}),Ae("tablecutrow",{text:"Cut row",icon:"cut-row",command:"mceTableCutRow",onSetup:K.onSetupCellOrRow}),Ae("tablecopyrow",{text:"Copy row",icon:"duplicate-row",command:"mceTableCopyRow",onSetup:K.onSetupCellOrRow}),Ae("tablepasterowbefore",{text:"Paste row before",icon:"paste-row-before",command:"mceTablePasteRowBefore",onSetup:K.onSetupPasteable(iu)}),Ae("tablepasterowafter",{text:"Paste row after",icon:"paste-row-after",command:"mceTablePasteRowAfter",onSetup:K.onSetupPasteable(iu)})],xn=[Ae("tableinsertcolumnbefore",{text:"Insert column before",icon:"table-insert-column-before",command:"mceTableInsertColBefore",onSetup:K.onSetupColumn("onFirst")}),Ae("tableinsertcolumnafter",{text:"Insert column after",icon:"table-insert-column-after",command:"mceTableInsertColAfter",onSetup:K.onSetupColumn("onLast")}),Ae("tabledeletecolumn",{text:"Delete column",icon:"table-delete-column",command:"mceTableDeleteCol",onSetup:K.onSetupColumn("onAny")}),Ae("tablecutcolumn",{text:"Cut column",icon:"cut-column",command:"mceTableCutCol",onSetup:K.onSetupColumn("onAny")}),Ae("tablecopycolumn",{text:"Copy column",icon:"duplicate-column",command:"mceTableCopyCol",onSetup:K.onSetupColumn("onAny")}),Ae("tablepastecolumnbefore",{text:"Paste column before",icon:"paste-column-before",command:"mceTablePasteColBefore",onSetup:K.onSetupPasteableColumn(Fl,"onFirst")}),Ae("tablepastecolumnafter",{text:"Paste column after",icon:"paste-column-after",command:"mceTablePasteColAfter",onSetup:K.onSetupPasteableColumn(Fl,"onLast")})],ao=[Ae("tablecellprops",{text:"Cell properties",icon:"table-cell-properties",command:"mceTableCellProps",onSetup:K.onSetupCellOrRow}),Ae("tablemergecells",{text:"Merge cells",icon:"table-merge-cells",command:"mceTableMergeCells",onSetup:K.onSetupMergeable}),Ae("tablesplitcells",{text:"Split cell",icon:"table-split-cells",command:"mceTableSplitCells",onSetup:K.onSetupUnmergeable})];Oa(z)?z.ui.registry.addNestedMenuItem("inserttable",{text:"Table",icon:"table",getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"inserttable",onAction:Vt}],onSetup:u1(z)}):z.ui.registry.addMenuItem("inserttable",{text:"Table",icon:"table",onAction:ve("mceInsertTableDialog"),onSetup:u1(z)}),z.ui.registry.addMenuItem("inserttabledialog",{text:"Insert table",icon:"table",onAction:ve("mceInsertTableDialog"),onSetup:u1(z)}),Ae("tableprops",{text:"Table properties",onSetup:K.onSetupTable,command:"mceTableProps"}),Ae("deletetable",{text:"Delete table",icon:"table-delete-table",onSetup:K.onSetupTable,command:"mceTableDelete"}),Zt(gn,!0)&&z.ui.registry.addNestedMenuItem("row",{type:"nestedmenuitem",text:"Row",getSubmenuItems:W("tableinsertrowbefore tableinsertrowafter tabledeleterow tablerowprops | tablecutrow tablecopyrow tablepasterowbefore tablepasterowafter")}),Zt(xn,!0)&&z.ui.registry.addNestedMenuItem("column",{type:"nestedmenuitem",text:"Column",getSubmenuItems:W("tableinsertcolumnbefore tableinsertcolumnafter tabledeletecolumn | tablecutcolumn tablecopycolumn tablepastecolumnbefore tablepastecolumnafter")}),Zt(ao,!0)&&z.ui.registry.addNestedMenuItem("cell",{type:"nestedmenuitem",text:"Cell",getSubmenuItems:W("tablecellprops tablemergecells tablesplitcells")}),z.ui.registry.addContextMenu("table",{update:()=>(K.resetTargets(),K.targets().fold(W(""),tr=>nn(tr.element)==="caption"?"tableprops deletetable":"cell row column | advtablesort | tableprops deletetable"))});const Uo=Mc(wf(z));Uo.length!==0&&z.queryCommandSupported("mceTableToggleClass")&&z.ui.registry.addNestedMenuItem("tableclass",{icon:"table-classes",text:"Table styles",getSubmenuItems:()=>$s(z,Uo,"tableclass",tr=>z.execCommand("mceTableToggleClass",!1,tr)),onSetup:K.onSetupTable});const _i=Mc(sh(z));_i.length!==0&&z.queryCommandSupported("mceTableCellToggleClass")&&z.ui.registry.addNestedMenuItem("tablecellclass",{icon:"table-cell-classes",text:"Cell styles",getSubmenuItems:()=>$s(z,_i,"tablecellclass",tr=>z.execCommand("mceTableCellToggleClass",!1,tr)),onSetup:K.onSetupCellOrRow}),z.queryCommandSupported("mceTableApplyCellStyle")&&(z.ui.registry.addNestedMenuItem("tablecellvalign",{icon:"vertical-align",text:"Vertical align",getSubmenuItems:()=>$s(z,sm,"tablecellverticalalign",La(z,"vertical-align")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addNestedMenuItem("tablecellborderwidth",{icon:"border-width",text:"Border width",getSubmenuItems:()=>$s(z,md(z),"tablecellborderwidth",La(z,"border-width")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addNestedMenuItem("tablecellborderstyle",{icon:"border-style",text:"Border style",getSubmenuItems:()=>$s(z,Jd(z),"tablecellborderstyle",La(z,"border-style")),onSetup:K.onSetupCellOrRow}),z.ui.registry.addNestedMenuItem("tablecellbackgroundcolor",{icon:"cell-background-color",text:"Background color",getSubmenuItems:()=>xe(z,Sf(z),"background-color"),onSetup:K.onSetupCellOrRow}),z.ui.registry.addNestedMenuItem("tablecellbordercolor",{icon:"cell-border-color",text:"Border color",getSubmenuItems:()=>xe(z,zu(z),"border-color"),onSetup:K.onSetupCellOrRow})),ot("tablecaption",{icon:"table-caption",text:"Table caption",command:"mceTableToggleCaption",onSetup:K.onSetupTableWithCaption}),ot("tablerowheader",{text:"Row header",icon:"table-top-header",command:"mceTableRowType",onAction:Nc(z),onSetup:K.onSetupTableRowHeaders}),ot("tablecolheader",{text:"Column header",icon:"table-left-header",command:"mceTableColType",onAction:Tf(z),onSetup:K.onSetupTableRowHeaders})},Sd=z=>{const K=ch(z);ii(z),am(z),Jl(z,K),ya(z,K),da(z)};var bo=()=>{o.add("table",Sd)};bo()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=q=>q==null,n=q=>!e(q),r=()=>{},c=q=>()=>q;class u{constructor(Le,je){this.tag=Le,this.value=je}static some(Le){return new u(!0,Le)}static none(){return u.singletonNone}fold(Le,je){return this.tag?je(this.value):Le()}isSome(){return this.tag}isNone(){return!this.tag}map(Le){return this.tag?u.some(Le(this.value)):u.none()}bind(Le){return this.tag?Le(this.value):u.none()}exists(Le){return this.tag&&Le(this.value)}forall(Le){return!this.tag||Le(this.value)}filter(Le){return!this.tag||Le(this.value)?this:u.none()}getOr(Le){return this.tag?this.value:Le}or(Le){return this.tag?this:Le}getOrThunk(Le){return this.tag?this.value:Le()}orThunk(Le){return this.tag?this:Le()}getOrDie(Le){if(this.tag)return this.value;throw new Error(Le??"Called getOrDie on None")}static from(Le){return n(Le)?u.some(Le):u.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Le){this.tag&&Le(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}u.singletonNone=new u(!1);const h=(q,Le)=>Le>=0&&Leh(q,0);var b=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils");const y=typeof window<"u"?window:Function("return this;")(),k=function(q,Le,je){const mn=window.Prism;window.Prism={manual:!0};var Rt=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{},Ue=function(ct){var dn=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,Zt=0,rn={},Fe={manual:ct.Prism&&ct.Prism.manual,disableWorkerMessageHandler:ct.Prism&&ct.Prism.disableWorkerMessageHandler,util:{encode:function Ne(Nt){return Nt instanceof mt?new mt(Nt.type,Ne(Nt.content),Nt.alias):Array.isArray(Nt)?Nt.map(Ne):Nt.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(xt){var Ne=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(xt.stack)||[])[1];if(Ne){var Nt=document.getElementsByTagName("script");for(var pn in Nt)if(Nt[pn].src==Ne)return Nt[pn]}return null}},isActive:function(Ne,Nt,pn){for(var xt="no-"+Nt;Ne;){var kn=Ne.classList;if(kn.contains(Nt))return!0;if(kn.contains(xt))return!1;Ne=Ne.parentElement}return!!pn}},languages:{plain:rn,plaintext:rn,text:rn,txt:rn,extend:function(Ne,Nt){var pn=Fe.util.clone(Fe.languages[Ne]);for(var xt in Nt)pn[xt]=Nt[xt];return pn},insertBefore:function(Ne,Nt,pn,xt){xt=xt||Fe.languages;var kn=xt[Ne],Dn={};for(var is in kn)if(kn.hasOwnProperty(is)){if(is==Nt)for(var Gn in pn)pn.hasOwnProperty(Gn)&&(Dn[Gn]=pn[Gn]);pn.hasOwnProperty(is)||(Dn[is]=kn[is])}var as=xt[Ne];return xt[Ne]=Dn,Fe.languages.DFS(Fe.languages,function(vr,Ns){Ns===as&&vr!=Ne&&(this[vr]=Dn)}),Dn},DFS:function Ne(Nt,pn,xt,kn){kn=kn||{};var Dn=Fe.util.objId;for(var is in Nt)if(Nt.hasOwnProperty(is)){pn.call(Nt,is,Nt[is],xt||is);var Gn=Nt[is],as=Fe.util.type(Gn);as==="Object"&&!kn[Dn(Gn)]?(kn[Dn(Gn)]=!0,Ne(Gn,pn,null,kn)):as==="Array"&&!kn[Dn(Gn)]&&(kn[Dn(Gn)]=!0,Ne(Gn,pn,is,kn))}}},plugins:{},highlightAll:function(Ne,Nt){Fe.highlightAllUnder(document,Ne,Nt)},highlightAllUnder:function(Ne,Nt,pn){var xt={callback:pn,container:Ne,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};Fe.hooks.run("before-highlightall",xt),xt.elements=Array.prototype.slice.apply(xt.container.querySelectorAll(xt.selector)),Fe.hooks.run("before-all-elements-highlight",xt);for(var kn=0,Dn;Dn=xt.elements[kn++];)Fe.highlightElement(Dn,Nt===!0,xt.callback)},highlightElement:function(Ne,Nt,pn){var xt=Fe.util.getLanguage(Ne),kn=Fe.languages[xt];Fe.util.setLanguage(Ne,xt);var Dn=Ne.parentElement;Dn&&Dn.nodeName.toLowerCase()==="pre"&&Fe.util.setLanguage(Dn,xt);var is=Ne.textContent,Gn={element:Ne,language:xt,grammar:kn,code:is};function as(Ns){Gn.highlightedCode=Ns,Fe.hooks.run("before-insert",Gn),Gn.element.innerHTML=Gn.highlightedCode,Fe.hooks.run("after-highlight",Gn),Fe.hooks.run("complete",Gn),pn&&pn.call(Gn.element)}if(Fe.hooks.run("before-sanity-check",Gn),Dn=Gn.element.parentElement,Dn&&Dn.nodeName.toLowerCase()==="pre"&&!Dn.hasAttribute("tabindex")&&Dn.setAttribute("tabindex","0"),!Gn.code){Fe.hooks.run("complete",Gn),pn&&pn.call(Gn.element);return}if(Fe.hooks.run("before-highlight",Gn),!Gn.grammar){as(Fe.util.encode(Gn.code));return}if(Nt&&ct.Worker){var vr=new Worker(Fe.filename);vr.onmessage=function(Ns){as(Ns.data)},vr.postMessage(JSON.stringify({language:Gn.language,code:Gn.code,immediateClose:!0}))}else as(Fe.highlight(Gn.code,Gn.grammar,Gn.language))},highlight:function(Ne,Nt,pn){var xt={code:Ne,grammar:Nt,language:pn};if(Fe.hooks.run("before-tokenize",xt),!xt.grammar)throw new Error('The language "'+xt.language+'" has no grammar.');return xt.tokens=Fe.tokenize(xt.code,xt.grammar),Fe.hooks.run("after-tokenize",xt),mt.stringify(Fe.util.encode(xt.tokens),xt.language)},tokenize:function(Ne,Nt){var pn=Nt.rest;if(pn){for(var xt in pn)Nt[xt]=pn[xt];delete Nt.rest}var kn=new jn;return Yn(kn,kn.head,Ne),Eo(Ne,kn,Nt,kn.head,0),cs(kn)},hooks:{all:{},add:function(Ne,Nt){var pn=Fe.hooks.all;pn[Ne]=pn[Ne]||[],pn[Ne].push(Nt)},run:function(Ne,Nt){var pn=Fe.hooks.all[Ne];if(!(!pn||!pn.length))for(var xt=0,kn;kn=pn[xt++];)kn(Nt)}},Token:mt};ct.Prism=Fe;function mt(Ne,Nt,pn,xt){this.type=Ne,this.content=Nt,this.alias=pn,this.length=(xt||"").length|0}mt.stringify=function Ne(Nt,pn){if(typeof Nt=="string")return Nt;if(Array.isArray(Nt)){var xt="";return Nt.forEach(function(as){xt+=Ne(as,pn)}),xt}var kn={type:Nt.type,content:Ne(Nt.content,pn),tag:"span",classes:["token",Nt.type],attributes:{},language:pn},Dn=Nt.alias;Dn&&(Array.isArray(Dn)?Array.prototype.push.apply(kn.classes,Dn):kn.classes.push(Dn)),Fe.hooks.run("wrap",kn);var is="";for(var Gn in kn.attributes)is+=" "+Gn+'="'+(kn.attributes[Gn]||"").replace(/"/g,""")+'"';return"<"+kn.tag+' class="'+kn.classes.join(" ")+'"'+is+">"+kn.content+""};function de(Ne,Nt,pn,xt){Ne.lastIndex=Nt;var kn=Ne.exec(pn);if(kn&&xt&&kn[1]){var Dn=kn[1].length;kn.index+=Dn,kn[0]=kn[0].slice(Dn)}return kn}function Eo(Ne,Nt,pn,xt,kn,Dn){for(var is in pn)if(!(!pn.hasOwnProperty(is)||!pn[is])){var Gn=pn[is];Gn=Array.isArray(Gn)?Gn:[Gn];for(var as=0;as=Dn.reach);Oo+=dr.value.length,dr=dr.next){var wo=dr.value;if(Nt.length>Ne.length)return;if(!(wo instanceof mt)){var Gs=1,ws;if(Ts){if(ws=de(ms,Oo,Ne,Vs),!ws||ws.index>=Ne.length)break;var nn=ws.index,Pi=ws.index+ws[0].length,ts=Oo;for(ts+=dr.value.length;nn>=ts;)dr=dr.next,ts+=dr.value.length;if(ts-=dr.value.length,Oo=ts,dr.value instanceof mt)continue;for(var Qi=dr;Qi!==Nt.tail&&(tsDn.reach&&(Dn.reach=Ye);var wt=dr.prev;Xr&&(wt=Yn(Nt,wt,Xr),Oo+=Xr.length),po(Nt,wt,Gs);var Ft=new mt(is,Ns?Fe.tokenize(ns,Ns):ns,Ki,ns);if(dr=Yn(Nt,wt,Ft),Qe&&Yn(Nt,dr,Qe),Gs>1){var Rn={cause:is+","+as,reach:Ye};Eo(Ne,Nt,pn,dr.prev,Oo,Rn),Dn&&Rn.reach>Dn.reach&&(Dn.reach=Rn.reach)}}}}}}function jn(){var Ne={value:null,prev:null,next:null},Nt={value:null,prev:Ne,next:null};Ne.next=Nt,this.head=Ne,this.tail=Nt,this.length=0}function Yn(Ne,Nt,pn){var xt=Nt.next,kn={value:pn,prev:Nt,next:xt};return Nt.next=kn,xt.prev=kn,Ne.length++,kn}function po(Ne,Nt,pn){for(var xt=Nt.next,kn=0;kn]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},function(ct){function dn(Zt,rn){return"___"+Zt.toUpperCase()+rn+"___"}Object.defineProperties(ct.languages["markup-templating"]={},{buildPlaceholders:{value:function(Zt,rn,Fe,mt){if(Zt.language===rn){var de=Zt.tokenStack=[];Zt.code=Zt.code.replace(Fe,function(Eo){if(typeof mt=="function"&&!mt(Eo))return Eo;for(var jn=de.length,Yn;Zt.code.indexOf(Yn=dn(rn,jn))!==-1;)++jn;return de[jn]=Eo,Yn}),Zt.grammar=ct.languages.markup}}},tokenizePlaceholders:{value:function(Zt,rn){if(Zt.language!==rn||!Zt.tokenStack)return;Zt.grammar=ct.languages[rn];var Fe=0,mt=Object.keys(Zt.tokenStack);function de(Eo){for(var jn=0;jn=mt.length);jn++){var Yn=Eo[jn];if(typeof Yn=="string"||Yn.content&&typeof Yn.content=="string"){var po=mt[Fe],cs=Zt.tokenStack[po],gt=typeof Yn=="string"?Yn:Yn.content,Ut=dn(rn,po),pt=gt.indexOf(Ut);if(pt>-1){++Fe;var Ne=gt.substring(0,pt),Nt=new ct.Token(rn,ct.tokenize(cs,Zt.grammar),"language-"+rn,cs),pn=gt.substring(pt+Ut.length),xt=[];Ne&&xt.push.apply(xt,de([Ne])),xt.push(Nt),pn&&xt.push.apply(xt,de([pn])),typeof Yn=="string"?Eo.splice.apply(Eo,[jn,1].concat(xt)):Yn.content=xt}}else Yn.content&&de(Yn.content)}return Eo}de(Zt.tokens)}}})}(Ue),Ue.languages.c=Ue.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),Ue.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),Ue.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},Ue.languages.c.string],char:Ue.languages.c.char,comment:Ue.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:Ue.languages.c}}}}),Ue.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete Ue.languages.c.boolean,function(ct){var dn=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,Zt=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,function(){return dn.source});ct.languages.cpp=ct.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,function(){return dn.source})),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:dn,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),ct.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,function(){return Zt})+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),ct.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:ct.languages.cpp}}}}),ct.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),ct.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:ct.languages.extend("cpp",{})}}),ct.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},ct.languages.cpp["base-clause"])}(Ue),function(ct){function dn(ws,Pi){return ws.replace(/<<(\d+)>>/g,function(ts,Qi){return"(?:"+Pi[+Qi]+")"})}function Zt(ws,Pi,ts){return RegExp(dn(ws,Pi),"")}function rn(ws,Pi){for(var ts=0;ts>/g,function(){return"(?:"+ws+")"});return ws.replace(/<>/g,"[^\\s\\S]")}var Fe={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function mt(ws){return"\\b(?:"+ws.trim().replace(/ /g,"|")+")\\b"}var de=mt(Fe.typeDeclaration),Eo=RegExp(mt(Fe.type+" "+Fe.typeDeclaration+" "+Fe.contextual+" "+Fe.other)),jn=mt(Fe.typeDeclaration+" "+Fe.contextual+" "+Fe.other),Yn=mt(Fe.type+" "+Fe.typeDeclaration+" "+Fe.other),po=rn(/<(?:[^<>;=+\-*/%&|^]|<>)*>/.source,2),cs=rn(/\((?:[^()]|<>)*\)/.source,2),gt=/@?\b[A-Za-z_]\w*\b/.source,Ut=dn(/<<0>>(?:\s*<<1>>)?/.source,[gt,po]),pt=dn(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[jn,Ut]),Ne=/\[\s*(?:,\s*)*\]/.source,Nt=dn(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[pt,Ne]),pn=dn(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[po,cs,Ne]),xt=dn(/\(<<0>>+(?:,<<0>>+)+\)/.source,[pn]),kn=dn(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[xt,pt,Ne]),Dn={keyword:Eo,punctuation:/[<>()?,.:[\]]/},is=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,Gn=/"(?:\\.|[^\\"\r\n])*"/.source,as=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;ct.languages.csharp=ct.languages.extend("clike",{string:[{pattern:Zt(/(^|[^$\\])<<0>>/.source,[as]),lookbehind:!0,greedy:!0},{pattern:Zt(/(^|[^@$\\])<<0>>/.source,[Gn]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:Zt(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[pt]),lookbehind:!0,inside:Dn},{pattern:Zt(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[gt,kn]),lookbehind:!0,inside:Dn},{pattern:Zt(/(\busing\s+)<<0>>(?=\s*=)/.source,[gt]),lookbehind:!0},{pattern:Zt(/(\b<<0>>\s+)<<1>>/.source,[de,Ut]),lookbehind:!0,inside:Dn},{pattern:Zt(/(\bcatch\s*\(\s*)<<0>>/.source,[pt]),lookbehind:!0,inside:Dn},{pattern:Zt(/(\bwhere\s+)<<0>>/.source,[gt]),lookbehind:!0},{pattern:Zt(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[Nt]),lookbehind:!0,inside:Dn},{pattern:Zt(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[kn,Yn,gt]),inside:Dn}],keyword:Eo,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),ct.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),ct.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:Zt(/([(,]\s*)<<0>>(?=\s*:)/.source,[gt]),lookbehind:!0,alias:"punctuation"}}),ct.languages.insertBefore("csharp","class-name",{namespace:{pattern:Zt(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[gt]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:Zt(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[cs]),lookbehind:!0,alias:"class-name",inside:Dn},"return-type":{pattern:Zt(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[kn,pt]),inside:Dn,alias:"class-name"},"constructor-invocation":{pattern:Zt(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[kn]),lookbehind:!0,inside:Dn,alias:"class-name"},"generic-method":{pattern:Zt(/<<0>>\s*<<1>>(?=\s*\()/.source,[gt,po]),inside:{function:Zt(/^<<0>>/.source,[gt]),generic:{pattern:RegExp(po),alias:"class-name",inside:Dn}}},"type-list":{pattern:Zt(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[de,Ut,gt,kn,Eo.source,cs,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:Zt(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[Ut,cs]),lookbehind:!0,greedy:!0,inside:ct.languages.csharp},keyword:Eo,"class-name":{pattern:RegExp(kn),greedy:!0,inside:Dn},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var vr=Gn+"|"+is,Ns=dn(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[vr]),Vs=rn(dn(/[^"'/()]|<<0>>|\(<>*\)/.source,[Ns]),2),Ts=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,Ki=dn(/<<0>>(?:\s*\(<<1>>*\))?/.source,[pt,Vs]);ct.languages.insertBefore("csharp","class-name",{attribute:{pattern:Zt(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[Ts,Ki]),lookbehind:!0,greedy:!0,inside:{target:{pattern:Zt(/^<<0>>(?=\s*:)/.source,[Ts]),alias:"keyword"},"attribute-arguments":{pattern:Zt(/\(<<0>>*\)/.source,[Vs]),inside:ct.languages.csharp},"class-name":{pattern:RegExp(pt),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var vs=/:[^}\r\n]+/.source,ms=rn(dn(/[^"'/()]|<<0>>|\(<>*\)/.source,[Ns]),2),dr=dn(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[ms,vs]),Oo=rn(dn(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<>*\)/.source,[vr]),2),wo=dn(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[Oo,vs]);function Gs(ws,Pi){return{interpolation:{pattern:Zt(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[ws]),lookbehind:!0,inside:{"format-string":{pattern:Zt(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[Pi,vs]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:ct.languages.csharp}}},string:/[\s\S]+/}}ct.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:Zt(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[dr]),lookbehind:!0,greedy:!0,inside:Gs(dr,ms)},{pattern:Zt(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[wo]),lookbehind:!0,greedy:!0,inside:Gs(wo,Oo)}],char:{pattern:RegExp(is),greedy:!0}}),ct.languages.dotnet=ct.languages.cs=ct.languages.csharp}(Ue),function(ct){var dn=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;ct.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+dn.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+dn.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+dn.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+dn.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:dn,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},ct.languages.css.atrule.inside.rest=ct.languages.css;var Zt=ct.languages.markup;Zt&&(Zt.tag.addInlined("style","css"),Zt.tag.addAttribute("style","css"))}(Ue),function(ct){var dn=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,Zt=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,rn={pattern:RegExp(/(^|[^\w.])/.source+Zt+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};ct.languages.java=ct.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[rn,{pattern:RegExp(/(^|[^\w.])/.source+Zt+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:rn.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+Zt+/[A-Z]\w*\b/.source),lookbehind:!0,inside:rn.inside}],keyword:dn,function:[ct.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),ct.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),ct.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":rn,keyword:dn,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+Zt+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:rn.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+Zt+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:rn.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(//g,function(){return dn.source})),lookbehind:!0,inside:{punctuation:/\./}}})}(Ue),Ue.languages.javascript=Ue.languages.extend("clike",{"class-name":[Ue.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Ue.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Ue.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Ue.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Ue.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Ue.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Ue.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Ue.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Ue.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Ue.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Ue.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Ue.languages.markup&&(Ue.languages.markup.tag.addInlined("script","javascript"),Ue.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),Ue.languages.js=Ue.languages.javascript,Ue.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Ue.languages.markup.tag.inside["attr-value"].inside.entity=Ue.languages.markup.entity,Ue.languages.markup.doctype.inside["internal-subset"].inside=Ue.languages.markup,Ue.hooks.add("wrap",function(ct){ct.type==="entity"&&(ct.attributes.title=ct.content.replace(/&/,"&"))}),Object.defineProperty(Ue.languages.markup.tag,"addInlined",{value:function(dn,Zt){var rn={};rn["language-"+Zt]={pattern:/(^$)/i,lookbehind:!0,inside:Ue.languages[Zt]},rn.cdata=/^$/i;var Fe={"included-cdata":{pattern://i,inside:rn}};Fe["language-"+Zt]={pattern:/[\s\S]+/,inside:Ue.languages[Zt]};var mt={};mt[dn]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return dn}),"i"),lookbehind:!0,greedy:!0,inside:Fe},Ue.languages.insertBefore("markup","cdata",mt)}}),Object.defineProperty(Ue.languages.markup.tag,"addAttribute",{value:function(ct,dn){Ue.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+ct+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[dn,"language-"+dn],inside:Ue.languages[dn]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Ue.languages.html=Ue.languages.markup,Ue.languages.mathml=Ue.languages.markup,Ue.languages.svg=Ue.languages.markup,Ue.languages.xml=Ue.languages.extend("markup",{}),Ue.languages.ssml=Ue.languages.xml,Ue.languages.atom=Ue.languages.xml,Ue.languages.rss=Ue.languages.xml,function(ct){var dn=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,Zt=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],rn=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,Fe=/|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,mt=/[{}\[\](),:;]/;ct.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:dn,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:Zt,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:rn,operator:Fe,punctuation:mt};var de={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:ct.languages.php},Eo=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:de}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:de}}];ct.languages.insertBefore("php","variable",{string:Eo,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:dn,string:Eo,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:Zt,number:rn,operator:Fe,punctuation:mt}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),ct.hooks.add("before-tokenize",function(jn){if(/<\?/.test(jn.code)){var Yn=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;ct.languages["markup-templating"].buildPlaceholders(jn,"php",Yn)}}),ct.hooks.add("after-tokenize",function(jn){ct.languages["markup-templating"].tokenizePlaceholders(jn,"php")})}(Ue),Ue.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},Ue.languages.python["string-interpolation"].inside.interpolation.inside.rest=Ue.languages.python,Ue.languages.py=Ue.languages.python,function(ct){ct.languages.ruby=ct.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===||[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),ct.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var dn={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:ct.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete ct.languages.ruby.function;var Zt="(?:"+[/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source].join("|")+")",rn=/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;ct.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp(/%r/.source+Zt+/[egimnosux]{0,6}/.source),greedy:!0,inside:{interpolation:dn,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:dn,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(/(^|[^:]):/.source+rn),lookbehind:!0,greedy:!0},{pattern:RegExp(/([\r\n{(,][ \t]*)/.source+rn+/(?=:(?!:))/.source),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),ct.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp(/%[qQiIwWs]?/.source+Zt),greedy:!0,inside:{interpolation:dn,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:dn,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:dn,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(/%x/.source+Zt),greedy:!0,inside:{interpolation:dn,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:dn,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete ct.languages.ruby.string,ct.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),ct.languages.rb=ct.languages.ruby}(Ue),window.Prism=mn,Ue}(),A=q=>Le=>Le.options.get(q),R=q=>{const Le=q.options.register;Le("codesample_languages",{processor:"object[]"}),Le("codesample_global_prismjs",{processor:"boolean",default:!1})},N=A("codesample_languages"),F=A("codesample_global_prismjs"),V=q=>y.Prism&&F(q)?y.Prism:k,W=q=>n(q)&&q.nodeName==="PRE"&&q.className.indexOf("language-")!==-1,J=q=>{const Le=q.selection?q.selection.getNode():null;return W(Le)?u.some(Le):u.none()},te=(q,Le,je)=>{const mn=q.dom;q.undoManager.transact(()=>{const Rt=J(q);return je=b.DOM.encode(je),Rt.fold(()=>{q.insertContent('
    '+je+"
    ");const Ue=mn.select("#__new")[0];mn.setAttrib(Ue,"id",null),q.selection.select(Ue)},Ue=>{mn.setAttrib(Ue,"class","language-"+Le),Ue.innerHTML=je,V(q).highlightElement(Ue),q.selection.select(Ue)})})},j=q=>J(q).bind(je=>u.from(je.textContent)).getOr(""),ae=q=>{const Le=[{text:"HTML/XML",value:"markup"},{text:"JavaScript",value:"javascript"},{text:"CSS",value:"css"},{text:"PHP",value:"php"},{text:"Ruby",value:"ruby"},{text:"Python",value:"python"},{text:"Java",value:"java"},{text:"C",value:"c"},{text:"C#",value:"csharp"},{text:"C++",value:"cpp"}],je=N(q);return je||Le},fe=(q,Le)=>J(q).fold(()=>Le,mn=>{const Rt=mn.className.match(/language-(\w+)/);return Rt?Rt[1]:Le}),_e=q=>{const Le=ae(q),je=p(Le).fold(c(""),Ue=>Ue.value),mn=fe(q,je),Rt=j(q);q.windowManager.open({title:"Insert/Edit Code Sample",size:"large",body:{type:"panel",items:[{type:"listbox",name:"language",label:"Language",items:Le},{type:"textarea",name:"code",label:"Code view"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{language:mn,code:Rt},onSubmit:Ue=>{const ct=Ue.getData();te(q,ct.language,ct.code),Ue.close()}})},ne=q=>{q.addCommand("codesample",()=>{const Le=q.selection.getNode();q.selection.isCollapsed()||W(Le)?_e(q):q.formatter.toggle("code")})},De=(q=>Le=>Le.replace(q,""))(/^\s+|\s+$/g);var Be=tinymce.util.Tools.resolve("tinymce.util.Tools");const Te=q=>{q.on("PreProcess",Le=>{const je=q.dom,mn=je.select("pre[contenteditable=false]",Le.node);Be.each(Be.grep(mn,W),Rt=>{const Ue=Rt.textContent;je.setAttrib(Rt,"class",De(je.getAttrib(Rt,"class"))),je.setAttrib(Rt,"contentEditable",null),je.setAttrib(Rt,"data-mce-highlighted",null);let ct;for(;ct=Rt.firstChild;)Rt.removeChild(ct);const dn=je.add(Rt,"code");dn.textContent=Ue})}),q.on("SetContent",()=>{const Le=q.dom,je=Be.grep(Le.select("pre"),mn=>W(mn)&&Le.getAttrib(mn,"data-mce-highlighted")!=="true");je.length&&q.undoManager.transact(()=>{Be.each(je,mn=>{var Rt;Be.each(Le.select("br",mn),Ue=>{Le.replace(q.getDoc().createTextNode(` -`),Ue)}),mn.innerHTML=Le.encode((Rt=mn.textContent)!==null&&Rt!==void 0?Rt:""),V(q).highlightElement(mn),Le.setAttrib(mn,"data-mce-highlighted",!0),mn.className=De(mn.className)})})}),q.on("PreInit",()=>{q.parser.addNodeFilter("pre",Le=>{var je;for(let mn=0,Rt=Le.length;mnje=>{const mn=()=>{je.setEnabled(q.selection.isEditable()),Le(je)};return q.on("NodeChange",mn),mn(),()=>{q.off("NodeChange",mn)}},yt=q=>{const Le=q.selection.getStart();return q.dom.is(Le,'pre[class*="language-"]')},Tt=q=>{const Le=()=>q.execCommand("codesample");q.ui.registry.addToggleButton("codesample",{icon:"code-sample",tooltip:"Insert/edit code sample",onAction:Le,onSetup:Oe(q,je=>{je.setActive(yt(q))})}),q.ui.registry.addMenuItem("codesample",{text:"Code sample...",icon:"code-sample",onAction:Le,onSetup:Oe(q)})};var St=()=>{o.add("codesample",q=>{R(q),Te(q),Tt(q),ne(q),q.on("dblclick",Le=>{W(Le.target)&&_e(q)})})};St()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(Ge,Xe,$t)=>{var Qt;return $t(Ge,Xe.prototype)?!0:((Qt=Ge.constructor)===null||Qt===void 0?void 0:Qt.name)===Xe.name},n=Ge=>{const Xe=typeof Ge;return Ge===null?"null":Xe==="object"&&Array.isArray(Ge)?"array":Xe==="object"&&e(Ge,String,($t,Qt)=>Qt.isPrototypeOf($t))?"string":Xe},r=Ge=>Xe=>n(Xe)===Ge,c=r("string"),u=r("object"),h=r("array"),p=Ge=>Ge==null,b=Ge=>!p(Ge);class y{constructor(Xe,$t){this.tag=Xe,this.value=$t}static some(Xe){return new y(!0,Xe)}static none(){return y.singletonNone}fold(Xe,$t){return this.tag?$t(this.value):Xe()}isSome(){return this.tag}isNone(){return!this.tag}map(Xe){return this.tag?y.some(Xe(this.value)):y.none()}bind(Xe){return this.tag?Xe(this.value):y.none()}exists(Xe){return this.tag&&Xe(this.value)}forall(Xe){return!this.tag||Xe(this.value)}filter(Xe){return!this.tag||Xe(this.value)?this:y.none()}getOr(Xe){return this.tag?this.value:Xe}or(Xe){return this.tag?this:Xe}getOrThunk(Xe){return this.tag?this.value:Xe()}orThunk(Xe){return this.tag?this:Xe()}getOrDie(Xe){if(this.tag)return this.value;throw new Error(Xe??"Called getOrDie on None")}static from(Xe){return b(Xe)?y.some(Xe):y.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(Xe){this.tag&&Xe(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}y.singletonNone=new y(!1);const k=Array.prototype.push,A=(Ge,Xe)=>{for(let $t=0,Qt=Ge.length;$t{const Xe=[];for(let $t=0,Qt=Ge.length;$t{let Xe=Ge;return{get:()=>Xe,set:eo=>{Xe=eo}}},F=Object.keys,V=Object.hasOwnProperty,W=(Ge,Xe)=>{const $t=F(Ge);for(let Qt=0,eo=$t.length;Qtte(Ge,Xe)?y.from(Ge[Xe]):y.none(),te=(Ge,Xe)=>V.call(Ge,Xe),j=Ge=>Xe=>Xe.options.get(Ge),ae=Ge=>{const Xe=Ge.options.register;Xe("audio_template_callback",{processor:"function"}),Xe("video_template_callback",{processor:"function"}),Xe("iframe_template_callback",{processor:"function"}),Xe("media_live_embeds",{processor:"boolean",default:!0}),Xe("media_filter_html",{processor:"boolean",default:!0}),Xe("media_url_resolver",{processor:"function"}),Xe("media_alt_source",{processor:"boolean",default:!0}),Xe("media_poster",{processor:"boolean",default:!0}),Xe("media_dimensions",{processor:"boolean",default:!0})},fe=j("audio_template_callback"),_e=j("video_template_callback"),ne=j("iframe_template_callback"),Se=j("media_live_embeds"),De=j("media_filter_html"),Be=j("media_url_resolver"),Te=j("media_alt_source"),Oe=j("media_poster"),yt=j("media_dimensions");var Tt=tinymce.util.Tools.resolve("tinymce.util.Tools"),St=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),q=tinymce.util.Tools.resolve("tinymce.html.DomParser");const Le=St.DOM,je=Ge=>Ge.replace(/px$/,""),mn=Ge=>{const Xe=Ge.attr("style"),$t=Xe?Le.parseStyle(Xe):{};return{type:"ephox-embed-iri",source:Ge.attr("data-ephox-embed-iri"),altsource:"",poster:"",width:J($t,"max-width").map(je).getOr(""),height:J($t,"max-height").map(je).getOr("")}},Rt=(Ge,Xe)=>{let $t={};const eo=q({validate:!1,forced_root_block:!1},Xe).parse(Ge);for(let co=eo;co;co=co.walk())if(co.type===1){const qo=co.name;if(co.attr("data-ephox-embed-iri")){$t=mn(co);break}else!$t.source&&qo==="param"&&($t.source=co.attr("movie")),(qo==="iframe"||qo==="object"||qo==="embed"||qo==="video"||qo==="audio")&&($t.type||($t.type=qo),$t=Tt.extend(co.attributes.map,$t)),qo==="source"&&($t.source?$t.altsource||($t.altsource=co.attr("src")):$t.source=co.attr("src")),qo==="img"&&!$t.poster&&($t.poster=co.attr("src"))}return $t.source=$t.source||$t.src||"",$t.altsource=$t.altsource||"",$t.poster=$t.poster||"",$t},Ue=Ge=>{var Xe;const $t={mp3:"audio/mpeg",m4a:"audio/x-m4a",wav:"audio/wav",mp4:"video/mp4",webm:"video/webm",ogg:"video/ogg",swf:"application/x-shockwave-flash"},Qt=(Xe=Ge.toLowerCase().split(".").pop())!==null&&Xe!==void 0?Xe:"";return J($t,Qt).getOr("")};var ct=tinymce.util.Tools.resolve("tinymce.html.Node"),dn=tinymce.util.Tools.resolve("tinymce.html.Serializer");const Zt=(Ge,Xe={})=>q({forced_root_block:!1,validate:!1,allow_conditional_comments:!0,...Xe},Ge),rn=St.DOM,Fe=Ge=>/^[0-9.]+$/.test(Ge)?Ge+"px":Ge,mt=(Ge,Xe)=>{const $t=Xe.attr("style"),Qt=$t?rn.parseStyle($t):{};b(Ge.width)&&(Qt["max-width"]=Fe(Ge.width)),b(Ge.height)&&(Qt["max-height"]=Fe(Ge.height)),Xe.attr("style",rn.serializeStyle(Qt))},de=["source","altsource"],Eo=(Ge,Xe,$t,Qt)=>{let eo=0,co=0;const qo=Zt(Qt);qo.addNodeFilter("source",nt=>eo=nt.length);const fr=qo.parse(Ge);for(let nt=fr;nt;nt=nt.walk())if(nt.type===1){const xo=nt.name;if(nt.attr("data-ephox-embed-iri")){mt(Xe,nt);break}else{switch(xo){case"video":case"object":case"embed":case"img":case"iframe":Xe.height!==void 0&&Xe.width!==void 0&&(nt.attr("width",Xe.width),nt.attr("height",Xe.height));break}if($t)switch(xo){case"video":nt.attr("poster",Xe.poster),nt.attr("src",null);for(let Oi=eo;Oi<2;Oi++)if(Xe[de[Oi]]){const ra=new ct("source",1);ra.attr("src",Xe[de[Oi]]),ra.attr("type",Xe[de[Oi]+"mime"]||null),nt.append(ra)}break;case"iframe":nt.attr("src",Xe.source);break;case"object":const jr=nt.getAll("img").length>0;if(Xe.poster&&!jr){nt.attr("src",Xe.poster);const Oi=new ct("img",1);Oi.attr("src",Xe.poster),Oi.attr("width",Xe.width),Oi.attr("height",Xe.height),nt.append(Oi)}break;case"source":if(co<2&&(nt.attr("src",Xe[de[co]]),nt.attr("type",Xe[de[co]+"mime"]||null),!Xe[de[co]])){nt.remove();continue}co++;break;case"img":Xe.poster||nt.remove();break}}}return dn({},Qt).serialize(fr)},jn=[{regex:/youtu\.be\/([\w\-_\?&=.]+)/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$1",allowFullscreen:!0},{regex:/youtube\.com(.+)v=([^&]+)(&([a-z0-9&=\-_]+))?/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$2?$4",allowFullscreen:!0},{regex:/youtube.com\/embed\/([a-z0-9\?&=\-_]+)/i,type:"iframe",w:560,h:314,url:"www.youtube.com/embed/$1",allowFullscreen:!0},{regex:/vimeo\.com\/([0-9]+)\?h=(\w+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$1?h=$2&title=0&byline=0&portrait=0&color=8dc7dc",allowFullscreen:!0},{regex:/vimeo\.com\/(.*)\/([0-9]+)\?h=(\w+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$2?h=$3&title=0&byline=0",allowFullscreen:!0},{regex:/vimeo\.com\/([0-9]+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$1?title=0&byline=0&portrait=0&color=8dc7dc",allowFullscreen:!0},{regex:/vimeo\.com\/(.*)\/([0-9]+)/,type:"iframe",w:425,h:350,url:"player.vimeo.com/video/$2?title=0&byline=0",allowFullscreen:!0},{regex:/maps\.google\.([a-z]{2,3})\/maps\/(.+)msid=(.+)/,type:"iframe",w:425,h:350,url:'maps.google.com/maps/ms?msid=$2&output=embed"',allowFullscreen:!1},{regex:/dailymotion\.com\/video\/([^_]+)/,type:"iframe",w:480,h:270,url:"www.dailymotion.com/embed/video/$1",allowFullscreen:!0},{regex:/dai\.ly\/([^_]+)/,type:"iframe",w:480,h:270,url:"www.dailymotion.com/embed/video/$1",allowFullscreen:!0}],Yn=Ge=>{const Xe=Ge.match(/^(https?:\/\/|www\.)(.+)$/i);return Xe&&Xe.length>1?Xe[1]==="www."?"https://":Xe[1]:"https://"},po=(Ge,Xe)=>{const $t=Yn(Xe),Qt=Ge.regex.exec(Xe);let eo=$t+Ge.url;if(b(Qt))for(let co=0;coQt[co]?Qt[co]:"");return eo.replace(/\?$/,"")},cs=Ge=>{const Xe=jn.filter($t=>$t.regex.test(Ge));return Xe.length>0?Tt.extend({},Xe[0],{url:po(Xe[0],Ge)}):null},gt=(Ge,Xe)=>{if(Xe)return Xe(Ge);{const $t=Ge.allowfullscreen?' allowFullscreen="1"':"";return'"}},Ut=Ge=>{let Xe='';return Ge.poster&&(Xe+=''),Xe+="",Xe},pt=(Ge,Xe)=>Xe?Xe(Ge):'",Ne=(Ge,Xe)=>Xe?Xe(Ge):'",Nt=(Ge,Xe)=>{var $t;const Qt=Tt.extend({},Xe);if(!Qt.source&&(Tt.extend(Qt,Rt(($t=Qt.embed)!==null&&$t!==void 0?$t:"",Ge.schema)),!Qt.source))return"";Qt.altsource||(Qt.altsource=""),Qt.poster||(Qt.poster=""),Qt.source=Ge.convertURL(Qt.source,"source"),Qt.altsource=Ge.convertURL(Qt.altsource,"source"),Qt.sourcemime=Ue(Qt.source),Qt.altsourcemime=Ue(Qt.altsource),Qt.poster=Ge.convertURL(Qt.poster,"poster");const eo=cs(Qt.source);if(eo&&(Qt.source=eo.url,Qt.type=eo.type,Qt.allowfullscreen=eo.allowFullscreen,Qt.width=Qt.width||String(eo.w),Qt.height=Qt.height||String(eo.h)),Qt.embed)return Eo(Qt.embed,Qt,!0,Ge.schema);{const co=fe(Ge),qo=_e(Ge),fr=ne(Ge);return Qt.width=Qt.width||"300",Qt.height=Qt.height||"150",Tt.each(Qt,(nt,xo)=>{Qt[xo]=Ge.dom.encode(""+nt)}),Qt.type==="iframe"?gt(Qt,fr):Qt.sourcemime==="application/x-shockwave-flash"?Ut(Qt):Qt.sourcemime.indexOf("audio")!==-1?pt(Qt,co):Ne(Qt,qo)}},pn=Ge=>Ge.hasAttribute("data-mce-object")||Ge.hasAttribute("data-ephox-embed-iri"),xt=Ge=>{Ge.on("click keyup touchend",()=>{const Xe=Ge.selection.getNode();Xe&&Ge.dom.hasClass(Xe,"mce-preview-object")&&Ge.dom.getAttrib(Xe,"data-mce-selected")&&Xe.setAttribute("data-mce-selected","2")}),Ge.on("ObjectResized",Xe=>{const $t=Xe.target;if($t.getAttribute("data-mce-object")){let Qt=$t.getAttribute("data-mce-html");Qt&&(Qt=unescape(Qt),$t.setAttribute("data-mce-html",escape(Eo(Qt,{width:String(Xe.width),height:String(Xe.height)},!1,Ge.schema))))}})},kn={},Dn=(Ge,Xe,$t)=>new Promise((Qt,eo)=>{const co=qo=>(qo.html&&(kn[Ge.source]=qo),Qt({url:Ge.source,html:qo.html?qo.html:Xe(Ge)}));kn[Ge.source]?co(kn[Ge.source]):$t({url:Ge.source},co,eo)}),is=(Ge,Xe)=>Promise.resolve({html:Xe(Ge),url:Ge.source}),Gn=Ge=>Xe=>Nt(Ge,Xe),as=(Ge,Xe)=>{const $t=Be(Ge);return $t?Dn(Xe,Gn(Ge),$t):is(Xe,Gn(Ge))},vr=Ge=>te(kn,Ge),Ns=(Ge,Xe)=>J(Xe,Ge).bind($t=>J($t,"meta")),Vs=(Ge,Xe,$t)=>Qt=>{const eo=()=>J(Ge,Qt),co=()=>J(Xe,Qt),qo=xo=>J(xo,"value").bind(jr=>jr.length>0?y.some(jr):y.none()),fr=()=>eo().bind(xo=>u(xo)?qo(xo).orThunk(co):co().orThunk(()=>y.from(xo))),nt=()=>co().orThunk(()=>eo().bind(xo=>u(xo)?qo(xo):y.from(xo)));return{[Qt]:(Qt===$t?fr():nt()).getOr("")}},Ts=(Ge,Xe)=>{const $t={};return J(Ge,"dimensions").each(Qt=>{A(["width","height"],eo=>{J(Xe,eo).orThunk(()=>J(Qt,eo)).each(co=>$t[eo]=co)})}),$t},Ki=(Ge,Xe)=>{const $t=Xe&&Xe!=="dimensions"?Ns(Xe,Ge).getOr({}):{},Qt=Vs(Ge,$t,Xe);return{...Qt("source"),...Qt("altsource"),...Qt("poster"),...Qt("embed"),...Ts(Ge,$t)}},vs=Ge=>{const Xe={...Ge,source:{value:J(Ge,"source").getOr("")},altsource:{value:J(Ge,"altsource").getOr("")},poster:{value:J(Ge,"poster").getOr("")}};return A(["width","height"],$t=>{J(Ge,$t).each(Qt=>{const eo=Xe.dimensions||{};eo[$t]=Qt,Xe.dimensions=eo})}),Xe},ms=Ge=>Xe=>{const $t=Xe&&Xe.msg?"Media embed handler error: "+Xe.msg:"Media embed handler threw unknown error.";Ge.notificationManager.open({type:"error",text:$t})},dr=Ge=>{const Xe=Ge.selection.getNode(),$t=pn(Xe)?Ge.serializer.serialize(Xe,{selection:!0}):"",Qt=Rt($t,Ge.schema),co=(()=>{if(ws(Qt.source,Qt.type)){const qo=Ge.dom.getRect(Xe);return{width:qo.w.toString().replace(/px$/,""),height:qo.h.toString().replace(/px$/,"")}}else return{}})();return{embed:$t,...Qt,...co}},Oo=(Ge,Xe)=>$t=>{if(c($t.url)&&$t.url.trim().length>0){const Qt=$t.html,co={...Rt(Qt,Xe.schema),source:$t.url,embed:Qt};Ge.setData(vs(co))}},wo=(Ge,Xe)=>{const $t=Ge.dom.select("*[data-mce-object]");for(let Qt=0;Qt=0;eo--)Xe[Qt]===$t[eo]&&$t.splice(eo,1);Ge.selection.select($t[0])},Gs=(Ge,Xe)=>{const $t=Ge.dom.select("*[data-mce-object]");Ge.insertContent(Xe),wo(Ge,$t),Ge.nodeChanged()},ws=(Ge,Xe)=>b(Xe)&&Xe==="ephox-embed-iri"&&b(cs(Ge)),Pi=(Ge,Xe)=>((Qt,eo)=>Qt.width!==eo.width||Qt.height!==eo.height)(Ge,Xe)&&ws(Xe.source,Ge.type),ts=(Ge,Xe,$t)=>{var Qt;Xe.embed=Pi(Ge,Xe)&&yt($t)?Nt($t,{...Xe,embed:""}):Eo((Qt=Xe.embed)!==null&&Qt!==void 0?Qt:"",Xe,!1,$t.schema),Xe.embed&&(Ge.source===Xe.source||vr(Xe.source))?Gs($t,Xe.embed):as($t,Xe).then(eo=>{Gs($t,eo.html)}).catch(ms($t))},Qi=Ge=>{const Xe=dr(Ge),$t=N(Xe),Qt=vs(Xe),eo=(Ri,As)=>{const rr=Ki(As.getData(),"source");Ri.source!==rr.source&&(Oo(ga,Ge)({url:rr.source,html:""}),as(Ge,rr).then(Oo(ga,Ge)).catch(ms(Ge)))},co=Ri=>{var As;const rr=Ki(Ri.getData()),Vi=Rt((As=rr.embed)!==null&&As!==void 0?As:"",Ge.schema);Ri.setData(vs(Vi))},qo=(Ri,As,rr)=>{const Vi=Ki(Ri.getData(),As),ia=Pi(rr,Vi)&&yt(Ge)?{...Vi,embed:""}:Vi,Pl=Nt(Ge,ia);Ri.setData(vs({...ia,embed:Pl}))},fr=[{name:"source",type:"urlinput",filetype:"media",label:"Source",picker_text:"Browse files"}],nt=yt(Ge)?[{type:"sizeinput",name:"dimensions",label:"Constrain proportions",constrain:!0}]:[],xo={title:"General",name:"general",items:R([fr,nt])},Oi={title:"Embed",items:[{type:"textarea",name:"embed",label:"Paste your embed code below:"}]},ra=[];Te(Ge)&&ra.push({name:"altsource",type:"urlinput",filetype:"media",label:"Alternative source URL"}),Oe(Ge)&&ra.push({name:"poster",type:"urlinput",filetype:"image",label:"Media poster (Image URL)"});const zs={title:"Advanced",name:"advanced",items:ra},Ec=[xo,Oi];ra.length>0&&Ec.push(zs);const ul={type:"tabpanel",tabs:Ec},ga=Ge.windowManager.open({title:"Insert/Edit Media",size:"normal",body:ul,buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],onSubmit:Ri=>{const As=Ki(Ri.getData());ts($t.get(),As,Ge),Ri.close()},onChange:(Ri,As)=>{switch(As.name){case"source":eo($t.get(),Ri);break;case"embed":co(Ri);break;case"dimensions":case"altsource":case"poster":qo(Ri,As.name,$t.get());break}$t.set(Ki(Ri.getData()))},initialData:Qt})},nn=Ge=>({showDialog:()=>{Qi(Ge)}}),ns=Ge=>{const Xe=()=>{Qi(Ge)};Ge.addCommand("mceMedia",Xe)},Xr=(Ge,Xe,$t)=>Ge.length>=Xe.length&&Ge.substr($t,$t+Xe.length)===Xe,Qe=(Ge,Xe)=>Xr(Ge,Xe,0);var Ye=tinymce.util.Tools.resolve("tinymce.Env");const wt=Ge=>{const Xe=Ge.name;return Xe==="iframe"||Xe==="video"||Xe==="audio"},Ft=(Ge,Xe,$t,Qt=null)=>{const eo=Ge.attr($t);return b(eo)?eo:te(Xe,$t)?null:Qt},Rn=(Ge,Xe,$t)=>{const Qt=Xe.name==="img"||Ge.name==="video",eo=Qt?"300":null,co=Ge.name==="audio"?"30":"150",qo=Qt?co:null;Xe.attr({width:Ft(Ge,$t,"width",eo),height:Ft(Ge,$t,"height",qo)})},Xn=(Ge,Xe,$t,Qt)=>{const eo=Zt(Ge.schema).parse(Qt,{context:Xe});for(;eo.firstChild;)$t.append(eo.firstChild)},ro=(Ge,Xe)=>{const $t=Xe.name,Qt=new ct("img",1);return Do(Ge,Xe,Qt),Rn(Xe,Qt,{}),Qt.attr({style:Xe.attr("style"),src:Ye.transparentSrc,"data-mce-object":$t,class:"mce-object mce-object-"+$t}),Qt},an=(Ge,Xe)=>{var $t;const Qt=Xe.name,eo=new ct("span",1);eo.attr({contentEditable:"false",style:Xe.attr("style"),"data-mce-object":Qt,class:"mce-preview-object mce-object-"+Qt}),Do(Ge,Xe,eo);const co=Ge.dom.parseStyle(($t=Xe.attr("style"))!==null&&$t!==void 0?$t:""),qo=new ct(Qt,1);if(Rn(Xe,qo,co),qo.attr({src:Xe.attr("src"),style:Xe.attr("style"),class:Xe.attr("class")}),Qt==="iframe")qo.attr({allowfullscreen:Xe.attr("allowfullscreen"),frameborder:"0",sandbox:Xe.attr("sandbox")});else{A(["controls","crossorigin","currentTime","loop","muted","poster","preload"],jr=>{qo.attr(jr,Xe.attr(jr))});const xo=eo.attr("data-mce-html");b(xo)&&Xn(Ge,Qt,qo,unescape(xo))}const fr=new ct("span",1);return fr.attr("class","mce-shim"),eo.append(qo),eo.append(fr),eo},Do=(Ge,Xe,$t)=>{var Qt;const eo=(Qt=Xe.attributes)!==null&&Qt!==void 0?Qt:[];let co=eo.length;for(;co--;){const xo=eo[co].name;let jr=eo[co].value;xo!=="width"&&xo!=="height"&&xo!=="style"&&!Qe(xo,"data-mce-")&&((xo==="data"||xo==="src")&&(jr=Ge.convertURL(jr,xo)),$t.attr("data-mce-p-"+xo,jr))}const qo=dn({inner:!0},Ge.schema),fr=new ct("div",1);A(Xe.children(),xo=>fr.append(xo));const nt=qo.serialize(fr);nt&&($t.attr("data-mce-html",escape(nt)),$t.empty())},io=Ge=>{const Xe=Ge.attr("class");return c(Xe)&&/\btiny-pageembed\b/.test(Xe)},Wo=Ge=>{let Xe=Ge;for(;Xe=Xe.parent;)if(Xe.attr("data-ephox-embed-iri")||io(Xe))return!0;return!1},sr=Ge=>Xe=>{let $t=Xe.length,Qt;for(;$t--;)Qt=Xe[$t],Qt.parent&&(Qt.parent.attr("data-mce-object")||(wt(Qt)&&Se(Ge)?Wo(Qt)||Qt.replace(an(Ge,Qt)):Wo(Qt)||Qt.replace(ro(Ge,Qt))))},mr=(Ge,Xe,$t)=>{const Qt=Ge.options.get,eo=Qt("xss_sanitization"),co=De(Ge);return Zt(Ge.schema,{sanitize:eo,validate:co}).parse($t,{context:Xe})},Ks=Ge=>{Ge.on("PreInit",()=>{const{schema:Xe,serializer:$t,parser:Qt}=Ge,eo=Xe.getBoolAttrs();A("webkitallowfullscreen mozallowfullscreen".split(" "),co=>{eo[co]={}}),W({embed:["wmode"]},(co,qo)=>{const fr=Xe.getElementRule(qo);fr&&A(co,nt=>{fr.attributes[nt]={},fr.attributesOrder.push(nt)})}),Qt.addNodeFilter("iframe,video,audio,object,embed",sr(Ge)),$t.addAttributeFilter("data-mce-object",(co,qo)=>{var fr;let nt=co.length;for(;nt--;){const xo=co[nt];if(!xo.parent)continue;const jr=xo.attr(qo),Oi=new ct(jr,1);if(jr!=="audio"){const ul=xo.attr("class");ul&&ul.indexOf("mce-preview-object")!==-1&&xo.firstChild?Oi.attr({width:xo.firstChild.attr("width"),height:xo.firstChild.attr("height")}):Oi.attr({width:xo.attr("width"),height:xo.attr("height")})}Oi.attr({style:xo.attr("style")});const ra=(fr=xo.attributes)!==null&&fr!==void 0?fr:[];let zs=ra.length;for(;zs--;){const ul=ra[zs].name;ul.indexOf("data-mce-p-")===0&&Oi.attr(ul.substr(11),ra[zs].value)}const Ec=xo.attr("data-mce-html");if(Ec){const ul=mr(Ge,jr,unescape(Ec));A(ul.children(),ga=>Oi.append(ga))}xo.replace(Oi)}})}),Ge.on("SetContent",()=>{const Xe=Ge.dom;A(Xe.select("span.mce-preview-object"),$t=>{Xe.select("span.mce-shim",$t).length===0&&Xe.add($t,"span",{class:"mce-shim"})})})},pr=Ge=>{Ge.on("ResolveName",Xe=>{let $t;Xe.target.nodeType===1&&($t=Xe.target.getAttribute("data-mce-object"))&&(Xe.name=$t)})},Di=Ge=>Xe=>{const $t=()=>{Xe.setEnabled(Ge.selection.isEditable())};return Ge.on("NodeChange",$t),$t(),()=>{Ge.off("NodeChange",$t)}},cc=Ge=>{const Xe=()=>Ge.execCommand("mceMedia");Ge.ui.registry.addToggleButton("media",{tooltip:"Insert/edit media",icon:"embed",onAction:Xe,onSetup:$t=>{const Qt=Ge.selection;$t.setActive(pn(Qt.getNode()));const eo=Qt.selectorChangedWithUnbind("img[data-mce-object],span[data-mce-object],div[data-ephox-embed-iri]",$t.setActive).unbind,co=Di(Ge)($t);return()=>{eo(),co()}}}),Ge.ui.registry.addMenuItem("media",{icon:"embed",text:"Media...",onAction:Xe,onSetup:Di(Ge)})};var mi=()=>{o.add("media",Ge=>(ae(Ge),ns(Ge),cc(Ge),pr(Ge),Ks(Ge),xt(Ge),nn(Ge)))};mi()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(X,re,ye)=>{var Ze;return ye(X,re.prototype)?!0:((Ze=X.constructor)===null||Ze===void 0?void 0:Ze.name)===re.name},n=X=>{const re=typeof X;return X===null?"null":re==="object"&&Array.isArray(X)?"array":re==="object"&&e(X,String,(ye,Ze)=>Ze.isPrototypeOf(ye))?"string":re},r=X=>re=>n(re)===X,c=X=>re=>typeof re===X,u=r("string"),h=r("object"),p=r("array"),b=c("boolean"),y=X=>X==null,k=X=>!y(X),A=c("function"),R=c("number"),N=()=>{},F=(X,re)=>ye=>X(re(ye)),V=X=>()=>X,W=(X,re)=>X===re;function J(X,...re){return(...ye)=>{const Ze=re.concat(ye);return X.apply(null,Ze)}}const te=X=>re=>!X(re),j=V(!1);class ae{constructor(re,ye){this.tag=re,this.value=ye}static some(re){return new ae(!0,re)}static none(){return ae.singletonNone}fold(re,ye){return this.tag?ye(this.value):re()}isSome(){return this.tag}isNone(){return!this.tag}map(re){return this.tag?ae.some(re(this.value)):ae.none()}bind(re){return this.tag?re(this.value):ae.none()}exists(re){return this.tag&&re(this.value)}forall(re){return!this.tag||re(this.value)}filter(re){return!this.tag||re(this.value)?this:ae.none()}getOr(re){return this.tag?this.value:re}or(re){return this.tag?this:re}getOrThunk(re){return this.tag?this.value:re()}orThunk(re){return this.tag?this:re()}getOrDie(re){if(this.tag)return this.value;throw new Error(re??"Called getOrDie on None")}static from(re){return k(re)?ae.some(re):ae.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(re){this.tag&&re(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}ae.singletonNone=new ae(!1);const fe=Array.prototype.slice,_e=Array.prototype.indexOf,ne=Array.prototype.push,Se=(X,re)=>_e.call(X,re),De=(X,re)=>Se(X,re)>-1,Be=(X,re)=>{for(let ye=0,Ze=X.length;ye{const ye=X.length,Ze=new Array(ye);for(let tt=0;tt{for(let ye=0,Ze=X.length;ye{const ye=[];for(let Ze=0,tt=X.length;Ze{if(X.length===0)return[];{let ye=re(X[0]);const Ze=[];let tt=[];for(let tn=0,Kn=X.length;tn(Oe(X,(Ze,tt)=>{ye=re(ye,Ze,tt)}),ye),q=(X,re,ye)=>{for(let Ze=0,tt=X.length;Zeq(X,re,j),je=X=>{const re=[];for(let ye=0,Ze=X.length;yeje(Te(X,re)),Rt=X=>{const re=fe.call(X,0);return re.reverse(),re},Ue=(X,re)=>re>=0&&reUe(X,0),dn=X=>Ue(X,X.length-1),Zt=(X,re)=>{const ye=[],Ze=A(re)?tt=>Be(ye,tn=>re(tn,tt)):tt=>De(ye,tt);for(let tt=0,tn=X.length;ttX.exists(Ze=>ye(Ze,re)),Fe=(X,re,ye=W)=>mt(X,re,ye).getOr(X.isNone()&&re.isNone()),mt=(X,re,ye)=>X.isSome()&&re.isSome()?ae.some(ye(X.getOrDie(),re.getOrDie())):ae.none(),de=8,Eo=9,jn=11,Yn=1,po=3,cs=(X,re)=>{const Ze=(re||document).createElement("div");if(Ze.innerHTML=X,!Ze.hasChildNodes()||Ze.childNodes.length>1){const tt="HTML does not have a single root node";throw console.error(tt,X),new Error(tt)}return pt(Ze.childNodes[0])},gt=(X,re)=>{const Ze=(re||document).createElement(X);return pt(Ze)},Ut=(X,re)=>{const Ze=(re||document).createTextNode(X);return pt(Ze)},pt=X=>{if(X==null)throw new Error("Node cannot be null or undefined");return{dom:X}},Nt={fromHtml:cs,fromTag:gt,fromText:Ut,fromDom:pt,fromPoint:(X,re,ye)=>ae.from(X.dom.elementFromPoint(re,ye)).map(pt)},pn=(X,re)=>{const ye=X.dom;if(ye.nodeType!==Yn)return!1;{const Ze=ye;if(Ze.matches!==void 0)return Ze.matches(re);if(Ze.msMatchesSelector!==void 0)return Ze.msMatchesSelector(re);if(Ze.webkitMatchesSelector!==void 0)return Ze.webkitMatchesSelector(re);if(Ze.mozMatchesSelector!==void 0)return Ze.mozMatchesSelector(re);throw new Error("Browser lacks native selectors")}},xt=(X,re)=>X.dom===re.dom,kn=(X,re)=>{const ye=X.dom,Ze=re.dom;return ye===Ze?!1:ye.contains(Ze)},Dn=pn,is=typeof window<"u"?window:Function("return this;")(),Gn=(X,re)=>{let ye=re??is;for(let Ze=0;Ze{const ye=X.split(".");return Gn(ye,re)},vr=(X,re)=>as(X,re),Ns=(X,re)=>{const ye=vr(X,re);if(ye==null)throw new Error(X+" not available on this browser");return ye},Vs=Object.getPrototypeOf,Ts=X=>Ns("HTMLElement",X),Ki=X=>{const re=as("ownerDocument.defaultView",X);return h(X)&&(Ts(re).prototype.isPrototypeOf(X)||/^HTML\w*Element$/.test(Vs(X).constructor.name))},vs=X=>X.dom.nodeName.toLowerCase(),ms=X=>X.dom.nodeType,dr=X=>re=>ms(re)===X,Oo=X=>ms(X)===de||vs(X)==="#comment",wo=X=>Gs(X)&&Ki(X.dom),Gs=dr(Yn),ws=dr(po),Pi=dr(Eo),ts=dr(jn),Qi=X=>re=>Gs(re)&&vs(re)===X,nn=X=>Nt.fromDom(X.dom.ownerDocument),ns=X=>Pi(X)?X:nn(X),Xr=X=>ae.from(X.dom.parentNode).map(Nt.fromDom),Qe=X=>ae.from(X.dom.parentElement).map(Nt.fromDom),Ye=X=>ae.from(X.dom.nextSibling).map(Nt.fromDom),wt=X=>Te(X.dom.childNodes,Nt.fromDom),Ft=(X,re)=>{const ye=X.dom.childNodes;return ae.from(ye[re]).map(Nt.fromDom)},Rn=X=>Ft(X,0),Xn=X=>Ft(X,X.dom.childNodes.length-1),ro=X=>ts(X)&&k(X.dom.host),Do=A(Element.prototype.attachShadow)&&A(Node.prototype.getRootNode)?X=>Nt.fromDom(X.dom.getRootNode()):ns,io=X=>{const re=Do(X);return ro(re)?ae.some(re):ae.none()},Wo=X=>Nt.fromDom(X.dom.host),sr=X=>{const re=ws(X)?X.dom.parentNode:X.dom;if(re==null||re.ownerDocument===null)return!1;const ye=re.ownerDocument;return io(Nt.fromDom(re)).fold(()=>ye.body.contains(re),F(sr,Wo))};var mr=(X,re,ye,Ze,tt)=>X(ye,Ze)?ae.some(ye):A(tt)&&tt(ye)?ae.none():re(ye,Ze,tt);const Ks=(X,re,ye)=>{let Ze=X.dom;const tt=A(ye)?ye:j;for(;Ze.parentNode;){Ze=Ze.parentNode;const tn=Nt.fromDom(Ze);if(re(tn))return ae.some(tn);if(tt(tn))break}return ae.none()},pr=(X,re,ye)=>mr((tt,tn)=>tn(tt),Ks,X,re,ye),Di=(X,re,ye)=>Ks(X,Ze=>pn(Ze,re),ye),cc=(X,re,ye)=>mr((tt,tn)=>pn(tt,tn),Di,X,re,ye),mi=X=>cc(X,"[contenteditable]"),Ge=(X,re=!1)=>sr(X)?X.dom.isContentEditable:mi(X).fold(V(re),ye=>Xe(ye)==="true"),Xe=X=>X.dom.contentEditable,$t=(X,re)=>{Xr(X).each(Ze=>{Ze.dom.insertBefore(re.dom,X.dom)})},Qt=(X,re)=>{Ye(X).fold(()=>{Xr(X).each(tt=>{co(tt,re)})},Ze=>{$t(Ze,re)})},eo=(X,re)=>{Rn(X).fold(()=>{co(X,re)},Ze=>{X.dom.insertBefore(re.dom,Ze.dom)})},co=(X,re)=>{X.dom.appendChild(re.dom)},qo=(X,re)=>{Oe(re,ye=>{$t(X,ye)})},fr=(X,re)=>{Oe(re,ye=>{co(X,ye)})},nt=X=>{X.dom.textContent="",Oe(wt(X),re=>{xo(re)})},xo=X=>{const re=X.dom;re.parentNode!==null&&re.parentNode.removeChild(re)};var jr=tinymce.util.Tools.resolve("tinymce.dom.RangeUtils"),Oi=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker"),ra=tinymce.util.Tools.resolve("tinymce.util.VK");const zs=X=>Te(X,Nt.fromDom),Ec=Object.keys,ul=(X,re)=>{const ye=Ec(X);for(let Ze=0,tt=ye.length;Ze(re,ye)=>{X[ye]=re},Ri=(X,re,ye,Ze)=>{ul(X,(tt,tn)=>{(re(tt,tn)?ye:Ze)(tt,tn)})},As=(X,re)=>{const ye={};return Ri(X,re,ga(ye),N),ye},rr=(X,re,ye)=>{if(u(ye)||b(ye)||R(ye))X.setAttribute(re,ye+"");else throw console.error("Invalid call to Attribute.set. Key ",re,":: Value ",ye,":: Element ",X),new Error("Attribute value was not simple")},Vi=(X,re)=>{const ye=X.dom;ul(re,(Ze,tt)=>{rr(ye,tt,Ze)})},ia=X=>St(X.dom.attributes,(re,ye)=>(re[ye.name]=ye.value,re),{}),Pl=(X,re)=>Nt.fromDom(X.dom.cloneNode(re)),Tc=X=>Pl(X,!0),Ac=(X,re)=>{const ye=Nt.fromTag(re),Ze=ia(X);return Vi(ye,Ze),ye},Ls=(X,re)=>{const ye=Ac(X,re);Qt(X,ye);const Ze=wt(X);return fr(ye,Ze),xo(X),ye};var Ji=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),ka=tinymce.util.Tools.resolve("tinymce.util.Tools");const Gc=X=>re=>k(re)&&re.nodeName.toLowerCase()===X,xa=X=>re=>k(re)&&X.test(re.nodeName),Yr=X=>k(X)&&X.nodeType===3,hr=X=>k(X)&&X.nodeType===1,ja=xa(/^(OL|UL|DL)$/),bu=xa(/^(OL|UL)$/),Us=Gc("ol"),Mi=xa(/^(LI|DT|DD)$/),zi=xa(/^(DT|DD)$/),yi=xa(/^(TH|TD)$/),yl=Gc("br"),ql=X=>{var re;return((re=X.parentNode)===null||re===void 0?void 0:re.firstChild)===X},ba=(X,re)=>k(re)&&re.nodeName in X.schema.getTextBlockElements(),Dl=(X,re)=>k(X)&&X.nodeName in re,Rl=(X,re)=>k(re)&&re.nodeName in X.schema.getVoidElements(),cd=(X,re)=>yl(re)?X.isBlock(re.nextSibling)&&!yl(re.previousSibling):!1,Ml=(X,re,ye)=>{const Ze=X.isEmpty(re);return ye&&X.select("span[data-mce-type=bookmark]",re).length>0?!1:Ze},Qu=(X,re)=>X.isChildOf(re,X.getRoot()),Ya=X=>re=>re.options.get(X),uc=X=>{const re=X.options.register;re("lists_indent_on_tab",{processor:"boolean",default:!0})},vu=Ya("lists_indent_on_tab"),ud=Ya("forced_root_block"),Kd=Ya("forced_root_block_attrs"),Ee=(X,re)=>{const ye=X.dom,Ze=X.schema.getBlockElements(),tt=ye.createFragment(),tn=ud(X),Kn=Kd(X);let Mo,To,_o=!1;for(To=ye.create(tn,Kn),Dl(re.firstChild,Ze)||tt.appendChild(To);Mo=re.firstChild;){const ai=Mo.nodeName;!_o&&(ai!=="SPAN"||Mo.getAttribute("data-mce-type")!=="bookmark")&&(_o=!0),Dl(Mo,Ze)?(tt.appendChild(Mo),To=null):(To||(To=ye.create(tn,Kn),tt.appendChild(To)),To.appendChild(Mo))}return!_o&&To&&To.appendChild(ye.create("br",{"data-mce-bogus":"1"})),tt},Ke=Ji.DOM,ht=(X,re,ye)=>{const Ze=_o=>{const ai=_o.parentNode;ai&&ka.each(tt,pi=>{ai.insertBefore(pi,ye.parentNode)}),Ke.remove(_o)},tt=Ke.select('span[data-mce-type="bookmark"]',re),tn=Ee(X,ye),Kn=Ke.createRng();Kn.setStartAfter(ye),Kn.setEndAfter(re);const Mo=Kn.extractContents();for(let _o=Mo.firstChild;_o;_o=_o.firstChild)if(_o.nodeName==="LI"&&X.dom.isEmpty(_o)){Ke.remove(_o);break}X.dom.isEmpty(Mo)||Ke.insertAfter(Mo,re),Ke.insertAfter(tn,re);const To=ye.parentElement;To&&Ml(X.dom,To)&&Ze(To),Ke.remove(ye),Ml(X.dom,re)&&Ke.remove(re)},At=Qi("dd"),fn=Qi("dt"),go=(X,re)=>{At(re)?Ls(re,"dt"):fn(re)&&Qe(re).each(ye=>ht(X,ye.dom,re.dom))},ar=X=>{fn(X)&&Ls(X,"dd")},Ko=(X,re,ye)=>{re==="Indent"?Oe(ye,ar):Oe(ye,Ze=>go(X,Ze))},Io=(X,re)=>{if(Yr(X))return{container:X,offset:re};const ye=jr.getNode(X,re);return Yr(ye)?{container:ye,offset:re>=X.childNodes.length?ye.data.length:0}:ye.previousSibling&&Yr(ye.previousSibling)?{container:ye.previousSibling,offset:ye.previousSibling.data.length}:ye.nextSibling&&Yr(ye.nextSibling)?{container:ye.nextSibling,offset:0}:{container:X,offset:re}},Mr=X=>{const re=X.cloneRange(),ye=Io(X.startContainer,X.startOffset);re.setStart(ye.container,ye.offset);const Ze=Io(X.endContainer,X.endOffset);return re.setEnd(Ze.container,Ze.offset),re},Ss=["OL","UL","DL"],si=Ss.join(","),Ga=(X,re)=>{const ye=re||X.selection.getStart(!0);return X.dom.getParent(ye,si,Tn(X,ye))},dd=(X,re)=>k(X)&&re.length===1&&re[0]===X,Mn=X=>yt(X.querySelectorAll(si),ja),fd=X=>{const re=Ga(X),ye=X.selection.getSelectedBlocks();return dd(re,ye)?Mn(re):yt(ye,Ze=>ja(Ze)&&re!==Ze)},ui=(X,re)=>{const ye=ka.map(re,Ze=>{const tt=X.dom.getParent(Ze,"li,dd,dt",Tn(X,Ze));return tt||Ze});return Zt(ye)},me=X=>{const re=X.selection.getSelectedBlocks();return yt(ui(X,re),Mi)},Pe=X=>yt(me(X),zi),We=(X,re)=>{const ye=X.dom.getParents(re,"TD,TH");return ye.length>0?ye[0]:X.getBody()},Pt=(X,re)=>!ja(re)&&!Mi(re)&&Be(Ss,ye=>X.isValidChild(re.nodeName,ye)),Tn=(X,re)=>{const ye=X.dom.getParents(re,X.dom.isBlock);return Le(ye,tt=>Pt(X.schema,tt)).getOr(X.getBody())},Ro=X=>Xr(X).exists(re=>Mi(re.dom)&&Rn(re).exists(ye=>!ja(ye.dom))&&Xn(re).exists(ye=>!ja(ye.dom))),Wn=(X,re)=>{const ye=X.dom.getParents(re,"ol,ul",Tn(X,re));return dn(ye)},Lr=X=>{const re=Wn(X,X.selection.getStart()),ye=yt(X.selection.getSelectedBlocks(),bu);return re.toArray().concat(ye)},cn=X=>{const re=X.selection.getStart();return X.dom.getParents(re,"ol,ul",Tn(X,re))},Or=X=>{const re=Lr(X),ye=cn(X);return Le(ye,Ze=>Ro(Nt.fromDom(Ze))).fold(()=>Ka(X,re),Ze=>[Ze])},Ka=(X,re)=>{const ye=Te(re,Ze=>Wn(X,Ze).getOr(Ze));return Zt(ye)},Gr=X=>/\btox\-/.test(X.className),yr=(X,re)=>q(X,ja,yi).exists(ye=>ye.nodeName===re&&!Gr(ye)),Kc=(X,re)=>re!==null&&!X.dom.isEditable(re),Jo=X=>{const re=Ga(X);return Kc(X,re)},dl=(X,re)=>{const ye=X.dom.getParent(re,"ol,ul,dl");return Kc(X,ye)},Fr=(X,re)=>{const ye=X.selection.getNode();return re({parents:X.dom.getParents(ye),element:ye}),X.on("NodeChange",re),()=>X.off("NodeChange",re)},fl=(X,re)=>{const Ze=document.createDocumentFragment();return Oe(X,tt=>{Ze.appendChild(tt.dom)}),Nt.fromDom(Ze)},Nr=(X,re,ye)=>X.dispatch("ListMutation",{action:re,element:ye}),Ni=(X=>re=>re.replace(X,""))(/^\s+|\s+$/g),Vu=X=>X.length>0,Ws=X=>!Vu(X),Jc=X=>X.style!==void 0&&A(X.style.getPropertyValue),eu=(X,re,ye)=>{if(!u(ye))throw console.error("Invalid call to CSS.set. Property ",re,":: Value ",ye,":: Element ",X),new Error("CSS value must be a string: "+ye);Jc(X)&&X.style.setProperty(re,ye)},Nl=(X,re,ye)=>{const Ze=X.dom;eu(Ze,re,ye)},dc=X=>Dn(X,"OL,UL"),th=X=>Dn(X,"LI"),Os=X=>Rn(X).exists(dc),Ii=X=>Xn(X).exists(dc),Wi=X=>"listAttributes"in X,Qp=X=>"isComment"in X,ri=X=>"isFragment"in X,Ra=X=>X.depth>0,va=X=>X.isSelected,Jh=X=>{const re=wt(X),ye=Ii(X)?re.slice(0,-1):re;return Te(ye,Tc)},em=(X,re,ye)=>Xr(X).filter(Gs).map(Ze=>({depth:re,dirty:!1,isSelected:ye,content:Jh(X),itemAttributes:ia(X),listAttributes:ia(Ze),listType:vs(Ze),isInPreviousLi:!1})),fc=(X,re)=>{co(X.item,re.list)},_f=X=>{for(let re=1;re{mt(dn(X),ct(re),fc)},$c=(X,re)=>{const ye={list:Nt.fromTag(re,X),item:Nt.fromTag("li",X)};return co(ye.list,ye.item),ye},Ja=(X,re,ye)=>{const Ze=[];for(let tt=0;tt{for(let ye=0;ye{Wi(re)&&(Vi(ye.list,re.listAttributes),Vi(ye.item,re.itemAttributes)),fr(ye.item,re.content)})},Zi=(X,re)=>{vs(X.list)!==re.listType&&(X.list=Ls(X.list,re.listType)),Vi(X.list,re.listAttributes)},ii=(X,re,ye)=>{const Ze=Nt.fromTag("li",X);return Vi(Ze,re),fr(Ze,ye),Ze},hc=(X,re)=>{co(X.list,re),X.item=re},md=(X,re,ye)=>{const Ze=re.slice(0,ye.depth);return dn(Ze).each(tt=>{if(Wi(ye)){const tn=ii(X,ye.itemAttributes,ye.content);hc(tt,tn),Zi(tt,ye)}else if(ri(ye))fr(tt.item,ye.content);else{const tn=Nt.fromHtml(``);co(tt.list,tn)}}),Ze},Jd=(X,re,ye)=>{const Ze=Ja(X,ye,ye.depth-re.length);return _f(Ze),aa(Ze,ye),Sr(re,Ze),re.concat(Ze)},tm=(X,re)=>{let ye=ae.none();const Ze=St(re,(tt,tn,Kn)=>Qp(tn)?Kn===0?(ye=ae.some(tn),tt):md(X,tt,tn):tn.depth>tt.length?Jd(X,tt,tn):md(X,tt,tn),[]);return ye.each(tt=>{const tn=Nt.fromHtml(``);ct(Ze).each(Kn=>{eo(Kn.list,tn)})}),ct(Ze).map(tt=>tt.list)},nh=(X,re)=>{switch(X){case"Indent":re.depth++;break;case"Outdent":re.depth--;break;case"Flatten":re.depth=0}re.dirty=!0},_l=(X,re)=>{Wi(X)&&Wi(re)&&(X.listType=re.listType,X.listAttributes={...re.listAttributes})},oh=X=>{X.listAttributes=As(X.listAttributes,(re,ye)=>ye!=="start")},Oa=(X,re)=>{const ye=X[re].depth,Ze=tn=>tn.depth===ye&&!tn.dirty,tt=tn=>tn.depthq(X.slice(re+1),Ze,tt))},tu=X=>(Oe(X,(re,ye)=>{Oa(X,ye).fold(()=>{re.dirty&&Wi(re)&&oh(re)},Ze=>_l(re,Ze))}),X),sh=X=>{let re=X;return{get:()=>re,set:tt=>{re=tt}}},Ou=(X,re,ye,Ze)=>{var tt;if(Oo(Ze))return[{depth:X+1,content:(tt=Ze.dom.nodeValue)!==null&&tt!==void 0?tt:"",dirty:!1,isSelected:!1,isComment:!0}];re.each(Mo=>{xt(Mo.start,Ze)&&ye.set(!0)});const tn=em(Ze,X,ye.get());re.each(Mo=>{xt(Mo.end,Ze)&&ye.set(!1)});const Kn=Xn(Ze).filter(dc).map(Mo=>hl(X,re,ye,Mo)).getOr([]);return tn.toArray().concat(Kn)},wf=(X,re,ye,Ze)=>Rn(Ze).filter(dc).fold(()=>Ou(X,re,ye,Ze),tt=>{const tn=St(wt(Ze),(Kn,Mo,To)=>{if(To===0)return Kn;if(th(Mo))return Kn.concat(Ou(X,re,ye,Mo));{const _o={isFragment:!0,depth:X,content:[Mo],isSelected:!1,dirty:!1,parentListType:vs(tt)};return Kn.concat(_o)}},[]);return hl(X,re,ye,tt).concat(tn)}),hl=(X,re,ye,Ze)=>mn(wt(Ze),tt=>{const tn=dc(tt)?hl:wf,Kn=X+1;return tn(Kn,re,ye,tt)}),Sf=(X,re)=>{const ye=sh(!1),Ze=0;return Te(X,tt=>({sourceList:tt,entries:hl(Ze,re,ye,tt)}))},zu=(X,re)=>{const ye=tu(re);return Te(ye,Ze=>{const tt=Qp(Ze)?fl([Nt.fromHtml(``)]):fl(Ze.content);return Nt.fromDom(Ee(X,tt.dom))})},Vm=(X,re)=>{const ye=tu(re);return tm(X.contentDocument,ye).toArray()},zm=(X,re)=>mn(Tt(re,Ra),ye=>ct(ye).exists(Ra)?Vm(X,ye):zu(X,ye)),pd=(X,re)=>{Oe(yt(X,va),ye=>nh(re,ye))},ml=X=>{const re=Te(me(X),Nt.fromDom);return mt(Le(re,te(Os)),Le(Rt(re),te(Os)),(ye,Ze)=>({start:ye,end:Ze}))},Wm=(X,re,ye)=>{const Ze=Sf(re,ml(X));Oe(Ze,tt=>{pd(tt.entries,ye);const tn=zm(X,tt.entries);Oe(tn,Kn=>{Nr(X,ye==="Indent"?"IndentList":"OutdentList",Kn.dom)}),qo(tt.sourceList,tn),xo(tt.sourceList)})},qe=(X,re)=>{const ye=zs(Or(X)),Ze=zs(Pe(X));let tt=!1;if(ye.length||Ze.length){const tn=X.selection.getBookmark();Wm(X,ye,re),Ko(X,re,Ze),X.selection.moveToBookmark(tn),X.selection.setRng(Mr(X.selection.getRng())),X.nodeChanged(),tt=!0}return tt},gd=(X,re)=>!Jo(X)&&qe(X,re),mc=X=>gd(X,"Indent"),Cf=X=>gd(X,"Outdent"),Zm=X=>gd(X,"Flatten"),kf="\uFEFF",dt=X=>X===kf,sn=(X,re,ye)=>Ks(X,re,ye).isSome(),Kt=(X,re)=>sn(X,J(xt,re));var uo=tinymce.util.Tools.resolve("tinymce.dom.BookmarkManager");const ps=Ji.DOM,qs=X=>{const re={},ye=Ze=>{let tt=X[Ze?"startContainer":"endContainer"],tn=X[Ze?"startOffset":"endOffset"];if(hr(tt)){const Kn=ps.create("span",{"data-mce-type":"bookmark"});tt.hasChildNodes()?(tn=Math.min(tn,tt.childNodes.length-1),Ze?tt.insertBefore(Kn,tt.childNodes[tn]):ps.insertAfter(Kn,tt.childNodes[tn])):tt.appendChild(Kn),tt=Kn,tn=0}re[Ze?"startContainer":"endContainer"]=tt,re[Ze?"startOffset":"endOffset"]=tn};return ye(!0),X.collapsed||ye(),re},gr=X=>{const re=Ze=>{const tt=Mo=>{var To;let _o=(To=Mo.parentNode)===null||To===void 0?void 0:To.firstChild,ai=0;for(;_o;){if(_o===Mo)return ai;(!hr(_o)||_o.getAttribute("data-mce-type")!=="bookmark")&&ai++,_o=_o.nextSibling}return-1};let tn=X[Ze?"startContainer":"endContainer"],Kn=X[Ze?"startOffset":"endOffset"];if(tn){if(hr(tn)&&tn.parentNode){const Mo=tn;Kn=tt(tn),tn=tn.parentNode,ps.remove(Mo),!tn.hasChildNodes()&&ps.isBlock(tn)&&tn.appendChild(ps.create("br"))}X[Ze?"startContainer":"endContainer"]=tn,X[Ze?"startOffset":"endOffset"]=Kn}};re(!0),re();const ye=ps.createRng();return ye.setStart(X.startContainer,X.startOffset),X.endContainer&&ye.setEnd(X.endContainer,X.endOffset),Mr(ye)},br=X=>{switch(X){case"UL":return"ToggleUlList";case"OL":return"ToggleOlList";case"DL":return"ToggleDLList"}},rh=(X,re,ye)=>{const Ze=ye["list-style-type"]?ye["list-style-type"]:null;X.setStyle(re,"list-style-type",Ze)},Vp=(X,re)=>{ka.each(re,(ye,Ze)=>{X.setAttribute(Ze,ye)})},Ui=(X,re,ye)=>{Vp(re,ye["list-attributes"]),ka.each(X.select("li",re),Ze=>{Vp(Ze,ye["list-item-attributes"])})},pc=(X,re,ye)=>{rh(X,re,ye),Ui(X,re,ye)},Um=(X,re,ye)=>{ka.each(ye,Ze=>X.setStyle(re,Ze,""))},la=(X,re)=>k(re)&&!Dl(re,X.schema.getBlockElements()),Ci=(X,re,ye,Ze)=>{let tt=re[ye?"startContainer":"endContainer"];const tn=re[ye?"startOffset":"endOffset"];hr(tt)&&(tt=tt.childNodes[Math.min(tn,tt.childNodes.length-1)]||tt),!ye&&yl(tt.nextSibling)&&(tt=tt.nextSibling);const Kn=To=>{for(;!X.dom.isBlock(To)&&To.parentNode&&Ze!==To;)To=To.parentNode;return To},Mo=(To,_o)=>{var ai;const pi=new Oi(To,Kn(To)),Yl=_o?"next":"prev";let Uu;for(;Uu=pi[Yl]();)if(!(Rl(X,Uu)||dt(Uu.textContent)||((ai=Uu.textContent)===null||ai===void 0?void 0:ai.length)===0))return ae.some(Uu);return ae.none()};if(ye&&Yr(tt))if(dt(tt.textContent))tt=Mo(tt,!1).getOr(tt);else for(tt.parentNode!==null&&la(X,tt.parentNode)&&(tt=tt.parentNode);tt.previousSibling!==null&&(la(X,tt.previousSibling)||Yr(tt.previousSibling));)tt=tt.previousSibling;if(!ye&&Yr(tt))if(dt(tt.textContent))tt=Mo(tt,!0).getOr(tt);else for(tt.parentNode!==null&&la(X,tt.parentNode)&&(tt=tt.parentNode);tt.nextSibling!==null&&(la(X,tt.nextSibling)||Yr(tt.nextSibling));)tt=tt.nextSibling;for(;tt.parentNode!==Ze;){const To=tt.parentNode;if(ba(X,tt)||/^(TD|TH)$/.test(To.nodeName))return tt;tt=To}return tt},nu=(X,re,ye)=>{const Ze=[],tt=X.dom,tn=Ci(X,re,!0,ye),Kn=Ci(X,re,!1,ye);let Mo;const To=[];for(let _o=tn;_o&&(To.push(_o),_o!==Kn);_o=_o.nextSibling);return ka.each(To,_o=>{var ai;if(ba(X,_o)){Ze.push(_o),Mo=null;return}if(tt.isBlock(_o)||yl(_o)){yl(_o)&&tt.remove(_o),Mo=null;return}const pi=_o.nextSibling;if(uo.isBookmarkNode(_o)&&(ja(pi)||ba(X,pi)||!pi&&_o.parentNode===ye)){Mo=null;return}Mo||(Mo=tt.create("p"),(ai=_o.parentNode)===null||ai===void 0||ai.insertBefore(Mo,_o),Ze.push(Mo)),Mo.appendChild(_o)}),Ze},Dr=(X,re,ye)=>{const Ze=X.getStyle(re,"list-style-type");let tt=ye?ye["list-style-type"]:"";return tt=tt===null?"":tt,Ze===tt},Pc=(X,re)=>{const ye=X.selection.getStart(!0),Ze=Ci(X,re,!0,X.getBody());return Kt(Nt.fromDom(Ze),Nt.fromDom(re.commonAncestorContainer))?re.commonAncestorContainer:ye},el=(X,re,ye)=>{const Ze=X.selection.getRng();let tt="LI";const tn=Tn(X,Pc(X,Ze)),Kn=X.dom;if(Kn.getContentEditable(X.selection.getNode())==="false")return;re=re.toUpperCase(),re==="DL"&&(tt="DT");const Mo=qs(Ze),To=yt(nu(X,Ze,tn),X.dom.isEditable);ka.each(To,_o=>{let ai;const pi=_o.previousSibling,Yl=_o.parentNode;Mi(Yl)||(pi&&ja(pi)&&pi.nodeName===re&&Dr(Kn,pi,ye)?(ai=pi,_o=Kn.rename(_o,tt),pi.appendChild(_o)):(ai=Kn.create(re),Yl.insertBefore(ai,_o),ai.appendChild(_o),_o=Kn.rename(_o,tt)),Um(Kn,_o,["margin","margin-right","margin-bottom","margin-left","margin-top","padding","padding-right","padding-bottom","padding-left","padding-top"]),pc(Kn,ai,ye),Wu(X.dom,ai))}),X.selection.setRng(gr(Mo))},xf=(X,re)=>ja(X)&&X.nodeName===(re==null?void 0:re.nodeName),zp=(X,re,ye)=>{const Ze=X.getStyle(re,"list-style-type",!0),tt=X.getStyle(ye,"list-style-type",!0);return Ze===tt},ih=(X,re)=>X.className===re.className,nm=(X,re,ye)=>xf(re,ye)&&zp(X,re,ye)&&ih(re,ye),Wu=(X,re)=>{let ye,Ze=re.nextSibling;if(nm(X,re,Ze)){const tt=Ze;for(;ye=tt.firstChild;)re.appendChild(ye);X.remove(tt)}if(Ze=re.previousSibling,nm(X,re,Ze)){const tt=Ze;for(;ye=tt.lastChild;)re.insertBefore(ye,re.firstChild);X.remove(tt)}},pl=(X,re,ye,Ze)=>{if(re.nodeName!==ye){const tt=X.dom.rename(re,ye);pc(X.dom,tt,Ze),Nr(X,br(ye),tt)}else pc(X.dom,re,Ze),Nr(X,br(ye),re)},ah=(X,re,ye,Ze)=>{if(re.classList.forEach((tt,tn,Kn)=>{tt.startsWith("tox-")&&(Kn.remove(tt),Kn.length===0&&re.removeAttribute("class"))}),re.nodeName!==ye){const tt=X.dom.rename(re,ye);pc(X.dom,tt,Ze),Nr(X,br(ye),tt)}else pc(X.dom,re,Ze),Nr(X,br(ye),re)},l1=(X,re,ye,Ze,tt)=>{const tn=ja(re);if(tn&&re.nodeName===Ze&&!Ef(tt)&&!Gr(re))Zm(X);else{el(X,Ze,tt);const Kn=qs(X.selection.getRng()),Mo=tn?[re,...ye]:ye,To=tn&&Gr(re)?ah:pl;ka.each(Mo,_o=>{To(X,_o,Ze,tt)}),X.selection.setRng(gr(Kn))}},Ef=X=>"list-style-type"in X,om=(X,re,ye,Ze)=>{if(re!==X.getBody())if(re)if(re.nodeName===ye&&!Ef(Ze)&&!Gr(re))Zm(X);else{const tt=qs(X.selection.getRng());Gr(re)&&re.classList.forEach((Kn,Mo,To)=>{Kn.startsWith("tox-")&&(To.remove(Kn),To.length===0&&re.removeAttribute("class"))}),pc(X.dom,re,Ze);const tn=X.dom.rename(re,ye);Wu(X.dom,tn),X.selection.setRng(gr(tt)),el(X,ye,Ze),Nr(X,br(ye),tn)}else el(X,ye,Ze),Nr(X,br(ye),re)},bd=(X,re,ye)=>{const Ze=Ga(X);if(dl(X,Ze))return;const tt=fd(X),tn=h(ye)?ye:{};tt.length>0?l1(X,Ze,tt,re,tn):om(X,Ze,re,tn)},vd=Ji.DOM,ef=(X,re)=>{const ye=re.parentElement;if(ye&&ye.nodeName==="LI"&&ye.firstChild===re){const Ze=ye.previousSibling;Ze&&Ze.nodeName==="LI"?(Ze.appendChild(re),Ml(X,ye)&&vd.remove(ye)):vd.setStyle(ye,"listStyleType","none")}if(ja(ye)){const Ze=ye.previousSibling;Ze&&Ze.nodeName==="LI"&&Ze.appendChild(re)}},Cr=(X,re)=>{const ye=ka.grep(X.select("ol,ul",re));ka.each(ye,Ze=>{ef(X,Ze)})},Rr=(X,re,ye,Ze)=>{let tt=re.startContainer;const tn=re.startOffset;if(Yr(tt)&&(ye?tn0))return tt;const Kn=X.schema.getNonEmptyElements();hr(tt)&&(tt=jr.getNode(tt,tn));const Mo=new Oi(tt,Ze);ye&&cd(X.dom,tt)&&Mo.next();const To=ye?Mo.next.bind(Mo):Mo.prev2.bind(Mo);for(;tt=To();)if(tt.nodeName==="LI"&&!tt.hasChildNodes()||Kn[tt.nodeName]||Yr(tt)&&tt.data.length>0)return tt;return null},Ma=(X,re)=>{const ye=re.childNodes;return ye.length===1&&!ja(ye[0])&&X.isBlock(ye[0])},qm=X=>ae.from(X).map(Nt.fromDom).filter(wo).exists(re=>Ge(re)&&!De(["details"],vs(re))),Wp=(X,re)=>{Ma(X,re)&&qm(re.firstChild)&&X.remove(re.firstChild,!0)},Ea=(X,re,ye)=>{let Ze;const tt=Ma(X,ye)?ye.firstChild:ye;if(Wp(X,re),!Ml(X,re,!0))for(;Ze=re.firstChild;)tt.appendChild(Ze)},Dc=(X,re,ye)=>{let Ze;const tt=re.parentNode;if(!Qu(X,re)||!Qu(X,ye))return;ja(ye.lastChild)&&(Ze=ye.lastChild),tt===ye.lastChild&&yl(tt.previousSibling)&&X.remove(tt.previousSibling);const tn=ye.lastChild;tn&&yl(tn)&&re.hasChildNodes()&&X.remove(tn),Ml(X,ye,!0)&&nt(Nt.fromDom(ye)),Ea(X,re,ye),Ze&&ye.appendChild(Ze);const Mo=kn(Nt.fromDom(ye),Nt.fromDom(re))?X.getParents(re,ja,ye):[];X.remove(re),Oe(Mo,To=>{Ml(X,To)&&To!==X.getRoot()&&X.remove(To)})},Na=(X,re,ye)=>{nt(Nt.fromDom(ye)),Dc(X.dom,re,ye),X.selection.setCursorLocation(ye,0)},Rc=(X,re,ye,Ze)=>{const tt=X.dom;if(tt.isEmpty(Ze))Na(X,ye,Ze);else{const tn=qs(re);Dc(tt,ye,Ze),X.selection.setRng(gr(tn))}},sm=(X,re,ye,Ze)=>{const tt=qs(re);Dc(X.dom,ye,Ze);const tn=gr(tt);X.selection.setRng(tn)},Zo=(X,re)=>{const ye=X.dom,Ze=X.selection,tt=Ze.getStart(),tn=We(X,tt),Kn=ye.getParent(Ze.getStart(),"LI",tn);if(Kn){const Mo=Kn.parentElement;if(Mo===X.getBody()&&Ml(ye,Mo))return!0;const To=Mr(Ze.getRng()),_o=ye.getParent(Rr(X,To,re,tn),"LI",tn),ai=_o&&(re?ye.isChildOf(Kn,_o):ye.isChildOf(_o,Kn));if(_o&&_o!==Kn&&!ai)return X.undoManager.transact(()=>{re?Rc(X,To,_o,Kn):ql(Kn)?Cf(X):sm(X,To,Kn,_o)}),!0;if(ai&&!re&&_o!==Kn)return X.undoManager.transact(()=>{if(To.commonAncestorContainer.parentElement){const pi=qs(To),Yl=To.commonAncestorContainer.parentElement;Ea(ye,To.commonAncestorContainer.parentElement,_o),Yl.remove();const Uu=gr(pi);X.selection.setRng(Uu)}}),!0;if(!_o&&!re&&To.startOffset===0&&To.endOffset===0)return X.undoManager.transact(()=>{Zm(X)}),!0}return!1},Il=(X,re,ye)=>{const Ze=X.getParent(re.parentNode,X.isBlock,ye);X.remove(re),Ze&&X.isEmpty(Ze)&&X.remove(Ze)},Od=(X,re)=>{const ye=X.dom,Ze=X.selection.getStart(),tt=We(X,Ze),tn=ye.getParent(Ze,ye.isBlock,tt);if(tn&&ye.isEmpty(tn)){const Kn=Mr(X.selection.getRng()),Mo=ye.getParent(Rr(X,Kn,re,tt),"LI",tt);if(Mo){const To=Yl=>De(["td","th","caption"],vs(Yl)),_o=Yl=>Yl.dom===tt,ai=pr(Nt.fromDom(Mo),To,_o),pi=pr(Nt.fromDom(Kn.startContainer),To,_o);return Fe(ai,pi,xt)?(X.undoManager.transact(()=>{const Yl=Mo.parentNode;Il(ye,tn,tt),Wu(ye,Yl),X.selection.select(Mo,!0),X.selection.collapse(re)}),!0):!1}}return!1},qi=(X,re)=>Zo(X,re)||Od(X,re),Ia=X=>{const re=X.selection.getStart(),ye=We(X,re);return X.dom.getParent(re,"LI,DT,DD",ye)||me(X).length>0},Zp=X=>Ia(X)?(X.undoManager.transact(()=>{X.execCommand("Delete"),Cr(X.dom,X.getBody())}),!0):!1,Ba=(X,re)=>{const ye=X.selection;return!dl(X,ye.getNode())&&(ye.isCollapsed()?qi(X,re):Zp(X))},ki=X=>{X.on("ExecCommand",re=>{const ye=re.command.toLowerCase();(ye==="delete"||ye==="forwarddelete")&&Ia(X)&&Cr(X.dom,X.getBody())}),X.on("keydown",re=>{re.keyCode===ra.BACKSPACE?Ba(X,!1)&&re.preventDefault():re.keyCode===ra.DELETE&&Ba(X,!0)&&re.preventDefault()})},Xl=X=>({backspaceDelete:re=>{Ba(X,re)}}),Bi=(X,re)=>{const ye=Ga(X);ye===null||dl(X,ye)||X.undoManager.transact(()=>{h(re.styles)&&X.dom.setStyles(ye,re.styles),h(re.attrs)&&ul(re.attrs,(Ze,tt)=>X.dom.setAttrib(ye,tt,Ze))})},yu=X=>{const re=Rt(Ni(X).split("")),ye=Te(re,(Ze,tt)=>{const tn=Ze.toUpperCase().charCodeAt(0)-65+1;return Math.pow(26,tt)*tn});return St(ye,(Ze,tt)=>Ze+tt,0)},Zu=X=>{if(X--,X<0)return"";{const re=X%26,ye=Math.floor(X/26),Ze=Zu(ye),tt=String.fromCharCode(65+re);return Ze+tt}},Kr=X=>/^[A-Z]+$/.test(X),xi=X=>/^[a-z]+$/.test(X),Bl=X=>/^[0-9]+$/.test(X),_u=X=>Bl(X)?2:Kr(X)?0:xi(X)?1:Ws(X)?3:4,di=X=>{switch(_u(X)){case 2:return ae.some({listStyleType:ae.none(),start:X});case 0:return ae.some({listStyleType:ae.some("upper-alpha"),start:yu(X).toString()});case 1:return ae.some({listStyleType:ae.some("lower-alpha"),start:yu(X).toString()});case 3:return ae.some({listStyleType:ae.none(),start:""});case 4:return ae.none()}},Xm=X=>{const re=parseInt(X.start,10);return rn(X.listStyleType,"upper-alpha")?Zu(re):rn(X.listStyleType,"lower-alpha")?Zu(re).toLowerCase():X.start},Up=X=>{const re=Ga(X);!Us(re)||dl(X,re)||X.windowManager.open({title:"List Properties",body:{type:"panel",items:[{type:"input",name:"start",label:"Start list at number",inputMode:"numeric"}]},initialData:{start:Xm({start:X.dom.getAttrib(re,"start","1"),listStyleType:ae.from(X.dom.getStyle(re,"list-style-type"))})},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],onSubmit:ye=>{const Ze=ye.getData();di(Ze.start).each(tt=>{X.execCommand("mceListUpdate",!1,{attrs:{start:tt.start==="1"?"":tt.start},styles:{"list-style-type":tt.listStyleType.getOr("")}})}),ye.close()}})},lr=(X,re)=>()=>{const ye=Ga(X);return k(ye)&&ye.nodeName===re},ou=X=>{X.addCommand("mceListProps",()=>{Up(X)})},$s=X=>{X.on("BeforeExecCommand",re=>{const ye=re.command.toLowerCase();ye==="indent"?mc(X):ye==="outdent"&&Cf(X)}),X.addCommand("InsertUnorderedList",(re,ye)=>{bd(X,"UL",ye)}),X.addCommand("InsertOrderedList",(re,ye)=>{bd(X,"OL",ye)}),X.addCommand("InsertDefinitionList",(re,ye)=>{bd(X,"DL",ye)}),X.addCommand("RemoveList",()=>{Zm(X)}),ou(X),X.addCommand("mceListUpdate",(re,ye)=>{h(ye)&&Bi(X,ye)}),X.addQueryStateHandler("InsertUnorderedList",lr(X,"UL")),X.addQueryStateHandler("InsertOrderedList",lr(X,"OL")),X.addQueryStateHandler("InsertDefinitionList",lr(X,"DL"))};var La=tinymce.util.Tools.resolve("tinymce.html.Node");const Mc=X=>X.type===3,wu=X=>X.length===0,xe=X=>{const re=(tt,tn)=>{const Kn=La.create("li");Oe(tt,Mo=>Kn.append(Mo)),tn?X.insert(Kn,tn,!0):X.append(Kn)},ye=(tt,tn)=>Mc(tn)?[...tt,tn]:!wu(tt)&&!Mc(tn)?(re(tt,tn),[]):tt,Ze=St(X.children(),ye,[]);wu(Ze)||re(Ze)},Nc=X=>{X.on("PreInit",()=>{const{parser:re}=X;re.addNodeFilter("ul,ol",ye=>Oe(ye,xe))})},Tf=X=>{X.on("keydown",re=>{re.keyCode!==ra.TAB||ra.metaKeyPressed(re)||X.undoManager.transact(()=>{(re.shiftKey?Cf(X):mc(X))&&re.preventDefault()})})},jl=X=>{vu(X)&&Tf(X),ki(X)},_r=(X,re)=>ye=>{const Ze=tt=>{ye.setActive(yr(tt.parents,re)),ye.setEnabled(!dl(X,tt.element)&&X.selection.isEditable())};return ye.setEnabled(X.selection.isEditable()),Fr(X,Ze)},qp=X=>{const re=ye=>()=>X.execCommand(ye);X.hasPlugin("advlist")||(X.ui.registry.addToggleButton("numlist",{icon:"ordered-list",active:!1,tooltip:"Numbered list",onAction:re("InsertOrderedList"),onSetup:_r(X,"OL")}),X.ui.registry.addToggleButton("bullist",{icon:"unordered-list",active:!1,tooltip:"Bullet list",onAction:re("InsertUnorderedList"),onSetup:_r(X,"UL")}))},im=(X,re)=>ye=>Fr(X,tt=>ye.setEnabled(yr(tt.parents,re)&&!dl(X,tt.element))),jm=X=>{const re={text:"List properties...",icon:"ordered-list",onAction:()=>X.execCommand("mceListProps"),onSetup:im(X,"OL")};X.ui.registry.addMenuItem("listprops",re),X.ui.registry.addContextMenu("lists",{update:ye=>{const Ze=Ga(X,ye);return Us(Ze)?["listprops"]:[]}})};var su=()=>{o.add("lists",X=>(uc(X),Nc(X),X.hasPlugin("rtc",!0)?ou(X):(jl(X),$s(X)),qp(X),jm(X),Xl(X)))};su()})();(function(){const o=j=>{let ae=j;return{get:()=>ae,set:ne=>{ae=ne}}};var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const n=j=>()=>j;var r=tinymce.util.Tools.resolve("tinymce.Env");const c=j=>j.dispatch("ResizeEditor"),u=j=>ae=>ae.options.get(j),h=j=>{const ae=j.options.register;ae("autoresize_overflow_padding",{processor:"number",default:1}),ae("autoresize_bottom_margin",{processor:"number",default:50})},p=u("min_height"),b=u("max_height"),y=u("autoresize_overflow_padding"),k=u("autoresize_bottom_margin"),A=j=>j.plugins.fullscreen&&j.plugins.fullscreen.isFullscreen(),R=(j,ae)=>{const fe=j.getBody();fe&&(fe.style.overflowY=ae?"":"hidden",ae||(fe.scrollTop=0))},N=(j,ae,fe,_e)=>{var ne;const Se=parseInt((ne=j.getStyle(ae,fe,_e))!==null&&ne!==void 0?ne:"",10);return isNaN(Se)?0:Se},F=j=>{if((j==null?void 0:j.type.toLowerCase())==="setcontent"){const ae=j;return ae.selection===!0||ae.paste===!0}else return!1},V=(j,ae,fe,_e)=>{var ne;const Se=j.dom,De=j.getDoc();if(!De)return;if(A(j)){R(j,!0);return}const Be=De.documentElement,Te=_e?_e():y(j),Oe=(ne=p(j))!==null&&ne!==void 0?ne:j.getElement().offsetHeight;let yt=Oe;const Tt=N(Se,Be,"margin-top",!0),St=N(Se,Be,"margin-bottom",!0);let q=Be.offsetHeight+Tt+St+Te;q<0&&(q=0);const Le=j.getContainer().offsetHeight,je=j.getContentAreaContainer().offsetHeight,mn=Le-je;q+mn>Oe&&(yt=q+mn);const Rt=b(j);if(Rt&&yt>Rt?(yt=Rt,R(j,!0)):R(j,!1),yt!==ae.get()){const Ue=yt-ae.get();if(Se.setStyle(j.getContainer(),"height",yt+"px"),ae.set(yt),c(j),r.browser.isSafari()&&(r.os.isMacOS()||r.os.isiOS())){const ct=j.getWin();ct.scrollTo(ct.pageXOffset,ct.pageYOffset)}j.hasFocus()&&F(fe)&&j.selection.scrollIntoView(),(r.browser.isSafari()||r.browser.isChromium())&&Ue<0&&V(j,ae,fe,_e)}},W=(j,ae)=>{let fe=()=>k(j),_e,ne;j.on("init",Se=>{_e=0;const De=y(j),Be=j.dom;Be.setStyles(j.getDoc().documentElement,{height:"auto"}),r.browser.isEdge()||r.browser.isIE()?Be.setStyles(j.getBody(),{paddingLeft:De,paddingRight:De,"min-height":0}):Be.setStyles(j.getBody(),{paddingLeft:De,paddingRight:De}),V(j,ae,Se,fe),_e+=1}),j.on("NodeChange SetContent keyup FullscreenStateChanged ResizeContent",Se=>{if(_e===1)ne=j.getContainer().offsetHeight,V(j,ae,Se,fe),_e+=1;else if(_e===2){const De=ne{j.addCommand("mceAutoResize",()=>{V(j,ae)})};var te=()=>{e.add("autoresize",j=>{if(h(j),j.options.isSet("resize")||j.options.set("resize",!1),!j.inline){const ae=o(0);J(j,ae),W(j,ae)}})};te()})();(function(){var o=tinymce.util.Tools.resolve("tinymce.PluginManager");const n=(gt=>Ut=>gt===Ut)(null),r=gt=>gt,c=(gt,Ut)=>{const pt=gt.length,Ne=new Array(pt);for(let Nt=0;Nt]",punctuation:"[~№|!-*+-\\/:;?@\\[-`{}¡«·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰෴๏๚๛༄-༒༺-༽྅࿐-࿔࿙࿚၊-၏჻፡-፨᐀᙭᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰⸱、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・]"},p={ALETTER:0,MIDNUMLET:1,MIDLETTER:2,MIDNUM:3,NUMERIC:4,CR:5,LF:6,NEWLINE:7,EXTEND:8,FORMAT:9,KATAKANA:10,EXTENDNUMLET:11,AT:12,OTHER:13},b=[new RegExp(h.aletter),new RegExp(h.midnumlet),new RegExp(h.midletter),new RegExp(h.midnum),new RegExp(h.numeric),new RegExp(h.cr),new RegExp(h.lf),new RegExp(h.newline),new RegExp(h.extend),new RegExp(h.format),new RegExp(h.katakana),new RegExp(h.extendnumlet),new RegExp("@")],y="",k=new RegExp("^"+h.punctuation+"$"),A=/^\s+$/,R=b,N=p.OTHER,F=gt=>{let Ut=N;const pt=R.length;for(let Ne=0;Ne{const Ut={};return pt=>{if(Ut[pt])return Ut[pt];{const Ne=gt(pt);return Ut[pt]=Ne,Ne}}},W=gt=>{const Ut=V(F);return c(gt,Ut)},J=(gt,Ut)=>{const pt=gt[Ut],Ne=gt[Ut+1];if(Ut<0||Ut>gt.length-1&&Ut!==0||pt===p.ALETTER&&Ne===p.ALETTER)return!1;const Nt=gt[Ut+2];if(pt===p.ALETTER&&(Ne===p.MIDLETTER||Ne===p.MIDNUMLET||Ne===p.AT)&&Nt===p.ALETTER)return!1;const pn=gt[Ut-1];return(pt===p.MIDLETTER||pt===p.MIDNUMLET||Ne===p.AT)&&Ne===p.ALETTER&&pn===p.ALETTER||(pt===p.NUMERIC||pt===p.ALETTER)&&(Ne===p.NUMERIC||Ne===p.ALETTER)||(pt===p.MIDNUM||pt===p.MIDNUMLET)&&Ne===p.NUMERIC&&pn===p.NUMERIC||pt===p.NUMERIC&&(Ne===p.MIDNUM||Ne===p.MIDNUMLET)&&Nt===p.NUMERIC||(pt===p.EXTEND||pt===p.FORMAT)&&(Ne===p.ALETTER||Ne===p.NUMERIC||Ne===p.KATAKANA||Ne===p.EXTEND||Ne===p.FORMAT)||(Ne===p.EXTEND||Ne===p.FORMAT&&(Nt===p.ALETTER||Nt===p.NUMERIC||Nt===p.KATAKANA||Nt===p.EXTEND||Nt===p.FORMAT))&&(pt===p.ALETTER||pt===p.NUMERIC||pt===p.KATAKANA||pt===p.EXTEND||pt===p.FORMAT)||pt===p.CR&&Ne===p.LF?!1:pt===p.NEWLINE||pt===p.CR||pt===p.LF||Ne===p.NEWLINE||Ne===p.CR||Ne===p.LF?!0:!(pt===p.KATAKANA&&Ne===p.KATAKANA||Ne===p.EXTENDNUMLET&&(pt===p.ALETTER||pt===p.NUMERIC||pt===p.KATAKANA||pt===p.EXTENDNUMLET)||pt===p.EXTENDNUMLET&&(Ne===p.ALETTER||Ne===p.NUMERIC||Ne===p.KATAKANA)||pt===p.AT)},te=y,j=A,ae=k,fe=gt=>gt==="http"||gt==="https",_e=(gt,Ut)=>{let pt;for(pt=Ut;pt{const pt=_e(gt,Ut+1);return gt.slice(Ut+1,pt).join(te).substr(0,3)==="://"?pt:Ut},Se=(gt,Ut,pt,Ne)=>{const Nt=[],pn=[];let xt=[];for(let kn=0;kn({includeWhitespace:!1,includePunctuation:!1}),Be=(gt,Ut,pt)=>{pt={...De(),...pt};const Ne=c(gt,Ut),Nt=W(Ne);return Se(gt,Ne,Nt,pt)},Oe=(gt,Ut,pt)=>Be(gt,Ut,pt).words,yt=gt=>gt.replace(/\uFEFF/g,"");var Tt=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker");const St=(gt,Ut)=>{const pt=Ut.getBlockElements(),Ne=Ut.getVoidElements(),Nt=is=>pt[is.nodeName]||Ne[is.nodeName],pn=[];let xt="";const kn=new Tt(gt,gt);let Dn;for(;Dn=kn.next();)Dn.nodeType===3?xt+=yt(Dn.data):Nt(Dn)&&xt.length&&(pn.push(xt),xt="");return xt.length&&pn.push(xt),pn},q=gt=>gt.replace(/\u200B/g,""),Le=gt=>gt.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"_").length,je=(gt,Ut)=>{const pt=q(St(gt,Ut).join(` -`));return Oe(pt.split(""),r).length},mn=(gt,Ut)=>{const pt=St(gt,Ut).join("");return Le(pt)},Rt=(gt,Ut)=>{const pt=St(gt,Ut).join("").replace(/\s/g,"");return Le(pt)},Ue=(gt,Ut)=>()=>Ut(gt.getBody(),gt.schema),ct=(gt,Ut)=>()=>Ut(gt.selection.getRng().cloneContents(),gt.schema),dn=gt=>Ue(gt,je),Zt=gt=>({body:{getWordCount:dn(gt),getCharacterCount:Ue(gt,mn),getCharacterCountWithoutSpaces:Ue(gt,Rt)},selection:{getWordCount:ct(gt,je),getCharacterCount:ct(gt,mn),getCharacterCountWithoutSpaces:ct(gt,Rt)},getCount:dn(gt)}),rn=(gt,Ut)=>{gt.windowManager.open({title:"Word Count",body:{type:"panel",items:[{type:"table",header:["Count","Document","Selection"],cells:[["Words",String(Ut.body.getWordCount()),String(Ut.selection.getWordCount())],["Characters (no spaces)",String(Ut.body.getCharacterCountWithoutSpaces()),String(Ut.selection.getCharacterCountWithoutSpaces())],["Characters",String(Ut.body.getCharacterCount()),String(Ut.selection.getCharacterCount())]]}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}]})},Fe=(gt,Ut)=>{gt.addCommand("mceWordCount",()=>rn(gt,Ut))},mt=(gt,Ut)=>{let pt=null;return{cancel:()=>{n(pt)||(clearTimeout(pt),pt=null)},throttle:(...pn)=>{n(pt)&&(pt=setTimeout(()=>{pt=null,gt.apply(null,pn)},Ut))}}};var de=tinymce.util.Tools.resolve("tinymce.util.Delay");const Eo=(gt,Ut)=>{gt.dispatch("wordCountUpdate",{wordCount:{words:Ut.body.getWordCount(),characters:Ut.body.getCharacterCount(),charactersWithoutSpaces:Ut.body.getCharacterCountWithoutSpaces()}})},jn=(gt,Ut)=>{Eo(gt,Ut)},Yn=(gt,Ut,pt)=>{const Ne=mt(()=>jn(gt,Ut),pt);gt.on("init",()=>{jn(gt,Ut),de.setEditorTimeout(gt,()=>{gt.on("SetContent BeforeAddUndo Undo Redo ViewUpdate keyup",Ne.throttle)},0),gt.on("remove",Ne.cancel)})},po=gt=>{const Ut=()=>gt.execCommand("mceWordCount");gt.ui.registry.addButton("wordcount",{tooltip:"Word count",icon:"character-count",onAction:Ut}),gt.ui.registry.addMenuItem("wordcount",{text:"Word count",icon:"character-count",onAction:Ut})};var cs=(gt=300)=>{o.add("wordcount",Ut=>{const pt=Zt(Ut);return Fe(Ut,pt),po(Ut),Yn(Ut,pt,gt),pt})};cs()})();function create_fragment$l(o){let e,n;return{c(){e=element("div"),n=element("div"),attr(n,"class","form-control"),attr(e,"class","tox-wrapper")},m(r,c){insert$1(r,e,c),append(e,n),n.innerHTML=o[0],o[5](n),o[6](e)},p(r,[c]){c&1&&(n.innerHTML=r[0])},i:noop,o:noop,d(r){r&&detach(e),o[5](null),o[6](null)}}}const toolbar="bold italic underline strikethrough removeformat | link | subscript superscript bullist numlist media image codesample table code wordcount blockquote indent outdent blocks";function instance$l(o,e,n){let{value:r=""}=e,{additionalConfig:c={}}=e,u="",h,p,b;const y=["autoresize","code","image","table","codesample","link","lists","media","wordcount"];onDestroy(()=>{p&&p.destroy()}),onMount(()=>{const N={target:h,toolbar_mode:"sliding",toolbar_sticky:!0,skin:!1,content_css:!1,content_style:contentUiSkinCss.toString()+customcss.toString(),branding:!1,inline:!1,plugins:y,contextmenu:!1,menubar:!1,statusbar:!1,entity_encoding:"raw",convert_urls:!1,toolbar,image_caption:!0,relative_urls:!1,browser_spellcheck:!0,max_height:600,setup(F){p=F,F.on("init",function(V){F.setContent(r??"")}),F.on("change input undo redo",function(V){u=F.getContent(),u!==r&&n(0,r=u)})}};tinymce$1.init({...N,...c})});function k(N){p.execCommand("InsertHTML",!1,N)}function A(N){binding_callbacks[N?"unshift":"push"](()=>{h=N,n(1,h)})}function R(N){binding_callbacks[N?"unshift":"push"](()=>{b=N,n(2,b)})}return o.$$set=N=>{"value"in N&&n(0,r=N.value),"additionalConfig"in N&&n(3,c=N.additionalConfig)},[r,h,b,c,k,A,R]}class Tinymce extends SvelteComponent{constructor(e){super(),init(this,e,instance$l,create_fragment$l,safe_not_equal,{value:0,additionalConfig:3,insertMedia:4})}get insertMedia(){return this.$$.ctx[4]}}function get_each_context$7(o,e,n){const r=o.slice();return r[14]=e[n],r}function get_each_context_1$2(o,e,n){const r=o.slice();return r[17]=e[n],r}function create_else_block$7(o){let e,n;return e=new Dropdown({props:{$$slots:{button:[create_button_slot],default:[create_default_slot]},$$scope:{ctx:o}}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1048576&&(u.$$scope={dirty:c,ctx:r}),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_1$9(o){let e,n,r;return{c(){e=element("button"),e.textContent="Browse",attr(e,"class","button")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[9]),n=!0)},p:noop,i:noop,o:noop,d(c){c&&detach(e),n=!1,r()}}}function create_each_block_1$2(o){let e,n,r;function c(...u){return o[10](o[17],...u)}return{c(){e=element("a"),e.textContent=`${o[17].label}`,attr(e,"class","dropdown-item"),attr(e,"href","/")},m(u,h){insert$1(u,e,h),n||(r=listen(e,"click",c),n=!0)},p(u,h){o=u},d(u){u&&detach(e),n=!1,r()}}}function create_default_slot(o){let e,n=ensure_array_like(o[3]),r=[];for(let c=0;cp[14].id;for(let p=0;p0&&create_if_block$e(o),F={};return b=new Dialog({props:F}),o[12](b),b.$on("insert",o[6]),{c(){e=element("div"),n=element("label"),n.textContent="Rich editor files",r=space$3(),u.c(),h=space$3(),N&&N.c(),p=space$3(),create_component(b.$$.fragment),attr(n,"class","mt-4 mb-3"),attr(e,"class","mb-3")},m(V,W){insert$1(V,e,W),append(e,n),append(e,r),A[c].m(e,null),insert$1(V,h,W),N&&N.m(V,W),insert$1(V,p,W),mount_component(b,V,W),y=!0},p(V,[W]){let J=c;c=R(V),c===J?A[c].p(V,W):(group_outros(),transition_out(A[J],1,1,()=>{A[J]=null}),check_outros(),u=A[c],u?u.p(V,W):(u=A[c]=k[c](V),u.c()),transition_in(u,1),u.m(e,null)),V[2].length>0?N?(N.p(V,W),W&4&&transition_in(N,1)):(N=create_if_block$e(V),N.c(),transition_in(N,1),N.m(p.parentNode,p)):N&&(group_outros(),transition_out(N,1,1,()=>{N=null}),check_outros());const te={};b.$set(te)},i(V){y||(transition_in(u),transition_in(N),transition_in(b.$$.fragment,V),y=!0)},o(V){transition_out(u),transition_out(N),transition_out(b.$$.fragment,V),y=!1},d(V){V&&(detach(e),detach(h),detach(p)),A[c].d(),N&&N.d(V),o[12](null),destroy_component(b,V)}}}function instance$k(o,e,n){let r;const c=getContext$1("channel");let{field:u}=e,{record:h}=e,{graph:p}=e,b,y=c.schemas.filter(J=>u.collections.includes(J.name));function k(J){J.preventDefault(),n(7,p.edges=p.edges.filter(te=>!(te.target===J.detail&&te.field===u.name)),p)}function A(J,te){J.preventDefault(),b.open(te)}function R(J){J.preventDefault(),b.close(),n(7,p=insertEdges(p,h,J.detail.records,u.name,J.detail.action))}const N=J=>A(J,y[0].name),F=(J,te)=>A(te,J.name);function V(J){bubble.call(this,o,J)}function W(J){binding_callbacks[J?"unshift":"push"](()=>{b=J,n(1,b)})}return o.$$set=J=>{"field"in J&&n(0,u=J.field),"record"in J&&n(8,h=J.record),"graph"in J&&n(7,p=J.graph)},o.$$.update=()=>{o.$$.dirty&385&&n(2,r=(p==null?void 0:p.edges.filter(J=>J.field===u.name).map(J=>p.records.find(te=>te.id===J.target&&h.id===J.source)).filter(J=>!!(J!=null&&J.id)))??[])},[u,b,r,y,k,A,R,p,h,N,F,V,W]}class RichEditorFiles extends SvelteComponent{constructor(e){super(),init(this,e,instance$k,create_fragment$k,safe_not_equal,{field:0,record:8,graph:7})}}function create_if_block_1$8(o){let e,n,r;function c(h){o[12](h)}let u={record:o[3],field:o[2],validationErrors:o[4]};return o[1]!==void 0&&(u.graph=o[1]),e=new RichEditorFiles({props:u}),binding_callbacks.push(()=>bind(e,"graph",c)),e.$on("editor-insert",o[8]),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&8&&(b.record=h[3]),p&4&&(b.field=h[2]),p&16&&(b.validationErrors=h[4]),!n&&p&2&&(n=!0,b.graph=h[1],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block$d(o){let e,n;return{c(){e=element("div"),n=text(o[6]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&64&&set_data(n,r[6])},d(r){r&&detach(e)}}}function create_fragment$j(o){let e,n,r,c,u,h;function p(A){o[11](A)}let b={additionalConfig:o[7]};o[0]!==void 0&&(b.value=o[0]),n=new Tinymce({props:b}),o[10](n),binding_callbacks.push(()=>bind(n,"value",p));let y=o[2].collections.length>0&&create_if_block_1$8(o),k=o[6]&&create_if_block$d(o);return{c(){e=element("div"),create_component(n.$$.fragment),c=space$3(),y&&y.c(),u=space$3(),k&&k.c(),attr(e,"class","mb-0")},m(A,R){insert$1(A,e,R),mount_component(n,e,null),append(e,c),y&&y.m(e,null),append(e,u),k&&k.m(e,null),h=!0},p(A,[R]){const N={};!r&&R&1&&(r=!0,N.value=A[0],add_flush_callback(()=>r=!1)),n.$set(N),A[2].collections.length>0?y?(y.p(A,R),R&4&&transition_in(y,1)):(y=create_if_block_1$8(A),y.c(),transition_in(y,1),y.m(e,u)):y&&(group_outros(),transition_out(y,1,1,()=>{y=null}),check_outros()),A[6]?k?k.p(A,R):(k=create_if_block$d(A),k.c(),k.m(e,null)):k&&(k.d(1),k=null)},i(A){h||(transition_in(n.$$.fragment,A),transition_in(y),h=!0)},o(A){transition_out(n.$$.fragment,A),transition_out(y),h=!1},d(A){A&&detach(e),o[10](null),destroy_component(n),y&&y.d(),k&&k.d()}}}function instance$j(o,e,n){let r,{value:c}=e,{field:u}=e,{isCreateMode:h}=e,{graph:p}=e,{record:b}=e,{validationErrors:y}=e,k,A={readonly:u.readonly&&!h};function R(W){k.insertMedia(W.detail)}function N(W){binding_callbacks[W?"unshift":"push"](()=>{k=W,n(5,k)})}function F(W){c=W,n(0,c)}function V(W){p=W,n(1,p)}return o.$$set=W=>{"value"in W&&n(0,c=W.value),"field"in W&&n(2,u=W.field),"isCreateMode"in W&&n(9,h=W.isCreateMode),"graph"in W&&n(1,p=W.graph),"record"in W&&n(3,b=W.record),"validationErrors"in W&&n(4,y=W.validationErrors)},o.$$.update=()=>{o.$$.dirty&20&&n(6,r=getErrorMessage(y,u.name))},[c,p,u,b,y,k,r,A,R,h,N,F,V]}class RichEditor extends SvelteComponent{constructor(e){super(),init(this,e,instance$j,create_fragment$j,safe_not_equal,{value:0,field:2,isCreateMode:9,graph:1,record:3,validationErrors:4})}}class Text{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,n,r){[e,n]=clip(this,e,n);let c=[];return this.decompose(0,e,c,2),r.length&&r.decompose(0,r.length,c,3),this.decompose(n,this.length,c,1),TextNode.from(c,this.length-(n-e)+r.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,n=this.length){[e,n]=clip(this,e,n);let r=[];return this.decompose(e,n,r,0),TextNode.from(r,n-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let n=this.scanIdentical(e,1),r=this.length-this.scanIdentical(e,-1),c=new RawTextCursor(this),u=new RawTextCursor(e);for(let h=n,p=n;;){if(c.next(h),u.next(h),h=0,c.lineBreak!=u.lineBreak||c.done!=u.done||c.value!=u.value)return!1;if(p+=c.value.length,c.done||p>=r)return!0}}iter(e=1){return new RawTextCursor(this,e)}iterRange(e,n=this.length){return new PartialTextCursor(this,e,n)}iterLines(e,n){let r;if(e==null)r=this.iter();else{n==null&&(n=this.lines+1);let c=this.line(e).from;r=this.iterRange(c,Math.max(c,n==this.lines+1?this.length:n<=1?0:this.line(n-1).to))}return new LineCursor(r)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?Text.empty:e.length<=32?new TextLeaf(e):TextNode.from(TextLeaf.split(e,[]))}}class TextLeaf extends Text{constructor(e,n=textLength(e)){super(),this.text=e,this.length=n}get lines(){return this.text.length}get children(){return null}lineInner(e,n,r,c){for(let u=0;;u++){let h=this.text[u],p=c+h.length;if((n?r:p)>=e)return new Line$1(c,p,r,h);c=p+1,r++}}decompose(e,n,r,c){let u=e<=0&&n>=this.length?this:new TextLeaf(sliceText(this.text,e,n),Math.min(n,this.length)-Math.max(0,e));if(c&1){let h=r.pop(),p=appendText(u.text,h.text.slice(),0,u.length);if(p.length<=32)r.push(new TextLeaf(p,h.length+u.length));else{let b=p.length>>1;r.push(new TextLeaf(p.slice(0,b)),new TextLeaf(p.slice(b)))}}else r.push(u)}replace(e,n,r){if(!(r instanceof TextLeaf))return super.replace(e,n,r);[e,n]=clip(this,e,n);let c=appendText(this.text,appendText(r.text,sliceText(this.text,0,e)),n),u=this.length+r.length-(n-e);return c.length<=32?new TextLeaf(c,u):TextNode.from(TextLeaf.split(c,[]),u)}sliceString(e,n=this.length,r=` -`){[e,n]=clip(this,e,n);let c="";for(let u=0,h=0;u<=n&&he&&h&&(c+=r),eu&&(c+=p.slice(Math.max(0,e-u),n-u)),u=b+1}return c}flatten(e){for(let n of this.text)e.push(n)}scanIdentical(){return 0}static split(e,n){let r=[],c=-1;for(let u of e)r.push(u),c+=u.length+1,r.length==32&&(n.push(new TextLeaf(r,c)),r=[],c=-1);return c>-1&&n.push(new TextLeaf(r,c)),n}}class TextNode extends Text{constructor(e,n){super(),this.children=e,this.length=n,this.lines=0;for(let r of e)this.lines+=r.lines}lineInner(e,n,r,c){for(let u=0;;u++){let h=this.children[u],p=c+h.length,b=r+h.lines-1;if((n?b:p)>=e)return h.lineInner(e,n,r,c);c=p+1,r=b+1}}decompose(e,n,r,c){for(let u=0,h=0;h<=n&&u=h){let y=c&((h<=e?1:0)|(b>=n?2:0));h>=e&&b<=n&&!y?r.push(p):p.decompose(e-h,n-h,r,y)}h=b+1}}replace(e,n,r){if([e,n]=clip(this,e,n),r.lines=u&&n<=p){let b=h.replace(e-u,n-u,r),y=this.lines-h.lines+b.lines;if(b.lines>4&&b.lines>y>>6){let k=this.children.slice();return k[c]=b,new TextNode(k,this.length-(n-e)+r.length)}return super.replace(u,p,b)}u=p+1}return super.replace(e,n,r)}sliceString(e,n=this.length,r=` -`){[e,n]=clip(this,e,n);let c="";for(let u=0,h=0;ue&&u&&(c+=r),eh&&(c+=p.sliceString(e-h,n-h,r)),h=b+1}return c}flatten(e){for(let n of this.children)n.flatten(e)}scanIdentical(e,n){if(!(e instanceof TextNode))return 0;let r=0,[c,u,h,p]=n>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;c+=n,u+=n){if(c==h||u==p)return r;let b=this.children[c],y=e.children[u];if(b!=y)return r+b.scanIdentical(y,n);r+=b.length+1}}static from(e,n=e.reduce((r,c)=>r+c.length+1,-1)){let r=0;for(let N of e)r+=N.lines;if(r<32){let N=[];for(let F of e)F.flatten(N);return new TextLeaf(N,n)}let c=Math.max(32,r>>5),u=c<<1,h=c>>1,p=[],b=0,y=-1,k=[];function A(N){let F;if(N.lines>u&&N instanceof TextNode)for(let V of N.children)A(V);else N.lines>h&&(b>h||!b)?(R(),p.push(N)):N instanceof TextLeaf&&b&&(F=k[k.length-1])instanceof TextLeaf&&N.lines+F.lines<=32?(b+=N.lines,y+=N.length+1,k[k.length-1]=new TextLeaf(F.text.concat(N.text),F.length+1+N.length)):(b+N.lines>c&&R(),b+=N.lines,y+=N.length+1,k.push(N))}function R(){b!=0&&(p.push(k.length==1?k[0]:TextNode.from(k,y)),y=-1,b=k.length=0)}for(let N of e)A(N);return R(),p.length==1?p[0]:new TextNode(p,n)}}Text.empty=new TextLeaf([""],0);function textLength(o){let e=-1;for(let n of o)e+=n.length+1;return e}function appendText(o,e,n=0,r=1e9){for(let c=0,u=0,h=!0;u=n&&(b>r&&(p=p.slice(0,r-c)),c0?1:(e instanceof TextLeaf?e.text.length:e.children.length)<<1]}nextInner(e,n){for(this.done=this.lineBreak=!1;;){let r=this.nodes.length-1,c=this.nodes[r],u=this.offsets[r],h=u>>1,p=c instanceof TextLeaf?c.text.length:c.children.length;if(h==(n>0?p:0)){if(r==0)return this.done=!0,this.value="",this;n>0&&this.offsets[r-1]++,this.nodes.pop(),this.offsets.pop()}else if((u&1)==(n>0?0:1)){if(this.offsets[r]+=n,e==0)return this.lineBreak=!0,this.value=` -`,this;e--}else if(c instanceof TextLeaf){let b=c.text[h+(n<0?-1:0)];if(this.offsets[r]+=n,b.length>Math.max(0,e))return this.value=e==0?b:n>0?b.slice(e):b.slice(0,b.length-e),this;e-=b.length}else{let b=c.children[h+(n<0?-1:0)];e>b.length?(e-=b.length,this.offsets[r]+=n):(n<0&&this.offsets[r]--,this.nodes.push(b),this.offsets.push(n>0?1:(b instanceof TextLeaf?b.text.length:b.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class PartialTextCursor{constructor(e,n,r){this.value="",this.done=!1,this.cursor=new RawTextCursor(e,n>r?-1:1),this.pos=n>r?e.length:0,this.from=Math.min(n,r),this.to=Math.max(n,r)}nextInner(e,n){if(n<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,n<0?this.pos-this.to:this.from-this.pos);let r=n<0?this.pos-this.from:this.to-this.pos;e>r&&(e=r),r-=e;let{value:c}=this.cursor.next(e);return this.pos+=(c.length+e)*n,this.value=c.length<=r?c:n<0?c.slice(c.length-r):c.slice(0,r),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class LineCursor{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:n,lineBreak:r,value:c}=this.inner.next(e);return n&&this.afterBreak?(this.value="",this.afterBreak=!1):n?(this.done=!0,this.value=""):r?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=c,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Text.prototype[Symbol.iterator]=function(){return this.iter()},RawTextCursor.prototype[Symbol.iterator]=PartialTextCursor.prototype[Symbol.iterator]=LineCursor.prototype[Symbol.iterator]=function(){return this});let Line$1=class{constructor(e,n,r,c){this.from=e,this.to=n,this.number=r,this.text=c}get length(){return this.to-this.from}};function clip(o,e,n){return e=Math.max(0,Math.min(o.length,e)),[e,Math.max(e,Math.min(o.length,n))]}let extend="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(o=>o?parseInt(o,36):1);for(let o=1;oo)return extend[e-1]<=o;return!1}function isRegionalIndicator(o){return o>=127462&&o<=127487}const ZWJ=8205;function findClusterBreak(o,e,n=!0,r=!0){return(n?nextClusterBreak:prevClusterBreak)(o,e,r)}function nextClusterBreak(o,e,n){if(e==o.length)return e;e&&surrogateLow(o.charCodeAt(e))&&surrogateHigh(o.charCodeAt(e-1))&&e--;let r=codePointAt(o,e);for(e+=codePointSize(r);e=0&&isRegionalIndicator(codePointAt(o,h));)u++,h-=2;if(u%2==0)break;e+=2}else break}return e}function prevClusterBreak(o,e,n){for(;e>0;){let r=nextClusterBreak(o,e-2,n);if(r=56320&&o<57344}function surrogateHigh(o){return o>=55296&&o<56320}function codePointAt(o,e){let n=o.charCodeAt(e);if(!surrogateHigh(n)||e+1==o.length)return n;let r=o.charCodeAt(e+1);return surrogateLow(r)?(n-55296<<10)+(r-56320)+65536:n}function fromCodePoint(o){return o<=65535?String.fromCharCode(o):(o-=65536,String.fromCharCode((o>>10)+55296,(o&1023)+56320))}function codePointSize(o){return o<65536?1:2}const DefaultSplit=/\r\n?|\n/;var MapMode=function(o){return o[o.Simple=0]="Simple",o[o.TrackDel=1]="TrackDel",o[o.TrackBefore=2]="TrackBefore",o[o.TrackAfter=3]="TrackAfter",o}(MapMode||(MapMode={}));class ChangeDesc{constructor(e){this.sections=e}get length(){let e=0;for(let n=0;ne)return u+(e-c);u+=p}else{if(r!=MapMode.Simple&&y>=e&&(r==MapMode.TrackDel&&ce||r==MapMode.TrackBefore&&ce))return null;if(y>e||y==e&&n<0&&!p)return e==c||n<0?u:u+b;u+=b}c=y}if(e>c)throw new RangeError(`Position ${e} is out of range for changeset of length ${c}`);return u}touchesRange(e,n=e){for(let r=0,c=0;r=0&&c<=n&&p>=e)return cn?"cover":!0;c=p}return!1}toString(){let e="";for(let n=0;n=0?":"+c:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(n=>typeof n!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new ChangeDesc(e)}static create(e){return new ChangeDesc(e)}}class ChangeSet extends ChangeDesc{constructor(e,n){super(e),this.inserted=n}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return iterChanges(this,(n,r,c,u,h)=>e=e.replace(c,c+(r-n),h),!1),e}mapDesc(e,n=!1){return mapSet(this,e,n,!0)}invert(e){let n=this.sections.slice(),r=[];for(let c=0,u=0;c=0){n[c]=p,n[c+1]=h;let b=c>>1;for(;r.length0&&addInsert(r,n,u.text),u.forward(k),p+=k}let y=e[h++];for(;p>1].toJSON()))}return e}static of(e,n,r){let c=[],u=[],h=0,p=null;function b(k=!1){if(!k&&!c.length)return;hR||A<0||R>n)throw new RangeError(`Invalid change range ${A} to ${R} (in doc of length ${n})`);let F=N?typeof N=="string"?Text.of(N.split(r||DefaultSplit)):N:Text.empty,V=F.length;if(A==R&&V==0)return;Ah&&addSection(c,A-h,-1),addSection(c,R-A,V),addInsert(u,c,F),h=R}}return y(e),b(!p),p}static empty(e){return new ChangeSet(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let n=[],r=[];for(let c=0;cp&&typeof h!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(u.length==1)n.push(u[0],0);else{for(;r.length=0&&n<=0&&n==o[c+1]?o[c]+=e:e==0&&o[c]==0?o[c+1]+=n:r?(o[c]+=e,o[c+1]+=n):o.push(e,n)}function addInsert(o,e,n){if(n.length==0)return;let r=e.length-2>>1;if(r>1])),!(n||h==o.sections.length||o.sections[h+1]<0);)p=o.sections[h++],b=o.sections[h++];e(c,y,u,k,A),c=y,u=k}}}function mapSet(o,e,n,r=!1){let c=[],u=r?[]:null,h=new SectionIter(o),p=new SectionIter(e);for(let b=-1;;)if(h.ins==-1&&p.ins==-1){let y=Math.min(h.len,p.len);addSection(c,y,-1),h.forward(y),p.forward(y)}else if(p.ins>=0&&(h.ins<0||b==h.i||h.off==0&&(p.len=0&&b=0){let y=0,k=h.len;for(;k;)if(p.ins==-1){let A=Math.min(k,p.len);y+=A,k-=A,p.forward(A)}else if(p.ins==0&&p.lenb||h.ins>=0&&h.len>b)&&(p||r.length>y),u.forward2(b),h.forward(b)}}}}class SectionIter{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return n>=e.length?Text.empty:e[n]}textBit(e){let{inserted:n}=this.set,r=this.i-2>>1;return r>=n.length&&!e?Text.empty:n[r].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class SelectionRange{constructor(e,n,r){this.from=e,this.to=n,this.flags=r}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,n=-1){let r,c;return this.empty?r=c=e.mapPos(this.from,n):(r=e.mapPos(this.from,1),c=e.mapPos(this.to,-1)),r==this.from&&c==this.to?this:new SelectionRange(r,c,this.flags)}extend(e,n=e){if(e<=this.anchor&&n>=this.anchor)return EditorSelection.range(e,n);let r=Math.abs(e-this.anchor)>Math.abs(n-this.anchor)?e:n;return EditorSelection.range(this.anchor,r)}eq(e,n=!1){return this.anchor==e.anchor&&this.head==e.head&&(!n||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return EditorSelection.range(e.anchor,e.head)}static create(e,n,r){return new SelectionRange(e,n,r)}}class EditorSelection{constructor(e,n){this.ranges=e,this.mainIndex=n}map(e,n=-1){return e.empty?this:EditorSelection.create(this.ranges.map(r=>r.map(e,n)),this.mainIndex)}eq(e,n=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let r=0;re.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new EditorSelection(e.ranges.map(n=>SelectionRange.fromJSON(n)),e.main)}static single(e,n=e){return new EditorSelection([EditorSelection.range(e,n)],0)}static create(e,n=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let r=0,c=0;ce?8:0)|u)}static normalized(e,n=0){let r=e[n];e.sort((c,u)=>c.from-u.from),n=e.indexOf(r);for(let c=1;cu.head?EditorSelection.range(b,p):EditorSelection.range(p,b))}}return new EditorSelection(e,n)}}function checkSelection(o,e){for(let n of o.ranges)if(n.to>e)throw new RangeError("Selection points outside of document")}let nextID=0;class Facet{constructor(e,n,r,c,u){this.combine=e,this.compareInput=n,this.compare=r,this.isStatic=c,this.id=nextID++,this.default=e([]),this.extensions=typeof u=="function"?u(this):u}get reader(){return this}static define(e={}){return new Facet(e.combine||(n=>n),e.compareInput||((n,r)=>n===r),e.compare||(e.combine?(n,r)=>n===r:sameArray$1),!!e.static,e.enables)}of(e){return new FacetProvider([],this,0,e)}compute(e,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(e,this,1,n)}computeN(e,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new FacetProvider(e,this,2,n)}from(e,n){return n||(n=r=>r),this.compute([e],r=>n(r.field(e)))}}function sameArray$1(o,e){return o==e||o.length==e.length&&o.every((n,r)=>n===e[r])}class FacetProvider{constructor(e,n,r,c){this.dependencies=e,this.facet=n,this.type=r,this.value=c,this.id=nextID++}dynamicSlot(e){var n;let r=this.value,c=this.facet.compareInput,u=this.id,h=e[u]>>1,p=this.type==2,b=!1,y=!1,k=[];for(let A of this.dependencies)A=="doc"?b=!0:A=="selection"?y=!0:((n=e[A.id])!==null&&n!==void 0?n:1)&1||k.push(e[A.id]);return{create(A){return A.values[h]=r(A),1},update(A,R){if(b&&R.docChanged||y&&(R.docChanged||R.selection)||ensureAll(A,k)){let N=r(A);if(p?!compareArray(N,A.values[h],c):!c(N,A.values[h]))return A.values[h]=N,1}return 0},reconfigure:(A,R)=>{let N,F=R.config.address[u];if(F!=null){let V=getAddr(R,F);if(this.dependencies.every(W=>W instanceof Facet?R.facet(W)===A.facet(W):W instanceof StateField?R.field(W,!1)==A.field(W,!1):!0)||(p?compareArray(N=r(A),V,c):c(N=r(A),V)))return A.values[h]=V,0}else N=r(A);return A.values[h]=N,1}}}}function compareArray(o,e,n){if(o.length!=e.length)return!1;for(let r=0;ro[b.id]),c=n.map(b=>b.type),u=r.filter(b=>!(b&1)),h=o[e.id]>>1;function p(b){let y=[];for(let k=0;kr===c),e);return e.provide&&(n.provides=e.provide(n)),n}create(e){let n=e.facet(initField).find(r=>r.field==this);return((n==null?void 0:n.create)||this.createF)(e)}slot(e){let n=e[this.id]>>1;return{create:r=>(r.values[n]=this.create(r),1),update:(r,c)=>{let u=r.values[n],h=this.updateF(u,c);return this.compareF(u,h)?0:(r.values[n]=h,1)},reconfigure:(r,c)=>c.config.address[this.id]!=null?(r.values[n]=c.field(this),0):(r.values[n]=this.create(r),1)}}init(e){return[this,initField.of({field:this,create:e})]}get extension(){return this}}const Prec_={lowest:4,low:3,default:2,high:1,highest:0};function prec(o){return e=>new PrecExtension(e,o)}const Prec={highest:prec(Prec_.highest),high:prec(Prec_.high),default:prec(Prec_.default),low:prec(Prec_.low),lowest:prec(Prec_.lowest)};class PrecExtension{constructor(e,n){this.inner=e,this.prec=n}}class Compartment{of(e){return new CompartmentInstance(this,e)}reconfigure(e){return Compartment.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class CompartmentInstance{constructor(e,n){this.compartment=e,this.inner=n}}class Configuration{constructor(e,n,r,c,u,h){for(this.base=e,this.compartments=n,this.dynamicSlots=r,this.address=c,this.staticValues=u,this.facets=h,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,n,r){let c=[],u=Object.create(null),h=new Map;for(let R of flatten(e,n,h))R instanceof StateField?c.push(R):(u[R.facet.id]||(u[R.facet.id]=[])).push(R);let p=Object.create(null),b=[],y=[];for(let R of c)p[R.id]=y.length<<1,y.push(N=>R.slot(N));let k=r==null?void 0:r.config.facets;for(let R in u){let N=u[R],F=N[0].facet,V=k&&k[R]||[];if(N.every(W=>W.type==0))if(p[F.id]=b.length<<1|1,sameArray$1(V,N))b.push(r.facet(F));else{let W=F.combine(N.map(J=>J.value));b.push(r&&F.compare(W,r.facet(F))?r.facet(F):W)}else{for(let W of N)W.type==0?(p[W.id]=b.length<<1|1,b.push(W.value)):(p[W.id]=y.length<<1,y.push(J=>W.dynamicSlot(J)));p[F.id]=y.length<<1,y.push(W=>dynamicFacetSlot(W,F,N))}}let A=y.map(R=>R(p));return new Configuration(e,h,A,p,b,u)}}function flatten(o,e,n){let r=[[],[],[],[],[]],c=new Map;function u(h,p){let b=c.get(h);if(b!=null){if(b<=p)return;let y=r[b].indexOf(h);y>-1&&r[b].splice(y,1),h instanceof CompartmentInstance&&n.delete(h.compartment)}if(c.set(h,p),Array.isArray(h))for(let y of h)u(y,p);else if(h instanceof CompartmentInstance){if(n.has(h.compartment))throw new RangeError("Duplicate use of compartment in extensions");let y=e.get(h.compartment)||h.inner;n.set(h.compartment,y),u(y,p)}else if(h instanceof PrecExtension)u(h.inner,h.prec);else if(h instanceof StateField)r[p].push(h),h.provides&&u(h.provides,p);else if(h instanceof FacetProvider)r[p].push(h),h.facet.extensions&&u(h.facet.extensions,Prec_.default);else{let y=h.extension;if(!y)throw new Error(`Unrecognized extension value in extension set (${h}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);u(y,p)}}return u(o,Prec_.default),r.reduce((h,p)=>h.concat(p))}function ensureAddr(o,e){if(e&1)return 2;let n=e>>1,r=o.status[n];if(r==4)throw new Error("Cyclic dependency between fields and/or facets");if(r&2)return r;o.status[n]=4;let c=o.computeSlot(o,o.config.dynamicSlots[n]);return o.status[n]=2|c}function getAddr(o,e){return e&1?o.config.staticValues[e>>1]:o.values[e>>1]}const languageData=Facet.define(),allowMultipleSelections=Facet.define({combine:o=>o.some(e=>e),static:!0}),lineSeparator=Facet.define({combine:o=>o.length?o[0]:void 0,static:!0}),changeFilter=Facet.define(),transactionFilter=Facet.define(),transactionExtender=Facet.define(),readOnly=Facet.define({combine:o=>o.length?o[0]:!1});class Annotation{constructor(e,n){this.type=e,this.value=n}static define(){return new AnnotationType}}class AnnotationType{of(e){return new Annotation(this,e)}}class StateEffectType{constructor(e){this.map=e}of(e){return new StateEffect(this,e)}}class StateEffect{constructor(e,n){this.type=e,this.value=n}map(e){let n=this.type.map(this.value,e);return n===void 0?void 0:n==this.value?this:new StateEffect(this.type,n)}is(e){return this.type==e}static define(e={}){return new StateEffectType(e.map||(n=>n))}static mapEffects(e,n){if(!e.length)return e;let r=[];for(let c of e){let u=c.map(n);u&&r.push(u)}return r}}StateEffect.reconfigure=StateEffect.define();StateEffect.appendConfig=StateEffect.define();class Transaction{constructor(e,n,r,c,u,h){this.startState=e,this.changes=n,this.selection=r,this.effects=c,this.annotations=u,this.scrollIntoView=h,this._doc=null,this._state=null,r&&checkSelection(r,n.newLength),u.some(p=>p.type==Transaction.time)||(this.annotations=u.concat(Transaction.time.of(Date.now())))}static create(e,n,r,c,u,h){return new Transaction(e,n,r,c,u,h)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let n of this.annotations)if(n.type==e)return n.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let n=this.annotation(Transaction.userEvent);return!!(n&&(n==e||n.length>e.length&&n.slice(0,e.length)==e&&n[e.length]=="."))}}Transaction.time=Annotation.define();Transaction.userEvent=Annotation.define();Transaction.addToHistory=Annotation.define();Transaction.remote=Annotation.define();function joinRanges(o,e){let n=[];for(let r=0,c=0;;){let u,h;if(r=o[r]))u=o[r++],h=o[r++];else if(c=0;c--){let u=r[c](o);u instanceof Transaction?o=u:Array.isArray(u)&&u.length==1&&u[0]instanceof Transaction?o=u[0]:o=resolveTransaction(e,asArray$1(u),!1)}return o}function extendTransaction(o){let e=o.startState,n=e.facet(transactionExtender),r=o;for(let c=n.length-1;c>=0;c--){let u=n[c](o);u&&Object.keys(u).length&&(r=mergeTransaction(r,resolveTransactionInner(e,u,o.changes.newLength),!0))}return r==o?o:Transaction.create(e,o.changes,o.selection,r.effects,r.annotations,r.scrollIntoView)}const none$3=[];function asArray$1(o){return o==null?none$3:Array.isArray(o)?o:[o]}var CharCategory=function(o){return o[o.Word=0]="Word",o[o.Space=1]="Space",o[o.Other=2]="Other",o}(CharCategory||(CharCategory={}));const nonASCIISingleCaseWordChar=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let wordChar;try{wordChar=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function hasWordChar(o){if(wordChar)return wordChar.test(o);for(let e=0;e"€"&&(n.toUpperCase()!=n.toLowerCase()||nonASCIISingleCaseWordChar.test(n)))return!0}return!1}function makeCategorizer(o){return e=>{if(!/\S/.test(e))return CharCategory.Space;if(hasWordChar(e))return CharCategory.Word;for(let n=0;n-1)return CharCategory.Word;return CharCategory.Other}}class EditorState{constructor(e,n,r,c,u,h){this.config=e,this.doc=n,this.selection=r,this.values=c,this.status=e.statusTemplate.slice(),this.computeSlot=u,h&&(h._state=this);for(let p=0;pc.set(y,b)),n=null),c.set(p.value.compartment,p.value.extension)):p.is(StateEffect.reconfigure)?(n=null,r=p.value):p.is(StateEffect.appendConfig)&&(n=null,r=asArray$1(r).concat(p.value));let u;n?u=e.startState.values.slice():(n=Configuration.resolve(r,c,this),u=new EditorState(n,this.doc,this.selection,n.dynamicSlots.map(()=>null),(b,y)=>y.reconfigure(b,this),null).values);let h=e.startState.facet(allowMultipleSelections)?e.newSelection:e.newSelection.asSingle();new EditorState(n,e.newDoc,h,u,(p,b)=>b.update(p,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:e},range:EditorSelection.cursor(n.from+e.length)}))}changeByRange(e){let n=this.selection,r=e(n.ranges[0]),c=this.changes(r.changes),u=[r.range],h=asArray$1(r.effects);for(let p=1;ph.spec.fromJSON(p,b)))}}return EditorState.create({doc:e.doc,selection:EditorSelection.fromJSON(e.selection),extensions:n.extensions?c.concat([n.extensions]):c})}static create(e={}){let n=Configuration.resolve(e.extensions||[],new Map),r=e.doc instanceof Text?e.doc:Text.of((e.doc||"").split(n.staticFacet(EditorState.lineSeparator)||DefaultSplit)),c=e.selection?e.selection instanceof EditorSelection?e.selection:EditorSelection.single(e.selection.anchor,e.selection.head):EditorSelection.single(0);return checkSelection(c,r.length),n.staticFacet(allowMultipleSelections)||(c=c.asSingle()),new EditorState(n,r,c,n.dynamicSlots.map(()=>null),(u,h)=>h.create(u),null)}get tabSize(){return this.facet(EditorState.tabSize)}get lineBreak(){return this.facet(EditorState.lineSeparator)||` -`}get readOnly(){return this.facet(readOnly)}phrase(e,...n){for(let r of this.facet(EditorState.phrases))if(Object.prototype.hasOwnProperty.call(r,e)){e=r[e];break}return n.length&&(e=e.replace(/\$(\$|\d*)/g,(r,c)=>{if(c=="$")return"$";let u=+(c||1);return!u||u>n.length?r:n[u-1]})),e}languageDataAt(e,n,r=-1){let c=[];for(let u of this.facet(languageData))for(let h of u(this,n,r))Object.prototype.hasOwnProperty.call(h,e)&&c.push(h[e]);return c}charCategorizer(e){return makeCategorizer(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:n,from:r,length:c}=this.doc.lineAt(e),u=this.charCategorizer(e),h=e-r,p=e-r;for(;h>0;){let b=findClusterBreak(n,h,!1);if(u(n.slice(b,h))!=CharCategory.Word)break;h=b}for(;po.length?o[0]:4});EditorState.lineSeparator=lineSeparator;EditorState.readOnly=readOnly;EditorState.phrases=Facet.define({compare(o,e){let n=Object.keys(o),r=Object.keys(e);return n.length==r.length&&n.every(c=>o[c]==e[c])}});EditorState.languageData=languageData;EditorState.changeFilter=changeFilter;EditorState.transactionFilter=transactionFilter;EditorState.transactionExtender=transactionExtender;Compartment.reconfigure=StateEffect.define();function combineConfig(o,e,n={}){let r={};for(let c of o)for(let u of Object.keys(c)){let h=c[u],p=r[u];if(p===void 0)r[u]=h;else if(!(p===h||h===void 0))if(Object.hasOwnProperty.call(n,u))r[u]=n[u](p,h);else throw new Error("Config merge conflict for field "+u)}for(let c in e)r[c]===void 0&&(r[c]=e[c]);return r}class RangeValue{eq(e){return this==e}range(e,n=e){return Range$2.create(e,n,this)}}RangeValue.prototype.startSide=RangeValue.prototype.endSide=0;RangeValue.prototype.point=!1;RangeValue.prototype.mapMode=MapMode.TrackDel;let Range$2=class Dq{constructor(e,n,r){this.from=e,this.to=n,this.value=r}static create(e,n,r){return new Dq(e,n,r)}};function cmpRange(o,e){return o.from-e.from||o.value.startSide-e.value.startSide}class Chunk{constructor(e,n,r,c){this.from=e,this.to=n,this.value=r,this.maxPoint=c}get length(){return this.to[this.to.length-1]}findIndex(e,n,r,c=0){let u=r?this.to:this.from;for(let h=c,p=u.length;;){if(h==p)return h;let b=h+p>>1,y=u[b]-e||(r?this.value[b].endSide:this.value[b].startSide)-n;if(b==h)return y>=0?h:p;y>=0?p=b:h=b+1}}between(e,n,r,c){for(let u=this.findIndex(n,-1e9,!0),h=this.findIndex(r,1e9,!1,u);uN||R==N&&y.startSide>0&&y.endSide<=0)continue;(N-R||y.endSide-y.startSide)<0||(h<0&&(h=R),y.point&&(p=Math.max(p,N-R)),r.push(y),c.push(R-h),u.push(N-h))}return{mapped:r.length?new Chunk(c,u,r,p):null,pos:h}}}class RangeSet{constructor(e,n,r,c){this.chunkPos=e,this.chunk=n,this.nextLayer=r,this.maxPoint=c}static create(e,n,r,c){return new RangeSet(e,n,r,c)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let n of this.chunk)e+=n.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:n=[],sort:r=!1,filterFrom:c=0,filterTo:u=this.length}=e,h=e.filter;if(n.length==0&&!h)return this;if(r&&(n=n.slice().sort(cmpRange)),this.isEmpty)return n.length?RangeSet.of(n):this;let p=new LayerCursor(this,null,-1).goto(0),b=0,y=[],k=new RangeSetBuilder;for(;p.value||b=0){let A=n[b++];k.addInner(A.from,A.to,A.value)||y.push(A)}else p.rangeIndex==1&&p.chunkIndexthis.chunkEnd(p.chunkIndex)||up.to||u=u&&e<=u+h.length&&h.between(u,e-u,n-u,r)===!1)return}this.nextLayer.between(e,n,r)}}iter(e=0){return HeapCursor.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,n=0){return HeapCursor.from(e).goto(n)}static compare(e,n,r,c,u=-1){let h=e.filter(A=>A.maxPoint>0||!A.isEmpty&&A.maxPoint>=u),p=n.filter(A=>A.maxPoint>0||!A.isEmpty&&A.maxPoint>=u),b=findSharedChunks(h,p,r),y=new SpanCursor(h,b,u),k=new SpanCursor(p,b,u);r.iterGaps((A,R,N)=>compare(y,A,k,R,N,c)),r.empty&&r.length==0&&compare(y,0,k,0,0,c)}static eq(e,n,r=0,c){c==null&&(c=999999999);let u=e.filter(k=>!k.isEmpty&&n.indexOf(k)<0),h=n.filter(k=>!k.isEmpty&&e.indexOf(k)<0);if(u.length!=h.length)return!1;if(!u.length)return!0;let p=findSharedChunks(u,h),b=new SpanCursor(u,p,0).goto(r),y=new SpanCursor(h,p,0).goto(r);for(;;){if(b.to!=y.to||!sameValues(b.active,y.active)||b.point&&(!y.point||!b.point.eq(y.point)))return!1;if(b.to>c)return!0;b.next(),y.next()}}static spans(e,n,r,c,u=-1){let h=new SpanCursor(e,null,u).goto(n),p=n,b=h.openStart;for(;;){let y=Math.min(h.to,r);if(h.point){let k=h.activeForPoint(h.to),A=h.pointFromp&&(c.span(p,y,h.active,b),b=h.openEnd(y));if(h.to>r)return b+(h.point&&h.to>r?1:0);p=h.to,h.next()}}static of(e,n=!1){let r=new RangeSetBuilder;for(let c of e instanceof Range$2?[e]:n?lazySort(e):e)r.add(c.from,c.to,c.value);return r.finish()}static join(e){if(!e.length)return RangeSet.empty;let n=e[e.length-1];for(let r=e.length-2;r>=0;r--)for(let c=e[r];c!=RangeSet.empty;c=c.nextLayer)n=new RangeSet(c.chunkPos,c.chunk,n,Math.max(c.maxPoint,n.maxPoint));return n}}RangeSet.empty=new RangeSet([],[],null,-1);function lazySort(o){if(o.length>1)for(let e=o[0],n=1;n0)return o.slice().sort(cmpRange);e=r}return o}RangeSet.empty.nextLayer=RangeSet.empty;class RangeSetBuilder{finishChunk(e){this.chunks.push(new Chunk(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,n,r){this.addInner(e,n,r)||(this.nextLayer||(this.nextLayer=new RangeSetBuilder)).add(e,n,r)}addInner(e,n,r){let c=e-this.lastTo||r.startSide-this.last.endSide;if(c<=0&&(e-this.lastFrom||r.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return c<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(n-this.chunkStart),this.last=r,this.lastFrom=e,this.lastTo=n,this.value.push(r),r.point&&(this.maxPoint=Math.max(this.maxPoint,n-e)),!0)}addChunk(e,n){if((e-this.lastTo||n.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,n.maxPoint),this.chunks.push(n),this.chunkPos.push(e);let r=n.value.length-1;return this.last=n.value[r],this.lastFrom=n.from[r]+e,this.lastTo=n.to[r]+e,!0}finish(){return this.finishInner(RangeSet.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let n=RangeSet.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,n}}function findSharedChunks(o,e,n){let r=new Map;for(let u of o)for(let h=0;h=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=r&&c.push(new LayerCursor(h,n,r,u));return c.length==1?c[0]:new HeapCursor(c)}get startSide(){return this.value?this.value.startSide:0}goto(e,n=-1e9){for(let r of this.heap)r.goto(e,n);for(let r=this.heap.length>>1;r>=0;r--)heapBubble(this.heap,r);return this.next(),this}forward(e,n){for(let r of this.heap)r.forward(e,n);for(let r=this.heap.length>>1;r>=0;r--)heapBubble(this.heap,r);(this.to-e||this.value.endSide-n)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),heapBubble(this.heap,0)}}}function heapBubble(o,e){for(let n=o[e];;){let r=(e<<1)+1;if(r>=o.length)break;let c=o[r];if(r+1=0&&(c=o[r+1],r++),n.compare(c)<0)break;o[r]=n,o[e]=c,e=r}}class SpanCursor{constructor(e,n,r){this.minPoint=r,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=HeapCursor.from(e,n,r)}goto(e,n=-1e9){return this.cursor.goto(e,n),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=n,this.openStart=-1,this.next(),this}forward(e,n){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-n)<0;)this.removeActive(this.minActive);this.cursor.forward(e,n)}removeActive(e){remove(this.active,e),remove(this.activeTo,e),remove(this.activeRank,e),this.minActive=findMinIndex(this.active,this.activeTo)}addActive(e){let n=0,{value:r,to:c,rank:u}=this.cursor;for(;n0;)n++;insert(this.active,n,r),insert(this.activeTo,n,c),insert(this.activeRank,n,u),e&&insert(e,n,this.cursor.from),this.minActive=findMinIndex(this.active,this.activeTo)}next(){let e=this.to,n=this.point;this.point=null;let r=this.openStart<0?[]:null;for(;;){let c=this.minActive;if(c>-1&&(this.activeTo[c]-this.cursor.from||this.active[c].endSide-this.cursor.startSide)<0){if(this.activeTo[c]>e){this.to=this.activeTo[c],this.endSide=this.active[c].endSide;break}this.removeActive(c),r&&remove(r,c)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let u=this.cursor.value;if(!u.point)this.addActive(r),this.cursor.next();else if(n&&this.cursor.to==this.to&&this.cursor.from=0&&r[c]=0&&!(this.activeRank[r]e||this.activeTo[r]==e&&this.active[r].endSide>=this.point.endSide)&&n.push(this.active[r]);return n.reverse()}openEnd(e){let n=0;for(let r=this.activeTo.length-1;r>=0&&this.activeTo[r]>e;r--)n++;return n}}function compare(o,e,n,r,c,u){o.goto(e),n.goto(r);let h=r+c,p=r,b=r-e;for(;;){let y=o.to+b-n.to||o.endSide-n.endSide,k=y<0?o.to+b:n.to,A=Math.min(k,h);if(o.point||n.point?o.point&&n.point&&(o.point==n.point||o.point.eq(n.point))&&sameValues(o.activeForPoint(o.to),n.activeForPoint(n.to))||u.comparePoint(p,A,o.point,n.point):A>p&&!sameValues(o.active,n.active)&&u.compareRange(p,A,o.active,n.active),k>h)break;p=k,y<=0&&o.next(),y>=0&&n.next()}}function sameValues(o,e){if(o.length!=e.length)return!1;for(let n=0;n=e;r--)o[r+1]=o[r];o[e]=n}function findMinIndex(o,e){let n=-1,r=1e9;for(let c=0;c=e)return c;if(c==o.length)break;u+=o.charCodeAt(c)==9?n-u%n:1,c=findClusterBreak(o,c)}return r===!0?-1:o.length}const C="ͼ",COUNT=typeof Symbol>"u"?"__"+C:Symbol.for(C),SET=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),top=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class StyleModule{constructor(e,n){this.rules=[];let{finish:r}=n||{};function c(h){return/^@/.test(h)?[h]:h.split(/,\s*/)}function u(h,p,b,y){let k=[],A=/^@(\w+)\b/.exec(h[0]),R=A&&A[1]=="keyframes";if(A&&p==null)return b.push(h[0]+";");for(let N in p){let F=p[N];if(/&/.test(N))u(N.split(/,\s*/).map(V=>h.map(W=>V.replace(/&/,W))).reduce((V,W)=>V.concat(W)),F,b);else if(F&&typeof F=="object"){if(!A)throw new RangeError("The value of a property ("+N+") should be a primitive value.");u(c(N),F,k,R)}else F!=null&&k.push(N.replace(/_.*/,"").replace(/[A-Z]/g,V=>"-"+V.toLowerCase())+": "+F+";")}(k.length||R)&&b.push((r&&!A&&!y?h.map(r):h).join(", ")+" {"+k.join(" ")+"}")}for(let h in e)u(c(h),e[h],this.rules)}getRules(){return this.rules.join(` -`)}static newName(){let e=top[COUNT]||1;return top[COUNT]=e+1,C+e.toString(36)}static mount(e,n,r){let c=e[SET],u=r&&r.nonce;c?u&&c.setNonce(u):c=new StyleSet(e,u),c.mount(Array.isArray(n)?n:[n],e)}}let adoptedSet=new Map;class StyleSet{constructor(e,n){let r=e.ownerDocument||e,c=r.defaultView;if(!e.head&&e.adoptedStyleSheets&&c.CSSStyleSheet){let u=adoptedSet.get(r);if(u)return e[SET]=u;this.sheet=new c.CSSStyleSheet,adoptedSet.set(r,this)}else this.styleTag=r.createElement("style"),n&&this.styleTag.setAttribute("nonce",n);this.modules=[],e[SET]=this}mount(e,n){let r=this.sheet,c=0,u=0;for(let h=0;h-1&&(this.modules.splice(b,1),u--,b=-1),b==-1){if(this.modules.splice(u++,0,p),r)for(let y=0;y",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},mac=typeof navigator<"u"&&/Mac/.test(navigator.platform),ie$1=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var i=0;i<10;i++)base[48+i]=base[96+i]=String(i);for(var i=1;i<=24;i++)base[i+111]="F"+i;for(var i=65;i<=90;i++)base[i]=String.fromCharCode(i+32),shift[i]=String.fromCharCode(i);for(var code in base)shift.hasOwnProperty(code)||(shift[code]=base[code]);function keyName(o){var e=mac&&o.metaKey&&o.shiftKey&&!o.ctrlKey&&!o.altKey||ie$1&&o.shiftKey&&o.key&&o.key.length==1||o.key=="Unidentified",n=!e&&o.key||(o.shiftKey?shift:base)[o.keyCode]||o.key||"Unidentified";return n=="Esc"&&(n="Escape"),n=="Del"&&(n="Delete"),n=="Left"&&(n="ArrowLeft"),n=="Up"&&(n="ArrowUp"),n=="Right"&&(n="ArrowRight"),n=="Down"&&(n="ArrowDown"),n}function getSelection(o){let e;return o.nodeType==11?e=o.getSelection?o:o.ownerDocument:e=o,e.getSelection()}function contains(o,e){return e?o==e||o.contains(e.nodeType!=1?e.parentNode:e):!1}function deepActiveElement(o){let e=o.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function hasSelection(o,e){if(!e.anchorNode)return!1;try{return contains(o,e.anchorNode)}catch{return!1}}function clientRectsFor(o){return o.nodeType==3?textRange(o,0,o.nodeValue.length).getClientRects():o.nodeType==1?o.getClientRects():[]}function isEquivalentPosition(o,e,n,r){return n?scanFor(o,e,n,r,-1)||scanFor(o,e,n,r,1):!1}function domIndex(o){for(var e=0;;e++)if(o=o.previousSibling,!o)return e}function isBlockElement(o){return o.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(o.nodeName)}function scanFor(o,e,n,r,c){for(;;){if(o==n&&e==r)return!0;if(e==(c<0?0:maxOffset(o))){if(o.nodeName=="DIV")return!1;let u=o.parentNode;if(!u||u.nodeType!=1)return!1;e=domIndex(o)+(c<0?0:1),o=u}else if(o.nodeType==1){if(o=o.childNodes[e+(c<0?-1:0)],o.nodeType==1&&o.contentEditable=="false")return!1;e=c<0?maxOffset(o):0}else return!1}}function maxOffset(o){return o.nodeType==3?o.nodeValue.length:o.childNodes.length}function flattenRect(o,e){let n=e?o.left:o.right;return{left:n,right:n,top:o.top,bottom:o.bottom}}function windowRect(o){let e=o.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:o.innerWidth,top:0,bottom:o.innerHeight}}function getScale(o,e){let n=e.width/o.offsetWidth,r=e.height/o.offsetHeight;return(n>.995&&n<1.005||!isFinite(n)||Math.abs(e.width-o.offsetWidth)<1)&&(n=1),(r>.995&&r<1.005||!isFinite(r)||Math.abs(e.height-o.offsetHeight)<1)&&(r=1),{scaleX:n,scaleY:r}}function scrollRectIntoView(o,e,n,r,c,u,h,p){let b=o.ownerDocument,y=b.defaultView||window;for(let k=o,A=!1;k&&!A;)if(k.nodeType==1){let R,N=k==b.body,F=1,V=1;if(N)R=windowRect(y);else{if(/^(fixed|sticky)$/.test(getComputedStyle(k).position)&&(A=!0),k.scrollHeight<=k.clientHeight&&k.scrollWidth<=k.clientWidth){k=k.assignedSlot||k.parentNode;continue}let te=k.getBoundingClientRect();({scaleX:F,scaleY:V}=getScale(k,te)),R={left:te.left,right:te.left+k.clientWidth*F,top:te.top,bottom:te.top+k.clientHeight*V}}let W=0,J=0;if(c=="nearest")e.top0&&e.bottom>R.bottom+J&&(J=e.bottom-R.bottom+J+h)):e.bottom>R.bottom&&(J=e.bottom-R.bottom+h,n<0&&e.top-J0&&e.right>R.right+W&&(W=e.right-R.right+W+u)):e.right>R.right&&(W=e.right-R.right+u,n<0&&e.leftc.clientHeight&&(r=c),!n&&c.scrollWidth>c.clientWidth&&(n=c),c=c.assignedSlot||c.parentNode;else if(c.nodeType==11)c=c.host;else break;return{x:n,y:r}}class DOMSelectionState{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:n,focusNode:r}=e;this.set(n,Math.min(e.anchorOffset,n?maxOffset(n):0),r,Math.min(e.focusOffset,r?maxOffset(r):0))}set(e,n,r,c){this.anchorNode=e,this.anchorOffset=n,this.focusNode=r,this.focusOffset=c}}let preventScrollSupported=null;function focusPreventScroll(o){if(o.setActive)return o.setActive();if(preventScrollSupported)return o.focus(preventScrollSupported);let e=[];for(let n=o;n&&(e.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(o.focus(preventScrollSupported==null?{get preventScroll(){return preventScrollSupported={preventScroll:!0},!0}}:void 0),!preventScrollSupported){preventScrollSupported=!1;for(let n=0;nMath.max(1,o.scrollHeight-o.clientHeight-4)}function textNodeBefore(o,e){for(let n=o,r=e;;){if(n.nodeType==3&&r>0)return{node:n,offset:r};if(n.nodeType==1&&r>0){if(n.contentEditable=="false")return null;n=n.childNodes[r-1],r=maxOffset(n)}else if(n.parentNode&&!isBlockElement(n))r=domIndex(n),n=n.parentNode;else return null}}function textNodeAfter(o,e){for(let n=o,r=e;;){if(n.nodeType==3&&rn)return A.domBoundsAround(e,n,y);if(R>=e&&c==-1&&(c=b,u=y),y>n&&A.dom.parentNode==this.dom){h=b,p=k;break}k=R,y=R+A.breakAfter}return{from:u,to:p<0?r+this.length:p,startDOM:(c?this.children[c-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:h=0?this.children[h].dom:null}}markDirty(e=!1){this.flags|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let n=this.parent;n;n=n.parent){if(e&&(n.flags|=2),n.flags&1)return;n.flags|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.flags&7&&this.markParentsDirty(!0))}setDOM(e){this.dom!=e&&(this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this)}get rootView(){for(let e=this;;){let n=e.parent;if(!n)return e;e=n}}replaceChildren(e,n,r=noChildren){this.markDirty();for(let c=e;cthis.pos||e==this.pos&&(n>0||this.i==0||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let r=this.children[--this.i];this.pos-=r.length+r.breakAfter}}}function replaceRange(o,e,n,r,c,u,h,p,b){let{children:y}=o,k=y.length?y[e]:null,A=u.length?u[u.length-1]:null,R=A?A.breakAfter:h;if(!(e==r&&k&&!h&&!R&&u.length<2&&k.merge(n,c,u.length?A:null,n==0,p,b))){if(r0&&(!h&&u.length&&k.merge(n,k.length,u[0],!1,p,0)?k.breakAfter=u.shift().breakAfter:(n2);var browser={mac:ios||/Mac/.test(nav.platform),windows:/Win/.test(nav.platform),linux:/Linux|X11/.test(nav.platform),ie,ie_version:ie_upto10?doc.documentMode||6:ie_11up?+ie_11up[1]:ie_edge?+ie_edge[1]:0,gecko,gecko_version:gecko?+(/Firefox\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,chrome:!!chrome,chrome_version:chrome?+chrome[1]:0,ios,android:/Android\b/.test(nav.userAgent),webkit,safari,webkit_version:webkit?+(/\bAppleWebKit\/(\d+)/.exec(nav.userAgent)||[0,0])[1]:0,tabSize:doc.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};const MaxJoinLen=256;class TextView extends ContentView{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e,n){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(n&&n.node==this.dom&&(n.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){e.nodeType==3&&this.createDOM(e)}merge(e,n,r){return this.flags&8||r&&(!(r instanceof TextView)||this.length-(n-e)+r.length>MaxJoinLen||r.flags&8)?!1:(this.text=this.text.slice(0,e)+(r?r.text:"")+this.text.slice(n),this.markDirty(),!0)}split(e){let n=new TextView(this.text.slice(e));return this.text=this.text.slice(0,e),this.markDirty(),n.flags|=this.flags&8,n}localPosFromDOM(e,n){return e==this.dom?n:n?this.text.length:0}domAtPos(e){return new DOMPos(this.dom,e)}domBoundsAround(e,n,r){return{from:r,to:r+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,n){return textCoords(this.dom,e,n)}}class MarkView extends ContentView{constructor(e,n=[],r=0){super(),this.mark=e,this.children=n,this.length=r;for(let c of n)c.setParent(this)}setAttrs(e){if(clearAttributes(e),this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let n in this.mark.attrs)e.setAttribute(n,this.mark.attrs[n]);return e}canReuseDOM(e){return super.canReuseDOM(e)&&!((this.flags|e.flags)&8)}reuseDOM(e){e.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(e),this.flags|=6)}sync(e,n){this.dom?this.flags&4&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(e,n)}merge(e,n,r,c,u,h){return r&&(!(r instanceof MarkView&&r.mark.eq(this.mark))||e&&u<=0||ne&&n.push(r=e&&(c=u),r=b,u++}let h=this.length-e;return this.length=e,c>-1&&(this.children.length=c,this.markDirty()),new MarkView(this.mark,n,h)}domAtPos(e){return inlineDOMAtPos(this,e)}coordsAt(e,n){return coordsInChildren(this,e,n)}}function textCoords(o,e,n){let r=o.nodeValue.length;e>r&&(e=r);let c=e,u=e,h=0;e==0&&n<0||e==r&&n>=0?browser.chrome||browser.gecko||(e?(c--,h=1):u=0)?0:p.length-1];return browser.safari&&!h&&b.width==0&&(b=Array.prototype.find.call(p,y=>y.width)||b),h?flattenRect(b,h<0):b||null}class WidgetView extends ContentView{static create(e,n,r){return new WidgetView(e,n,r)}constructor(e,n,r){super(),this.widget=e,this.length=n,this.side=r,this.prevWidget=null}split(e){let n=WidgetView.create(this.widget,this.length-e,this.side);return this.length-=e,n}sync(e){(!this.dom||!this.widget.updateDOM(this.dom,e))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.widget.editable||(this.dom.contentEditable="false"))}getSide(){return this.side}merge(e,n,r,c,u,h){return r&&(!(r instanceof WidgetView)||!this.widget.compare(r.widget)||e>0&&u<=0||n0)?DOMPos.before(this.dom):DOMPos.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,n){let r=this.widget.coordsAt(this.dom,e,n);if(r)return r;let c=this.dom.getClientRects(),u=null;if(!c.length)return null;let h=this.side?this.side<0:e>0;for(let p=h?c.length-1:0;u=c[p],!(e>0?p==0:p==c.length-1||u.top0?DOMPos.before(this.dom):DOMPos.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){return this.dom.getBoundingClientRect()}get overrideDOMText(){return Text.empty}get isHidden(){return!0}}TextView.prototype.children=WidgetView.prototype.children=WidgetBufferView.prototype.children=noChildren;function inlineDOMAtPos(o,e){let n=o.dom,{children:r}=o,c=0;for(let u=0;cu&&e0;u--){let h=r[u-1];if(h.dom.parentNode==n)return h.domAtPos(h.length)}for(let u=c;u0&&e instanceof MarkView&&c.length&&(r=c[c.length-1])instanceof MarkView&&r.mark.eq(e.mark)?joinInlineInto(r,e.children[0],n-1):(c.push(e),e.setParent(o)),o.length+=e.length}function coordsInChildren(o,e,n){let r=null,c=-1,u=null,h=-1;function p(y,k){for(let A=0,R=0;A=k&&(N.children.length?p(N,k-R):(!u||u.isHidden&&n>0)&&(F>k||R==F&&N.getSide()>0)?(u=N,h=k-R):(R-1?1:0)!=c.length-(n&&c.indexOf(n)>-1?1:0))return!1;for(let u of r)if(u!=n&&(c.indexOf(u)==-1||o[u]!==e[u]))return!1;return!0}function updateAttrs(o,e,n){let r=!1;if(e)for(let c in e)n&&c in n||(r=!0,c=="style"?o.style.cssText="":o.removeAttribute(c));if(n)for(let c in n)e&&e[c]==n[c]||(r=!0,c=="style"?o.style.cssText=n[c]:o.setAttribute(c,n[c]));return r}function getAttrs$1(o){let e=Object.create(null);for(let n=0;n0?3e8:-4e8:n>0?1e8:-1e8,new PointDecoration(e,n,n,r,e.widget||null,!1)}static replace(e){let n=!!e.block,r,c;if(e.isBlockGap)r=-5e8,c=4e8;else{let{start:u,end:h}=getInclusive(e,n);r=(u?n?-3e8:-1:5e8)-1,c=(h?n?2e8:1:-6e8)+1}return new PointDecoration(e,r,c,n,e.widget||null,!0)}static line(e){return new LineDecoration(e)}static set(e,n=!1){return RangeSet.of(e,n)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Decoration.none=RangeSet.empty;class MarkDecoration extends Decoration{constructor(e){let{start:n,end:r}=getInclusive(e);super(n?-1:5e8,r?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){var n,r;return this==e||e instanceof MarkDecoration&&this.tagName==e.tagName&&(this.class||((n=this.attrs)===null||n===void 0?void 0:n.class))==(e.class||((r=e.attrs)===null||r===void 0?void 0:r.class))&&attrsEq(this.attrs,e.attrs,"class")}range(e,n=e){if(e>=n)throw new RangeError("Mark decorations may not be empty");return super.range(e,n)}}MarkDecoration.prototype.point=!1;class LineDecoration extends Decoration{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof LineDecoration&&this.spec.class==e.spec.class&&attrsEq(this.spec.attributes,e.spec.attributes)}range(e,n=e){if(n!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,n)}}LineDecoration.prototype.mapMode=MapMode.TrackBefore;LineDecoration.prototype.point=!0;class PointDecoration extends Decoration{constructor(e,n,r,c,u,h){super(n,r,u,e),this.block=c,this.isReplace=h,this.mapMode=c?n<=0?MapMode.TrackBefore:MapMode.TrackAfter:MapMode.TrackDel}get type(){return this.startSide!=this.endSide?BlockType.WidgetRange:this.startSide<=0?BlockType.WidgetBefore:BlockType.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof PointDecoration&&widgetsEq(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,n=e){if(this.isReplace&&(e>n||e==n&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&n!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,n)}}PointDecoration.prototype.point=!0;function getInclusive(o,e=!1){let{inclusiveStart:n,inclusiveEnd:r}=o;return n==null&&(n=o.inclusive),r==null&&(r=o.inclusive),{start:n??e,end:r??e}}function widgetsEq(o,e){return o==e||!!(o&&e&&o.compare(e))}function addRange(o,e,n,r=0){let c=n.length-1;c>=0&&n[c]+r>=o?n[c]=Math.max(n[c],e):n.push(o,e)}class LineView extends ContentView{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,n,r,c,u,h){if(r){if(!(r instanceof LineView))return!1;this.dom||r.transferDOM(this)}return c&&this.setDeco(r?r.attrs:null),mergeChildrenInto(this,e,n,r?r.children.slice():[],u,h),!0}split(e){let n=new LineView;if(n.breakAfter=this.breakAfter,this.length==0)return n;let{i:r,off:c}=this.childPos(e);c&&(n.append(this.children[r].split(c),0),this.children[r].merge(c,this.children[r].length,null,!1,0,0),r++);for(let u=r;u0&&this.children[r-1].length==0;)this.children[--r].destroy();return this.children.length=r,this.markDirty(),this.length=e,n}transferDOM(e){this.dom&&(this.markDirty(),e.setDOM(this.dom),e.prevAttrs=this.prevAttrs===void 0?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){attrsEq(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,n){joinInlineInto(this,e,n)}addLineDeco(e){let n=e.spec.attributes,r=e.spec.class;n&&(this.attrs=combineAttrs(n,this.attrs||{})),r&&(this.attrs=combineAttrs({class:r},this.attrs||{}))}domAtPos(e){return inlineDOMAtPos(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,n){var r;this.dom?this.flags&4&&(clearAttributes(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),this.prevAttrs!==void 0&&(updateAttrs(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,n);let c=this.dom.lastChild;for(;c&&ContentView.get(c)instanceof MarkView;)c=c.lastChild;if(!c||!this.length||c.nodeName!="BR"&&((r=ContentView.get(c))===null||r===void 0?void 0:r.isEditable)==!1&&(!browser.ios||!this.children.some(u=>u instanceof TextView))){let u=document.createElement("BR");u.cmIgnore=!0,this.dom.appendChild(u)}}measureTextSize(){if(this.children.length==0||this.length>20)return null;let e=0,n;for(let r of this.children){if(!(r instanceof TextView)||/[^ -~]/.test(r.text))return null;let c=clientRectsFor(r.dom);if(c.length!=1)return null;e+=c[0].width,n=c[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:n}:null}coordsAt(e,n){let r=coordsInChildren(this,e,n);if(!this.children.length&&r&&this.parent){let{heightOracle:c}=this.parent.view.viewState,u=r.bottom-r.top;if(Math.abs(u-c.lineHeight)<2&&c.textHeight=n){if(u instanceof LineView)return u;if(h>n)break}c=h+u.breakAfter}return null}}class BlockWidgetView extends ContentView{constructor(e,n,r){super(),this.widget=e,this.length=n,this.deco=r,this.breakAfter=0,this.prevWidget=null}merge(e,n,r,c,u,h){return r&&(!(r instanceof BlockWidgetView)||!this.widget.compare(r.widget)||e>0&&u<=0||n0}}class BlockGapWidget extends WidgetType{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}class ContentBuilder{constructor(e,n,r,c){this.doc=e,this.pos=n,this.end=r,this.disallowBlockEffectsFor=c,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=e.iter(),this.skip=n}posCovered(){if(this.content.length==0)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let e=this.content[this.content.length-1];return!(e.breakAfter||e instanceof BlockWidgetView&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new LineView),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(wrapMarks(new WidgetBufferView(-1),e),e.length),this.pendingBuffer=0)}addBlockWidget(e){this.flushBuffer(),this.curLine=null,this.content.push(e)}finish(e){this.pendingBuffer&&e<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,!this.posCovered()&&!(e&&this.content.length&&this.content[this.content.length-1]instanceof BlockWidgetView)&&this.getLine()}buildText(e,n,r){for(;e>0;){if(this.textOff==this.text.length){let{value:u,lineBreak:h,done:p}=this.cursor.next(this.skip);if(this.skip=0,p)throw new Error("Ran out of text content when drawing inline views");if(h){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,e--;continue}else this.text=u,this.textOff=0}let c=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(n.slice(n.length-r)),this.getLine().append(wrapMarks(new TextView(this.text.slice(this.textOff,this.textOff+c)),n),r),this.atCursorPos=!0,this.textOff+=c,e-=c,r=0}}span(e,n,r,c){this.buildText(n-e,r,c),this.pos=n,this.openStart<0&&(this.openStart=c)}point(e,n,r,c,u,h){if(this.disallowBlockEffectsFor[h]&&r instanceof PointDecoration){if(r.block)throw new RangeError("Block decorations may not be specified via plugins");if(n>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let p=n-e;if(r instanceof PointDecoration)if(r.block)r.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new BlockWidgetView(r.widget||NullWidget.block,p,r));else{let b=WidgetView.create(r.widget||NullWidget.inline,p,p?0:r.startSide),y=this.atCursorPos&&!b.isEditable&&u<=c.length&&(e0),k=!b.isEditable&&(ec.length||r.startSide<=0),A=this.getLine();this.pendingBuffer==2&&!y&&!b.isEditable&&(this.pendingBuffer=0),this.flushBuffer(c),y&&(A.append(wrapMarks(new WidgetBufferView(1),c),u),u=c.length+Math.max(0,u-c.length)),A.append(wrapMarks(b,c),u),this.atCursorPos=k,this.pendingBuffer=k?ec.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=c.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(r);p&&(this.textOff+p<=this.text.length?this.textOff+=p:(this.skip+=p-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=n),this.openStart<0&&(this.openStart=u)}static build(e,n,r,c,u){let h=new ContentBuilder(e,n,r,u);return h.openEnd=RangeSet.spans(c,n,r,h),h.openStart<0&&(h.openStart=h.openEnd),h.finish(h.openEnd),h}}function wrapMarks(o,e){for(let n of e)o=new MarkView(n,[o],o.length);return o}class NullWidget extends WidgetType{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}NullWidget.inline=new NullWidget("span");NullWidget.block=new NullWidget("div");var Direction=function(o){return o[o.LTR=0]="LTR",o[o.RTL=1]="RTL",o}(Direction||(Direction={}));const LTR=Direction.LTR,RTL=Direction.RTL;function dec(o){let e=[];for(let n=0;n=n){if(p.level==r)return h;(u<0||(c!=0?c<0?p.fromn:e[u].level>p.level))&&(u=h)}}if(u<0)throw new RangeError("Index out of range");return u}}function isolatesEq(o,e){if(o.length!=e.length)return!1;for(let n=0;n=0;V-=3)if(BracketStack[V+1]==-N){let W=BracketStack[V+2],J=W&2?c:W&4?W&1?u:c:0;J&&(types[A]=types[BracketStack[V]]=J),p=V;break}}else{if(BracketStack.length==189)break;BracketStack[p++]=A,BracketStack[p++]=R,BracketStack[p++]=b}else if((F=types[A])==2||F==1){let V=F==c;b=V?0:1;for(let W=p-3;W>=0;W-=3){let J=BracketStack[W+2];if(J&2)break;if(V)BracketStack[W+2]|=2;else{if(J&4)break;BracketStack[W+2]|=4}}}}}function processNeutrals(o,e,n,r){for(let c=0,u=r;c<=n.length;c++){let h=c?n[c-1].to:o,p=cb;)F==W&&(F=n[--V].from,W=V?n[V-1].to:o),types[--F]=N;b=k}else u=y,b++}}}function emitSpans(o,e,n,r,c,u,h){let p=r%2?2:1;if(r%2==c%2)for(let b=e,y=0;bb&&h.push(new BidiSpan(b,V.from,N));let W=V.direction==LTR!=!(N%2);computeSectionOrder(o,W?r+1:r,c,V.inner,V.from,V.to,h),b=V.to}F=V.to}else{if(F==n||(k?types[F]!=p:types[F]==p))break;F++}R?emitSpans(o,b,F,r+1,c,R,h):be;){let k=!0,A=!1;if(!y||b>u[y-1].to){let V=types[b-1];V!=p&&(k=!1,A=V==16)}let R=!k&&p==1?[]:null,N=k?r:r+1,F=b;e:for(;;)if(y&&F==u[y-1].to){if(A)break e;let V=u[--y];if(!k)for(let W=V.from,J=y;;){if(W==e)break e;if(J&&u[J-1].to==W)W=u[--J].from;else{if(types[W-1]==p)break e;break}}if(R)R.push(V);else{V.totypes.length;)types[types.length]=256;let r=[],c=e==LTR?0:1;return computeSectionOrder(o,c,c,n,0,o.length,r),r}function trivialOrder(o){return[new BidiSpan(0,o,0)]}let movedOver="";function moveVisually(o,e,n,r,c){var u;let h=r.head-o.from,p=BidiSpan.find(e,h,(u=r.bidiLevel)!==null&&u!==void 0?u:-1,r.assoc),b=e[p],y=b.side(c,n);if(h==y){let R=p+=c?1:-1;if(R<0||R>=e.length)return null;b=e[p=R],h=b.side(!c,n),y=b.side(c,n)}let k=findClusterBreak(o.text,h,b.forward(c,n));(kb.to)&&(k=y),movedOver=o.text.slice(Math.min(h,k),Math.max(h,k));let A=p==(c?e.length-1:0)?null:e[p+(c?1:-1)];return A&&k==y&&A.level+(c?0:1)o.some(e=>e)}),nativeSelectionHidden=Facet.define({combine:o=>o.some(e=>e)}),scrollHandler=Facet.define();class ScrollTarget{constructor(e,n="nearest",r="nearest",c=5,u=5,h=!1){this.range=e,this.y=n,this.x=r,this.yMargin=c,this.xMargin=u,this.isSnapshot=h}map(e){return e.empty?this:new ScrollTarget(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new ScrollTarget(EditorSelection.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const scrollIntoView$1=StateEffect.define({map:(o,e)=>o.map(e)}),setEditContextFormatting=StateEffect.define();function logException(o,e,n){let r=o.facet(exceptionSink);r.length?r[0](e):window.onerror?window.onerror(String(e),n,void 0,void 0,e):n?console.error(n+":",e):console.error(e)}const editable=Facet.define({combine:o=>o.length?o[0]:!0});let nextPluginID=0;const viewPlugin=Facet.define();class ViewPlugin{constructor(e,n,r,c,u){this.id=e,this.create=n,this.domEventHandlers=r,this.domEventObservers=c,this.extension=u(this)}static define(e,n){const{eventHandlers:r,eventObservers:c,provide:u,decorations:h}=n||{};return new ViewPlugin(nextPluginID++,e,r,c,p=>{let b=[viewPlugin.of(p)];return h&&b.push(decorations.of(y=>{let k=y.plugin(p);return k?h(k):Decoration.none})),u&&b.push(u(p)),b})}static fromClass(e,n){return ViewPlugin.define(r=>new e(r),n)}}class PluginInstance{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}update(e){if(this.value){if(this.mustUpdate){let n=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(n)}catch(r){if(logException(n.state,r,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.create(e)}catch(n){logException(e.state,n,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var n;if(!((n=this.value)===null||n===void 0)&&n.destroy)try{this.value.destroy()}catch(r){logException(e.state,r,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const editorAttributes=Facet.define(),contentAttributes=Facet.define(),decorations=Facet.define(),outerDecorations=Facet.define(),atomicRanges=Facet.define(),bidiIsolatedRanges=Facet.define();function getIsolatedRanges(o,e){let n=o.state.facet(bidiIsolatedRanges);if(!n.length)return n;let r=n.map(u=>u instanceof Function?u(o):u),c=[];return RangeSet.spans(r,e.from,e.to,{point(){},span(u,h,p,b){let y=u-e.from,k=h-e.from,A=c;for(let R=p.length-1;R>=0;R--,b--){let N=p[R].spec.bidiIsolate,F;if(N==null&&(N=autoDirection(e.text,y,k)),b>0&&A.length&&(F=A[A.length-1]).to==y&&F.direction==N)F.to=k,A=F.inner;else{let V={from:y,to:k,direction:N,inner:[]};A.push(V),A=V.inner}}}}),c}const scrollMargins=Facet.define();function getScrollMargins(o){let e=0,n=0,r=0,c=0;for(let u of o.state.facet(scrollMargins)){let h=u(o);h&&(h.left!=null&&(e=Math.max(e,h.left)),h.right!=null&&(n=Math.max(n,h.right)),h.top!=null&&(r=Math.max(r,h.top)),h.bottom!=null&&(c=Math.max(c,h.bottom)))}return{left:e,right:n,top:r,bottom:c}}const styleModule=Facet.define();class ChangedRange{constructor(e,n,r,c){this.fromA=e,this.toA=n,this.fromB=r,this.toB=c}join(e){return new ChangedRange(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let n=e.length,r=this;for(;n>0;n--){let c=e[n-1];if(!(c.fromA>r.toA)){if(c.toAk)break;u+=2}if(!b)return r;new ChangedRange(b.fromA,b.toA,b.fromB,b.toB).addToSet(r),h=b.toA,p=b.toB}}}class ViewUpdate{constructor(e,n,r){this.view=e,this.state=n,this.transactions=r,this.flags=0,this.startState=e.state,this.changes=ChangeSet.empty(this.startState.doc.length);for(let u of r)this.changes=this.changes.compose(u.changes);let c=[];this.changes.iterChangedRanges((u,h,p,b)=>c.push(new ChangedRange(u,h,p,b))),this.changedRanges=c}static create(e,n,r){return new ViewUpdate(e,n,r)}get viewportChanged(){return(this.flags&4)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&10)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}class DocView extends ContentView{get length(){return this.view.state.doc.length}constructor(e){super(),this.view=e,this.decorations=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.markedForComposition=new Set,this.editContextFormatting=Decoration.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(e.contentDOM),this.children=[new LineView],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new ChangedRange(0,0,0,e.state.doc.length)],0,null)}update(e){var n;let r=e.changedRanges;this.minWidth>0&&r.length&&(r.every(({fromA:y,toA:k})=>kthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let c=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((n=this.domChanged)===null||n===void 0)&&n.newSel?c=this.domChanged.newSel.head:!touchesComposition(e.changes,this.hasComposition)&&!e.selectionSet&&(c=e.state.selection.main.head));let u=c>-1?findCompositionRange(this.view,e.changes,c):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:y,to:k}=this.hasComposition;r=new ChangedRange(y,k,e.changes.mapPos(y,-1),e.changes.mapPos(k,1)).addToSet(r.slice())}this.hasComposition=u?{from:u.range.fromB,to:u.range.toB}:null,(browser.ie||browser.chrome)&&!u&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let h=this.decorations,p=this.updateDeco(),b=findChangedDeco(h,p,e.changes);return r=ChangedRange.extendWithRanges(r,b),!(this.flags&7)&&r.length==0?!1:(this.updateInner(r,e.startState.doc.length,u),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,n,r){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,n,r);let{observer:c}=this.view;c.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let h=browser.chrome||browser.ios?{node:c.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,h),this.flags&=-8,h&&(h.written||c.selectionRange.focusNode!=h.node)&&(this.forceSelection=!0),this.dom.style.height=""}),this.markedForComposition.forEach(h=>h.flags&=-9);let u=[];if(this.view.viewport.from||this.view.viewport.to=0?c[h]:null;if(!p)break;let{fromA:b,toA:y,fromB:k,toB:A}=p,R,N,F,V;if(r&&r.range.fromBk){let ae=ContentBuilder.build(this.view.state.doc,k,r.range.fromB,this.decorations,this.dynamicDecorationMap),fe=ContentBuilder.build(this.view.state.doc,r.range.toB,A,this.decorations,this.dynamicDecorationMap);N=ae.breakAtStart,F=ae.openStart,V=fe.openEnd;let _e=this.compositionView(r);fe.breakAtStart?_e.breakAfter=1:fe.content.length&&_e.merge(_e.length,_e.length,fe.content[0],!1,fe.openStart,0)&&(_e.breakAfter=fe.content[0].breakAfter,fe.content.shift()),ae.content.length&&_e.merge(0,0,ae.content[ae.content.length-1],!0,0,ae.openEnd)&&ae.content.pop(),R=ae.content.concat(_e).concat(fe.content)}else({content:R,breakAtStart:N,openStart:F,openEnd:V}=ContentBuilder.build(this.view.state.doc,k,A,this.decorations,this.dynamicDecorationMap));let{i:W,off:J}=u.findPos(y,1),{i:te,off:j}=u.findPos(b,-1);replaceRange(this,te,j,W,J,R,N,F,V)}r&&this.fixCompositionDOM(r)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let n of e.transactions)for(let r of n.effects)r.is(setEditContextFormatting)&&(this.editContextFormatting=r.value)}compositionView(e){let n=new TextView(e.text.nodeValue);n.flags|=8;for(let{deco:c}of e.marks)n=new MarkView(c,[n],n.length);let r=new LineView;return r.append(n,0),r}fixCompositionDOM(e){let n=(u,h)=>{h.flags|=8|(h.children.some(b=>b.flags&7)?1:0),this.markedForComposition.add(h);let p=ContentView.get(u);p&&p!=h&&(p.dom=null),h.setDOM(u)},r=this.childPos(e.range.fromB,1),c=this.children[r.i];n(e.line,c);for(let u=e.marks.length-1;u>=-1;u--)r=c.childPos(r.off,1),c=c.children[r.i],n(u>=0?e.marks[u].node:e.text,c)}updateSelection(e=!1,n=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let r=this.view.root.activeElement,c=r==this.dom,u=!c&&hasSelection(this.dom,this.view.observer.selectionRange)&&!(r&&this.dom.contains(r));if(!(c||n||u))return;let h=this.forceSelection;this.forceSelection=!1;let p=this.view.state.selection.main,b=this.moveToLine(this.domAtPos(p.anchor)),y=p.empty?b:this.moveToLine(this.domAtPos(p.head));if(browser.gecko&&p.empty&&!this.hasComposition&&betweenUneditable(b)){let A=document.createTextNode("");this.view.observer.ignore(()=>b.node.insertBefore(A,b.node.childNodes[b.offset]||null)),b=y=new DOMPos(A,0),h=!0}let k=this.view.observer.selectionRange;(h||!k.focusNode||(!isEquivalentPosition(b.node,b.offset,k.anchorNode,k.anchorOffset)||!isEquivalentPosition(y.node,y.offset,k.focusNode,k.focusOffset))&&!this.suppressWidgetCursorChange(k,p))&&(this.view.observer.ignore(()=>{browser.android&&browser.chrome&&this.dom.contains(k.focusNode)&&inUneditable(k.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let A=getSelection(this.view.root);if(A)if(p.empty){if(browser.gecko){let R=nextToUneditable(b.node,b.offset);if(R&&R!=3){let N=(R==1?textNodeBefore:textNodeAfter)(b.node,b.offset);N&&(b=new DOMPos(N.node,N.offset))}}A.collapse(b.node,b.offset),p.bidiLevel!=null&&A.caretBidiLevel!==void 0&&(A.caretBidiLevel=p.bidiLevel)}else if(A.extend){A.collapse(b.node,b.offset);try{A.extend(y.node,y.offset)}catch{}}else{let R=document.createRange();p.anchor>p.head&&([b,y]=[y,b]),R.setEnd(y.node,y.offset),R.setStart(b.node,b.offset),A.removeAllRanges(),A.addRange(R)}u&&this.view.root.activeElement==this.dom&&(this.dom.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(b,y)),this.impreciseAnchor=b.precise?null:new DOMPos(k.anchorNode,k.anchorOffset),this.impreciseHead=y.precise?null:new DOMPos(k.focusNode,k.focusOffset)}suppressWidgetCursorChange(e,n){return this.hasComposition&&n.empty&&isEquivalentPosition(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==n.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,n=e.state.selection.main,r=getSelection(e.root),{anchorNode:c,anchorOffset:u}=e.observer.selectionRange;if(!r||!n.empty||!n.assoc||!r.modify)return;let h=LineView.find(this,n.head);if(!h)return;let p=h.posAtStart;if(n.head==p||n.head==p+h.length)return;let b=this.coordsAt(n.head,-1),y=this.coordsAt(n.head,1);if(!b||!y||b.bottom>y.top)return;let k=this.domAtPos(n.head+n.assoc);r.collapse(k.node,k.offset),r.modify("move",n.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let A=e.observer.selectionRange;e.docView.posFromDOM(A.anchorNode,A.anchorOffset)!=n.from&&r.collapse(c,u)}moveToLine(e){let n=this.dom,r;if(e.node!=n)return e;for(let c=e.offset;!r&&c=0;c--){let u=ContentView.get(n.childNodes[c]);u instanceof LineView&&(r=u.domAtPos(u.length))}return r?new DOMPos(r.node,r.offset,!0):e}nearest(e){for(let n=e;n;){let r=ContentView.get(n);if(r&&r.rootView==this)return r;n=n.parentNode}return null}posFromDOM(e,n){let r=this.nearest(e);if(!r)throw new RangeError("Trying to find position for a DOM position outside of the document");return r.localPosFromDOM(e,n)+r.posAtStart}domAtPos(e){let{i:n,off:r}=this.childCursor().findPos(e,-1);for(;n=0;h--){let p=this.children[h],b=u-p.breakAfter,y=b-p.length;if(be||p.covers(1))&&(!r||p instanceof LineView&&!(r instanceof LineView&&n>=0)))r=p,c=y;else if(r&&y==e&&b==e&&p instanceof BlockWidgetView&&Math.abs(n)<2){if(p.deco.startSide<0)break;h&&(r=null)}u=y}return r?r.coordsAt(e-c,n):null}coordsForChar(e){let{i:n,off:r}=this.childPos(e,1),c=this.children[n];if(!(c instanceof LineView))return null;for(;c.children.length;){let{i:p,off:b}=c.childPos(r,1);for(;;p++){if(p==c.children.length)return null;if((c=c.children[p]).length)break}r=b}if(!(c instanceof TextView))return null;let u=findClusterBreak(c.text,r);if(u==r)return null;let h=textRange(c.dom,r,u).getClientRects();for(let p=0;pMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,p=-1,b=this.view.textDirection==Direction.LTR;for(let y=0,k=0;kc)break;if(y>=r){let N=A.dom.getBoundingClientRect();if(n.push(N.height),h){let F=A.dom.lastChild,V=F?clientRectsFor(F):[];if(V.length){let W=V[V.length-1],J=b?W.right-N.left:N.right-W.left;J>p&&(p=J,this.minWidth=u,this.minWidthFrom=y,this.minWidthTo=R)}}}y=R+A.breakAfter}return n}textDirectionAt(e){let{i:n}=this.childPos(e,1);return getComputedStyle(this.children[n].dom).direction=="rtl"?Direction.RTL:Direction.LTR}measureTextSize(){for(let u of this.children)if(u instanceof LineView){let h=u.measureTextSize();if(h)return h}let e=document.createElement("div"),n,r,c;return e.className="cm-line",e.style.width="99999px",e.style.position="absolute",e.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.dom.appendChild(e);let u=clientRectsFor(e.firstChild)[0];n=e.getBoundingClientRect().height,r=u?u.width/27:7,c=u?u.height:n,e.remove()}),{lineHeight:n,charWidth:r,textHeight:c}}childCursor(e=this.length){let n=this.children.length;return n&&(e-=this.children[--n].length),new ChildCursor(this.children,e,n)}computeBlockGapDeco(){let e=[],n=this.view.viewState;for(let r=0,c=0;;c++){let u=c==n.viewports.length?null:n.viewports[c],h=u?u.from-1:this.length;if(h>r){let p=(n.lineBlockAt(h).bottom-n.lineBlockAt(r).top)/this.view.scaleY;e.push(Decoration.replace({widget:new BlockGapWidget(p),block:!0,inclusive:!0,isBlockGap:!0}).range(r,h))}if(!u)break;r=u.to+1}return Decoration.set(e)}updateDeco(){let e=1,n=this.view.state.facet(decorations).map(u=>(this.dynamicDecorationMap[e++]=typeof u=="function")?u(this.view):u),r=!1,c=this.view.state.facet(outerDecorations).map((u,h)=>{let p=typeof u=="function";return p&&(r=!0),p?u(this.view):u});for(c.length&&(this.dynamicDecorationMap[e++]=r,n.push(RangeSet.join(c))),this.decorations=[this.editContextFormatting,...n,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];en.anchor?-1:1),c;if(!r)return;!n.empty&&(c=this.coordsAt(n.anchor,n.anchor>n.head?-1:1))&&(r={left:Math.min(r.left,c.left),top:Math.min(r.top,c.top),right:Math.max(r.right,c.right),bottom:Math.max(r.bottom,c.bottom)});let u=getScrollMargins(this.view),h={left:r.left-u.left,top:r.top-u.top,right:r.right+u.right,bottom:r.bottom+u.bottom},{offsetWidth:p,offsetHeight:b}=this.view.scrollDOM;scrollRectIntoView(this.view.scrollDOM,h,n.head{re.from&&(n=!0)}),n}function groupAt(o,e,n=1){let r=o.charCategorizer(e),c=o.doc.lineAt(e),u=e-c.from;if(c.length==0)return EditorSelection.cursor(e);u==0?n=1:u==c.length&&(n=-1);let h=u,p=u;n<0?h=findClusterBreak(c.text,u,!1):p=findClusterBreak(c.text,u);let b=r(c.text.slice(h,p));for(;h>0;){let y=findClusterBreak(c.text,h,!1);if(r(c.text.slice(y,h))!=b)break;h=y}for(;po?e.left-o:Math.max(0,o-e.right)}function getdy(o,e){return e.top>o?e.top-o:Math.max(0,o-e.bottom)}function yOverlap(o,e){return o.tope.top+1}function upTop(o,e){return eo.bottom?{top:o.top,left:o.left,right:o.right,bottom:e}:o}function domPosAtCoords(o,e,n){let r,c,u,h,p=!1,b,y,k,A;for(let F=o.firstChild;F;F=F.nextSibling){let V=clientRectsFor(F);for(let W=0;Wj||h==j&&u>te){r=F,c=J,u=te,h=j;let ae=j?n0?W0)}te==0?n>J.bottom&&(!k||k.bottomJ.top)&&(y=F,A=J):k&&yOverlap(k,J)?k=upBot(k,J.bottom):A&&yOverlap(A,J)&&(A=upTop(A,J.top))}}if(k&&k.bottom>=n?(r=b,c=k):A&&A.top<=n&&(r=y,c=A),!r)return{node:o,offset:0};let R=Math.max(c.left,Math.min(c.right,e));if(r.nodeType==3)return domPosInText(r,R,n);if(p&&r.contentEditable!="false")return domPosAtCoords(r,R,n);let N=Array.prototype.indexOf.call(o.childNodes,r)+(e>=(c.left+c.right)/2?1:0);return{node:o,offset:N}}function domPosInText(o,e,n){let r=o.nodeValue.length,c=-1,u=1e9,h=0;for(let p=0;pn?k.top-n:n-k.bottom)-1;if(k.left-1<=e&&k.right+1>=e&&A=(k.left+k.right)/2,N=R;if((browser.chrome||browser.gecko)&&textRange(o,p).getBoundingClientRect().left==k.right&&(N=!R),A<=0)return{node:o,offset:p+(N?1:0)};c=p+(N?1:0),u=A}}}return{node:o,offset:c>-1?c:h>0?o.nodeValue.length:0}}function posAtCoords(o,e,n,r=-1){var c,u;let h=o.contentDOM.getBoundingClientRect(),p=h.top+o.viewState.paddingTop,b,{docHeight:y}=o.viewState,{x:k,y:A}=e,R=A-p;if(R<0)return 0;if(R>y)return o.state.doc.length;for(let ae=o.viewState.heightOracle.textHeight/2,fe=!1;b=o.elementAtHeight(R),b.type!=BlockType.Text;)for(;R=r>0?b.bottom+ae:b.top-ae,!(R>=0&&R<=y);){if(fe)return n?null:0;fe=!0,r=-r}A=p+R;let N=b.from;if(No.viewport.to)return o.viewport.to==o.state.doc.length?o.state.doc.length:n?null:posAtCoordsImprecise(o,h,b,k,A);let F=o.dom.ownerDocument,V=o.root.elementFromPoint?o.root:F,W=V.elementFromPoint(k,A);W&&!o.contentDOM.contains(W)&&(W=null),W||(k=Math.max(h.left+1,Math.min(h.right-1,k)),W=V.elementFromPoint(k,A),W&&!o.contentDOM.contains(W)&&(W=null));let J,te=-1;if(W&&((c=o.docView.nearest(W))===null||c===void 0?void 0:c.isEditable)!=!1){if(F.caretPositionFromPoint){let ae=F.caretPositionFromPoint(k,A);ae&&({offsetNode:J,offset:te}=ae)}else if(F.caretRangeFromPoint){let ae=F.caretRangeFromPoint(k,A);ae&&({startContainer:J,startOffset:te}=ae,(!o.contentDOM.contains(J)||browser.safari&&isSuspiciousSafariCaretResult(J,te,k)||browser.chrome&&isSuspiciousChromeCaretResult(J,te,k))&&(J=void 0))}}if(!J||!o.docView.dom.contains(J)){let ae=LineView.find(o.docView,N);if(!ae)return R>b.top+b.height/2?b.to:b.from;({node:J,offset:te}=domPosAtCoords(ae.dom,k,A))}let j=o.docView.nearest(J);if(!j)return null;if(j.isWidget&&((u=j.dom)===null||u===void 0?void 0:u.nodeType)==1){let ae=j.dom.getBoundingClientRect();return e.yo.defaultLineHeight*1.5){let p=o.viewState.heightOracle.textHeight,b=Math.floor((c-n.top-(o.defaultLineHeight-p)*.5)/p);u+=b*o.viewState.heightOracle.lineLength}let h=o.state.sliceDoc(n.from,n.to);return n.from+findColumn(h,u,o.state.tabSize)}function isSuspiciousSafariCaretResult(o,e,n){let r;if(o.nodeType!=3||e!=(r=o.nodeValue.length))return!1;for(let c=o.nextSibling;c;c=c.nextSibling)if(c.nodeType!=1||c.nodeName!="BR")return!1;return textRange(o,r-1,r).getBoundingClientRect().left>n}function isSuspiciousChromeCaretResult(o,e,n){if(e!=0)return!1;for(let c=o;;){let u=c.parentNode;if(!u||u.nodeType!=1||u.firstChild!=c)return!1;if(u.classList.contains("cm-line"))break;c=u}let r=o.nodeType==1?o.getBoundingClientRect():textRange(o,0,Math.max(o.nodeValue.length,1)).getBoundingClientRect();return n-r.left>5}function blockAt(o,e){let n=o.lineBlockAt(e);if(Array.isArray(n.type)){for(let r of n.type)if(r.to>e||r.to==e&&(r.to==n.to||r.type==BlockType.Text))return r}return n}function moveToLineBoundary(o,e,n,r){let c=blockAt(o,e.head),u=!r||c.type!=BlockType.Text||!(o.lineWrapping||c.widgetLineBreaks)?null:o.coordsAtPos(e.assoc<0&&e.head>c.from?e.head-1:e.head);if(u){let h=o.dom.getBoundingClientRect(),p=o.textDirectionAt(c.from),b=o.posAtCoords({x:n==(p==Direction.LTR)?h.right-1:h.left+1,y:(u.top+u.bottom)/2});if(b!=null)return EditorSelection.cursor(b,n?-1:1)}return EditorSelection.cursor(n?c.to:c.from,n?-1:1)}function moveByChar(o,e,n,r){let c=o.state.doc.lineAt(e.head),u=o.bidiSpans(c),h=o.textDirectionAt(c.from);for(let p=e,b=null;;){let y=moveVisually(c,u,h,p,n),k=movedOver;if(!y){if(c.number==(n?o.state.doc.lines:1))return p;k=` -`,c=o.state.doc.line(c.number+(n?1:-1)),u=o.bidiSpans(c),y=o.visualLineSide(c,!n)}if(b){if(!b(k))return p}else{if(!r)return y;b=r(k)}p=y}}function byGroup(o,e,n){let r=o.state.charCategorizer(e),c=r(n);return u=>{let h=r(u);return c==CharCategory.Space&&(c=h),c==h}}function moveVertically(o,e,n,r){let c=e.head,u=n?1:-1;if(c==(n?o.state.doc.length:0))return EditorSelection.cursor(c,e.assoc);let h=e.goalColumn,p,b=o.contentDOM.getBoundingClientRect(),y=o.coordsAtPos(c,e.assoc||-1),k=o.documentTop;if(y)h==null&&(h=y.left-b.left),p=u<0?y.top:y.bottom;else{let N=o.viewState.lineBlockAt(c);h==null&&(h=Math.min(b.right-b.left,o.defaultCharacterWidth*(c-N.from))),p=(u<0?N.top:N.bottom)+k}let A=b.left+h,R=r??o.viewState.heightOracle.textHeight>>1;for(let N=0;;N+=10){let F=p+(R+N)*u,V=posAtCoords(o,{x:A,y:F},!1,u);if(Fb.bottom||(u<0?Vc)){let W=o.docView.coordsForChar(V),J=!W||F{if(e>u&&ec(o)),n.from,e.head>n.from?-1:1);return r==n.from?n:EditorSelection.cursor(r,ru)&&this.lineBreak(),c=h}return this.findPointBefore(r,n),this}readTextNode(e){let n=e.nodeValue;for(let r of this.points)r.node==e&&(r.pos=this.text.length+Math.min(r.offset,n.length));for(let r=0,c=this.lineSeparator?null:/\r\n?|\n/g;;){let u=-1,h=1,p;if(this.lineSeparator?(u=n.indexOf(this.lineSeparator,r),h=this.lineSeparator.length):(p=c.exec(n))&&(u=p.index,h=p[0].length),this.append(n.slice(r,u<0?n.length:u)),u<0)break;if(this.lineBreak(),h>1)for(let b of this.points)b.node==e&&b.pos>this.text.length&&(b.pos-=h-1);r=u+h}}readNode(e){if(e.cmIgnore)return;let n=ContentView.get(e),r=n&&n.overrideDOMText;if(r!=null){this.findPointInside(e,r.length);for(let c=r.iter();!c.next().done;)c.lineBreak?this.lineBreak():this.append(c.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,n){for(let r of this.points)r.node==e&&e.childNodes[r.offset]==n&&(r.pos=this.text.length)}findPointInside(e,n){for(let r of this.points)(e.nodeType==3?r.node==e:e.contains(r.node))&&(r.pos=this.text.length+(isAtEnd(e,r.node,r.offset)?n:0))}}function isAtEnd(o,e,n){for(;;){if(!e||n-1;let{impreciseHead:u,impreciseAnchor:h}=e.docView;if(e.state.readOnly&&n>-1)this.newSel=null;else if(n>-1&&(this.bounds=e.docView.domBoundsAround(n,r,0))){let p=u||h?[]:selectionPoints(e),b=new DOMReader(p,e.state);b.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=b.text,this.newSel=selectionFromPoints(p,this.bounds.from)}else{let p=e.observer.selectionRange,b=u&&u.node==p.focusNode&&u.offset==p.focusOffset||!contains(e.contentDOM,p.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(p.focusNode,p.focusOffset),y=h&&h.node==p.anchorNode&&h.offset==p.anchorOffset||!contains(e.contentDOM,p.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(p.anchorNode,p.anchorOffset),k=e.viewport;if((browser.ios||browser.chrome)&&e.state.selection.main.empty&&b!=y&&(k.from>0||k.toDate.now()-100?o.inputState.lastKeyCode:-1;if(e.bounds){let{from:h,to:p}=e.bounds,b=c.from,y=null;(u===8||browser.android&&e.text.length=c.from&&n.to<=c.to&&(n.from!=c.from||n.to!=c.to)&&c.to-c.from-(n.to-n.from)<=4?n={from:c.from,to:c.to,insert:o.state.doc.slice(c.from,n.from).append(n.insert).append(o.state.doc.slice(n.to,c.to))}:(browser.mac||browser.android)&&n&&n.from==n.to&&n.from==c.head-1&&/^\. ?$/.test(n.insert.toString())&&o.contentDOM.getAttribute("autocorrect")=="off"?(r&&n.insert.length==2&&(r=EditorSelection.single(r.main.anchor-1,r.main.head-1)),n={from:c.from,to:c.to,insert:Text.of([" "])}):browser.chrome&&n&&n.from==n.to&&n.from==c.head&&n.insert.toString()==` - `&&o.lineWrapping&&(r&&(r=EditorSelection.single(r.main.anchor-1,r.main.head-1)),n={from:c.from,to:c.to,insert:Text.of([" "])}),n)return applyDOMChangeInner(o,n,r,u);if(r&&!r.main.eq(c)){let h=!1,p="select";return o.inputState.lastSelectionTime>Date.now()-50&&(o.inputState.lastSelectionOrigin=="select"&&(h=!0),p=o.inputState.lastSelectionOrigin),o.dispatch({selection:r,scrollIntoView:h,userEvent:p}),!0}else return!1}function applyDOMChangeInner(o,e,n,r=-1){if(browser.ios&&o.inputState.flushIOSKey(e))return!0;let c=o.state.selection.main;if(browser.android&&(e.to==c.to&&(e.from==c.from||e.from==c.from-1&&o.state.sliceDoc(e.from,c.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&dispatchKey(o.contentDOM,"Enter",13)||(e.from==c.from-1&&e.to==c.to&&e.insert.length==0||r==8&&e.insert.lengthc.head)&&dispatchKey(o.contentDOM,"Backspace",8)||e.from==c.from&&e.to==c.to+1&&e.insert.length==0&&dispatchKey(o.contentDOM,"Delete",46)))return!0;let u=e.insert.toString();o.inputState.composing>=0&&o.inputState.composing++;let h,p=()=>h||(h=applyDefaultInsert(o,e,n));return o.state.facet(inputHandler$1).some(b=>b(o,e.from,e.to,u,p))||o.dispatch(p()),!0}function applyDefaultInsert(o,e,n){let r,c=o.state,u=c.selection.main;if(e.from>=u.from&&e.to<=u.to&&e.to-e.from>=(u.to-u.from)/3&&(!n||n.main.empty&&n.main.from==e.from+e.insert.length)&&o.inputState.composing<0){let p=u.frome.to?c.sliceDoc(e.to,u.to):"";r=c.replaceSelection(o.state.toText(p+e.insert.sliceString(0,void 0,o.state.lineBreak)+b))}else{let p=c.changes(e),b=n&&n.main.to<=p.newLength?n.main:void 0;if(c.selection.ranges.length>1&&o.inputState.composing>=0&&e.to<=u.to&&e.to>=u.to-10){let y=o.state.sliceDoc(e.from,e.to),k,A=n&&findCompositionNode(o,n.main.head);if(A){let F=e.insert.length-(e.to-e.from);k={from:A.from,to:A.to-F}}else k=o.state.doc.lineAt(u.head);let R=u.to-e.to,N=u.to-u.from;r=c.changeByRange(F=>{if(F.from==u.from&&F.to==u.to)return{changes:p,range:b||F.map(p)};let V=F.to-R,W=V-y.length;if(F.to-F.from!=N||o.state.sliceDoc(W,V)!=y||F.to>=k.from&&F.from<=k.to)return{range:F};let J=c.changes({from:W,to:V,insert:e.insert}),te=F.to-u.to;return{changes:J,range:b?EditorSelection.range(Math.max(0,b.anchor+te),Math.max(0,b.head+te)):F.map(J)}})}else r={changes:p,selection:b&&c.selection.replaceRange(b)}}let h="input.type";return(o.composing||o.inputState.compositionPendingChange&&o.inputState.compositionEndedAt>Date.now()-50)&&(o.inputState.compositionPendingChange=!1,h+=".compose",o.inputState.compositionFirstChange&&(h+=".start",o.inputState.compositionFirstChange=!1)),c.update(r,{userEvent:h,scrollIntoView:!0})}function findDiff(o,e,n,r){let c=Math.min(o.length,e.length),u=0;for(;u0&&p>0&&o.charCodeAt(h-1)==e.charCodeAt(p-1);)h--,p--;if(r=="end"){let b=Math.max(0,u-Math.min(h,p));n-=h+b-u}if(h=h?u-n:0;u-=b,p=u+(p-h),h=u}else if(p=p?u-n:0;u-=b,h=u+(h-p),p=u}return{from:u,toA:h,toB:p}}function selectionPoints(o){let e=[];if(o.root.activeElement!=o.contentDOM)return e;let{anchorNode:n,anchorOffset:r,focusNode:c,focusOffset:u}=o.observer.selectionRange;return n&&(e.push(new DOMPoint(n,r)),(c!=n||u!=r)&&e.push(new DOMPoint(c,u))),e}function selectionFromPoints(o,e){if(o.length==0)return null;let n=o[0].pos,r=o.length==2?o[1].pos:n;return n>-1&&r>-1?EditorSelection.single(n+e,r+e):null}class InputState{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,browser.safari&&e.contentDOM.addEventListener("input",()=>null),browser.gecko&&firefoxCopyCutHack(e.contentDOM.ownerDocument)}handleEvent(e){!eventBelongsToEditor(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||this.runHandlers(e.type,e)}runHandlers(e,n){let r=this.handlers[e];if(r){for(let c of r.observers)c(this.view,n);for(let c of r.handlers){if(n.defaultPrevented)break;if(c(this.view,n)){n.preventDefault();break}}}}ensureHandlers(e){let n=computeHandlers(e),r=this.handlers,c=this.view.contentDOM;for(let u in n)if(u!="scroll"){let h=!n[u].handlers.length,p=r[u];p&&h!=!p.handlers.length&&(c.removeEventListener(u,this.handleEvent),p=null),p||c.addEventListener(u,this.handleEvent,{passive:h})}for(let u in r)u!="scroll"&&!n[u]&&c.removeEventListener(u,this.handleEvent);this.handlers=n}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&modifierCodes.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),browser.android&&browser.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let n;return browser.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&((n=PendingKeys.find(r=>r.keyCode==e.keyCode))&&!e.ctrlKey||EmacsyPendingKeys.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(this.pendingIOSKey=n||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let n=this.pendingIOSKey;return!n||n.key=="Enter"&&e&&e.from0?!0:browser.safari&&!browser.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function bindHandler(o,e){return(n,r)=>{try{return e.call(o,r,n)}catch(c){logException(n.state,c)}}}function computeHandlers(o){let e=Object.create(null);function n(r){return e[r]||(e[r]={observers:[],handlers:[]})}for(let r of o){let c=r.spec;if(c&&c.domEventHandlers)for(let u in c.domEventHandlers){let h=c.domEventHandlers[u];h&&n(u).handlers.push(bindHandler(r.value,h))}if(c&&c.domEventObservers)for(let u in c.domEventObservers){let h=c.domEventObservers[u];h&&n(u).observers.push(bindHandler(r.value,h))}}for(let r in handlers)n(r).handlers.push(handlers[r]);for(let r in observers)n(r).observers.push(observers[r]);return e}const PendingKeys=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],EmacsyPendingKeys="dthko",modifierCodes=[16,17,18,20,91,92,224,225],dragScrollMargin=6;function dragScrollSpeed(o){return Math.max(0,o)*.7+8}function dist(o,e){return Math.max(Math.abs(o.clientX-e.clientX),Math.abs(o.clientY-e.clientY))}class MouseSelection{constructor(e,n,r,c){this.view=e,this.startEvent=n,this.style=r,this.mustSelect=c,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=n,this.scrollParents=scrollableParents(e.contentDOM),this.atoms=e.state.facet(atomicRanges).map(h=>h(e));let u=e.contentDOM.ownerDocument;u.addEventListener("mousemove",this.move=this.move.bind(this)),u.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=n.shiftKey,this.multiple=e.state.facet(EditorState.allowMultipleSelections)&&addsSelectionRange(e,n),this.dragging=isInPrimarySelection(e,n)&&getClickType(n)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&dist(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let n=0,r=0,c=0,u=0,h=this.view.win.innerWidth,p=this.view.win.innerHeight;this.scrollParents.x&&({left:c,right:h}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:u,bottom:p}=this.scrollParents.y.getBoundingClientRect());let b=getScrollMargins(this.view);e.clientX-b.left<=c+dragScrollMargin?n=-dragScrollSpeed(c-e.clientX):e.clientX+b.right>=h-dragScrollMargin&&(n=dragScrollSpeed(e.clientX-h)),e.clientY-b.top<=u+dragScrollMargin?r=-dragScrollSpeed(u-e.clientY):e.clientY+b.bottom>=p-dragScrollMargin&&(r=dragScrollSpeed(e.clientY-p)),this.setScrollSpeed(n,r)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,n){this.scrollSpeed={x:e,y:n},e||n?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:n}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),n&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=n,n=0),(e||n)&&this.view.win.scrollBy(e,n),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(e){let n=null;for(let r=0;rn.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function addsSelectionRange(o,e){let n=o.state.facet(clickAddsSelectionRange);return n.length?n[0](e):browser.mac?e.metaKey:e.ctrlKey}function dragMovesSelection(o,e){let n=o.state.facet(dragMovesSelection$1);return n.length?n[0](e):browser.mac?!e.altKey:!e.ctrlKey}function isInPrimarySelection(o,e){let{main:n}=o.state.selection;if(n.empty)return!1;let r=getSelection(o.root);if(!r||r.rangeCount==0)return!0;let c=r.getRangeAt(0).getClientRects();for(let u=0;u=e.clientX&&h.top<=e.clientY&&h.bottom>=e.clientY)return!0}return!1}function eventBelongsToEditor(o,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target,r;n!=o.contentDOM;n=n.parentNode)if(!n||n.nodeType==11||(r=ContentView.get(n))&&r.ignoreEvent(e))return!1;return!0}const handlers=Object.create(null),observers=Object.create(null),brokenClipboardAPI=browser.ie&&browser.ie_version<15||browser.ios&&browser.webkit_version<604;function capturePaste(o){let e=o.dom.parentNode;if(!e)return;let n=e.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout(()=>{o.focus(),n.remove(),doPaste(o,n.value)},50)}function doPaste(o,e){let{state:n}=o,r,c=1,u=n.toText(e),h=u.lines==n.selection.ranges.length;if(lastLinewiseCopy!=null&&n.selection.ranges.every(b=>b.empty)&&lastLinewiseCopy==u.toString()){let b=-1;r=n.changeByRange(y=>{let k=n.doc.lineAt(y.from);if(k.from==b)return{range:y};b=k.from;let A=n.toText((h?u.line(c++).text:e)+n.lineBreak);return{changes:{from:k.from,insert:A},range:EditorSelection.cursor(y.from+A.length)}})}else h?r=n.changeByRange(b=>{let y=u.line(c++);return{changes:{from:b.from,to:b.to,insert:y.text},range:EditorSelection.cursor(b.from+y.length)}}):r=n.replaceSelection(u);o.dispatch(r,{userEvent:"input.paste",scrollIntoView:!0})}observers.scroll=o=>{o.inputState.lastScrollTop=o.scrollDOM.scrollTop,o.inputState.lastScrollLeft=o.scrollDOM.scrollLeft};handlers.keydown=(o,e)=>(o.inputState.setSelectionOrigin("select"),e.keyCode==27&&o.inputState.tabFocusMode!=0&&(o.inputState.tabFocusMode=Date.now()+2e3),!1);observers.touchstart=(o,e)=>{o.inputState.lastTouchTime=Date.now(),o.inputState.setSelectionOrigin("select.pointer")};observers.touchmove=o=>{o.inputState.setSelectionOrigin("select.pointer")};handlers.mousedown=(o,e)=>{if(o.observer.flush(),o.inputState.lastTouchTime>Date.now()-2e3)return!1;let n=null;for(let r of o.state.facet(mouseSelectionStyle))if(n=r(o,e),n)break;if(!n&&e.button==0&&(n=basicMouseSelection(o,e)),n){let r=!o.hasFocus;o.inputState.startMouseSelection(new MouseSelection(o,e,n,r)),r&&o.observer.ignore(()=>{focusPreventScroll(o.contentDOM);let u=o.root.activeElement;u&&!u.contains(o.contentDOM)&&u.blur()});let c=o.inputState.mouseSelection;if(c)return c.start(e),c.dragging===!1}return!1};function rangeForClick(o,e,n,r){if(r==1)return EditorSelection.cursor(e,n);if(r==2)return groupAt(o.state,e,n);{let c=LineView.find(o.docView,e),u=o.state.doc.lineAt(c?c.posAtEnd:e),h=c?c.posAtStart:u.from,p=c?c.posAtEnd:u.to;return pe>=n.top&&e<=n.bottom&&o>=n.left&&o<=n.right;function findPositionSide(o,e,n,r){let c=LineView.find(o.docView,e);if(!c)return 1;let u=e-c.posAtStart;if(u==0)return 1;if(u==c.length)return-1;let h=c.coordsAt(u,-1);if(h&&inside(n,r,h))return-1;let p=c.coordsAt(u,1);return p&&inside(n,r,p)?1:h&&h.bottom>=r?-1:1}function queryPos(o,e){let n=o.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:n,bias:findPositionSide(o,n,e.clientX,e.clientY)}}const BadMouseDetail=browser.ie&&browser.ie_version<=11;let lastMouseDown=null,lastMouseDownCount=0,lastMouseDownTime=0;function getClickType(o){if(!BadMouseDetail)return o.detail;let e=lastMouseDown,n=lastMouseDownTime;return lastMouseDown=o,lastMouseDownTime=Date.now(),lastMouseDownCount=!e||n>Date.now()-400&&Math.abs(e.clientX-o.clientX)<2&&Math.abs(e.clientY-o.clientY)<2?(lastMouseDownCount+1)%3:1}function basicMouseSelection(o,e){let n=queryPos(o,e),r=getClickType(e),c=o.state.selection;return{update(u){u.docChanged&&(n.pos=u.changes.mapPos(n.pos),c=c.map(u.changes))},get(u,h,p){let b=queryPos(o,u),y,k=rangeForClick(o,b.pos,b.bias,r);if(n.pos!=b.pos&&!h){let A=rangeForClick(o,n.pos,n.bias,r),R=Math.min(A.from,k.from),N=Math.max(A.to,k.to);k=R1&&(y=removeRangeAround(c,b.pos))?y:p?c.addRange(k):EditorSelection.create([k])}}}function removeRangeAround(o,e){for(let n=0;n=e)return EditorSelection.create(o.ranges.slice(0,n).concat(o.ranges.slice(n+1)),o.mainIndex==n?0:o.mainIndex-(o.mainIndex>n?1:0))}return null}handlers.dragstart=(o,e)=>{let{selection:{main:n}}=o.state;if(e.target.draggable){let c=o.docView.nearest(e.target);if(c&&c.isWidget){let u=c.posAtStart,h=u+c.length;(u>=n.to||h<=n.from)&&(n=EditorSelection.range(u,h))}}let{inputState:r}=o;return r.mouseSelection&&(r.mouseSelection.dragging=!0),r.draggedContent=n,e.dataTransfer&&(e.dataTransfer.setData("Text",o.state.sliceDoc(n.from,n.to)),e.dataTransfer.effectAllowed="copyMove"),!1};handlers.dragend=o=>(o.inputState.draggedContent=null,!1);function dropText(o,e,n,r){if(!n)return;let c=o.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:u}=o.inputState,h=r&&u&&dragMovesSelection(o,e)?{from:u.from,to:u.to}:null,p={from:c,insert:n},b=o.state.changes(h?[h,p]:p);o.focus(),o.dispatch({changes:b,selection:{anchor:b.mapPos(c,-1),head:b.mapPos(c,1)},userEvent:h?"move.drop":"input.drop"}),o.inputState.draggedContent=null}handlers.drop=(o,e)=>{if(!e.dataTransfer)return!1;if(o.state.readOnly)return!0;let n=e.dataTransfer.files;if(n&&n.length){let r=Array(n.length),c=0,u=()=>{++c==n.length&&dropText(o,e,r.filter(h=>h!=null).join(o.state.lineBreak),!1)};for(let h=0;h{/[\x00-\x08\x0e-\x1f]{2}/.test(p.result)||(r[h]=p.result),u()},p.readAsText(n[h])}return!0}else{let r=e.dataTransfer.getData("Text");if(r)return dropText(o,e,r,!0),!0}return!1};handlers.paste=(o,e)=>{if(o.state.readOnly)return!0;o.observer.flush();let n=brokenClipboardAPI?null:e.clipboardData;return n?(doPaste(o,n.getData("text/plain")||n.getData("text/uri-list")),!0):(capturePaste(o),!1)};function captureCopy(o,e){let n=o.dom.parentNode;if(!n)return;let r=n.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=e,r.focus(),r.selectionEnd=e.length,r.selectionStart=0,setTimeout(()=>{r.remove(),o.focus()},50)}function copiedRange(o){let e=[],n=[],r=!1;for(let c of o.selection.ranges)c.empty||(e.push(o.sliceDoc(c.from,c.to)),n.push(c));if(!e.length){let c=-1;for(let{from:u}of o.selection.ranges){let h=o.doc.lineAt(u);h.number>c&&(e.push(h.text),n.push({from:h.from,to:Math.min(o.doc.length,h.to+1)})),c=h.number}r=!0}return{text:e.join(o.lineBreak),ranges:n,linewise:r}}let lastLinewiseCopy=null;handlers.copy=handlers.cut=(o,e)=>{let{text:n,ranges:r,linewise:c}=copiedRange(o.state);if(!n&&!c)return!1;lastLinewiseCopy=c?n:null,e.type=="cut"&&!o.state.readOnly&&o.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"});let u=brokenClipboardAPI?null:e.clipboardData;return u?(u.clearData(),u.setData("text/plain",n),!0):(captureCopy(o,n),!1)};const isFocusChange=Annotation.define();function focusChangeTransaction(o,e){let n=[];for(let r of o.facet(focusChangeEffect)){let c=r(o,e);c&&n.push(c)}return n?o.update({effects:n,annotations:isFocusChange.of(!0)}):null}function updateForFocusChange(o){setTimeout(()=>{let e=o.hasFocus;if(e!=o.inputState.notifiedFocused){let n=focusChangeTransaction(o.state,e);n?o.dispatch(n):o.update([])}},10)}observers.focus=o=>{o.inputState.lastFocusTime=Date.now(),!o.scrollDOM.scrollTop&&(o.inputState.lastScrollTop||o.inputState.lastScrollLeft)&&(o.scrollDOM.scrollTop=o.inputState.lastScrollTop,o.scrollDOM.scrollLeft=o.inputState.lastScrollLeft),updateForFocusChange(o)};observers.blur=o=>{o.observer.clearSelectionRange(),updateForFocusChange(o)};observers.compositionstart=observers.compositionupdate=o=>{o.observer.editContext||(o.inputState.compositionFirstChange==null&&(o.inputState.compositionFirstChange=!0),o.inputState.composing<0&&(o.inputState.composing=0))};observers.compositionend=o=>{o.observer.editContext||(o.inputState.composing=-1,o.inputState.compositionEndedAt=Date.now(),o.inputState.compositionPendingKey=!0,o.inputState.compositionPendingChange=o.observer.pendingRecords().length>0,o.inputState.compositionFirstChange=null,browser.chrome&&browser.android?o.observer.flushSoon():o.inputState.compositionPendingChange?Promise.resolve().then(()=>o.observer.flush()):setTimeout(()=>{o.inputState.composing<0&&o.docView.hasComposition&&o.update([])},50))};observers.contextmenu=o=>{o.inputState.lastContextMenu=Date.now()};handlers.beforeinput=(o,e)=>{var n,r;if(e.inputType=="insertReplacementText"&&o.observer.editContext){let u=(n=e.dataTransfer)===null||n===void 0?void 0:n.getData("text/plain"),h=e.getTargetRanges();if(u&&h.length){let p=h[0],b=o.posAtDOM(p.startContainer,p.startOffset),y=o.posAtDOM(p.endContainer,p.endOffset);return applyDOMChangeInner(o,{from:b,to:y,insert:o.state.toText(u)},null),!0}}let c;if(browser.chrome&&browser.android&&(c=PendingKeys.find(u=>u.inputType==e.inputType))&&(o.observer.delayAndroidKey(c.key,c.keyCode),c.key=="Backspace"||c.key=="Delete")){let u=((r=window.visualViewport)===null||r===void 0?void 0:r.height)||0;setTimeout(()=>{var h;(((h=window.visualViewport)===null||h===void 0?void 0:h.height)||0)>u+10&&o.hasFocus&&(o.contentDOM.blur(),o.focus())},100)}return browser.ios&&e.inputType=="deleteContentForward"&&o.observer.flushSoon(),browser.safari&&e.inputType=="insertText"&&o.inputState.composing>=0&&setTimeout(()=>observers.compositionend(o,e),20),!1};const appliedFirefoxHack=new Set;function firefoxCopyCutHack(o){appliedFirefoxHack.has(o)||(appliedFirefoxHack.add(o),o.addEventListener("copy",()=>{}),o.addEventListener("cut",()=>{}))}const wrappingWhiteSpace=["pre-wrap","normal","pre-line","break-spaces"];let heightChangeFlag=!1;function clearHeightChangeFlag(){heightChangeFlag=!1}class HeightOracle{constructor(e){this.lineWrapping=e,this.doc=Text.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,n){let r=this.doc.lineAt(n).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(r+=Math.max(0,Math.ceil((n-e-r*this.lineLength*.5)/this.lineLength))),this.lineHeight*r}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return wrappingWhiteSpace.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let n=!1;for(let r=0;r-1,b=Math.round(n)!=Math.round(this.lineHeight)||this.lineWrapping!=p;if(this.lineWrapping=p,this.lineHeight=n,this.charWidth=r,this.textHeight=c,this.lineLength=u,b){this.heightSamples={};for(let y=0;y0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Epsilon&&(heightChangeFlag=!0),this.height=e)}replace(e,n,r){return HeightMap.of(r)}decomposeLeft(e,n){n.push(this)}decomposeRight(e,n){n.push(this)}applyChanges(e,n,r,c){let u=this,h=r.doc;for(let p=c.length-1;p>=0;p--){let{fromA:b,toA:y,fromB:k,toB:A}=c[p],R=u.lineAt(b,QueryType$1.ByPosNoHeight,r.setDoc(n),0,0),N=R.to>=y?R:u.lineAt(y,QueryType$1.ByPosNoHeight,r,0,0);for(A+=N.to-y,y=N.to;p>0&&R.from<=c[p-1].toA;)b=c[p-1].fromA,k=c[p-1].fromB,p--,bu*2){let p=e[n-1];p.break?e.splice(--n,1,p.left,null,p.right):e.splice(--n,1,p.left,p.right),r+=1+p.break,c-=p.size}else if(u>c*2){let p=e[r];p.break?e.splice(r,1,p.left,null,p.right):e.splice(r,1,p.left,p.right),r+=2+p.break,u-=p.size}else break;else if(c=u&&h(this.blockAt(0,r,c,u))}updateHeight(e,n=0,r=!1,c){return c&&c.from<=n&&c.more&&this.setHeight(c.heights[c.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class HeightMapText extends HeightMapBlock{constructor(e,n){super(e,n,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,n,r,c){return new BlockInfo(c,this.length,r,this.height,this.breaks)}replace(e,n,r){let c=r[0];return r.length==1&&(c instanceof HeightMapText||c instanceof HeightMapGap&&c.flags&4)&&Math.abs(this.length-c.length)<10?(c instanceof HeightMapGap?c=new HeightMapText(c.length,this.height):c.height=this.height,this.outdated||(c.outdated=!1),c):HeightMap.of(r)}updateHeight(e,n=0,r=!1,c){return c&&c.from<=n&&c.more?this.setHeight(c.heights[c.index++]):(r||this.outdated)&&this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class HeightMapGap extends HeightMap{constructor(e){super(e,0)}heightMetrics(e,n){let r=e.doc.lineAt(n).number,c=e.doc.lineAt(n+this.length).number,u=c-r+1,h,p=0;if(e.lineWrapping){let b=Math.min(this.height,e.lineHeight*u);h=b/u,this.length>u+1&&(p=(this.height-b)/(this.length-u-1))}else h=this.height/u;return{firstLine:r,lastLine:c,perLine:h,perChar:p}}blockAt(e,n,r,c){let{firstLine:u,lastLine:h,perLine:p,perChar:b}=this.heightMetrics(n,c);if(n.lineWrapping){let y=c+(e0){let u=r[r.length-1];u instanceof HeightMapGap?r[r.length-1]=new HeightMapGap(u.length+c):r.push(null,new HeightMapGap(c-1))}if(e>0){let u=r[0];u instanceof HeightMapGap?r[0]=new HeightMapGap(e+u.length):r.unshift(new HeightMapGap(e-1),null)}return HeightMap.of(r)}decomposeLeft(e,n){n.push(new HeightMapGap(e-1),null)}decomposeRight(e,n){n.push(null,new HeightMapGap(this.length-e-1))}updateHeight(e,n=0,r=!1,c){let u=n+this.length;if(c&&c.from<=n+this.length&&c.more){let h=[],p=Math.max(n,c.from),b=-1;for(c.from>n&&h.push(new HeightMapGap(c.from-n-1).updateHeight(e,n));p<=u&&c.more;){let k=e.doc.lineAt(p).length;h.length&&h.push(null);let A=c.heights[c.index++];b==-1?b=A:Math.abs(A-b)>=Epsilon&&(b=-2);let R=new HeightMapText(k,A);R.outdated=!1,h.push(R),p+=k+1}p<=u&&h.push(null,new HeightMapGap(u-p).updateHeight(e,p));let y=HeightMap.of(h);return(b<0||Math.abs(y.height-this.height)>=Epsilon||Math.abs(b-this.heightMetrics(e,n).perLine)>=Epsilon)&&(heightChangeFlag=!0),replace(this,y)}else(r||this.outdated)&&(this.setHeight(e.heightForGap(n,n+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class HeightMapBranch extends HeightMap{constructor(e,n,r){super(e.length+n+r.length,e.height+r.height,n|(e.outdated||r.outdated?2:0)),this.left=e,this.right=r,this.size=e.size+r.size}get break(){return this.flags&1}blockAt(e,n,r,c){let u=r+this.left.height;return ep))return y;let k=n==QueryType$1.ByPosNoHeight?QueryType$1.ByPosNoHeight:QueryType$1.ByPos;return b?y.join(this.right.lineAt(p,k,r,h,p)):this.left.lineAt(p,k,r,c,u).join(y)}forEachLine(e,n,r,c,u,h){let p=c+this.left.height,b=u+this.left.length+this.break;if(this.break)e=b&&this.right.forEachLine(e,n,r,p,b,h);else{let y=this.lineAt(b,QueryType$1.ByPos,r,c,u);e=e&&y.from<=n&&h(y),n>y.to&&this.right.forEachLine(y.to+1,n,r,p,b,h)}}replace(e,n,r){let c=this.left.length+this.break;if(nthis.left.length)return this.balanced(this.left,this.right.replace(e-c,n-c,r));let u=[];e>0&&this.decomposeLeft(e,u);let h=u.length;for(let p of r)u.push(p);if(e>0&&mergeGaps(u,h-1),n=r&&n.push(null)),e>r&&this.right.decomposeLeft(e-r,n)}decomposeRight(e,n){let r=this.left.length,c=r+this.break;if(e>=c)return this.right.decomposeRight(e-c,n);e2*n.size||n.size>2*e.size?HeightMap.of(this.break?[e,null,n]:[e,n]):(this.left=replace(this.left,e),this.right=replace(this.right,n),this.setHeight(e.height+n.height),this.outdated=e.outdated||n.outdated,this.size=e.size+n.size,this.length=e.length+this.break+n.length,this)}updateHeight(e,n=0,r=!1,c){let{left:u,right:h}=this,p=n+u.length+this.break,b=null;return c&&c.from<=n+u.length&&c.more?b=u=u.updateHeight(e,n,r,c):u.updateHeight(e,n,r),c&&c.from<=p+h.length&&c.more?b=h=h.updateHeight(e,p,r,c):h.updateHeight(e,p,r),b?this.balanced(u,h):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function mergeGaps(o,e){let n,r;o[e]==null&&(n=o[e-1])instanceof HeightMapGap&&(r=o[e+1])instanceof HeightMapGap&&o.splice(e-1,3,new HeightMapGap(n.length+1+r.length))}const relevantWidgetHeight=5;class NodeBuilder{constructor(e,n){this.pos=e,this.oracle=n,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,n){if(this.lineStart>-1){let r=Math.min(n,this.lineEnd),c=this.nodes[this.nodes.length-1];c instanceof HeightMapText?c.length+=r-this.pos:(r>this.pos||!this.isCovered)&&this.nodes.push(new HeightMapText(r-this.pos,-1)),this.writtenTo=r,n>r&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=n}point(e,n,r){if(e=relevantWidgetHeight)&&this.addLineDeco(c,u,h)}else n>e&&this.span(e,n);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:n}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=n,this.writtenToe&&this.nodes.push(new HeightMapText(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,n){let r=new HeightMapGap(n-e);return this.oracle.doc.lineAt(e).to==n&&(r.flags|=4),r}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof HeightMapText)return e;let n=new HeightMapText(0,-1);return this.nodes.push(n),n}addBlock(e){this.enterLine();let n=e.deco;n&&n.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,n&&n.endSide>0&&(this.covering=e)}addLineDeco(e,n,r){let c=this.ensureLine();c.length+=r,c.collapsed+=r,c.widgetHeight=Math.max(c.widgetHeight,e),c.breaks+=n,this.writtenTo=this.pos=this.pos+r}finish(e){let n=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(n instanceof HeightMapText)&&!this.isCovered?this.nodes.push(new HeightMapText(0,-1)):(this.writtenTok.clientHeight||k.scrollWidth>k.clientWidth)&&A.overflow!="visible"){let R=k.getBoundingClientRect();u=Math.max(u,R.left),h=Math.min(h,R.right),p=Math.max(p,R.top),b=Math.min(y==o.parentNode?c.innerHeight:b,R.bottom)}y=A.position=="absolute"||A.position=="fixed"?k.offsetParent:k.parentNode}else if(y.nodeType==11)y=y.host;else break;return{left:u-n.left,right:Math.max(u,h)-n.left,top:p-(n.top+e),bottom:Math.max(p,b)-(n.top+e)}}function fullPixelRange(o,e){let n=o.getBoundingClientRect();return{left:0,right:n.right-n.left,top:e,bottom:n.bottom-(n.top+e)}}class LineGap{constructor(e,n,r){this.from=e,this.to=n,this.size=r}static same(e,n){if(e.length!=n.length)return!1;for(let r=0;rtypeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new HeightOracle(n),this.stateDeco=e.facet(decorations).filter(r=>typeof r!="function"),this.heightMap=HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle.setDoc(e.doc),[new ChangedRange(0,0,0,e.doc.length)]);for(let r=0;r<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());r++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Decoration.set(this.lineGaps.map(r=>r.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:n}=this.state.selection;for(let r=0;r<=1;r++){let c=r?n.head:n.anchor;if(!e.some(({from:u,to:h})=>c>=u&&c<=h)){let{from:u,to:h}=this.lineBlockAt(c);e.push(new Viewport(u,h))}}return this.viewports=e.sort((r,c)=>r.from-c.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?IdScaler:new BigScaler(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(scaleBlock(e,this.scaler))})}update(e,n=null){this.state=e.state;let r=this.stateDeco;this.stateDeco=this.state.facet(decorations).filter(k=>typeof k!="function");let c=e.changedRanges,u=ChangedRange.extendWithRanges(c,heightRelevantDecoChanges(r,this.stateDeco,e?e.changes:ChangeSet.empty(this.state.doc.length))),h=this.heightMap.height,p=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);clearHeightChangeFlag(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),u),(this.heightMap.height!=h||heightChangeFlag)&&(e.flags|=2),p?(this.scrollAnchorPos=e.changes.mapPos(p.from,-1),this.scrollAnchorHeight=p.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let b=u.length?this.mapViewport(this.viewport,e.changes):this.viewport;(n&&(n.range.headb.to)||!this.viewportIsAppropriate(b))&&(b=this.getViewport(0,n));let y=b.from!=this.viewport.from||b.to!=this.viewport.to;this.viewport=b,e.flags|=this.updateForViewport(),(y||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(),n&&(this.scrollTarget=n),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(nativeSelectionHidden)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let n=e.contentDOM,r=window.getComputedStyle(n),c=this.heightOracle,u=r.whiteSpace;this.defaultTextDirection=r.direction=="rtl"?Direction.RTL:Direction.LTR;let h=this.heightOracle.mustRefreshForWrapping(u),p=n.getBoundingClientRect(),b=h||this.mustMeasureContent||this.contentDOMHeight!=p.height;this.contentDOMHeight=p.height,this.mustMeasureContent=!1;let y=0,k=0;if(p.width&&p.height){let{scaleX:ae,scaleY:fe}=getScale(n,p);(ae>.005&&Math.abs(this.scaleX-ae)>.005||fe>.005&&Math.abs(this.scaleY-fe)>.005)&&(this.scaleX=ae,this.scaleY=fe,y|=8,h=b=!0)}let A=(parseInt(r.paddingTop)||0)*this.scaleY,R=(parseInt(r.paddingBottom)||0)*this.scaleY;(this.paddingTop!=A||this.paddingBottom!=R)&&(this.paddingTop=A,this.paddingBottom=R,y|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(c.lineWrapping&&(b=!0),this.editorWidth=e.scrollDOM.clientWidth,y|=8);let N=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=N&&(this.scrollAnchorHeight=-1,this.scrollTop=N),this.scrolledToBottom=isScrolledToBottom(e.scrollDOM);let F=(this.printing?fullPixelRange:visiblePixelRange)(n,this.paddingTop),V=F.top-this.pixelViewport.top,W=F.bottom-this.pixelViewport.bottom;this.pixelViewport=F;let J=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(J!=this.inView&&(this.inView=J,J&&(b=!0)),!this.inView&&!this.scrollTarget)return 0;let te=p.width;if((this.contentDOMWidth!=te||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=p.width,this.editorHeight=e.scrollDOM.clientHeight,y|=8),b){let ae=e.docView.measureVisibleLineHeights(this.viewport);if(c.mustRefreshForHeights(ae)&&(h=!0),h||c.lineWrapping&&Math.abs(te-this.contentDOMWidth)>c.charWidth){let{lineHeight:fe,charWidth:_e,textHeight:ne}=e.docView.measureTextSize();h=fe>0&&c.refresh(u,fe,_e,ne,te/_e,ae),h&&(e.docView.minWidth=0,y|=8)}V>0&&W>0?k=Math.max(V,W):V<0&&W<0&&(k=Math.min(V,W)),clearHeightChangeFlag();for(let fe of this.viewports){let _e=fe.from==this.viewport.from?ae:e.docView.measureVisibleLineHeights(fe);this.heightMap=(h?HeightMap.empty().applyChanges(this.stateDeco,Text.empty,this.heightOracle,[new ChangedRange(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(c,0,h,new MeasuredHeights(fe.from,_e))}heightChangeFlag&&(y|=2)}let j=!this.viewportIsAppropriate(this.viewport,k)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return j&&(y&2&&(y|=this.updateScaler()),this.viewport=this.getViewport(k,this.scrollTarget),y|=this.updateForViewport()),(y&2||j)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(h?[]:this.lineGaps,e)),y|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),y}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,n){let r=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),c=this.heightMap,u=this.heightOracle,{visibleTop:h,visibleBottom:p}=this,b=new Viewport(c.lineAt(h-r*1e3,QueryType$1.ByHeight,u,0,0).from,c.lineAt(p+(1-r)*1e3,QueryType$1.ByHeight,u,0,0).to);if(n){let{head:y}=n.range;if(yb.to){let k=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),A=c.lineAt(y,QueryType$1.ByPos,u,0,0),R;n.y=="center"?R=(A.top+A.bottom)/2-k/2:n.y=="start"||n.y=="nearest"&&y=p+Math.max(10,Math.min(r,250)))&&c>h-2*1e3&&u>1,h=c<<1;if(this.defaultTextDirection!=Direction.LTR&&!r)return[];let p=[],b=(k,A,R,N)=>{if(A-kk&&JJ.from>=R.from&&J.to<=R.to&&Math.abs(J.from-k)J.fromte));if(!W){if(AJ.from<=A&&J.to>=A)){let J=n.moveToLineBoundary(EditorSelection.cursor(A),!1,!0).head;J>k&&(A=J)}W=new LineGap(k,A,this.gapSize(R,k,A,N))}p.push(W)},y=k=>{if(k.lengthk.from&&b(k.from,N,k,A),Fn.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let n=[];RangeSet.spans(e,this.viewport.from,this.viewport.to,{span(c,u){n.push({from:c,to:u})},point(){}},20);let r=n.length!=this.visibleRanges.length||this.visibleRanges.some((c,u)=>c.from!=n[u].from||c.to!=n[u].to);return this.visibleRanges=n,r?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(n=>n.from<=e&&n.to>=e)||scaleBlock(this.heightMap.lineAt(e,QueryType$1.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(n=>n.top<=e&&n.bottom>=e)||scaleBlock(this.heightMap.lineAt(this.scaler.fromDOM(e),QueryType$1.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let n=this.lineBlockAtHeight(e+8);return n.from>=this.viewport.from||this.viewportLines[0].top-e>200?n:this.viewportLines[0]}elementAtHeight(e){return scaleBlock(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Viewport{constructor(e,n){this.from=e,this.to=n}}function lineStructure(o,e,n){let r=[],c=o,u=0;return RangeSet.spans(n,o,e,{span(){},point(h,p){h>c&&(r.push({from:c,to:h}),u+=h-c),c=p}},20),c=1)return e[e.length-1].to;let r=Math.floor(o*n);for(let c=0;;c++){let{from:u,to:h}=e[c],p=h-u;if(r<=p)return u+r;r-=p}}function findFraction(o,e){let n=0;for(let{from:r,to:c}of o.ranges){if(e<=c){n+=e-r;break}n+=c-r}return n/o.total}function find(o,e){for(let n of o)if(e(n))return n}const IdScaler={toDOM(o){return o},fromDOM(o){return o},scale:1,eq(o){return o==this}};class BigScaler{constructor(e,n,r){let c=0,u=0,h=0;this.viewports=r.map(({from:p,to:b})=>{let y=n.lineAt(p,QueryType$1.ByPos,e,0,0).top,k=n.lineAt(b,QueryType$1.ByPos,e,0,0).bottom;return c+=k-y,{from:p,to:b,top:y,bottom:k,domTop:0,domBottom:0}}),this.scale=(7e6-c)/(n.height-c);for(let p of this.viewports)p.domTop=h+(p.top-u)*this.scale,h=p.domBottom=p.domTop+(p.bottom-p.top),u=p.bottom}toDOM(e){for(let n=0,r=0,c=0;;n++){let u=nn.from==e.viewports[r].from&&n.to==e.viewports[r].to):!1}}function scaleBlock(o,e){if(e.scale==1)return o;let n=e.toDOM(o.top),r=e.toDOM(o.bottom);return new BlockInfo(o.from,o.length,n,r-n,Array.isArray(o._content)?o._content.map(c=>scaleBlock(c,e)):o._content)}const theme=Facet.define({combine:o=>o.join(" ")}),darkTheme=Facet.define({combine:o=>o.indexOf(!0)>-1}),baseThemeID=StyleModule.newName(),baseLightID=StyleModule.newName(),baseDarkID=StyleModule.newName(),lightDarkIDs={"&light":"."+baseLightID,"&dark":"."+baseDarkID};function buildTheme(o,e,n){return new StyleModule(e,{finish(r){return/&/.test(r)?r.replace(/&\w*/,c=>{if(c=="&")return o;if(!n||!n[c])throw new RangeError(`Unsupported selector: ${c}`);return n[c]}):o+" "+r}})}const baseTheme$1$3=buildTheme("."+baseThemeID,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},lightDarkIDs),observeOptions={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},useCharData=browser.ie&&browser.ie_version<=11;class DOMObserver{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new DOMSelectionState,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(n=>{for(let r of n)this.queue.push(r);(browser.ie&&browser.ie_version<=11||browser.ios&&e.composing)&&n.some(r=>r.type=="childList"&&r.removedNodes.length||r.type=="characterData"&&r.oldValue.length>r.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&e.constructor.EDIT_CONTEXT!==!1&&!(browser.chrome&&browser.chrome_version<126)&&(this.editContext=new EditContextManager(e),e.state.facet(editable)&&(e.contentDOM.editContext=this.editContext.editContext)),useCharData&&(this.onCharData=n=>{this.queue.push({target:n.target,type:"characterData",oldValue:n.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var n;((n=this.view.docView)===null||n===void 0?void 0:n.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),n.length>0&&n[n.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(n=>{n.length>0&&n[n.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((n,r)=>n!=e[r]))){this.gapIntersection.disconnect();for(let n of e)this.gapIntersection.observe(n);this.gaps=e}}onSelectionChange(e){let n=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:r}=this,c=this.selectionRange;if(r.state.facet(editable)?r.root.activeElement!=this.dom:!hasSelection(r.dom,c))return;let u=c.anchorNode&&r.docView.nearest(c.anchorNode);if(u&&u.ignoreEvent(e)){n||(this.selectionChanged=!1);return}(browser.ie&&browser.ie_version<=11||browser.android&&browser.chrome)&&!r.state.selection.main.empty&&c.focusNode&&isEquivalentPosition(c.focusNode,c.focusOffset,c.anchorNode,c.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,n=getSelection(e.root);if(!n)return!1;let r=browser.safari&&e.root.nodeType==11&&deepActiveElement(this.dom.ownerDocument)==this.dom&&safariSelectionRangeHack(this.view,n)||n;if(!r||this.selectionRange.eq(r))return!1;let c=hasSelection(this.dom,r);return c&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let u=this.delayedAndroidKey;u&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=u.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&u.force&&dispatchKey(this.dom,u.key,u.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(c)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:n,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let n=-1,r=-1,c=!1;for(let u of e){let h=this.readMutation(u);h&&(h.typeOver&&(c=!0),n==-1?{from:n,to:r}=h:(n=Math.min(h.from,n),r=Math.max(h.to,r)))}return{from:n,to:r,typeOver:c}}readChange(){let{from:e,to:n,typeOver:r}=this.processRecords(),c=this.selectionChanged&&hasSelection(this.dom,this.selectionRange);if(e<0&&!c)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let u=new DOMChange(this.view,e,n,r);return this.view.docView.domChanged={newSel:u.newSel?u.newSel.main:null},u}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let n=this.readChange();if(!n)return this.view.requestMeasure(),!1;let r=this.view.state,c=applyDOMChange(this.view,n);return this.view.state==r&&(n.domChanged||n.newSel&&!n.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),c}readMutation(e){let n=this.view.docView.nearest(e.target);if(!n||n.ignoreMutation(e))return null;if(n.markDirty(e.type=="attributes"),e.type=="attributes"&&(n.flags|=4),e.type=="childList"){let r=findChild(n,e.previousSibling||e.target.previousSibling,-1),c=findChild(n,e.nextSibling||e.target.nextSibling,1);return{from:r?n.posAfter(r):n.posAtStart,to:c?n.posBefore(c):n.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(editable)!=e.state.facet(editable)&&(e.view.contentDOM.editContext=e.state.facet(editable)?this.editContext.editContext:null))}destroy(){var e,n,r;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(n=this.gapIntersection)===null||n===void 0||n.disconnect(),(r=this.resizeScroll)===null||r===void 0||r.disconnect();for(let c of this.scrollTargets)c.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function findChild(o,e,n){for(;e;){let r=ContentView.get(e);if(r&&r.parent==o)return r;let c=e.parentNode;e=c!=o.dom?c:n>0?e.nextSibling:e.previousSibling}return null}function buildSelectionRangeFromRange(o,e){let n=e.startContainer,r=e.startOffset,c=e.endContainer,u=e.endOffset,h=o.docView.domAtPos(o.state.selection.main.anchor);return isEquivalentPosition(h.node,h.offset,c,u)&&([n,r,c,u]=[c,u,n,r]),{anchorNode:n,anchorOffset:r,focusNode:c,focusOffset:u}}function safariSelectionRangeHack(o,e){if(e.getComposedRanges){let c=e.getComposedRanges(o.root)[0];if(c)return buildSelectionRangeFromRange(o,c)}let n=null;function r(c){c.preventDefault(),c.stopImmediatePropagation(),n=c.getTargetRanges()[0]}return o.contentDOM.addEventListener("beforeinput",r,!0),o.dom.ownerDocument.execCommand("indent"),o.contentDOM.removeEventListener("beforeinput",r,!0),n?buildSelectionRangeFromRange(o,n):null}class EditContextManager{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.resetRange(e.state);let n=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=r=>{let{anchor:c}=e.state.selection.main,u={from:this.toEditorPos(r.updateRangeStart),to:this.toEditorPos(r.updateRangeEnd),insert:Text.of(r.text.split(` -`))};u.from==this.from&&cthis.to&&(u.to=c),!(u.from==u.to&&!u.insert.length)&&(this.pendingContextChange=u,e.state.readOnly||applyDOMChangeInner(e,u,EditorSelection.single(this.toEditorPos(r.selectionStart),this.toEditorPos(r.selectionEnd))),this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)))},this.handlers.characterboundsupdate=r=>{let c=[],u=null;for(let h=this.toEditorPos(r.rangeStart),p=this.toEditorPos(r.rangeEnd);h{let c=[];for(let u of r.getTextFormats()){let h=u.underlineStyle,p=u.underlineThickness;if(h!="None"&&p!="None"){let b=`text-decoration: underline ${h=="Dashed"?"dashed ":h=="Squiggle"?"wavy ":""}${p=="Thin"?1:2}px`;c.push(Decoration.mark({attributes:{style:b}}).range(this.toEditorPos(u.rangeStart),this.toEditorPos(u.rangeEnd)))}}e.dispatch({effects:setEditContextFormatting.of(Decoration.set(c))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{e.inputState.composing=-1,e.inputState.compositionFirstChange=null};for(let r in this.handlers)n.addEventListener(r,this.handlers[r]);this.measureReq={read:r=>{this.editContext.updateControlBounds(r.contentDOM.getBoundingClientRect());let c=getSelection(r.root);c&&c.rangeCount&&this.editContext.updateSelectionBounds(c.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let n=0,r=!1,c=this.pendingContextChange;return e.changes.iterChanges((u,h,p,b,y)=>{if(r)return;let k=y.length-(h-u);if(c&&h>=c.to)if(c.from==u&&c.to==h&&c.insert.eq(y)){c=this.pendingContextChange=null,n+=k,this.to+=k;return}else c=null,this.revertPending(e.state);if(u+=n,h+=n,h<=this.from)this.from+=k,this.to+=k;else if(uthis.to||this.to-this.from+y.length>3e4){r=!0;return}this.editContext.updateText(this.toContextPos(u),this.toContextPos(h),y.toString()),this.to+=k}n+=k}),c&&!r&&this.revertPending(e.state),!r}update(e){let n=this.pendingContextChange;!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.resetRange(e.state),this.editContext.updateText(0,this.editContext.text.length,e.state.doc.sliceString(this.from,this.to)),this.setSelection(e.state)):(e.docChanged||e.selectionSet||n)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:n}=e.selection.main;this.from=Math.max(0,n-1e4),this.to=Math.min(e.doc.length,n+1e4)}revertPending(e){let n=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(n.from),this.toContextPos(n.from+n.insert.length),e.doc.sliceString(n.from,n.to))}setSelection(e){let{main:n}=e.selection,r=this.toContextPos(Math.max(this.from,Math.min(this.to,n.anchor))),c=this.toContextPos(n.head);(this.editContext.selectionStart!=r||this.editContext.selectionEnd!=c)&&this.editContext.updateSelection(r,c)}rangeIsValid(e){let{head:n}=e.selection.main;return!(this.from>0&&n-this.from<500||this.to1e4*3)}toEditorPos(e){return e+this.from}toContextPos(e){return e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class EditorView{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var n;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:r}=e;this.dispatchTransactions=e.dispatchTransactions||r&&(c=>c.forEach(u=>r(u,this)))||(c=>this.update(c)),this.dispatch=this.dispatch.bind(this),this._root=e.root||getRoot(e.parent)||document,this.viewState=new ViewState(e.state||EditorState.create(e)),e.scrollTo&&e.scrollTo.is(scrollIntoView$1)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(viewPlugin).map(c=>new PluginInstance(c));for(let c of this.plugins)c.update(this);this.observer=new DOMObserver(this),this.inputState=new InputState(this),this.inputState.ensureHandlers(this.plugins),this.docView=new DocView(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((n=document.fonts)===null||n===void 0)&&n.ready&&document.fonts.ready.then(()=>this.requestMeasure())}dispatch(...e){let n=e.length==1&&e[0]instanceof Transaction?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(n,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let n=!1,r=!1,c,u=this.state;for(let R of e){if(R.startState!=u)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");u=R.state}if(this.destroyed){this.viewState.state=u;return}let h=this.hasFocus,p=0,b=null;e.some(R=>R.annotation(isFocusChange))?(this.inputState.notifiedFocused=h,p=1):h!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=h,b=focusChangeTransaction(u,h),b||(p=1));let y=this.observer.delayedAndroidKey,k=null;if(y?(this.observer.clearDelayedAndroidKey(),k=this.observer.readChange(),(k&&!this.state.doc.eq(u.doc)||!this.state.selection.eq(u.selection))&&(k=null)):this.observer.clear(),u.facet(EditorState.phrases)!=this.state.facet(EditorState.phrases))return this.setState(u);c=ViewUpdate.create(this,u,e),c.flags|=p;let A=this.viewState.scrollTarget;try{this.updateState=2;for(let R of e){if(A&&(A=A.map(R.changes)),R.scrollIntoView){let{main:N}=R.state.selection;A=new ScrollTarget(N.empty?N:EditorSelection.cursor(N.head,N.head>N.anchor?-1:1))}for(let N of R.effects)N.is(scrollIntoView$1)&&(A=N.value.clip(this.state))}this.viewState.update(c,A),this.bidiCache=CachedOrder.update(this.bidiCache,c.changes),c.empty||(this.updatePlugins(c),this.inputState.update(c)),n=this.docView.update(c),this.state.facet(styleModule)!=this.styleModules&&this.mountStyles(),r=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(n,e.some(R=>R.isUserEvent("select.pointer")))}finally{this.updateState=0}if(c.startState.facet(theme)!=c.state.facet(theme)&&(this.viewState.mustMeasureContent=!0),(n||r||A||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),n&&this.docViewUpdate(),!c.empty)for(let R of this.state.facet(updateListener))try{R(c)}catch(N){logException(this.state,N,"update listener")}(b||k)&&Promise.resolve().then(()=>{b&&this.state==b.startState&&this.dispatch(b),k&&!applyDOMChange(this,k)&&y.force&&dispatchKey(this.contentDOM,y.key,y.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let n=this.hasFocus;try{for(let r of this.plugins)r.destroy(this);this.viewState=new ViewState(e),this.plugins=e.facet(viewPlugin).map(r=>new PluginInstance(r)),this.pluginMap.clear();for(let r of this.plugins)r.update(this);this.docView.destroy(),this.docView=new DocView(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}n&&this.focus(),this.requestMeasure()}updatePlugins(e){let n=e.startState.facet(viewPlugin),r=e.state.facet(viewPlugin);if(n!=r){let c=[];for(let u of r){let h=n.indexOf(u);if(h<0)c.push(new PluginInstance(u));else{let p=this.plugins[h];p.mustUpdate=e,c.push(p)}}for(let u of this.plugins)u.mustUpdate!=e&&u.destroy(this);this.plugins=c,this.pluginMap.clear()}else for(let c of this.plugins)c.mustUpdate=e;for(let c=0;c-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let n=null,r=this.scrollDOM,c=r.scrollTop*this.scaleY,{scrollAnchorPos:u,scrollAnchorHeight:h}=this.viewState;Math.abs(c-this.viewState.scrollTop)>1&&(h=-1),this.viewState.scrollAnchorHeight=-1;try{for(let p=0;;p++){if(h<0)if(isScrolledToBottom(r))u=-1,h=this.viewState.heightMap.height;else{let N=this.viewState.scrollAnchorAt(c);u=N.from,h=N.top}this.updateState=1;let b=this.viewState.measure(this);if(!b&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(p>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let y=[];b&4||([this.measureRequests,y]=[y,this.measureRequests]);let k=y.map(N=>{try{return N.read(this)}catch(F){return logException(this.state,F),BadMeasure}}),A=ViewUpdate.create(this,this.state,[]),R=!1;A.flags|=b,n?n.flags|=b:n=A,this.updateState=2,A.empty||(this.updatePlugins(A),this.inputState.update(A),this.updateAttrs(),R=this.docView.update(A),R&&this.docViewUpdate());for(let N=0;N1||F<-1){c=c+F,r.scrollTop=c/this.scaleY,h=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(n&&!n.empty)for(let p of this.state.facet(updateListener))p(n)}get themeClasses(){return baseThemeID+" "+(this.state.facet(darkTheme)?baseDarkID:baseLightID)+" "+this.state.facet(theme)}updateAttrs(){let e=attrsFromFacet(this,editorAttributes,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),n={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(editable)?"true":"false",class:"cm-content",style:`${browser.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(n["aria-readonly"]="true"),attrsFromFacet(this,contentAttributes,n);let r=this.observer.ignore(()=>{let c=updateAttrs(this.contentDOM,this.contentAttrs,n),u=updateAttrs(this.dom,this.editorAttrs,e);return c||u});return this.editorAttrs=e,this.contentAttrs=n,r}showAnnouncements(e){let n=!0;for(let r of e)for(let c of r.effects)if(c.is(EditorView.announce)){n&&(this.announceDOM.textContent=""),n=!1;let u=this.announceDOM.appendChild(document.createElement("div"));u.textContent=c.value}}mountStyles(){this.styleModules=this.state.facet(styleModule);let e=this.state.facet(EditorView.cspNonce);StyleModule.mount(this.root,this.styleModules.concat(baseTheme$1$3).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let n=0;nr.spec==e)||null),n&&n.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,n,r){return skipAtoms(this,e,moveByChar(this,e,n,r))}moveByGroup(e,n){return skipAtoms(this,e,moveByChar(this,e,n,r=>byGroup(this,e.head,r)))}visualLineSide(e,n){let r=this.bidiSpans(e),c=this.textDirectionAt(e.from),u=r[n?r.length-1:0];return EditorSelection.cursor(u.side(n,c)+e.from,u.forward(!n,c)?1:-1)}moveToLineBoundary(e,n,r=!0){return moveToLineBoundary(this,e,n,r)}moveVertically(e,n,r){return skipAtoms(this,e,moveVertically(this,e,n,r))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,n=0){return this.docView.posFromDOM(e,n)}posAtCoords(e,n=!0){return this.readMeasured(),posAtCoords(this,e,n)}coordsAtPos(e,n=1){this.readMeasured();let r=this.docView.coordsAt(e,n);if(!r||r.left==r.right)return r;let c=this.state.doc.lineAt(e),u=this.bidiSpans(c),h=u[BidiSpan.find(u,e-c.from,-1,n)];return flattenRect(r,h.dir==Direction.LTR==n>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(perLineTextDirection)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>MaxBidiLine)return trivialOrder(e.length);let n=this.textDirectionAt(e.from),r;for(let u of this.bidiCache)if(u.from==e.from&&u.dir==n&&(u.fresh||isolatesEq(u.isolates,r=getIsolatedRanges(this,e))))return u.order;r||(r=getIsolatedRanges(this,e));let c=computeOrder(e.text,n,r);return this.bidiCache.push(new CachedOrder(e.from,e.to,n,r,!0,c)),c}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||browser.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{focusPreventScroll(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,n={}){return scrollIntoView$1.of(new ScrollTarget(typeof e=="number"?EditorSelection.cursor(e):e,n.y,n.x,n.yMargin,n.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:n}=this.scrollDOM,r=this.viewState.scrollAnchorAt(e);return scrollIntoView$1.of(new ScrollTarget(EditorSelection.cursor(r.from),"start","start",r.top-e,n,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return ViewPlugin.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return ViewPlugin.define(()=>({}),{eventObservers:e})}static theme(e,n){let r=StyleModule.newName(),c=[theme.of(r),styleModule.of(buildTheme(`.${r}`,e))];return n&&n.dark&&c.push(darkTheme.of(!0)),c}static baseTheme(e){return Prec.lowest(styleModule.of(buildTheme("."+baseThemeID,e,lightDarkIDs)))}static findFromDOM(e){var n;let r=e.querySelector(".cm-content"),c=r&&ContentView.get(r)||ContentView.get(e);return((n=c==null?void 0:c.rootView)===null||n===void 0?void 0:n.view)||null}}EditorView.styleModule=styleModule;EditorView.inputHandler=inputHandler$1;EditorView.scrollHandler=scrollHandler;EditorView.focusChangeEffect=focusChangeEffect;EditorView.perLineTextDirection=perLineTextDirection;EditorView.exceptionSink=exceptionSink;EditorView.updateListener=updateListener;EditorView.editable=editable;EditorView.mouseSelectionStyle=mouseSelectionStyle;EditorView.dragMovesSelection=dragMovesSelection$1;EditorView.clickAddsSelectionRange=clickAddsSelectionRange;EditorView.decorations=decorations;EditorView.outerDecorations=outerDecorations;EditorView.atomicRanges=atomicRanges;EditorView.bidiIsolatedRanges=bidiIsolatedRanges;EditorView.scrollMargins=scrollMargins;EditorView.darkTheme=darkTheme;EditorView.cspNonce=Facet.define({combine:o=>o.length?o[0]:""});EditorView.contentAttributes=contentAttributes;EditorView.editorAttributes=editorAttributes;EditorView.lineWrapping=EditorView.contentAttributes.of({class:"cm-lineWrapping"});EditorView.announce=StateEffect.define();const MaxBidiLine=4096,BadMeasure={};class CachedOrder{constructor(e,n,r,c,u,h){this.from=e,this.to=n,this.dir=r,this.isolates=c,this.fresh=u,this.order=h}static update(e,n){if(n.empty&&!e.some(u=>u.fresh))return e;let r=[],c=e.length?e[e.length-1].dir:Direction.LTR;for(let u=Math.max(0,e.length-10);u=0;c--){let u=r[c],h=typeof u=="function"?u(o):u;h&&combineAttrs(h,n)}return n}const currentPlatform=browser.mac?"mac":browser.windows?"win":browser.linux?"linux":"key";function normalizeKeyName(o,e){const n=o.split(/-(?!$)/);let r=n[n.length-1];r=="Space"&&(r=" ");let c,u,h,p;for(let b=0;br.concat(c),[]))),n}function runScopeHandlers(o,e,n){return runHandlers(getKeymap(o.state),e,o,n)}let storedPrefix=null;const PrefixTimeout=4e3;function buildKeymap(o,e=currentPlatform){let n=Object.create(null),r=Object.create(null),c=(h,p)=>{let b=r[h];if(b==null)r[h]=p;else if(b!=p)throw new Error("Key binding "+h+" is used both as a regular binding and as a multi-stroke prefix")},u=(h,p,b,y,k)=>{var A,R;let N=n[h]||(n[h]=Object.create(null)),F=p.split(/ (?!$)/).map(J=>normalizeKeyName(J,e));for(let J=1;J{let ae=storedPrefix={view:j,prefix:te,scope:h};return setTimeout(()=>{storedPrefix==ae&&(storedPrefix=null)},PrefixTimeout),!0}]})}let V=F.join(" ");c(V,!1);let W=N[V]||(N[V]={preventDefault:!1,stopPropagation:!1,run:((R=(A=N._any)===null||A===void 0?void 0:A.run)===null||R===void 0?void 0:R.slice())||[]});b&&W.run.push(b),y&&(W.preventDefault=!0),k&&(W.stopPropagation=!0)};for(let h of o){let p=h.scope?h.scope.split(" "):["editor"];if(h.any)for(let y of p){let k=n[y]||(n[y]=Object.create(null));k._any||(k._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:A}=h;for(let R in k)k[R].run.push(N=>A(N,currentKeyEvent))}let b=h[e]||h.key;if(b)for(let y of p)u(y,b,h.run,h.preventDefault,h.stopPropagation),h.shift&&u(y,"Shift-"+b,h.shift,h.preventDefault,h.stopPropagation)}return n}let currentKeyEvent=null;function runHandlers(o,e,n,r){currentKeyEvent=e;let c=keyName(e),u=codePointAt(c,0),h=codePointSize(u)==c.length&&c!=" ",p="",b=!1,y=!1,k=!1;storedPrefix&&storedPrefix.view==n&&storedPrefix.scope==r&&(p=storedPrefix.prefix+" ",modifierCodes.indexOf(e.keyCode)<0&&(y=!0,storedPrefix=null));let A=new Set,R=W=>{if(W){for(let J of W.run)if(!A.has(J)&&(A.add(J),J(n)))return W.stopPropagation&&(k=!0),!0;W.preventDefault&&(W.stopPropagation&&(k=!0),y=!0)}return!1},N=o[r],F,V;return N&&(R(N[p+modifiers(c,e,!h)])?b=!0:h&&(e.altKey||e.metaKey||e.ctrlKey)&&!(browser.windows&&e.ctrlKey&&e.altKey)&&(F=base[e.keyCode])&&F!=c?(R(N[p+modifiers(F,e,!0)])||e.shiftKey&&(V=shift[e.keyCode])!=c&&V!=F&&R(N[p+modifiers(V,e,!1)]))&&(b=!0):h&&e.shiftKey&&R(N[p+modifiers(c,e,!0)])&&(b=!0),!b&&R(N._any)&&(b=!0)),y&&(b=!0),b&&k&&e.stopPropagation(),currentKeyEvent=null,b}class RectangleMarker{constructor(e,n,r,c,u){this.className=e,this.left=n,this.top=r,this.width=c,this.height=u}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,n){return n.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,n,r){if(r.empty){let c=e.coordsAtPos(r.head,r.assoc||1);if(!c)return[];let u=getBase(e);return[new RectangleMarker(n,c.left-u.left,c.top-u.top,null,c.bottom-c.top)]}else return rectanglesForRange(e,n,r)}}function getBase(o){let e=o.scrollDOM.getBoundingClientRect();return{left:(o.textDirection==Direction.LTR?e.left:e.right-o.scrollDOM.clientWidth*o.scaleX)-o.scrollDOM.scrollLeft*o.scaleX,top:e.top-o.scrollDOM.scrollTop*o.scaleY}}function wrappedLine(o,e,n,r){let c=o.coordsAtPos(e,n*2);if(!c)return r;let u=o.dom.getBoundingClientRect(),h=(c.top+c.bottom)/2,p=o.posAtCoords({x:u.left+1,y:h}),b=o.posAtCoords({x:u.right-1,y:h});return p==null||b==null?r:{from:Math.max(r.from,Math.min(p,b)),to:Math.min(r.to,Math.max(p,b))}}function rectanglesForRange(o,e,n){if(n.to<=o.viewport.from||n.from>=o.viewport.to)return[];let r=Math.max(n.from,o.viewport.from),c=Math.min(n.to,o.viewport.to),u=o.textDirection==Direction.LTR,h=o.contentDOM,p=h.getBoundingClientRect(),b=getBase(o),y=h.querySelector(".cm-line"),k=y&&window.getComputedStyle(y),A=p.left+(k?parseInt(k.paddingLeft)+Math.min(0,parseInt(k.textIndent)):0),R=p.right-(k?parseInt(k.paddingRight):0),N=blockAt(o,r),F=blockAt(o,c),V=N.type==BlockType.Text?N:null,W=F.type==BlockType.Text?F:null;if(V&&(o.lineWrapping||N.widgetLineBreaks)&&(V=wrappedLine(o,r,1,V)),W&&(o.lineWrapping||F.widgetLineBreaks)&&(W=wrappedLine(o,c,-1,W)),V&&W&&V.from==W.from&&V.to==W.to)return te(j(n.from,n.to,V));{let fe=V?j(n.from,null,V):ae(N,!1),_e=W?j(null,n.to,W):ae(F,!0),ne=[];return(V||N).to<(W||F).from-(V&&W?1:0)||N.widgetLineBreaks>1&&fe.bottom+o.defaultLineHeight/2<_e.top?ne.push(J(A,fe.bottom,R,_e.top)):fe.bottom<_e.top&&o.elementAtHeight((fe.bottom+_e.top)/2).type==BlockType.Text&&(fe.bottom=_e.top=(fe.bottom+_e.top)/2),te(fe).concat(ne).concat(te(_e))}function J(fe,_e,ne,Se){return new RectangleMarker(e,fe-b.left,_e-b.top-.01,ne-fe,Se-_e+.01)}function te({top:fe,bottom:_e,horizontal:ne}){let Se=[];for(let De=0;DeOe&&Tt.from=q)break;Rt>St&&Te(Math.max(mn,St),fe==null&&mn<=Oe,Math.min(Rt,q),_e==null&&Rt>=yt,je.dir)}if(St=Le.to+1,St>=q)break}return Be.length==0&&Te(Oe,fe==null,yt,_e==null,o.textDirection),{top:Se,bottom:De,horizontal:Be}}function ae(fe,_e){let ne=p.top+(_e?fe.top:fe.bottom);return{top:ne,bottom:ne,horizontal:[]}}}function sameMarker(o,e){return o.constructor==e.constructor&&o.eq(e)}class LayerView{constructor(e,n){this.view=e,this.layer=n,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),n.above&&this.dom.classList.add("cm-layer-above"),n.class&&this.dom.classList.add(n.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),n.mount&&n.mount(this.dom,e)}update(e){e.startState.facet(layerOrder)!=e.state.facet(layerOrder)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let n=0,r=e.facet(layerOrder);for(;n!sameMarker(n,this.drawn[r]))){let n=this.dom.firstChild,r=0;for(let c of e)c.update&&n&&c.constructor&&this.drawn[r].constructor&&c.update(n,this.drawn[r])?(n=n.nextSibling,r++):this.dom.insertBefore(c.draw(),n);for(;n;){let c=n.nextSibling;n.remove(),n=c}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const layerOrder=Facet.define();function layer(o){return[ViewPlugin.define(e=>new LayerView(e,o)),layerOrder.of(o)]}const CanHidePrimary=!browser.ios,selectionConfig=Facet.define({combine(o){return combineConfig(o,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,n)=>Math.min(e,n),drawRangeCursor:(e,n)=>e||n})}});function drawSelection(o={}){return[selectionConfig.of(o),cursorLayer,selectionLayer,hideNativeSelection,nativeSelectionHidden.of(!0)]}function configChanged(o){return o.startState.facet(selectionConfig)!=o.state.facet(selectionConfig)}const cursorLayer=layer({above:!0,markers(o){let{state:e}=o,n=e.facet(selectionConfig),r=[];for(let c of e.selection.ranges){let u=c==e.selection.main;if(c.empty?!u||CanHidePrimary:n.drawRangeCursor){let h=u?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",p=c.empty?c:EditorSelection.cursor(c.head,c.head>c.anchor?-1:1);for(let b of RectangleMarker.forRange(o,h,p))r.push(b)}}return r},update(o,e){o.transactions.some(r=>r.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let n=configChanged(o);return n&&setBlinkRate(o.state,e),o.docChanged||o.selectionSet||n},mount(o,e){setBlinkRate(e.state,o)},class:"cm-cursorLayer"});function setBlinkRate(o,e){e.style.animationDuration=o.facet(selectionConfig).cursorBlinkRate+"ms"}const selectionLayer=layer({above:!1,markers(o){return o.state.selection.ranges.map(e=>e.empty?[]:RectangleMarker.forRange(o,"cm-selectionBackground",e)).reduce((e,n)=>e.concat(n))},update(o,e){return o.docChanged||o.selectionSet||o.viewportChanged||configChanged(o)},class:"cm-selectionLayer"}),themeSpec={".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"}},".cm-content":{"& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}};CanHidePrimary&&(themeSpec[".cm-line"].caretColor=themeSpec[".cm-content"].caretColor="transparent !important");const hideNativeSelection=Prec.highest(EditorView.theme(themeSpec)),setDropCursorPos=StateEffect.define({map(o,e){return o==null?null:e.mapPos(o)}}),dropCursorPos=StateField.define({create(){return null},update(o,e){return o!=null&&(o=e.changes.mapPos(o)),e.effects.reduce((n,r)=>r.is(setDropCursorPos)?r.value:n,o)}}),drawDropCursor=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(o){var e;let n=o.state.field(dropCursorPos);n==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(o.startState.field(dropCursorPos)!=n||o.docChanged||o.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:o}=this,e=o.state.field(dropCursorPos),n=e!=null&&o.coordsAtPos(e);if(!n)return null;let r=o.scrollDOM.getBoundingClientRect();return{left:n.left-r.left+o.scrollDOM.scrollLeft*o.scaleX,top:n.top-r.top+o.scrollDOM.scrollTop*o.scaleY,height:n.bottom-n.top}}drawCursor(o){if(this.cursor){let{scaleX:e,scaleY:n}=this.view;o?(this.cursor.style.left=o.left/e+"px",this.cursor.style.top=o.top/n+"px",this.cursor.style.height=o.height/n+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(o){this.view.state.field(dropCursorPos)!=o&&this.view.dispatch({effects:setDropCursorPos.of(o)})}},{eventObservers:{dragover(o){this.setDropPos(this.view.posAtCoords({x:o.clientX,y:o.clientY}))},dragleave(o){(o.target==this.view.contentDOM||!this.view.contentDOM.contains(o.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function dropCursor(){return[dropCursorPos,drawDropCursor]}function iterMatches(o,e,n,r,c){e.lastIndex=0;for(let u=o.iterRange(n,r),h=n,p;!u.next().done;h+=u.value.length)if(!u.lineBreak)for(;p=e.exec(u.value);)c(h+p.index,p)}function matchRanges(o,e){let n=o.visibleRanges;if(n.length==1&&n[0].from==o.viewport.from&&n[0].to==o.viewport.to)return n;let r=[];for(let{from:c,to:u}of n)c=Math.max(o.state.doc.lineAt(c).from,c-e),u=Math.min(o.state.doc.lineAt(u).to,u+e),r.length&&r[r.length-1].to>=c?r[r.length-1].to=u:r.push({from:c,to:u});return r}class MatchDecorator{constructor(e){const{regexp:n,decoration:r,decorate:c,boundary:u,maxLength:h=1e3}=e;if(!n.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=n,c)this.addMatch=(p,b,y,k)=>c(k,y,y+p[0].length,p,b);else if(typeof r=="function")this.addMatch=(p,b,y,k)=>{let A=r(p,b,y);A&&k(y,y+p[0].length,A)};else if(r)this.addMatch=(p,b,y,k)=>k(y,y+p[0].length,r);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=u,this.maxLength=h}createDeco(e){let n=new RangeSetBuilder,r=n.add.bind(n);for(let{from:c,to:u}of matchRanges(e,this.maxLength))iterMatches(e.state.doc,this.regexp,c,u,(h,p)=>this.addMatch(p,e,h,r));return n.finish()}updateDeco(e,n){let r=1e9,c=-1;return e.docChanged&&e.changes.iterChanges((u,h,p,b)=>{b>e.view.viewport.from&&p1e3?this.createDeco(e.view):c>-1?this.updateRange(e.view,n.map(e.changes),r,c):n}updateRange(e,n,r,c){for(let u of e.visibleRanges){let h=Math.max(u.from,r),p=Math.min(u.to,c);if(p>h){let b=e.state.doc.lineAt(h),y=b.tob.from;h--)if(this.boundary.test(b.text[h-1-b.from])){k=h;break}for(;pR.push(J.range(V,W));if(b==y)for(this.regexp.lastIndex=k-b.from;(N=this.regexp.exec(b.text))&&N.indexthis.addMatch(W,e,V,F));n=n.update({filterFrom:k,filterTo:A,filter:(V,W)=>VA,add:R})}}return n}}const UnicodeRegexpSupport=/x/.unicode!=null?"gu":"g",Specials=new RegExp(`[\0-\b ---Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,UnicodeRegexpSupport),Names={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let _supportsTabSize=null;function supportsTabSize(){var o;if(_supportsTabSize==null&&typeof document<"u"&&document.body){let e=document.body.style;_supportsTabSize=((o=e.tabSize)!==null&&o!==void 0?o:e.MozTabSize)!=null}return _supportsTabSize||!1}const specialCharConfig=Facet.define({combine(o){let e=combineConfig(o,{render:null,specialChars:Specials,addSpecialChars:null});return(e.replaceTabs=!supportsTabSize())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,UnicodeRegexpSupport)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,UnicodeRegexpSupport)),e}});function highlightSpecialChars(o={}){return[specialCharConfig.of(o),specialCharPlugin()]}let _plugin=null;function specialCharPlugin(){return _plugin||(_plugin=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.decorations=Decoration.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(o.state.facet(specialCharConfig)),this.decorations=this.decorator.createDeco(o)}makeDecorator(o){return new MatchDecorator({regexp:o.specialChars,decoration:(e,n,r)=>{let{doc:c}=n.state,u=codePointAt(e[0],0);if(u==9){let h=c.lineAt(r),p=n.state.tabSize,b=countColumn(h.text,p,r-h.from);return Decoration.replace({widget:new TabWidget((p-b%p)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[u]||(this.decorationCache[u]=Decoration.replace({widget:new SpecialCharWidget(o,u)}))},boundary:o.replaceTabs?void 0:/[^]/})}update(o){let e=o.state.facet(specialCharConfig);o.startState.facet(specialCharConfig)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(o.view)):this.decorations=this.decorator.updateDeco(o,this.decorations)}},{decorations:o=>o.decorations}))}const DefaultPlaceholder="•";function placeholder$1(o){return o>=32?DefaultPlaceholder:o==10?"␤":String.fromCharCode(9216+o)}class SpecialCharWidget extends WidgetType{constructor(e,n){super(),this.options=e,this.code=n}eq(e){return e.code==this.code}toDOM(e){let n=placeholder$1(this.code),r=e.state.phrase("Control character")+" "+(Names[this.code]||"0x"+this.code.toString(16)),c=this.options.render&&this.options.render(this.code,r,n);if(c)return c;let u=document.createElement("span");return u.textContent=n,u.title=r,u.setAttribute("aria-label",r),u.className="cm-specialChar",u}ignoreEvent(){return!1}}class TabWidget extends WidgetType{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function highlightActiveLine(){return activeLineHighlighter}const lineDeco=Decoration.line({class:"cm-activeLine"}),activeLineHighlighter=ViewPlugin.fromClass(class{constructor(o){this.decorations=this.getDeco(o)}update(o){(o.docChanged||o.selectionSet)&&(this.decorations=this.getDeco(o.view))}getDeco(o){let e=-1,n=[];for(let r of o.state.selection.ranges){let c=o.lineBlockAt(r.head);c.from>e&&(n.push(lineDeco.range(c.from)),e=c.from)}return Decoration.set(n)}},{decorations:o=>o.decorations}),MaxOff=2e3;function rectangleFor(o,e,n){let r=Math.min(e.line,n.line),c=Math.max(e.line,n.line),u=[];if(e.off>MaxOff||n.off>MaxOff||e.col<0||n.col<0){let h=Math.min(e.off,n.off),p=Math.max(e.off,n.off);for(let b=r;b<=c;b++){let y=o.doc.line(b);y.length<=p&&u.push(EditorSelection.range(y.from+h,y.to+p))}}else{let h=Math.min(e.col,n.col),p=Math.max(e.col,n.col);for(let b=r;b<=c;b++){let y=o.doc.line(b),k=findColumn(y.text,h,o.tabSize,!0);if(k<0)u.push(EditorSelection.cursor(y.to));else{let A=findColumn(y.text,p,o.tabSize);u.push(EditorSelection.range(y.from+k,y.from+A))}}}return u}function absoluteColumn(o,e){let n=o.coordsAtPos(o.viewport.from);return n?Math.round(Math.abs((n.left-e)/o.defaultCharacterWidth)):-1}function getPos(o,e){let n=o.posAtCoords({x:e.clientX,y:e.clientY},!1),r=o.state.doc.lineAt(n),c=n-r.from,u=c>MaxOff?-1:c==r.length?absoluteColumn(o,e.clientX):countColumn(r.text,o.state.tabSize,n-r.from);return{line:r.number,col:u,off:c}}function rectangleSelectionStyle(o,e){let n=getPos(o,e),r=o.state.selection;return n?{update(c){if(c.docChanged){let u=c.changes.mapPos(c.startState.doc.line(n.line).from),h=c.state.doc.lineAt(u);n={line:h.number,col:n.col,off:Math.min(n.off,h.length)},r=r.map(c.changes)}},get(c,u,h){let p=getPos(o,c);if(!p)return r;let b=rectangleFor(o.state,n,p);return b.length?h?EditorSelection.create(b.concat(r.ranges)):EditorSelection.create(b):r}}:null}function rectangularSelection(o){let e=n=>n.altKey&&n.button==0;return EditorView.mouseSelectionStyle.of((n,r)=>e(r)?rectangleSelectionStyle(n,r):null)}const keys={Alt:[18,o=>!!o.altKey],Control:[17,o=>!!o.ctrlKey],Shift:[16,o=>!!o.shiftKey],Meta:[91,o=>!!o.metaKey]},showCrosshair={style:"cursor: crosshair"};function crosshairCursor(o={}){let[e,n]=keys[o.key||"Alt"],r=ViewPlugin.fromClass(class{constructor(c){this.view=c,this.isDown=!1}set(c){this.isDown!=c&&(this.isDown=c,this.view.update([]))}},{eventObservers:{keydown(c){this.set(c.keyCode==e||n(c))},keyup(c){(c.keyCode==e||!n(c))&&this.set(!1)},mousemove(c){this.set(n(c))}}});return[r,EditorView.contentAttributes.of(c=>{var u;return!((u=c.plugin(r))===null||u===void 0)&&u.isDown?showCrosshair:null})]}const Outside="-10000px";class TooltipViewManager{constructor(e,n,r,c){this.facet=n,this.createTooltipView=r,this.removeTooltipView=c,this.input=e.state.facet(n),this.tooltips=this.input.filter(h=>h);let u=null;this.tooltipViews=this.tooltips.map(h=>u=r(h,u))}update(e,n){var r;let c=e.state.facet(this.facet),u=c.filter(b=>b);if(c===this.input){for(let b of this.tooltipViews)b.update&&b.update(e);return!1}let h=[],p=n?[]:null;for(let b=0;bn[y]=b),n.length=p.length),this.input=c,this.tooltips=u,this.tooltipViews=h,!0}}function windowSpace(o){let{win:e}=o;return{top:0,left:0,bottom:e.innerHeight,right:e.innerWidth}}const tooltipConfig=Facet.define({combine:o=>{var e,n,r;return{position:browser.ios?"absolute":((e=o.find(c=>c.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((n=o.find(c=>c.parent))===null||n===void 0?void 0:n.parent)||null,tooltipSpace:((r=o.find(c=>c.tooltipSpace))===null||r===void 0?void 0:r.tooltipSpace)||windowSpace}}}),knownHeight=new WeakMap,tooltipPlugin=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=o.state.facet(tooltipConfig);this.position=e.position,this.parent=e.parent,this.classes=o.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new TooltipViewManager(o,showTooltip,(n,r)=>this.createTooltip(n,r),n=>{this.resizeObserver&&this.resizeObserver.unobserve(n.dom),n.dom.remove()}),this.above=this.manager.tooltips.map(n=>!!n.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(n=>{Date.now()>this.lastTransaction-50&&n.length>0&&n[n.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),o.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let o of this.manager.tooltipViews)this.intersectionObserver.observe(o.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(o){o.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(o,this.above);e&&this.observeIntersection();let n=e||o.geometryChanged,r=o.state.facet(tooltipConfig);if(r.position!=this.position&&!this.madeAbsolute){this.position=r.position;for(let c of this.manager.tooltipViews)c.dom.style.position=this.position;n=!0}if(r.parent!=this.parent){this.parent&&this.container.remove(),this.parent=r.parent,this.createContainer();for(let c of this.manager.tooltipViews)this.container.appendChild(c.dom);n=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);n&&this.maybeMeasure()}createTooltip(o,e){let n=o.create(this.view),r=e?e.dom:null;if(n.dom.classList.add("cm-tooltip"),o.arrow&&!n.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let c=document.createElement("div");c.className="cm-tooltip-arrow",n.dom.appendChild(c)}return n.dom.style.position=this.position,n.dom.style.top=Outside,n.dom.style.left="0px",this.container.insertBefore(n.dom,r),n.mount&&n.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(n.dom),n}destroy(){var o,e,n;this.view.win.removeEventListener("resize",this.measureSoon);for(let r of this.manager.tooltipViews)r.dom.remove(),(o=r.destroy)===null||o===void 0||o.call(r);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(n=this.intersectionObserver)===null||n===void 0||n.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let o=this.view.dom.getBoundingClientRect(),e=1,n=1,r=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:c}=this.manager.tooltipViews[0];if(browser.gecko)r=c.offsetParent!=this.container.ownerDocument.body;else if(c.style.top==Outside&&c.style.left=="0px"){let u=c.getBoundingClientRect();r=Math.abs(u.top+1e4)>1||Math.abs(u.left)>1}}if(r||this.position=="absolute")if(this.parent){let c=this.parent.getBoundingClientRect();c.width&&c.height&&(e=c.width/this.parent.offsetWidth,n=c.height/this.parent.offsetHeight)}else({scaleX:e,scaleY:n}=this.view.viewState);return{editor:o,parent:this.parent?this.container.getBoundingClientRect():o,pos:this.manager.tooltips.map((c,u)=>{let h=this.manager.tooltipViews[u];return h.getCoords?h.getCoords(c.pos):this.view.coordsAtPos(c.pos)}),size:this.manager.tooltipViews.map(({dom:c})=>c.getBoundingClientRect()),space:this.view.state.facet(tooltipConfig).tooltipSpace(this.view),scaleX:e,scaleY:n,makeAbsolute:r}}writeMeasure(o){var e;if(o.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let p of this.manager.tooltipViews)p.dom.style.position="absolute"}let{editor:n,space:r,scaleX:c,scaleY:u}=o,h=[];for(let p=0;p=Math.min(n.bottom,r.bottom)||A.rightMath.min(n.right,r.right)+.1){k.style.top=Outside;continue}let N=b.arrow?y.dom.querySelector(".cm-tooltip-arrow"):null,F=N?7:0,V=R.right-R.left,W=(e=knownHeight.get(y))!==null&&e!==void 0?e:R.bottom-R.top,J=y.offset||noOffset,te=this.view.textDirection==Direction.LTR,j=R.width>r.right-r.left?te?r.left:r.right-R.width:te?Math.max(r.left,Math.min(A.left-(N?14:0)+J.x,r.right-V)):Math.min(Math.max(r.left,A.left-V+(N?14:0)-J.x),r.right-V),ae=this.above[p];!b.strictSide&&(ae?A.top-(R.bottom-R.top)-J.yr.bottom)&&ae==r.bottom-A.bottom>A.top-r.top&&(ae=this.above[p]=!ae);let fe=(ae?A.top-r.top:r.bottom-A.bottom)-F;if(fej&&Se.top<_e+W&&Se.bottom>_e&&(_e=ae?Se.top-W-2-F:Se.bottom+F+2);if(this.position=="absolute"?(k.style.top=(_e-o.parent.top)/u+"px",k.style.left=(j-o.parent.left)/c+"px"):(k.style.top=_e/u+"px",k.style.left=j/c+"px"),N){let Se=A.left+(te?J.x:-J.x)-(j+14-7);N.style.left=Se/c+"px"}y.overlap!==!0&&h.push({left:j,top:_e,right:ne,bottom:_e+W}),k.classList.toggle("cm-tooltip-above",ae),k.classList.toggle("cm-tooltip-below",!ae),y.positioned&&y.positioned(o.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let o of this.manager.tooltipViews)o.dom.style.top=Outside}},{eventObservers:{scroll(){this.maybeMeasure()}}}),baseTheme$4=EditorView.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),noOffset={x:0,y:0},showTooltip=Facet.define({enables:[tooltipPlugin,baseTheme$4]}),showHoverTooltip=Facet.define({combine:o=>o.reduce((e,n)=>e.concat(n),[])});class HoverTooltipHost{static create(e){return new HoverTooltipHost(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new TooltipViewManager(e,showHoverTooltip,(n,r)=>this.createHostedView(n,r),n=>n.dom.remove())}createHostedView(e,n){let r=e.create(this.view);return r.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(r.dom,n?n.dom.nextSibling:this.dom.firstChild),this.mounted&&r.mount&&r.mount(this.view),r}mount(e){for(let n of this.manager.tooltipViews)n.mount&&n.mount(e);this.mounted=!0}positioned(e){for(let n of this.manager.tooltipViews)n.positioned&&n.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let n of this.manager.tooltipViews)(e=n.destroy)===null||e===void 0||e.call(n)}passProp(e){let n;for(let r of this.manager.tooltipViews){let c=r[e];if(c!==void 0){if(n===void 0)n=c;else if(n!==c)return}}return n}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}}const showHoverTooltipHost=showTooltip.compute([showHoverTooltip],o=>{let e=o.facet(showHoverTooltip);return e.length===0?null:{pos:Math.min(...e.map(n=>n.pos)),end:Math.max(...e.map(n=>{var r;return(r=n.end)!==null&&r!==void 0?r:n.pos})),create:HoverTooltipHost.create,above:e[0].above,arrow:e.some(n=>n.arrow)}});class HoverPlugin{constructor(e,n,r,c,u){this.view=e,this.source=n,this.field=r,this.setHover=c,this.hoverTime=u,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let e=Date.now()-this.lastMove.time;ep.bottom||n.xp.right+e.defaultCharacterWidth)return;let b=e.bidiSpans(e.state.doc.lineAt(c)).find(k=>k.from<=c&&k.to>=c),y=b&&b.dir==Direction.RTL?-1:1;u=n.x{this.pending==p&&(this.pending=null,b&&!(Array.isArray(b)&&!b.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(b)?b:[b])}))},b=>logException(e.state,b,"hover tooltip"))}else h&&!(Array.isArray(h)&&!h.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(h)?h:[h])})}get tooltip(){let e=this.view.plugin(tooltipPlugin),n=e?e.manager.tooltips.findIndex(r=>r.create==HoverTooltipHost.create):-1;return n>-1?e.manager.tooltipViews[n]:null}mousemove(e){var n,r;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:c,tooltip:u}=this;if(c.length&&u&&!isInTooltip(u.dom,e)||this.pending){let{pos:h}=c[0]||this.pending,p=(r=(n=c[0])===null||n===void 0?void 0:n.end)!==null&&r!==void 0?r:h;(h==p?this.view.posAtCoords(this.lastMove)!=h:!isOverRange(this.view,h,p,e.clientX,e.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:n}=this;if(n.length){let{tooltip:r}=this;r&&r.dom.contains(e.relatedTarget)?this.watchTooltipLeave(r.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let n=r=>{e.removeEventListener("mouseleave",n),this.active.length&&!this.view.dom.contains(r.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};e.addEventListener("mouseleave",n)}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}const tooltipMargin=4;function isInTooltip(o,e){let n=o.getBoundingClientRect();return e.clientX>=n.left-tooltipMargin&&e.clientX<=n.right+tooltipMargin&&e.clientY>=n.top-tooltipMargin&&e.clientY<=n.bottom+tooltipMargin}function isOverRange(o,e,n,r,c,u){let h=o.scrollDOM.getBoundingClientRect(),p=o.documentTop+o.documentPadding.top+o.contentHeight;if(h.left>r||h.rightc||Math.min(h.bottom,p)=e&&b<=n}function hoverTooltip(o,e={}){let n=StateEffect.define(),r=StateField.define({create(){return[]},update(c,u){if(c.length&&(e.hideOnChange&&(u.docChanged||u.selection)?c=[]:e.hideOn&&(c=c.filter(h=>!e.hideOn(u,h))),u.docChanged)){let h=[];for(let p of c){let b=u.changes.mapPos(p.pos,-1,MapMode.TrackDel);if(b!=null){let y=Object.assign(Object.create(null),p);y.pos=b,y.end!=null&&(y.end=u.changes.mapPos(y.end)),h.push(y)}}c=h}for(let h of u.effects)h.is(n)&&(c=h.value),h.is(closeHoverTooltipEffect)&&(c=[]);return c},provide:c=>showHoverTooltip.from(c)});return{active:r,extension:[r,ViewPlugin.define(c=>new HoverPlugin(c,o,r,n,e.hoverTime||300)),showHoverTooltipHost]}}function getTooltip(o,e){let n=o.plugin(tooltipPlugin);if(!n)return null;let r=n.manager.tooltips.indexOf(e);return r<0?null:n.manager.tooltipViews[r]}const closeHoverTooltipEffect=StateEffect.define(),panelConfig=Facet.define({combine(o){let e,n;for(let r of o)e=e||r.topContainer,n=n||r.bottomContainer;return{topContainer:e,bottomContainer:n}}});function getPanel(o,e){let n=o.plugin(panelPlugin),r=n?n.specs.indexOf(e):-1;return r>-1?n.panels[r]:null}const panelPlugin=ViewPlugin.fromClass(class{constructor(o){this.input=o.state.facet(showPanel),this.specs=this.input.filter(n=>n),this.panels=this.specs.map(n=>n(o));let e=o.state.facet(panelConfig);this.top=new PanelGroup(o,!0,e.topContainer),this.bottom=new PanelGroup(o,!1,e.bottomContainer),this.top.sync(this.panels.filter(n=>n.top)),this.bottom.sync(this.panels.filter(n=>!n.top));for(let n of this.panels)n.dom.classList.add("cm-panel"),n.mount&&n.mount()}update(o){let e=o.state.facet(panelConfig);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new PanelGroup(o.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new PanelGroup(o.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let n=o.state.facet(showPanel);if(n!=this.input){let r=n.filter(b=>b),c=[],u=[],h=[],p=[];for(let b of r){let y=this.specs.indexOf(b),k;y<0?(k=b(o.view),p.push(k)):(k=this.panels[y],k.update&&k.update(o)),c.push(k),(k.top?u:h).push(k)}this.specs=r,this.panels=c,this.top.sync(u),this.bottom.sync(h);for(let b of p)b.dom.classList.add("cm-panel"),b.mount&&b.mount()}else for(let r of this.panels)r.update&&r.update(o)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:o=>EditorView.scrollMargins.of(e=>{let n=e.plugin(o);return n&&{top:n.top.scrollMargin(),bottom:n.bottom.scrollMargin()}})});class PanelGroup{constructor(e,n,r){this.view=e,this.top=n,this.container=r,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let n of this.panels)n.destroy&&e.indexOf(n)<0&&n.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let n=this.container||this.view.dom;n.insertBefore(this.dom,this.top?n.firstChild:null)}let e=this.dom.firstChild;for(let n of this.panels)if(n.dom.parentNode==this.dom){for(;e!=n.dom;)e=rm(e);e=e.nextSibling}else this.dom.insertBefore(n.dom,e);for(;e;)e=rm(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function rm(o){let e=o.nextSibling;return o.remove(),e}const showPanel=Facet.define({enables:panelPlugin});class GutterMarker extends RangeValue{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}GutterMarker.prototype.elementClass="";GutterMarker.prototype.toDOM=void 0;GutterMarker.prototype.mapMode=MapMode.TrackBefore;GutterMarker.prototype.startSide=GutterMarker.prototype.endSide=-1;GutterMarker.prototype.point=!0;const gutterLineClass=Facet.define(),gutterWidgetClass=Facet.define(),defaults$1={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>RangeSet.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{}},activeGutters=Facet.define();function gutter(o){return[gutters(),activeGutters.of(Object.assign(Object.assign({},defaults$1),o))]}const unfixGutters=Facet.define({combine:o=>o.some(e=>e)});function gutters(o){return[gutterView]}const gutterView=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.prevViewport=o.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=o.state.facet(activeGutters).map(e=>new SingleGutterView(o,e));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!o.state.facet(unfixGutters),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),o.scrollDOM.insertBefore(this.dom,o.contentDOM)}update(o){if(this.updateGutters(o)){let e=this.prevViewport,n=o.view.viewport,r=Math.min(e.to,n.to)-Math.max(e.from,n.from);this.syncGutters(r<(n.to-n.from)*.8)}o.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px"),this.view.state.facet(unfixGutters)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=o.view.viewport}syncGutters(o){let e=this.dom.nextSibling;o&&this.dom.remove();let n=RangeSet.iter(this.view.state.facet(gutterLineClass),this.view.viewport.from),r=[],c=this.gutters.map(u=>new UpdateContext(u,this.view.viewport,-this.view.documentPadding.top));for(let u of this.view.viewportLineBlocks)if(r.length&&(r=[]),Array.isArray(u.type)){let h=!0;for(let p of u.type)if(p.type==BlockType.Text&&h){advanceCursor(n,r,p.from);for(let b of c)b.line(this.view,p,r);h=!1}else if(p.widget)for(let b of c)b.widget(this.view,p)}else if(u.type==BlockType.Text){advanceCursor(n,r,u.from);for(let h of c)h.line(this.view,u,r)}else if(u.widget)for(let h of c)h.widget(this.view,u);for(let u of c)u.finish();o&&this.view.scrollDOM.insertBefore(this.dom,e)}updateGutters(o){let e=o.startState.facet(activeGutters),n=o.state.facet(activeGutters),r=o.docChanged||o.heightChanged||o.viewportChanged||!RangeSet.eq(o.startState.facet(gutterLineClass),o.state.facet(gutterLineClass),o.view.viewport.from,o.view.viewport.to);if(e==n)for(let c of this.gutters)c.update(o)&&(r=!0);else{r=!0;let c=[];for(let u of n){let h=e.indexOf(u);h<0?c.push(new SingleGutterView(this.view,u)):(this.gutters[h].update(o),c.push(this.gutters[h]))}for(let u of this.gutters)u.dom.remove(),c.indexOf(u)<0&&u.destroy();for(let u of c)this.dom.appendChild(u.dom);this.gutters=c}return r}destroy(){for(let o of this.gutters)o.destroy();this.dom.remove()}},{provide:o=>EditorView.scrollMargins.of(e=>{let n=e.plugin(o);return!n||n.gutters.length==0||!n.fixed?null:e.textDirection==Direction.LTR?{left:n.dom.offsetWidth*e.scaleX}:{right:n.dom.offsetWidth*e.scaleX}})});function asArray(o){return Array.isArray(o)?o:[o]}function advanceCursor(o,e,n){for(;o.value&&o.from<=n;)o.from==n&&e.push(o.value),o.next()}class UpdateContext{constructor(e,n,r){this.gutter=e,this.height=r,this.i=0,this.cursor=RangeSet.iter(e.markers,n.from)}addElement(e,n,r){let{gutter:c}=this,u=(n.top-this.height)/e.scaleY,h=n.height/e.scaleY;if(this.i==c.elements.length){let p=new GutterElement(e,h,u,r);c.elements.push(p),c.dom.appendChild(p.dom)}else c.elements[this.i].update(e,h,u,r);this.height=n.bottom,this.i++}line(e,n,r){let c=[];advanceCursor(this.cursor,c,n.from),r.length&&(c=c.concat(r));let u=this.gutter.config.lineMarker(e,n,c);u&&c.unshift(u);let h=this.gutter;c.length==0&&!h.config.renderEmptyElements||this.addElement(e,n,c)}widget(e,n){let r=this.gutter.config.widgetMarker(e,n.widget,n),c=r?[r]:null;for(let u of e.state.facet(gutterWidgetClass)){let h=u(e,n.widget,n);h&&(c||(c=[])).push(h)}c&&this.addElement(e,n,c)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let n=e.elements.pop();e.dom.removeChild(n.dom),n.destroy()}}}class SingleGutterView{constructor(e,n){this.view=e,this.config=n,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let r in n.domEventHandlers)this.dom.addEventListener(r,c=>{let u=c.target,h;if(u!=this.dom&&this.dom.contains(u)){for(;u.parentNode!=this.dom;)u=u.parentNode;let b=u.getBoundingClientRect();h=(b.top+b.bottom)/2}else h=c.clientY;let p=e.lineBlockAtHeight(h-e.documentTop);n.domEventHandlers[r](e,p,c)&&c.preventDefault()});this.markers=asArray(n.markers(e)),n.initialSpacer&&(this.spacer=new GutterElement(e,0,0,[n.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let n=this.markers;if(this.markers=asArray(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let c=this.config.updateSpacer(this.spacer.markers[0],e);c!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[c])}let r=e.view.viewport;return!RangeSet.eq(this.markers,n,r.from,r.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class GutterElement{constructor(e,n,r,c){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,n,r,c)}update(e,n,r,c){this.height!=n&&(this.height=n,this.dom.style.height=n+"px"),this.above!=r&&(this.dom.style.marginTop=(this.above=r)?r+"px":""),sameMarkers(this.markers,c)||this.setMarkers(e,c)}setMarkers(e,n){let r="cm-gutterElement",c=this.dom.firstChild;for(let u=0,h=0;;){let p=h,b=uu(p,b,y)||h(p,b,y):h}return r}})}});class NumberMarker extends GutterMarker{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function formatNumber(o,e){return o.state.facet(lineNumberConfig).formatNumber(e,o.state)}const lineNumberGutter=activeGutters.compute([lineNumberConfig],o=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(lineNumberMarkers)},lineMarker(e,n,r){return r.some(c=>c.toDOM)?null:new NumberMarker(formatNumber(e,e.state.doc.lineAt(n.from).number))},widgetMarker:(e,n,r)=>{for(let c of e.state.facet(lineNumberWidgetMarker)){let u=c(e,n,r);if(u)return u}return null},lineMarkerChange:e=>e.startState.facet(lineNumberConfig)!=e.state.facet(lineNumberConfig),initialSpacer(e){return new NumberMarker(formatNumber(e,maxLineNumber(e.state.doc.lines)))},updateSpacer(e,n){let r=formatNumber(n.view,maxLineNumber(n.view.state.doc.lines));return r==e.number?e:new NumberMarker(r)},domEventHandlers:o.facet(lineNumberConfig).domEventHandlers}));function lineNumbers(o={}){return[lineNumberConfig.of(o),gutters(),lineNumberGutter]}function maxLineNumber(o){let e=9;for(;e{let e=[],n=-1;for(let r of o.selection.ranges){let c=o.doc.lineAt(r.head).from;c>n&&(n=c,e.push(activeLineGutterMarker.range(c)))}return RangeSet.of(e)});function highlightActiveLineGutter(){return activeLineGutterHighlighter}const DefaultBufferLength=1024;let nextPropID=0,Range$1=class{constructor(e,n){this.from=e,this.to=n}};class NodeProp{constructor(e={}){this.id=nextPropID++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=NodeType.match(e)),n=>{let r=e(n);return r===void 0?null:[this,r]}}}NodeProp.closedBy=new NodeProp({deserialize:o=>o.split(" ")});NodeProp.openedBy=new NodeProp({deserialize:o=>o.split(" ")});NodeProp.group=new NodeProp({deserialize:o=>o.split(" ")});NodeProp.isolate=new NodeProp({deserialize:o=>{if(o&&o!="rtl"&&o!="ltr"&&o!="auto")throw new RangeError("Invalid value for isolate: "+o);return o||"auto"}});NodeProp.contextHash=new NodeProp({perNode:!0});NodeProp.lookAhead=new NodeProp({perNode:!0});NodeProp.mounted=new NodeProp({perNode:!0});class MountedTree{constructor(e,n,r){this.tree=e,this.overlay=n,this.parser=r}static get(e){return e&&e.props&&e.props[NodeProp.mounted.id]}}const noProps=Object.create(null);class NodeType{constructor(e,n,r,c=0){this.name=e,this.props=n,this.id=r,this.flags=c}static define(e){let n=e.props&&e.props.length?Object.create(null):noProps,r=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),c=new NodeType(e.name||"",n,e.id,r);if(e.props){for(let u of e.props)if(Array.isArray(u)||(u=u(c)),u){if(u[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");n[u[0].id]=u[1]}}return c}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let n=this.prop(NodeProp.group);return n?n.indexOf(e)>-1:!1}return this.id==e}static match(e){let n=Object.create(null);for(let r in e)for(let c of r.split(" "))n[c]=e[r];return r=>{for(let c=r.prop(NodeProp.group),u=-1;u<(c?c.length:0);u++){let h=n[u<0?r.name:c[u]];if(h)return h}}}}NodeType.none=new NodeType("",Object.create(null),0,8);class NodeSet{constructor(e){this.types=e;for(let n=0;n0;for(let b=this.cursor(h|IterMode.IncludeAnonymous);;){let y=!1;if(b.from<=u&&b.to>=c&&(!p&&b.type.isAnonymous||n(b)!==!1)){if(b.firstChild())continue;y=!0}for(;y&&r&&(p||!b.type.isAnonymous)&&r(b),!b.nextSibling();){if(!b.parent())return;y=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let n in this.props)e.push([+n,this.props[n]]);return e}balance(e={}){return this.children.length<=8?this:balanceRange(NodeType.none,this.children,this.positions,0,this.children.length,0,this.length,(n,r,c)=>new Tree(this.type,n,r,c,this.propValues),e.makeTree||((n,r,c)=>new Tree(NodeType.none,n,r,c)))}static build(e){return buildTree(e)}}Tree.empty=new Tree(NodeType.none,[],[],0);class FlatBufferCursor{constructor(e,n){this.buffer=e,this.index=n}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new FlatBufferCursor(this.buffer,this.index)}}class TreeBuffer{constructor(e,n,r){this.buffer=e,this.length=n,this.set=r}get type(){return NodeType.none}toString(){let e=[];for(let n=0;n0));b=h[b+3]);return p}slice(e,n,r){let c=this.buffer,u=new Uint16Array(n-e),h=0;for(let p=e,b=0;p=e&&ne;case 1:return n<=e&&r>e;case 2:return r>e;case 4:return!0}}function resolveNode(o,e,n,r){for(var c;o.from==o.to||(n<1?o.from>=e:o.from>e)||(n>-1?o.to<=e:o.to0?p.length:-1;e!=y;e+=n){let k=p[e],A=b[e]+h.from;if(checkSide(c,r,A,A+k.length)){if(k instanceof TreeBuffer){if(u&IterMode.ExcludeBuffers)continue;let R=k.findChild(0,k.buffer.length,n,r-A,c);if(R>-1)return new BufferNode(new BufferContext(h,k,e,A),null,R)}else if(u&IterMode.IncludeAnonymous||!k.type.isAnonymous||hasChild(k)){let R;if(!(u&IterMode.IgnoreMounts)&&(R=MountedTree.get(k))&&!R.overlay)return new TreeNode(R.tree,A,e,h);let N=new TreeNode(k,A,e,h);return u&IterMode.IncludeAnonymous||!N.type.isAnonymous?N:N.nextChild(n<0?k.children.length-1:0,n,r,c)}}}if(u&IterMode.IncludeAnonymous||!h.type.isAnonymous||(h.index>=0?e=h.index+n:e=n<0?-1:h._parent._tree.children.length,h=h._parent,!h))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,n,r=0){let c;if(!(r&IterMode.IgnoreOverlays)&&(c=MountedTree.get(this._tree))&&c.overlay){let u=e-this.from;for(let{from:h,to:p}of c.overlay)if((n>0?h<=u:h=u:p>u))return new TreeNode(c.tree,c.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,n,r)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function getChildren(o,e,n,r){let c=o.cursor(),u=[];if(!c.firstChild())return u;if(n!=null){for(let h=!1;!h;)if(h=c.type.is(n),!c.nextSibling())return u}for(;;){if(r!=null&&c.type.is(r))return u;if(c.type.is(e)&&u.push(c.node),!c.nextSibling())return r==null?u:[]}}function matchNodeContext(o,e,n=e.length-1){for(let r=o.parent;n>=0;r=r.parent){if(!r)return!1;if(!r.type.isAnonymous){if(e[n]&&e[n]!=r.name)return!1;n--}}return!0}class BufferContext{constructor(e,n,r,c){this.parent=e,this.buffer=n,this.index=r,this.start=c}}class BufferNode extends BaseNode{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,n,r){super(),this.context=e,this._parent=n,this.index=r,this.type=e.buffer.set.types[e.buffer.buffer[r]]}child(e,n,r){let{buffer:c}=this.context,u=c.findChild(this.index+4,c.buffer[this.index+3],e,n-this.context.start,r);return u<0?null:new BufferNode(this.context,this,u)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,n,r=0){if(r&IterMode.ExcludeBuffers)return null;let{buffer:c}=this.context,u=c.findChild(this.index+4,c.buffer[this.index+3],n>0?1:-1,e-this.context.start,n);return u<0?null:new BufferNode(this.context,this,u)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,n=e.buffer[this.index+3];return n<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new BufferNode(this.context,this._parent,n):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,n=this._parent?this._parent.index+4:0;return this.index==n?this.externalSibling(-1):new BufferNode(this.context,this._parent,e.findChild(n,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],n=[],{buffer:r}=this.context,c=this.index+4,u=r.buffer[this.index+3];if(u>c){let h=r.buffer[this.index+1];e.push(r.slice(c,u,h)),n.push(0)}return new Tree(this.type,e,n,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function iterStack(o){if(!o.length)return null;let e=0,n=o[0];for(let u=1;un.from||h.to=e){let p=new TreeNode(h.tree,h.overlay[0].from+u.from,-1,u);(c||(c=[r])).push(resolveNode(p,e,n,!1))}}return c?iterStack(c):r}class TreeCursor{get name(){return this.type.name}constructor(e,n=0){if(this.mode=n,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof TreeNode)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let r=e._parent;r;r=r._parent)this.stack.unshift(r.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,n){this.index=e;let{start:r,buffer:c}=this.buffer;return this.type=n||c.set.types[c.buffer[e]],this.from=r+c.buffer[e+1],this.to=r+c.buffer[e+2],!0}yield(e){return e?e instanceof TreeNode?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,n,r){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,n,r,this.mode));let{buffer:c}=this.buffer,u=c.findChild(this.index+4,c.buffer[this.index+3],e,n-this.buffer.start,r);return u<0?!1:(this.stack.push(this.index),this.yieldBuf(u))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,n,r=this.mode){return this.buffer?r&IterMode.ExcludeBuffers?!1:this.enterChild(1,e,n):this.yield(this._tree.enter(e,n,r))}parent(){if(!this.buffer)return this.yieldNode(this.mode&IterMode.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&IterMode.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:n}=this.buffer,r=this.stack.length-1;if(e<0){let c=r<0?0:this.stack[r]+4;if(this.index!=c)return this.yieldBuf(n.findChild(c,this.index,-1,0,4))}else{let c=n.buffer[this.index+3];if(c<(r<0?n.buffer.length:n.buffer[this.stack[r]+3]))return this.yieldBuf(c)}return r<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let n,r,{buffer:c}=this;if(c){if(e>0){if(this.index-1)for(let u=n+e,h=e<0?-1:r._tree.children.length;u!=h;u+=e){let p=r._tree.children[u];if(this.mode&IterMode.IncludeAnonymous||p instanceof TreeBuffer||!p.type.isAnonymous||hasChild(p))return!1}return!0}move(e,n){if(n&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,n=0){for(;(this.from==this.to||(n<1?this.from>=e:this.from>e)||(n>-1?this.to<=e:this.to=0;){for(let h=e;h;h=h._parent)if(h.index==c){if(c==this.index)return h;n=h,r=u+1;break e}c=this.stack[--u]}for(let c=r;c=0;u--){if(u<0)return matchNodeContext(this.node,e,c);let h=r[n.buffer[this.stack[u]]];if(!h.isAnonymous){if(e[c]&&e[c]!=h.name)return!1;c--}}return!0}}function hasChild(o){return o.children.some(e=>e instanceof TreeBuffer||!e.type.isAnonymous||hasChild(e))}function buildTree(o){var e;let{buffer:n,nodeSet:r,maxBufferLength:c=DefaultBufferLength,reused:u=[],minRepeatType:h=r.types.length}=o,p=Array.isArray(n)?new FlatBufferCursor(n,n.length):n,b=r.types,y=0,k=0;function A(fe,_e,ne,Se,De,Be){let{id:Te,start:Oe,end:yt,size:Tt}=p,St=k;for(;Tt<0;)if(p.next(),Tt==-1){let Rt=u[Te];ne.push(Rt),Se.push(Oe-fe);return}else if(Tt==-3){y=Te;return}else if(Tt==-4){k=Te;return}else throw new RangeError(`Unrecognized record size: ${Tt}`);let q=b[Te],Le,je,mn=Oe-fe;if(yt-Oe<=c&&(je=W(p.pos-_e,De))){let Rt=new Uint16Array(je.size-je.skip),Ue=p.pos-je.size,ct=Rt.length;for(;p.pos>Ue;)ct=J(je.start,Rt,ct);Le=new TreeBuffer(Rt,yt-je.start,r),mn=je.start-fe}else{let Rt=p.pos-Tt;p.next();let Ue=[],ct=[],dn=Te>=h?Te:-1,Zt=0,rn=yt;for(;p.pos>Rt;)dn>=0&&p.id==dn&&p.size>=0?(p.end<=rn-c&&(F(Ue,ct,Oe,Zt,p.end,rn,dn,St),Zt=Ue.length,rn=p.end),p.next()):Be>2500?R(Oe,Rt,Ue,ct):A(Oe,Rt,Ue,ct,dn,Be+1);if(dn>=0&&Zt>0&&Zt-1&&Zt>0){let Fe=N(q);Le=balanceRange(q,Ue,ct,0,Ue.length,0,yt-Oe,Fe,Fe)}else Le=V(q,Ue,ct,yt-Oe,St-yt)}ne.push(Le),Se.push(mn)}function R(fe,_e,ne,Se){let De=[],Be=0,Te=-1;for(;p.pos>_e;){let{id:Oe,start:yt,end:Tt,size:St}=p;if(St>4)p.next();else{if(Te>-1&&yt=0;Tt-=3)Oe[St++]=De[Tt],Oe[St++]=De[Tt+1]-yt,Oe[St++]=De[Tt+2]-yt,Oe[St++]=St;ne.push(new TreeBuffer(Oe,De[2]-yt,r)),Se.push(yt-fe)}}function N(fe){return(_e,ne,Se)=>{let De=0,Be=_e.length-1,Te,Oe;if(Be>=0&&(Te=_e[Be])instanceof Tree){if(!Be&&Te.type==fe&&Te.length==Se)return Te;(Oe=Te.prop(NodeProp.lookAhead))&&(De=ne[Be]+Te.length+Oe)}return V(fe,_e,ne,Se,De)}}function F(fe,_e,ne,Se,De,Be,Te,Oe){let yt=[],Tt=[];for(;fe.length>Se;)yt.push(fe.pop()),Tt.push(_e.pop()+ne-De);fe.push(V(r.types[Te],yt,Tt,Be-De,Oe-Be)),_e.push(De-ne)}function V(fe,_e,ne,Se,De=0,Be){if(y){let Te=[NodeProp.contextHash,y];Be=Be?[Te].concat(Be):[Te]}if(De>25){let Te=[NodeProp.lookAhead,De];Be=Be?[Te].concat(Be):[Te]}return new Tree(fe,_e,ne,Se,Be)}function W(fe,_e){let ne=p.fork(),Se=0,De=0,Be=0,Te=ne.end-c,Oe={size:0,start:0,skip:0};e:for(let yt=ne.pos-fe;ne.pos>yt;){let Tt=ne.size;if(ne.id==_e&&Tt>=0){Oe.size=Se,Oe.start=De,Oe.skip=Be,Be+=4,Se+=4,ne.next();continue}let St=ne.pos-Tt;if(Tt<0||St=h?4:0,Le=ne.start;for(ne.next();ne.pos>St;){if(ne.size<0)if(ne.size==-3)q+=4;else break e;else ne.id>=h&&(q+=4);ne.next()}De=Le,Se+=Tt,Be+=q}return(_e<0||Se==fe)&&(Oe.size=Se,Oe.start=De,Oe.skip=Be),Oe.size>4?Oe:void 0}function J(fe,_e,ne){let{id:Se,start:De,end:Be,size:Te}=p;if(p.next(),Te>=0&&Se4){let yt=p.pos-(Te-4);for(;p.pos>yt;)ne=J(fe,_e,ne)}_e[--ne]=Oe,_e[--ne]=Be-fe,_e[--ne]=De-fe,_e[--ne]=Se}else Te==-3?y=Se:Te==-4&&(k=Se);return ne}let te=[],j=[];for(;p.pos>0;)A(o.start||0,o.bufferStart||0,te,j,-1,0);let ae=(e=o.length)!==null&&e!==void 0?e:te.length?j[0]+te[0].length:0;return new Tree(b[o.topID],te.reverse(),j.reverse(),ae)}const nodeSizeCache=new WeakMap;function nodeSize(o,e){if(!o.isAnonymous||e instanceof TreeBuffer||e.type!=o)return 1;let n=nodeSizeCache.get(e);if(n==null){n=1;for(let r of e.children){if(r.type!=o||!(r instanceof Tree)){n=1;break}n+=nodeSize(o,r)}nodeSizeCache.set(e,n)}return n}function balanceRange(o,e,n,r,c,u,h,p,b){let y=0;for(let F=r;F=k)break;_e+=ne}if(j==ae+1){if(_e>k){let ne=F[ae];N(ne.children,ne.positions,0,ne.children.length,V[ae]+te);continue}A.push(F[ae])}else{let ne=V[j-1]+F[j-1].length-fe;A.push(balanceRange(o,F,V,ae,j,fe,ne,null,b))}R.push(fe+te-u)}}return N(e,n,r,c,0),(p||b)(A,R,h)}class NodeWeakMap{constructor(){this.map=new WeakMap}setBuffer(e,n,r){let c=this.map.get(e);c||this.map.set(e,c=new Map),c.set(n,r)}getBuffer(e,n){let r=this.map.get(e);return r&&r.get(n)}set(e,n){e instanceof BufferNode?this.setBuffer(e.context.buffer,e.index,n):e instanceof TreeNode&&this.map.set(e.tree,n)}get(e){return e instanceof BufferNode?this.getBuffer(e.context.buffer,e.index):e instanceof TreeNode?this.map.get(e.tree):void 0}cursorSet(e,n){e.buffer?this.setBuffer(e.buffer.buffer,e.index,n):this.map.set(e.tree,n)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class TreeFragment{constructor(e,n,r,c,u=!1,h=!1){this.from=e,this.to=n,this.tree=r,this.offset=c,this.open=(u?1:0)|(h?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,n=[],r=!1){let c=[new TreeFragment(0,e.length,e,0,!1,r)];for(let u of n)u.to>e.length&&c.push(u);return c}static applyChanges(e,n,r=128){if(!n.length)return e;let c=[],u=1,h=e.length?e[0]:null;for(let p=0,b=0,y=0;;p++){let k=p=r)for(;h&&h.from=R.from||A<=R.to||y){let N=Math.max(R.from,b)-y,F=Math.min(R.to,A)-y;R=N>=F?null:new TreeFragment(N,F,R.tree,R.offset+y,p>0,!!k)}if(R&&c.push(R),h.to>A)break;h=unew Range$1(c.from,c.to)):[new Range$1(0,0)]:[new Range$1(0,e.length)],this.createParse(e,n||[],r)}parse(e,n,r){let c=this.startParse(e,n,r);for(;;){let u=c.advance();if(u)return u}}}class StringInput{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,n){return this.string.slice(e,n)}}function parseMixed(o){return(e,n,r,c)=>new MixedParse(e,o,n,r,c)}class InnerParse{constructor(e,n,r,c,u){this.parser=e,this.parse=n,this.overlay=r,this.target=c,this.from=u}}function checkRanges(o){if(!o.length||o.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(o))}class ActiveOverlay{constructor(e,n,r,c,u,h,p){this.parser=e,this.predicate=n,this.mounts=r,this.index=c,this.start=u,this.target=h,this.prev=p,this.depth=0,this.ranges=[]}}const stoppedInner=new NodeProp({perNode:!0});class MixedParse{constructor(e,n,r,c,u){this.nest=n,this.input=r,this.fragments=c,this.ranges=u,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let r=this.baseParse.advance();if(!r)return null;if(this.baseParse=null,this.baseTree=r,this.startInner(),this.stoppedAt!=null)for(let c of this.inner)c.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let r=this.baseTree;return this.stoppedAt!=null&&(r=new Tree(r.type,r.children,r.positions,r.length,r.propValues.concat([[stoppedInner,this.stoppedAt]]))),r}let e=this.inner[this.innerDone],n=e.parse.advance();if(n){this.innerDone++;let r=Object.assign(Object.create(null),e.target.props);r[NodeProp.mounted.id]=new MountedTree(n,e.overlay,e.parser),e.target.props=r}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let n=this.innerDone;n=this.stoppedAt)p=!1;else if(e.hasNode(c)){if(n){let y=n.mounts.find(k=>k.frag.from<=c.from&&k.frag.to>=c.to&&k.mount.overlay);if(y)for(let k of y.mount.overlay){let A=k.from+y.pos,R=k.to+y.pos;A>=c.from&&R<=c.to&&!n.ranges.some(N=>N.fromA)&&n.ranges.push({from:A,to:R})}}p=!1}else if(r&&(h=checkCover(r.ranges,c.from,c.to)))p=h!=2;else if(!c.type.isAnonymous&&(u=this.nest(c,this.input))&&(c.fromnew Range$1(A.from-c.from,A.to-c.from)):null,c.tree,k.length?k[0].from:c.from)),u.overlay?k.length&&(r={ranges:k,depth:0,prev:r}):p=!1}}else n&&(b=n.predicate(c))&&(b===!0&&(b=new Range$1(c.from,c.to)),b.fromnew Range$1(k.from-n.start,k.to-n.start)),n.target,y[0].from))),n=n.prev}r&&!--r.depth&&(r=r.prev)}}}}function checkCover(o,e,n){for(let r of o){if(r.from>=n)break;if(r.to>e)return r.from<=e&&r.to>=n?2:1}return 0}function sliceBuf(o,e,n,r,c,u){if(e=e&&n.enter(r,1,IterMode.IgnoreOverlays|IterMode.ExcludeBuffers)||n.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let n=this.cursor.tree;;){if(n==e.tree)return!0;if(n.children.length&&n.positions[0]==0&&n.children[0]instanceof Tree)n=n.children[0];else break}return!1}}let FragmentCursor$2=class{constructor(e){var n;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let r=this.curFrag=e[0];this.curTo=(n=r.tree.prop(stoppedInner))!==null&&n!==void 0?n:r.to,this.inner=new StructureCursor(r.tree,-r.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let n=this.curFrag=this.fragments[this.fragI];this.curTo=(e=n.tree.prop(stoppedInner))!==null&&e!==void 0?e:n.to,this.inner=new StructureCursor(n.tree,-n.offset)}}findMounts(e,n){var r;let c=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let u=this.inner.cursor.node;u;u=u.parent){let h=(r=u.tree)===null||r===void 0?void 0:r.prop(NodeProp.mounted);if(h&&h.parser==n)for(let p=this.fragI;p=u.to)break;b.tree==this.curFrag.tree&&c.push({frag:b,pos:u.from-b.offset,mount:h})}}}return c}};function punchRanges(o,e){let n=null,r=e;for(let c=1,u=0;c=p)break;b.to<=h||(n||(r=n=e.slice()),b.fromp&&n.splice(u+1,0,new Range$1(p,b.to))):b.to>p?n[u--]=new Range$1(p,b.to):n.splice(u--,1))}}return r}function findCoverChanges(o,e,n,r){let c=0,u=0,h=!1,p=!1,b=-1e9,y=[];for(;;){let k=c==o.length?1e9:h?o[c].to:o[c].from,A=u==e.length?1e9:p?e[u].to:e[u].from;if(h!=p){let R=Math.max(b,n),N=Math.min(k,A,r);Rnew Range$1(R.from+r,R.to+r)),A=findCoverChanges(e,k,b,y);for(let R=0,N=b;;R++){let F=R==A.length,V=F?y:A[R].from;if(V>N&&n.push(new TreeFragment(N,V,c.tree,-h,u.from>=N||u.openStart,u.to<=V||u.openEnd)),F)break;N=A[R].to}}else n.push(new TreeFragment(b,y,c.tree,-h,u.from>=h||u.openStart,u.to<=p||u.openEnd))}return n}let nextTagID=0;class Tag{constructor(e,n,r,c){this.name=e,this.set=n,this.base=r,this.modified=c,this.id=nextTagID++}toString(){let{name:e}=this;for(let n of this.modified)n.name&&(e=`${n.name}(${e})`);return e}static define(e,n){let r=typeof e=="string"?e:"?";if(e instanceof Tag&&(n=e),n!=null&&n.base)throw new Error("Can not derive from a modified tag");let c=new Tag(r,[],null,[]);if(c.set.push(c),n)for(let u of n.set)c.set.push(u);return c}static defineModifier(e){let n=new Modifier(e);return r=>r.modified.indexOf(n)>-1?r:Modifier.get(r.base||r,r.modified.concat(n).sort((c,u)=>c.id-u.id))}}let nextModifierID=0;class Modifier{constructor(e){this.name=e,this.instances=[],this.id=nextModifierID++}static get(e,n){if(!n.length)return e;let r=n[0].instances.find(p=>p.base==e&&sameArray(n,p.modified));if(r)return r;let c=[],u=new Tag(e.name,c,e,n);for(let p of n)p.instances.push(u);let h=powerSet(n);for(let p of e.set)if(!p.modified.length)for(let b of h)c.push(Modifier.get(p,b));return u}}function sameArray(o,e){return o.length==e.length&&o.every((n,r)=>n==e[r])}function powerSet(o){let e=[[]];for(let n=0;nr.length-n.length)}function styleTags(o){let e=Object.create(null);for(let n in o){let r=o[n];Array.isArray(r)||(r=[r]);for(let c of n.split(" "))if(c){let u=[],h=2,p=c;for(let A=0;;){if(p=="..."&&A>0&&A+3==c.length){h=1;break}let R=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(p);if(!R)throw new RangeError("Invalid path: "+c);if(u.push(R[0]=="*"?"":R[0][0]=='"'?JSON.parse(R[0]):R[0]),A+=R[0].length,A==c.length)break;let N=c[A++];if(A==c.length&&N=="!"){h=0;break}if(N!="/")throw new RangeError("Invalid path: "+c);p=c.slice(A)}let b=u.length-1,y=u[b];if(!y)throw new RangeError("Invalid path: "+c);let k=new Rule(r,h,b>0?u.slice(0,b):null);e[y]=k.sort(e[y])}}return ruleNodeProp.add(e)}const ruleNodeProp=new NodeProp;class Rule{constructor(e,n,r,c){this.tags=e,this.mode=n,this.context=r,this.next=c}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let h=c;for(let p of u)for(let b of p.set){let y=n[b.id];if(y){h=h?h+" "+y:y;break}}return h},scope:r}}function highlightTags(o,e){let n=null;for(let r of o){let c=r.style(e);c&&(n=n?n+" "+c:c)}return n}function highlightTree(o,e,n,r=0,c=o.length){let u=new HighlightBuilder(r,Array.isArray(e)?e:[e],n);u.highlightRange(o.cursor(),r,c,"",u.highlighters),u.flush(c)}class HighlightBuilder{constructor(e,n,r){this.at=e,this.highlighters=n,this.span=r,this.class=""}startSpan(e,n){n!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=n)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,n,r,c,u){let{type:h,from:p,to:b}=e;if(p>=r||b<=n)return;h.isTop&&(u=this.highlighters.filter(N=>!N.scope||N.scope(h)));let y=c,k=getStyleTags(e)||Rule.empty,A=highlightTags(u,k.tags);if(A&&(y&&(y+=" "),y+=A,k.mode==1&&(c+=(c?" ":"")+A)),this.startSpan(Math.max(n,p),y),k.opaque)return;let R=e.tree&&e.tree.prop(NodeProp.mounted);if(R&&R.overlay){let N=e.node.enter(R.overlay[0].from+p,1),F=this.highlighters.filter(W=>!W.scope||W.scope(R.tree.type)),V=e.firstChild();for(let W=0,J=p;;W++){let te=W=j||!e.nextSibling())););if(!te||j>r)break;J=te.to+p,J>n&&(this.highlightRange(N.cursor(),Math.max(n,te.from+p),Math.min(r,J),"",F),this.startSpan(Math.min(r,J),y))}V&&e.parent()}else if(e.firstChild()){R&&(c="");do if(!(e.to<=n)){if(e.from>=r)break;this.highlightRange(e,n,r,c,u),this.startSpan(Math.min(r,e.to),y)}while(e.nextSibling());e.parent()}}}function getStyleTags(o){let e=o.type.prop(ruleNodeProp);for(;e&&e.context&&!o.matchContext(e.context);)e=e.next;return e||null}const t=Tag.define,comment=t(),name=t(),typeName=t(name),propertyName=t(name),literal=t(),string=t(literal),number=t(literal),content=t(),heading=t(content),keyword=t(),operator=t(),punctuation=t(),bracket=t(punctuation),meta=t(),tags$1={comment,lineComment:t(comment),blockComment:t(comment),docComment:t(comment),name,variableName:t(name),typeName,tagName:t(typeName),propertyName,attributeName:t(propertyName),className:t(name),labelName:t(name),namespace:t(name),macroName:t(name),literal,string,docString:t(string),character:t(string),attributeValue:t(string),number,integer:t(number),float:t(number),bool:t(literal),regexp:t(literal),escape:t(literal),color:t(literal),url:t(literal),keyword,self:t(keyword),null:t(keyword),atom:t(keyword),unit:t(keyword),modifier:t(keyword),operatorKeyword:t(keyword),controlKeyword:t(keyword),definitionKeyword:t(keyword),moduleKeyword:t(keyword),operator,derefOperator:t(operator),arithmeticOperator:t(operator),logicOperator:t(operator),bitwiseOperator:t(operator),compareOperator:t(operator),updateOperator:t(operator),definitionOperator:t(operator),typeOperator:t(operator),controlOperator:t(operator),punctuation,separator:t(punctuation),bracket,angleBracket:t(bracket),squareBracket:t(bracket),paren:t(bracket),brace:t(bracket),content,heading,heading1:t(heading),heading2:t(heading),heading3:t(heading),heading4:t(heading),heading5:t(heading),heading6:t(heading),contentSeparator:t(content),list:t(content),quote:t(content),emphasis:t(content),strong:t(content),link:t(content),monospace:t(content),strikethrough:t(content),inserted:t(),deleted:t(),changed:t(),invalid:t(),meta,documentMeta:t(meta),annotation:t(meta),processingInstruction:t(meta),definition:Tag.defineModifier("definition"),constant:Tag.defineModifier("constant"),function:Tag.defineModifier("function"),standard:Tag.defineModifier("standard"),local:Tag.defineModifier("local"),special:Tag.defineModifier("special")};for(let o in tags$1){let e=tags$1[o];e instanceof Tag&&(e.name=o)}tagHighlighter([{tag:tags$1.link,class:"tok-link"},{tag:tags$1.heading,class:"tok-heading"},{tag:tags$1.emphasis,class:"tok-emphasis"},{tag:tags$1.strong,class:"tok-strong"},{tag:tags$1.keyword,class:"tok-keyword"},{tag:tags$1.atom,class:"tok-atom"},{tag:tags$1.bool,class:"tok-bool"},{tag:tags$1.url,class:"tok-url"},{tag:tags$1.labelName,class:"tok-labelName"},{tag:tags$1.inserted,class:"tok-inserted"},{tag:tags$1.deleted,class:"tok-deleted"},{tag:tags$1.literal,class:"tok-literal"},{tag:tags$1.string,class:"tok-string"},{tag:tags$1.number,class:"tok-number"},{tag:[tags$1.regexp,tags$1.escape,tags$1.special(tags$1.string)],class:"tok-string2"},{tag:tags$1.variableName,class:"tok-variableName"},{tag:tags$1.local(tags$1.variableName),class:"tok-variableName tok-local"},{tag:tags$1.definition(tags$1.variableName),class:"tok-variableName tok-definition"},{tag:tags$1.special(tags$1.variableName),class:"tok-variableName2"},{tag:tags$1.definition(tags$1.propertyName),class:"tok-propertyName tok-definition"},{tag:tags$1.typeName,class:"tok-typeName"},{tag:tags$1.namespace,class:"tok-namespace"},{tag:tags$1.className,class:"tok-className"},{tag:tags$1.macroName,class:"tok-macroName"},{tag:tags$1.propertyName,class:"tok-propertyName"},{tag:tags$1.operator,class:"tok-operator"},{tag:tags$1.comment,class:"tok-comment"},{tag:tags$1.meta,class:"tok-meta"},{tag:tags$1.invalid,class:"tok-invalid"},{tag:tags$1.punctuation,class:"tok-punctuation"}]);var _a;const languageDataProp=new NodeProp;function defineLanguageFacet(o){return Facet.define({combine:o?e=>e.concat(o):void 0})}const sublanguageProp=new NodeProp;class Language{constructor(e,n,r=[],c=""){this.data=e,this.name=c,EditorState.prototype.hasOwnProperty("tree")||Object.defineProperty(EditorState.prototype,"tree",{get(){return syntaxTree(this)}}),this.parser=n,this.extension=[language.of(this),EditorState.languageData.of((u,h,p)=>{let b=topNodeAt(u,h,p),y=b.type.prop(languageDataProp);if(!y)return[];let k=u.facet(y),A=b.type.prop(sublanguageProp);if(A){let R=b.resolve(h-b.from,p);for(let N of A)if(N.test(R,u)){let F=u.facet(N.facet);return N.type=="replace"?F:F.concat(k)}}return k})].concat(r)}isActiveAt(e,n,r=-1){return topNodeAt(e,n,r).type.prop(languageDataProp)==this.data}findRegions(e){let n=e.facet(language);if((n==null?void 0:n.data)==this.data)return[{from:0,to:e.doc.length}];if(!n||!n.allowsNesting)return[];let r=[],c=(u,h)=>{if(u.prop(languageDataProp)==this.data){r.push({from:h,to:h+u.length});return}let p=u.prop(NodeProp.mounted);if(p){if(p.tree.prop(languageDataProp)==this.data){if(p.overlay)for(let b of p.overlay)r.push({from:b.from+h,to:b.to+h});else r.push({from:h,to:h+u.length});return}else if(p.overlay){let b=r.length;if(c(p.tree,p.overlay[0].from+h),r.length>b)return}}for(let b=0;br.isTop?n:void 0)]}),e.name)}configure(e,n){return new LRLanguage(this.data,this.parser.configure(e),n||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function syntaxTree(o){let e=o.field(Language.state,!1);return e?e.tree:Tree.empty}class DocInput{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,n){let r=this.cursorPos-this.string.length;return e=this.cursorPos?this.doc.sliceString(e,n):this.string.slice(e-r,n-r)}}let currentContext=null;class ParseContext{constructor(e,n,r=[],c,u,h,p,b){this.parser=e,this.state=n,this.fragments=r,this.tree=c,this.treeLen=u,this.viewport=h,this.skipped=p,this.scheduleOn=b,this.parse=null,this.tempSkipped=[]}static create(e,n,r){return new ParseContext(e,n,[],Tree.empty,0,r,[],null)}startParse(){return this.parser.startParse(new DocInput(this.state.doc),this.fragments)}work(e,n){return n!=null&&n>=this.state.doc.length&&(n=void 0),this.tree!=Tree.empty&&this.isDone(n??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var r;if(typeof e=="number"){let c=Date.now()+e;e=()=>Date.now()>c}for(this.parse||(this.parse=this.startParse()),n!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>n)&&n=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(n=this.parse.advance()););}),this.treeLen=e,this.tree=n,this.fragments=this.withoutTempSkipped(TreeFragment.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let n=currentContext;currentContext=this;try{return e()}finally{currentContext=n}}withoutTempSkipped(e){for(let n;n=this.tempSkipped.pop();)e=cutFragments(e,n.from,n.to);return e}changes(e,n){let{fragments:r,tree:c,treeLen:u,viewport:h,skipped:p}=this;if(this.takeTree(),!e.empty){let b=[];if(e.iterChangedRanges((y,k,A,R)=>b.push({fromA:y,toA:k,fromB:A,toB:R})),r=TreeFragment.applyChanges(r,b),c=Tree.empty,u=0,h={from:e.mapPos(h.from,-1),to:e.mapPos(h.to,1)},this.skipped.length){p=[];for(let y of this.skipped){let k=e.mapPos(y.from,1),A=e.mapPos(y.to,-1);ke.from&&(this.fragments=cutFragments(this.fragments,c,u),this.skipped.splice(r--,1))}return this.skipped.length>=n?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,n){this.skipped.push({from:e,to:n})}static getSkippingParser(e){return new class extends Parser{createParse(n,r,c){let u=c[0].from,h=c[c.length-1].to;return{parsedPos:u,advance(){let b=currentContext;if(b){for(let y of c)b.tempSkipped.push(y);e&&(b.scheduleOn=b.scheduleOn?Promise.all([b.scheduleOn,e]):e)}return this.parsedPos=h,new Tree(NodeType.none,[],[],h-u)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let n=this.fragments;return this.treeLen>=e&&n.length&&n[0].from==0&&n[0].to>=e}static get(){return currentContext}}function cutFragments(o,e,n){return TreeFragment.applyChanges(o,[{fromA:e,toA:n,fromB:e,toB:n}])}class LanguageState{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let n=this.context.changes(e.changes,e.state),r=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),n.viewport.to);return n.work(20,r)||n.takeTree(),new LanguageState(n)}static init(e){let n=Math.min(3e3,e.doc.length),r=ParseContext.create(e.facet(language).parser,e,{from:0,to:n});return r.work(20,n)||r.takeTree(),new LanguageState(r)}}Language.state=StateField.define({create:LanguageState.init,update(o,e){for(let n of e.effects)if(n.is(Language.setState))return n.value;return e.startState.facet(language)!=e.state.facet(language)?LanguageState.init(e.state):o.apply(e)}});let requestIdle=o=>{let e=setTimeout(()=>o(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(requestIdle=o=>{let e=-1,n=setTimeout(()=>{e=requestIdleCallback(o,{timeout:400})},100);return()=>e<0?clearTimeout(n):cancelIdleCallback(e)});const isInputPending=typeof navigator<"u"&&(!((_a=navigator.scheduling)===null||_a===void 0)&&_a.isInputPending)?()=>navigator.scheduling.isInputPending():null,parseWorker=ViewPlugin.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let n=this.view.state.field(Language.state).context;(n.updateViewport(e.view.viewport)||this.view.viewport.to>n.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(n)}scheduleWork(){if(this.working)return;let{state:e}=this.view,n=e.field(Language.state);(n.tree!=n.context.tree||!n.context.isDone(e.doc.length))&&(this.working=requestIdle(this.work))}work(e){this.working=null;let n=Date.now();if(this.chunkEndc+1e3,b=u.context.work(()=>isInputPending&&isInputPending()||Date.now()>h,c+(p?0:1e5));this.chunkBudget-=Date.now()-n,(b||this.chunkBudget<=0)&&(u.context.takeTree(),this.view.dispatch({effects:Language.setState.of(new LanguageState(u.context))})),this.chunkBudget>0&&!(b&&!p)&&this.scheduleWork(),this.checkAsyncSchedule(u.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(n=>logException(this.view.state,n)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),language=Facet.define({combine(o){return o.length?o[0]:null},enables:o=>[Language.state,parseWorker,EditorView.contentAttributes.compute([o],e=>{let n=e.facet(o);return n&&n.name?{"data-language":n.name}:{}})]});class LanguageSupport{constructor(e,n=[]){this.language=e,this.support=n,this.extension=[e,n]}}class LanguageDescription{constructor(e,n,r,c,u,h=void 0){this.name=e,this.alias=n,this.extensions=r,this.filename=c,this.loadFunc=u,this.support=h,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(e=>this.support=e,e=>{throw this.loading=null,e}))}static of(e){let{load:n,support:r}=e;if(!n){if(!r)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");n=()=>Promise.resolve(r)}return new LanguageDescription(e.name,(e.alias||[]).concat(e.name).map(c=>c.toLowerCase()),e.extensions||[],e.filename,n,r)}static matchFilename(e,n){for(let c of e)if(c.filename&&c.filename.test(n))return c;let r=/\.([^.]+)$/.exec(n);if(r){for(let c of e)if(c.extensions.indexOf(r[1])>-1)return c}return null}static matchLanguageName(e,n,r=!0){n=n.toLowerCase();for(let c of e)if(c.alias.some(u=>u==n))return c;if(r)for(let c of e)for(let u of c.alias){let h=n.indexOf(u);if(h>-1&&(u.length>2||!/\w/.test(n[h-1])&&!/\w/.test(n[h+u.length])))return c}return null}}const indentService=Facet.define(),indentUnit=Facet.define({combine:o=>{if(!o.length)return" ";let e=o[0];if(!e||/\S/.test(e)||Array.from(e).some(n=>n!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(o[0]));return e}});function getIndentUnit(o){let e=o.facet(indentUnit);return e.charCodeAt(0)==9?o.tabSize*e.length:e.length}function indentString(o,e){let n="",r=o.tabSize,c=o.facet(indentUnit)[0];if(c==" "){for(;e>=r;)n+=" ",e-=r;c=" "}for(let u=0;u=e?syntaxIndentation(o,n,e):null}class IndentContext{constructor(e,n={}){this.state=e,this.options=n,this.unit=getIndentUnit(e)}lineAt(e,n=1){let r=this.state.doc.lineAt(e),{simulateBreak:c,simulateDoubleBreak:u}=this.options;return c!=null&&c>=r.from&&c<=r.to?u&&c==e?{text:"",from:e}:(n<0?c-1&&(u+=h-this.countColumn(r,r.search(/\S|$/))),u}countColumn(e,n=e.length){return countColumn(e,this.state.tabSize,n)}lineIndent(e,n=1){let{text:r,from:c}=this.lineAt(e,n),u=this.options.overrideIndentation;if(u){let h=u(c);if(h>-1)return h}return this.countColumn(r,r.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const indentNodeProp=new NodeProp;function syntaxIndentation(o,e,n){let r=e.resolveStack(n),c=r.node.enterUnfinishedNodesBefore(n);if(c!=r.node){let u=[];for(let h=c;h!=r.node;h=h.parent)u.push(h);for(let h=u.length-1;h>=0;h--)r={node:u[h],next:r}}return indentFor(r,o,n)}function indentFor(o,e,n){for(let r=o;r;r=r.next){let c=indentStrategy(r.node);if(c)return c(TreeIndentContext.create(e,n,r))}return 0}function ignoreClosed(o){return o.pos==o.options.simulateBreak&&o.options.simulateDoubleBreak}function indentStrategy(o){let e=o.type.prop(indentNodeProp);if(e)return e;let n=o.firstChild,r;if(n&&(r=n.type.prop(NodeProp.closedBy))){let c=o.lastChild,u=c&&r.indexOf(c.name)>-1;return h=>delimitedStrategy(h,!0,1,void 0,u&&!ignoreClosed(h)?c.from:void 0)}return o.parent==null?topIndent:null}function topIndent(){return 0}class TreeIndentContext extends IndentContext{constructor(e,n,r){super(e.state,e.options),this.base=e,this.pos=n,this.context=r}get node(){return this.context.node}static create(e,n,r){return new TreeIndentContext(e,n,r)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let n=this.state.doc.lineAt(e.from);for(;;){let r=e.resolve(n.from);for(;r.parent&&r.parent.from==r.from;)r=r.parent;if(isParent(r,e))break;n=this.state.doc.lineAt(r.from)}return this.lineIndent(n.from)}continue(){return indentFor(this.context.next,this.base,this.pos)}}function isParent(o,e){for(let n=e;n;n=n.parent)if(o==n)return!0;return!1}function bracketedAligned(o){let e=o.node,n=e.childAfter(e.from),r=e.lastChild;if(!n)return null;let c=o.options.simulateBreak,u=o.state.doc.lineAt(n.from),h=c==null||c<=u.from?u.to:Math.min(u.to,c);for(let p=n.to;;){let b=e.childAfter(p);if(!b||b==r)return null;if(!b.type.isSkipped)return b.fromdelimitedStrategy(r,e,n,o)}function delimitedStrategy(o,e,n,r,c){let u=o.textAfter,h=u.match(/^\s*/)[0].length,p=r&&u.slice(h,h+r.length)==r||c==o.pos+h,b=e?bracketedAligned(o):null;return b?p?o.column(b.from):o.column(b.to):o.baseIndent+(p?0:o.unit*n)}const flatIndent=o=>o.baseIndent;function continuedIndent({except:o,units:e=1}={}){return n=>{let r=o&&o.test(n.textAfter);return n.baseIndent+(r?0:e*n.unit)}}const DontIndentBeyond=200;function indentOnInput(){return EditorState.transactionFilter.of(o=>{if(!o.docChanged||!o.isUserEvent("input.type")&&!o.isUserEvent("input.complete"))return o;let e=o.startState.languageDataAt("indentOnInput",o.startState.selection.main.head);if(!e.length)return o;let n=o.newDoc,{head:r}=o.newSelection.main,c=n.lineAt(r);if(r>c.from+DontIndentBeyond)return o;let u=n.sliceString(c.from,r);if(!e.some(y=>y.test(u)))return o;let{state:h}=o,p=-1,b=[];for(let{head:y}of h.selection.ranges){let k=h.doc.lineAt(y);if(k.from==p)continue;p=k.from;let A=getIndentation(h,k.from);if(A==null)continue;let R=/^\s*/.exec(k.text)[0],N=indentString(h,A);R!=N&&b.push({from:k.from,to:k.from+R.length,insert:N})}return b.length?[o,{changes:b,sequential:!0}]:o})}const foldService=Facet.define(),foldNodeProp=new NodeProp;function foldInside(o){let e=o.firstChild,n=o.lastChild;return e&&e.ton)continue;if(u&&p.from=e&&y.to>n&&(u=y)}}return u}function isUnfinished(o){let e=o.lastChild;return e&&e.to==o.to&&e.type.isError}function foldable(o,e,n){for(let r of o.facet(foldService)){let c=r(o,e,n);if(c)return c}return syntaxFolding(o,e,n)}function mapRange(o,e){let n=e.mapPos(o.from,1),r=e.mapPos(o.to,-1);return n>=r?void 0:{from:n,to:r}}const foldEffect=StateEffect.define({map:mapRange}),unfoldEffect=StateEffect.define({map:mapRange});function selectedLines(o){let e=[];for(let{head:n}of o.state.selection.ranges)e.some(r=>r.from<=n&&r.to>=n)||e.push(o.lineBlockAt(n));return e}const foldState=StateField.define({create(){return Decoration.none},update(o,e){o=o.map(e.changes);for(let n of e.effects)if(n.is(foldEffect)&&!foldExists(o,n.value.from,n.value.to)){let{preparePlaceholder:r}=e.state.facet(foldConfig),c=r?Decoration.replace({widget:new PreparedFoldWidget(r(e.state,n.value))}):foldWidget;o=o.update({add:[c.range(n.value.from,n.value.to)]})}else n.is(unfoldEffect)&&(o=o.update({filter:(r,c)=>n.value.from!=r||n.value.to!=c,filterFrom:n.value.from,filterTo:n.value.to}));if(e.selection){let n=!1,{head:r}=e.selection.main;o.between(r,r,(c,u)=>{cr&&(n=!0)}),n&&(o=o.update({filterFrom:r,filterTo:r,filter:(c,u)=>u<=r||c>=r}))}return o},provide:o=>EditorView.decorations.from(o),toJSON(o,e){let n=[];return o.between(0,e.doc.length,(r,c)=>{n.push(r,c)}),n},fromJSON(o){if(!Array.isArray(o)||o.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let n=0;n{(!c||c.from>u)&&(c={from:u,to:h})}),c}function foldExists(o,e,n){let r=!1;return o.between(e,e,(c,u)=>{c==e&&u==n&&(r=!0)}),r}function maybeEnable(o,e){return o.field(foldState,!1)?e:e.concat(StateEffect.appendConfig.of(codeFolding()))}const foldCode=o=>{for(let e of selectedLines(o)){let n=foldable(o.state,e.from,e.to);if(n)return o.dispatch({effects:maybeEnable(o.state,[foldEffect.of(n),announceFold(o,n)])}),!0}return!1},unfoldCode=o=>{if(!o.state.field(foldState,!1))return!1;let e=[];for(let n of selectedLines(o)){let r=findFold(o.state,n.from,n.to);r&&e.push(unfoldEffect.of(r),announceFold(o,r,!1))}return e.length&&o.dispatch({effects:e}),e.length>0};function announceFold(o,e,n=!0){let r=o.state.doc.lineAt(e.from).number,c=o.state.doc.lineAt(e.to).number;return EditorView.announce.of(`${o.state.phrase(n?"Folded lines":"Unfolded lines")} ${r} ${o.state.phrase("to")} ${c}.`)}const foldAll=o=>{let{state:e}=o,n=[];for(let r=0;r{let e=o.state.field(foldState,!1);if(!e||!e.size)return!1;let n=[];return e.between(0,o.state.doc.length,(r,c)=>{n.push(unfoldEffect.of({from:r,to:c}))}),o.dispatch({effects:n}),!0},foldKeymap=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:foldCode},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:unfoldCode},{key:"Ctrl-Alt-[",run:foldAll},{key:"Ctrl-Alt-]",run:unfoldAll}],defaultConfig={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},foldConfig=Facet.define({combine(o){return combineConfig(o,defaultConfig)}});function codeFolding(o){return[foldState,baseTheme$1$2]}function widgetToDOM(o,e){let{state:n}=o,r=n.facet(foldConfig),c=h=>{let p=o.lineBlockAt(o.posAtDOM(h.target)),b=findFold(o.state,p.from,p.to);b&&o.dispatch({effects:unfoldEffect.of(b)}),h.preventDefault()};if(r.placeholderDOM)return r.placeholderDOM(o,c,e);let u=document.createElement("span");return u.textContent=r.placeholderText,u.setAttribute("aria-label",n.phrase("folded code")),u.title=n.phrase("unfold"),u.className="cm-foldPlaceholder",u.onclick=c,u}const foldWidget=Decoration.replace({widget:new class extends WidgetType{toDOM(o){return widgetToDOM(o,null)}}});class PreparedFoldWidget extends WidgetType{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return widgetToDOM(e,this.value)}}const foldGutterDefaults={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class FoldMarker extends GutterMarker{constructor(e,n){super(),this.config=e,this.open=n}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let n=document.createElement("span");return n.textContent=this.open?this.config.openText:this.config.closedText,n.title=e.state.phrase(this.open?"Fold line":"Unfold line"),n}}function foldGutter(o={}){let e=Object.assign(Object.assign({},foldGutterDefaults),o),n=new FoldMarker(e,!0),r=new FoldMarker(e,!1),c=ViewPlugin.fromClass(class{constructor(h){this.from=h.viewport.from,this.markers=this.buildMarkers(h)}update(h){(h.docChanged||h.viewportChanged||h.startState.facet(language)!=h.state.facet(language)||h.startState.field(foldState,!1)!=h.state.field(foldState,!1)||syntaxTree(h.startState)!=syntaxTree(h.state)||e.foldingChanged(h))&&(this.markers=this.buildMarkers(h.view))}buildMarkers(h){let p=new RangeSetBuilder;for(let b of h.viewportLineBlocks){let y=findFold(h.state,b.from,b.to)?r:foldable(h.state,b.from,b.to)?n:null;y&&p.add(b.from,b.from,y)}return p.finish()}}),{domEventHandlers:u}=e;return[c,gutter({class:"cm-foldGutter",markers(h){var p;return((p=h.plugin(c))===null||p===void 0?void 0:p.markers)||RangeSet.empty},initialSpacer(){return new FoldMarker(e,!1)},domEventHandlers:Object.assign(Object.assign({},u),{click:(h,p,b)=>{if(u.click&&u.click(h,p,b))return!0;let y=findFold(h.state,p.from,p.to);if(y)return h.dispatch({effects:unfoldEffect.of(y)}),!0;let k=foldable(h.state,p.from,p.to);return k?(h.dispatch({effects:foldEffect.of(k)}),!0):!1}})}),codeFolding()]}const baseTheme$1$2=EditorView.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class HighlightStyle{constructor(e,n){this.specs=e;let r;function c(p){let b=StyleModule.newName();return(r||(r=Object.create(null)))["."+b]=p,b}const u=typeof n.all=="string"?n.all:n.all?c(n.all):void 0,h=n.scope;this.scope=h instanceof Language?p=>p.prop(languageDataProp)==h.data:h?p=>p==h:void 0,this.style=tagHighlighter(e.map(p=>({tag:p.tag,class:p.class||c(Object.assign({},p,{tag:null}))})),{all:u}).style,this.module=r?new StyleModule(r):null,this.themeType=n.themeType}static define(e,n){return new HighlightStyle(e,n||{})}}const highlighterFacet=Facet.define(),fallbackHighlighter=Facet.define({combine(o){return o.length?[o[0]]:null}});function getHighlighters(o){let e=o.facet(highlighterFacet);return e.length?e:o.facet(fallbackHighlighter)}function syntaxHighlighting(o,e){let n=[treeHighlighter],r;return o instanceof HighlightStyle&&(o.module&&n.push(EditorView.styleModule.of(o.module)),r=o.themeType),e!=null&&e.fallback?n.push(fallbackHighlighter.of(o)):r?n.push(highlighterFacet.computeN([EditorView.darkTheme],c=>c.facet(EditorView.darkTheme)==(r=="dark")?[o]:[])):n.push(highlighterFacet.of(o)),n}class TreeHighlighter{constructor(e){this.markCache=Object.create(null),this.tree=syntaxTree(e.state),this.decorations=this.buildDeco(e,getHighlighters(e.state)),this.decoratedTo=e.viewport.to}update(e){let n=syntaxTree(e.state),r=getHighlighters(e.state),c=r!=getHighlighters(e.startState),{viewport:u}=e.view,h=e.changes.mapPos(this.decoratedTo,1);n.length=u.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=h):(n!=this.tree||e.viewportChanged||c)&&(this.tree=n,this.decorations=this.buildDeco(e.view,r),this.decoratedTo=u.to)}buildDeco(e,n){if(!n||!this.tree.length)return Decoration.none;let r=new RangeSetBuilder;for(let{from:c,to:u}of e.visibleRanges)highlightTree(this.tree,n,(h,p,b)=>{r.add(h,p,this.markCache[b]||(this.markCache[b]=Decoration.mark({class:b})))},c,u);return r.finish()}}const treeHighlighter=Prec.high(ViewPlugin.fromClass(TreeHighlighter,{decorations:o=>o.decorations})),defaultHighlightStyle=HighlightStyle.define([{tag:tags$1.meta,color:"#404740"},{tag:tags$1.link,textDecoration:"underline"},{tag:tags$1.heading,textDecoration:"underline",fontWeight:"bold"},{tag:tags$1.emphasis,fontStyle:"italic"},{tag:tags$1.strong,fontWeight:"bold"},{tag:tags$1.strikethrough,textDecoration:"line-through"},{tag:tags$1.keyword,color:"#708"},{tag:[tags$1.atom,tags$1.bool,tags$1.url,tags$1.contentSeparator,tags$1.labelName],color:"#219"},{tag:[tags$1.literal,tags$1.inserted],color:"#164"},{tag:[tags$1.string,tags$1.deleted],color:"#a11"},{tag:[tags$1.regexp,tags$1.escape,tags$1.special(tags$1.string)],color:"#e40"},{tag:tags$1.definition(tags$1.variableName),color:"#00f"},{tag:tags$1.local(tags$1.variableName),color:"#30a"},{tag:[tags$1.typeName,tags$1.namespace],color:"#085"},{tag:tags$1.className,color:"#167"},{tag:[tags$1.special(tags$1.variableName),tags$1.macroName],color:"#256"},{tag:tags$1.definition(tags$1.propertyName),color:"#00c"},{tag:tags$1.comment,color:"#940"},{tag:tags$1.invalid,color:"#f00"}]),baseTheme$3=EditorView.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),DefaultScanDist=1e4,DefaultBrackets="()[]{}",bracketMatchingConfig=Facet.define({combine(o){return combineConfig(o,{afterCursor:!0,brackets:DefaultBrackets,maxScanDistance:DefaultScanDist,renderMatch:defaultRenderMatch})}}),matchingMark=Decoration.mark({class:"cm-matchingBracket"}),nonmatchingMark=Decoration.mark({class:"cm-nonmatchingBracket"});function defaultRenderMatch(o){let e=[],n=o.matched?matchingMark:nonmatchingMark;return e.push(n.range(o.start.from,o.start.to)),o.end&&e.push(n.range(o.end.from,o.end.to)),e}const bracketMatchingState=StateField.define({create(){return Decoration.none},update(o,e){if(!e.docChanged&&!e.selection)return o;let n=[],r=e.state.facet(bracketMatchingConfig);for(let c of e.state.selection.ranges){if(!c.empty)continue;let u=matchBrackets(e.state,c.head,-1,r)||c.head>0&&matchBrackets(e.state,c.head-1,1,r)||r.afterCursor&&(matchBrackets(e.state,c.head,1,r)||c.headEditorView.decorations.from(o)}),bracketMatchingUnique=[bracketMatchingState,baseTheme$3];function bracketMatching(o={}){return[bracketMatchingConfig.of(o),bracketMatchingUnique]}const bracketMatchingHandle=new NodeProp;function matchingNodes(o,e,n){let r=o.prop(e<0?NodeProp.openedBy:NodeProp.closedBy);if(r)return r;if(o.name.length==1){let c=n.indexOf(o.name);if(c>-1&&c%2==(e<0?1:0))return[n[c+e]]}return null}function findHandle(o){let e=o.type.prop(bracketMatchingHandle);return e?e(o.node):o}function matchBrackets(o,e,n,r={}){let c=r.maxScanDistance||DefaultScanDist,u=r.brackets||DefaultBrackets,h=syntaxTree(o),p=h.resolveInner(e,n);for(let b=p;b;b=b.parent){let y=matchingNodes(b.type,n,u);if(y&&b.from0?e>=k.from&&ek.from&&e<=k.to))return matchMarkedBrackets(o,e,n,b,k,y,u)}}return matchPlainBrackets(o,e,n,h,p.type,c,u)}function matchMarkedBrackets(o,e,n,r,c,u,h){let p=r.parent,b={from:c.from,to:c.to},y=0,k=p==null?void 0:p.cursor();if(k&&(n<0?k.childBefore(r.from):k.childAfter(r.to)))do if(n<0?k.to<=r.from:k.from>=r.to){if(y==0&&u.indexOf(k.type.name)>-1&&k.from0)return null;let y={from:n<0?e-1:e,to:n>0?e+1:e},k=o.doc.iterRange(e,n>0?o.doc.length:0),A=0;for(let R=0;!k.next().done&&R<=u;){let N=k.value;n<0&&(R+=N.length);let F=e+R*n;for(let V=n>0?0:N.length-1,W=n>0?N.length:-1;V!=W;V+=n){let J=h.indexOf(N[V]);if(!(J<0||r.resolveInner(F+V,1).type!=c))if(J%2==0==n>0)A++;else{if(A==1)return{start:y,end:{from:F+V,to:F+V+1},matched:J>>1==b>>1};A--}}n>0&&(R+=N.length)}return k.done?{start:y,matched:!1}:null}const noTokens=Object.create(null),typeArray=[NodeType.none],warned=[],byTag=Object.create(null),defaultTable=Object.create(null);for(let[o,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])defaultTable[o]=createTokenType(noTokens,e);function warnForPart(o,e){warned.indexOf(o)>-1||(warned.push(o),console.warn(e))}function createTokenType(o,e){let n=[];for(let p of e.split(" ")){let b=[];for(let y of p.split(".")){let k=o[y]||tags$1[y];k?typeof k=="function"?b.length?b=b.map(k):warnForPart(y,`Modifier ${y} used at start of tag`):b.length?warnForPart(y,`Tag ${y} used as modifier`):b=Array.isArray(k)?k:[k]:warnForPart(y,`Unknown highlighting tag ${y}`)}for(let y of b)n.push(y)}if(!n.length)return 0;let r=e.replace(/ /g,"_"),c=r+" "+n.map(p=>p.id),u=byTag[c];if(u)return u.id;let h=byTag[c]=NodeType.define({id:typeArray.length,name:r,props:[styleTags({[r]:n})]});return typeArray.push(h),h.id}Direction.RTL,Direction.LTR;const toggleComment=o=>{let{state:e}=o,n=e.doc.lineAt(e.selection.main.from),r=getConfig(o.state,n.from);return r.line?toggleLineComment(o):r.block?toggleBlockCommentByLine(o):!1};function command(o,e){return({state:n,dispatch:r})=>{if(n.readOnly)return!1;let c=o(e,n);return c?(r(n.update(c)),!0):!1}}const toggleLineComment=command(changeLineComment,0),toggleBlockComment=command(changeBlockComment,0),toggleBlockCommentByLine=command((o,e)=>changeBlockComment(o,e,selectedLineRanges(e)),0);function getConfig(o,e){let n=o.languageDataAt("commentTokens",e);return n.length?n[0]:{}}const SearchMargin=50;function findBlockComment(o,{open:e,close:n},r,c){let u=o.sliceDoc(r-SearchMargin,r),h=o.sliceDoc(c,c+SearchMargin),p=/\s*$/.exec(u)[0].length,b=/^\s*/.exec(h)[0].length,y=u.length-p;if(u.slice(y-e.length,y)==e&&h.slice(b,b+n.length)==n)return{open:{pos:r-p,margin:p&&1},close:{pos:c+b,margin:b&&1}};let k,A;c-r<=2*SearchMargin?k=A=o.sliceDoc(r,c):(k=o.sliceDoc(r,r+SearchMargin),A=o.sliceDoc(c-SearchMargin,c));let R=/^\s*/.exec(k)[0].length,N=/\s*$/.exec(A)[0].length,F=A.length-N-n.length;return k.slice(R,R+e.length)==e&&A.slice(F,F+n.length)==n?{open:{pos:r+R+e.length,margin:/\s/.test(k.charAt(R+e.length))?1:0},close:{pos:c-N-n.length,margin:/\s/.test(A.charAt(F-1))?1:0}}:null}function selectedLineRanges(o){let e=[];for(let n of o.selection.ranges){let r=o.doc.lineAt(n.from),c=n.to<=r.to?r:o.doc.lineAt(n.to),u=e.length-1;u>=0&&e[u].to>r.from?e[u].to=c.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:c.to})}return e}function changeBlockComment(o,e,n=e.selection.ranges){let r=n.map(u=>getConfig(e,u.from).block);if(!r.every(u=>u))return null;let c=n.map((u,h)=>findBlockComment(e,r[h],u.from,u.to));if(o!=2&&!c.every(u=>u))return{changes:e.changes(n.map((u,h)=>c[h]?[]:[{from:u.from,insert:r[h].open+" "},{from:u.to,insert:" "+r[h].close}]))};if(o!=1&&c.some(u=>u)){let u=[];for(let h=0,p;hc&&(u==h||h>A.from)){c=A.from;let R=/^\s*/.exec(A.text)[0].length,N=R==A.length,F=A.text.slice(R,R+y.length)==y?R:-1;Ru.comment<0&&(!u.empty||u.single))){let u=[];for(let{line:p,token:b,indent:y,empty:k,single:A}of r)(A||!k)&&u.push({from:p.from+y,insert:b+" "});let h=e.changes(u);return{changes:h,selection:e.selection.map(h,1)}}else if(o!=1&&r.some(u=>u.comment>=0)){let u=[];for(let{line:h,comment:p,token:b}of r)if(p>=0){let y=h.from+p,k=y+b.length;h.text[k-h.from]==" "&&k++,u.push({from:y,to:k})}return{changes:u}}return null}const fromHistory=Annotation.define(),isolateHistory=Annotation.define(),invertedEffects=Facet.define(),historyConfig=Facet.define({combine(o){return combineConfig(o,{minDepth:100,newGroupDelay:500,joinToEvent:(e,n)=>n},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,n)=>(r,c)=>e(r,c)||n(r,c)})}}),historyField_=StateField.define({create(){return HistoryState.empty},update(o,e){let n=e.state.facet(historyConfig),r=e.annotation(fromHistory);if(r){let b=HistEvent.fromTransaction(e,r.selection),y=r.side,k=y==0?o.undone:o.done;return b?k=updateBranch(k,k.length,n.minDepth,b):k=addSelection(k,e.startState.selection),new HistoryState(y==0?r.rest:k,y==0?k:r.rest)}let c=e.annotation(isolateHistory);if((c=="full"||c=="before")&&(o=o.isolate()),e.annotation(Transaction.addToHistory)===!1)return e.changes.empty?o:o.addMapping(e.changes.desc);let u=HistEvent.fromTransaction(e),h=e.annotation(Transaction.time),p=e.annotation(Transaction.userEvent);return u?o=o.addChanges(u,h,p,n,e):e.selection&&(o=o.addSelection(e.startState.selection,h,p,n.newGroupDelay)),(c=="full"||c=="after")&&(o=o.isolate()),o},toJSON(o){return{done:o.done.map(e=>e.toJSON()),undone:o.undone.map(e=>e.toJSON())}},fromJSON(o){return new HistoryState(o.done.map(HistEvent.fromJSON),o.undone.map(HistEvent.fromJSON))}});function history$1(o={}){return[historyField_,historyConfig.of(o),EditorView.domEventHandlers({beforeinput(e,n){let r=e.inputType=="historyUndo"?undo:e.inputType=="historyRedo"?redo:null;return r?(e.preventDefault(),r(n)):!1}})]}function cmd(o,e){return function({state:n,dispatch:r}){if(!e&&n.readOnly)return!1;let c=n.field(historyField_,!1);if(!c)return!1;let u=c.pop(o,n,e);return u?(r(u),!0):!1}}const undo=cmd(0,!1),redo=cmd(1,!1),undoSelection=cmd(0,!0),redoSelection=cmd(1,!0);class HistEvent{constructor(e,n,r,c,u){this.changes=e,this.effects=n,this.mapped=r,this.startSelection=c,this.selectionsAfter=u}setSelAfter(e){return new HistEvent(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,n,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(n=this.mapped)===null||n===void 0?void 0:n.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(c=>c.toJSON())}}static fromJSON(e){return new HistEvent(e.changes&&ChangeSet.fromJSON(e.changes),[],e.mapped&&ChangeDesc.fromJSON(e.mapped),e.startSelection&&EditorSelection.fromJSON(e.startSelection),e.selectionsAfter.map(EditorSelection.fromJSON))}static fromTransaction(e,n){let r=none$2;for(let c of e.startState.facet(invertedEffects)){let u=c(e);u.length&&(r=r.concat(u))}return!r.length&&e.changes.empty?null:new HistEvent(e.changes.invert(e.startState.doc),r,void 0,n||e.startState.selection,none$2)}static selection(e){return new HistEvent(void 0,none$2,void 0,void 0,e)}}function updateBranch(o,e,n,r){let c=e+1>n+20?e-n-1:0,u=o.slice(c,e);return u.push(r),u}function isAdjacent(o,e){let n=[],r=!1;return o.iterChangedRanges((c,u)=>n.push(c,u)),e.iterChangedRanges((c,u,h,p)=>{for(let b=0;b=y&&h<=k&&(r=!0)}}),r}function eqSelectionShape(o,e){return o.ranges.length==e.ranges.length&&o.ranges.filter((n,r)=>n.empty!=e.ranges[r].empty).length===0}function conc(o,e){return o.length?e.length?o.concat(e):o:e}const none$2=[],MaxSelectionsPerEvent=200;function addSelection(o,e){if(o.length){let n=o[o.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-MaxSelectionsPerEvent));return r.length&&r[r.length-1].eq(e)?o:(r.push(e),updateBranch(o,o.length-1,1e9,n.setSelAfter(r)))}else return[HistEvent.selection([e])]}function popSelection(o){let e=o[o.length-1],n=o.slice();return n[o.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),n}function addMappingToBranch(o,e){if(!o.length)return o;let n=o.length,r=none$2;for(;n;){let c=mapEvent(o[n-1],e,r);if(c.changes&&!c.changes.empty||c.effects.length){let u=o.slice(0,n);return u[n-1]=c,u}else e=c.mapped,n--,r=c.selectionsAfter}return r.length?[HistEvent.selection(r)]:none$2}function mapEvent(o,e,n){let r=conc(o.selectionsAfter.length?o.selectionsAfter.map(p=>p.map(e)):none$2,n);if(!o.changes)return HistEvent.selection(r);let c=o.changes.map(e),u=e.mapDesc(o.changes,!0),h=o.mapped?o.mapped.composeDesc(u):u;return new HistEvent(c,StateEffect.mapEffects(o.effects,e),h,o.startSelection.map(u),r)}const joinableUserEvent=/^(input\.type|delete)($|\.)/;class HistoryState{constructor(e,n,r=0,c=void 0){this.done=e,this.undone=n,this.prevTime=r,this.prevUserEvent=c}isolate(){return this.prevTime?new HistoryState(this.done,this.undone):this}addChanges(e,n,r,c,u){let h=this.done,p=h[h.length-1];return p&&p.changes&&!p.changes.empty&&e.changes&&(!r||joinableUserEvent.test(r))&&(!p.selectionsAfter.length&&n-this.prevTime0&&n-this.prevTimen.empty?o.moveByChar(n,e):rangeEnd(n,e))}function ltrAtCursor(o){return o.textDirectionAt(o.state.selection.main.head)==Direction.LTR}const cursorCharLeft=o=>cursorByChar(o,!ltrAtCursor(o)),cursorCharRight=o=>cursorByChar(o,ltrAtCursor(o));function cursorByGroup(o,e){return moveSel(o,n=>n.empty?o.moveByGroup(n,e):rangeEnd(n,e))}const cursorGroupLeft=o=>cursorByGroup(o,!ltrAtCursor(o)),cursorGroupRight=o=>cursorByGroup(o,ltrAtCursor(o));function interestingNode(o,e,n){if(e.type.prop(n))return!0;let r=e.to-e.from;return r&&(r>2||/[^\s,.;:]/.test(o.sliceDoc(e.from,e.to)))||e.firstChild}function moveBySyntax(o,e,n){let r=syntaxTree(o).resolveInner(e.head),c=n?NodeProp.closedBy:NodeProp.openedBy;for(let b=e.head;;){let y=n?r.childAfter(b):r.childBefore(b);if(!y)break;interestingNode(o,y,c)?r=y:b=n?y.to:y.from}let u=r.type.prop(c),h,p;return u&&(h=n?matchBrackets(o,r.from,1):matchBrackets(o,r.to,-1))&&h.matched?p=n?h.end.to:h.end.from:p=n?r.to:r.from,EditorSelection.cursor(p,n?-1:1)}const cursorSyntaxLeft=o=>moveSel(o,e=>moveBySyntax(o.state,e,!ltrAtCursor(o))),cursorSyntaxRight=o=>moveSel(o,e=>moveBySyntax(o.state,e,ltrAtCursor(o)));function cursorByLine(o,e){return moveSel(o,n=>{if(!n.empty)return rangeEnd(n,e);let r=o.moveVertically(n,e);return r.head!=n.head?r:o.moveToLineBoundary(n,e)})}const cursorLineUp=o=>cursorByLine(o,!1),cursorLineDown=o=>cursorByLine(o,!0);function pageInfo(o){let e=o.scrollDOM.clientHeighth.empty?o.moveVertically(h,e,n.height):rangeEnd(h,e));if(c.eq(r.selection))return!1;let u;if(n.selfScroll){let h=o.coordsAtPos(r.selection.main.head),p=o.scrollDOM.getBoundingClientRect(),b=p.top+n.marginTop,y=p.bottom-n.marginBottom;h&&h.top>b&&h.bottomcursorByPage(o,!1),cursorPageDown=o=>cursorByPage(o,!0);function moveByLineBoundary(o,e,n){let r=o.lineBlockAt(e.head),c=o.moveToLineBoundary(e,n);if(c.head==e.head&&c.head!=(n?r.to:r.from)&&(c=o.moveToLineBoundary(e,n,!1)),!n&&c.head==r.from&&r.length){let u=/^\s*/.exec(o.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;u&&e.head!=r.from+u&&(c=EditorSelection.cursor(r.from+u))}return c}const cursorLineBoundaryForward=o=>moveSel(o,e=>moveByLineBoundary(o,e,!0)),cursorLineBoundaryBackward=o=>moveSel(o,e=>moveByLineBoundary(o,e,!1)),cursorLineBoundaryLeft=o=>moveSel(o,e=>moveByLineBoundary(o,e,!ltrAtCursor(o))),cursorLineBoundaryRight=o=>moveSel(o,e=>moveByLineBoundary(o,e,ltrAtCursor(o))),cursorLineStart=o=>moveSel(o,e=>EditorSelection.cursor(o.lineBlockAt(e.head).from,1)),cursorLineEnd=o=>moveSel(o,e=>EditorSelection.cursor(o.lineBlockAt(e.head).to,-1));function toMatchingBracket(o,e,n){let r=!1,c=updateSel(o.selection,u=>{let h=matchBrackets(o,u.head,-1)||matchBrackets(o,u.head,1)||u.head>0&&matchBrackets(o,u.head-1,1)||u.headtoMatchingBracket(o,e);function extendSel(o,e){let n=updateSel(o.state.selection,r=>{let c=e(r);return EditorSelection.range(r.anchor,c.head,c.goalColumn,c.bidiLevel||void 0)});return n.eq(o.state.selection)?!1:(o.dispatch(setSel(o.state,n)),!0)}function selectByChar(o,e){return extendSel(o,n=>o.moveByChar(n,e))}const selectCharLeft=o=>selectByChar(o,!ltrAtCursor(o)),selectCharRight=o=>selectByChar(o,ltrAtCursor(o));function selectByGroup(o,e){return extendSel(o,n=>o.moveByGroup(n,e))}const selectGroupLeft=o=>selectByGroup(o,!ltrAtCursor(o)),selectGroupRight=o=>selectByGroup(o,ltrAtCursor(o)),selectSyntaxLeft=o=>extendSel(o,e=>moveBySyntax(o.state,e,!ltrAtCursor(o))),selectSyntaxRight=o=>extendSel(o,e=>moveBySyntax(o.state,e,ltrAtCursor(o)));function selectByLine(o,e){return extendSel(o,n=>o.moveVertically(n,e))}const selectLineUp=o=>selectByLine(o,!1),selectLineDown=o=>selectByLine(o,!0);function selectByPage(o,e){return extendSel(o,n=>o.moveVertically(n,e,pageInfo(o).height))}const selectPageUp=o=>selectByPage(o,!1),selectPageDown=o=>selectByPage(o,!0),selectLineBoundaryForward=o=>extendSel(o,e=>moveByLineBoundary(o,e,!0)),selectLineBoundaryBackward=o=>extendSel(o,e=>moveByLineBoundary(o,e,!1)),selectLineBoundaryLeft=o=>extendSel(o,e=>moveByLineBoundary(o,e,!ltrAtCursor(o))),selectLineBoundaryRight=o=>extendSel(o,e=>moveByLineBoundary(o,e,ltrAtCursor(o))),selectLineStart=o=>extendSel(o,e=>EditorSelection.cursor(o.lineBlockAt(e.head).from)),selectLineEnd=o=>extendSel(o,e=>EditorSelection.cursor(o.lineBlockAt(e.head).to)),cursorDocStart=({state:o,dispatch:e})=>(e(setSel(o,{anchor:0})),!0),cursorDocEnd=({state:o,dispatch:e})=>(e(setSel(o,{anchor:o.doc.length})),!0),selectDocStart=({state:o,dispatch:e})=>(e(setSel(o,{anchor:o.selection.main.anchor,head:0})),!0),selectDocEnd=({state:o,dispatch:e})=>(e(setSel(o,{anchor:o.selection.main.anchor,head:o.doc.length})),!0),selectAll=({state:o,dispatch:e})=>(e(o.update({selection:{anchor:0,head:o.doc.length},userEvent:"select"})),!0),selectLine=({state:o,dispatch:e})=>{let n=selectedLineBlocks(o).map(({from:r,to:c})=>EditorSelection.range(r,Math.min(c+1,o.doc.length)));return e(o.update({selection:EditorSelection.create(n),userEvent:"select"})),!0},selectParentSyntax=({state:o,dispatch:e})=>{let n=updateSel(o.selection,r=>{var c;let u=syntaxTree(o).resolveStack(r.from,1);for(let h=u;h;h=h.next){let{node:p}=h;if((p.from=r.to||p.to>r.to&&p.from<=r.from)&&(!((c=p.parent)===null||c===void 0)&&c.parent))return EditorSelection.range(p.to,p.from)}return r});return e(setSel(o,n)),!0},simplifySelection=({state:o,dispatch:e})=>{let n=o.selection,r=null;return n.ranges.length>1?r=EditorSelection.create([n.main]):n.main.empty||(r=EditorSelection.create([EditorSelection.cursor(n.main.head)])),r?(e(setSel(o,r)),!0):!1};function deleteBy(o,e){if(o.state.readOnly)return!1;let n="delete.selection",{state:r}=o,c=r.changeByRange(u=>{let{from:h,to:p}=u;if(h==p){let b=e(u);bh&&(n="delete.forward",b=skipAtomic(o,b,!0)),h=Math.min(h,b),p=Math.max(p,b)}else h=skipAtomic(o,h,!1),p=skipAtomic(o,p,!0);return h==p?{range:u}:{changes:{from:h,to:p},range:EditorSelection.cursor(h,hc(o)))r.between(e,e,(c,u)=>{ce&&(e=n?u:c)});return e}const deleteByChar=(o,e,n)=>deleteBy(o,r=>{let c=r.from,{state:u}=o,h=u.doc.lineAt(c),p,b;if(n&&!e&&c>h.from&&cdeleteByChar(o,!1,!0),deleteCharForward=o=>deleteByChar(o,!0,!1),deleteByGroup=(o,e)=>deleteBy(o,n=>{let r=n.head,{state:c}=o,u=c.doc.lineAt(r),h=c.charCategorizer(r);for(let p=null;;){if(r==(e?u.to:u.from)){r==n.head&&u.number!=(e?c.doc.lines:1)&&(r+=e?1:-1);break}let b=findClusterBreak(u.text,r-u.from,e)+u.from,y=u.text.slice(Math.min(r,b)-u.from,Math.max(r,b)-u.from),k=h(y);if(p!=null&&k!=p)break;(y!=" "||r!=n.head)&&(p=k),r=b}return r}),deleteGroupBackward=o=>deleteByGroup(o,!1),deleteGroupForward=o=>deleteByGroup(o,!0),deleteToLineEnd=o=>deleteBy(o,e=>{let n=o.lineBlockAt(e.head).to;return e.headdeleteBy(o,e=>{let n=o.moveToLineBoundary(e,!1).head;return e.head>n?n:Math.max(0,e.head-1)}),deleteLineBoundaryForward=o=>deleteBy(o,e=>{let n=o.moveToLineBoundary(e,!0).head;return e.head{if(o.readOnly)return!1;let n=o.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:Text.of(["",""])},range:EditorSelection.cursor(r.from)}));return e(o.update(n,{scrollIntoView:!0,userEvent:"input"})),!0},transposeChars=({state:o,dispatch:e})=>{if(o.readOnly)return!1;let n=o.changeByRange(r=>{if(!r.empty||r.from==0||r.from==o.doc.length)return{range:r};let c=r.from,u=o.doc.lineAt(c),h=c==u.from?c-1:findClusterBreak(u.text,c-u.from,!1)+u.from,p=c==u.to?c+1:findClusterBreak(u.text,c-u.from,!0)+u.from;return{changes:{from:h,to:p,insert:o.doc.slice(c,p).append(o.doc.slice(h,c))},range:EditorSelection.cursor(p)}});return n.changes.empty?!1:(e(o.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function selectedLineBlocks(o){let e=[],n=-1;for(let r of o.selection.ranges){let c=o.doc.lineAt(r.from),u=o.doc.lineAt(r.to);if(!r.empty&&r.to==u.from&&(u=o.doc.lineAt(r.to-1)),n>=c.number){let h=e[e.length-1];h.to=u.to,h.ranges.push(r)}else e.push({from:c.from,to:u.to,ranges:[r]});n=u.number+1}return e}function moveLine(o,e,n){if(o.readOnly)return!1;let r=[],c=[];for(let u of selectedLineBlocks(o)){if(n?u.to==o.doc.length:u.from==0)continue;let h=o.doc.lineAt(n?u.to+1:u.from-1),p=h.length+1;if(n){r.push({from:u.to,to:h.to},{from:u.from,insert:h.text+o.lineBreak});for(let b of u.ranges)c.push(EditorSelection.range(Math.min(o.doc.length,b.anchor+p),Math.min(o.doc.length,b.head+p)))}else{r.push({from:h.from,to:u.from},{from:u.to,insert:o.lineBreak+h.text});for(let b of u.ranges)c.push(EditorSelection.range(b.anchor-p,b.head-p))}}return r.length?(e(o.update({changes:r,scrollIntoView:!0,selection:EditorSelection.create(c,o.selection.mainIndex),userEvent:"move.line"})),!0):!1}const moveLineUp=({state:o,dispatch:e})=>moveLine(o,e,!1),moveLineDown=({state:o,dispatch:e})=>moveLine(o,e,!0);function copyLine(o,e,n){if(o.readOnly)return!1;let r=[];for(let c of selectedLineBlocks(o))n?r.push({from:c.from,insert:o.doc.slice(c.from,c.to)+o.lineBreak}):r.push({from:c.to,insert:o.lineBreak+o.doc.slice(c.from,c.to)});return e(o.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const copyLineUp=({state:o,dispatch:e})=>copyLine(o,e,!1),copyLineDown=({state:o,dispatch:e})=>copyLine(o,e,!0),deleteLine=o=>{if(o.state.readOnly)return!1;let{state:e}=o,n=e.changes(selectedLineBlocks(e).map(({from:c,to:u})=>(c>0?c--:u{let u;if(o.lineWrapping){let h=o.lineBlockAt(c.head),p=o.coordsAtPos(c.head,c.assoc||1);p&&(u=h.bottom+o.documentTop-p.bottom+o.defaultLineHeight/2)}return o.moveVertically(c,!0,u)}).map(n);return o.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function isBetweenBrackets(o,e){if(/\(\)|\[\]|\{\}/.test(o.sliceDoc(e-1,e+1)))return{from:e,to:e};let n=syntaxTree(o).resolveInner(e),r=n.childBefore(e),c=n.childAfter(e),u;return r&&c&&r.to<=e&&c.from>=e&&(u=r.type.prop(NodeProp.closedBy))&&u.indexOf(c.name)>-1&&o.doc.lineAt(r.to).from==o.doc.lineAt(c.from).from&&!/\S/.test(o.sliceDoc(r.to,c.from))?{from:r.to,to:c.from}:null}const insertNewlineAndIndent=newlineAndIndent(!1),insertBlankLine=newlineAndIndent(!0);function newlineAndIndent(o){return({state:e,dispatch:n})=>{if(e.readOnly)return!1;let r=e.changeByRange(c=>{let{from:u,to:h}=c,p=e.doc.lineAt(u),b=!o&&u==h&&isBetweenBrackets(e,u);o&&(u=h=(h<=p.to?p:e.doc.lineAt(h)).to);let y=new IndentContext(e,{simulateBreak:u,simulateDoubleBreak:!!b}),k=getIndentation(y,u);for(k==null&&(k=countColumn(/^\s*/.exec(e.doc.lineAt(u).text)[0],e.tabSize));hp.from&&u{let c=[];for(let h=r.from;h<=r.to;){let p=o.doc.lineAt(h);p.number>n&&(r.empty||r.to>p.from)&&(e(p,c,r),n=p.number),h=p.to+1}let u=o.changes(c);return{changes:c,range:EditorSelection.range(u.mapPos(r.anchor,1),u.mapPos(r.head,1))}})}const indentSelection=({state:o,dispatch:e})=>{if(o.readOnly)return!1;let n=Object.create(null),r=new IndentContext(o,{overrideIndentation:u=>{let h=n[u];return h??-1}}),c=changeBySelectedLine(o,(u,h,p)=>{let b=getIndentation(r,u.from);if(b==null)return;/\S/.test(u.text)||(b=0);let y=/^\s*/.exec(u.text)[0],k=indentString(o,b);(y!=k||p.fromo.readOnly?!1:(e(o.update(changeBySelectedLine(o,(n,r)=>{r.push({from:n.from,insert:o.facet(indentUnit)})}),{userEvent:"input.indent"})),!0),indentLess=({state:o,dispatch:e})=>o.readOnly?!1:(e(o.update(changeBySelectedLine(o,(n,r)=>{let c=/^\s*/.exec(n.text)[0];if(!c)return;let u=countColumn(c,o.tabSize),h=0,p=indentString(o,Math.max(0,u-getIndentUnit(o)));for(;h(o.setTabFocusMode(),!0),emacsStyleKeymap=[{key:"Ctrl-b",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Ctrl-f",run:cursorCharRight,shift:selectCharRight},{key:"Ctrl-p",run:cursorLineUp,shift:selectLineUp},{key:"Ctrl-n",run:cursorLineDown,shift:selectLineDown},{key:"Ctrl-a",run:cursorLineStart,shift:selectLineStart},{key:"Ctrl-e",run:cursorLineEnd,shift:selectLineEnd},{key:"Ctrl-d",run:deleteCharForward},{key:"Ctrl-h",run:deleteCharBackward},{key:"Ctrl-k",run:deleteToLineEnd},{key:"Ctrl-Alt-h",run:deleteGroupBackward},{key:"Ctrl-o",run:splitLine},{key:"Ctrl-t",run:transposeChars},{key:"Ctrl-v",run:cursorPageDown}],standardKeymap=[{key:"ArrowLeft",run:cursorCharLeft,shift:selectCharLeft,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:cursorGroupLeft,shift:selectGroupLeft,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:cursorLineBoundaryLeft,shift:selectLineBoundaryLeft,preventDefault:!0},{key:"ArrowRight",run:cursorCharRight,shift:selectCharRight,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:cursorGroupRight,shift:selectGroupRight,preventDefault:!0},{mac:"Cmd-ArrowRight",run:cursorLineBoundaryRight,shift:selectLineBoundaryRight,preventDefault:!0},{key:"ArrowUp",run:cursorLineUp,shift:selectLineUp,preventDefault:!0},{mac:"Cmd-ArrowUp",run:cursorDocStart,shift:selectDocStart},{mac:"Ctrl-ArrowUp",run:cursorPageUp,shift:selectPageUp},{key:"ArrowDown",run:cursorLineDown,shift:selectLineDown,preventDefault:!0},{mac:"Cmd-ArrowDown",run:cursorDocEnd,shift:selectDocEnd},{mac:"Ctrl-ArrowDown",run:cursorPageDown,shift:selectPageDown},{key:"PageUp",run:cursorPageUp,shift:selectPageUp},{key:"PageDown",run:cursorPageDown,shift:selectPageDown},{key:"Home",run:cursorLineBoundaryBackward,shift:selectLineBoundaryBackward,preventDefault:!0},{key:"Mod-Home",run:cursorDocStart,shift:selectDocStart},{key:"End",run:cursorLineBoundaryForward,shift:selectLineBoundaryForward,preventDefault:!0},{key:"Mod-End",run:cursorDocEnd,shift:selectDocEnd},{key:"Enter",run:insertNewlineAndIndent},{key:"Mod-a",run:selectAll},{key:"Backspace",run:deleteCharBackward,shift:deleteCharBackward},{key:"Delete",run:deleteCharForward},{key:"Mod-Backspace",mac:"Alt-Backspace",run:deleteGroupBackward},{key:"Mod-Delete",mac:"Alt-Delete",run:deleteGroupForward},{mac:"Mod-Backspace",run:deleteLineBoundaryBackward},{mac:"Mod-Delete",run:deleteLineBoundaryForward}].concat(emacsStyleKeymap.map(o=>({mac:o.key,run:o.run,shift:o.shift}))),defaultKeymap=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:cursorSyntaxLeft,shift:selectSyntaxLeft},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:cursorSyntaxRight,shift:selectSyntaxRight},{key:"Alt-ArrowUp",run:moveLineUp},{key:"Shift-Alt-ArrowUp",run:copyLineUp},{key:"Alt-ArrowDown",run:moveLineDown},{key:"Shift-Alt-ArrowDown",run:copyLineDown},{key:"Escape",run:simplifySelection},{key:"Mod-Enter",run:insertBlankLine},{key:"Alt-l",mac:"Ctrl-l",run:selectLine},{key:"Mod-i",run:selectParentSyntax,preventDefault:!0},{key:"Mod-[",run:indentLess},{key:"Mod-]",run:indentMore},{key:"Mod-Alt-\\",run:indentSelection},{key:"Shift-Mod-k",run:deleteLine},{key:"Shift-Mod-\\",run:cursorMatchingBracket},{key:"Mod-/",run:toggleComment},{key:"Alt-A",run:toggleBlockComment},{key:"Ctrl-m",mac:"Shift-Alt-m",run:toggleTabFocusMode}].concat(standardKeymap),indentWithTab={key:"Tab",run:indentMore,shift:indentLess};function crelt(){var o=arguments[0];typeof o=="string"&&(o=document.createElement(o));var e=1,n=arguments[1];if(n&&typeof n=="object"&&n.nodeType==null&&!Array.isArray(n)){for(var r in n)if(Object.prototype.hasOwnProperty.call(n,r)){var c=n[r];typeof c=="string"?o.setAttribute(r,c):c!=null&&(o[r]=c)}e++}for(;eo.normalize("NFKD"):o=>o;class SearchCursor{constructor(e,n,r=0,c=e.length,u,h){this.test=h,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(r,c),this.bufferStart=r,this.normalize=u?p=>u(basicNormalize(p)):basicNormalize,this.query=this.normalize(n)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return codePointAt(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let n=fromCodePoint(e),r=this.bufferStart+this.bufferPos;this.bufferPos+=codePointSize(e);let c=this.normalize(n);for(let u=0,h=r;;u++){let p=c.charCodeAt(u),b=this.match(p,h,this.bufferPos+this.bufferStart);if(u==c.length-1){if(b)return this.value=b,this;break}h==r&&uthis.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let n=this.matchPos<=this.to&&this.re.exec(this.curLine);if(n){let r=this.curLineStart+n.index,c=r+n[0].length;if(this.matchPos=toCharEnd(this.text,c+(r==c?1:0)),r==this.curLineStart+this.curLine.length&&this.nextLine(),(rthis.value.to)&&(!this.test||this.test(r,c,n)))return this.value={from:r,to:c,match:n},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length=r||c.to<=n){let p=new FlattenedDoc(n,e.sliceString(n,r));return flattened.set(e,p),p}if(c.from==n&&c.to==r)return c;let{text:u,from:h}=c;return h>n&&(u=e.sliceString(n,h)+u,h=n),c.to=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,n=this.re.exec(this.flat.text);if(n&&!n[0]&&n.index==e&&(this.re.lastIndex=e+1,n=this.re.exec(this.flat.text)),n){let r=this.flat.from+n.index,c=r+n[0].length;if((this.flat.to>=this.to||n.index+n[0].length<=this.flat.text.length-10)&&(!this.test||this.test(r,c,n)))return this.value={from:r,to:c,match:n},this.matchPos=toCharEnd(this.text,c+(r==c?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=FlattenedDoc.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(RegExpCursor.prototype[Symbol.iterator]=MultilineRegExpCursor.prototype[Symbol.iterator]=function(){return this});function validRegExp(o){try{return new RegExp(o,baseFlags),!0}catch{return!1}}function toCharEnd(o,e){if(e>=o.length)return e;let n=o.lineAt(e),r;for(;e=56320&&r<57344;)e++;return e}function createLineDialog(o){let e=String(o.state.doc.lineAt(o.state.selection.main.head).number),n=crelt("input",{class:"cm-textfield",name:"line",value:e}),r=crelt("form",{class:"cm-gotoLine",onkeydown:u=>{u.keyCode==27?(u.preventDefault(),o.dispatch({effects:dialogEffect.of(!1)}),o.focus()):u.keyCode==13&&(u.preventDefault(),c())},onsubmit:u=>{u.preventDefault(),c()}},crelt("label",o.state.phrase("Go to line"),": ",n)," ",crelt("button",{class:"cm-button",type:"submit"},o.state.phrase("go")));function c(){let u=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.value);if(!u)return;let{state:h}=o,p=h.doc.lineAt(h.selection.main.head),[,b,y,k,A]=u,R=k?+k.slice(1):0,N=y?+y:p.number;if(y&&A){let W=N/100;b&&(W=W*(b=="-"?-1:1)+p.number/h.doc.lines),N=Math.round(h.doc.lines*W)}else y&&b&&(N=N*(b=="-"?-1:1)+p.number);let F=h.doc.line(Math.max(1,Math.min(h.doc.lines,N))),V=EditorSelection.cursor(F.from+Math.max(0,Math.min(R,F.length)));o.dispatch({effects:[dialogEffect.of(!1),EditorView.scrollIntoView(V.from,{y:"center"})],selection:V}),o.focus()}return{dom:r}}const dialogEffect=StateEffect.define(),dialogField=StateField.define({create(){return!0},update(o,e){for(let n of e.effects)n.is(dialogEffect)&&(o=n.value);return o},provide:o=>showPanel.from(o,e=>e?createLineDialog:null)}),gotoLine=o=>{let e=getPanel(o,createLineDialog);if(!e){let n=[dialogEffect.of(!0)];o.state.field(dialogField,!1)==null&&n.push(StateEffect.appendConfig.of([dialogField,baseTheme$1$1])),o.dispatch({effects:n}),e=getPanel(o,createLineDialog)}return e&&e.dom.querySelector("input").select(),!0},baseTheme$1$1=EditorView.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px","& label":{fontSize:"80%"}}}),defaultHighlightOptions={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},highlightConfig=Facet.define({combine(o){return combineConfig(o,defaultHighlightOptions,{highlightWordAroundCursor:(e,n)=>e||n,minSelectionLength:Math.min,maxMatches:Math.min})}});function highlightSelectionMatches(o){return[defaultTheme,matchHighlighter]}const matchDeco=Decoration.mark({class:"cm-selectionMatch"}),mainMatchDeco=Decoration.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function insideWordBoundaries(o,e,n,r){return(n==0||o(e.sliceDoc(n-1,n))!=CharCategory.Word)&&(r==e.doc.length||o(e.sliceDoc(r,r+1))!=CharCategory.Word)}function insideWord(o,e,n,r){return o(e.sliceDoc(n,n+1))==CharCategory.Word&&o(e.sliceDoc(r-1,r))==CharCategory.Word}const matchHighlighter=ViewPlugin.fromClass(class{constructor(o){this.decorations=this.getDeco(o)}update(o){(o.selectionSet||o.docChanged||o.viewportChanged)&&(this.decorations=this.getDeco(o.view))}getDeco(o){let e=o.state.facet(highlightConfig),{state:n}=o,r=n.selection;if(r.ranges.length>1)return Decoration.none;let c=r.main,u,h=null;if(c.empty){if(!e.highlightWordAroundCursor)return Decoration.none;let b=n.wordAt(c.head);if(!b)return Decoration.none;h=n.charCategorizer(c.head),u=n.sliceDoc(b.from,b.to)}else{let b=c.to-c.from;if(b200)return Decoration.none;if(e.wholeWords){if(u=n.sliceDoc(c.from,c.to),h=n.charCategorizer(c.head),!(insideWordBoundaries(h,n,c.from,c.to)&&insideWord(h,n,c.from,c.to)))return Decoration.none}else if(u=n.sliceDoc(c.from,c.to),!u)return Decoration.none}let p=[];for(let b of o.visibleRanges){let y=new SearchCursor(n.doc,u,b.from,b.to);for(;!y.next().done;){let{from:k,to:A}=y.value;if((!h||insideWordBoundaries(h,n,k,A))&&(c.empty&&k<=c.from&&A>=c.to?p.push(mainMatchDeco.range(k,A)):(k>=c.to||A<=c.from)&&p.push(matchDeco.range(k,A)),p.length>e.maxMatches))return Decoration.none}}return Decoration.set(p)}},{decorations:o=>o.decorations}),defaultTheme=EditorView.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),selectWord=({state:o,dispatch:e})=>{let{selection:n}=o,r=EditorSelection.create(n.ranges.map(c=>o.wordAt(c.head)||EditorSelection.cursor(c.head)),n.mainIndex);return r.eq(n)?!1:(e(o.update({selection:r})),!0)};function findNextOccurrence(o,e){let{main:n,ranges:r}=o.selection,c=o.wordAt(n.head),u=c&&c.from==n.from&&c.to==n.to;for(let h=!1,p=new SearchCursor(o.doc,e,r[r.length-1].to);;)if(p.next(),p.done){if(h)return null;p=new SearchCursor(o.doc,e,0,Math.max(0,r[r.length-1].from-1)),h=!0}else{if(h&&r.some(b=>b.from==p.value.from))continue;if(u){let b=o.wordAt(p.value.from);if(!b||b.from!=p.value.from||b.to!=p.value.to)continue}return p.value}}const selectNextOccurrence=({state:o,dispatch:e})=>{let{ranges:n}=o.selection;if(n.some(u=>u.from===u.to))return selectWord({state:o,dispatch:e});let r=o.sliceDoc(n[0].from,n[0].to);if(o.selection.ranges.some(u=>o.sliceDoc(u.from,u.to)!=r))return!1;let c=findNextOccurrence(o,r);return c?(e(o.update({selection:o.selection.addRange(EditorSelection.range(c.from,c.to),!1),effects:EditorView.scrollIntoView(c.to)})),!0):!1},searchConfigFacet=Facet.define({combine(o){return combineConfig(o,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new SearchPanel(e),scrollToMatch:e=>EditorView.scrollIntoView(e)})}});class SearchQuery{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||validRegExp(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(n,r)=>r=="n"?` -`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new RegExpQuery(this):new StringQuery(this)}getCursor(e,n=0,r){let c=e.doc?e:EditorState.create({doc:e});return r==null&&(r=c.doc.length),this.regexp?regexpCursor(this,c,n,r):stringCursor(this,c,n,r)}}class QueryType{constructor(e){this.spec=e}}function stringCursor(o,e,n,r){return new SearchCursor(e.doc,o.unquoted,n,r,o.caseSensitive?void 0:c=>c.toLowerCase(),o.wholeWord?stringWordTest(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function stringWordTest(o,e){return(n,r,c,u)=>((u>n||u+c.length=n)return null;c.push(r.value)}return c}highlight(e,n,r,c){let u=stringCursor(this.spec,e,Math.max(0,n-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!u.next().done;)c(u.value.from,u.value.to)}}function regexpCursor(o,e,n,r){return new RegExpCursor(e.doc,o.search,{ignoreCase:!o.caseSensitive,test:o.wholeWord?regexpWordTest(e.charCategorizer(e.selection.main.head)):void 0},n,r)}function charBefore(o,e){return o.slice(findClusterBreak(o,e,!1),e)}function charAfter(o,e){return o.slice(e,findClusterBreak(o,e))}function regexpWordTest(o){return(e,n,r)=>!r[0].length||(o(charBefore(r.input,r.index))!=CharCategory.Word||o(charAfter(r.input,r.index))!=CharCategory.Word)&&(o(charAfter(r.input,r.index+r[0].length))!=CharCategory.Word||o(charBefore(r.input,r.index+r[0].length))!=CharCategory.Word)}class RegExpQuery extends QueryType{nextMatch(e,n,r){let c=regexpCursor(this.spec,e,r,e.doc.length).next();return c.done&&(c=regexpCursor(this.spec,e,0,n).next()),c.done?null:c.value}prevMatchInRange(e,n,r){for(let c=1;;c++){let u=Math.max(n,r-c*1e4),h=regexpCursor(this.spec,e,u,r),p=null;for(;!h.next().done;)p=h.value;if(p&&(u==n||p.from>u+10))return p;if(u==n)return null}}prevMatch(e,n,r){return this.prevMatchInRange(e,0,n)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&\d+])/g,(n,r)=>r=="$"?"$":r=="&"?e.match[0]:r!="0"&&+r=n)return null;c.push(r.value)}return c}highlight(e,n,r,c){let u=regexpCursor(this.spec,e,Math.max(0,n-250),Math.min(r+250,e.doc.length));for(;!u.next().done;)c(u.value.from,u.value.to)}}const setSearchQuery=StateEffect.define(),togglePanel$1=StateEffect.define(),searchState=StateField.define({create(o){return new SearchState(defaultQuery(o).create(),null)},update(o,e){for(let n of e.effects)n.is(setSearchQuery)?o=new SearchState(n.value.create(),o.panel):n.is(togglePanel$1)&&(o=new SearchState(o.query,n.value?createSearchPanel:null));return o},provide:o=>showPanel.from(o,e=>e.panel)});class SearchState{constructor(e,n){this.query=e,this.panel=n}}const matchMark=Decoration.mark({class:"cm-searchMatch"}),selectedMatchMark=Decoration.mark({class:"cm-searchMatch cm-searchMatch-selected"}),searchHighlighter=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.decorations=this.highlight(o.state.field(searchState))}update(o){let e=o.state.field(searchState);(e!=o.startState.field(searchState)||o.docChanged||o.selectionSet||o.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:o,panel:e}){if(!e||!o.spec.valid)return Decoration.none;let{view:n}=this,r=new RangeSetBuilder;for(let c=0,u=n.visibleRanges,h=u.length;cu[c+1].from-2*250;)b=u[++c].to;o.highlight(n.state,p,b,(y,k)=>{let A=n.state.selection.ranges.some(R=>R.from==y&&R.to==k);r.add(y,k,A?selectedMatchMark:matchMark)})}return r.finish()}},{decorations:o=>o.decorations});function searchCommand(o){return e=>{let n=e.state.field(searchState,!1);return n&&n.query.spec.valid?o(e,n):openSearchPanel(e)}}const findNext=searchCommand((o,{query:e})=>{let{to:n}=o.state.selection.main,r=e.nextMatch(o.state,n,n);if(!r)return!1;let c=EditorSelection.single(r.from,r.to),u=o.state.facet(searchConfigFacet);return o.dispatch({selection:c,effects:[announceMatch(o,r),u.scrollToMatch(c.main,o)],userEvent:"select.search"}),selectSearchInput(o),!0}),findPrevious=searchCommand((o,{query:e})=>{let{state:n}=o,{from:r}=n.selection.main,c=e.prevMatch(n,r,r);if(!c)return!1;let u=EditorSelection.single(c.from,c.to),h=o.state.facet(searchConfigFacet);return o.dispatch({selection:u,effects:[announceMatch(o,c),h.scrollToMatch(u.main,o)],userEvent:"select.search"}),selectSearchInput(o),!0}),selectMatches=searchCommand((o,{query:e})=>{let n=e.matchAll(o.state,1e3);return!n||!n.length?!1:(o.dispatch({selection:EditorSelection.create(n.map(r=>EditorSelection.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),selectSelectionMatches=({state:o,dispatch:e})=>{let n=o.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:c}=n.main,u=[],h=0;for(let p=new SearchCursor(o.doc,o.sliceDoc(r,c));!p.next().done;){if(u.length>1e3)return!1;p.value.from==r&&(h=u.length),u.push(EditorSelection.range(p.value.from,p.value.to))}return e(o.update({selection:EditorSelection.create(u,h),userEvent:"select.search.matches"})),!0},replaceNext=searchCommand((o,{query:e})=>{let{state:n}=o,{from:r,to:c}=n.selection.main;if(n.readOnly)return!1;let u=e.nextMatch(n,r,r);if(!u)return!1;let h=[],p,b,y=[];if(u.from==r&&u.to==c&&(b=n.toText(e.getReplacement(u)),h.push({from:u.from,to:u.to,insert:b}),u=e.nextMatch(n,u.from,u.to),y.push(EditorView.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(r).number)+"."))),u){let k=h.length==0||h[0].from>=u.to?0:u.to-u.from-b.length;p=EditorSelection.single(u.from-k,u.to-k),y.push(announceMatch(o,u)),y.push(n.facet(searchConfigFacet).scrollToMatch(p.main,o))}return o.dispatch({changes:h,selection:p,effects:y,userEvent:"input.replace"}),!0}),replaceAll=searchCommand((o,{query:e})=>{if(o.state.readOnly)return!1;let n=e.matchAll(o.state,1e9).map(c=>{let{from:u,to:h}=c;return{from:u,to:h,insert:e.getReplacement(c)}});if(!n.length)return!1;let r=o.state.phrase("replaced $ matches",n.length)+".";return o.dispatch({changes:n,effects:EditorView.announce.of(r),userEvent:"input.replace.all"}),!0});function createSearchPanel(o){return o.state.facet(searchConfigFacet).createPanel(o)}function defaultQuery(o,e){var n,r,c,u,h;let p=o.selection.main,b=p.empty||p.to>p.from+100?"":o.sliceDoc(p.from,p.to);if(e&&!b)return e;let y=o.facet(searchConfigFacet);return new SearchQuery({search:((n=e==null?void 0:e.literal)!==null&&n!==void 0?n:y.literal)?b:b.replace(/\n/g,"\\n"),caseSensitive:(r=e==null?void 0:e.caseSensitive)!==null&&r!==void 0?r:y.caseSensitive,literal:(c=e==null?void 0:e.literal)!==null&&c!==void 0?c:y.literal,regexp:(u=e==null?void 0:e.regexp)!==null&&u!==void 0?u:y.regexp,wholeWord:(h=e==null?void 0:e.wholeWord)!==null&&h!==void 0?h:y.wholeWord})}function getSearchInput(o){let e=getPanel(o,createSearchPanel);return e&&e.dom.querySelector("[main-field]")}function selectSearchInput(o){let e=getSearchInput(o);e&&e==o.root.activeElement&&e.select()}const openSearchPanel=o=>{let e=o.state.field(searchState,!1);if(e&&e.panel){let n=getSearchInput(o);if(n&&n!=o.root.activeElement){let r=defaultQuery(o.state,e.query.spec);r.valid&&o.dispatch({effects:setSearchQuery.of(r)}),n.focus(),n.select()}}else o.dispatch({effects:[togglePanel$1.of(!0),e?setSearchQuery.of(defaultQuery(o.state,e.query.spec)):StateEffect.appendConfig.of(searchExtensions)]});return!0},closeSearchPanel=o=>{let e=o.state.field(searchState,!1);if(!e||!e.panel)return!1;let n=getPanel(o,createSearchPanel);return n&&n.dom.contains(o.root.activeElement)&&o.focus(),o.dispatch({effects:togglePanel$1.of(!1)}),!0},searchKeymap=[{key:"Mod-f",run:openSearchPanel,scope:"editor search-panel"},{key:"F3",run:findNext,shift:findPrevious,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:findNext,shift:findPrevious,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:closeSearchPanel,scope:"editor search-panel"},{key:"Mod-Shift-l",run:selectSelectionMatches},{key:"Mod-Alt-g",run:gotoLine},{key:"Mod-d",run:selectNextOccurrence,preventDefault:!0}];class SearchPanel{constructor(e){this.view=e;let n=this.query=e.state.field(searchState).query.spec;this.commit=this.commit.bind(this),this.searchField=crelt("input",{value:n.search,placeholder:phrase(e,"Find"),"aria-label":phrase(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=crelt("input",{value:n.replace,placeholder:phrase(e,"Replace"),"aria-label":phrase(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=crelt("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=crelt("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=crelt("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function r(c,u,h){return crelt("button",{class:"cm-button",name:c,onclick:u,type:"button"},h)}this.dom=crelt("div",{onkeydown:c=>this.keydown(c),class:"cm-search"},[this.searchField,r("next",()=>findNext(e),[phrase(e,"next")]),r("prev",()=>findPrevious(e),[phrase(e,"previous")]),r("select",()=>selectMatches(e),[phrase(e,"all")]),crelt("label",null,[this.caseField,phrase(e,"match case")]),crelt("label",null,[this.reField,phrase(e,"regexp")]),crelt("label",null,[this.wordField,phrase(e,"by word")]),...e.state.readOnly?[]:[crelt("br"),this.replaceField,r("replace",()=>replaceNext(e),[phrase(e,"replace")]),r("replaceAll",()=>replaceAll(e),[phrase(e,"replace all")])],crelt("button",{name:"close",onclick:()=>closeSearchPanel(e),"aria-label":phrase(e,"close"),type:"button"},["×"])])}commit(){let e=new SearchQuery({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:setSearchQuery.of(e)}))}keydown(e){runScopeHandlers(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?findPrevious:findNext)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),replaceNext(this.view))}update(e){for(let n of e.transactions)for(let r of n.effects)r.is(setSearchQuery)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(searchConfigFacet).top}}function phrase(o,e){return o.state.phrase(e)}const AnnounceMargin=30,Break=/[\s\.,:;?!]/;function announceMatch(o,{from:e,to:n}){let r=o.state.doc.lineAt(e),c=o.state.doc.lineAt(n).to,u=Math.max(r.from,e-AnnounceMargin),h=Math.min(c,n+AnnounceMargin),p=o.state.sliceDoc(u,h);if(u!=r.from){for(let b=0;bp.length-AnnounceMargin;b--)if(!Break.test(p[b-1])&&Break.test(p[b])){p=p.slice(0,b);break}}return EditorView.announce.of(`${o.state.phrase("current match")}. ${p} ${o.state.phrase("on line")} ${r.number}.`)}const baseTheme$2=EditorView.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),searchExtensions=[searchState,Prec.low(searchHighlighter),baseTheme$2];class CompletionContext{constructor(e,n,r,c){this.state=e,this.pos=n,this.explicit=r,this.view=c,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let n=syntaxTree(this.state).resolveInner(this.pos,-1);for(;n&&e.indexOf(n.name)<0;)n=n.parent;return n?{from:n.from,to:this.pos,text:this.state.sliceDoc(n.from,this.pos),type:n.type}:null}matchBefore(e){let n=this.state.doc.lineAt(this.pos),r=Math.max(n.from,this.pos-250),c=n.text.slice(r-n.from,this.pos-n.from),u=c.search(ensureAnchor(e,!1));return u<0?null:{from:r+u,to:this.pos,text:c.slice(u)}}get aborted(){return this.abortListeners==null}addEventListener(e,n,r){e=="abort"&&this.abortListeners&&(this.abortListeners.push(n),r&&r.onDocChange&&(this.abortOnDocChange=!0))}}function toSet(o){let e=Object.keys(o).join(""),n=/\w/.test(e);return n&&(e=e.replace(/\w/g,"")),`[${n?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function prefixMatch(o){let e=Object.create(null),n=Object.create(null);for(let{label:c}of o){e[c[0]]=!0;for(let u=1;utypeof c=="string"?{label:c}:c),[n,r]=e.every(c=>/^\w+$/.test(c.label))?[/\w*$/,/\w+$/]:prefixMatch(e);return c=>{let u=c.matchBefore(r);return u||c.explicit?{from:u?u.from:c.pos,options:e,validFor:n}:null}}function ifNotIn(o,e){return n=>{for(let r=syntaxTree(n.state).resolveInner(n.pos,-1);r;r=r.parent){if(o.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(n)}}class Option{constructor(e,n,r,c){this.completion=e,this.source=n,this.match=r,this.score=c}}function cur(o){return o.selection.main.from}function ensureAnchor(o,e){var n;let{source:r}=o,c=e&&r[0]!="^",u=r[r.length-1]!="$";return!c&&!u?o:new RegExp(`${c?"^":""}(?:${r})${u?"$":""}`,(n=o.flags)!==null&&n!==void 0?n:o.ignoreCase?"i":"")}const pickedCompletion=Annotation.define();function insertCompletionText(o,e,n,r){let{main:c}=o.selection,u=n-c.from,h=r-c.from;return Object.assign(Object.assign({},o.changeByRange(p=>p!=c&&n!=r&&o.sliceDoc(p.from+u,p.from+h)!=o.sliceDoc(n,r)?{range:p}:{changes:{from:p.from+u,to:r==c.from?p.to:p.from+h,insert:e},range:EditorSelection.cursor(p.from+u+e.length)})),{scrollIntoView:!0,userEvent:"input.complete"})}const SourceCache=new WeakMap;function asSource(o){if(!Array.isArray(o))return o;let e=SourceCache.get(o);return e||SourceCache.set(o,e=completeFromList(o)),e}const startCompletionEffect=StateEffect.define(),closeCompletionEffect=StateEffect.define();class FuzzyMatcher{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let n=0;n=48&&fe<=57||fe>=97&&fe<=122?2:fe>=65&&fe<=90?1:0:(_e=fromCodePoint(fe))!=_e.toLowerCase()?1:_e!=_e.toUpperCase()?2:0;(!te||ne==1&&W||ae==0&&ne!=0)&&(n[A]==fe||r[A]==fe&&(R=!0)?h[A++]=te:h.length&&(J=!1)),ae=ne,te+=codePointSize(fe)}return A==b&&h[0]==0&&J?this.result(-100+(R?-200:0),h,e):N==b&&F==0?this.ret(-200-e.length+(V==e.length?0:-100),[0,V]):p>-1?this.ret(-700-e.length,[p,p+this.pattern.length]):N==b?this.ret(-900-e.length,[F,V]):A==b?this.result(-100+(R?-200:0)+-700+(J?0:-1100),h,e):n.length==2?null:this.result((c[0]?-700:0)+-200+-1100,c,e)}result(e,n,r){let c=[],u=0;for(let h of n){let p=h+(this.astral?codePointSize(codePointAt(r,h)):1);u&&c[u-1]==h?c[u-1]=p:(c[u++]=h,c[u++]=p)}return this.ret(e-r.length,c)}}class StrictMatcher{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:defaultPositionInfo,filterStrict:!1,compareCompletions:(e,n)=>e.label.localeCompare(n.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,n)=>e&&n,closeOnBlur:(e,n)=>e&&n,icons:(e,n)=>e&&n,tooltipClass:(e,n)=>r=>joinClass(e(r),n(r)),optionClass:(e,n)=>r=>joinClass(e(r),n(r)),addToOptions:(e,n)=>e.concat(n),filterStrict:(e,n)=>e||n})}});function joinClass(o,e){return o?e?o+" "+e:o:e}function defaultPositionInfo(o,e,n,r,c,u){let h=o.textDirection==Direction.RTL,p=h,b=!1,y="top",k,A,R=e.left-c.left,N=c.right-e.right,F=r.right-r.left,V=r.bottom-r.top;if(p&&R=V||te>e.top?k=n.bottom-e.top:(y="bottom",k=e.bottom-n.top)}let W=(e.bottom-e.top)/u.offsetHeight,J=(e.right-e.left)/u.offsetWidth;return{style:`${y}: ${k/W}px; max-width: ${A/J}px`,class:"cm-completionInfo-"+(b?h?"left-narrow":"right-narrow":p?"left":"right")}}function optionContent(o){let e=o.addToOptions.slice();return o.icons&&e.push({render(n){let r=document.createElement("div");return r.classList.add("cm-completionIcon"),n.type&&r.classList.add(...n.type.split(/\s+/g).map(c=>"cm-completionIcon-"+c)),r.setAttribute("aria-hidden","true"),r},position:20}),e.push({render(n,r,c,u){let h=document.createElement("span");h.className="cm-completionLabel";let p=n.displayLabel||n.label,b=0;for(let y=0;yb&&h.appendChild(document.createTextNode(p.slice(b,k)));let R=h.appendChild(document.createElement("span"));R.appendChild(document.createTextNode(p.slice(k,A))),R.className="cm-completionMatchedText",b=A}return bn.position-r.position).map(n=>n.render)}function rangeAroundSelected(o,e,n){if(o<=n)return{from:0,to:o};if(e<0&&(e=0),e<=o>>1){let c=Math.floor(e/n);return{from:c*n,to:(c+1)*n}}let r=Math.floor((o-e)/n);return{from:o-(r+1)*n,to:o-r*n}}class CompletionTooltip{constructor(e,n,r){this.view=e,this.stateField=n,this.applyCompletion=r,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:b=>this.placeInfo(b),key:this},this.space=null,this.currentClass="";let c=e.state.field(n),{options:u,selected:h}=c.open,p=e.state.facet(completionConfig);this.optionContent=optionContent(p),this.optionClass=p.optionClass,this.tooltipClass=p.tooltipClass,this.range=rangeAroundSelected(u.length,h,p.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",b=>{let{options:y}=e.state.field(n).open;for(let k=b.target,A;k&&k!=this.dom;k=k.parentNode)if(k.nodeName=="LI"&&(A=/-(\d+)$/.exec(k.id))&&+A[1]{let y=e.state.field(this.stateField,!1);y&&y.tooltip&&e.state.facet(completionConfig).closeOnBlur&&b.relatedTarget!=e.contentDOM&&e.dispatch({effects:closeCompletionEffect.of(null)})}),this.showOptions(u,c.id)}mount(){this.updateSel()}showOptions(e,n){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,n,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var n;let r=e.state.field(this.stateField),c=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),r!=c){let{options:u,selected:h,disabled:p}=r.open;(!c.open||c.open.options!=u)&&(this.range=rangeAroundSelected(u.length,h,e.state.facet(completionConfig).maxRenderedOptions),this.showOptions(u,r.id)),this.updateSel(),p!=((n=c.open)===null||n===void 0?void 0:n.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!p)}}updateTooltipClass(e){let n=this.tooltipClass(e);if(n!=this.currentClass){for(let r of this.currentClass.split(" "))r&&this.dom.classList.remove(r);for(let r of n.split(" "))r&&this.dom.classList.add(r);this.currentClass=n}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),n=e.open;if((n.selected>-1&&n.selected=this.range.to)&&(this.range=rangeAroundSelected(n.options.length,n.selected,this.view.state.facet(completionConfig).maxRenderedOptions),this.showOptions(n.options,e.id)),this.updateSelectedOption(n.selected)){this.destroyInfo();let{completion:r}=n.options[n.selected],{info:c}=r;if(!c)return;let u=typeof c=="string"?document.createTextNode(c):c(r);if(!u)return;"then"in u?u.then(h=>{h&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(h,r)}).catch(h=>logException(this.view.state,h,"completion info")):this.addInfoPane(u,r)}}addInfoPane(e,n){this.destroyInfo();let r=this.info=document.createElement("div");if(r.className="cm-tooltip cm-completionInfo",e.nodeType!=null)r.appendChild(e),this.infoDestroy=null;else{let{dom:c,destroy:u}=e;r.appendChild(c),this.infoDestroy=u||null}this.dom.appendChild(r),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let n=null;for(let r=this.list.firstChild,c=this.range.from;r;r=r.nextSibling,c++)r.nodeName!="LI"||!r.id?c--:c==e?r.hasAttribute("aria-selected")||(r.setAttribute("aria-selected","true"),n=r):r.hasAttribute("aria-selected")&&r.removeAttribute("aria-selected");return n&&scrollIntoView(this.list,n),n}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let n=this.dom.getBoundingClientRect(),r=this.info.getBoundingClientRect(),c=e.getBoundingClientRect(),u=this.space;if(!u){let h=this.dom.ownerDocument.defaultView||window;u={left:0,top:0,right:h.innerWidth,bottom:h.innerHeight}}return c.top>Math.min(u.bottom,n.bottom)-10||c.bottomr.from||r.from==0))if(u=R,typeof y!="string"&&y.header)c.appendChild(y.header(y));else{let N=c.appendChild(document.createElement("completion-section"));N.textContent=R}}const k=c.appendChild(document.createElement("li"));k.id=n+"-"+h,k.setAttribute("role","option");let A=this.optionClass(p);A&&(k.className=A);for(let R of this.optionContent){let N=R(p,this.view.state,this.view,b);N&&k.appendChild(N)}}return r.from&&c.classList.add("cm-completionListIncompleteTop"),r.tonew CompletionTooltip(n,o,e)}function scrollIntoView(o,e){let n=o.getBoundingClientRect(),r=e.getBoundingClientRect(),c=n.height/o.offsetHeight;r.topn.bottom&&(o.scrollTop+=(r.bottom-n.bottom)/c)}function score(o){return(o.boost||0)*100+(o.apply?10:0)+(o.info?5:0)+(o.type?1:0)}function sortOptions(o,e){let n=[],r=null,c=y=>{n.push(y);let{section:k}=y.completion;if(k){r||(r=[]);let A=typeof k=="string"?k:k.name;r.some(R=>R.name==A)||r.push(typeof k=="string"?{name:A}:k)}},u=e.facet(completionConfig);for(let y of o)if(y.hasResult()){let k=y.result.getMatch;if(y.result.filter===!1)for(let A of y.result.options)c(new Option(A,y.source,k?k(A):[],1e9-n.length));else{let A=e.sliceDoc(y.from,y.to),R,N=u.filterStrict?new StrictMatcher(A):new FuzzyMatcher(A);for(let F of y.result.options)if(R=N.match(F.label)){let V=F.displayLabel?k?k(F,R.matched):[]:R.matched;c(new Option(F,y.source,V,R.score+(F.boost||0)))}}}if(r){let y=Object.create(null),k=0,A=(R,N)=>{var F,V;return((F=R.rank)!==null&&F!==void 0?F:1e9)-((V=N.rank)!==null&&V!==void 0?V:1e9)||(R.nameA.score-k.score||b(k.completion,A.completion))){let k=y.completion;!p||p.label!=k.label||p.detail!=k.detail||p.type!=null&&k.type!=null&&p.type!=k.type||p.apply!=k.apply||p.boost!=k.boost?h.push(y):score(y.completion)>score(p)&&(h[h.length-1]=y),p=y.completion}return h}class CompletionDialog{constructor(e,n,r,c,u,h){this.options=e,this.attrs=n,this.tooltip=r,this.timestamp=c,this.selected=u,this.disabled=h}setSelected(e,n){return e==this.selected||e>=this.options.length?this:new CompletionDialog(this.options,makeAttrs(n,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,n,r,c,u){let h=sortOptions(e,n);if(!h.length)return c&&e.some(b=>b.state==1)?new CompletionDialog(c.options,c.attrs,c.tooltip,c.timestamp,c.selected,!0):null;let p=n.facet(completionConfig).selectOnOpen?0:-1;if(c&&c.selected!=p&&c.selected!=-1){let b=c.options[c.selected].completion;for(let y=0;yy.hasResult()?Math.min(b,y.from):b,1e8),create:createTooltip,above:u.aboveCursor},c?c.timestamp:Date.now(),p,!1)}map(e){return new CompletionDialog(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class CompletionState{constructor(e,n,r){this.active=e,this.id=n,this.open=r}static start(){return new CompletionState(none$1,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:n}=e,r=n.facet(completionConfig),u=(r.override||n.languageDataAt("autocomplete",cur(n)).map(asSource)).map(p=>(this.active.find(y=>y.source==p)||new ActiveSource(p,this.active.some(y=>y.state!=0)?1:0)).update(e,r));u.length==this.active.length&&u.every((p,b)=>p==this.active[b])&&(u=this.active);let h=this.open;h&&e.docChanged&&(h=h.map(e.changes)),e.selection||u.some(p=>p.hasResult()&&e.changes.touchesRange(p.from,p.to))||!sameResults(u,this.active)?h=CompletionDialog.build(u,n,this.id,h,r):h&&h.disabled&&!u.some(p=>p.state==1)&&(h=null),!h&&u.every(p=>p.state!=1)&&u.some(p=>p.hasResult())&&(u=u.map(p=>p.hasResult()?new ActiveSource(p.source,0):p));for(let p of e.effects)p.is(setSelectedEffect)&&(h=h&&h.setSelected(p.value,this.id));return u==this.active&&h==this.open?this:new CompletionState(u,this.id,h)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?baseAttrs:noAttrs}}function sameResults(o,e){if(o==e)return!0;for(let n=0,r=0;;){for(;n-1&&(n["aria-activedescendant"]=o+"-"+e),n}const none$1=[];function getUpdateType(o,e){if(o.isUserEvent("input.complete")){let r=o.annotation(pickedCompletion);if(r&&e.activateOnCompletion(r))return 12}let n=o.isUserEvent("input.type");return n&&e.activateOnTyping?5:n?1:o.isUserEvent("delete.backward")?2:o.selection?8:o.docChanged?16:0}class ActiveSource{constructor(e,n,r=-1){this.source=e,this.state=n,this.explicitPos=r}hasResult(){return!1}update(e,n){let r=getUpdateType(e,n),c=this;(r&8||r&16&&this.touches(e))&&(c=new ActiveSource(c.source,0)),r&4&&c.state==0&&(c=new ActiveSource(this.source,1)),c=c.updateFor(e,r);for(let u of e.effects)if(u.is(startCompletionEffect))c=new ActiveSource(c.source,1,u.value?cur(e.state):-1);else if(u.is(closeCompletionEffect))c=new ActiveSource(c.source,0);else if(u.is(setActiveEffect))for(let h of u.value)h.source==c.source&&(c=h);return c}updateFor(e,n){return this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new ActiveSource(this.source,this.state,e.mapPos(this.explicitPos))}touches(e){return e.changes.touchesRange(cur(e.state))}}class ActiveResult extends ActiveSource{constructor(e,n,r,c,u){super(e,2,n),this.result=r,this.from=c,this.to=u}hasResult(){return!0}updateFor(e,n){var r;if(!(n&3))return this.map(e.changes);let c=this.result;c.map&&!e.changes.empty&&(c=c.map(c,e.changes));let u=e.changes.mapPos(this.from),h=e.changes.mapPos(this.to,1),p=cur(e.state);if((this.explicitPos<0?p<=u:ph||!c||n&2&&cur(e.startState)==this.from)return new ActiveSource(this.source,n&4?1:0);let b=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos);return checkValid(c.validFor,e.state,u,h)?new ActiveResult(this.source,b,c,u,h):c.update&&(c=c.update(c,u,h,new CompletionContext(e.state,p,b>=0)))?new ActiveResult(this.source,b,c,c.from,(r=c.to)!==null&&r!==void 0?r:cur(e.state)):new ActiveSource(this.source,1,b)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new ActiveResult(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new ActiveSource(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function checkValid(o,e,n,r){if(!o)return!1;let c=e.sliceDoc(n,r);return typeof o=="function"?o(c,n,r,e):ensureAnchor(o,!0).test(c)}const setActiveEffect=StateEffect.define({map(o,e){return o.map(n=>n.map(e))}}),setSelectedEffect=StateEffect.define(),completionState=StateField.define({create(){return CompletionState.start()},update(o,e){return o.update(e)},provide:o=>[showTooltip.from(o,e=>e.tooltip),EditorView.contentAttributes.from(o,e=>e.attrs)]});function applyCompletion(o,e){const n=e.completion.apply||e.completion.label;let r=o.state.field(completionState).active.find(c=>c.source==e.source);return r instanceof ActiveResult?(typeof n=="string"?o.dispatch(Object.assign(Object.assign({},insertCompletionText(o.state,n,r.from,r.to)),{annotations:pickedCompletion.of(e.completion)})):n(o,e.completion,r.from,r.to),!0):!1}const createTooltip=completionTooltip(completionState,applyCompletion);function moveCompletionSelection(o,e="option"){return n=>{let r=n.state.field(completionState,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp-1?r.open.selected+c*(o?1:-1):o?0:h-1;return p<0?p=e=="page"?0:h-1:p>=h&&(p=e=="page"?h-1:0),n.dispatch({effects:setSelectedEffect.of(p)}),!0}}const acceptCompletion=o=>{let e=o.state.field(completionState,!1);return o.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestampo.state.field(completionState,!1)?(o.dispatch({effects:startCompletionEffect.of(!0)}),!0):!1,closeCompletion=o=>{let e=o.state.field(completionState,!1);return!e||!e.active.some(n=>n.state!=0)?!1:(o.dispatch({effects:closeCompletionEffect.of(null)}),!0)};class RunningQuery{constructor(e,n){this.active=e,this.context=n,this.time=Date.now(),this.updates=[],this.done=void 0}}const MaxUpdateCount=50,MinAbortTime=1e3,completionPlugin=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of o.state.field(completionState).active)e.state==1&&this.startQuery(e)}update(o){let e=o.state.field(completionState),n=o.state.facet(completionConfig);if(!o.selectionSet&&!o.docChanged&&o.startState.field(completionState)==e)return;let r=o.transactions.some(u=>{let h=getUpdateType(u,n);return h&8||(u.selection||u.docChanged)&&!(h&3)});for(let u=0;uMaxUpdateCount&&Date.now()-h.time>MinAbortTime){for(let p of h.context.abortListeners)try{p()}catch(b){logException(this.view.state,b)}h.context.abortListeners=null,this.running.splice(u--,1)}else h.updates.push(...o.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),o.transactions.some(u=>u.effects.some(h=>h.is(startCompletionEffect)))&&(this.pendingStart=!0);let c=this.pendingStart?50:n.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(u=>u.state==1&&!this.running.some(h=>h.active.source==u.source))?setTimeout(()=>this.startUpdate(),c):-1,this.composing!=0)for(let u of o.transactions)u.isUserEvent("input.type")?this.composing=2:this.composing==2&&u.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:o}=this.view,e=o.field(completionState);for(let n of e.active)n.state==1&&!this.running.some(r=>r.active.source==n.source)&&this.startQuery(n)}startQuery(o){let{state:e}=this.view,n=cur(e),r=new CompletionContext(e,n,o.explicitPos==n,this.view),c=new RunningQuery(o,r);this.running.push(c),Promise.resolve(o.source(r)).then(u=>{c.context.aborted||(c.done=u||null,this.scheduleAccept())},u=>{this.view.dispatch({effects:closeCompletionEffect.of(null)}),logException(this.view.state,u)})}scheduleAccept(){this.running.every(o=>o.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(completionConfig).updateSyncTime))}accept(){var o;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],n=this.view.state.facet(completionConfig);for(let r=0;rh.source==c.active.source);if(u&&u.state==1)if(c.done==null){let h=new ActiveSource(c.active.source,0);for(let p of c.updates)h=h.update(p,n);h.state!=1&&e.push(h)}else this.startQuery(u)}e.length&&this.view.dispatch({effects:setActiveEffect.of(e)})}},{eventHandlers:{blur(o){let e=this.view.state.field(completionState,!1);if(e&&e.tooltip&&this.view.state.facet(completionConfig).closeOnBlur){let n=e.open&&getTooltip(this.view,e.open.tooltip);(!n||!n.dom.contains(o.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:closeCompletionEffect.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:startCompletionEffect.of(!1)}),20),this.composing=0}}}),windows=typeof navigator=="object"&&/Win/.test(navigator.platform),commitCharacters=Prec.highest(EditorView.domEventHandlers({keydown(o,e){let n=e.state.field(completionState,!1);if(!n||!n.open||n.open.disabled||n.open.selected<0||o.key.length>1||o.ctrlKey&&!(windows&&o.altKey)||o.metaKey)return!1;let r=n.open.options[n.open.selected],c=n.active.find(h=>h.source==r.source),u=r.completion.commitCharacters||c.result.commitCharacters;return u&&u.indexOf(o.key)>-1&&applyCompletion(e,r),!1}})),baseTheme$1=EditorView.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class FieldPos{constructor(e,n,r,c){this.field=e,this.line=n,this.from=r,this.to=c}}class FieldRange{constructor(e,n,r){this.field=e,this.from=n,this.to=r}map(e){let n=e.mapPos(this.from,-1,MapMode.TrackDel),r=e.mapPos(this.to,1,MapMode.TrackDel);return n==null||r==null?null:new FieldRange(this.field,n,r)}}class Snippet{constructor(e,n){this.lines=e,this.fieldPositions=n}instantiate(e,n){let r=[],c=[n],u=e.doc.lineAt(n),h=/^\s*/.exec(u.text)[0];for(let b of this.lines){if(r.length){let y=h,k=/^\t*/.exec(b)[0].length;for(let A=0;Anew FieldRange(b.field,c[b.line]+b.from,c[b.line]+b.to));return{text:r,ranges:p}}static parse(e){let n=[],r=[],c=[],u;for(let h of e.split(/\r\n?|\n/)){for(;u=/[#$]\{(?:(\d+)(?::([^}]*))?|((?:\\[{}]|[^}])*))\}/.exec(h);){let p=u[1]?+u[1]:null,b=u[2]||u[3]||"",y=-1,k=b.replace(/\\[{}]/g,A=>A[1]);for(let A=0;A=y&&R.field++}c.push(new FieldPos(y,r.length,u.index,u.index+k.length)),h=h.slice(0,u.index)+b+h.slice(u.index+u[0].length)}h=h.replace(/\\([{}])/g,(p,b,y)=>{for(let k of c)k.line==r.length&&k.from>y&&(k.from--,k.to--);return b}),r.push(h)}return new Snippet(r,c)}}let fieldMarker=Decoration.widget({widget:new class extends WidgetType{toDOM(){let o=document.createElement("span");return o.className="cm-snippetFieldPosition",o}ignoreEvent(){return!1}}}),fieldRange=Decoration.mark({class:"cm-snippetField"});class ActiveSnippet{constructor(e,n){this.ranges=e,this.active=n,this.deco=Decoration.set(e.map(r=>(r.from==r.to?fieldMarker:fieldRange).range(r.from,r.to)))}map(e){let n=[];for(let r of this.ranges){let c=r.map(e);if(!c)return null;n.push(c)}return new ActiveSnippet(n,this.active)}selectionInsideField(e){return e.ranges.every(n=>this.ranges.some(r=>r.field==this.active&&r.from<=n.from&&r.to>=n.to))}}const setActive=StateEffect.define({map(o,e){return o&&o.map(e)}}),moveToField=StateEffect.define(),snippetState=StateField.define({create(){return null},update(o,e){for(let n of e.effects){if(n.is(setActive))return n.value;if(n.is(moveToField)&&o)return new ActiveSnippet(o.ranges,n.value)}return o&&e.docChanged&&(o=o.map(e.changes)),o&&e.selection&&!o.selectionInsideField(e.selection)&&(o=null),o},provide:o=>EditorView.decorations.from(o,e=>e?e.deco:Decoration.none)});function fieldSelection(o,e){return EditorSelection.create(o.filter(n=>n.field==e).map(n=>EditorSelection.range(n.from,n.to)))}function snippet(o){let e=Snippet.parse(o);return(n,r,c,u)=>{let{text:h,ranges:p}=e.instantiate(n.state,c),b={changes:{from:c,to:u,insert:Text.of(h)},scrollIntoView:!0,annotations:r?[pickedCompletion.of(r),Transaction.userEvent.of("input.complete")]:void 0};if(p.length&&(b.selection=fieldSelection(p,0)),p.some(y=>y.field>0)){let y=new ActiveSnippet(p,0),k=b.effects=[setActive.of(y)];n.state.field(snippetState,!1)===void 0&&k.push(StateEffect.appendConfig.of([snippetState,addSnippetKeymap,snippetPointerHandler,baseTheme$1]))}n.dispatch(n.state.update(b))}}function moveField(o){return({state:e,dispatch:n})=>{let r=e.field(snippetState,!1);if(!r||o<0&&r.active==0)return!1;let c=r.active+o,u=o>0&&!r.ranges.some(h=>h.field==c+o);return n(e.update({selection:fieldSelection(r.ranges,c),effects:setActive.of(u?null:new ActiveSnippet(r.ranges,c)),scrollIntoView:!0})),!0}}const clearSnippet=({state:o,dispatch:e})=>o.field(snippetState,!1)?(e(o.update({effects:setActive.of(null)})),!0):!1,nextSnippetField=moveField(1),prevSnippetField=moveField(-1),defaultSnippetKeymap=[{key:"Tab",run:nextSnippetField,shift:prevSnippetField},{key:"Escape",run:clearSnippet}],snippetKeymap=Facet.define({combine(o){return o.length?o[0]:defaultSnippetKeymap}}),addSnippetKeymap=Prec.highest(keymap.compute([snippetKeymap],o=>o.facet(snippetKeymap)));function snippetCompletion(o,e){return Object.assign(Object.assign({},e),{apply:snippet(o)})}const snippetPointerHandler=EditorView.domEventHandlers({mousedown(o,e){let n=e.state.field(snippetState,!1),r;if(!n||(r=e.posAtCoords({x:o.clientX,y:o.clientY}))==null)return!1;let c=n.ranges.find(u=>u.from<=r&&u.to>=r);return!c||c.field==n.active?!1:(e.dispatch({selection:fieldSelection(n.ranges,c.field),effects:setActive.of(n.ranges.some(u=>u.field>c.field)?new ActiveSnippet(n.ranges,c.field):null),scrollIntoView:!0}),!0)}}),defaults={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},closeBracketEffect=StateEffect.define({map(o,e){let n=e.mapPos(o,-1,MapMode.TrackAfter);return n??void 0}}),closedBracket=new class extends RangeValue{};closedBracket.startSide=1;closedBracket.endSide=-1;const bracketState=StateField.define({create(){return RangeSet.empty},update(o,e){if(o=o.map(e.changes),e.selection){let n=e.state.doc.lineAt(e.selection.main.head);o=o.update({filter:r=>r>=n.from&&r<=n.to})}for(let n of e.effects)n.is(closeBracketEffect)&&(o=o.update({add:[closedBracket.range(n.value,n.value+1)]}));return o}});function closeBrackets(){return[inputHandler,bracketState]}const definedClosing="()[]{}<>";function closing(o){for(let e=0;e{if((android$1?o.composing:o.compositionStarted)||o.state.readOnly)return!1;let c=o.state.selection.main;if(r.length>2||r.length==2&&codePointSize(codePointAt(r,0))==1||e!=c.from||n!=c.to)return!1;let u=insertBracket(o.state,r);return u?(o.dispatch(u),!0):!1}),deleteBracketPair=({state:o,dispatch:e})=>{if(o.readOnly)return!1;let r=config(o,o.selection.main.head).brackets||defaults.brackets,c=null,u=o.changeByRange(h=>{if(h.empty){let p=prevChar(o.doc,h.head);for(let b of r)if(b==p&&nextChar(o.doc,h.head)==closing(codePointAt(b,0)))return{changes:{from:h.head-b.length,to:h.head+b.length},range:EditorSelection.cursor(h.head-b.length)}}return{range:c=h}});return c||e(o.update(u,{scrollIntoView:!0,userEvent:"delete.backward"})),!c},closeBracketsKeymap=[{key:"Backspace",run:deleteBracketPair}];function insertBracket(o,e){let n=config(o,o.selection.main.head),r=n.brackets||defaults.brackets;for(let c of r){let u=closing(codePointAt(c,0));if(e==c)return u==c?handleSame(o,c,r.indexOf(c+c+c)>-1,n):handleOpen(o,c,u,n.before||defaults.before);if(e==u&&closedBracketAt(o,o.selection.main.from))return handleClose(o,c,u)}return null}function closedBracketAt(o,e){let n=!1;return o.field(bracketState).between(0,o.doc.length,r=>{r==e&&(n=!0)}),n}function nextChar(o,e){let n=o.sliceString(e,e+2);return n.slice(0,codePointSize(codePointAt(n,0)))}function prevChar(o,e){let n=o.sliceString(e-2,e);return codePointSize(codePointAt(n,0))==n.length?n:n.slice(1)}function handleOpen(o,e,n,r){let c=null,u=o.changeByRange(h=>{if(!h.empty)return{changes:[{insert:e,from:h.from},{insert:n,from:h.to}],effects:closeBracketEffect.of(h.to+e.length),range:EditorSelection.range(h.anchor+e.length,h.head+e.length)};let p=nextChar(o.doc,h.head);return!p||/\s/.test(p)||r.indexOf(p)>-1?{changes:{insert:e+n,from:h.head},effects:closeBracketEffect.of(h.head+e.length),range:EditorSelection.cursor(h.head+e.length)}:{range:c=h}});return c?null:o.update(u,{scrollIntoView:!0,userEvent:"input.type"})}function handleClose(o,e,n){let r=null,c=o.changeByRange(u=>u.empty&&nextChar(o.doc,u.head)==n?{changes:{from:u.head,to:u.head+n.length,insert:n},range:EditorSelection.cursor(u.head+n.length)}:r={range:u});return r?null:o.update(c,{scrollIntoView:!0,userEvent:"input.type"})}function handleSame(o,e,n,r){let c=r.stringPrefixes||defaults.stringPrefixes,u=null,h=o.changeByRange(p=>{if(!p.empty)return{changes:[{insert:e,from:p.from},{insert:e,from:p.to}],effects:closeBracketEffect.of(p.to+e.length),range:EditorSelection.range(p.anchor+e.length,p.head+e.length)};let b=p.head,y=nextChar(o.doc,b),k;if(y==e){if(nodeStart(o,b))return{changes:{insert:e+e,from:b},effects:closeBracketEffect.of(b+e.length),range:EditorSelection.cursor(b+e.length)};if(closedBracketAt(o,b)){let R=n&&o.sliceDoc(b,b+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:b,to:b+R.length,insert:R},range:EditorSelection.cursor(b+R.length)}}}else{if(n&&o.sliceDoc(b-2*e.length,b)==e+e&&(k=canStartStringAt(o,b-2*e.length,c))>-1&&nodeStart(o,k))return{changes:{insert:e+e+e+e,from:b},effects:closeBracketEffect.of(b+e.length),range:EditorSelection.cursor(b+e.length)};if(o.charCategorizer(b)(y)!=CharCategory.Word&&canStartStringAt(o,b,c)>-1&&!probablyInString(o,b,e,c))return{changes:{insert:e+e,from:b},effects:closeBracketEffect.of(b+e.length),range:EditorSelection.cursor(b+e.length)}}return{range:u=p}});return u?null:o.update(h,{scrollIntoView:!0,userEvent:"input.type"})}function nodeStart(o,e){let n=syntaxTree(o).resolveInner(e+1);return n.parent&&n.from==e}function probablyInString(o,e,n,r){let c=syntaxTree(o).resolveInner(e,-1),u=r.reduce((h,p)=>Math.max(h,p.length),0);for(let h=0;h<5;h++){let p=o.sliceDoc(c.from,Math.min(c.to,c.from+n.length+u)),b=p.indexOf(n);if(!b||b>-1&&r.indexOf(p.slice(0,b))>-1){let k=c.firstChild;for(;k&&k.from==c.from&&k.to-k.from>n.length+b;){if(o.sliceDoc(k.to-n.length,k.to)==n)return!1;k=k.firstChild}return!0}let y=c.to==e&&c.parent;if(!y)break;c=y}return!1}function canStartStringAt(o,e,n){let r=o.charCategorizer(e);if(r(o.sliceDoc(e-1,e))!=CharCategory.Word)return e;for(let c of n){let u=e-c.length;if(o.sliceDoc(u,e)==c&&r(o.sliceDoc(u-1,u))!=CharCategory.Word)return u}return-1}function autocompletion(o={}){return[commitCharacters,completionState,completionConfig.of(o),completionPlugin,completionKeymapExt,baseTheme$1]}const completionKeymap=[{key:"Ctrl-Space",run:startCompletion},{key:"Escape",run:closeCompletion},{key:"ArrowDown",run:moveCompletionSelection(!0)},{key:"ArrowUp",run:moveCompletionSelection(!1)},{key:"PageDown",run:moveCompletionSelection(!0,"page")},{key:"PageUp",run:moveCompletionSelection(!1,"page")},{key:"Enter",run:acceptCompletion}],completionKeymapExt=Prec.highest(keymap.computeN([completionConfig],o=>o.facet(completionConfig).defaultKeymap?[completionKeymap]:[]));class SelectedDiagnostic{constructor(e,n,r){this.from=e,this.to=n,this.diagnostic=r}}class LintState{constructor(e,n,r){this.diagnostics=e,this.panel=n,this.selected=r}static init(e,n,r){let c=e,u=r.facet(lintConfig).markerFilter;u&&(c=u(c,r));let h=Decoration.set(c.map(p=>p.from==p.to||p.from==p.to-1&&r.doc.lineAt(p.from).to==p.from?Decoration.widget({widget:new DiagnosticWidget(p),diagnostic:p}).range(p.from):Decoration.mark({attributes:{class:"cm-lintRange cm-lintRange-"+p.severity+(p.markClass?" "+p.markClass:"")},diagnostic:p}).range(p.from,p.to)),!0);return new LintState(h,n,findDiagnostic(h))}}function findDiagnostic(o,e=null,n=0){let r=null;return o.between(n,1e9,(c,u,{spec:h})=>{if(!(e&&h.diagnostic!=e))return r=new SelectedDiagnostic(c,u,h.diagnostic),!1}),r}function hideTooltip(o,e){let n=e.pos,r=e.end||n,c=o.state.facet(lintConfig).hideOn(o,n,r);if(c!=null)return c;let u=o.startState.doc.lineAt(e.pos);return!!(o.effects.some(h=>h.is(setDiagnosticsEffect))||o.changes.touchesRange(u.from,Math.max(u.to,r)))}function maybeEnableLint(o,e){return o.field(lintState,!1)?e:e.concat(StateEffect.appendConfig.of(lintExtensions))}function setDiagnostics(o,e){return{effects:maybeEnableLint(o,[setDiagnosticsEffect.of(e)])}}const setDiagnosticsEffect=StateEffect.define(),togglePanel=StateEffect.define(),movePanelSelection=StateEffect.define(),lintState=StateField.define({create(){return new LintState(Decoration.none,null,null)},update(o,e){if(e.docChanged&&o.diagnostics.size){let n=o.diagnostics.map(e.changes),r=null,c=o.panel;if(o.selected){let u=e.changes.mapPos(o.selected.from,1);r=findDiagnostic(n,o.selected.diagnostic,u)||findDiagnostic(n,null,u)}!n.size&&c&&e.state.facet(lintConfig).autoPanel&&(c=null),o=new LintState(n,c,r)}for(let n of e.effects)if(n.is(setDiagnosticsEffect)){let r=e.state.facet(lintConfig).autoPanel?n.value.length?LintPanel.open:null:o.panel;o=LintState.init(n.value,r,e.state)}else n.is(togglePanel)?o=new LintState(o.diagnostics,n.value?LintPanel.open:null,o.selected):n.is(movePanelSelection)&&(o=new LintState(o.diagnostics,o.panel,n.value));return o},provide:o=>[showPanel.from(o,e=>e.panel),EditorView.decorations.from(o,e=>e.diagnostics)]}),activeMark=Decoration.mark({class:"cm-lintRange cm-lintRange-active"});function lintTooltip(o,e,n){let{diagnostics:r}=o.state.field(lintState),c=[],u=2e8,h=0;r.between(e-(n<0?1:0),e+(n>0?1:0),(b,y,{spec:k})=>{e>=b&&e<=y&&(b==y||(e>b||n>0)&&(erenderDiagnostic(o,n,!1)))}const openLintPanel=o=>{let e=o.state.field(lintState,!1);(!e||!e.panel)&&o.dispatch({effects:maybeEnableLint(o.state,[togglePanel.of(!0)])});let n=getPanel(o,LintPanel.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},closeLintPanel=o=>{let e=o.state.field(lintState,!1);return!e||!e.panel?!1:(o.dispatch({effects:togglePanel.of(!1)}),!0)},nextDiagnostic=o=>{let e=o.state.field(lintState,!1);if(!e)return!1;let n=o.state.selection.main,r=e.diagnostics.iter(n.to+1);return!r.value&&(r=e.diagnostics.iter(0),!r.value||r.from==n.from&&r.to==n.to)?!1:(o.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},lintKeymap=[{key:"Mod-Shift-m",run:openLintPanel,preventDefault:!0},{key:"F8",run:nextDiagnostic}],lintPlugin=ViewPlugin.fromClass(class{constructor(o){this.view=o,this.timeout=-1,this.set=!0;let{delay:e}=o.state.facet(lintConfig);this.lintTime=Date.now()+e,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,e)}run(){clearTimeout(this.timeout);let o=Date.now();if(oPromise.resolve(r(this.view)))).then(r=>{let c=r.reduce((u,h)=>u.concat(h));this.view.state.doc==e.doc&&this.view.dispatch(setDiagnostics(this.view.state,c))},r=>{logException(this.view.state,r)})}}update(o){let e=o.state.facet(lintConfig);(o.docChanged||e!=o.startState.facet(lintConfig)||e.needsRefresh&&e.needsRefresh(o))&&(this.lintTime=Date.now()+e.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,e.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}}),lintConfig=Facet.define({combine(o){return Object.assign({sources:o.map(e=>e.source).filter(e=>e!=null)},combineConfig(o.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{needsRefresh:(e,n)=>e?n?r=>e(r)||n(r):e:n}))}});function linter(o,e={}){return[lintConfig.of({source:o,config:e}),lintPlugin,lintExtensions]}function assignKeys(o){let e=[];if(o)e:for(let{name:n}of o){for(let r=0;ru.toLowerCase()==c.toLowerCase())){e.push(c);continue e}}e.push("")}return e}function renderDiagnostic(o,e,n){var r;let c=n?assignKeys(e.actions):[];return crelt("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},crelt("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(o):e.message),(r=e.actions)===null||r===void 0?void 0:r.map((u,h)=>{let p=!1,b=R=>{if(R.preventDefault(),p)return;p=!0;let N=findDiagnostic(o.state.field(lintState).diagnostics,e);N&&u.apply(o,N.from,N.to)},{name:y}=u,k=c[h]?y.indexOf(c[h]):-1,A=k<0?y:[y.slice(0,k),crelt("u",y.slice(k,k+1)),y.slice(k+1)];return crelt("button",{type:"button",class:"cm-diagnosticAction",onclick:b,onmousedown:b,"aria-label":` Action: ${y}${k<0?"":` (access key "${c[h]})"`}.`},A)}),e.source&&crelt("div",{class:"cm-diagnosticSource"},e.source))}class DiagnosticWidget extends WidgetType{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return crelt("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class PanelItem{constructor(e,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=renderDiagnostic(e,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class LintPanel{constructor(e){this.view=e,this.items=[];let n=c=>{if(c.keyCode==27)closeLintPanel(this.view),this.view.focus();else if(c.keyCode==38||c.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(c.keyCode==40||c.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(c.keyCode==36)this.moveSelection(0);else if(c.keyCode==35)this.moveSelection(this.items.length-1);else if(c.keyCode==13)this.view.focus();else if(c.keyCode>=65&&c.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:u}=this.items[this.selectedIndex],h=assignKeys(u.actions);for(let p=0;p{for(let u=0;ucloseLintPanel(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(lintState).selected;if(!e)return-1;for(let n=0;n{let y=-1,k;for(let A=r;Ar&&(this.items.splice(r,y-r),c=!0)),n&&k.diagnostic==n.diagnostic?k.dom.hasAttribute("aria-selected")||(k.dom.setAttribute("aria-selected","true"),u=k):k.dom.hasAttribute("aria-selected")&&k.dom.removeAttribute("aria-selected"),r++});r({sel:u.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:h,panel:p})=>{let b=p.height/this.list.offsetHeight;h.topp.bottom&&(this.list.scrollTop+=(h.bottom-p.bottom)/b)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),c&&this.sync()}sync(){let e=this.list.firstChild;function n(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)n();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)n()}moveSelection(e){if(this.selectedIndex<0)return;let n=this.view.state.field(lintState),r=findDiagnostic(n.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:movePanelSelection.of(r)})}static open(e){return new LintPanel(e)}}function svg(o,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,${encodeURIComponent(o)}')`}function underline(o){return svg(``,'width="6" height="3"')}const baseTheme=EditorView.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:underline("#d11")},".cm-lintRange-warning":{backgroundImage:underline("orange")},".cm-lintRange-info":{backgroundImage:underline("#999")},".cm-lintRange-hint":{backgroundImage:underline("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}});function severityWeight(o){return o=="error"?4:o=="warning"?3:o=="info"?2:1}class LintGutterMarker extends GutterMarker{constructor(e){super(),this.diagnostics=e,this.severity=e.reduce((n,r)=>severityWeight(n)gutterMarkerMouseOver(e,n,r)),n}}function trackHoverOn(o,e){let n=r=>{let c=e.getBoundingClientRect();if(!(r.clientX>c.left-10&&r.clientXc.top-10&&r.clientYe.getBoundingClientRect()}}})}),e.onmouseout=e.onmousemove=null,trackHoverOn(o,e)}let{hoverTime:c}=o.state.facet(lintGutterConfig),u=setTimeout(r,c);e.onmouseout=()=>{clearTimeout(u),e.onmouseout=e.onmousemove=null},e.onmousemove=()=>{clearTimeout(u),u=setTimeout(r,c)}}function markersForDiagnostics(o,e){let n=Object.create(null);for(let c of e){let u=o.lineAt(c.from);(n[u.from]||(n[u.from]=[])).push(c)}let r=[];for(let c in n)r.push(new LintGutterMarker(n[c]).range(+c));return RangeSet.of(r,!0)}const lintGutterExtension=gutter({class:"cm-gutter-lint",markers:o=>o.state.field(lintGutterMarkers)}),lintGutterMarkers=StateField.define({create(){return RangeSet.empty},update(o,e){o=o.map(e.changes);let n=e.state.facet(lintGutterConfig).markerFilter;for(let r of e.effects)if(r.is(setDiagnosticsEffect)){let c=r.value;n&&(c=n(c||[],e.state)),o=markersForDiagnostics(e.state.doc,c.slice(0))}return o}}),setLintGutterTooltip=StateEffect.define(),lintGutterTooltip=StateField.define({create(){return null},update(o,e){return o&&e.docChanged&&(o=hideTooltip(e,o)?null:Object.assign(Object.assign({},o),{pos:e.changes.mapPos(o.pos)})),e.effects.reduce((n,r)=>r.is(setLintGutterTooltip)?r.value:n,o)},provide:o=>showTooltip.from(o)}),lintGutterTheme=EditorView.baseTheme({".cm-gutter-lint":{width:"1.4em","& .cm-gutterElement":{padding:".2em"}},".cm-lint-marker":{width:"1em",height:"1em"},".cm-lint-marker-info":{content:svg('')},".cm-lint-marker-warning":{content:svg('')},".cm-lint-marker-error":{content:svg('')}}),lintExtensions=[lintState,EditorView.decorations.compute([lintState],o=>{let{selected:e,panel:n}=o.field(lintState);return!e||!n||e.from==e.to?Decoration.none:Decoration.set([activeMark.range(e.from,e.to)])}),hoverTooltip(lintTooltip,{hideOn:hideTooltip}),baseTheme],lintGutterConfig=Facet.define({combine(o){return combineConfig(o,{hoverTime:300,markerFilter:null,tooltipFilter:null})}});function lintGutter(o={}){return[lintGutterConfig.of(o),lintGutterMarkers,lintGutterExtension,lintGutterTheme,lintGutterTooltip]}const basicSetup=[lineNumbers(),highlightActiveLineGutter(),highlightSpecialChars(),history$1(),foldGutter(),drawSelection(),dropCursor(),EditorState.allowMultipleSelections.of(!0),indentOnInput(),syntaxHighlighting(defaultHighlightStyle,{fallback:!0}),bracketMatching(),closeBrackets(),autocompletion(),rectangularSelection(),crosshairCursor(),highlightActiveLine(),highlightSelectionMatches(),keymap.of([...closeBracketsKeymap,...defaultKeymap,...searchKeymap,...historyKeymap,...foldKeymap,...completionKeymap,...lintKeymap])];var define_process_env_default={};class Stack{constructor(e,n,r,c,u,h,p,b,y,k=0,A){this.p=e,this.stack=n,this.state=r,this.reducePos=c,this.pos=u,this.score=h,this.buffer=p,this.bufferBase=b,this.curContext=y,this.lookAhead=k,this.parent=A}toString(){return`[${this.stack.filter((e,n)=>n%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,n,r=0){let c=e.parser.context;return new Stack(e,[],n,r,r,0,[],0,c?new StackContext(c,c.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,n){this.stack.push(this.state,n,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var n;let r=e>>19,c=e&65535,{parser:u}=this.p,h=this.reducePos=2e3&&!(!((n=this.p.parser.nodeSet.types[c])===null||n===void 0)&&n.isAnonymous)&&(y==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=k):this.p.lastBigReductionSizeb;)this.stack.pop();this.reduceContext(c,y)}storeNode(e,n,r,c=4,u=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&h.buffer[p-4]==0&&h.buffer[p-1]>-1){if(n==r)return;if(h.buffer[p-2]>=n){h.buffer[p-2]=r;return}}}if(!u||this.pos==r)this.buffer.push(e,n,r,c);else{let h=this.buffer.length;if(h>0&&this.buffer[h-4]!=0){let p=!1;for(let b=h;b>0&&this.buffer[b-2]>r;b-=4)if(this.buffer[b-1]>=0){p=!0;break}if(p)for(;h>0&&this.buffer[h-2]>r;)this.buffer[h]=this.buffer[h-4],this.buffer[h+1]=this.buffer[h-3],this.buffer[h+2]=this.buffer[h-2],this.buffer[h+3]=this.buffer[h-1],h-=4,c>4&&(c-=4)}this.buffer[h]=e,this.buffer[h+1]=n,this.buffer[h+2]=r,this.buffer[h+3]=c}}shift(e,n,r,c){if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=c,this.shiftContext(n,r),n<=this.p.parser.maxNode&&this.buffer.push(n,r,c,4);else{let u=e,{parser:h}=this.p;(c>this.pos||n<=h.maxNode)&&(this.pos=c,h.stateFlag(u,1)||(this.reducePos=c)),this.pushState(u,r),this.shiftContext(n,r),n<=h.maxNode&&this.buffer.push(n,r,c,4)}}apply(e,n,r,c){e&65536?this.reduce(e):this.shift(e,n,r,c)}useNode(e,n){let r=this.p.reused.length-1;(r<0||this.p.reused[r]!=e)&&(this.p.reused.push(e),r++);let c=this.pos;this.reducePos=this.pos=c+e.length,this.pushState(n,c),this.buffer.push(r,c,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,n=e.buffer.length;for(;n>0&&e.buffer[n-2]>e.reducePos;)n-=4;let r=e.buffer.slice(n),c=e.bufferBase+n;for(;e&&c==e.bufferBase;)e=e.parent;return new Stack(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,r,c,this.curContext,this.lookAhead,e)}recoverByDelete(e,n){let r=e<=this.p.parser.maxNode;r&&this.storeNode(e,this.pos,n,4),this.storeNode(0,this.pos,n,r?8:4),this.pos=this.reducePos=n,this.score-=190}canShift(e){for(let n=new SimulatedStack(this);;){let r=this.p.parser.stateSlot(n.state,4)||this.p.parser.hasAction(n.state,e);if(r==0)return!1;if(!(r&65536))return!0;n.reduce(r)}}recoverByInsert(e){if(this.stack.length>=300)return[];let n=this.p.parser.nextStates(this.state);if(n.length>8||this.stack.length>=120){let c=[];for(let u=0,h;ub&1&&p==h)||c.push(n[u],h)}n=c}let r=[];for(let c=0;c>19,c=n&65535,u=this.stack.length-r*3;if(u<0||e.getGoto(this.stack[u],c,!1)<0){let h=this.findForcedReduction();if(h==null)return!1;n=h}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(n),!0}findForcedReduction(){let{parser:e}=this.p,n=[],r=(c,u)=>{if(!n.includes(c))return n.push(c),e.allActions(c,h=>{if(!(h&393216))if(h&65536){let p=(h>>19)-u;if(p>1){let b=h&65535,y=this.stack.length-p*3;if(y>=0&&e.getGoto(this.stack[y],b,!1)>=0)return p<<19|65536|b}}else{let p=r(h,u+1);if(p!=null)return p}})};return r(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let n=0;nthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class StackContext{constructor(e,n){this.tracker=e,this.context=n,this.hash=e.strict?e.hash(n):0}}class SimulatedStack{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let n=e&65535,r=e>>19;r==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(r-1)*3;let c=this.start.p.parser.getGoto(this.stack[this.base-3],n,!0);this.state=c}}class StackBufferCursor{constructor(e,n,r){this.stack=e,this.pos=n,this.index=r,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,n=e.bufferBase+e.buffer.length){return new StackBufferCursor(e,n,n-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new StackBufferCursor(this.stack,this.pos,this.index)}}function decodeArray(o,e=Uint16Array){if(typeof o!="string")return o;let n=null;for(let r=0,c=0;r=92&&h--,h>=34&&h--;let b=h-32;if(b>=46&&(b-=46,p=!0),u+=b,p)break;u*=46}n?n[c++]=u:n=new e(u)}return n}class CachedToken{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const nullToken=new CachedToken;class InputStream{constructor(e,n){this.input=e,this.ranges=n,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=nullToken,this.rangeIndex=0,this.pos=this.chunkPos=n[0].from,this.range=n[0],this.end=n[n.length-1].to,this.readNext()}resolveOffset(e,n){let r=this.range,c=this.rangeIndex,u=this.pos+e;for(;ur.to:u>=r.to;){if(c==this.ranges.length-1)return null;let h=this.ranges[++c];u+=h.from-r.to,r=h}return u}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,n.from);return this.end}peek(e){let n=this.chunkOff+e,r,c;if(n>=0&&n=this.chunk2Pos&&rp.to&&(this.chunk2=this.chunk2.slice(0,p.to-r)),c=this.chunk2.charCodeAt(0)}}return r>=this.token.lookAhead&&(this.token.lookAhead=r+1),c}acceptToken(e,n=0){let r=n?this.resolveOffset(n,-1):this.pos;if(r==null||r=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,n){if(n?(this.token=n,n.start=e,n.lookAhead=e+1,n.value=n.extended=-1):this.token=nullToken,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&n<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,n-this.chunkPos);if(e>=this.chunk2Pos&&n<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,n-this.chunk2Pos);if(e>=this.range.from&&n<=this.range.to)return this.input.read(e,n);let r="";for(let c of this.ranges){if(c.from>=n)break;c.to>e&&(r+=this.input.read(Math.max(c.from,e),Math.min(c.to,n)))}return r}}class TokenGroup{constructor(e,n){this.data=e,this.id=n}token(e,n){let{parser:r}=n.p;readToken(this.data,e,n,this.id,r.data,r.tokenPrecTable)}}TokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class LocalTokenGroup{constructor(e,n,r){this.precTable=n,this.elseToken=r,this.data=typeof e=="string"?decodeArray(e):e}token(e,n){let r=e.pos,c=0;for(;;){let u=e.next<0,h=e.resolveOffset(1,1);if(readToken(this.data,e,n,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(u||c++,h==null)break;e.reset(h,e.token)}c&&(e.reset(r,e.token),e.acceptToken(this.elseToken,c))}}LocalTokenGroup.prototype.contextual=TokenGroup.prototype.fallback=TokenGroup.prototype.extend=!1;class ExternalTokenizer{constructor(e,n={}){this.token=e,this.contextual=!!n.contextual,this.fallback=!!n.fallback,this.extend=!!n.extend}}function readToken(o,e,n,r,c,u){let h=0,p=1<0){let F=o[N];if(b.allows(F)&&(e.token.value==-1||e.token.value==F||overrides(F,e.token.value,c,u))){e.acceptToken(F);break}}let k=e.next,A=0,R=o[h+2];if(e.next<0&&R>A&&o[y+R*3-3]==65535){h=o[y+R*3-1];continue e}for(;A>1,F=y+N+(N<<1),V=o[F],W=o[F+1]||65536;if(k=W)A=N+1;else{h=o[F+2],e.advance();continue e}}break}}function findOffset(o,e,n){for(let r=e,c;(c=o[r])!=65535;r++)if(c==n)return r-e;return-1}function overrides(o,e,n,r){let c=findOffset(n,r,e);return c<0||findOffset(n,r,o)e)&&!r.type.isError)return n<0?Math.max(0,Math.min(r.to-1,e-25)):Math.min(o.length,Math.max(r.from+1,e+25));if(n<0?r.prevSibling():r.nextSibling())break;if(!r.parent())return n<0?0:o.length}}let FragmentCursor$1=class{constructor(e,n){this.fragments=e,this.nodeSet=n,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?cutAt(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?cutAt(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=h,null;if(u instanceof Tree){if(h==e){if(h=Math.max(this.safeFrom,e)&&(this.trees.push(u),this.start.push(h),this.index.push(0))}else this.index[n]++,this.nextStart=h+u.length}}};class TokenCache{constructor(e,n){this.stream=n,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(r=>new CachedToken)}getActions(e){let n=0,r=null,{parser:c}=e.p,{tokenizers:u}=c,h=c.stateSlot(e.state,3),p=e.curContext?e.curContext.hash:0,b=0;for(let y=0;yA.end+25&&(b=Math.max(A.lookAhead,b)),A.value!=0)){let R=n;if(A.extended>-1&&(n=this.addActions(e,A.extended,A.end,n)),n=this.addActions(e,A.value,A.end,n),!k.extend&&(r=A,n>R))break}}for(;this.actions.length>n;)this.actions.pop();return b&&e.setLookAhead(b),!r&&e.pos==this.stream.end&&(r=new CachedToken,r.value=e.p.parser.eofTerm,r.start=r.end=e.pos,n=this.addActions(e,r.value,r.end,n)),this.mainToken=r,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let n=new CachedToken,{pos:r,p:c}=e;return n.start=r,n.end=Math.min(r+1,c.stream.end),n.value=r==c.stream.end?c.parser.eofTerm:0,n}updateCachedToken(e,n,r){let c=this.stream.clipPos(r.pos);if(n.token(this.stream.reset(c,e),r),e.value>-1){let{parser:u}=r.p;for(let h=0;h=0&&r.p.parser.dialect.allows(p>>1)){p&1?e.extended=p>>1:e.value=p>>1;break}}}else e.value=0,e.end=this.stream.clipPos(c+1)}putAction(e,n,r,c){for(let u=0;ue.bufferLength*4?new FragmentCursor$1(r,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,n=this.minStackPos,r=this.stacks=[],c,u;if(this.bigReductionCount>300&&e.length==1){let[h]=e;for(;h.forceReduce()&&h.stack.length&&h.stack[h.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let h=0;hn)r.push(p);else{if(this.advanceStack(p,r,e))continue;{c||(c=[],u=[]),c.push(p);let b=this.tokens.getMainToken(p);u.push(b.value,b.end)}}break}}if(!r.length){let h=c&&findFinished(c);if(h)return verbose&&console.log("Finish with "+this.stackID(h)),this.stackToTree(h);if(this.parser.strict)throw verbose&&c&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+n);this.recovering||(this.recovering=5)}if(this.recovering&&c){let h=this.stoppedAt!=null&&c[0].pos>this.stoppedAt?c[0]:this.runRecovery(c,u,r);if(h)return verbose&&console.log("Force-finish "+this.stackID(h)),this.stackToTree(h.forceAll())}if(this.recovering){let h=this.recovering==1?1:this.recovering*3;if(r.length>h)for(r.sort((p,b)=>b.score-p.score);r.length>h;)r.pop();r.some(p=>p.reducePos>n)&&this.recovering--}else if(r.length>1){e:for(let h=0;h500&&y.buffer.length>500)if((p.score-y.score||p.buffer.length-y.buffer.length)>0)r.splice(b--,1);else{r.splice(h--,1);continue e}}}r.length>12&&r.splice(12,r.length-12)}this.minStackPos=r[0].pos;for(let h=1;h ":"";if(this.stoppedAt!=null&&c>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let y=e.curContext&&e.curContext.tracker.strict,k=y?e.curContext.hash:0;for(let A=this.fragments.nodeAt(c);A;){let R=this.parser.nodeSet.types[A.type.id]==A.type?u.getGoto(e.state,A.type.id):-1;if(R>-1&&A.length&&(!y||(A.prop(NodeProp.contextHash)||0)==k))return e.useNode(A,R),verbose&&console.log(h+this.stackID(e)+` (via reuse of ${u.getName(A.type.id)})`),!0;if(!(A instanceof Tree)||A.children.length==0||A.positions[0]>0)break;let N=A.children[0];if(N instanceof Tree&&A.positions[0]==0)A=N;else break}}let p=u.stateSlot(e.state,4);if(p>0)return e.reduce(p),verbose&&console.log(h+this.stackID(e)+` (via always-reduce ${u.getName(p&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let b=this.tokens.getActions(e);for(let y=0;yc?n.push(F):r.push(F)}return!1}advanceFully(e,n){let r=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>r)return pushStackDedup(e,n),!0}}runRecovery(e,n,r){let c=null,u=!1;for(let h=0;h ":"";if(p.deadEnd&&(u||(u=!0,p.restart(),verbose&&console.log(k+this.stackID(p)+" (restarted)"),this.advanceFully(p,r))))continue;let A=p.split(),R=k;for(let N=0;A.forceReduce()&&N<10&&(verbose&&console.log(R+this.stackID(A)+" (via force-reduce)"),!this.advanceFully(A,r));N++)verbose&&(R=this.stackID(A)+" -> ");for(let N of p.recoverByInsert(b))verbose&&console.log(k+this.stackID(N)+" (via recover-insert)"),this.advanceFully(N,r);this.stream.end>p.pos?(y==p.pos&&(y++,b=0),p.recoverByDelete(b,y),verbose&&console.log(k+this.stackID(p)+` (via recover-delete ${this.parser.getName(b)})`),pushStackDedup(p,r)):(!c||c.scoreo;class ContextTracker{constructor(e){this.start=e.start,this.shift=e.shift||id,this.reduce=e.reduce||id,this.reuse=e.reuse||id,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class LRParser extends Parser{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let n=e.nodeNames.split(" ");this.minRepeatTerm=n.length;for(let p=0;pe.topRules[p][1]),c=[];for(let p=0;p=0)u(k,b,p[y++]);else{let A=p[y+-k];for(let R=-k;R>0;R--)u(p[y++],b,A);y++}}}this.nodeSet=new NodeSet(n.map((p,b)=>NodeType.define({name:b>=this.minRepeatTerm?void 0:p,id:b,props:c[b],top:r.indexOf(b)>-1,error:b==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(b)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=DefaultBufferLength;let h=decodeArray(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let p=0;ptypeof p=="number"?new TokenGroup(h,p):p),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,n,r){let c=new Parse(this,e,n,r);for(let u of this.wrappers)c=u(c,e,n,r);return c}getGoto(e,n,r=!1){let c=this.goto;if(n>=c[0])return-1;for(let u=c[n+1];;){let h=c[u++],p=h&1,b=c[u++];if(p&&r)return b;for(let y=u+(h>>1);u0}validAction(e,n){return!!this.allActions(e,r=>r==n?!0:null)}allActions(e,n){let r=this.stateSlot(e,4),c=r?n(r):void 0;for(let u=this.stateSlot(e,1);c==null;u+=3){if(this.data[u]==65535)if(this.data[u+1]==1)u=pair(this.data,u+2);else break;c=n(pair(this.data,u+1))}return c}nextStates(e){let n=[];for(let r=this.stateSlot(e,1);;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=pair(this.data,r+2);else break;if(!(this.data[r+2]&1)){let c=this.data[r+1];n.some((u,h)=>h&1&&u==c)||n.push(this.data[r],c)}}return n}configure(e){let n=Object.assign(Object.create(LRParser.prototype),this);if(e.props&&(n.nodeSet=this.nodeSet.extend(...e.props)),e.top){let r=this.topRules[e.top];if(!r)throw new RangeError(`Invalid top rule name ${e.top}`);n.top=r}return e.tokenizers&&(n.tokenizers=this.tokenizers.map(r=>{let c=e.tokenizers.find(u=>u.from==r);return c?c.to:r})),e.specializers&&(n.specializers=this.specializers.slice(),n.specializerSpecs=this.specializerSpecs.map((r,c)=>{let u=e.specializers.find(p=>p.from==r.external);if(!u)return r;let h=Object.assign(Object.assign({},r),{external:u.to});return n.specializers[c]=getSpecializer(h),h})),e.contextTracker&&(n.context=e.contextTracker),e.dialect&&(n.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(n.strict=e.strict),e.wrap&&(n.wrappers=n.wrappers.concat(e.wrap)),e.bufferLength!=null&&(n.bufferLength=e.bufferLength),n}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let n=this.dynamicPrecedences;return n==null?0:n[e]||0}parseDialect(e){let n=Object.keys(this.dialects),r=n.map(()=>!1);if(e)for(let u of e.split(" ")){let h=n.indexOf(u);h>=0&&(r[h]=!0)}let c=null;for(let u=0;ur)&&n.p.parser.stateFlag(n.state,2)&&(!e||e.scoreo.external(n,r)<<1|e}return o.get}const jsonHighlighting=styleTags({String:tags$1.string,Number:tags$1.number,"True False":tags$1.bool,PropertyName:tags$1.propertyName,Null:tags$1.null,",":tags$1.separator,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),parser$4=LRParser.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",12,"["],["closedBy",8,"}",13,"]"]],propSources:[jsonHighlighting],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oc~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Oe~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zOh~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yOg~~'OO]~~'TO[~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),jsonParseLinter=()=>o=>{try{JSON.parse(o.state.doc.toString())}catch(e){if(!(e instanceof SyntaxError))throw e;const n=getErrorPosition(e,o.state.doc);return[{from:n,message:e.message,severity:"error",to:n}]}return[]};function getErrorPosition(o,e){let n;return(n=o.message.match(/at position (\d+)/))?Math.min(+n[1],e.length):(n=o.message.match(/at line (\d+) column (\d+)/))?Math.min(e.line(+n[1]).from+ +n[2]-1,e.length):0}const jsonLanguage=LRLanguage.define({name:"json",parser:parser$4.configure({props:[indentNodeProp.add({Object:continuedIndent({except:/^\s*\}/}),Array:continuedIndent({except:/^\s*\]/})}),foldNodeProp.add({"Object Array":foldInside})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function json(){return new LanguageSupport(jsonLanguage)}function create_fragment$i(o){let e,n;return{c(){e=element("div"),attr(e,"class",n="is-editable-"+o[0])},m(r,c){insert$1(r,e,c),o[3](e)},p(r,[c]){c&1&&n!==(n="is-editable-"+r[0])&&attr(e,"class",n)},i:noop,o:noop,d(r){r&&detach(e),o[3](null)}}}function instance$i(o,e,n){let r,c,{value:u}=e,{editable:h=!0}=e;onMount(()=>{let b=new Compartment,y=new Compartment,k=EditorState.create({doc:JSON.stringify(u,null,4),extensions:[basicSetup,keymap.of([indentWithTab]),b.of(json()),json(),y.of(EditorState.tabSize.of(4)),lintGutter(),basicSetup,EditorView.editable.of(h),EditorView.updateListener.of(function(A){A.docChanged&&n(2,u=A.state.doc.toString())}),linter(jsonParseLinter())]});c=new EditorView({state:k,parent:r})}),onDestroy(()=>{c&&c.destroy()});function p(b){binding_callbacks[b?"unshift":"push"](()=>{r=b,n(1,r)})}return o.$$set=b=>{"value"in b&&n(2,u=b.value),"editable"in b&&n(0,h=b.editable)},[h,r,u,p]}class Codemirror extends SvelteComponent{constructor(e){super(),init(this,e,instance$i,create_fragment$i,safe_not_equal,{value:2,editable:0})}}function create_if_block$c(o){let e,n;return{c(){e=element("div"),n=text(o[3]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&8&&set_data(n,r[3])},d(r){r&&detach(e)}}}function create_fragment$h(o){let e,n,r,c,u;function h(y){o[5](y)}let p={editable:!o[1].readonly||o[2]};o[0]!==void 0&&(p.value=o[0]),n=new Codemirror({props:p}),binding_callbacks.push(()=>bind(n,"value",h));let b=o[3]&&create_if_block$c(o);return{c(){e=element("div"),create_component(n.$$.fragment),c=space$3(),b&&b.c(),attr(e,"class","mb-3")},m(y,k){insert$1(y,e,k),mount_component(n,e,null),append(e,c),b&&b.m(e,null),u=!0},p(y,[k]){const A={};k&6&&(A.editable=!y[1].readonly||y[2]),!r&&k&1&&(r=!0,A.value=y[0],add_flush_callback(()=>r=!1)),n.$set(A),y[3]?b?b.p(y,k):(b=create_if_block$c(y),b.c(),b.m(e,null)):b&&(b.d(1),b=null)},i(y){u||(transition_in(n.$$.fragment,y),u=!0)},o(y){transition_out(n.$$.fragment,y),u=!1},d(y){y&&detach(e),destroy_component(n),b&&b.d()}}}function instance$h(o,e,n){let r,{value:c}=e,{field:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e;function b(y){c=y,n(0,c)}return o.$$set=y=>{"value"in y&&n(0,c=y.value),"field"in y&&n(1,u=y.field),"isCreateMode"in y&&n(2,h=y.isCreateMode),"validationErrors"in y&&n(4,p=y.validationErrors)},o.$$.update=()=>{o.$$.dirty&18&&n(3,r=getErrorMessage(p,u.name))},[c,u,h,r,p,b]}let JSON$1=class extends SvelteComponent{constructor(e){super(),init(this,e,instance$h,create_fragment$h,safe_not_equal,{value:0,field:1,isCreateMode:2,validationErrors:4})}};class CompositeBlock{static create(e,n,r,c,u){let h=c+(c<<8)+e+(n<<4)|0;return new CompositeBlock(e,n,r,h,u,[],[])}constructor(e,n,r,c,u,h,p){this.type=e,this.value=n,this.from=r,this.hash=c,this.end=u,this.children=h,this.positions=p,this.hashProp=[[NodeProp.contextHash,c]]}addChild(e,n){e.prop(NodeProp.contextHash)!=this.hash&&(e=new Tree(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(n)}toTree(e,n=this.end){let r=this.children.length-1;return r>=0&&(n=Math.max(n,this.positions[r]+this.children[r].length+this.from)),new Tree(e.types[this.type],this.children,this.positions,n-this.from).balance({makeTree:(c,u,h)=>new Tree(NodeType.none,c,u,h,this.hashProp)})}}var Type;(function(o){o[o.Document=1]="Document",o[o.CodeBlock=2]="CodeBlock",o[o.FencedCode=3]="FencedCode",o[o.Blockquote=4]="Blockquote",o[o.HorizontalRule=5]="HorizontalRule",o[o.BulletList=6]="BulletList",o[o.OrderedList=7]="OrderedList",o[o.ListItem=8]="ListItem",o[o.ATXHeading1=9]="ATXHeading1",o[o.ATXHeading2=10]="ATXHeading2",o[o.ATXHeading3=11]="ATXHeading3",o[o.ATXHeading4=12]="ATXHeading4",o[o.ATXHeading5=13]="ATXHeading5",o[o.ATXHeading6=14]="ATXHeading6",o[o.SetextHeading1=15]="SetextHeading1",o[o.SetextHeading2=16]="SetextHeading2",o[o.HTMLBlock=17]="HTMLBlock",o[o.LinkReference=18]="LinkReference",o[o.Paragraph=19]="Paragraph",o[o.CommentBlock=20]="CommentBlock",o[o.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",o[o.Escape=22]="Escape",o[o.Entity=23]="Entity",o[o.HardBreak=24]="HardBreak",o[o.Emphasis=25]="Emphasis",o[o.StrongEmphasis=26]="StrongEmphasis",o[o.Link=27]="Link",o[o.Image=28]="Image",o[o.InlineCode=29]="InlineCode",o[o.HTMLTag=30]="HTMLTag",o[o.Comment=31]="Comment",o[o.ProcessingInstruction=32]="ProcessingInstruction",o[o.Autolink=33]="Autolink",o[o.HeaderMark=34]="HeaderMark",o[o.QuoteMark=35]="QuoteMark",o[o.ListMark=36]="ListMark",o[o.LinkMark=37]="LinkMark",o[o.EmphasisMark=38]="EmphasisMark",o[o.CodeMark=39]="CodeMark",o[o.CodeText=40]="CodeText",o[o.CodeInfo=41]="CodeInfo",o[o.LinkTitle=42]="LinkTitle",o[o.LinkLabel=43]="LinkLabel",o[o.URL=44]="URL"})(Type||(Type={}));class LeafBlock{constructor(e,n){this.start=e,this.content=n,this.marks=[],this.parsers=[]}}class Line{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return skipSpace(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,n=0,r=0){for(let c=n;c=e.stack[n.depth+1].value+n.baseIndent)return!0;if(n.indent>=n.baseIndent+4)return!1;let r=(o.type==Type.OrderedList?isOrderedList:isBulletList)(n,e,!1);return r>0&&(o.type!=Type.BulletList||isHorizontalRule(n,e,!1)<0)&&n.text.charCodeAt(n.pos+r-1)==o.value}const DefaultSkipMarkup={[Type.Blockquote](o,e,n){return n.next!=62?!1:(n.markers.push(elt(Type.QuoteMark,e.lineStart+n.pos,e.lineStart+n.pos+1)),n.moveBase(n.pos+(space$2(n.text.charCodeAt(n.pos+1))?2:1)),o.end=e.lineStart+n.text.length,!0)},[Type.ListItem](o,e,n){return n.indent-1?!1:(n.moveBaseColumn(n.baseIndent+o.value),!0)},[Type.OrderedList]:skipForList,[Type.BulletList]:skipForList,[Type.Document](){return!0}};function space$2(o){return o==32||o==9||o==10||o==13}function skipSpace(o,e=0){for(;en&&space$2(o.charCodeAt(e-1));)e--;return e}function isFencedCode(o){if(o.next!=96&&o.next!=126)return-1;let e=o.pos+1;for(;e-1&&o.depth==e.stack.length||r<3?-1:1}function inList(o,e){for(let n=o.stack.length-1;n>=0;n--)if(o.stack[n].type==e)return!0;return!1}function isBulletList(o,e,n){return(o.next==45||o.next==43||o.next==42)&&(o.pos==o.text.length-1||space$2(o.text.charCodeAt(o.pos+1)))&&(!n||inList(e,Type.BulletList)||o.skipSpace(o.pos+2)=48&&c<=57;){r++;if(r==o.text.length)return-1;c=o.text.charCodeAt(r)}return r==o.pos||r>o.pos+9||c!=46&&c!=41||ro.pos+1||o.next!=49)?-1:r+1-o.pos}function isAtxHeading(o){if(o.next!=35)return-1;let e=o.pos+1;for(;e6?-1:n}function isSetextUnderline(o){if(o.next!=45&&o.next!=61||o.indent>=o.baseIndent+4)return-1;let e=o.pos+1;for(;e/,ProcessingEnd=/\?>/,HTMLBlockStyle=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec(r);if(u)return o.append(elt(Type.Comment,n,n+1+u[0].length));let h=/^\?[^]*?\?>/.exec(r);if(h)return o.append(elt(Type.ProcessingInstruction,n,n+1+h[0].length));let p=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(r);return p?o.append(elt(Type.HTMLTag,n,n+1+p[0].length)):-1},Emphasis(o,e,n){if(e!=95&&e!=42)return-1;let r=n+1;for(;o.char(r)==e;)r++;let c=o.slice(n-1,n),u=o.slice(r,r+1),h=Punctuation.test(c),p=Punctuation.test(u),b=/\s|^$/.test(c),y=/\s|^$/.test(u),k=!y&&(!p||b||h),A=!b&&(!h||y||p),R=k&&(e==42||!A||h),N=A&&(e==42||!k||p);return o.append(new InlineDelimiter(e==95?EmphasisUnderscore:EmphasisAsterisk,n,r,(R?1:0)|(N?2:0)))},HardBreak(o,e,n){if(e==92&&o.char(n+1)==10)return o.append(elt(Type.HardBreak,n,n+2));if(e==32){let r=n+1;for(;o.char(r)==32;)r++;if(o.char(r)==10&&r>=n+2)return o.append(elt(Type.HardBreak,n,r+1))}return-1},Link(o,e,n){return e==91?o.append(new InlineDelimiter(LinkStart,n,n+1,1)):-1},Image(o,e,n){return e==33&&o.char(n+1)==91?o.append(new InlineDelimiter(ImageStart,n,n+2,1)):-1},LinkEnd(o,e,n){if(e!=93)return-1;for(let r=o.parts.length-1;r>=0;r--){let c=o.parts[r];if(c instanceof InlineDelimiter&&(c.type==LinkStart||c.type==ImageStart)){if(!c.side||o.skipSpace(c.to)==n&&!/[(\[]/.test(o.slice(n+1,n+2)))return o.parts[r]=null,-1;let u=o.takeContent(r),h=o.parts[r]=finishLink(o,u,c.type==LinkStart?Type.Link:Type.Image,c.from,n+1);if(c.type==LinkStart)for(let p=0;pe?elt(Type.URL,e+n,u+n):u==o.length?null:!1}}function parseLinkTitle(o,e,n){let r=o.charCodeAt(e);if(r!=39&&r!=34&&r!=40)return!1;let c=r==40?41:r;for(let u=e+1,h=!1;u=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,n){return this.text.slice(e-this.offset,n-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,n,r,c,u){return this.append(new InlineDelimiter(e,n,r,(c?1:0)|(u?2:0)))}get hasOpenLink(){for(let e=this.parts.length-1;e>=0;e--){let n=this.parts[e];if(n instanceof InlineDelimiter&&(n.type==LinkStart||n.type==ImageStart))return!0}return!1}addElement(e){return this.append(e)}resolveMarkers(e){for(let r=e;r=e;b--){let V=this.parts[b];if(V instanceof InlineDelimiter&&V.side&1&&V.type==c.type&&!(u&&(c.side&1||V.side&2)&&(V.to-V.from+h)%3==0&&((V.to-V.from)%3||h%3))){p=V;break}}if(!p)continue;let y=c.type.resolve,k=[],A=p.from,R=c.to;if(u){let V=Math.min(2,p.to-p.from,h);A=p.to-V,R=c.from+V,y=V==1?"Emphasis":"StrongEmphasis"}p.type.mark&&k.push(this.elt(p.type.mark,A,p.to));for(let V=b+1;V=0;n--){let r=this.parts[n];if(r instanceof InlineDelimiter&&r.type==e)return n}return null}takeContent(e){let n=this.resolveMarkers(e);return this.parts.length=e,n}skipSpace(e){return skipSpace(this.text,e-this.offset)+this.offset}elt(e,n,r,c){return typeof e=="string"?elt(this.parser.getNodeType(e),n,r,c):new TreeElement(e,n)}}function injectMarks(o,e){if(!e.length)return o;if(!o.length)return e;let n=o.slice(),r=0;for(let c of e){for(;r(e?e-1:0))return!1;if(this.fragmentEnd<0){let u=this.fragment.to;for(;u>0&&this.input.read(u-1,u)!=` -`;)u--;this.fragmentEnd=u?u-1:0}let r=this.cursor;r||(r=this.cursor=this.fragment.tree.cursor(),r.firstChild());let c=e+this.fragment.offset;for(;r.to<=c;)if(!r.parent())return!1;for(;;){if(r.from>=c)return this.fragment.from<=n;if(!r.childAfter(c))return!1}}matches(e){let n=this.cursor.tree;return n&&n.prop(NodeProp.contextHash)==e}takeNodes(e){let n=this.cursor,r=this.fragment.offset,c=this.fragmentEnd-(this.fragment.openEnd?1:0),u=e.absoluteLineStart,h=u,p=e.block.children.length,b=h,y=p;for(;;){if(n.to-r>c){if(n.type.isAnonymous&&n.firstChild())continue;break}let k=toRelative(n.from-r,e.ranges);if(n.to-r<=e.ranges[e.rangeI].to)e.addNode(n.tree,k);else{let A=new Tree(e.parser.nodeSet.types[Type.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(A,n.tree),e.addNode(A,k)}if(n.type.is("Block")&&(NotLast.indexOf(n.type.id)<0?(h=n.to-r,p=e.block.children.length):(h=b,p=y,b=n.to-r,y=e.block.children.length)),!n.nextSibling())break}for(;e.block.children.length>p;)e.block.children.pop(),e.block.positions.pop();return h-u}}function toRelative(o,e){let n=o;for(let r=1;rDefaultBlockParsers[o]),Object.keys(DefaultBlockParsers).map(o=>DefaultLeafBlocks[o]),Object.keys(DefaultBlockParsers),DefaultEndLeaf,DefaultSkipMarkup,Object.keys(DefaultInline).map(o=>DefaultInline[o]),Object.keys(DefaultInline),[]);function leftOverSpace(o,e,n){let r=[];for(let c=o.firstChild,u=e;;c=c.nextSibling){let h=c?c.from:n;if(h>u&&r.push({from:u,to:h}),!c)break;u=c.to}return r}function parseCode(o){let{codeParser:e,htmlParser:n}=o;return{wrap:parseMixed((c,u)=>{let h=c.type.id;if(e&&(h==Type.CodeBlock||h==Type.FencedCode)){let p="";if(h==Type.FencedCode){let y=c.node.getChild(Type.CodeInfo);y&&(p=u.read(y.from,y.to))}let b=e(p);if(b)return{parser:b,overlay:y=>y.type.id==Type.CodeText}}else if(n&&(h==Type.HTMLBlock||h==Type.HTMLTag))return{parser:n,overlay:leftOverSpace(c.node,c.from,c.to)};return null})}}const StrikethroughDelim={resolve:"Strikethrough",mark:"StrikethroughMark"},Strikethrough={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":tags$1.strikethrough}},{name:"StrikethroughMark",style:tags$1.processingInstruction}],parseInline:[{name:"Strikethrough",parse(o,e,n){if(e!=126||o.char(n+1)!=126||o.char(n+2)==126)return-1;let r=o.slice(n-1,n),c=o.slice(n+2,n+3),u=/\s|^$/.test(r),h=/\s|^$/.test(c),p=Punctuation.test(r),b=Punctuation.test(c);return o.addDelimiter(StrikethroughDelim,n,n+2,!h&&(!b||u||p),!u&&(!p||h||b))},after:"Emphasis"}]};function parseRow(o,e,n=0,r,c=0){let u=0,h=!0,p=-1,b=-1,y=!1,k=()=>{r.push(o.elt("TableCell",c+p,c+b,o.parser.parseInline(e.slice(p,b),c+p)))};for(let A=n;A-1)&&u++,h=!1,r&&(p>-1&&k(),r.push(o.elt("TableDelimiter",A+c,A+c+1))),p=b=-1):(y||R!=32&&R!=9)&&(p<0&&(p=A),b=A+1),y=!y&&R==92}return p>-1&&(u++,r&&k()),u}function hasPipe(o,e){for(let n=e;nc instanceof TableParser)||!hasPipe(e.text,e.basePos))return!1;let r=o.scanLine(o.absoluteLineEnd+1).text;return delimiterLine.test(r)&&parseRow(o,e.text,e.basePos)==parseRow(o,r,e.basePos)},before:"SetextHeading"}]};class TaskParser{nextLine(){return!1}finish(e,n){return e.addLeafElement(n,e.elt("Task",n.start,n.start+n.content.length,[e.elt("TaskMarker",n.start,n.start+3),...e.parser.parseInline(n.content.slice(3),n.start+3)])),!0}}const TaskList={defineNodes:[{name:"Task",block:!0,style:tags$1.list},{name:"TaskMarker",style:tags$1.atom}],parseBlock:[{name:"TaskList",leaf(o,e){return/^\[[ xX]\][ \t]/.test(e.content)&&o.parentType().name=="ListItem"?new TaskParser:null},after:"SetextHeading"}]},autolinkRE=/(www\.)|(https?:\/\/)|([\w.+-]+@)|(mailto:|xmpp:)/gy,urlRE=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,lastTwoDomainWords=/[\w-]+\.[\w-]+($|\/)/,emailRE=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,xmppResourceRE=/\/[a-zA-Z\d@.]+/gy;function count(o,e,n,r){let c=0;for(let u=e;u-1)return-1;let r=e+n[0].length;for(;;){let c=o[r-1],u;if(/[?!.,:*_~]/.test(c)||c==")"&&count(o,e,r,")")>count(o,e,r,"("))r--;else if(c==";"&&(u=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(o.slice(e,r))))r=e+u.index;else break}return r}function autolinkEmailEnd(o,e){emailRE.lastIndex=e;let n=emailRE.exec(o);if(!n)return-1;let r=n[0][n[0].length-1];return r=="_"||r=="-"?-1:e+n[0].length-(r=="."?1:0)}const Autolink={parseInline:[{name:"Autolink",parse(o,e,n){let r=n-o.offset;autolinkRE.lastIndex=r;let c=autolinkRE.exec(o.text),u=-1;if(!c)return-1;if(c[1]||c[2]){if(u=autolinkURLEnd(o.text,r+c[0].length),u>-1&&o.hasOpenLink){let h=/([^\[\]]|\[[^\]]*\])*/.exec(o.text.slice(r,u));u=r+h[0].length}}else c[3]?u=autolinkEmailEnd(o.text,r):(u=autolinkEmailEnd(o.text,r+c[0].length),u>-1&&c[0]=="xmpp:"&&(xmppResourceRE.lastIndex=u,c=xmppResourceRE.exec(o.text),c&&(u=c.index+c[0].length)));return u<0?-1:(o.addElement(o.elt("URL",n,u+o.offset)),u+o.offset)}}]},GFM=[Table,TaskList,Strikethrough,Autolink];function parseSubSuper(o,e,n){return(r,c,u)=>{if(c!=o||r.char(u+1)==o)return-1;let h=[r.elt(n,u,u+1)];for(let p=u+1;p=65&&o<=90||o==95||o>=97&&o<=122||o>=161}function isSpace(o){return o==9||o==10||o==13||o==32}let cachedName=null,cachedInput=null,cachedPos=0;function tagNameAfter(o,e){let n=o.pos+e;if(cachedPos==n&&cachedInput==o)return cachedName;let r=o.peek(e);for(;isSpace(r);)r=o.peek(++e);let c="";for(;nameChar(r);)c+=String.fromCharCode(r),r=o.peek(++e);return cachedInput=o,cachedPos=n,cachedName=c?c.toLowerCase():r==question$1||r==bang?void 0:null}const lessThan=60,greaterThan=62,slash$1=47,question$1=63,bang=33,dash$1=45;function ElementContext(o,e){this.name=o,this.parent=e}const startTagTerms=[StartTag,StartSelfClosingTag,StartScriptTag,StartStyleTag,StartTextareaTag],elementContext=new ContextTracker({start:null,shift(o,e,n,r){return startTagTerms.indexOf(e)>-1?new ElementContext(tagNameAfter(r,1)||"",o):o},reduce(o,e){return e==Element$1&&o?o.parent:o},reuse(o,e,n,r){let c=e.type.id;return c==StartTag||c==OpenTag?new ElementContext(tagNameAfter(r,1)||"",o):o},strict:!1}),tagStart=new ExternalTokenizer((o,e)=>{if(o.next!=lessThan){o.next<0&&e.context&&o.acceptToken(missingCloseTag);return}o.advance();let n=o.next==slash$1;n&&o.advance();let r=tagNameAfter(o,0);if(r===void 0)return;if(!r)return o.acceptToken(n?IncompleteCloseTag:StartTag);let c=e.context?e.context.name:null;if(n){if(r==c)return o.acceptToken(StartCloseTag);if(c&&implicitlyClosed[c])return o.acceptToken(missingCloseTag,-2);if(e.dialectEnabled(Dialect_noMatch))return o.acceptToken(NoMatchStartCloseTag);for(let u=e.context;u;u=u.parent)if(u.name==r)return;o.acceptToken(MismatchedStartCloseTag)}else{if(r=="script")return o.acceptToken(StartScriptTag);if(r=="style")return o.acceptToken(StartStyleTag);if(r=="textarea")return o.acceptToken(StartTextareaTag);if(selfClosers$1.hasOwnProperty(r))return o.acceptToken(StartSelfClosingTag);c&&closeOnOpen[c]&&closeOnOpen[c][r]?o.acceptToken(missingCloseTag,-1):o.acceptToken(StartTag)}},{contextual:!0}),commentContent=new ExternalTokenizer(o=>{for(let e=0,n=0;;n++){if(o.next<0){n&&o.acceptToken(commentContent$1);break}if(o.next==dash$1)e++;else if(o.next==greaterThan&&e>=2){n>=3&&o.acceptToken(commentContent$1,-2);break}else e=0;o.advance()}});function inForeignElement(o){for(;o;o=o.parent)if(o.name=="svg"||o.name=="math")return!0;return!1}const endTag=new ExternalTokenizer((o,e)=>{if(o.next==slash$1&&o.peek(1)==greaterThan){let n=e.dialectEnabled(Dialect_selfClosing)||inForeignElement(e.context);o.acceptToken(n?SelfClosingEndTag:EndTag,2)}else o.next==greaterThan&&o.acceptToken(EndTag,1)});function contentTokenizer(o,e,n){let r=2+o.length;return new ExternalTokenizer(c=>{for(let u=0,h=0,p=0;;p++){if(c.next<0){p&&c.acceptToken(e);break}if(u==0&&c.next==lessThan||u==1&&c.next==slash$1||u>=2&&uh?c.acceptToken(e,-h):c.acceptToken(n,-(h-2));break}else if((c.next==10||c.next==13)&&p){c.acceptToken(e,1);break}else u=h=0;c.advance()}})}const scriptTokens=contentTokenizer("script",scriptText,StartCloseScriptTag),styleTokens=contentTokenizer("style",styleText,StartCloseStyleTag),textareaTokens=contentTokenizer("textarea",textareaText,StartCloseTextareaTag),htmlHighlighting=styleTags({"Text RawText":tags$1.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":tags$1.angleBracket,TagName:tags$1.tagName,"MismatchedCloseTag/TagName":[tags$1.tagName,tags$1.invalid],AttributeName:tags$1.attributeName,"AttributeValue UnquotedAttributeValue":tags$1.attributeValue,Is:tags$1.definitionOperator,"EntityReference CharacterReference":tags$1.character,Comment:tags$1.blockComment,ProcessingInst:tags$1.processingInstruction,DoctypeDecl:tags$1.documentMeta}),parser$2=LRParser.deserialize({version:14,states:",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%ZQ&rO,59fO%fQ&rO,59iO%qQ&rO,59lO%|Q&rO,59nOOOa'#D^'#D^O&XOaO'#CxO&dOaO,59[OOOb'#D_'#D_O&lObO'#C{O&wObO,59[OOOd'#D`'#D`O'POdO'#DOO'[OdO,59[OOO`'#Da'#DaO'dO!rO,59[O'kQ#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'pO$fO,59oOOO`,59o,59oO'xQ#|O,59qO'}Q#|O,59rOOO`-E7W-E7WO(SQ&rO'#CsOOQW'#DZ'#DZO(bQ&rO1G.wOOOa1G.w1G.wOOO`1G/Y1G/YO(mQ&rO1G/QOOOb1G/Q1G/QO(xQ&rO1G/TOOOd1G/T1G/TO)TQ&rO1G/WOOO`1G/W1G/WO)`Q&rO1G/YOOOa-E7[-E7[O)kQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)pQ#tO'#C|OOOd-E7^-E7^O)uQ#tO'#DPOOO`-E7_-E7_O)zQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O*PQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOO`7+$t7+$tOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rO*[Q#|O,59eO*aQ#|O,59hO*fQ#|O,59kOOO`1G/X1G/XO*kO7[O'#CvO*|OMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O+_O7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+pOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z",stateData:",]~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OT}OhyO~OS!POT}OhyO~OS!ROT}OhyO~OS!TOT}OhyO~OS}OT}OhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXTgXhgX~OS!fOT!gOhyO~OS!hOT!gOhyO~OS!iOT!gOhyO~OS!jOT!gOhyO~OS!gOT!gOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~",goto:"%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:67,context:elementContext,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,21,30,33,36,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,29,32,35,37,"OpenTag"],["group",-9,14,17,18,19,20,39,40,41,42,"Entity",16,"Entity TextContent",-3,28,31,34,"TextContent Entity"],["isolate",-11,21,29,30,32,33,35,36,37,38,41,42,"ltr",-3,26,27,39,""]],propSources:[htmlHighlighting],skippedNodes:[0],repeatNodeCount:9,tokenData:"!]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbhSkWa!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VP<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TakWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbhSkWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_khS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO{PP!-nP;=`<%l!-Sq!-xS!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!{let y=p.type.id;if(y==ScriptText)return maybeNest(p,b,n);if(y==StyleText)return maybeNest(p,b,r);if(y==TextareaText)return maybeNest(p,b,c);if(y==Element$1&&u.length){let k=p.node,A=k.firstChild,R=A&&findTagName(A,b),N;if(R){for(let F of u)if(F.tag==R&&(!F.attrs||F.attrs(N||(N=getAttrs(A,b))))){let V=k.lastChild,W=V.type.id==CloseTag?V.from:k.to;if(W>A.to)return{parser:F.parser,overlay:[{from:A.to,to:W}]}}}}if(h&&y==Attribute){let k=p.node,A;if(A=k.firstChild){let R=h[b.read(A.from,A.to)];if(R)for(let N of R){if(N.tagName&&N.tagName!=findTagName(k.parent,b))continue;let F=k.lastChild;if(F.type.id==AttributeValue){let V=F.from+1,W=F.lastChild,J=F.to-(W&&W.isError?0:1);if(J>V)return{parser:N.parser,overlay:[{from:V,to:J}]}}else if(F.type.id==UnquotedAttributeValue)return{parser:N.parser,overlay:[{from:F.from,to:F.to}]}}}}return null})}const descendantOp=99,Unit=1,callee=100,identifier$2=101,VariableName=2,space$1=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],colon=58,parenL=40,underscore=95,bracketL=91,dash=45,period=46,hash=35,percent=37,ampersand=38,backslash=92,newline$1=10;function isAlpha(o){return o>=65&&o<=90||o>=97&&o<=122||o>=161}function isDigit(o){return o>=48&&o<=57}const identifiers=new ExternalTokenizer((o,e)=>{for(let n=!1,r=0,c=0;;c++){let{next:u}=o;if(isAlpha(u)||u==dash||u==underscore||n&&isDigit(u))!n&&(u!=dash||c>0)&&(n=!0),r===c&&u==dash&&r++,o.advance();else if(u==backslash&&o.peek(1)!=newline$1)o.advance(),o.next>-1&&o.advance(),n=!0;else{n&&o.acceptToken(u==parenL?callee:r==2&&e.canShift(VariableName)?VariableName:identifier$2);break}}}),descendant=new ExternalTokenizer(o=>{if(space$1.includes(o.peek(-1))){let{next:e}=o;(isAlpha(e)||e==underscore||e==hash||e==period||e==bracketL||e==colon&&isAlpha(o.peek(1))||e==dash||e==ampersand)&&o.acceptToken(descendantOp)}}),unitToken=new ExternalTokenizer(o=>{if(!space$1.includes(o.peek(-1))){let{next:e}=o;if(e==percent&&(o.advance(),o.acceptToken(Unit)),isAlpha(e)){do o.advance();while(isAlpha(o.next)||isDigit(o.next));o.acceptToken(Unit)}}}),cssHighlighting=styleTags({"AtKeyword import charset namespace keyframes media supports":tags$1.definitionKeyword,"from to selector":tags$1.keyword,NamespaceName:tags$1.namespace,KeyframeName:tags$1.labelName,KeyframeRangeName:tags$1.operatorKeyword,TagName:tags$1.tagName,ClassName:tags$1.className,PseudoClassName:tags$1.constant(tags$1.className),IdName:tags$1.labelName,"FeatureName PropertyName":tags$1.propertyName,AttributeName:tags$1.attributeName,NumberLiteral:tags$1.number,KeywordQuery:tags$1.keyword,UnaryQueryOp:tags$1.operatorKeyword,"CallTag ValueName":tags$1.atom,VariableName:tags$1.variableName,Callee:tags$1.operatorKeyword,Unit:tags$1.unit,"UniversalSelector NestingSelector":tags$1.definitionOperator,MatchOp:tags$1.compareOperator,"ChildOp SiblingOp, LogicOp":tags$1.logicOperator,BinOp:tags$1.arithmeticOperator,Important:tags$1.modifier,Comment:tags$1.blockComment,ColorLiteral:tags$1.color,"ParenthesizedContent StringLiteral":tags$1.string,":":tags$1.punctuation,"PseudoOp #":tags$1.derefOperator,"; ,":tags$1.separator,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace}),spec_callee={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,"nth-last-of-type":32,dir:32,"host-context":32,url:60,"url-prefix":60,domain:60,regexp:60,selector:138},spec_AtKeyword={__proto__:null,"@import":118,"@media":142,"@charset":146,"@namespace":150,"@keyframes":156,"@supports":168},spec_identifier$1={__proto__:null,not:132,only:132},parser$1=LRParser.deserialize({version:14,states:":^QYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DTO$vQ[O'#DWOOQP'#Em'#EmO${QdO'#DgO%jQ[O'#DtO${QdO'#DvO%{Q[O'#DxO&WQ[O'#D{O&`Q[O'#ERO&nQ[O'#ETOOQS'#El'#ElOOQS'#EW'#EWQYQ[OOO&uQXO'#CdO'jQWO'#DcO'oQWO'#EsO'zQ[O'#EsQOQWOOP(UO#tO'#C_POOO)C@[)C@[OOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(aQ[O'#E[O({QWO,58{O)TQ[O,59SO$qQ[O,59oO$vQ[O,59rO(aQ[O,59uO(aQ[O,59wO(aQ[O,59xO)`Q[O'#DbOOQS,58{,58{OOQP'#Ck'#CkOOQO'#DR'#DROOQP,59S,59SO)gQWO,59SO)lQWO,59SOOQP'#DV'#DVOOQP,59o,59oOOQO'#DX'#DXO)qQ`O,59rOOQS'#Cp'#CpO${QdO'#CqO)yQvO'#CsO+ZQtO,5:ROOQO'#Cx'#CxO)lQWO'#CwO+oQWO'#CyO+tQ[O'#DOOOQS'#Ep'#EpOOQO'#Dj'#DjO+|Q[O'#DqO,[QWO'#EtO&`Q[O'#DoO,jQWO'#DrOOQO'#Eu'#EuO)OQWO,5:`O,oQpO,5:bOOQS'#Dz'#DzO,wQWO,5:dO,|Q[O,5:dOOQO'#D}'#D}O-UQWO,5:gO-ZQWO,5:mO-cQWO,5:oOOQS-E8U-E8UO${QdO,59}O-kQ[O'#E^O-xQWO,5;_O-xQWO,5;_POOO'#EV'#EVP.TO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.zQXO,5:vOOQO-E8Y-E8YOOQS1G.g1G.gOOQP1G.n1G.nO)gQWO1G.nO)lQWO1G.nOOQP1G/Z1G/ZO/XQ`O1G/^O/rQXO1G/aO0YQXO1G/cO0pQXO1G/dO1WQWO,59|O1]Q[O'#DSO1dQdO'#CoOOQP1G/^1G/^O${QdO1G/^O1kQpO,59]OOQS,59_,59_O${QdO,59aO1sQWO1G/mOOQS,59c,59cO1xQ!bO,59eOOQS'#DP'#DPOOQS'#EY'#EYO2QQ[O,59jOOQS,59j,59jO2YQWO'#DjO2eQWO,5:VO2jQWO,5:]O&`Q[O,5:XO&`Q[O'#E_O2rQWO,5;`O2}QWO,5:ZO(aQ[O,5:^OOQS1G/z1G/zOOQS1G/|1G/|OOQS1G0O1G0OO3`QWO1G0OO3eQdO'#EOOOQS1G0R1G0ROOQS1G0X1G0XOOQS1G0Z1G0ZO3pQtO1G/iOOQO,5:x,5:xO4WQ[O,5:xOOQO-E8[-E8[O4eQWO1G0yPOOO-E8T-E8TPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$x7+$xO${QdO7+$xOOQS1G/h1G/hO4pQXO'#ErO4wQWO,59nO4|QtO'#EXO5tQdO'#EoO6OQWO,59ZO6TQpO7+$xOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%X7+%XO6]QWO1G/POOQS-E8W-E8WOOQS1G/U1G/UO${QdO1G/qOOQO1G/w1G/wOOQO1G/s1G/sO6bQWO,5:yOOQO-E8]-E8]O6pQXO1G/xOOQS7+%j7+%jO6wQYO'#CsOOQO'#EQ'#EQO7SQ`O'#EPOOQO'#EP'#EPO7_QWO'#E`O7gQdO,5:jOOQS,5:j,5:jO7rQtO'#E]O${QdO'#E]O8sQdO7+%TOOQO7+%T7+%TOOQO1G0d1G0dO9WQpO<OAN>OO:xQdO,5:uOOQO-E8X-E8XOOQO<T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#e[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l[[o`#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSt^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#bQOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#[~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!Y^Oy%^z;'S%^;'S;=`%o<%lO%^dCoS|SOy%^z;'S%^;'S;=`%o<%lO%^bDQU!OQOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS!OQo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[![Qo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^nFfSq^Oy%^z;'S%^;'S;=`%o<%lO%^nFwSp^Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!bQo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!TUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!S^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!RQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",tokenizers:[descendant,unitToken,identifiers,1,2,3,4,new LocalTokenGroup("m~RRYZ[z{a~~g~aO#^~~dP!P!Qg~lO#_~~",28,105)],topRules:{StyleSheet:[0,4],Styles:[1,86]},specialized:[{term:100,get:o=>spec_callee[o]||-1},{term:58,get:o=>spec_AtKeyword[o]||-1},{term:101,get:o=>spec_identifier$1[o]||-1}],tokenPrec:1200});let _properties=null;function properties(){if(!_properties&&typeof document=="object"&&document.body){let{style:o}=document.body,e=[],n=new Set;for(let r in o)r!="cssText"&&r!="cssFloat"&&typeof o[r]=="string"&&(/[A-Z]/.test(r)&&(r=r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase())),n.has(r)||(e.push(r),n.add(r)));_properties=e.sort().map(r=>({type:"property",label:r}))}return _properties||[]}const pseudoClasses=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(o=>({type:"class",label:o})),values=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(o=>({type:"keyword",label:o})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(o=>({type:"constant",label:o}))),tags=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(o=>({type:"type",label:o})),identifier$1=/^(\w[\w-]*|-\w[\w-]*|)$/,variable=/^-(-[\w-]*)?$/;function isVarArg(o,e){var n;if((o.name=="("||o.type.isError)&&(o=o.parent||o),o.name!="ArgList")return!1;let r=(n=o.parent)===null||n===void 0?void 0:n.firstChild;return(r==null?void 0:r.name)!="Callee"?!1:e.sliceString(r.from,r.to)=="var"}const VariablesByNode=new NodeWeakMap,declSelector=["Declaration"];function astTop(o){for(let e=o;;){if(e.type.isTop)return e;if(!(e=e.parent))return o}}function variableNames(o,e,n){if(e.to-e.from>4096){let r=VariablesByNode.get(e);if(r)return r;let c=[],u=new Set,h=e.cursor(IterMode.IncludeAnonymous);if(h.firstChild())do for(let p of variableNames(o,h.node,n))u.has(p.label)||(u.add(p.label),c.push(p));while(h.nextSibling());return VariablesByNode.set(e,c),c}else{let r=[],c=new Set;return e.cursor().iterate(u=>{var h;if(n(u)&&u.matchContext(declSelector)&&((h=u.node.nextSibling)===null||h===void 0?void 0:h.name)==":"){let p=o.sliceString(u.from,u.to);c.has(p)||(c.add(p),r.push({label:p,type:"variable"}))}}),r}}const defineCSSCompletionSource=o=>e=>{let{state:n,pos:r}=e,c=syntaxTree(n).resolveInner(r,-1),u=c.type.isError&&c.from==c.to-1&&n.doc.sliceString(c.from,c.to)=="-";if(c.name=="PropertyName"||(u||c.name=="TagName")&&/^(Block|Styles)$/.test(c.resolve(c.to).name))return{from:c.from,options:properties(),validFor:identifier$1};if(c.name=="ValueName")return{from:c.from,options:values,validFor:identifier$1};if(c.name=="PseudoClassName")return{from:c.from,options:pseudoClasses,validFor:identifier$1};if(o(c)||(e.explicit||u)&&isVarArg(c,n.doc))return{from:o(c)||u?c.from:r,options:variableNames(n.doc,astTop(c),o),validFor:variable};if(c.name=="TagName"){for(let{parent:b}=c;b;b=b.parent)if(b.name=="Block")return{from:c.from,options:properties(),validFor:identifier$1};return{from:c.from,options:tags,validFor:identifier$1}}if(!e.explicit)return null;let h=c.resolve(r),p=h.childBefore(r);return p&&p.name==":"&&h.name=="PseudoClassSelector"?{from:r,options:pseudoClasses,validFor:identifier$1}:p&&p.name==":"&&h.name=="Declaration"||h.name=="ArgList"?{from:r,options:values,validFor:identifier$1}:h.name=="Block"||h.name=="Styles"?{from:r,options:properties(),validFor:identifier$1}:null},cssCompletionSource=defineCSSCompletionSource(o=>o.name=="VariableName"),cssLanguage=LRLanguage.define({name:"css",parser:parser$1.configure({props:[indentNodeProp.add({Declaration:continuedIndent()}),foldNodeProp.add({"Block KeyframeList":foldInside})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function css(){return new LanguageSupport(cssLanguage,cssLanguage.data.of({autocomplete:cssCompletionSource}))}const noSemi=312,incdec=1,incdecPrefix=2,questionDot=3,JSXStartTag=4,insertSemi=313,spaces=315,newline=316,LineComment=5,BlockComment=6,Dialect_jsx=0,space=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],braceR=125,semicolon=59,slash=47,star=42,plus=43,minus=45,lt=60,comma=44,question=63,dot=46,trackNewline=new ContextTracker({start:!1,shift(o,e){return e==LineComment||e==BlockComment||e==spaces?o:e==newline},strict:!1}),insertSemicolon=new ExternalTokenizer((o,e)=>{let{next:n}=o;(n==braceR||n==-1||e.context)&&o.acceptToken(insertSemi)},{contextual:!0,fallback:!0}),noSemicolon=new ExternalTokenizer((o,e)=>{let{next:n}=o,r;space.indexOf(n)>-1||n==slash&&((r=o.peek(1))==slash||r==star)||n!=braceR&&n!=semicolon&&n!=-1&&!e.context&&o.acceptToken(noSemi)},{contextual:!0}),operatorToken=new ExternalTokenizer((o,e)=>{let{next:n}=o;if(n==plus||n==minus){if(o.advance(),n==o.next){o.advance();let r=!e.context&&e.canShift(incdec);o.acceptToken(r?incdec:incdecPrefix)}}else n==question&&o.peek(1)==dot&&(o.advance(),o.advance(),(o.next<48||o.next>57)&&o.acceptToken(questionDot))},{contextual:!0});function identifierChar(o,e){return o>=65&&o<=90||o>=97&&o<=122||o==95||o>=192||!e&&o>=48&&o<=57}const jsx=new ExternalTokenizer((o,e)=>{if(o.next!=lt||!e.dialectEnabled(Dialect_jsx)||(o.advance(),o.next==slash))return;let n=0;for(;space.indexOf(o.next)>-1;)o.advance(),n++;if(identifierChar(o.next,!0)){for(o.advance(),n++;identifierChar(o.next,!1);)o.advance(),n++;for(;space.indexOf(o.next)>-1;)o.advance(),n++;if(o.next==comma)return;for(let r=0;;r++){if(r==7){if(!identifierChar(o.next,!0))return;break}if(o.next!="extends".charCodeAt(r))break;o.advance(),n++}}o.acceptToken(JSXStartTag,-n)}),jsHighlight=styleTags({"get set async static":tags$1.modifier,"for while do if else switch try catch finally return throw break continue default case":tags$1.controlKeyword,"in of await yield void typeof delete instanceof":tags$1.operatorKeyword,"let var const using function class extends":tags$1.definitionKeyword,"import export from":tags$1.moduleKeyword,"with debugger as new":tags$1.keyword,TemplateString:tags$1.special(tags$1.string),super:tags$1.atom,BooleanLiteral:tags$1.bool,this:tags$1.self,null:tags$1.null,Star:tags$1.modifier,VariableName:tags$1.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":tags$1.function(tags$1.variableName),VariableDefinition:tags$1.definition(tags$1.variableName),Label:tags$1.labelName,PropertyName:tags$1.propertyName,PrivatePropertyName:tags$1.special(tags$1.propertyName),"CallExpression/MemberExpression/PropertyName":tags$1.function(tags$1.propertyName),"FunctionDeclaration/VariableDefinition":tags$1.function(tags$1.definition(tags$1.variableName)),"ClassDeclaration/VariableDefinition":tags$1.definition(tags$1.className),PropertyDefinition:tags$1.definition(tags$1.propertyName),PrivatePropertyDefinition:tags$1.definition(tags$1.special(tags$1.propertyName)),UpdateOp:tags$1.updateOperator,"LineComment Hashbang":tags$1.lineComment,BlockComment:tags$1.blockComment,Number:tags$1.number,String:tags$1.string,Escape:tags$1.escape,ArithOp:tags$1.arithmeticOperator,LogicOp:tags$1.logicOperator,BitOp:tags$1.bitwiseOperator,CompareOp:tags$1.compareOperator,RegExp:tags$1.regexp,Equals:tags$1.definitionOperator,Arrow:tags$1.function(tags$1.punctuation),": Spread":tags$1.punctuation,"( )":tags$1.paren,"[ ]":tags$1.squareBracket,"{ }":tags$1.brace,"InterpolationStart InterpolationEnd":tags$1.special(tags$1.brace),".":tags$1.derefOperator,", ;":tags$1.separator,"@":tags$1.meta,TypeName:tags$1.typeName,TypeDefinition:tags$1.definition(tags$1.typeName),"type enum interface implements namespace module declare":tags$1.definitionKeyword,"abstract global Privacy readonly override":tags$1.modifier,"is keyof unique infer":tags$1.operatorKeyword,JSXAttributeValue:tags$1.attributeValue,JSXText:tags$1.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":tags$1.angleBracket,"JSXIdentifier JSXNameSpacedName":tags$1.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":tags$1.attributeName,"JSXBuiltin/JSXIdentifier":tags$1.standard(tags$1.tagName)}),spec_identifier={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,extends:54,this:58,true:66,false:66,null:78,void:82,typeof:86,super:102,new:136,delete:148,yield:157,await:161,class:166,public:229,private:229,protected:229,readonly:231,instanceof:250,satisfies:253,in:254,const:256,import:290,keyof:345,unique:349,infer:355,is:391,abstract:411,implements:413,type:415,let:418,var:420,using:423,interface:429,enum:433,namespace:439,module:441,declare:445,global:449,for:468,of:477,while:480,with:484,do:488,if:492,else:494,switch:498,case:504,try:510,catch:514,finally:518,return:522,throw:526,break:530,continue:534,debugger:538},spec_word={__proto__:null,async:123,get:125,set:127,declare:189,public:191,private:191,protected:191,static:193,abstract:195,override:197,readonly:203,accessor:205,new:395},spec_LessThan={__proto__:null,"<":187},parser=LRParser.deserialize({version:14,states:"$@QO%TQ^OOO%[Q^OOO'_Q`OOP(lOWOOO*zQ?NdO'#CiO+RO!bO'#CjO+aO#tO'#CjO+oO!0LbO'#D^O.QQ^O'#DdO.bQ^O'#DoO%[Q^O'#DwO0fQ^O'#EPOOQ?Mr'#EX'#EXO1PQWO'#EUOOQO'#Em'#EmOOQO'#Ih'#IhO1XQWO'#GpO1dQWO'#ElO1iQWO'#ElO3hQ?NdO'#JmO6[Q?NdO'#JnO6uQWO'#F[O6zQ&jO'#FsOOQ?Mr'#Fe'#FeO7VO,YO'#FeO7eQ7[O'#FzO9RQWO'#FyOOQ?Mr'#Jn'#JnOOQ?Mp'#Jm'#JmO9WQWO'#GtOOQU'#KZ'#KZO9cQWO'#IUO9hQ?MxO'#IVOOQU'#JZ'#JZOOQU'#IZ'#IZQ`Q^OOO`Q^OOO9pQMnO'#DsO9wQ^O'#D{O:OQ^O'#D}O9^QWO'#GpO:VQ7[O'#CoO:eQWO'#EkO:pQWO'#EvO:uQ7[O'#FdO;dQWO'#GpOOQO'#K['#K[O;iQWO'#K[O;wQWO'#GxO;wQWO'#GyO;wQWO'#G{O9^QWO'#HOOVQWO'#CeO>gQWO'#H_O>oQWO'#HeO>oQWO'#HgO`Q^O'#HiO>oQWO'#HkO>oQWO'#HnO>tQWO'#HtO>yQ?MyO'#HzO%[Q^O'#H|O?UQ?MyO'#IOO?aQ?MyO'#IQO9hQ?MxO'#ISO?lQ?NdO'#CiO@nQ`O'#DiQOQWOOO%[Q^O'#D}OAUQWO'#EQO:VQ7[O'#EkOAaQWO'#EkOAlQpO'#FdOOQU'#Cg'#CgOOQ?Mp'#Dn'#DnOOQ?Mp'#Jq'#JqO%[Q^O'#JqOOQO'#Jt'#JtOOQO'#Id'#IdOBlQ`O'#EdOOQ?Mp'#Ec'#EcOOQ?Mp'#Jx'#JxOChQ?NQO'#EdOCrQ`O'#ETOOQO'#Js'#JsODWQ`O'#JtOEeQ`O'#ETOCrQ`O'#EdPErO#@ItO'#CbPOOO)CDx)CDxOOOO'#I['#I[OE}O!bO,59UOOQ?Mr,59U,59UOOOO'#I]'#I]OF]O#tO,59UO%[Q^O'#D`OOOO'#I_'#I_OFkO!0LbO,59xOOQ?Mr,59x,59xOFyQ^O'#I`OG^QWO'#JoOI]QrO'#JoO+}Q^O'#JoOIdQWO,5:OOIzQWO'#EmOJXQWO'#KOOJdQWO'#J}OJdQWO'#J}OJlQWO,5;ZOJqQWO'#J|OOQ?Mv,5:Z,5:ZOJxQ^O,5:ZOLvQ?NdO,5:cOMgQWO,5:kONQQ?MxO'#J{ONXQWO'#JzO9WQWO'#JzONmQWO'#JzONuQWO,5;YONzQWO'#JzO!#PQrO'#JnOOQ?Mr'#Ci'#CiO%[Q^O'#EPO!#oQrO,5:pOOQQ'#Ju'#JuOOQO-EpOOQU'#Jc'#JcOOQU,5>q,5>qOOQU-EtQWO'#HTO9^QWO'#HVO!DgQWO'#HVO:VQ7[O'#HXO!DlQWO'#HXOOQU,5=m,5=mO!DqQWO'#HYO!ESQWO'#CoO!EXQWO,59PO!EcQWO,59PO!GhQ^O,59POOQU,59P,59PO!GxQ?MxO,59PO%[Q^O,59PO!JTQ^O'#HaOOQU'#Hb'#HbOOQU'#Hc'#HcO`Q^O,5=yO!JkQWO,5=yO`Q^O,5>PO`Q^O,5>RO!JpQWO,5>TO`Q^O,5>VO!JuQWO,5>YO!JzQ^O,5>`OOQU,5>f,5>fO%[Q^O,5>fO9hQ?MxO,5>hOOQU,5>j,5>jO# UQWO,5>jOOQU,5>l,5>lO# UQWO,5>lOOQU,5>n,5>nO# rQ`O'#D[O%[Q^O'#JqO# |Q`O'#JqO#!kQ`O'#DjO#!|Q`O'#DjO#%_Q^O'#DjO#%fQWO'#JpO#%nQWO,5:TO#%sQWO'#EqO#&RQWO'#KPO#&ZQWO,5;[O#&`Q`O'#DjO#&mQ`O'#ESOOQ?Mr,5:l,5:lO%[Q^O,5:lO#&tQWO,5:lO>tQWO,5;VO!A}Q`O,5;VO!BVQ7[O,5;VO:VQ7[O,5;VO#&|QWO,5@]O#'RQ(CYO,5:pOOQO-EzO+}Q^O,5>zOOQO,5?Q,5?QO#*ZQ^O'#I`OOQO-E<^-E<^O#*hQWO,5@ZO#*pQrO,5@ZO#*wQWO,5@iOOQ?Mr1G/j1G/jO%[Q^O,5@jO#+PQWO'#IfOOQO-EuQ?NdO1G0|O#>|Q?NdO1G0|O#AZQ07bO'#CiO#CUQ07bO1G1_O#C]Q07bO'#JnO#CpQ?NdO,5?WOOQ?Mp-EoQWO1G3oO$3VQ^O1G3qO$7ZQ^O'#HpOOQU1G3t1G3tO$7hQWO'#HvO>tQWO'#HxOOQU1G3z1G3zO$7pQ^O1G3zO9hQ?MxO1G4QOOQU1G4S1G4SOOQ?Mp'#G]'#G]O9hQ?MxO1G4UO9hQ?MxO1G4WO$;wQWO,5@]O!(oQ^O,5;]O9WQWO,5;]O>tQWO,5:UO!(oQ^O,5:UO!A}Q`O,5:UO$;|Q07bO,5:UOOQO,5;],5;]O$tQWO1G0qO!A}Q`O1G0qO!BVQ7[O1G0qOOQ?Mp1G5w1G5wO!ArQ?MxO1G0ZOOQO1G0j1G0jO%[Q^O1G0jO$=aQ?MxO1G0jO$=lQ?MxO1G0jO!A}Q`O1G0ZOCrQ`O1G0ZO$=zQ?MxO1G0jOOQO1G0Z1G0ZO$>`Q?NdO1G0jPOOO-EjQpO,5rQrO1G4fOOQO1G4l1G4lO%[Q^O,5>zO$>|QWO1G5uO$?UQWO1G6TO$?^QrO1G6UO9WQWO,5?QO$?hQ?NdO1G6RO%[Q^O1G6RO$?xQ?MxO1G6RO$@ZQWO1G6QO$@ZQWO1G6QO9WQWO1G6QO$@cQWO,5?TO9WQWO,5?TOOQO,5?T,5?TO$@wQWO,5?TO$(PQWO,5?TOOQO-E[OOQU,5>[,5>[O%[Q^O'#HqO%8mQWO'#HsOOQU,5>b,5>bO9WQWO,5>bOOQU,5>d,5>dOOQU7+)f7+)fOOQU7+)l7+)lOOQU7+)p7+)pOOQU7+)r7+)rO%8rQ`O1G5wO%9WQ07bO1G0wO%9bQWO1G0wOOQO1G/p1G/pO%9mQ07bO1G/pO>tQWO1G/pO!(oQ^O'#DjOOQO,5>{,5>{OOQO-E<_-E<_OOQO,5?R,5?ROOQO-EtQWO7+&]O!A}Q`O7+&]OOQO7+%u7+%uO$>`Q?NdO7+&UOOQO7+&U7+&UO%[Q^O7+&UO%9wQ?MxO7+&UO!ArQ?MxO7+%uO!A}Q`O7+%uO%:SQ?MxO7+&UO%:bQ?NdO7++mO%[Q^O7++mO%:rQWO7++lO%:rQWO7++lOOQO1G4o1G4oO9WQWO1G4oO%:zQWO1G4oOOQQ7+%z7+%zO#&wQWO<|O%[Q^O,5>|OOQO-E<`-E<`O%FwQWO1G5xOOQ?Mr<]OOQU,5>_,5>_O&8uQWO1G3|O9WQWO7+&cO!(oQ^O7+&cOOQO7+%[7+%[O&8zQ07bO1G6UO>tQWO7+%[OOQ?Mr<tQWO<`Q?NdO<pQ?NdO,5?_O&@xQ?NdO7+'zO&CWQrO1G4hO&CbQ07bO7+&^O&EcQ07bO,5=UO&GgQ07bO,5=WO&GwQ07bO,5=UO&HXQ07bO,5=WO&HiQ07bO,59rO&JlQ07bO,5tQWO7+)hO'(OQWO<`Q?NdOAN?[OOQOAN>{AN>{O%[Q^OAN?[OOQO<`Q?NdOG24vO#&wQWOLD,nOOQULD,nLD,nO!&_Q7[OLD,nO'5TQrOLD,nO'5[Q07bO7+'xO'6}Q07bO,5?]O'8}Q07bO,5?_O':}Q07bO7+'zO'kOh%VOk+aO![']O%f+`O~O!d+cOa(WX![(WX'u(WX!Y(WX~Oa%lO![XO'u%lO~Oh%VO!i%cO~Oh%VO!i%cO(O%eO~O!d#vO#h(tO~Ob+nO%g+oO(O+kO(QTO(TUO!Z)TP~O!Y+pO`)SX~O[+tO~O`+uO~O![%}O(O%eO(P!lO`)SP~Oh%VO#]+zO~Oh%VOk+}O![$|O~O![,PO~O},RO![XO~O%k%tO~O!u,WO~Oe,]O~Ob,^O(O#nO(QTO(TUO!Z)RP~Oe%{O~O%g!QO(O&WO~P=RO[,cO`,bO~OPYOQYOSfOdzOeyOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO!fuO!iZO!lYO!mYO!nYO!pvO!uxO!y]O%e}O(QTO(TUO([VO(j[O(yiO~O![!eO!r!gO$V!kO(O!dO~P!EkO`,bOa%lO'u%lO~OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!u!hO$V!kO(O!dO(QTO(TUO([VO(j[O(yiO~Oa,hO!rwO#t!OO%i!OO%j!OO%k!OO~P!HTO!i&lO~O&Y,nO~O![,pO~O&k,rO&m,sOP&haQ&haS&haY&haa&had&hae&ham&hao&hap&haq&haw&hay&ha{&ha!P&ha!T&ha!U&ha![&ha!f&ha!i&ha!l&ha!m&ha!n&ha!p&ha!r&ha!u&ha!y&ha#t&ha$V&ha%e&ha%g&ha%i&ha%j&ha%k&ha%n&ha%p&ha%s&ha%t&ha%v&ha&S&ha&Y&ha&[&ha&^&ha&`&ha&c&ha&i&ha&o&ha&q&ha&s&ha&u&ha&w&ha's&ha(O&ha(Q&ha(T&ha([&ha(j&ha(y&ha!Z&ha&a&hab&ha&f&ha~O(O,xO~Oh!bX!Y!OX!Z!OX!d!OX!d!bX!i!bX#]!OX~O!Y!bX!Z!bX~P# ZO!d,}O#],|Oh(eX!Y#eX!Y(eX!Z#eX!Z(eX!d(eX!i(eX~Oh%VO!d-PO!i%cO!Y!^X!Z!^X~Op!nO!P!oO(QTO(TUO(`!mO~OP;POQ;POSfOdkOg'XX!Y'XX~P!+hO!Y.wOg(ka~OSfO![3uO$c3vO~O!Z3zO~Os3{O~P#.aOa$lq!Y$lq'u$lq's$lq!V$lq!h$lqs$lq![$lq%f$lq!d$lq~P!9mO!V3|O~P#.aO})zO!P){O(u%POk'ea(t'ea!Y'ea#]'ea~Og'ea#}'ea~P%)nO})zO!P){Ok'ga(t'ga(u'ga!Y'ga#]'ga~Og'ga#}'ga~P%*aO(m$YO~P#.aO!VfX!V$xX!YfX!Y$xX!d%PX#]fX~P!/gO(OQ#>g#@V#@e#@l#BR#Ba#C|#D[#Db#Dh#Dn#Dx#EO#EU#E`#Er#ExPPPPPPPPPP#FOPPPPPPP#Fs#Iz#KZ#Kb#KjPPP$!sP$!|$%t$,^$,a$,d$-P$-S$-Z$-cP$-i$-lP$.Y$.^$/U$0d$0i$1PPP$1U$1[$1`P$1c$1g$1k$2a$2x$3a$3e$3h$3k$3q$3t$3x$3|R!|RoqOXst!Z#d%k&o&q&r&t,k,p1|2PY!vQ']-]1a5eQ%rvQ%zyQ&R|Q&g!VS'T!e-TQ'c!iS'i!r!yU*e$|*V*jQ+i%{Q+v&TQ,[&aQ-Z'[Q-e'dQ-m'jQ0R*lQ1k,]R;v;T%QdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V,h,k,p-a-i-w-}.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3^5b5m5}6O6R6f8R8X8h8rS#q];Q!r)Z$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{ < TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:376,context:trackNewline,nodeProps:[["isolate",-8,5,6,14,34,36,48,50,52,""],["group",-26,9,17,19,65,204,208,212,213,215,218,221,231,233,239,241,243,245,248,254,260,262,264,266,268,270,271,"Statement",-34,13,14,29,32,33,39,48,51,52,54,59,67,69,73,77,79,81,82,107,108,117,118,135,138,140,141,142,143,144,146,147,166,167,169,"Expression",-23,28,30,34,38,40,42,171,173,175,176,178,179,180,182,183,184,186,187,188,198,200,202,203,"Type",-3,85,100,106,"ClassItem"],["openedBy",23,"<",35,"InterpolationStart",53,"[",57,"{",70,"(",159,"JSXStartCloseTag"],["closedBy",24,">",37,"InterpolationEnd",47,"]",58,"}",71,")",164,"JSXEndTag"]],propSources:[jsHighlight],skippedNodes:[0,5,6,274],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$h&j(RpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(RpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$h&j(Rp(U!b'w0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(S#S$h&j'x0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$h&j(Rp(U!b'x0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$h&j!m),Q(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(Q':f$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$h&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$c`$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$c``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$c`$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(U!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$c`(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$h&j(Rp(U!bOY%ZYZ&cZq%Zqr`#P#o`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$h&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(U!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$h&j(RpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(RpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Rp(U!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l^!Q^$h&j!U7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!U7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!U7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c^!Ezl$h&j(U!b!U7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(U!b!U7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(U!b!U7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(U!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$h&j(U!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!^!LYP;=`<%l!KS>^!L`P;=`<%l!_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!d$b$h&j#})Lv(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#O-spec_identifier[o]||-1},{term:338,get:o=>spec_word[o]||-1},{term:92,get:o=>spec_LessThan[o]||-1}],tokenPrec:14749}),snippets=[snippetCompletion("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),snippetCompletion("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),snippetCompletion("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),snippetCompletion("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),snippetCompletion("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),snippetCompletion(`try { - \${} -} catch (\${error}) { - \${} -}`,{label:"try",detail:"/ catch block",type:"keyword"}),snippetCompletion("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),snippetCompletion(`if (\${}) { - \${} -} else { - \${} -}`,{label:"if",detail:"/ else block",type:"keyword"}),snippetCompletion(`class \${name} { - constructor(\${params}) { - \${} - } -}`,{label:"class",detail:"definition",type:"keyword"}),snippetCompletion('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),snippetCompletion('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],typescriptSnippets=snippets.concat([snippetCompletion("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),snippetCompletion("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),snippetCompletion("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),cache=new NodeWeakMap,ScopeNodes=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function defID(o){return(e,n)=>{let r=e.node.getChild("VariableDefinition");return r&&n(r,o),!0}}const functionContext=["FunctionDeclaration"],gatherCompletions={FunctionDeclaration:defID("function"),ClassDeclaration:defID("class"),ClassExpression:()=>!0,EnumDeclaration:defID("constant"),TypeAliasDeclaration:defID("type"),NamespaceDeclaration:defID("namespace"),VariableDefinition(o,e){o.matchContext(functionContext)||e(o,"variable")},TypeDefinition(o,e){e(o,"type")},__proto__:null};function getScope(o,e){let n=cache.get(e);if(n)return n;let r=[],c=!0;function u(h,p){let b=o.sliceString(h.from,h.to);r.push({label:b,type:p})}return e.cursor(IterMode.IncludeAnonymous).iterate(h=>{if(c)c=!1;else if(h.name){let p=gatherCompletions[h.name];if(p&&p(h,u)||ScopeNodes.has(h.name))return!1}else if(h.to-h.from>8192){for(let p of getScope(o,h.node))r.push(p);return!1}}),cache.set(e,r),r}const Identifier=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,dontComplete=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName",".","?."];function localCompletionSource(o){let e=syntaxTree(o.state).resolveInner(o.pos,-1);if(dontComplete.indexOf(e.name)>-1)return null;let n=e.name=="VariableName"||e.to-e.from<20&&Identifier.test(o.state.sliceDoc(e.from,e.to));if(!n&&!o.explicit)return null;let r=[];for(let c=e;c;c=c.parent)ScopeNodes.has(c.name)&&(r=r.concat(getScope(o.state.doc,c)));return{options:r,from:n?e.from:o.pos,validFor:Identifier}}const javascriptLanguage=LRLanguage.define({name:"javascript",parser:parser.configure({props:[indentNodeProp.add({IfStatement:continuedIndent({except:/^\s*({|else\b)/}),TryStatement:continuedIndent({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:flatIndent,SwitchBody:o=>{let e=o.textAfter,n=/^\s*\}/.test(e),r=/^\s*(case|default)\b/.test(e);return o.baseIndent+(n?0:r?1:2)*o.unit},Block:delimitedIndent({closing:"}"}),ArrowFunction:o=>o.baseIndent+o.unit,"TemplateString BlockComment":()=>null,"Statement Property":continuedIndent({except:/^{/}),JSXElement(o){let e=/^\s*<\//.test(o.textAfter);return o.lineIndent(o.node.from)+(e?0:o.unit)},JSXEscape(o){let e=/\s*\}/.test(o.textAfter);return o.lineIndent(o.node.from)+(e?0:o.unit)},"JSXOpenTag JSXSelfClosingTag"(o){return o.column(o.node.from)+o.unit}}),foldNodeProp.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":foldInside,BlockComment(o){return{from:o.from+2,to:o.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),jsxSublanguage={test:o=>/^JSX/.test(o.name),facet:defineLanguageFacet({commentTokens:{block:{open:"{/*",close:"*/}"}}})},typescriptLanguage=javascriptLanguage.configure({dialect:"ts"},"typescript"),jsxLanguage=javascriptLanguage.configure({dialect:"jsx",props:[sublanguageProp.add(o=>o.isTop?[jsxSublanguage]:void 0)]}),tsxLanguage=javascriptLanguage.configure({dialect:"jsx ts",props:[sublanguageProp.add(o=>o.isTop?[jsxSublanguage]:void 0)]},"typescript");let kwCompletion=o=>({label:o,type:"keyword"});const keywords="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(kwCompletion),typescriptKeywords=keywords.concat(["declare","implements","private","protected","public"].map(kwCompletion));function javascript(o={}){let e=o.jsx?o.typescript?tsxLanguage:jsxLanguage:o.typescript?typescriptLanguage:javascriptLanguage,n=o.typescript?typescriptSnippets.concat(typescriptKeywords):snippets.concat(keywords);return new LanguageSupport(e,[javascriptLanguage.data.of({autocomplete:ifNotIn(dontComplete,completeFromList(n))}),javascriptLanguage.data.of({autocomplete:localCompletionSource}),o.jsx?autoCloseTags$1:[]])}function findOpenTag(o){for(;;){if(o.name=="JSXOpenTag"||o.name=="JSXSelfClosingTag"||o.name=="JSXFragmentTag")return o;if(o.name=="JSXEscape"||!o.parent)return null;o=o.parent}}function elementName$1(o,e,n=o.length){for(let r=e==null?void 0:e.firstChild;r;r=r.nextSibling)if(r.name=="JSXIdentifier"||r.name=="JSXBuiltin"||r.name=="JSXNamespacedName"||r.name=="JSXMemberExpression")return o.sliceString(r.from,Math.min(r.to,n));return""}const android=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),autoCloseTags$1=EditorView.inputHandler.of((o,e,n,r,c)=>{if((android?o.composing:o.compositionStarted)||o.state.readOnly||e!=n||r!=">"&&r!="/"||!javascriptLanguage.isActiveAt(o.state,e,-1))return!1;let u=c(),{state:h}=u,p=h.changeByRange(b=>{var y;let{head:k}=b,A=syntaxTree(h).resolveInner(k-1,-1),R;if(A.name=="JSXStartTag"&&(A=A.parent),!(h.doc.sliceString(k-1,k)!=r||A.name=="JSXAttributeValue"&&A.to>k)){if(r==">"&&A.name=="JSXFragmentTag")return{range:b,changes:{from:k,insert:""}};if(r=="/"&&A.name=="JSXStartCloseTag"){let N=A.parent,F=N.parent;if(F&&N.from==k-2&&((R=elementName$1(h.doc,F.firstChild,k))||((y=F.firstChild)===null||y===void 0?void 0:y.name)=="JSXFragmentTag")){let V=`${R}>`;return{range:EditorSelection.cursor(k+V.length,-1),changes:{from:k,insert:V}}}}else if(r==">"){let N=findOpenTag(A);if(N&&N.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(h.doc.sliceString(k,k+2))&&(R=elementName$1(h.doc,N,k)))return{range:b,changes:{from:k,insert:``}}}}return{range:b}});return p.changes.empty?!1:(o.dispatch([u,h.update(p,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),Targets=["_blank","_self","_top","_parent"],Charsets=["ascii","utf-8","utf-16","latin1","latin1"],Methods=["get","post","put","delete"],Encs=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Bool=["true","false"],S={},Tags={a:{attrs:{href:null,ping:null,type:null,media:null,target:Targets,hreflang:null}},abbr:S,address:S,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:S,aside:S,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:S,base:{attrs:{href:null,target:Targets}},bdi:S,bdo:S,blockquote:{attrs:{cite:null}},body:S,br:S,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:S,center:S,cite:S,code:S,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:S,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:S,div:S,dl:S,dt:S,em:S,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:S,figure:S,footer:S,form:{attrs:{action:null,name:null,"accept-charset":Charsets,autocomplete:["on","off"],enctype:Encs,method:Methods,novalidate:["novalidate"],target:Targets}},h1:S,h2:S,h3:S,h4:S,h5:S,h6:S,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:S,hgroup:S,hr:S,html:{attrs:{manifest:null}},i:S,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:Encs,formmethod:Methods,formnovalidate:["novalidate"],formtarget:Targets,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:S,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:S,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:S,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:Charsets,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:S,noscript:S,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:S,param:{attrs:{name:null,value:null}},pre:S,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:S,rt:S,ruby:S,samp:S,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:Charsets}},section:S,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:S,source:{attrs:{src:null,type:null,media:null}},span:S,strong:S,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:S,summary:S,sup:S,table:S,tbody:S,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:S,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:S,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:S,time:{attrs:{datetime:null}},title:S,tr:S,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:S,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:S},GlobalAttrs={accesskey:null,class:null,contenteditable:Bool,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Bool,autocorrect:Bool,autocapitalize:Bool,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Bool,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Bool,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Bool,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Bool,"aria-hidden":Bool,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Bool,"aria-multiselectable":Bool,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Bool,"aria-relevant":null,"aria-required":Bool,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},eventAttributes="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(o=>"on"+o);for(let o of eventAttributes)GlobalAttrs[o]=null;class Schema{constructor(e,n){this.tags=Object.assign(Object.assign({},Tags),e),this.globalAttrs=Object.assign(Object.assign({},GlobalAttrs),n),this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}Schema.default=new Schema;function elementName(o,e,n=o.length){if(!e)return"";let r=e.firstChild,c=r&&r.getChild("TagName");return c?o.sliceString(c.from,Math.min(c.to,n)):""}function findParentElement(o,e=!1){for(;o;o=o.parent)if(o.name=="Element")if(e)e=!1;else return o;return null}function allowedChildren(o,e,n){let r=n.tags[elementName(o,findParentElement(e))];return(r==null?void 0:r.children)||n.allTags}function openTags(o,e){let n=[];for(let r=findParentElement(e);r&&!r.type.isTop;r=findParentElement(r.parent)){let c=elementName(o,r);if(c&&r.lastChild.name=="CloseTag")break;c&&n.indexOf(c)<0&&(e.name=="EndTag"||e.from>=r.firstChild.to)&&n.push(c)}return n}const identifier=/^[:\-\.\w\u00b7-\uffff]*$/;function completeTag(o,e,n,r,c){let u=/\s*>/.test(o.sliceDoc(c,c+5))?"":">",h=findParentElement(n,!0);return{from:r,to:c,options:allowedChildren(o.doc,h,e).map(p=>({label:p,type:"type"})).concat(openTags(o.doc,n).map((p,b)=>({label:"/"+p,apply:"/"+p+u,type:"type",boost:99-b}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeCloseTag(o,e,n,r){let c=/\s*>/.test(o.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:openTags(o.doc,e).map((u,h)=>({label:u,apply:u+c,type:"type",boost:99-h})),validFor:identifier}}function completeStartTag(o,e,n,r){let c=[],u=0;for(let h of allowedChildren(o.doc,n,e))c.push({label:"<"+h,type:"type"});for(let h of openTags(o.doc,n))c.push({label:"",type:"type",boost:99-u++});return{from:r,to:r,options:c,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function completeAttrName(o,e,n,r,c){let u=findParentElement(n),h=u?e.tags[elementName(o.doc,u)]:null,p=h&&h.attrs?Object.keys(h.attrs):[],b=h&&h.globalAttrs===!1?p:p.length?p.concat(e.globalAttrNames):e.globalAttrNames;return{from:r,to:c,options:b.map(y=>({label:y,type:"property"})),validFor:identifier}}function completeAttrValue(o,e,n,r,c){var u;let h=(u=n.parent)===null||u===void 0?void 0:u.getChild("AttributeName"),p=[],b;if(h){let y=o.sliceDoc(h.from,h.to),k=e.globalAttrs[y];if(!k){let A=findParentElement(n),R=A?e.tags[elementName(o.doc,A)]:null;k=(R==null?void 0:R.attrs)&&R.attrs[y]}if(k){let A=o.sliceDoc(r,c).toLowerCase(),R='"',N='"';/^['"]/.test(A)?(b=A[0]=='"'?/^[^"]*$/:/^[^']*$/,R="",N=o.sliceDoc(c,c+1)==A[0]?"":A[0],A=A.slice(1),r++):b=/^[^\s<>='"]*$/;for(let F of k)p.push({label:F,apply:R+F+N,type:"constant"})}}return{from:r,to:c,options:p,validFor:b}}function htmlCompletionFor(o,e){let{state:n,pos:r}=e,c=syntaxTree(n).resolveInner(r,-1),u=c.resolve(r);for(let h=r,p;u==c&&(p=c.childBefore(h));){let b=p.lastChild;if(!b||!b.type.isError||b.fromhtmlCompletionFor(r,c)}const jsonParser=javascriptLanguage.parser.configure({top:"SingleExpression"}),defaultNesting=[{tag:"script",attrs:o=>o.type=="text/typescript"||o.lang=="ts",parser:typescriptLanguage.parser},{tag:"script",attrs:o=>o.type=="text/babel"||o.type=="text/jsx",parser:jsxLanguage.parser},{tag:"script",attrs:o=>o.type=="text/typescript-jsx",parser:tsxLanguage.parser},{tag:"script",attrs(o){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(o.type)},parser:jsonParser},{tag:"script",attrs(o){return!o.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(o.type)},parser:javascriptLanguage.parser},{tag:"style",attrs(o){return(!o.lang||o.lang=="css")&&(!o.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(o.type))},parser:cssLanguage.parser}],defaultAttrs=[{name:"style",parser:cssLanguage.parser.configure({top:"Styles"})}].concat(eventAttributes.map(o=>({name:o,parser:javascriptLanguage.parser}))),htmlPlain=LRLanguage.define({name:"html",parser:parser$2.configure({props:[indentNodeProp.add({Element(o){let e=/^(\s*)(<\/)?/.exec(o.textAfter);return o.node.to<=o.pos+e[0].length?o.continue():o.lineIndent(o.node.from)+(e[2]?0:o.unit)},"OpenTag CloseTag SelfClosingTag"(o){return o.column(o.node.from)+o.unit},Document(o){if(o.pos+/\s*/.exec(o.textAfter)[0].lengtho.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),htmlLanguage=htmlPlain.configure({wrap:configureNesting(defaultNesting,defaultAttrs)});function html(o={}){let e="",n;o.matchClosingTags===!1&&(e="noMatch"),o.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(o.nestedLanguages&&o.nestedLanguages.length||o.nestedAttributes&&o.nestedAttributes.length)&&(n=configureNesting((o.nestedLanguages||[]).concat(defaultNesting),(o.nestedAttributes||[]).concat(defaultAttrs)));let r=n?htmlPlain.configure({wrap:n,dialect:e}):e?htmlLanguage.configure({dialect:e}):htmlLanguage;return new LanguageSupport(r,[htmlLanguage.data.of({autocomplete:htmlCompletionSourceWith(o)}),o.autoCloseTags!==!1?autoCloseTags:[],javascript().support,css().support])}const selfClosers=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),autoCloseTags=EditorView.inputHandler.of((o,e,n,r,c)=>{if(o.composing||o.state.readOnly||e!=n||r!=">"&&r!="/"||!htmlLanguage.isActiveAt(o.state,e,-1))return!1;let u=c(),{state:h}=u,p=h.changeByRange(b=>{var y,k,A;let R=h.doc.sliceString(b.from-1,b.to)==r,{head:N}=b,F=syntaxTree(h).resolveInner(N,-1),V;if(R&&r==">"&&F.name=="EndTag"){let W=F.parent;if(((k=(y=W.parent)===null||y===void 0?void 0:y.lastChild)===null||k===void 0?void 0:k.name)!="CloseTag"&&(V=elementName(h.doc,W.parent,N))&&!selfClosers.has(V)){let J=N+(h.doc.sliceString(N,N+1)===">"?1:0),te=``;return{range:b,changes:{from:N,to:J,insert:te}}}}else if(R&&r=="/"&&F.name=="IncompleteCloseTag"){let W=F.parent;if(F.from==N-2&&((A=W.lastChild)===null||A===void 0?void 0:A.name)!="CloseTag"&&(V=elementName(h.doc,W,N))&&!selfClosers.has(V)){let J=N+(h.doc.sliceString(N,N+1)===">"?1:0),te=`${V}>`;return{range:EditorSelection.cursor(N+te.length,-1),changes:{from:N,to:J,insert:te}}}}return{range:b}});return p.changes.empty?!1:(o.dispatch([u,h.update(p,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),data=defineLanguageFacet({commentTokens:{block:{open:""}}}),headingProp=new NodeProp,commonmark=parser$3.configure({props:[foldNodeProp.add(o=>!o.is("Block")||o.is("Document")||isHeading(o)!=null||isList(o)?void 0:(e,n)=>({from:n.doc.lineAt(e.from).to,to:e.to})),headingProp.add(isHeading),indentNodeProp.add({Document:()=>null}),languageDataProp.add({Document:data})]});function isHeading(o){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(o.name);return e?+e[1]:void 0}function isList(o){return o.name=="OrderedList"||o.name=="BulletList"}function findSectionEnd(o,e){let n=o;for(;;){let r=n.nextSibling,c;if(!r||(c=isHeading(r.type))!=null&&c<=e)break;n=r}return n.to}const headerIndent=foldService.of((o,e,n)=>{for(let r=syntaxTree(o).resolveInner(n,-1);r&&!(r.fromn)return{from:n,to:u}}return null});function mkLang(o){return new Language(data,o,[headerIndent],"markdown")}const commonmarkLanguage=mkLang(commonmark),extended=commonmark.configure([GFM,Subscript,Superscript,Emoji,{props:[foldNodeProp.add({Table:(o,e)=>({from:e.doc.lineAt(o.from).to,to:o.to})})]}]),markdownLanguage=mkLang(extended);function getCodeParser(o,e){return n=>{if(n&&o){let r=null;if(n=/\S*/.exec(n)[0],typeof o=="function"?r=o(n):r=LanguageDescription.matchLanguageName(o,n,!0),r instanceof LanguageDescription)return r.support?r.support.language.parser:ParseContext.getSkippingParser(r.load());if(r)return r.parser}return e?e.parser:null}}class Context{constructor(e,n,r,c,u,h,p){this.node=e,this.from=n,this.to=r,this.spaceBefore=c,this.spaceAfter=u,this.type=h,this.item=p}blank(e,n=!0){let r=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;r.length0;c--)r+=" ";return r+(n?this.spaceAfter:"")}}marker(e,n){let r=this.node.name=="OrderedList"?String(+itemNumber(this.item,e)[2]+n):"";return this.spaceBefore+r+this.type+this.spaceAfter}}function getContext(o,e){let n=[];for(let c=o;c&&c.name!="Document";c=c.parent)(c.name=="ListItem"||c.name=="Blockquote"||c.name=="FencedCode")&&n.push(c);let r=[];for(let c=n.length-1;c>=0;c--){let u=n[c],h,p=e.lineAt(u.from),b=u.from-p.from;if(u.name=="FencedCode")r.push(new Context(u,b,b,"","","",null));else if(u.name=="Blockquote"&&(h=/^ *>( ?)/.exec(p.text.slice(b))))r.push(new Context(u,b,b+h[0].length,"",h[1],">",null));else if(u.name=="ListItem"&&u.parent.name=="OrderedList"&&(h=/^( *)\d+([.)])( *)/.exec(p.text.slice(b)))){let y=h[3],k=h[0].length;y.length>=4&&(y=y.slice(0,y.length-4),k-=4),r.push(new Context(u.parent,b,b+k,h[1],y,h[2],u))}else if(u.name=="ListItem"&&u.parent.name=="BulletList"&&(h=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(p.text.slice(b)))){let y=h[4],k=h[0].length;y.length>4&&(y=y.slice(0,y.length-4),k-=4);let A=h[2];h[3]&&(A+=h[3].replace(/[xX]/," ")),r.push(new Context(u.parent,b,b+k,h[1],y,A,u))}}return r}function itemNumber(o,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(o.from,o.from+10))}function renumberList(o,e,n,r=0){for(let c=-1,u=o;;){if(u.name=="ListItem"){let p=itemNumber(u,e),b=+p[2];if(c>=0){if(b!=c+1)return;n.push({from:u.from+p[1].length,to:u.from+p[0].length,insert:String(c+2+r)})}c=b}let h=u.nextSibling;if(!h)break;u=h}}function normalizeIndent(o,e){let n=/^[ \t]*/.exec(o)[0].length;if(!n||e.facet(indentUnit)!=" ")return o;let r=countColumn(o,4,n),c="";for(let u=r;u>0;)u>=4?(c+=" ",u-=4):(c+=" ",u--);return c+o.slice(n)}const insertNewlineContinueMarkup=({state:o,dispatch:e})=>{let n=syntaxTree(o),{doc:r}=o,c=null,u=o.changeByRange(h=>{if(!h.empty||!markdownLanguage.isActiveAt(o,h.from))return c={range:h};let p=h.from,b=r.lineAt(p),y=getContext(n.resolveInner(p,-1),r);for(;y.length&&y[y.length-1].from>p-b.from;)y.pop();if(!y.length)return c={range:h};let k=y[y.length-1];if(k.to-k.spaceAfter.length>p-b.from)return c={range:h};let A=p>=k.to-k.spaceAfter.length&&!/\S/.test(b.text.slice(k.to));if(k.item&&A){let W=k.node.firstChild,J=k.node.getChild("ListItem","ListItem");if(W.to>=p||J&&J.to0&&!/[^\s>]/.test(r.lineAt(b.from-1).text)){let te=y.length>1?y[y.length-2]:null,j,ae="";te&&te.item?(j=b.from+te.from,ae=te.marker(r,1)):j=b.from+(te?te.to:0);let fe=[{from:j,to:p,insert:ae}];return k.node.name=="OrderedList"&&renumberList(k.item,r,fe,-2),te&&te.node.name=="OrderedList"&&renumberList(te.item,r,fe),{range:EditorSelection.cursor(j+ae.length),changes:fe}}else{let te=blankLine(y,o,b);return{range:EditorSelection.cursor(p+te.length+1),changes:{from:b.from,insert:te+o.lineBreak}}}}if(k.node.name=="Blockquote"&&A&&b.from){let W=r.lineAt(b.from-1),J=/>\s*$/.exec(W.text);if(J&&J.index==k.from){let te=o.changes([{from:W.from+J.index,to:W.to},{from:b.from+k.from,to:b.to}]);return{range:h.map(te),changes:te}}}let R=[];k.node.name=="OrderedList"&&renumberList(k.item,r,R);let N=k.item&&k.item.from]*/.exec(b.text)[0].length>=k.to)for(let W=0,J=y.length-1;W<=J;W++)F+=W==J&&!N?y[W].marker(r,1):y[W].blank(Wb.from&&/\s/.test(b.text.charAt(V-b.from-1));)V--;return F=normalizeIndent(F,o),nonTightList(k.node,o.doc)&&(F=blankLine(y,o,b)+o.lineBreak+F),R.push({from:V,to:p,insert:o.lineBreak+F}),{range:EditorSelection.cursor(V+F.length+1),changes:R}});return c?!1:(e(o.update(u,{scrollIntoView:!0,userEvent:"input"})),!0)};function isMark(o){return o.name=="QuoteMark"||o.name=="ListMark"}function nonTightList(o,e){if(o.name!="OrderedList"&&o.name!="BulletList")return!1;let n=o.firstChild,r=o.getChild("ListItem","ListItem");if(!r)return!1;let c=e.lineAt(n.to),u=e.lineAt(r.from),h=/^[\s>]*$/.test(c.text);return c.number+(h?0:1){let n=syntaxTree(o),r=null,c=o.changeByRange(u=>{let h=u.from,{doc:p}=o;if(u.empty&&markdownLanguage.isActiveAt(o,u.from)){let b=p.lineAt(h),y=getContext(contextNodeForDelete(n,h),p);if(y.length){let k=y[y.length-1],A=k.to-k.spaceAfter.length+(k.spaceAfter?1:0);if(h-b.from>A&&!/\S/.test(b.text.slice(A,h-b.from)))return{range:EditorSelection.cursor(b.from+A),changes:{from:b.from+A,to:h}};if(h-b.from==A&&(!k.item||b.from<=k.item.from||!/\S/.test(b.text.slice(0,k.to)))){let R=b.from+k.from;if(k.item&&k.node.from{let b=new Compartment,y=new Compartment,k=EditorState.create({doc:u,extensions:[basicSetup,keymap.of([indentWithTab,...lintKeymap,...completionKeymap]),b.of(markdown()),markdown(),autocompletion(),y.of(EditorState.tabSize.of(4)),basicSetup,EditorView.editable.of(h),EditorView.updateListener.of(function(A){A.docChanged&&n(2,u=A.state.doc.toString())}),EditorView.lineWrapping,EditorView.contentAttributes.of({spellcheck:"true"})]});c=new EditorView({state:k,parent:r})}),onDestroy(()=>{c&&c.destroy()});function p(b){binding_callbacks[b?"unshift":"push"](()=>{r=b,n(1,r)})}return o.$$set=b=>{"value"in b&&n(2,u=b.value),"editable"in b&&n(0,h=b.editable)},[h,r,u,p]}class CodemirrorMarkdown extends SvelteComponent{constructor(e){super(),init(this,e,instance$g,create_fragment$g,safe_not_equal,{value:2,editable:0})}}function create_if_block$b(o){let e,n;return{c(){e=element("div"),n=text(o[3]),attr(e,"class","invalid-feedback d-block")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&8&&set_data(n,r[3])},d(r){r&&detach(e)}}}function create_fragment$f(o){let e,n,r,c,u;function h(y){o[5](y)}let p={editable:!o[1].readonly||o[2]};o[0]!==void 0&&(p.value=o[0]),n=new CodemirrorMarkdown({props:p}),binding_callbacks.push(()=>bind(n,"value",h));let b=o[3]&&create_if_block$b(o);return{c(){e=element("div"),create_component(n.$$.fragment),c=space$3(),b&&b.c(),attr(e,"class","mb-3")},m(y,k){insert$1(y,e,k),mount_component(n,e,null),append(e,c),b&&b.m(e,null),u=!0},p(y,[k]){const A={};k&6&&(A.editable=!y[1].readonly||y[2]),!r&&k&1&&(r=!0,A.value=y[0],add_flush_callback(()=>r=!1)),n.$set(A),y[3]?b?b.p(y,k):(b=create_if_block$b(y),b.c(),b.m(e,null)):b&&(b.d(1),b=null)},i(y){u||(transition_in(n.$$.fragment,y),u=!0)},o(y){transition_out(n.$$.fragment,y),u=!1},d(y){y&&detach(e),destroy_component(n),b&&b.d()}}}function instance$f(o,e,n){let r,{value:c}=e,{field:u}=e,{isCreateMode:h}=e,{validationErrors:p}=e;function b(y){c=y,n(0,c)}return o.$$set=y=>{"value"in y&&n(0,c=y.value),"field"in y&&n(1,u=y.field),"isCreateMode"in y&&n(2,h=y.isCreateMode),"validationErrors"in y&&n(4,p=y.validationErrors)},o.$$.update=()=>{o.$$.dirty&18&&n(3,r=getErrorMessage(p,u.name))},[c,u,h,r,p,b]}class Markdown extends SvelteComponent{constructor(e){super(),init(this,e,instance$f,create_fragment$f,safe_not_equal,{value:0,field:1,isCreateMode:2,validationErrors:4})}}function create_if_block$a(o){let e,n=o[0].help+"",r;return{c(){e=element("small"),r=text(n),attr(e,"class","help-text light-text")},m(c,u){insert$1(c,e,u),append(e,r)},p(c,u){u&1&&n!==(n=c[0].help+"")&&set_data(r,n)},d(c){c&&detach(e)}}}function create_fragment$e(o){let e,n,r,c,u=o[0].label+"",h,p,b,y,k,A=o[0].name+"",R,N=o[0].help&&create_if_block$a(o);return{c(){e=element("div"),n=element("div"),r=element("div"),c=element("label"),h=text(u),p=space$3(),N&&N.c(),b=space$3(),y=element("span"),k=element("code"),R=text(A),attr(c,"for",o[1]),attr(r,"class","label-and-help"),attr(k,"class","field-id"),attr(y,"tabindex","-1"),attr(y,"class","text-decoration-none"),attr(n,"class","labels"),attr(e,"class","field-header")},m(F,V){insert$1(F,e,V),append(e,n),append(n,r),append(r,c),append(c,h),append(r,p),N&&N.m(r,null),append(n,b),append(n,y),append(y,k),append(k,R)},p(F,[V]){V&1&&u!==(u=F[0].label+"")&&set_data(h,u),V&2&&attr(c,"for",F[1]),F[0].help?N?N.p(F,V):(N=create_if_block$a(F),N.c(),N.m(r,null)):N&&(N.d(1),N=null),V&1&&A!==(A=F[0].name+"")&&set_data(R,A)},i:noop,o:noop,d(F){F&&detach(e),N&&N.d()}}}function instance$e(o,e,n){let{field:r}=e,{id:c}=e;return o.$$set=u=>{"field"in u&&n(0,r=u.field),"id"in u&&n(1,c=u.id)},[r,c]}class FieldHeader extends SvelteComponent{constructor(e){super(),init(this,e,instance$e,create_fragment$e,safe_not_equal,{field:0,id:1})}}function get_each_context$6(o,e,n){const r=o.slice();return r[3]=e[n],r}function get_each_context_1$1(o,e,n){const r=o.slice();return r[24]=e[n],r}function create_if_block_3$4(o){let e,n;return{c(){e=element("div"),n=text(o[8]),attr(e,"class","invalid-feedback d-block mb-3")},m(r,c){insert$1(r,e,c),append(e,n)},p(r,c){c&256&&set_data(n,r[8])},d(r){r&&detach(e)}}}function create_if_block_2$4(o){let e=[],n=new Map,r,c=ensure_array_like(o[6]);const u=p=>p[24].id;for(let p=0;pp[3].id;for(let p=0;p0&&create_if_block$9(o);return{c(){e=element("div"),N&&N.c(),n=space$3(),r=element("input"),u=space$3(),h=element("div"),F&&F.c(),p=space$3(),V&&V.c(),b=space$3(),W&&W.c(),y=empty$1(),attr(r,"type","search"),attr(r,"id",o[2]),attr(r,"placeholder",c="Search for "+o[1].label),attr(r,"autocomplete","off"),toggle_class(r,"is-invalid",o[8]),attr(h,"class","reference-tags-results"),attr(e,"class","reference-tags")},m(J,te){insert$1(J,e,te),N&&N.m(e,null),append(e,n),append(e,r),o[15](r),set_input_value(r,o[5]),append(e,u),append(e,h),F&&F.m(h,null),append(h,p),V&&V.m(h,null),insert$1(J,b,te),W&&W.m(J,te),insert$1(J,y,te),k=!0,A||(R=[listen(r,"keyup",o[13]),listen(r,"input",o[16])],A=!0)},p(J,[te]){J[8]?N?N.p(J,te):(N=create_if_block_3$4(J),N.c(),N.m(e,n)):N&&(N.d(1),N=null),(!k||te&4)&&attr(r,"id",J[2]),(!k||te&2&&c!==(c="Search for "+J[1].label))&&attr(r,"placeholder",c),te&32&&r.value!==J[5]&&set_input_value(r,J[5]),(!k||te&256)&&toggle_class(r,"is-invalid",J[8]),J[6]?F?F.p(J,te):(F=create_if_block_2$4(J),F.c(),F.m(h,p)):F&&(F.d(1),F=null),J[5]?V?V.p(J,te):(V=create_if_block_1$7(J),V.c(),V.m(h,null)):V&&(V.d(1),V=null),J[7].length>0?W?(W.p(J,te),te&128&&transition_in(W,1)):(W=create_if_block$9(J),W.c(),transition_in(W,1),W.m(y.parentNode,y)):W&&(group_outros(),transition_out(W,1,1,()=>{W=null}),check_outros())},i(J){k||(transition_in(W),k=!0)},o(J){transition_out(W),k=!1},d(J){J&&(detach(e),detach(b),detach(y)),N&&N.d(),o[15](null),F&&F.d(),V&&V.d(),W&&W.d(J),A=!1,run_all(R)}}}function instance$d(o,e,n){let r,c,u;const h=getContext$1("channel");let{field:p}=e,{id:b}=e,{record:y}=e,{graph:k}=e,A,{validationErrors:R}=e,N="";function F(De,Be){De.preventDefault(),n(0,k.edges=k.edges.filter(Te=>!(Te.target===Be&&Te.field===p.name)),k)}function V(De,Be){De.preventDefault(),axios.post(h.lucentUrl+"/records",{isCreateMode:!0,record:{schema:p.collections[0],status:"published",data:{[p.searchField]:Be}}}).then(Te=>{n(6,u=[]),W(De,Te.data.records[0]),console.log(Te)}).catch(Te=>{n(6,u=[]),console.log(Te)})}function W(De,Be){De.preventDefault(),n(0,k=insertEdges(k,y,[Be],p.name,De.detail.action)),n(5,N=""),A.focus(),A.blur()}const J=lodashExports.debounce(De=>{axios.get(h.lucentUrl+"/records/suggestions",{params:{schema:p.collections[0],field:p.searchField,value:N,ui:"text"}}).then(Be=>{n(6,u=Be.data)}).catch(Be=>{n(6,u=[]),console.log(Be)})},500);function te(De){binding_callbacks[De?"unshift":"push"](()=>{A=De,n(4,A)})}function j(){N=this.value,n(5,N)}const ae=(De,Be)=>W(Be,De),fe=(De,Be)=>W(Be,De),_e=De=>V(De,N),ne=De=>V(De,N),Se=(De,Be)=>F(Be,De.id);return o.$$set=De=>{"field"in De&&n(1,p=De.field),"id"in De&&n(2,b=De.id),"record"in De&&n(3,y=De.record),"graph"in De&&n(0,k=De.graph),"validationErrors"in De&&n(14,R=De.validationErrors)},o.$$.update=()=>{o.$$.dirty&16386&&n(8,r=getErrorMessage(R,p.name)),o.$$.dirty&11&&n(7,c=k.edges.filter(De=>De.field===p.name).map(De=>k.records.find(Be=>Be.id==De.target&&y.id==De.source)).filter(De=>!!(De!=null&&De.id))??[])},n(6,u=[]),[k,p,b,y,A,N,u,c,r,h,F,V,W,J,R,te,j,ae,fe,_e,ne,Se]}class ReferenceTags extends SvelteComponent{constructor(e){super(),init(this,e,instance$d,create_fragment$d,safe_not_equal,{field:1,id:2,record:3,graph:0,validationErrors:14})}}function create_else_block$5(o){let e,n,r,c;function u(b){o[17](b)}var h=o[7];function p(b,y){let k={schema:b[3],field:b[2],validationErrors:b[5],isCreateMode:b[6],id:b[8]};return b[0][b[2].name]!==void 0&&(k.value=b[0][b[2].name]),{props:k}}return h&&(e=construct_svelte_component(h,p(o)),binding_callbacks.push(()=>bind(e,"value",u))),{c(){e&&create_component(e.$$.fragment),r=empty$1()},m(b,y){e&&mount_component(e,b,y),insert$1(b,r,y),c=!0},p(b,y){if(h!==(h=b[7])){if(e){group_outros();const k=e;transition_out(k.$$.fragment,1,0,()=>{destroy_component(k,1)}),check_outros()}h?(e=construct_svelte_component(h,p(b)),binding_callbacks.push(()=>bind(e,"value",u)),create_component(e.$$.fragment),transition_in(e.$$.fragment,1),mount_component(e,r.parentNode,r)):e=null}else if(h){const k={};y&8&&(k.schema=b[3]),y&4&&(k.field=b[2]),y&32&&(k.validationErrors=b[5]),y&64&&(k.isCreateMode=b[6]),!n&&y&5&&(n=!0,k.value=b[0][b[2].name],add_flush_callback(()=>n=!1)),e.$set(k)}},i(b){c||(e&&transition_in(e.$$.fragment,b),c=!0)},o(b){e&&transition_out(e.$$.fragment,b),c=!1},d(b){b&&detach(r),e&&destroy_component(e,b)}}}function create_if_block_6(o){let e,n,r,c;function u(b){o[15](b)}function h(b){o[16](b)}let p={schema:o[3],field:o[2],validationErrors:o[5],isCreateMode:o[6],record:o[4]};return o[0][o[2].name]!==void 0&&(p.value=o[0][o[2].name]),o[1]!==void 0&&(p.graph=o[1]),e=new RichEditor({props:p}),binding_callbacks.push(()=>bind(e,"value",u)),binding_callbacks.push(()=>bind(e,"graph",h)),{c(){create_component(e.$$.fragment)},m(b,y){mount_component(e,b,y),c=!0},p(b,y){const k={};y&8&&(k.schema=b[3]),y&4&&(k.field=b[2]),y&32&&(k.validationErrors=b[5]),y&64&&(k.isCreateMode=b[6]),y&16&&(k.record=b[4]),!n&&y&5&&(n=!0,k.value=b[0][b[2].name],add_flush_callback(()=>n=!1)),!r&&y&2&&(r=!0,k.graph=b[1],add_flush_callback(()=>r=!1)),e.$set(k)},i(b){c||(transition_in(e.$$.fragment,b),c=!0)},o(b){transition_out(e.$$.fragment,b),c=!1},d(b){destroy_component(e,b)}}}function create_if_block_5$1(o){let e,n,r;function c(h){o[14](h)}let u={field:o[2],validationErrors:o[5],isCreateMode:o[6],id:o[8]};return o[0][o[2].name]!==void 0&&(u.value=o[0][o[2].name]),e=new Textarea({props:u}),binding_callbacks.push(()=>bind(e,"value",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),p&64&&(b.isCreateMode=h[6]),!n&&p&5&&(n=!0,b.value=h[0][h[2].name],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block_4$2(o){let e,n,r;function c(h){o[13](h)}let u={field:o[2],id:o[8],validationErrors:o[5],isCreateMode:o[6]};return o[0][o[2].name]!==void 0&&(u.value=o[0][o[2].name]),e=new Slug({props:u}),binding_callbacks.push(()=>bind(e,"value",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),p&64&&(b.isCreateMode=h[6]),!n&&p&5&&(n=!0,b.value=h[0][h[2].name],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block_3$3(o){let e,n,r;function c(h){o[12](h)}let u={field:o[2],id:o[8],validationErrors:o[5],isCreateMode:o[6]};return o[0][o[2].name]!==void 0&&(u.value=o[0][o[2].name]),e=new Text$2({props:u}),binding_callbacks.push(()=>bind(e,"value",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),p&64&&(b.isCreateMode=h[6]),!n&&p&5&&(n=!0,b.value=h[0][h[2].name],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block_2$3(o){let e,n,r;function c(h){o[11](h)}let u={record:o[4],field:o[2],validationErrors:o[5]};return o[1]!==void 0&&(u.graph=o[1]),e=new File$1({props:u}),binding_callbacks.push(()=>bind(e,"graph",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&16&&(b.record=h[4]),p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),!n&&p&2&&(n=!0,b.graph=h[1],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block_1$6(o){let e,n,r;function c(h){o[10](h)}let u={id:o[8],record:o[4],field:o[2],validationErrors:o[5]};return o[1]!==void 0&&(u.graph=o[1]),e=new Reference({props:u}),binding_callbacks.push(()=>bind(e,"graph",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&16&&(b.record=h[4]),p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),!n&&p&2&&(n=!0,b.graph=h[1],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_if_block$8(o){let e,n,r;function c(h){o[9](h)}let u={id:o[8],record:o[4],field:o[2],validationErrors:o[5]};return o[1]!==void 0&&(u.graph=o[1]),e=new ReferenceTags({props:u}),binding_callbacks.push(()=>bind(e,"graph",c)),{c(){create_component(e.$$.fragment)},m(h,p){mount_component(e,h,p),r=!0},p(h,p){const b={};p&16&&(b.record=h[4]),p&4&&(b.field=h[2]),p&32&&(b.validationErrors=h[5]),!n&&p&2&&(n=!0,b.graph=h[1],add_flush_callback(()=>n=!1)),e.$set(b)},i(h){r||(transition_in(e.$$.fragment,h),r=!0)},o(h){transition_out(e.$$.fragment,h),r=!1},d(h){destroy_component(e,h)}}}function create_fragment$c(o){let e,n,r,c,u,h;n=new FieldHeader({props:{field:o[2],id:o[8]}});const p=[create_if_block$8,create_if_block_1$6,create_if_block_2$3,create_if_block_3$3,create_if_block_4$2,create_if_block_5$1,create_if_block_6,create_else_block$5],b=[];function y(k,A){return k[2].info.name==="reference"&&k[2].layout==="tags"?0:k[2].info.name==="reference"?1:k[2].info.name==="file"?2:k[2].info.name==="text"?3:k[2].info.name==="slug"?4:k[2].info.name==="textarea"?5:k[2].info.name==="rich"?6:7}return c=y(o),u=b[c]=p[c](o),{c(){e=element("div"),create_component(n.$$.fragment),r=space$3(),u.c(),attr(e,"class","editor-field")},m(k,A){insert$1(k,e,A),mount_component(n,e,null),append(e,r),b[c].m(e,null),h=!0},p(k,[A]){const R={};A&4&&(R.field=k[2]),n.$set(R);let N=c;c=y(k),c===N?b[c].p(k,A):(group_outros(),transition_out(b[N],1,1,()=>{b[N]=null}),check_outros(),u=b[c],u?u.p(k,A):(u=b[c]=p[c](k),u.c()),transition_in(u,1),u.m(e,null))},i(k){h||(transition_in(n.$$.fragment,k),transition_in(u),h=!0)},o(k){transition_out(n.$$.fragment,k),transition_out(u),h=!1},d(k){k&&detach(e),destroy_component(n),b[c].d()}}}function instance$c(o,e,n){const r={text:Text$2,slug:Slug,textarea:Textarea,rich:RichEditor,color:Color,checkbox:Checkbox,number:Number$1,url:Url,date:Date$1,datetime:Datetime,uuid:UUID,json:JSON$1,markdown:Markdown};let{field:c}=e,{data:u}=e,{schema:h}=e,{record:p}=e,{graph:b}=e,{validationErrors:y}=e,{isCreateMode:k}=e,A=r[c.info.name];const R=`field-${c.name}-${p.id}`;function N(_e){b=_e,n(1,b)}function F(_e){b=_e,n(1,b)}function V(_e){b=_e,n(1,b)}function W(_e){o.$$.not_equal(u[c.name],_e)&&(u[c.name]=_e,n(0,u))}function J(_e){o.$$.not_equal(u[c.name],_e)&&(u[c.name]=_e,n(0,u))}function te(_e){o.$$.not_equal(u[c.name],_e)&&(u[c.name]=_e,n(0,u))}function j(_e){o.$$.not_equal(u[c.name],_e)&&(u[c.name]=_e,n(0,u))}function ae(_e){b=_e,n(1,b)}function fe(_e){o.$$.not_equal(u[c.name],_e)&&(u[c.name]=_e,n(0,u))}return o.$$set=_e=>{"field"in _e&&n(2,c=_e.field),"data"in _e&&n(0,u=_e.data),"schema"in _e&&n(3,h=_e.schema),"record"in _e&&n(4,p=_e.record),"graph"in _e&&n(1,b=_e.graph),"validationErrors"in _e&&n(5,y=_e.validationErrors),"isCreateMode"in _e&&n(6,k=_e.isCreateMode)},[u,b,c,h,p,y,k,A,R,N,F,V,W,J,te,j,ae,fe]}class FormField extends SvelteComponent{constructor(e){super(),init(this,e,instance$c,create_fragment$c,safe_not_equal,{field:2,data:0,schema:3,record:4,graph:1,validationErrors:5,isCreateMode:6})}}function get_each_context$5(o,e,n){const r=o.slice();return r[3]=e[n],r}function create_else_block$4(o){let e;return{c(){e=text("Nothing links to this record")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_each_block$5(o){let e,n,r,c,u,h,p,b,y;return p=new PreviewReference({props:{record:o[3].record,hasDelete:!1,graph:o[0]}}),{c(){e=element("div"),n=element("span"),r=text("In "),c=element("i"),c.textContent=`${o[3].field}`,u=text(" of"),h=space$3(),create_component(p.$$.fragment),b=space$3(),set_style(n,"font-size","14px"),set_style(n,"margin-bottom","5px"),set_style(n,"display","block"),set_style(e,"margin","0 0 15px"),set_style(e,"position","relative")},m(k,A){insert$1(k,e,A),append(e,n),append(n,r),append(n,c),append(n,u),append(e,h),mount_component(p,e,null),append(e,b),y=!0},p(k,A){const R={};A&1&&(R.graph=k[0]),p.$set(R)},i(k){y||(transition_in(p.$$.fragment,k),y=!0)},o(k){transition_out(p.$$.fragment,k),y=!1},d(k){k&&detach(e),destroy_component(p)}}}function create_fragment$b(o){let e,n,r=ensure_array_like(o[1]),c=[];for(let p=0;ptransition_out(c[p],1,1,()=>{c[p]=null});let h=null;return r.length||(h=create_else_block$4()),{c(){e=element("div");for(let p=0;pn.name===e)}function instance$b(o,e,n){const r=getContext$1("channel");let{graph:c}=e,u=c.parentEdges.map(h=>{let p=r.schemas.find(y=>y.name===h.sourceSchema);return{field:findEdgeField(p,h.field).label,record:c.records.find(y=>y.id===h.source)}});return o.$$set=h=>{"graph"in h&&n(0,c=h.graph)},[c,u]}class Graph extends SvelteComponent{constructor(e){super(),init(this,e,instance$b,create_fragment$b,safe_not_equal,{graph:0})}}function get_each_context$4(o,e,n){const r=o.slice();return r[4]=e[n],r}function create_else_block_1$1(o){let e,n=(JSON.stringify(o[1])??"")+"",r,c;return{c(){e=element("div"),r=text(n),attr(e,"class",c=o[3]+" field-content svelte-md34ba")},m(u,h){insert$1(u,e,h),append(e,r)},p(u,h){h&2&&n!==(n=(JSON.stringify(u[1])??"")+"")&&set_data(r,n),h&8&&c!==(c=u[3]+" field-content svelte-md34ba")&&attr(e,"class",c)},i:noop,o:noop,d(u){u&&detach(e)}}}function create_if_block_3$2(o){let e,n=(o[1]??"")+"",r;return{c(){e=element("div"),attr(e,"class",r=o[3]+" field-content svelte-md34ba")},m(c,u){insert$1(c,e,u),e.innerHTML=n},p(c,u){u&2&&n!==(n=(c[1]??"")+"")&&(e.innerHTML=n),u&8&&r!==(r=c[3]+" field-content svelte-md34ba")&&attr(e,"class",r)},i:noop,o:noop,d(c){c&&detach(e)}}}function create_if_block_2$2(o){let e,n=(JSON.stringify(o[1],null,2)??"")+"",r,c;return{c(){e=element("div"),r=text(n),attr(e,"class",c=o[3]+" field-content svelte-md34ba"),set_style(e,"white-space","break-spaces")},m(u,h){insert$1(u,e,h),append(e,r)},p(u,h){h&2&&n!==(n=(JSON.stringify(u[1],null,2)??"")+"")&&set_data(r,n),h&8&&c!==(c=u[3]+" field-content svelte-md34ba")&&attr(e,"class",c)},i:noop,o:noop,d(u){u&&detach(e)}}}function create_if_block$7(o){let e,n,r,c,u=ensure_array_like(o[2][o[0].name]),h=[];for(let b=0;btransition_out(h[b],1,1,()=>{h[b]=null});return{c(){e=element("div"),n=element("div");for(let b=0;b{h[k]=null}),check_outros(),n=h[e],n?n.p(b,y):(n=h[e]=u[e](b),n.c()),transition_in(n,1),n.m(r.parentNode,r))},i(b){c||(transition_in(n),c=!0)},o(b){transition_out(n),c=!1},d(b){b&&detach(r),h[e].d(b)}}}function create_fragment$a(o){let e,n,r,c,u,h;const p=[create_if_block$7,create_if_block_2$2,create_if_block_3$2,create_else_block_1$1],b=[];function y(k,A){return A&1&&(e=null),A&1&&(n=null),e==null&&(e=!!["reference","file"].includes(k[0].info.name)),e?0:(n==null&&(n=!!["json","block"].includes(k[0].info.name)),n?1:k[0].info.name==="rich"?2:3)}return r=y(o,-1),c=b[r]=p[r](o),{c(){c.c(),u=empty$1()},m(k,A){b[r].m(k,A),insert$1(k,u,A),h=!0},p(k,[A]){let R=r;r=y(k,A),r===R?b[r].p(k,A):(group_outros(),transition_out(b[R],1,1,()=>{b[R]=null}),check_outros(),c=b[r],c?c.p(k,A):(c=b[r]=p[r](k),c.c()),transition_in(c,1),c.m(u.parentNode,u))},i(k){h||(transition_in(c),h=!0)},o(k){transition_out(c),h=!1},d(k){k&&detach(u),b[r].d(k)}}}function instance$a(o,e,n){let{field:r}=e,{side:c}=e,{edges:u}=e,{colorClass:h}=e;return o.$$set=p=>{"field"in p&&n(0,r=p.field),"side"in p&&n(1,c=p.side),"edges"in p&&n(2,u=p.edges),"colorClass"in p&&n(3,h=p.colorClass)},[r,c,u,h]}class RevisionCell extends SvelteComponent{constructor(e){super(),init(this,e,instance$a,create_fragment$a,safe_not_equal,{field:0,side:1,edges:2,colorClass:3})}}function create_fragment$9(o){let e,n,r,c=o[0].rank+"",u,h,p,b,y,k=o[0].target+"",A,R;return{c(){e=element("div"),n=element("span"),r=text("Rank: "),u=text(c),h=space$3(),p=element("span"),p.textContent="id:",b=space$3(),y=element("a"),A=text(k),attr(n,"class","me-3"),attr(y,"href",R=o[1].lucentUrl+"/records/"+o[0].target),attr(y,"target","_blank")},m(N,F){insert$1(N,e,F),append(e,n),append(n,r),append(n,u),append(e,h),append(e,p),append(e,b),append(e,y),append(y,A)},p(N,[F]){F&1&&c!==(c=N[0].rank+"")&&set_data(u,c),F&1&&k!==(k=N[0].target+"")&&set_data(A,k),F&1&&R!==(R=N[1].lucentUrl+"/records/"+N[0].target)&&attr(y,"href",R)},i:noop,o:noop,d(N){N&&detach(e)}}}function instance$9(o,e,n){const r=getContext$1("channel");let{edge:c}=e;return o.$$set=u=>{"edge"in u&&n(0,c=u.edge)},[c,r]}class RevisionEdgeRow extends SvelteComponent{constructor(e){super(),init(this,e,instance$9,create_fragment$9,safe_not_equal,{edge:0})}}function get_each_context$3(o,e,n){const r=o.slice();return r[16]=e[n][0],r[17]=e[n][1],r}function get_each_context_1(o,e,n){const r=o.slice();return r[20]=e[n],r}function get_each_context_2(o,e,n){const r=o.slice();return r[20]=e[n],r}function get_each_context_3(o,e,n){const r=o.slice();return r[16]=e[n],r}function get_each_context_4(o,e,n){const r=o.slice();return r[27]=e[n],r}function create_else_block_3(o){let e;return{c(){e=element("div"),e.innerHTML="Revisions are not enabled for this Schema",attr(e,"class","card-body")},m(n,r){insert$1(n,e,r)},p:noop,i:noop,o:noop,d(n){n&&detach(e)}}}function create_if_block_3$1(o){let e,n,r,c,u=ensure_array_like(o[8]),h=[];for(let b=0;btransition_out(h[b],1,1,()=>{h[b]=null});return{c(){e=element("div"),e.textContent="Revisions",n=space$3();for(let b=0;b{r=null}),check_outros())},i(c){n||(transition_in(r),n=!0)},o(c){transition_out(r),n=!1},d(c){c&&detach(e),r&&r.d(c)}}}function create_if_block$6(o){let e,n,r,c,u,h,p,b;const y=[create_if_block_1$4,create_else_block_2],k=[];function A(V,W){return V[6].length>0?0:1}n=A(o),r=k[n]=y[n](o);let R=ensure_array_like(Object.entries(o[7])),N=[];for(let V=0;Vtransition_out(N[V],1,1,()=>{N[V]=null});return{c(){e=element("div"),r.c(),c=space$3(),u=element("div"),h=element("p"),h.textContent="Record References",p=space$3();for(let V=0;V{k[J]=null}),check_outros(),r=k[n],r?r.p(V,W):(r=k[n]=y[n](V),r.c()),transition_in(r,1),r.m(e,c)),W&128){R=ensure_array_like(Object.entries(V[7]));let te;for(te=0;teNothing will change
    ",attr(e,"class","lx-card text-center")},m(n,r){insert$1(n,e,r)},p:noop,i:noop,o:noop,d(n){n&&detach(e)}}}function create_if_block_1$4(o){let e,n,r,c,u=o[5]._sys.version+"",h,p,b,y,k,A,R,N=o[4]&&create_if_block_2$1(o),F=ensure_array_like(o[6]),V=[];for(let J=0;Jtransition_out(V[J],1,1,()=>{V[J]=null});return{c(){e=element("p"),e.textContent="If you choose to rollback to this revision",n=space$3(),r=element("button"),c=text("Rollback to version "),h=text(u),p=space$3(),N&&N.c(),b=space$3(),y=element("div");for(let J=0;Jtransition_out(J[Se],1,1,()=>{J[Se]=null});let j=null;W.length||(j=create_else_block_1());let ae=ensure_array_like(o[17].revision),fe=[];for(let Se=0;Setransition_out(fe[Se],1,1,()=>{fe[Se]=null});let ne=null;return ae.length||(ne=create_else_block$2()),{c(){e=element("div"),n=element("div"),c=text(r),u=text(":"),h=space$3(),p=element("div"),b=element("p"),b.textContent="Record",y=space$3();for(let Se=0;Se0?0:1}mt=gt(o),de=cs[mt]=po[mt](o);let Ut=o[5]&&create_if_block$6(o);return{c(){e=element("div"),n=element("div"),r=element("div"),c=element("div"),u=element("span"),u.textContent="record id",h=space$3(),p=element("small"),y=text(b),k=space$3(),A=element("div"),R=element("span"),R.textContent="current version",N=space$3(),V=text(F),W=space$3(),J=element("div"),te=element("span"),te.textContent="created",j=space$3(),create_component(ae.$$.fragment),fe=space$3(),ne=text(_e),Se=space$3(),De=element("div"),Be=element("span"),Be.textContent="updated",Te=space$3(),create_component(Oe.$$.fragment),yt=space$3(),St=text(Tt),q=space$3(),Le=element("div"),je=element("span"),je.textContent="Rules for this schema",mn=space$3(),Rt=element("small"),Ue=text("Each record maintains the last "),dn=text(ct),Zt=text(` - versions`),rn=space$3(),Fe=element("div"),de.c(),Eo=space$3(),jn=element("div"),Ut&&Ut.c(),attr(u,"class","label text-end text-muted"),attr(R,"class","label text-end text-muted"),attr(te,"class","label text-end text-muted"),attr(Be,"class","label text-end text-muted"),attr(r,"class","col-8"),attr(je,"class","label d-block text-muted "),attr(Le,"class","col-4"),attr(n,"class","row"),attr(e,"class","lx-card "),attr(Fe,"class","revisions")},m(pt,Ne){insert$1(pt,e,Ne),append(e,n),append(n,r),append(r,c),append(c,u),append(c,h),append(c,p),append(p,y),append(r,k),append(r,A),append(A,R),append(A,N),append(A,V),append(r,W),append(r,J),append(J,te),append(J,j),mount_component(ae,J,null),append(J,fe),append(J,ne),append(r,Se),append(r,De),append(De,Be),append(De,Te),mount_component(Oe,De,null),append(De,yt),append(De,St),append(n,q),append(n,Le),append(Le,je),append(Le,mn),append(Le,Rt),append(Rt,Ue),append(Rt,dn),append(Rt,Zt),insert$1(pt,rn,Ne),insert$1(pt,Fe,Ne),cs[mt].m(Fe,null),insert$1(pt,Eo,Ne),insert$1(pt,jn,Ne),Ut&&Ut.m(jn,null),o[13](jn),Yn=!0},p(pt,[Ne]){(!Yn||Ne&1)&&b!==(b=pt[0].id+"")&&set_data(y,b),(!Yn||Ne&1)&&F!==(F=pt[0]._sys.version+"")&&set_data(V,F);const Nt={};Ne&3&&(Nt.name=usernameById(pt[1],pt[0]._sys.createdBy)),ae.$set(Nt),(!Yn||Ne&1)&&_e!==(_e=friendlyDate(pt[0]._sys.createdAt)+"")&&set_data(ne,_e);const pn={};Ne&3&&(pn.name=usernameById(pt[1],pt[0]._sys.updatedBy)),Oe.$set(pn),(!Yn||Ne&1)&&Tt!==(Tt=friendlyDate(pt[0]._sys.updatedAt)+"")&&set_data(St,Tt),(!Yn||Ne&4)&&ct!==(ct=pt[2].revisions+"")&&set_data(dn,ct);let xt=mt;mt=gt(pt),mt===xt?cs[mt].p(pt,Ne):(group_outros(),transition_out(cs[xt],1,1,()=>{cs[xt]=null}),check_outros(),de=cs[mt],de?de.p(pt,Ne):(de=cs[mt]=po[mt](pt),de.c()),transition_in(de,1),de.m(Fe,null)),pt[5]?Ut?(Ut.p(pt,Ne),Ne&32&&transition_in(Ut,1)):(Ut=create_if_block$6(pt),Ut.c(),transition_in(Ut,1),Ut.m(jn,null)):Ut&&(group_outros(),transition_out(Ut,1,1,()=>{Ut=null}),check_outros())},i(pt){Yn||(transition_in(ae.$$.fragment,pt),transition_in(Oe.$$.fragment,pt),transition_in(de),transition_in(Ut),Yn=!0)},o(pt){transition_out(ae.$$.fragment,pt),transition_out(Oe.$$.fragment,pt),transition_out(de),transition_out(Ut),Yn=!1},d(pt){pt&&(detach(e),detach(rn),detach(Fe),detach(Eo),detach(jn)),destroy_component(ae),destroy_component(Oe),cs[mt].d(),Ut&&Ut.d(),o[13](null)}}}function instance$8(o,e,n){let r,c,u,h;const p=getContext$1("channel");let{record:b}=e,{graph:y}=e,{users:k}=e,{schema:A}=e,R,N="";axios.get(`${p.lucentUrl}/records/${b.id}/revisions`).then(j=>{n(8,r=j.data)}).catch(j=>{console.log(j)});function F(j,ae){n(7,h=y.edges.filter(fe=>fe.depth===1).reduce((fe,_e)=>(fe[_e.field]||(fe[_e.field]={record:[],revision:[]}),fe[_e.field].record.push(_e),fe),{})),n(7,h=ae._edges.reduce((fe,_e)=>(fe[_e.field]||(fe[_e.field]={record:[],revision:[]}),fe[_e.field].revision.push(_e),fe),h))}function V(j,ae){j.preventDefault(),n(5,u=ae),n(6,c=A.fields.filter(fe=>!lodashExports.isEqual(u.data[fe.name],b.data[fe.name]))),F(c,ae),R.scrollIntoView()}function W(j){j.preventDefault(),n(4,N=""),axios.post(`${p.lucentUrl}/records/${b.id}/rollback/${u._sys.version}`).then(ae=>{window.location.reload()}).catch(ae=>{const fe=ae.response.data.error;n(4,N=fe.fieldLabel+": "+fe.message)})}const J=(j,ae)=>V(ae,j);function te(j){binding_callbacks[j?"unshift":"push"](()=>{R=j,n(3,R)})}return o.$$set=j=>{"record"in j&&n(0,b=j.record),"graph"in j&&n(11,y=j.graph),"users"in j&&n(1,k=j.users),"schema"in j&&n(2,A=j.schema)},n(8,r=[]),n(6,c=[]),n(5,u=null),n(7,h={}),[b,k,A,R,N,u,c,h,r,V,W,y,J,te]}class Info extends SvelteComponent{constructor(e){super(),init(this,e,instance$8,create_fragment$8,safe_not_equal,{record:0,graph:11,users:1,schema:2})}}const{window:window_1}=globals;function get_each_context$2(o,e,n){const r=o.slice();return r[21]=e[n],r}function create_if_block_5(o){let e,n,r;return{c(){e=element("button"),e.innerHTML=` - Save`,attr(e,"type","button"),attr(e,"class","button primary ms-2 btn btn-primary btn-spinner")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[11]),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_if_block_4(o){let e,n,r;return{c(){e=element("button"),e.innerHTML=` - Create`,attr(e,"class","button primary btn-spinner")},m(c,u){insert$1(c,e,u),n||(r=listen(e,"click",o[11]),n=!0)},p:noop,d(c){c&&detach(e),n=!1,r()}}}function create_if_block_3(o){let e,n;return e=new Info({props:{record:o[0],graph:o[1],users:o[4],schema:o[2]}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&1&&(u.record=r[0]),c&2&&(u.graph=r[1]),c&16&&(u.users=r[4]),c&4&&(u.schema=r[2]),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_2(o){let e,n;return e=new Graph({props:{graph:o[1],record:o[0]}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&2&&(u.graph=r[1]),c&1&&(u.record=r[0]),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block$5(o){let e,n,r=[],c=new Map,u,h;e=new FilePreview({props:{record:o[0],schema:o[2]}});let p=ensure_array_like(o[9]);const b=y=>y[21].name;for(let y=0;ybind(e,"data",u)),binding_callbacks.push(()=>bind(e,"graph",h)),{c(){create_component(e.$$.fragment)},m(b,y){mount_component(e,b,y),c=!0},p(b,y){const k={};y&4&&(k.schema=b[2]),y&1&&(k.record=b[0]),y&32&&(k.validationErrors=b[5]),y&8&&(k.isCreateMode=b[3]),!n&&y&1&&(n=!0,k.data=b[0].data,add_flush_callback(()=>n=!1)),!r&&y&2&&(r=!0,k.graph=b[1],add_flush_callback(()=>r=!1)),e.$set(k)},i(b){c||(transition_in(e.$$.fragment,b),c=!0)},o(b){transition_out(e.$$.fragment,b),c=!1},d(b){destroy_component(e,b)}}}function create_each_block$2(o,e){let n,r,c,u=e[6]===e[21].group&&create_if_block_1$3(e);return{key:o,first:null,c(){n=empty$1(),u&&u.c(),r=empty$1(),this.first=n},m(h,p){insert$1(h,n,p),u&&u.m(h,p),insert$1(h,r,p),c=!0},p(h,p){e=h,e[6]===e[21].group?u?(u.p(e,p),p&64&&transition_in(u,1)):(u=create_if_block_1$3(e),u.c(),transition_in(u,1),u.m(r.parentNode,r)):u&&(group_outros(),transition_out(u,1,1,()=>{u=null}),check_outros())},i(h){c||(transition_in(u),c=!0)},o(h){transition_out(u),c=!1},d(h){h&&(detach(n),detach(r)),u&&u.d(h)}}}function create_fragment$7(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W,J,te,j,ae,fe;function _e(Le){o[12](Le)}function ne(Le){o[13](Le)}let Se={schema:o[2],isCreateMode:o[3]};o[0]!==void 0&&(Se.record=o[0]),o[6]!==void 0&&(Se.activeContentTab=o[6]),r=new EditHeader({props:Se}),binding_callbacks.push(()=>bind(r,"record",_e)),binding_callbacks.push(()=>bind(r,"activeContentTab",ne));function De(Le,je){if(Le[3])return create_if_block_4;if(Le[8])return create_if_block_5}let Be=De(o),Te=Be&&Be(o);b=new Title({props:{schema:o[2],record:o[0],isCreateMode:o[3]}}),k=new ErrorAlert({props:{message:o[7]}});function Oe(Le){o[14](Le)}let yt={schema:o[2],isCreateMode:o[3]};o[6]!==void 0&&(yt.active=o[6]),N=new ContentTabs({props:yt}),binding_callbacks.push(()=>bind(N,"active",Oe));const Tt=[create_if_block$5,create_if_block_2,create_if_block_3],St=[];function q(Le,je){return je&64&&(W=null),W==null&&(W=!["_graph","_info"].includes(Le[6])),W?0:Le[6]==="_graph"?1:Le[6]==="_info"?2:-1}return~(J=q(o,-1))&&(te=St[J]=Tt[J](o)),{c(){e=element("div"),n=element("div"),create_component(r.$$.fragment),h=space$3(),Te&&Te.c(),p=space$3(),create_component(b.$$.fragment),y=space$3(),create_component(k.$$.fragment),A=space$3(),R=element("div"),create_component(N.$$.fragment),V=space$3(),te&&te.c(),attr(n,"class","tools-header"),attr(R,"class","mt-4"),set_style(R,"margin-bottom","150px"),set_style(R,"position","relative"),attr(e,"class","record-edit")},m(Le,je){insert$1(Le,e,je),append(e,n),mount_component(r,n,null),append(n,h),Te&&Te.m(n,null),append(e,p),mount_component(b,e,null),append(e,y),mount_component(k,e,null),append(e,A),append(e,R),mount_component(N,R,null),append(R,V),~J&&St[J].m(R,null),j=!0,ae||(fe=listen(window_1,"beforeunload",o[10]),ae=!0)},p(Le,[je]){const mn={};je&4&&(mn.schema=Le[2]),je&8&&(mn.isCreateMode=Le[3]),!c&&je&1&&(c=!0,mn.record=Le[0],add_flush_callback(()=>c=!1)),!u&&je&64&&(u=!0,mn.activeContentTab=Le[6],add_flush_callback(()=>u=!1)),r.$set(mn),Be===(Be=De(Le))&&Te?Te.p(Le,je):(Te&&Te.d(1),Te=Be&&Be(Le),Te&&(Te.c(),Te.m(n,null)));const Rt={};je&4&&(Rt.schema=Le[2]),je&1&&(Rt.record=Le[0]),je&8&&(Rt.isCreateMode=Le[3]),b.$set(Rt);const Ue={};je&128&&(Ue.message=Le[7]),k.$set(Ue);const ct={};je&4&&(ct.schema=Le[2]),je&8&&(ct.isCreateMode=Le[3]),!F&&je&64&&(F=!0,ct.active=Le[6],add_flush_callback(()=>F=!1)),N.$set(ct);let dn=J;J=q(Le,je),J===dn?~J&&St[J].p(Le,je):(te&&(group_outros(),transition_out(St[dn],1,1,()=>{St[dn]=null}),check_outros()),~J?(te=St[J],te?te.p(Le,je):(te=St[J]=Tt[J](Le),te.c()),transition_in(te,1),te.m(R,null)):te=null)},i(Le){j||(transition_in(r.$$.fragment,Le),transition_in(b.$$.fragment,Le),transition_in(k.$$.fragment,Le),transition_in(N.$$.fragment,Le),transition_in(te),j=!0)},o(Le){transition_out(r.$$.fragment,Le),transition_out(b.$$.fragment,Le),transition_out(k.$$.fragment,Le),transition_out(N.$$.fragment,Le),transition_out(te),j=!1},d(Le){Le&&detach(e),destroy_component(r),Te&&Te.d(),destroy_component(b),destroy_component(k),destroy_component(N),~J&&St[J].d(),ae=!1,fe()}}}function instance$7(o,e,n){let r,c,u;const h=getContext$1("channel");let{schema:p}=e,{record:b}=e,{graph:y={records:[],edges:[]}}=e,{isCreateMode:k}=e,{users:A}=e,R,N="",F=p.fields.filter(Se=>Se.name!=="id");onMount(()=>{V()});function V(){R={data:JSON.parse(JSON.stringify(b.data)),schema:b.schema,status:b.status,_sys:JSON.parse(JSON.stringify(b._sys)),_file:JSON.parse(JSON.stringify(b._file)),edges:JSON.parse(JSON.stringify(y.edges))}}afterUpdate(()=>{n(8,r=J())});function W(Se){return r?Se.returnValue="You have unsaved changes. Are you sure you want to exit?":(delete Se.returnValue,"...")}function J(){return k?!1:!lodashExports.isEqual(R,{data:b.data,schema:b.schema,status:b.status,_sys:b._sys,_file:b._file,edges:y.edges})}function te(Se){return Se.preventDefault(),console.log("SAVE: Attempt"),n(5,c=null),n(7,u=""),new Promise(function(De,Be){var Te;if(!r&&!k){De(null);return}if(!b){De(null);return}n(1,y.edges=(Te=y.edges)==null?void 0:Te.filter(Oe=>!Oe._isTrashed&&Oe.source===b.id),y),axios$1.post(h.lucentUrl+"/records",{record:b,edges:y.edges,isCreateMode:k}).then(function(Oe){if(console.log("SAVE: SAVED"),k)window.location=h.lucentUrl+"/records/"+b.id;else{if(n(0,b=Oe.data.records[0]??null),!b){n(8,r=!1),window.location=h.lucentUrl;return}n(1,y=Oe.data),V()}De(null)}).catch(function(Oe){Oe.response&&(typeof Oe.response.data.error=="string"?n(7,u=Oe.response.data.error):(n(5,c=Oe.response.data.error),console.log(c))),De(null)})})}function j(Se){b=Se,n(0,b)}function ae(Se){N=Se,n(6,N)}function fe(Se){N=Se,n(6,N)}function _e(Se){o.$$.not_equal(b.data,Se)&&(b.data=Se,n(0,b))}function ne(Se){y=Se,n(1,y)}return o.$$set=Se=>{"schema"in Se&&n(2,p=Se.schema),"record"in Se&&n(0,b=Se.record),"graph"in Se&&n(1,y=Se.graph),"isCreateMode"in Se&&n(3,k=Se.isCreateMode),"users"in Se&&n(4,A=Se.users)},o.$$.update=()=>{o.$$.dirty&32&&n(7,u=c?`Record submission failed. ${Object.entries(c).length} error(s)`:null)},n(8,r=!1),n(5,c=null),[b,y,p,k,A,c,N,u,r,F,W,te,j,ae,fe,_e,ne]}class Edit extends SvelteComponent{constructor(e){super(),init(this,e,instance$7,create_fragment$7,safe_not_equal,{schema:2,record:0,graph:1,isCreateMode:3,users:4})}}function get_each_context$1(o,e,n){const r=o.slice();return r[6]=e[n],r}function create_else_block$1(o){let e,n;return e=new Icon({props:{icon:"circle-chevron-down"}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block_1$2(o){let e,n;return e=new Icon({props:{icon:"circle-chevron-up"}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_if_block$4(o){let e,n=ensure_array_like(o[1]),r=[];for(let c=0;c{R[J]=null}),check_outros(),u=R[c],u||(u=R[c]=A[c](V),u.c()),transition_in(u,1),u.m(e,null)),V[0]?F?F.p(V,W):(F=create_if_block$4(V),F.c(),F.m(p.parentNode,p)):F&&(F.d(1),F=null)},i(V){b||(transition_in(u),b=!0)},o(V){transition_out(u),b=!1},d(V){V&&(detach(e),detach(h),detach(p)),R[c].d(),F&&F.d(V),y=!1,k()}}}function instance$6(o,e,n){const r=getContext$1("channel");let{schemas:c}=e,{title:u}=e,{schema:h}=e,{expanded:p=!1}=e;c.find(y=>y.name===(h==null?void 0:h.name))&&(p=!0);function b(){n(0,p=!p)}return o.$$set=y=>{"schemas"in y&&n(1,c=y.schemas),"title"in y&&n(2,u=y.title),"schema"in y&&n(3,h=y.schema),"expanded"in y&&n(0,p=y.expanded)},[p,c,u,h,r,b]}class NavbarMenu extends SvelteComponent{constructor(e){super(),init(this,e,instance$6,create_fragment$6,safe_not_equal,{schemas:1,title:2,schema:3,expanded:0})}}function create_fragment$5(o){let e,n,r=o[1].name+"",c,u,h,p,b,y,k,A,R,N,F;return y=new NavbarMenu({props:{title:"Content",schemas:o[2].filter(func),schema:o[0],expanded:!0}}),A=new NavbarMenu({props:{title:"Files",schemas:o[3],schema:o[0]}}),N=new NavbarMenu({props:{title:"Other",schemas:o[4],schema:o[0]}}),{c(){e=element("div"),n=element("a"),c=text(r),u=space$3(),h=element("a"),p=space$3(),b=element("div"),create_component(y.$$.fragment),k=space$3(),create_component(A.$$.fragment),R=space$3(),create_component(N.$$.fragment),attr(n,"class","logo"),attr(n,"href",o[1].lucentUrl),attr(h,"class","nav-item"),attr(h,"href",o[1].lucentUrl+"/profile"),attr(e,"class","sidebar-top"),attr(b,"class","sidebar")},m(V,W){insert$1(V,e,W),append(e,n),append(n,c),append(e,u),append(e,h),insert$1(V,p,W),insert$1(V,b,W),mount_component(y,b,null),append(b,k),mount_component(A,b,null),append(b,R),mount_component(N,b,null),F=!0},p(V,[W]){const J={};W&1&&(J.schema=V[0]),y.$set(J);const te={};W&1&&(te.schema=V[0]),A.$set(te);const j={};W&1&&(j.schema=V[0]),N.$set(j)},i(V){F||(transition_in(y.$$.fragment,V),transition_in(A.$$.fragment,V),transition_in(N.$$.fragment,V),F=!0)},o(V){transition_out(y.$$.fragment,V),transition_out(A.$$.fragment,V),transition_out(N.$$.fragment,V),F=!1},d(V){V&&(detach(e),detach(p),detach(b)),destroy_component(y),destroy_component(A),destroy_component(N)}}}const func=o=>o.isEntry;function instance$5(o,e,n){let{schema:r}=e;const c=getContext$1("channel"),u=getContext$1("readableSchemas"),h=u.filter(b=>b.type==="files"),p=u.filter(b=>!b.isEntry&&b.type==="collection");return o.$$set=b=>{"schema"in b&&n(0,r=b.schema)},[r,c,u,h,p]}class Navbar extends SvelteComponent{constructor(e){super(),init(this,e,instance$5,create_fragment$5,safe_not_equal,{schema:0})}}function create_if_block_1$1(o){let e;return{c(){e=element("span"),e.textContent="DRAFT",attr(e,"class","status")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_else_block(o){let e,n=previewTitle(o[3].schemas,o[2],o[1])+"",r,c;return{c(){e=element("a"),r=text(n),attr(e,"href",c=o[3].lucentUrl+"/records/"+o[2].id)},m(u,h){insert$1(u,e,h),append(e,r)},p(u,h){h&6&&n!==(n=previewTitle(u[3].schemas,u[2],u[1])+"")&&set_data(r,n),h&4&&c!==(c=u[3].lucentUrl+"/records/"+u[2].id)&&attr(e,"href",c)},i:noop,o:noop,d(u){u&&detach(e)}}}function create_if_block$3(o){let e,n;return e=new Preview({props:{record:o[2],size:"tiny",showFilename:!0}}),{c(){create_component(e.$$.fragment)},m(r,c){mount_component(e,r,c),n=!0},p(r,c){const u={};c&4&&(u.record=r[2]),e.$set(u)},i(r){n||(transition_in(e.$$.fragment,r),n=!0)},o(r){transition_out(e.$$.fragment,r),n=!1},d(r){destroy_component(e,r)}}}function create_fragment$4(o){let e,n,r,c,u,h,p,b,y=o[4].label+"",k,A,R,N,F,V,W,J,te=o[2].status==="draft"&&create_if_block_1$1();const j=[create_if_block$3,create_else_block],ae=[];function fe(_e,ne){return _e[4].type==="files"?0:1}return c=fe(o),u=ae[c]=j[c](o),F=new Avatar({props:{name:usernameById(o[0],o[2]._sys.updatedBy),side:24}}),{c(){e=element("td"),n=element("div"),te&&te.c(),r=space$3(),u.c(),h=space$3(),p=element("td"),b=element("a"),k=text(y),A=space$3(),R=element("td"),N=element("div"),create_component(F.$$.fragment),V=space$3(),W=element("div"),W.textContent=`${o[5]}`,attr(n,"class","row-name"),attr(b,"href",o[3].lucentUrl+"/content/"+o[4].name),attr(W,"class","ms-2"),set_style(N,"display","flex"),set_style(N,"gap","14px")},m(_e,ne){insert$1(_e,e,ne),append(e,n),te&&te.m(n,null),append(n,r),ae[c].m(n,null),insert$1(_e,h,ne),insert$1(_e,p,ne),append(p,b),append(b,k),insert$1(_e,A,ne),insert$1(_e,R,ne),append(R,N),mount_component(F,N,null),append(N,V),append(N,W),J=!0},p(_e,[ne]){_e[2].status==="draft"?te||(te=create_if_block_1$1(),te.c(),te.m(n,r)):te&&(te.d(1),te=null),u.p(_e,ne);const Se={};ne&5&&(Se.name=usernameById(_e[0],_e[2]._sys.updatedBy)),F.$set(Se)},i(_e){J||(transition_in(u),transition_in(F.$$.fragment,_e),J=!0)},o(_e){transition_out(u),transition_out(F.$$.fragment,_e),J=!1},d(_e){_e&&(detach(e),detach(h),detach(p),detach(A),detach(R)),te&&te.d(),ae[c].d(),destroy_component(F)}}}function instance$4(o,e,n){const r=getContext$1("channel");let{users:c}=e,{graph:u}=e,{record:h}=e,p=r.schemas.find(y=>y.name===h.schema),b=formatDistanceToNow(parseJSON(h._sys.updatedAt),{addSuffix:!0});return o.$$set=y=>{"users"in y&&n(0,c=y.users),"graph"in y&&n(1,u=y.graph),"record"in y&&n(2,h=y.record)},[c,u,h,r,p,b]}class RecordRow extends SvelteComponent{constructor(e){super(),init(this,e,instance$4,create_fragment$4,safe_not_equal,{users:0,graph:1,record:2})}}function get_each_context(o,e,n){const r=o.slice();return r[4]=e[n],r}function create_if_block$2(o){let e,n,r,c=[],u=new Map,h,p=ensure_array_like(o[0]);const b=y=>y[4].id;for(let y=0;y0&&create_if_block$2(o);return{c(){e=element("h3"),e.textContent="Latest Content changes",n=space$3(),u&&u.c(),r=empty$1(),attr(e,"class","header-small mb-4 mt-5")},m(h,p){insert$1(h,e,p),insert$1(h,n,p),u&&u.m(h,p),insert$1(h,r,p),c=!0},p(h,[p]){h[0].length>0?u?(u.p(h,p),p&1&&transition_in(u,1)):(u=create_if_block$2(h),u.c(),transition_in(u,1),u.m(r.parentNode,r)):u&&(group_outros(),transition_out(u,1,1,()=>{u=null}),check_outros())},i(h){c||(transition_in(u),c=!0)},o(h){transition_out(u),c=!1},d(h){h&&(detach(e),detach(n),detach(r)),u&&u.d(h)}}}function instance$3(o,e,n){const r=getContext$1("channel");let c=[],u=null,h=[];return onMount(()=>{axios.get(r.lucentUrl+"/home/records").then(p=>{n(0,c=p.data.records),n(1,u=p.data.graph),n(2,h=p.data.users)}).catch(p=>{console.log(p)})}),[c,u,h]}class Index extends SvelteComponent{constructor(e){super(),init(this,e,instance$3,create_fragment$3,safe_not_equal,{})}}function create_if_block_1(o){let e;return{c(){e=element("span"),e.textContent="Build in progress",attr(e,"class","badge text-bg-warning")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_if_block$1(o){let e;return{c(){e=element("span"),e.textContent="Build completed",attr(e,"class","badge text-bg-info")},m(n,r){insert$1(n,e,r)},d(n){n&&detach(e)}}}function create_fragment$2(o){let e,n,r,c,u,h,p,b,y,k,A,R,N,F,V,W=o[1]&&create_if_block_1(),J=!o[1]&&o[2]&&create_if_block$1();return{c(){e=element("div"),n=element("div"),r=element("h3"),c=text(o[0]),u=space$3(),h=element("button"),p=text("Start Build"),b=space$3(),y=element("div"),W&&W.c(),k=space$3(),J&&J.c(),A=space$3(),R=element("pre"),N=text(o[2]),attr(r,"class","header-small mb-5"),attr(h,"class","button primary mb-3"),h.disabled=o[1],attr(y,"class","mb-3"),attr(n,"class","lx-card mt-5"),attr(e,"class","common-wrapper")},m(te,j){insert$1(te,e,j),append(e,n),append(n,r),append(r,c),append(n,u),append(n,h),append(h,p),append(n,b),append(n,y),W&&W.m(y,null),append(y,k),J&&J.m(y,null),append(n,A),append(n,R),append(R,N),F||(V=listen(h,"click",o[3]),F=!0)},p(te,[j]){j&1&&set_data(c,te[0]),j&2&&(h.disabled=te[1]),te[1]?W||(W=create_if_block_1(),W.c(),W.m(y,k)):W&&(W.d(1),W=null),!te[1]&&te[2]?J||(J=create_if_block$1(),J.c(),J.m(y,null)):J&&(J.d(1),J=null),j&4&&set_data(N,te[2])},i:noop,o:noop,d(te){te&&detach(e),W&&W.d(),J&&J.d(),F=!1,V()}}}function instance$2(o,e,n){let r;const c=getContext$1("channel");let{title:u}=e,h=!1;function p(){const y=new EventSource(c.lucentUrl+"/build-report-source");y.onmessage=function(k){n(1,h=!0);const A=JSON.parse(k.data);A.date,n(2,r=A.logs)},y.onerror=k=>{console.log(k),y.close(),n(1,h=!1)}}function b(y){y.preventDefault(),n(1,h=!0),axios.post(c.lucentUrl+"/build").then(k=>{p()})}return onMount(()=>{p()}),o.$$set=y=>{"title"in y&&n(0,u=y.title)},n(2,r=""),[u,h,r,b]}class Report extends SvelteComponent{constructor(e){super(),init(this,e,instance$2,create_fragment$2,safe_not_equal,{title:0})}}function create_if_block(o){let e,n;return{c(){e=element("a"),n=text("Build website"),attr(e,"href",o[0].lucentUrl+"/build-report"),attr(e,"class","top-nav-item")},m(r,c){insert$1(r,e,c),append(e,n)},p:noop,d(r){r&&detach(e)}}}function create_fragment$1(o){let e,n,r,c,u,h,p,b,y=o[0].generateCommand&&create_if_block(o);return p=new Avatar({props:{side:"28",name:o[1].name}}),{c(){e=element("div"),n=element("a"),r=text("Members"),c=space$3(),y&&y.c(),u=space$3(),h=element("a"),create_component(p.$$.fragment),attr(n,"class","top-nav-item"),attr(n,"href",o[0].lucentUrl+"/members"),attr(h,"href",o[0].lucentUrl+"/profile"),attr(e,"class","top-nav ")},m(k,A){insert$1(k,e,A),append(e,n),append(n,r),append(e,c),y&&y.m(e,null),append(e,u),append(e,h),mount_component(p,h,null),b=!0},p(k,[A]){k[0].generateCommand&&y.p(k,A)},i(k){b||(transition_in(p.$$.fragment,k),b=!0)},o(k){transition_out(p.$$.fragment,k),b=!1},d(k){k&&detach(e),y&&y.d(),destroy_component(p)}}}function instance$1(o){const e=getContext$1("channel"),n=getContext$1("user");return[e,n]}class Header extends SvelteComponent{constructor(e){super(),init(this,e,instance$1,create_fragment$1,safe_not_equal,{})}}function create_fragment(o){let e,n,r,c,u,h,p,b,y;r=new Navbar({props:{schema:o[2].schema}}),h=new Header({});const k=[{title:o[0]},o[2]];var A=o[3][o[1]];function R(N,F){let V={};for(let W=0;W{destroy_component(W,1)}),check_outros()}A?(b=construct_svelte_component(A,R(N,F)),create_component(b.$$.fragment),transition_in(b.$$.fragment,1),mount_component(b,u,null)):b=null}else if(A){const W=F&5?get_spread_update(k,[F&1&&{title:N[0]},F&4&&get_spread_object(N[2])]):{};b.$set(W)}},i(N){y||(transition_in(r.$$.fragment,N),transition_in(h.$$.fragment,N),b&&transition_in(b.$$.fragment,N),y=!0)},o(N){transition_out(r.$$.fragment,N),transition_out(h.$$.fragment,N),b&&transition_out(b.$$.fragment,N),y=!1},d(N){N&&detach(e),destroy_component(r),destroy_component(h),b&&destroy_component(b)}}}function instance(o,e,n){const r={members:Members,recordEdit:Edit,recordNotFound:NotFound,contentIndex:Index$1,homeIndex:Index,buildReport:Report};let{title:c}=e,{view:u}=e,{user:h}=e,{data:p}=e,{channel:b}=e,{axios:y}=e,{readableSchemas:k}=e;return setContext("axios",y),setContext("channel",b),setContext("readableSchemas",b.schemas.filter(A=>k.includes(A.name))),setContext("user",h),o.$$set=A=>{"title"in A&&n(0,c=A.title),"view"in A&&n(1,u=A.view),"user"in A&&n(4,h=A.user),"data"in A&&n(2,p=A.data),"channel"in A&&n(5,b=A.channel),"axios"in A&&n(6,y=A.axios),"readableSchemas"in A&&n(7,k=A.readableSchemas)},[c,u,p,r,h,b,y,k]}class Channel extends SvelteComponent{constructor(e){super(),init(this,e,instance,create_fragment,safe_not_equal,{title:0,view:1,user:4,data:2,channel:5,axios:6,readableSchemas:7})}}(function(){const htmx={onLoad:null,process:null,on:null,off:null,trigger:null,ajax:null,find:null,findAll:null,closest:null,values:function(o,e){return getInputValues(o,e||"post").values},remove:null,addClass:null,removeClass:null,toggleClass:null,takeClass:null,swap:null,defineExtension:null,removeExtension:null,logAll:null,logNone:null,logger:null,config:{historyEnabled:!0,historyCacheSize:10,refreshOnHistoryMiss:!1,defaultSwapStyle:"innerHTML",defaultSwapDelay:0,defaultSettleDelay:20,includeIndicatorStyles:!0,indicatorClass:"htmx-indicator",requestClass:"htmx-request",addedClass:"htmx-added",settlingClass:"htmx-settling",swappingClass:"htmx-swapping",allowEval:!0,allowScriptTags:!0,inlineScriptNonce:"",inlineStyleNonce:"",attributesToSettle:["class","style","width","height"],withCredentials:!1,timeout:0,wsReconnectDelay:"full-jitter",wsBinaryType:"blob",disableSelector:"[hx-disable], [data-hx-disable]",scrollBehavior:"instant",defaultFocusScroll:!1,getCacheBusterParam:!1,globalViewTransitions:!1,methodsThatUseUrlParams:["get","delete"],selfRequestsOnly:!0,ignoreTitle:!1,scrollIntoViewOnBoost:!0,triggerSpecsCache:null,disableInheritance:!1,responseHandling:[{code:"204",swap:!1},{code:"[23]..",swap:!0},{code:"[45]..",swap:!1,error:!0}],allowNestedOobSwaps:!0},parseInterval:null,_:null,version:"2.0.2"};htmx.onLoad=onLoadHelper,htmx.process=processNode,htmx.on=addEventListenerImpl,htmx.off=removeEventListenerImpl,htmx.trigger=triggerEvent,htmx.ajax=ajaxHelper,htmx.find=find,htmx.findAll=findAll,htmx.closest=closest,htmx.remove=removeElement,htmx.addClass=addClassToElement,htmx.removeClass=removeClassFromElement,htmx.toggleClass=toggleClassOnElement,htmx.takeClass=takeClassForElement,htmx.swap=swap,htmx.defineExtension=defineExtension,htmx.removeExtension=removeExtension,htmx.logAll=logAll,htmx.logNone=logNone,htmx.parseInterval=parseInterval,htmx._=internalEval;const internalAPI={addTriggerHandler,bodyContains,canAccessLocalStorage,findThisElement,filterValues,swap,hasAttribute,getAttributeValue,getClosestAttributeValue,getClosestMatch,getExpressionVars,getHeaders,getInputValues,getInternalData,getSwapSpecification,getTriggerSpecs,getTarget,makeFragment,mergeObjects,makeSettleInfo,oobSwap,querySelectorExt,settleImmediately,shouldCancel,triggerEvent,triggerErrorEvent,withExtensions},VERBS=["get","post","put","delete","patch"],VERB_SELECTOR=VERBS.map(function(o){return"[hx-"+o+"], [data-hx-"+o+"]"}).join(", "),HEAD_TAG_REGEX=makeTagRegEx("head");function makeTagRegEx(o,e=!1){return new RegExp(`<${o}(\\s[^>]*>|>)([\\s\\S]*?)<\\/${o}>`,e?"gim":"im")}function parseInterval(o){if(o==null)return;let e=NaN;return o.slice(-2)=="ms"?e=parseFloat(o.slice(0,-2)):o.slice(-1)=="s"?e=parseFloat(o.slice(0,-1))*1e3:o.slice(-1)=="m"?e=parseFloat(o.slice(0,-1))*1e3*60:e=parseFloat(o),isNaN(e)?void 0:e}function getRawAttribute(o,e){return o instanceof Element&&o.getAttribute(e)}function hasAttribute(o,e){return!!o.hasAttribute&&(o.hasAttribute(e)||o.hasAttribute("data-"+e))}function getAttributeValue(o,e){return getRawAttribute(o,e)||getRawAttribute(o,"data-"+e)}function parentElt(o){const e=o.parentElement;return!e&&o.parentNode instanceof ShadowRoot?o.parentNode:e}function getDocument(){return document}function getRootNode(o,e){return o.getRootNode?o.getRootNode({composed:e}):getDocument()}function getClosestMatch(o,e){for(;o&&!e(o);)o=parentElt(o);return o||null}function getAttributeValueWithDisinheritance(o,e,n){const r=getAttributeValue(e,n),c=getAttributeValue(e,"hx-disinherit");var u=getAttributeValue(e,"hx-inherit");if(o!==e){if(htmx.config.disableInheritance)return u&&(u==="*"||u.split(" ").indexOf(n)>=0)?r:null;if(c&&(c==="*"||c.split(" ").indexOf(n)>=0))return"unset"}return r}function getClosestAttributeValue(o,e){let n=null;if(getClosestMatch(o,function(r){return!!(n=getAttributeValueWithDisinheritance(o,asElement(r),e))}),n!=="unset")return n}function matches(o,e){const n=o instanceof Element&&(o.matches||o.matchesSelector||o.msMatchesSelector||o.mozMatchesSelector||o.webkitMatchesSelector||o.oMatchesSelector);return!!n&&n.call(o,e)}function getStartTag(o){const n=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i.exec(o);return n?n[1].toLowerCase():""}function parseHTML(o){return new DOMParser().parseFromString(o,"text/html")}function takeChildrenFor(o,e){for(;e.childNodes.length>0;)o.append(e.childNodes[0])}function duplicateScript(o){const e=getDocument().createElement("script");return forEach(o.attributes,function(n){e.setAttribute(n.name,n.value)}),e.textContent=o.textContent,e.async=!1,htmx.config.inlineScriptNonce&&(e.nonce=htmx.config.inlineScriptNonce),e}function isJavaScriptScriptNode(o){return o.matches("script")&&(o.type==="text/javascript"||o.type==="module"||o.type==="")}function normalizeScriptTags(o){Array.from(o.querySelectorAll("script")).forEach(e=>{if(isJavaScriptScriptNode(e)){const n=duplicateScript(e),r=e.parentNode;try{r.insertBefore(n,e)}catch(c){logError(c)}finally{e.remove()}}})}function makeFragment(o){const e=o.replace(HEAD_TAG_REGEX,""),n=getStartTag(e);let r;if(n==="html"){r=new DocumentFragment;const u=parseHTML(o);takeChildrenFor(r,u.body),r.title=u.title}else if(n==="body"){r=new DocumentFragment;const u=parseHTML(e);takeChildrenFor(r,u.body),r.title=u.title}else{const u=parseHTML('");r=u.querySelector("template").content,r.title=u.title;var c=r.querySelector("title");c&&c.parentNode===r&&(c.remove(),r.title=c.innerText)}return r&&(htmx.config.allowScriptTags?normalizeScriptTags(r):r.querySelectorAll("script").forEach(u=>u.remove())),r}function maybeCall(o){o&&o()}function isType(o,e){return Object.prototype.toString.call(o)==="[object "+e+"]"}function isFunction(o){return typeof o=="function"}function isRawObject(o){return isType(o,"Object")}function getInternalData(o){const e="htmx-internal-data";let n=o[e];return n||(n=o[e]={}),n}function toArray(o){const e=[];if(o)for(let n=0;n=0}function bodyContains(o){const e=o.getRootNode&&o.getRootNode();return e&&e instanceof window.ShadowRoot?getDocument().body.contains(e.host):getDocument().body.contains(o)}function splitOnWhitespace(o){return o.trim().split(/\s+/)}function mergeObjects(o,e){for(const n in e)e.hasOwnProperty(n)&&(o[n]=e[n]);return o}function parseJSON(o){try{return JSON.parse(o)}catch(e){return logError(e),null}}function canAccessLocalStorage(){const o="htmx:localStorageTest";try{return localStorage.setItem(o,o),localStorage.removeItem(o),!0}catch{return!1}}function normalizePath(o){try{const e=new URL(o);return e&&(o=e.pathname+e.search),/^\/$/.test(o)||(o=o.replace(/\/+$/,"")),o}catch{return o}}function internalEval(str){return maybeEval(getDocument().body,function(){return eval(str)})}function onLoadHelper(o){return htmx.on("htmx:load",function(n){o(n.detail.elt)})}function logAll(){htmx.logger=function(o,e,n){console&&console.log(e,o,n)}}function logNone(){htmx.logger=null}function find(o,e){return typeof o!="string"?o.querySelector(e):find(getDocument(),o)}function findAll(o,e){return typeof o!="string"?o.querySelectorAll(e):findAll(getDocument(),o)}function getWindow(){return window}function removeElement(o,e){o=resolveTarget(o),e?getWindow().setTimeout(function(){removeElement(o),o=null},e):parentElt(o).removeChild(o)}function asElement(o){return o instanceof Element?o:null}function asHtmlElement(o){return o instanceof HTMLElement?o:null}function asString(o){return typeof o=="string"?o:null}function asParentNode(o){return o instanceof Element||o instanceof Document||o instanceof DocumentFragment?o:null}function addClassToElement(o,e,n){o=asElement(resolveTarget(o)),o&&(n?getWindow().setTimeout(function(){addClassToElement(o,e),o=null},n):o.classList&&o.classList.add(e))}function removeClassFromElement(o,e,n){let r=asElement(resolveTarget(o));r&&(n?getWindow().setTimeout(function(){removeClassFromElement(r,e),r=null},n):r.classList&&(r.classList.remove(e),r.classList.length===0&&r.removeAttribute("class")))}function toggleClassOnElement(o,e){o=resolveTarget(o),o.classList.toggle(e)}function takeClassForElement(o,e){o=resolveTarget(o),forEach(o.parentElement.children,function(n){removeClassFromElement(n,e)}),addClassToElement(asElement(o),e)}function closest(o,e){if(o=asElement(resolveTarget(o)),o&&o.closest)return o.closest(e);do if(o==null||matches(o,e))return o;while(o=o&&asElement(parentElt(o)));return null}function startsWith(o,e){return o.substring(0,e.length)===e}function endsWith(o,e){return o.substring(o.length-e.length)===e}function normalizeSelector(o){const e=o.trim();return startsWith(e,"<")&&endsWith(e,"/>")?e.substring(1,e.length-2):e}function querySelectorAllExt(o,e,n){return o=resolveTarget(o),e.indexOf("closest ")===0?[closest(asElement(o),normalizeSelector(e.substr(8)))]:e.indexOf("find ")===0?[find(asParentNode(o),normalizeSelector(e.substr(5)))]:e==="next"?[asElement(o).nextElementSibling]:e.indexOf("next ")===0?[scanForwardQuery(o,normalizeSelector(e.substr(5)),!!n)]:e==="previous"?[asElement(o).previousElementSibling]:e.indexOf("previous ")===0?[scanBackwardsQuery(o,normalizeSelector(e.substr(9)),!!n)]:e==="document"?[document]:e==="window"?[window]:e==="body"?[document.body]:e==="root"?[getRootNode(o,!!n)]:e.indexOf("global ")===0?querySelectorAllExt(o,e.slice(7),!0):toArray(asParentNode(getRootNode(o,!!n)).querySelectorAll(normalizeSelector(e)))}var scanForwardQuery=function(o,e,n){const r=asParentNode(getRootNode(o,n)).querySelectorAll(e);for(let c=0;c=0;c--){const u=r[c];if(u.compareDocumentPosition(o)===Node.DOCUMENT_POSITION_FOLLOWING)return u}};function querySelectorExt(o,e){return typeof o!="string"?querySelectorAllExt(o,e)[0]:querySelectorAllExt(getDocument().body,o)[0]}function resolveTarget(o,e){return typeof o=="string"?find(asParentNode(e)||document,o):o}function processEventArgs(o,e,n){return isFunction(e)?{target:getDocument().body,event:asString(o),listener:e}:{target:resolveTarget(o),event:asString(e),listener:n}}function addEventListenerImpl(o,e,n){return ready(function(){const c=processEventArgs(o,e,n);c.target.addEventListener(c.event,c.listener)}),isFunction(e)?e:n}function removeEventListenerImpl(o,e,n){return ready(function(){const r=processEventArgs(o,e,n);r.target.removeEventListener(r.event,r.listener)}),isFunction(e)?e:n}const DUMMY_ELT=getDocument().createElement("output");function findAttributeTargets(o,e){const n=getClosestAttributeValue(o,e);if(n){if(n==="this")return[findThisElement(o,e)];{const r=querySelectorAllExt(o,n);return r.length===0?(logError('The selector "'+n+'" on '+e+" returned no matches!"),[DUMMY_ELT]):r}}}function findThisElement(o,e){return asElement(getClosestMatch(o,function(n){return getAttributeValue(asElement(n),e)!=null}))}function getTarget(o){const e=getClosestAttributeValue(o,"hx-target");return e?e==="this"?findThisElement(o,"hx-target"):querySelectorExt(o,e):getInternalData(o).boosted?getDocument().body:o}function shouldSettleAttribute(o){const e=htmx.config.attributesToSettle;for(let n=0;n0?(c=o.substr(0,o.indexOf(":")),r=o.substr(o.indexOf(":")+1,o.length)):c=o);const u=getDocument().querySelectorAll(r);return u?(forEach(u,function(h){let p;const b=e.cloneNode(!0);p=getDocument().createDocumentFragment(),p.appendChild(b),isInlineSwap(c,h)||(p=asParentNode(b));const y={shouldSwap:!0,target:h,fragment:p};triggerEvent(h,"htmx:oobBeforeSwap",y)&&(h=y.target,y.shouldSwap&&swapWithStyle(c,h,h,p,n),forEach(n.elts,function(k){triggerEvent(k,"htmx:oobAfterSwap",y)}))}),e.parentNode.removeChild(e)):(e.parentNode.removeChild(e),triggerErrorEvent(getDocument().body,"htmx:oobErrorNoTarget",{content:e})),o}function handlePreservedElements(o){forEach(findAll(o,"[hx-preserve], [data-hx-preserve]"),function(e){const n=getAttributeValue(e,"id"),r=getDocument().getElementById(n);r!=null&&e.parentNode.replaceChild(r,e)})}function handleAttributes(o,e,n){forEach(e.querySelectorAll("[id]"),function(r){const c=getRawAttribute(r,"id");if(c&&c.length>0){const u=c.replace("'","\\'"),h=r.tagName.replace(":","\\:"),p=asParentNode(o),b=p&&p.querySelector(h+"[id='"+u+"']");if(b&&b!==p){const y=r.cloneNode();cloneAttributes(r,b),n.tasks.push(function(){cloneAttributes(r,y)})}}})}function makeAjaxLoadTask(o){return function(){removeClassFromElement(o,htmx.config.addedClass),processNode(asElement(o)),processFocus(asParentNode(o)),triggerEvent(o,"htmx:load")}}function processFocus(o){const e="[autofocus]",n=asHtmlElement(matches(o,e)?o:o.querySelector(e));n!=null&&n.focus()}function insertNodesBefore(o,e,n,r){for(handleAttributes(o,n,r);n.childNodes.length>0;){const c=n.firstChild;addClassToElement(asElement(c),htmx.config.addedClass),o.insertBefore(c,e),c.nodeType!==Node.TEXT_NODE&&c.nodeType!==Node.COMMENT_NODE&&r.tasks.push(makeAjaxLoadTask(c))}}function stringHash(o,e){let n=0;for(;n0}function swap(o,e,n,r){r||(r={}),o=resolveTarget(o);const c=document.activeElement;let u={};try{u={elt:c,start:c?c.selectionStart:null,end:c?c.selectionEnd:null}}catch{}const h=makeSettleInfo(o);if(n.swapStyle==="textContent")o.textContent=e;else{let b=makeFragment(e);if(h.title=b.title,r.selectOOB){const y=r.selectOOB.split(",");for(let k=0;k0?getWindow().setTimeout(p,n.settleDelay):p()}function handleTriggerHeader(o,e,n){const r=o.getResponseHeader(e);if(r.indexOf("{")===0){const c=parseJSON(r);for(const u in c)if(c.hasOwnProperty(u)){let h=c[u];isRawObject(h)?n=h.target!==void 0?h.target:n:h={value:h},triggerEvent(n,u,h)}}else{const c=r.split(",");for(let u=0;u0;){const h=e[0];if(h==="]"){if(r--,r===0){u===null&&(c=c+"true"),e.shift(),c+=")})";try{const p=maybeEval(o,function(){return Function(c)()},function(){return!0});return p.source=c,p}catch(p){return triggerErrorEvent(getDocument().body,"htmx:syntax:error",{error:p,source:c}),null}}}else h==="["&&r++;isPossibleRelativeReference(h,u,n)?c+="(("+n+"."+h+") ? ("+n+"."+h+") : (window."+h+"))":c=c+h,u=e.shift()}}}function consumeUntil(o,e){let n="";for(;o.length>0&&!e.test(o[0]);)n+=o.shift();return n}function consumeCSSSelector(o){let e;return o.length>0&&COMBINED_SELECTOR_START.test(o[0])?(o.shift(),e=consumeUntil(o,COMBINED_SELECTOR_END).trim(),o.shift()):e=consumeUntil(o,WHITESPACE_OR_COMMA),e}const INPUT_SELECTOR="input, textarea, select";function parseAndCacheTrigger(o,e,n){const r=[],c=tokenizeString(e);do{consumeUntil(c,NOT_WHITESPACE);const p=c.length,b=consumeUntil(c,/[,\[\s]/);if(b!=="")if(b==="every"){const y={trigger:"every"};consumeUntil(c,NOT_WHITESPACE),y.pollInterval=parseInterval(consumeUntil(c,/[,\[\s]/)),consumeUntil(c,NOT_WHITESPACE);var u=maybeGenerateConditional(o,c,"event");u&&(y.eventFilter=u),r.push(y)}else{const y={trigger:b};var u=maybeGenerateConditional(o,c,"event");for(u&&(y.eventFilter=u);c.length>0&&c[0]!==",";){consumeUntil(c,NOT_WHITESPACE);const A=c.shift();if(A==="changed")y.changed=!0;else if(A==="once")y.once=!0;else if(A==="consume")y.consume=!0;else if(A==="delay"&&c[0]===":")c.shift(),y.delay=parseInterval(consumeUntil(c,WHITESPACE_OR_COMMA));else if(A==="from"&&c[0]===":"){if(c.shift(),COMBINED_SELECTOR_START.test(c[0]))var h=consumeCSSSelector(c);else{var h=consumeUntil(c,WHITESPACE_OR_COMMA);if(h==="closest"||h==="find"||h==="next"||h==="previous"){c.shift();const N=consumeCSSSelector(c);N.length>0&&(h+=" "+N)}}y.from=h}else A==="target"&&c[0]===":"?(c.shift(),y.target=consumeCSSSelector(c)):A==="throttle"&&c[0]===":"?(c.shift(),y.throttle=parseInterval(consumeUntil(c,WHITESPACE_OR_COMMA))):A==="queue"&&c[0]===":"?(c.shift(),y.queue=consumeUntil(c,WHITESPACE_OR_COMMA)):A==="root"&&c[0]===":"?(c.shift(),y[A]=consumeCSSSelector(c)):A==="threshold"&&c[0]===":"?(c.shift(),y[A]=consumeUntil(c,WHITESPACE_OR_COMMA)):triggerErrorEvent(o,"htmx:syntax:error",{token:c.shift()})}r.push(y)}c.length===p&&triggerErrorEvent(o,"htmx:syntax:error",{token:c.shift()}),consumeUntil(c,NOT_WHITESPACE)}while(c[0]===","&&c.shift());return n&&(n[e]=r),r}function getTriggerSpecs(o){const e=getAttributeValue(o,"hx-trigger");let n=[];if(e){const r=htmx.config.triggerSpecsCache;n=r&&r[e]||parseAndCacheTrigger(o,e,r)}return n.length>0?n:matches(o,"form")?[{trigger:"submit"}]:matches(o,'input[type="button"], input[type="submit"]')?[{trigger:"click"}]:matches(o,INPUT_SELECTOR)?[{trigger:"change"}]:[{trigger:"click"}]}function cancelPolling(o){getInternalData(o).cancelled=!0}function processPolling(o,e,n){const r=getInternalData(o);r.timeout=getWindow().setTimeout(function(){bodyContains(o)&&r.cancelled!==!0&&(maybeFilterEvent(n,o,makeEvent("hx:poll:trigger",{triggerSpec:n,target:o}))||e(o),processPolling(o,e,n))},n.pollInterval)}function isLocalLink(o){return location.hostname===o.hostname&&getRawAttribute(o,"href")&&getRawAttribute(o,"href").indexOf("#")!==0}function eltIsDisabled(o){return closest(o,htmx.config.disableSelector)}function boostElement(o,e,n){if(o instanceof HTMLAnchorElement&&isLocalLink(o)&&(o.target===""||o.target==="_self")||o.tagName==="FORM"&&String(getRawAttribute(o,"method")).toLowerCase()!=="dialog"){e.boosted=!0;let r,c;if(o.tagName==="A")r="get",c=getRawAttribute(o,"href");else{const u=getRawAttribute(o,"method");r=u?u.toLowerCase():"get",c=getRawAttribute(o,"action")}n.forEach(function(u){addEventListener(o,function(h,p){const b=asElement(h);if(eltIsDisabled(b)){cleanUpElement(b);return}issueAjaxRequest(r,c,b,p)},e,u,!0)})}}function shouldCancel(o,e){const n=asElement(e);return n?!!((o.type==="submit"||o.type==="click")&&(n.tagName==="FORM"||matches(n,'input[type="submit"], button')&&closest(n,"form")!==null||n instanceof HTMLAnchorElement&&n.href&&(n.getAttribute("href")==="#"||n.getAttribute("href").indexOf("#")!==0))):!1}function ignoreBoostedAnchorCtrlClick(o,e){return getInternalData(o).boosted&&o instanceof HTMLAnchorElement&&e.type==="click"&&(e.ctrlKey||e.metaKey)}function maybeFilterEvent(o,e,n){const r=o.eventFilter;if(r)try{return r.call(e,n)!==!0}catch(c){const u=r.source;return triggerErrorEvent(getDocument().body,"htmx:eventFilter:error",{error:c,source:u}),!0}return!1}function addEventListener(o,e,n,r,c){const u=getInternalData(o);let h;r.from?h=querySelectorAllExt(o,r.from):h=[o],r.changed&&h.forEach(function(p){const b=getInternalData(p);b.lastValue=p.value}),forEach(h,function(p){const b=function(y){if(!bodyContains(o)){p.removeEventListener(r.trigger,b);return}if(ignoreBoostedAnchorCtrlClick(o,y)||((c||shouldCancel(y,o))&&y.preventDefault(),maybeFilterEvent(r,o,y)))return;const k=getInternalData(y);if(k.triggerSpec=r,k.handledFor==null&&(k.handledFor=[]),k.handledFor.indexOf(o)<0){if(k.handledFor.push(o),r.consume&&y.stopPropagation(),r.target&&y.target&&!matches(asElement(y.target),r.target))return;if(r.once){if(u.triggeredOnce)return;u.triggeredOnce=!0}if(r.changed){const A=getInternalData(p),R=p.value;if(A.lastValue===R)return;A.lastValue=R}if(u.delayed&&clearTimeout(u.delayed),u.throttle)return;r.throttle>0?u.throttle||(triggerEvent(o,"htmx:trigger"),e(o,y),u.throttle=getWindow().setTimeout(function(){u.throttle=null},r.throttle)):r.delay>0?u.delayed=getWindow().setTimeout(function(){triggerEvent(o,"htmx:trigger"),e(o,y)},r.delay):(triggerEvent(o,"htmx:trigger"),e(o,y))}};n.listenerInfos==null&&(n.listenerInfos=[]),n.listenerInfos.push({trigger:r.trigger,listener:b,on:p}),p.addEventListener(r.trigger,b)})}let windowIsScrolling=!1,scrollHandler=null;function initScrollHandler(){scrollHandler||(scrollHandler=function(){windowIsScrolling=!0},window.addEventListener("scroll",scrollHandler),setInterval(function(){windowIsScrolling&&(windowIsScrolling=!1,forEach(getDocument().querySelectorAll("[hx-trigger*='revealed'],[data-hx-trigger*='revealed']"),function(o){maybeReveal(o)}))},200))}function maybeReveal(o){!hasAttribute(o,"data-hx-revealed")&&isScrolledIntoView(o)&&(o.setAttribute("data-hx-revealed","true"),getInternalData(o).initHash?triggerEvent(o,"revealed"):o.addEventListener("htmx:afterProcessNode",function(){triggerEvent(o,"revealed")},{once:!0}))}function loadImmediately(o,e,n,r){const c=function(){n.loaded||(n.loaded=!0,e(o))};r>0?getWindow().setTimeout(c,r):c()}function processVerbs(o,e,n){let r=!1;return forEach(VERBS,function(c){if(hasAttribute(o,"hx-"+c)){const u=getAttributeValue(o,"hx-"+c);r=!0,e.path=u,e.verb=c,n.forEach(function(h){addTriggerHandler(o,h,e,function(p,b){const y=asElement(p);if(closest(y,htmx.config.disableSelector)){cleanUpElement(y);return}issueAjaxRequest(c,u,y,b)})})}}),r}function addTriggerHandler(o,e,n,r){if(e.trigger==="revealed")initScrollHandler(),addEventListener(o,r,n,e),maybeReveal(asElement(o));else if(e.trigger==="intersect"){const c={};e.root&&(c.root=querySelectorExt(o,e.root)),e.threshold&&(c.threshold=parseFloat(e.threshold)),new IntersectionObserver(function(h){for(let p=0;p0?(n.polling=!0,processPolling(asElement(o),r,e)):addEventListener(o,r,n,e)}function shouldProcessHxOn(o){const e=asElement(o);if(!e)return!1;const n=e.attributes;for(let r=0;r", "+u).join(""))}else return[]}function maybeSetLastButtonClicked(o){const e=closest(asElement(o.target),"button, input[type='submit']"),n=getRelatedFormData(o);n&&(n.lastButtonClicked=e)}function maybeUnsetLastButtonClicked(o){const e=getRelatedFormData(o);e&&(e.lastButtonClicked=null)}function getRelatedFormData(o){const e=closest(asElement(o.target),"button, input[type='submit']");if(!e)return;const n=resolveTarget("#"+getRawAttribute(e,"form"),e.getRootNode())||closest(e,"form");if(n)return getInternalData(n)}function initButtonTracking(o){o.addEventListener("click",maybeSetLastButtonClicked),o.addEventListener("focusin",maybeSetLastButtonClicked),o.addEventListener("focusout",maybeUnsetLastButtonClicked)}function addHxOnEventHandler(o,e,n){const r=getInternalData(o);Array.isArray(r.onHandlers)||(r.onHandlers=[]);let c;const u=function(h){maybeEval(o,function(){eltIsDisabled(o)||(c||(c=new Function("event",n)),c.call(o,h))})};o.addEventListener(e,u),r.onHandlers.push({event:e,listener:u})}function processHxOnWildcard(o){deInitOnHandlers(o);for(let e=0;ehtmx.config.historyCacheSize;)u.shift();for(;u.length>0;)try{localStorage.setItem("htmx-history-cache",JSON.stringify(u));break}catch(p){triggerErrorEvent(getDocument().body,"htmx:historyCacheError",{cause:p,cache:u}),u.shift()}}function getCachedHistory(o){if(!canAccessLocalStorage())return null;o=normalizePath(o);const e=parseJSON(localStorage.getItem("htmx-history-cache"))||[];for(let n=0;n=200&&this.status<400){triggerEvent(getDocument().body,"htmx:historyCacheMissLoad",n);const r=makeFragment(this.response),c=r.querySelector("[hx-history-elt],[data-hx-history-elt]")||r,u=getHistoryElement(),h=makeSettleInfo(u);handleTitle(r.title),swapInnerHTML(u,c,h),settleImmediately(h.tasks),currentPathForHistory=o,triggerEvent(getDocument().body,"htmx:historyRestore",{path:o,cacheMiss:!0,serverResponse:this.response})}else triggerErrorEvent(getDocument().body,"htmx:historyCacheMissLoadError",n)},e.send()}function restoreHistory(o){saveCurrentPageToHistory(),o=o||location.pathname+location.search;const e=getCachedHistory(o);if(e){const n=makeFragment(e.content),r=getHistoryElement(),c=makeSettleInfo(r);handleTitle(n.title),swapInnerHTML(r,n,c),settleImmediately(c.tasks),getWindow().setTimeout(function(){window.scrollTo(0,e.scroll)},0),currentPathForHistory=o,triggerEvent(getDocument().body,"htmx:historyRestore",{path:o,item:e})}else htmx.config.refreshOnHistoryMiss?window.location.reload(!0):loadHistoryFromServer(o)}function addRequestIndicatorClasses(o){let e=findAttributeTargets(o,"hx-indicator");return e==null&&(e=[o]),forEach(e,function(n){const r=getInternalData(n);r.requestCount=(r.requestCount||0)+1,n.classList.add.call(n.classList,htmx.config.requestClass)}),e}function disableElements(o){let e=findAttributeTargets(o,"hx-disabled-elt");return e==null&&(e=[]),forEach(e,function(n){const r=getInternalData(n);r.requestCount=(r.requestCount||0)+1,n.setAttribute("disabled",""),n.setAttribute("data-disabled-by-htmx","")}),e}function removeRequestIndicators(o,e){forEach(o,function(n){const r=getInternalData(n);r.requestCount=(r.requestCount||0)-1,r.requestCount===0&&n.classList.remove.call(n.classList,htmx.config.requestClass)}),forEach(e,function(n){const r=getInternalData(n);r.requestCount=(r.requestCount||0)-1,r.requestCount===0&&(n.removeAttribute("disabled"),n.removeAttribute("data-disabled-by-htmx"))})}function haveSeenNode(o,e){for(let n=0;ne.indexOf(c)<0):r=r.filter(c=>c!==e),n.delete(o),forEach(r,c=>n.append(o,c))}}function processInputValue(o,e,n,r,c){if(!(r==null||haveSeenNode(o,r))){if(o.push(r),shouldInclude(r)){const u=getRawAttribute(r,"name");let h=r.value;r instanceof HTMLSelectElement&&r.multiple&&(h=toArray(r.querySelectorAll("option:checked")).map(function(p){return p.value})),r instanceof HTMLInputElement&&r.files&&(h=toArray(r.files)),addValueToFormData(u,h,e),c&&validateElement(r,n)}r instanceof HTMLFormElement&&(forEach(r.elements,function(u){o.indexOf(u)>=0?removeValueFromFormData(u.name,u.value,e):o.push(u),c&&validateElement(u,n)}),new FormData(r).forEach(function(u,h){u instanceof File&&u.name===""||addValueToFormData(h,u,e)}))}}function validateElement(o,e){const n=o;n.willValidate&&(triggerEvent(n,"htmx:validation:validate"),n.checkValidity()||(e.push({elt:n,message:n.validationMessage,validity:n.validity}),triggerEvent(n,"htmx:validation:failed",{message:n.validationMessage,validity:n.validity})))}function overrideFormData(o,e){for(const n of e.keys())o.delete(n);return e.forEach(function(n,r){o.append(r,n)}),o}function getInputValues(o,e){const n=[],r=new FormData,c=new FormData,u=[],h=getInternalData(o);h.lastButtonClicked&&!bodyContains(h.lastButtonClicked)&&(h.lastButtonClicked=null);let p=o instanceof HTMLFormElement&&o.noValidate!==!0||getAttributeValue(o,"hx-validate")==="true";if(h.lastButtonClicked&&(p=p&&h.lastButtonClicked.formNoValidate!==!0),e!=="get"&&processInputValue(n,c,u,closest(o,"form"),p),processInputValue(n,r,u,o,p),h.lastButtonClicked||o.tagName==="BUTTON"||o.tagName==="INPUT"&&getRawAttribute(o,"type")==="submit"){const y=h.lastButtonClicked||o,k=getRawAttribute(y,"name");addValueToFormData(k,y.value,c)}const b=findAttributeTargets(o,"hx-include");return forEach(b,function(y){processInputValue(n,r,u,asElement(y),p),matches(y,"form")||forEach(asParentNode(y).querySelectorAll(INPUT_SELECTOR),function(k){processInputValue(n,r,u,k,p)})}),overrideFormData(r,c),{errors:u,formData:r,values:formDataProxy(r)}}function appendParam(o,e,n){o!==""&&(o+="&"),String(n)==="[object Object]"&&(n=JSON.stringify(n));const r=encodeURIComponent(n);return o+=encodeURIComponent(e)+"="+r,o}function urlEncode(o){o=formDataFromObject(o);let e="";return o.forEach(function(n,r){e=appendParam(e,r,n)}),e}function getHeaders(o,e,n){const r={"HX-Request":"true","HX-Trigger":getRawAttribute(o,"id"),"HX-Trigger-Name":getRawAttribute(o,"name"),"HX-Target":getAttributeValue(e,"id"),"HX-Current-URL":getDocument().location.href};return getValuesForElement(o,"hx-headers",!1,r),n!==void 0&&(r["HX-Prompt"]=n),getInternalData(o).boosted&&(r["HX-Boosted"]="true"),r}function filterValues(o,e){const n=getClosestAttributeValue(e,"hx-params");if(n){if(n==="none")return new FormData;if(n==="*")return o;if(n.indexOf("not ")===0)return forEach(n.substr(4).split(","),function(r){r=r.trim(),o.delete(r)}),o;{const r=new FormData;return forEach(n.split(","),function(c){c=c.trim(),o.has(c)&&o.getAll(c).forEach(function(u){r.append(c,u)})}),r}}else return o}function isAnchorLink(o){return!!getRawAttribute(o,"href")&&getRawAttribute(o,"href").indexOf("#")>=0}function getSwapSpecification(o,e){const n=e||getClosestAttributeValue(o,"hx-swap"),r={swapStyle:getInternalData(o).boosted?"innerHTML":htmx.config.defaultSwapStyle,swapDelay:htmx.config.defaultSwapDelay,settleDelay:htmx.config.defaultSettleDelay};if(htmx.config.scrollIntoViewOnBoost&&getInternalData(o).boosted&&!isAnchorLink(o)&&(r.show="top"),n){const h=splitOnWhitespace(n);if(h.length>0)for(let p=0;p0?c.join(":"):null;r.scroll=k,r.scrollTarget=u}else if(b.indexOf("show:")===0){var c=b.substr(5).split(":");const A=c.pop();var u=c.length>0?c.join(":"):null;r.show=A,r.showTarget=u}else if(b.indexOf("focus-scroll:")===0){const y=b.substr(13);r.focusScroll=y=="true"}else p==0?r.swapStyle=b:logError("Unknown modifier in hx-swap: "+b)}}return r}function usesFormData(o){return getClosestAttributeValue(o,"hx-encoding")==="multipart/form-data"||matches(o,"form")&&getRawAttribute(o,"enctype")==="multipart/form-data"}function encodeParamsForBody(o,e,n){let r=null;return withExtensions(e,function(c){r==null&&(r=c.encodeParameters(o,n,e))}),r??(usesFormData(e)?overrideFormData(new FormData,formDataFromObject(n)):urlEncode(n))}function makeSettleInfo(o){return{tasks:[],elts:[o]}}function updateScrollState(o,e){const n=o[0],r=o[o.length-1];if(e.scroll){var c=null;e.scrollTarget&&(c=asElement(querySelectorExt(n,e.scrollTarget))),e.scroll==="top"&&(n||c)&&(c=c||n,c.scrollTop=0),e.scroll==="bottom"&&(r||c)&&(c=c||r,c.scrollTop=c.scrollHeight)}if(e.show){var c=null;if(e.showTarget){let h=e.showTarget;e.showTarget==="window"&&(h="body"),c=asElement(querySelectorExt(n,h))}e.show==="top"&&(n||c)&&(c=c||n,c.scrollIntoView({block:"start",behavior:htmx.config.scrollBehavior})),e.show==="bottom"&&(r||c)&&(c=c||r,c.scrollIntoView({block:"end",behavior:htmx.config.scrollBehavior}))}}function getValuesForElement(o,e,n,r){if(r==null&&(r={}),o==null)return r;const c=getAttributeValue(o,e);if(c){let u=c.trim(),h=n;if(u==="unset")return null;u.indexOf("javascript:")===0?(u=u.substr(11),h=!0):u.indexOf("js:")===0&&(u=u.substr(3),h=!0),u.indexOf("{")!==0&&(u="{"+u+"}");let p;h?p=maybeEval(o,function(){return Function("return ("+u+")")()},{}):p=parseJSON(u);for(const b in p)p.hasOwnProperty(b)&&r[b]==null&&(r[b]=p[b])}return getValuesForElement(asElement(parentElt(o)),e,n,r)}function maybeEval(o,e,n){return htmx.config.allowEval?e():(triggerErrorEvent(o,"htmx:evalDisallowedError"),n)}function getHXVarsForElement(o,e){return getValuesForElement(o,"hx-vars",!0,e)}function getHXValsForElement(o,e){return getValuesForElement(o,"hx-vals",!1,e)}function getExpressionVars(o){return mergeObjects(getHXVarsForElement(o),getHXValsForElement(o))}function safelySetHeaderValue(o,e,n){if(n!==null)try{o.setRequestHeader(e,n)}catch{o.setRequestHeader(e,encodeURIComponent(n)),o.setRequestHeader(e+"-URI-AutoEncoded","true")}}function getPathFromResponse(o){if(o.responseURL&&typeof URL<"u")try{const e=new URL(o.responseURL);return e.pathname+e.search}catch{triggerErrorEvent(getDocument().body,"htmx:badResponseUrl",{url:o.responseURL})}}function hasHeader(o,e){return e.test(o.getAllResponseHeaders())}function ajaxHelper(o,e,n){return o=o.toLowerCase(),n?n instanceof Element||typeof n=="string"?issueAjaxRequest(o,e,null,null,{targetOverride:resolveTarget(n),returnPromise:!0}):issueAjaxRequest(o,e,resolveTarget(n.source),n.event,{handler:n.handler,headers:n.headers,values:n.values,targetOverride:resolveTarget(n.target),swapOverride:n.swap,select:n.select,returnPromise:!0}):issueAjaxRequest(o,e,null,null,{returnPromise:!0})}function hierarchyForElt(o){const e=[];for(;o;)e.push(o),o=o.parentElement;return e}function verifyPath(o,e,n){let r,c;return typeof URL=="function"?(c=new URL(e,document.location.href),r=document.location.origin===c.origin):(c=e,r=startsWith(e,document.location.origin)),htmx.config.selfRequestsOnly&&!r?!1:triggerEvent(o,"htmx:validateUrl",mergeObjects({url:c,sameHost:r},n))}function formDataFromObject(o){if(o instanceof FormData)return o;const e=new FormData;for(const n in o)o.hasOwnProperty(n)&&(typeof o[n].forEach=="function"?o[n].forEach(function(r){e.append(n,r)}):typeof o[n]=="object"&&!(o[n]instanceof Blob)?e.append(n,JSON.stringify(o[n])):e.append(n,o[n]));return e}function formDataArrayProxy(o,e,n){return new Proxy(n,{get:function(r,c){return typeof c=="number"?r[c]:c==="length"?r.length:c==="push"?function(u){r.push(u),o.append(e,u)}:typeof r[c]=="function"?function(){r[c].apply(r,arguments),o.delete(e),r.forEach(function(u){o.append(e,u)})}:r[c]&&r[c].length===1?r[c][0]:r[c]},set:function(r,c,u){return r[c]=u,o.delete(e),r.forEach(function(h){o.append(e,h)}),!0}})}function formDataProxy(o){return new Proxy(o,{get:function(e,n){if(typeof n=="symbol")return Reflect.get(e,n);if(n==="toJSON")return()=>Object.fromEntries(o);if(n in e)return typeof e[n]=="function"?function(){return o[n].apply(o,arguments)}:e[n];const r=o.getAll(n);if(r.length!==0)return r.length===1?r[0]:formDataArrayProxy(e,n,r)},set:function(e,n,r){return typeof n!="string"?!1:(e.delete(n),typeof r.forEach=="function"?r.forEach(function(c){e.append(n,c)}):typeof r=="object"&&!(r instanceof Blob)?e.append(n,JSON.stringify(r)):e.append(n,r),!0)},deleteProperty:function(e,n){return typeof n=="string"&&e.delete(n),!0},ownKeys:function(e){return Reflect.ownKeys(Object.fromEntries(e))},getOwnPropertyDescriptor:function(e,n){return Reflect.getOwnPropertyDescriptor(Object.fromEntries(e),n)}})}function issueAjaxRequest(o,e,n,r,c,u){let h=null,p=null;if(c=c??{},c.returnPromise&&typeof Promise<"u")var b=new Promise(function(Fe,mt){h=Fe,p=mt});n==null&&(n=getDocument().body);const y=c.handler||handleAjaxResponse,k=c.select||null;if(!bodyContains(n))return maybeCall(h),b;const A=c.targetOverride||asElement(getTarget(n));if(A==null||A==DUMMY_ELT)return triggerErrorEvent(n,"htmx:targetError",{target:getAttributeValue(n,"hx-target")}),maybeCall(p),b;let R=getInternalData(n);const N=R.lastButtonClicked;if(N){const Fe=getRawAttribute(N,"formaction");Fe!=null&&(e=Fe);const mt=getRawAttribute(N,"formmethod");mt!=null&&mt.toLowerCase()!=="dialog"&&(o=mt)}const F=getClosestAttributeValue(n,"hx-confirm");if(u===void 0&&triggerEvent(n,"htmx:confirm",{target:A,elt:n,path:e,verb:o,triggeringEvent:r,etc:c,issueRequest:function(de){return issueAjaxRequest(o,e,n,r,c,!!de)},question:F})===!1)return maybeCall(h),b;let V=n,W=getClosestAttributeValue(n,"hx-sync"),J=null,te=!1;if(W){const Fe=W.split(":"),mt=Fe[0].trim();if(mt==="this"?V=findThisElement(n,"hx-sync"):V=asElement(querySelectorExt(n,mt)),W=(Fe[1]||"drop").trim(),R=getInternalData(V),W==="drop"&&R.xhr&&R.abortable!==!0)return maybeCall(h),b;if(W==="abort"){if(R.xhr)return maybeCall(h),b;te=!0}else W==="replace"?triggerEvent(V,"htmx:abort"):W.indexOf("queue")===0&&(J=(W.split(" ")[1]||"last").trim())}if(R.xhr)if(R.abortable)triggerEvent(V,"htmx:abort");else{if(J==null){if(r){const Fe=getInternalData(r);Fe&&Fe.triggerSpec&&Fe.triggerSpec.queue&&(J=Fe.triggerSpec.queue)}J==null&&(J="last")}return R.queuedRequests==null&&(R.queuedRequests=[]),J==="first"&&R.queuedRequests.length===0?R.queuedRequests.push(function(){issueAjaxRequest(o,e,n,r,c)}):J==="all"?R.queuedRequests.push(function(){issueAjaxRequest(o,e,n,r,c)}):J==="last"&&(R.queuedRequests=[],R.queuedRequests.push(function(){issueAjaxRequest(o,e,n,r,c)})),maybeCall(h),b}const j=new XMLHttpRequest;R.xhr=j,R.abortable=te;const ae=function(){R.xhr=null,R.abortable=!1,R.queuedRequests!=null&&R.queuedRequests.length>0&&R.queuedRequests.shift()()},fe=getClosestAttributeValue(n,"hx-prompt");if(fe){var _e=prompt(fe);if(_e===null||!triggerEvent(n,"htmx:prompt",{prompt:_e,target:A}))return maybeCall(h),ae(),b}if(F&&!u&&!confirm(F))return maybeCall(h),ae(),b;let ne=getHeaders(n,A,_e);o!=="get"&&!usesFormData(n)&&(ne["Content-Type"]="application/x-www-form-urlencoded"),c.headers&&(ne=mergeObjects(ne,c.headers));const Se=getInputValues(n,o);let De=Se.errors;const Be=Se.formData;c.values&&overrideFormData(Be,formDataFromObject(c.values));const Te=formDataFromObject(getExpressionVars(n)),Oe=overrideFormData(Be,Te);let yt=filterValues(Oe,n);htmx.config.getCacheBusterParam&&o==="get"&&yt.set("org.htmx.cache-buster",getRawAttribute(A,"id")||"true"),(e==null||e==="")&&(e=getDocument().location.href);const Tt=getValuesForElement(n,"hx-request"),St=getInternalData(n).boosted;let q=htmx.config.methodsThatUseUrlParams.indexOf(o)>=0;const Le={boosted:St,useUrlParams:q,formData:yt,parameters:formDataProxy(yt),unfilteredFormData:Oe,unfilteredParameters:formDataProxy(Oe),headers:ne,target:A,verb:o,errors:De,withCredentials:c.credentials||Tt.credentials||htmx.config.withCredentials,timeout:c.timeout||Tt.timeout||htmx.config.timeout,path:e,triggeringEvent:r};if(!triggerEvent(n,"htmx:configRequest",Le))return maybeCall(h),ae(),b;if(e=Le.path,o=Le.verb,ne=Le.headers,yt=formDataFromObject(Le.parameters),De=Le.errors,q=Le.useUrlParams,De&&De.length>0)return triggerEvent(n,"htmx:validation:halted",Le),maybeCall(h),ae(),b;const je=e.split("#"),mn=je[0],Rt=je[1];let Ue=e;if(q&&(Ue=mn,!yt.keys().next().done&&(Ue.indexOf("?")<0?Ue+="?":Ue+="&",Ue+=urlEncode(yt),Rt&&(Ue+="#"+Rt))),!verifyPath(n,Ue,Le))return triggerErrorEvent(n,"htmx:invalidPath",Le),maybeCall(p),b;if(j.open(o.toUpperCase(),Ue,!0),j.overrideMimeType("text/html"),j.withCredentials=Le.withCredentials,j.timeout=Le.timeout,!Tt.noHeaders){for(const Fe in ne)if(ne.hasOwnProperty(Fe)){const mt=ne[Fe];safelySetHeaderValue(j,Fe,mt)}}const ct={xhr:j,target:A,requestConfig:Le,etc:c,boosted:St,select:k,pathInfo:{requestPath:e,finalRequestPath:Ue,responsePath:null,anchor:Rt}};if(j.onload=function(){try{const Fe=hierarchyForElt(n);if(ct.pathInfo.responsePath=getPathFromResponse(j),y(n,ct),ct.keepIndicators!==!0&&removeRequestIndicators(dn,Zt),triggerEvent(n,"htmx:afterRequest",ct),triggerEvent(n,"htmx:afterOnLoad",ct),!bodyContains(n)){let mt=null;for(;Fe.length>0&&mt==null;){const de=Fe.shift();bodyContains(de)&&(mt=de)}mt&&(triggerEvent(mt,"htmx:afterRequest",ct),triggerEvent(mt,"htmx:afterOnLoad",ct))}maybeCall(h),ae()}catch(Fe){throw triggerErrorEvent(n,"htmx:onLoadError",mergeObjects({error:Fe},ct)),Fe}},j.onerror=function(){removeRequestIndicators(dn,Zt),triggerErrorEvent(n,"htmx:afterRequest",ct),triggerErrorEvent(n,"htmx:sendError",ct),maybeCall(p),ae()},j.onabort=function(){removeRequestIndicators(dn,Zt),triggerErrorEvent(n,"htmx:afterRequest",ct),triggerErrorEvent(n,"htmx:sendAbort",ct),maybeCall(p),ae()},j.ontimeout=function(){removeRequestIndicators(dn,Zt),triggerErrorEvent(n,"htmx:afterRequest",ct),triggerErrorEvent(n,"htmx:timeout",ct),maybeCall(p),ae()},!triggerEvent(n,"htmx:beforeRequest",ct))return maybeCall(h),ae(),b;var dn=addRequestIndicatorClasses(n),Zt=disableElements(n);forEach(["loadstart","loadend","progress","abort"],function(Fe){forEach([j,j.upload],function(mt){mt.addEventListener(Fe,function(de){triggerEvent(n,"htmx:xhr:"+Fe,{lengthComputable:de.lengthComputable,loaded:de.loaded,total:de.total})})})}),triggerEvent(n,"htmx:beforeSend",ct);const rn=q?null:encodeParamsForBody(j,n,yt);return j.send(rn),b}function determineHistoryUpdates(o,e){const n=e.xhr;let r=null,c=null;if(hasHeader(n,/HX-Push:/i)?(r=n.getResponseHeader("HX-Push"),c="push"):hasHeader(n,/HX-Push-Url:/i)?(r=n.getResponseHeader("HX-Push-Url"),c="push"):hasHeader(n,/HX-Replace-Url:/i)&&(r=n.getResponseHeader("HX-Replace-Url"),c="replace"),r)return r==="false"?{}:{type:c,path:r};const u=e.pathInfo.finalRequestPath,h=e.pathInfo.responsePath,p=getClosestAttributeValue(o,"hx-push-url"),b=getClosestAttributeValue(o,"hx-replace-url"),y=getInternalData(o).boosted;let k=null,A=null;return p?(k="push",A=p):b?(k="replace",A=b):y&&(k="push",A=h||u),A?A==="false"?{}:(A==="true"&&(A=h||u),e.pathInfo.anchor&&A.indexOf("#")===-1&&(A=A+"#"+e.pathInfo.anchor),{type:k,path:A}):{}}function codeMatches(o,e){var n=new RegExp(o.code);return n.test(e.toString(10))}function resolveResponseHandling(o){for(var e=0;e0?getWindow().setTimeout(_e,J.swapDelay):_e()}A&&triggerErrorEvent(o,"htmx:responseError",mergeObjects({error:"Response Status Error Code "+n.status+" from "+e.pathInfo.requestPath},e))}}const extensions={};function extensionBase(){return{init:function(o){return null},getSelectors:function(){return null},onEvent:function(o,e){return!0},transformResponse:function(o,e,n){return o},isInlineSwap:function(o){return!1},handleSwap:function(o,e,n,r){return!1},encodeParameters:function(o,e,n){return null}}}function defineExtension(o,e){e.init&&e.init(internalAPI),extensions[o]=mergeObjects(extensionBase(),e)}function removeExtension(o){delete extensions[o]}function getExtensions(o,e,n){if(e==null&&(e=[]),o==null)return e;n==null&&(n=[]);const r=getAttributeValue(o,"hx-ext");return r&&forEach(r.split(","),function(c){if(c=c.replace(/ /g,""),c.slice(0,7)=="ignore:"){n.push(c.slice(7));return}if(n.indexOf(c)<0){const u=extensions[c];u&&e.indexOf(u)<0&&e.push(u)}}),getExtensions(asElement(parentElt(o)),e,n)}var isReady=!1;getDocument().addEventListener("DOMContentLoaded",function(){isReady=!0});function ready(o){isReady||getDocument().readyState==="complete"?o():getDocument().addEventListener("DOMContentLoaded",o)}function insertIndicatorStyles(){if(htmx.config.includeIndicatorStyles!==!1){const o=htmx.config.inlineStyleNonce?` nonce="${htmx.config.inlineStyleNonce}"`:"";getDocument().head.insertAdjacentHTML("beforeend"," ."+htmx.config.indicatorClass+"{opacity:0} ."+htmx.config.requestClass+" ."+htmx.config.indicatorClass+"{opacity:1; transition: opacity 200ms ease-in;} ."+htmx.config.requestClass+"."+htmx.config.indicatorClass+"{opacity:1; transition: opacity 200ms ease-in;} ")}}function getMetaConfig(){const o=getDocument().querySelector('meta[name="htmx-config"]');return o?parseJSON(o.content):null}function mergeMetaConfig(){const o=getMetaConfig();o&&(htmx.config=mergeObjects(htmx.config,o))}return ready(function(){mergeMetaConfig(),insertIndicatorStyles();let o=getDocument().body;processNode(o);const e=getDocument().querySelectorAll("[hx-trigger='restored'],[data-hx-trigger='restored']");o.addEventListener("htmx:abort",function(r){const c=r.target,u=getInternalData(c);u&&u.xhr&&u.xhr.abort()});const n=window.onpopstate?window.onpopstate.bind(window):null;window.onpopstate=function(r){r.state&&r.state.htmx?(restoreHistory(),forEach(e,function(c){triggerEvent(c,"htmx:restored",{document:getDocument(),triggerEvent})})):n&&n(r)},getWindow().setTimeout(function(){triggerEvent(o,"htmx:load",{}),o=null},0)}),htmx})();mustache.escape=function(o){return o};const entryComponents={account:Account,channel:Channel};let loadedComponents=[],loadSvelte=function(){loadedComponents.map(n=>n.$destroy()),loadedComponents=[];const o=document.body.querySelectorAll(".lucent-component");if(o.length===0)return;const e=function(n){const r=n.attributes["data-layout"].value,[c,u]=Object.entries(entryComponents).find(([y,k])=>r===y);if(!u)return[];const h=document.getElementById("json-"+r).innerHTML,p=JSON.parse(h);p.axios=axiosInstance;const b={target:n,props:p};loadedComponents=[...loadedComponents,new u(b)]};Array.from(o).map(e)};document.addEventListener("DOMContentLoaded",loadSvelte); diff --git a/front/dist/assets/main-U24QISX_.css b/front/dist/assets/main-U24QISX_.css new file mode 100644 index 0000000..1f2c755 --- /dev/null +++ b/front/dist/assets/main-U24QISX_.css @@ -0,0 +1 @@ +@charset "UTF-8";:root{--p10: #f4f9ff;--p20: #eaf1f9;--p30: #b3ceff;--p40: #8db5ff;--p50: #70a2ff;--p60: #679cff;--p70: #4284ff;--p80: #1c6bff;--p90: #002b7a;--p100: #000C23;--suc10: #d1ffb8;--suc20: #d1ffb8;--suc30: #b5ff8d;--suc40: #a2ff70;--suc50: #82cc5a;--suc80: #71b34e;--suc90: #314c22;--err10: #ffb9d0;--err20: #ff9bb3;--err30: #fe7e97;--err40: #de617b;--err50: #be4461;--err80: #61001a;--err90: #560012;--grey-dark: #424656;--grey-light: #a6abbd;--text: var(--p100);--text-light: var(--grey-dark);--text-error: var(--err50);--main-font: ‘Open Sans‘, Arial, Helvetica, sans-serif}*,*:before,*:after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pt-4{padding-top:16px}.pt-5{padding-top:20px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-5{padding-bottom:20px}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.hide{display:none!important}.hidden{visibility:hidden}.d-block{display:block}.d-inline-block{display:inline-block}.is-bold{font-weight:700}.in-place{padding:36px}.notice{background-color:var(--p20);padding:14px;margin:2rem 0;position:relative;font-size:16px;line-height:24px;border-radius:12px}.notice .title{content:"NOTE";border-radius:12px;display:block;font-weight:700}.notice.notice-success{background:var(--suc20)}.notice.notice-error{background:var(--err10)}.scope-login{display:flex;height:100vh}.scope-login .bg-image{width:50%;background:url(/vendor/lucent/public/art.jpg);background-size:cover;background-repeat:no-repeat;background-position:center center}.scope-login .login-form{width:50%;height:100vh;display:flex;align-items:center;justify-content:center}.content{font-size:16px;line-height:20px;font-family:var(--main-font);color:var(--text)}.content p{margin-bottom:14px}.content p:last-child{margin-bottom:0}.content h1{font-size:24px;line-height:34px}.content h2{font-size:20px;line-height:30px}.content ul{padding:0 0 0 16px;list-style:none outside none}.content ul li:before{content:"—";opacity:.5;font-size:12px;padding-right:6px;vertical-align:10%}.content ul li{list-style:none;padding:0}.content code{background:var(--p30);padding:0 6px;border-radius:12px}.content img{margin-bottom:14px}.content blockquote{border:1px solid var(--p30);border-radius:12px;padding:12px 40px;position:relative}.content blockquote:before{content:"“";color:var(--p60);font-size:4em;position:absolute;left:10px;top:20px}.content blockquote:after{content:""}.content pre{background:var(--grey-light);border-radius:.5rem;color:var(--white);font-family:JetBrainsMono,monospace;margin:1.5rem 0;padding:.75rem 1rem}.content pre code{background:none;color:inherit;font-size:.8rem;padding:0}.lx-small-text{font-size:12px;line-height:15px}.light-text{color:var(--text-light)}.sidebar-top{border:0px solid var(--p30);font-size:18px;padding:20px;display:flex;align-items:center;justify-content:space-between;background:var(--p20);margin-bottom:15px;border-radius:12px}.sidebar{border-radius:12px;font-size:15px;line-height:28px;padding:20px;background:var(--p20);display:flex;flex-direction:column;gap:3px}.sidebar-header{display:flex;cursor:pointer;justify-content:space-between;align-items:center;background:var(--p30);font-size:16px;padding:3px 12px;color:var(--text);border:none;border-radius:12px}.sidebar-header:focus{box-shadow:none}.sidebar-header:hover{background:var(--p40)}.sidebar-header:last-child{border-bottom:none}.sidebar-item{color:var(--text);display:block;font-size:14px;padding:3px 12px;text-decoration:none;transition:.6s;border-radius:12px}.sidebar-item:last-child{border-bottom:none}.sidebar-item:hover{background:var(--p30)}.sidebar-item.active{background:var(--p40)}.top-nav{display:flex;justify-content:end;align-items:center;gap:10px}.top-nav-item{border-radius:12px;font-size:14px;background:var(--p20);padding:3px 10px}.top-nav-item:hover{background:var(--p30)}label{display:block;font-weight:700;margin-bottom:4px}input[type=text],input[type=number],input[type=search],input[type=email],textarea{width:100%;background:var(--p20);border:1px solid var(--p50);border-radius:5px;padding:5px 7px;font-size:16px}input[type=text]:focus,input[type=number]:focus,input[type=search]:focus,input[type=email]:focus,textarea:focus{background:var(--p10)}textarea{resize:none}select{width:100%;background:var(--p20);border:1px solid var(--p50);border-radius:5px;padding:5px 7px;font-size:16px}select:focus{background:var(--p10)}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline}.bt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#000;background-image:none;border:1px solid #000;border-radius:4px;box-shadow:#fff 4px 4px,#000 4px 4px 0 1px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;font-family:ITCAvantGardeStd-Bk,Arial,sans-serif;font-size:16px;font-weight:400;line-height:20px;margin:0 5px 10px 0;overflow:visible;padding:8px 40px;text-align:center;text-transform:none;touch-action:manipulation;user-select:none;-webkit-user-select:none;vertical-align:middle;white-space:nowrap}.bt:focus{text-decoration:none}.bt:hover{text-decoration:none}.bt:active{box-shadow:#00000020 0 3px 5px inset;outline:0}.bt:not([disabled]):active{box-shadow:#fff 2px 2px,#000 2px 2px 0 1px;transform:translate(2px,2px)}.table{min-width:600px;overflow:auto;background:var(--p20);padding:1px;font-size:14px;border-radius:12px}.table table{background:var(--p20);width:100%;border-collapse:separate;border:none;border-spacing:0}.table thead,.table thead tr{border-radius:12px}.table th{font-size:14px;font-weight:400;white-space:nowrap;max-width:400px;border:none;background:var(--p20);text-align:left;padding:8px 16px}.table th.is-sort{font-weight:700}.table th:first-child{border-radius:12px 0 0}.table th:last-child{border-radius:0 12px 0 0}.table td{font-weight:400;white-space:nowrap;max-width:400px;height:48px;padding:4px 16px;border:none;overflow:hidden}.table td .status{color:var(--text);font-size:80%}.table td .row-name{display:flex;align-items:center;gap:6px}.table td .title-td-contents{display:flex;align-items:center;gap:6px;font-size:14px;line-height:14px}.table tbody tr{border-radius:12px;background:var(--p10);border:none}.table tbody tr:has(input:checked){background:var(--p30)}.table tbody tr:hover{background:var(--p20)}.table .field-ui-number{text-align:right}.file-table-row{display:flex;align-items:center;gap:5px}.file-table-row>div{display:flex;flex-flow:column;gap:5px}.avatar{display:inline-block;vertical-align:middle;position:relative;color:#fff;border-radius:50%}.avatar__letters{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.avatars-compact{position:relative}.avatars-compact .avatar{margin-left:-9px}.is-editable-false .cm-content,.cm-focused .cm-content{background-color:var(--p10)}.cm-content{background-color:var(--p20)}.cm-activeLine{background-color:var(--p20)!important}.tiptap{width:100%;background:var(--p20);border:1px solid var(--p50);border-radius:0 0 5px 5px;padding:15px;font-size:16px}.tiptap :first-child{margin-top:0}.tiptap:focus{background:var(--p10)}.tiptap img.ProseMirror-selectednode{box-shadow:0 0 1px 2px var(--p70)}.editor-field .editor-toolbar{display:flex;gap:4px;background:var(--p30);border-radius:5px 5px 0 0;padding:5px 7px}.editor-field .editor-toolbar .button:not(.primary){font-weight:700}.editor-field .editor-toolbar .button:not(.primary).active{background:var(--p40)}.content .tiptap li>p{display:inline}trix-editor{background:var(--p20)!important;border:1px solid var(--p50)!important;border-radius:0 0 5px 5px!important;padding:15px!important}trix-editor>div{margin-bottom:14px;font-size:16px;line-height:23px}trix-editor:focus{background:var(--p10)!important}trix-editor figure.attachment{display:flex!important;flex-direction:column!important;justify-content:center;align-items:center;gap:10px}trix-editor .attachment{background:var(--p20);padding:12px 0;text-align:center;display:flex;justify-content:center}trix-editor .attachment img{margin-bottom:0}trix-editor [data-trix-mutable].attachment img{box-shadow:0 0 1px 2px var(--p70)!important}trix-editor .trix-button--remove{box-shadow:none!important;border:2px solid var(--p40)!important}trix-editor .trix-button--remove:hover{border:2px solid var(--p40)}trix-editor a{color:var(--p80)}trix-toolbar .trix-button-row{display:flex}trix-toolbar .trix-button-group{background:transparent!important;border:none!important;display:flex!important;gap:4px}trix-toolbar .trix-button-group--history-tools,trix-toolbar .trix-button-group--file-tools{display:none!important}trix-toolbar .trix-button{border-radius:6px!important;background:var(--p30)!important;padding:14px 22px!important;margin:0!important;cursor:pointer;border:0px solid var(--p30)!important;font-size:14px!important;min-height:27px!important;display:flex!important;align-items:center!important;gap:4px;color:var(--text)!important}trix-toolbar .trix-button:before{background-size:22px!important}trix-toolbar .trix-button:hover{background:var(--p40)!important}trix-toolbar .trix-button.trix-active{background:var(--p50)!important}.sidebar-content{min-width:300px;max-width:400px;position:relative}.main-content{position:relative;width:fit-content;min-width:900px}.main-wrapper{display:flex;justify-content:center;gap:40px;padding:20px;position:relative}.wrapper-tiny{background-color:var(--p20);border-radius:12px;margin:44px auto;width:600px;padding:44px}.common-wrapper{background-color:var(--p20);margin:20px 0;padding:20px;border-radius:12px}.wrapper-normal{background-color:#fff;border-radius:32px;margin:44px auto;width:1000px;padding:44px}.wrapper-normal.transparent{margin:0 auto;padding:0;background-color:transparent}.wrapper-large{background-color:#fff;border-radius:32px;margin:44px auto;max-width:1920px;min-width:1000px;padding:44px;width:fit-content}.wrapper-large.transparent{padding:0;margin:0 auto;background-color:transparent}@media only screen and (max-width: 1800px){.wrapper-normal{margin:0 0 0 auto;padding:20px}.wrapper-normal.transparent{margin:0 0 0 auto;padding:40px}.wrapper-large{margin:44px 0 0 auto;padding:44px}.wrapper-large.transparent{margin:0 0 0 auto;padding:40px}}@media only screen and (max-width: 1390px){.wrapper-normal{margin:0 auto;padding:20px}.wrapper-normal.transparent{margin:0 auto;padding:40px}.wrapper-large{margin:44px 0 0 auto;padding:44px}.wrapper-large.transparent{margin:0 0 0 auto;padding:40px}}.section-actions{text-align:center;padding:32px 0}.header-normal,.header-small{text-align:left;font-weight:400;font-size:20px}.toolbar{display:flex;align-items:center;gap:5px;justify-content:space-between}.toolbar input.search{border-radius:12px;background:var(--p20);padding:4px 10px;cursor:pointer;border:none;font-size:14px}.toolbar .selected-filter{font-size:13px;border-radius:12px;margin:2px 0;background:var(--p30);padding:3px 10px;display:flex;gap:4px;line-height:22px}.toolbar .filter-input{margin:10px 0}.toolbar .filter-input input{font-size:13px}.toolbar .applied-filter{background:var(--p30)}.toolbar-filters{display:flex;align-items:center;gap:5px}.applied-filters{display:flex;gap:4px;margin-top:10px}.applied-filters .applied-filter{font-size:13px;border-radius:12px;background:var(--p20);padding:3px 10px;display:flex;justify-content:center;gap:4px;line-height:22px}.applied-filters .applied-filter:hover{background-color:var(--p30)}.dropdown{position:relative;overflow:visible}.dropdown-button>div{display:flex;align-items:center;gap:3px}.dropdown-menu{display:flex;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:22;background:var(--p20);transition:.6s;flex-grow:1;top:35px;min-width:max-content;border:1px solid var(--p30)}.dropdown-menu.orientation-right{right:0}.dropdown-menu.orientation-left{left:0}.dropdown-header,.dropdown-item{display:flex;align-items:center;gap:3px;text-wrap:nowrap}.dropdown-header{padding:10px}.dropdown-item{font-size:14px;padding:3px 10px}.dropdown-item:hover{background:var(--p30);border-radius:12px}.dropdown-item:hover button{background:var(--p30)}.dropdown-item .button-icon{flex-shrink:0}.editor-field .dropdown-menu{background:var(--p30)}.button{border-radius:12px;background:var(--p20);padding:3px 10px;cursor:pointer;border:0px solid var(--p30);font-size:14px;min-height:27px;display:flex;align-items:center;gap:4px;color:var(--text)}.button:hover{background:var(--p30)}.button:active{background:var(--p50)!important;box-shadow:none}.button.active,.button.secondary{background:var(--p30)}.button.secondary:hover{background:var(--p40)}.button.primary{background:var(--p70);color:var(--p10)}.button.primary:hover{background:var(--p90)}.button[disabled]{pointer-events:none;opacity:.7;color:var(--text)}.upload-button{padding:0;border:none}.upload-button label{font-size:14px;line-height:14px;font-weight:400;background:var(--p80)!important;color:var(--p10)}.button-text{border:none;padding:0;background:transparent;cursor:pointer}.spinner-border{width:12px;height:12px;border:2px solid var(--p10);border-bottom-color:var(--p30);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@supports (-webkit-appearance: none) or (-moz-appearance: none){.checkbox-wrapper input[type=checkbox]{--active-inner: var(--p10);--focus: 2px var(--p30);--border-hover: var(--p30);--disabled: #F6F8FF;--disabled-inner: #E1E6F9;-webkit-appearance:none;-moz-appearance:none;height:21px;outline:none;display:inline-block;vertical-align:top;position:relative;margin:0;cursor:pointer;border:1px solid var(--bc, var(--p30));background:var(--b, var(--p10));transition:background .3s,border-color .3s,box-shadow .2s}.checkbox-wrapper input[type=checkbox]:after{content:"";display:block;left:0;top:0;position:absolute;transition:transform var(--d-t, .3s) var(--d-t-e, ease),opacity var(--d-o, .2s)}.checkbox-wrapper input[type=checkbox]:checked{--b: var(--p40);--bc: var(--p40);--d-o: .3s;--d-t: .6s;--d-t-e: cubic-bezier(.2, .85, .32, 1.2)}.checkbox-wrapper input[type=checkbox]:disabled{--b: var(--disabled);cursor:not-allowed;opacity:.9}.checkbox-wrapper input[type=checkbox]:disabled:checked{--b: var(--disabled-inner);--bc: var(--p40)}.checkbox-wrapper input[type=checkbox]:disabled+label{cursor:not-allowed}.checkbox-wrapper input[type=checkbox]:hover:not(:checked):not(:disabled){--bc: var(--border-hover)}.checkbox-wrapper input[type=checkbox]:focus{box-shadow:0 0 0 var(--focus)}.checkbox-wrapper input[type=checkbox]:not(.switch){width:21px}.checkbox-wrapper input[type=checkbox]:not(.switch):after{opacity:var(--o, 0)}.checkbox-wrapper input[type=checkbox]:not(.switch):checked{--o: 1}.checkbox-wrapper input[type=checkbox]+label{display:inline-block;vertical-align:middle;cursor:pointer;margin-left:4px}.checkbox-wrapper input[type=checkbox]:not(.switch){border-radius:7px}.checkbox-wrapper input[type=checkbox]:not(.switch):after{width:5px;height:9px;border:2px solid var(--active-inner);border-top:0;border-left:0;left:7px;top:4px;transform:rotate(var(--r, 20deg))}.checkbox-wrapper input[type=checkbox]:not(.switch):checked{--r: 43deg}}.checkbox-wrapper *{box-sizing:inherit}.checkbox-wrapper *:before,.checkbox-wrapper *:after{box-sizing:inherit}.checkbox-wrapper input[type=checkbox]:indeterminate{--b: var(--p40);--bc: var(--p40);--d-o: .3s;--d-t: .6s;--d-t-e: cubic-bezier(.2, .85, .32, 1.2)}.pagination{margin:20px auto 10px;display:flex;justify-content:center;align-items:center;gap:4px;list-style:none;padding:0}.pagination li a,.pagination li span{font-size:14px;border-radius:12px;padding:4px 18px;background:var(--p20)}.pagination li a:hover,.pagination li span:hover{background:var(--p30)}.pagination li.disabled{pointer-events:none;opacity:.7}.pagination li.active span{background:var(--p30)}.record-edit{position:relative;max-width:900px}.record-edit .invalid-feedback{color:var(--text-error);font-size:15px;line-height:20px;margin-top:10px}.record-header{margin:10px 0 0}.record-header .schema-name{font-size:14px}.record-header .record-title{font-size:18px;display:block}.tools-header{margin:30px 0 0;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;position:relative;z-index:20;padding:10px;border-radius:12px;background:var(--p20)}.editor-field{background:var(--p20);padding:18px;position:relative;border-radius:12px;margin:6px 0;border-color:transparent}.editor-field .button:not(.primary){background:var(--p30)}.editor-field .button:not(.primary):hover{background:var(--p40)}.editor-field dialog .button:not(.primary){background:var(--p20)}.editor-field dialog .button:not(.primary):hover{background:var(--p30)}.field-header{margin-bottom:4px;position:relative}.field-header .labels{display:flex;justify-content:space-between;align-items:center}.field-header .label-and-help{display:flex;align-items:center;gap:6px}.field-header label{font-size:14px;line-height:14px;margin:0;font-weight:700}.field-header .help-text{font-size:14px;line-height:14px}.system-help-text{font-size:14px;line-height:14px;margin-top:10px}.field-checkbox{display:flex;gap:20px;align-items:center}.field-checkbox .form-check-inline{display:flex;align-items:center;gap:4px}.field-checkbox .form-check-label{font-size:14px;line-height:14px}.record-edit-file-preview{display:flex;gap:20px}.record-edit-file-preview .file-details{width:50%;display:flex;flex-direction:column;gap:5px}.record-edit-file-preview .file-details-item .text-muted{color:var(--grey-dark)}.tabs{padding:0;margin:20px 0;display:flex;gap:4px}.tabs .tab{list-style:none}input.switch{-webkit-appearance:none;width:34px;height:18px;border:1px solid var(--p40);position:relative;border-radius:50px;box-sizing:content-box;cursor:pointer;transition:background .15s ease-in-out;background:#fff}input.switch:after{top:2px;left:2px;transition:left .15s ease-in-out;content:" ";width:14px;height:14px;background:var(--p40);box-shadow:inset 0 0 0 1px var(--p40);position:absolute;border-radius:50px}input.switch:checked{background:var(--p50)}input.switch:checked:after{left:calc(100% - 17px);background:var(--p10)}.preview-file,.preview-reference{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--p10);border-radius:12px}.preview-file .image,.preview-reference .image{display:flex}.preview-file .reference-action,.preview-reference .reference-action{display:none}.preview-file:hover,.preview-reference:hover{background:var(--p30)}.preview-file:hover .reference-action,.preview-reference:hover .reference-action{display:block}.file-preview-small{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border-radius:12px;padding:4px}.preview-reference{background:var(--p10);padding:10px 20px}.sortable-container{display:flex;flex-direction:column;gap:5px}.sortable-ghost{border:2px dashed var(--p60)}.sortable-drag{opacity:0!important}.sortable-ghost{opacity:1!important}body:has(dialog[open]){overflow:hidden}dialog{margin:2vh auto;background-color:#fff;padding:34px;border:none;border-radius:12px;overflow:auto;max-height:96vh;box-shadow:none!important}dialog .close{position:absolute;top:10px;right:0}dialog .dialog-body{width:fit-content}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{margin-bottom:20px;display:flex;align-items:center;gap:8px;position:sticky;top:-34px;z-index:999;background:#fff;padding:10px 0}.autocomplete{position:relative;z-index:1000;overflow:visible}.autocomplete .autocomplete-option{cursor:pointer;font-size:14px;padding:3px 10px}.autocomplete .autocomplete-option:hover{background:var(--p40);border-radius:12px}.autocomplete:focus-within .autocomplete-results{display:flex}.autocomplete-selected-value{font-size:13px;margin-top:10px;border-radius:12px;background:var(--p30);padding:3px 10px;display:inline-flex;justify-content:center;gap:4px;line-height:22px}.autocomplete-selected-value:hover{background:var(--p40)}.autocomplete-results{display:none;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:20;background:var(--p30);transition:.6s;flex-grow:1;top:45px;width:100%}.reference-tags{position:relative;z-index:20}.reference-tags .reference-tags-option{cursor:pointer;font-size:14px;padding:3px 10px}.reference-tags .reference-tags-option:hover{background:var(--p40);border-radius:12px}.reference-tags:focus-within .reference-tags-results{display:flex}.reference-tags-selected-value{font-size:13px;margin-top:10px;border-radius:12px;background:var(--p30);padding:3px 10px;display:inline-flex;justify-content:center;gap:4px;line-height:22px}.reference-tags-selected-value:hover{background:var(--p40)}.reference-tags-results{display:none;flex-direction:column;padding:10px;overflow:visible;position:absolute;border-radius:12px;z-index:20;background:var(--p30);transition:.6s;flex-grow:1;top:45px;width:100%}.reference-tags-results .start-typing{font-style:italic;font-size:13px}.member-list{display:flex;flex-direction:column;gap:5px}.member-item{background:var(--p30);border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center}.member-item .member-name{display:flex;align-items:center;gap:10px}.revisions{display:flex;flex-direction:column;gap:5px}.revisions .revision{justify-content:space-between;display:flex;gap:20px;align-items:center;background:var(--p20);padding:12px;border-radius:12px}.revisions .revision .version{display:flex;gap:10px}.revisions .revision.active{background:var(--p30)}.selected-revision{margin-top:30px;align-items:center;background:var(--p20);padding:12px;border-radius:12px}.selected-revision .button{background:var(--p30)}.selected-revision .revision-field{display:flex;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--p30);flex:1}.selected-revision .revision-field .compare-left,.selected-revision .revision-field .compare-right{width:45%;border-radius:12px;padding:20px;background:var(--p30)}.selected-revision .revision-field .compare-center{width:10%;height:100%;display:flex;gap:20px;align-items:center}.reference-field{width:100px}.revision-references{display:flex;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--p30)}.reference-compare{width:45%;border-radius:12px;padding:20px;background:var(--p30)}body{background-color:var(--p10);font-family:var(--main-font),sans-serif;color:var(--text)}body :focus{outline:none;box-shadow:0 0 1px 2px var(--p70)}.btn-spinner .spinner-border{display:none}.btn-spinner.spinner-on .spinner-border{display:inline-block}.cursor-pointer{cursor:pointer}a{color:var(--text);text-decoration:none}.lucent-component{position:relative}.status-removed.svelte-1jo1k1d{opacity:.5}svg.svelte-r4pd9j{vertical-align:text-top}img.svelte-1mb3bsz{border-radius:12px;padding:4px}.color.svelte-78o2k4{width:18px;height:18px;display:inline-block;position:relative;top:3px}a.svelte-nbbgyi{max-width:200px;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:#333}a.svelte-nbbgyi:hover{opacity:.5}div.references.svelte-15ilpfz{max-height:48px;overflow-x:hidden;overflow-y:hidden}div.svelte-1ft053t{max-height:24px;text-overflow:ellipsis;overflow:hidden}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,.08);box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-months .flatpickr-month{background:transparent;color:#000000e6;fill:#000000e6;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#000000e6;fill:#000000e6}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,.6);top:26%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,.6);top:40%}.numInputWrapper span svg path{fill:#00000080}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#00000080;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:#0000008a;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 #e6e6e6}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 #569ff7}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#3939394d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,.08);box-shadow:0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:"";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#bbb}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:#0000001a}.numInputWrapper span:active{background:#0003}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#5a617180}.numInputWrapper:hover{background:#0000000d}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:#0000000d}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#5a617180;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:#0000000d}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:none;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 #eceef1}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 #ff5a5f}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2,5px 0 0 #e2e2e2;box-shadow:-5px 0 #e2e2e2,5px 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#4848484d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#4848481a}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f,5px 0 0 #ff5a5f;box-shadow:-5px 0 #ff5a5f,5px 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#4848484d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}span.flatpickr-day.selected{font-weight:700}textarea.svelte-1er4ovm{resize:none}.tox{box-shadow:none;box-sizing:content-box;color:#222f3e;cursor:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:normal;-webkit-tap-highlight-color:transparent;text-decoration:none;text-shadow:none;text-transform:none;vertical-align:initial;white-space:normal}.tox *:not(svg):not(rect){box-sizing:inherit;color:inherit;cursor:inherit;direction:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;line-height:inherit;-webkit-tap-highlight-color:inherit;text-align:inherit;text-decoration:inherit;text-shadow:inherit;text-transform:inherit;vertical-align:inherit;white-space:inherit}.tox *:not(svg):not(rect){background:transparent;border:0;box-shadow:none;float:none;height:auto;margin:0;max-width:none;outline:0;padding:0;position:static;width:auto}.tox:not([dir=rtl]){direction:ltr;text-align:left}.tox[dir=rtl]{direction:rtl;text-align:right}.tox-tinymce{border:2px solid #eeeeee;border-radius:10px;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;overflow:hidden;position:relative;visibility:inherit!important}.tox.tox-tinymce-inline{border:none;box-shadow:none;overflow:initial}.tox.tox-tinymce-inline .tox-editor-container{overflow:initial}.tox.tox-tinymce-inline .tox-editor-header{background-color:#fff;border:2px solid #eeeeee;border-radius:10px;box-shadow:none;overflow:hidden}.tox-tinymce-aux{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;z-index:1300}.tox-tinymce *:focus,.tox-tinymce-aux *:focus{outline:none}button::-moz-focus-inner{border:0}.tox[dir=rtl] .tox-icon--flip svg{transform:rotateY(180deg)}.tox .accessibility-issue__header{align-items:center;display:flex;margin-bottom:4px}.tox .accessibility-issue__description{align-items:stretch;border-radius:6px;display:flex;justify-content:space-between}.tox .accessibility-issue__description>div{padding-bottom:4px}.tox .accessibility-issue__description>div>div{align-items:center;display:flex;margin-bottom:4px}.tox .accessibility-issue__description>div>div .tox-icon svg{display:block}.tox .accessibility-issue__repair{margin-top:16px}.tox .tox-dialog__body-content .accessibility-issue--info .accessibility-issue__description{background-color:#0065d81a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--info .tox-form__group h2{color:#006ce7}.tox .tox-dialog__body-content .accessibility-issue--info .tox-icon svg{fill:#006ce7}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon{background-color:#006ce7;color:#fff}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:focus{background-color:#0060ce}.tox .tox-dialog__body-content .accessibility-issue--info a.tox-button--naked.tox-button--icon:active{background-color:#0054b4}.tox .tox-dialog__body-content .accessibility-issue--warn .accessibility-issue__description{background-color:#ffa50014;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn .tox-form__group h2{color:#8f5d00}.tox .tox-dialog__body-content .accessibility-issue--warn .tox-icon svg{fill:#8f5d00}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon{background-color:#ffe89d;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:focus{background-color:#f2d574;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--warn a.tox-button--naked.tox-button--icon:active{background-color:#e8c657;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error .accessibility-issue__description{background-color:#cc00001a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error .tox-form__group h2{color:#c00}.tox .tox-dialog__body-content .accessibility-issue--error .tox-icon svg{fill:#c00}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon{background-color:#f2bfbf;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:hover,.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:focus{background-color:#e9a4a4;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--error a.tox-button--naked.tox-button--icon:active{background-color:#ee9494;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--success .accessibility-issue__description{background-color:#78ab461a;color:#222f3e}.tox .tox-dialog__body-content .accessibility-issue--success .accessibility-issue__description>*:last-child{display:none}.tox .tox-dialog__body-content .accessibility-issue--success .tox-form__group h2{color:#527530}.tox .tox-dialog__body-content .accessibility-issue--success .tox-icon svg{fill:#527530}.tox .tox-dialog__body-content .accessibility-issue__header .tox-form__group h1,.tox .tox-dialog__body-content .tox-form__group .accessibility-issue__description h2{font-size:14px;margin-top:0}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__header .tox-button{margin-left:4px}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__header>*:nth-last-child(2){margin-left:auto}.tox:not([dir=rtl]) .tox-dialog__body-content .accessibility-issue__description{padding:4px 4px 4px 8px}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__header .tox-button{margin-right:4px}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__header>*:nth-last-child(2){margin-right:auto}.tox[dir=rtl] .tox-dialog__body-content .accessibility-issue__description{padding:4px 8px 4px 4px}.tox .tox-advtemplate .tox-form__grid{flex:1}.tox .tox-advtemplate .tox-form__grid>div:first-child{display:flex;flex-direction:column;width:30%}.tox .tox-advtemplate .tox-form__grid>div:first-child>div:nth-child(2){flex-basis:0;flex-grow:1;overflow:auto}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-advtemplate .tox-form__grid>div:first-child{width:100%}}.tox .tox-advtemplate iframe{border-color:#eee;border-radius:10px;border-style:solid;border-width:1px;margin:0 10px}.tox .tox-anchorbar,.tox .tox-bottom-anchorbar,.tox .tox-bar{display:flex;flex:0 0 auto}.tox .tox-button{background-color:#006ce7;background-image:none;background-position:0 0;background-repeat:repeat;border-color:#006ce7;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;font-style:normal;font-weight:700;letter-spacing:normal;line-height:24px;margin:0;outline:none;padding:4px 16px;position:relative;text-align:center;text-decoration:none;text-transform:none;white-space:nowrap}.tox .tox-button:before{border-radius:6px;bottom:-1px;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #006ce7,0 0 0 3px #006ce740;content:"";left:-1px;opacity:0;pointer-events:none;position:absolute;right:-1px;top:-1px}.tox .tox-button[disabled]{background-color:#006ce7;background-image:none;border-color:#006ce7;box-shadow:none;color:#ffffff80;cursor:not-allowed}.tox .tox-button:focus:not(:disabled){background-color:#0060ce;background-image:none;border-color:#0060ce;box-shadow:none;color:#fff}.tox .tox-button:focus-visible:not(:disabled):before{opacity:1}.tox .tox-button:hover:not(:disabled){background-color:#0060ce;background-image:none;border-color:#0060ce;box-shadow:none;color:#fff}.tox .tox-button:active:not(:disabled){background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled{background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled[disabled]{background-color:#0054b4;background-image:none;border-color:#0054b4;box-shadow:none;color:#ffffff80;cursor:not-allowed}.tox .tox-button.tox-button--enabled:focus:not(:disabled){background-color:#00489b;background-image:none;border-color:#00489b;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled:hover:not(:disabled){background-color:#00489b;background-image:none;border-color:#00489b;box-shadow:none;color:#fff}.tox .tox-button.tox-button--enabled:active:not(:disabled){background-color:#003c81;background-image:none;border-color:#003c81;box-shadow:none;color:#fff}.tox .tox-button--icon-and-text,.tox .tox-button.tox-button--icon-and-text,.tox .tox-button.tox-button--secondary.tox-button--icon-and-text{display:flex;padding:5px 4px}.tox .tox-button--icon-and-text .tox-icon svg,.tox .tox-button.tox-button--icon-and-text .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon-and-text .tox-icon svg{display:block;fill:currentColor}.tox .tox-button--secondary{background-color:#f0f0f0;background-image:none;background-position:0 0;background-repeat:repeat;border-color:#f0f0f0;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;color:#222f3e;font-size:14px;font-style:normal;font-weight:700;letter-spacing:normal;outline:none;padding:4px 16px;text-decoration:none;text-transform:none}.tox .tox-button--secondary[disabled]{background-color:#f0f0f0;background-image:none;border-color:#f0f0f0;box-shadow:none;color:#222f3e80}.tox .tox-button--secondary:focus:not(:disabled){background-color:#e3e3e3;background-image:none;border-color:#e3e3e3;box-shadow:none;color:#222f3e}.tox .tox-button--secondary:hover:not(:disabled){background-color:#e3e3e3;background-image:none;border-color:#e3e3e3;box-shadow:none;color:#222f3e}.tox .tox-button--secondary:active:not(:disabled){background-color:#d6d6d6;background-image:none;border-color:#d6d6d6;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled{background-color:#a8c8ed;background-image:none;border-color:#a8c8ed;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled[disabled]{background-color:#a8c8ed;background-image:none;border-color:#a8c8ed;box-shadow:none;color:#222f3e80}.tox .tox-button--secondary.tox-button--enabled:focus:not(:disabled){background-color:#93bbe9;background-image:none;border-color:#93bbe9;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled:hover:not(:disabled){background-color:#93bbe9;background-image:none;border-color:#93bbe9;box-shadow:none;color:#222f3e}.tox .tox-button--secondary.tox-button--enabled:active:not(:disabled){background-color:#7daee4;background-image:none;border-color:#7daee4;box-shadow:none;color:#222f3e}.tox .tox-button--icon,.tox .tox-button.tox-button--icon,.tox .tox-button.tox-button--secondary.tox-button--icon{padding:4px}.tox .tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--icon .tox-icon svg,.tox .tox-button.tox-button--secondary.tox-button--icon .tox-icon svg{display:block;fill:currentColor}.tox .tox-button-link{background:0;border:none;box-sizing:border-box;cursor:pointer;display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;font-weight:400;line-height:1.3;margin:0;padding:0;white-space:nowrap}.tox .tox-button-link--sm{font-size:14px}.tox .tox-button--naked{background-color:transparent;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked[disabled]{background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e80}.tox .tox-button--naked:hover:not(:disabled){background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked:focus:not(:disabled){background-color:#222f3e1f;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked:active:not(:disabled){background-color:#222f3e2e;border-color:transparent;box-shadow:unset;color:#222f3e}.tox .tox-button--naked .tox-icon svg{fill:currentColor}.tox .tox-button--naked.tox-button--icon:hover:not(:disabled){color:#222f3e}.tox .tox-checkbox{align-items:center;border-radius:6px;cursor:pointer;display:flex;height:36px;min-width:36px}.tox .tox-checkbox__input{height:1px;overflow:hidden;position:absolute;top:auto;width:1px}.tox .tox-checkbox__icons{align-items:center;border-radius:6px;box-shadow:0 0 0 2px transparent;box-sizing:content-box;display:flex;height:24px;justify-content:center;padding:3px;width:24px}.tox .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:block;fill:#222f3e4d}.tox .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display:none;fill:#006ce7}.tox .tox-checkbox__icons .tox-checkbox-icon__checked svg{display:none;fill:#006ce7}.tox .tox-checkbox--disabled{color:#222f3e80;cursor:not-allowed}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__checked svg{fill:#222f3e80}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__unchecked svg{fill:#222f3e80}.tox .tox-checkbox--disabled .tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{fill:#222f3e80}.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:none}.tox input.tox-checkbox__input:checked+.tox-checkbox__icons .tox-checkbox-icon__checked svg{display:block}.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__unchecked svg{display:none}.tox input.tox-checkbox__input:indeterminate+.tox-checkbox__icons .tox-checkbox-icon__indeterminate svg{display:block}.tox input.tox-checkbox__input:focus+.tox-checkbox__icons{border-radius:6px;box-shadow:inset 0 0 0 1px #006ce7;padding:3px}.tox:not([dir=rtl]) .tox-checkbox__label{margin-left:4px}.tox:not([dir=rtl]) .tox-checkbox__input{left:-10000px}.tox:not([dir=rtl]) .tox-bar .tox-checkbox{margin-left:4px}.tox[dir=rtl] .tox-checkbox__label{margin-right:4px}.tox[dir=rtl] .tox-checkbox__input{right:-10000px}.tox[dir=rtl] .tox-bar .tox-checkbox{margin-right:4px}.tox .tox-collection--toolbar .tox-collection__group{display:flex;padding:0}.tox .tox-collection--grid .tox-collection__group{display:flex;flex-wrap:wrap;max-height:208px;overflow-x:hidden;overflow-y:auto;padding:0}.tox .tox-collection--list .tox-collection__group{border-bottom-width:0;border-color:#e3e3e3;border-left-width:0;border-right-width:0;border-style:solid;border-top-width:1px;padding:4px 0}.tox .tox-collection--list .tox-collection__group:first-child{border-top-width:0}.tox .tox-collection__group-heading{background-color:#fcfcfc;color:#222f3eb3;cursor:default;font-size:12px;font-style:normal;font-weight:400;margin-bottom:4px;margin-top:-4px;padding:4px 8px;text-transform:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tox .tox-collection__item{align-items:center;border-radius:3px;color:#222f3e;display:flex;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tox .tox-collection--list .tox-collection__item{padding:4px 8px}.tox .tox-collection--toolbar .tox-collection__item,.tox .tox-collection--grid .tox-collection__item{border-radius:3px;padding:4px}.tox .tox-collection--list .tox-collection__item--enabled{background-color:#fff;color:#222f3e}.tox .tox-collection--list .tox-collection__item--active{background-color:#cce2fa}.tox .tox-collection--toolbar .tox-collection__item--enabled{background-color:#a6ccf7;color:#222f3e}.tox .tox-collection--toolbar .tox-collection__item--active{background-color:#cce2fa}.tox .tox-collection--grid .tox-collection__item--enabled{background-color:#a6ccf7;color:#222f3e}.tox .tox-collection--grid .tox-collection__item--active:not(.tox-collection__item--state-disabled){background-color:#cce2fa;color:#222f3e}.tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#222f3e}.tox .tox-collection--toolbar .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#222f3e}.tox .tox-collection__item-icon,.tox .tox-collection__item-checkmark{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.tox .tox-collection__item-icon svg,.tox .tox-collection__item-checkmark svg{fill:currentColor}.tox .tox-collection--toolbar-lg .tox-collection__item-icon{height:48px;width:48px}.tox .tox-collection__item-label{color:currentColor;display:inline-block;flex:1;font-size:14px;font-style:normal;font-weight:400;line-height:24px;max-width:100%;text-transform:none;word-break:break-all}.tox .tox-collection__item-accessory{color:#222f3eb3;display:inline-block;font-size:14px;height:24px;line-height:24px;text-transform:none}.tox .tox-collection__item-caret{align-items:center;display:flex;min-height:24px}.tox .tox-collection__item-caret:after{content:"";font-size:0;min-height:inherit}.tox .tox-collection__item-caret svg{fill:#222f3e}.tox .tox-collection__item--state-disabled{background-color:transparent;color:#222f3e80;cursor:not-allowed}.tox .tox-collection__item--state-disabled .tox-collection__item-caret svg{fill:#222f3e80}.tox .tox-collection--list .tox-collection__item:not(.tox-collection__item--enabled) .tox-collection__item-checkmark svg{display:none}.tox .tox-collection--list .tox-collection__item:not(.tox-collection__item--enabled) .tox-collection__item-accessory+.tox-collection__item-checkmark{display:none}.tox .tox-collection--horizontal{background-color:#fff;border:1px solid #e3e3e3;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:nowrap;margin-bottom:0;overflow-x:auto;padding:0}.tox .tox-collection--horizontal .tox-collection__group{align-items:center;display:flex;flex-wrap:nowrap;margin:0;padding:0 4px}.tox .tox-collection--horizontal .tox-collection__item{height:28px;margin:6px 1px 5px 0;padding:0 4px}.tox .tox-collection--horizontal .tox-collection__item-label{white-space:nowrap}.tox .tox-collection--horizontal .tox-collection__item-caret{margin-left:4px}.tox .tox-collection__item-container{display:flex}.tox .tox-collection__item-container--row{align-items:center;flex:1 1 auto;flex-direction:row}.tox .tox-collection__item-container--row.tox-collection__item-container--align-left{margin-right:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--align-right{justify-content:flex-end;margin-left:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-top{align-items:flex-start;margin-bottom:auto}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-middle{align-items:center}.tox .tox-collection__item-container--row.tox-collection__item-container--valign-bottom{align-items:flex-end;margin-top:auto}.tox .tox-collection__item-container--column{align-self:center;flex:1 1 auto;flex-direction:column}.tox .tox-collection__item-container--column.tox-collection__item-container--align-left{align-items:flex-start}.tox .tox-collection__item-container--column.tox-collection__item-container--align-right{align-items:flex-end}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-top{align-self:flex-start}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-middle{align-self:center}.tox .tox-collection__item-container--column.tox-collection__item-container--valign-bottom{align-self:flex-end}.tox:not([dir=rtl]) .tox-collection--horizontal .tox-collection__group:not(:last-of-type){border-right:1px solid transparent}.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>*:not(:first-child){margin-left:8px}.tox:not([dir=rtl]) .tox-collection--list .tox-collection__item>.tox-collection__item-label:first-child{margin-left:4px}.tox:not([dir=rtl]) .tox-collection__item-accessory{margin-left:16px;text-align:right}.tox:not([dir=rtl]) .tox-collection .tox-collection__item-caret{margin-left:16px}.tox[dir=rtl] .tox-collection--horizontal .tox-collection__group:not(:last-of-type){border-left:1px solid transparent}.tox[dir=rtl] .tox-collection--list .tox-collection__item>*:not(:first-child){margin-right:8px}.tox[dir=rtl] .tox-collection--list .tox-collection__item>.tox-collection__item-label:first-child{margin-right:4px}.tox[dir=rtl] .tox-collection__item-accessory{margin-right:16px;text-align:left}.tox[dir=rtl] .tox-collection .tox-collection__item-caret{margin-right:16px;transform:rotateY(180deg)}.tox[dir=rtl] .tox-collection--horizontal .tox-collection__item-caret{margin-right:4px}.tox .tox-color-picker-container{display:flex;flex-direction:row;height:225px;margin:0}.tox .tox-sv-palette{box-sizing:border-box;display:flex;height:100%}.tox .tox-sv-palette-spectrum{height:100%}.tox .tox-sv-palette,.tox .tox-sv-palette-spectrum{width:225px}.tox .tox-sv-palette-thumb{background:none;border:1px solid black;border-radius:50%;box-sizing:content-box;height:12px;position:absolute;width:12px}.tox .tox-sv-palette-inner-thumb{border:1px solid white;border-radius:50%;height:10px;position:absolute;width:10px}.tox .tox-hue-slider{box-sizing:border-box;height:100%;width:25px}.tox .tox-hue-slider-spectrum{background:linear-gradient(to bottom,red,#ff0080,#f0f,#8000ff,#00f,#0080ff,#0ff,#00ff80,#0f0,#80ff00,#ff0,#ff8000,red);height:100%;width:100%}.tox .tox-hue-slider,.tox .tox-hue-slider-spectrum{width:20px}.tox .tox-hue-slider-spectrum:focus,.tox .tox-sv-palette-spectrum:focus{outline:#08f solid}.tox .tox-hue-slider-thumb{background:#fff;border:1px solid black;box-sizing:content-box;height:4px;width:100%}.tox .tox-rgb-form{display:flex;flex-direction:column;justify-content:space-between}.tox .tox-rgb-form div{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px;width:inherit}.tox .tox-rgb-form input{width:6em}.tox .tox-rgb-form input.tox-invalid{border:1px solid red!important}.tox .tox-rgb-form .tox-rgba-preview{border:1px solid black;flex-grow:2;margin-bottom:0}.tox:not([dir=rtl]) .tox-sv-palette{margin-right:15px}.tox:not([dir=rtl]) .tox-hue-slider{margin-right:15px}.tox:not([dir=rtl]) .tox-hue-slider-thumb{margin-left:-1px}.tox:not([dir=rtl]) .tox-rgb-form label{margin-right:.5em}.tox[dir=rtl] .tox-sv-palette,.tox[dir=rtl] .tox-hue-slider{margin-left:15px}.tox[dir=rtl] .tox-hue-slider-thumb{margin-right:-1px}.tox[dir=rtl] .tox-rgb-form label{margin-left:.5em}.tox .tox-toolbar .tox-swatches,.tox .tox-toolbar__primary .tox-swatches,.tox .tox-toolbar__overflow .tox-swatches{margin:5px 0 6px 11px}.tox .tox-collection--list .tox-collection__group .tox-swatches-menu{border:0;margin:-4px}.tox .tox-swatches__row{display:flex}.tox .tox-swatch{height:30px;transition:transform .15s,box-shadow .15s;width:30px}.tox .tox-swatch:hover,.tox .tox-swatch:focus{box-shadow:0 0 0 1px #7f7f7f4d inset;transform:scale(.8)}.tox .tox-swatch--remove{align-items:center;display:flex;justify-content:center}.tox .tox-swatch--remove svg path{stroke:#e74c3c}.tox .tox-swatches__picker-btn{align-items:center;background-color:transparent;border:0;cursor:pointer;display:flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.tox .tox-swatches__picker-btn svg{fill:#222f3e;height:24px;width:24px}.tox .tox-swatches__picker-btn:hover{background:#cce2fa}.tox div.tox-swatch:not(.tox-swatch--remove) svg{display:none;fill:#222f3e;height:24px;margin:3px;width:24px}.tox div.tox-swatch:not(.tox-swatch--remove) svg path{fill:#fff;paint-order:stroke;stroke:#222f3e;stroke-width:2px}.tox div.tox-swatch:not(.tox-swatch--remove).tox-collection__item--enabled svg{display:block}.tox:not([dir=rtl]) .tox-swatches__picker-btn{margin-left:auto}.tox[dir=rtl] .tox-swatches__picker-btn{margin-right:auto}.tox .tox-comment-thread{background:#fff;position:relative}.tox .tox-comment-thread>*:not(:first-child){margin-top:8px}.tox .tox-comment{background:#fff;border:1px solid #eeeeee;border-radius:6px;box-shadow:0 4px 8px #222f3e1a;padding:8px 8px 16px;position:relative}.tox .tox-comment__header{align-items:center;color:#222f3e;display:flex;justify-content:space-between}.tox .tox-comment__date{color:#222f3e;font-size:12px;line-height:18px}.tox .tox-comment__body{color:#222f3e;font-size:14px;font-style:normal;font-weight:400;line-height:1.3;margin-top:8px;position:relative;text-transform:initial}.tox .tox-comment__body textarea{resize:none;white-space:normal;width:100%}.tox .tox-comment__expander{padding-top:8px}.tox .tox-comment__expander p{color:#222f3eb3;font-size:14px;font-style:normal}.tox .tox-comment__body p{margin:0}.tox .tox-comment__buttonspacing{padding-top:16px;text-align:center}.tox .tox-comment-thread__overlay:after{background:#fff;bottom:0;content:"";display:flex;left:0;opacity:.9;position:absolute;right:0;top:0;z-index:5}.tox .tox-comment__reply{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;margin-top:8px}.tox .tox-comment__reply>*:first-child{margin-bottom:8px;width:100%}.tox .tox-comment__edit{display:flex;flex-wrap:wrap;justify-content:flex-end;margin-top:16px}.tox .tox-comment__gradient:after{background:linear-gradient(#fff0,#fff);bottom:0;content:"";display:block;height:5em;margin-top:-40px;position:absolute;width:100%}.tox .tox-comment__overlay{background:#fff;bottom:0;display:flex;flex-direction:column;flex-grow:1;left:0;opacity:.9;position:absolute;right:0;text-align:center;top:0;z-index:5}.tox .tox-comment__loading-text{align-items:center;color:#222f3e;display:flex;flex-direction:column;position:relative}.tox .tox-comment__loading-text>div{padding-bottom:16px}.tox .tox-comment__overlaytext{bottom:0;flex-direction:column;font-size:14px;left:0;padding:1em;position:absolute;right:0;top:0;z-index:10}.tox .tox-comment__overlaytext p{background-color:#fff;box-shadow:0 0 8px 8px #fff;color:#222f3e;text-align:center}.tox .tox-comment__overlaytext div:nth-of-type(2){font-size:.8em}.tox .tox-comment__busy-spinner{align-items:center;background-color:#fff;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:20}.tox .tox-comment__scroll{display:flex;flex-direction:column;flex-shrink:1;overflow:auto}.tox .tox-conversations{margin:8px}.tox:not([dir=rtl]) .tox-comment__edit{margin-left:8px}.tox:not([dir=rtl]) .tox-comment__buttonspacing>*:last-child,.tox:not([dir=rtl]) .tox-comment__edit>*:last-child,.tox:not([dir=rtl]) .tox-comment__reply>*:last-child{margin-left:8px}.tox[dir=rtl] .tox-comment__edit{margin-right:8px}.tox[dir=rtl] .tox-comment__buttonspacing>*:last-child,.tox[dir=rtl] .tox-comment__edit>*:last-child,.tox[dir=rtl] .tox-comment__reply>*:last-child{margin-right:8px}.tox .tox-user{align-items:center;display:flex}.tox .tox-user__avatar svg{fill:#222f3eb3}.tox .tox-user__avatar img{border-radius:50%;height:36px;object-fit:cover;vertical-align:middle;width:36px}.tox .tox-user__name{color:#222f3e;font-size:14px;font-style:normal;font-weight:700;line-height:18px;text-transform:none}.tox:not([dir=rtl]) .tox-user__avatar svg,.tox:not([dir=rtl]) .tox-user__avatar img{margin-right:8px}.tox:not([dir=rtl]) .tox-user__avatar+.tox-user__name{margin-left:8px}.tox[dir=rtl] .tox-user__avatar svg,.tox[dir=rtl] .tox-user__avatar img{margin-left:8px}.tox[dir=rtl] .tox-user__avatar+.tox-user__name{margin-right:8px}.tox .tox-dialog-wrap{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.tox .tox-dialog-wrap__backdrop{background-color:#ffffffbf;bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.tox .tox-dialog-wrap__backdrop--opaque{background-color:#fff}.tox .tox-dialog{background-color:#fff;border-color:#eee;border-radius:10px;border-style:solid;border-width:0px;box-shadow:0 16px 16px -10px #222f3e26,0 0 40px 1px #222f3e26;display:flex;flex-direction:column;max-height:100%;max-width:480px;overflow:hidden;position:relative;width:95vw;z-index:2}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog{align-self:flex-start;margin:8px auto;max-height:calc(100vh - 16px);width:calc(100vw - 16px)}}.tox .tox-dialog-inline{z-index:1100}.tox .tox-dialog__header{align-items:center;background-color:#fff;border-bottom:none;color:#222f3e;display:flex;font-size:16px;justify-content:space-between;padding:8px 16px 0;position:relative}.tox .tox-dialog__header .tox-button{z-index:1}.tox .tox-dialog__draghandle{cursor:grab;height:100%;left:0;position:absolute;top:0;width:100%}.tox .tox-dialog__draghandle:active{cursor:grabbing}.tox .tox-dialog__dismiss{margin-left:auto}.tox .tox-dialog__title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:20px;font-style:normal;font-weight:400;line-height:1.3;margin:0;text-transform:none}.tox .tox-dialog__body{color:#222f3e;display:flex;flex:1;font-size:16px;font-style:normal;font-weight:400;line-height:1.3;min-width:0;text-align:left;text-transform:none}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog__body{flex-direction:column}}.tox .tox-dialog__body-nav{align-items:flex-start;display:flex;flex-direction:column;flex-shrink:0;padding:16px}@media only screen and (min-width: 768px){.tox .tox-dialog__body-nav{max-width:11em}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox .tox-dialog__body-nav{flex-direction:row;-webkit-overflow-scrolling:touch;overflow-x:auto;padding-bottom:0}}.tox .tox-dialog__body-nav-item{border-bottom:2px solid transparent;color:#222f3eb3;display:inline-block;flex-shrink:0;font-size:14px;line-height:1.3;margin-bottom:8px;max-width:13em;text-decoration:none}.tox .tox-dialog__body-nav-item:focus{background-color:#006ce71a}.tox .tox-dialog__body-nav-item--active{border-bottom:2px solid #006ce7;color:#006ce7}.tox .tox-dialog__body-content{box-sizing:border-box;display:flex;flex:1;flex-direction:column;max-height:min(650px,calc(100vh - 110px));overflow:auto;-webkit-overflow-scrolling:touch;padding:16px}.tox .tox-dialog__body-content>*{margin-bottom:0;margin-top:16px}.tox .tox-dialog__body-content>*:first-child{margin-top:0}.tox .tox-dialog__body-content>*:last-child{margin-bottom:0}.tox .tox-dialog__body-content>*:only-child{margin-bottom:0;margin-top:0}.tox .tox-dialog__body-content a{color:#006ce7;cursor:pointer;text-decoration:underline}.tox .tox-dialog__body-content a:hover,.tox .tox-dialog__body-content a:focus{color:#003c81;text-decoration:underline}.tox .tox-dialog__body-content a:focus-visible{border-radius:1px;outline:2px solid #006ce7;outline-offset:2px}.tox .tox-dialog__body-content a:active{color:#00244e;text-decoration:underline}.tox .tox-dialog__body-content svg{fill:#222f3e}.tox .tox-dialog__body-content strong{font-weight:700}.tox .tox-dialog__body-content ul{list-style-type:disc}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dd{padding-inline-start:2.5rem}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dl{margin-bottom:16px}.tox .tox-dialog__body-content ul,.tox .tox-dialog__body-content ol,.tox .tox-dialog__body-content dl,.tox .tox-dialog__body-content dd,.tox .tox-dialog__body-content dt{display:block;margin-inline-end:0;margin-inline-start:0}.tox .tox-dialog__body-content .tox-form__group h1{color:#222f3e;font-size:20px;font-style:normal;font-weight:700;letter-spacing:normal;margin-bottom:16px;margin-top:2rem;text-transform:none}.tox .tox-dialog__body-content .tox-form__group h2{color:#222f3e;font-size:16px;font-style:normal;font-weight:700;letter-spacing:normal;margin-bottom:16px;margin-top:2rem;text-transform:none}.tox .tox-dialog__body-content .tox-form__group p{margin-bottom:16px}.tox .tox-dialog__body-content .tox-form__group h1:first-child,.tox .tox-dialog__body-content .tox-form__group h2:first-child,.tox .tox-dialog__body-content .tox-form__group p:first-child{margin-top:0}.tox .tox-dialog__body-content .tox-form__group h1:last-child,.tox .tox-dialog__body-content .tox-form__group h2:last-child,.tox .tox-dialog__body-content .tox-form__group p:last-child{margin-bottom:0}.tox .tox-dialog__body-content .tox-form__group h1:only-child,.tox .tox-dialog__body-content .tox-form__group h2:only-child,.tox .tox-dialog__body-content .tox-form__group p:only-child{margin-bottom:0;margin-top:0}.tox .tox-dialog__body-content .tox-form__group .tox-label.tox-label--center{text-align:center}.tox .tox-dialog__body-content .tox-form__group .tox-label.tox-label--end{text-align:end}.tox .tox-dialog--width-lg{height:650px;max-width:1200px}.tox .tox-dialog--fullscreen{height:100%;max-width:100%}.tox .tox-dialog--fullscreen .tox-dialog__body-content{max-height:100%}.tox .tox-dialog--width-md{max-width:800px}.tox .tox-dialog--width-md .tox-dialog__body-content{overflow:auto}.tox .tox-dialog__body-content--centered{text-align:center}.tox .tox-dialog__footer{align-items:center;background-color:#fff;border-top:none;display:flex;justify-content:space-between;padding:8px 16px}.tox .tox-dialog__footer-start,.tox .tox-dialog__footer-end{display:flex}.tox .tox-dialog__busy-spinner{align-items:center;background-color:#ffffffbf;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.tox .tox-dialog__table{border-collapse:collapse;width:100%}.tox .tox-dialog__table thead th{font-weight:700;padding-bottom:8px}.tox .tox-dialog__table thead th:first-child{padding-right:8px}.tox .tox-dialog__table tbody tr{border-bottom:1px solid #626262}.tox .tox-dialog__table tbody tr:last-child{border-bottom:none}.tox .tox-dialog__table td{padding-bottom:8px;padding-top:8px}.tox .tox-dialog__table td:first-child{padding-right:8px}.tox .tox-dialog__iframe{min-height:200px}.tox .tox-dialog__iframe.tox-dialog__iframe--opaque{background:#fff}.tox .tox-navobj-bordered{position:relative}.tox .tox-navobj-bordered:before{border:1px solid #eeeeee;border-radius:6px;content:"";top:0;right:0;bottom:0;left:0;opacity:1;pointer-events:none;position:absolute;z-index:1}.tox .tox-navobj-bordered-focus.tox-navobj-bordered:before{border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-dialog__popups{position:absolute;width:100%;z-index:1100}.tox .tox-dialog__body-iframe{display:flex;flex:1;flex-direction:column}.tox .tox-dialog__body-iframe .tox-navobj{display:flex;flex:1}.tox .tox-dialog__body-iframe .tox-navobj :nth-child(2){flex:1;height:100%}.tox .tox-dialog-dock-fadeout{opacity:0;visibility:hidden}.tox .tox-dialog-dock-fadein{opacity:1;visibility:visible}.tox .tox-dialog-dock-transition{transition:visibility 0s linear .3s,opacity .3s ease}.tox .tox-dialog-dock-transition.tox-dialog-dock-fadein{transition-delay:0s}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox:not([dir=rtl]) .tox-dialog__body-nav{margin-right:0}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox:not([dir=rtl]) .tox-dialog__body-nav-item:not(:first-child){margin-left:8px}}.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-start>*,.tox:not([dir=rtl]) .tox-dialog__footer .tox-dialog__footer-end>*{margin-left:8px}.tox[dir=rtl] .tox-dialog__body{text-align:right}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox[dir=rtl] .tox-dialog__body-nav{margin-left:0}}@media only screen and (max-width: 767px){body:not(.tox-force-desktop) .tox[dir=rtl] .tox-dialog__body-nav-item:not(:first-child){margin-right:8px}}.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-start>*,.tox[dir=rtl] .tox-dialog__footer .tox-dialog__footer-end>*{margin-right:8px}body.tox-dialog__disable-scroll{overflow:hidden}.tox .tox-dropzone-container{display:flex;flex:1}.tox .tox-dropzone{align-items:center;background:#fff;border:2px dashed #eeeeee;box-sizing:border-box;display:flex;flex-direction:column;flex-grow:1;justify-content:center;min-height:100px;padding:10px}.tox .tox-dropzone p{color:#222f3eb3;margin:0 0 16px}.tox .tox-edit-area{display:flex;flex:1;overflow:hidden;position:relative}.tox .tox-edit-area:before{border:2px solid #2D6ADF;border-radius:4px;content:"";top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .15s;z-index:1}.tox .tox-edit-area__iframe{background-color:#fff;border:0;box-sizing:border-box;flex:1;height:100%;position:absolute;width:100%}.tox.tox-edit-focus .tox-edit-area:before{opacity:1}.tox.tox-inline-edit-area{border:1px dotted #eeeeee}.tox .tox-editor-container{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.tox .tox-editor-header{display:grid;grid-template-columns:1fr min-content;z-index:2}.tox:not(.tox-tinymce-inline) .tox-editor-header{background-color:#fff;border-bottom:none;box-shadow:0 2px 2px -2px #222f3e1a,0 8px 8px -4px #222f3e12;padding:4px 0}.tox:not(.tox-tinymce-inline) .tox-editor-header:not(.tox-editor-dock-transition){transition:box-shadow .5s}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-bottom .tox-editor-header{border-top:1px solid #e3e3e3;box-shadow:none}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-sticky-on .tox-editor-header{background-color:#fff;box-shadow:0 2px 2px -2px #222f3e33,0 8px 8px -4px #222f3e26;padding:4px 0}.tox:not(.tox-tinymce-inline).tox-tinymce--toolbar-sticky-on.tox-tinymce--toolbar-bottom .tox-editor-header{box-shadow:0 2px 2px -2px #222f3e33,0 8px 8px -4px #222f3e26}.tox.tox:not(.tox-tinymce-inline) .tox-editor-header.tox-editor-header--empty{background:none;border:none;box-shadow:none;padding:0}.tox-editor-dock-fadeout{opacity:0;visibility:hidden}.tox-editor-dock-fadein{opacity:1;visibility:visible}.tox-editor-dock-transition{transition:visibility 0s linear .25s,opacity .25s ease}.tox-editor-dock-transition.tox-editor-dock-fadein{transition-delay:0s}.tox .tox-control-wrap{flex:1;position:relative}.tox .tox-control-wrap:not(.tox-control-wrap--status-invalid) .tox-control-wrap__status-icon-invalid,.tox .tox-control-wrap:not(.tox-control-wrap--status-unknown) .tox-control-wrap__status-icon-unknown,.tox .tox-control-wrap:not(.tox-control-wrap--status-valid) .tox-control-wrap__status-icon-valid{display:none}.tox .tox-control-wrap svg{display:block}.tox .tox-control-wrap__status-icon-wrap{position:absolute;top:50%;transform:translateY(-50%)}.tox .tox-control-wrap__status-icon-invalid svg{fill:#c00}.tox .tox-control-wrap__status-icon-unknown svg{fill:orange}.tox .tox-control-wrap__status-icon-valid svg{fill:green}.tox:not([dir=rtl]) .tox-control-wrap--status-invalid .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-unknown .tox-textfield,.tox:not([dir=rtl]) .tox-control-wrap--status-valid .tox-textfield{padding-right:32px}.tox:not([dir=rtl]) .tox-control-wrap__status-icon-wrap{right:4px}.tox[dir=rtl] .tox-control-wrap--status-invalid .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-unknown .tox-textfield,.tox[dir=rtl] .tox-control-wrap--status-valid .tox-textfield{padding-left:32px}.tox[dir=rtl] .tox-control-wrap__status-icon-wrap{left:4px}.tox .tox-autocompleter{max-width:25em}.tox .tox-autocompleter .tox-menu{box-sizing:border-box;max-width:25em}.tox .tox-autocompleter .tox-autocompleter-highlight{font-weight:700}.tox .tox-color-input{display:flex;position:relative;z-index:1}.tox .tox-color-input .tox-textfield{z-index:-1}.tox .tox-color-input span{border-color:#222f3e33;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;height:24px;position:absolute;top:6px;width:24px}.tox .tox-color-input span:hover:not([aria-disabled=true]),.tox .tox-color-input span:focus:not([aria-disabled=true]){border-color:#006ce7;cursor:pointer}.tox .tox-color-input span:before{background-image:linear-gradient(45deg,rgba(0,0,0,.25) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.25) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.25) 75%),linear-gradient(-45deg,transparent 75%,rgba(0,0,0,.25) 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;border:1px solid #fff;border-radius:6px;box-sizing:border-box;content:"";height:24px;left:-1px;position:absolute;top:-1px;width:24px;z-index:-1}.tox .tox-color-input span[aria-disabled=true]{cursor:not-allowed}.tox:not([dir=rtl]) .tox-color-input .tox-textfield{padding-left:36px}.tox:not([dir=rtl]) .tox-color-input span{left:6px}.tox[dir=rtl] .tox-color-input .tox-textfield{padding-right:36px}.tox[dir=rtl] .tox-color-input span{right:6px}.tox .tox-label,.tox .tox-toolbar-label{color:#222f3eb3;display:block;font-size:14px;font-style:normal;font-weight:400;line-height:1.3;padding:0 8px 0 0;text-transform:none;white-space:nowrap}.tox .tox-toolbar-label{padding:0 8px}.tox[dir=rtl] .tox-label{padding:0 0 0 8px}.tox .tox-form{display:flex;flex:1;flex-direction:column}.tox .tox-form__group{box-sizing:border-box;margin-bottom:4px}.tox .tox-form-group--maximize{flex:1}.tox .tox-form__group--error{color:#c00}.tox .tox-form__group--collection{display:flex}.tox .tox-form__grid{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.tox .tox-form__grid--2col>.tox-form__group{width:calc(50% - 4px)}.tox .tox-form__grid--3col>.tox-form__group{width:calc(100% / 3 - (8px / 2))}.tox .tox-form__grid--4col>.tox-form__group{width:calc(25% - 4px)}.tox .tox-form__controls-h-stack,.tox .tox-form__group--inline{align-items:center;display:flex}.tox .tox-form__group--stretched{display:flex;flex:1;flex-direction:column}.tox .tox-form__group--stretched .tox-textarea{flex:1}.tox .tox-form__group--stretched .tox-navobj{display:flex;flex:1}.tox .tox-form__group--stretched .tox-navobj :nth-child(2){flex:1;height:100%}.tox:not([dir=rtl]) .tox-form__controls-h-stack>*:not(:first-child){margin-left:4px}.tox[dir=rtl] .tox-form__controls-h-stack>*:not(:first-child){margin-right:4px}.tox .tox-lock.tox-locked .tox-lock-icon__unlock,.tox .tox-lock:not(.tox-locked) .tox-lock-icon__lock{display:none}.tox .tox-textfield,.tox .tox-toolbar-textfield,.tox .tox-listboxfield .tox-listbox--select,.tox .tox-textarea,.tox .tox-textarea-wrap .tox-textarea:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#222f3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:24px;margin:0;min-height:34px;outline:none;padding:5px 5.5px;resize:none;width:100%}.tox .tox-textfield[disabled],.tox .tox-textarea[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-textfield:focus,.tox .tox-listboxfield .tox-listbox--select:focus,.tox .tox-textarea-wrap:focus-within,.tox .tox-textarea:focus,.tox .tox-custom-editor:focus-within{background-color:#fff;border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-toolbar-textfield{border-width:0;margin-bottom:3px;margin-top:2px;max-width:250px}.tox .tox-naked-btn{background-color:transparent;border:0;border-color:transparent;box-shadow:unset;color:#006ce7;cursor:pointer;display:block;margin:0;padding:0}.tox .tox-naked-btn svg{display:block;fill:#222f3e}.tox:not([dir=rtl]) .tox-toolbar-textfield+*{margin-left:4px}.tox[dir=rtl] .tox-toolbar-textfield+*{margin-right:4px}.tox .tox-listboxfield{cursor:pointer;position:relative}.tox .tox-listboxfield .tox-listbox--select[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-listbox__select-label{cursor:default;flex:1;margin:0 4px}.tox .tox-listbox__select-chevron{align-items:center;display:flex;justify-content:center;width:16px}.tox .tox-listbox__select-chevron svg{fill:#222f3e}.tox .tox-listboxfield .tox-listbox--select{align-items:center;display:flex}.tox:not([dir=rtl]) .tox-listboxfield svg{right:8px}.tox[dir=rtl] .tox-listboxfield svg{left:8px}.tox .tox-selectfield{cursor:pointer;position:relative}.tox .tox-selectfield select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;color:#222f3e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px;line-height:24px;margin:0;min-height:34px;outline:none;padding:5px 5.5px;resize:none;width:100%}.tox .tox-selectfield select[disabled]{background-color:#f2f2f2;color:#222f3ed9;cursor:not-allowed}.tox .tox-selectfield select::-ms-expand{display:none}.tox .tox-selectfield select:focus{background-color:#fff;border-color:#006ce7;box-shadow:0 0 0 2px #006ce740;outline:none}.tox .tox-selectfield svg{pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.tox:not([dir=rtl]) .tox-selectfield select[size="0"],.tox:not([dir=rtl]) .tox-selectfield select[size="1"]{padding-right:24px}.tox:not([dir=rtl]) .tox-selectfield svg{right:8px}.tox[dir=rtl] .tox-selectfield select[size="0"],.tox[dir=rtl] .tox-selectfield select[size="1"]{padding-left:24px}.tox[dir=rtl] .tox-selectfield svg{left:8px}.tox .tox-textarea-wrap{border-color:#eee;border-radius:6px;border-style:solid;border-width:1px;display:flex;flex:1;overflow:hidden}.tox .tox-textarea{-webkit-appearance:textarea;-moz-appearance:textarea;appearance:textarea;white-space:pre-wrap}.tox .tox-textarea-wrap .tox-textarea{border:none}.tox .tox-textarea-wrap .tox-textarea:focus{border:none}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox.tox-tinymce.tox-fullscreen,.tox-shadowhost.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}.tox .tox-help__more-link{list-style:none;margin-top:1em}.tox .tox-imagepreview{background-color:#666;height:380px;overflow:hidden;position:relative;width:100%}.tox .tox-imagepreview.tox-imagepreview__loaded{overflow:auto}.tox .tox-imagepreview__container{display:flex;left:100vw;position:absolute;top:100vw}.tox .tox-imagepreview__image{background:url(data:image/gif;base64,R0lGODdhDAAMAIABAMzMzP///ywAAAAADAAMAAACFoQfqYeabNyDMkBQb81Uat85nxguUAEAOw==)}.tox .tox-image-tools .tox-spacer{flex:1}.tox .tox-image-tools .tox-bar{align-items:center;display:flex;height:60px;justify-content:center}.tox .tox-image-tools .tox-imagepreview,.tox .tox-image-tools .tox-imagepreview+.tox-bar{margin-top:8px}.tox .tox-image-tools .tox-croprect-block{background:#000;filter:alpha(opacity=50);opacity:.5;position:absolute;zoom:1}.tox .tox-image-tools .tox-croprect-handle{border:2px solid white;height:20px;left:0;position:absolute;top:0;width:20px}.tox .tox-image-tools .tox-croprect-handle-move{border:0;cursor:move;position:absolute}.tox .tox-image-tools .tox-croprect-handle-nw{border-width:2px 0 0 2px;cursor:nw-resize;left:100px;margin:-2px 0 0 -2px;top:100px}.tox .tox-image-tools .tox-croprect-handle-ne{border-width:2px 2px 0 0;cursor:ne-resize;left:200px;margin:-2px 0 0 -20px;top:100px}.tox .tox-image-tools .tox-croprect-handle-sw{border-width:0 0 2px 2px;cursor:sw-resize;left:100px;margin:-20px 2px 0 -2px;top:200px}.tox .tox-image-tools .tox-croprect-handle-se{border-width:0 2px 2px 0;cursor:se-resize;left:200px;margin:-20px 0 0 -20px;top:200px}.tox .tox-insert-table-picker{display:flex;flex-wrap:wrap;width:170px}.tox .tox-insert-table-picker>div{border-color:#eee;border-style:solid;border-width:0 1px 1px 0;box-sizing:border-box;height:17px;width:17px}.tox .tox-collection--list .tox-collection__group .tox-insert-table-picker{margin:-4px}.tox .tox-insert-table-picker .tox-insert-table-picker__selected{background-color:#006ce780;border-color:#006ce780}.tox .tox-insert-table-picker__label{color:#222f3eb3;display:block;font-size:14px;padding:4px;text-align:center;width:100%}.tox:not([dir=rtl]) .tox-insert-table-picker>div:nth-child(10n){border-right:0}.tox[dir=rtl] .tox-insert-table-picker>div:nth-child(10n+1){border-right:0}.tox .tox-menu{background-color:#fff;border:1px solid transparent;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;display:inline-block;overflow:hidden;vertical-align:top;z-index:1150}.tox .tox-menu.tox-collection.tox-collection--list{padding:0 4px}.tox .tox-menu.tox-collection.tox-collection--toolbar,.tox .tox-menu.tox-collection.tox-collection--grid{padding:8px}@media only screen and (min-width: 768px){.tox .tox-menu .tox-collection__item-label{overflow-wrap:break-word;word-break:normal}.tox .tox-dialog__popups .tox-menu .tox-collection__item-label{word-break:break-all}}.tox .tox-menu__label h1,.tox .tox-menu__label h2,.tox .tox-menu__label h3,.tox .tox-menu__label h4,.tox .tox-menu__label h5,.tox .tox-menu__label h6,.tox .tox-menu__label p,.tox .tox-menu__label blockquote,.tox .tox-menu__label code{margin:0}.tox .tox-menubar{background:repeating-linear-gradient(transparent 0px 1px,transparent 1px 39px) center top 39px / 100% calc(100% - 39px) no-repeat;background-color:#fff;display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:wrap;grid-column:1 / -1;grid-row:1;padding:0 11px 0 12px}.tox .tox-promotion+.tox-menubar{grid-column:1}.tox .tox-promotion{background:repeating-linear-gradient(transparent 0px 1px,transparent 1px 39px) center top 39px / 100% calc(100% - 39px) no-repeat;background-color:#fff;grid-column:2;grid-row:1;padding-inline-end:8px;padding-inline-start:4px;padding-top:5px}.tox .tox-promotion-link{align-items:unsafe center;background-color:#e8f1f8;border-radius:5px;color:#086be6;cursor:pointer;display:flex;font-size:14px;height:26.6px;padding:4px 8px;white-space:nowrap}.tox .tox-promotion-link:hover{background-color:#b4d7ff}.tox .tox-promotion-link:focus{background-color:#d9edf7}.tox .tox-mbtn{align-items:center;background:transparent;border:0;border-radius:3px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;justify-content:center;margin:5px 1px 6px 0;outline:none;overflow:hidden;padding:0 4px;text-transform:none;width:auto}.tox .tox-mbtn[disabled]{background-color:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-mbtn:focus:not(:disabled){background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn--active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn:hover:not(:disabled):not(.tox-mbtn--active){background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-mbtn__select-label{cursor:default;font-weight:400;margin:0 4px}.tox .tox-mbtn[disabled] .tox-mbtn__select-label{cursor:not-allowed}.tox .tox-mbtn__select-chevron{align-items:center;display:flex;justify-content:center;width:16px;display:none}.tox .tox-notification{border-radius:6px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;display:grid;font-size:14px;font-weight:400;grid-template-columns:minmax(40px,1fr) auto minmax(40px,1fr);margin-top:4px;opacity:0;padding:4px;transition:transform .1s ease-in,opacity .15s ease-in}.tox .tox-notification p{font-size:14px;font-weight:400}.tox .tox-notification a{cursor:pointer;text-decoration:underline}.tox .tox-notification--in{opacity:1}.tox .tox-notification--success{background-color:#e4eeda;border-color:#d7e6c8;color:#222f3e}.tox .tox-notification--success p{color:#222f3e}.tox .tox-notification--success a{color:#517342}.tox .tox-notification--success svg{fill:#222f3e}.tox .tox-notification--error{background-color:#f5cccc;border-color:#f0b3b3;color:#222f3e}.tox .tox-notification--error p{color:#222f3e}.tox .tox-notification--error a{color:#77181f}.tox .tox-notification--error svg{fill:#222f3e}.tox .tox-notification--warn,.tox .tox-notification--warning{background-color:#fff5cc;border-color:#fff0b3;color:#222f3e}.tox .tox-notification--warn p,.tox .tox-notification--warning p{color:#222f3e}.tox .tox-notification--warn a,.tox .tox-notification--warning a{color:#7a6e25}.tox .tox-notification--warn svg,.tox .tox-notification--warning svg{fill:#222f3e}.tox .tox-notification--info{background-color:#d6e7fb;border-color:#c1dbf9;color:#222f3e}.tox .tox-notification--info p{color:#222f3e}.tox .tox-notification--info a{color:#2a64a6}.tox .tox-notification--info svg{fill:#222f3e}.tox .tox-notification__body{align-self:center;color:#222f3e;font-size:14px;grid-column-end:3;grid-column-start:2;grid-row-end:2;grid-row-start:1;text-align:center;white-space:normal;word-break:break-all;word-break:break-word}.tox .tox-notification__body>*{margin:0}.tox .tox-notification__body>*+*{margin-top:1rem}.tox .tox-notification__icon{align-self:center;grid-column-end:2;grid-column-start:1;grid-row-end:2;grid-row-start:1;justify-self:end}.tox .tox-notification__icon svg{display:block}.tox .tox-notification__dismiss{align-self:start;grid-column-end:4;grid-column-start:3;grid-row-end:2;grid-row-start:1;justify-self:end}.tox .tox-notification .tox-progress-bar{grid-column-end:4;grid-column-start:1;grid-row-end:3;grid-row-start:2;justify-self:center}.tox .tox-pop{display:inline-block;position:relative}.tox .tox-pop--resizing{transition:width .1s ease}.tox .tox-pop--resizing .tox-toolbar,.tox .tox-pop--resizing .tox-toolbar__group{flex-wrap:nowrap}.tox .tox-pop--transition{transition:.15s ease;transition-property:left,right,top,bottom}.tox .tox-pop--transition:before,.tox .tox-pop--transition:after{transition:all .15s,visibility 0s,opacity 75ms ease 75ms}.tox .tox-pop__dialog{background-color:#fff;border:1px solid #eeeeee;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;min-width:0;overflow:hidden}.tox .tox-pop__dialog>*:not(.tox-toolbar){margin:4px 4px 4px 8px}.tox .tox-pop__dialog .tox-toolbar{background-color:transparent;margin-bottom:-1px}.tox .tox-pop:before,.tox .tox-pop:after{border-style:solid;content:"";display:block;height:0;opacity:1;position:absolute;width:0}.tox .tox-pop.tox-pop--inset:before,.tox .tox-pop.tox-pop--inset:after{opacity:0;transition:all 0s .15s,visibility 0s,opacity 75ms ease}.tox .tox-pop.tox-pop--bottom:before,.tox .tox-pop.tox-pop--bottom:after{left:50%;top:100%}.tox .tox-pop.tox-pop--bottom:after{border-color:#fff transparent transparent transparent;border-width:8px;margin-left:-8px;margin-top:-1px}.tox .tox-pop.tox-pop--bottom:before{border-color:#eeeeee transparent transparent transparent;border-width:9px;margin-left:-9px}.tox .tox-pop.tox-pop--top:before,.tox .tox-pop.tox-pop--top:after{left:50%;top:0;transform:translateY(-100%)}.tox .tox-pop.tox-pop--top:after{border-color:transparent transparent #fff transparent;border-width:8px;margin-left:-8px;margin-top:1px}.tox .tox-pop.tox-pop--top:before{border-color:transparent transparent #eeeeee transparent;border-width:9px;margin-left:-9px}.tox .tox-pop.tox-pop--left:before,.tox .tox-pop.tox-pop--left:after{left:0;top:calc(50% - 1px);transform:translateY(-50%)}.tox .tox-pop.tox-pop--left:after{border-color:transparent #fff transparent transparent;border-width:8px;margin-left:-15px}.tox .tox-pop.tox-pop--left:before{border-color:transparent #eeeeee transparent transparent;border-width:10px;margin-left:-19px}.tox .tox-pop.tox-pop--right:before,.tox .tox-pop.tox-pop--right:after{left:100%;top:calc(50% + 1px);transform:translateY(-50%)}.tox .tox-pop.tox-pop--right:after{border-color:transparent transparent transparent #fff;border-width:8px;margin-left:-1px}.tox .tox-pop.tox-pop--right:before{border-color:transparent transparent transparent #eeeeee;border-width:10px;margin-left:-1px}.tox .tox-pop.tox-pop--align-left:before,.tox .tox-pop.tox-pop--align-left:after{left:20px}.tox .tox-pop.tox-pop--align-right:before,.tox .tox-pop.tox-pop--align-right:after{left:calc(100% - 20px)}.tox .tox-sidebar-wrap{display:flex;flex-direction:row;flex-grow:1;min-height:0}.tox .tox-sidebar{background-color:#fff;display:flex;flex-direction:row;justify-content:flex-end}.tox .tox-sidebar__slider{display:flex;overflow:hidden}.tox .tox-sidebar__pane-container,.tox .tox-sidebar__pane{display:flex}.tox .tox-sidebar--sliding-closed{opacity:0}.tox .tox-sidebar--sliding-open{opacity:1}.tox .tox-sidebar--sliding-growing,.tox .tox-sidebar--sliding-shrinking{transition:width .5s ease,opacity .5s ease}.tox .tox-selector{background-color:#4099ff;border-color:#4099ff;border-style:solid;border-width:1px;box-sizing:border-box;display:inline-block;height:10px;position:absolute;width:10px}.tox.tox-platform-touch .tox-selector{height:12px;width:12px}.tox .tox-slider{align-items:center;display:flex;flex:1;height:24px;justify-content:center;position:relative}.tox .tox-slider__rail{background-color:transparent;border:1px solid #eeeeee;border-radius:6px;height:10px;min-width:120px;width:100%}.tox .tox-slider__handle{background-color:#006ce7;border:2px solid #0054b4;border-radius:6px;box-shadow:none;height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%);width:14px}.tox .tox-form__controls-h-stack>.tox-slider:not(:first-of-type){margin-inline-start:8px}.tox .tox-form__controls-h-stack>.tox-form__group+.tox-slider{margin-inline-start:32px}.tox .tox-form__controls-h-stack>.tox-slider+.tox-form__group{margin-inline-start:32px}.tox .tox-source-code{overflow:auto}.tox .tox-spinner{display:flex}.tox .tox-spinner>div{animation:tam-bouncing-dots 1.5s ease-in-out 0s infinite both;background-color:#222f3eb3;border-radius:100%;height:8px;width:8px}.tox .tox-spinner>div:nth-child(1){animation-delay:-.32s}.tox .tox-spinner>div:nth-child(2){animation-delay:-.16s}@keyframes tam-bouncing-dots{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.tox:not([dir=rtl]) .tox-spinner>div:not(:first-child){margin-left:4px}.tox[dir=rtl] .tox-spinner>div:not(:first-child){margin-right:4px}.tox .tox-statusbar{align-items:center;background-color:#fff;border-top:1px solid #e3e3e3;color:#222f3eb3;display:flex;flex:0 0 auto;font-size:14px;font-weight:400;height:25px;overflow:hidden;padding:0 8px;position:relative;text-transform:none}.tox .tox-statusbar__path{display:flex;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-statusbar__right-container{display:flex;justify-content:flex-end;white-space:nowrap}.tox .tox-statusbar__help-text{text-align:center}.tox .tox-statusbar__text-container{display:flex;flex:1 1 auto;justify-content:space-between;overflow:hidden}@media only screen and (min-width: 768px){.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__help-text,.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__right-container,.tox .tox-statusbar__text-container.tox-statusbar__text-container-3-cols>.tox-statusbar__path{flex:0 0 calc(100% / 3)}}.tox .tox-statusbar__text-container.tox-statusbar__text-container--flex-end{justify-content:flex-end}.tox .tox-statusbar__text-container.tox-statusbar__text-container--flex-start{justify-content:flex-start}.tox .tox-statusbar__text-container.tox-statusbar__text-container--space-around{justify-content:space-around}.tox .tox-statusbar__path>*{display:inline;white-space:nowrap}.tox .tox-statusbar__wordcount{flex:0 0 auto;margin-left:1ch}@media only screen and (max-width: 767px){.tox .tox-statusbar__text-container .tox-statusbar__help-text{display:none}.tox .tox-statusbar__text-container .tox-statusbar__help-text:only-child{display:block}}.tox .tox-statusbar a,.tox .tox-statusbar__path-item,.tox .tox-statusbar__wordcount{color:#222f3eb3;text-decoration:none}.tox .tox-statusbar a:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__path-item:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__wordcount:hover:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar a:focus:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__path-item:focus:not(:disabled):not([aria-disabled=true]),.tox .tox-statusbar__wordcount:focus:not(:disabled):not([aria-disabled=true]){color:#222f3e;cursor:pointer}.tox .tox-statusbar__branding svg{fill:#222f3ecc;height:1.14em;vertical-align:-.28em;width:3.6em}.tox .tox-statusbar__branding a:hover:not(:disabled):not([aria-disabled=true]) svg,.tox .tox-statusbar__branding a:focus:not(:disabled):not([aria-disabled=true]) svg{fill:#222f3e}.tox .tox-statusbar__resize-handle{align-items:flex-end;align-self:stretch;cursor:nwse-resize;display:flex;flex:0 0 auto;justify-content:flex-end;margin-left:auto;margin-right:-8px;padding-bottom:3px;padding-left:1ch;padding-right:3px}.tox .tox-statusbar__resize-handle svg{display:block;fill:#222f3e80}.tox .tox-statusbar__resize-handle:focus svg{background-color:#dee0e2;border-radius:1px 1px 5px;box-shadow:0 0 0 2px #dee0e2}.tox:not([dir=rtl]) .tox-statusbar__path>*{margin-right:4px}.tox:not([dir=rtl]) .tox-statusbar__branding{margin-left:2ch}.tox[dir=rtl] .tox-statusbar{flex-direction:row-reverse}.tox[dir=rtl] .tox-statusbar__path>*{margin-left:4px}.tox .tox-throbber{z-index:1299}.tox .tox-throbber__busy-spinner{align-items:center;background-color:#fff9;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.tox .tox-tbtn{align-items:center;background:transparent;border:0;border-radius:3px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;justify-content:center;margin:6px 1px 5px 0;outline:none;overflow:hidden;padding:0;text-transform:none;width:34px}.tox .tox-tbtn svg{display:block;fill:#222f3e}.tox .tox-tbtn.tox-tbtn-more{padding-left:5px;padding-right:5px;width:inherit}.tox .tox-tbtn:focus{background:#cce2fa;border:0;box-shadow:none}.tox .tox-tbtn:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn:hover svg{fill:#222f3e}.tox .tox-tbtn:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn:active svg{fill:#222f3e}.tox .tox-tbtn--disabled .tox-tbtn--enabled svg{fill:#222f3e80}.tox .tox-tbtn--disabled,.tox .tox-tbtn--disabled:hover,.tox .tox-tbtn:disabled,.tox .tox-tbtn:disabled:hover{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-tbtn--disabled svg,.tox .tox-tbtn--disabled:hover svg,.tox .tox-tbtn:disabled svg,.tox .tox-tbtn:disabled:hover svg{fill:#222f3e80}.tox .tox-tbtn--enabled,.tox .tox-tbtn--enabled:hover{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tbtn--enabled>*,.tox .tox-tbtn--enabled:hover>*{transform:none}.tox .tox-tbtn--enabled svg,.tox .tox-tbtn--enabled:hover svg{fill:#222f3e}.tox .tox-tbtn--enabled.tox-tbtn--disabled svg,.tox .tox-tbtn--enabled:hover.tox-tbtn--disabled svg{fill:#222f3e80}.tox .tox-tbtn:focus:not(.tox-tbtn--disabled){color:#222f3e}.tox .tox-tbtn:focus:not(.tox-tbtn--disabled) svg{fill:#222f3e}.tox .tox-tbtn:active>*{transform:none}.tox .tox-tbtn--md{height:42px;width:51px}.tox .tox-tbtn--lg{flex-direction:column;height:56px;width:68px}.tox .tox-tbtn--return{align-self:stretch;height:unset;width:16px}.tox .tox-tbtn--labeled{padding:0 4px;width:unset}.tox .tox-tbtn__vlabel{display:block;font-size:10px;font-weight:400;letter-spacing:-.025em;margin-bottom:4px;white-space:nowrap}.tox .tox-number-input{border-radius:3px;display:flex;margin:6px 1px 5px 0;padding:0 4px;width:auto}.tox .tox-number-input .tox-input-wrapper{background:#f7f7f7;display:flex;pointer-events:none;text-align:center}.tox .tox-number-input .tox-input-wrapper:focus{background:#cce2fa}.tox .tox-number-input input{border-radius:3px;color:#222f3e;font-size:14px;margin:2px 0;pointer-events:all;width:60px}.tox .tox-number-input input:hover{background:#cce2fa;color:#222f3e}.tox .tox-number-input input:focus{background:#fff;color:#222f3e}.tox .tox-number-input input:disabled{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-number-input button{background:#f7f7f7;color:#222f3e;height:28px;text-align:center;width:24px}.tox .tox-number-input button svg{display:block;fill:#222f3e;margin:0 auto;transform:scale(.67)}.tox .tox-number-input button:focus{background:#cce2fa}.tox .tox-number-input button:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-number-input button:hover svg{fill:#222f3e}.tox .tox-number-input button:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-number-input button:active svg{fill:#222f3e}.tox .tox-number-input button:disabled{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-number-input button:disabled svg{fill:#222f3e80}.tox .tox-number-input button.minus{border-radius:3px 0 0 3px}.tox .tox-number-input button.plus{border-radius:0 3px 3px 0}.tox .tox-number-input:focus:not(:active)>button,.tox .tox-number-input:focus:not(:active)>.tox-input-wrapper{background:#cce2fa}.tox .tox-tbtn--select{margin:6px 1px 5px 0;padding:0 4px;width:auto}.tox .tox-tbtn__select-label{cursor:default;font-weight:400;height:initial;margin:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-tbtn__select-chevron{align-items:center;display:flex;justify-content:center;width:16px}.tox .tox-tbtn__select-chevron svg{fill:#222f3e80}.tox .tox-tbtn--bespoke{background:#f7f7f7}.tox .tox-tbtn--bespoke+.tox-tbtn--bespoke{margin-inline-start:4px}.tox .tox-tbtn--bespoke .tox-tbtn__select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:7em}.tox .tox-tbtn--disabled .tox-tbtn__select-label,.tox .tox-tbtn--select:disabled .tox-tbtn__select-label{cursor:not-allowed}.tox .tox-split-button{border:0;border-radius:3px;box-sizing:border-box;display:flex;margin:6px 1px 5px 0;overflow:hidden}.tox .tox-split-button:hover{box-shadow:0 0 0 1px #cce2fa inset}.tox .tox-split-button:focus{background:#cce2fa;box-shadow:none;color:#222f3e}.tox .tox-split-button>*{border-radius:0}.tox .tox-split-button__chevron{width:16px}.tox .tox-split-button__chevron svg{fill:#222f3e80}.tox .tox-split-button .tox-tbtn{margin:0}.tox .tox-split-button.tox-tbtn--disabled:hover,.tox .tox-split-button.tox-tbtn--disabled:focus,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:hover,.tox .tox-split-button.tox-tbtn--disabled .tox-tbtn:focus{background:transparent;box-shadow:none;color:#222f3e80}.tox.tox-platform-touch .tox-split-button .tox-tbtn--select{padding:0}.tox.tox-platform-touch .tox-split-button .tox-tbtn:not(.tox-tbtn--select):first-child{width:30px}.tox.tox-platform-touch .tox-split-button__chevron{width:20px}.tox .tox-split-button.tox-tbtn--disabled svg #tox-icon-text-color__color,.tox .tox-split-button.tox-tbtn--disabled svg #tox-icon-highlight-bg-color__color{opacity:.6}.tox .tox-toolbar-overlord{background-color:#fff}.tox .tox-toolbar,.tox .tox-toolbar__primary,.tox .tox-toolbar__overflow{background-attachment:local;background-color:#fff;background-image:repeating-linear-gradient(#e3e3e3 0px 1px,transparent 1px 39px);background-position:center top 40px;background-repeat:no-repeat;background-size:calc(100% - 22px) calc(100% - 41px);display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:wrap;padding:0;transform:perspective(1px)}.tox .tox-toolbar-overlord>.tox-toolbar,.tox .tox-toolbar-overlord>.tox-toolbar__primary,.tox .tox-toolbar-overlord>.tox-toolbar__overflow{background-position:center top 0px;background-size:calc(100% - 22px) calc(100% + -0px)}.tox .tox-toolbar__overflow.tox-toolbar__overflow--closed{height:0;opacity:0;padding-bottom:0;padding-top:0;visibility:hidden}.tox .tox-toolbar__overflow--growing{transition:height .3s ease,opacity .2s linear .1s}.tox .tox-toolbar__overflow--shrinking{transition:opacity .3s ease,height .2s linear .1s,visibility 0s linear .3s}.tox .tox-toolbar-overlord,.tox .tox-anchorbar{grid-column:1 / -1}.tox .tox-menubar+.tox-toolbar,.tox .tox-menubar+.tox-toolbar-overlord{border-top:1px solid transparent;margin-top:-1px;padding-bottom:1px;padding-top:1px}.tox .tox-toolbar--scrolling{flex-wrap:nowrap;overflow-x:auto}.tox .tox-pop .tox-toolbar{border-width:0}.tox .tox-toolbar--no-divider{background-image:none}.tox .tox-toolbar-overlord .tox-toolbar:not(.tox-toolbar--scrolling):first-child,.tox .tox-toolbar-overlord .tox-toolbar__primary{background-position:center top 39px}.tox .tox-editor-header>.tox-toolbar--scrolling,.tox .tox-toolbar-overlord .tox-toolbar--scrolling:first-child{background-image:none}.tox.tox-tinymce-aux .tox-toolbar__overflow{background-color:#fff;background-position:center top 43px;background-size:calc(100% - 16px) calc(100% - 51px);border:none;border-radius:6px;box-shadow:0 0 2px #222f3e33,0 4px 8px #222f3e26;overscroll-behavior:none;padding:4px 0}.tox-pop .tox-pop__dialog .tox-toolbar{background-position:center top 43px;background-size:calc(100% - 22px) calc(100% - 51px);padding:4px 0}.tox .tox-toolbar__group{align-items:center;display:flex;flex-wrap:wrap;margin:0;padding:0 11px 0 12px}.tox .tox-toolbar__group--pull-right{margin-left:auto}.tox .tox-toolbar--scrolling .tox-toolbar__group{flex-shrink:0;flex-wrap:nowrap}.tox:not([dir=rtl]) .tox-toolbar__group:not(:last-of-type){border-right:1px solid transparent}.tox[dir=rtl] .tox-toolbar__group:not(:last-of-type){border-left:1px solid transparent}.tox .tox-tooltip{display:inline-block;padding:8px;position:relative}.tox .tox-tooltip__body{background-color:#222f3e;border-radius:6px;box-shadow:0 2px 4px #222f3e4d;color:#ffffffbf;font-size:14px;font-style:normal;font-weight:400;padding:4px 8px;text-transform:none}.tox .tox-tooltip__arrow{position:absolute}.tox .tox-tooltip--down .tox-tooltip__arrow{border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #222f3e;bottom:0;left:50%;position:absolute;transform:translate(-50%)}.tox .tox-tooltip--up .tox-tooltip__arrow{border-bottom:8px solid #222f3e;border-left:8px solid transparent;border-right:8px solid transparent;left:50%;position:absolute;top:0;transform:translate(-50%)}.tox .tox-tooltip--right .tox-tooltip__arrow{border-bottom:8px solid transparent;border-left:8px solid #222f3e;border-top:8px solid transparent;position:absolute;right:0;top:50%;transform:translateY(-50%)}.tox .tox-tooltip--left .tox-tooltip__arrow{border-bottom:8px solid transparent;border-right:8px solid #222f3e;border-top:8px solid transparent;left:0;position:absolute;top:50%;transform:translateY(-50%)}.tox .tox-tree{display:flex;flex-direction:column}.tox .tox-tree .tox-trbtn{align-items:center;background:transparent;border:0;border-radius:4px;box-shadow:none;color:#222f3e;display:flex;flex:0 0 auto;font-size:14px;font-style:normal;font-weight:400;height:28px;margin-bottom:4px;margin-top:4px;outline:none;overflow:hidden;padding:0 0 0 8px;text-transform:none}.tox .tox-tree .tox-trbtn .tox-tree__label{cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tox .tox-tree .tox-trbtn svg{display:block;fill:#222f3e}.tox .tox-tree .tox-trbtn:focus{background:#cce2fa;border:0;box-shadow:none}.tox .tox-tree .tox-trbtn:hover{background:#cce2fa;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn:hover svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:active{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn:active svg{fill:#222f3e}.tox .tox-tree .tox-trbtn--disabled,.tox .tox-tree .tox-trbtn--disabled:hover,.tox .tox-tree .tox-trbtn:disabled,.tox .tox-tree .tox-trbtn:disabled:hover{background:transparent;border:0;box-shadow:none;color:#222f3e80;cursor:not-allowed}.tox .tox-tree .tox-trbtn--disabled svg,.tox .tox-tree .tox-trbtn--disabled:hover svg,.tox .tox-tree .tox-trbtn:disabled svg,.tox .tox-tree .tox-trbtn:disabled:hover svg{fill:#222f3e80}.tox .tox-tree .tox-trbtn--enabled,.tox .tox-tree .tox-trbtn--enabled:hover{background:#a6ccf7;border:0;box-shadow:none;color:#222f3e}.tox .tox-tree .tox-trbtn--enabled>*,.tox .tox-tree .tox-trbtn--enabled:hover>*{transform:none}.tox .tox-tree .tox-trbtn--enabled svg,.tox .tox-tree .tox-trbtn--enabled:hover svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:focus:not(.tox-trbtn--disabled){color:#222f3e}.tox .tox-tree .tox-trbtn:focus:not(.tox-trbtn--disabled) svg{fill:#222f3e}.tox .tox-tree .tox-trbtn:active>*{transform:none}.tox .tox-tree .tox-trbtn--return{align-self:stretch;height:unset;width:16px}.tox .tox-tree .tox-trbtn--labeled{padding:0 4px;width:unset}.tox .tox-tree .tox-trbtn__vlabel{display:block;font-size:10px;font-weight:400;letter-spacing:-.025em;margin-bottom:4px;white-space:nowrap}.tox .tox-tree .tox-tree--directory{display:flex;flex-direction:column}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label{font-weight:700}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn{margin-left:auto}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn svg{fill:transparent}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn.tox-mbtn--active svg,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-mbtn:focus svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover .tox-mbtn svg,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:focus .tox-mbtn svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover:has(.tox-mbtn:hover){background-color:transparent;color:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:hover:has(.tox-mbtn:hover) .tox-chevron svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label .tox-chevron{margin-right:6px}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--growing) .tox-chevron,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--shrinking) .tox-chevron{transition:transform .5s ease-in-out}.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--growing) .tox-chevron,.tox .tox-tree .tox-tree--directory .tox-tree--directory__label:has(+.tox-tree--directory__children--open) .tox-chevron{transform:rotate(90deg)}.tox .tox-tree .tox-tree--leaf__label{font-weight:400}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn{margin-left:auto}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn svg{fill:transparent}.tox .tox-tree .tox-tree--leaf__label .tox-mbtn.tox-mbtn--active svg,.tox .tox-tree .tox-tree--leaf__label .tox-mbtn:focus svg{fill:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover .tox-mbtn svg{fill:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover:has(.tox-mbtn:hover){background-color:transparent;color:#222f3e}.tox .tox-tree .tox-tree--leaf__label:hover:has(.tox-mbtn:hover) .tox-chevron svg{fill:#222f3e}.tox .tox-tree .tox-tree--directory__children{overflow:hidden;padding-left:16px}.tox .tox-tree .tox-tree--directory__children.tox-tree--directory__children--growing,.tox .tox-tree .tox-tree--directory__children.tox-tree--directory__children--shrinking{transition:height .5s ease-in-out}.tox .tox-tree .tox-trbtn.tox-tree--leaf__label{display:flex;justify-content:space-between}.tox .tox-view-wrap,.tox .tox-view-wrap__slot-container{background-color:#fff;display:flex;flex:1;flex-direction:column}.tox .tox-view{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.tox .tox-view__header{align-items:center;display:flex;font-size:16px;justify-content:space-between;padding:8px 8px 0;position:relative}.tox .tox-view--mobile.tox-view__header,.tox .tox-view--mobile.tox-view__toolbar{padding:8px}.tox .tox-view--scrolling{flex-wrap:nowrap;overflow-x:auto}.tox .tox-view__toolbar{display:flex;flex-direction:row;gap:8px;justify-content:space-between;padding:8px 8px 0}.tox .tox-view__toolbar__group{display:flex;flex-direction:row;gap:12px}.tox .tox-view__header-start,.tox .tox-view__header-end{display:flex}.tox .tox-view__pane{height:100%;padding:8px;width:100%}.tox .tox-view__pane_panel{border:1px solid #eeeeee;border-radius:6px}.tox:not([dir=rtl]) .tox-view__header .tox-view__header-start>*,.tox:not([dir=rtl]) .tox-view__header .tox-view__header-end>*{margin-left:8px}.tox[dir=rtl] .tox-view__header .tox-view__header-start>*,.tox[dir=rtl] .tox-view__header .tox-view__header-end>*{margin-right:8px}.tox .tox-well{border:1px solid #eeeeee;border-radius:6px;padding:8px;width:100%}.tox .tox-well>*:first-child{margin-top:0}.tox .tox-well>*:last-child{margin-bottom:0}.tox .tox-well>*:only-child{margin:0}.tox .tox-custom-editor{border:1px solid #eeeeee;border-radius:6px;display:flex;flex:1;overflow:hidden;position:relative}.tox .tox-dialog-loading:before{background-color:#00000080;content:"";height:100%;position:absolute;width:100%;z-index:1000}.tox .tox-tab{cursor:pointer}.tox .tox-dialog__content-js,.tox .tox-dialog__body-content .tox-collection{display:flex;flex:1}.tox:not(.tox-tinymce-inline) .tox-editor-header{background-color:#fff;border-bottom:1px solid #ced4da;box-shadow:none;padding:4px 0;transition:box-shadow .5s}.tox-tinymce{border:1px solid #ced4da}trix-editor{border:1px solid #bbb;border-radius:3px;margin:0;padding:.4em .6em;min-height:5em;outline:none}trix-toolbar *{box-sizing:border-box}trix-toolbar .trix-button-row{display:flex;flex-wrap:nowrap;justify-content:space-between;overflow-x:auto}trix-toolbar .trix-button-group{display:flex;margin-bottom:10px;border:1px solid #bbb;border-top-color:#ccc;border-bottom-color:#888;border-radius:3px}trix-toolbar .trix-button-group:not(:first-child){margin-left:1.5vw}@media (max-width: 768px){trix-toolbar .trix-button-group:not(:first-child){margin-left:0}}trix-toolbar .trix-button-group-spacer{flex-grow:1}@media (max-width: 768px){trix-toolbar .trix-button-group-spacer{display:none}}trix-toolbar .trix-button{position:relative;float:left;color:#0009;font-size:.75em;font-weight:600;white-space:nowrap;padding:0 .5em;margin:0;outline:none;border:none;border-bottom:1px solid #ddd;border-radius:0;background:transparent}trix-toolbar .trix-button:not(:first-child){border-left:1px solid #ccc}trix-toolbar .trix-button.trix-active{background:#cbeefa;color:#000}trix-toolbar .trix-button:not(:disabled){cursor:pointer}trix-toolbar .trix-button:disabled{color:#00000020}@media (max-width: 768px){trix-toolbar .trix-button{letter-spacing:-.01em;padding:0 .3em}}trix-toolbar .trix-button--icon{font-size:inherit;width:2.6em;height:1.6em;max-width:calc(.8em + 4vw);text-indent:-9999px}@media (max-width: 768px){trix-toolbar .trix-button--icon{height:2em;max-width:calc(.8em + 3.5vw)}}trix-toolbar .trix-button--icon:before{display:inline-block;position:absolute;top:0;right:0;bottom:0;left:0;opacity:.6;content:"";background-position:center;background-repeat:no-repeat;background-size:contain}@media (max-width: 768px){trix-toolbar .trix-button--icon:before{right:6%;left:6%}}trix-toolbar .trix-button--icon.trix-active:before{opacity:1}trix-toolbar .trix-button--icon:disabled:before{opacity:.125}trix-toolbar .trix-button--icon-attach:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.5%2018V7.5c0-2.25%203-2.25%203%200V18c0%204.125-6%204.125-6%200V7.5c0-6.375%209-6.375%209%200V18%22%20stroke%3D%22%23000%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E);top:8%;bottom:4%}trix-toolbar .trix-button--icon-bold:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.522%2019.242a.5.5%200%200%201-.5-.5V5.35a.5.5%200%200%201%20.5-.5h5.783c1.347%200%202.46.345%203.24.982.783.64%201.216%201.562%201.216%202.683%200%201.13-.587%202.129-1.476%202.71a.35.35%200%200%200%20.049.613c1.259.56%202.101%201.742%202.101%203.22%200%201.282-.483%202.334-1.363%203.063-.876.726-2.132%201.12-3.66%201.12h-5.89ZM9.27%207.347v3.362h1.97c.766%200%201.347-.17%201.733-.464.38-.291.587-.716.587-1.27%200-.53-.183-.928-.513-1.198-.334-.273-.838-.43-1.505-.43H9.27Zm0%205.606v3.791h2.389c.832%200%201.448-.177%201.853-.497.399-.315.614-.786.614-1.423%200-.62-.22-1.077-.63-1.385-.418-.313-1.053-.486-1.905-.486H9.27Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-italic:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M9%205h6.5v2h-2.23l-2.31%2010H13v2H6v-2h2.461l2.306-10H9V5Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-link:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M18.948%205.258a4.337%204.337%200%200%200-6.108%200L11.217%206.87a.993.993%200%200%200%200%201.41c.392.39%201.027.39%201.418%200l1.623-1.613a2.323%202.323%200%200%201%203.271%200%202.29%202.29%200%200%201%200%203.251l-2.393%202.38a3.021%203.021%200%200%201-4.255%200l-.05-.049a1.007%201.007%200%200%200-1.418%200%20.993.993%200%200%200%200%201.41l.05.049a5.036%205.036%200%200%200%207.091%200l2.394-2.38a4.275%204.275%200%200%200%200-6.072Zm-13.683%2013.6a4.337%204.337%200%200%200%206.108%200l1.262-1.255a.993.993%200%200%200%200-1.41%201.007%201.007%200%200%200-1.418%200L9.954%2017.45a2.323%202.323%200%200%201-3.27%200%202.29%202.29%200%200%201%200-3.251l2.344-2.331a2.579%202.579%200%200%201%203.631%200c.392.39%201.027.39%201.419%200a.993.993%200%200%200%200-1.41%204.593%204.593%200%200%200-6.468%200l-2.345%202.33a4.275%204.275%200%200%200%200%206.072Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-strike:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6%2014.986c.088%202.647%202.246%204.258%205.635%204.258%203.496%200%205.713-1.728%205.713-4.463%200-.275-.02-.536-.062-.781h-3.461c.398.293.573.654.573%201.123%200%201.035-1.074%201.787-2.646%201.787-1.563%200-2.773-.762-2.91-1.924H6ZM6.432%2010h3.763c-.632-.314-.914-.715-.914-1.273%200-1.045.977-1.739%202.432-1.739%201.475%200%202.52.723%202.617%201.914h2.764c-.05-2.548-2.11-4.238-5.39-4.238-3.145%200-5.392%201.719-5.392%204.316%200%20.363.04.703.12%201.02ZM4%2011a1%201%200%201%200%200%202h15a1%201%200%201%200%200-2H4Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-quote:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.581%208.471c.44-.5%201.056-.834%201.758-.995C8.074%207.17%209.201%207.822%2010%208.752c1.354%201.578%201.33%203.555.394%205.277-.941%201.731-2.788%203.163-4.988%203.56a.622.622%200%200%201-.653-.317c-.113-.205-.121-.49.16-.764.294-.286.567-.566.791-.835.222-.266.413-.54.524-.815.113-.28.156-.597.026-.908-.128-.303-.39-.524-.72-.69a3.02%203.02%200%200%201-1.674-2.7c0-.905.283-1.59.72-2.088Zm9.419%200c.44-.5%201.055-.834%201.758-.995%201.734-.306%202.862.346%203.66%201.276%201.355%201.578%201.33%203.555.395%205.277-.941%201.731-2.789%203.163-4.988%203.56a.622.622%200%200%201-.653-.317c-.113-.205-.122-.49.16-.764.294-.286.567-.566.791-.835.222-.266.412-.54.523-.815.114-.28.157-.597.026-.908-.127-.303-.39-.524-.72-.69a3.02%203.02%200%200%201-1.672-2.701c0-.905.283-1.59.72-2.088Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-heading-1:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M21.5%207.5v-3h-12v3H14v13h3v-13h4.5ZM9%2013.5h3.5v-3h-10v3H6v7h3v-7Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-code:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.293%2011.293a1%201%200%200%200%200%201.414l4%204a1%201%200%201%200%201.414-1.414L5.414%2012l3.293-3.293a1%201%200%200%200-1.414-1.414l-4%204Zm13.414%205.414%204-4a1%201%200%200%200%200-1.414l-4-4a1%201%200%201%200-1.414%201.414L18.586%2012l-3.293%203.293a1%201%200%200%200%201.414%201.414Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-bullet-list:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M5%207.5a1.5%201.5%200%201%200%200-3%201.5%201.5%200%200%200%200%203ZM8%206a1%201%200%200%201%201-1h11a1%201%200%201%201%200%202H9a1%201%200%200%201-1-1Zm1%205a1%201%200%201%200%200%202h11a1%201%200%201%200%200-2H9Zm0%206a1%201%200%201%200%200%202h11a1%201%200%201%200%200-2H9Zm-2.5-5a1.5%201.5%200%201%201-3%200%201.5%201.5%200%200%201%203%200ZM5%2019.5a1.5%201.5%200%201%200%200-3%201.5%201.5%200%200%200%200%203Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-number-list:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3%204h2v4H4V5H3V4Zm5%202a1%201%200%200%201%201-1h11a1%201%200%201%201%200%202H9a1%201%200%200%201-1-1Zm1%205a1%201%200%201%200%200%202h11a1%201%200%201%200%200-2H9Zm0%206a1%201%200%201%200%200%202h11a1%201%200%201%200%200-2H9Zm-3.5-7H6v1l-1.5%202H6v1H3v-1l1.667-2H3v-1h2.5ZM3%2017v-1h3v4H3v-1h2v-.5H4v-1h1V17H3Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-undo:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3%2014a1%201%200%200%200%201%201h6a1%201%200%201%200%200-2H6.257c2.247-2.764%205.151-3.668%207.579-3.264%202.589.432%204.739%202.356%205.174%205.405a1%201%200%200%200%201.98-.283c-.564-3.95-3.415-6.526-6.825-7.095C11.084%207.25%207.63%208.377%205%2011.39V8a1%201%200%200%200-2%200v6Zm2-1Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-redo:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M21%2014a1%201%200%200%201-1%201h-6a1%201%200%201%201%200-2h3.743c-2.247-2.764-5.151-3.668-7.579-3.264-2.589.432-4.739%202.356-5.174%205.405a1%201%200%200%201-1.98-.283c.564-3.95%203.415-6.526%206.826-7.095%203.08-.513%206.534.614%209.164%203.626V8a1%201%200%201%201%202%200v6Zm-2-1Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-decrease-nesting-level:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M5%206a1%201%200%200%201%201-1h12a1%201%200%201%201%200%202H6a1%201%200%200%201-1-1Zm4%205a1%201%200%201%200%200%202h9a1%201%200%201%200%200-2H9Zm-3%206a1%201%200%201%200%200%202h12a1%201%200%201%200%200-2H6Zm-3.707-5.707a1%201%200%200%200%200%201.414l2%202a1%201%200%201%200%201.414-1.414L4.414%2012l1.293-1.293a1%201%200%200%200-1.414-1.414l-2%202Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-button--icon-increase-nesting-level:before{background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M5%206a1%201%200%200%201%201-1h12a1%201%200%201%201%200%202H6a1%201%200%200%201-1-1Zm4%205a1%201%200%201%200%200%202h9a1%201%200%201%200%200-2H9Zm-3%206a1%201%200%201%200%200%202h12a1%201%200%201%200%200-2H6Zm-2.293-2.293%202-2a1%201%200%200%200%200-1.414l-2-2a1%201%200%201%200-1.414%201.414L3.586%2012l-1.293%201.293a1%201%200%201%200%201.414%201.414Z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E)}trix-toolbar .trix-dialogs{position:relative}trix-toolbar .trix-dialog{position:absolute;top:0;left:0;right:0;font-size:.75em;padding:15px 10px;background:#fff;box-shadow:0 .3em 1em #ccc;border-top:2px solid #888;border-radius:5px;z-index:5}trix-toolbar .trix-input--dialog{font-size:inherit;font-weight:400;padding:.5em .8em;margin:0 10px 0 0;border-radius:3px;border:1px solid #bbb;background-color:#fff;box-shadow:none;outline:none;-webkit-appearance:none;-moz-appearance:none}trix-toolbar .trix-input--dialog.validate:invalid{box-shadow:red 0 0 1.5px 1px}trix-toolbar .trix-button--dialog{font-size:inherit;padding:.5em;border-bottom:none}trix-toolbar .trix-dialog--link{max-width:600px}trix-toolbar .trix-dialog__link-fields{display:flex;align-items:baseline}trix-toolbar .trix-dialog__link-fields .trix-input{flex:1}trix-toolbar .trix-dialog__link-fields .trix-button-group{flex:0 0 content;margin:0}trix-editor [data-trix-mutable]:not(.attachment__caption-editor){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}trix-editor [data-trix-mutable]::-moz-selection,trix-editor [data-trix-cursor-target]::-moz-selection,trix-editor [data-trix-mutable] ::-moz-selection{background:none}trix-editor [data-trix-mutable]::selection,trix-editor [data-trix-cursor-target]::selection,trix-editor [data-trix-mutable] ::selection{background:none}trix-editor .attachment__caption-editor:focus[data-trix-mutable]::-moz-selection{background:highlight}trix-editor .attachment__caption-editor:focus[data-trix-mutable]::selection{background:highlight}trix-editor [data-trix-mutable].attachment.attachment--file{box-shadow:0 0 0 2px highlight;border-color:transparent}trix-editor [data-trix-mutable].attachment img{box-shadow:0 0 0 2px highlight}trix-editor .attachment{position:relative}trix-editor .attachment:hover{cursor:default}trix-editor .attachment--preview .attachment__caption:hover{cursor:text}trix-editor .attachment__progress{position:absolute;z-index:1;height:20px;top:calc(50% - 10px);left:5%;width:90%;opacity:.9;transition:opacity .2s ease-in}trix-editor .attachment__progress[value="100"]{opacity:0}trix-editor .attachment__caption-editor{display:inline-block;width:100%;margin:0;padding:0;font-size:inherit;font-family:inherit;line-height:inherit;color:inherit;text-align:center;vertical-align:top;border:none;outline:none;-webkit-appearance:none;-moz-appearance:none}trix-editor .attachment__toolbar{position:absolute;z-index:1;top:-.9em;left:0;width:100%;text-align:center}trix-editor .trix-button-group{display:inline-flex}trix-editor .trix-button{position:relative;float:left;color:#666;white-space:nowrap;font-size:80%;padding:0 .8em;margin:0;outline:none;border:none;border-radius:0;background:transparent}trix-editor .trix-button:not(:first-child){border-left:1px solid #ccc}trix-editor .trix-button.trix-active{background:#cbeefa}trix-editor .trix-button:not(:disabled){cursor:pointer}trix-editor .trix-button--remove{text-indent:-9999px;display:inline-block;padding:0;outline:none;width:1.8em;height:1.8em;line-height:1.8em;border-radius:50%;background-color:#fff;border:2px solid highlight;box-shadow:1px 1px 6px #00000040}trix-editor .trix-button--remove:before{display:inline-block;position:absolute;top:0;right:0;bottom:0;left:0;opacity:.7;content:"";background-image:url(data:image/svg+xml,%3Csvg%20height%3D%2224%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M19%206.41%2017.59%205%2012%2010.59%206.41%205%205%206.41%2010.59%2012%205%2017.59%206.41%2019%2012%2013.41%2017.59%2019%2019%2017.59%2013.41%2012z%22%2F%3E%3Cpath%20d%3D%22M0%200h24v24H0z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E);background-position:center;background-repeat:no-repeat;background-size:90%}trix-editor .trix-button--remove:hover{border-color:#333}trix-editor .trix-button--remove:hover:before{opacity:1}trix-editor .attachment__metadata-container{position:relative}trix-editor .attachment__metadata{position:absolute;left:50%;top:2em;transform:translate(-50%);max-width:90%;padding:.1em .6em;font-size:.8em;color:#fff;background-color:#000000b3;border-radius:3px}trix-editor .attachment__metadata .attachment__name{display:inline-block;max-width:100%;vertical-align:bottom;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}trix-editor .attachment__metadata .attachment__size{margin-left:.2em;white-space:nowrap}.trix-content{line-height:1.5;overflow-wrap:break-word;word-break:break-word}.trix-content *{box-sizing:border-box;margin:0;padding:0}.trix-content h1{font-size:1.2em;line-height:1.2}.trix-content blockquote{border:0 solid #ccc;border-left-width:.3em;margin-left:.3em;padding-left:.6em}.trix-content [dir=rtl] blockquote,.trix-content blockquote[dir=rtl]{border-width:0;border-right-width:.3em;margin-right:.3em;padding-right:.6em}.trix-content li{margin-left:1em}.trix-content [dir=rtl] li{margin-right:1em}.trix-content pre{display:inline-block;width:100%;vertical-align:top;font-family:monospace;font-size:.9em;padding:.5em;white-space:pre;background-color:#eee;overflow-x:auto}.trix-content img{max-width:100%;height:auto}.trix-content .attachment{display:inline-block;position:relative;max-width:100%}.trix-content .attachment a{color:inherit;text-decoration:none}.trix-content .attachment a:hover,.trix-content .attachment a:visited:hover{color:inherit}.trix-content .attachment__caption{text-align:center}.trix-content .attachment__caption .attachment__name+.attachment__size:before{content:" •"}.trix-content .attachment--preview{width:100%;text-align:center}.trix-content .attachment--preview .attachment__caption{color:#666;font-size:.9em;line-height:1.2}.trix-content .attachment--file{color:#333;line-height:1;margin:0 2px 2px;padding:.4em 1em;border:1px solid #bbb;border-radius:5px}.trix-content .attachment-gallery{display:flex;flex-wrap:wrap;position:relative}.trix-content .attachment-gallery .attachment{flex:1 0 33%;padding:0 .5em;max-width:33%}.trix-content .attachment-gallery.attachment-gallery--2 .attachment,.trix-content .attachment-gallery.attachment-gallery--4 .attachment{flex-basis:50%;max-width:50%}.field-content.svelte-md34ba{max-height:200px;overflow-y:scroll} diff --git a/front/dist/manifest.json b/front/dist/manifest.json index f250ccd..0df7770 100644 --- a/front/dist/manifest.json +++ b/front/dist/manifest.json @@ -1,11 +1,11 @@ { "main.js": { - "file": "assets/main-BtcBvcC_.js", + "file": "assets/main-1FLcNLEV.js", "name": "main", "src": "main.js", "isEntry": true, "css": [ - "assets/main-BWRwkaBb.css" + "assets/main-U24QISX_.css" ] } } \ No newline at end of file