goffeetabler/storage/public/dist/libs/hugerte/hugerte.min.js
2026-09-12 23:29:45 -05:00

609 lines
No EOL
462 KiB
JavaScript

/**
* HugeRTE version 1.0.12 (2026-06-29)
* Copyright (c) 2022 Ephox Corporation DBA Tiny Technologies, Inc.
* Copyright (c) 2026 HugeRTE contributors
* Licensed under the MIT license (https://github.com/hugerte/hugerte/blob/main/LICENSE.TXT)
*/
/**
* This file bundles the code of DOMPurify, which is dual-licensed under the Mozilla Public License v2.0 and the Apache License, Version 2.0, meaning you can use it under either one of those licenses.
* Copyright 2024 Dr.-Ing. Mario Heiderich, Cure53 and other contributors
* https://github.com/cure53/DOMPurify/blob/main/LICENSE
* The latest original code of DOMPurify can be found at https://github.com/cure53/DOMPurify.
*/
!function(){"use strict";var e=function(e){if(null===e)return"null";if(void 0===e)return"undefined";var t=typeof e;return"object"===t&&(Array.prototype.isPrototypeOf(e)||e.constructor&&"Array"===e.constructor.name)?"array":"object"===t&&(String.prototype.isPrototypeOf(e)||e.constructor&&"String"===e.constructor.name)?"string":t},t=function(e){return{eq:e}},n=t(function(e,t){return e===t}),o=function(e){return t(function(t,n){if(t.length!==n.length)return!1;for(var o=t.length,r=0;r<o;r++)if(!e.eq(t[r],n[r]))return!1;return!0})},r=function(e){return t(function(r,s){var a=Object.keys(r),i=Object.keys(s);if(!function(e,n){return function(e,n){return t(function(t,o){return e.eq(n(t),n(o))})}(o(e),function(e){return function(e,t){return Array.prototype.slice.call(e).sort(t)}(e,n)})}(n).eq(a,i))return!1;for(var l=a.length,c=0;c<l;c++){var d=a[c];if(!e.eq(r[d],s[d]))return!1}return!0})},s=t(function(t,n){if(t===n)return!0;var a=e(t);return a===e(n)&&(function(e){return-1!==["undefined","boolean","number","string","function","xml","null"].indexOf(e)}(a)?t===n:"array"===a?o(s).eq(t,n):"object"===a&&r(s).eq(t,n))});const a=Object.getPrototypeOf,i=(e,t,n)=>{var o;return!!n(e,t.prototype)||(null===(o=e.constructor)||void 0===o?void 0:o.name)===t.name},l=e=>t=>(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&i(e,String,(e,t)=>t.isPrototypeOf(e))?"string":t})(t)===e,c=e=>t=>typeof t===e,d=e=>t=>e===t,u=(e,t)=>f(e)&&i(e,t,(e,t)=>a(e)===t),m=l("string"),f=l("object"),g=e=>u(e,Object),p=l("array"),h=d(null),b=c("boolean"),v=d(void 0),y=e=>null==e,C=e=>!y(e),w=c("function"),x=c("number"),S=(e,t)=>{if(p(e)){for(let n=0,o=e.length;n<o;++n)if(!t(e[n]))return!1;return!0}return!1},E=()=>{},_=(e,t)=>(...n)=>e(t.apply(null,n)),k=(e,t)=>n=>e(t(n)),N=e=>()=>e,R=e=>e,A=(e,t)=>e===t;function T(e,...t){return(...n)=>{const o=t.concat(n);return e.apply(null,o)}}const O=e=>t=>!e(t),B=e=>()=>{throw new Error(e)},P=e=>e(),D=e=>{e()},L=N(!1),M=N(!0);class I{constructor(e,t){this.tag=e,this.value=t}static some(e){return new I(!0,e)}static none(){return I.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?I.some(e(this.value)):I.none()}bind(e){return this.tag?e(this.value):I.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:I.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(null!=e?e:"Called getOrDie on None")}static from(e){return C(e)?I.some(e):I.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}I.singletonNone=new I(!1);const F=Array.prototype.slice,z=Array.prototype.indexOf,U=Array.prototype.push,j=(e,t)=>z.call(e,t),H=(e,t)=>j(e,t)>-1,$=(e,t)=>{for(let n=0,o=e.length;n<o;n++)if(t(e[n],n))return!0;return!1},q=(e,t)=>{const n=e.length,o=new Array(n);for(let r=0;r<n;r++){const n=e[r];o[r]=t(n,r)}return o},V=(e,t)=>{for(let n=0,o=e.length;n<o;n++)t(e[n],n)},W=(e,t)=>{for(let n=e.length-1;n>=0;n--)t(e[n],n)},K=(e,t)=>{const n=[],o=[];for(let r=0,s=e.length;r<s;r++){const s=e[r];(t(s,r)?n:o).push(s)}return{pass:n,fail:o}},Y=(e,t)=>{const n=[];for(let o=0,r=e.length;o<r;o++){const r=e[o];t(r,o)&&n.push(r)}return n},G=(e,t,n)=>(W(e,(e,o)=>{n=t(n,e,o)}),n),X=(e,t,n)=>(V(e,(e,o)=>{n=t(n,e,o)}),n),Z=(e,t,n)=>{for(let o=0,r=e.length;o<r;o++){const r=e[o];if(t(r,o))return I.some(r);if(n(r,o))break}return I.none()},Q=(e,t)=>Z(e,t,L),J=(e,t)=>{for(let n=0,o=e.length;n<o;n++)if(t(e[n],n))return I.some(n);return I.none()},ee=e=>{const t=[];for(let n=0,o=e.length;n<o;++n){if(!p(e[n]))throw new Error("Arr.flatten item "+n+" was not an array, input: "+e);U.apply(t,e[n])}return t},te=(e,t)=>ee(q(e,t)),ne=(e,t)=>{for(let n=0,o=e.length;n<o;++n)if(!0!==t(e[n],n))return!1;return!0},oe=e=>{const t=F.call(e,0);return t.reverse(),t},re=(e,t)=>Y(e,e=>!H(t,e)),se=(e,t)=>{const n={};for(let o=0,r=e.length;o<r;o++){const r=e[o];n[String(r)]=t(r,o)}return n},ae=(e,t)=>{const n=F.call(e,0);return n.sort(t),n},ie=(e,t)=>t>=0&&t<e.length?I.some(e[t]):I.none(),le=e=>ie(e,0),ce=e=>ie(e,e.length-1),de=w(Array.from)?Array.from:e=>F.call(e),ue=(e,t)=>{for(let n=0;n<e.length;n++){const o=t(e[n],n);if(o.isSome())return o}return I.none()},me=(e,t)=>{const n=[],o=w(t)?e=>$(n,n=>t(n,e)):e=>H(n,e);for(let t=0,r=e.length;t<r;t++){const r=e[t];o(r)||n.push(r)}return n},fe=Object.keys,ge=Object.hasOwnProperty,pe=(e,t)=>{const n=fe(e);for(let o=0,r=n.length;o<r;o++){const r=n[o];t(e[r],r)}},he=(e,t)=>be(e,(e,n)=>({k:n,v:t(e,n)})),be=(e,t)=>{const n={};return pe(e,(e,o)=>{const r=t(e,o);n[r.k]=r.v}),n},ve=e=>(t,n)=>{e[n]=t},ye=(e,t,n,o)=>{pe(e,(e,r)=>{(t(e,r)?n:o)(e,r)})},Ce=(e,t)=>{const n={};return ye(e,t,ve(n),E),n},we=(e,t)=>{const n=[];return pe(e,(e,o)=>{n.push(t(e,o))}),n},xe=e=>we(e,R),Se=(e,t)=>Ee(e,t)?I.from(e[t]):I.none(),Ee=(e,t)=>ge.call(e,t),_e=(e,t)=>Ee(e,t)&&void 0!==e[t]&&null!==e[t],ke=e=>{const t={};return V(e,e=>{t[e]={}}),fe(t)},Ne=e=>void 0!==e.length,Re=Array.isArray,Ae=(e,t,n)=>{if(!e)return!1;if(n=n||e,Ne(e)){for(let o=0,r=e.length;o<r;o++)if(!1===t.call(n,e[o],o,e))return!1}else for(const o in e)if(Ee(e,o)&&!1===t.call(n,e[o],o,e))return!1;return!0},Te=(e,t)=>{const n=[];return Ae(e,(o,r)=>{n.push(t(o,r,e))}),n},Oe=(e,t)=>{const n=[];return Ae(e,(o,r)=>{t&&!t(o,r,e)||n.push(o)}),n},Be=(e,t,n,o)=>{let r=v(n)?e[0]:n;for(let n=0;n<e.length;n++)r=t.call(o,r,e[n],n);return r},Pe=(e,t,n)=>{for(let o=0,r=e.length;o<r;o++)if(t.call(n,e[o],o,e))return o;return-1},De=e=>e[e.length-1],Le=e=>{let t,n=!1;return(...o)=>(n||(n=!0,t=e.apply(null,o)),t)},Me=()=>Ie(0,0),Ie=(e,t)=>({major:e,minor:t}),Fe={nu:Ie,detect:(e,t)=>{const n=String(t).toLowerCase();return 0===e.length?Me():((e,t)=>{const n=((e,t)=>{for(let n=0;n<e.length;n++){const o=e[n];if(o.test(t))return o}})(e,t);if(!n)return{major:0,minor:0};const o=e=>Number(t.replace(n,"$"+e));return Ie(o(1),o(2))})(e,n)},unknown:Me},ze=(e,t)=>{const n=String(t).toLowerCase();return Q(e,e=>e.search(n))},Ue=(e,t,n)=>""===t||e.length>=t.length&&e.substr(n,n+t.length)===t,je=(e,t)=>$e(e,t)?((e,t)=>e.substring(t))(e,t.length):e,He=(e,t,n=0,o)=>{const r=e.indexOf(t,n);return-1!==r&&(!!v(o)||r+t.length<=o)},$e=(e,t)=>Ue(e,t,0),qe=(e,t)=>Ue(e,t,e.length-t.length),Ve=e=>t=>t.replace(e,""),We=Ve(/^\s+|\s+$/g),Ke=Ve(/^\s+/g),Ye=Ve(/\s+$/g),Ge=e=>e.length>0,Xe=e=>!Ge(e),Ze=(e,t=10)=>{const n=parseInt(e,t);return isNaN(n)?I.none():I.some(n)},Qe=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Je=e=>t=>He(t,e),et=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:e=>He(e,"edge/")&&He(e,"chrome")&&He(e,"safari")&&He(e,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Qe],search:e=>He(e,"chrome")&&!He(e,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:e=>He(e,"msie")||He(e,"trident")},{name:"Opera",versionRegexes:[Qe,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Je("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Je("firefox")},{name:"Safari",versionRegexes:[Qe,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:e=>(He(e,"safari")||He(e,"mobile/"))&&He(e,"applewebkit")}],tt=[{name:"Windows",search:Je("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:e=>He(e,"iphone")||He(e,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Je("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Je("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Je("linux"),versionRegexes:[]},{name:"Solaris",search:Je("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Je("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Je("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],nt={browsers:N(et),oses:N(tt)},ot="Edge",rt="Chromium",st="Opera",at="Firefox",it="Safari",lt=e=>{const t=e.current,n=e.version,o=e=>()=>t===e;return{current:t,version:n,isEdge:o(ot),isChromium:o(rt),isIE:o("IE"),isOpera:o(st),isFirefox:o(at),isSafari:o(it)}},ct=()=>lt({current:void 0,version:Fe.unknown()}),dt=lt,ut=(N(ot),N(rt),N("IE"),N(st),N(at),N(it),"Windows"),mt="Android",ft="Linux",gt="macOS",pt="Solaris",ht="FreeBSD",bt="ChromeOS",vt=e=>{const t=e.current,n=e.version,o=e=>()=>t===e;return{current:t,version:n,isWindows:o(ut),isiOS:o("iOS"),isAndroid:o(mt),isMacOS:o(gt),isLinux:o(ft),isSolaris:o(pt),isFreeBSD:o(ht),isChromeOS:o(bt)}},yt=()=>vt({current:void 0,version:Fe.unknown()}),Ct=vt,wt=(N(ut),N("iOS"),N(mt),N(ft),N(gt),N(pt),N(ht),N(bt),e=>window.matchMedia(e).matches);let xt=Le(()=>((e,t,n)=>{const o=nt.browsers(),r=nt.oses(),s=t.bind(e=>((e,t)=>ue(t.brands,t=>{const n=t.brand.toLowerCase();return Q(e,e=>{var t;return n===(null===(t=e.brand)||void 0===t?void 0:t.toLowerCase())}).map(e=>({current:e.name,version:Fe.nu(parseInt(t.version,10),0)}))}))(o,e)).orThunk(()=>((e,t)=>ze(e,t).map(e=>{const n=Fe.detect(e.versionRegexes,t);return{current:e.name,version:n}}))(o,e)).fold(ct,dt),a=((e,t)=>ze(e,t).map(e=>{const n=Fe.detect(e.versionRegexes,t);return{current:e.name,version:n}}))(r,e).fold(yt,Ct),i=((e,t,n,o)=>{const r=e.isiOS()&&!0===/ipad/i.test(n),s=e.isiOS()&&!r,a=e.isiOS()||e.isAndroid(),i=a||o("(pointer:coarse)"),l=r||!s&&a&&o("(min-device-width:768px)"),c=s||a&&!l,d=t.isSafari()&&e.isiOS()&&!1===/safari/i.test(n),u=!c&&!l&&!d;return{isiPad:N(r),isiPhone:N(s),isTablet:N(l),isPhone:N(c),isTouch:N(i),isAndroid:e.isAndroid,isiOS:e.isiOS,isWebView:N(d),isDesktop:N(u)}})(a,s,e,n);return{browser:s,os:a,deviceType:i}})(navigator.userAgent,I.from(navigator.userAgentData),wt));const St=()=>xt(),Et=navigator.userAgent,_t=St(),kt=_t.browser,Nt=_t.os,Rt=_t.deviceType,At=-1!==Et.indexOf("Windows Phone"),Tt={transparentSrc:"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",documentMode:kt.isIE()?document.documentMode||7:10,cacheSuffix:null,container:null,canHaveCSP:!kt.isIE(),windowsPhone:At,browser:{current:kt.current,version:kt.version,isChromium:kt.isChromium,isEdge:kt.isEdge,isFirefox:kt.isFirefox,isIE:kt.isIE,isOpera:kt.isOpera,isSafari:kt.isSafari},os:{current:Nt.current,version:Nt.version,isAndroid:Nt.isAndroid,isChromeOS:Nt.isChromeOS,isFreeBSD:Nt.isFreeBSD,isiOS:Nt.isiOS,isLinux:Nt.isLinux,isMacOS:Nt.isMacOS,isSolaris:Nt.isSolaris,isWindows:Nt.isWindows},deviceType:{isDesktop:Rt.isDesktop,isiPad:Rt.isiPad,isiPhone:Rt.isiPhone,isPhone:Rt.isPhone,isTablet:Rt.isTablet,isTouch:Rt.isTouch,isWebView:Rt.isWebView}},Ot=e=>y(e)?"":(""+e).trim(),Bt=function(e,t,n,o){o=o||this,e&&(n&&(e=e[n]),Ae(e,(e,r)=>!1!==t.call(o,e,r,n)&&(Bt(e,t,n,o),!0)))},Pt={trim:Ot,isArray:Re,is:(e,t)=>t?!("array"!==t||!Re(e))||typeof e===t:void 0!==e,toArray:e=>{if(Re(e))return e;{const t=[];for(let n=0,o=e.length;n<o;n++)t[n]=e[n];return t}},makeMap:(e,t,n={})=>{const o=m(e)?e.split(t||","):e||[];let r=o.length;for(;r--;)n[o[r]]={};return n},each:Ae,map:Te,grep:Oe,inArray:(e,t)=>{if(e)for(let n=0,o=e.length;n<o;n++)if(e[n]===t)return n;return-1},hasOwn:Ee,extend:(e,...t)=>{for(let n=0;n<t.length;n++){const o=t[n];for(const t in o)if(Ee(o,t)){const n=o[t];void 0!==n&&(e[t]=n)}}return e},walk:Bt,resolve:(e,t=window)=>{const n=e.split(".");for(let e=0,o=n.length;e<o&&(t=t[n[e]]);e++);return t},explode:(e,t)=>p(e)?e:""===e?[]:Te(e.split(t||","),Ot),_addCacheSuffix:e=>{const t=Tt.cacheSuffix;return t&&(e+=(-1===e.indexOf("?")?"?":"&")+t),e}},Dt=(e,t,n=A)=>e.exists(e=>n(e,t)),Lt=(e,t,n=A)=>Mt(e,t,n).getOr(e.isNone()&&t.isNone()),Mt=(e,t,n)=>e.isSome()&&t.isSome()?I.some(n(e.getOrDie(),t.getOrDie())):I.none(),It=(e,t)=>e?I.some(t):I.none(),Ft="undefined"!=typeof window?window:Function("return this;")(),zt=(e,t)=>((e,t)=>{let n=null!=t?t:Ft;for(let t=0;t<e.length&&null!=n;++t)n=n[e[t]];return n})(e.split("."),t),Ut=Object.getPrototypeOf,jt=e=>{const t=zt("ownerDocument.defaultView",e);return f(e)&&((e=>((e,t)=>{const n=((e,t)=>zt(e,t))(e,t);if(null==n)throw new Error(e+" not available on this browser");return n})("HTMLElement",e))(t).prototype.isPrototypeOf(e)||/^HTML\w*Element$/.test(Ut(e).constructor.name))},Ht=e=>e.dom.nodeName.toLowerCase(),$t=e=>e.dom.nodeType,qt=e=>t=>$t(t)===e,Vt=e=>Wt(e)&&jt(e.dom),Wt=qt(1),Kt=qt(3),Yt=qt(9),Gt=qt(11),Xt=e=>t=>Wt(t)&&Ht(t)===e,Zt=(e,t,n)=>{if(!(m(n)||b(n)||x(n)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",n,":: Element ",e),new Error("Attribute value was not simple");e.setAttribute(t,n+"")},Qt=(e,t,n)=>{Zt(e.dom,t,n)},Jt=(e,t)=>{const n=e.dom;pe(t,(e,t)=>{Zt(n,t,e)})},en=(e,t)=>{const n=e.dom.getAttribute(t);return null===n?void 0:n},tn=(e,t)=>I.from(en(e,t)),nn=(e,t)=>{const n=e.dom;return!(!n||!n.hasAttribute)&&n.hasAttribute(t)},on=(e,t)=>{e.dom.removeAttribute(t)},rn=e=>X(e.dom.attributes,(e,t)=>(e[t.name]=t.value,e),{}),sn=(e,t)=>{const n=en(e,t);return void 0===n||""===n?[]:n.split(" ")},an=e=>void 0!==e.dom.classList,ln=e=>sn(e,"class"),cn=(e,t)=>((e,t,n)=>{const o=sn(e,t).concat([n]);return Qt(e,t,o.join(" ")),!0})(e,"class",t),dn=(e,t)=>((e,t,n)=>{const o=Y(sn(e,t),e=>e!==n);return o.length>0?Qt(e,t,o.join(" ")):on(e,t),!1})(e,"class",t),un=(e,t)=>{an(e)?e.dom.classList.add(t):cn(e,t)},mn=e=>{0===(an(e)?e.dom.classList:ln(e)).length&&on(e,"class")},fn=(e,t)=>{an(e)?e.dom.classList.remove(t):dn(e,t),mn(e)},gn=(e,t)=>an(e)&&e.dom.classList.contains(t),pn=e=>{if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}},hn=(e,t)=>{const n=(t||document).createElement("div");if(n.innerHTML=e,!n.hasChildNodes()||n.childNodes.length>1){const t="HTML does not have a single root node";throw console.error(t,e),new Error(t)}return pn(n.childNodes[0])},bn=(e,t)=>{const n=(t||document).createElement(e);return pn(n)},vn=(e,t)=>{const n=(t||document).createTextNode(e);return pn(n)},yn=pn,Cn=(e,t,n)=>I.from(e.dom.elementFromPoint(t,n)).map(pn),wn=(e,t)=>{const n=[],o=e=>(n.push(e),t(e));let r=t(e);do{r=r.bind(o)}while(r.isSome());return n},xn=(e,t)=>{const n=e.dom;if(1!==n.nodeType)return!1;{const e=n;if(void 0!==e.matches)return e.matches(t);if(void 0!==e.msMatchesSelector)return e.msMatchesSelector(t);if(void 0!==e.webkitMatchesSelector)return e.webkitMatchesSelector(t);if(void 0!==e.mozMatchesSelector)return e.mozMatchesSelector(t);throw new Error("Browser lacks native selectors")}},Sn=e=>1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType||0===e.childElementCount,En=(e,t)=>e.dom===t.dom,_n=(e,t)=>{const n=e.dom,o=t.dom;return n!==o&&n.contains(o)},kn=e=>yn(e.dom.ownerDocument),Nn=e=>Yt(e)?e:kn(e),Rn=e=>yn(Nn(e).dom.defaultView),An=e=>I.from(e.dom.parentNode).map(yn),Tn=e=>I.from(e.dom.parentElement).map(yn),On=(e,t)=>{const n=w(t)?t:L;let o=e.dom;const r=[];for(;null!==o.parentNode&&void 0!==o.parentNode;){const e=o.parentNode,t=yn(e);if(r.push(t),!0===n(t))break;o=e}return r},Bn=e=>I.from(e.dom.previousSibling).map(yn),Pn=e=>I.from(e.dom.nextSibling).map(yn),Dn=e=>oe(wn(e,Bn)),Ln=e=>wn(e,Pn),Mn=e=>q(e.dom.childNodes,yn),In=(e,t)=>{const n=e.dom.childNodes;return I.from(n[t]).map(yn)},Fn=e=>In(e,0),zn=e=>In(e,e.dom.childNodes.length-1),Un=e=>e.dom.childNodes.length,jn=e=>Gt(e)&&C(e.dom.host),Hn=w(Element.prototype.attachShadow)&&w(Node.prototype.getRootNode),$n=N(Hn),qn=Hn?e=>yn(e.dom.getRootNode()):Nn,Vn=e=>jn(e)?e:(e=>{const t=e.dom.head;if(null==t)throw new Error("Head is not available yet");return yn(t)})(Nn(e)),Wn=e=>yn(e.dom.host),Kn=e=>{if($n()&&C(e.target)){const t=yn(e.target);if(Wt(t)&&Yn(t)&&e.composed&&e.composedPath){const t=e.composedPath();if(t)return le(t)}}return I.from(e.target)},Yn=e=>C(e.dom.shadowRoot),Gn=e=>{const t=Kt(e)?e.dom.parentNode:e.dom;if(null==t||null===t.ownerDocument)return!1;const n=t.ownerDocument;return(e=>{const t=qn(e);return jn(t)?I.some(t):I.none()})(yn(t)).fold(()=>n.body.contains(t),k(Gn,Wn))};var Xn=(e,t,n,o,r)=>e(n,o)?I.some(n):w(r)&&r(n)?I.none():t(n,o,r);const Zn=(e,t,n)=>{let o=e.dom;const r=w(n)?n:L;for(;o.parentNode;){o=o.parentNode;const e=yn(o);if(t(e))return I.some(e);if(r(e))break}return I.none()},Qn=(e,t,n)=>Xn((e,t)=>t(e),Zn,e,t,n),Jn=(e,t)=>{const n=e=>{for(let o=0;o<e.childNodes.length;o++){const r=yn(e.childNodes[o]);if(t(r))return I.some(r);const s=n(e.childNodes[o]);if(s.isSome())return s}return I.none()};return n(e.dom)},eo=(e,t,n)=>Zn(e,e=>xn(e,t),n),to=(e,t)=>((e,t)=>{const n=void 0===t?document:t.dom;return Sn(n)?I.none():I.from(n.querySelector(e)).map(yn)})(t,e),no=(e,t,n)=>Xn((e,t)=>xn(e,t),eo,e,t,n),oo=(e,t=!1)=>{return Gn(e)?e.dom.isContentEditable:(n=e,no(n,"[contenteditable]")).fold(N(t),e=>"true"===ro(e));var n},ro=e=>e.dom.contentEditable,so=e=>void 0!==e.style&&w(e.style.getPropertyValue),ao=(e,t,n)=>{if(!m(n))throw console.error("Invalid call to CSS.set. Property ",t,":: Value ",n,":: Element ",e),new Error("CSS value must be a string: "+n);so(e)&&e.style.setProperty(t,n)},io=(e,t,n)=>{const o=e.dom;ao(o,t,n)},lo=(e,t)=>{const n=e.dom;pe(t,(e,t)=>{ao(n,t,e)})},co=(e,t)=>{const n=e.dom,o=window.getComputedStyle(n).getPropertyValue(t);return""!==o||Gn(e)?o:uo(n,t)},uo=(e,t)=>so(e)?e.style.getPropertyValue(t):"",mo=(e,t)=>{const n=e.dom,o=uo(n,t);return I.from(o).filter(e=>e.length>0)},fo=e=>{const t={},n=e.dom;if(so(n))for(let e=0;e<n.style.length;e++){const o=n.style.item(e);t[o]=n.style[o]}return t},go=(e,t)=>{((e,t)=>{so(e)&&e.style.removeProperty(t)})(e.dom,t),Dt(tn(e,"style").map(We),"")&&on(e,"style")},po=(e,t)=>{An(e).each(n=>{n.dom.insertBefore(t.dom,e.dom)})},ho=(e,t)=>{Pn(e).fold(()=>{An(e).each(e=>{vo(e,t)})},e=>{po(e,t)})},bo=(e,t)=>{Fn(e).fold(()=>{vo(e,t)},n=>{e.dom.insertBefore(t.dom,n.dom)})},vo=(e,t)=>{e.dom.appendChild(t.dom)},yo=(e,t)=>{po(e,t),vo(t,e)},Co=(e,t)=>{V(t,t=>{vo(e,t)})},wo=e=>{e.dom.textContent="",V(Mn(e),e=>{xo(e)})},xo=e=>{const t=e.dom;null!==t.parentNode&&t.parentNode.removeChild(t)},So=e=>{const t=Mn(e);var n,o;t.length>0&&(n=e,V(o=t,(e,t)=>{const r=0===t?n:o[t-1];ho(r,e)})),xo(e)},Eo=e=>q(e,yn),_o=e=>e.dom.innerHTML,ko=(e,t)=>{const n=kn(e).dom,o=yn(n.createDocumentFragment()),r=((e,t)=>{const n=(t||document).createElement("div");return n.innerHTML=e,Mn(yn(n))})(t,n);Co(o,r),wo(e),vo(e,o)},No=(e,t,n,o)=>((e,t,n,o,r)=>{const s=((e,t)=>n=>{e(n)&&t((e=>{const t=yn(Kn(e).getOr(e.target)),n=()=>e.stopPropagation(),o=()=>e.preventDefault(),r=_(o,n);return((e,t,n,o,r,s,a)=>({target:e,x:t,y:n,stop:o,prevent:r,kill:s,raw:a}))(t,e.clientX,e.clientY,n,o,r,e)})(n))})(n,o);return e.dom.addEventListener(t,s,r),{unbind:T(Ro,e,t,s,r)}})(e,t,n,o,!1),Ro=(e,t,n,o)=>{e.dom.removeEventListener(t,n,o)},Ao=(e,t)=>({left:e,top:t,translate:(n,o)=>Ao(e+n,t+o)}),To=Ao,Oo=(e,t)=>void 0!==e?e:void 0!==t?t:0,Bo=e=>{const t=e.dom,n=t.ownerDocument.body;return n===t?To(n.offsetLeft,n.offsetTop):Gn(e)?(e=>{const t=e.getBoundingClientRect();return To(t.left,t.top)})(t):To(0,0)},Po=e=>{const t=void 0!==e?e.dom:document,n=t.body.scrollLeft||t.documentElement.scrollLeft,o=t.body.scrollTop||t.documentElement.scrollTop;return To(n,o)},Do=(e,t,n)=>{const o=(void 0!==n?n.dom:document).defaultView;o&&o.scrollTo(e,t)},Lo=(e,t)=>{St().browser.isSafari()&&w(e.dom.scrollIntoViewIfNeeded)?e.dom.scrollIntoViewIfNeeded(!1):e.dom.scrollIntoView(t)},Mo=(e,t,n,o)=>({x:e,y:t,width:n,height:o,right:e+n,bottom:t+o}),Io=e=>{const t=void 0===e?window:e,n=t.document,o=Po(yn(n));return(e=>{const t=void 0===e?window:e;return St().browser.isFirefox()?I.none():I.from(t.visualViewport)})(t).fold(()=>{const e=t.document.documentElement,n=e.clientWidth,r=e.clientHeight;return Mo(o.left,o.top,n,r)},e=>Mo(Math.max(e.pageLeft,o.left),Math.max(e.pageTop,o.top),e.width,e.height))},Fo=(e,t)=>{let n=[];return V(Mn(e),e=>{t(e)&&(n=n.concat([e])),n=n.concat(Fo(e,t))}),n},zo=(e,t)=>((e,t)=>{const n=void 0===t?document:t.dom;return Sn(n)?[]:q(n.querySelectorAll(e),yn)})(t,e),Uo=(e,t,n)=>Zn(e,t,n).isSome(),jo=(e,t)=>((e,t)=>{const n=e.dom;return n.parentNode?((e,t)=>Q(e.dom.childNodes,e=>t(yn(e))).map(yn))(yn(n.parentNode),n=>!En(e,n)&&t(n)):I.none()})(e,t).isSome(),Ho=(e,t)=>Jn(e,t).isSome();class $o{constructor(e,t){this.node=e,this.rootNode=t,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(e){return this.node=this.findSibling(this.node,"firstChild","nextSibling",e),this.node}prev(e){return this.node=this.findSibling(this.node,"lastChild","previousSibling",e),this.node}prev2(e){return this.node=this.findPreviousNode(this.node,e),this.node}findSibling(e,t,n,o){if(e){if(!o&&e[t])return e[t];if(e!==this.rootNode){let t=e[n];if(t)return t;for(let o=e.parentNode;o&&o!==this.rootNode;o=o.parentNode)if(t=o[n],t)return t}}}findPreviousNode(e,t){if(e){const n=e.previousSibling;if(this.rootNode&&n===this.rootNode)return;if(n){if(!t)for(let e=n.lastChild;e;e=e.lastChild)if(!e.lastChild)return e;return n}const o=e.parentNode;if(o&&o!==this.rootNode)return o}}}const qo="\ufeff",Vo="\xa0",Wo=e=>e===qo,Ko=/^[ \t\r\n]*$/,Yo=e=>Ko.test(e),Go=e=>"\n"===e||"\r"===e,Xo=(e,t=4,n=!0,o=!0)=>{const r=((e,t)=>t<=0?"":new Array(t+1).join(" "))(0,t),s=e.replace(/\t/g,r),a=X(s,(e,t)=>(e=>-1!==" \f\t\v".indexOf(e))(t)||t===Vo?e.pcIsSpace||""===e.str&&n||e.str.length===s.length-1&&o||((e,t)=>t<e.length&&t>=0&&Go(e[t]))(s,e.str.length+1)?{pcIsSpace:!1,str:e.str+Vo}:{pcIsSpace:!0,str:e.str+" "}:{pcIsSpace:Go(t),str:e.str+t},{pcIsSpace:!1,str:""});return a.str},Zo=e=>t=>!!t&&t.nodeType===e,Qo=e=>!!e&&!Object.getPrototypeOf(e),Jo=Zo(1),er=e=>Jo(e)&&Vt(yn(e)),tr=e=>{const t=e.toLowerCase();return e=>C(e)&&e.nodeName.toLowerCase()===t},nr=e=>{const t=e.map(e=>e.toLowerCase());return e=>{if(e&&e.nodeName){const n=e.nodeName.toLowerCase();return H(t,n)}return!1}},or=(e,t)=>{const n=t.toLowerCase().split(" ");return t=>{if(Jo(t)){const o=t.ownerDocument.defaultView;if(o)for(let r=0;r<n.length;r++){const s=o.getComputedStyle(t,null);if((s?s.getPropertyValue(e):null)===n[r])return!0}}return!1}},rr=e=>Jo(e)&&e.hasAttribute("data-mce-bogus"),sr=e=>Jo(e)&&"TABLE"===e.tagName,ar=e=>t=>{if(er(t)){if(t.contentEditable===e)return!0;if(t.getAttribute("data-mce-contenteditable")===e)return!0}return!1},ir=nr(["textarea","input"]),lr=Zo(3),cr=Zo(4),dr=Zo(7),ur=Zo(8),mr=Zo(9),fr=Zo(11),gr=tr("br"),pr=tr("img"),hr=ar("true"),br=ar("false"),vr=nr(["td","th"]),yr=nr(["td","th","caption"]),Cr=nr(["video","audio","object","embed"]),wr=tr("li"),xr=tr("details"),Sr=tr("summary"),Er={skipBogus:!0,includeZwsp:!1,checkRootAsContent:!1},_r=e=>Jo(e)&&e.hasAttribute("data-mce-bookmark");const kr=(e,t,n,o)=>lr(e)&&!((e,t,n)=>Yo(e.data)&&!((e,t,n)=>{const o=yn(t),r=yn(e),s=n.getWhitespaceElements();return Uo(r,e=>Ee(s,Ht(e)),T(En,o))})(e,t,n))(e,t,n)&&(!o.includeZwsp||!(e=>{for(const t of e)if(!Wo(t))return!1;return!0})(e.data)),Nr=(e,t,n,o)=>w(o.isContent)&&o.isContent(t)||((e,t)=>Jo(e)&&Ee(t.getNonEmptyElements(),e.nodeName))(t,e)||_r(t)||(e=>Jo(e)&&"A"===e.nodeName&&!e.hasAttribute("href")&&(e.hasAttribute("name")||e.hasAttribute("id")))(t)||kr(t,n,e,o)||br(t)||hr(t)&&(e=>Tn(yn(e)).exists(e=>!oo(e)))(t),Rr=(e,t,n)=>{const o={...Er,...n};if(o.checkRootAsContent&&Nr(e,t,t,o))return!1;let r=t.firstChild,s=0;if(!r)return!0;const a=new $o(r,t);do{if(o.skipBogus&&Jo(r)){const e=r.getAttribute("data-mce-bogus");if(e){r=a.next("all"===e);continue}}if(ur(r))r=a.next(!0);else if(gr(r))s++,r=a.next();else{if(Nr(e,r,t,o))return!1;r=a.next()}}while(r);return s<=1},Ar=(e,t,n)=>Rr(e,t.dom,{checkRootAsContent:!0,...n}),Tr=(e,t,n)=>Nr(e,t,t,{includeZwsp:Er.includeZwsp,...n}),Or=e=>"svg"===e.toLowerCase(),Br=e=>Or(e.nodeName),Pr=e=>"svg"===(null==e?void 0:e.nodeName)?"svg":"html",Dr=["svg"],Lr="data-mce-block",Mr=e=>q((e=>Y(fe(e),e=>!/[A-Z]/.test(e)))(e),e=>`${e}:`+q(Dr,t=>`not(${t} ${e})`).join(":")).join(","),Ir=(e,t)=>C(t.querySelector(e))?(t.setAttribute(Lr,"true"),"inline-boundary"===t.getAttribute("data-mce-selected")&&t.removeAttribute("data-mce-selected"),!0):(t.removeAttribute(Lr),!1),Fr=(e,t)=>{const n=Mr(e.getTransparentElements()),o=Mr(e.getBlockElements());return Y(t.querySelectorAll(n),e=>Ir(o,e))},zr=(e,t,n)=>{var o;const r=n?"lastChild":"firstChild";for(let n=t[r];n;n=n[r])if(Rr(e,n,{checkRootAsContent:!0}))return void(null===(o=n.parentNode)||void 0===o||o.removeChild(n))},Ur=(e,t,n)=>{const o=e.getBlockElements(),r=yn(t),s=e=>Ht(e)in o,a=e=>En(e,r);V(Eo(n),t=>{Zn(t,s,a).each(n=>{const o=(t=>Y(Mn(t),t=>s(t)&&!e.isValidChild(Ht(n),Ht(t))))(t);if(o.length>0){const t=Tn(n);V(o,t=>{Zn(t,s,a).each(n=>{((e,t,n)=>{const o=document.createRange(),r=t.parentNode;if(r){o.setStartBefore(t),o.setEndBefore(n);const s=o.extractContents();zr(e,s,!0),o.setStartAfter(n),o.setEndAfter(t);const a=o.extractContents();zr(e,a,!1),Rr(e,s,{checkRootAsContent:!0})||r.insertBefore(s,t),Rr(e,n,{checkRootAsContent:!0})||r.insertBefore(n,t),Rr(e,a,{checkRootAsContent:!0})||r.insertBefore(a,t),r.removeChild(t)}})(e,n.dom,t.dom)})}),t.each(t=>Fr(e,t.dom))}})})},jr=(e,t)=>{const n=Fr(e,t);Ur(e,t,n),((e,t,n)=>{V([...n,...Wr(e,t)?[t]:[]],t=>V(zo(yn(t),t.nodeName.toLowerCase()),t=>{Kr(e,t.dom)&&So(t)}))})(e,t,n)},Hr=(e,t)=>{if(Vr(e,t)){const n=Mr(e.getBlockElements());Ir(n,t)}},$r=e=>e.hasAttribute(Lr),qr=(e,t)=>Ee(e.getTransparentElements(),t),Vr=(e,t)=>Jo(t)&&qr(e,t.nodeName),Wr=(e,t)=>Vr(e,t)&&$r(t),Kr=(e,t)=>Vr(e,t)&&!$r(t),Yr=(e,t)=>1===t.type&&qr(e,t.name)&&m(t.attr(Lr)),Gr=St().browser,Xr=e=>Q(e,Wt),Zr=(e,t)=>e.children&&H(e.children,t),Qr=(e,t={})=>{let n=0;const o={},r=yn(e),s=Nn(r),a=e=>{vo(Vn(r),e)},i=e=>{const t=Vn(r);to(t,"#"+e).each(xo)},l=e=>Se(o,e).getOrThunk(()=>({id:"mce-u"+n++,passed:[],failed:[],count:0})),c=e=>new Promise((n,r)=>{let i;const c=Pt._addCacheSuffix(e),d=l(c);o[c]=d,d.count++;const u=(e,t)=>{V(e,D),d.status=t,d.passed=[],d.failed=[],i&&(i.onload=null,i.onerror=null,i=null)},m=()=>u(d.passed,2),f=()=>u(d.failed,3);if(n&&d.passed.push(n),r&&d.failed.push(r),1===d.status)return;if(2===d.status)return void m();if(3===d.status)return void f();d.status=1;const g=bn("link",s.dom);Jt(g,{rel:"stylesheet",type:"text/css",id:d.id}),t.contentCssCors&&Qt(g,"crossOrigin","anonymous"),t.referrerPolicy&&Qt(g,"referrerpolicy",t.referrerPolicy),i=g.dom,i.onload=m,i.onerror=f,a(g),Qt(g,"href",c)}),d=e=>{const t=Pt._addCacheSuffix(e);Se(o,t).each(e=>{0===--e.count&&(delete o[t],i(e.id))})};return{load:c,loadRawCss:(e,t)=>{const n=l(e);o[e]=n,n.count++;const r=bn("style",s.dom);Jt(r,{rel:"stylesheet",type:"text/css",id:n.id}),r.dom.innerHTML=t,a(r)},loadAll:e=>Promise.allSettled(q(e,e=>c(e).then(N(e)))).then(e=>{const t=K(e,e=>"fulfilled"===e.status);return t.fail.length>0?Promise.reject(q(t.fail,e=>e.reason)):q(t.pass,e=>e.value)}),unload:d,unloadRawCss:e=>{Se(o,e).each(t=>{0===--t.count&&(delete o[e],i(t.id))})},unloadAll:e=>{V(e,e=>{d(e)})},_setReferrerPolicy:e=>{t.referrerPolicy=e},_setContentCssCors:e=>{t.contentCssCors=e}}},Jr=(()=>{const e=new WeakMap;return{forElement:(t,n)=>{const o=qn(t).dom;return I.from(e.get(o)).getOrThunk(()=>{const t=Qr(o,n);return e.set(o,t),t})}}})(),es=(e,t)=>C(e)&&(Tr(t,e)||t.isInline(e.nodeName.toLowerCase())),ts=e=>(e=>"span"===e.nodeName.toLowerCase())(e)&&"bookmark"===e.getAttribute("data-mce-type"),ns=(e,t,n,o)=>{var r;const s=o||t;if(Jo(t)&&ts(t))return t;const a=t.childNodes;for(let t=a.length-1;t>=0;t--)ns(e,a[t],n,s);if(Jo(t)){const e=t.childNodes;1===e.length&&ts(e[0])&&(null===(r=t.parentNode)||void 0===r||r.insertBefore(e[0],t))}return(e=>fr(e)||mr(e))(t)||Tr(n,t)||(e=>!!Jo(e)&&e.childNodes.length>0)(t)||((e,t,n)=>lr(e)&&e.data.length>0&&((e,t,n)=>{const o=new $o(e,t).prev(!1),r=new $o(e,t).next(!1),s=v(o)||es(o,n),a=v(r)||es(r,n);return s&&a})(e,t,n))(t,s,n)||e.remove(t),t},os=Pt.makeMap,rs=/[&<>\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ss=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,as=/[<>&\"\']/g,is=/&#([a-z0-9]+);?|&([a-z0-9]+);/gi,ls={128:"\u20ac",130:"\u201a",131:"\u0192",132:"\u201e",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02c6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017d",145:"\u2018",146:"\u2019",147:"\u201c",148:"\u201d",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02dc",153:"\u2122",154:"\u0161",155:"\u203a",156:"\u0153",158:"\u017e",159:"\u0178"},cs={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;","`":"&#96;"},ds={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"},us=(e,t)=>{const n={};if(e){const o=e.split(",");t=t||10;for(let e=0;e<o.length;e+=2){const r=String.fromCharCode(parseInt(o[e],t));if(!cs[r]){const t="&"+o[e+1]+";";n[r]=t,n[t]=r}}return n}},ms=us("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32),fs=(e,t)=>e.replace(t?rs:ss,e=>cs[e]||e),gs=(e,t)=>e.replace(t?rs:ss,e=>e.length>1?"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";":cs[e]||"&#"+e.charCodeAt(0)+";"),ps=(e,t,n)=>{const o=n||ms;return e.replace(t?rs:ss,e=>cs[e]||o[e]||e)},hs={encodeRaw:fs,encodeAllRaw:e=>(""+e).replace(as,e=>cs[e]||e),encodeNumeric:gs,encodeNamed:ps,getEncodeFunc:(e,t)=>{const n=us(t)||ms,o=os(e.replace(/\+/g,","));return o.named&&o.numeric?(e,t)=>e.replace(t?rs:ss,e=>void 0!==cs[e]?cs[e]:void 0!==n[e]?n[e]:e.length>1?"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";":"&#"+e.charCodeAt(0)+";"):o.named?t?(e,t)=>ps(e,t,n):ps:o.numeric?gs:fs},decode:e=>e.replace(is,(e,t)=>t?(t="x"===t.charAt(0).toLowerCase()?parseInt(t.substr(1),16):parseInt(t,10))>65535?(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t))):ls[t]||String.fromCharCode(t):ds[e]||ms[e]||(e=>{const t=bn("div").dom;return t.innerHTML=e,t.textContent||t.innerText||e})(e))},bs=(e,t)=>(e=Pt.trim(e))?e.split(t||" "):[],vs=e=>new RegExp("^"+e.replace(/([?+*])/g,".$1")+"$"),ys=e=>Object.freeze(["id","accesskey","class","dir","lang","style","tabindex","title","role",..."html4"!==e?["contenteditable","contextmenu","draggable","dropzone","hidden","spellcheck","translate"]:[],..."html5-strict"!==e?["xml:lang"]:[]]),Cs=e=>{let t,n;t="address blockquote div dl fieldset form h1 h2 h3 h4 h5 h6 hr menu ol p pre table ul",n="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","html4"!==e&&(t+=" article aside details dialog figure main header footer hgroup section nav a ins del canvas map",n+=" audio canvas command data datalist mark meter output picture progress time wbr video ruby bdi keygen svg"),"html5-strict"!==e&&(n=[n,"acronym applet basefont big font strike tt"].join(" "),t=[t,"center dir isindex noframes"].join(" "));const o=[t,n].join(" ");return{blockContent:t,phrasingContent:n,flowContent:o}},ws=e=>{const{blockContent:t,phrasingContent:n,flowContent:o}=Cs(e),r=e=>Object.freeze(e.split(" "));return Object.freeze({blockContent:r(t),phrasingContent:r(n),flowContent:r(o)})},xs={html4:Le(()=>ws("html4")),html5:Le(()=>ws("html5")),"html5-strict":Le(()=>ws("html5-strict"))},Ss=(e,t)=>{const{blockContent:n,phrasingContent:o,flowContent:r}=xs[e]();return"blocks"===t?I.some(n):"phrasing"===t?I.some(o):"flow"===t?I.some(r):I.none()},Es=e=>I.from(/^(@?)([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]+)$/.exec(e)).map(e=>({preset:"@"===e[1],name:e[2]})),_s={},ks=Pt.makeMap,Ns=Pt.each,Rs=Pt.extend,As=Pt.explode,Ts=(e,t={})=>{const n=ks(e," ",ks(e.toUpperCase()," "));return Rs(n,t)},Os=e=>Ts("td th li dt dd figcaption caption details summary",e.getTextBlockElements()),Bs=(e,t)=>{if(e){const n={};return m(e)&&(e={"*":e}),Ns(e,(e,o)=>{n[o]=n[o.toUpperCase()]="map"===t?ks(e,/[, ]/):As(e,/[, ]/)}),n}},Ps=(e={})=>{var t;const n={},o={};let r=[];const s={},a={},i=(t,n,o)=>{const r=e[t];if(r)return ks(r,/[, ]/,ks(r.toUpperCase(),/[, ]/));{let e=_s[t];return e||(e=Ts(n,o),_s[t]=e),e}},l=null!==(t=e.schema)&&void 0!==t?t:"html5",c=(e=>{const t=ys(e),{phrasingContent:n,flowContent:o}=Cs(e),r={},s=(e,t,n)=>{r[e]={attributes:se(t,N({})),attributesOrder:t,children:se(n,N({}))}},a=(e,n="",o="")=>{const r=bs(o),a=bs(e);let i=a.length;const l=[...t,...bs(n)];for(;i--;)s(a[i],l.slice(),r)},i=(e,t)=>{const n=bs(e),o=bs(t);let s=n.length;for(;s--;){const e=r[n[s]];for(let t=0,n=o.length;t<n;t++)e.attributes[o[t]]={},e.attributesOrder.push(o[t])}};return"html5-strict"!==e&&(V(bs("acronym applet basefont big font strike tt"),e=>{a(e,"",n)}),V(bs("center dir isindex noframes"),e=>{a(e,"",o)})),a("html","manifest","head body"),a("head","","base command link meta noscript script style title"),a("title hr noscript br"),a("base","href target"),a("link","href rel media hreflang type sizes hreflang"),a("meta","name http-equiv content charset"),a("style","media type scoped"),a("script","src async defer type charset"),a("body","onafterprint onbeforeprint onbeforeunload onblur onerror onfocus onhashchange onload onmessage onoffline ononline onpagehide onpageshow onpopstate onresize onscroll onstorage onunload",o),a("dd div","",o),a("address dt caption","","html4"===e?n:o),a("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","",n),a("blockquote","cite",o),a("ol","reversed start type","li"),a("ul","","li"),a("li","value",o),a("dl","","dt dd"),a("a","href target rel media hreflang type","html4"===e?n:o),a("q","cite",n),a("ins del","cite datetime",o),a("img","src sizes srcset alt usemap ismap width height"),a("iframe","src name width height",o),a("embed","src type width height"),a("object","data type typemustmatch name usemap form width height",[o,"param"].join(" ")),a("param","name value"),a("map","name",[o,"area"].join(" ")),a("area","alt coords shape href target rel media hreflang type"),a("table","border","caption colgroup thead tfoot tbody tr"+("html4"===e?" col":"")),a("colgroup","span","col"),a("col","span"),a("tbody thead tfoot","","tr"),a("tr","","td th"),a("td","colspan rowspan headers",o),a("th","colspan rowspan headers scope abbr",o),a("form","accept-charset action autocomplete enctype method name novalidate target",o),a("fieldset","disabled form name",[o,"legend"].join(" ")),a("label","form for",n),a("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"),a("button","disabled form formaction formenctype formmethod formnovalidate formtarget name type value","html4"===e?o:n),a("select","disabled form multiple name required size","option optgroup"),a("optgroup","disabled label","option"),a("option","disabled label selected value"),a("textarea","cols dirname disabled form maxlength name readonly required rows wrap"),a("menu","type label",[o,"li"].join(" ")),a("noscript","",o),"html4"!==e&&(a("wbr"),a("ruby","",[n,"rt rp"].join(" ")),a("figcaption","",o),a("mark rt rp bdi","",n),a("summary","",[n,"h1 h2 h3 h4 h5 h6"].join(" ")),a("canvas","width height",o),a("data","value",n),a("video","src crossorigin poster preload autoplay mediagroup loop muted controls width height buffered",[o,"track source"].join(" ")),a("audio","src crossorigin preload autoplay mediagroup loop muted controls buffered volume",[o,"track source"].join(" ")),a("picture","","img source"),a("source","src srcset type media sizes"),a("track","kind src srclang label default"),a("datalist","",[n,"option"].join(" ")),a("article section nav aside main header footer","",o),a("hgroup","","h1 h2 h3 h4 h5 h6"),a("figure","",[o,"figcaption"].join(" ")),a("time","datetime",n),a("dialog","open",o),a("command","type label icon disabled checked radiogroup command"),a("output","for form name",n),a("progress","value max",n),a("meter","value min max low high optimum",n),a("details","open",[o,"summary"].join(" ")),a("keygen","autofocus challenge disabled form keytype name"),s("svg","id tabindex lang xml:space class style x y width height viewBox preserveAspectRatio zoomAndPan transform".split(" "),[])),"html5-strict"!==e&&(i("script","language xml:space"),i("style","xml:space"),i("object","declare classid code codebase codetype archive standby align border hspace vspace"),i("embed","align name hspace vspace"),i("param","valuetype type"),i("a","charset name rev shape coords"),i("br","clear"),i("applet","codebase archive code object alt name width height align hspace vspace"),i("img","name longdesc align border hspace vspace"),i("iframe","longdesc frameborder marginwidth marginheight scrolling align"),i("font basefont","size color face"),i("input","usemap align"),i("select"),i("textarea"),i("h1 h2 h3 h4 h5 h6 div p legend caption","align"),i("ul","type compact"),i("li","type"),i("ol dl menu dir","compact"),i("pre","width xml:space"),i("hr","align noshade size width"),i("isindex","prompt"),i("table","summary width frame rules cellspacing cellpadding align bgcolor"),i("col","width align char charoff valign"),i("colgroup","width align char charoff valign"),i("thead","align char charoff valign"),i("tr","align char charoff valign bgcolor"),i("th","axis align char charoff valign nowrap bgcolor width height"),i("form","accept"),i("td","abbr axis scope align char charoff valign nowrap bgcolor width height"),i("tfoot","align char charoff valign"),i("tbody","align char charoff valign"),i("area","nohref"),i("body","background bgcolor text link vlink alink")),"html4"!==e&&(i("input button select textarea","autofocus"),i("input textarea","placeholder"),i("a","download"),i("link script img","crossorigin"),i("img","loading"),i("iframe","sandbox seamless allow allowfullscreen loading")),"html4"!==e&&V([r.video,r.audio],e=>{delete e.children.audio,delete e.children.video}),V(bs("a form meter progress dfn"),e=>{r[e]&&delete r[e].children[e]}),delete r.caption.children.table,delete r.script,r})(l);!1===e.verify_html&&(e.valid_elements="*[*]");const d=Bs(e.valid_styles),u=Bs(e.invalid_styles,"map"),g=Bs(e.valid_classes,"map"),h=i("whitespace_elements","pre script noscript style textarea video audio iframe object code"),v=i("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr"),y=i("void_elements","area base basefont br col frame hr img input isindex link meta param embed source wbr track"),C=i("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls allowfullscreen"),w="td th iframe video audio object script code",x=i("non_empty_elements",w+" pre svg textarea summary",y),S=i("move_caret_before_on_enter_elements",w+" table",y),E="h1 h2 h3 h4 h5 h6",_=i("text_block_elements",E+" p div address pre form blockquote center dir fieldset header footer article section hgroup aside main nav figure"),k=i("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",_),R=i("text_inline_elements","span strong b em i font s strike u var cite dfn code mark q sup sub samp"),A=i("transparent_elements","a ins del canvas map"),T=i("wrap_block_elements","pre "+E);Ns("script noscript iframe noframes noembed title style textarea xmp plaintext".split(" "),e=>{a[e]=new RegExp("</"+e+"[^>]*>","gi")});const O=e=>{const t=I.from(n["@"]),o=/[*?+]/;V(((e,t)=>{const n=/^([#+\-])?([^\[!\/]+)(?:\/([^\[!]+))?(?:(!?)\[([^\]]+)])?$/;return te(bs(t,","),t=>{const o=n.exec(t);if(o){const t=o[1],n=o[2],r=o[3],s=o[4],a=o[5],i={attributes:{},attributesOrder:[]};if(e.each(e=>((e,t)=>{pe(e.attributes,(e,n)=>{t.attributes[n]=e}),t.attributesOrder.push(...e.attributesOrder)})(e,i)),"#"===t?i.paddEmpty=!0:"-"===t&&(i.removeEmpty=!0),"!"===s&&(i.removeEmptyAttrs=!0),a&&((e,t)=>{const n=/^([!\-])?(\w+[\\:]:\w+|[^=~<]+)?(?:([=~<])(.*))?$/,o=/[*?+]/,{attributes:r,attributesOrder:s}=t;V(bs(e,"|"),e=>{const a=n.exec(e);if(a){const e={},n=a[1],i=a[2].replace(/[\\:]:/g,":"),l=a[3],c=a[4];if("!"===n&&(t.attributesRequired=t.attributesRequired||[],t.attributesRequired.push(i),e.required=!0),"-"===n)return delete r[i],void s.splice(Pt.inArray(s,i),1);if(l&&("="===l?(t.attributesDefault=t.attributesDefault||[],t.attributesDefault.push({name:i,value:c}),e.defaultValue=c):"~"===l?(t.attributesForced=t.attributesForced||[],t.attributesForced.push({name:i,value:c}),e.forcedValue=c):"<"===l&&(e.validValues=Pt.makeMap(c,"?"))),o.test(i)){const n=e;t.attributePatterns=t.attributePatterns||[],n.pattern=vs(i),t.attributePatterns.push(n)}else r[i]||s.push(i),r[i]=e}})})(a,i),r&&(i.outputName=n),"@"===n){if(!e.isNone())return[];e=I.some(i)}return[r?{name:n,element:i,aliasName:r}:{name:n,element:i}]}return[]})})(t,null!=e?e:""),({name:e,element:t,aliasName:s})=>{if(s&&(n[s]=t),o.test(e)){const n=t;n.pattern=vs(e),r.push(n)}else n[e]=t})},B=e=>{r=[],V(fe(n),e=>{delete n[e]}),O(e)},P=(e,t)=>{var r,a;delete _s.text_block_elements,delete _s.block_elements;const i=!!t.extends&&!oe(t.extends),c=t.extends;if(o[e]=c?o[c]:{},s[e]=null!=c?c:e,x[e.toUpperCase()]={},x[e]={},i||(k[e.toUpperCase()]={},k[e]={}),c&&!n[e]&&n[c]){const t=(e=>{const t=e=>p(e)?q(e,t):(e=>f(e)&&e.source&&"[object RegExp]"===Object.prototype.toString.call(e))(e)?new RegExp(e.source,e.flags):f(e)?he(e,t):e;return t(e)})(n[c]);delete t.removeEmptyAttrs,delete t.removeEmpty,n[e]=t}else n[e]={attributesOrder:[],attributes:{}};if(p(t.attributes)){const o=e=>{s.attributesOrder.push(e),s.attributes[e]={}},s=null!==(r=n[e])&&void 0!==r?r:{};delete s.attributesDefault,delete s.attributesForced,delete s.attributePatterns,delete s.attributesRequired,s.attributesOrder=[],s.attributes={},V(t.attributes,e=>{const t=ys(l);Es(e).each(({preset:e,name:n})=>{e?"global"===n&&V(t,o):o(n)})}),n[e]=s}if(b(t.padEmpty)){const o=null!==(a=n[e])&&void 0!==a?a:{};o.paddEmpty=t.padEmpty,n[e]=o}if(p(t.children)){const n={},r=e=>{n[e]={}},s=e=>{Ss(l,e).each(e=>{V(e,r)})};V(t.children,e=>{Es(e).each(({preset:e,name:t})=>{e?s(t):r(t)})}),o[e]=n}c&&pe(o,(t,n)=>{t[c]&&(o[n]=t=Rs({},o[n]),t[e]=t[c])})},D=e=>{f(e)?pe(e,(e,t)=>P(t,e)):m(e)&&(e=>{V((e=>{const t=/^(~)?(.+)$/;return te(bs(e,","),e=>{const n=t.exec(e);return n?[{cloneName:"~"===n[1]?"span":"div",name:n[2]}]:[]})})(null!=e?e:""),({name:e,cloneName:t})=>{P(e,{extends:t})})})(e)},L=e=>{V((e=>{const t=/^([+\-]?)([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 te(bs(e,","),e=>{const n=t.exec(e);if(n){const e=n[1],t=e?(e=>"-"===e?"remove":"add")(e):"replace";return[{operation:t,name:n[2],validChildren:te(bs(n[3],"|"),e=>Es(e).toArray())}]}return[]})})(null!=e?e:""),({operation:e,name:t,validChildren:n})=>{const r="replace"===e?{"#comment":{}}:o[t],s=t=>{"remove"===e?delete r[t]:r[t]={}};V(n,({preset:e,name:t})=>{e?(e=>{Ss(l,e).each(e=>{V(e,s)})})(t):s(t)}),o[t]=r})},M=e=>{const t=n[e];if(t)return t;let o=r.length;for(;o--;){const t=r[o];if(t.pattern.test(e))return t}},F=N(d),z=N(u),U=N(g),j=N(C),H=N(k),$=N(_),W=N(R),K=N(Object.seal(y)),Y=N(v),G=N(x),X=N(S),Z=N(h),Q=N(A),J=N(T),ee=N(Object.seal(a)),ne=(e,t)=>{const n=M(e);if(n){if(!t)return!0;{if(n.attributes[t])return!0;const e=n.attributePatterns;if(e){let n=e.length;for(;n--;)if(e[n].pattern.test(t))return!0}}}return!1},oe=e=>Ee(H(),e),re=e=>!$e(e,"#")&&ne(e)&&!oe(e),ae=N(s);return e.valid_elements?(B(e.valid_elements),Ns(c,(e,t)=>{o[t]=e.children})):(Ns(c,(e,t)=>{n[t]={attributes:e.attributes,attributesOrder:e.attributesOrder},o[t]=e.children}),Ns(bs("strong/b em/i"),e=>{const t=bs(e,"/");n[t[1]].outputName=t[0]}),Ns(R,(t,o)=>{n[o]&&(e.padd_empty_block_inline_children&&(n[o].paddInEmptyBlock=!0),n[o].removeEmpty=!0)}),Ns(bs("ol ul blockquote a table tbody"),e=>{n[e]&&(n[e].removeEmpty=!0)}),Ns(bs("p h1 h2 h3 h4 h5 h6 th td pre div address caption li summary"),e=>{n[e]&&(n[e].paddEmpty=!0)}),Ns(bs("span"),e=>{n[e].removeEmptyAttrs=!0})),delete n.svg,D(e.custom_elements),L(e.valid_children),O(e.extended_valid_elements),L("+ol[ul|ol],+ul[ul|ol]"),Ns({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"},(e,t)=>{n[t]&&(n[t].parentsRequired=bs(e))}),e.invalid_elements&&Ns(As(e.invalid_elements),e=>{n[e]&&delete n[e]}),M("span")||O("span[!data-mce-type|*]"),{type:l,children:o,elements:n,getValidStyles:F,getValidClasses:U,getBlockElements:H,getInvalidStyles:z,getVoidElements:K,getTextBlockElements:$,getTextInlineElements:W,getBoolAttrs:j,getElementRule:M,getSelfClosingElements:Y,getNonEmptyElements:G,getMoveCaretBeforeOnEnterElements:X,getWhitespaceElements:Z,getTransparentElements:Q,getSpecialElements:ee,isValidChild:(e,t)=>{const n=o[e.toLowerCase()];return!(!n||!n[t.toLowerCase()])},isValid:ne,isBlock:oe,isInline:re,isWrapper:e=>Ee(J(),e)||re(e),getCustomElements:ae,addValidElements:O,setValidElements:B,addCustomElements:D,addValidChildren:L}},Ds=e=>{const t=e.toString(16);return(1===t.length?"0"+t:t).toUpperCase()},Ls=e=>(e=>{return{value:(t=e,je(t,"#").toUpperCase())};var t})(Ds(e.red)+Ds(e.green)+Ds(e.blue)),Ms=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,Is=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,Fs=(e,t,n,o)=>({red:e,green:t,blue:n,alpha:o}),zs=(e,t,n,o)=>{const r=parseInt(e,10),s=parseInt(t,10),a=parseInt(n,10),i=parseFloat(o);return Fs(r,s,a,i)},Us=e=>{if("transparent"===e)return I.some(Fs(0,0,0,0));const t=Ms.exec(e);if(null!==t)return I.some(zs(t[1],t[2],t[3],"1"));const n=Is.exec(e);return null!==n?I.some(zs(n[1],n[2],n[3],n[4])):I.none()},js=e=>`rgba(${e.red},${e.green},${e.blue},${e.alpha})`,Hs=e=>Us(e).map(Ls).map(e=>"#"+e.value).getOr(e),$s=(e={},t)=>{const n=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,o=/\s*([^:]+):\s*([^;]+);?/g,r=/\s+$/,s={};let a,i;const l=qo;t&&(a=t.getValidStyles(),i=t.getInvalidStyles());const c="\\\" \\' \\; \\: ; : \ufeff".split(" ");for(let e=0;e<c.length;e++)s[c[e]]=l+e,s[l+e]=c[e];const d={parse:t=>{const a={};let i=!1;const c=e.url_converter,u=e.url_converter_scope||d,f=(e,t,n)=>{const o=a[e+"-top"+t];if(!o)return;const r=a[e+"-right"+t];if(!r)return;const s=a[e+"-bottom"+t];if(!s)return;const i=a[e+"-left"+t];if(!i)return;const l=[o,r,s,i];let c=l.length-1;for(;c--&&l[c]===l[c+1];);c>-1&&n||(a[e+t]=-1===c?l[0]:l.join(" "),delete a[e+"-top"+t],delete a[e+"-right"+t],delete a[e+"-bottom"+t],delete a[e+"-left"+t])},g=e=>{const t=a[e];if(!t)return;const n=t.indexOf(",")>-1?[t]:t.split(" ");let o=n.length;for(;o--;)if(n[o]!==n[0])return!1;return a[e]=n[0],!0},p=e=>(i=!0,s[e]),h=(e,t)=>(i&&(e=e.replace(/\uFEFF[0-9]/g,e=>s[e])),t||(e=e.replace(/\\([\'\";:])/g,"$1")),e),b=e=>String.fromCharCode(parseInt(e.slice(1),16)),v=e=>e.replace(/\\[0-9a-f]+/gi,b),y=(t,n,o,r,s,a)=>{if(s=s||a)return"'"+(s=h(s)).replace(/\'/g,"\\'")+"'";if(n=h(n||o||r||""),!e.allow_script_urls){const t=n.replace(/[\s\r\n]+/g,"");if(/(java|vb)script:/i.test(t))return"";if(!e.allow_svg_data_urls&&/^data:image\/svg/i.test(t))return""}return c&&(n=c.call(u,n,"style")),"url('"+n.replace(/\'/g,"\\'")+"')"};if(t){let s;for(t=(t=t.replace(/[\u0000-\u001F]/g,"")).replace(/\\[\"\';:\uFEFF]/g,p).replace(/\"[^\"]+\"|\'[^\']+\'/g,e=>e.replace(/[;:]/g,p));s=o.exec(t);){o.lastIndex=s.index+s[0].length;let t=s[1].replace(r,"").toLowerCase(),c=s[2].replace(r,"");if(t&&c){if(t=v(t),c=v(c),-1!==t.indexOf(l)||-1!==t.indexOf('"'))continue;if(!e.allow_script_urls&&("behavior"===t||/expression\s*\(|\/\*|\*\//.test(c)))continue;"font-weight"===t&&"700"===c?c="bold":"color"!==t&&"background-color"!==t||(c=c.toLowerCase()),m(e.force_hex_color)&&"off"!==e.force_hex_color&&Us(c).each(t=>{"always"!==e.force_hex_color&&1!==t.alpha||(c=Hs(js(t)))}),c=c.replace(n,y),a[t]=i?h(c,!0):c}}f("border","",!0),f("border","-width"),f("border","-color"),f("border","-style"),f("padding",""),f("margin",""),w="border-style",x="border-color",g(C="border-width")&&g(w)&&g(x)&&(a.border=a[C]+" "+a[w]+" "+a[x],delete a[C],delete a[w],delete a[x]),"medium none"===a.border&&delete a.border,"none"===a["border-image"]&&delete a["border-image"]}var C,w,x;return a},serialize:(e,t)=>{let n="";const o=(t,o)=>{const r=o[t];if(r)for(let t=0,o=r.length;t<o;t++){const o=r[t],s=e[o];s&&(n+=(n.length>0?" ":"")+o+": "+s+";")}};return t&&a?(o("*",a),o(t,a)):pe(e,(e,o)=>{e&&((e,t)=>{if(!i||!t)return!0;let n=i["*"];return!(n&&n[e]||(n=i[t],n&&n[e]))})(o,t)&&(n+=(n.length>0?" ":"")+o+": "+e+";")}),n}};return d},qs={keyLocation:!0,layerX:!0,layerY:!0,returnValue:!0,webkitMovementX:!0,webkitMovementY:!0,keyIdentifier:!0,mozPressure:!0},Vs=(e,t)=>{const n=null!=t?t:{};for(const t in e)Ee(qs,t)||(n[t]=e[t]);return C(e.composedPath)&&(n.composedPath=()=>e.composedPath()),C(e.getModifierState)&&(n.getModifierState=t=>e.getModifierState(t)),C(e.getTargetRanges)&&(n.getTargetRanges=()=>e.getTargetRanges()),n},Ws=(e,t,n,o)=>{var r;const s=Vs(t,o);return s.type=e,y(s.target)&&(s.target=null!==(r=s.srcElement)&&void 0!==r?r:n),(e=>y(e.preventDefault)||(e=>e instanceof Event||w(e.initEvent))(e))(t)&&(s.preventDefault=()=>{s.defaultPrevented=!0,s.isDefaultPrevented=M,w(t.preventDefault)&&t.preventDefault()},s.stopPropagation=()=>{s.cancelBubble=!0,s.isPropagationStopped=M,w(t.stopPropagation)&&t.stopPropagation()},s.stopImmediatePropagation=()=>{s.isImmediatePropagationStopped=M,s.stopPropagation()},(e=>e.isDefaultPrevented===M||e.isDefaultPrevented===L)(s)||(s.isDefaultPrevented=!0===s.defaultPrevented?M:L,s.isPropagationStopped=!0===s.cancelBubble?M:L,s.isImmediatePropagationStopped=L)),s},Ks=/^(?:mouse|contextmenu)|click/,Ys=(e,t,n,o)=>{e.addEventListener(t,n,o||!1)},Gs=(e,t,n,o)=>{e.removeEventListener(t,n,o||!1)},Xs=(e,t)=>{const n=Ws(e.type,e,document,t);if((e=>C(e)&&Ks.test(e.type))(e)&&v(e.pageX)&&!v(e.clientX)){const t=n.target.ownerDocument||document,o=t.documentElement,r=t.body,s=n;s.pageX=e.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),s.pageY=e.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)}return n},Zs=(e,t,n)=>{const o=e.document,r={type:"ready"};if(n.domLoaded)return void t(r);const s=()=>{Gs(e,"DOMContentLoaded",s),Gs(e,"load",s),n.domLoaded||(n.domLoaded=!0,t(r)),e=null};"complete"===o.readyState||"interactive"===o.readyState&&o.body?s():Ys(e,"DOMContentLoaded",s),n.domLoaded||Ys(e,"load",s)};class Qs{constructor(){this.domLoaded=!1,this.events={},this.count=1,this.expando="mce-data-"+(+new Date).toString(32),this.hasFocusIn="onfocusin"in document.documentElement,this.count=1}bind(e,t,n,o){const r=this;let s;const a=window,i=e=>{r.executeHandlers(Xs(e||a.event),l)};if(!e||lr(e)||ur(e))return n;let l;e[r.expando]?l=e[r.expando]:(l=r.count++,e[r.expando]=l,r.events[l]={}),o=o||e;const c=t.split(" ");let d=c.length;for(;d--;){let t=c[d],u=i,m=!1,f=!1;"DOMContentLoaded"===t&&(t="ready"),r.domLoaded&&"ready"===t&&"complete"===e.readyState?n.call(o,Xs({type:t})):(r.hasFocusIn||"focusin"!==t&&"focusout"!==t||(m=!0,f="focusin"===t?"focus":"blur",u=e=>{const t=Xs(e||a.event);t.type="focus"===t.type?"focusin":"focusout",r.executeHandlers(t,l)}),s=r.events[l][t],s?"ready"===t&&r.domLoaded?n(Xs({type:t})):s.push({func:n,scope:o}):(r.events[l][t]=s=[{func:n,scope:o}],s.fakeName=f,s.capture=m,s.nativeHandler=u,"ready"===t?Zs(e,u,r):Ys(e,f||t,u,m)))}return e=s=null,n}unbind(e,t,n){if(!e||lr(e)||ur(e))return this;const o=e[this.expando];if(o){let r=this.events[o];if(t){const o=t.split(" ");let s=o.length;for(;s--;){const t=o[s],a=r[t];if(a){if(n){let e=a.length;for(;e--;)if(a[e].func===n){const n=a.nativeHandler,o=a.fakeName,s=a.capture,i=a.slice(0,e).concat(a.slice(e+1));i.nativeHandler=n,i.fakeName=o,i.capture=s,r[t]=i}}n&&0!==a.length||(delete r[t],Gs(e,a.fakeName||t,a.nativeHandler,a.capture))}}}else pe(r,(t,n)=>{Gs(e,t.fakeName||n,t.nativeHandler,t.capture)}),r={};for(const e in r)if(Ee(r,e))return this;delete this.events[o];try{delete e[this.expando]}catch(t){e[this.expando]=null}}return this}fire(e,t,n){return this.dispatch(e,t,n)}dispatch(e,t,n){if(!e||lr(e)||ur(e))return this;const o=Xs({type:t,target:e},n);do{const t=e[this.expando];t&&this.executeHandlers(o,t),e=e.parentNode||e.ownerDocument||e.defaultView||e.parentWindow}while(e&&!o.isPropagationStopped());return this}clean(e){if(!e||lr(e)||ur(e))return this;if(e[this.expando]&&this.unbind(e),e.getElementsByTagName||(e=e.document),e&&e.getElementsByTagName){this.unbind(e);const t=e.getElementsByTagName("*");let n=t.length;for(;n--;)(e=t[n])[this.expando]&&this.unbind(e)}return this}destroy(){this.events={}}cancel(e){return e&&(e.preventDefault(),e.stopImmediatePropagation()),!1}executeHandlers(e,t){const n=this.events[t],o=n&&n[e.type];if(o)for(let t=0,n=o.length;t<n;t++){const n=o[t];if(n&&!1===n.func.call(n.scope,e)&&e.preventDefault(),e.isImmediatePropagationStopped())return}}}Qs.Event=new Qs;const Js=Pt.each,ea=Pt.grep,ta="data-mce-style",na=Pt.makeMap("fill-opacity font-weight line-height opacity orphans widows z-index zoom"," "),oa=(e,t,n)=>{y(n)||""===n?on(e,t):Qt(e,t,n)},ra=e=>e.replace(/[A-Z]/g,e=>"-"+e.toLowerCase()),sa=(e,t)=>{let n=0;if(e)for(let o=e.nodeType,r=e.previousSibling;r;r=r.previousSibling){const e=r.nodeType;(!t||!lr(r)||e!==o&&r.data.length)&&(n++,o=e)}return n},aa=(e,t)=>{const n=en(t,"style"),o=e.serialize(e.parse(n),Ht(t));oa(t,ta,o)},ia=(e,t,n)=>{const o=ra(t);y(n)||""===n?go(e,o):io(e,o,((e,t)=>x(e)?Ee(na,t)?e+"":e+"px":e)(n,o))},la=(e,t={})=>{const n={},o=window,r={};let s=0;const a=Jr.forElement(yn(e),{contentCssCors:t.contentCssCors,referrerPolicy:t.referrerPolicy}),i=[],l=t.schema?t.schema:Ps({}),c=$s({url_converter:t.url_converter,url_converter_scope:t.url_converter_scope,force_hex_color:t.force_hex_color},t.schema),d=t.ownEvents?new Qs:Qs.Event,u=l.getBlockElements(),f=t=>t&&e&&m(t)?e.getElementById(t):t,h=e=>{const t=f(e);return C(t)?yn(t):null},b=(e,t,n="")=>{let o;const r=h(e);if(C(r)&&Wt(r)){const e=G[t];o=e&&e.get?e.get(r.dom,t):en(r,t)}return C(o)?o:n},v=e=>{const t=f(e);return y(t)?[]:t.attributes},x=(e,n,o)=>{B(e,e=>{if(Jo(e)){const r=yn(e),s=""===o?null:o,a=en(r,n),i=G[n];i&&i.set?i.set(r.dom,s,n):oa(r,n,s),a!==s&&t.onSetAttrib&&t.onSetAttrib({attrElm:r.dom,attrName:n,attrValue:s})}})},S=()=>t.root_element||e.body,_=(t,n)=>((e,t,n)=>{let o=0,r=0;const s=e.ownerDocument;if(n=n||e,t){if(n===e&&t.getBoundingClientRect&&"static"===co(yn(e),"position")){const n=t.getBoundingClientRect();return o=n.left+(s.documentElement.scrollLeft||e.scrollLeft)-s.documentElement.clientLeft,r=n.top+(s.documentElement.scrollTop||e.scrollTop)-s.documentElement.clientTop,{x:o,y:r}}let a=t;for(;a&&a!==n&&a.nodeType&&!Zr(a,n);){const e=a;o+=e.offsetLeft||0,r+=e.offsetTop||0,a=e.offsetParent}for(a=t.parentNode;a&&a!==n&&a.nodeType&&!Zr(a,n);)o-=a.scrollLeft||0,r-=a.scrollTop||0,a=a.parentNode;r+=(e=>Gr.isFirefox()&&"table"===Ht(e)?Xr(Mn(e)).filter(e=>"caption"===Ht(e)).bind(e=>Xr(Ln(e)).map(t=>{const n=t.dom.offsetTop,o=e.dom.offsetTop,r=e.dom.offsetHeight;return n<=o?-r:0})).getOr(0):0)(yn(t))}return{x:o,y:r}})(e.body,f(t),n),k=(e,t,n)=>{const o=f(e);var r;if(!y(o)&&(er(o)||Jo(r=o)&&"http://www.w3.org/2000/svg"===r.namespaceURI))return n?co(yn(o),ra(t)):("float"===(t=t.replace(/-(\D)/g,(e,t)=>t.toUpperCase()))&&(t="cssFloat"),o.style?o.style[t]:void 0)},R=e=>{const t=f(e);if(!t)return{w:0,h:0};let n=k(t,"width"),o=k(t,"height");return n&&-1!==n.indexOf("px")||(n="0"),o&&-1!==o.indexOf("px")||(o="0"),{w:parseInt(n,10)||t.offsetWidth||t.clientWidth,h:parseInt(o,10)||t.offsetHeight||t.clientHeight}},A=(e,t)=>{if(!e)return!1;const n=p(e)?e:[e];return $(n,e=>xn(yn(e),t))},T=(e,t,n,o)=>{const r=[];let s=f(e);o=void 0===o;const a=n||("BODY"!==S().nodeName?S().parentNode:null);if(m(t))if("*"===t)t=Jo;else{const e=t;t=t=>A(t,e)}for(;s&&!(s===a||y(s.nodeType)||mr(s)||fr(s));){if(!t||t(s)){if(!o)return[s];r.push(s)}s=s.parentNode}return o?r:null},O=(e,t,n)=>{let o=t;if(e){m(t)&&(o=e=>A(e,t));for(let t=e[n];t;t=t[n])if(w(o)&&o(t))return t}return null},B=function(e,t,n){const o=null!=n?n:this;if(p(e)){const n=[];return Js(e,(e,r)=>{const s=f(e);s&&n.push(t.call(o,s,r))}),n}{const n=f(e);return!!n&&t.call(o,n)}},P=(e,t)=>{B(e,e=>{pe(t,(t,n)=>{x(e,n,t)})})},D=(e,t)=>{B(e,e=>{const n=yn(e);ko(n,t)})},L=(t,n,o,r,s)=>B(t,t=>{const a=m(n)?e.createElement(n):n;return C(o)&&P(a,o),r&&(!m(r)&&r.nodeType?a.appendChild(r):m(r)&&D(a,r)),s?a:t.appendChild(a)}),M=(t,n,o)=>L(e.createElement(t),t,n,o,!0),I=hs.encodeAllRaw,F=(e,t)=>B(e,e=>{const n=yn(e);return t&&V(Mn(n),e=>{Kt(e)&&0===e.dom.length?xo(e):po(n,e)}),xo(n),n.dom}),z=(e,t,n)=>{B(e,e=>{if(Jo(e)){const o=yn(e),r=t.split(" ");V(r,e=>{C(n)?(n?un:fn)(o,e):((e,t)=>{const n=an(e)?e.dom.classList.toggle(t):((e,t)=>H(ln(e),t)?dn(e,t):cn(e,t))(e,t);mn(e)})(o,e)})}})},U=(e,t,n)=>B(t,o=>{var r;const s=p(t)?e.cloneNode(!0):e;return n&&Js(ea(o.childNodes),e=>{s.appendChild(e)}),null===(r=o.parentNode)||void 0===r||r.replaceChild(s,o),o}),j=()=>e.createRange(),q=(n,r,s,a)=>{if(p(n)){let e=n.length;const t=[];for(;e--;)t[e]=q(n[e],r,s,a);return t}return!t.collect||n!==e&&n!==o||i.push([n,r,s,a]),d.bind(n,r,s,a||Y)},W=(t,n,r)=>{if(p(t)){let e=t.length;const o=[];for(;e--;)o[e]=W(t[e],n,r);return o}if(i.length>0&&(t===e||t===o)){let e=i.length;for(;e--;){const[o,s,a]=i[e];t!==o||n&&n!==s||r&&r!==a||d.unbind(o,s,a)}}return d.unbind(t,n,r)},K=e=>{if(e&&er(e)){const t=e.getAttribute("data-mce-contenteditable");return t&&"inherit"!==t?t:"inherit"!==e.contentEditable?e.contentEditable:null}return null},Y={doc:e,settings:t,win:o,files:r,stdMode:!0,boxModel:!0,styleSheetLoader:a,boundEvents:i,styles:c,schema:l,events:d,isBlock:e=>m(e)?Ee(u,e):Jo(e)&&(Ee(u,e.nodeName)||Wr(l,e)),root:null,clone:(e,t)=>e.cloneNode(t),getRoot:S,getViewPort:e=>{const t=Io(e);return{x:t.x,y:t.y,w:t.width,h:t.height}},getRect:e=>{const t=f(e),n=_(t),o=R(t);return{x:n.x,y:n.y,w:o.w,h:o.h}},getSize:R,getParent:(e,t,n)=>{const o=T(e,t,n,!1);return o&&o.length>0?o[0]:null},getParents:T,get:f,getNext:(e,t)=>O(e,t,"nextSibling"),getPrev:(e,t)=>O(e,t,"previousSibling"),select:(n,o)=>{var r,s;const a=null!==(s=null!==(r=f(o))&&void 0!==r?r:t.root_element)&&void 0!==s?s:e;return w(a.querySelectorAll)?de(a.querySelectorAll(n)):[]},is:A,add:L,create:M,createHTML:(e,t,n="")=>{let o="<"+e;for(const e in t)_e(t,e)&&(o+=" "+e+'="'+I(t[e])+'"');return Xe(n)&&Ee(l.getVoidElements(),e)?o+" />":o+">"+n+"</"+e+">"},createFragment:t=>{const n=e.createElement("div"),o=e.createDocumentFragment();let r;for(o.appendChild(n),t&&(n.innerHTML=t);r=n.firstChild;)o.appendChild(r);return o.removeChild(n),o},remove:F,setStyle:(e,n,o)=>{B(e,e=>{const r=yn(e);ia(r,n,o),t.update_styles&&aa(c,r)})},getStyle:k,setStyles:(e,n)=>{B(e,e=>{const o=yn(e);pe(n,(e,t)=>{ia(o,t,e)}),t.update_styles&&aa(c,o)})},removeAllAttribs:e=>B(e,e=>{const t=e.attributes;for(let n=t.length-1;n>=0;n--)e.removeAttributeNode(t.item(n))}),setAttrib:x,setAttribs:P,getAttrib:b,getPos:_,parseStyle:e=>c.parse(e),serializeStyle:(e,t)=>c.serialize(e,t),addStyle:t=>{if(Y!==la.DOM&&e===document){if(n[t])return;n[t]=!0}let o=e.getElementById("mceDefaultStyles");if(!o){o=e.createElement("style"),o.id="mceDefaultStyles",o.type="text/css";const t=e.head;t.firstChild?t.insertBefore(o,t.firstChild):t.appendChild(o)}o.styleSheet?o.styleSheet.cssText+=t:o.appendChild(e.createTextNode(t))},loadCSS:e=>{e||(e=""),V(e.split(","),e=>{r[e]=!0,a.load(e).catch(E)})},addClass:(e,t)=>{z(e,t,!0)},removeClass:(e,t)=>{z(e,t,!1)},hasClass:(e,t)=>{const n=h(e),o=t.split(" ");return C(n)&&ne(o,e=>gn(n,e))},toggleClass:z,show:e=>{B(e,e=>go(yn(e),"display"))},hide:e=>{B(e,e=>io(yn(e),"display","none"))},isHidden:e=>{const t=h(e);return C(t)&&Dt(mo(t,"display"),"none")},uniqueId:e=>(e||"mce_")+s++,setHTML:D,getOuterHTML:e=>{const t=h(e);return C(t)?Jo(t.dom)?t.dom.outerHTML:(e=>{const t=bn("div"),n=yn(e.dom.cloneNode(!0));return vo(t,n),_o(t)})(t):""},setOuterHTML:(e,t)=>{B(e,e=>{Jo(e)&&(e.outerHTML=t)})},decode:hs.decode,encode:I,insertAfter:(e,t)=>{const n=f(t);return B(e,e=>{const t=null==n?void 0:n.parentNode,o=null==n?void 0:n.nextSibling;return t&&(o?t.insertBefore(e,o):t.appendChild(e)),e})},replace:U,rename:(e,t)=>{if(e.nodeName!==t.toUpperCase()){const n=M(t);return Js(v(e),t=>{x(n,t.nodeName,b(e,t.nodeName))}),U(n,e,!0),n}return e},findCommonAncestor:(e,t)=>{let n=e;for(;n;){let e=t;for(;e&&n!==e;)e=e.parentNode;if(n===e)break;n=n.parentNode}return!n&&e.ownerDocument?e.ownerDocument.documentElement:n},run:B,getAttribs:v,isEmpty:(e,t,n)=>{if(g(t)){const o=e=>{const n=e.nodeName.toLowerCase();return Boolean(t[n])};return Rr(l,e,{...n,isContent:o})}return Rr(l,e,n)},createRng:j,nodeIndex:sa,split:(e,t,n)=>{let o,r,s=j();if(e&&t&&e.parentNode&&t.parentNode){const a=e.parentNode;return s.setStart(a,sa(e)),s.setEnd(t.parentNode,sa(t)),o=s.extractContents(),s=j(),s.setStart(t.parentNode,sa(t)+1),s.setEnd(a,sa(e)+1),r=s.extractContents(),a.insertBefore(ns(Y,o,l),e),n?a.insertBefore(n,e):a.insertBefore(t,e),a.insertBefore(ns(Y,r,l),e),F(e),n||t}},bind:q,unbind:W,fire:(e,t,n)=>d.dispatch(e,t,n),dispatch:(e,t,n)=>d.dispatch(e,t,n),getContentEditable:K,getContentEditableParent:e=>{const t=S();let n=null;for(let o=e;o&&o!==t&&(n=K(o),null===n);o=o.parentNode);return n},isEditable:e=>{if(C(e)){const t=Jo(e)?e:e.parentElement;return C(t)&&er(t)&&oo(yn(t))}return!1},destroy:()=>{if(i.length>0){let e=i.length;for(;e--;){const[t,n,o]=i[e];d.unbind(t,n,o)}}pe(r,(e,t)=>{a.unload(t),delete r[t]})},isChildOf:(e,t)=>e===t||t.contains(e),dumpRng:e=>"startContainer: "+e.startContainer.nodeName+", startOffset: "+e.startOffset+", endContainer: "+e.endContainer.nodeName+", endOffset: "+e.endOffset},G=((e,t,n)=>{const o=t.keep_values,r={set:(e,o,r)=>{const s=yn(e);w(t.url_converter)&&C(o)&&(o=t.url_converter.call(t.url_converter_scope||n(),String(o),r,e)),oa(s,"data-mce-"+r,o),oa(s,r,o)},get:(e,t)=>{const n=yn(e);return en(n,"data-mce-"+t)||en(n,t)}},s={style:{set:(t,n)=>{const r=yn(t);o&&oa(r,ta,n),on(r,"style"),m(n)&&lo(r,e.parse(n))},get:t=>{const n=yn(t),o=en(n,ta)||en(n,"style");return e.serialize(e.parse(o),Ht(n))}}};return o&&(s.href=s.src=r),s})(c,t,N(Y));return Y};la.DOM=la(document),la.nodeIndex=sa;const ca=la.DOM;class da{constructor(e={}){this.states={},this.queue=[],this.scriptLoadedCallbacks={},this.queueLoadedCallbacks=[],this.loading=!1,this.settings=e}_setReferrerPolicy(e){this.settings.referrerPolicy=e}loadScript(e){return new Promise((t,n)=>{const o=ca;let r;const s=()=>{o.remove(a),r&&(r.onerror=r.onload=r=null)},a=o.uniqueId();r=document.createElement("script"),r.id=a,r.type="text/javascript",r.src=Pt._addCacheSuffix(e),this.settings.referrerPolicy&&o.setAttrib(r,"referrerpolicy",this.settings.referrerPolicy),r.onload=()=>{s(),t()},r.onerror=()=>{s(),n("Failed to load script: "+e)},(document.getElementsByTagName("head")[0]||document.body).appendChild(r)})}isDone(e){return 2===this.states[e]}markDone(e){this.states[e]=2}add(e){const t=this;return t.queue.push(e),void 0===t.states[e]&&(t.states[e]=0),new Promise((n,o)=>{t.scriptLoadedCallbacks[e]||(t.scriptLoadedCallbacks[e]=[]),t.scriptLoadedCallbacks[e].push({resolve:n,reject:o})})}load(e){return this.add(e)}remove(e){delete this.states[e],delete this.scriptLoadedCallbacks[e]}loadQueue(){const e=this.queue;return this.queue=[],this.loadScripts(e)}loadScripts(e){const t=this,n=(e,n)=>{Se(t.scriptLoadedCallbacks,n).each(t=>{V(t,t=>t[e](n))}),delete t.scriptLoadedCallbacks[n]},o=e=>{const t=Y(e,e=>"rejected"===e.status);return t.length>0?Promise.reject(te(t,({reason:e})=>p(e)?e:[e])):Promise.resolve()},r=e=>Promise.allSettled(q(e,e=>2===t.states[e]?(n("resolve",e),Promise.resolve()):3===t.states[e]?(n("reject",e),Promise.reject(e)):(t.states[e]=1,t.loadScript(e).then(()=>{t.states[e]=2,n("resolve",e);const s=t.queue;return s.length>0?(t.queue=[],r(s).then(o)):Promise.resolve()},()=>(t.states[e]=3,n("reject",e),Promise.reject(e)))))),s=e=>(t.loading=!0,r(e).then(e=>{t.loading=!1;const n=t.queueLoadedCallbacks.shift();return I.from(n).each(D),o(e)})),a=ke(e);return t.loading?new Promise((e,n)=>{t.queueLoadedCallbacks.push(()=>{s(a).then(e,n)})}):s(a)}}da.ScriptLoader=new da;const ua=e=>{let t=e;return{get:()=>t,set:e=>{t=e}}},ma={},fa=ua("en"),ga=()=>Se(ma,fa.get()),pa={getData:()=>he(ma,e=>({...e})),setCode:e=>{e&&fa.set(e)},getCode:()=>fa.get(),add:(e,t)=>{let n=ma[e];n||(ma[e]=n={});const o=q(fe(t),e=>e.toLowerCase());pe(t,(e,r)=>{const s=r.toLowerCase();s!==r&&((e,t)=>{const n=e.indexOf(t);return-1!==n&&e.indexOf(t,n+1)>n})(o,s)?(Ee(t,s)||(n[s]=e),n[r]=e):n[s]=e})},translate:e=>{const t=ga().getOr({}),n=e=>w(e)?Object.prototype.toString.call(e):o(e)?"":""+e,o=e=>""===e||null==e,r=e=>{const o=n(e);return Ee(t,o)?n(t[o]):Se(t,o.toLowerCase()).map(n).getOr(o)},s=e=>e.replace(/{context:\w+}$/,"");if(o(e))return"";if(f(a=e)&&Ee(a,"raw"))return n(e.raw);var a;if((e=>p(e)&&e.length>1)(e)){const t=e.slice(1);return s(r(e[0]).replace(/\{([0-9]+)\}/g,(e,o)=>Ee(t,o)?n(t[o]):e))}return s(r(e))},isRtl:()=>ga().bind(e=>Se(e,"_dir")).exists(e=>"rtl"===e),hasCode:e=>Ee(ma,e)},ha=()=>{const e=[],t={},n={},o=[],r=(e,t)=>{const n=Y(o,n=>n.name===e&&n.state===t);V(n,e=>e.resolve())},s=e=>Ee(t,e),a=(e,n)=>{const o=pa.getCode();!o||n&&-1===(","+(n||"")+",").indexOf(","+o+",")||da.ScriptLoader.add(t[e]+"/langs/"+o+".js")},i=(e,t="added")=>"added"===t&&(e=>Ee(n,e))(e)||"loaded"===t&&s(e)?Promise.resolve():new Promise(n=>{o.push({name:e,state:t,resolve:n})});return{items:e,urls:t,lookup:n,get:e=>{if(n[e])return n[e].instance},requireLangPack:(e,t)=>{!1!==ha.languageLoad&&(s(e)?a(e,t):i(e,"loaded").then(()=>a(e,t)))},add:(t,o)=>(e.push(o),n[t]={instance:o},r(t,"added"),o),remove:e=>{delete t[e],delete n[e]},createUrl:(e,t)=>m(t)?m(e)?{prefix:"",resource:t,suffix:""}:{prefix:e.prefix,resource:t,suffix:e.suffix}:t,load:(e,o)=>{if(t[e])return Promise.resolve();let s=m(o)?o:o.prefix+o.resource+o.suffix;0!==s.indexOf("/")&&-1===s.indexOf("://")&&(s=ha.baseURL+"/"+s),t[e]=s.substring(0,s.lastIndexOf("/"));const a=()=>(r(e,"loaded"),Promise.resolve());return n[e]?a():da.ScriptLoader.add(s).then(a)},waitFor:i}};ha.languageLoad=!0,ha.baseURL="",ha.PluginManager=ha(),ha.ThemeManager=ha(),ha.ModelManager=ha();const ba=e=>{const t=ua(I.none()),n=()=>t.get().each(e=>clearInterval(e));return{clear:()=>{n(),t.set(I.none())},isSet:()=>t.get().isSome(),get:()=>t.get(),set:o=>{n(),t.set(I.some(setInterval(o,e)))}}},va=()=>{const e=(e=>{const t=ua(I.none()),n=()=>t.get().each(e);return{clear:()=>{n(),t.set(I.none())},isSet:()=>t.get().isSome(),get:()=>t.get(),set:e=>{n(),t.set(I.some(e))}}})(E);return{...e,on:t=>e.get().each(t)}},ya=(e,t)=>{let n=null;return{cancel:()=>{h(n)||(clearTimeout(n),n=null)},throttle:(...o)=>{h(n)&&(n=setTimeout(()=>{n=null,e.apply(null,o)},t))}}},Ca=(e,t)=>{let n=null;const o=()=>{h(n)||(clearTimeout(n),n=null)};return{cancel:o,throttle:(...r)=>{o(),n=setTimeout(()=>{n=null,e.apply(null,r)},t)}}},wa=N("mce-annotation"),xa=N("data-mce-annotation"),Sa=N("data-mce-annotation-uid"),Ea=N("data-mce-annotation-active"),_a=N("data-mce-annotation-classes"),ka=N("data-mce-annotation-attrs"),Na=e=>t=>En(t,e),Ra=(e,t)=>{const n=e.selection.getRng(),o=yn(n.startContainer),r=yn(e.getBody()),s=t.fold(()=>"."+wa(),e=>`[${xa()}="${e}"]`),a=In(o,n.startOffset).getOr(o);return no(a,s,Na(r)).bind(t=>tn(t,`${Sa()}`).bind(n=>tn(t,`${xa()}`).map(t=>{const o=Ta(e,n);return{uid:n,name:t,elements:o}})))},Aa=(e,t)=>nn(e,"data-mce-bogus")||((e,t,n)=>eo(e,'[data-mce-bogus="all"]',n).isSome())(e,0,Na(t)),Ta=(e,t)=>{const n=yn(e.getBody()),o=zo(n,`[${Sa()}="${t}"]`);return Y(o,e=>!Aa(e,n))},Oa=(e,t)=>{const n=yn(e.getBody()),o=zo(n,`[${xa()}="${t}"]`),r={};return V(o,e=>{if(!Aa(e,n)){const t=en(e,Sa()),n=Se(r,t).getOr([]);r[t]=n.concat([e])}}),r};let Ba=0;const Pa=e=>{const t=(new Date).getTime(),n=Math.floor(1e9*Math.random());return Ba++,e+"_"+n+Ba+String(t)},Da=(e,t)=>yn(e.dom.cloneNode(t)),La=e=>Da(e,!1),Ma=e=>Da(e,!0),Ia=(e,t,n=L)=>{const o=new $o(e,t),r=e=>{let t;do{t=o[e]()}while(t&&!lr(t)&&!n(t));return I.from(t).filter(lr)};return{current:()=>I.from(o.current()).filter(lr),next:()=>r("next"),prev:()=>r("prev"),prev2:()=>r("prev2")}},Fa=(e,t)=>{const n=t||(t=>e.isBlock(t)||gr(t)||br(t)),o=(e,t,n,r)=>{if(lr(e)){const n=r(e,t,e.data);if(-1!==n)return I.some({container:e,offset:n})}return n().bind(e=>o(e.container,e.offset,n,r))};return{backwards:(t,r,s,a)=>{const i=Ia(t,null!=a?a:e.getRoot(),n);return o(t,r,()=>i.prev().map(e=>({container:e,offset:e.length})),s).getOrNull()},forwards:(t,r,s,a)=>{const i=Ia(t,null!=a?a:e.getRoot(),n);return o(t,r,()=>i.next().map(e=>({container:e,offset:0})),s).getOrNull()}}},za=(e=>{const t=t=>e(t)?I.from(t.dom.nodeValue):I.none();return{get:n=>{if(!e(n))throw new Error("Can only get text value of a text node");return t(n).getOr("")},getOption:t,set:(t,n)=>{if(!e(t))throw new Error("Can only set raw text value of a text node");t.dom.nodeValue=n}}})(Kt),Ua=e=>za.get(e),ja=e=>{let t;return n=>(t=t||se(e,M),Ee(t,Ht(n)))},Ha=e=>Wt(e)&&"br"===Ht(e),$a=ja(["h1","h2","h3","h4","h5","h6","p","div","address","pre","form","blockquote","center","dir","fieldset","header","footer","article","section","hgroup","aside","nav","figure"]),qa=ja(["ul","ol","dl"]),Va=ja(["li","dd","dt"]),Wa=ja(["thead","tbody","tfoot"]),Ka=ja(["td","th"]),Ya=ja(["pre","script","textarea","style"]),Ga=()=>{const e=bn("br");return Qt(e,"data-mce-bogus","1"),e},Xa=e=>{wo(e),vo(e,Ga())},Za=qo,Qa=Wo,Ja=e=>e.replace(/\uFEFF/g,""),ei=Jo,ti=lr,ni=e=>(ti(e)&&(e=e.parentNode),ei(e)&&e.hasAttribute("data-mce-caret")),oi=e=>ti(e)&&Qa(e.data),ri=e=>ni(e)||oi(e),si=e=>e.firstChild!==e.lastChild||!gr(e.firstChild),ai=e=>{const t=e.container();return!!lr(t)&&(t.data.charAt(e.offset())===Za||e.isAtStart()&&oi(t.previousSibling))},ii=e=>{const t=e.container();return!!lr(t)&&(t.data.charAt(e.offset()-1)===Za||e.isAtEnd()&&oi(t.nextSibling))},li=e=>ti(e)&&e.data[0]===Za,ci=e=>ti(e)&&e.data[e.data.length-1]===Za,di=e=>e&&e.hasAttribute("data-mce-caret")?((e=>{var t;const n=e.getElementsByTagName("br"),o=n[n.length-1];rr(o)&&(null===(t=o.parentNode)||void 0===t||t.removeChild(o))})(e),e.removeAttribute("data-mce-caret"),e.removeAttribute("data-mce-bogus"),e.removeAttribute("style"),e.removeAttribute("data-mce-style"),e.removeAttribute("_moz_abspos"),e):null,ui=e=>ni(e.startContainer),mi=Math.round,fi=e=>e?{left:mi(e.left),top:mi(e.top),bottom:mi(e.bottom),right:mi(e.right),width:mi(e.width),height:mi(e.height)}:{left:0,top:0,bottom:0,right:0,width:0,height:0},gi=(e,t)=>(e=fi(e),t||(e.left=e.left+e.width),e.right=e.left,e.width=0,e),pi=(e,t,n)=>e>=0&&e<=Math.min(t.height,n.height)/2,hi=(e,t)=>{const n=Math.min(t.height/2,e.height/2);return e.bottom-n<t.top||!(e.top>t.bottom)&&pi(t.top-e.bottom,e,t)},bi=(e,t)=>e.top>t.bottom||!(e.bottom<t.top)&&pi(t.bottom-e.top,e,t),vi=(e,t,n)=>{const o=Math.max(Math.min(t,e.left+e.width),e.left),r=Math.max(Math.min(n,e.top+e.height),e.top);return Math.sqrt((t-o)*(t-o)+(n-r)*(n-r))},yi=e=>{const t=e.startContainer,n=e.startOffset;return t===e.endContainer&&t.hasChildNodes()&&e.endOffset===n+1?t.childNodes[n]:null},Ci=(e,t)=>{if(Jo(e)&&e.hasChildNodes()){const n=e.childNodes,o=((e,t,n)=>Math.min(Math.max(e,0),n))(t,0,n.length-1);return n[o]}return e},wi=new RegExp("[\u0300-\u036f\u0483-\u0487\u0488-\u0489\u0591-\u05bd\u05bf\u05c1-\u05c2\u05c4-\u05c5\u05c7\u0610-\u061a\u064b-\u065f\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7-\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e3-\u0902\u093a\u093c\u0941-\u0948\u094d\u0951-\u0957\u0962-\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2-\u09e3\u0a01-\u0a02\u0a3c\u0a41-\u0a42\u0a47-\u0a48\u0a4b-\u0a4d\u0a51\u0a70-\u0a71\u0a75\u0a81-\u0a82\u0abc\u0ac1-\u0ac5\u0ac7-\u0ac8\u0acd\u0ae2-\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62-\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c00\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55-\u0c56\u0c62-\u0c63\u0c81\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc-\u0ccd\u0cd5-\u0cd6\u0ce2-\u0ce3\u0d01\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62-\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb-\u0ebc\u0ec8-\u0ecd\u0f18-\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86-\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039-\u103a\u103d-\u103e\u1058-\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108d\u109d\u135d-\u135f\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17b4-\u17b5\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193b\u1a17-\u1a18\u1a1b\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1ab0-\u1abd\u1abe\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80-\u1b81\u1ba2-\u1ba5\u1ba8-\u1ba9\u1bab-\u1bad\u1be6\u1be8-\u1be9\u1bed\u1bef-\u1bf1\u1c2c-\u1c33\u1c36-\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1cf8-\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u200c-\u200d\u20d0-\u20dc\u20dd-\u20e0\u20e1\u20e2-\u20e4\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302d\u302e-\u302f\u3099-\u309a\ua66f\ua670-\ua672\ua674-\ua67d\ua69e-\ua69f\ua6f0-\ua6f1\ua802\ua806\ua80b\ua825-\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\ua9e5\uaa29-\uaa2e\uaa31-\uaa32\uaa35-\uaa36\uaa43\uaa4c\uaa7c\uaab0\uaab2-\uaab4\uaab7-\uaab8\uaabe-\uaabf\uaac1\uaaec-\uaaed\uaaf6\uabe5\uabe8\uabed\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\uff9e-\uff9f]"),xi=e=>m(e)&&e.charCodeAt(0)>=768&&wi.test(e),Si=hr,Ei=br,_i=gr,ki=lr,Ni=nr(["script","style","textarea"]),Ri=nr(["img","input","textarea","hr","iframe","video","audio","object","embed"]),Ai=nr(["table"]),Ti=ri,Oi=e=>!Ti(e)&&(ki(e)?!Ni(e.parentNode):Ri(e)||_i(e)||Ai(e)||Bi(e)),Bi=e=>!(e=>Jo(e)&&"true"===e.getAttribute("unselectable"))(e)&&Ei(e),Pi=(e,t)=>Oi(e)&&((e,t)=>{for(let n=e.parentNode;n&&n!==t;n=n.parentNode){if(Bi(n))return!1;if(Si(n))return!0}return!0})(e,t),Di=Jo,Li=Oi,Mi=or("display","block table"),Ii=or("float","left right"),Fi=((...e)=>t=>{for(let n=0;n<e.length;n++)if(!e[n](t))return!1;return!0})(Di,Li,O(Ii)),zi=O(or("white-space","pre pre-line pre-wrap")),Ui=lr,ji=gr,Hi=la.nodeIndex,$i=(e,t)=>t<0&&Jo(e)&&e.hasChildNodes()?void 0:Ci(e,t),qi=e=>e?e.createRange():la.DOM.createRng(),Vi=e=>m(e)&&/[\r\n\t ]/.test(e),Wi=e=>!!e.setStart&&!!e.setEnd,Ki=e=>{const t=e.startContainer,n=e.startOffset;if(Vi(e.toString())&&zi(t.parentNode)&&lr(t)){const e=t.data;if(Vi(e[n-1])||Vi(e[n+1]))return!0}return!1},Yi=e=>0===e.left&&0===e.right&&0===e.top&&0===e.bottom,Gi=e=>{var t;let n;const o=e.getClientRects();return n=o.length>0?fi(o[0]):fi(e.getBoundingClientRect()),!Wi(e)&&ji(e)&&Yi(n)?(e=>{const t=e.ownerDocument,n=qi(t),o=t.createTextNode(Vo),r=e.parentNode;r.insertBefore(o,e),n.setStart(o,0),n.setEnd(o,1);const s=fi(n.getBoundingClientRect());return r.removeChild(o),s})(e):Yi(n)&&Wi(e)&&null!==(t=(e=>{const t=e.startContainer,n=e.endContainer,o=e.startOffset,r=e.endOffset;if(t===n&&lr(n)&&0===o&&1===r){const t=e.cloneRange();return t.setEndAfter(n),Gi(t)}return null})(e))&&void 0!==t?t:n},Xi=(e,t)=>{const n=gi(e,t);return n.width=1,n.right=n.left+1,n},Zi=(e,t,n)=>{const o=()=>(n||(n=(e=>{const t=[],n=e=>{var n,o;0!==e.height&&(t.length>0&&(n=e,o=t[t.length-1],n.left===o.left&&n.top===o.top&&n.bottom===o.bottom&&n.right===o.right)||t.push(e))},o=(e,t)=>{const o=qi(e.ownerDocument);if(t<e.data.length){if(xi(e.data[t]))return;if(xi(e.data[t-1])&&(o.setStart(e,t),o.setEnd(e,t+1),!Ki(o)))return void n(Xi(Gi(o),!1))}t>0&&(o.setStart(e,t-1),o.setEnd(e,t),Ki(o)||n(Xi(Gi(o),!1))),t<e.data.length&&(o.setStart(e,t),o.setEnd(e,t+1),Ki(o)||n(Xi(Gi(o),!0)))},r=e.container(),s=e.offset();if(Ui(r))return o(r,s),t;if(Di(r))if(e.isAtEnd()){const e=$i(r,s);Ui(e)&&o(e,e.data.length),Fi(e)&&!ji(e)&&n(Xi(Gi(e),!1))}else{const a=$i(r,s);if(Ui(a)&&o(a,0),Fi(a)&&e.isAtEnd())return n(Xi(Gi(a),!1)),t;const i=$i(e.container(),e.offset()-1);Fi(i)&&!ji(i)&&(Mi(i)||Mi(a)||!Fi(a))&&n(Xi(Gi(i),!1)),Fi(a)&&n(Xi(Gi(a),!0))}return t})(Zi(e,t))),n);return{container:N(e),offset:N(t),toRange:()=>{const n=qi(e.ownerDocument);return n.setStart(e,t),n.setEnd(e,t),n},getClientRects:o,isVisible:()=>o().length>0,isAtStart:()=>(Ui(e),0===t),isAtEnd:()=>Ui(e)?t>=e.data.length:t>=e.childNodes.length,isEqual:n=>n&&e===n.container()&&t===n.offset(),getNode:n=>$i(e,n?t-1:t)}};Zi.fromRangeStart=e=>Zi(e.startContainer,e.startOffset),Zi.fromRangeEnd=e=>Zi(e.endContainer,e.endOffset),Zi.after=e=>Zi(e.parentNode,Hi(e)+1),Zi.before=e=>Zi(e.parentNode,Hi(e)),Zi.isAbove=(e,t)=>Mt(le(t.getClientRects()),ce(e.getClientRects()),hi).getOr(!1),Zi.isBelow=(e,t)=>Mt(ce(t.getClientRects()),le(e.getClientRects()),bi).getOr(!1),Zi.isAtStart=e=>!!e&&e.isAtStart(),Zi.isAtEnd=e=>!!e&&e.isAtEnd(),Zi.isTextPosition=e=>!!e&&lr(e.container()),Zi.isElementPosition=e=>!Zi.isTextPosition(e);const Qi=(e,t)=>{lr(t)&&0===t.data.length&&e.remove(t)},Ji=(e,t,n)=>{fr(n)?((e,t,n)=>{const o=I.from(n.firstChild),r=I.from(n.lastChild);t.insertNode(n),o.each(t=>Qi(e,t.previousSibling)),r.each(t=>Qi(e,t.nextSibling))})(e,t,n):((e,t,n)=>{t.insertNode(n),Qi(e,n.previousSibling),Qi(e,n.nextSibling)})(e,t,n)},el=lr,tl=rr,nl=la.nodeIndex,ol=e=>{const t=e.parentNode;return tl(t)?ol(t):t},rl=e=>e?Be(e.childNodes,(e,t)=>(tl(t)&&"BR"!==t.nodeName?e=e.concat(rl(t)):e.push(t),e),[]):[],sl=e=>t=>e===t,al=e=>(el(e)?"text()":e.nodeName.toLowerCase())+"["+(e=>{let t,n;t=rl(ol(e)),n=Pe(t,sl(e),e),t=t.slice(0,n+1);const o=Be(t,(e,n,o)=>(el(n)&&el(t[o-1])&&e++,e),0);return t=Oe(t,nr([e.nodeName])),n=Pe(t,sl(e),e),n-o})(e)+"]",il=(e,t)=>{let n,o=[],r=t.container(),s=t.offset();if(el(r))n=((e,t)=>{let n=e;for(;(n=n.previousSibling)&&el(n);)t+=n.data.length;return t})(r,s);else{const e=r.childNodes;s>=e.length?(n="after",s=e.length-1):n="before",r=e[s]}o.push(al(r));let a=((e,t)=>{const n=[];for(let o=t.parentNode;o&&o!==e;o=o.parentNode)n.push(o);return n})(e,r);return a=Oe(a,O(rr)),o=o.concat(Te(a,e=>al(e))),o.reverse().join("/")+","+n},ll=(e,t)=>{if(!t)return null;const n=t.split(","),o=n[0].split("/"),r=n.length>1?n[1]:"before",s=Be(o,(e,t)=>{const n=/([\w\-\(\)]+)\[([0-9]+)\]/.exec(t);return n?("text()"===n[1]&&(n[1]="#text"),((e,t,n)=>{let o=rl(e);return o=Oe(o,(e,t)=>!el(e)||!el(o[t-1])),o=Oe(o,nr([t])),o[n]})(e,n[1],parseInt(n[2],10))):null},e);if(!s)return null;if(!el(s)&&s.parentNode){let e;return e="after"===r?nl(s)+1:nl(s),Zi(s.parentNode,e)}return((e,t)=>{let n=e,o=0;for(;el(n);){const r=n.data.length;if(t>=o&&t<=o+r){e=n,t-=o;break}if(!el(n.nextSibling)){e=n,t=r;break}o+=r,n=n.nextSibling}return el(e)&&t>e.data.length&&(t=e.data.length),Zi(e,t)})(s,parseInt(r,10))},cl=br,dl=(e,t,n,o,r)=>{const s=r?o.startContainer:o.endContainer;let a=r?o.startOffset:o.endOffset;const i=[],l=e.getRoot();if(lr(s))i.push(n?((e,t,n)=>{let o=e(t.data.slice(0,n)).length;for(let n=t.previousSibling;n&&lr(n);n=n.previousSibling)o+=e(n.data).length;return o})(t,s,a):a);else{let t=0;const o=s.childNodes;a>=o.length&&o.length&&(t=1,a=Math.max(0,o.length-1)),i.push(e.nodeIndex(o[a],n)+t)}for(let t=s;t&&t!==l;t=t.parentNode)i.push(e.nodeIndex(t,n));return i},ul=(e,t,n)=>{let o=0;return Pt.each(e.select(t),e=>"all"===e.getAttribute("data-mce-bogus")?void 0:e!==n&&void o++),o},ml=(e,t)=>{let n=t?e.startContainer:e.endContainer,o=t?e.startOffset:e.endOffset;if(Jo(n)&&"TR"===n.nodeName){const r=n.childNodes;n=r[Math.min(t?o:o-1,r.length-1)],n&&(o=t?0:n.childNodes.length,t?e.setStart(n,o):e.setEnd(n,o))}},fl=e=>(ml(e,!0),ml(e,!1),e),gl=(e,t)=>{if(Jo(e)&&(e=Ci(e,t),cl(e)))return e;if(ri(e)){lr(e)&&ni(e)&&(e=e.parentNode);let t=e.previousSibling;if(cl(t))return t;if(t=e.nextSibling,cl(t))return t}},pl=(e,t,n)=>{const o=n.getNode(),r=n.getRng();if("IMG"===o.nodeName||cl(o)){const e=o.nodeName;return{name:e,index:ul(n.dom,e,o)}}const s=(e=>gl(e.startContainer,e.startOffset)||gl(e.endContainer,e.endOffset))(r);if(s){const e=s.tagName;return{name:e,index:ul(n.dom,e,s)}}return((e,t,n,o)=>{const r=t.dom,s=dl(r,e,n,o,!0),a=t.isForward(),i=ui(o)?{isFakeCaret:!0}:{};return t.isCollapsed()?{start:s,forward:a,...i}:{start:s,end:dl(r,e,n,o,!1),forward:a,...i}})(e,n,t,r)},hl=(e,t,n)=>{const o={"data-mce-type":"bookmark",id:t,style:"overflow:hidden;line-height:0px"};return n?e.create("span",o,"&#xFEFF;"):e.create("span",o)},bl=(e,t)=>{const n=e.dom;let o=e.getRng();const r=n.uniqueId(),s=e.isCollapsed(),a=e.getNode(),i=a.nodeName,l=e.isForward();if("IMG"===i)return{name:i,index:ul(n,i,a)};const c=fl(o.cloneRange());if(!s){c.collapse(!1);const e=hl(n,r+"_end",t);Ji(n,c,e)}o=fl(o),o.collapse(!0);const d=hl(n,r+"_start",t);return Ji(n,o,d),e.moveToBookmark({id:r,keep:!0,forward:l}),{id:r,forward:l}},vl=T(pl,R,!0),yl=e=>{const t=t=>t(e),n=N(e),o=()=>r,r={tag:!0,inner:e,fold:(t,n)=>n(e),isValue:M,isError:L,map:t=>wl.value(t(e)),mapError:o,bind:t,exists:t,forall:t,getOr:n,or:o,getOrThunk:n,orThunk:o,getOrDie:n,each:t=>{t(e)},toOptional:()=>I.some(e)};return r},Cl=e=>{const t=()=>n,n={tag:!1,inner:e,fold:(t,n)=>t(e),isValue:L,isError:M,map:t,mapError:t=>wl.error(t(e)),bind:t,exists:L,forall:M,getOr:R,or:R,getOrThunk:P,orThunk:P,getOrDie:B(String(e)),each:E,toOptional:I.none};return n},wl={value:yl,error:Cl,fromOption:(e,t)=>e.fold(()=>Cl(t),yl)},xl=e=>{if(!p(e))throw new Error("cases must be an array");if(0===e.length)throw new Error("there must be at least one case");const t=[],n={};return V(e,(o,r)=>{const s=fe(o);if(1!==s.length)throw new Error("one and only one name per case");const a=s[0],i=o[a];if(void 0!==n[a])throw new Error("duplicate key detected:"+a);if("cata"===a)throw new Error("cannot have a case named cata (sorry)");if(!p(i))throw new Error("case arguments must be an array");t.push(a),n[a]=(...n)=>{const o=n.length;if(o!==i.length)throw new Error("Wrong number of arguments to case "+a+". Expected "+i.length+" ("+i+"), got "+o);return{fold:(...t)=>{if(t.length!==e.length)throw new Error("Wrong number of arguments to fold. Expected "+e.length+", got "+t.length);return t[r].apply(null,n)},match:e=>{const o=fe(e);if(t.length!==o.length)throw new Error("Wrong number of arguments to match. Expected: "+t.join(",")+"\nActual: "+o.join(","));if(!ne(t,e=>H(o,e)))throw new Error("Not all branches were specified when using match. Specified: "+o.join(", ")+"\nRequired: "+t.join(", "));return e[a].apply(null,n)},log:e=>{console.log(e,{constructors:t,constructor:a,params:n})}}}}),n};xl([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const Sl=e=>"inline-command"===e.type||"inline-format"===e.type,El=e=>"block-command"===e.type||"block-format"===e.type,_l=e=>{var t;const n=t=>wl.error({message:t,pattern:e}),o=(t,o,r)=>{if(void 0!==e.format){let r;if(p(e.format)){if(!ne(e.format,m))return n(t+" pattern has non-string items in the `format` array");r=e.format}else{if(!m(e.format))return n(t+" pattern has non-string `format` parameter");r=[e.format]}return wl.value(o(r))}return void 0!==e.cmd?m(e.cmd)?wl.value(r(e.cmd,e.value)):n(t+" pattern has non-string `cmd` parameter"):n(t+" pattern is missing both `format` and `cmd` parameters")};if(!f(e))return n("Raw pattern is not an object");if(!m(e.start))return n("Raw pattern is missing `start` parameter");if(void 0!==e.end){if(!m(e.end))return n("Inline pattern has non-string `end` parameter");if(0===e.start.length&&0===e.end.length)return n("Inline pattern has empty `start` and `end` parameters");let t=e.start,r=e.end;return 0===r.length&&(r=t,t=""),o("Inline",e=>({type:"inline-format",start:t,end:r,format:e}),(e,n)=>({type:"inline-command",start:t,end:r,cmd:e,value:n}))}if(void 0!==e.replacement)return m(e.replacement)?0===e.start.length?n("Replacement pattern has empty `start` parameter"):wl.value({type:"inline-command",start:"",end:e.start,cmd:"mceInsertContent",value:e.replacement}):n("Replacement pattern has non-string `replacement` parameter");{const r=null!==(t=e.trigger)&&void 0!==t?t:"space";return 0===e.start.length?n("Block pattern has empty `start` parameter"):o("Block",t=>({type:"block-format",start:e.start,format:t[0],trigger:r}),(t,n)=>({type:"block-command",start:e.start,cmd:t,value:n,trigger:r}))}},kl=e=>Y(e,El),Nl=e=>Y(e,Sl),Rl=(e,t)=>({...e,blockPatterns:Y(e.blockPatterns,e=>((e,t)=>("block-command"===e.type||"block-format"===e.type)&&e.trigger===t)(e,t))}),Al=e=>{const t=(e=>{const t=[],n=[];return V(e,e=>{e.fold(e=>{t.push(e)},e=>{n.push(e)})}),{errors:t,values:n}})(q(e,_l));return V(t.errors,e=>console.error(e.message,e.pattern)),t.values},Tl=St().deviceType,Ol=Tl.isTouch(),Bl=la.DOM,Pl=e=>u(e,RegExp),Dl=e=>t=>t.options.get(e),Ll=e=>m(e)||f(e),Ml=(e,t="")=>n=>{const o=m(n);if(o){if(-1!==n.indexOf("=")){const r=(e=>{const t=e.indexOf("=")>0?e.split(/[;,](?![^=;,]*(?:[;,]|$))/):e.split(",");return X(t,(e,t)=>{const n=t.split("="),o=n[0],r=n.length>1?n[1]:o;return e[We(o)]=We(r),e},{})})(n);return{value:Se(r,e.id).getOr(t),valid:o}}return{value:n,valid:o}}return{valid:!1,message:"Must be a string."}},Il=Dl("iframe_attrs"),Fl=Dl("doctype"),zl=Dl("document_base_url"),Ul=Dl("body_id"),jl=Dl("body_class"),Hl=Dl("content_security_policy"),$l=Dl("br_in_pre"),ql=Dl("forced_root_block"),Vl=Dl("forced_root_block_attrs"),Wl=Dl("newline_behavior"),Kl=Dl("br_newline_selector"),Yl=Dl("no_newline_selector"),Gl=Dl("keep_styles"),Xl=Dl("end_container_on_empty_block"),Zl=Dl("automatic_uploads"),Ql=Dl("images_reuse_filename"),Jl=Dl("images_replace_blob_uris"),ec=Dl("icons"),tc=Dl("icons_url"),nc=Dl("images_upload_url"),oc=Dl("images_upload_base_path"),rc=Dl("images_upload_credentials"),sc=Dl("images_upload_handler"),ac=Dl("content_css_cors"),ic=Dl("referrer_policy"),lc=Dl("language"),cc=Dl("language_url"),dc=Dl("indent_use_margin"),uc=Dl("indentation"),mc=Dl("content_css"),fc=Dl("content_style"),gc=Dl("font_css"),pc=Dl("directionality"),hc=Dl("inline_boundaries_selector"),bc=Dl("object_resizing"),vc=Dl("resize_img_proportional"),yc=Dl("placeholder"),Cc=Dl("event_root"),wc=Dl("service_message"),xc=Dl("theme"),Sc=Dl("theme_url"),Ec=Dl("model"),_c=Dl("model_url"),kc=Dl("inline_boundaries"),Nc=Dl("formats"),Rc=Dl("preview_styles"),Ac=Dl("format_empty_lines"),Tc=Dl("format_noneditable_selector"),Oc=Dl("custom_ui_selector"),Bc=Dl("inline"),Pc=Dl("hidden_input"),Dc=Dl("submit_patch"),Lc=Dl("add_form_submit_trigger"),Mc=Dl("add_unload_trigger"),Ic=Dl("custom_undo_redo_levels"),Fc=Dl("disable_nodechange"),zc=Dl("readonly"),Uc=Dl("editable_root"),jc=Dl("content_css_cors"),Hc=Dl("plugins"),$c=Dl("external_plugins"),qc=Dl("block_unsupported_drop"),Vc=Dl("visual"),Wc=Dl("visual_table_class"),Kc=Dl("visual_anchor_class"),Yc=Dl("iframe_aria_text"),Gc=Dl("setup"),Xc=Dl("init_instance_callback"),Zc=Dl("urlconverter_callback"),Qc=Dl("auto_focus"),Jc=Dl("browser_spellcheck"),ed=Dl("protect"),td=Dl("paste_block_drop"),nd=Dl("paste_data_images"),od=Dl("paste_preprocess"),rd=Dl("paste_postprocess"),sd=Dl("newdocument_content"),ad=Dl("paste_webkit_styles"),id=Dl("paste_remove_styles_if_webkit"),ld=Dl("paste_merge_formats"),cd=Dl("smart_paste"),dd=Dl("paste_as_text"),ud=Dl("paste_tab_spaces"),md=Dl("allow_html_data_urls"),fd=Dl("text_patterns"),gd=Dl("text_patterns_lookup"),pd=Dl("noneditable_class"),hd=Dl("editable_class"),bd=Dl("noneditable_regexp"),vd=Dl("preserve_cdata"),yd=Dl("highlight_on_focus"),Cd=Dl("xss_sanitization"),wd=Dl("init_content_sync"),xd=e=>Pt.explode(e.options.get("images_file_types")),Sd=Dl("table_tab_navigation"),Ed=Dl("details_initial_state"),_d=Dl("details_serialized_state"),kd=Dl("force_hex_color"),Nd=Dl("sandbox_iframes"),Rd=e=>e.options.get("sandbox_iframes_exclusions"),Ad=Dl("convert_unsafe_embeds"),Td=Jo,Od=lr,Bd=e=>{const t=e.parentNode;t&&t.removeChild(e)},Pd=e=>{const t=Ja(e);return{count:e.length-t.length,text:t}},Dd=e=>{let t;for(;-1!==(t=e.data.lastIndexOf(Za));)e.deleteData(t,1)},Ld=(e,t)=>(Id(e),t),Md=(e,t)=>Zi.isTextPosition(t)?((e,t)=>Od(e)&&t.container()===e?((e,t)=>{const n=Pd(e.data.substr(0,t.offset())),o=Pd(e.data.substr(t.offset()));return(n.text+o.text).length>0?(Dd(e),Zi(e,t.offset()-n.count)):t})(e,t):Ld(e,t))(e,t):((e,t)=>t.container()===e.parentNode?((e,t)=>{const n=t.container(),o=((e,t)=>{const n=j(e,t);return-1===n?I.none():I.some(n)})(de(n.childNodes),e).map(e=>e<t.offset()?Zi(n,t.offset()-1):t).getOr(t);return Id(e),o})(e,t):Ld(e,t))(e,t),Id=e=>{Td(e)&&ri(e)&&(si(e)?e.removeAttribute("data-mce-caret"):Bd(e)),Od(e)&&(Dd(e),0===e.data.length&&Bd(e))},Fd=br,zd=Cr,Ud=vr,jd=(e,t,n)=>{const o=gi(t.getBoundingClientRect(),n);let r,s;if("BODY"===e.tagName){const t=e.ownerDocument.documentElement;r=e.scrollLeft||t.scrollLeft,s=e.scrollTop||t.scrollTop}else{const t=e.getBoundingClientRect();r=e.scrollLeft-t.left,s=e.scrollTop-t.top}o.left+=r,o.right+=r,o.top+=s,o.bottom+=s,o.width=1;let a=t.offsetWidth-t.clientWidth;return a>0&&(n&&(a*=-1),o.left+=a,o.right+=a),o},Hd=(e,t,n,o)=>{const r=va();let s,a;const i=ql(e),l=e.dom,c=()=>{(e=>{var t,n;const o=zo(yn(e),"*[contentEditable=false],video,audio,embed,object");for(let e=0;e<o.length;e++){const r=o[e].dom;let s=r.previousSibling;if(ci(s)){const e=s.data;1===e.length?null===(t=s.parentNode)||void 0===t||t.removeChild(s):s.deleteData(e.length-1,1)}s=r.nextSibling,li(s)&&(1===s.data.length?null===(n=s.parentNode)||void 0===n||n.removeChild(s):s.deleteData(0,1))}})(t),a&&(Id(a),a=null),r.on(e=>{l.remove(e.caret),r.clear()}),s&&(clearInterval(s),s=void 0)};return{show:(e,d)=>{let u;if(c(),Ud(d))return null;if(!n(d))return a=((e,t)=>{var n;const o=(null!==(n=e.ownerDocument)&&void 0!==n?n:document).createTextNode(Za),r=e.parentNode;if(t){const t=e.previousSibling;if(ti(t)){if(ri(t))return t;if(ci(t))return t.splitText(t.data.length-1)}null==r||r.insertBefore(o,e)}else{const t=e.nextSibling;if(ti(t)){if(ri(t))return t;if(li(t))return t.splitText(1),t}e.nextSibling?null==r||r.insertBefore(o,e.nextSibling):null==r||r.appendChild(o)}return o})(d,e),u=d.ownerDocument.createRange(),qd(a.nextSibling)?(u.setStart(a,0),u.setEnd(a,0)):(u.setStart(a,1),u.setEnd(a,1)),u;{const n=((e,t,n)=>{var o;const r=(null!==(o=t.ownerDocument)&&void 0!==o?o:document).createElement(e);r.setAttribute("data-mce-caret",n?"before":"after"),r.setAttribute("data-mce-bogus","all"),r.appendChild(Ga().dom);const s=t.parentNode;return n?null==s||s.insertBefore(r,t):t.nextSibling?null==s||s.insertBefore(r,t.nextSibling):null==s||s.appendChild(r),r})(i,d,e),c=jd(t,d,e);l.setStyle(n,"top",c.top),l.setStyle(n,"caret-color","transparent"),a=n;const m=l.create("div",{class:"mce-visual-caret","data-mce-bogus":"all"});l.setStyles(m,{...c}),l.add(t,m),r.set({caret:m,element:d,before:e}),e&&l.addClass(m,"mce-visual-caret-before"),s=setInterval(()=>{r.on(e=>{o()?l.toggleClass(e.caret,"mce-visual-caret-hidden"):l.addClass(e.caret,"mce-visual-caret-hidden")})},500),u=d.ownerDocument.createRange(),u.setStart(n,0),u.setEnd(n,0)}return u},hide:c,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:()=>{r.on(e=>{const n=jd(t,e.element,e.before);l.setStyles(e.caret,{...n})})},destroy:()=>clearInterval(s)}},$d=()=>Tt.browser.isFirefox(),qd=e=>Fd(e)||zd(e),Vd=e=>(qd(e)||sr(e)&&$d())&&Tn(yn(e)).exists(oo),Wd=hr,Kd=br,Yd=Cr,Gd=or("display","block table table-cell table-caption list-item"),Xd=ri,Zd=ni,Qd=Jo,Jd=lr,eu=Oi,tu=e=>e>0,nu=e=>e<0,ou=(e,t)=>{let n;for(;n=e(t);)if(!Zd(n))return n;return null},ru=(e,t,n,o,r)=>{const s=new $o(e,o),a=Kd(e)||Zd(e);let i;if(nu(t)){if(a&&(i=ou(s.prev.bind(s),!0),n(i)))return i;for(;i=ou(s.prev.bind(s),r);)if(n(i))return i}if(tu(t)){if(a&&(i=ou(s.next.bind(s),!0),n(i)))return i;for(;i=ou(s.next.bind(s),r);)if(n(i))return i}return null},su=(e,t)=>{for(;e&&e!==t;){if(Gd(e))return e;e=e.parentNode}return null},au=(e,t,n)=>su(e.container(),n)===su(t.container(),n),iu=(e,t)=>{if(!t)return I.none();const n=t.container(),o=t.offset();return Qd(n)?I.from(n.childNodes[o+e]):I.none()},lu=(e,t)=>{var n;const o=(null!==(n=t.ownerDocument)&&void 0!==n?n:document).createRange();return e?(o.setStartBefore(t),o.setEndBefore(t)):(o.setStartAfter(t),o.setEndAfter(t)),o},cu=(e,t,n)=>su(t,e)===su(n,e),du=(e,t,n)=>{const o=e?"previousSibling":"nextSibling";let r=n;for(;r&&r!==t;){let e=r[o];if(e&&Xd(e)&&(e=e[o]),Kd(e)||Yd(e)){if(cu(t,e,r))return e;break}if(eu(e))break;r=r.parentNode}return null},uu=T(lu,!0),mu=T(lu,!1),fu=(e,t,n)=>{let o;const r=T(du,!0,t),s=T(du,!1,t),a=n.startContainer,i=n.startOffset;if(ni(a)){const e=Jd(a)?a.parentNode:a,t=e.getAttribute("data-mce-caret");if("before"===t&&(o=e.nextSibling,Vd(o)))return uu(o);if("after"===t&&(o=e.previousSibling,Vd(o)))return mu(o)}if(!n.collapsed)return n;if(lr(a)){if(Xd(a)){if(1===e){if(o=s(a),o)return uu(o);if(o=r(a),o)return mu(o)}if(-1===e){if(o=r(a),o)return mu(o);if(o=s(a),o)return uu(o)}return n}if(ci(a)&&i>=a.data.length-1)return 1===e&&(o=s(a),o)?uu(o):n;if(li(a)&&i<=1)return-1===e&&(o=r(a),o)?mu(o):n;if(i===a.data.length)return o=s(a),o?uu(o):n;if(0===i)return o=r(a),o?mu(o):n}return n},gu=(e,t)=>iu(e?0:-1,t).filter(Kd),pu=(e,t,n)=>{const o=fu(e,t,n);return-1===e?Zi.fromRangeStart(o):Zi.fromRangeEnd(o)},hu=e=>I.from(e.getNode()).map(yn),bu=(e,t)=>{let n=t;for(;n=e(n);)if(n.isVisible())return n;return n},vu=(e,t)=>{const n=au(e,t);return!(n||!gr(e.getNode()))||n};var yu;!function(e){e[e.Backwards=-1]="Backwards",e[e.Forwards=1]="Forwards"}(yu||(yu={}));const Cu=br,wu=lr,xu=Jo,Su=gr,Eu=Oi,_u=e=>Ri(e)||(e=>!!Bi(e)&&!X(de(e.getElementsByTagName("*")),(e,t)=>e||Si(t),!1))(e),ku=Pi,Nu=(e,t)=>e.hasChildNodes()&&t<e.childNodes.length?e.childNodes[t]:null,Ru=(e,t)=>{if(tu(e)){if(Eu(t.previousSibling)&&!wu(t.previousSibling))return Zi.before(t);if(wu(t))return Zi(t,0)}if(nu(e)){if(Eu(t.nextSibling)&&!wu(t.nextSibling))return Zi.after(t);if(wu(t))return Zi(t,t.data.length)}return nu(e)?Su(t)?Zi.before(t):Zi.after(t):Zi.before(t)},Au=(e,t,n)=>{let o,r,s,a;if(!xu(n)||!t)return null;if(t.isEqual(Zi.after(n))&&n.lastChild){if(a=Zi.after(n.lastChild),nu(e)&&Eu(n.lastChild)&&xu(n.lastChild))return Su(n.lastChild)?Zi.before(n.lastChild):a}else a=t;const i=a.container();let l=a.offset();if(wu(i)){if(nu(e)&&l>0)return Zi(i,--l);if(tu(e)&&l<i.length)return Zi(i,++l);o=i}else{if(nu(e)&&l>0&&(r=Nu(i,l-1),Eu(r)))return!_u(r)&&(s=ru(r,e,ku,r),s)?wu(s)?Zi(s,s.data.length):Zi.after(s):wu(r)?Zi(r,r.data.length):Zi.before(r);if(tu(e)&&l<i.childNodes.length&&(r=Nu(i,l),Eu(r)))return Su(r)?((e,t)=>{const n=t.nextSibling;return n&&Eu(n)?wu(n)?Zi(n,0):Zi.before(n):Au(yu.Forwards,Zi.after(t),e)})(n,r):!_u(r)&&(s=ru(r,e,ku,r),s)?wu(s)?Zi(s,0):Zi.before(s):wu(r)?Zi(r,0):Zi.after(r);o=r||a.getNode()}if(o&&(tu(e)&&a.isAtEnd()||nu(e)&&a.isAtStart())&&(o=ru(o,e,M,n,!0),ku(o,n)))return Ru(e,o);r=o?ru(o,e,ku,n):o;const c=De(Y(((e,t)=>{const n=[];let o=e;for(;o&&o!==t;)n.push(o),o=o.parentNode;return n})(i,n),Cu));return!c||r&&c.contains(r)?r?Ru(e,r):null:(a=tu(e)?Zi.after(c):Zi.before(c),a)},Tu=e=>({next:t=>Au(yu.Forwards,t,e),prev:t=>Au(yu.Backwards,t,e)}),Ou=e=>Zi.isTextPosition(e)?0===e.offset():Oi(e.getNode()),Bu=e=>{if(Zi.isTextPosition(e)){const t=e.container();return e.offset()===t.data.length}return Oi(e.getNode(!0))},Pu=(e,t)=>!Zi.isTextPosition(e)&&!Zi.isTextPosition(t)&&e.getNode()===t.getNode(!0),Du=(e,t,n)=>{const o=Tu(t);return I.from(e?o.next(n):o.prev(n))},Lu=(e,t,n)=>Du(e,t,n).bind(o=>au(n,o,t)&&((e,t,n)=>{return e?!Pu(t,n)&&(o=t,!(!Zi.isTextPosition(o)&&gr(o.getNode())))&&Bu(t)&&Ou(n):!Pu(n,t)&&Ou(t)&&Bu(n);var o})(e,n,o)?Du(e,t,o):I.some(o)),Mu=(e,t,n,o)=>Lu(e,t,n).bind(n=>o(n)?Mu(e,t,n,o):I.some(n)),Iu=(e,t)=>{const n=e?t.firstChild:t.lastChild;return lr(n)?I.some(Zi(n,e?0:n.data.length)):n?Oi(n)?I.some(e?Zi.before(n):gr(o=n)?Zi.before(o):Zi.after(o)):((e,t,n)=>{const o=e?Zi.before(n):Zi.after(n);return Du(e,t,o)})(e,t,n):I.none();var o},Fu=T(Du,!0),zu=T(Du,!1),Uu=T(Iu,!0),ju=T(Iu,!1),Hu="_mce_caret",$u=e=>Jo(e)&&e.id===Hu,qu=(e,t)=>{let n=t;for(;n&&n!==e;){if($u(n))return n;n=n.parentNode}return null},Vu=e=>Ee(e,"name"),Wu=e=>Pt.isArray(e.start),Ku=e=>!(!Vu(e)&&b(e.forward))||e.forward,Yu=(e,t)=>(Jo(t)&&e.isBlock(t)&&!t.innerHTML&&(t.innerHTML='<br data-mce-bogus="1" />'),t),Gu=(e,t)=>ju(e).fold(L,e=>(t.setStart(e.container(),e.offset()),t.setEnd(e.container(),e.offset()),!0)),Xu=(e,t,n)=>!(!(e=>!e.hasChildNodes())(t)||!qu(e,t)||(((e,t)=>{var n;const o=(null!==(n=e.ownerDocument)&&void 0!==n?n:document).createTextNode(Za);e.appendChild(o),t.setStart(o,0),t.setEnd(o,0)})(t,n),0)),Zu=(e,t,n,o)=>{const r=n[t?"start":"end"],s=e.getRoot();if(r){let e=s,n=r[0];for(let t=r.length-1;e&&t>=1;t--){const n=e.childNodes;if(Xu(s,e,o))return!0;if(r[t]>n.length-1)return!!Xu(s,e,o)||Gu(e,o);e=n[r[t]]}lr(e)&&(n=Math.min(r[0],e.data.length)),Jo(e)&&(n=Math.min(r[0],e.childNodes.length)),t?o.setStart(e,n):o.setEnd(e,n)}return!0},Qu=e=>lr(e)&&e.data.length>0,Ju=(e,t,n)=>{const o=e.get(n.id+"_"+t),r=null==o?void 0:o.parentNode,s=n.keep;if(o&&r){let a,i;if("start"===t?s?o.hasChildNodes()?(a=o.firstChild,i=1):Qu(o.nextSibling)?(a=o.nextSibling,i=0):Qu(o.previousSibling)?(a=o.previousSibling,i=o.previousSibling.data.length):(a=r,i=e.nodeIndex(o)+1):(a=r,i=e.nodeIndex(o)):s?o.hasChildNodes()?(a=o.firstChild,i=1):Qu(o.previousSibling)?(a=o.previousSibling,i=o.previousSibling.data.length):(a=r,i=e.nodeIndex(o)):(a=r,i=e.nodeIndex(o)),!s){const r=o.previousSibling,s=o.nextSibling;let l;for(Pt.each(Pt.grep(o.childNodes),e=>{lr(e)&&(e.data=e.data.replace(/\uFEFF/g,""))});l=e.get(n.id+"_"+t);)e.remove(l,!0);if(lr(s)&&lr(r)&&!Tt.browser.isOpera()){const t=r.data.length;r.appendData(s.data),e.remove(s),a=r,i=t}}return I.some(Zi(a,i))}return I.none()},em=(e,t,n)=>((e,t,n=!1)=>2===t?pl(Ja,n,e):3===t?(e=>{const t=e.getRng();return{start:il(e.dom.getRoot(),Zi.fromRangeStart(t)),end:il(e.dom.getRoot(),Zi.fromRangeEnd(t)),forward:e.isForward()}})(e):t?(e=>({rng:e.getRng(),forward:e.isForward()}))(e):bl(e,!1))(e,t,n),tm=(e,t)=>{((e,t)=>{const n=e.dom;if(t){if(Wu(t))return((e,t)=>{const n=e.createRng();return Zu(e,!0,t,n)&&Zu(e,!1,t,n)?I.some({range:n,forward:Ku(t)}):I.none()})(n,t);if((e=>m(e.start))(t))return((e,t)=>{const n=I.from(ll(e.getRoot(),t.start)),o=I.from(ll(e.getRoot(),t.end));return Mt(n,o,(n,o)=>{const r=e.createRng();return r.setStart(n.container(),n.offset()),r.setEnd(o.container(),o.offset()),{range:r,forward:Ku(t)}})})(n,t);if((e=>Ee(e,"id"))(t))return((e,t)=>{const n=Ju(e,"start",t),o=Ju(e,"end",t);return Mt(n,o.or(n),(n,o)=>{const r=e.createRng();return r.setStart(Yu(e,n.container()),n.offset()),r.setEnd(Yu(e,o.container()),o.offset()),{range:r,forward:Ku(t)}})})(n,t);if(Vu(t))return((e,t)=>I.from(e.select(t.name)[t.index]).map(t=>{const n=e.createRng();return n.selectNode(t),{range:n,forward:!0}}))(n,t);if((e=>Ee(e,"rng"))(t))return I.some({range:t.rng,forward:Ku(t)})}return I.none()})(e,t).each(({range:t,forward:n})=>{e.setRng(t,n)})},nm=e=>Jo(e)&&"SPAN"===e.tagName&&"bookmark"===e.getAttribute("data-mce-type"),om=(rm=Vo,e=>rm===e);var rm;const sm=e=>""!==e&&-1!==" \f\n\r\t\v".indexOf(e),am=e=>!sm(e)&&!om(e)&&!Wo(e),im=e=>{const t=[];if(e)for(let n=0;n<e.rangeCount;n++)t.push(e.getRangeAt(n));return t},lm=(e,t)=>{const n=zo(t,"td[data-mce-selected],th[data-mce-selected]");return n.length>0?n:(e=>Y((e=>te(e,e=>{const t=yi(e);return t?[yn(t)]:[]}))(e),Ka))(e)},cm=e=>lm(im(e.selection.getSel()),yn(e.getBody())),dm=(e,t)=>eo(e,"table",t),um=e=>Fn(e).fold(N([e]),t=>[e].concat(um(t))),mm=e=>zn(e).fold(N([e]),t=>"br"===Ht(t)?Bn(t).map(t=>[e].concat(mm(t))).getOr([]):[e].concat(mm(t))),fm=(e,t)=>Mt((e=>{const t=e.startContainer,n=e.startOffset;return lr(t)?0===n?I.some(yn(t)):I.none():I.from(t.childNodes[n]).map(yn)})(t),(e=>{const t=e.endContainer,n=e.endOffset;return lr(t)?n===t.data.length?I.some(yn(t)):I.none():I.from(t.childNodes[n-1]).map(yn)})(t),(t,n)=>{const o=Q(um(e),T(En,t)),r=Q(mm(e),T(En,n));return o.isSome()&&r.isSome()}).getOr(!1),gm=(e,t,n,o)=>{const r=n,s=new $o(n,r),a=Ce(e.schema.getMoveCaretBeforeOnEnterElements(),(e,t)=>!H(["td","th","table"],t.toLowerCase()));let i=n;do{if(lr(i)&&0!==Pt.trim(i.data).length)return void(o?t.setStart(i,0):t.setEnd(i,i.data.length));if(a[i.nodeName])return void(o?t.setStartBefore(i):"BR"===i.nodeName?t.setEndBefore(i):t.setEndAfter(i))}while(i=o?s.next():s.prev());"BODY"===r.nodeName&&(o?t.setStart(r,0):t.setEnd(r,r.childNodes.length))},pm=e=>{const t=e.selection.getSel();return C(t)&&t.rangeCount>0},hm=(e,t)=>{const n=cm(e);n.length>0?V(n,n=>{const o=n.dom,r=e.dom.createRng();r.setStartBefore(o),r.setEndAfter(o),t(r,!0)}):t(e.selection.getRng(),!1)},bm=(e,t,n)=>{const o=bl(e,t);n(o),e.moveToBookmark(o)},vm=e=>x(null==e?void 0:e.nodeType),ym=e=>Jo(e)&&!nm(e)&&!$u(e)&&!rr(e),Cm=(e,t,n)=>{const{selection:o,dom:r}=e,s=o.getNode(),a=br(s);bm(o,!0,()=>{t()}),a&&br(s)&&r.isChildOf(s,e.getBody())?e.selection.select(s):n(o.getStart())&&wm(r,o)},wm=(e,t)=>{var n,o;const r=t.getRng(),{startContainer:s,startOffset:a}=r;if(!((e,t)=>{if(ym(t)&&!/^(TD|TH)$/.test(t.nodeName)){const n=e.getAttrib(t,"data-mce-selected"),o=parseInt(n,10);return!isNaN(o)&&o>0}return!1})(e,t.getNode())&&Jo(s)){const i=s.childNodes,l=e.getRoot();let c;if(a<i.length){const t=i[a];c=new $o(t,null!==(n=e.getParent(t,e.isBlock))&&void 0!==n?n:l)}else{const t=i[i.length-1];c=new $o(t,null!==(o=e.getParent(t,e.isBlock))&&void 0!==o?o:l),c.next(!0)}for(let n=c.current();n;n=c.next()){if("false"===e.getContentEditable(n))return;if(lr(n)&&!_m(n))return r.setStart(n,0),void t.setRng(r)}}},xm=(e,t,n)=>{if(e){const o=t?"nextSibling":"previousSibling";for(e=n?e:e[o];e;e=e[o])if(Jo(e)||!_m(e))return e}},Sm=(e,t)=>!!e.getTextBlockElements()[t.nodeName.toLowerCase()]||Wr(e,t),Em=(e,t,n)=>e.schema.isValidChild(t,n),_m=(e,t=!1)=>{if(C(e)&&lr(e)){const n=t?e.data.replace(/ /g,"\xa0"):e.data;return Yo(n)}return!1},km=(e,t)=>{const n=e.dom;return ym(t)&&"false"===n.getContentEditable(t)&&((e,t)=>{const n="[data-mce-cef-wrappable]",o=Tc(e),r=Xe(o)?n:`${n},${o}`;return xn(yn(t),r)})(e,t)&&0===n.select('[contenteditable="true"]',t).length},Nm=(e,t)=>w(e)?e(t):(C(t)&&(e=e.replace(/%(\w+)/g,(e,n)=>t[n]||e)),e),Rm=(e,t)=>(t=t||"",e=""+((e=e||"").nodeName||e),t=""+(t.nodeName||t),e.toLowerCase()===t.toLowerCase()),Am=(e,t)=>{if(y(e))return null;{let n=String(e);return"color"!==t&&"backgroundColor"!==t||(n=Hs(n)),"fontWeight"===t&&700===e&&(n="bold"),"fontFamily"===t&&(n=n.replace(/[\'\"]/g,"").replace(/,\s+/g,",")),n}},Tm=(e,t,n)=>{const o=e.getStyle(t,n);return Am(o,n)},Om=(e,t)=>{let n;return e.getParent(t,t=>!!Jo(t)&&(n=e.getStyle(t,"text-decoration"),!!n&&"none"!==n)),n},Bm=(e,t,n)=>e.getParents(t,n,e.getRoot()),Pm=(e,t,n)=>{const o=e.formatter.get(t);return C(o)&&$(o,n)},Dm=e=>_e(e,"block"),Lm=e=>_e(e,"selector"),Mm=e=>_e(e,"inline"),Im=e=>Lm(e)&&!1!==e.expand&&!Mm(e),Fm=e=>(e=>{const t=[];let n=e;for(;n;){if(lr(n)&&n.data!==Za||n.childNodes.length>1)return[];Jo(n)&&t.push(n),n=n.firstChild}return t})(e).length>0,zm=e=>$u(e.dom)&&Fm(e.dom),Um=nm,jm=Bm,Hm=_m,$m=Sm,qm=e=>gr(e)&&e.getAttribute("data-mce-bogus")&&!e.nextSibling,Vm=(e,t)=>{let n=t;for(;n;){if(Jo(n)&&e.getContentEditable(n))return"false"===e.getContentEditable(n)?n:t;n=n.parentNode}return t},Wm=(e,t,n,o)=>{const r=t.data;if(e){for(let e=n;e>0;e--)if(o(r.charAt(e-1)))return e}else for(let e=n;e<r.length;e++)if(o(r.charAt(e)))return e;return-1},Km=(e,t,n)=>Wm(e,t,n,e=>om(e)||sm(e)),Ym=(e,t,n)=>Wm(e,t,n,am),Gm=(e,t,n,o,r,s)=>{let a;const i=e.getParent(n,e.isBlock)||t,l=(t,n,o)=>{const s=Fa(e),l=r?s.backwards:s.forwards;return I.from(l(t,n,(e,t)=>Um(e.parentNode)?-1:(a=e,o(r,e,t)),i))};return l(n,o,Km).bind(e=>s?l(e.container,e.offset+(r?-1:0),Ym):I.some(e)).orThunk(()=>a?I.some({container:a,offset:r?0:a.length}):I.none())},Xm=(e,t,n,o,r)=>{const s=o[r];lr(o)&&Xe(o.data)&&s&&(o=s);const a=jm(e,o);for(let o=0;o<a.length;o++)for(let r=0;r<t.length;r++){const s=t[r];if((!C(s.collapsed)||s.collapsed===n.collapsed)&&Lm(s)&&e.is(a[o],s.selector))return a[o]}return o},Zm=(e,t,n,o)=>{var r;let s=n;const a=e.getRoot(),i=t[0];if(Dm(i)&&(s=i.wrapper?null:e.getParent(n,i.block,a)),!s){const t=null!==(r=e.getParent(n,"LI,TD,TH,SUMMARY"))&&void 0!==r?r:a;s=e.getParent(lr(n)?n.parentNode:n,t=>t!==a&&$m(e.schema,t),t)}if(s&&Dm(i)&&i.wrapper&&(s=jm(e,s,"ul,ol").reverse()[0]||s),!s)for(s=n;s&&s[o]&&!e.isBlock(s[o])&&(s=s[o],!Rm(s,"br")););return s||n},Qm=(e,t,n,o)=>{const r=n.parentNode;return!C(n[o])&&(!(r!==t&&!y(r)&&!e.isBlock(r))||Qm(e,t,r,o))},Jm=(e,t,n,o,r)=>{let s=n;const a=r?"previousSibling":"nextSibling",i=e.getRoot();if(lr(n)&&!Hm(n)&&(r?o>0:o<n.data.length))return n;for(;s;){if(!t[0].block_expand&&e.isBlock(s))return s;for(let t=s[a];t;t=t[a]){const n=lr(t)&&!Qm(e,i,t,a);if(!Um(t)&&!qm(t)&&!Hm(t,n))return s}if(s===i||s.parentNode===i){n=s;break}s=s.parentNode}return n},ef=e=>Um(e.parentNode)||Um(e),tf=(e,t,n,o=!1)=>{let{startContainer:r,startOffset:s,endContainer:a,endOffset:i}=t;const l=n[0];return Jo(r)&&r.hasChildNodes()&&(r=Ci(r,s),lr(r)&&(s=0)),Jo(a)&&a.hasChildNodes()&&(a=Ci(a,t.collapsed?i:i-1),lr(a)&&(i=a.data.length)),r=Vm(e,r),a=Vm(e,a),ef(r)&&(r=Um(r)?r:r.parentNode,r=t.collapsed?r.previousSibling||r:r.nextSibling||r,lr(r)&&(s=t.collapsed?r.length:0)),ef(a)&&(a=Um(a)?a:a.parentNode,a=t.collapsed?a.nextSibling||a:a.previousSibling||a,lr(a)&&(i=t.collapsed?0:a.length)),t.collapsed&&(Gm(e,e.getRoot(),r,s,!0,o).each(({container:e,offset:t})=>{r=e,s=t}),Gm(e,e.getRoot(),a,i,!1,o).each(({container:e,offset:t})=>{a=e,i=t})),(Mm(l)||l.block_expand)&&(Mm(l)&&lr(r)&&0!==s||(r=Jm(e,n,r,s,!0)),Mm(l)&&lr(a)&&i!==a.data.length||(a=Jm(e,n,a,i,!1))),Im(l)&&(r=Xm(e,n,t,r,"previousSibling"),a=Xm(e,n,t,a,"nextSibling")),(Dm(l)||Lm(l))&&(r=Zm(e,n,r,"previousSibling"),a=Zm(e,n,a,"nextSibling"),Dm(l)&&(e.isBlock(r)||(r=Jm(e,n,r,s,!0),lr(r)&&(s=0)),e.isBlock(a)||(a=Jm(e,n,a,i,!1),lr(a)&&(i=a.data.length)))),Jo(r)&&r.parentNode&&(s=e.nodeIndex(r),r=r.parentNode),Jo(a)&&a.parentNode&&(i=e.nodeIndex(a)+1,a=a.parentNode),{startContainer:r,startOffset:s,endContainer:a,endOffset:i}},nf=(e,t,n)=>{var o;const r=t.startOffset,s=Ci(t.startContainer,r),a=t.endOffset,i=Ci(t.endContainer,a-1),l=e=>{const t=e[0];lr(t)&&t===s&&r>=t.data.length&&e.splice(0,1);const n=e[e.length-1];return 0===a&&e.length>0&&n===i&&lr(n)&&e.splice(e.length-1,1),e},c=(e,t,n)=>{const o=[];for(;e&&e!==n;e=e[t])o.push(e);return o},d=(t,n)=>e.getParent(t,e=>e.parentNode===n,n),u=(e,t,o)=>{const r=o?"nextSibling":"previousSibling";for(let s=e,a=s.parentNode;s&&s!==t;s=a){a=s.parentNode;const t=c(s===e?s:s[r],r);t.length&&(o||t.reverse(),n(l(t)))}};if(s===i)return n(l([s]));const m=null!==(o=e.findCommonAncestor(s,i))&&void 0!==o?o:e.getRoot();if(e.isChildOf(s,i))return u(s,m,!0);if(e.isChildOf(i,s))return u(i,m);const f=d(s,m)||s,g=d(i,m)||i;u(s,f,!0);const p=c(f===s?f:f.nextSibling,"nextSibling",g===i?g.nextSibling:g);p.length&&n(l(p)),u(i,g)},of=['pre[class*=language-][contenteditable="false"]',"figure.image","div[data-ephox-embed-iri]","div.tiny-pageembed","div.mce-toc","div[data-mce-toc]"],rf=(e,t,n,o,r,s)=>{const{uid:a=t,...i}=n;un(e,wa()),Qt(e,`${Sa()}`,a),Qt(e,`${xa()}`,o);const{attributes:l={},classes:c=[]}=r(a,i);if(Jt(e,l),((e,t)=>{V(t,t=>{un(e,t)})})(e,c),s){c.length>0&&Qt(e,`${_a()}`,c.join(","));const t=fe(l);t.length>0&&Qt(e,`${ka()}`,t.join(","))}},sf=(e,t,n,o,r)=>{const s=bn("span",e);return rf(s,t,n,o,r,!1),s},af=(e,t,n,o,r,s)=>{const a=[],i=sf(e.getDoc(),n,s,o,r),l=va(),c=()=>{l.clear()},d=e=>{V(e,u)},u=t=>{switch(((e,t,n,o)=>An(t).fold(()=>"skipping",r=>"br"===o||(e=>Kt(e)&&Ua(e)===Za)(t)?"valid":(e=>Wt(e)&&gn(e,wa()))(t)?"existing":$u(t.dom)?"caret":$(of,e=>xn(t,e))?"valid-block":Em(e,n,o)&&Em(e,Ht(r),n)?"valid":"invalid-child"))(e,t,"span",Ht(t))){case"invalid-child":{c();const e=Mn(t);d(e),c();break}case"valid-block":c(),rf(t,n,s,o,r,!0);break;case"valid":{const e=l.get().getOrThunk(()=>{const e=La(i);return a.push(e),l.set(e),e});yo(t,e);break}}};return nf(e.dom,t,e=>{c(),(e=>{const t=q(e,yn);d(t)})(e)}),a},lf=e=>{const t=(()=>{const e={};return{register:(t,n)=>{e[t]={name:t,settings:n}},lookup:t=>Se(e,t).map(e=>e.settings),getNames:()=>fe(e)}})();((e,t)=>{const n=xa(),o=e=>I.from(e.attr(n)).bind(t.lookup),r=e=>{var t,n;e.attr(Sa(),null),e.attr(xa(),null),e.attr(Ea(),null);const o=I.from(e.attr(ka())).map(e=>e.split(",")).getOr([]),r=I.from(e.attr(_a())).map(e=>e.split(",")).getOr([]);V(o,t=>e.attr(t,null));const s=null!==(n=null===(t=e.attr("class"))||void 0===t?void 0:t.split(" "))&&void 0!==n?n:[],a=re(s,[wa()].concat(r));e.attr("class",a.length>0?a.join(" "):null),e.attr(_a(),null),e.attr(ka(),null)};e.serializer.addTempAttr(Ea()),e.serializer.addAttributeFilter(n,e=>{for(const t of e)o(t).each(e=>{!1===e.persistent&&("span"===t.name?t.unwrap():r(t))})})})(e,t);const n=((e,t)=>{const n=ua({}),o=()=>({listeners:[],previous:va()}),r=(e,t)=>{s(e,e=>(t(e),e))},s=(e,t)=>{const r=n.get(),s=t(Se(r,e).getOrThunk(o));r[e]=s,n.set(r)},a=(t,n)=>{V(Ta(e,t),e=>{n?Qt(e,Ea(),"true"):on(e,Ea())})},i=Ca(()=>{const n=ae(t.getNames());V(n,t=>{s(t,n=>{const o=n.previous.get();return Ra(e,I.some(t)).fold(()=>{o.each(e=>{(e=>{r(e,t=>{V(t.listeners,t=>t(!1,e))})})(t),n.previous.clear(),a(e,!1)})},({uid:e,name:t,elements:s})=>{Dt(o,e)||(o.each(e=>a(e,!1)),((e,t,n)=>{r(e,o=>{V(o.listeners,o=>o(!0,e,{uid:t,nodes:q(n,e=>e.dom)}))})})(t,e,s),n.previous.set(e),a(e,!0))}),{previous:n.previous,listeners:n.listeners}})})},30);return e.on("remove",()=>{i.cancel()}),e.on("NodeChange",()=>{i.throttle()}),{addListener:(e,t)=>{s(e,e=>({previous:e.previous,listeners:e.listeners.concat([t])}))}}})(e,t),o=Xt("span"),r=e=>{V(e,e=>{o(e)?So(e):(e=>{fn(e,wa()),on(e,`${Sa()}`),on(e,`${xa()}`),on(e,`${Ea()}`);const t=tn(e,`${ka()}`).map(e=>e.split(",")).getOr([]),n=tn(e,`${_a()}`).map(e=>e.split(",")).getOr([]);var o;V(t,t=>on(e,t)),o=e,V(n,e=>{fn(o,e)}),on(e,`${_a()}`),on(e,`${ka()}`)})(e)})};return{register:(e,n)=>{t.register(e,n)},annotate:(n,o)=>{t.lookup(n).each(t=>{((e,t,n,o)=>{e.undoManager.transact(()=>{const r=e.selection,s=r.getRng(),a=cm(e).length>0,i=Pa("mce-annotation");if(s.collapsed&&!a&&((e,t)=>{const n=tf(e.dom,t,[{inline:"span"}]);t.setStart(n.startContainer,n.startOffset),t.setEnd(n.endContainer,n.endOffset),e.selection.setRng(t)})(e,s),r.getRng().collapsed&&!a){const s=sf(e.getDoc(),i,o,t,n.decorate);ko(s,Vo),r.getRng().insertNode(s.dom),r.select(s.dom)}else bm(r,!1,()=>{hm(e,r=>{af(e,r,i,t,n.decorate,o)})})})})(e,n,t,o)})},annotationChanged:(e,t)=>{n.addListener(e,t)},remove:t=>{Ra(e,I.some(t)).each(({elements:t})=>{const n=e.selection.getBookmark();r(t),e.selection.moveToBookmark(n)})},removeAll:t=>{const n=e.selection.getBookmark();pe(Oa(e,t),(e,t)=>{r(e)}),e.selection.moveToBookmark(n)},getAll:t=>{const n=Oa(e,t);return he(n,e=>q(e,e=>e.dom))}}},cf=e=>({getBookmark:T(em,e),moveToBookmark:T(tm,e)});cf.isBookmarkNode=nm;const df=(e,t,n)=>!n.collapsed&&$(n.getClientRects(),n=>((e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom)(n,e,t)),uf=(e,t,n)=>{e.dispatch(t,n)},mf=(e,t,n,o)=>{e.dispatch("FormatApply",{format:t,node:n,vars:o})},ff=(e,t,n,o)=>{e.dispatch("FormatRemove",{format:t,node:n,vars:o})},gf=(e,t)=>e.dispatch("SetContent",t),pf=(e,t)=>e.dispatch("GetContent",t),hf=(e,t)=>{e.dispatch("AutocompleterUpdateActiveRange",t)},bf=(e,t)=>e.dispatch("PastePlainTextToggle",{state:t}),vf={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:e=>e.shiftKey||e.ctrlKey||e.altKey||vf.metaKeyPressed(e),metaKeyPressed:e=>Tt.os.isMacOS()||Tt.os.isiOS()?e.metaKey:e.ctrlKey&&!e.altKey},yf="data-mce-selected",Cf=Math.abs,wf=Math.round,xf={nw:[0,0,-1,-1],ne:[1,0,1,-1],se:[1,1,1,1],sw:[0,1,-1,1]},Sf=(e,t)=>{const n=t.dom,o=t.getDoc(),r=document,s=t.getBody();let a,i,l,c,d,u,m,f,g,p,h,b,v,y,w;const x=e=>C(e)&&(pr(e)||n.is(e,"figure.image")),S=e=>Cr(e)||n.hasClass(e,"mce-preview-object"),E=e=>{const n=e.target;((e,t)=>{if((e=>"longpress"===e.type||0===e.type.indexOf("touch"))(e)){const n=e.touches[0];return x(e.target)&&!df(n.clientX,n.clientY,t)}return x(e.target)&&!df(e.clientX,e.clientY,t)})(e,t.selection.getRng())&&!e.isDefaultPrevented()&&t.selection.select(n)},_=e=>n.hasClass(e,"mce-preview-object")&&C(e.firstElementChild)?[e,e.firstElementChild]:n.is(e,"figure.image")?[e.querySelector("img")]:[e],k=e=>{const o=bc(t);return!!o&&"false"!==e.getAttribute("data-mce-resize")&&e!==t.getBody()&&(n.hasClass(e,"mce-preview-object")&&C(e.firstElementChild)?xn(yn(e.firstElementChild),o):xn(yn(e),o))},N=(e,o,r)=>{if(C(r)){const s=_(e);V(s,e=>{e.style[o]||!t.schema.isValid(e.nodeName.toLowerCase(),o)?n.setStyle(e,o,r):n.setAttrib(e,o,""+r)})}},R=(e,t,n)=>{N(e,"width",t),N(e,"height",n)},A=e=>{let o,r,d,C,E;o=e.screenX-u,r=e.screenY-m,b=o*c[2]+f,v=r*c[3]+g,b=b<5?5:b,v=v<5?5:v,d=(x(a)||S(a))&&!1!==vc(t)?!vf.modifierPressed(e):vf.modifierPressed(e),d&&(Cf(o)>Cf(r)?(v=wf(b*p),b=wf(v/p)):(b=wf(v/p),v=wf(b*p))),R(i,b,v),C=c.startPos.x+o,E=c.startPos.y+r,C=C>0?C:0,E=E>0?E:0,n.setStyles(l,{left:C,top:E,display:"block"}),l.innerHTML=b+" &times; "+v,c[2]<0&&i.clientWidth<=b&&n.setStyle(i,"left",void 0+(f-b)),c[3]<0&&i.clientHeight<=v&&n.setStyle(i,"top",void 0+(g-v)),o=s.scrollWidth-y,r=s.scrollHeight-w,o+r!==0&&n.setStyles(l,{left:C-o,top:E-r}),h||(((e,t,n,o,r)=>{e.dispatch("ObjectResizeStart",{target:t,width:n,height:o,origin:r})})(t,a,f,g,"corner-"+c.name),h=!0)},T=()=>{const e=h;h=!1,e&&(N(a,"width",b),N(a,"height",v)),n.unbind(o,"mousemove",A),n.unbind(o,"mouseup",T),r!==o&&(n.unbind(r,"mousemove",A),n.unbind(r,"mouseup",T)),n.remove(i),n.remove(l),n.remove(d),O(a),e&&(((e,t,n,o,r)=>{e.dispatch("ObjectResized",{target:t,width:n,height:o,origin:r})})(t,a,b,v,"corner-"+c.name),n.setAttrib(a,"style",n.getAttrib(a,"style"))),t.nodeChanged()},O=e=>{M();const h=n.getPos(e,s),C=h.x,x=h.y,E=e.getBoundingClientRect(),N=E.width||E.right-E.left,O=E.height||E.bottom-E.top;a!==e&&(P(),a=e,b=v=0);const B=t.dispatch("ObjectSelected",{target:e});k(e)&&!B.isDefaultPrevented()?pe(xf,(e,t)=>{let h=n.get("mceResizeHandle"+t);h&&n.remove(h),h=n.add(s,"div",{id:"mceResizeHandle"+t,"data-mce-bogus":"all",class:"mce-resizehandle",unselectable:!0,style:"cursor:"+t+"-resize; margin:0; padding:0"}),n.bind(h,"mousedown",h=>{h.stopImmediatePropagation(),h.preventDefault(),(h=>{const b=_(a)[0];u=h.screenX,m=h.screenY,f=b.clientWidth,g=b.clientHeight,p=g/f,c=e,c.name=t,c.startPos={x:N*e[0]+C,y:O*e[1]+x},y=s.scrollWidth,w=s.scrollHeight,d=n.add(s,"div",{class:"mce-resize-backdrop","data-mce-bogus":"all"}),n.setStyles(d,{position:"fixed",left:"0",top:"0",width:"100%",height:"100%"}),i=((e,t)=>{if(S(t))return e.create("img",{src:Tt.transparentSrc});if(sr(t)){const n=t.cloneNode(!0);return ce(e.select("tr",n)).each(t=>{const n=e.select("td,th",t);e.setStyle(t,"height",null),V(n,t=>e.setStyle(t,"height",null))}),n}return t.cloneNode(!0)})(n,a),n.addClass(i,"mce-clonedresizable"),n.setAttrib(i,"data-mce-bogus","all"),i.contentEditable="false",n.setStyles(i,{left:C,top:x,margin:0}),R(i,N,O),i.removeAttribute(yf),s.appendChild(i),n.bind(o,"mousemove",A),n.bind(o,"mouseup",T),r!==o&&(n.bind(r,"mousemove",A),n.bind(r,"mouseup",T)),l=n.add(s,"div",{class:"mce-resize-helper","data-mce-bogus":"all"},f+" &times; "+g)})(h)}),e.elm=h,n.setStyles(h,{left:N*e[0]+C-h.offsetWidth/2,top:O*e[1]+x-h.offsetHeight/2})}):P(!1)},B=ya(O,0),P=(e=!0)=>{B.cancel(),M(),a&&e&&a.removeAttribute(yf),pe(xf,(e,t)=>{const o=n.get("mceResizeHandle"+t);o&&(n.unbind(o),n.remove(o))})},D=(e,t)=>n.isChildOf(e,t),L=o=>{if(h||t.removed||t.composing)return;const r="mousedown"===o.type?o.target:e.getNode(),a=no(yn(r),"table,img,figure.image,hr,video,span.mce-preview-object,details").map(e=>e.dom).filter(e=>n.isEditable(e.parentElement)||"IMG"===e.nodeName&&n.isEditable(e)).getOrUndefined(),i=C(a)?n.getAttrib(a,yf,"1"):"1";if(V(n.select(`img[${yf}],hr[${yf}]`),e=>{e.removeAttribute(yf)}),C(a)&&D(a,s)&&t.hasFocus()){I();const t=e.getStart(!0);if(D(t,a)&&D(e.getEnd(!0),a))return n.setAttrib(a,yf,i),void B.throttle(a)}P()},M=()=>{pe(xf,e=>{e.elm&&(n.unbind(e.elm),delete e.elm)})},I=()=>{try{t.getDoc().execCommand("enableObjectResizing",!1,"false")}catch(e){}};return t.on("init",()=>{I(),t.on("NodeChange ResizeEditor ResizeWindow ResizeContent drop",L),t.on("keyup compositionend",e=>{a&&"TABLE"===a.nodeName&&L(e)}),t.on("hide blur",P),t.on("contextmenu longpress",E,!0)}),t.on("remove",M),{isResizable:k,showResizeRect:O,hideResizeRect:P,updateResizeRect:L,destroy:()=>{B.cancel(),a=i=d=null}}},Ef=(e,t,n)=>{const o=e.document.createRange();var r;return r=o,t.fold(e=>{r.setStartBefore(e.dom)},(e,t)=>{r.setStart(e.dom,t)},e=>{r.setStartAfter(e.dom)}),((e,t)=>{t.fold(t=>{e.setEndBefore(t.dom)},(t,n)=>{e.setEnd(t.dom,n)},t=>{e.setEndAfter(t.dom)})})(o,n),o},_f=(e,t,n,o,r)=>{const s=e.document.createRange();return s.setStart(t.dom,n),s.setEnd(o.dom,r),s},kf=xl([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),Nf=(e,t,n)=>t(yn(n.startContainer),n.startOffset,yn(n.endContainer),n.endOffset);kf.ltr,kf.rtl;const Rf=(e,t,n,o)=>({start:e,soffset:t,finish:n,foffset:o}),Af=document.caretPositionFromPoint?(e,t,n)=>{var o,r;return I.from(null===(r=(o=e.dom).caretPositionFromPoint)||void 0===r?void 0:r.call(o,t,n)).bind(t=>{if(null===t.offsetNode)return I.none();const n=e.dom.createRange();return n.setStart(t.offsetNode,t.offset),n.collapse(),I.some(n)})}:document.caretRangeFromPoint?(e,t,n)=>{var o,r;return I.from(null===(r=(o=e.dom).caretRangeFromPoint)||void 0===r?void 0:r.call(o,t,n))}:I.none,Tf=xl([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Of={before:Tf.before,on:Tf.on,after:Tf.after,cata:(e,t,n,o)=>e.fold(t,n,o),getStart:e=>e.fold(R,R,R)},Bf=xl([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Pf={domRange:Bf.domRange,relative:Bf.relative,exact:Bf.exact,exactFromRange:e=>Bf.exact(e.start,e.soffset,e.finish,e.foffset),getWin:e=>{const t=(e=>e.match({domRange:e=>yn(e.startContainer),relative:(e,t)=>Of.getStart(e),exact:(e,t,n,o)=>e}))(e);return Rn(t)},range:Rf},Df=(e,t)=>{const n=Ht(e);return"input"===n?Of.after(e):H(["br","img"],n)?0===t?Of.before(e):Of.after(e):Of.on(e,t)},Lf=(e,t)=>{const n=e.fold(Of.before,Df,Of.after),o=t.fold(Of.before,Df,Of.after);return Pf.relative(n,o)},Mf=(e,t,n,o)=>{const r=Df(e,t),s=Df(n,o);return Pf.relative(r,s)},If=(e,t)=>{const n=(t||document).createDocumentFragment();return V(e,e=>{n.appendChild(e.dom)}),yn(n)},Ff=e=>{const t=Pf.getWin(e).dom,n=(e,n,o,r)=>_f(t,e,n,o,r),o=(e=>e.match({domRange:e=>{const t=yn(e.startContainer),n=yn(e.endContainer);return Mf(t,e.startOffset,n,e.endOffset)},relative:Lf,exact:Mf}))(e);return((e,t)=>{const n=((e,t)=>t.match({domRange:e=>({ltr:N(e),rtl:I.none}),relative:(t,n)=>({ltr:Le(()=>Ef(e,t,n)),rtl:Le(()=>I.some(Ef(e,n,t)))}),exact:(t,n,o,r)=>({ltr:Le(()=>_f(e,t,n,o,r)),rtl:Le(()=>I.some(_f(e,o,r,t,n)))})}))(e,t);return((e,t)=>{const n=t.ltr();return n.collapsed?t.rtl().filter(e=>!1===e.collapsed).map(e=>kf.rtl(yn(e.endContainer),e.endOffset,yn(e.startContainer),e.startOffset)).getOrThunk(()=>Nf(0,kf.ltr,n)):Nf(0,kf.ltr,n)})(0,n)})(t,o).match({ltr:n,rtl:n})},zf=(e,t,n)=>((e,t,n)=>((e,t,n)=>{const o=yn(e.document);return Af(o,t,n).map(e=>Rf(yn(e.startContainer),e.startOffset,yn(e.endContainer),e.endOffset))})(e,t,n))(Rn(yn(n)).dom,e,t).map(e=>{const t=n.createRange();return t.setStart(e.start.dom,e.soffset),t.setEnd(e.finish.dom,e.foffset),t}).getOrUndefined(),Uf=(e,t)=>C(e)&&C(t)&&e.startContainer===t.startContainer&&e.startOffset===t.startOffset&&e.endContainer===t.endContainer&&e.endOffset===t.endOffset,jf=(e,t,n)=>null!==((e,t,n)=>{let o=e;for(;o&&o!==t;){if(n(o))return o;o=o.parentNode}return null})(e,t,n),Hf=(e,t,n)=>jf(e,t,e=>e.nodeName===n),$f=(e,t)=>ri(e)&&!jf(e,t,$u),qf=(e,t,n)=>{const o=t.parentNode;if(o){const r=new $o(t,e.getParent(o,e.isBlock)||e.getRoot());let s;for(;s=r[n?"prev":"next"]();)if(gr(s))return!0}return!1},Vf=(e,t,n,o,r)=>{const s=e.getRoot(),a=e.schema.getNonEmptyElements(),i=r.parentNode;let l,c;if(!i)return I.none();const d=e.getParent(i,e.isBlock)||s;if(o&&gr(r)&&t&&e.isEmpty(d))return I.some(Zi(i,e.nodeIndex(r)));const u=new $o(r,d);for(;c=u[o?"prev":"next"]();){if("false"===e.getContentEditableParent(c)||$f(c,s))return I.none();if(lr(c)&&c.data.length>0)return Hf(c,s,"A")?I.none():I.some(Zi(c,o?c.data.length:0));if(e.isBlock(c)||a[c.nodeName.toLowerCase()])return I.none();l=c}return ur(l)?I.none():n&&l?I.some(Zi(l,0)):I.none()},Wf=(e,t,n,o)=>{const r=e.getRoot();let s,a=!1,i=n?o.startContainer:o.endContainer,l=n?o.startOffset:o.endOffset;const c=Jo(i)&&l===i.childNodes.length,d=e.schema.getNonEmptyElements();let u=n;if(ri(i))return I.none();if(Jo(i)&&l>i.childNodes.length-1&&(u=!1),mr(i)&&(i=r,l=0),i===r){if(u&&(s=i.childNodes[l>0?l-1:0],s)){if(ri(s))return I.none();if(d[s.nodeName]||sr(s))return I.none()}if(i.hasChildNodes()){if(l=Math.min(!u&&l>0?l-1:l,i.childNodes.length-1),i=i.childNodes[l],l=lr(i)&&c?i.data.length:0,!t&&i===r.lastChild&&sr(i))return I.none();if(((e,t)=>{let n=t;for(;n&&n!==e;){if(br(n))return!0;n=n.parentNode}return!1})(r,i)||ri(i))return I.none();if(xr(i))return I.none();if(i.hasChildNodes()&&!sr(i)){s=i;const t=new $o(i,r);do{if(br(s)||ri(s)){a=!1;break}if(lr(s)&&s.data.length>0){l=u?0:s.data.length,i=s,a=!0;break}if(d[s.nodeName.toLowerCase()]&&!yr(s)){l=e.nodeIndex(s),i=s.parentNode,u||l++,a=!0;break}}while(s=u?t.next():t.prev())}}}return t&&(lr(i)&&0===l&&Vf(e,c,t,!0,i).each(e=>{i=e.container(),l=e.offset(),a=!0}),Jo(i)&&(s=i.childNodes[l],s||(s=i.childNodes[l-1]),!s||!gr(s)||(e=>{var t;return"A"===(null===(t=e.previousSibling)||void 0===t?void 0:t.nodeName)})(s)||qf(e,s,!1)||qf(e,s,!0)||Vf(e,c,t,!0,s).each(e=>{i=e.container(),l=e.offset(),a=!0}))),u&&!t&&lr(i)&&l===i.data.length&&Vf(e,c,t,!1,i).each(e=>{i=e.container(),l=e.offset(),a=!0}),a&&i?I.some(Zi(i,l)):I.none()},Kf=(e,t)=>{const n=t.collapsed,o=t.cloneRange(),r=Zi.fromRangeStart(t);return Wf(e,n,!0,o).each(e=>{n&&Zi.isAbove(r,e)||o.setStart(e.container(),e.offset())}),n||Wf(e,n,!1,o).each(e=>{o.setEnd(e.container(),e.offset())}),n&&o.collapse(!0),Uf(t,o)?I.none():I.some(o)},Yf=(e,t)=>e.splitText(t),Gf=e=>{let t=e.startContainer,n=e.startOffset,o=e.endContainer,r=e.endOffset;if(t===o&&lr(t)){if(n>0&&n<t.data.length)if(o=Yf(t,n),t=o.previousSibling,r>n){r-=n;const e=Yf(o,r).previousSibling;t=o=e,r=e.data.length,n=0}else r=0}else if(lr(t)&&n>0&&n<t.data.length&&(t=Yf(t,n),n=0),lr(o)&&r>0&&r<o.data.length){const e=Yf(o,r).previousSibling;o=e,r=e.data.length}return{startContainer:t,startOffset:n,endContainer:o,endOffset:r}},Xf=e=>({walk:(t,n)=>nf(e,t,n),split:Gf,expand:(t,n={type:"word"})=>{if("word"===n.type){const n=tf(e,t,[{inline:"span"}]),o=e.createRng();return o.setStart(n.startContainer,n.startOffset),o.setEnd(n.endContainer,n.endOffset),o}return t},normalize:t=>Kf(e,t).fold(L,e=>(t.setStart(e.startContainer,e.startOffset),t.setEnd(e.endContainer,e.endOffset),!0))});Xf.compareRanges=Uf,Xf.getCaretRangeFromPoint=zf,Xf.getSelectedNode=yi,Xf.getNode=Ci;const Zf=(e=>{const t=t=>{const n=(e=>{const t=e.dom;return Gn(e)?t.getBoundingClientRect().height:t.offsetHeight})(t);if(n<=0||null===n){const n=co(t,e);return parseFloat(n)||0}return n},n=(e,t)=>X(t,(t,n)=>{const o=co(e,n),r=void 0===o?0:parseInt(o,10);return isNaN(r)?t:t+r},0);return{set:(t,n)=>{if(!x(n)&&!n.match(/^[0-9]+$/))throw new Error(e+".set accepts only positive integer values. Value was "+n);const o=t.dom;so(o)&&(o.style[e]=n+"px")},get:t,getOuter:t,aggregate:n,max:(e,t,o)=>{const r=n(e,o);return t>r?t-r:0}}})("height"),Qf=()=>yn(document),Jf=(e,t)=>e.view(t).fold(N([]),t=>{const n=e.owner(t),o=Jf(e,n);return[t].concat(o)});var eg=Object.freeze({__proto__:null,view:e=>{var t;return(e.dom===document?I.none():I.from(null===(t=e.dom.defaultView)||void 0===t?void 0:t.frameElement)).map(yn)},owner:e=>Nn(e)});const tg=e=>"textarea"===Ht(e),ng=(e,t)=>{const n=(e=>{const t=e.dom.ownerDocument,n=t.body,o=t.defaultView,r=t.documentElement;if(n===e.dom)return To(n.offsetLeft,n.offsetTop);const s=Oo(null==o?void 0:o.pageYOffset,r.scrollTop),a=Oo(null==o?void 0:o.pageXOffset,r.scrollLeft),i=Oo(r.clientTop,n.clientTop),l=Oo(r.clientLeft,n.clientLeft);return Bo(e).translate(a-l,s-i)})(e),o=(e=>Zf.get(e))(e);return{element:e,bottom:n.top+o,height:o,pos:n,cleanup:t}},og=(e,t,n,o)=>{ig(e,(r,s)=>sg(e,t,n,o),n)},rg=(e,t,n,o,r)=>{const s={elm:o.element.dom,alignToTop:r};((e,t)=>e.dispatch("ScrollIntoView",t).isDefaultPrevented())(e,s)||(n(e,t,Po(t).top,o,r),((e,t)=>{e.dispatch("AfterScrollIntoView",t)})(e,s))},sg=(e,t,n,o)=>{const r=yn(e.getBody()),s=yn(e.getDoc());r.dom.offsetWidth;const a=((e,t)=>{const n=((e,t)=>{const n=Mn(e);if(0===n.length||tg(e))return{element:e,offset:t};if(t<n.length&&!tg(n[t]))return{element:n[t],offset:0};{const o=n[n.length-1];return tg(o)?{element:e,offset:t}:"img"===Ht(o)?{element:o,offset:1}:Kt(o)?{element:o,offset:Ua(o).length}:{element:o,offset:Mn(o).length}}})(e,t),o=hn('<span data-mce-bogus="all" style="display: inline-block;">\ufeff</span>');return po(n.element,o),ng(o,()=>xo(o))})(yn(n.startContainer),n.startOffset);rg(e,s,t,a,o),a.cleanup()},ag=(e,t,n,o)=>{const r=yn(e.getDoc());rg(e,r,n,(e=>ng(yn(e),E))(t),o)},ig=(e,t,n)=>{const o=n.startContainer,r=n.startOffset,s=n.endContainer,a=n.endOffset;t(yn(o),yn(s));const i=e.dom.createRng();i.setStart(o,r),i.setEnd(s,a),e.selection.setRng(n)},lg=(e,t,n,o,r)=>{const s=t.pos;if(o)Do(s.left,s.top,r);else{const o=s.top-n+t.height;Do(-e.getBody().getBoundingClientRect().left,o,r)}},cg=(e,t,n,o,r,s)=>{const a=o+n,i=r.pos.top,l=r.bottom,c=l-i>=o;i<n?lg(e,r,o,!1!==s,t):i>a?lg(e,r,o,c?!1!==s:!0===s,t):l>a&&!c&&lg(e,r,o,!0===s,t)},dg=(e,t,n,o,r)=>{const s=Rn(t).dom.innerHeight;cg(e,t,n,s,o,r)},ug=(e,t,n,o,r)=>{const s=Rn(t).dom.innerHeight;cg(e,t,n,s,o,r);const a=(e=>{const t=Qf(),n=Po(t),o=((e,t)=>{const n=t.owner(e);return Jf(t,n)})(e,eg),r=Bo(e),s=G(o,(e,t)=>{const n=Bo(t);return{left:e.left+n.left,top:e.top+n.top}},{left:0,top:0});return To(s.left+r.left+n.left,s.top+r.top+n.top)})(o.element),i=Io(window);a.top<i.y?Lo(o.element,!1!==r):a.top>i.bottom&&Lo(o.element,!0===r)},mg=(e,t,n)=>og(e,dg,t,n),fg=(e,t,n)=>ag(e,t,dg,n),gg=(e,t,n)=>og(e,ug,t,n),pg=(e,t,n)=>ag(e,t,ug,n),hg=(e,t,n)=>{(e.inline?mg:gg)(e,t,n)},bg=(e,t=!1)=>e.dom.focus({preventScroll:t}),vg=e=>{const t=qn(e).dom;return e.dom===t.activeElement},yg=(e=Qf())=>I.from(e.dom.activeElement).map(yn),Cg=(e,t)=>{const n=Kt(t)?Ua(t).length:Mn(t).length+1;return e>n?n:e<0?0:e},wg=e=>Pf.range(e.start,Cg(e.soffset,e.start),e.finish,Cg(e.foffset,e.finish)),xg=(e,t)=>!Qo(t.dom)&&(_n(e,t)||En(e,t)),Sg=e=>t=>xg(e,t.start)&&xg(e,t.finish),Eg=e=>Pf.range(yn(e.startContainer),e.startOffset,yn(e.endContainer),e.endOffset),_g=e=>{const t=document.createRange();try{return t.setStart(e.start.dom,e.soffset),t.setEnd(e.finish.dom,e.foffset),I.some(t)}catch(e){return I.none()}},kg=e=>{const t=(e=>e.inline||Tt.browser.isFirefox())(e)?(n=yn(e.getBody()),(e=>{const t=e.getSelection();return(t&&0!==t.rangeCount?I.from(t.getRangeAt(0)):I.none()).map(Eg)})(Rn(n).dom).filter(Sg(n))):I.none();var n;e.bookmark=t.isSome()?t:e.bookmark},Ng=e=>(e.bookmark?e.bookmark:I.none()).bind(t=>{return n=yn(e.getBody()),o=t,I.from(o).filter(Sg(n)).map(wg);var n,o}).bind(_g),Rg={isEditorUIElement:e=>{const t=e.className.toString();return-1!==t.indexOf("tox-")||-1!==t.indexOf("mce-")}},Ag={setEditorTimeout:(e,t,n)=>((e,t)=>(x(t)||(t=0),setTimeout(e,t)))(()=>{e.removed||t()},n),setEditorInterval:(e,t,n)=>{const o=((e,t)=>(x(t)||(t=0),setInterval(e,t)))(()=>{e.removed?clearInterval(o):t()},n);return o}};let Tg;const Og=la.DOM,Bg=e=>{const t=e.classList;return void 0!==t&&(t.contains("tox-edit-area")||t.contains("tox-edit-area__iframe")||t.contains("mce-content-body"))},Pg=(e,t)=>{const n=Oc(e),o=Og.getParent(t,t=>(e=>Jo(e)&&Rg.isEditorUIElement(e))(t)||!!n&&e.dom.is(t,n));return null!==o},Dg=e=>{try{const t=qn(yn(e.getElement()));return yg(t).fold(()=>document.body,e=>e.dom)}catch(e){return document.body}},Lg=(e,t)=>{const n=t.editor;(e=>{const t=ya(()=>{kg(e)},0);e.on("init",()=>{e.inline&&((e,t)=>{const n=()=>{t.throttle()};la.DOM.bind(document,"mouseup",n),e.on("remove",()=>{la.DOM.unbind(document,"mouseup",n)})})(e,t),((e,t)=>{((e,t)=>{e.on("mouseup touchend",e=>{t.throttle()})})(e,t),e.on("keyup NodeChange AfterSetSelectionRange",t=>{(e=>"nodechange"===e.type&&e.selectionChange)(t)||kg(e)})})(e,t)}),e.on("remove",()=>{t.cancel()})})(n);const o=(e,t)=>{yd(e)&&!0!==e.inline&&t(yn(e.getContainer()),"tox-edit-focus")};n.on("focusin",()=>{const t=e.focusedEditor;Bg(Dg(n))&&o(n,un),t!==n&&(t&&t.dispatch("blur",{focusedEditor:n}),e.setActive(n),e.focusedEditor=n,n.dispatch("focus",{blurredEditor:t}),n.focus(!0))}),n.on("focusout",()=>{Ag.setEditorTimeout(n,()=>{const t=e.focusedEditor;Bg(Dg(n))&&t===n||o(n,fn),Pg(n,Dg(n))||t!==n||(n.dispatch("blur",{focusedEditor:null}),e.focusedEditor=null)})}),Tg||(Tg=t=>{const n=e.activeEditor;n&&Kn(t).each(t=>{const o=t;o.ownerDocument===document&&(o===document.body||Pg(n,o)||e.focusedEditor!==n||(n.dispatch("blur",{focusedEditor:null}),e.focusedEditor=null))})},Og.bind(document,"focusin",Tg))},Mg=(e,t)=>{e.focusedEditor===t.editor&&(e.focusedEditor=null),!e.activeEditor&&Tg&&(Og.unbind(document,"focusin",Tg),Tg=null)},Ig=(e,t)=>{((e,t)=>(e=>e.collapsed?I.from(Ci(e.startContainer,e.startOffset)).map(yn):I.none())(t).bind(t=>Wa(t)?I.some(t):_n(e,t)?I.none():I.some(e)))(yn(e.getBody()),t).bind(e=>Uu(e.dom)).fold(()=>{e.selection.normalize()},t=>e.selection.setRng(t.toRange()))},Fg=e=>{if(e.setActive)try{e.setActive()}catch(t){e.focus()}else e.focus()},zg=e=>e.inline?(e=>{const t=e.getBody();return t&&(n=yn(t),vg(n)||(o=n,yg(qn(o)).filter(e=>o.dom.contains(e.dom))).isSome());var n,o})(e):(e=>C(e.iframeElement)&&vg(yn(e.iframeElement)))(e),Ug=e=>zg(e)||(e=>{const t=qn(yn(e.getElement()));return yg(t).filter(t=>!Bg(t.dom)&&Pg(e,t.dom)).isSome()})(e),jg=e=>e.editorManager.setActive(e),Hg=(e,t)=>t.collapsed?e.isEditable(t.startContainer):e.isEditable(t.startContainer)&&e.isEditable(t.endContainer),$g=(e,t,n,o,r)=>{const s=n?t.startContainer:t.endContainer,a=n?t.startOffset:t.endOffset;return I.from(s).map(yn).map(e=>o&&t.collapsed?e:In(e,r(e,a)).getOr(e)).bind(e=>Wt(e)?I.some(e):An(e).filter(Wt)).map(e=>e.dom).getOr(e)},qg=(e,t,n=!1)=>$g(e,t,!0,n,(e,t)=>Math.min(Un(e),t)),Vg=(e,t,n=!1)=>$g(e,t,!1,n,(e,t)=>t>0?t-1:t),Wg=(e,t)=>{const n=e;for(;e&&lr(e)&&0===e.length;)e=t?e.nextSibling:e.previousSibling;return e||n},Kg=(e,t)=>q(t,t=>{const n=e.dispatch("GetSelectionRange",{range:t});return n.range!==t?n.range:t}),Yg={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11},Gg=(e,t,n)=>{const o=n?"lastChild":"firstChild",r=n?"prev":"next";if(e[o])return e[o];if(e!==t){let n=e[r];if(n)return n;for(let o=e.parent;o&&o!==t;o=o.parent)if(n=o[r],n)return n}},Xg=e=>{var t;const n=null!==(t=e.value)&&void 0!==t?t:"";if(!Yo(n))return!1;const o=e.parent;return!o||"span"===o.name&&!o.attr("style")||!/^[ ]+$/.test(n)},Zg=e=>{const t="a"===e.name&&!e.attr("href")&&e.attr("id");return e.attr("name")||e.attr("id")&&!e.firstChild||e.attr("data-mce-bookmark")||t};class Qg{static create(e,t){const n=new Qg(e,Yg[e]||1);return t&&pe(t,(e,t)=>{n.attr(t,e)}),n}constructor(e,t){this.name=e,this.type=t,1===t&&(this.attributes=[],this.attributes.map={})}replace(e){const t=this;return e.parent&&e.remove(),t.insert(e,t),t.remove(),t}attr(e,t){const n=this;if(!m(e))return C(e)&&pe(e,(e,t)=>{n.attr(t,e)}),n;const o=n.attributes;if(o){if(void 0!==t){if(null===t){if(e in o.map){delete o.map[e];let t=o.length;for(;t--;)if(o[t].name===e)return o.splice(t,1),n}return n}if(e in o.map){let n=o.length;for(;n--;)if(o[n].name===e){o[n].value=t;break}}else o.push({name:e,value:t});return o.map[e]=t,n}return o.map[e]}}clone(){const e=this,t=new Qg(e.name,e.type),n=e.attributes;if(n){const e=[];e.map={};for(let t=0,o=n.length;t<o;t++){const o=n[t];"id"!==o.name&&(e[e.length]={name:o.name,value:o.value},e.map[o.name]=o.value)}t.attributes=e}return t.value=e.value,t}wrap(e){const t=this;return t.parent&&(t.parent.insert(e,t),e.append(t)),t}unwrap(){const e=this;for(let t=e.firstChild;t;){const n=t.next;e.insert(t,e,!0),t=n}e.remove()}remove(){const e=this,t=e.parent,n=e.next,o=e.prev;return t&&(t.firstChild===e?(t.firstChild=n,n&&(n.prev=null)):o&&(o.next=n),t.lastChild===e?(t.lastChild=o,o&&(o.next=null)):n&&(n.prev=o),e.parent=e.next=e.prev=null),e}append(e){const t=this;e.parent&&e.remove();const n=t.lastChild;return n?(n.next=e,e.prev=n,t.lastChild=e):t.lastChild=t.firstChild=e,e.parent=t,e}insert(e,t,n){e.parent&&e.remove();const o=t.parent||this;return n?(t===o.firstChild?o.firstChild=e:t.prev&&(t.prev.next=e),e.prev=t.prev,e.next=t,t.prev=e):(t===o.lastChild?o.lastChild=e:t.next&&(t.next.prev=e),e.next=t.next,e.prev=t,t.next=e),e.parent=o,e}getAll(e){const t=this,n=[];for(let o=t.firstChild;o;o=Gg(o,t))o.name===e&&n.push(o);return n}children(){const e=[];for(let t=this.firstChild;t;t=t.next)e.push(t);return e}empty(){const e=this;if(e.firstChild){const t=[];for(let n=e.firstChild;n;n=Gg(n,e))t.push(n);let n=t.length;for(;n--;){const e=t[n];e.parent=e.firstChild=e.lastChild=e.next=e.prev=null}}return e.firstChild=e.lastChild=null,e}isEmpty(e,t={},n){var o;const r=this;let s=r.firstChild;if(Zg(r))return!1;if(s)do{if(1===s.type){if(s.attr("data-mce-bogus"))continue;if(e[s.name])return!1;if(Zg(s))return!1}if(8===s.type)return!1;if(3===s.type&&!Xg(s))return!1;if(3===s.type&&s.parent&&t[s.parent.name]&&Yo(null!==(o=s.value)&&void 0!==o?o:""))return!1;if(n&&n(s))return!1}while(s=Gg(s,r));return!0}walk(e){return Gg(this,null,e)}}const Jg=Pt.makeMap("NOSCRIPT STYLE SCRIPT XMP IFRAME NOEMBED NOFRAMES PLAINTEXT"," "),ep=e=>m(e.nodeValue)&&e.nodeValue.includes(Za),tp=e=>(0===e.length?"":`${q(e,e=>`[${e}]`).join(",")},`)+'[data-mce-bogus="all"]',np=e=>document.createTreeWalker(e,NodeFilter.SHOW_COMMENT,e=>ep(e)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP),op=e=>document.createTreeWalker(e,NodeFilter.SHOW_TEXT,e=>{if(ep(e)){const t=e.parentNode;return t&&Ee(Jg,t.nodeName)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}return NodeFilter.FILTER_SKIP}),rp=e=>null!==np(e).nextNode(),sp=e=>null!==op(e).nextNode(),ap=(e,t)=>null!==t.querySelector(tp(e)),ip=(e,t)=>{V(((e,t)=>t.querySelectorAll(tp(e)))(e,t),t=>{const n=yn(t);"all"===en(n,"data-mce-bogus")?xo(n):V(e,e=>{nn(n,e)&&on(n,e)})})},lp=e=>{let t=e.nextNode();for(;null!==t;)t.nodeValue=null,t=e.nextNode()},cp=_(lp,np),dp=_(lp,op),up=(e,t)=>{const n=[{condition:T(ap,t),action:T(ip,t)},{condition:rp,action:cp},{condition:sp,action:dp}];let o=e,r=!1;return V(n,({condition:t,action:n})=>{t(o)&&(r||(o=e.cloneNode(!0),r=!0),n(o))}),o},mp=e=>{const t=zo(e,"[data-mce-bogus]");V(t,e=>{"all"===en(e,"data-mce-bogus")?xo(e):Ha(e)?(po(e,vn(qo)),xo(e)):So(e)})},fp=e=>{const t=zo(e,"input");V(t,e=>{on(e,"name")})},gp=(e,t,n)=>{let o;return o="raw"===t.format?Pt.trim(Ja(up(n,e.serializer.getTempAttrs()).innerHTML)):"text"===t.format?((e,t)=>{const n=e.getDoc(),o=qn(yn(e.getBody())),r=bn("div",n);Qt(r,"data-mce-bogus","all"),lo(r,{position:"fixed",left:"-9999999px",top:"0"}),ko(r,t.innerHTML),mp(r),fp(r);const s=(e=>jn(e)?e:yn(Nn(e).dom.body))(o);vo(s,r);const a=Ja(r.dom.innerText);return xo(r),a})(e,n):"tree"===t.format?e.serializer.serialize(n,t):((e,t)=>{const n=ql(e),o=new RegExp(`^(<${n}[^>]*>(&nbsp;|&#160;|\\s|\xa0|<br \\/>|)<\\/${n}>[\r\n]*|<br \\/>[\r\n]*)$`);return t.replace(o,"")})(e,e.serializer.serialize(n,t)),"text"!==t.format&&!Ya(yn(n))&&m(o)?Pt.trim(o):o},pp=Pt.makeMap,hp=e=>{const t=[],n=(e=e||{}).indent,o=pp(e.indent_before||""),r=pp(e.indent_after||""),s=hs.getEncodeFunc(e.entity_encoding||"raw",e.entities),a="xhtml"!==e.element_format;return{start:(e,i,l)=>{if(n&&o[e]&&t.length>0){const e=t[t.length-1];e.length>0&&"\n"!==e&&t.push("\n")}if(t.push("<",e),i)for(let e=0,n=i.length;e<n;e++){const n=i[e];t.push(" ",n.name,'="',s(n.value,!0),'"')}if(t[t.length]=!l||a?">":" />",l&&n&&r[e]&&t.length>0){const e=t[t.length-1];e.length>0&&"\n"!==e&&t.push("\n")}},end:e=>{let o;t.push("</",e,">"),n&&r[e]&&t.length>0&&(o=t[t.length-1],o.length>0&&"\n"!==o&&t.push("\n"))},text:(e,n)=>{e.length>0&&(t[t.length]=n?e:s(e))},cdata:e=>{t.push("<![CDATA[",e,"]]>")},comment:e=>{t.push("\x3c!--",e,"--\x3e")},pi:(e,o)=>{o?t.push("<?",e," ",s(o),"?>"):t.push("<?",e,"?>"),n&&t.push("\n")},doctype:e=>{t.push("<!DOCTYPE",e,">",n?"\n":"")},reset:()=>{t.length=0},getContent:()=>t.join("").replace(/\n$/,"")}},bp=(e={},t=Ps())=>{const n=hp(e);return e.validate=!("validate"in e)||e.validate,{serialize:o=>{const r=e.validate,s={3:e=>{var t;n.text(null!==(t=e.value)&&void 0!==t?t:"",e.raw)},8:e=>{var t;n.comment(null!==(t=e.value)&&void 0!==t?t:"")},7:e=>{n.pi(e.name,e.value)},10:e=>{var t;n.doctype(null!==(t=e.value)&&void 0!==t?t:"")},4:e=>{var t;n.cdata(null!==(t=e.value)&&void 0!==t?t:"")},11:e=>{let t=e;if(t=t.firstChild)do{a(t)}while(t=t.next)}};n.reset();const a=e=>{var o;const i=s[e.type];if(i)i(e);else{const s=e.name,i=s in t.getVoidElements();let l=e.attributes;if(r&&l&&l.length>1){const n=[];n.map={};const o=t.getElementRule(e.name);if(o){for(let e=0,t=o.attributesOrder.length;e<t;e++){const t=o.attributesOrder[e];if(t in l.map){const e=l.map[t];n.map[t]=e,n.push({name:t,value:e})}}for(let e=0,t=l.length;e<t;e++){const t=l[e].name;if(!(t in n.map)){const e=l.map[t];n.map[t]=e,n.push({name:t,value:e})}}l=n}}if(n.start(s,l,i),Or(s))m(e.value)&&n.text(e.value,!0),n.end(s);else if(!i){let t=e.firstChild;if(t){"pre"!==s&&"textarea"!==s||3!==t.type||"\n"!==(null===(o=t.value)||void 0===o?void 0:o[0])||n.text("\n",!0);do{a(t)}while(t=t.next)}n.end(s)}}};return 1!==o.type||e.inner?3===o.type?s[3](o):s[11](o):a(o),n.getContent()}}},vp=new Set;V(["margin","margin-left","margin-right","margin-top","margin-bottom","padding","padding-left","padding-right","padding-top","padding-bottom","border","border-width","border-style","border-color","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","float","position","left","right","top","bottom","z-index","display","transform","width","max-width","min-width","height","max-height","min-height","overflow","overflow-x","overflow-y","text-overflow","vertical-align","transition","transition-delay","transition-duration","transition-property","transition-timing-function"],e=>{vp.add(e)});const yp=["font","text-decoration","text-emphasis"],Cp=(e,t)=>fe(e.parseStyle(e.getAttrib(t,"style"))),wp=(e,t,n)=>{const o=Cp(e,t),r=Cp(e,n),s=o=>{var r,s;const a=null!==(r=e.getStyle(t,o))&&void 0!==r?r:"",i=null!==(s=e.getStyle(n,o))&&void 0!==s?s:"";return Ge(a)&&Ge(i)&&a!==i};return $(o,e=>{const t=t=>$(t,t=>t===e);if(!t(r)&&t(yp)){const e=Y(r,e=>$(yp,t=>$e(e,t)));return $(e,s)}return s(e)})},xp=(e,t,n)=>I.from(n.container()).filter(lr).exists(o=>{const r=e?0:-1;return t(o.data.charAt(n.offset()+r))}),Sp=T(xp,!0,sm),Ep=T(xp,!1,sm),_p=e=>{const t=e.container();return lr(t)&&(0===t.data.length||Qa(t.data)&&cf.isBookmarkNode(t.parentNode))},kp=(e,t)=>n=>iu(e?0:-1,n).filter(t).isSome(),Np=e=>pr(e)&&"block"===co(yn(e),"display"),Rp=e=>br(e)&&!(e=>Jo(e)&&"all"===e.getAttribute("data-mce-bogus"))(e),Ap=kp(!0,Np),Tp=kp(!1,Np),Op=kp(!0,Cr),Bp=kp(!1,Cr),Pp=kp(!0,sr),Dp=kp(!1,sr),Lp=kp(!0,Rp),Mp=kp(!1,Rp),Ip=(e,t)=>((e,t,n)=>_n(t,e)?On(e,e=>n(e)||En(e,t)).slice(0,-1):[])(e,t,L),Fp=(e,t)=>[e].concat(Ip(e,t)),zp=(e,t,n)=>Mu(e,t,n,_p),Up=(e,t,n)=>Q(Fp(yn(t.container()),e),(e=>t=>e.isBlock(Ht(t)))(n)),jp=(e,t,n,o)=>zp(e,t.dom,n).forall(e=>Up(t,n,o).fold(()=>!au(e,n,t.dom),o=>!au(e,n,t.dom)&&_n(o,yn(e.container())))),Hp=(e,t,n,o)=>Up(t,n,o).fold(()=>zp(e,t.dom,n).forall(e=>!au(e,n,t.dom)),t=>zp(e,t.dom,n).isNone()),$p=T(Hp,!1),qp=T(Hp,!0),Vp=T(jp,!1),Wp=T(jp,!0),Kp=e=>hu(e).exists(Ha),Yp=(e,t,n,o)=>{const r=Y(Fp(yn(n.container()),t),e=>o.isBlock(Ht(e))),s=le(r).getOr(t);return Du(e,s.dom,n).filter(Kp)},Gp=(e,t,n)=>hu(t).exists(Ha)||Yp(!0,e,t,n).isSome(),Xp=(e,t,n)=>(e=>I.from(e.getNode(!0)).map(yn))(t).exists(Ha)||Yp(!1,e,t,n).isSome(),Zp=T(Yp,!1),Qp=T(Yp,!0),Jp=e=>Zi.isTextPosition(e)&&!e.isAtStart()&&!e.isAtEnd(),eh=(e,t,n)=>{const o=Y(Fp(yn(t.container()),e),e=>n.isBlock(Ht(e)));return le(o).getOr(e)},th=(e,t,n)=>Jp(t)?Ep(t):Ep(t)||zu(eh(e,t,n).dom,t).exists(Ep),nh=(e,t,n)=>Jp(t)?Sp(t):Sp(t)||Fu(eh(e,t,n).dom,t).exists(Sp),oh=e=>hu(e).bind(e=>Qn(e,Wt)).exists(e=>(e=>H(["pre","pre-wrap"],e))(co(e,"white-space"))),rh=(e,t)=>n=>{return o=new $o(n,e)[t](),C(o)&&br(o)&&Gd(o);var o},sh=(e,t,n)=>!oh(t)&&(((e,t,n)=>((e,t)=>zu(e.dom,t).isNone())(e,t)||((e,t)=>Fu(e.dom,t).isNone())(e,t)||$p(e,t,n)||qp(e,t,n)||Xp(e,t,n)||Gp(e,t,n))(e,t,n)||th(e,t,n)||nh(e,t,n)),ah=(e,t,n)=>!oh(t)&&($p(e,t,n)||Vp(e,t,n)||Xp(e,t,n)||th(e,t,n)||((e,t)=>{const n=zu(e.dom,t).getOr(t),o=rh(e.dom,"prev");return t.isAtStart()&&(o(t.container())||o(n.container()))})(e,t)),ih=(e,t,n)=>!oh(t)&&(qp(e,t,n)||Wp(e,t,n)||Gp(e,t,n)||nh(e,t,n)||((e,t)=>{const n=Fu(e.dom,t).getOr(t),o=rh(e.dom,"next");return t.isAtEnd()&&(o(t.container())||o(n.container()))})(e,t)),lh=(e,t,n)=>ah(e,t,n)||ih(e,(e=>{const t=e.container(),n=e.offset();return lr(t)&&n<t.data.length?Zi(t,n+1):e})(t),n),ch=(e,t)=>om(e.charAt(t)),dh=(e,t)=>sm(e.charAt(t)),uh=(e,t,n,o)=>{const r=t.data,s=Zi(t,0);return n||!ch(r,0)||lh(e,s,o)?!!(n&&dh(r,0)&&ah(e,s,o))&&(t.data=Vo+r.slice(1),!0):(t.data=" "+r.slice(1),!0)},mh=(e,t,n,o)=>{const r=t.data,s=Zi(t,r.length-1);return n||!ch(r,r.length-1)||lh(e,s,o)?!!(n&&dh(r,r.length-1)&&ih(e,s,o))&&(t.data=r.slice(0,-1)+Vo,!0):(t.data=r.slice(0,-1)+" ",!0)},fh=(e,t,n)=>{const o=t.container();if(!lr(o))return I.none();if((e=>{const t=e.container();return lr(t)&&He(t.data,Vo)})(t)){const r=uh(e,o,!1,n)||(e=>{const t=e.data,n=(e=>{const t=e.split("");return q(t,(e,n)=>om(e)&&n>0&&n<t.length-1&&am(t[n-1])&&am(t[n+1])?" ":e).join("")})(t);return n!==t&&(e.data=n,!0)})(o)||mh(e,o,!1,n);return It(r,t)}if(lh(e,t,n)){const r=uh(e,o,!0,n)||mh(e,o,!0,n);return It(r,t)}return I.none()},gh=(e,t,n,o)=>{if(0===n)return;const r=yn(e),s=Zn(r,e=>o.isBlock(Ht(e))).getOr(r),a=e.data.slice(t,t+n),i=t+n>=e.data.length&&ih(s,Zi(e,e.data.length),o),l=0===t&&ah(s,Zi(e,0),o);e.replaceData(t,n,Xo(a,4,l,i))},ph=(e,t,n)=>{const o=e.data.slice(t),r=o.length-Ke(o).length;gh(e,t,r,n)},hh=(e,t,n)=>{const o=e.data.slice(0,t),r=o.length-Ye(o).length;gh(e,t-r,r,n)},bh=(e,t,n,o,r=!0)=>{const s=Ye(e.data).length,a=r?e:t,i=r?t:e;return r?a.appendData(i.data):a.insertData(0,i.data),xo(yn(i)),o&&ph(a,s,n),a},vh=(e,t)=>((e,t)=>{const n=e.container(),o=e.offset();return!Zi.isTextPosition(e)&&n===t.parentNode&&o>Zi.before(t).offset()})(t,e)?Zi(t.container(),t.offset()-1):t,yh=e=>{return Oi(e.previousSibling)?I.some((t=e.previousSibling,lr(t)?Zi(t,t.data.length):Zi.after(t))):e.previousSibling?ju(e.previousSibling):I.none();var t},Ch=e=>{return Oi(e.nextSibling)?I.some((t=e.nextSibling,lr(t)?Zi(t,0):Zi.before(t))):e.nextSibling?Uu(e.nextSibling):I.none();var t},wh=(e,t,n)=>((e,t,n)=>e?((e,t)=>Ch(t).orThunk(()=>yh(t)).orThunk(()=>((e,t)=>Fu(e,Zi.after(t)).orThunk(()=>zu(e,Zi.before(t))))(e,t)))(t,n):((e,t)=>yh(t).orThunk(()=>Ch(t)).orThunk(()=>((e,t)=>I.from(t.previousSibling?t.previousSibling:t.parentNode).bind(t=>zu(e,Zi.before(t))).orThunk(()=>Fu(e,Zi.after(t))))(e,t)))(t,n))(e,t,n).map(T(vh,n)),xh=(e,t,n)=>{n.fold(()=>{e.focus()},n=>{e.selection.setRng(n.toRange(),t)})},Sh=(e,t)=>t&&Ee(e.schema.getBlockElements(),Ht(t)),Eh=(e,t,n,o=!0,r=!1)=>{const s=wh(t,e.getBody(),n.dom),a=Zn(n,T(Sh,e),(i=e.getBody(),e=>e.dom===i));var i;const l=((e,t,n,o)=>{const r=Bn(e).filter(Kt),s=Pn(e).filter(Kt);return xo(e),(a=r,i=s,l=t,c=(e,t,r)=>{const s=e.dom,a=t.dom,i=s.data.length;return bh(s,a,n,o),r.container()===a?Zi(s,i):r},a.isSome()&&i.isSome()&&l.isSome()?I.some(c(a.getOrDie(),i.getOrDie(),l.getOrDie())):I.none()).orThunk(()=>(o&&(r.each(e=>hh(e.dom,e.dom.length,n)),s.each(e=>ph(e.dom,0,n))),t));var a,i,l,c})(n,s,e.schema,((e,t)=>Ee(e.schema.getTextInlineElements(),Ht(t)))(e,n));e.dom.isEmpty(e.getBody())?(e.setContent(""),e.selection.setCursorLocation()):a.bind(t=>((e,t,n)=>{if(Ar(e,t)){const e=hn('<br data-mce-bogus="1">');return n?V(Mn(t),e=>{zm(e)||xo(e)}):wo(t),vo(t,e),I.some(Zi.before(e.dom))}return I.none()})(e.schema,t,r)).fold(()=>{o&&xh(e,t,l)},n=>{o&&xh(e,t,I.some(n))})},_h=/[\u0591-\u07FF\uFB1D-\uFDFF\uFE70-\uFEFC]/,kh=(e,t)=>xn(yn(t),hc(e))&&!Wr(e.schema,t)&&e.dom.isEditable(t),Nh=e=>{var t;return"rtl"===la.DOM.getStyle(e,"direction",!0)||(e=>_h.test(e))(null!==(t=e.textContent)&&void 0!==t?t:"")},Rh=(e,t,n)=>{const o=((e,t,n)=>Y(la.DOM.getParents(n.container(),"*",t),e))(e,t,n);return I.from(o[o.length-1])},Ah=(e,t)=>{const n=t.container(),o=t.offset();return e?oi(n)?lr(n.nextSibling)?Zi(n.nextSibling,0):Zi.after(n):ai(t)?Zi(n,o+1):t:oi(n)?lr(n.previousSibling)?Zi(n.previousSibling,n.previousSibling.data.length):Zi.before(n):ii(t)?Zi(n,o-1):t},Th=T(Ah,!0),Oh=T(Ah,!1),Bh=(e,t)=>{const n=e=>e.stopImmediatePropagation();e.on("beforeinput input",n,!0),e.getDoc().execCommand(t),e.off("beforeinput input",n)},Ph=e=>Bh(e,"Delete"),Dh=e=>$a(e)||Va(e),Lh=(e,t)=>_n(e,t)?Qn(t,Dh,(e=>t=>Dt(An(t),e,En))(e)):I.none(),Mh=(e,t=!0)=>{e.dom.isEmpty(e.getBody())&&e.setContent("",{no_selection:!t})},Ih=(e,t,n)=>Mt(Uu(n),ju(n),(o,r)=>{const s=Ah(!0,o),a=Ah(!1,r),i=Ah(!1,t);return e?Fu(n,i).exists(e=>e.isEqual(a)&&t.isEqual(s)):zu(n,i).exists(e=>e.isEqual(s)&&t.isEqual(a))}).getOr(!0),Fh=e=>{var t;return(8===$t(t=e)||"#comment"===Ht(t)?Bn(e):zn(e)).bind(Fh).orThunk(()=>I.some(e))},zh=(e,t,n,o=!0)=>{var r;t.deleteContents();const s=Fh(n).getOr(n),a=yn(null!==(r=e.dom.getParent(s.dom,e.dom.isBlock))&&void 0!==r?r:n.dom);if(a.dom===e.getBody()?Mh(e,o):Ar(e.schema,a,{checkRootAsContent:!1})&&(Xa(a),o&&e.selection.setCursorLocation(a.dom,0)),!En(n,a)){const t=Dt(An(a),n)?[]:An(i=a).map(Mn).map(e=>Y(e,e=>!En(i,e))).getOr([]);V(t.concat(Mn(n)),t=>{En(t,a)||_n(t,a)||!Ar(e.schema,t)||xo(t)})}var i},Uh=e=>zo(e,"td,th"),jh=(e,t)=>dm(yn(e),t),Hh=(e,t)=>({start:e,end:t}),$h=xl([{singleCellTable:["rng","cell"]},{fullTable:["table"]},{partialTable:["cells","outsideDetails"]},{multiTable:["startTableCells","endTableCells","betweenRng"]}]),qh=(e,t)=>no(yn(e),"td,th",t),Vh=e=>!En(e.start,e.end),Wh=(e,t)=>dm(e.start,t).bind(n=>dm(e.end,t).bind(e=>It(En(n,e),n))),Kh=e=>t=>Wh(t,e).map(e=>((e,t,n)=>({rng:e,table:t,cells:n}))(t,e,Uh(e))),Yh=(e,t,n,o)=>{if(n.collapsed||!e.forall(Vh))return I.none();if(t.isSameTable){const t=e.bind(Kh(o));return I.some({start:t,end:t})}{const e=qh(n.startContainer,o),t=qh(n.endContainer,o),r=e.bind((e=>t=>dm(t,e).bind(e=>ce(Uh(e)).map(e=>Hh(t,e))))(o)).bind(Kh(o)),s=t.bind((e=>t=>dm(t,e).bind(e=>le(Uh(e)).map(e=>Hh(e,t))))(o)).bind(Kh(o));return I.some({start:r,end:s})}},Gh=(e,t)=>J(e,e=>En(e,t)),Xh=e=>Mt(Gh(e.cells,e.rng.start),Gh(e.cells,e.rng.end),(t,n)=>e.cells.slice(t,n+1)),Zh=(e,t)=>{const{startTable:n,endTable:o}=t,r=e.cloneRange();return n.each(e=>r.setStartAfter(e.dom)),o.each(e=>r.setEndBefore(e.dom)),r},Qh=(e,t)=>{const n=(e=>t=>En(e,t))(e),o=((e,t)=>{const n=qh(e.startContainer,t),o=qh(e.endContainer,t);return Mt(n,o,Hh)})(t,n),r=((e,t)=>{const n=jh(e.startContainer,t),o=jh(e.endContainer,t),r=n.isSome(),s=o.isSome(),a=Mt(n,o,En).getOr(!1);return(e=>Mt(e.startTable,e.endTable,(t,n)=>{const o=Ho(t,e=>En(e,n)),r=Ho(n,e=>En(e,t));return o||r?{...e,startTable:o?I.none():e.startTable,endTable:r?I.none():e.endTable,isSameTable:!1,isMultiTable:!1}:e}).getOr(e))({startTable:n,endTable:o,isStartInTable:r,isEndInTable:s,isSameTable:a,isMultiTable:!a&&r&&s})})(t,n);return((e,t,n)=>e.exists(e=>((e,t)=>!Vh(e)&&Wh(e,t).exists(e=>{const t=e.dom.rows;return 1===t.length&&1===t[0].cells.length}))(e,n)&&fm(e.start,t)))(o,t,n)?o.map(e=>$h.singleCellTable(t,e.start)):r.isMultiTable?((e,t,n,o)=>Yh(e,t,n,o).bind(({start:e,end:o})=>{const r=e.bind(Xh).getOr([]),s=o.bind(Xh).getOr([]);if(r.length>0&&s.length>0){const e=Zh(n,t);return I.some($h.multiTable(r,s,e))}return I.none()}))(o,r,t,n):((e,t,n,o)=>Yh(e,t,n,o).bind(({start:e,end:t})=>e.or(t)).bind(e=>{const{isSameTable:o}=t,r=Xh(e).getOr([]);if(o&&e.cells.length===r.length)return I.some($h.fullTable(e.table));if(r.length>0){if(o)return I.some($h.partialTable(r,I.none()));{const e=Zh(n,t);return I.some($h.partialTable(r,I.some({...t,rng:e})))}}return I.none()}))(o,r,t,n)},Jh=e=>V(e,e=>{on(e,"contenteditable"),Xa(e)}),eb=(e,t,n,o)=>{const r=n.cloneRange();o?(r.setStart(n.startContainer,n.startOffset),r.setEndAfter(t.dom.lastChild)):(r.setStartBefore(t.dom.firstChild),r.setEnd(n.endContainer,n.endOffset)),rb(e,r,t,!1).each(e=>e())},tb=e=>{const t=cm(e),n=yn(e.selection.getNode());vr(n.dom)&&Ar(e.schema,n)?e.selection.setCursorLocation(n.dom,0):e.selection.collapse(!0),t.length>1&&$(t,e=>En(e,n))&&Qt(n,"data-mce-selected","1")},nb=(e,t,n)=>I.some(()=>{const o=e.selection.getRng(),r=n.bind(({rng:n,isStartInTable:r})=>{const s=((e,t)=>I.from(e.dom.getParent(t,e.dom.isBlock)).map(yn))(e,r?n.endContainer:n.startContainer);n.deleteContents(),((e,t,n)=>{n.each(n=>{t?xo(n):(Xa(n),e.selection.setCursorLocation(n.dom,0))})})(e,r,s.filter(T(Ar,e.schema)));const a=r?t[0]:t[t.length-1];return eb(e,a,o,r),Ar(e.schema,a)?I.none():I.some(r?t.slice(1):t.slice(0,-1))}).getOr(t);Jh(r),tb(e)}),ob=(e,t,n,o)=>I.some(()=>{const r=e.selection.getRng(),s=t[0],a=n[n.length-1];eb(e,s,r,!0),eb(e,a,r,!1);const i=Ar(e.schema,s)?t:t.slice(1),l=Ar(e.schema,a)?n:n.slice(0,-1);Jh(i.concat(l)),o.deleteContents(),tb(e)}),rb=(e,t,n,o=!0)=>I.some(()=>{zh(e,t,n,o)}),sb=(e,t)=>I.some(()=>Eh(e,!1,t)),ab=(e,t)=>Q(Fp(t,e),Ka),ib=(e,t)=>Q(Fp(t,e),Xt("caption")),lb=(e,t)=>I.some(()=>{Xa(t),e.selection.setCursorLocation(t.dom,0)}),cb=(e,t)=>e?Pp(t):Dp(t),db=(e,t,n)=>{const o=yn(e.getBody());return ib(o,n).fold(()=>((e,t,n,o)=>{const r=Zi.fromRangeStart(e.selection.getRng());return ab(n,o).bind(o=>Ar(e.schema,o,{checkRootAsContent:!1})?lb(e,o):((e,t,n,o,r)=>Lu(n,e.getBody(),r).bind(e=>ab(t,yn(e.getNode())).bind(e=>En(e,o)?I.none():I.some(E))))(e,n,t,o,r))})(e,t,o,n).orThunk(()=>It(((e,t)=>{const n=Zi.fromRangeStart(e.selection.getRng());return cb(t,n)||Du(t,e.getBody(),n).exists(e=>cb(t,e))})(e,t),E)),n=>((e,t,n,o)=>{const r=Zi.fromRangeStart(e.selection.getRng());return Ar(e.schema,o)?lb(e,o):((e,t,n,o,r)=>Lu(n,e.getBody(),r).fold(()=>I.some(E),s=>((e,t,n,o)=>Uu(e.dom).bind(r=>ju(e.dom).map(e=>t?n.isEqual(r)&&o.isEqual(e):n.isEqual(e)&&o.isEqual(r))).getOr(!0))(o,n,r,s)?((e,t)=>lb(e,t))(e,o):((e,t,n)=>ib(e,yn(n.getNode())).fold(()=>I.some(E),e=>It(!En(e,t),E)))(t,o,s)))(e,n,t,o,r)})(e,t,o,n))},ub=(e,t)=>{const n=yn(e.selection.getStart(!0)),o=cm(e);return e.selection.isCollapsed()&&0===o.length?db(e,t,n):((e,t,n)=>{const o=yn(e.getBody()),r=e.selection.getRng();return 0!==n.length?nb(e,n,I.none()):((e,t,n,o)=>ib(t,o).fold(()=>((e,t,n)=>Qh(t,n).bind(t=>t.fold(T(rb,e),T(sb,e),T(nb,e),T(ob,e))))(e,t,n),t=>((e,t)=>lb(e,t))(e,t)))(e,o,r,t)})(e,n,o)},mb=(e,t)=>{let n=t;for(;n&&n!==e;){if(hr(n)||br(n))return n;n=n.parentNode}return null},fb=["data-ephox-","data-mce-","data-alloy-","data-snooker-","_"],gb=Pt.each,pb=e=>{const t=e.dom,n=new Set(e.serializer.getTempAttrs()),o=e=>$(fb,t=>$e(e,t))||n.has(e);return{compare:(e,n)=>{if(e.nodeName!==n.nodeName||e.nodeType!==n.nodeType)return!1;const r=e=>{const n={};return gb(t.getAttribs(e),r=>{const s=r.nodeName.toLowerCase();"style"===s||o(s)||(n[s]=t.getAttrib(e,s))}),n},s=(e,t)=>{for(const n in e)if(Ee(e,n)){const o=t[n];if(v(o))return!1;if(e[n]!==o)return!1;delete t[n]}for(const e in t)if(Ee(t,e))return!1;return!0};if(Jo(e)&&Jo(n)){if(!s(r(e),r(n)))return!1;if(!s(t.parseStyle(t.getAttrib(e,"style")),t.parseStyle(t.getAttrib(n,"style"))))return!1}return!nm(e)&&!nm(n)},isAttributeInternal:o}},hb=e=>["h1","h2","h3","h4","h5","h6"].includes(e.name),bb=(e,t,n,o)=>{const r=n.name;for(let t=0,s=e.length;t<s;t++){const s=e[t];if(s.name===r){const e=o.nodes[r];e?e.nodes.push(n):o.nodes[r]={filter:s,nodes:[n]}}}if(n.attributes)for(let e=0,r=t.length;e<r;e++){const r=t[e],s=r.name;if(s in n.attributes.map){const e=o.attributes[s];e?e.nodes.push(n):o.attributes[s]={filter:r,nodes:[n]}}}},vb=(e,t)=>{const n=(e,n)=>{pe(e,e=>{const o=de(e.nodes);V(e.filter.callbacks,r=>{for(let t=o.length-1;t>=0;t--){const r=o[t];(n?void 0!==r.attr(e.filter.name):r.name===e.filter.name)&&!y(r.parent)||o.splice(t,1)}o.length>0&&r(o,e.filter.name,t)})})};n(e.nodes,!1),n(e.attributes,!0)},yb=(e,t,n,o={})=>{const r=((e,t,n)=>{const o={nodes:{},attributes:{}};return n.firstChild&&((e,t)=>{let n=e;for(;n=n.walk();)t(n)})(n,n=>{bb(e,t,n,o)}),o})(e,t,n);vb(r,o)},Cb=(e,t,n,o)=>{if((e.pad_empty_with_br||t.insert)&&n(o)){const e=new Qg("br",1);t.insert&&e.attr("data-mce-bogus","1"),o.empty().append(e)}else o.empty().append(new Qg("#text",3)).value=Vo},wb=(e,t)=>{const n=null==e?void 0:e.firstChild;return C(n)&&n===e.lastChild&&n.name===t},xb=(e,t,n,o)=>o.isEmpty(t,n,t=>((e,t)=>{const n=e.getElementRule(t.name);return!0===(null==n?void 0:n.paddEmpty)})(e,t)),Sb=e=>{let t;for(let n=e;n;n=n.parent){const e=n.attr("contenteditable");if("false"===e)break;"true"===e&&(t=n)}return I.from(t)},Eb=(e,t,n=e.parent)=>{if(t.getSpecialElements()[e.name])e.empty().remove();else{const o=e.children();for(const e of o)n&&!t.isValidChild(n.name,e.name)&&Eb(e,t,n);e.unwrap()}},_b=(e,t,n,o=E)=>{const r=t.getTextBlockElements(),s=t.getNonEmptyElements(),a=t.getWhitespaceElements(),i=Pt.makeMap("tr,td,th,tbody,thead,tfoot,table,summary"),l=new Set,c=e=>e!==n&&!i[e.name];for(let n=0;n<e.length;n++){const i=e[n];let d,u,m;if(!i.parent||l.has(i))continue;if(r[i.name]&&"li"===i.parent.name){let e=i.next;for(;e&&r[e.name];)e.name="li",l.add(e),i.parent.insert(e,i.parent),e=e.next;i.unwrap();continue}const f=[i];for(d=i.parent;d&&!t.isValidChild(d.name,i.name)&&c(d);d=d.parent)f.push(d);if(d&&f.length>1)if(kb(t,i,d))Eb(i,t);else{f.reverse(),u=f[0].clone(),o(u);let e=u;for(let n=0;n<f.length-1;n++){t.isValidChild(e.name,f[n].name)&&n>0?(m=f[n].clone(),o(m),e.append(m)):m=e;for(let e=f[n].firstChild;e&&e!==f[n+1];){const t=e.next;m.append(e),e=t}e=m}xb(t,s,a,u)?d.insert(i,f[0],!0):(d.insert(u,f[0],!0),d.insert(i,u)),d=f[0],(xb(t,s,a,d)||wb(d,"br"))&&d.empty().remove()}else if(i.parent){if("li"===i.name){let e=i.prev;if(e&&("ul"===e.name||"ol"===e.name)){e.append(i);continue}if(e=i.next,e&&("ul"===e.name||"ol"===e.name)&&e.firstChild){e.insert(i,e.firstChild,!0);continue}const t=new Qg("ul",1);o(t),i.wrap(t);continue}if(t.isValidChild(i.parent.name,"div")&&t.isValidChild("div",i.name)){const e=new Qg("div",1);o(e),i.wrap(e)}else Eb(i,t)}}},kb=(e,t,n=t.parent)=>!(!n||(!e.children[t.name]||e.isValidChild(n.name,t.name))&&("a"!==t.name||!(e=>{let t=e;for(;t;){if("a"===t.name)return!0;t=t.parent}return!1})(n))&&(!(e=>"summary"===e.name)(n)||!hb(t)||(null==n?void 0:n.firstChild)===t&&(null==n?void 0:n.lastChild)===t)),Nb=e=>e.collapsed?e:(e=>{const t=Zi.fromRangeStart(e),n=Zi.fromRangeEnd(e),o=e.commonAncestorContainer;return Du(!1,o,n).map(r=>!au(t,n,o)&&au(t,r,o)?((e,t,n,o)=>{const r=document.createRange();return r.setStart(e,t),r.setEnd(n,o),r})(t.container(),t.offset(),r.container(),r.offset()):e).getOr(e)})(e),Rb=(e,t)=>{let n=t.firstChild,o=t.lastChild;return n&&"meta"===n.name&&(n=n.next),o&&"mce_marker"===o.attr("id")&&(o=o.prev),((e,t)=>{const n=e.getNonEmptyElements();return C(t)&&(t.isEmpty(n)||((e,t)=>e.getBlockElements()[t.name]&&(e=>C(e.firstChild)&&e.firstChild===e.lastChild)(t)&&(e=>"br"===e.name||e.value===Vo)(t.firstChild))(e,t))})(e,o)&&(o=null==o?void 0:o.prev),!(!n||n!==o||"ul"!==n.name&&"ol"!==n.name)},Ab=e=>{return e.length>0&&(!(n=e[e.length-1]).firstChild||C(null==(t=n)?void 0:t.firstChild)&&t.firstChild===t.lastChild&&(e=>e.data===Vo||gr(e))(t.firstChild))?e.slice(0,-1):e;var t,n},Tb=(e,t)=>{const n=e.getParent(t,e.isBlock);return n&&"LI"===n.nodeName?n:null},Ob=(e,t)=>{const n=Zi.after(e),o=Tu(t).prev(n);return o?o.toRange():null},Bb=(e,t,n,o)=>{const r=((e,t,n)=>{const o=t.serialize(n);return(e=>{var t,n;const o=e.firstChild,r=e.lastChild;return o&&"META"===o.nodeName&&(null===(t=o.parentNode)||void 0===t||t.removeChild(o)),r&&"mce_marker"===r.id&&(null===(n=r.parentNode)||void 0===n||n.removeChild(r)),e})(e.createFragment(o))})(t,e,o),s=Tb(t,n.startContainer),a=Ab((i=r.firstChild,Y(null!==(l=null==i?void 0:i.childNodes)&&void 0!==l?l:[],e=>"LI"===e.nodeName)));var i,l;const c=t.getRoot(),d=e=>{const o=Zi.fromRangeStart(n),r=Tu(t.getRoot()),a=1===e?r.prev(o):r.next(o),i=null==a?void 0:a.getNode();return!i||Tb(t,i)!==s};return s?d(1)?((e,t,n)=>{const o=e.parentNode;return o&&Pt.each(t,t=>{o.insertBefore(t,e)}),((e,t)=>{const n=Zi.before(e),o=Tu(t).next(n);return o?o.toRange():null})(e,n)})(s,a,c):d(2)?((e,t,n,o)=>(o.insertAfter(t.reverse(),e),Ob(t[0],n)))(s,a,c,t):((e,t,n,o)=>{const r=((e,t)=>{const n=t.cloneRange(),o=t.cloneRange();return n.setStartBefore(e),o.setEndAfter(e),[n.cloneContents(),o.cloneContents()]})(e,o),s=e.parentNode;return s&&(s.insertBefore(r[0],e),Pt.each(t,t=>{s.insertBefore(t,e)}),s.insertBefore(r[1],e),s.removeChild(e)),Ob(t[t.length-1],n)})(s,a,c,n):null},Pb=["pre"],Db=vr,Lb=(e,t,n)=>{var o,r;const s=e.selection,a=e.dom,i=e.parser,l=n.merge,c=bp({validate:!0},e.schema),d='<span id="mce_marker" data-mce-type="bookmark">&#xFEFF;</span>';n.preserve_zwsp||(t=Ja(t)),-1===t.indexOf("{$caret}")&&(t+="{$caret}"),t=t.replace(/\{\$caret\}/,d);let u=s.getRng();const m=u.startContainer,f=e.getBody();m===f&&s.isCollapsed()&&a.isBlock(f.firstChild)&&((e,t)=>C(t)&&!e.schema.getVoidElements()[t.nodeName])(e,f.firstChild)&&a.isEmpty(f.firstChild)&&(u=a.createRng(),u.setStart(f.firstChild,0),u.setEnd(f.firstChild,0),s.setRng(u)),s.isCollapsed()||(e=>{const t=e.dom,n=Nb(e.selection.getRng());e.selection.setRng(n);const o=t.getParent(n.startContainer,Db);((e,t,n)=>!!C(n)&&n===e.getParent(t.endContainer,Db)&&fm(yn(n),t))(t,n,o)?rb(e,n,yn(o)):n.startContainer===n.endContainer&&n.endOffset-n.startOffset===1&&lr(n.startContainer.childNodes[n.startOffset])?n.deleteContents():e.getDoc().execCommand("Delete",!1)})(e);const g=s.getNode(),p={context:g.nodeName.toLowerCase(),data:n.data,insert:!0},h=i.parse(t,p);if(!0===n.paste&&Rb(e.schema,h)&&((e,t)=>!!Tb(e,t))(a,g))return u=Bb(c,a,s.getRng(),h),u&&s.setRng(u),t;!0===n.paste&&((e,t,n,o)=>{var r;const s=t.firstChild,a=t.lastChild,i=s===("bookmark"===a.attr("data-mce-type")?a.prev:a),l=H(Pb,s.name);if(i&&l){const t="false"!==s.attr("contenteditable"),a=(null===(r=e.getParent(n,e.isBlock))||void 0===r?void 0:r.nodeName.toLowerCase())===s.name,i=I.from(mb(o,n)).forall(hr);return t&&a&&i}return!1})(a,h,g,e.getBody())&&(null===(o=h.firstChild)||void 0===o||o.unwrap()),(e=>{let t=e;for(;t=t.walk();)1===t.type&&t.attr("data-mce-fragment","1")})(h);let b=h.lastChild;if(b&&"mce_marker"===b.attr("id")){const t=b;for(b=b.prev;b;b=b.walk(!0))if(3===b.type||!a.isBlock(b.name)){b.parent&&e.schema.isValidChild(b.parent.name,"span")&&b.parent.insert(t,b,"br"===b.name);break}}if(e._selectionOverrides.showBlockCaretContainer(g),p.invalid||((e,t,n)=>{var o;return $(n.children(),hb)&&"SUMMARY"===(null===(o=e.getParent(t,e.isBlock))||void 0===o?void 0:o.nodeName)})(a,g,h)){e.selection.setContent(d);let n,o=s.getNode();const l=e.getBody();for(mr(o)?o=n=l:n=o;n&&n!==l;)o=n,n=n.parentNode;t=o===l?l.innerHTML:a.getOuterHTML(o);const u=i.parse(t),m=(e=>{for(let t=e;t;t=t.walk())if("mce_marker"===t.attr("id"))return I.some(t);return I.none()})(u),f=m.bind(Sb).getOr(u);m.each(e=>e.replace(h));const g=h.children(),p=null!==(r=h.parent)&&void 0!==r?r:u;h.unwrap();const b=Y(g,t=>kb(e.schema,t,p));_b(b,e.schema,f),yb(i.getNodeFilters(),i.getAttributeFilters(),u),t=c.serialize(u),o===l?a.setHTML(l,t):a.setOuterHTML(o,t)}else t=c.serialize(h),((e,t,n)=>{var o;if("all"===n.getAttribute("data-mce-bogus"))null===(o=n.parentNode)||void 0===o||o.insertBefore(e.dom.createFragment(t),n);else{const o=n.firstChild,r=n.lastChild;!o||o===r&&"BR"===o.nodeName?e.dom.setHTML(n,t):e.selection.setContent(t,{no_events:!0})}})(e,t,g);var v;return((e,t)=>{const n=e.schema.getTextInlineElements(),o=e.dom;if(t){const t=e.getBody(),r=pb(e);Pt.each(o.select("*[data-mce-fragment]"),e=>{if(C(n[e.nodeName.toLowerCase()])&&((e,t)=>ne(Cp(e,t),e=>!(e=>vp.has(e))(e)))(o,e))for(let n=e.parentElement;C(n)&&n!==t&&!wp(o,e,n);n=n.parentElement)if(r.compare(n,e)){o.remove(e,!0);break}})}})(e,l),((e,t)=>{var n,o,r;let s;const a=e.dom,i=e.selection;if(!t)return;i.scrollIntoView(t);const l=mb(e.getBody(),t);if(l&&"false"===a.getContentEditable(l))return a.remove(t),void i.select(l);let c=a.createRng();const d=t.previousSibling;if(lr(d)){c.setStart(d,null!==(o=null===(n=d.nodeValue)||void 0===n?void 0:n.length)&&void 0!==o?o:0);const e=t.nextSibling;lr(e)&&(d.appendData(e.data),null===(r=e.parentNode)||void 0===r||r.removeChild(e))}else c.setStartBefore(t),c.setEndBefore(t);const u=a.getParent(t,a.isBlock);if(a.remove(t),u&&a.isEmpty(u)){const t=Db(u);wo(yn(u)),c.setStart(u,0),c.setEnd(u,0),t||(e=>!!e.getAttribute("data-mce-fragment"))(u)||!(s=(t=>{let n=Zi.fromRangeStart(t);return n=Tu(e.getBody()).next(n),null==n?void 0:n.toRange()})(c))?a.add(u,a.create("br",t?{}:{"data-mce-bogus":"1"})):(c=s,a.remove(u))}i.setRng(c)})(e,a.get("mce_marker")),v=e.getBody(),Pt.each(v.getElementsByTagName("*"),e=>{e.removeAttribute("data-mce-fragment")}),((e,t,n)=>{I.from(e.getParent(t,"td,th")).map(yn).each(e=>((e,t)=>{zn(e).each(n=>{Bn(n).each(o=>{t.isBlock(Ht(e))&&Ha(n)&&t.isBlock(Ht(o))&&xo(n)})})})(e,n))})(a,s.getStart(),e.schema),((e,t,n)=>{const o=On(yn(n),e=>En(e,yn(t)));ie(o,o.length-2).filter(Wt).fold(()=>jr(e,t),t=>jr(e,t.dom))})(e.schema,e.getBody(),s.getStart()),t},Mb=e=>e instanceof Qg,Ib=(e,t,n)=>{e.dom.setHTML(e.getBody(),t),!0!==n&&(e=>{zg(e)&&Uu(e.getBody()).each(t=>{const n=t.getNode(),o=sr(n)?Uu(n).getOr(t):t;e.selection.setRng(o.toRange())})})(e)},Fb=e=>w(e)?e:L,zb=(e,t,n)=>{const o=t(e),r=Fb(n);return o.orThunk(()=>r(e)?I.none():((e,t,n)=>{let o=e.dom;const r=Fb(n);for(;o.parentNode;){o=o.parentNode;const e=yn(o),n=t(e);if(n.isSome())return n;if(r(e))break}return I.none()})(e,t,r))},Ub=Rm,jb=(e,t,n)=>{const o=e.formatter.get(n);if(o)for(let n=0;n<o.length;n++){const r=o[n];if(Lm(r)&&!1===r.inherit&&e.dom.is(t,r.selector))return!0}return!1},Hb=(e,t,n,o,r)=>{const s=e.dom.getRoot();if(t===s)return!1;const a=e.dom.getParent(t,t=>!!jb(e,t,n)||t.parentNode===s||!!Vb(e,t,n,o,!0));return!!Vb(e,a,n,o,r)},$b=(e,t,n)=>!(!Mm(n)||!Ub(t,n.inline))||!(!Dm(n)||!Ub(t,n.block))||!!Lm(n)&&Jo(t)&&e.is(t,n.selector),qb=(e,t,n,o,r,s)=>{const a=n[o],i="attributes"===o;if(w(n.onmatch))return n.onmatch(t,n,o);if(a)if(Ne(a)){for(let n=0;n<a.length;n++)if(i?e.getAttrib(t,a[n]):Tm(e,t,a[n]))return!0}else for(const o in a)if(Ee(a,o)){const l=i?e.getAttrib(t,o):Tm(e,t,o),c=Nm(a[o],s),d=y(l)||Xe(l);if(d&&y(c))continue;if(r&&d&&!n.exact)return!1;if((!r||n.exact)&&!Ub(l,Am(c,o)))return!1}return!0},Vb=(e,t,n,o,r)=>{const s=e.formatter.get(n),a=e.dom;if(s&&Jo(t))for(let n=0;n<s.length;n++){const i=s[n];if($b(e.dom,t,i)&&qb(a,t,i,"attributes",r,o)&&qb(a,t,i,"styles",r,o)){const n=i.classes;if(n)for(let r=0;r<n.length;r++)if(!e.dom.hasClass(t,Nm(n[r],o)))return;return i}}},Wb=(e,t,n,o,r)=>{if(o)return Hb(e,o,t,n,r);if(o=e.selection.getNode(),Hb(e,o,t,n,r))return!0;const s=e.selection.getStart();return!(s===o||!Hb(e,s,t,n,r))},Kb=Za,Yb=e=>{if(e){const t=new $o(e,e);for(let e=t.current();e;e=t.next())if(lr(e))return e}return null},Gb=e=>{const t=bn("span");return Jt(t,{id:Hu,"data-mce-bogus":"1","data-mce-type":"format-caret"}),e&&vo(t,vn(Kb)),t},Xb=(e,t,n)=>{const o=e.dom,r=e.selection;if(Fm(t))Eh(e,!1,yn(t),n,!0);else{const e=r.getRng(),n=o.getParent(t,o.isBlock),s=e.startContainer,a=e.startOffset,i=e.endContainer,l=e.endOffset,c=(e=>{const t=Yb(e);return t&&t.data.charAt(0)===Kb&&t.deleteData(0,1),t})(t);o.remove(t,!0),s===c&&a>0&&e.setStart(c,a-1),i===c&&l>0&&e.setEnd(c,l-1),n&&o.isEmpty(n)&&Xa(yn(n)),r.setRng(e)}},Zb=(e,t,n)=>{const o=e.dom,r=e.selection;if(t)Xb(e,t,n);else if(!(t=qu(e.getBody(),r.getStart())))for(;t=o.get(Hu);)Xb(e,t,n)},Qb=(e,t)=>(e.appendChild(t),t),Jb=(e,t)=>{var n;const o=G(e,(e,t)=>Qb(e,t.cloneNode(!1)),t),r=null!==(n=o.ownerDocument)&&void 0!==n?n:document;return Qb(o,r.createTextNode(Kb))},ev=(e,t,n,o)=>{const a=e.dom,i=e.selection;let l=!1;const c=e.formatter.get(t);if(!c)return;const d=i.getRng(),u=d.startContainer,m=d.startOffset;let f=u;lr(u)&&(m!==u.data.length&&(l=!0),f=f.parentNode);const g=[];let h;for(;f;){if(Vb(e,f,t,n,o)){h=f;break}f.nextSibling&&(l=!0),g.push(f),f=f.parentNode}if(h)if(l){const r=i.getBookmark();d.collapse(!0);let s=tf(a,d,c,!0);s=Gf(s),e.formatter.remove(t,n,s,o),i.moveToBookmark(r)}else{const l=qu(e.getBody(),h),c=C(l)?a.getParents(h.parentNode,M,l):[],d=Gb(!1).dom;((e,t,n)=>{var o,r;const s=e.dom,a=s.getParent(n,T(Sm,e.schema));a&&s.isEmpty(a)?null===(o=n.parentNode)||void 0===o||o.replaceChild(t,n):((e=>{const t=zo(e,"br"),n=Y((e=>{const t=[];let n=e.dom;for(;n;)t.push(yn(n)),n=n.lastChild;return t})(e).slice(-1),Ha);t.length===n.length&&V(n,xo)})(yn(n)),s.isEmpty(n)?null===(r=n.parentNode)||void 0===r||r.replaceChild(t,n):s.insertAfter(t,n))})(e,d,null!=l?l:h);const u=((e,t,n,o,a,i)=>{const l=e.formatter,c=e.dom,d=Y(fe(l.get()),e=>e!==o&&!He(e,"removeformat")),u=((e,t,n)=>X(n,(n,o)=>{const r=((e,t)=>Pm(e,t,e=>{const t=e=>w(e)||e.length>1&&"%"===e.charAt(0);return $(["styles","attributes"],n=>Se(e,n).exists(e=>{const n=p(e)?e:xe(e);return $(n,t)}))}))(e,o);return e.formatter.matchNode(t,o,{},r)?n.concat([o]):n},[]))(e,n,d);if(Y(u,t=>!((e,t,n)=>{const o=["inline","block","selector","attributes","styles","classes"],a=e=>Ce(e,(e,t)=>$(o,e=>e===t));return Pm(e,t,t=>{const o=a(t);return Pm(e,n,e=>{const t=a(e);return((e,t,n=s)=>r(n).eq(e,t))(o,t)})})})(e,t,o)).length>0){const e=n.cloneNode(!1);return c.add(t,e),l.remove(o,a,e,i),c.remove(e),I.some(e)}return I.none()})(e,d,h,t,n,o),m=Jb([...g,...u.toArray(),...c],d);l&&Xb(e,l,C(l)),i.setCursorLocation(m,1),a.isEmpty(h)&&a.remove(h)}},tv=e=>{const t=Gb(!1),n=Jb(e,t.dom);return{caretContainer:t,caretPosition:Zi(n,0)}},nv=(e,t)=>{const{caretContainer:n,caretPosition:o}=tv(t);return po(yn(e),n),xo(yn(e)),o},ov=(e,t)=>{if($u(t.dom))return!1;const n=e.schema.getTextInlineElements();return Ee(n,Ht(t))&&!$u(t.dom)&&!rr(t.dom)},rv={},sv=nr(["pre"]);(e=>{rv[e]||(rv[e]=[]),rv[e].push(e=>{if(!e.selection.getRng().collapsed){const t=e.selection.getSelectedBlocks(),n=Y(Y(t,sv),(e=>t=>{const n=t.previousSibling;return sv(n)&&H(e,n)})(t));V(n,e=>{((e,t)=>{const n=yn(t),o=Nn(n).dom;xo(n),Co(yn(e),[bn("br",o),bn("br",o),...Mn(n)])})(e.previousSibling,e)})}})})("pre");const av=["fontWeight","fontStyle","color","fontSize","fontFamily"],iv=(e,t)=>{const n=e.get(t);return p(n)?Q(n,e=>Mm(e)&&"span"===e.inline&&(e=>f(e.styles)&&$(fe(e.styles),e=>H(av,e)))(e)):I.none()},lv=(e,t)=>zu(t,Zi.fromRangeStart(e)).isNone(),cv=(e,t)=>!1===Fu(t,Zi.fromRangeEnd(e)).exists(e=>!gr(e.getNode())||Fu(t,e).isSome()),dv=e=>t=>wr(t)&&e.isEditable(t),uv=e=>Y(e.getSelectedBlocks(),dv(e.dom)),mv=Pt.each,fv=e=>Jo(e)&&!nm(e)&&!$u(e)&&!rr(e),gv=(e,t)=>{for(let n=e;n;n=n[t]){if(lr(n)&&Ge(n.data))return e;if(Jo(n)&&!nm(n))return n}return e},pv=(e,t,n)=>{const o=pb(e),r=er(t)&&e.dom.isEditable(t),s=er(n)&&e.dom.isEditable(n);if(r&&s){const r=gv(t,"previousSibling"),s=gv(n,"nextSibling");if(o.compare(r,s)){for(let e=r.nextSibling;e&&e!==s;){const t=e;e=e.nextSibling,r.appendChild(t)}return e.dom.remove(s),Pt.each(Pt.grep(s.childNodes),e=>{r.appendChild(e)}),r}}return n},hv=(e,t,n,o)=>{var r;if(o&&!1!==t.merge_siblings){const t=null!==(r=pv(e,xm(o),o))&&void 0!==r?r:o;pv(e,t,xm(t,!0))}},bv=(e,t,n)=>{mv(e.childNodes,e=>{fv(e)&&(t(e)&&n(e),e.hasChildNodes()&&bv(e,t,n))})},vv=(e,t)=>n=>!(!n||!Tm(e,n,t)),yv=(e,t,n)=>o=>{e.setStyle(o,t,n),""===o.getAttribute("style")&&o.removeAttribute("style"),((e,t)=>{"SPAN"===t.nodeName&&0===e.getAttribs(t).length&&e.remove(t,!0)})(e,o)},Cv=xl([{keep:[]},{rename:["name"]},{removed:[]}]),wv=/^(src|href|style)$/,xv=Pt.each,Sv=Rm,Ev=(e,t,n)=>e.isChildOf(t,n)&&t!==n&&!e.isBlock(n),_v=(e,t,n)=>{let o=t[n?"startContainer":"endContainer"],r=t[n?"startOffset":"endOffset"];if(Jo(o)){const e=o.childNodes.length-1;!n&&r&&r--,o=o.childNodes[r>e?e:r]}return lr(o)&&n&&r>=o.data.length&&(o=new $o(o,e.getBody()).next()||o),lr(o)&&!n&&0===r&&(o=new $o(o,e.getBody()).prev()||o),o},kv=(e,t)=>{const n=t?"firstChild":"lastChild",o=e[n];return(e=>/^(TR|TH|TD)$/.test(e.nodeName))(e)&&o?"TR"===e.nodeName&&o[n]||o:e},Nv=(e,t,n,o)=>{var r;const s=e.create(n,o);return null===(r=t.parentNode)||void 0===r||r.insertBefore(s,t),s.appendChild(t),s},Rv=(e,t,n,o,r)=>{const s=yn(t),a=yn(e.create(o,r)),i=n?Ln(s):Dn(s);return Co(a,i),n?(po(s,a),bo(a,s)):(ho(s,a),vo(a,s)),a.dom},Av=(e,t,n)=>{const o=t.parentNode;let r;const s=e.dom,a=ql(e);Dm(n)&&o===s.getRoot()&&(n.list_block&&Sv(t,n.list_block)||V(de(t.childNodes),t=>{Em(e,a,t.nodeName.toLowerCase())?r?r.appendChild(t):(r=Nv(s,t,a),s.setAttribs(r,Vl(e))):r=null})),(e=>Lm(e)&&Mm(e)&&Dt(Se(e,"mixed"),!0))(n)&&!Sv(n.inline,t)||s.remove(t,!0)},Tv=(e,t,n)=>x(e)?{name:t,value:null}:{name:e,value:Nm(t,n)},Ov=(e,t)=>{""===e.getAttrib(t,"style")&&(t.removeAttribute("style"),t.removeAttribute("data-mce-style"))},Bv=(e,t,n,o,r)=>{let s=!1;xv(n.styles,(a,i)=>{const{name:l,value:c}=Tv(i,a,o),d=Am(c,l);(n.remove_similar||h(c)||!Jo(r)||Sv(Tm(e,r,l),d))&&e.setStyle(t,l,""),s=!0}),s&&Ov(e,t)},Pv=(e,t,n,o,r)=>{const s=e.dom,a=pb(e),i=e.schema;if(Mm(t)&&qr(i,t.inline)&&Wr(i,o)&&o.parentElement===e.getBody())return Av(e,o,t),Cv.removed();if(!t.ceFalseOverride&&o&&"false"===s.getContentEditableParent(o))return Cv.keep();if(o&&!$b(s,o,t)&&!((e,t)=>t.links&&"A"===e.nodeName)(o,t))return Cv.keep();const l=o,c=t.preserve_attributes;if(Mm(t)&&"all"===t.remove&&p(c)){const e=Y(s.getAttribs(l),e=>H(c,e.name.toLowerCase()));if(s.removeAllAttribs(l),V(e,e=>s.setAttrib(l,e.name,e.value)),e.length>0)return Cv.rename("span")}if("all"!==t.remove){Bv(s,l,t,n,r),xv(t.attributes,(e,o)=>{const{name:a,value:i}=Tv(o,e,n);if(t.remove_similar||h(i)||!Jo(r)||Sv(s.getAttrib(r,a),i)){if("class"===a){const e=s.getAttrib(l,a);if(e){let t="";if(V(e.split(/\s+/),e=>{/mce\-\w+/.test(e)&&(t+=(t?" ":"")+e)}),t)return void s.setAttrib(l,a,t)}}if(wv.test(a)&&l.removeAttribute("data-mce-"+a),"style"===a&&nr(["li"])(l)&&"none"===s.getStyle(l,"list-style-type"))return l.removeAttribute(a),void s.setStyle(l,"list-style-type","none");"class"===a&&l.removeAttribute("className"),l.removeAttribute(a)}}),xv(t.classes,e=>{e=Nm(e,n),Jo(r)&&!s.hasClass(r,e)||s.removeClass(l,e)});const e=s.getAttribs(l);for(let t=0;t<e.length;t++){const n=e[t].nodeName;if(!a.isAttributeInternal(n))return Cv.keep()}}return"none"!==t.remove?(Av(e,l,t),Cv.removed()):Cv.keep()},Dv=(e,t,n,o)=>Pv(e,t,n,o,o).fold(N(o),t=>(e.dom.createFragment().appendChild(o),e.dom.rename(o,t)),N(null)),Lv=(e,t,n,o,r)=>{(o||e.selection.isEditable())&&((e,t,n,o,r)=>{const s=e.formatter.get(t),a=s[0],i=e.dom,l=e.selection,c=o=>{const i=((e,t,n,o,r)=>{let s;return t.parentNode&&V(Bm(e.dom,t.parentNode).reverse(),t=>{if(!s&&Jo(t)&&"_start"!==t.id&&"_end"!==t.id){const a=Vb(e,t,n,o,r);a&&!1!==a.split&&(s=t)}}),s})(e,o,t,n,r);return((e,t,n,o,r,s,a,i)=>{var l,c;let d,u;const m=e.dom;if(n){const s=n.parentNode;for(let n=o.parentNode;n&&n!==s;n=n.parentNode){let o=m.clone(n,!1);for(let n=0;n<t.length&&(o=Dv(e,t[n],i,o),null!==o);n++);o&&(d&&o.appendChild(d),u||(u=o),d=o)}a.mixed&&m.isBlock(n)||(o=null!==(l=m.split(n,o))&&void 0!==l?l:o),d&&u&&(null===(c=r.parentNode)||void 0===c||c.insertBefore(d,r),u.appendChild(r),Mm(a)&&hv(e,a,0,d))}return o})(e,s,i,o,o,0,a,n)},d=t=>$(s,o=>Mv(e,o,n,t,t)),u=t=>{const n=de(t.childNodes),o=d(t)||$(s,e=>$b(i,t,e)),r=t.parentNode;if(!o&&C(r)&&Im(a)&&d(r),a.deep&&n.length)for(let e=0;e<n.length;e++)u(n[e]);V(["underline","line-through","overline"],n=>{Jo(t)&&e.dom.getStyle(t,"text-decoration")===n&&t.parentNode&&Om(i,t.parentNode)===n&&Mv(e,{deep:!1,exact:!0,inline:"span",styles:{textDecoration:n}},void 0,t)})},m=e=>{const t=i.get(e?"_start":"_end");if(t){let n=t[e?"firstChild":"lastChild"];return(e=>nm(e)&&Jo(e)&&("_start"===e.id||"_end"===e.id))(n)&&(n=n[e?"firstChild":"lastChild"]),lr(n)&&0===n.data.length&&(n=e?t.previousSibling||t.nextSibling:t.nextSibling||t.previousSibling),i.remove(t,!0),n}return null},f=t=>{let n,o,r=tf(i,t,s,t.collapsed);if(a.split){if(r=Gf(r),n=_v(e,r,!0),o=_v(e,r),n!==o){if(n=kv(n,!0),o=kv(o,!1),Ev(i,n,o)){const e=I.from(n.firstChild).getOr(n);return c(Rv(i,e,!0,"span",{id:"_start","data-mce-type":"bookmark"})),void m(!0)}if(Ev(i,o,n)){const e=I.from(o.lastChild).getOr(o);return c(Rv(i,e,!1,"span",{id:"_end","data-mce-type":"bookmark"})),void m(!1)}n=Nv(i,n,"span",{id:"_start","data-mce-type":"bookmark"}),o=Nv(i,o,"span",{id:"_end","data-mce-type":"bookmark"});const e=i.createRng();e.setStartAfter(n),e.setEndBefore(o),nf(i,e,e=>{V(e,e=>{nm(e)||nm(e.parentNode)||c(e)})}),c(n),c(o),n=m(!0),o=m()}else n=o=c(n);r.startContainer=n.parentNode?n.parentNode:n,r.startOffset=i.nodeIndex(n),r.endContainer=o.parentNode?o.parentNode:o,r.endOffset=i.nodeIndex(o)+1}nf(i,r,e=>{V(e,u)})};if(o){if(vm(o)){const e=i.createRng();e.setStartBefore(o),e.setEndAfter(o),f(e)}else f(o);ff(e,t,o,n)}else l.isCollapsed()&&Mm(a)&&!cm(e).length?ev(e,t,n,r):(Cm(e,()=>hm(e,f),o=>Mm(a)&&Wb(e,t,n,o)),e.nodeChanged()),((e,t,n)=>{"removeformat"===t?V(uv(e.selection),t=>{V(av,n=>e.dom.setStyle(t,n,"")),Ov(e.dom,t)}):iv(e.formatter,t).each(t=>{V(uv(e.selection),o=>Bv(e.dom,o,t,n,null))})})(e,t,n),ff(e,t,o,n)})(e,t,n,o,r)},Mv=(e,t,n,o,r)=>Pv(e,t,n,o,r).fold(L,t=>(e.dom.rename(o,t),!0),M),Iv=Pt.each,Fv=Pt.each,zv=(e,t,n,o)=>{if(Fv(n.styles,(n,r)=>{e.setStyle(t,r,Nm(n,o))}),n.styles){const n=e.getAttrib(t,"style");n&&e.setAttrib(t,"data-mce-style",n)}},Uv=(e,t,n,o)=>{const r=e.formatter.get(t),s=r[0],a=!o&&e.selection.isCollapsed(),i=e.dom,l=e.selection,c=(e,t=s)=>{w(t.onformat)&&t.onformat(e,t,n,o),zv(i,e,t,n),Fv(t.attributes,(t,o)=>{i.setAttrib(e,o,Nm(t,n))}),Fv(t.classes,t=>{const o=Nm(t,n);i.hasClass(e,o)||i.addClass(e,o)})},d=(e,t)=>{let n=!1;return Fv(e,e=>!(!Lm(e)||("false"!==i.getContentEditable(t)||e.ceFalseOverride)&&(!C(e.collapsed)||e.collapsed===a)&&i.is(t,e.selector)&&!$u(t)&&(c(t,e),n=!0,1))),n},u=e=>{if(m(e)){const t=i.create(e);return c(t),t}return null},f=(o,a,i)=>{const l=[];let m=!0;const f=s.inline||s.block,g=u(f);nf(o,a,a=>{let u;const p=a=>{let h=!1,b=m,v=!1;const y=a.parentNode,w=y.nodeName.toLowerCase(),x=o.getContentEditable(a);C(x)&&(b=m,m="true"===x,h=!0,v=km(e,a));const S=m&&!h;if(gr(a)&&!((e,t,n,o)=>{if(Ac(e)&&Mm(t)&&n.parentNode){const t=Os(e.schema),r=jo(yn(n),e=>$u(e.dom));return _e(t,o)&&Rr(e.schema,n.parentNode,{skipBogus:!1,includeZwsp:!0})&&!r}return!1})(e,s,a,w))return u=null,void(Dm(s)&&o.remove(a));if((o=>(e=>Dm(e)&&!0===e.wrapper)(s)&&Vb(e,o,t,n))(a))u=null;else{if(((t,n,o)=>{const r=(e=>Dm(e)&&!0!==e.wrapper)(s)&&Sm(e.schema,t)&&Em(e,n,f);return o&&r})(a,w,S)){const e=o.rename(a,f);return c(e),l.push(e),void(u=null)}if(Lm(s)){let e=d(r,a);if(!e&&C(y)&&Im(s)&&(e=d(r,y)),!Mm(s)||e)return void(u=null)}C(g)&&((t,n,r,a)=>{const l=t.nodeName.toLowerCase(),c=Em(e,f,l)&&Em(e,n,f),d=!i&&lr(t)&&Qa(t.data),u=$u(t),m=!Mm(s)||!o.isBlock(t);return(r||a)&&c&&!d&&!u&&m})(a,w,S,v)?(u||(u=o.clone(g,!1),y.insertBefore(u,a),l.push(u)),v&&h&&(m=b),u.appendChild(a)):(u=null,V(de(a.childNodes),p),h&&(m=b),u=null)}};V(a,p)}),!0===s.links&&V(l,e=>{const t=e=>{"A"===e.nodeName&&c(e,s),V(de(e.childNodes),t)};t(e)}),V(l,a=>{const i=(e=>{let t=0;return V(e.childNodes,e=>{(e=>C(e)&&lr(e)&&0===e.length)(e)||nm(e)||t++}),t})(a);!(l.length>1)&&o.isBlock(a)||0!==i?(Mm(s)||Dm(s)&&s.wrapper)&&(s.exact||1!==i||(a=(e=>{const t=Q(e.childNodes,ym).filter(e=>"false"!==o.getContentEditable(e)&&$b(o,e,s));return t.map(t=>{const n=o.clone(t,!1);return c(n),o.replace(n,e,!0),o.remove(t,!0),n}).getOr(e)})(a)),((e,t,n,o)=>{Iv(t,t=>{Mm(t)&&Iv(e.dom.select(t.inline,o),o=>{fv(o)&&Mv(e,t,n,o,t.exact?o:null)}),((e,t,n)=>{if(t.clear_child_styles){const o=t.links?"*:not(a)":"*";mv(e.select(o,n),n=>{fv(n)&&e.isEditable(n)&&mv(t.styles,(t,o)=>{e.setStyle(n,o,"")})})}})(e.dom,t,o)})})(e,r,n,a),((e,t,n,o,r)=>{const s=r.parentNode;Vb(e,s,n,o)&&Mv(e,t,o,r)||t.merge_with_parents&&s&&e.dom.getParent(s,s=>!!Vb(e,s,n,o)&&(Mv(e,t,o,r),!0))})(e,s,t,n,a),((e,t,n,o)=>{if(t.styles&&t.styles.backgroundColor){const r=vv(e,"fontSize");bv(o,t=>r(t)&&e.isEditable(t),yv(e,"backgroundColor",Nm(t.styles.backgroundColor,n)))}})(o,s,n,a),((e,t,n,o)=>{const r=t=>{if(er(t)&&Jo(t.parentNode)&&e.isEditable(t)){const n=Om(e,t.parentNode);e.getStyle(t,"color")&&n?e.setStyle(t,"text-decoration",n):e.getStyle(t,"text-decoration")===n&&e.setStyle(t,"text-decoration",null)}};t.styles&&(t.styles.color||t.styles.textDecoration)&&(Pt.walk(o,r,"childNodes"),r(o))})(o,s,0,a),((e,t,n,o)=>{const r=e.selection,s=r.isCollapsed()?r.getBookmark():void 0;((e,t,n,o)=>{if(Mm(t)&&("sub"===t.inline||"sup"===t.inline)){const n=vv(e,"fontSize");bv(o,t=>n(t)&&e.isEditable(t),yv(e,"fontSize",""));const r=Y(e.select("sup"===t.inline?"sub":"sup",o),e.isEditable);e.remove(r,!0)}})(e.dom,t,0,o),s&&r.moveToBookmark(s)})(e,s,0,a),hv(e,s,0,a)):o.remove(a,!0)})},g=vm(o)?o:l.getNode();if("false"===i.getContentEditable(g)&&!km(e,g))return d(r,o=g),void mf(e,t,o,n);if(s){if(o)if(vm(o)){if(!d(r,o)){const e=i.createRng();e.setStartBefore(o),e.setEndAfter(o),f(i,tf(i,e,r),!0)}}else f(i,o,!0);else a&&Mm(s)&&!cm(e).length?((e,t,n)=>{let o;const r=e.selection,s=e.formatter.get(t);if(!s)return;const a=r.getRng();let i=a.startOffset;const l=a.startContainer.nodeValue;o=qu(e.getBody(),r.getStart());const c=/[^\s\u00a0\u00ad\u200b\ufeff]/;if(l&&i>0&&i<l.length&&c.test(l.charAt(i))&&c.test(l.charAt(i-1))){const o=r.getBookmark();a.collapse(!0);let i=tf(e.dom,a,s);i=Gf(i),e.formatter.apply(t,n,i),r.moveToBookmark(o)}else{let s=o?Yb(o):null;o&&(null==s?void 0:s.data)===Kb||(d=e.getDoc(),u=Gb(!0).dom,o=d.importNode(u,!0),s=o.firstChild,a.insertNode(o),i=1),e.formatter.apply(t,n,o),r.setCursorLocation(s,i),(e=>"subscript"===e||"superscript"===e)(t)&&r.getNode().nodeName.toLowerCase()!==t.slice(0,3)&&(r.select(o,!0),r.collapse(!0))}var d,u})(e,t,n):(l.setRng(Nb(l.getRng())),Cm(e,()=>{hm(e,(e,t)=>{const n=t?e:tf(i,e,r);f(i,n,!1)})},M),e.nodeChanged()),iv(e.formatter,t).each(t=>{V((e=>Y((e=>{const t=e.getSelectedBlocks(),n=e.getRng();if(e.isCollapsed())return[];if(1===t.length)return lv(n,t[0])&&cv(n,t[0])?t:[];{const e=le(t).filter(e=>lv(n,e)).toArray(),o=ce(t).filter(e=>cv(n,e)).toArray(),r=t.slice(1,-1);return e.concat(r).concat(o)}})(e),dv(e.dom)))(e.selection),e=>zv(i,e,t,n))});((e,t)=>{Ee(rv,e)&&V(rv[e],e=>{e(t)})})(t,e)}mf(e,t,o,n)},jv=(e,t,n,o)=>{(o||e.selection.isEditable())&&Uv(e,t,n,o)},Hv=e=>Ee(e,"vars"),$v=e=>e.selection.getStart(),qv=(e,t,n,o,r)=>Z(t,t=>{const s=e.formatter.matchNode(t,n,null!=r?r:{},o);return!v(s)},t=>!!jb(e,t,n)||!o&&C(e.formatter.matchNode(t,n,r,!0))),Vv=(e,t)=>{const n=null!=t?t:$v(e);return Y(Bm(e.dom,n),e=>Jo(e)&&!rr(e))},Wv=(e,t,n)=>{const o=Vv(e,t);pe(n,(n,r)=>{const s=n=>{const s=qv(e,o,r,n.similar,Hv(n)?n.vars:void 0),a=s.isSome();if(n.state.get()!==a){n.state.set(a);const e=s.getOr(t);Hv(n)?n.callback(a,{node:e,format:r,parents:o}):V(n.callbacks,t=>t(a,{node:e,format:r,parents:o}))}};V([n.withSimilar,n.withoutSimilar],s),V(n.withVars,s)})},Kv=Pt.explode,Yv=()=>{const e={};return{addFilter:(t,n)=>{V(Kv(t),t=>{Ee(e,t)||(e[t]={name:t,callbacks:[]}),e[t].callbacks.push(n)})},getFilters:()=>xe(e),removeFilter:(t,n)=>{V(Kv(t),t=>{if(Ee(e,t))if(C(n)){const o=e[t],r=Y(o.callbacks,e=>e!==n);r.length>0?o.callbacks=r:delete e[t]}else delete e[t]})}}},Gv=(e,t,n)=>{var o;const r=$s();t.convert_fonts_to_spans&&((e,t,n)=>{e.addNodeFilter("font",e=>{V(e,e=>{const o=t.parse(e.attr("style")),r=e.attr("color"),s=e.attr("face"),a=e.attr("size");r&&(o.color=r),s&&(o["font-family"]=s),a&&Ze(a).each(e=>{o["font-size"]=n[e-1]}),e.name="span",e.attr("style",t.serialize(o)),(e=>{V(["color","face","size"],t=>{e.attr(t,null)})})(e)})})})(e,r,Pt.explode(null!==(o=t.font_size_legacy_values)&&void 0!==o?o:"")),((e,t,n)=>{e.addNodeFilter("strike",e=>{const o="html4"!==t.type;V(e,e=>{if(o)e.name="s";else{const t=n.parse(e.attr("style"));t["text-decoration"]="line-through",e.name="span",e.attr("style",n.serialize(t))}})})})(e,n,r)},Xv=e=>{const[t,...n]=e.split(","),o=n.join(","),r=/data:([^/]+\/[^;]+)(;.+)?/.exec(t);if(r){const e=";base64"===r[2],t=e?(e=>{const t=/([a-z0-9+\/=\s]+)/i.exec(e);return t?t[1]:""})(o):decodeURIComponent(o);return I.some({type:r[1],data:t,base64Encoded:e})}return I.none()},Zv=(e,t,n=!0)=>{let o=t;if(n)try{o=atob(t)}catch(e){return I.none()}const r=new Uint8Array(o.length);for(let e=0;e<r.length;e++)r[e]=o.charCodeAt(e);return I.some(new Blob([r],{type:e}))},Qv=e=>new Promise((t,n)=>{const o=new FileReader;o.onloadend=()=>{t(o.result)},o.onerror=()=>{var e;n(null===(e=o.error)||void 0===e?void 0:e.message)},o.readAsDataURL(e)});let Jv=0;const ey=(e,t,n)=>Xv(e).bind(({data:e,type:o,base64Encoded:r})=>{if(t&&!r)return I.none();{const t=r?e:btoa(e);return n(t,o)}}),ty=(e,t,n)=>{const o=e.create("blobid"+Jv++,t,n);return e.add(o),o},ny=(e,t,n=!1)=>ey(t,n,(t,n)=>I.from(e.getByData(t,n)).orThunk(()=>Zv(n,t).map(n=>ty(e,n,t)))),oy=/^(?:(?:(?:[A-Za-z][A-Za-z\d.+-]{0,14}:\/\/(?:[-.~*+=!&;:'%@?^${}(),\w]+@)?|www\.|[-;:&=+$,.\w]+@)([A-Za-z\d-]+(?:\.[A-Za-z\d-]+)*))(?::\d+)?(?:\/(?:[-.~*+=!;:'%@$(),\/\w]*[-~*+=%@$()\/\w])?)?(?:\?(?:[-.~*+=!&;:'%@?^${}(),\/\w]+)?)?(?:#(?:[-.~*+=!&;:'%@?^${}(),\/\w]+)?)?)$/,ry=e=>I.from(e.match(oy)).bind(e=>ie(e,1)).map(e=>$e(e,"www.")?e.substring(4):e),sy=(e,t)=>{I.from(e.attr("src")).bind(ry).forall(e=>!H(t,e))&&e.attr("sandbox","")},ay=(e,t)=>$e(e,`${t}/`);
/*! @license DOMPurify 3.4.11 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.11/LICENSE */
function iy(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function ly(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,s,a,i=[],l=!0,c=!1;try{if(s=(n=n.call(e)).next,0===t);else for(;!(l=(o=s.call(n)).done)&&(i.push(o.value),i.length!==t);l=!0);}catch(e){c=!0,r=e}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return iy(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?iy(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}const cy=Object.entries,dy=Object.setPrototypeOf,uy=Object.isFrozen,my=Object.getPrototypeOf,fy=Object.getOwnPropertyDescriptor;let gy=Object.freeze,py=Object.seal,hy=Object.create,by="undefined"!=typeof Reflect&&Reflect,vy=by.apply,yy=by.construct;// eslint-disable-line import/no-mutable-exports
gy||(gy=function(e){return e}),py||(py=function(e){return e}),vy||(vy=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];return e.apply(t,o)}),yy||(yy=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return new e(...n)});const Cy=jy(Array.prototype.forEach),wy=jy(Array.prototype.lastIndexOf),xy=jy(Array.prototype.pop),Sy=jy(Array.prototype.push),Ey=jy(Array.prototype.splice),_y=Array.isArray,ky=jy(String.prototype.toLowerCase),Ny=jy(String.prototype.toString),Ry=jy(String.prototype.match),Ay=jy(String.prototype.replace),Ty=jy(String.prototype.indexOf),Oy=jy(String.prototype.trim),By=jy(Number.prototype.toString),Py=jy(Boolean.prototype.toString),Dy="undefined"==typeof BigInt?null:jy(BigInt.prototype.toString),Ly="undefined"==typeof Symbol?null:jy(Symbol.prototype.toString),My=jy(Object.prototype.hasOwnProperty),Iy=jy(Object.prototype.toString),Fy=jy(RegExp.prototype.test),zy=(Uy=TypeError,function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return yy(Uy,t)});
/**
* Creates a new function that constructs an instance of the given constructor function with the provided arguments.
*
* @param func - The constructor function to be wrapped and called.
* @returns A new function that constructs an instance of the given constructor function with the provided arguments.
*/
var Uy;
/**
* Add properties to a lookup table
*
* @param set - The set to which elements will be added.
* @param array - The array containing elements to be added to the set.
* @param transformCaseFunc - An optional function to transform the case of each element before adding to the set.
* @returns The modified set with added elements.
*/
/**
* Creates a new function that calls the given function with a specified thisArg and arguments.
*
* @param func - The function to be wrapped and called.
* @returns A new function that calls the given function with a specified thisArg and arguments.
*/
function jy(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];return vy(e,t,o)}}function Hy(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:ky;if(dy&&
// Make 'in' and truthy checks like Boolean(set.constructor)
// independent of any properties defined on Object.prototype.
// Prevent prototype setters from intercepting set as a this value.
dy(e,null),!_y(t))return e;let o=t.length;for(;o--;){let r=t[o];if("string"==typeof r){const e=n(r);e!==r&&(
// Config presets (e.g. tags.js, attrs.js) are immutable.
uy(t)||(t[o]=e),r=e)}e[r]=!0}return e}
/**
* Clean up an array to harden against CSPP
*
* @param array - The array to be cleaned.
* @returns The cleaned version of the array
*/function $y(e){for(let t=0;t<e.length;t++)My(e,t)||(e[t]=null);return e}
/**
* Shallow clone an object
*
* @param object - The object to be cloned.
* @returns A new object that copies the original.
*/function qy(e){const t=hy(null);for(const o of cy(e)){var n=ly(o,2);const r=n[0],s=n[1];My(e,r)&&(_y(s)?t[r]=$y(s):s&&"object"==typeof s&&s.constructor===Object?t[r]=qy(s):t[r]=s)}return t}
/**
* Convert non-node values into strings without depending on direct property access.
*
* @param value - The value to stringify.
* @returns A string representation of the provided value.
*/
/**
* This method automatically checks if the prop is function or getter and behaves accordingly.
*
* @param object - The object to look up the getter function in its prototype chain.
* @param prop - The property name for which to find the getter function.
* @returns The getter function found in the prototype chain or a fallback function.
*/
function Vy(e,t){for(;null!==e;){const n=fy(e,t);if(n){if(n.get)return jy(n.get);if("function"==typeof n.value)return jy(n.value)}e=my(e)}return function(){return null}}const Wy=gy(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Ky=gy(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Yy=gy(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Gy=gy(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Xy=gy(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Zy=gy(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Qy=gy(["#text"]),Jy=gy(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),eC=gy(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),tC=gy(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),nC=gy(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),oC=py(/{{[\w\W]*|^[\w\W]*}}/g),rC=py(/<%[\w\W]*|^[\w\W]*%>/g),sC=py(/\${[\w\W]*/g),aC=py(/^data-[\-\w.\u00B7-\uFFFF]+$/),iC=py(/^aria-[\-\w]+$/),lC=py(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),cC=py(/^(?:\w+script|data):/i),dC=py(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),uC=py(/^html$/i),mC=py(/^[a-z][.\w]*(-[.\w]+)+$/i),fC=py(/<[/\w!]/g),gC=py(/<[/\w]/g),pC=py(/<\/no(script|embed|frames)/i),hC=py(/\/>/i),bC=function(){return"undefined"==typeof window?null:window},vC=function(e,t,n,o){return My(e,t)&&_y(e[t])?Hy(o.base?qy(o.base):{},e[t],o.transform):n};var yC=function e(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:bC();const n=t=>e(t);if(n.version="3.4.11",n.removed=[],!t||!t.document||9!==t.document.nodeType||!t.Element)
// Not running in a browser, provide a factory function
// so that you can pass your own Window
return n.isSupported=!1,n;let o=t.document;const r=o,s=r.currentScript;t.DocumentFragment;const a=t.HTMLTemplateElement,i=t.Node,l=t.Element,c=t.NodeFilter;void 0===t.NamedNodeMap&&(t.NamedNodeMap||t.MozNamedAttrMap),t.HTMLFormElement;const d=t.DOMParser,u=t.trustedTypes,m=l.prototype,f=Vy(m,"cloneNode"),g=Vy(m,"remove"),p=Vy(m,"nextSibling"),h=Vy(m,"childNodes"),b=Vy(m,"parentNode"),v=Vy(m,"shadowRoot"),y=Vy(m,"attributes"),C=i&&i.prototype?Vy(i.prototype,"nodeType"):null,w=i&&i.prototype?Vy(i.prototype,"nodeName"):null;
// As per issue #47, the web-components registry is inherited by a
// new document created via createHTMLDocument. As per the spec
// (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)
// a new empty registry is used when creating a template contents owner
// document, so we use that as our parent document to ensure nothing
// is inherited.
if("function"==typeof a){const e=o.createElement("template");e.content&&e.content.ownerDocument&&(o=e.content.ownerDocument)}let x,S,E="",_=!1,k=0;const N=function(){if(k>0)throw zy('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},R=function(e){N(),k++;try{return x.createHTML(e)}finally{k--}},A=o,T=A.implementation,O=A.createNodeIterator,B=A.createDocumentFragment,P=A.getElementsByTagName,D=r.importNode;let L={afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]};
/**
* Expose whether this browser supports running the full DOMPurify.
*/n.isSupported="function"==typeof cy&&"function"==typeof b&&T&&void 0!==T.createHTMLDocument;const M=oC,I=rC,F=sC,z=aC,U=iC,j=cC,H=dC,$=mC;let q=lC,V=null;
/**
* We consider the elements and attributes below to be safe. Ideally
* don't add any new ones but feel free to remove unwanted ones.
*/
/* allowed element names */const W=Hy({},[...Wy,...Ky,...Yy,...Xy,...Qy]);
/* Allowed attribute names */let K=null;const Y=Hy({},[...Jy,...eC,...tC,...nC]);
/*
* Configure how DOMPurify should handle custom elements and their attributes as well as customized built-in elements.
* @property {RegExp|Function|null} tagNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any custom elements)
* @property {RegExp|Function|null} attributeNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any attributes not on the allow list)
* @property {boolean} allowCustomizedBuiltInElements allow custom elements derived from built-ins if they pass CUSTOM_ELEMENT_HANDLING.tagNameCheck. Default: `false`.
*/let G=Object.seal(hy(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}})),X=null,Z=null;
/* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */
/* Config object to store ADD_TAGS/ADD_ATTR functions (when used as functions) */
const Q=Object.seal(hy(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));
/* Decide if ARIA attributes are okay */let J=!0,ee=!0,te=!1,ne=!0,oe=!1,re=!0,se=!1,ae=!1,ie=null,le=null,ce=!1,de=!1,ue=!1,me=!1,fe=!0,ge=!1;
/* Decide if custom data attributes are okay */const pe="user-content-";
/* Keep element content when removing element? */let he=!0,be=!1,ve={},ye=null;
/* If a `Node` is passed to sanitize(), then performs sanitization in-place instead
* of importing it into a new Document and returning a sanitized copy */const Ce=Hy({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script",
// <selectedcontent> mirrors the selected <option>'s subtree, cloned by
// the UA (customizable <select>) — including any on* handlers — and the
// engine re-mirrors synchronously whenever a removal changes which
// option/selectedcontent is current, even inside DOMPurify's inert
// DOMParser document. Hoisting its children on removal re-inserts a fresh
// mirror target ahead of the walk, which the engine refills, looping
// forever (DoS) and amplifying output. Dropping its content on removal
// (rather than hoisting) breaks that cascade; the content is a duplicate
// of the option, which is sanitized on its own. See campaign-3 F1/F6.
"selectedcontent","style","svg","template","thead","title","video","xmp"]);
/* Tags that are safe for data: URIs */let we=null;const xe=Hy({},["audio","video","img","source","image","track"]);
/* Attributes safe for values like "javascript:" */let Se=null;const Ee=Hy({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),_e="http://www.w3.org/1998/Math/MathML",ke="http://www.w3.org/2000/svg",Ne="http://www.w3.org/1999/xhtml";
/* Document namespace */
let Re=Ne,Ae=!1,Te=null;const Oe=Hy({},[_e,ke,Ne],Ny),Be=gy(["mi","mo","mn","ms","mtext"]);let Pe=Hy({},Be);const De=gy(["annotation-xml"]);let Le=Hy({},De);
// Certain elements are allowed in both SVG and HTML
// namespace. We need to specify them explicitly
// so that they don't get erroneously deleted from
// HTML namespace.
const Me=Hy({},["title","style","font","a","script"]);
/* Parsing of strict XHTML documents */let Ie=null;const Fe=["application/xhtml+xml","text/html"];let ze=null,Ue=null;
/* Keep a reference to config to pass to hooks */
/* Ideally, do not touch anything below this line */
/* ______________________________________________ */
const je=o.createElement("form"),He=function(e){return e instanceof RegExp||e instanceof Function},$e=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Ue&&Ue===e)return;
/* Shield configuration object from tampering */e&&"object"==typeof e||(e={})
/* Shield configuration object from prototype pollution */,e=qy(e),Ie=
// eslint-disable-next-line unicorn/prefer-includes
-1===Fe.indexOf(e.PARSER_MEDIA_TYPE)?"text/html":e.PARSER_MEDIA_TYPE,
// HTML tags and attributes are not case-sensitive, converting to lowercase. Keeping XHTML as is.
ze="application/xhtml+xml"===Ie?Ny:ky,
/* Set configuration parameters */
V=vC(e,"ALLOWED_TAGS",W,{transform:ze}),K=vC(e,"ALLOWED_ATTR",Y,{transform:ze}),Te=vC(e,"ALLOWED_NAMESPACES",Oe,{transform:Ny}),Se=vC(e,"ADD_URI_SAFE_ATTR",Ee,{transform:ze,base:Ee}),we=vC(e,"ADD_DATA_URI_TAGS",xe,{transform:ze,base:xe}),ye=vC(e,"FORBID_CONTENTS",Ce,{transform:ze}),X=vC(e,"FORBID_TAGS",qy({}),{transform:ze}),Z=vC(e,"FORBID_ATTR",qy({}),{transform:ze}),ve=!!My(e,"USE_PROFILES")&&(e.USE_PROFILES&&"object"==typeof e.USE_PROFILES?qy(e.USE_PROFILES):e.USE_PROFILES),J=!1!==e.ALLOW_ARIA_ATTR,// Default true
ee=!1!==e.ALLOW_DATA_ATTR,// Default true
te=e.ALLOW_UNKNOWN_PROTOCOLS||!1,// Default false
ne=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,// Default true
oe=e.SAFE_FOR_TEMPLATES||!1,// Default false
re=!1!==e.SAFE_FOR_XML,// Default true
se=e.WHOLE_DOCUMENT||!1,// Default false
de=e.RETURN_DOM||!1,// Default false
ue=e.RETURN_DOM_FRAGMENT||!1,// Default false
me=e.RETURN_TRUSTED_TYPE||!1,// Default false
ce=e.FORCE_BODY||!1,// Default false
fe=!1!==e.SANITIZE_DOM,// Default true
ge=e.SANITIZE_NAMED_PROPS||!1,// Default false
he=!1!==e.KEEP_CONTENT,// Default true
be=e.IN_PLACE||!1,// Default false
q=function(e){try{return Fy(e,""),!0}catch(e){return!1}}(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:lC,// Default regexp
Re="string"==typeof e.NAMESPACE?e.NAMESPACE:Ne,// Default HTML namespace
Pe=My(e,"MATHML_TEXT_INTEGRATION_POINTS")&&e.MATHML_TEXT_INTEGRATION_POINTS&&"object"==typeof e.MATHML_TEXT_INTEGRATION_POINTS?qy(e.MATHML_TEXT_INTEGRATION_POINTS):Hy({},Be),// Default built-in map
Le=My(e,"HTML_INTEGRATION_POINTS")&&e.HTML_INTEGRATION_POINTS&&"object"==typeof e.HTML_INTEGRATION_POINTS?qy(e.HTML_INTEGRATION_POINTS):Hy({},De);// Default built-in map
const t=My(e,"CUSTOM_ELEMENT_HANDLING")&&e.CUSTOM_ELEMENT_HANDLING&&"object"==typeof e.CUSTOM_ELEMENT_HANDLING?qy(e.CUSTOM_ELEMENT_HANDLING):hy(null);
// Re-derive the active Trusted Types policy from this configuration on
// every parse. The active policy must never be sticky closure state that
// outlives the config that set it: a caller-supplied policy left in place
// after `clearConfig()` — or after a later call that supplied none, or
// `TRUSTED_TYPES_POLICY: null` — could sign a subsequent "default"
// `RETURN_TRUSTED_TYPE` result with a foreign, possibly unsafe policy.
// See GHSA-vxr8-fq34-vvx9.
if(G=hy(null),My(t,"tagNameCheck")&&He(t.tagNameCheck)&&(G.tagNameCheck=t.tagNameCheck),My(t,"attributeNameCheck")&&He(t.attributeNameCheck)&&(G.attributeNameCheck=t.attributeNameCheck),My(t,"allowCustomizedBuiltInElements")&&"boolean"==typeof t.allowCustomizedBuiltInElements&&(G.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),py(G),oe&&(ee=!1),ue&&(de=!0)
/* Parse profile info */,ve&&(V=Hy({},Qy),K=hy(null),!0===ve.html&&(Hy(V,Wy),Hy(K,Jy)),!0===ve.svg&&(Hy(V,Ky),Hy(K,eC),Hy(K,nC)),!0===ve.svgFilters&&(Hy(V,Yy),Hy(K,eC),Hy(K,nC)),!0===ve.mathMl&&(Hy(V,Xy),Hy(K,tC),Hy(K,nC)))
/* Always reset function-based ADD_TAGS / ADD_ATTR checks to prevent
* leaking across calls when switching from function to array config */,Q.tagCheck=null,Q.attributeCheck=null,
/* Merge configuration parameters */
My(e,"ADD_TAGS")&&("function"==typeof e.ADD_TAGS?Q.tagCheck=e.ADD_TAGS:_y(e.ADD_TAGS)&&(V===W&&(V=qy(V)),Hy(V,e.ADD_TAGS,ze))),My(e,"ADD_ATTR")&&("function"==typeof e.ADD_ATTR?Q.attributeCheck=e.ADD_ATTR:_y(e.ADD_ATTR)&&(K===Y&&(K=qy(K)),Hy(K,e.ADD_ATTR,ze))),My(e,"ADD_URI_SAFE_ATTR")&&_y(e.ADD_URI_SAFE_ATTR)&&Hy(Se,e.ADD_URI_SAFE_ATTR,ze),My(e,"FORBID_CONTENTS")&&_y(e.FORBID_CONTENTS)&&(ye===Ce&&(ye=qy(ye)),Hy(ye,e.FORBID_CONTENTS,ze)),My(e,"ADD_FORBID_CONTENTS")&&_y(e.ADD_FORBID_CONTENTS)&&(ye===Ce&&(ye=qy(ye)),Hy(ye,e.ADD_FORBID_CONTENTS,ze))
/* Add #text in case KEEP_CONTENT is set to true */,he&&(V["#text"]=!0)
/* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */,se&&Hy(V,["html","head","body"])
/* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */,V.table&&(Hy(V,["tbody"]),delete X.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw zy('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw zy('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
// A caller-supplied policy applies to this configuration only.
const t=x;x=e.TRUSTED_TYPES_POLICY;
// Sign local variables required by `sanitize`. If the supplied policy's
// `createHTML` is circular (i.e. it calls `DOMPurify.sanitize`), this
// throws via the re-entrancy guard. Restore the previous policy first so
// the instance is not left in a poisoned state. See #1422.
try{E=R("")}catch(e){throw x=t,e}}else null===e.TRUSTED_TYPES_POLICY?(
// Explicit opt-out for this call: perform no Trusted Types signing and
// create nothing (so a strict `trusted-types` CSP that disallows a
// `dompurify` policy can still call `sanitize` from inside its own
// policy — see #1422). Resetting to `undefined` rather than a sticky
// `null` also drops any previously retained caller policy, so it cannot
// resurface on a later call, while still allowing the next config-less
// call to restore the internal default policy. See GHSA-vxr8-fq34-vvx9.
x=void 0,E=""):(
// No policy supplied: keep the currently active policy if one is set — a
// previously supplied policy is intentionally sticky across config-less
// calls — otherwise fall back to the instance's own internal policy,
// created at most once. (A policy supplied for a *single* call still
// lingers by design; what must not linger is a policy whose configuration
// has been torn down via `clearConfig()`, which restores the default.)
void 0===x&&(_||(S=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;
// Allow the callers to control the unique policy name
// by adding a data-tt-policy-suffix to the script element with the DOMPurify.
// Policy creation with duplicate names throws in Trusted Types.
let n=null;const o="data-tt-policy-suffix";t&&t.hasAttribute(o)&&(n=t.getAttribute(o));const r="dompurify"+(n?"#"+n:"");try{return e.createPolicy(r,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){
// Policy creation failed (most likely another DOMPurify script has
// already run). Skip creating the policy, as this will only cause errors
// if TT are enforced.
return console.warn("TrustedTypes policy "+r+" could not be created."),null}}(u,s),_=!0),x=S),
// Sign internal variables only when a policy is active. A falsy policy
// (Trusted Types unsupported, creation failed, or an explicit opt-out)
// leaves `emptyHTML` as a plain string, so we never call `.createHTML` on
// a non-policy and throw. See #1422.
x&&"string"==typeof E&&(E=R("")));
// Prevent further manipulation of configuration.
// Not available in IE8, Safari 5, etc.
gy&&gy(e),Ue=e},qe=Hy({},[...Ky,...Yy,...Gy]),Ve=Hy({},[...Xy,...Zy]),We=function(e){Sy(n.removed,{element:e});try{
// eslint-disable-next-line unicorn/prefer-dom-node-remove
b(e).removeChild(e)}catch(t){if(
/* The normal detach failed — this is reached for a parentless node
(getParentNode() is null, so .removeChild throws). Element.prototype
.remove() is itself a spec no-op on a parentless node, so a recorded
"removal" would otherwise hand the caller back an intact,
payload-bearing node (e.g. a detached IN_PLACE root the mXSS canary or
the style-with-element-child rule decided to kill). Fail closed by
throwing — exactly as a clobbered root does at the IN_PLACE entry —
rather than trying to "neutralize" the node via its own methods.
Neutralizing would mean calling getAttributeNames()/removeAttribute()
on the node, both of which a <form> root can clobber via a named child
(and _isClobbered does not even probe getAttributeNames), so the
neutralize step could itself be silently defeated, leaving the payload
intact. A throw touches only the cached, clobber-safe remove() and
getParentNode(). Generalizes GHSA-r47g-fvhr-h676 (clobbered-form root)
to every root-kill reason. REPORT-3.
This lives inside the catch, so it never fires for a normally-removed
in-tree node: those have a parent, removeChild() succeeds, and the
catch is not entered. Only a kept (parentless) root reaches here. */
g(e),!b(e))throw zy("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Ke=function(e){const t=h(e);if(t){const e=[];Cy(t,t=>{Sy(e,t)}),Cy(e,e=>{try{g(e)}catch(e){
/* Best-effort teardown; a still-attached child is handled below */}})}const n=y(e);if(n)for(let t=n.length-1;t>=0;--t){const o=n[t],r=o&&o.name;if("string"==typeof r)try{e.removeAttribute(r)}catch(e){
/* Clobbered removeAttribute — ignore (fail-closed best effort) */}}},Ye=function(e,t){try{Sy(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){Sy(n.removed,{attribute:null,from:t})}
// We void attribute values for unremovable "is" attributes
if(t.removeAttribute(e),"is"===e)if(de||ue)try{We(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},Ge=function(e){const t=y(e);if(t)for(let n=t.length-1;n>=0;--n){const o=t[n],r=o&&o.name;if("string"==typeof r&&!K[ze(r)])try{e.removeAttribute(r)}catch(e){
/* Clobbered removeAttribute on a doomed node — ignore */}}},Xe=function(e){
/* Create a HTML document */
let t=null,n=null;if(ce)e="<remove></remove>"+e;else{
/* If FORCE_BODY isn't used, leading whitespace needs to be preserved manually */
const t=Ry(e,/^[\r\n\t ]+/);n=t&&t[0]}"application/xhtml+xml"===Ie&&Re===Ne&&(
// Root of XHTML doc must contain xmlns declaration (see https://www.w3.org/TR/xhtml1/normative.html#strict)
e='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+e+"</body></html>");const r=x?R(e):e;
/*
* Use the DOMParser API by default, fallback later if needs be
* DOMParser not work for svg when has multiple root element.
*/if(Re===Ne)try{t=(new d).parseFromString(r,Ie)}catch(e){}
/* Use createHTMLDocument in case DOMParser is not available */if(!t||!t.documentElement){t=T.createDocument(Re,"template",null);try{t.documentElement.innerHTML=Ae?E:r}catch(e){
// Syntax error if dirtyPayload is invalid xml
}}const s=t.body||t.documentElement;
/* Work on whole document or just its body */
return e&&n&&s.insertBefore(o.createTextNode(n),s.childNodes[0]||null),Re===Ne?P.call(t,se?"html":"body")[0]:se?t.documentElement:s},Ze=function(e){return O.call(e.ownerDocument||e,e,
// eslint-disable-next-line no-bitwise
c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Qe=function(e){return e=Ay(e,M," "),e=Ay(e,I," "),Ay(e,F," ")},Je=function(e){var t;e.normalize();const n=O.call(e.ownerDocument||e,e,
// eslint-disable-next-line no-bitwise
c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null);let o=n.nextNode();for(;o;)o.data=Qe(o.data),o=n.nextNode();
// NodeIterator does not descend into <template>.content per the DOM spec,
// so we must explicitly recurse into each template's content fragment,
// mirroring the approach used by _sanitizeShadowDOM.
const r=null===(t=e.querySelectorAll)||void 0===t?void 0:t.call(e,"template");r&&Cy(r,e=>{tt(e.content)&&Je(e.content)})},et=function(e){
// Realm-independent tag-name probe. If we can't determine the tag
// name at all, we can't reason about clobbering — return false
// (the caller's other defences still apply).
const t=w?w(e):null;return"string"==typeof t&&"form"===ze(t)&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||
// Realm-safe NamedNodeMap detection: equality against the cached
// prototype getter. Clobbered .attributes (e.g. <input name="attributes">)
// makes the direct read diverge from the cached read; a clean form
// (same-realm OR foreign-realm) has both reads pointing at the same
// canonical NamedNodeMap.
e.attributes!==y(e)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore||"function"!=typeof e.hasChildNodes||
// NodeType clobbering probe. Cached Node.prototype.nodeType getter
// returns the integer 1 for any Element regardless of realm; direct
// read on a clobbered form (e.g. <input name="nodeType">) returns
// the named child element. Cheap addition — nodeType is read from
// an internal slot, no serialization cost — and removes a residual
// clobbering surface used by several mXSS / PI / comment branches
// in _sanitizeElements that compare currentNode.nodeType directly.
e.nodeType!==C(e)||
// HTMLFormElement has [LegacyOverrideBuiltIns]: a descendant named
// "childNodes" shadows the prototype getter. Direct reads of
// form.childNodes from a clobbered form return the named child
// instead of the real NodeList, so any walk that reads it directly
// skips the form's real children. Compare the direct read to the
// cached Node.prototype getter — when the form's named-property
// getter intercepts the read, the two values differ and we flag
// the form. This catches every clobbering child type (input,
// select, etc.) regardless of whether the named child happens to
// carry a numeric .length, which a typeof-based probe would miss
// (e.g. HTMLSelectElement.length is a defined unsigned-long).
e.childNodes!==h(e))},tt=function(e){if(!C||"object"!=typeof e||null===e)return!1;try{return 11===C(e)}catch(e){return!1}},nt=function(e){if(!C||"object"!=typeof e||null===e)return!1;try{return"number"==typeof C(e)}catch(e){return!1}};function ot(e,t,o){0!==e.length&&Cy(e,e=>{e.call(n,t,o,Ue)})}
/**
* Structural-threat checks that condemn a node regardless of the
* allowlists: mXSS via namespace confusion, risky CSS construction,
* processing instructions, markup-bearing comments. Pure predicate;
* the caller removes. Check order is load-bearing.
*
* @param currentNode the node to inspect
* @param tagName the node's transformCaseFunc'd tag name
* @return true if the node must be removed
*/const rt=function(e){
/* Check if element is clobbered or can clobber */
if(
/* Execute a hook if present */
ot(L.beforeSanitizeElements,e,null),et(e))return We(e),!0;
/* Now let's check the element's type and name */const t=ze(w?w(e):e.nodeName);
/* Execute a hook if present */
/* Remove mXSS vectors, processing instructions and risky comments */
if(ot(L.uponSanitizeElement,e,{tagName:t,allowedTags:V}),function(e,t){
/* Detect mXSS attempts abusing namespace confusion */
return!!(re&&e.hasChildNodes()&&!nt(e.firstElementChild)&&Fy(fC,e.textContent)&&Fy(fC,e.innerHTML))||!(!re||e.namespaceURI!==Ne||"style"!==t||!nt(e.firstElementChild))||7===e.nodeType||!(!re||8!==e.nodeType||!Fy(gC,e.data))
/* Remove risky CSS construction leading to mXSS */}(e,t))return We(e),!0;
/* Remove element if anything forbids its presence */if(X[t]||!(Q.tagCheck instanceof Function&&Q.tagCheck(t))&&!V[t])return function(e,t){
/* Check if we have a custom element to handle */
if(!X[t]&&it(t)){if(G.tagNameCheck instanceof RegExp&&Fy(G.tagNameCheck,t))return!1;if(G.tagNameCheck instanceof Function&&G.tagNameCheck(t))return!1}
/* Keep content except for bad-listed elements.
Use the cached prototype getters exclusively — the previous code
had `|| currentNode.parentNode` / `|| currentNode.childNodes`
fallbacks, but the cached getters always return the canonical
value (or null for a real parent-less node), so the fallback
path was dead in safe cases and a clobbering surface in unsafe
ones. Falsy cached results stay falsy; the `if (childNodes &&
parentNode)` check already gates correctly. */if(he&&!ye[t]){const t=b(e),n=h(e);if(n&&t)
/* In-place: hoist the *original* children so the iterator visits
and sanitises them through the same allowlist pass as every other
node. The caller built the tree in the live document, so the
originals carry already-queued resource events (`<img onerror>`,
`<video>`/`<audio>` error, lazy/`onload`, …); cloning would leave
those originals detached but still armed, firing in page scope
while the returned tree looked clean. Moving is safe in-place: the
root is pre-validated as an allowed tag and so is never the node
being removed, which keeps `parentNode` inside the iterator root
and the relocated child inside the serialised tree.
Otherwise (string / DOM-copy paths): clone. The iterator is rooted
at — and the result serialised from — `body`, so a restrictive
ALLOWED_TAGS that removes `body` itself must leave its content in
place, which only cloning does; and those paths parse into an
inert document, so their discarded originals never had a queued
event to neutralise.
`childNodes` is live; a tail-to-head walk keeps `childNodes[i]`
valid whether we move (drops the trailing entry) or clone (leaves
the list intact). */
for(let o=n.length-1;o>=0;--o){const r=be?n[o]:f(n[o],!0);t.insertBefore(r,p(e))}}return We(e),!0}(e,t);
/* Check whether element has a valid namespace.
Realm-safe check (GHSA-hpcv-96wg-7vj8): use the cached Node.prototype
nodeType getter rather than `instanceof Element`, which is realm-
bound and short-circuits to false for any node minted in a different
realm — letting a foreign-realm element with a forbidden namespace
slip past the namespace check entirely. */if(1===(C?C(e):e.nodeType)&&!function(e){let t=b(e);
// In JSDOM, if we're inside shadow DOM, then parentNode
// can be null. We just simulate parent in this case.
t&&t.tagName||(t={namespaceURI:Re,tagName:"template"});const n=ky(e.tagName),o=ky(t.tagName);return!!Te[e.namespaceURI]&&(e.namespaceURI===ke?function(e,t,n){
// The only way to switch from HTML namespace to SVG
// is via <svg>. If it happens via any other tag, then
// it should be killed.
return t.namespaceURI===Ne?"svg"===e:
// The only way to switch from MathML to SVG is via <svg>
// if the parent is either <annotation-xml> or a MathML
// text integration point.
t.namespaceURI===_e?"svg"===e&&("annotation-xml"===n||Pe[n]):Boolean(qe[e])}(n,t,o):e.namespaceURI===_e?function(e,t,n){
// The only way to switch from HTML namespace to MathML
// is via <math>. If it happens via any other tag, then
// it should be killed.
return t.namespaceURI===Ne?"math"===e:
// The only way to switch from SVG to MathML is via
// <math> and HTML integration points
t.namespaceURI===ke?"math"===e&&Le[n]:Boolean(Ve[e])}(n,t,o):e.namespaceURI===Ne?function(e,t,n){
// The only way to switch from SVG to HTML is via
// HTML integration points, and from MathML to HTML
// is via MathML text integration points
return!(t.namespaceURI===ke&&!Le[n])&&!(t.namespaceURI===_e&&!Pe[n])&&!Ve[e]&&(Me[e]||!qe[e])}(n,t,o):!("application/xhtml+xml"!==Ie||!Te[e.namespaceURI]))}(e))return We(e),!0;
/* Make sure that older browsers don't get fallback-tag mXSS */if(("noscript"===t||"noembed"===t||"noframes"===t)&&Fy(pC,e.innerHTML))return We(e),!0;
/* Sanitize element content to be template-safe */if(oe&&3===e.nodeType){
/* Get the element's text content */
const t=Qe(e.textContent);e.textContent!==t&&(Sy(n.removed,{element:e.cloneNode()}),e.textContent=t)}
/* Execute a hook if present */return ot(L.afterSanitizeElements,e,null),!1},st=function(e,t,n){
/* FORBID_ATTR must always win, even if ADD_ATTR predicate would allow it */
if(Z[t])return!1;
/* Make sure attribute cannot clobber */if(fe&&("id"===t||"name"===t)&&(n in o||n in je))return!1;const r=K[t]||Q.attributeCheck instanceof Function&&Q.attributeCheck(t,e);
/* Allow valid data-* attributes: At least one character after "-"
(https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes)
XML-compatible (https://html.spec.whatwg.org/multipage/infrastructure.html#xml-compatible and http://www.w3.org/TR/xml/#d0e804)
We don't need to check the value; it's always URI safe. */if(ee&&Fy(z,t));else if(J&&Fy(U,t));else if(r){if(Se[t]);else if(Fy(q,Ay(n,H,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==Ty(n,"data:")||!we[e])if(te&&!Fy(j,Ay(n,H,"")));else if(n)return!1}else if(
// First condition does a very basic check if a) it's basically a valid custom element tagname AND
// b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
// and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck
!(it(e)&&(G.tagNameCheck instanceof RegExp&&Fy(G.tagNameCheck,e)||G.tagNameCheck instanceof Function&&G.tagNameCheck(e))&&(G.attributeNameCheck instanceof RegExp&&Fy(G.attributeNameCheck,t)||G.attributeNameCheck instanceof Function&&G.attributeNameCheck(t,e))||
// Alternative, second condition checks if it's an `is`-attribute, AND
// the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
"is"===t&&G.allowCustomizedBuiltInElements&&(G.tagNameCheck instanceof RegExp&&Fy(G.tagNameCheck,n)||G.tagNameCheck instanceof Function&&G.tagNameCheck(n))))return!1;
/* Check value is safe. First, is attr inert? If so, is safe */return!0},at=Hy({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),it=function(e){return!at[ky(e)]&&Fy($,e)},lt=function(e,t,n,o){if(x&&"object"==typeof u&&"function"==typeof u.getAttributeType&&!n)switch(u.getAttributeType(e,t)){case"TrustedHTML":return R(o);case"TrustedScriptURL":return function(e){N(),k++;try{return x.createScriptURL(e)}finally{k--}}(o)}return o},ct=function(e,t,o,r){try{o?e.setAttributeNS(o,t,r):
/* Fallback to setAttribute() for browser-unrecognized namespaces e.g. "x-schema". */
e.setAttribute(t,r),et(e)?We(e):xy(n.removed)}catch(n){Ye(t,e)}},dt=function(e){
/* Execute a hook if present */
ot(L.beforeSanitizeAttributes,e,null);const t=e.attributes;
/* Check if we have attributes; if not we might have a text node */if(!t||et(e))return;const n={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K,forceKeepAttr:void 0};let o=t.length;const r=ze(e.nodeName);
/* Go backwards over all attributes; safely remove bad ones */for(;o--;){const s=t[o],a=s.name,i=s.namespaceURI,l=s.value,c=ze(a),d=l;let u="value"===a?d:Oy(d);
/* Execute a hook if present */n.attrName=c,n.attrValue=u,n.keepAttr=!0,n.forceKeepAttr=void 0,// Allows developers to see this is a property they can set
ot(L.uponSanitizeAttribute,e,n),u=n.attrValue,
/* Full DOM Clobbering protection via namespace isolation,
* Prefix id and name attributes with `user-content-`
*/
!ge||"id"!==c&&"name"!==c||0===Ty(u,pe)||(
// Remove the attribute with this value
Ye(a,e),
// Prefix the value and later re-create the attribute with the sanitized value
u=pe+u),
// Else: already prefixed, leave the attribute alone — the prefix is
// itself the clobbering protection, and re-applying it is incorrect.
/* Work around a security issue with comments inside attributes */
re&&Fy(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,u)||"attributename"===c&&Ry(u,"href")
/* Make sure we cannot easily use animated hrefs, even if animations are allowed */?Ye(a,e):
/* Did the hooks force-keep the attribute? */
n.forceKeepAttr||(
/* Did the hooks approve of the attribute? */
!n.keepAttr||!ne&&Fy(hC,u)
/* Work around a security issue in jQuery 3.0 */?Ye(a,e):(
/* Sanitize attribute content to be template-safe */
oe&&(u=Qe(u))
/* Is `value` valid for this attribute? */,st(r,c,u)?(
/* Handle attributes that require Trusted Types */
u=lt(r,c,i,u),
/* Handle invalid data-* attribute set by try-catching it */
u!==d&&ct(e,a,i,u)):Ye(a,e)))}
/* Execute a hook if present */ot(L.afterSanitizeAttributes,e,null)},ut=function(e){let t=null;const n=Ze(e);
/* Execute a hook if present */for(ot(L.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(
/* Execute a hook if present */
ot(L.uponSanitizeShadowNode,t,null),
/* Sanitize tags and elements */
rt(t),
/* Check attributes next */
dt(t),
/* Deep shadow DOM detected.
Realm-safe check (GHSA-hpcv-96wg-7vj8): use nodeType against the
DOCUMENT_FRAGMENT_NODE constant rather than instanceof, so we
recurse into <template>.content from foreign realms too. */
tt(t.content)&&ut(t.content)
/* An element iterated here may itself host an attached
shadow root. The default NodeIterator does not enter shadow
trees, so a shadow root nested inside template.content was
previously reached by no walk at all (the pre-pass at
_sanitizeAttachedShadowRoots descends via childNodes, which
doesn't enter template.content; the template-content recursion
above iterates the content but never inspected shadowRoot).
Walk it explicitly. The nodeType guard avoids reading
shadowRoot off text / comment / CDATA / PI nodes that the
iterator also surfaces. */,1===(C?C(t):t.nodeType)){const e=v(t);tt(e)&&(mt(e),ut(e))}
/* Execute a hook if present */ot(L.afterSanitizeShadowDOM,e,null)},mt=function(e){
/* Iterative (explicit stack) rather than per-child recursion. DOM APIs
impose no depth cap, so an attacker-shaped tree (JSON/CRDT/editor data
built straight into the DOM — the IN_PLACE surface) deeper than the JS
call-stack budget would otherwise overflow native recursion here and
throw at the IN_PLACE entry pre-pass, before a single node is
sanitized, leaving the caller's live tree untouched (fail-open). See
campaign-3 F4. A heap stack keeps depth off the call stack.
Each work item is either a node to descend into, or a deferred
`_sanitizeShadowDOM` for an already-walked shadow root. The deferred
form preserves the original post-order discipline: a shadow root's
nested shadow roots are discovered before the outer shadow is
sanitized (which may remove hosts). Pushes are in reverse of the
desired processing order (LIFO): template content, then children, then
the shadow-sanitize, then the shadow walk — so the order matches the
previous recursion exactly. */
const t=[{node:e,shadow:null}];for(;t.length>0;){const e=t.pop();
/* Deferred shadow-DOM sanitisation: runs after its subtree was walked. */if(e.shadow){ut(e.shadow);continue}const n=e.node,o=1===(C?C(n):n.nodeType),r=h(n);if(r)for(let e=r.length-1;e>=0;--e)t.push({node:r[e],shadow:null});
/* (pushed before children → processed after them, matching the old
"template content last" order) When the node is a <template>,
descend into its content. */if(o){const e=w?w(n):null;if("string"==typeof e&&"template"===ze(e)){const e=n.content;tt(e)&&t.push({node:e,shadow:null})}}
/* Shadow root (processed first): walk its subtree, then sanitise it.
Realm-safe check (GHSA-hpcv-96wg-7vj8): nodeType-based detection
rather than `instanceof DocumentFragment`, which is realm-bound and
silently skipped foreign-realm shadow roots (e.g.
iframe.contentDocument attachShadow). */if(o){const e=v(n);tt(e)&&
/* Push the deferred sanitise first so it pops after the shadow
walk we push next, i.e. nested shadow roots are discovered
before this one is sanitised. */
t.push({node:null,shadow:e},{node:e,shadow:null})}}};
/**
* Handle a node whose tag is forbidden or not allowlisted: keep
* allowed custom elements (false return exits _sanitizeElements
* early - namespace/fallback checks and the afterSanitizeElements
* hook are intentionally skipped for kept custom elements), else
* hoist content per KEEP_CONTENT and remove.
*
* @param currentNode the disallowed node
* @param tagName the node's transformCaseFunc'd tag name
* @return true if the node was removed, false if kept
*/
// eslint-disable-next-line complexity
return n.sanitize=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=null,s=null,a=null,i=null;
/* Stringify, in case dirty is an object */
if(
/* Make sure we have a string to sanitize.
DO NOT return early, as this will return the wrong type if
the user has requested a DOM object rather than a string */
Ae=!e,Ae&&(e="\x3c!--\x3e"),"string"!=typeof e&&!nt(e)&&(e=function(e){switch(typeof e){case"string":return e;case"number":return By(e);case"boolean":return Py(e);case"bigint":return Dy?Dy(e):"0";case"symbol":return Ly?Ly(e):"Symbol()";case"undefined":default:return Iy(e);case"function":case"object":{if(null===e)return Iy(e);const t=e,n=Vy(t,"toString");if("function"==typeof n){const e=n(t);return"string"==typeof e?e:Iy(e)}return Iy(e)}}}(e),"string"!=typeof e))throw zy("dirty is not a string, aborting");
/* Return dirty HTML if DOMPurify cannot run */if(!n.isSupported)return e;
/* Assign config vars */ae?(
/* Persistent setConfig() path: _parseConfig is skipped, so the sets are
* not re-derived per call. Restore them from the pristine bindings
* captured at setConfig() time so a previous call's hook clone (mutated
* below) does not carry over. */
V=ie,K=le):$e(t)
/* Clone the hook-mutable allowlists before the walk whenever an
* uponSanitize* hook is registered. The hook event exposes ALLOWED_TAGS
* and ALLOWED_ATTR by reference (as allowedTags / allowedAttributes), so
* a hook that widens them would otherwise mutate the shared set
* permanently: across later calls and across every element. Cloning per
* walk keeps documented in-call widening working while scoping it to the
* call. A single guard for both config paths - the per-call path rebinds
* the sets in _parseConfig each call, the persistent path restores them
* from the captured bindings just above - so the two cannot diverge. */,(L.uponSanitizeElement.length>0||L.uponSanitizeAttribute.length>0)&&(V=qy(V)),L.uponSanitizeAttribute.length>0&&(K=qy(K))
/* Clean up removed elements */,n.removed=[];
/* Resolve IN_PLACE for this call without mutating persistent config.
Writing the IN_PLACE closure variable here leaks under setConfig(),
where _parseConfig is skipped on later calls: a single string call would
disable in-place mode for every subsequent node call, returning a
sanitized copy while leaving the caller's node — which in-place callers
keep using and whose return value they ignore — unsanitized. REPORT-2. */
const l=be&&"string"!=typeof e&&nt(e);if(l){
/* Do some early pre-sanitization to avoid unsafe root nodes.
Read nodeName through the cached prototype getter — a clobbering
child named "nodeName" on the form root would otherwise shadow
the property and let this check skip the root-allowlist
validation entirely. */
const t=w?w(e):e.nodeName;if("string"==typeof t){const e=ze(t);if(!V[e]||X[e])throw zy("root node is forbidden and cannot be sanitized in-place")}
/* Pre-flight the root through _isClobbered. The iterator-driven
removal path can not detach a parent-less root: _forceRemove
falls through to Element.prototype.remove(), which per spec
is a no-op on a node with no parent. A clobbered root would
then survive the main loop with its attributes uninspected,
because _sanitizeAttributes early-returns on _isClobbered. The
result would be an attacker-controlled form, complete with any
event-handler attributes the caller passed in, handed back to
the application unsanitized. Refuse to sanitize such a root
the same way we refuse a forbidden tag. GHSA-r47g-fvhr-h676. */if(et(e))throw zy("root node is clobbered and cannot be sanitized in-place");
/* Sanitize attached shadow roots before the main iterator runs.
The iterator does not descend into shadow trees. Same fail-closed
barrier as the main walk (campaign-3 F2): a custom-element reaction
inside a shadow root could abort this pre-pass before the walk runs,
which would otherwise leave the entire live tree unsanitized. */try{mt(e)}catch(t){throw Ke(e),t}}else if(nt(e))
/* If dirty is a DOM element, append to an empty document to avoid
elements being stripped by the parser */
o=Xe("\x3c!----\x3e"),s=o.ownerDocument.importNode(e,!0),1===s.nodeType&&"BODY"===s.nodeName||"HTML"===s.nodeName
/* Clonable shadow roots are deep-cloned by importNode(); sanitize
them before the main iterator runs, since the iterator does not
descend into shadow trees. The walk routes every read through a
cached prototype getter so clobbering descendants on a form root
cannot hide a shadow host from this pass. */?
/* Node is already a body, use as is */
o=s:
// eslint-disable-next-line unicorn/prefer-dom-node-append
o.appendChild(s),mt(s);else{
/* Exit directly if we have nothing to do */
if(!de&&!oe&&!se&&
// eslint-disable-next-line unicorn/prefer-includes
-1===e.indexOf("<"))return x&&me?R(e):e;
/* Initialize the document to work on */
/* Check we have a DOM node from the data */
if(o=Xe(e),!o)return de?null:me?E:""}
/* Remove first element node (ours) if FORCE_BODY is set */o&&ce&&We(o.firstChild)
/* Get node iterator */;const c=Ze(l?e:o);
/* Now start iterating over the created document.
The walk runs inside an exception barrier (campaign-3 F2): a re-entrant
engine/custom-element mutation can detach a node mid-walk so
`_forceRemove`'s parentless guard throws, aborting the loop. Without the
barrier the caller's in-place tree would be left half-sanitized with the
unvisited tail still armed. On any throw we fail closed — strip the
in-place root bare — then rethrow so the existing throw contract is
preserved. (String/DOM-copy paths never return the partial body, so the
propagating throw is already fail-closed there.) */try{for(;a=c.nextNode();)
/* Sanitize tags and elements */
rt(a),
/* Check attributes next */
dt(a),
/* Shadow DOM detected, sanitize it.
Realm-safe check (GHSA-hpcv-96wg-7vj8): nodeType-based detection
instead of instanceof, so foreign-realm <template>.content is
walked correctly. */
tt(a.content)&&ut(a.content)}catch(t){throw l&&Ke(e),t}
/* If we sanitized `dirty` in-place, return it. */if(l)
/* Fail-closed completion of the audit-5 F1 fix: every node removed from
the caller's live tree is detached but may still hold a queued
resource-event handler that fires in page scope after we return. The
move-hoist covers only disallowed-tag KEEP_CONTENT removals; strip the
non-allow-listed attributes off every other removed subtree (clobber,
mXSS, namespace, comments, KEEP_CONTENT:false, …) so those handlers are
cancelled before any event can fire. Runs synchronously, pre-return. */
return Cy(n.removed,e=>{e.element&&function(e){const t=[e];for(;t.length>0;){const e=t.pop();1===(C?C(e):e.nodeType)&&Ge(e);const n=h(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}}(e.element)}),oe&&Je(e),e;
/* Return sanitized string or DOM */if(de){if(oe&&Je(o),ue)for(i=B.call(o.ownerDocument);o.firstChild;)
// eslint-disable-next-line unicorn/prefer-dom-node-append
i.appendChild(o.firstChild);else i=o;return(K.shadowroot||K.shadowrootmode)&&(
/*
AdoptNode() is not used because internal state is not reset
(e.g. the past names map of a HTMLFormElement), this is safe
in theory but we would rather not risk another attack vector.
The state that is cloned by importNode() is explicitly defined
by the specs.
*/
i=D.call(r,i,!0)),i}let d=se?o.outerHTML:o.innerHTML;
/* Serialize doctype if allowed */return se&&V["!doctype"]&&o.ownerDocument&&o.ownerDocument.doctype&&o.ownerDocument.doctype.name&&Fy(uC,o.ownerDocument.doctype.name)&&(d="<!DOCTYPE "+o.ownerDocument.doctype.name+">\n"+d)
/* Sanitize final string template-safe */,oe&&(d=Qe(d)),x&&me?R(d):d},n.setConfig=function(){$e(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),ae=!0,ie=V,le=K},n.clearConfig=function(){Ue=null,ae=!1,ie=null,le=null,
// Drop any caller-supplied Trusted Types policy so it cannot poison later
// `RETURN_TRUSTED_TYPE` output. The internal default policy (cached, and
// never recreated — Trusted Types throws on duplicate names) is restored by
// the next `_parseConfig`. See GHSA-vxr8-fq34-vvx9.
x=S,E=""},n.isValidAttribute=function(e,t,n){
/* Initialize shared config vars if necessary. */
Ue||$e({});const o=ze(e),r=ze(t);return st(o,r,n)},n.addHook=function(e,t){"function"==typeof t&&My(L,e)&&Sy(L[e],t)
/* Reject unknown entry points. Without this, a non-hook key (e.g.
* '__proto__') indexes off the prototype chain rather than a real
* hook array, and arrayPush then writes to Object.prototype. Guard
* with an own-property check against the known hook names. */},n.removeHook=function(e,t){if(My(L,e)){if(void 0!==t){const n=wy(L[e],t);return-1===n?void 0:Ey(L[e],n,1)[0]}return xy(L[e])}},n.removeHooks=function(e){My(L,e)&&(L[e]=[])},n.removeAllHooks=function(){L={afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},n}();const CC=Pt.each,wC=Pt.trim,xC=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],SC={ftp:21,http:80,https:443,mailto:25},EC=["img","video"],_C=(e,t,n)=>{const o=(e=>{try{return decodeURIComponent(e)}catch(t){return unescape(e)}})(t).replace(/\s/g,"");return!e.allow_script_urls&&(!!/((java|vb)script|mhtml):/i.test(o)||!e.allow_html_data_urls&&(/^data:image\//i.test(o)?((e,t)=>C(e)?!e:!C(t)||!H(EC,t))(e.allow_svg_data_urls,n)&&/^data:image\/svg\+xml/i.test(o):/^data:/i.test(o)))};class kC{static parseDataUri(e){let t;const n=decodeURIComponent(e).split(","),o=/data:([^;]+)/.exec(n[0]);return o&&(t=o[1]),{type:t,data:n[1]}}static isDomSafe(e,t,n={}){if(n.allow_script_urls)return!0;{const o=hs.decode(e).replace(/[\s\u0000-\u001F]+/g,"");return!_C(n,o,t)}}static getDocumentBaseUrl(e){var t;let n;return n=0!==e.protocol.indexOf("http")&&"file:"!==e.protocol?null!==(t=e.href)&&void 0!==t?t:"":e.protocol+"//"+e.host+e.pathname,/^[^:]+:\/\/\/?[^\/]+\//.test(n)&&(n=n.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(n)||(n+="/")),n}constructor(e,t={}){this.path="",this.directory="",e=wC(e),this.settings=t;const n=t.base_uri,o=this;if(/^([\w\-]+):([^\/]{2})/i.test(e)||/^\s*#/.test(e))return void(o.source=e);const r=0===e.indexOf("//");if(0!==e.indexOf("/")||r||(e=(n&&n.protocol||"http")+"://mce_host"+e),!/^[\w\-]*:?\/\//.test(e)){const t=n?n.path:new kC(document.location.href).directory;if(""===(null==n?void 0:n.protocol))e="//mce_host"+o.toAbsPath(t,e);else{const r=/([^#?]*)([#?]?.*)/.exec(e);r&&(e=(n&&n.protocol||"http")+"://mce_host"+o.toAbsPath(t,r[1])+r[2])}}e=e.replace(/@@/g,"(mce_at)");const s=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?(\[[a-zA-Z0-9:.%]+\]|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);s&&CC(xC,(e,t)=>{let n=s[t];n&&(n=n.replace(/\(mce_at\)/g,"@@")),o[e]=n}),n&&(o.protocol||(o.protocol=n.protocol),o.userInfo||(o.userInfo=n.userInfo),o.port||"mce_host"!==o.host||(o.port=n.port),o.host&&"mce_host"!==o.host||(o.host=n.host),o.source=""),r&&(o.protocol="")}setPath(e){const t=/^(.*?)\/?(\w+)?$/.exec(e);t&&(this.path=t[0],this.directory=t[1],this.file=t[2]),this.source="",this.getURI()}toRelative(e){if("./"===e)return e;const t=new kC(e,{base_uri:this});if("mce_host"!==t.host&&this.host!==t.host&&t.host||this.port!==t.port||this.protocol!==t.protocol&&""!==t.protocol)return t.getURI();const n=this.getURI(),o=t.getURI();if(n===o||"/"===n.charAt(n.length-1)&&n.substr(0,n.length-1)===o)return n;let r=this.toRelPath(this.path,t.path);return t.query&&(r+="?"+t.query),t.anchor&&(r+="#"+t.anchor),r}toAbsolute(e,t){const n=new kC(e,{base_uri:this});return n.getURI(t&&this.isSameOrigin(n))}isSameOrigin(e){if(this.host==e.host&&this.protocol==e.protocol){if(this.port==e.port)return!0;const t=this.protocol?SC[this.protocol]:null;if(t&&(this.port||t)==(e.port||t))return!0}return!1}toRelPath(e,t){let n,o,r=0,s="";const a=e.substring(0,e.lastIndexOf("/")).split("/"),i=t.split("/");if(a.length>=i.length)for(n=0,o=a.length;n<o;n++)if(n>=i.length||a[n]!==i[n]){r=n+1;break}if(a.length<i.length)for(n=0,o=i.length;n<o;n++)if(n>=a.length||a[n]!==i[n]){r=n+1;break}if(1===r)return t;for(n=0,o=a.length-(r-1);n<o;n++)s+="../";for(n=r-1,o=i.length;n<o;n++)s+=n!==r-1?"/"+i[n]:i[n];return s}toAbsPath(e,t){let n=0;const o=/\/$/.test(t)?"/":"",r=e.split("/"),s=t.split("/"),a=[];CC(r,e=>{e&&a.push(e)});const i=[];for(let e=s.length-1;e>=0;e--)0!==s[e].length&&"."!==s[e]&&(".."!==s[e]?n>0?n--:i.push(s[e]):n++);const l=a.length-n;let c;return c=l<=0?oe(i).join("/"):a.slice(0,l).join("/")+"/"+oe(i).join("/"),0!==c.indexOf("/")&&(c="/"+c),o&&c.lastIndexOf("/")!==c.length-1&&(c+=o),c}getURI(e=!1){let t;return this.source&&!e||(t="",e||(this.protocol?t+=this.protocol+"://":t+="//",this.userInfo&&(t+=this.userInfo+"@"),this.host&&(t+=this.host),this.port&&(t+=":"+this.port)),this.path&&(t+=this.path),this.query&&(t+="?"+this.query),this.anchor&&(t+="#"+this.anchor),this.source=t),this.source}}const NC=Pt.makeMap("src,href,data,background,action,formaction,poster,xlink:href"),RC="data-mce-type";let AC=0;const TC=(e,t,n,o,r)=>{var s,a,i,l;const c=t.validate;8===e.nodeType&&!t.allow_conditional_comments&&/^\[if/i.test(null!==(s=e.nodeValue)&&void 0!==s?s:"")&&(e.nodeValue=" "+e.nodeValue);const d=null!==(a=null==r?void 0:r.tagName)&&void 0!==a?a:e.nodeName.toLowerCase();if("html"!==o&&n.isValid(o))return void(C(r)&&(r.allowedTags[d]=!0));if(1!==e.nodeType||"body"===d)return;const u=yn(e),f=nn(u,RC),g=en(u,"data-mce-bogus");if(!f&&m(g))return void(C(r)?("all"===g&&wo(u),r.allowedTags[d]=!1):"all"===g?xo(u):So(u));const p=n.getElementRule(d);if(c&&!p)return C(r)?(Ee(n.getSpecialElements(),d)&&wo(u),void(r.allowedTags[d]=!1)):void(Ee(n.getSpecialElements(),d)?xo(u):So(u));if(C(r)&&(r.allowedTags[d]=!0),c&&p&&!f){if(V(null!==(i=p.attributesForced)&&void 0!==i?i:[],e=>{Qt(u,e.name,"{$uid}"===e.value?"mce_"+AC++:e.value)}),V(null!==(l=p.attributesDefault)&&void 0!==l?l:[],e=>{nn(u,e.name)||Qt(u,e.name,"{$uid}"===e.value?"mce_"+AC++:e.value)}),p.attributesRequired&&!$(p.attributesRequired,e=>nn(u,e)))return void(C(r)?r.allowedTags[d]=!1:So(u));if(p.removeEmptyAttrs&&(e=>{const t=e.dom.attributes;return null==t||0===t.length})(u))return void(C(r)?r.allowedTags[d]=!1:So(u));p.outputName&&p.outputName!==d&&((e,t)=>{const n=((e,t)=>{const n=bn(t),o=rn(e);return Jt(n,o),n})(e,t);ho(e,n);const o=Mn(e);Co(n,o),xo(e)})(u,p.outputName)}},OC=(e,t,n,o,r,s)=>"html"===n||Or(o)?!(r in NC&&_C(e,s,o))&&(!e.validate||t.isValid(o,r)||$e(r,"data-")||$e(r,"aria-")):!BC(r),BC=e=>/^on[a-z]/i.test(e),PC=(e,t)=>e.hasAttribute(RC)&&("id"===t||"class"===t||"style"===t),DC=(e,t)=>e in t.getBoolAttrs(),LC=(e,t,n,o)=>{const{attributes:r}=e;for(let s=r.length-1;s>=0;s--){const a=r[s],i=a.name,l=a.value;OC(t,n,o,e.tagName.toLowerCase(),i,l)||PC(e,i)?DC(i,n)&&e.setAttribute(i,i):e.removeAttribute(i)}},MC=(e,t,n)=>{const o=yC();return o.addHook("uponSanitizeElement",(o,r)=>{TC(o,e,t,n.track(o),r)}),o.addHook("uponSanitizeAttribute",(o,r)=>{((e,t,n,o,r)=>{const s=e.tagName.toLowerCase(),{attrName:a,attrValue:i}=r;r.keepAttr=OC(t,n,o,s,a,i),r.keepAttr?(r.allowedAttributes[a]=!0,DC(a,n)&&(r.attrValue=a),t.allow_svg_data_urls&&$e(i,"data:image/svg+xml")&&(r.forceKeepAttr=!0)):PC(e,a)&&(r.forceKeepAttr=!0)})(o,e,t,n.current(),r)}),o},IC=e=>{const t=["type","href","role","arcrole","title","show","actuate","label","from","to"].map(e=>`xlink:${e}`),n={IN_PLACE:!0,USE_PROFILES:{html:!0,svg:!0,svgFilters:!0},ALLOWED_ATTR:t};return yC().sanitize(e,n),e.innerHTML},FC=Pt.makeMap,zC=Pt.extend,UC=(e,t,n,o)=>{const r=e.name,s=r in n&&"title"!==r&&"textarea"!==r&&"noscript"!==r,a=t.childNodes;for(let t=0,r=a.length;t<r;t++){const r=a[t],i=new Qg(r.nodeName.toLowerCase(),r.nodeType);if(Jo(r)){const e=r.attributes;for(let t=0,n=e.length;t<n;t++){const n=e[t];i.attr(n.name,n.value)}Or(i.name)&&(o(r),i.value=r.innerHTML)}else lr(r)?(i.value=r.data,s&&(i.raw=!0)):(ur(r)||cr(r)||dr(r))&&(i.value=r.data);Or(i.name)||UC(i,r,n,o),e.append(i)}},jC=(e={},t=Ps())=>{const n=Yv(),o=Yv(),r={validate:!0,root_name:"body",sanitize:!0,...e},s=new DOMParser,a=((e,t)=>{const n=(()=>{let e=[];const t=()=>e[e.length-1];return{track:n=>{Br(n)&&e.push(n);let o=t();for(;o&&!o.contains(n);)e.pop(),o=t();return Pr(o)},current:()=>Pr(t()),reset:()=>{e=[]}}})();if(e.sanitize){const o=MC(e,t,n),r=(t,r)=>{o.sanitize(t,((e,t)=>{const n={IN_PLACE:!0,ALLOW_UNKNOWN_PROTOCOLS:!0,ALLOWED_TAGS:["#comment","#cdata-section","body"],ALLOWED_ATTR:[],SAFE_FOR_XML:!1};return n.PARSER_MEDIA_TYPE=t,e.allow_script_urls?n.ALLOWED_URI_REGEXP=/.*/:e.allow_html_data_urls&&(n.ALLOWED_URI_REGEXP=/^(?!(\w+script|mhtml):)/i),n})(e,r)),o.removed=[],n.reset()};return{sanitizeHtmlElement:r,sanitizeNamespaceElement:IC}}return{sanitizeHtmlElement:(o,r)=>{const s=document.createNodeIterator(o,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_COMMENT|NodeFilter.SHOW_TEXT);let a;for(;a=s.nextNode();){const o=n.track(a);TC(a,e,t,o),Jo(a)&&LC(a,e,t,o)}n.reset()},sanitizeNamespaceElement:E}})(r,t),i=n.addFilter,l=n.getFilters,c=n.removeFilter,d=o.addFilter,u=o.getFilters,f=o.removeFilter,g=(e,n)=>{const o=m(n.attr(RC)),r=1===n.type&&!Ee(e,n.name)&&!Yr(t,n)&&!Or(n.name);return 3===n.type||r&&!o},p={schema:t,addAttributeFilter:d,getAttributeFilters:u,removeAttributeFilter:f,addNodeFilter:i,getNodeFilters:l,removeNodeFilter:c,parse:(e,n={})=>{var o;const i=r.validate,c=null!==(o=n.context)&&void 0!==o?o:r.root_name,d=((e,n,o="html")=>{const r="xhtml"===o?"application/xhtml+xml":"text/html",i=Ee(t.getSpecialElements(),n.toLowerCase()),l=i?`<${n}>${e}</${n}>`:e,c="xhtml"===o?`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>${l}</body></html>`:`<body>${l}</body>`,d=s.parseFromString(c,r).body;return a.sanitizeHtmlElement(d,r),i?d.firstChild:d})(e,c,n.format);jr(t,d);const m=new Qg(c,11);UC(m,d,t.getSpecialElements(),a.sanitizeNamespaceElement),d.innerHTML="";const[f,p]=((e,t,n,o)=>{const r=n.validate,s=t.getNonEmptyElements(),a=t.getWhitespaceElements(),i=zC(FC("script,style,head,html,body,title,meta,param"),t.getBlockElements()),l=Os(t),c=/[ \t\r\n]+/g,d=/^[ \t\r\n]+/,u=/[ \t\r\n]+$/,m=e=>{let t=e.parent;for(;C(t);){if(t.name in a)return!0;t=t.parent}return!1},f=n=>n.name in i||Yr(t,n)||Or(n.name)&&n.parent===e,g=(t,n)=>{const r=n?t.prev:t.next;return!C(r)&&!y(t.parent)&&f(t.parent)&&(t.parent!==e||!0===o.isRootContent)};return[e=>{var t;if(3===e.type&&!m(e)){let n=null!==(t=e.value)&&void 0!==t?t:"";n=n.replace(c," "),(((e,t)=>C(e)&&(t(e)||"br"===e.name))(e.prev,f)||g(e,!0))&&(n=n.replace(d,"")),0===n.length?e.remove():e.value=n}},e=>{var i;if(1===e.type){const i=t.getElementRule(e.name);if(r&&i){const r=xb(t,s,a,e);i.paddInEmptyBlock&&r&&(e=>{let n=e;for(;C(n);){if(n.name in l)return xb(t,s,a,n);n=n.parent}return!1})(e)?Cb(n,o,f,e):i.removeEmpty&&r?f(e)?e.remove():e.unwrap():i.paddEmpty&&(r||(e=>{var t;return wb(e,"#text")&&(null===(t=null==e?void 0:e.firstChild)||void 0===t?void 0:t.value)===Vo})(e))&&Cb(n,o,f,e)}}else if(3===e.type&&!m(e)){let t=null!==(i=e.value)&&void 0!==i?i:"";(e.next&&f(e.next)||g(e,!1))&&(t=t.replace(u,"")),0===t.length?e.remove():e.value=t}}]})(m,t,r,n),h=[],b=i?e=>((e,n)=>{kb(t,e)&&n.push(e)})(e,h):E,v={nodes:{},attributes:{}},w=e=>bb(l(),u(),e,v);if(((e,t,n)=>{const o=[];for(let n=e,r=n;n;r=n,n=n.walk()){const s=n;V(t,e=>e(s)),y(s.parent)&&s!==e?n=r:o.push(s)}for(let e=o.length-1;e>=0;e--){const t=o[e];V(n,e=>e(t))}})(m,[f,w],[p,b]),h.reverse(),i&&h.length>0)if(n.context){const{pass:e,fail:o}=K(h,e=>e.parent===m);_b(o,t,m,w),n.invalid=e.length>0}else _b(h,t,m,w);const x=((e,t)=>{var n;const o=null!==(n=t.forced_root_block)&&void 0!==n?n:e.forced_root_block;return!1===o?"":!0===o?"p":o})(r,n);return x&&("body"===m.name||n.isRootContent)&&((e,n)=>{const o=zC(FC("script,style,head,html,body,title,meta,param"),t.getBlockElements()),s=/^[ \t\r\n]+/,a=/[ \t\r\n]+$/;let i=e.firstChild,l=null;const c=e=>{var t,n;e&&(i=e.firstChild,i&&3===i.type&&(i.value=null===(t=i.value)||void 0===t?void 0:t.replace(s,"")),i=e.lastChild,i&&3===i.type&&(i.value=null===(n=i.value)||void 0===n?void 0:n.replace(a,"")))};if(t.isValidChild(e.name,n.toLowerCase())){for(;i;){const t=i.next;g(o,i)?(l||(l=new Qg(n,1),l.attr(r.forced_root_block_attrs),e.insert(l,i)),l.append(i)):(c(l),l=null),i=t}c(l)}})(m,x),n.invalid||vb(v,n),m}};return((e,t)=>{var n,o;const r=e.schema;e.addAttributeFilter("href",e=>{let n=e.length;const o=e=>{const t=e?Pt.trim(e):"";return/\b(noopener)\b/g.test(t)?t:(e=>e.split(" ").filter(e=>e.length>0).concat(["noopener"]).sort().join(" "))(t)};if(!t.allow_unsafe_link_target)for(;n--;){const t=e[n];"a"===t.name&&"_blank"===t.attr("target")&&t.attr("rel",o(t.attr("rel")))}}),t.allow_html_in_named_anchor||e.addAttributeFilter("id,name",e=>{let t,n,o,r,s=e.length;for(;s--;)if(r=e[s],"a"===r.name&&r.firstChild&&!r.attr("href"))for(o=r.parent,t=r.lastChild;t&&o;)n=t.prev,o.insert(t,r),t=n}),t.fix_list_elements&&e.addNodeFilter("ul,ol",e=>{let t,n,o=e.length;for(;o--;)if(t=e[o],n=t.parent,n&&("ul"===n.name||"ol"===n.name))if(t.prev&&"li"===t.prev.name)t.prev.append(t);else{const e=new Qg("li",1);e.attr("style","list-style-type: none"),t.wrap(e)}});const s=r.getValidClasses();t.validate&&s&&e.addAttributeFilter("class",e=>{var t;let n=e.length;for(;n--;){const o=e[n],r=null!==(t=o.attr("class"))&&void 0!==t?t:"",a=Pt.explode(r," ");let i="";for(let e=0;e<a.length;e++){const t=a[e];let n=!1,r=s["*"];r&&r[t]&&(n=!0),r=s[o.name],!n&&r&&r[t]&&(n=!0),n&&(i&&(i+=" "),i+=t)}i.length||(i=null),o.attr("class",i)}}),((e,t)=>{const{blob_cache:n}=t;if(n){const t=e=>{const t=e.attr("src");(e=>e.attr("src")===Tt.transparentSrc||C(e.attr("data-mce-placeholder")))(e)||(e=>C(e.attr("data-mce-bogus")))(e)||y(t)||ny(n,t,!0).each(t=>{e.attr("src",t.blobUri())})};e.addAttributeFilter("src",e=>V(e,t))}})(e,t);const a=null!==(n=t.sandbox_iframes)&&void 0!==n&&n,i=me(null!==(o=t.sandbox_iframes_exclusions)&&void 0!==o?o:[]);t.convert_unsafe_embeds&&e.addNodeFilter("object,embed",e=>V(e,e=>{e.replace((({type:e,src:t,width:n,height:o}={},r,s)=>{const a=(e=>v(e)?"iframe":ay(e,"image")?"img":ay(e,"video")?"video":ay(e,"audio")?"audio":"iframe")(e),i=new Qg(a,1);return i.attr("audio"===a?{src:t}:{src:t,width:n,height:o}),"audio"!==a&&"video"!==a||i.attr("controls",""),"iframe"===a&&r&&sy(i,s),i})({type:e.attr("type"),src:"object"===e.name?e.attr("data"):e.attr("src"),width:e.attr("width"),height:e.attr("height")},a,i))})),a&&e.addNodeFilter("iframe",e=>V(e,e=>sy(e,i)))})(p,r),((e,t,n)=>{t.inline_styles&&Gv(e,t,n)})(p,r,t),p},HC=(e,t,n)=>{const o=(e=>Mb(e)?bp({validate:!1}).serialize(e):e)(e),r=t(o);if(r.isDefaultPrevented())return r;if(Mb(e)){if(r.content!==o){const t=jC({validate:!1,forced_root_block:!1,...n}).parse(r.content,{context:e.name});return{...r,content:t}}return{...r,content:e}}return r},$C=e=>({sanitize:Cd(e),sandbox_iframes:Nd(e),sandbox_iframes_exclusions:Rd(e)}),qC=(e,t)=>{if(t.no_events)return wl.value(t);{const n=((e,t)=>e.dispatch("BeforeGetContent",t))(e,t);return n.isDefaultPrevented()?wl.error(pf(e,{content:"",...n}).content):wl.value(n)}},VC=(e,t,n)=>{if(n.no_events)return t;{const o=HC(t,t=>pf(e,{...n,content:t}),$C(e));return o.content}},WC=(e,t)=>{if(t.no_events)return wl.value(t);{const n=HC(t.content,n=>((e,t)=>e.dispatch("BeforeSetContent",t))(e,{...t,content:n}),$C(e));return n.isDefaultPrevented()?(gf(e,n),wl.error(void 0)):wl.value(n)}},KC=(e,t,n)=>{n.no_events||gf(e,{...n,content:t})},YC=(e,t,n)=>({element:e,width:t,rows:n}),GC=(e,t)=>({element:e,cells:t}),XC=(e,t)=>({x:e,y:t}),ZC=(e,t)=>tn(e,t).bind(Ze).getOr(1),QC=(e,t,n)=>{const o=e.rows;return!!(o[n]?o[n].cells:[])[t]},JC=e=>X(e,(e,t)=>t.cells.length>e?t.cells.length:e,0),ew=(e,t)=>{const n=e.rows;for(let e=0;e<n.length;e++){const o=n[e].cells;for(let n=0;n<o.length;n++)if(En(o[n],t))return I.some(XC(n,e))}return I.none()},tw=(e,t,n,o,r)=>{const s=[],a=e.rows;for(let e=n;e<=r;e++){const n=a[e].cells,r=t<o?n.slice(t,o+1):n.slice(o,t+1);s.push(GC(a[e].element,r))}return s},nw=e=>((e,t)=>{const n=La(e.element),o=bn("tbody");return Co(o,t),vo(n,o),n})(e,(e=>q(e.rows,e=>{const t=q(e.cells,e=>{const t=Ma(e);return on(t,"colspan"),on(t,"rowspan"),t}),n=La(e.element);return Co(n,t),n}))(e)),ow=(e,t,n)=>{const o=yn(t.commonAncestorContainer),r=Fp(o,e),s=Y(r,e=>n.isWrapper(Ht(e))),a=((e,t)=>Q(e,e=>"li"===Ht(e)&&fm(e,t)).fold(N([]),t=>(e=>Q(e,e=>"ul"===Ht(e)||"ol"===Ht(e)))(e).map(e=>{const t=bn(Ht(e)),n=Ce(fo(e),(e,t)=>$e(t,"list-style"));return lo(t,n),[bn("li"),t]}).getOr([])))(r,t),i=s.concat(a.length?a:(e=>Va(e)?An(e).filter(qa).fold(N([]),t=>[e,t]):qa(e)?[e]:[])(o));return q(i,La)},rw=()=>If([]),sw=(e,t)=>((e,t)=>eo(t,"table",T(En,e)))(e,t[0]).bind(e=>{const n=t[0],o=t[t.length-1],r=(e=>{const t=YC(La(e),0,[]);return V(zo(e,"tr"),(e,n)=>{V(zo(e,"td,th"),(o,r)=>{((e,t,n,o,r)=>{const s=ZC(r,"rowspan"),a=ZC(r,"colspan"),i=e.rows;for(let e=n;e<n+s;e++){i[e]||(i[e]=GC(Ma(o),[]));for(let o=t;o<t+a;o++)i[e].cells[o]=e===n&&o===t?r:La(r)}})(t,((e,t,n)=>{for(;QC(e,t,n);)t++;return t})(t,r,n),n,e,o)})}),YC(t.element,JC(t.rows),t.rows)})(e);return((e,t,n)=>ew(e,t).bind(t=>ew(e,n).map(n=>((e,t,n)=>{const o=t.x,r=t.y,s=n.x,a=n.y,i=r<a?tw(e,o,r,s,a):tw(e,o,a,s,r);return YC(e.element,JC(i),i)})(e,t,n))))(r,n,o).map(e=>If([nw(e)]))}).getOrThunk(rw),aw=(e,t,n)=>{const o=lm(t,e);return o.length>0?sw(e,o):((e,t,n)=>t.length>0&&t[0].collapsed?rw():((e,t,n)=>((e,t)=>{const n=X(t,(e,t)=>(vo(t,e),t),e);return t.length>0?If([n]):n})(yn(t.cloneContents()),ow(e,t,n)))(e,t[0],n))(e,t,n)},iw=(e,t)=>t>=0&&t<e.length&&sm(e.charAt(t)),lw=e=>Ja(e.innerText),cw=e=>Jo(e)?e.outerHTML:lr(e)?hs.encodeRaw(e.data,!1):ur(e)?"\x3c!--"+e.data+"--\x3e":"",dw=(e,t)=>(((e,t)=>{let n=0;V(e,e=>{0===e[0]?n++:1===e[0]?(((e,t,n)=>{const o=(e=>{let t;const n=document.createElement("div"),o=document.createDocumentFragment();for(e&&(n.innerHTML=e);t=n.firstChild;)o.appendChild(t);return o})(t);if(e.hasChildNodes()&&n<e.childNodes.length){const t=e.childNodes[n];e.insertBefore(o,t)}else e.appendChild(o)})(t,e[1],n),n++):2===e[0]&&((e,t)=>{if(e.hasChildNodes()&&t<e.childNodes.length){const n=e.childNodes[t];e.removeChild(n)}})(t,n)})})(((e,t)=>{const n=e.length+t.length+2,o=new Array(n),r=new Array(n),s=(n,o,r,a,l)=>{const c=i(n,o,r,a);if(null===c||c.start===o&&c.diag===o-a||c.end===n&&c.diag===n-r){let s=n,i=r;for(;s<o||i<a;)s<o&&i<a&&e[s]===t[i]?(l.push([0,e[s]]),++s,++i):o-n>a-r?(l.push([2,e[s]]),++s):(l.push([1,t[i]]),++i)}else{s(n,c.start,r,c.start-c.diag,l);for(let t=c.start;t<c.end;++t)l.push([0,e[t]]);s(c.end,o,c.end-c.diag,a,l)}},a=(n,o,r,s)=>{let a=n;for(;a-o<s&&a<r&&e[a]===t[a-o];)++a;return((e,t,n)=>({start:e,end:t,diag:n}))(n,a,o)},i=(n,s,i,l)=>{const c=s-n,d=l-i;if(0===c||0===d)return null;const u=c-d,m=d+c,f=(m%2==0?m:m+1)/2;let g,p,h,b,v;for(o[1+f]=n,r[1+f]=s+1,g=0;g<=f;++g){for(p=-g;p<=g;p+=2){for(h=p+f,p===-g||p!==g&&o[h-1]<o[h+1]?o[h]=o[h+1]:o[h]=o[h-1]+1,b=o[h],v=b-n+i-p;b<s&&v<l&&e[b]===t[v];)o[h]=++b,++v;if(u%2!=0&&u-g<=p&&p<=u+g&&r[h-u]<=o[h])return a(r[h-u],p+n-i,s,l)}for(p=u-g;p<=u+g;p+=2){for(h=p+f-u,p===u-g||p!==u+g&&r[h+1]<=r[h-1]?r[h]=r[h+1]-1:r[h]=r[h-1],b=r[h]-1,v=b-n+i-p;b>=n&&v>=i&&e[b]===t[v];)r[h]=b--,v--;if(u%2==0&&-g<=p&&p<=g&&r[h]<=o[h+u])return a(r[h],p+n-i,s,l)}}return null},l=[];return s(0,e.length,0,t.length,l),l})(q(de(t.childNodes),cw),e),t),t),uw=Le(()=>document.implementation.createHTMLDocument("undo")),mw=e=>{const t=e.serializer.getTempAttrs(),n=up(e.getBody(),t);return(e=>null!==e.querySelector("iframe"))(n)?{type:"fragmented",fragments:Y(q(de(n.childNodes),_(Ja,cw)),e=>e.length>0),content:"",bookmark:null,beforeBookmark:null}:{type:"complete",fragments:null,content:Ja(n.innerHTML),bookmark:null,beforeBookmark:null}},fw=(e,t,n)=>{const o=n?t.beforeBookmark:t.bookmark;"fragmented"===t.type?dw(t.fragments,e.getBody()):e.setContent(t.content,{format:"raw",no_selection:!C(o)||!Wu(o)||!o.isFakeCaret}),o&&(e.selection.moveToBookmark(o),e.selection.scrollIntoView())},gw=e=>"fragmented"===e.type?e.fragments.join(""):e.content,pw=e=>{const t=bn("body",uw());return ko(t,gw(e)),V(zo(t,"*[data-mce-bogus]"),So),_o(t)},hw=(e,t)=>!(!e||!t)&&(!!((e,t)=>gw(e)===gw(t))(e,t)||((e,t)=>pw(e)===pw(t))(e,t)),bw=e=>0===e.get(),vw=(e,t,n)=>{bw(n)&&(e.typing=t)},yw=(e,t)=>{e.typing&&(vw(e,!1,t),e.add())},Cw=e=>({init:{bindEvents:E},undoManager:{beforeChange:(t,n)=>((e,t,n)=>{bw(t)&&n.set(vl(e.selection))})(e,t,n),add:(t,n,o,r,s,a)=>((e,t,n,o,r,s,a)=>{const i=mw(e),l=Pt.extend(s||{},i);if(!bw(o)||e.removed)return null;const c=t.data[n.get()];if(e.dispatch("BeforeAddUndo",{level:l,lastLevel:c,originalEvent:a}).isDefaultPrevented())return null;if(c&&hw(c,l))return null;t.data[n.get()]&&r.get().each(e=>{t.data[n.get()].beforeBookmark=e});const d=Ic(e);if(d&&t.data.length>d){for(let e=0;e<t.data.length-1;e++)t.data[e]=t.data[e+1];t.data.length--,n.set(t.data.length)}l.bookmark=vl(e.selection),n.get()<t.data.length-1&&(t.data.length=n.get()+1),t.data.push(l),n.set(t.data.length-1);const u={level:l,lastLevel:c,originalEvent:a};return n.get()>0?(e.setDirty(!0),e.dispatch("AddUndo",u),e.dispatch("change",u)):e.dispatch("AddUndo",u),l})(e,t,n,o,r,s,a),undo:(t,n,o)=>((e,t,n,o)=>{let r;return t.typing&&(t.add(),t.typing=!1,vw(t,!1,n)),o.get()>0&&(o.set(o.get()-1),r=t.data[o.get()],fw(e,r,!0),e.setDirty(!0),e.dispatch("Undo",{level:r})),r})(e,t,n,o),redo:(t,n)=>((e,t,n)=>{let o;return t.get()<n.length-1&&(t.set(t.get()+1),o=n[t.get()],fw(e,o,!1),e.setDirty(!0),e.dispatch("Redo",{level:o})),o})(e,t,n),clear:(t,n)=>((e,t,n)=>{t.data=[],n.set(0),t.typing=!1,e.dispatch("ClearUndos")})(e,t,n),reset:e=>(e=>{e.clear(),e.add()})(e),hasUndo:(t,n)=>((e,t,n)=>n.get()>0||t.typing&&t.data[0]&&!hw(mw(e),t.data[0]))(e,t,n),hasRedo:(e,t)=>((e,t)=>t.get()<e.data.length-1&&!e.typing)(e,t),transact:(e,t,n)=>((e,t,n)=>(yw(e,t),e.beforeChange(),e.ignore(n),e.add()))(e,t,n),ignore:(e,t)=>((e,t)=>{try{e.set(e.get()+1),t()}finally{e.set(e.get()-1)}})(e,t),extra:(t,n,o,r)=>((e,t,n,o,r)=>{if(t.transact(o)){const o=t.data[n.get()].bookmark,s=t.data[n.get()-1];fw(e,s,!0),t.transact(r)&&(t.data[n.get()-1].beforeBookmark=o)}})(e,t,n,o,r)},formatter:{match:(t,n,o,r)=>Wb(e,t,n,o,r),matchAll:(t,n)=>((e,t,n)=>{const o=[],r={},s=e.selection.getStart();return e.dom.getParent(s,s=>{for(let a=0;a<t.length;a++){const i=t[a];!r[i]&&Vb(e,s,i,n)&&(r[i]=!0,o.push(i))}},e.dom.getRoot()),o})(e,t,n),matchNode:(t,n,o,r)=>Vb(e,t,n,o,r),canApply:t=>((e,t)=>{const n=e.formatter.get(t),o=e.dom;if(n&&e.selection.isEditable()){const t=e.selection.getStart(),r=Bm(o,t);for(let e=n.length-1;e>=0;e--){const t=n[e];if(!Lm(t))return!0;for(let e=r.length-1;e>=0;e--)if(o.is(r[e],t.selector))return!0}}return!1})(e,t),closest:t=>((e,t)=>{const n=t=>En(t,yn(e.getBody()));return I.from(e.selection.getStart(!0)).bind(o=>zb(yn(o),n=>ue(t,t=>((t,n)=>Vb(e,t.dom,n)?I.some(n):I.none())(n,t)),n)).getOrNull()})(e,t),apply:(t,n,o)=>jv(e,t,n,o),remove:(t,n,o,r)=>Lv(e,t,n,o,r),toggle:(t,n,o)=>((e,t,n,o)=>{const r=e.formatter.get(t);r&&(!Wb(e,t,n,o)||"toggle"in r[0]&&!r[0].toggle?jv(e,t,n,o):Lv(e,t,n,o))})(e,t,n,o),formatChanged:(t,n,o,r,s)=>((e,t,n,o,r,s)=>(((e,t,n,o,r,s)=>{const a=t.get();V(n.split(","),t=>{const n=Se(a,t).getOrThunk(()=>{const e={withSimilar:{state:ua(!1),similar:!0,callbacks:[]},withoutSimilar:{state:ua(!1),similar:!1,callbacks:[]},withVars:[]};return a[t]=e,e}),i=()=>{const n=Vv(e);return qv(e,n,t,r,s).isSome()};if(v(s)){const e=r?n.withSimilar:n.withoutSimilar;e.callbacks.push(o),1===e.callbacks.length&&e.state.set(i())}else n.withVars.push({state:ua(i()),similar:r,vars:s,callback:o})}),t.set(a)})(e,t,n,o,r,s),{unbind:()=>((e,t,n)=>{const o=e.get();V(t.split(","),e=>Se(o,e).each(t=>{o[e]={withSimilar:{...t.withSimilar,callbacks:Y(t.withSimilar.callbacks,e=>e!==n)},withoutSimilar:{...t.withoutSimilar,callbacks:Y(t.withoutSimilar.callbacks,e=>e!==n)},withVars:Y(t.withVars,e=>e.callback!==n)}})),e.set(o)})(t,n,o)}))(e,t,n,o,r,s)},editor:{getContent:t=>((e,t)=>I.from(e.getBody()).fold(N("tree"===t.format?new Qg("body",11):""),n=>gp(e,t,n)))(e,t),setContent:(t,n)=>((e,t,n)=>I.from(e.getBody()).map(o=>Mb(t)?((e,t,n,o)=>{yb(e.parser.getNodeFilters(),e.parser.getAttributeFilters(),n);const r=bp({validate:!1},e.schema).serialize(n),s=Ja(Ya(yn(t))?r:Pt.trim(r));return Ib(e,s,o.no_selection),{content:n,html:s}})(e,o,t,n):((e,t,n,o)=>{if(0===(n=Ja(n)).length||/^\s+$/.test(n)){const r='<br data-mce-bogus="1">';"TABLE"===t.nodeName?n="<tr><td>"+r+"</td></tr>":/^(UL|OL)$/.test(t.nodeName)&&(n="<li>"+r+"</li>");const s=ql(e);return e.schema.isValidChild(t.nodeName.toLowerCase(),s.toLowerCase())?(n=r,n=e.dom.createHTML(s,Vl(e),n)):n||(n=r),Ib(e,n,o.no_selection),{content:n,html:n}}{"raw"!==o.format&&(n=bp({validate:!1},e.schema).serialize(e.parser.parse(n,{isRootContent:!0,insert:!0})));const r=Ya(yn(t))?n:Pt.trim(n);return Ib(e,r,o.no_selection),{content:r,html:r}}})(e,o,t,n)).getOr({content:t,html:Mb(n.content)?"":n.content}))(e,t,n),insertContent:(t,n)=>Lb(e,t,n),addVisual:t=>((e,t)=>{const n=e.dom,o=C(t)?t:e.getBody();V(n.select("table,a",o),t=>{switch(t.nodeName){case"TABLE":const o=Wc(e),r=n.getAttrib(t,"border");r&&"0"!==r||!e.hasVisual?n.removeClass(t,o):n.addClass(t,o);break;case"A":if(!n.getAttrib(t,"href")){const o=n.getAttrib(t,"name")||t.id,r=Kc(e);o&&e.hasVisual?n.addClass(t,r):n.removeClass(t,r)}}}),e.dispatch("VisualAid",{element:t,hasVisual:e.hasVisual})})(e,t)},selection:{getContent:(t,n)=>((e,t,n={})=>{const o=((e,t)=>({...e,format:t,get:!0,selection:!0,getInner:!0}))(n,t);return qC(e,o).fold(R,t=>{const n=((e,t)=>{if("text"===t.format)return(e=>I.from(e.selection.getRng()).map(t=>{var n;const o=I.from(e.dom.getParent(t.commonAncestorContainer,e.dom.isBlock)),r=e.getBody(),s=(e=>e.map(e=>e.nodeName).getOr("div").toLowerCase())(o),a=yn(t.cloneContents());mp(a),fp(a);const i=e.dom.add(r,s,{"data-mce-bogus":"all",style:"overflow: hidden; opacity: 0;"},a.dom),l=lw(i),c=Ja(null!==(n=i.textContent)&&void 0!==n?n:"");if(e.dom.remove(i),iw(c,0)||iw(c,c.length-1)){const e=o.getOr(r),t=lw(e),n=t.indexOf(l);return-1===n?l:(iw(t,n-1)?" ":"")+l+(iw(t,n+l.length)?" ":"")}return l}).getOr(""))(e);{const n=((e,t)=>{const n=e.selection.getRng(),o=e.dom.create("body"),r=e.selection.getSel(),s=Kg(e,im(r)),a=t.contextual?aw(yn(e.getBody()),s,e.schema).dom:n.cloneContents();return a&&o.appendChild(a),e.selection.serializer.serialize(o,t)})(e,t);return"tree"===t.format?n:e.selection.isCollapsed()?"":n}})(e,t);return VC(e,n,t)})})(e,t,n)},autocompleter:{addDecoration:E,removeDecoration:E},raw:{getModel:()=>I.none()}}),ww=e=>Ee(e.plugins,"rtc"),xw=e=>e.rtcInstance?e.rtcInstance:Cw(e),Sw=e=>{const t=e.rtcInstance;if(t)return t;throw new Error("Failed to get RTC instance not yet initialized.")},Ew=e=>Sw(e).init.bindEvents(),_w=e=>0===e.dom.length?(xo(e),I.none()):I.some(e),kw=(e,t,n,o,r)=>{e.bind(e=>((o?hh:ph)(e.dom,o?e.dom.length:0,r),t.filter(Kt).map(t=>((e,t,n,o,r)=>{const s=e.dom,a=t.dom,i=o?s.length:a.length;o?(bh(s,a,r,!1,!o),n.setStart(a,i)):(bh(a,s,r,!1,!o),n.setEnd(a,i))})(e,t,n,o,r)))).orThunk(()=>{const e=((e,t)=>e.filter(e=>cf.isBookmarkNode(e.dom)).bind(t?Pn:Bn))(t,o).or(t).filter(Kt);return e.map(e=>((e,t,n)=>{An(e).each(o=>{const r=e.dom;t&&ah(o,Zi(r,0),n)?ph(r,0,n):!t&&ih(o,Zi(r,r.length),n)&&hh(r,r.length,n)})})(e,o,r))})},Nw=(e,t,n)=>{if(Ee(e,t)){const o=Y(e[t],e=>e!==n);0===o.length?delete e[t]:e[t]=o}};const Rw=e=>!(!e||!e.ownerDocument)&&_n(yn(e.ownerDocument),yn(e)),Aw=(e,t,n,o)=>{let r,s;const{selectorChangedWithUnbind:a}=((e,t)=>{let n,o;const r=(t,n)=>Q(n,n=>e.is(n,t)),s=t=>e.getParents(t,void 0,e.getRoot());return{selectorChangedWithUnbind:(e,a)=>(n||(n={},o={},t.on("NodeChange",e=>{const t=e.element,a=s(t),i={};pe(n,(e,t)=>{r(t,a).each(n=>{o[t]||(V(e,e=>{e(!0,{node:n,selector:t,parents:a})}),o[t]=e),i[t]=e})}),pe(o,(e,n)=>{i[n]||(delete o[n],V(e,e=>{e(!1,{node:t,selector:n,parents:a})}))})})),n[e]||(n[e]=[]),n[e].push(a),r(e,s(t.selection.getStart())).each(()=>{o[e]=n[e]}),{unbind:()=>{Nw(n,e,a),Nw(o,e,a)}})}})(e,o),i=(e,t)=>((e,t,n={})=>{const o=((e,t)=>({format:"html",...e,set:!0,selection:!0,content:t}))(n,t);WC(e,o).each(t=>{const n=((e,t)=>{if("raw"!==t.format){const n=e.selection.getRng(),o=e.dom.getParent(n.commonAncestorContainer,e.dom.isBlock),r=o?{context:o.nodeName.toLowerCase()}:{},s=e.parser.parse(t.content,{forced_root_block:!1,...r,...t});return bp({validate:!1},e.schema).serialize(s)}return t.content})(e,t),o=e.selection.getRng();((e,t,n)=>{const o=I.from(t.firstChild).map(yn),r=I.from(t.lastChild).map(yn);e.deleteContents(),e.insertNode(t);const s=o.bind(Bn).filter(Kt).bind(_w),a=r.bind(Pn).filter(Kt).bind(_w);kw(s,o,e,!0,n),kw(a,r,e,!1,n),e.collapse(!1)})(o,o.createContextualFragment(n),e.schema),e.selection.setRng(o),hg(e,o),KC(e,n,t)})})(o,e,t),l=e=>{const t=d();t.collapse(!!e),u(t)},c=()=>t.getSelection?t.getSelection():t.document.selection,d=()=>{let n;const a=(e,t,n)=>{try{return t.compareBoundaryPoints(e,n)}catch(e){return-1}},i=t.document;if(C(o.bookmark)&&!zg(o)){const e=Ng(o);if(e.isSome())return e.map(e=>Kg(o,[e])[0]).getOr(i.createRange())}try{const e=c();e&&!Qo(e.anchorNode)&&(n=e.rangeCount>0?e.getRangeAt(0):i.createRange(),n=Kg(o,[n])[0])}catch(e){}if(n||(n=i.createRange()),mr(n.startContainer)&&n.collapsed){const t=e.getRoot();n.setStart(t,0),n.setEnd(t,0)}return r&&s&&(0===a(n.START_TO_START,n,r)&&0===a(n.END_TO_END,n,r)?n=s:(r=null,s=null)),n},u=(e,t)=>{if(!(e=>!!e&&Rw(e.startContainer)&&Rw(e.endContainer))(e))return;const n=c();if(e=o.dispatch("SetSelectionRange",{range:e,forward:t}).range,n){s=e;try{n.removeAllRanges(),n.addRange(e)}catch(e){}!1===t&&n.extend&&(n.collapse(e.endContainer,e.endOffset),n.extend(e.startContainer,e.startOffset)),r=n.rangeCount>0?n.getRangeAt(0):null}if(!e.collapsed&&e.startContainer===e.endContainer&&(null==n?void 0:n.setBaseAndExtent)&&e.endOffset-e.startOffset<2&&e.startContainer.hasChildNodes()){const t=e.startContainer.childNodes[e.startOffset];t&&"IMG"===t.nodeName&&(n.setBaseAndExtent(e.startContainer,e.startOffset,e.endContainer,e.endOffset),n.anchorNode===e.startContainer&&n.focusNode===e.endContainer||n.setBaseAndExtent(t,0,t,1))}o.dispatch("AfterSetSelectionRange",{range:e,forward:t})},m=()=>{const t=c(),n=null==t?void 0:t.anchorNode,o=null==t?void 0:t.focusNode;if(!t||!n||!o||Qo(n)||Qo(o))return!0;const r=e.createRng(),s=e.createRng();try{r.setStart(n,t.anchorOffset),r.collapse(!0),s.setStart(o,t.focusOffset),s.collapse(!0)}catch(e){return!0}return r.compareBoundaryPoints(r.START_TO_START,s)<=0},f={dom:e,win:t,serializer:n,editor:o,expand:(t={type:"word"})=>u(Xf(e).expand(d(),t)),collapse:l,setCursorLocation:(t,n)=>{const r=e.createRng();C(t)&&C(n)?(r.setStart(t,n),r.setEnd(t,n),u(r),l(!1)):(gm(e,r,o.getBody(),!0),u(r))},getContent:e=>((e,t={})=>((e,t,n)=>Sw(e).selection.getContent(t,n))(e,t.format?t.format:"html",t))(o,e),setContent:i,getBookmark:(e,t)=>g.getBookmark(e,t),moveToBookmark:e=>g.moveToBookmark(e),select:(t,n)=>(((e,t,n)=>I.from(t).bind(t=>I.from(t.parentNode).map(o=>{const r=e.nodeIndex(t),s=e.createRng();return s.setStart(o,r),s.setEnd(o,r+1),n&&(gm(e,s,t,!0),gm(e,s,t,!1)),s})))(e,t,n).each(u),t),isCollapsed:()=>{const e=d(),t=c();return!(!e||e.item)&&(e.compareEndPoints?0===e.compareEndPoints("StartToEnd",e):!t||e.collapsed)},isEditable:()=>{const t=d(),n=o.getBody().querySelectorAll('[data-mce-selected="1"]');return n.length>0?ne(n,t=>e.isEditable(t.parentElement)):Hg(e,t)},isForward:m,setNode:t=>(i(e.getOuterHTML(t)),t),getNode:()=>((e,t)=>{if(!t)return e;let n=t.startContainer,o=t.endContainer;const r=t.startOffset,s=t.endOffset;let a=t.commonAncestorContainer;t.collapsed||(n===o&&s-r<2&&n.hasChildNodes()&&(a=n.childNodes[r]),lr(n)&&lr(o)&&(n=n.length===r?Wg(n.nextSibling,!0):n.parentNode,o=0===s?Wg(o.previousSibling,!1):o.parentNode,n&&n===o&&(a=n)));const i=lr(a)?a.parentNode:a;return er(i)?i:e})(o.getBody(),d()),getSel:c,setRng:u,getRng:d,getStart:e=>qg(o.getBody(),d(),e),getEnd:e=>Vg(o.getBody(),d(),e),getSelectedBlocks:(t,n)=>((e,t,n,o)=>{const r=[],s=e.getRoot(),a=e.getParent(n||qg(s,t,t.collapsed),e.isBlock),i=e.getParent(o||Vg(s,t,t.collapsed),e.isBlock);if(a&&a!==s&&r.push(a),a&&i&&a!==i){let t;const n=new $o(a,s);for(;(t=n.next())&&t!==i;)e.isBlock(t)&&r.push(t)}return i&&a!==i&&i!==s&&r.push(i),r})(e,d(),t,n),normalize:()=>{const t=d(),n=c();if(!(im(n).length>1)&&pm(o)){const n=Kf(e,t);return n.each(e=>{u(e,m())}),n.getOr(t)}return t},selectorChanged:(e,t)=>(a(e,t),f),selectorChangedWithUnbind:a,getScrollContainer:()=>{let t,n=e.getRoot();for(;n&&"BODY"!==n.nodeName;){if(n.scrollHeight>n.clientHeight){t=n;break}n=n.parentNode}return t},scrollIntoView:(e,t)=>{C(e)?((e,t,n)=>{(e.inline?fg:pg)(e,t,n)})(o,e,t):hg(o,d(),t)},placeCaretAt:(e,t)=>u(zf(e,t,o.getDoc())),getBoundingClientRect:()=>{const e=d();return e.collapsed?Zi.fromRangeStart(e).getClientRects()[0]:e.getBoundingClientRect()},destroy:()=>{t=r=s=null,p.destroy()}},g=cf(f),p=Sf(f,o);return f.bookmarkManager=g,f.controlSelection=p,f},Tw=(e,t,n)=>{-1===Pt.inArray(t,n)&&(e.addAttributeFilter(n,(e,t)=>{let n=e.length;for(;n--;)e[n].attr(t,null)}),t.push(n))},Ow=(e,t)=>{const n=["data-mce-selected"],o={entity_encoding:"named",remove_trailing_brs:!0,pad_empty_with_br:!1,...e},r=t&&t.dom?t.dom:la.DOM,s=t&&t.schema?t.schema:Ps(o),a=jC(o,s);return((e,t,n)=>{e.addAttributeFilter("data-mce-tabindex",(e,t)=>{let n=e.length;for(;n--;){const o=e[n];o.attr("tabindex",o.attr("data-mce-tabindex")),o.attr(t,null)}}),e.addAttributeFilter("src,href,style",(e,o)=>{const r="data-mce-"+o,s=t.url_converter,a=t.url_converter_scope;let i=e.length;for(;i--;){const l=e[i];let c=l.attr(r);if(void 0!==c){if("style"===o)c=n.serializeStyle(n.parseStyle(c),l.name);else{const e={allow_script_urls:t.allow_script_urls,allow_html_data_urls:t.allow_html_data_urls,allow_svg_data_urls:t.allow_svg_data_urls};m(c)&&!kC.isDomSafe(c,l.name,e)?c=void 0:s&&m(c)&&(c=s.call(a,c,o,l.name))}l.attr(o,m(c)&&c.length>0?c:null),l.attr(r,null)}else c=l.attr(o),"style"===o?c=n.serializeStyle(n.parseStyle(c),l.name):s&&(c=s.call(a,c,o,l.name)),l.attr(o,c.length>0?c:null)}}),e.addAttributeFilter("class",e=>{let t=e.length;for(;t--;){const n=e[t];let o=n.attr("class");o&&(o=o.replace(/(?:^|\s)mce-item-\w+(?!\S)/g,""),n.attr("class",o.length>0?o:null))}}),e.addAttributeFilter("data-mce-type",(e,t,n)=>{let o=e.length;for(;o--;){const t=e[o];if("bookmark"===t.attr("data-mce-type")&&!n.cleanup){const e=I.from(t.firstChild).exists(e=>{var t;return!Qa(null!==(t=e.value)&&void 0!==t?t:"")});e?t.unwrap():t.remove()}}}),e.addNodeFilter("script,style",(e,n)=>{var o;const r=e=>e.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*((<!--)?(\s*\/\/)?\s*<!\[CDATA\[|(<!--\s*)?\/\*\s*<!\[CDATA\[\s*\*\/|(\/\/)?\s*<!--|\/\*\s*<!--\s*\*\/)\s*[\r\n]*/gi,"").replace(/\s*(\/\*\s*\]\]>\s*\*\/(-->)?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"");let s=e.length;for(;s--;){const a=e[s],i=a.firstChild,l=null!==(o=null==i?void 0:i.value)&&void 0!==o?o:"";if("script"===n){const e=a.attr("type");e&&a.attr("type","mce-no/type"===e?null:e.replace(/^mce\-/,"")),"xhtml"===t.element_format&&i&&l.length>0&&(i.value="// <![CDATA[\n"+r(l)+"\n// ]]>")}else"xhtml"===t.element_format&&i&&l.length>0&&(i.value="\x3c!--\n"+r(l)+"\n--\x3e")}}),e.addNodeFilter("#comment",e=>{let o=e.length;for(;o--;){const r=e[o],s=r.value;if(t.preserve_cdata&&0===(null==s?void 0:s.indexOf("[CDATA[")))r.name="#cdata",r.type=4,r.value=n.decode(s.replace(/^\[CDATA\[|\]\]$/g,""));else if(0===(null==s?void 0:s.indexOf("mce:protected "))){const e=unescape(s).substr(14),n=t.protect,o=n&&n.length>0&&$(n,t=>{const n=e.match(t);return null!==n&&n[0]===e});o?(r.name="#text",r.type=3,r.raw=!0,r.value=e):r.remove()}}}),e.addNodeFilter("xml:namespace,input",(e,t)=>{let n=e.length;for(;n--;){const o=e[n];7===o.type?o.remove():1===o.type&&("input"!==t||o.attr("type")||o.attr("type","text"))}}),e.addAttributeFilter("data-mce-type",t=>{V(t,t=>{"format-caret"===t.attr("data-mce-type")&&(t.isEmpty(e.schema.getNonEmptyElements())?t.remove():t.unwrap())})}),e.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",(e,t)=>{let n=e.length;for(;n--;)e[n].attr(t,null)}),t.remove_trailing_brs&&((e,t,n)=>{t.addNodeFilter("br",(t,o,r)=>{const s=Pt.extend({},n.getBlockElements()),a=n.getNonEmptyElements(),i=n.getWhitespaceElements();s.body=1;const l=e=>e.name in s||Yr(n,e);for(let o=0,c=t.length;o<c;o++){let c=t[o],d=c.parent;if(d&&l(d)&&c===d.lastChild){let t=c.prev;for(;t;){const e=t.name;if("span"!==e||"bookmark"!==t.attr("data-mce-type")){"br"===e&&(c=null);break}t=t.prev}if(c&&(c.remove(),xb(n,a,i,d))){const t=n.getElementRule(d.name);t&&(t.removeEmpty?d.remove():t.paddEmpty&&Cb(e,r,l,d))}}else{let e=c;for(;d&&d.firstChild===e&&d.lastChild===e&&(e=d,!s[d.name]);)d=d.parent;if(e===d){const e=new Qg("#text",3);e.value=Vo,c.replace(e)}}}})})(t,e,e.schema)})(a,o,r),{schema:s,addNodeFilter:a.addNodeFilter,addAttributeFilter:a.addAttributeFilter,serialize:(e,n={})=>{const i={format:"html",...n},l=((e,t,n)=>((e,t)=>C(e)&&e.hasEventListeners("PreProcess")&&!t.no_events)(e,n)?((e,t,n)=>{let o;const r=e.dom;let s=t.cloneNode(!0);const a=document.implementation;if(a.createHTMLDocument){const e=a.createHTMLDocument("");Pt.each("BODY"===s.nodeName?s.childNodes:[s],t=>{e.body.appendChild(e.importNode(t,!0))}),s="BODY"!==s.nodeName?e.body.firstChild:e.body,o=r.doc,r.doc=e}return((e,t)=>{e.dispatch("PreProcess",t)})(e,{...n,node:s}),o&&(r.doc=o),s})(e,t,n):t)(t,e,i),c=((e,t,n)=>{const o=Ja(n.getInner?t.innerHTML:e.getOuterHTML(t));return n.selection||Ya(yn(t))?o:Pt.trim(o)})(r,l,i),d=((e,t,n)=>{const o=n.selection?{forced_root_block:!1,...n}:n,r=e.parse(t,o);return(e=>{const t=e=>"br"===(null==e?void 0:e.name),n=e.lastChild;if(t(n)){const e=n.prev;t(e)&&(n.remove(),e.remove())}})(r),r})(a,c,i);return"tree"===i.format?d:((e,t,n,o,r)=>{const s=((e,t,n)=>bp(e,t).serialize(n))(t,n,o);return((e,t,n)=>{if(!t.no_events&&e){const o=((e,t)=>e.dispatch("PostProcess",t))(e,{...t,content:n});return o.content}return n})(e,r,s)})(t,o,s,d,i)},addRules:s.addValidElements,setRules:s.setValidElements,addTempAttr:T(Tw,a,n),getTempAttrs:N(n),getNodeFilters:a.getNodeFilters,getAttributeFilters:a.getAttributeFilters,removeNodeFilter:a.removeNodeFilter,removeAttributeFilter:a.removeAttributeFilter}},Bw=(e,t)=>{const n=Ow(e,t);return{schema:n.schema,addNodeFilter:n.addNodeFilter,addAttributeFilter:n.addAttributeFilter,serialize:n.serialize,addRules:n.addRules,setRules:n.setRules,addTempAttr:n.addTempAttr,getTempAttrs:n.getTempAttrs,getNodeFilters:n.getNodeFilters,getAttributeFilters:n.getAttributeFilters,removeNodeFilter:n.removeNodeFilter,removeAttributeFilter:n.removeAttributeFilter}},Pw=(e,t,n={})=>{const o=((e,t)=>({format:"html",...e,set:!0,content:t}))(n,t);return WC(e,o).map(t=>{const n=((e,t,n)=>xw(e).editor.setContent(t,n))(e,t.content,t);return KC(e,n.html,t),n.content}).getOr(t)},Dw="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(","),Lw="".split(","),Mw="bbcode,colorpicker,contextmenu,fullpage,legacyoutput,spellchecker,textcolor".split(","),Iw=[{name:"rtc",replacedWith:!1}],Fw=(e,t)=>{const n=Y(t,t=>Ee(e,t));return ae(n)},zw=e=>{const t=Fw(e,Dw),n=e.forced_root_block;return!1!==n&&""!==n||t.push("forced_root_block (false only)"),ae(t)},Uw=e=>Fw(e,Lw),jw=(e,t)=>{const n=Pt.makeMap(e.plugins," "),o=Y(t,e=>Ee(n,e));return ae(o)},Hw=e=>jw(e,Mw),$w=e=>jw(e,Iw.map(e=>e.name)),qw=e=>Q(Iw,t=>t.name===e).fold(()=>e,t=>t.replacedWith?`${e}, replaced by ${t.replacedWith}`:e),Vw=la.DOM,Ww=e=>I.from(e).each(e=>e.destroy()),Kw=(()=>{const e={};return{add:(t,n)=>{e[t]=n},get:t=>e[t]?e[t]:{icons:{}},has:t=>Ee(e,t)}})(),Yw=ha.ModelManager,Gw=(e,t)=>t.dom[e],Xw=(e,t)=>parseInt(co(t,e),10),Zw=T(Gw,"clientWidth"),Qw=T(Gw,"clientHeight"),Jw=T(Xw,"margin-top"),ex=T(Xw,"margin-left"),tx=e=>{const t=[],n=()=>{const t=e.theme;return t&&t.getNotificationManagerImpl?t.getNotificationManagerImpl():(()=>{const e=()=>{throw new Error("Theme did not provide a NotificationManager implementation.")};return{open:e,close:e,getArgs:e}})()},o=()=>I.from(t[0]),r=()=>{V(t,e=>{e.reposition()})},s=e=>{J(t,t=>t===e).each(e=>{t.splice(e,1)})},a=(a,i=!0)=>e.removed||!(e=>{return(t=e.inline?e.getBody():e.getContentAreaContainer(),I.from(t).map(yn)).map(Gn).getOr(!1);var t})(e)?{}:(i&&e.dispatch("BeforeOpenNotification",{notification:a}),Q(t,e=>{return t=n().getArgs(e),o=a,!(t.type!==o.type||t.text!==o.text||t.progressBar||t.timeout||o.progressBar||o.timeout);var t,o}).getOrThunk(()=>{e.editorManager.setActive(e);const i=n().open(a,()=>{s(i),r(),Ug(e)&&o().fold(()=>e.focus(),e=>bg(yn(e.getEl())))});return(e=>{t.push(e)})(i),r(),e.dispatch("OpenNotification",{notification:{...i}}),i})),i=N(t);return(e=>{e.on("SkinLoaded",()=>{const t=wc(e);t&&a({text:t,type:"warning",timeout:0},!1),r()}),e.on("show ResizeEditor ResizeWindow NodeChange",()=>{requestAnimationFrame(r)}),e.on("remove",()=>{V(t.slice(),e=>{n().close(e)})})})(e),{open:a,close:()=>{o().each(e=>{n().close(e),s(e),r()})},getNotifications:i}},nx=ha.PluginManager,ox=ha.ThemeManager,rx=e=>{let t=[];const n=()=>{const t=e.theme;return t&&t.getWindowManagerImpl?t.getWindowManagerImpl():(()=>{const e=()=>{throw new Error("Theme did not provide a WindowManager implementation.")};return{open:e,openUrl:e,alert:e,confirm:e,close:e}})()},o=(e,t)=>(...n)=>t?t.apply(e,n):void 0,r=n=>{(t=>{e.dispatch("CloseWindow",{dialog:t})})(n),t=Y(t,e=>e!==n),0===t.length&&e.focus()},s=n=>{e.editorManager.setActive(e),kg(e),e.ui.show();const o=n();return(n=>{t.push(n),(t=>{e.dispatch("OpenWindow",{dialog:t})})(n)})(o),o};return e.on("remove",()=>{V(t,e=>{n().close(e)})}),{open:(e,t)=>s(()=>n().open(e,t,r)),openUrl:e=>s(()=>n().openUrl(e,r)),alert:(e,t,r)=>{const s=n();s.alert(e,o(r||s,t))},confirm:(e,t,r)=>{const s=n();s.confirm(e,o(r||s,t))},close:()=>{I.from(t[t.length-1]).each(e=>{n().close(e),r(e)})}}},sx=(e,t)=>{e.notificationManager.open({type:"error",text:t})},ax=(e,t)=>{e._skinLoaded?sx(e,t):e.on("SkinLoaded",()=>{sx(e,t)})},ix=(e,t,n)=>{uf(e,t,{message:n}),console.error(n)},lx=(e,t,n)=>n?`Failed to load ${e}: ${n} from url ${t}`:`Failed to load ${e} url: ${t}`,cx=(e,...t)=>{const n=window.console;n&&(n.error?n.error(e,...t):n.log(e,...t))},dx=e=>"content/"+e+"/content.css",ux=(e,t)=>{const n=e.editorManager.baseURL+"/skins/content",o=`content${e.editorManager.suffix}.css`;return q(t,t=>(e=>hugerte.Resource.has(dx(e)))(t)?dx(t):(e=>/^[a-z0-9\-]+$/i.test(e))(t)&&!e.inline?`${n}/${t}/${o}`:e.documentBaseURI.toAbsolute(t))},mx=(e,t)=>{const n={};return{findAll:(o,r=M)=>{const s=Y((e=>e?de(e.getElementsByTagName("img")):[])(o),t=>{const n=t.src;return!t.hasAttribute("data-mce-bogus")&&!t.hasAttribute("data-mce-placeholder")&&!(!n||n===Tt.transparentSrc)&&($e(n,"blob:")?!e.isUploaded(n)&&r(t):!!$e(n,"data:")&&r(t))}),a=q(s,e=>{const o=e.src;if(Ee(n,o))return n[o].then(t=>m(t)?t:{image:e,blobInfo:t.blobInfo});{const r=((e,t)=>{const n=()=>Promise.reject("Invalid data URI");if($e(t,"blob:")){const s=e.getByUri(t);return C(s)?Promise.resolve(s):(o=t,$e(o,"blob:")?(e=>fetch(e).then(e=>e.ok?e.blob():Promise.reject()).catch(()=>Promise.reject({message:`Cannot convert ${e} to Blob. Resource might not exist or is inaccessible.`,uriType:"blob"})))(o):$e(o,"data:")?(r=o,new Promise((e,t)=>{Xv(r).bind(({type:e,data:t,base64Encoded:n})=>Zv(e,t,n)).fold(()=>t("Invalid data URI"),e)})):Promise.reject("Unknown URI format")).then(t=>Qv(t).then(o=>ey(o,!1,n=>I.some(ty(e,t,n))).getOrThunk(n)))}var o,r;return $e(t,"data:")?ny(e,t).fold(n,e=>Promise.resolve(e)):Promise.reject("Unknown image data format")})(t,o).then(t=>(delete n[o],{image:e,blobInfo:t})).catch(e=>(delete n[o],e));return n[o]=r,r}});return Promise.all(a)}}},fx=()=>{let e={};const t=(e,t)=>({status:e,resultUri:t}),n=t=>t in e;return{hasBlobUri:n,getResultUri:t=>{const n=e[t];return n?n.resultUri:null},isPending:t=>!!n(t)&&1===e[t].status,isUploaded:t=>!!n(t)&&2===e[t].status,markPending:n=>{e[n]=t(1,null)},markUploaded:(n,o)=>{e[n]=t(2,o)},removeFailed:t=>{delete e[t]},destroy:()=>{e={}}}};let gx=0;const px=(e,t)=>{const n={},o=(e,n)=>new Promise((o,r)=>{const s=new XMLHttpRequest;s.open("POST",t.url),s.withCredentials=t.credentials,s.upload.onprogress=e=>{n(e.loaded/e.total*100)},s.onerror=()=>{r("Image upload failed due to a XHR Transport error. Code: "+s.status)},s.onload=()=>{if(s.status<200||s.status>=300)return void r("HTTP Error: "+s.status);const e=JSON.parse(s.responseText);var n,a;e&&m(e.location)?o((n=t.basePath,a=e.location,n?n.replace(/\/$/,"")+"/"+a.replace(/^\//,""):a)):r("Invalid JSON: "+s.responseText)};const a=new FormData;a.append("file",e.blob(),e.filename()),s.send(a)}),r=w(t.handler)?t.handler:o,s=(e,t)=>({url:t,blobInfo:e,status:!0}),a=(e,t)=>({url:"",blobInfo:e,status:!1,error:t}),i=(e,t)=>{Pt.each(n[e],e=>{e(t)}),delete n[e]};return{upload:(l,c)=>t.url||r!==o?((t,o)=>(t=Pt.grep(t,t=>!e.isUploaded(t.blobUri())),Promise.all(Pt.map(t,t=>e.isPending(t.blobUri())?(e=>{const t=e.blobUri();return new Promise(e=>{n[t]=n[t]||[],n[t].push(e)})})(t):((t,n,o)=>(e.markPending(t.blobUri()),new Promise(r=>{let l,c;try{const d=()=>{l&&(l.close(),c=E)},u=n=>{d(),e.markUploaded(t.blobUri(),n),i(t.blobUri(),s(t,n)),r(s(t,n))},f=n=>{d(),e.removeFailed(t.blobUri()),i(t.blobUri(),a(t,n)),r(a(t,n))};c=e=>{e<0||e>100||I.from(l).orThunk(()=>I.from(o).map(P)).each(t=>{l=t,t.progressBar.value(e)})},n(t,c).then(u,e=>{f(m(e)?{message:e}:e)})}catch(e){r(a(t,e))}})))(t,r,o)))))(l,c):new Promise(e=>{e([])})}},hx=e=>()=>e.notificationManager.open({text:e.translate("Image uploading..."),type:"info",timeout:-1,progressBar:!0}),bx=(e,t)=>px(t,{url:nc(e),basePath:oc(e),credentials:rc(e),handler:sc(e)}),vx=e=>{const t=(()=>{let e=[];const t=e=>{if(!e.blob||!e.base64)throw new Error("blob and base64 representations of the image are required for BlobInfo to be created");const t=e.id||"blobid"+gx+++(()=>{const e=()=>Math.round(4294967295*Math.random()).toString(36);return"s"+(new Date).getTime().toString(36)+e()+e()+e()})(),n=e.name||t,o=e.blob;var r;return{id:N(t),name:N(n),filename:N(e.filename||n+"."+(r=o.type,{"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"}[r.toLowerCase()]||"dat")),blob:N(o),base64:N(e.base64),blobUri:N(e.blobUri||URL.createObjectURL(o)),uri:N(e.uri)}},n=t=>Q(e,t).getOrUndefined(),o=e=>n(t=>t.id()===e);return{create:(e,n,o,r,s)=>{if(m(e))return t({id:e,name:r,filename:s,blob:n,base64:o});if(f(e))return t(e);throw new Error("Unknown input type")},add:t=>{o(t.id())||e.push(t)},get:o,getByUri:e=>n(t=>t.blobUri()===e),getByData:(e,t)=>n(n=>n.base64()===e&&n.blob().type===t),findFirst:n,removeByUri:t=>{e=Y(e,e=>e.blobUri()!==t||(URL.revokeObjectURL(e.blobUri()),!1))},destroy:()=>{V(e,e=>{URL.revokeObjectURL(e.blobUri())}),e=[]}}})();let n,o;const r=fx(),s=[],a=t=>n=>e.selection?t(n):[],i=(e,t,n)=>{let o=0;do{o=e.indexOf(t,o),-1!==o&&(e=e.substring(0,o)+n+e.substr(o+t.length),o+=n.length-t.length+1)}while(-1!==o);return e},l=(e,t,n)=>{const o=`src="${n}"${n===Tt.transparentSrc?' data-mce-placeholder="1"':""}`;return e=i(e,`src="${t}"`,o),i(e,'data-mce-src="'+t+'"','data-mce-src="'+n+'"')},c=(t,n)=>{V(e.undoManager.data,e=>{"fragmented"===e.type?e.fragments=q(e.fragments,e=>l(e,t,n)):e.content=l(e.content,t,n)})},d=()=>(n||(n=bx(e,r)),p().then(a(o=>{const r=q(o,e=>e.blobInfo);return n.upload(r,hx(e)).then(a(n=>{const r=[];let s=!1;const a=q(n,(n,a)=>{const{blobInfo:i,image:l}=o[a];let d=!1;return n.status&&Jl(e)?(n.url&&!He(l.src,n.url)&&(s=!0),t.removeByUri(l.src),ww(e)||((t,n)=>{const o=e.convertURL(n,"src");var r;c(t.src,n),Jt(yn(t),{src:Ql(e)?(r=n,r+(-1===r.indexOf("?")?"?":"&")+(new Date).getTime()):n,"data-mce-src":o})})(l,n.url)):n.error&&(n.error.remove&&(c(l.src,Tt.transparentSrc),r.push(l),d=!0),((e,t)=>{ax(e,pa.translate(["Failed to upload image: {0}",t]))})(e,n.error.message)),{element:l,status:n.status,uploadUri:n.url,blobInfo:i,removed:d}});return r.length>0&&!ww(e)?e.undoManager.transact(()=>{V(Eo(r),n=>{const o=An(n);xo(n),o.each((e=>t=>{((e,t)=>e.dom.isEmpty(t.dom)&&C(e.schema.getTextBlockElements()[Ht(t)]))(e,t)&&vo(t,hn('<br data-mce-bogus="1" />'))})(e)),t.removeByUri(n.dom.src)})}):s&&e.undoManager.dispatchChange(),a}))}))),u=()=>Zl(e)?d():Promise.resolve([]),g=e=>ne(s,t=>t(e)),p=()=>(o||(o=mx(r,t)),o.findAll(e.getBody(),g).then(a(t=>{const n=Y(t,t=>m(t)?(ax(e,t),!1):"blob"!==t.uriType);return ww(e)||V(n,e=>{c(e.image.src,e.blobInfo.blobUri()),e.image.src=e.blobInfo.blobUri(),e.image.removeAttribute("data-mce-src")}),n}))),h=n=>n.replace(/src="(blob:[^"]+)"/g,(n,o)=>{const s=r.getResultUri(o);if(s)return'src="'+s+'"';let a=t.getByUri(o);return a||(a=X(e.editorManager.get(),(e,t)=>e||t.editorUpload&&t.editorUpload.blobCache.getByUri(o),void 0)),a?'src="data:'+a.blob().type+";base64,"+a.base64()+'"':n});return e.on("SetContent",()=>{Zl(e)?u():p()}),e.on("RawSaveContent",e=>{e.content=h(e.content)}),e.on("GetContent",e=>{e.source_view||"raw"===e.format||"tree"===e.format||(e.content=h(e.content))}),e.on("PostRender",()=>{e.parser.addNodeFilter("img",e=>{V(e,e=>{const n=e.attr("src");if(!n||t.getByUri(n))return;const o=r.getResultUri(n);o&&e.attr("src",o)})})}),{blobCache:t,addFilter:e=>{s.push(e)},uploadImages:d,uploadImagesAuto:u,scanForImages:p,destroy:()=>{t.destroy(),r.destroy(),o=n=null}}},yx={remove_similar:!0,inherit:!1},Cx={selector:"td,th",...yx},wx={tablecellbackgroundcolor:{styles:{backgroundColor:"%value"},...Cx},tablecellverticalalign:{styles:{"vertical-align":"%value"},...Cx},tablecellbordercolor:{styles:{borderColor:"%value"},...Cx},tablecellclass:{classes:["%value"],...Cx},tableclass:{selector:"table",classes:["%value"],...yx},tablecellborderstyle:{styles:{borderStyle:"%value"},...Cx},tablecellborderwidth:{styles:{borderWidth:"%value"},...Cx}},xx=N(wx),Sx=Pt.each,Ex=la.DOM,_x=e=>C(e)&&f(e),kx=(e,t)=>{const n=t&&t.schema||Ps({}),o=e=>{const t=m(e)?{name:e,classes:[],attrs:{}}:e,n=Ex.create(t.name);return((e,t)=>{t.classes.length>0&&Ex.addClass(e,t.classes.join(" ")),Ex.setAttribs(e,t.attrs)})(n,t),n},r=(e,t,s)=>{let a;const i=t[0],l=_x(i)?i.name:void 0,c=((e,t)=>{const o=n.getElementRule(e.nodeName.toLowerCase()),r=null==o?void 0:o.parentsRequired;return!(!r||!r.length)&&(t&&H(r,t)?t:r[0])})(e,l);if(c)l===c?(a=i,t=t.slice(1)):a=c;else if(i)a=i,t=t.slice(1);else if(!s)return e;const d=a?o(a):Ex.create("div");d.appendChild(e),s&&Pt.each(s,t=>{const n=o(t);d.insertBefore(n,e)});const u=_x(a)?a.siblings:void 0;return r(d,t,u)},s=Ex.create("div");if(e.length>0){const t=e[0],n=o(t),a=_x(t)?t.siblings:void 0;s.appendChild(r(n,e.slice(1),a))}return s},Nx=e=>{let t="div";const n={name:t,classes:[],attrs:{},selector:e=Pt.trim(e)};return"*"!==e&&(t=e.replace(/(?:([#\.]|::?)([\w\-]+)|(\[)([^\]]+)\]?)/g,(e,t,o,r,s)=>{switch(t){case"#":n.attrs.id=o;break;case".":n.classes.push(o);break;case":":-1!==Pt.inArray("checked disabled enabled read-only required".split(" "),o)&&(n.attrs[o]=o)}if("["===r){const e=s.match(/([\w\-]+)(?:\=\"([^\"]+))?/);e&&(n.attrs[e[1]]=e[2])}return""})),n.name=t||"div",n},Rx=(e,t)=>{let n="",o=Rc(e);if(""===o)return"";const r=e=>m(e)?e.replace(/%(\w+)/g,""):"",s=(t,n)=>Ex.getStyle(null!=n?n:e.getBody(),t,!0);if(m(t)){const n=e.formatter.get(t);if(!n)return"";t=n[0]}if("preview"in t){const e=t.preview;if(!1===e)return"";o=e||o}let a,i=t.block||t.inline||"span";const l=(c=t.selector,m(c)?(c=(c=c.split(/\s*,\s*/)[0]).replace(/\s*(~\+|~|\+|>)\s*/g,"$1"),Pt.map(c.split(/(?:>|\s+(?![^\[\]]+\]))/),e=>{const t=Pt.map(e.split(/(?:~\+|~|\+)/),Nx),n=t.pop();return t.length&&(n.siblings=t),n}).reverse()):[]);var c;l.length>0?(l[0].name||(l[0].name=i),i=t.selector,a=kx(l,e)):a=kx([i],e);const d=Ex.select(i,a)[0]||a.firstChild;Sx(t.styles,(e,t)=>{const n=r(e);n&&Ex.setStyle(d,t,n)}),Sx(t.attributes,(e,t)=>{const n=r(e);n&&Ex.setAttrib(d,t,n)}),Sx(t.classes,e=>{const t=r(e);Ex.hasClass(d,t)||Ex.addClass(d,t)}),e.dispatch("PreviewFormats"),Ex.setStyles(a,{position:"absolute",left:-65535}),e.getBody().appendChild(a);const u=s("fontSize"),f=/px$/.test(u)?parseInt(u,10):0;return Sx(o.split(" "),e=>{let t=s(e,d);if("background-color"===e&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(t)){t=s(e);const n=Hs(t);if(n&&"#ffffff"===n.toLowerCase())return}if("color"===e){const e=Hs(t);if(e&&"#000000"===e.toLowerCase())return}if("font-size"===e&&/em|%$/.test(t)){if(0===f)return;t=parseFloat(t)/(/%$/.test(t)?100:1)*f+"px"}"border"===e&&t&&(n+="padding:0 2px;"),n+=e+":"+t+";"}),e.dispatch("AfterPreviewFormats"),Ex.remove(a),n},Ax=e=>{const t=(e=>{const t={},n=(e,o)=>{e&&(m(e)?(p(o)||(o=[o]),V(o,e=>{v(e.deep)&&(e.deep=!Lm(e)),v(e.split)&&(e.split=!Lm(e)||Mm(e)),v(e.remove)&&Lm(e)&&!Mm(e)&&(e.remove="none"),Lm(e)&&Mm(e)&&(e.mixed=!0,e.block_expand=!0),m(e.classes)&&(e.classes=e.classes.split(/\s+/))}),t[e]=o):pe(e,(e,t)=>{n(t,e)}))};return n((e=>{const t=e.dom,n=e.schema.type,o={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:e=>{t.setStyle(e,"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:e=>{t.setStyle(e,"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 e={inline:"span",styles:{textDecoration:"line-through"},exact:!0},t={inline:"strike",remove:"all",preserve_attributes:["class","style"]},o={inline:"s",remove:"all",preserve_attributes:["class","style"]};return"html4"!==n?[o,e,t]:[e,o,t]})(),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"},uppercase:{inline:"span",styles:{textTransform:"uppercase"},exact:!0},lowercase:{inline:"span",styles:{textTransform:"lowercase"},exact:!0},capitalize:{inline:"span",styles:{textTransform:"capitalize"},exact:!0},capitalizefirstword:{inline:"span",styles:{display:"inline-block"},classes:"mce-capitalize-first",exact:!0},link:{inline:"a",selector:"a",remove:"all",split:!0,deep:!0,onmatch:(e,t,n)=>Jo(e)&&e.hasAttribute("href"),onformat:(e,n,o)=>{Pt.each(o,(n,o)=>{t.setAttrib(e,o,n)})}},lang:{inline:"span",clear_child_styles:!0,remove_similar:!0,attributes:{lang:"%value","data-mce-lang":e=>{var t;return null!==(t=null==e?void 0:e.customValue)&&void 0!==t?t: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 Pt.each("p h1 h2 h3 h4 h5 h6 div address pre dt dd samp".split(/\s/),e=>{o[e]={block:e,remove:"all"}}),o})(e)),n(xx()),n(Nc(e)),{get:e=>C(e)?t[e]:t,has:e=>Ee(t,e),register:n,unregister:e=>(e&&t[e]&&delete t[e],t)}})(e),n=ua({});return(e=>{e.addShortcut("meta+b","","Bold"),e.addShortcut("meta+i","","Italic"),e.addShortcut("meta+u","","Underline");for(let t=1;t<=6;t++)e.addShortcut("access+"+t,"",["FormatBlock",!1,"h"+t]);e.addShortcut("access+7","",["FormatBlock",!1,"p"]),e.addShortcut("access+8","",["FormatBlock",!1,"div"]),e.addShortcut("access+9","",["FormatBlock",!1,"address"])})(e),(e=>{e.on("mouseup keydown",t=>{var n;((e,t,n)=>{const o=e.selection,r=e.getBody();Zb(e,null,n),8!==t&&46!==t||!o.isCollapsed()||o.getStart().innerHTML!==Kb||Zb(e,qu(r,o.getStart()),!0),37!==t&&39!==t||Zb(e,qu(r,o.getStart()),!0)})(e,t.keyCode,(n=e.selection.getRng().endContainer,lr(n)&&qe(n.data,Vo)))})})(e),ww(e)||((e,t)=>{e.set({}),t.on("NodeChange",n=>{Wv(t,n.element,e.get())}),t.on("FormatApply FormatRemove",n=>{const o=I.from(n.node).map(e=>vm(e)?e:e.startContainer).bind(e=>Jo(e)?I.some(e):I.from(e.parentElement)).getOrThunk(()=>$v(t));Wv(t,o,e.get())})})(n,e),{get:t.get,has:t.has,register:t.register,unregister:t.unregister,apply:(t,n,o)=>{((e,t,n,o)=>{Sw(e).formatter.apply(t,n,o)})(e,t,n,o)},remove:(t,n,o,r)=>{((e,t,n,o,r)=>{Sw(e).formatter.remove(t,n,o,r)})(e,t,n,o,r)},toggle:(t,n,o)=>{((e,t,n,o)=>{Sw(e).formatter.toggle(t,n,o)})(e,t,n,o)},match:(t,n,o,r)=>((e,t,n,o,r)=>Sw(e).formatter.match(t,n,o,r))(e,t,n,o,r),closest:t=>((e,t)=>Sw(e).formatter.closest(t))(e,t),matchAll:(t,n)=>((e,t,n)=>Sw(e).formatter.matchAll(t,n))(e,t,n),matchNode:(t,n,o,r)=>((e,t,n,o,r)=>Sw(e).formatter.matchNode(t,n,o,r))(e,t,n,o,r),canApply:t=>((e,t)=>Sw(e).formatter.canApply(t))(e,t),formatChanged:(t,o,r,s)=>((e,t,n,o,r,s)=>Sw(e).formatter.formatChanged(t,n,o,r,s))(e,n,t,o,r,s),getCssText:T(Rx,e)}},Tx=e=>{switch(e.toLowerCase()){case"undo":case"redo":case"mcefocus":return!0;default:return!1}},Ox=e=>{const t=va(),n=ua(0),o=ua(0),r={data:[],typing:!1,beforeChange:()=>{((e,t,n)=>{Sw(e).undoManager.beforeChange(t,n)})(e,n,t)},add:(s,a)=>((e,t,n,o,r,s,a)=>Sw(e).undoManager.add(t,n,o,r,s,a))(e,r,o,n,t,s,a),dispatchChange:()=>{e.setDirty(!0);const t=mw(e);t.bookmark=vl(e.selection),e.dispatch("change",{level:t,lastLevel:ie(r.data,o.get()).getOrUndefined()})},undo:()=>((e,t,n,o)=>Sw(e).undoManager.undo(t,n,o))(e,r,n,o),redo:()=>((e,t,n)=>Sw(e).undoManager.redo(t,n))(e,o,r.data),clear:()=>{((e,t,n)=>{Sw(e).undoManager.clear(t,n)})(e,r,o)},reset:()=>{((e,t)=>{Sw(e).undoManager.reset(t)})(e,r)},hasUndo:()=>((e,t,n)=>Sw(e).undoManager.hasUndo(t,n))(e,r,o),hasRedo:()=>((e,t,n)=>Sw(e).undoManager.hasRedo(t,n))(e,r,o),transact:t=>((e,t,n,o)=>Sw(e).undoManager.transact(t,n,o))(e,r,n,t),ignore:t=>{((e,t,n)=>{Sw(e).undoManager.ignore(t,n)})(e,n,t)},extra:(t,n)=>{((e,t,n,o,r)=>{Sw(e).undoManager.extra(t,n,o,r)})(e,r,o,t,n)}};return ww(e)||((e,t,n)=>{const o=ua(!1),r=ua(I.none()),s=e=>{r.set(I.none()),vw(t,!1,n),t.add({},e)},a=(e,s)=>{t.beforeChange(),vw(t,!0,n),t.add({},s),r.set(I.some(e)),o.set(!0)};e.on("init",()=>{t.add()}),e.on("BeforeExecCommand",e=>{const o=e.command;Tx(o)||(yw(t,n),t.beforeChange())}),e.on("ExecCommand",e=>{const t=e.command;Tx(t)||s(e)}),e.on("ObjectResizeStart cut",()=>{t.beforeChange()}),e.on("SaveContent ObjectResized blur",s),e.on("dragend",s),e.on("keyup",n=>{const r=n.keyCode;if(n.isDefaultPrevented())return;const a=Tt.os.isMacOS()&&"Meta"===n.key;(r>=33&&r<=36||r>=37&&r<=40||45===r||n.ctrlKey||a)&&(s(),e.nodeChanged()),46!==r&&8!==r||e.nodeChanged(),o.get()&&t.typing&&!hw(mw(e),t.data[0])&&(e.isDirty()||e.setDirty(!0),e.dispatch("TypingUndo"),o.set(!1),e.nodeChanged())}),e.on("keydown",e=>{const n=e.keyCode;if(e.isDefaultPrevented())return;if(n>=33&&n<=36||n>=37&&n<=40||45===n)return t.typing&&s(e),void r.set(I.none());const o=8===n||46===n,i=e.ctrlKey&&!e.altKey||e.metaKey;!o||i?!(n<16||n>20)||224===n||91===n||t.typing||i?(t.typing&&!o&&(r.get().each(t=>{"backward"===t&&(s(e),a("forward",e))}),r.get().isNone()&&r.set(I.some("forward"))),(Tt.os.isMacOS()?e.metaKey:e.ctrlKey&&!e.altKey)&&t.beforeChange()):a("forward",e):t.typing?r.get().fold(()=>{s(e),a("backward",e)},t=>{"backward"!==t&&(s(e),a("backward",e))}):a("backward",e)}),e.on("mousedown",e=>{t.typing&&s(e),r.set(I.none())}),e.on("input",e=>{var t;e.inputType&&("insertReplacementText"===e.inputType||"insertText"===(t=e).inputType&&null===t.data||(e=>"insertFromPaste"===e.inputType||"insertFromDrop"===e.inputType)(e))&&s(e)}),e.on("AddUndo Undo Redo ClearUndos",t=>{t.isDefaultPrevented()||e.nodeChanged()})})(e,r,n),(e=>{e.addShortcut("meta+z","","Undo"),e.addShortcut("meta+y,meta+shift+z","","Redo")})(e),r},Bx=[9,27,vf.HOME,vf.END,19,20,44,144,145,33,34,45,16,17,18,91,92,93,vf.DOWN,vf.UP,vf.LEFT,vf.RIGHT].concat(Tt.browser.isFirefox()?[224]:[]),Px="data-mce-placeholder",Dx=e=>"keydown"===e.type||"keyup"===e.type,Lx=e=>{const t=e.keyCode;return t===vf.BACKSPACE||t===vf.DELETE},Mx=(e,t)=>({from:e,to:t}),Ix=(e,t)=>{const n=yn(e),o=yn(t.container());return Lh(n,o).map(e=>((e,t)=>({block:e,position:t}))(e,t))},Fx=(e,t)=>Qn(t,e=>Ka(e)||hr(e.dom),t=>En(t,e)).filter(Wt).getOr(e),zx=(e,t)=>{const n=((e,t)=>{const n=Mn(e);return J(n,e=>t.isBlock(Ht(e))).fold(N(n),e=>n.slice(0,e))})(e,t);return V(n,xo),n},Ux=(e,t,n)=>{const o=Fp(n,t);return Q(o.reverse(),t=>Ar(e,t)).each(xo)},jx=(e,t,n,o,r)=>{if(Ar(o,n))return Xa(n),Uu(n.dom);((e,t)=>0===Y(Dn(t),t=>!Ar(e,t)).length)(o,r)&&Ar(o,t)&&po(r,bn("br"));const s=zu(n.dom,Zi.before(r.dom));return V(zx(t,o),e=>{po(r,e)}),Ux(o,e,t),s},Hx=(e,t,n,o)=>{if(Ar(o,n)){if(Ar(o,t)){const e=e=>{const t=(e,n)=>Fn(e).fold(()=>n,e=>((e,t)=>e.isInline(Ht(t)))(o,e)?t(e,n.concat(La(e))):n);return t(e,[])},r=G(e(n),(e,t)=>(yo(e,t),t),Ga());wo(t),vo(t,r)}return xo(n),Uu(t.dom)}const r=ju(n.dom);return V(zx(t,o),e=>{vo(n,e)}),Ux(o,e,t),r},$x=(e,t)=>{Iu(e,t.dom).bind(e=>I.from(e.getNode())).map(yn).filter(Ha).each(xo)},qx=(e,t,n,o)=>($x(!0,t),$x(!1,n),((e,t)=>_n(t,e)?((e,t)=>{const n=Fp(t,e);return I.from(n[n.length-1])})(t,e):I.none())(t,n).fold(T(Hx,e,t,n,o),T(jx,e,t,n,o))),Vx=(e,t,n,o,r)=>t?qx(e,o,n,r):qx(e,n,o,r),Wx=(e,t)=>{const n=yn(e.getBody()),o=((e,t,n,o)=>o.collapsed?((e,t,n,o)=>{const r=Ix(t,Zi.fromRangeStart(o)),s=r.bind(o=>Du(n,t,o.position).bind(o=>Ix(t,o).map(o=>((e,t,n,o)=>gr(o.position.getNode())&&!Ar(e,o.block)?Iu(!1,o.block.dom).bind(e=>e.isEqual(o.position)?Du(n,t,e).bind(e=>Ix(t,e)):I.some(o)).getOr(o):o)(e,t,n,o))));return Mt(r,s,Mx).filter(e=>(e=>!En(e.from.block,e.to.block))(e)&&((e,t)=>{const n=yn(e);return En(Fx(n,t.from.block),Fx(n,t.to.block))})(t,e)&&(e=>!1===br(e.from.block.dom)&&!1===br(e.to.block.dom))(e)&&(e=>{const t=e=>$a(e)||$r(e.dom);return t(e.from.block)&&t(e.to.block)})(e))})(e,t,n,o):I.none())(e.schema,n.dom,t,e.selection.getRng()).map(o=>()=>{Vx(n,t,o.from.block,o.to.block,e.schema).each(t=>{e.selection.setRng(t.toRange())})});return o},Kx=(e,t)=>{const n=yn(t),o=T(En,e);return Zn(n,Ka,o).isSome()},Yx=e=>{const t=yn(e.getBody());return((e,t)=>{const n=zu(e.dom,Zi.fromRangeStart(t)).isNone(),o=Fu(e.dom,Zi.fromRangeEnd(t)).isNone();return!((e,t)=>Kx(e,t.startContainer)||Kx(e,t.endContainer))(e,t)&&n&&o})(t,e.selection.getRng())?(e=>I.some(()=>{e.setContent(""),e.selection.setCursorLocation()}))(e):((e,t,n)=>{const o=t.getRng();return Mt(Lh(e,yn(o.startContainer)),Lh(e,yn(o.endContainer)),(r,s)=>En(r,s)?I.none():I.some(()=>{o.deleteContents(),Vx(e,!0,r,s,n).each(e=>{t.setRng(e.toRange())})})).getOr(I.none())})(t,e.selection,e.schema)},Gx=(e,t)=>e.selection.isCollapsed()?I.none():Yx(e),Xx=(e,t,n,o,r)=>I.from(t._selectionOverrides.showCaret(e,n,o,r)),Zx=(e,t)=>e.dispatch("BeforeObjectSelected",{target:t}).isDefaultPrevented()?I.none():I.some((e=>{const t=e.ownerDocument.createRange();return t.selectNode(e),t})(t)),Qx=(e,t,n)=>t.collapsed?((e,t,n)=>{const o=fu(1,e.getBody(),t),r=Zi.fromRangeStart(o),s=r.getNode();if(qd(s))return Xx(1,e,s,!r.isAtEnd(),!1);const a=r.getNode(!0);if(qd(a))return Xx(1,e,a,!1,!1);const i=mb(e.dom.getRoot(),r.getNode());return qd(i)?Xx(1,e,i,!1,n):I.none()})(e,t,n).getOr(t):t,Jx=e=>Lp(e)||Op(e),eS=e=>Mp(e)||Bp(e),tS=(e,t,n,o,r,s)=>{Xx(o,e,s.getNode(!r),r,!0).each(n=>{if(t.collapsed){const e=t.cloneRange();r?e.setEnd(n.startContainer,n.startOffset):e.setStart(n.endContainer,n.endOffset),e.deleteContents()}else t.deleteContents();e.selection.setRng(n)}),((e,t)=>{lr(t)&&0===t.data.length&&e.remove(t)})(e.dom,n)},nS=(e,t)=>((e,t)=>{const n=e.selection.getRng();if(!lr(n.commonAncestorContainer))return I.none();const o=t?yu.Forwards:yu.Backwards,r=Tu(e.getBody()),s=T(bu,t?r.next:r.prev),a=t?Jx:eS,i=pu(o,e.getBody(),n),l=s(i),c=l?Ah(t,l):l;if(!c||!vu(i,c))return I.none();if(a(c))return I.some(()=>tS(e,n,i.getNode(),o,t,c));const d=s(c);return d&&a(d)&&vu(c,d)?I.some(()=>tS(e,n,i.getNode(),o,t,d)):I.none()})(e,t),oS=(e,t)=>{const n=e.getBody();return t?Uu(n).filter(Lp):ju(n).filter(Mp)},rS=e=>{const t=e.selection.getRng();return!t.collapsed&&(oS(e,!0).exists(e=>e.isEqual(Zi.fromRangeStart(t)))||oS(e,!1).exists(e=>e.isEqual(Zi.fromRangeEnd(t))))},sS=xl([{remove:["element"]},{moveToElement:["element"]},{moveToPosition:["position"]}]),aS=(e,t,n,o)=>Du(t,e,n).bind(r=>{return s=r.getNode(),C(s)&&(Ka(yn(s))||Va(yn(s)))||((e,t,n,o,r)=>{const s=t=>r.isInline(t.nodeName.toLowerCase())&&!au(n,o,e);return gu(!t,n).fold(()=>gu(t,o).fold(L,s),s)})(e,t,n,r,o)?I.none():t&&br(r.getNode())||!t&&br(r.getNode(!0))?((e,t,n,o,r)=>{const s=r.getNode(!n);return Lh(yn(t),yn(o.getNode())).map(t=>Ar(e,t)?sS.remove(t.dom):sS.moveToElement(s)).orThunk(()=>I.some(sS.moveToElement(s)))})(o,e,t,n,r):t&&Mp(n)||!t&&Lp(n)?I.some(sS.moveToPosition(r)):I.none();var s}),iS=(e,t)=>I.from(mb(e.getBody(),t)),lS=(e,t)=>{const n=e.selection.getNode();return iS(e,n).filter(br).fold(()=>((e,t,n,o)=>{const r=fu(t?1:-1,e,n),s=Zi.fromRangeStart(r),a=yn(e);return!t&&Mp(s)?I.some(sS.remove(s.getNode(!0))):t&&Lp(s)?I.some(sS.remove(s.getNode())):!t&&Lp(s)&&Xp(a,s,o)?Zp(a,s,o).map(e=>sS.remove(e.getNode())):t&&Mp(s)&&Gp(a,s,o)?Qp(a,s,o).map(e=>sS.remove(e.getNode())):((e,t,n,o)=>((e,t)=>{const n=t.getNode(!e),o=e?"after":"before";return Jo(n)&&n.getAttribute("data-mce-caret")===o})(t,n)?((e,t)=>y(t)?I.none():e&&br(t.nextSibling)?I.some(sS.moveToElement(t.nextSibling)):!e&&br(t.previousSibling)?I.some(sS.moveToElement(t.previousSibling)):I.none())(t,n.getNode(!t)).orThunk(()=>aS(e,t,n,o)):aS(e,t,n,o).bind(t=>((e,t,n)=>n.fold(e=>I.some(sS.remove(e)),e=>I.some(sS.moveToElement(e)),n=>au(t,n,e)?I.none():I.some(sS.moveToPosition(n))))(e,n,t)))(e,t,s,o)})(e.getBody(),t,e.selection.getRng(),e.schema).map(n=>()=>n.fold(((e,t)=>n=>(e._selectionOverrides.hideFakeCaret(),Eh(e,t,yn(n)),!0))(e,t),((e,t)=>n=>{const o=t?Zi.before(n):Zi.after(n);return e.selection.setRng(o.toRange()),!0})(e,t),(e=>t=>(e.selection.setRng(t.toRange()),!0))(e))),()=>I.some(E))},cS=e=>{const t=e.dom,n=e.selection,o=mb(e.getBody(),n.getNode());if(hr(o)&&t.isBlock(o)&&t.isEmpty(o)){const e=t.create("br",{"data-mce-bogus":"1"});t.setHTML(o,""),o.appendChild(e),n.setRng(Zi.before(e).toRange())}return!0},dS=(e,t)=>e.selection.isCollapsed()?lS(e,t):((e,t)=>{const n=e.selection.getNode();return br(n)&&!vr(n)?iS(e,n.parentNode).filter(br).fold(()=>I.some(()=>{var n;n=yn(e.getBody()),V(zo(n,".mce-offscreen-selection"),xo),Eh(e,t,yn(e.selection.getNode())),Mh(e)}),()=>I.some(E)):rS(e)?I.some(()=>{zh(e,e.selection.getRng(),yn(e.getBody()))}):I.none()})(e,t),uS=(e,t)=>e.selection.isCollapsed()?((e,t)=>{const n=Zi.fromRangeStart(e.selection.getRng());return Du(t,e.getBody(),n).filter(e=>t?Ap(e):Tp(e)).bind(e=>iu(t?0:-1,e)).map(t=>()=>e.selection.select(t))})(e,t):I.none(),mS=lr,fS=e=>mS(e)&&e.data[0]===Za,gS=e=>mS(e)&&e.data[e.data.length-1]===Za,pS=e=>{var t;return(null!==(t=e.ownerDocument)&&void 0!==t?t:document).createTextNode(Za)},hS=(e,t)=>e?(e=>{var t;if(mS(e.previousSibling))return gS(e.previousSibling)||e.previousSibling.appendData(Za),e.previousSibling;if(mS(e))return fS(e)||e.insertData(0,Za),e;{const n=pS(e);return null===(t=e.parentNode)||void 0===t||t.insertBefore(n,e),n}})(t):(e=>{var t,n;if(mS(e.nextSibling))return fS(e.nextSibling)||e.nextSibling.insertData(0,Za),e.nextSibling;if(mS(e))return gS(e)||e.appendData(Za),e;{const o=pS(e);return e.nextSibling?null===(t=e.parentNode)||void 0===t||t.insertBefore(o,e.nextSibling):null===(n=e.parentNode)||void 0===n||n.appendChild(o),o}})(t),bS=T(hS,!0),vS=T(hS,!1),yS=(e,t)=>lr(e.container())?hS(t,e.container()):hS(t,e.getNode()),CS=(e,t)=>{const n=t.get();return n&&e.container()===n&&oi(n)},wS=(e,t)=>t.fold(t=>{Id(e.get());const n=bS(t);return e.set(n),I.some(Zi(n,n.length-1))},t=>Uu(t).map(t=>{if(CS(t,e)){const t=e.get();return Zi(t,1)}{Id(e.get());const n=yS(t,!0);return e.set(n),Zi(n,1)}}),t=>ju(t).map(t=>{if(CS(t,e)){const t=e.get();return Zi(t,t.length-1)}{Id(e.get());const n=yS(t,!1);return e.set(n),Zi(n,n.length-1)}}),t=>{Id(e.get());const n=vS(t);return e.set(n),I.some(Zi(n,1))}),xS=(e,t)=>{for(let n=0;n<e.length;n++){const o=e[n].apply(null,t);if(o.isSome())return o}return I.none()},SS=xl([{before:["element"]},{start:["element"]},{end:["element"]},{after:["element"]}]),ES=(e,t)=>su(t,e)||e,_S=(e,t,n)=>{const o=Th(n),r=ES(t,o.container());return Rh(e,r,o).fold(()=>Fu(r,o).bind(T(Rh,e,r)).map(e=>SS.before(e)),I.none)},kS=(e,t)=>null===qu(e,t),NS=(e,t,n)=>Rh(e,t,n).filter(T(kS,t)),RS=(e,t,n)=>{const o=Oh(n);return NS(e,t,o).bind(e=>zu(e,o).isNone()?I.some(SS.start(e)):I.none())},AS=(e,t,n)=>{const o=Th(n);return NS(e,t,o).bind(e=>Fu(e,o).isNone()?I.some(SS.end(e)):I.none())},TS=(e,t,n)=>{const o=Oh(n),r=ES(t,o.container());return Rh(e,r,o).fold(()=>zu(r,o).bind(T(Rh,e,r)).map(e=>SS.after(e)),I.none)},OS=e=>!Nh(PS(e)),BS=(e,t,n)=>xS([_S,RS,AS,TS],[e,t,n]).filter(OS),PS=e=>e.fold(R,R,R,R),DS=e=>e.fold(N("before"),N("start"),N("end"),N("after")),LS=e=>e.fold(SS.before,SS.before,SS.after,SS.after),MS=e=>e.fold(SS.start,SS.start,SS.end,SS.end),IS=(e,t,n,o,r,s)=>Mt(Rh(t,n,o),Rh(t,n,r),(t,o)=>t!==o&&((e,t,n)=>{const o=su(t,e),r=su(n,e);return C(o)&&o===r})(n,t,o)?SS.after(e?t:o):s).getOr(s),FS=(e,t)=>e.fold(M,e=>{return o=t,!(DS(n=e)===DS(o)&&PS(n)===PS(o));var n,o}),zS=(e,t)=>e?t.fold(_(I.some,SS.start),I.none,_(I.some,SS.after),I.none):t.fold(I.none,_(I.some,SS.before),I.none,_(I.some,SS.end)),US=(e,t,n)=>{const o=e?1:-1;return t.setRng(Zi(n.container(),n.offset()+o).toRange()),t.getSel().modify("move",e?"forward":"backward","word"),!0};var jS;!function(e){e[e.Br=0]="Br",e[e.Block=1]="Block",e[e.Wrap=2]="Wrap",e[e.Eol=3]="Eol"}(jS||(jS={}));const HS=(e,t)=>e===yu.Backwards?oe(t):t,$S=(e,t,n)=>e===yu.Forwards?t.next(n):t.prev(n),qS=(e,t,n,o)=>gr(o.getNode(t===yu.Forwards))?jS.Br:!1===au(n,o)?jS.Block:jS.Wrap,VS=(e,t,n,o)=>{const r=Tu(n);let s=o;const a=[];for(;s;){const n=$S(t,r,s);if(!n)break;if(gr(n.getNode(!1)))return t===yu.Forwards?{positions:HS(t,a).concat([n]),breakType:jS.Br,breakAt:I.some(n)}:{positions:HS(t,a),breakType:jS.Br,breakAt:I.some(n)};if(n.isVisible()){if(e(s,n)){const e=qS(0,t,s,n);return{positions:HS(t,a),breakType:e,breakAt:I.some(n)}}a.push(n),s=n}else s=n}return{positions:HS(t,a),breakType:jS.Eol,breakAt:I.none()}},WS=(e,t,n,o)=>t(n,o).breakAt.map(o=>{const r=t(n,o).positions;return e===yu.Backwards?r.concat(o):[o].concat(r)}).getOr([]),KS=(e,t)=>X(e,(e,n)=>e.fold(()=>I.some(n),o=>Mt(le(o.getClientRects()),le(n.getClientRects()),(e,r)=>{const s=Math.abs(t-e.left);return Math.abs(t-r.left)<=s?n:o}).or(e)),I.none()),YS=(e,t)=>le(t.getClientRects()).bind(t=>KS(e,t.left)),GS=T(VS,Zi.isAbove,-1),XS=T(VS,Zi.isBelow,1),ZS=T(WS,-1,GS),QS=T(WS,1,XS),JS=(e,t)=>GS(e,t).breakAt.isNone(),eE=(e,t)=>XS(e,t).breakAt.isNone(),tE=(e,t)=>YS(ZS(e,t),t),nE=(e,t)=>YS(QS(e,t),t),oE=br,rE=(e,t)=>Math.abs(e.left-t),sE=(e,t)=>Math.abs(e.right-t),aE=(e,t)=>Be(e,(e,n)=>{const o=Math.min(rE(e,t),sE(e,t)),r=Math.min(rE(n,t),sE(n,t));return r===o&&_e(n,"node")&&oE(n.node)||r<o?n:e}),iE=e=>{const t=t=>q(t,t=>{const n=fi(t);return n.node=e,n});if(Jo(e))return t(e.getClientRects());if(lr(e)){const n=e.ownerDocument.createRange();return n.setStart(e,0),n.setEnd(e,e.data.length),t(n.getClientRects())}return[]},lE=e=>te(e,iE);var cE;!function(e){e[e.Up=-1]="Up",e[e.Down=1]="Down"}(cE||(cE={}));const dE=(e,t,n,o,r,s)=>{let a=0;const i=[],l=o=>{let s=lE([o]);-1===e&&(s=s.reverse());for(let e=0;e<s.length;e++){const o=s[e];if(!n(o,c)){if(i.length>0&&t(o,De(i))&&a++,o.line=a,r(o))return!0;i.push(o)}}return!1},c=De(s.getClientRects());if(!c)return i;const d=s.getNode();return d&&(l(d),((e,t,n,o)=>{let r=o;for(;r=ru(r,e,Pi,t);)if(n(r))return})(e,o,l,d)),i},uE=T(dE,cE.Up,hi,bi),mE=T(dE,cE.Down,bi,hi),fE=e=>De(e.getClientRects()),gE=e=>t=>((e,t)=>t.line>e)(e,t),pE=e=>t=>((e,t)=>t.line===e)(e,t),hE=(e,t)=>{e.selection.setRng(t),hg(e,e.selection.getRng())},bE=(e,t,n)=>I.some(Qx(e,t,n)),vE=(e,t,n,o,r,s)=>{const a=t===yu.Forwards,i=Tu(e.getBody()),l=T(bu,a?i.next:i.prev),c=a?o:r;if(!n.collapsed){const o=yi(n);if(s(o))return Xx(t,e,o,t===yu.Backwards,!1);if(rS(e)){const e=n.cloneRange();return e.collapse(t===yu.Backwards),I.from(e)}}const d=pu(t,e.getBody(),n);if(c(d))return Zx(e,d.getNode(!a));let u=l(d);const m=ui(n);if(!u)return m?I.some(n):I.none();if(u=Ah(a,u),c(u))return Xx(t,e,u.getNode(!a),a,!1);const f=l(u);return f&&c(f)&&vu(u,f)?Xx(t,e,f.getNode(!a),a,!1):m?bE(e,u.toRange(),!1):I.none()},yE=(e,t,n,o,r,s)=>{const a=pu(t,e.getBody(),n),i=De(a.getClientRects()),l=t===cE.Down,c=e.getBody();if(!i)return I.none();if(rS(e)){const e=l?Zi.fromRangeEnd(n):Zi.fromRangeStart(n);return(l?nE:tE)(c,e).orThunk(()=>I.from(e)).map(e=>e.toRange())}const d=(l?mE:uE)(c,gE(1),a),u=Y(d,pE(1)),m=i.left,f=aE(u,m);if(f&&s(f.node)){const n=Math.abs(m-f.left),o=Math.abs(m-f.right);return Xx(t,e,f.node,n<o,!1)}let g;if(g=o(a)?a.getNode():r(a)?a.getNode(!0):yi(n),g){const n=((e,t,n,o)=>{const r=Tu(t);let s,a,i,l;const c=[];let d=0;1===e?(s=r.next,a=bi,i=hi,l=Zi.after(o)):(s=r.prev,a=hi,i=bi,l=Zi.before(o));const u=fE(l);do{if(!l.isVisible())continue;const e=fE(l);if(i(e,u))continue;c.length>0&&a(e,De(c))&&d++;const t=fi(e);if(t.position=l,t.line=d,n(t))return c;c.push(t)}while(l=s(l));return c})(t,c,gE(1),g);let o=aE(Y(n,pE(1)),m);if(o)return bE(e,o.position.toRange(),!1);if(o=De(Y(n,pE(0))),o)return bE(e,o.position.toRange(),!1)}return 0===u.length?CE(e,l).filter(l?r:o).map(t=>Qx(e,t.toRange(),!1)):I.none()},CE=(e,t)=>{const n=e.selection.getRng(),o=t?Zi.fromRangeEnd(n):Zi.fromRangeStart(n),r=(s=o.container(),a=e.getBody(),Zn(yn(s),e=>Wd(e.dom),e=>e.dom===a).map(e=>e.dom).getOr(a));var s,a;if(t){const e=XS(r,o);return ce(e.positions)}{const e=GS(r,o);return le(e.positions)}},wE=(e,t,n)=>CE(e,t).filter(n).exists(t=>(e.selection.setRng(t.toRange()),!0)),xE=(e,t)=>{const n=e.dom.createRng();n.setStart(t.container(),t.offset()),n.setEnd(t.container(),t.offset()),e.selection.setRng(n)},SE=(e,t)=>{e?t.setAttribute("data-mce-selected","inline-boundary"):t.removeAttribute("data-mce-selected")},EE=(e,t,n)=>wS(t,n).map(t=>(xE(e,t),n)),_E=(e,t,n)=>{const o=e.getBody(),r=((e,t,n)=>{const o=Zi.fromRangeStart(e);if(e.collapsed)return o;{const r=Zi.fromRangeEnd(e);return n?zu(t,r).getOr(r):Fu(t,o).getOr(o)}})(e.selection.getRng(),o,n);return((e,t,n,o)=>{const r=Ah(e,o),s=BS(t,n,r);return BS(t,n,r).bind(T(zS,e)).orThunk(()=>((e,t,n,o,r)=>{const s=Ah(e,r);return Du(e,n,s).map(T(Ah,e)).fold(()=>o.map(LS),r=>BS(t,n,r).map(T(IS,e,t,n,s,r)).filter(T(FS,o))).filter(OS)})(e,t,n,s,o))})(n,T(kh,e),o,r).bind(n=>EE(e,t,n))},kE=(e,t,n)=>!!kc(e)&&_E(e,t,n).isSome(),NE=(e,t,n)=>!!kc(t)&&((e,t)=>{const n=t.selection.getRng(),o=e?Zi.fromRangeEnd(n):Zi.fromRangeStart(n);return!!(e=>w(e.selection.getSel().modify))(t)&&(e&&ai(o)?US(!0,t.selection,o):!(e||!ii(o))&&US(!1,t.selection,o))})(e,t),RE=e=>{const t=ua(null),n=T(kh,e);return e.on("NodeChange",o=>{kc(e)&&(((e,t,n)=>{const o=q(zo(yn(t.getRoot()),'*[data-mce-selected="inline-boundary"]'),e=>e.dom),r=Y(o,e),s=Y(n,e);V(re(r,s),T(SE,!1)),V(re(s,r),T(SE,!0))})(n,e.dom,o.parents),((e,t)=>{const n=t.get();if(e.selection.isCollapsed()&&!e.composing&&n){const o=Zi.fromRangeStart(e.selection.getRng());Zi.isTextPosition(o)&&!(e=>ai(e)||ii(e))(o)&&(xE(e,Md(n,o)),t.set(null))}})(e,t),((e,t,n,o)=>{if(t.selection.isCollapsed()){const r=Y(o,e);V(r,o=>{const r=Zi.fromRangeStart(t.selection.getRng());BS(e,t.getBody(),r).bind(e=>EE(t,n,e))})}})(n,e,t,o.parents))}),t},AE=T(NE,!0),TE=T(NE,!1),OE=(e,t,n)=>{if(kc(e)){const o=CE(e,t).getOrThunk(()=>{const n=e.selection.getRng();return t?Zi.fromRangeEnd(n):Zi.fromRangeStart(n)});return BS(T(kh,e),e.getBody(),o).exists(t=>{const o=LS(t);return wS(n,o).exists(t=>(xE(e,t),!0))})}return!1},BE=(e,t)=>n=>wS(t,n).map(t=>()=>xE(e,t)),PE=(e,t,n,o)=>{const r=e.getBody(),s=T(kh,e);e.undoManager.ignore(()=>{e.selection.setRng(((e,t)=>{const n=document.createRange();return n.setStart(e.container(),e.offset()),n.setEnd(t.container(),t.offset()),n})(n,o)),Ph(e),BS(s,r,Zi.fromRangeStart(e.selection.getRng())).map(MS).bind(BE(e,t)).each(D)}),e.nodeChanged()},DE=(e,t,n)=>{if(e.selection.isCollapsed()&&kc(e)){const o=Zi.fromRangeStart(e.selection.getRng());return((e,t,n,o)=>{const r=((e,t)=>su(t,e)||e)(e.getBody(),o.container()),s=T(kh,e),a=BS(s,r,o);return a.bind(e=>n?e.fold(N(I.some(MS(e))),I.none,N(I.some(LS(e))),I.none):e.fold(I.none,N(I.some(LS(e))),I.none,N(I.some(MS(e))))).map(BE(e,t)).getOrThunk(()=>{const i=Lu(n,r,o),l=i.bind(e=>BS(s,r,e));return Mt(a,l,()=>Rh(s,r,o).bind(t=>(e=>Mt(Uu(e),ju(e),(t,n)=>{const o=Ah(!0,t),r=Ah(!1,n);return Fu(e,o).forall(e=>e.isEqual(r))}).getOr(!0))(t)?I.some(()=>{Eh(e,n,yn(t))}):I.none())).getOrThunk(()=>l.bind(()=>i.map(r=>()=>{n?PE(e,t,o,r):PE(e,t,r,o)})))})})(e,t,n,o)}return I.none()},LE=(e,t)=>{const n=yn(e.getBody()),o=yn(e.selection.getStart()),r=Fp(o,n);return J(r,t).fold(N(r),e=>r.slice(0,e))},ME=e=>1===Un(e),IE=(e,t)=>{const n=T(ov,e);return te(t,e=>n(e)?[e.dom]:[])},FE=e=>{const t=(e=>LE(e,t=>e.schema.isBlock(Ht(t))))(e);return IE(e,t)},zE=(e,t)=>{const n=Y((e=>LE(e,t=>e.schema.isBlock(Ht(t))||(e=>Un(e)>1)(t)))(e),ME);return ce(n).bind(o=>{const r=Zi.fromRangeStart(e.selection.getRng());return Ih(t,r,o.dom)&&!zm(o)?I.some(()=>((e,t,n,o)=>{const r=IE(t,o);if(0===r.length)Eh(t,e,n);else{const e=nv(n.dom,r);t.selection.setRng(e.toRange())}})(t,e,o,n)):I.none()})},UE=(e,t)=>{const n=e.selection.getStart(),o=((e,t)=>{const n=t.parentElement;return gr(t)&&!h(n)&&e.dom.isEmpty(n)})(e,n)||zm(yn(n))?nv(n,t):((e,t)=>{const{caretContainer:n,caretPosition:o}=tv(t);return e.insertNode(n.dom),o})(e.selection.getRng(),t);e.selection.setRng(o.toRange())},jE=e=>lr(e.startContainer),HE=e=>{const t=e.selection.getRng();return(e=>0===e.startOffset&&jE(e))(t)&&((e,t)=>{const n=t.startContainer.parentElement;return!h(n)&&ov(e,yn(n))})(e,t)&&(e=>(e=>(e=>{const t=e.startContainer.parentNode,n=e.endContainer.parentNode;return!h(t)&&!h(n)&&t.isEqualNode(n)})(e)&&(e=>{const t=e.endContainer;return e.endOffset===(lr(t)?t.length:t.childNodes.length)})(e))(e)||(e=>!e.endContainer.isEqualNode(e.commonAncestorContainer))(e))(t)},$E=(e,t)=>e.selection.isCollapsed()?zE(e,t):(e=>{if(HE(e)){const t=FE(e);return I.some(()=>{Ph(e),((e,t)=>{const n=re(t,FE(e));n.length>0&&UE(e,n)})(e,t)})}return I.none()})(e),qE=e=>((e=>{const t=e.selection.getRng();return t.collapsed&&(jE(t)||e.dom.isEmpty(t.startContainer))&&!(e=>{return t=yn(e.selection.getStart()),n=e.schema,Uo(t,e=>$u(e.dom),e=>n.isBlock(Ht(e)));var t,n})(e)})(e)&&UE(e,[]),!0),VE=(e,t,n)=>C(n)?I.some(()=>{e._selectionOverrides.hideFakeCaret(),Eh(e,t,yn(n))}):I.none(),WE=(e,t)=>e.selection.isCollapsed()?((e,t)=>{const n=t?Op:Bp,o=t?yu.Forwards:yu.Backwards,r=pu(o,e.getBody(),e.selection.getRng());return n(r)?VE(e,t,r.getNode(!t)):I.from(Ah(t,r)).filter(e=>n(e)&&vu(r,e)).bind(n=>VE(e,t,n.getNode(!t)))})(e,t):((e,t)=>{const n=e.selection.getNode();return Cr(n)?VE(e,t,n):I.none()})(e,t),KE=e=>Ze(null!=e?e:"").getOr(0),YE=(e,t)=>(e||"table"===Ht(t)?"margin":"padding")+("rtl"===co(t,"direction")?"-right":"-left"),GE=e=>{const t=ZE(e);return!e.mode.isReadOnly()&&(t.length>1||((e,t)=>ne(t,t=>{const n=YE(dc(e),t),o=mo(t,n).map(KE).getOr(0);return"false"!==e.dom.getContentEditable(t.dom)&&o>0}))(e,t))},XE=e=>qa(e)||Va(e),ZE=e=>Y(Eo(e.selection.getSelectedBlocks()),e=>!XE(e)&&!(e=>An(e).exists(XE))(e)&&Qn(e,e=>hr(e.dom)||br(e.dom)).exists(e=>hr(e.dom))),QE=(e,t)=>{var n,o;const{dom:r}=e,s=uc(e),a=null!==(o=null===(n=/[a-z%]+$/i.exec(s))||void 0===n?void 0:n[0])&&void 0!==o?o:"px",i=KE(s),l=dc(e);V(ZE(e),e=>{((e,t,n,o,r,s)=>{const a=YE(n,yn(s)),i=KE(e.getStyle(s,a));if("outdent"===t){const t=Math.max(0,i-o);e.setStyle(s,a,t?t+r:"")}else{const t=i+o+r;e.setStyle(s,a,t)}})(r,t,l,i,a,e.dom)})},JE=e=>QE(e,"outdent"),e_=e=>{if(e.selection.isCollapsed()&&GE(e)){const t=e.dom,n=e.selection.getRng(),o=Zi.fromRangeStart(n),r=t.getParent(n.startContainer,t.isBlock);if(null!==r&&$p(yn(r),o,e.schema))return I.some(()=>JE(e))}return I.none()},t_=(e,t,n)=>ue([e_,dS,nS,(e,n)=>DE(e,t,n),Wx,ub,uS,WE,Gx,$E],t=>t(e,n)).filter(t=>e.selection.isEditable()),n_=(e,t)=>{e.addCommand("delete",()=>{((e,t)=>{t_(e,t,!1).fold(()=>{e.selection.isEditable()&&(Ph(e),Mh(e))},D)})(e,t)}),e.addCommand("forwardDelete",()=>{((e,t)=>{t_(e,t,!0).fold(()=>{e.selection.isEditable()&&(e=>{Bh(e,"ForwardDelete")})(e)},D)})(e,t)})},o_=e=>void 0===e.touches||1!==e.touches.length?I.none():I.some(e.touches[0]),r_=(e,t)=>Ee(e,t.nodeName),s_=(e,t)=>!!lr(t)||!!Jo(t)&&!(r_(e.getBlockElements(),t)||nm(t)||Wr(e,t)||Br(t)),a_=(e,t)=>{if(lr(t)){if(0===t.data.length)return!0;if(/^\s+$/.test(t.data))return!t.nextSibling||r_(e,t.nextSibling)||Br(t.nextSibling)}return!1},i_=e=>e.dom.create(ql(e),Vl(e)),l_=e=>{const t=e.dom,n=e.selection,o=e.schema,r=o.getBlockElements(),s=n.getStart(),a=e.getBody();let i,l,c=!1;const d=ql(e);if(!s||!Jo(s))return;const u=a.nodeName.toLowerCase();if(!o.isValidChild(u,d.toLowerCase())||((e,t,n)=>$(Ip(yn(n),yn(t)),t=>r_(e,t.dom)))(r,a,s))return;const m=n.getRng(),{startContainer:f,startOffset:g,endContainer:p,endOffset:h}=m,b=zg(e);let v=a.firstChild;for(;v;)if(Jo(v)&&Hr(o,v),s_(o,v)){if(a_(r,v)){l=v,v=v.nextSibling,t.remove(l);continue}i||(i=i_(e),a.insertBefore(i,v),c=!0),l=v,v=v.nextSibling,i.appendChild(l)}else i=null,v=v.nextSibling;c&&b&&(m.setStart(f,g),m.setEnd(p,h),n.setRng(m),e.nodeChanged())},c_=(e,t,n)=>{const o=yn(i_(e)),r=Ga();vo(o,r),n(t,o);const s=document.createRange();return s.setStartBefore(r.dom),s.setEndBefore(r.dom),s},d_=e=>t=>-1!==(" "+t.attr("class")+" ").indexOf(e),u_=(e,t,n)=>function(o){const r=arguments,s=r[r.length-2],a=s>0?t.charAt(s-1):"";if('"'===a)return o;if(">"===a){const e=t.lastIndexOf("<",s);if(-1!==e&&-1!==t.substring(e,s).indexOf('contenteditable="false"'))return o}return'<span class="'+n+'" data-mce-content="'+e.dom.encode(r[0])+'">'+e.dom.encode("string"==typeof r[1]?r[1]:r[0])+"</span>"},m_=(e,t)=>ne(e,e=>{const n=t.match(e);return null!==n&&n[0].length===t.length}),f_=(e,t)=>{t.hasAttribute("data-mce-caret")&&(di(t),e.selection.setRng(e.selection.getRng()),e.selection.scrollIntoView(t))},g_=(e,t)=>{const n=(e=>to(yn(e.getBody()),"*[data-mce-caret]").map(e=>e.dom).getOrNull())(e);if(n)return"compositionstart"===t.type?(t.preventDefault(),t.stopPropagation(),void f_(e,n)):void(si(n)&&(f_(e,n),e.undoManager.add()))},p_=br,h_=(e,t,n)=>{const o=Tu(e.getBody()),r=T(bu,1===t?o.next:o.prev);if(n.collapsed){const o=e.dom.getParent(n.startContainer,"PRE");if(!o)return;if(!r(Zi.fromRangeStart(n))){const n=yn((e=>{const t=e.dom.create(ql(e));return t.innerHTML='<br data-mce-bogus="1">',t})(e));1===t?ho(yn(o),n):po(yn(o),n),e.selection.select(n.dom,!0),e.selection.collapse()}}},b_=(e,t)=>((e,t)=>{const n=t?yu.Forwards:yu.Backwards,o=e.selection.getRng();return((e,t,n)=>vE(t,e,n,Lp,Mp,p_))(n,e,o).orThunk(()=>(h_(e,n,o),I.none()))})(e,((e,t)=>{const n=t?e.getEnd(!0):e.getStart(!0);return Nh(n)?!t:t})(e.selection,t)).exists(t=>(hE(e,t),!0)),v_=(e,t)=>((e,t)=>{const n=t?1:-1,o=e.selection.getRng();return((e,t,n)=>yE(t,e,n,e=>Lp(e)||Pp(e),e=>Mp(e)||Dp(e),p_))(n,e,o).orThunk(()=>(h_(e,n,o),I.none()))})(e,t).exists(t=>(hE(e,t),!0)),y_=(e,t)=>wE(e,t,t?Mp:Lp),C_=(e,t)=>oS(e,!t).map(n=>{const o=n.toRange(),r=e.selection.getRng();return t?o.setStart(r.startContainer,r.startOffset):o.setEnd(r.endContainer,r.endOffset),o}).exists(t=>(hE(e,t),!0)),w_=e=>H(["figcaption"],Ht(e)),x_=(e,t)=>!!e.selection.isCollapsed()&&((e,t)=>{const n=yn(e.getBody()),o=Zi.fromRangeStart(e.selection.getRng());return((e,t,n)=>{const o=T(En,t);return Qn(yn(e.container()),e=>n.isBlock(Ht(e)),o).filter(w_)})(o,n,e.schema).exists(()=>{if(((e,t,n)=>t?eE(e.dom,n):JS(e.dom,n))(n,t,o)){const o=c_(e,n,t?vo:bo);return e.selection.setRng(o),!0}return!1})})(e,t),S_=(e,t)=>((e,t)=>t?I.from(e.dom.getParent(e.selection.getNode(),"details")).map(t=>((e,t)=>{const n=e.selection.getRng(),o=Zi.fromRangeStart(n);return!(e.getBody().lastChild!==t||!eE(t,o)||(e.execCommand("InsertNewBlockAfter"),0))})(e,t)).getOr(!1):I.from(e.dom.getParent(e.selection.getNode(),"summary")).bind(t=>I.from(e.dom.getParent(t,"details")).map(n=>((e,t,n)=>{const o=e.selection.getRng(),r=Zi.fromRangeStart(o);return!(e.getBody().firstChild!==t||!JS(n,r)||(e.execCommand("InsertNewBlockBefore"),0))})(e,n,t))).getOr(!1))(e,t),E_={shiftKey:!1,altKey:!1,ctrlKey:!1,metaKey:!1,keyCode:0},__=(e,t)=>t.keyCode===e.keyCode&&t.shiftKey===e.shiftKey&&t.altKey===e.altKey&&t.ctrlKey===e.ctrlKey&&t.metaKey===e.metaKey,k_=(e,...t)=>()=>e.apply(null,t),N_=(e,t)=>Q(((e,t)=>te((e=>q(e,e=>({...E_,...e})))(e),e=>__(e,t)?[e]:[]))(e,t),e=>e.action()),R_=(e,t)=>ue(((e,t)=>te((e=>q(e,e=>({...E_,...e})))(e),e=>__(e,t)?[e]:[]))(e,t),e=>e.action()),A_=(e,t)=>{const n=t?yu.Forwards:yu.Backwards,o=e.selection.getRng();return vE(e,n,o,Op,Bp,Cr).exists(t=>(hE(e,t),!0))},T_=(e,t)=>{const n=t?1:-1,o=e.selection.getRng();return yE(e,n,o,Op,Bp,Cr).exists(t=>(hE(e,t),!0))},O_=(e,t)=>wE(e,t,t?Bp:Op),B_=xl([{none:["current"]},{first:["current"]},{middle:["current","target"]},{last:["current"]}]),P_={...B_,none:e=>B_.none(e)},D_=(e,t,n)=>te(Mn(e),e=>xn(e,t)?n(e)?[e]:[]:D_(e,t,n)),L_=(e,t)=>no(e,"table",t),M_=(e,t,n,o,r=M)=>{const s=1===o;if(!s&&n<=0)return P_.first(e[0]);if(s&&n>=e.length-1)return P_.last(e[e.length-1]);{const s=n+o,a=e[s];return r(a)?P_.middle(t,a):M_(e,t,s,o,r)}},I_=(e,t)=>L_(e,t).bind(t=>{const n=D_(t,"th,td",M);return J(n,t=>En(e,t)).map(e=>({index:e,all:n}))}),F_=["img","br"],z_=e=>{return(t=e,za.getOption(t)).filter(e=>0!==e.trim().length||e.indexOf(Vo)>-1).isSome()||H(F_,Ht(e))||(e=>Vt(e)&&"false"===en(e,"contenteditable"))(e);var t},U_=(e,t,n,o,r)=>{const s=zo(yn(n),"td,th,caption").map(e=>e.dom),a=Y(((e,t)=>te(t,t=>{const n=((e,t)=>({left:e.left-t,top:e.top-t,right:e.right+-2,bottom:e.bottom+-2,width:e.width+t,height:e.height+t}))(fi(t.getBoundingClientRect()),-1);return[{x:n.left,y:e(n),cell:t},{x:n.right,y:e(n),cell:t}]}))(e,s),e=>t(e,r));return((e,t,n)=>X(e,(e,o)=>e.fold(()=>I.some(o),e=>{const r=Math.sqrt(Math.abs(e.x-t)+Math.abs(e.y-n)),s=Math.sqrt(Math.abs(o.x-t)+Math.abs(o.y-n));return I.some(s<r?o:e)}),I.none()))(a,o,r).map(e=>e.cell)},j_=T(U_,e=>e.bottom,(e,t)=>e.y<t),H_=T(U_,e=>e.top,(e,t)=>e.y>t),$_=(e,t,n)=>{const o=e(t,n);return(e=>e.breakType===jS.Wrap&&0===e.positions.length)(o)||!gr(n.getNode())&&(e=>e.breakType===jS.Br&&1===e.positions.length)(o)?!((e,t,n)=>n.breakAt.exists(n=>e(t,n).breakAt.isSome()))(e,t,o):o.breakAt.isNone()},q_=T($_,GS),V_=T($_,XS),W_=(e,t,n,o)=>{const r=e.selection.getRng(),s=t?1:-1;return!(!$d()||!((e,t,n)=>{const o=Zi.fromRangeStart(t);return Iu(!e,n).exists(e=>e.isEqual(o))})(t,r,n)||(Xx(s,e,n,!t,!1).each(t=>{hE(e,t)}),0))},K_=(e,t,n)=>{const o=((e,t)=>{const n=t.getNode(e);return sr(n)?I.some(n):I.none()})(!!t,n),r=!1===t;o.fold(()=>hE(e,n.toRange()),o=>Iu(r,e.getBody()).filter(e=>e.isEqual(n)).fold(()=>hE(e,n.toRange()),n=>((e,t,n)=>{t.undoManager.transact(()=>{const o=e?ho:po,r=c_(t,yn(n),o);hE(t,r)})})(t,e,o)))},Y_=(e,t,n,o)=>{const r=e.selection.getRng(),s=Zi.fromRangeStart(r),a=e.getBody();if(!t&&q_(o,s)){const o=((e,t,n)=>((e,t)=>le(t.getClientRects()).bind(t=>j_(e,t.left,t.top)).bind(e=>{return YS(ju(n=e).map(e=>GS(n,e).positions.concat(e)).getOr([]),t);var n}))(t,n).orThunk(()=>le(n.getClientRects()).bind(n=>KS(ZS(e,Zi.before(t)),n.left))).getOr(Zi.before(t)))(a,n,s);return K_(e,t,o),!0}if(t&&V_(o,s)){const o=((e,t,n)=>((e,t)=>ce(t.getClientRects()).bind(t=>H_(e,t.left,t.top)).bind(e=>{return YS(Uu(n=e).map(e=>[e].concat(XS(n,e).positions)).getOr([]),t);var n}))(t,n).orThunk(()=>le(n.getClientRects()).bind(n=>KS(QS(e,Zi.after(t)),n.left))).getOr(Zi.after(t)))(a,n,s);return K_(e,t,o),!0}return!1},G_=(e,t,n)=>I.from(e.dom.getParent(e.selection.getNode(),"td,th")).bind(o=>I.from(e.dom.getParent(o,"table")).map(r=>n(e,t,r,o))).getOr(!1),X_=(e,t)=>G_(e,t,W_),Z_=(e,t)=>G_(e,t,Y_),Q_=(e,t,n)=>n.fold(I.none,I.none,(e,t)=>{return(n=t,Jn(n,z_)).map(e=>(e=>{const t=Pf.exact(e,0,e,0);return Ff(t)})(e));var n},n=>(e.execCommand("mceTableInsertRowAfter"),J_(e,t,n))),J_=(e,t,n)=>{return Q_(e,t,(r=oo,I_(o=n,void 0).fold(()=>P_.none(o),e=>M_(e.all,o,e.index,1,r))));var o,r},ek=(e,t,n)=>{return Q_(e,t,(r=oo,I_(o=n,void 0).fold(()=>P_.none(),e=>M_(e.all,o,e.index,-1,r))));var o,r},tk=(e,t)=>{const n=["table","li","dl"],o=yn(e.getBody()),r=e=>{const t=Ht(e);return En(e,o)||H(n,t)},s=e.selection.getRng();return((e,t)=>((e,t,n=L)=>n(t)?I.none():H(e,Ht(t))?I.some(t):eo(t,e.join(","),e=>xn(e,"table")||n(e)))(["td","th"],e,t))(yn(t?s.endContainer:s.startContainer),r).map(n=>(L_(n,r).each(t=>{e.model.table.clearSelectedCells(t.dom)}),e.selection.collapse(!t),(t?J_:ek)(e,r,n).each(t=>{e.selection.setRng(t)}),!0)).getOr(!1)},nk=(e,t)=>({container:e,offset:t}),ok=la.DOM,rk=e=>t=>e===t?-1:0,sk=(e,t,n)=>{if(lr(e)&&t>=0)return I.some(nk(e,t));{const o=Fa(ok);return I.from(o.backwards(e,t,rk(e),n)).map(e=>nk(e.container,e.container.data.length))}},ak=(e,t,n)=>{if(!lr(e))return I.none();const o=e.data;if(t>=0&&t<=o.length)return I.some(nk(e,t));{const o=Fa(ok);return I.from(o.backwards(e,t,rk(e),n)).bind(e=>{const o=e.container.data;return ak(e.container,t+o.length,n)})}},ik=(e,t,n)=>{if(!lr(e))return I.none();const o=e.data;if(t<=o.length)return I.some(nk(e,t));{const r=Fa(ok);return I.from(r.forwards(e,t,rk(e),n)).bind(e=>ik(e.container,t-o.length,n))}},lk=(e,t,n,o,r)=>{const s=Fa(e,(e=>t=>e.isBlock(t)||H(["BR","IMG","HR","INPUT"],t.nodeName)||"false"===e.getContentEditable(t))(e));return I.from(s.backwards(t,n,o,r))},ck=e=>""!==e&&-1!==" \xa0\f\n\r\t\v".indexOf(e),dk=(e,t)=>e.substring(t.length),uk=(e,t,n,o=!1)=>{if(!(r=t).collapsed||!lr(r.startContainer))return I.none();var r;const s={text:"",offset:0},a=e.getParent(t.startContainer,e.isBlock)||e.getRoot();return lk(e,t.startContainer,t.startOffset,(e,t,r)=>(s.text=r+s.text,s.offset+=t,((e,t,n,o=!1)=>{let r;const s=n.charAt(0);for(r=t-1;r>=0;r--){const a=e.charAt(r);if(!o&&ck(a))return I.none();if(s===a&&He(e,n,r,t))break}return I.some(r)})(s.text,s.offset,n,o).getOr(t)),a).bind(e=>{const o=t.cloneRange();if(o.setStart(e.container,e.offset),o.setEnd(t.endContainer,t.endOffset),o.collapsed)return I.none();const r=(e=>Ja(e.toString().replace(/\u00A0/g," ")))(o);return 0!==r.lastIndexOf(n)?I.none():I.some({text:dk(r,n),range:o,trigger:n})})},mk=e=>{if((e=>3===e.nodeType)(e))return nk(e,e.data.length);{const t=e.childNodes;return t.length>0?mk(t[t.length-1]):nk(e,t.length)}},fk=(e,t)=>{const n=e.childNodes;return n.length>0&&t<n.length?fk(n[t],0):n.length>0&&(e=>1===e.nodeType)(e)&&n.length===t?mk(n[n.length-1]):nk(e,t)},gk=(e,t,n,o={})=>{var r;const s=t(),a=null!==(r=e.selection.getRng().startContainer.nodeValue)&&void 0!==r?r:"",i=Y(s.lookupByTrigger(n.trigger),t=>n.text.length>=t.minChars&&t.matches.getOrThunk(()=>(e=>t=>{const n=fk(t.startContainer,t.startOffset);return!((e,t)=>{var n;const o=null!==(n=e.getParent(t.container,e.isBlock))&&void 0!==n?n:e.getRoot();return lk(e,t.container,t.offset,(e,t)=>0===t?-1:t,o).filter(e=>{const t=e.container.data.charAt(e.offset-1);return!ck(t)}).isSome()})(e,n)})(e.dom))(n.range,a,n.text));if(0===i.length)return I.none();const l=Promise.all(q(i,e=>e.fetch(n.text,e.maxResults,o).then(t=>({matchText:n.text,items:t,columns:e.columns,onAction:e.onAction,highlightOn:e.highlightOn}))));return I.some({lookupData:l,context:n})};var pk;!function(e){e[e.Error=0]="Error",e[e.Value=1]="Value"}(pk||(pk={}));const hk=(e,t,n)=>e.stype===pk.Error?t(e.serror):n(e.svalue),bk=e=>({stype:pk.Value,svalue:e}),vk=e=>({stype:pk.Error,serror:e}),yk=hk,Ck=e=>f(e)&&fe(e).length>100?" removed due to size":JSON.stringify(e,null,2),wk=(e,t)=>vk([{path:e,getErrorInfo:t}]),xk=(e,t)=>({extract:(n,o)=>Se(o,e).fold(()=>((e,t)=>wk(e,()=>'Choice schema did not contain choice key: "'+t+'"'))(n,e),e=>((e,t,n,o)=>Se(n,o).fold(()=>((e,t,n)=>wk(e,()=>'The chosen schema: "'+n+'" did not exist in branches: '+Ck(t)))(e,n,o),n=>n.extract(e.concat(["branch: "+o]),t)))(n,o,t,e)),toString:()=>"chooseOn("+e+"). Possible values: "+fe(t)}),Sk=e=>(...t)=>{if(0===t.length)throw new Error("Can't merge zero objects");const n={};for(let o=0;o<t.length;o++){const r=t[o];for(const t in r)Ee(r,t)&&(n[t]=e(n[t],r[t]))}return n},Ek=Sk((e,t)=>g(e)&&g(t)?Ek(e,t):t),_k=(Sk((e,t)=>t),e=>({tag:"defaultedThunk",process:N(e)})),kk=e=>{const t=(e=>{const t=[],n=[];return V(e,e=>{hk(e,e=>n.push(e),e=>t.push(e))}),{values:t,errors:n}})(e);return t.errors.length>0?(n=t.errors,_(vk,ee)(n)):bk(t.values);var n},Nk=(e,t,n)=>{switch(e.tag){case"field":return t(e.key,e.newKey,e.presence,e.prop);case"custom":return n(e.newKey,e.instantiator)}},Rk=e=>({extract:(t,n)=>{return o=e(n),r=e=>((e,t)=>wk(e,N(t)))(t,e),o.stype===pk.Error?r(o.serror):o;var o,r},toString:N("val")}),Ak=Rk(bk),Tk=(e,t,n,o)=>o(Se(e,t).getOrThunk(()=>n(e))),Ok=(e,t,n,o,r)=>{const s=e=>r.extract(t.concat([o]),e),a=e=>e.fold(()=>bk(I.none()),e=>{const n=r.extract(t.concat([o]),e);return s=n,a=I.some,s.stype===pk.Value?{stype:pk.Value,svalue:a(s.svalue)}:s;var s,a});switch(e.tag){case"required":return((e,t,n,o)=>Se(t,n).fold(()=>((e,t,n)=>wk(e,()=>'Could not find valid *required* value for "'+t+'" in '+Ck(n)))(e,n,t),o))(t,n,o,s);case"defaultedThunk":return Tk(n,o,e.process,s);case"option":return((e,t,n)=>n(Se(e,t)))(n,o,a);case"defaultedOptionThunk":return((e,t,n,o)=>o(Se(e,t).map(t=>!0===t?n(e):t)))(n,o,e.process,a);case"mergeWithThunk":return Tk(n,o,N({}),t=>{const o=Ek(e.process(n),t);return s(o)})}},Bk=e=>({extract:(t,n)=>((e,t,n)=>{const o={},r=[];for(const s of n)Nk(s,(n,s,a,i)=>{const l=Ok(a,e,t,n,i);yk(l,e=>{r.push(...e)},e=>{o[s]=e})},(e,n)=>{o[e]=n(t)});return r.length>0?vk(r):bk(o)})(t,n,e),toString:()=>{const t=q(e,e=>Nk(e,(e,t,n,o)=>e+" -> "+o.toString(),(e,t)=>"state("+e+")"));return"obj{\n"+t.join("\n")+"}"}}),Pk=e=>({extract:(t,n)=>{const o=q(n,(n,o)=>e.extract(t.concat(["["+o+"]"]),n));return kk(o)},toString:()=>"array("+e.toString()+")"}),Dk=(e,t,n)=>{return o=((e,t,n)=>((e,t)=>e.stype===pk.Error?{stype:pk.Error,serror:t(e.serror)}:e)(t.extract([e],n),e=>({input:n,errors:e})))(e,t,n),hk(o,wl.error,wl.value);var o},Lk=(e,t)=>xk(e,he(t,Bk)),Mk=N(Ak),Ik=(e,t)=>Rk(n=>{const o=typeof n;return e(n)?bk(n):vk(`Expected type: ${t} but got: ${o}`)}),Fk=Ik(x,"number"),zk=Ik(m,"string"),Uk=Ik(b,"boolean"),jk=Ik(w,"function"),Hk=(e,t,n,o)=>({tag:"field",key:e,newKey:t,presence:n,prop:o}),$k=(e,t)=>({tag:"custom",newKey:e,instantiator:t}),qk=(e,t)=>Hk(e,e,{tag:"required",process:{}},t),Vk=e=>qk(e,zk),Wk=e=>qk(e,jk),Kk=(e,t)=>Hk(e,e,{tag:"option",process:{}},t),Yk=e=>Kk(e,zk),Gk=(e,t,n)=>Hk(e,e,_k(t),n),Xk=(e,t)=>Gk(e,t,Fk),Zk=(e,t,n)=>Gk(e,t,(e=>{return t=t=>H(e,t)?wl.value(t):wl.error(`Unsupported value: "${t}", choose one of "${e.join(", ")}".`),Rk(e=>t(e).fold(vk,bk));var t})(n)),Qk=(e,t)=>Gk(e,t,Uk),Jk=(e,t)=>Gk(e,t,jk),eN=Vk("type"),tN=Wk("fetch"),nN=Wk("onAction"),oN=Jk("onSetup",()=>E),rN=Yk("text"),sN=Yk("icon"),aN=Yk("tooltip"),iN=Yk("label"),lN=Qk("active",!1),cN=Qk("enabled",!0),dN=Qk("primary",!1),uN=e=>((e,t)=>Gk("type",t,zk))(0,e),mN=Bk([eN,Vk("trigger"),Xk("minChars",1),(e=>Hk(e,e,_k(1),Mk()))("columns"),Xk("maxResults",10),Kk("matches",jk),tN,nN,(fN=zk,Gk("highlightOn",[],Pk(fN)))]);var fN;const gN=[cN,aN,sN,rN,oN],pN=[lN].concat(gN),hN=[Jk("predicate",L),Zk("scope","node",["node","editor"]),Zk("position","selection",["node","selection","line"])],bN=gN.concat([uN("contextformbutton"),dN,nN,$k("original",R)]),vN=pN.concat([uN("contextformbutton"),dN,nN,$k("original",R)]),yN=gN.concat([uN("contextformbutton")]),CN=pN.concat([uN("contextformtogglebutton")]),wN=Lk("type",{contextformbutton:bN,contextformtogglebutton:vN});Bk([uN("contextform"),Jk("initValue",N("")),iN,((e,t)=>Hk(e,e,{tag:"required",process:{}},Pk(t)))("commands",wN),Kk("launch",Lk("type",{contextformbutton:yN,contextformtogglebutton:CN}))].concat(hN));const xN=e=>{const t=e.ui.registry.getAll().popups,n=he(t,e=>{return(t=e,Dk("Autocompleter",mN,t)).fold(e=>{throw new Error("Errors: \n"+(e=>{const t=e.length>10?e.slice(0,10).concat([{path:[],getErrorInfo:N("... (only showing first ten failures)")}]):e;return q(t,e=>"Failed path: ("+e.path.join(" > ")+")\n"+e.getErrorInfo())})((t=e).errors).join("\n")+"\n\nInput object: "+Ck(t.input));var t},R);var t}),o=ke(we(n,e=>e.trigger)),r=xe(n);return{dataset:n,triggers:o,lookupByTrigger:e=>Y(r,t=>t.trigger===e)}},SN=e=>{const t=va(),n=ua(!1),o=t.isSet,r=()=>{o()&&((e=>{e.dispatch("AutocompleterEnd")})(e),n.set(!1),t.clear())},s=Le(()=>xN(e)),a=a=>{(n=>t.get().map(t=>uk(e.dom,e.selection.getRng(),t.trigger,!0).bind(t=>gk(e,s,t,n))).getOrThunk(()=>((e,t)=>{const n=t(),o=e.selection.getRng();return((e,t,n)=>ue(n.triggers,n=>uk(e,t,n)))(e.dom,o,n).bind(n=>gk(e,t,n))})(e,s)))(a).fold(r,s=>{(n=>{o()||e.composing||t.set({trigger:n.trigger,matchLength:n.text.length})})(s.context),s.lookupData.then(o=>{t.get().map(a=>{const i=s.context;a.trigger===i.trigger&&(i.text.length-a.matchLength>=10?r():(t.set({...a,matchLength:i.text.length}),n.get()?(hf(e,{range:i.range}),((e,t)=>{e.dispatch("AutocompleterUpdate",t)})(e,{lookupData:o})):(n.set(!0),hf(e,{range:i.range}),((e,t)=>{e.dispatch("AutocompleterStart",t)})(e,{lookupData:o}))))})})})},i=()=>t.get().bind(({trigger:t})=>{const o=e.selection.getRng();return uk(e.dom,o,t,n.get()).filter(({range:e})=>((e,t)=>{const n=e.compareBoundaryPoints(window.Range.START_TO_START,t),o=e.compareBoundaryPoints(window.Range.END_TO_END,t);return n>=0&&o<=0})(o,e)).map(({range:e})=>e)});e.addCommand("mceAutocompleterReload",(e,t)=>{const n=f(t)?t.fetchOptions:{};a(n)}),e.addCommand("mceAutocompleterClose",r),e.addCommand("mceAutocompleterRefreshActiveRange",()=>{i().each(t=>{hf(e,{range:t})})}),e.editorCommands.addQueryStateHandler("mceAutoCompleterInRange",()=>i().isSome()),((e,t)=>{const n=Ca(t.load,50);e.on("input",()=>{n.throttle()}),e.on("keydown",e=>{const o=e.which;8===o?n.throttle():27===o?t.cancelIfNecessary():38!==o&&40!==o||n.cancel()}),e.on("remove",n.cancel)})(e,{cancelIfNecessary:r,load:a})},EN=St().browser.isSafari(),_N=e=>Xa(yn(e)),kN=(e,t)=>{var n;return 0===e.startOffset&&e.endOffset===(null===(n=t.textContent)||void 0===n?void 0:n.length)},NN=(e,t)=>I.from(e.getParent(t.container(),"details")),RN=(e,t)=>NN(e,t).isSome(),AN=(e,t)=>{const n=t.getNode();v(n)||e.selection.setCursorLocation(n,t.offset())},TN=(e,t,n)=>{const o=e.dom.getParent(t.container(),"details");if(o&&!o.open){const t=e.dom.select("summary",o)[0];t&&(n?Uu(t):ju(t)).each(t=>AN(e,t))}else AN(e,t)},ON=(e,t,n)=>{const{dom:o,selection:r}=e,s=e.getBody();if("character"===n){const n=Zi.fromRangeStart(r.getRng()),a=o.getParent(n.container(),o.isBlock),i=NN(o,n),l=a&&o.isEmpty(a),c=h(null==a?void 0:a.previousSibling),d=h(null==a?void 0:a.nextSibling);return!!(l&&(t?d:c)&&Lu(!t,s,n).exists(e=>RN(o,e)&&!Lt(i,NN(o,e))))||Lu(t,s,n).fold(L,n=>{const r=NN(o,n);if(RN(o,n)&&!Lt(i,r)){if(t||TN(e,n,!1),a&&l){if(t&&c)return!0;if(!t&&d)return!0;TN(e,n,t),e.dom.remove(a)}return!0}return!1})}return!1},BN=(e,t,n,o)=>{const r=e.selection.getRng(),s=Zi.fromRangeStart(r),a=e.getBody();return"selection"===o?((e,t)=>{const n=t.startSummary.exists(t=>t.contains(e.startContainer)),o=t.startSummary.exists(t=>t.contains(e.endContainer)),r=t.startDetails.forall(e=>t.endDetails.forall(t=>e!==t));return(n||o)&&!(n&&o)||r})(r,t):n?((e,t)=>t.startSummary.exists(t=>((e,t)=>ju(t).exists(n=>gr(n.getNode())&&zu(t,n).exists(t=>t.isEqual(e))||n.isEqual(e)))(e,t)))(s,t)||((e,t,n)=>n.startDetails.exists(n=>Fu(e,t).forall(e=>!n.contains(e.container()))))(a,s,t):((e,t)=>t.startSummary.exists(t=>((e,t)=>Uu(t).exists(t=>t.isEqual(e)))(e,t)))(s,t)||((e,t)=>t.startDetails.exists(n=>zu(n,e).forall(n=>t.startSummary.exists(t=>!t.contains(e.container())&&t.contains(n.container())))))(s,t)},PN=(e,t,n)=>((e,t,n)=>((e,t)=>{const n=I.from(e.getParent(t.startContainer,"details")),o=I.from(e.getParent(t.endContainer,"details"));if(n.isSome()||o.isSome()){const t=n.bind(t=>I.from(e.select("summary",t)[0]));return I.some({startSummary:t,startDetails:n,endDetails:o})}return I.none()})(e.dom,e.selection.getRng()).fold(()=>ON(e,t,n),o=>BN(e,o,t,n)||ON(e,t,n)))(e,t,n)||EN&&((e,t,n)=>{const o=e.selection,r=o.getNode(),s=o.getRng(),a=Zi.fromRangeStart(s);return!!Sr(r)&&("selection"===n&&kN(s,r)||Ih(t,a,r)?_N(r):e.undoManager.transact(()=>{const s=o.getSel();let{anchorNode:a,anchorOffset:i,focusNode:l,focusOffset:c}=null!=s?s:{};const d=()=>{C(a)&&C(i)&&C(l)&&C(c)&&(null==s||s.setBaseAndExtent(a,i,l,c))},u=(e,t)=>{V(e.childNodes,e=>{vm(e)&&t.appendChild(e)})},m=e.dom.create("span",{"data-mce-bogus":"1"});u(r,m),r.appendChild(m),d(),"word"!==n&&"line"!==n||null==s||s.modify("extend",t?"right":"left",n),!o.isCollapsed()&&kN(o.getRng(),m)?_N(r):(e.execCommand(t?"ForwardDelete":"Delete"),a=null==s?void 0:s.anchorNode,i=null==s?void 0:s.anchorOffset,l=null==s?void 0:s.focusNode,c=null==s?void 0:s.focusOffset,u(m,r),d()),e.dom.remove(m)}),!0)})(e,t,n)?I.some(E):I.none(),DN=e=>(t,n,o={})=>{const r=t.getBody(),s={bubbles:!0,composed:!0,data:null,isComposing:!1,detail:0,view:null,target:r,currentTarget:r,eventPhase:Event.AT_TARGET,originalTarget:r,explicitOriginalTarget:r,isTrusted:!1,srcElement:r,cancelable:!1,preventDefault:E,inputType:n},a=Vs(new InputEvent(e));return t.dispatch(e,{...a,...s,...o})},LN=DN("input"),MN=DN("beforeinput"),IN=St(),FN=IN.os,zN=FN.isMacOS()||FN.isiOS(),UN=IN.browser.isFirefox(),jN=(e,t)=>{const n=e.dom,o=e.schema.getMoveCaretBeforeOnEnterElements();if(!t)return;if(/^(LI|DT|DD)$/.test(t.nodeName)){const e=(e=>{for(;e;){if(Jo(e)||lr(e)&&e.data&&/[\r\n\s]/.test(e.data))return e;e=e.nextSibling}return null})(t.firstChild);e&&/^(UL|OL|DL)$/.test(e.nodeName)&&t.insertBefore(n.doc.createTextNode(Vo),t.firstChild)}const r=n.createRng();if(t.normalize(),t.hasChildNodes()){const e=new $o(t,t);let n,s=t;for(;n=e.current();){if(lr(n)){r.setStart(n,0),r.setEnd(n,0);break}if(o[n.nodeName.toLowerCase()]){r.setStartBefore(n),r.setEndBefore(n);break}s=n,n=e.next()}n||(r.setStart(s,0),r.setEnd(s,0))}else gr(t)?t.nextSibling&&n.isBlock(t.nextSibling)?(r.setStartBefore(t),r.setEndBefore(t)):(r.setStartAfter(t),r.setEndAfter(t)):(r.setStart(t,0),r.setEnd(t,0));e.selection.setRng(r),hg(e,r)},HN=(e,t)=>{const n=e.getRoot();let o,r=t;for(;r!==n&&r&&"false"!==e.getContentEditable(r);){if("true"===e.getContentEditable(r)){o=r;break}r=r.parentNode}return r!==n?o:n},$N=e=>I.from(e.dom.getParent(e.selection.getStart(!0),e.dom.isBlock)),qN=e=>{e.innerHTML='<br data-mce-bogus="1">'},VN=(e,t)=>{ql(e).toLowerCase()===t.tagName.toLowerCase()&&((e,t,n)=>{const o=e.dom;I.from(n.style).map(o.parseStyle).each(e=>{const n={...fo(yn(t)),...e};o.setStyles(t,n)});const r=I.from(n.class).map(e=>e.split(/\s+/)),s=I.from(t.className).map(e=>Y(e.split(/\s+/),e=>""!==e));Mt(r,s,(e,n)=>{const r=Y(n,t=>!H(e,t)),s=[...e,...r];o.setAttrib(t,"class",s.join(" "))});const a=["style","class"],i=Ce(n,(e,t)=>!H(a,t));o.setAttribs(t,i)})(e,t,Vl(e))},WN=(e,t,n,o,r=!0,s,a)=>{const i=e.dom,l=e.schema,c=ql(e),d=n?n.nodeName.toUpperCase():"";let u=t;const m=l.getTextInlineElements();let f;f=s||"TABLE"===d||"HR"===d?i.create(s||c,a||{}):n.cloneNode(!1);let g=f;if(r){do{if(m[u.nodeName]){if($u(u)||nm(u))continue;const e=u.cloneNode(!1);i.setAttrib(e,"id",""),f.hasChildNodes()?(e.appendChild(f.firstChild),f.appendChild(e)):(g=e,f.appendChild(e))}}while((u=u.parentNode)&&u!==o)}else i.setAttrib(f,"style",null),i.setAttrib(f,"class",null);return VN(e,f),qN(g),f},KN=(e,t)=>{const n=null==e?void 0:e.parentNode;return C(n)&&n.nodeName===t},YN=e=>C(e)&&/^(OL|UL|LI)$/.test(e.nodeName),GN=e=>C(e)&&/^(LI|DT|DD)$/.test(e.nodeName),XN=e=>{const t=e.parentNode;return GN(t)?t:e},ZN=(e,t,n)=>{let o=e[n?"firstChild":"lastChild"];for(;o&&!Jo(o);)o=o[n?"nextSibling":"previousSibling"];return o===t},QN=e=>X(we(fo(yn(e)),(e,t)=>`${t}: ${e};`),(e,t)=>e+t,""),JN=(e,t)=>t&&"A"===t.nodeName&&e.isEmpty(t),eR=(e,t)=>e.nodeName===t||e.previousSibling&&e.previousSibling.nodeName===t,tR=(e,t)=>C(t)&&e.isBlock(t)&&!/^(TD|TH|CAPTION|FORM)$/.test(t.nodeName)&&!/^(fixed|absolute)/i.test(t.style.position)&&e.isEditable(t.parentNode)&&"false"!==e.getContentEditable(t),nR=(e,t,n)=>lr(t)?e?1===n&&t.data.charAt(n-1)===Za?0:n:n===t.data.length-1&&t.data.charAt(n)===Za?t.data.length:n:n,oR={insert:(e,t)=>{let n,o,r,s,a=!1;const i=e.dom,l=e.schema.getNonEmptyElements(),c=e.selection.getRng(),d=ql(e),u=yn(c.startContainer),f=In(u,c.startOffset),g=f.exists(e=>Vt(e)&&!oo(e)),p=c.collapsed&&g,b=(t,o)=>WN(e,n,_,E,Gl(e),t,o),v=e=>{const t=nR(e,n,o);if(lr(n)&&(e?t>0:t<n.data.length))return!1;if((n.parentNode===_||n===_)&&a&&!e)return!0;if(e&&Jo(n)&&n===_.firstChild)return!0;if(eR(n,"TABLE")||eR(n,"HR"))return a&&!e||!a&&e;const r=new $o(n,_);let s;for(lr(n)&&(e&&0===t?r.prev():e||t!==n.data.length||r.next());s=r.current();){if(Jo(s)){if(!s.getAttribute("data-mce-bogus")){const e=s.nodeName.toLowerCase();if(l[e]&&"br"!==e)return!1}}else if(lr(s)&&!Yo(s.data))return!1;e?r.prev():r.next()}return!0},w=()=>{let t;return t=/^(H[1-6]|PRE|FIGURE)$/.test(r)&&"HGROUP"!==k?b(d):b(),((e,t)=>{const n=Xl(e);return!y(t)&&(m(n)?H(Pt.explode(n),t.nodeName.toLowerCase()):n)})(e,s)&&tR(i,s)&&i.isEmpty(_,void 0,{includeZwsp:!0})?t=i.split(s,_):i.insertAfter(t,_),jN(e,t),t};Kf(i,c).each(e=>{c.setStart(e.startContainer,e.startOffset),c.setEnd(e.endContainer,e.endOffset)}),n=c.startContainer,o=c.startOffset;const x=!(!t||!t.shiftKey),S=!(!t||!t.ctrlKey);Jo(n)&&n.hasChildNodes()&&!p&&(a=o>n.childNodes.length-1,n=n.childNodes[Math.min(o,n.childNodes.length-1)]||n,o=a&&lr(n)?n.data.length:0);const E=HN(i,n);if(!E||((e,t)=>{const n=e.dom.getParent(t,"ol,ul,dl");return null!==n&&"false"===e.dom.getContentEditableParent(n)})(e,n))return;x||(n=((e,t,n,o,r)=>{var s,a;const i=e.dom,l=null!==(s=HN(i,o))&&void 0!==s?s:i.getRoot();let c=i.getParent(o,i.isBlock);if(!c||!tR(i,c)){if(c=c||l,!c.hasChildNodes()){const o=i.create(t);return VN(e,o),c.appendChild(o),n.setStart(o,0),n.setEnd(o,0),o}let s,d=o;for(;d&&d.parentNode!==c;)d=d.parentNode;for(;d&&!i.isBlock(d);)s=d,d=d.previousSibling;const u=null===(a=null==s?void 0:s.parentElement)||void 0===a?void 0:a.nodeName;if(s&&u&&e.schema.isValidChild(u,t.toLowerCase())){const a=s.parentNode,l=i.create(t);for(VN(e,l),a.insertBefore(l,s),d=s;d&&!i.isBlock(d);){const e=d.nextSibling;l.appendChild(d),d=e}n.setStart(o,r),n.setEnd(o,r)}}return o})(e,d,c,n,o));let _=i.getParent(n,i.isBlock)||i.getRoot();s=C(null==_?void 0:_.parentNode)?i.getParent(_.parentNode,i.isBlock):null,r=_?_.nodeName.toUpperCase():"";const k=s?s.nodeName.toUpperCase():"";if("LI"!==k||S||(_=s,s=s.parentNode,r=k),Jo(s)&&((e,t,n)=>!t&&n.nodeName.toLowerCase()===ql(e)&&e.dom.isEmpty(n)&&((e,t,n)=>{let o=t;for(;o&&o!==e&&h(o.nextSibling);){const e=o.parentElement;if(!e||!n(e))return xr(e);o=e}return!1})(e.getBody(),n,t=>Ee(e.schema.getTextBlockElements(),t.nodeName.toLowerCase())))(e,x,_))return((e,t,n)=>{var o,r,s;const a=t(ql(e)),i=((e,t)=>e.dom.getParent(t,xr))(e,n);i&&(e.dom.insertAfter(a,i),jN(e,a),(null!==(s=null===(r=null===(o=n.parentElement)||void 0===o?void 0:o.childNodes)||void 0===r?void 0:r.length)&&void 0!==s?s:0)>1&&e.dom.remove(n))})(e,b,_);if(/^(LI|DT|DD)$/.test(r)&&Jo(s)&&i.isEmpty(_))return void((e,t,n,o,r)=>{const s=e.dom,a=e.selection.getRng(),i=n.parentNode;if(n===e.getBody()||!i)return;var l;YN(l=n)&&YN(l.parentNode)&&(r="LI");const c=GN(o)?QN(o):void 0;let d=GN(o)&&c?t(r,{style:QN(o)}):t(r);if(ZN(n,o,!0)&&ZN(n,o,!1))if(KN(n,"LI")){const e=XN(n);s.insertAfter(d,e),(e=>{var t;return(null===(t=e.parentNode)||void 0===t?void 0:t.firstChild)===e})(n)?s.remove(e):s.remove(n)}else s.replace(d,n);else if(ZN(n,o,!0))KN(n,"LI")?(s.insertAfter(d,XN(n)),d.appendChild(s.doc.createTextNode(" ")),d.appendChild(n)):i.insertBefore(d,n),s.remove(o);else if(ZN(n,o,!1))s.insertAfter(d,XN(n)),s.remove(o);else{n=XN(n);const e=a.cloneRange();e.setStartAfter(o),e.setEndAfter(n);const t=e.extractContents();if("LI"===r&&(e=>e.firstChild&&"LI"===e.firstChild.nodeName)(t)){const e=Y(q(d.children,yn),O(Xt("br")));d=t.firstChild,s.insertAfter(t,n),V(e,e=>bo(yn(d),e)),c&&d.setAttribute("style",c)}else s.insertAfter(t,n),s.insertAfter(d,n);s.remove(o)}jN(e,d)})(e,b,s,_,d);if(!(p||_!==e.getBody()&&tR(i,_)))return;const N=_.parentNode;let R;if(p)R=b(d),f.fold(()=>{vo(u,yn(R))},e=>{po(e,yn(R))}),e.selection.setCursorLocation(R,0);else if(ni(_))R=di(_),i.isEmpty(_)&&qN(_),VN(e,R),jN(e,R);else if(v(!1))R=w();else if(v(!0)&&N){R=N.insertBefore(b(),_);const t=yn(c.startContainer).dom.hasChildNodes()&&c.collapsed;jN(e,eR(_,"HR")||t?R:_)}else{const t=(e=>{const t=e.cloneRange();return t.setStart(e.startContainer,nR(!0,e.startContainer,e.startOffset)),t.setEnd(e.endContainer,nR(!1,e.endContainer,e.endOffset)),t})(c).cloneRange();t.setEndAfter(_);const n=t.extractContents();(e=>{V(Fo(yn(e),Kt),e=>{const t=e.dom;t.nodeValue=Ja(t.data)})})(n),(e=>{let t=e;do{lr(t)&&(t.data=t.data.replace(/^[\r\n]+/,"")),t=t.firstChild}while(t)})(n),R=n.firstChild,i.insertAfter(n,_),((e,t,n)=>{var o;const r=[];if(!n)return;let s=n;for(;s=s.firstChild;){if(e.isBlock(s))return;Jo(s)&&!t[s.nodeName.toLowerCase()]&&r.push(s)}let a=r.length;for(;a--;)s=r[a],(!s.hasChildNodes()||s.firstChild===s.lastChild&&""===(null===(o=s.firstChild)||void 0===o?void 0:o.nodeValue)||JN(e,s))&&e.remove(s)})(i,l,R),((e,t)=>{t.normalize();const n=t.lastChild;(!n||Jo(n)&&/^(left|right)$/gi.test(e.getStyle(n,"float",!0)))&&e.add(t,"br")})(i,_),i.isEmpty(_)&&qN(_),R.normalize(),i.isEmpty(R)?(i.remove(R),w()):(VN(e,R),jN(e,R))}i.setAttrib(R,"id",""),e.dispatch("NewBlock",{newBlock:R})},fakeEventName:"insertParagraph"},rR=(e,t,n)=>{const o=e.dom.createRng();n?(o.setStartBefore(t),o.setEndBefore(t)):(o.setStartAfter(t),o.setEndAfter(t)),e.selection.setRng(o),hg(e,o)},sR=(e,t)=>{const n=bn("br");po(yn(t),n),e.undoManager.add()},aR=(e,t)=>{iR(e.getBody(),t)||ho(yn(t),bn("br"));const n=bn("br");ho(yn(t),n),rR(e,n.dom,!1),e.undoManager.add()},iR=(e,t)=>{return n=Zi.after(t),!!gr(n.getNode())||Fu(e,Zi.after(t)).map(e=>gr(e.getNode())).getOr(!1);var n},lR=e=>e&&"A"===e.nodeName&&"href"in e,cR=e=>e.fold(L,lR,lR,L),dR=(e,t)=>{t.fold(E,T(sR,e),T(aR,e),E)},uR={insert:(e,t)=>{const n=(e=>{const t=T(kh,e),n=Zi.fromRangeStart(e.selection.getRng());return BS(t,e.getBody(),n).filter(cR)})(e);n.isSome()?n.each(T(dR,e)):((e,t)=>{const n=e.selection,o=e.dom,r=n.getRng();let s,a=!1;Kf(o,r).each(e=>{r.setStart(e.startContainer,e.startOffset),r.setEnd(e.endContainer,e.endOffset)});let i=r.startOffset,l=r.startContainer;if(Jo(l)&&l.hasChildNodes()){const e=i>l.childNodes.length-1;l=l.childNodes[Math.min(i,l.childNodes.length-1)]||l,i=e&&lr(l)?l.data.length:0}let c=o.getParent(l,o.isBlock);const d=c&&c.parentNode?o.getParent(c.parentNode,o.isBlock):null,u=d?d.nodeName.toUpperCase():"",m=!(!t||!t.ctrlKey);"LI"!==u||m||(c=d),lr(l)&&i>=l.data.length&&(((e,t,n)=>{const o=new $o(t,n);let r;const s=e.getNonEmptyElements();for(;r=o.next();)if(s[r.nodeName.toLowerCase()]||lr(r)&&r.length>0)return!0;return!1})(e.schema,l,c||o.getRoot())||(s=o.create("br"),r.insertNode(s),r.setStartAfter(s),r.setEndAfter(s),a=!0)),s=o.create("br"),Ji(o,r,s),rR(e,s,a),e.undoManager.add()})(e,t)},fakeEventName:"insertLineBreak"},mR=(e,t)=>$N(e).filter(e=>t.length>0&&xn(yn(e),t)).isSome(),fR=xl([{br:[]},{block:[]},{none:[]}]),gR=(e,t)=>(e=>mR(e,Yl(e)))(e),pR=e=>(t,n)=>(e=>$N(e).filter(e=>Va(yn(e))).isSome())(t)===e,hR=(e,t)=>(n,o)=>{const r=(e=>$N(e).fold(N(""),e=>e.nodeName.toUpperCase()))(n)===e.toUpperCase();return r===t},bR=e=>{const t=HN(e.dom,e.selection.getStart());return y(t)},vR=e=>hR("pre",e),yR=e=>(t,n)=>$l(t)===e,CR=(e,t)=>(e=>mR(e,Kl(e)))(e),wR=(e,t)=>t,xR=e=>{const t=ql(e),n=HN(e.dom,e.selection.getStart());return C(n)&&e.schema.isValidChild(n.nodeName,t)},SR=e=>{const t=e.selection.getRng(),n=yn(t.startContainer),o=In(n,t.startOffset).map(e=>Vt(e)&&!oo(e));return t.collapsed&&o.getOr(!0)},ER=(e,t)=>(n,o)=>X(e,(e,t)=>e&&t(n,o),!0)?I.some(t):I.none(),_R=(e,t,n)=>{t.selection.isCollapsed()||(e=>{e.execCommand("delete")})(t),C(n)&&MN(t,e.fakeEventName).isDefaultPrevented()||(e.insert(t,n),C(n)&&LN(t,e.fakeEventName))},kR=(e,t)=>{const n=()=>_R(uR,e,t),o=()=>_R(oR,e,t),r=((e,t)=>xS([ER([gR],fR.none()),ER([vR(!0),bR],fR.none()),ER([hR("summary",!0)],fR.br()),ER([vR(!0),yR(!1),wR],fR.br()),ER([vR(!0),yR(!1)],fR.block()),ER([vR(!0),yR(!0),wR],fR.block()),ER([vR(!0),yR(!0)],fR.br()),ER([pR(!0),wR],fR.br()),ER([pR(!0)],fR.block()),ER([CR],fR.br()),ER([wR],fR.br()),ER([xR],fR.block()),ER([SR],fR.block())],[e,!(!t||!t.shiftKey)]).getOr(fR.none()))(e,t);switch(Wl(e)){case"linebreak":r.fold(n,n,E);break;case"block":r.fold(o,o,E);break;case"invert":r.fold(o,n,E);break;default:r.fold(n,o,E)}},NR=St(),RR=NR.os.isiOS()&&NR.browser.isSafari(),AR=(e,t)=>{var n;t.isDefaultPrevented()||(t.preventDefault(),(n=e.undoManager).typing&&(n.typing=!1,n.add()),e.undoManager.transact(()=>{kR(e,t)}))},TR=St(),OR=e=>e.stopImmediatePropagation(),BR=e=>e.keyCode===vf.PAGE_UP||e.keyCode===vf.PAGE_DOWN,PR=(e,t,n)=>{n&&!e.get()?t.on("NodeChange",OR,!0):!n&&e.get()&&t.off("NodeChange",OR),e.set(n)},DR=(e,t)=>{const n=t.container(),o=t.offset();return lr(n)?(n.insertData(o,e),I.some(Zi(n,o+e.length))):hu(t).map(n=>{const o=vn(e);return t.isAtEnd()?ho(n,o):po(n,o),Zi(o.dom,e.length)})},LR=T(DR,Vo),MR=T(DR," "),IR=e=>t=>{e.selection.setRng(t.toRange()),e.nodeChanged()},FR=e=>{const t=Zi.fromRangeStart(e.selection.getRng()),n=yn(e.getBody());if(e.selection.isCollapsed()){const o=T(kh,e),r=Zi.fromRangeStart(e.selection.getRng());return BS(o,e.getBody(),r).bind((e=>t=>t.fold(t=>zu(e.dom,Zi.before(t)),e=>Uu(e),e=>ju(e),t=>Fu(e.dom,Zi.after(t))))(n)).map(o=>()=>((e,t,n)=>o=>sh(e,o,n)?LR(t):MR(t))(n,t,e.schema)(o).each(IR(e)))}return I.none()},zR=e=>{return It(Tt.browser.isFirefox()&&e.selection.isEditable()&&(t=e.dom,n=e.selection.getRng().startContainer,t.isEditable(t.getParent(n,"summary"))),()=>{const t=yn(e.getBody());e.selection.isCollapsed()||e.getDoc().execCommand("Delete"),((e,t,n)=>sh(e,t,n)?LR(t):MR(t))(t,Zi.fromRangeStart(e.selection.getRng()),e.schema).each(IR(e))});var t,n},UR=e=>Sd(e)?[{keyCode:vf.TAB,action:k_(tk,e,!0)},{keyCode:vf.TAB,shiftKey:!0,action:k_(tk,e,!1)}]:[],jR=e=>{if(e.addShortcut("Meta+P","","mcePrint"),SN(e),ww(e))return ua(null);{const t=RE(e);return(e=>{e.on("beforeinput",t=>{e.selection.isEditable()&&!$(t.getTargetRanges(),t=>!Hg(e.dom,t))||t.preventDefault()})})(e),(e=>{e.on("keyup compositionstart",T(g_,e))})(e),((e,t)=>{e.on("keydown",n=>{n.isDefaultPrevented()||((e,t,n)=>{const o=Tt.os.isMacOS()||Tt.os.isiOS();N_([{keyCode:vf.RIGHT,action:k_(b_,e,!0)},{keyCode:vf.LEFT,action:k_(b_,e,!1)},{keyCode:vf.UP,action:k_(v_,e,!1)},{keyCode:vf.DOWN,action:k_(v_,e,!0)},...o?[{keyCode:vf.UP,action:k_(C_,e,!1),metaKey:!0,shiftKey:!0},{keyCode:vf.DOWN,action:k_(C_,e,!0),metaKey:!0,shiftKey:!0}]:[],{keyCode:vf.RIGHT,action:k_(X_,e,!0)},{keyCode:vf.LEFT,action:k_(X_,e,!1)},{keyCode:vf.UP,action:k_(Z_,e,!1)},{keyCode:vf.DOWN,action:k_(Z_,e,!0)},{keyCode:vf.UP,action:k_(Z_,e,!1)},{keyCode:vf.UP,action:k_(S_,e,!1)},{keyCode:vf.DOWN,action:k_(S_,e,!0)},{keyCode:vf.RIGHT,action:k_(A_,e,!0)},{keyCode:vf.LEFT,action:k_(A_,e,!1)},{keyCode:vf.UP,action:k_(T_,e,!1)},{keyCode:vf.DOWN,action:k_(T_,e,!0)},{keyCode:vf.RIGHT,action:k_(kE,e,t,!0)},{keyCode:vf.LEFT,action:k_(kE,e,t,!1)},{keyCode:vf.RIGHT,ctrlKey:!o,altKey:o,action:k_(AE,e,t)},{keyCode:vf.LEFT,ctrlKey:!o,altKey:o,action:k_(TE,e,t)},{keyCode:vf.UP,action:k_(x_,e,!1)},{keyCode:vf.DOWN,action:k_(x_,e,!0)}],n).each(e=>{n.preventDefault()})})(e,t,n)})})(e,t),((e,t)=>{let n=!1;e.on("keydown",o=>{n=o.keyCode===vf.BACKSPACE,o.isDefaultPrevented()||((e,t,n)=>{const o=n.keyCode===vf.BACKSPACE?"deleteContentBackward":"deleteContentForward",r=e.selection.isCollapsed(),s=r?"character":"selection",a=e=>r?e?"word":"line":"selection";R_([{keyCode:vf.BACKSPACE,action:k_(e_,e)},{keyCode:vf.BACKSPACE,action:k_(dS,e,!1)},{keyCode:vf.DELETE,action:k_(dS,e,!0)},{keyCode:vf.BACKSPACE,action:k_(nS,e,!1)},{keyCode:vf.DELETE,action:k_(nS,e,!0)},{keyCode:vf.BACKSPACE,action:k_(DE,e,t,!1)},{keyCode:vf.DELETE,action:k_(DE,e,t,!0)},{keyCode:vf.BACKSPACE,action:k_(ub,e,!1)},{keyCode:vf.DELETE,action:k_(ub,e,!0)},{keyCode:vf.BACKSPACE,action:k_(PN,e,!1,s)},{keyCode:vf.DELETE,action:k_(PN,e,!0,s)},...zN?[{keyCode:vf.BACKSPACE,altKey:!0,action:k_(PN,e,!1,a(!0))},{keyCode:vf.DELETE,altKey:!0,action:k_(PN,e,!0,a(!0))},{keyCode:vf.BACKSPACE,metaKey:!0,action:k_(PN,e,!1,a(!1))}]:[{keyCode:vf.BACKSPACE,ctrlKey:!0,action:k_(PN,e,!1,a(!0))},{keyCode:vf.DELETE,ctrlKey:!0,action:k_(PN,e,!0,a(!0))}],{keyCode:vf.BACKSPACE,action:k_(uS,e,!1)},{keyCode:vf.DELETE,action:k_(uS,e,!0)},{keyCode:vf.BACKSPACE,action:k_(WE,e,!1)},{keyCode:vf.DELETE,action:k_(WE,e,!0)},{keyCode:vf.BACKSPACE,action:k_(Gx,e,!1)},{keyCode:vf.DELETE,action:k_(Gx,e,!0)},{keyCode:vf.BACKSPACE,action:k_(Wx,e,!1)},{keyCode:vf.DELETE,action:k_(Wx,e,!0)},{keyCode:vf.BACKSPACE,action:k_($E,e,!1)},{keyCode:vf.DELETE,action:k_($E,e,!0)}],n).filter(t=>e.selection.isEditable()).each(t=>{n.preventDefault(),MN(e,o).isDefaultPrevented()||(t(),LN(e,o))})})(e,t,o)}),e.on("keyup",t=>{t.isDefaultPrevented()||((e,t,n)=>{N_([{keyCode:vf.BACKSPACE,action:k_(cS,e)},{keyCode:vf.DELETE,action:k_(cS,e)},...zN?[{keyCode:vf.BACKSPACE,altKey:!0,action:k_(qE,e)},{keyCode:vf.DELETE,altKey:!0,action:k_(qE,e)},...n?[{keyCode:UN?224:91,action:k_(qE,e)}]:[]]:[{keyCode:vf.BACKSPACE,ctrlKey:!0,action:k_(qE,e)},{keyCode:vf.DELETE,ctrlKey:!0,action:k_(qE,e)}]],t)})(e,t,n),n=!1})})(e,t),(e=>{let t=I.none();e.on("keydown",n=>{n.keyCode===vf.ENTER&&(RR&&(e=>{if(!e.collapsed)return!1;const t=e.startContainer;if(lr(t)){const n=/^[\uAC00-\uD7AF\u1100-\u11FF\u3130-\u318F\uA960-\uA97F\uD7B0-\uD7FF]$/,o=t.data.charAt(e.startOffset-1);return n.test(o)}return!1})(e.selection.getRng())?(e=>{t=I.some(e.selection.getBookmark()),e.undoManager.add()})(e):AR(e,n))}),e.on("keyup",n=>{n.keyCode===vf.ENTER&&t.each(()=>((e,n)=>{e.undoManager.undo(),t.fold(E,t=>e.selection.moveToBookmark(t)),AR(e,n),t=I.none()})(e,n))})})(e),(e=>{e.on("keydown",t=>{t.isDefaultPrevented()||((e,t)=>{R_([{keyCode:vf.SPACEBAR,action:k_(FR,e)},{keyCode:vf.SPACEBAR,action:k_(zR,e)}],t).each(n=>{t.preventDefault(),MN(e,"insertText",{data:" "}).isDefaultPrevented()||(n(),LN(e,"insertText",{data:" "}))})})(e,t)})})(e),(e=>{e.on("input",t=>{t.isComposing||(e=>{const t=yn(e.getBody());e.selection.isCollapsed()&&fh(t,Zi.fromRangeStart(e.selection.getRng()),e.schema).each(t=>{e.selection.setRng(t.toRange())})})(e)})})(e),(e=>{e.on("keydown",t=>{t.isDefaultPrevented()||((e,t)=>{N_([...UR(e)],t).each(e=>{t.preventDefault()})})(e,t)})})(e),((e,t)=>{e.on("keydown",n=>{n.isDefaultPrevented()||((e,t,n)=>{const o=Tt.os.isMacOS()||Tt.os.isiOS();N_([{keyCode:vf.END,action:k_(y_,e,!0)},{keyCode:vf.HOME,action:k_(y_,e,!1)},...o?[]:[{keyCode:vf.HOME,action:k_(C_,e,!1),ctrlKey:!0,shiftKey:!0},{keyCode:vf.END,action:k_(C_,e,!0),ctrlKey:!0,shiftKey:!0}],{keyCode:vf.END,action:k_(O_,e,!0)},{keyCode:vf.HOME,action:k_(O_,e,!1)},{keyCode:vf.END,action:k_(OE,e,!0,t)},{keyCode:vf.HOME,action:k_(OE,e,!1,t)}],n).each(e=>{n.preventDefault()})})(e,t,n)})})(e,t),((e,t)=>{if(TR.os.isMacOS())return;const n=ua(!1);e.on("keydown",t=>{BR(t)&&PR(n,e,!0)}),e.on("keyup",o=>{o.isDefaultPrevented()||((e,t,n)=>{N_([{keyCode:vf.PAGE_UP,action:k_(OE,e,!1,t)},{keyCode:vf.PAGE_DOWN,action:k_(OE,e,!0,t)}],n)})(e,t,o),BR(o)&&n.get()&&(PR(n,e,!1),e.nodeChanged())})})(e,t),t}};class HR{constructor(e){let t;this.lastPath=[],this.editor=e;const n=this;"onselectionchange"in e.getDoc()||e.on("NodeChange click mouseup keyup focus",n=>{const o=e.selection.getRng(),r={startContainer:o.startContainer,startOffset:o.startOffset,endContainer:o.endContainer,endOffset:o.endOffset};"nodechange"!==n.type&&Uf(r,t)||e.dispatch("SelectionChange"),t=r}),e.on("contextmenu",()=>{kg(e),e.dispatch("SelectionChange")}),e.on("SelectionChange",()=>{const t=e.selection.getStart(!0);t&&pm(e)&&!n.isSameElementPath(t)&&e.dom.isChildOf(t,e.getBody())&&e.nodeChanged({selectionChange:!0})}),e.on("mouseup",t=>{!t.isDefaultPrevented()&&pm(e)&&("IMG"===e.selection.getNode().nodeName?Ag.setEditorTimeout(e,()=>{e.nodeChanged()}):e.nodeChanged())})}nodeChanged(e={}){const t=this.editor.selection;let n;if(this.editor.initialized&&t&&!Fc(this.editor)&&!this.editor.mode.isReadOnly()){const o=this.editor.getBody();n=t.getStart(!0)||o,n.ownerDocument===this.editor.getDoc()&&this.editor.dom.isChildOf(n,o)||(n=o);const r=[];this.editor.dom.getParent(n,e=>e===o||(r.push(e),!1)),this.editor.dispatch("NodeChange",{...e,element:n,parents:r})}}isSameElementPath(e){let t;const n=this.editor,o=oe(n.dom.getParents(e,M,n.getBody()));if(o.length===this.lastPath.length){for(t=o.length;t>=0&&o[t]===this.lastPath[t];t--);if(-1===t)return this.lastPath=o,!0}return this.lastPath=o,!1}}const $R=Pa("image"),qR=Pa("event"),VR=e=>t=>{t[qR]=e},WR=VR(0),KR=VR(2),YR=VR(1),GR=e=>{const t=e;return I.from(t[qR]).exists(e=>0===e)};const XR=Pa("mode"),ZR=e=>t=>{t[XR]=e},QR=(e,t)=>ZR(t)(e),JR=ZR(0),eA=ZR(2),tA=ZR(1),nA=e=>t=>{const n=t;return I.from(n[XR]).exists(t=>t===e)},oA=nA(0),rA=nA(1),sA=["none","copy","link","move"],aA=["none","copy","copyLink","copyMove","link","linkMove","move","all","uninitialized"],iA=()=>{const e=new window.DataTransfer;let t="move",n="all";const o={get dropEffect(){return t},set dropEffect(e){H(sA,e)&&(t=e)},get effectAllowed(){return n},set effectAllowed(e){GR(o)&&H(aA,e)&&(n=e)},get items(){return((e,t)=>({...t,get length(){return t.length},add:(n,o)=>{if(oA(e)){if(!m(n))return t.add(n);if(!v(o))return t.add(n,o)}return null},remove:n=>{oA(e)&&t.remove(n)},clear:()=>{oA(e)&&t.clear()}}))(o,e.items)},get files(){return rA(o)?Object.freeze({length:0,item:e=>null}):e.files},get types(){return e.types},setDragImage:(t,n,r)=>{var s;oA(o)&&(s={image:t,x:n,y:r},o[$R]=s,e.setDragImage(t,n,r))},getData:t=>rA(o)?"":e.getData(t),setData:(t,n)=>{oA(o)&&e.setData(t,n)},clearData:t=>{oA(o)&&e.clearData(t)}};return JR(o),o},lA=(e,t)=>e.setData("text/html",t),cA="x-hugerte/html",dA=N(cA),uA="\x3c!-- "+cA+" --\x3e",mA=e=>uA+e,fA=e=>-1!==e.indexOf(uA),gA="%MCEPASTEBIN%",pA=e=>e.dom.get("mcepastebin"),hA=e=>C(e)&&"mcepastebin"===e.id,bA=e=>e===gA,vA=(e,t)=>(Pt.each(t,t=>{e=u(t,RegExp)?e.replace(t,""):e.replace(t[0],t[1])}),e),yA=e=>vA(e,[/^[\s\S]*<body[^>]*>\s*|\s*<\/body[^>]*>[\s\S]*$/gi,/<!--StartFragment-->|<!--EndFragment-->/g,[/( ?)<span class="Apple-converted-space">\u00a0<\/span>( ?)/g,(e,t,n)=>t||n?Vo:" "],/<br class="Apple-interchange-newline">/g,/<br>$/i]),CA=(e,t)=>({content:e,cancelled:t}),wA=(e,t)=>(e.insertContent(t,{merge:ld(e),paste:!0}),!0),xA=e=>/^https?:\/\/[\w\-\/+=.,!;:&%@^~(){}?#]+$/i.test(e),SA=(e,t,n)=>!(e.selection.isCollapsed()||!xA(t))&&((e,t,n)=>(e.undoManager.extra(()=>{n(e,t)},()=>{e.execCommand("mceInsertLink",!1,t)}),!0))(e,t,n),EA=(e,t,n)=>!!((e,t)=>xA(t)&&$(xd(e),e=>qe(t.toLowerCase(),`.${e.toLowerCase()}`)))(e,t)&&((e,t,n)=>(e.undoManager.extra(()=>{n(e,t)},()=>{e.insertContent('<img src="'+t+'">')}),!0))(e,t,n),_A=(()=>{let e=0;return()=>"mceclip"+e++})(),kA=e=>{const t=iA();return lA(t,e),eA(t),t},NA=(e,t,n,o,r)=>{const s=((e,t,n)=>((e,t,n)=>{const o=((e,t,n)=>e.dispatch("PastePreProcess",{content:t,internal:n}))(e,t,n),r=((e,t)=>{const n=jC({sanitize:Cd(e),sandbox_iframes:Nd(e),sandbox_iframes_exclusions:Rd(e),convert_unsafe_embeds:Ad(e)},e.schema);n.addNodeFilter("meta",e=>{Pt.each(e,e=>{e.remove()})});const o=n.parse(t,{forced_root_block:!1,isRootContent:!0});return bp({validate:!0},e.schema).serialize(o)})(e,o.content);return e.hasEventListeners("PastePostProcess")&&!o.isDefaultPrevented()?((e,t,n)=>{const o=e.dom.create("div",{style:"display:none"},t),r=((e,t,n)=>e.dispatch("PastePostProcess",{node:t,internal:n}))(e,o,n);return CA(r.node.innerHTML,r.isDefaultPrevented())})(e,r,n):CA(r,o.isDefaultPrevented())})(e,t,n))(e,t,n);if(!s.cancelled){const t=s.content,n=()=>((e,t,n)=>{n||!cd(e)?wA(e,t):((e,t)=>{Pt.each([SA,EA,wA],n=>!n(e,t,wA))})(e,t)})(e,t,o);r?MN(e,"insertFromPaste",{dataTransfer:kA(t)}).isDefaultPrevented()||(n(),LN(e,"insertFromPaste")):n()}},RA=(e,t,n,o)=>{const r=n||fA(t);NA(e,(e=>e.replace(uA,""))(t),r,!1,o)},AA=(e,t,n)=>{const o=e.dom.encode(t).replace(/\r\n/g,"\n"),r=((e,t,n)=>{const o=e.split(/\n\n/),r=((e,t)=>{let n="<"+e;const o=we(t,(e,t)=>t+'="'+hs.encodeAllRaw(e)+'"');return o.length&&(n+=" "+o.join(" ")),n+">"})(t,n),s="</"+t+">",a=q(o,e=>e.split(/\n/).join("<br />"));return 1===a.length?a[0]:q(a,e=>r+e+s).join("")})(Xo(o,ud(e)),ql(e),Vl(e));NA(e,r,!1,!0,n)},TA=e=>{const t={};if(e&&e.types)for(let n=0;n<e.types.length;n++){const o=e.types[n];try{t[o]=e.getData(o)}catch(e){t[o]=""}}return t},OA=(e,t)=>t in e&&e[t].length>0,BA=e=>OA(e,"text/html")||OA(e,"text/plain"),PA=(e,t,n)=>{const o="paste"===t.type?t.clipboardData:t.dataTransfer;var r;if(nd(e)&&o){const s=((e,t)=>{const n=t.items?te(de(t.items),e=>"file"===e.kind?[e.getAsFile()]:[]):[],o=t.files?de(t.files):[];return Y(n.length>0?n:o,(e=>{const t=xd(e);return e=>$e(e.type,"image/")&&$(t,t=>(e=>{const t=e.toLowerCase(),n={jpg:"jpeg",jpe:"jpeg",jfi:"jpeg",jif:"jpeg",jfif:"jpeg",pjpeg:"jpeg",pjp:"jpeg",svg:"svg+xml"};return Pt.hasOwn(n,t)?"image/"+n[t]:"image/"+t})(t)===e.type)})(e))})(e,o);if(s.length>0)return t.preventDefault(),(r=s,Promise.all(q(r,e=>Qv(e).then(t=>({file:e,uri:t}))))).then(t=>{n&&e.selection.setRng(n),V(t,t=>{((e,t)=>{Xv(t.uri).each(({data:n,type:o,base64Encoded:r})=>{const s=r?n:btoa(n),a=t.file,i=e.editorUpload.blobCache,l=i.getByData(s,o),c=null!=l?l:((e,t,n,o)=>{const r=_A(),s=Ql(e)&&C(n.name),a=s?((e,t)=>{const n=t.match(/([\s\S]+?)(?:\.[a-z0-9.]+)$/i);return C(n)?e.dom.encode(n[1]):void 0})(e,n.name):r,i=s?n.name:void 0,l=t.create(r,n,o,a,i);return t.add(l),l})(e,i,a,s);RA(e,`<img src="${c.blobUri()}">`,!1,!0)})})(e,t)})}),!0}return!1},DA=(e,t,n,o,r)=>{let s=yA(n);const a=OA(t,dA())||fA(n),i=!a&&(e=>!/<(?:\/?(?!(?:div|p|br|span)>)\w+|(?:(?!(?:span style="white-space:\s?pre;?">)|br\s?\/>))\w+\s[^>]+)>/i.test(e))(s),l=xA(s);(bA(s)||!s.length||i&&!l)&&(o=!0),(o||l)&&(s=OA(t,"text/plain")&&i?t["text/plain"]:(e=>{const t=Ps(),n=jC({},t);let o="";const r=t.getVoidElements(),s=Pt.makeMap("script noscript style textarea video audio iframe object"," "),a=t.getBlockElements(),i=e=>{const n=e.name,l=e;if("br"!==n){if("wbr"!==n)if(r[n]&&(o+=" "),s[n])o+=" ";else{if(3===e.type&&(o+=e.value),!(e.name in t.getVoidElements())){let t=e.firstChild;if(t)do{i(t)}while(t=t.next)}a[n]&&l.next&&(o+="\n","p"===n&&(o+="\n"))}}else o+="\n"};return e=vA(e,[/<!\[[^\]]+\]>/g]),i(n.parse(e)),o})(s),o||(s=hs.encodeRaw(s))),bA(s)||(o?AA(e,s,r):RA(e,s,a,r))},LA=(e,t,n)=>{((e,t,n)=>{let o;e.on("keydown",e=>{(e=>vf.metaKeyPressed(e)&&86===e.keyCode||e.shiftKey&&45===e.keyCode)(e)&&!e.isDefaultPrevented()&&(o=e.shiftKey&&86===e.keyCode)}),e.on("paste",r=>{if(r.isDefaultPrevented()||(e=>{var t,n;return Tt.os.isAndroid()&&0===(null===(n=null===(t=e.clipboardData)||void 0===t?void 0:t.items)||void 0===n?void 0:n.length)})(r))return;const s="text"===n.get()||o;o=!1;const a=TA(r.clipboardData);!BA(a)&&PA(e,r,t.getLastRng()||e.selection.getRng())||(OA(a,"text/html")?(r.preventDefault(),DA(e,a,a["text/html"],s,!0)):OA(a,"text/plain")&&OA(a,"text/uri-list")?(r.preventDefault(),DA(e,a,a["text/plain"],s,!0)):(t.create(),Ag.setEditorTimeout(e,()=>{const n=t.getHtml();t.remove(),DA(e,a,n,s,!1)},0)))})})(e,t,n),(e=>{const t=e=>$e(e,"webkit-fake-url"),n=e=>$e(e,"data:");e.parser.addNodeFilter("img",(o,r,s)=>{if(!nd(e)&&(e=>{var t;return!0===(null===(t=e.data)||void 0===t?void 0:t.paste)})(s))for(const r of o){const o=r.attr("src");m(o)&&!r.attr("data-mce-object")&&o!==Tt.transparentSrc&&(t(o)||!md(e)&&n(o))&&r.remove()}})})(e)},MA=(e,t,n,o)=>{((e,t,n)=>{if(!e)return!1;try{return e.clearData(),e.setData("text/html",t),e.setData("text/plain",n),e.setData(dA(),t),!0}catch(e){return!1}})(e.clipboardData,t.html,t.text)?(e.preventDefault(),o()):n(t.html,o)},IA=e=>(t,n)=>{const{dom:o,selection:r}=e,s=o.create("div",{contenteditable:"false","data-mce-bogus":"all"}),a=o.create("div",{contenteditable:"true"},t);o.setStyles(s,{position:"fixed",top:"0",left:"-3000px",width:"1000px",overflow:"hidden"}),s.appendChild(a),o.add(e.getBody(),s);const i=r.getRng();a.focus();const l=o.createRng();l.selectNodeContents(a),r.setRng(l),Ag.setEditorTimeout(e,()=>{r.setRng(i),o.remove(s),n()},0)},FA=e=>({html:mA(e.selection.getContent({contextual:!0})),text:e.selection.getContent({format:"text"})}),zA=e=>!e.selection.isCollapsed()||(e=>!!e.dom.getParent(e.selection.getStart(),"td[data-mce-selected],th[data-mce-selected]",e.getBody()))(e),UA=(e,t)=>{var n,o;return Xf.getCaretRangeFromPoint(null!==(n=t.clientX)&&void 0!==n?n:0,null!==(o=t.clientY)&&void 0!==o?o:0,e.getDoc())},jA=(e,t)=>{e.focus(),t&&e.selection.setRng(t)},HA=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,$A=e=>Pt.trim(e).replace(HA,Hs).toLowerCase(),qA=(e,t,n)=>{const o=ad(e);if(n||"all"===o||!id(e))return t;const r=o?o.split(/[, ]/):[];if(r&&"none"!==o){const n=e.dom,o=e.selection.getNode();t=t.replace(/(<[^>]+) style="([^"]*)"([^>]*>)/gi,(e,t,s,a)=>{const i=n.parseStyle(n.decode(s)),l={};for(let e=0;e<r.length;e++){const t=i[r[e]];let s=t,a=n.getStyle(o,r[e],!0);/color/.test(r[e])&&(s=$A(s),a=$A(a)),a!==s&&(l[r[e]]=t)}const c=n.serializeStyle(l,"span");return c?t+' style="'+c+'"'+a:t+a})}else t=t.replace(/(<[^>]+) style="([^"]*)"([^>]*>)/gi,"$1$3");return t=t.replace(/(<[^>]+) data-mce-style="([^"]+)"([^>]*>)/gi,(e,t,n,o)=>t+' style="'+n+'"'+o),t},VA=e=>{const t=ua(!1),n=ua(dd(e)?"text":"html"),o=(e=>{const t=ua(null);return{create:()=>((e,t)=>{const{dom:n,selection:o}=e,r=e.getBody();t.set(o.getRng());const s=n.add(e.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"},gA);Tt.browser.isFirefox()&&n.setStyle(s,"left","rtl"===n.getStyle(r,"direction",!0)?65535:-65535),n.bind(s,"beforedeactivate focusin focusout",e=>{e.stopPropagation()}),s.focus(),o.select(s,!0)})(e,t),remove:()=>((e,t)=>{const n=e.dom;if(pA(e)){let o;const r=t.get();for(;o=pA(e);)n.remove(o),n.unbind(o);r&&e.selection.setRng(r)}t.set(null)})(e,t),getEl:()=>pA(e),getHtml:()=>(e=>{const t=e.dom,n=(e,n)=>{e.appendChild(n),t.remove(n,!0)},[o,...r]=Y(e.getBody().childNodes,hA);V(r,e=>{n(o,e)});const s=t.select("div[id=mcepastebin]",o);for(let e=s.length-1;e>=0;e--){const r=t.create("div");o.insertBefore(r,s[e]),n(r,s[e])}return o?o.innerHTML:""})(e),getLastRng:t.get}})(e);(e=>{(Tt.browser.isChromium()||Tt.browser.isSafari())&&((e,t)=>{e.on("PastePreProcess",n=>{n.content=t(e,n.content,n.internal)})})(e,qA)})(e),((e,t)=>{e.addCommand("mceTogglePlainTextPaste",()=>{((e,t)=>{"text"===t.get()?(t.set("html"),bf(e,!1)):(t.set("text"),bf(e,!0)),e.focus()})(e,t)}),e.addCommand("mceInsertClipboardContent",(t,n)=>{n.html&&RA(e,n.html,n.internal,!1),n.text&&AA(e,n.text,!1)})})(e,n),(e=>{const t=t=>n=>{t(e,n)},n=od(e);w(n)&&e.on("PastePreProcess",t(n));const o=rd(e);w(o)&&e.on("PastePostProcess",t(o))})(e),e.on("PreInit",()=>{(e=>{e.on("cut",(e=>t=>{!t.isDefaultPrevented()&&zA(e)&&e.selection.isEditable()&&MA(t,FA(e),IA(e),()=>{if(Tt.browser.isChromium()||Tt.browser.isFirefox()){const t=e.selection.getRng();Ag.setEditorTimeout(e,()=>{e.selection.setRng(t),e.execCommand("Delete")},0)}else e.execCommand("Delete")})})(e)),e.on("copy",(e=>t=>{!t.isDefaultPrevented()&&zA(e)&&MA(t,FA(e),IA(e),E)})(e))})(e),((e,t)=>{td(e)&&e.on("dragend dragover draggesture dragdrop drop drag",e=>{e.preventDefault(),e.stopPropagation()}),nd(e)||e.on("drop",e=>{const t=e.dataTransfer;t&&(e=>$(e.files,e=>/^image\//.test(e.type)))(t)&&e.preventDefault()}),e.on("drop",n=>{if(n.isDefaultPrevented())return;const o=UA(e,n);if(y(o))return;const r=TA(n.dataTransfer),s=OA(r,dA());if((!BA(r)||(e=>{const t=e["text/plain"];return!!t&&0===t.indexOf("file://")})(r))&&PA(e,n,o))return;const a=r[dA()],i=a||r["text/html"]||r["text/plain"],l=((e,t,n,o)=>{const r=e.getParent(n,e=>Wr(t,e));if(!h(e.getParent(n,"summary")))return!0;if(r&&Ee(o,"text/html")){const e=(new DOMParser).parseFromString(o["text/html"],"text/html").body;return!h(e.querySelector(r.nodeName.toLowerCase()))}return!1})(e.dom,e.schema,o.startContainer,r),c=t.get();c&&!l||i&&(n.preventDefault(),Ag.setEditorTimeout(e,()=>{e.undoManager.transact(()=>{(a||c&&l)&&e.execCommand("Delete"),jA(e,o);const t=yA(i);r["text/html"]?RA(e,t,s,!0):AA(e,t,!0)})}))}),e.on("dragstart",e=>{t.set(!0)}),e.on("dragover dragend",n=>{nd(e)&&!t.get()&&(n.preventDefault(),jA(e,UA(e,n))),"dragend"===n.type&&t.set(!1)}),(e=>{e.on("input",t=>{const n=e=>h(e.querySelector("summary"));if("deleteByDrag"===t.inputType){const t=Y(e.dom.select("details"),n);V(t,t=>{gr(t.firstChild)&&t.firstChild.remove();const n=e.dom.create("summary");n.appendChild(Ga().dom),t.prepend(n)})}})})(e)})(e,t),LA(e,o,n)})},WA=gr,KA=lr,YA=e=>br(e.dom),GA=e=>t=>En(yn(e),t),XA=(e,t)=>Qn(yn(e),YA,GA(t)),ZA=(e,t,n)=>{const o=new $o(e,t),r=n?o.next.bind(o):o.prev.bind(o);let s=e;for(let t=n?e:r();t&&!WA(t);t=r())Oi(t)&&(s=t);return s},QA=e=>{const t=((e,t,n)=>{const o=Zi.fromRangeStart(e).getNode(),r=((e,t,n)=>Qn(yn(e),e=>(e=>hr(e.dom))(e)||n.isBlock(Ht(e)),GA(t)).getOr(yn(t)).dom)(o,t,n),s=ZA(o,r,!1),a=ZA(o,r,!0),i=document.createRange();return XA(s,r).fold(()=>{KA(s)?i.setStart(s,0):i.setStartBefore(s)},e=>i.setStartBefore(e.dom)),XA(a,r).fold(()=>{KA(a)?i.setEnd(a,a.data.length):i.setEndAfter(a)},e=>i.setEndAfter(e.dom)),i})(e.selection.getRng(),e.getBody(),e.schema);e.selection.setRng(Nb(t))};var JA;!function(e){e.Before="before",e.After="after"}(JA||(JA={}));const eT=(e,t)=>Math.abs(e.left-t),tT=(e,t)=>Math.abs(e.right-t),nT=(e,t)=>(e=>X(e,(e,t)=>e.fold(()=>I.some(t),e=>{const n=Math.min(t.left,e.left),o=Math.min(t.top,e.top),r=Math.max(t.right,e.right),s=Math.max(t.bottom,e.bottom);return I.some({top:o,right:r,bottom:s,left:n,width:r-n,height:s-o})}),I.none()))(Y(e,e=>{return(n=t)>=(o=e).top&&n<=o.bottom;var n,o})).fold(()=>[[],e],t=>{const{pass:n,fail:o}=K(e,e=>((e,t)=>{const n=((e,t)=>Math.max(0,Math.min(e.bottom,t.bottom)-Math.max(e.top,t.top)))(e,t)/Math.min(e.height,t.height);return((e,t)=>e.top<t.bottom&&e.bottom>t.top)(e,t)&&n>.5})(e,t));return[n,o]}),oT=(e,t,n)=>t>e.left&&t<e.right?0:Math.min(Math.abs(e.left-t),Math.abs(e.right-t)),rT=(e,t,n,o)=>{const r=e=>Oi(e.node)?I.some(e):Jo(e.node)?rT(de(e.node.childNodes),t,n,!1):I.none(),s=(e,s)=>{const a=ae(e,(e,o)=>s(e,t,n)-s(o,t,n));return ue(a,r).map(e=>o&&!lr(e.node)&&a.length>1?((e,o,s)=>r(o).filter(o=>Math.abs(s(e,t,n)-s(o,t,n))<2&&lr(o.node)))(e,a[1],s).getOr(e):e)},[a,i]=nT(lE(e),n),{pass:l,fail:c}=K(i,e=>e.top<n);return s(a,oT).orThunk(()=>s(c,vi)).orThunk(()=>s(l,vi))},sT=(e,t,n)=>((e,t,n)=>{const o=yn(e),r=Nn(o),s=Cn(r,t,n).filter(e=>_n(o,e)).getOr(o);return((e,t,n,o)=>{const r=(t,s)=>{const a=Y(t.dom.childNodes,O(e=>Jo(e)&&e.classList.contains("mce-drag-container")));return s.fold(()=>rT(a,n,o,!0),e=>{const t=Y(a,t=>t!==e.dom);return rT(t,n,o,!0)}).orThunk(()=>(En(t,e)?I.none():Tn(t)).bind(e=>r(e,I.some(t))))};return r(t,I.none())})(o,s,t,n)})(e,t,n).filter(e=>Vd(e.node)).map(e=>((e,t)=>({node:e.node,position:eT(e,t)<tT(e,t)?JA.Before:JA.After}))(e,t)),aT=e=>{var t,n;const o=e.getBoundingClientRect(),r=e.ownerDocument,s=r.documentElement,a=r.defaultView;return{top:o.top+(null!==(t=null==a?void 0:a.scrollY)&&void 0!==t?t:0)-s.clientTop,left:o.left+(null!==(n=null==a?void 0:a.scrollX)&&void 0!==n?n:0)-s.clientLeft}},iT=e=>({target:e,srcElement:e}),lT=(e,t,n,o)=>{const r=((e,t)=>{const n=(e=>{const t=iA(),n=(e=>{const t=e;return I.from(t[XR])})(e);return eA(e),WR(t),t.dropEffect=e.dropEffect,t.effectAllowed=e.effectAllowed,(e=>{const t=e;return I.from(t[$R])})(e).each(e=>t.setDragImage(e.image,e.x,e.y)),V(e.types,n=>{"Files"!==n&&t.setData(n,e.getData(n))}),V(e.files,e=>t.items.add(e)),(e=>{const t=e;return I.from(t[qR])})(e).each(e=>{((e,t)=>{VR(t)(e)})(t,e)}),n.each(n=>{QR(e,n),QR(t,n)}),t})(e);return"dragstart"===t?(WR(n),JR(n)):"drop"===t?(KR(n),eA(n)):(YR(n),tA(n)),n})(n,e);return v(o)?((e,t,n)=>{const o=B("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:e,composedPath:o,initEvent:o,preventDefault:E,stopImmediatePropagation:E,stopPropagation:E,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:o,initMouseEvent:o,getModifierState:o,dataTransfer:n,...iT(t)}})(e,t,r):((e,t,n,o)=>({...t,dataTransfer:o,type:e,...iT(n)}))(e,o,t,r)},cT=br,dT=((...e)=>t=>{for(let n=0;n<e.length;n++)if(e[n](t))return!0;return!1})(cT,hr),uT=(e,t,n,o)=>{const r=e.dom,s=t.cloneNode(!0);r.setStyles(s,{width:n,height:o}),r.setAttrib(s,"data-mce-selected",null);const a=r.create("div",{class:"mce-drag-container","data-mce-bogus":"all",unselectable:"on",contenteditable:"false"});return r.setStyles(a,{position:"absolute",opacity:.5,overflow:"hidden",border:0,padding:0,margin:0,width:n,height:o}),r.setStyles(s,{margin:0,boxSizing:"border-box"}),a.appendChild(s),a},mT=(e,t)=>n=>()=>{const o="left"===e?n.scrollX:n.scrollY;n.scroll({[e]:o+t,behavior:"smooth"})},fT=mT("left",-32),gT=mT("left",32),pT=mT("top",-32),hT=mT("top",32),bT=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},vT=(e,t,n,o,r)=>{"dragstart"===t&&lA(o,e.dom.getOuterHTML(n));const s=lT(t,n,o,r);return e.dispatch(t,s)},yT=(e,t)=>{const n=ya((e,n)=>((e,t,n)=>{e._selectionOverrides.hideFakeCaret(),sT(e.getBody(),t,n).fold(()=>e.selection.placeCaretAt(t,n),o=>{const r=e._selectionOverrides.showCaret(1,o.node,o.position===JA.Before,!1);r?e.selection.setRng(r):e.selection.placeCaretAt(t,n)})})(t,e,n),0);t.on("remove",n.cancel);const o=e;return r=>e.on(e=>{const s=Math.max(Math.abs(r.screenX-e.screenX),Math.abs(r.screenY-e.screenY));if(!e.dragging&&s>10){const n=vT(t,"dragstart",e.element,e.dataTransfer,r);if(C(n.dataTransfer)&&(e.dataTransfer=n.dataTransfer),n.isDefaultPrevented())return;e.dragging=!0,t.focus()}if(e.dragging){const s=r.currentTarget===t.getDoc().documentElement,l=((e,t)=>({pageX:t.pageX-e.relX,pageY:t.pageY+5}))(e,((e,t)=>{return n=(e=>e.inline?aT(e.getBody()):{left:0,top:0})(e),o=(e=>{const t=e.getBody();return e.inline?{left:t.scrollLeft,top:t.scrollTop}:{left:0,top:0}})(e),r=((e,t)=>{if(t.target.ownerDocument!==e.getDoc()){const n=aT(e.getContentAreaContainer()),o=(e=>{const t=e.getBody(),n=e.getDoc().documentElement,o={left:t.scrollLeft,top:t.scrollTop},r={left:t.scrollLeft||n.scrollLeft,top:t.scrollTop||n.scrollTop};return e.inline?o:r})(e);return{left:t.pageX-n.left+o.left,top:t.pageY-n.top+o.top}}return{left:t.pageX,top:t.pageY}})(e,t),{pageX:r.left-n.left+o.left,pageY:r.top-n.top+o.top};var n,o,r})(t,r));a=e.ghost,i=t.getBody(),a.parentNode!==i&&i.appendChild(a),((e,t,n,o,r,s,a,i,l,c,d,u)=>{let m=0,f=0;e.style.left=t.pageX+"px",e.style.top=t.pageY+"px",t.pageX+n>r&&(m=t.pageX+n-r),t.pageY+o>s&&(f=t.pageY+o-s),e.style.width=n-m+"px",e.style.height=o-f+"px";const g=l.clientHeight,p=l.clientWidth,h=a+l.getBoundingClientRect().top,b=i+l.getBoundingClientRect().left;d.on(e=>{e.intervalId.clear(),e.dragging&&u&&(a+8>=g?e.intervalId.set(hT(c)):a-8<=0?e.intervalId.set(pT(c)):i+8>=p?e.intervalId.set(gT(c)):i-8<=0?e.intervalId.set(fT(c)):h+16>=window.innerHeight?e.intervalId.set(hT(window)):h-16<=0?e.intervalId.set(pT(window)):b+16>=window.innerWidth?e.intervalId.set(gT(window)):b-16<=0&&e.intervalId.set(fT(window)))})})(e.ghost,l,e.width,e.height,e.maxX,e.maxY,r.clientY,r.clientX,t.getContentAreaContainer(),t.getWin(),o,s),n.throttle(r.clientX,r.clientY)}var a,i})},CT=(e,t,n)=>{e.on(e=>{e.intervalId.clear(),e.dragging&&n.fold(()=>vT(t,"dragend",e.element,e.dataTransfer),n=>vT(t,"dragend",e.element,e.dataTransfer,n))}),wT(e)},wT=e=>{e.on(e=>{e.intervalId.clear(),bT(e.ghost)}),e.clear()},xT=e=>{const t=va(),n=la.DOM,o=document,r=((e,t)=>n=>{if((e=>0===e.button)(n)){const o=Q(t.dom.getParents(n.target),dT).getOr(null);if(C(o)&&((e,t,n)=>cT(n)&&n!==t&&e.isEditable(n.parentElement))(t.dom,t.getBody(),o)){const r=t.dom.getPos(o),s=t.getBody(),a=t.getDoc().documentElement;e.set({element:o,dataTransfer:iA(),dragging:!1,screenX:n.screenX,screenY:n.screenY,maxX:(t.inline?s.scrollWidth:a.offsetWidth)-2,maxY:(t.inline?s.scrollHeight:a.offsetHeight)-2,relX:n.pageX-r.x,relY:n.pageY-r.y,width:o.offsetWidth,height:o.offsetHeight,ghost:uT(t,o,o.offsetWidth,o.offsetHeight),intervalId:ba(100)})}}})(t,e),s=yT(t,e),a=((e,t)=>n=>{e.on(e=>{var o;if(e.intervalId.clear(),e.dragging){if(((e,t,n)=>!y(t)&&t!==n&&!e.dom.isChildOf(t,n)&&e.dom.isEditable(t))(t,(e=>{const t=e.getSel();if(C(t)){const e=t.getRangeAt(0).startContainer;return lr(e)?e.parentNode:e}return null})(t.selection),e.element)){const r=null!==(o=t.getDoc().elementFromPoint(n.clientX,n.clientY))&&void 0!==o?o:t.getBody();vT(t,"drop",r,e.dataTransfer,n).isDefaultPrevented()||t.undoManager.transact(()=>{((e,t)=>{const n=e.getParent(t.parentNode,e.isBlock);bT(t),n&&n!==e.getRoot()&&e.isEmpty(n)&&Xa(yn(n))})(t.dom,e.element),(e=>{const t=e.getData("text/html");return""===t?I.none():I.some(t)})(e.dataTransfer).each(e=>t.insertContent(e)),t._selectionOverrides.hideFakeCaret()})}vT(t,"dragend",t.getBody(),e.dataTransfer,n)}}),wT(e)})(t,e),i=((e,t)=>n=>CT(e,t,I.some(n)))(t,e);e.on("mousedown",r),e.on("mousemove",s),e.on("mouseup",a),n.bind(o,"mousemove",s),n.bind(o,"mouseup",i),e.on("remove",()=>{n.unbind(o,"mousemove",s),n.unbind(o,"mouseup",i)}),e.on("keydown",n=>{n.keyCode===vf.ESC&&CT(t,e,I.none())})},ST=br,ET=(e,t)=>mb(e.getBody(),t),_T=e=>{const t=e.selection,n=e.dom,o=e.getBody(),r=Hd(e,o,n.isBlock,()=>zg(e)),s="sel-"+n.uniqueId(),a="data-mce-selected";let i;const l=e=>e!==o&&(ST(e)||Cr(e))&&n.isChildOf(e,o)&&n.isEditable(e.parentNode),c=(n,o,s,a=!0)=>e.dispatch("ShowCaret",{target:o,direction:n,before:s}).isDefaultPrevented()?null:(a&&t.scrollIntoView(o,-1===n),r.show(s,o)),d=e=>ri(e)||li(e)||ci(e),u=e=>d(e.startContainer)||d(e.endContainer),m=t=>{const o=e.schema.getVoidElements(),r=n.createRng(),s=t.startContainer,a=t.startOffset,i=t.endContainer,l=t.endOffset;return Ee(o,s.nodeName.toLowerCase())?0===a?r.setStartBefore(s):r.setStartAfter(s):r.setStart(s,a),Ee(o,i.nodeName.toLowerCase())?0===l?r.setEndBefore(i):r.setEndAfter(i):r.setEnd(i,l),r},f=(r,d)=>{if(!r)return null;if(r.collapsed){if(!u(r)){const e=d?1:-1,t=pu(e,o,r),s=t.getNode(!d);if(C(s)){if(Vd(s))return c(e,s,!!d&&!t.isAtEnd(),!1);if(oi(s)&&br(s.nextSibling)){const e=n.createRng();return e.setStart(s,0),e.setEnd(s,0),e}}const a=t.getNode(d);if(C(a)){if(Vd(a))return c(e,a,!d&&!t.isAtEnd(),!1);if(oi(a)&&br(a.previousSibling)){const e=n.createRng();return e.setStart(a,1),e.setEnd(a,1),e}}}return null}let m=r.startContainer,f=r.startOffset;const g=r.endOffset;if(lr(m)&&0===f&&ST(m.parentNode)&&(m=m.parentNode,f=n.nodeIndex(m),m=m.parentNode),!Jo(m))return null;if(g===f+1&&m===r.endContainer){const o=m.childNodes[f];if(l(o))return(o=>{const r=o.cloneNode(!0),l=e.dispatch("ObjectSelected",{target:o,targetClone:r});if(l.isDefaultPrevented())return null;const c=((o,r)=>{const a=yn(e.getBody()),i=e.getDoc(),l=to(a,"#"+s).getOrThunk(()=>{const e=hn('<div data-mce-bogus="all" class="mce-offscreen-selection"></div>',i);return Qt(e,"id",s),vo(a,e),e}),c=n.createRng();wo(l),Co(l,[vn(Vo,i),yn(r),vn(Vo,i)]),c.setStart(l.dom.firstChild,1),c.setEnd(l.dom.lastChild,0),lo(l,{top:n.getPos(o,e.getBody()).y+"px"}),bg(l);const d=t.getSel();return d&&(d.removeAllRanges(),d.addRange(c)),c})(o,l.targetClone),d=yn(o);return V(zo(yn(e.getBody()),`*[${a}]`),e=>{En(d,e)||on(e,a)}),n.getAttrib(o,a)||o.setAttribute(a,"1"),i=o,p(),c})(o)}return null},g=()=>{i&&i.removeAttribute(a),to(yn(e.getBody()),"#"+s).each(xo),i=null},p=()=>{r.hide()};return ww(e)||(e.on("click",t=>{n.isEditable(t.target)||(t.preventDefault(),e.focus())}),e.on("blur NewBlock",g),e.on("ResizeWindow FullscreenStateChanged",r.reposition),e.on("tap",t=>{const n=t.target,o=ET(e,n);ST(o)?(t.preventDefault(),Zx(e,o).each(f)):l(n)&&Zx(e,n).each(f)},!0),e.on("mousedown",r=>{const s=r.target;if(s!==o&&"HTML"!==s.nodeName&&!n.isChildOf(s,o))return;if(!((e,t,n)=>{const o=yn(e.getBody()),r=e.inline?o:yn(Nn(o).dom.documentElement),s=((e,t,n,o)=>{const r=(e=>e.dom.getBoundingClientRect())(t);return{x:n-(e?r.left+t.dom.clientLeft+ex(t):0),y:o-(e?r.top+t.dom.clientTop+Jw(t):0)}})(e.inline,r,t,n);return((e,t,n)=>{const o=Zw(e),r=Qw(e);return t>=0&&n>=0&&t<=o&&n<=r})(r,s.x,s.y)})(e,r.clientX,r.clientY))return;g(),p();const a=ET(e,s);ST(a)?(r.preventDefault(),Zx(e,a).each(f)):sT(o,r.clientX,r.clientY).each(n=>{var o;r.preventDefault(),(o=c(1,n.node,n.position===JA.Before,!1))&&t.setRng(o),er(a)?a.focus():e.getBody().focus()})}),e.on("keypress",e=>{vf.modifierPressed(e)||ST(t.getNode())&&e.preventDefault()}),e.on("GetSelectionRange",e=>{let t=e.range;if(i){if(!i.parentNode)return void(i=null);t=t.cloneRange(),t.selectNode(i),e.range=t}}),e.on("SetSelectionRange",e=>{e.range=m(e.range);const t=f(e.range,e.forward);t&&(e.range=t)}),e.on("AfterSetSelectionRange",e=>{const t=e.range,o=t.startContainer.parentElement;var r;u(t)||Jo(r=o)&&"mcepastebin"===r.id||p(),(e=>C(e)&&n.hasClass(e,"mce-offscreen-selection"))(o)||g()}),(e=>{xT(e),qc(e)&&(e=>{const t=t=>{if(!t.isDefaultPrevented()){const n=t.dataTransfer;n&&(H(n.types,"Files")||n.files.length>0)&&(t.preventDefault(),"drop"===t.type&&ax(e,"Dropped file type is not supported"))}},n=n=>{Pg(e,n.target)&&t(n)},o=()=>{const o=la.DOM,r=e.dom,s=document,a=e.inline?e.getBody():e.getDoc(),i=["drop","dragover"];V(i,e=>{o.bind(s,e,n),r.bind(a,e,t)}),e.on("remove",()=>{V(i,e=>{o.unbind(s,e,n),r.unbind(a,e,t)})})};e.on("init",()=>{Ag.setEditorTimeout(e,o,0)})})(e)})(e),(e=>{const t=ya(()=>{if(!e.removed&&e.getBody().contains(document.activeElement)){const t=e.selection.getRng();if(t.collapsed){const n=Qx(e,t,!1);e.selection.setRng(n)}}},0);e.on("focus",()=>{t.throttle()}),e.on("blur",()=>{t.cancel()})})(e),(e=>{e.on("init",()=>{e.on("focusin",t=>{const n=t.target;if(Cr(n)){const t=mb(e.getBody(),n),o=br(t)?t:n;e.selection.getNode()!==o&&Zx(e,o).each(t=>e.selection.setRng(t))}})})})(e)),{showCaret:c,showBlockCaretContainer:e=>{e.hasAttribute("data-mce-caret")&&(di(e),t.scrollIntoView(e))},hideFakeCaret:p,destroy:()=>{r.destroy(),i=null}}},kT=(e,t)=>{let n=t;for(let t=e.previousSibling;lr(t);t=t.previousSibling)n+=t.data.length;return n},NT=(e,t,n,o,r)=>{if(lr(n)&&(o<0||o>n.data.length))return[];const s=r&&lr(n)?[kT(n,o)]:[o];let a=n;for(;a!==t&&a.parentNode;)s.push(e.nodeIndex(a,r)),a=a.parentNode;return a===t?s.reverse():[]},RT=(e,t,n,o,r,s,a=!1)=>({start:NT(e,t,n,o,a),end:NT(e,t,r,s,a)}),AT=(e,t)=>{const n=t.slice(),o=n.pop();return x(o)?X(n,(e,t)=>e.bind(e=>I.from(e.childNodes[t])),I.some(e)).bind(e=>lr(e)&&(o<0||o>e.data.length)?I.none():I.some({node:e,offset:o})):I.none()},TT=(e,t)=>AT(e,t.start).bind(({node:n,offset:o})=>AT(e,t.end).map(({node:e,offset:t})=>{const r=document.createRange();return r.setStart(n,o),r.setEnd(e,t),r})),OT=(e,t,n)=>{if(t&&e.isEmpty(t)&&!n(t)){const o=t.parentNode;e.remove(t,lr(t.firstChild)&&Yo(t.firstChild.data)),OT(e,o,n)}},BT=(e,t,n,o=!0)=>{const r=t.startContainer.parentNode,s=t.endContainer.parentNode;t.deleteContents(),o&&!n(t.startContainer)&&(lr(t.startContainer)&&0===t.startContainer.data.length&&e.remove(t.startContainer),lr(t.endContainer)&&0===t.endContainer.data.length&&e.remove(t.endContainer),OT(e,r,n),r!==s&&OT(e,s,n))},PT=(e,t)=>I.from(e.dom.getParent(t.startContainer,e.dom.isBlock)),DT=(e,t,n)=>{const o=e.dynamicPatternsLookup({text:n,block:t});return{...e,blockPatterns:kl(o).concat(e.blockPatterns),inlinePatterns:Nl(o).concat(e.inlinePatterns)}},LT=(e,t,n,o)=>{const r=e.createRng();return r.setStart(t,0),r.setEnd(n,o),r.toString()},MT=(e,t)=>e.create("span",{"data-mce-type":"bookmark",id:t}),IT=(e,t)=>{const n=e.createRng();return n.setStartAfter(t.start),n.setEndBefore(t.end),n},FT=(e,t,n)=>{const o=TT(e.getRoot(),n).getOrDie("Unable to resolve path range"),r=o.startContainer,s=o.endContainer,a=0===o.endOffset?s:s.splitText(o.endOffset),i=0===o.startOffset?r:r.splitText(o.startOffset),l=i.parentNode;return{prefix:t,end:a.parentNode.insertBefore(MT(e,t+"-end"),a),start:l.insertBefore(MT(e,t+"-start"),i)}},zT=(e,t,n)=>{OT(e,e.get(t.prefix+"-end"),n),OT(e,e.get(t.prefix+"-start"),n)},UT=e=>0===e.start.length,jT=(e,t,n,o)=>{const r=t.start;var s;return lk(e,o.container,o.offset,(s=r,(e,t)=>{const n=e.data.substring(0,t),o=n.lastIndexOf(s.charAt(s.length-1)),r=n.lastIndexOf(s);return-1!==r?r+s.length:-1!==o?o+1:-1}),n).bind(o=>{var s,a;const i=null!==(a=null===(s=n.textContent)||void 0===s?void 0:s.indexOf(r))&&void 0!==a?a:-1;if(-1!==i&&o.offset>=i+r.length){const t=e.createRng();return t.setStart(o.container,o.offset-r.length),t.setEnd(o.container,o.offset),I.some(t)}{const s=o.offset-r.length;return ak(o.container,s,n).map(t=>{const n=e.createRng();return n.setStart(t.container,t.offset),n.setEnd(o.container,o.offset),n}).filter(e=>e.toString()===r).orThunk(()=>jT(e,t,n,nk(o.container,0)))}})},HT=(e,t,n,o)=>{const r=e.dom,s=r.getRoot(),a=n.pattern,i=n.position.container,l=n.position.offset;return ak(i,l-n.pattern.end.length,t).bind(c=>{const d=RT(r,s,c.container,c.offset,i,l,o);if(UT(a))return I.some({matches:[{pattern:a,startRng:d,endRng:d}],position:c});{const i=$T(e,n.remainingPatterns,c.container,c.offset,t,o),l=i.getOr({matches:[],position:c}),u=l.position,m=((e,t,n,o,r,s=!1)=>{if(0===t.start.length&&!s){const t=e.createRng();return t.setStart(n,o),t.setEnd(n,o),I.some(t)}return sk(n,o,r).bind(n=>jT(e,t,r,n).bind(e=>{var t;if(s){if(e.endContainer===n.container&&e.endOffset===n.offset)return I.none();if(0===n.offset&&(null===(t=e.endContainer.textContent)||void 0===t?void 0:t.length)===e.endOffset)return I.none()}return I.some(e)}))})(r,a,u.container,u.offset,t,i.isNone());return m.map(e=>{const t=((e,t,n,o=!1)=>RT(e,t,n.startContainer,n.startOffset,n.endContainer,n.endOffset,o))(r,s,e,o);return{matches:l.matches.concat([{pattern:a,startRng:t,endRng:d}]),position:nk(e.startContainer,e.startOffset)}})}})},$T=(e,t,n,o,r,s)=>{const a=e.dom;return sk(n,o,a.getRoot()).bind(i=>{const l=LT(a,r,n,o);for(let a=0;a<t.length;a++){const c=t[a];if(!qe(l,c.end))continue;const d=t.slice();d.splice(a,1);const u=HT(e,r,{pattern:c,remainingPatterns:d,position:i},s);if(u.isNone()&&o>0)return $T(e,t,n,o-1,r,s);if(u.isSome())return u}return I.none()})},qT=(e,t,n)=>{e.selection.setRng(n),"inline-format"===t.type?V(t.format,t=>{e.formatter.apply(t)}):e.execCommand(t.cmd,!1,t.value)},VT=(e,t,n,o,r,s)=>{var a;return((e,t)=>{const n=ne(e,e=>$(t,t=>e.pattern.start===t.pattern.start&&e.pattern.end===t.pattern.end));return e.length===t.length?n?e:t:e.length>t.length?e:t})($T(e,r.inlinePatterns,n,o,t,s).fold(()=>[],e=>e.matches),$T(e,(a=r.inlinePatterns,ae(a,(e,t)=>t.end.length-e.end.length)),n,o,t,s).fold(()=>[],e=>e.matches))},WT=(e,t)=>{if(0===t.length)return;const n=e.dom,o=e.selection.getBookmark(),r=((e,t)=>{const n=Pa("mce_textpattern"),o=G(t,(t,o)=>{const r=FT(e,n+`_end${t.length}`,o.endRng);return t.concat([{...o,endMarker:r}])},[]);return G(o,(t,r)=>{const s=o.length-t.length-1,a=UT(r.pattern)?r.endMarker:FT(e,n+`_start${s}`,r.startRng);return t.concat([{...r,startMarker:a}])},[])})(n,t);V(r,t=>{const o=n.getParent(t.startMarker.start,n.isBlock),r=e=>e===o;UT(t.pattern)?((e,t,n,o)=>{const r=IT(e.dom,n);BT(e.dom,r,o),qT(e,t,r)})(e,t.pattern,t.endMarker,r):((e,t,n,o,r)=>{const s=e.dom,a=IT(s,o),i=IT(s,n);BT(s,i,r),BT(s,a,r);const l={prefix:n.prefix,start:n.end,end:o.start},c=IT(s,l);qT(e,t,c)})(e,t.pattern,t.startMarker,t.endMarker,r),zT(n,t.endMarker,r),zT(n,t.startMarker,r)}),e.selection.moveToBookmark(o)},KT=(e,t,n)=>((e,t,n)=>{if(lr(e)&&0>=e.length)return I.some(nk(e,0));{const t=Fa(ok);return I.from(t.forwards(e,0,rk(e),n)).map(e=>nk(e.container,0))}})(t,0,t).map(o=>{const r=o.container;return ik(r,n.start.length,t).each(n=>{const o=e.createRng();o.setStart(r,0),o.setEnd(n.container,n.offset),BT(e,o,e=>e===t)}),r}),YT=e=>(t,n)=>{const o=t.dom,r=n.pattern,s=TT(o.getRoot(),n.range).getOrDie("Unable to resolve path range");return PT(t,s).each(n=>{"block-format"===r.type?((e,t)=>{const n=t.get(e);return p(n)&&le(n).exists(e=>Ee(e,"block"))})(r.format,t.formatter)&&t.undoManager.transact(()=>{e(t.dom,n,r),t.formatter.apply(r.format)}):"block-command"===r.type&&t.undoManager.transact(()=>{e(t.dom,n,r),t.execCommand(r.cmd,!1,r.value)})}),!0},GT=e=>(t,n)=>{const o=(e=>ae(e,(e,t)=>t.start.length-e.start.length))(t),r=n.replace(Vo," ");return Q(o,t=>e(t,n,r))},XT=(e,t)=>(n,o,r,s,a)=>{var i;void 0===a&&(a=null!==(i=o.textContent)&&void 0!==i?i:"");const l=n.dom,c=ql(n);return l.is(o,c)?e(r.blockPatterns,a).map(e=>t&&Pt.trim(a).length===e.start.length?[]:[{pattern:e,range:RT(l,l.getRoot(),o,0,o,0,s)}]).getOr([]):[]},ZT=YT((e,t,n)=>{KT(e,t,n).each(e=>{const t=yn(e),n=Ua(t);/^\s[^\s]/.test(n)&&((e,t)=>{za.set(e,t)})(t,n.slice(1))})}),QT=GT((e,t,n)=>0===t.indexOf(e.start)||0===n.indexOf(e.start)),JT=XT(QT,!0),eO=YT(KT),tO=GT((e,t,n)=>t===e.start||n===e.start),nO=XT(tO,!1),oO=(e,t,n)=>{for(let o=0;o<e.length;o++)if(n(e[o],t))return!0;return!1},rO=e=>{const t=[",",".",";",":","!","?"],n=[32],o=()=>{return t=fd(e),n=gd(e),{inlinePatterns:Nl(t),blockPatterns:kl(t),dynamicPatternsLookup:n};var t,n},r=()=>(e=>e.options.isSet("text_patterns_lookup"))(e);e.on("keydown",t=>{if(13===t.keyCode&&!vf.modifierPressed(t)&&e.selection.isCollapsed()){const n=Rl(o(),"enter");(n.inlinePatterns.length>0||n.blockPatterns.length>0||r())&&((e,t)=>((e,t)=>{const n=e.selection.getRng();return PT(e,n).map(o=>{var r;const s=Math.max(0,n.startOffset),a=DT(t,o,null!==(r=o.textContent)&&void 0!==r?r:"");return{inlineMatches:VT(e,o,n.startContainer,s,a,!0),blockMatches:JT(e,o,a,!0)}}).filter(({inlineMatches:e,blockMatches:t})=>t.length>0||e.length>0)})(e,t).fold(L,({inlineMatches:t,blockMatches:n})=>(e.undoManager.add(),e.undoManager.extra(()=>{e.execCommand("mceInsertNewLine")},()=>{(e=>{e.insertContent(Za,{preserve_zwsp:!0})})(e),WT(e,t),((e,t)=>{if(0===t.length)return;const n=e.selection.getBookmark();V(t,t=>ZT(e,t)),e.selection.moveToBookmark(n)})(e,n);const o=e.selection.getRng(),r=sk(o.startContainer,o.startOffset,e.dom.getRoot());e.execCommand("mceInsertNewLine"),r.each(t=>{const n=t.container;n.data.charAt(t.offset-1)===qo&&(n.deleteData(t.offset-1,1),OT(e.dom,n.parentNode,t=>t===e.dom.getRoot()))})}),!0)))(e,n)&&t.preventDefault()}},!0),e.on("keydown",t=>{if(32===t.keyCode&&e.selection.isCollapsed()){const n=Rl(o(),"space");(n.blockPatterns.length>0||r())&&((e,t)=>((e,t)=>{const n=e.selection.getRng();return PT(e,n).map(o=>{const r=Math.max(0,n.startOffset),s=LT(e.dom,o,n.startContainer,r),a=DT(t,o,s);return nO(e,o,a,!1,s)}).filter(e=>e.length>0)})(e,t).fold(L,t=>(e.undoManager.transact(()=>{((e,t)=>{V(t,t=>eO(e,t))})(e,t)}),!0)))(e,n)&&t.preventDefault()}},!0);const s=()=>{if(e.selection.isCollapsed()){const t=Rl(o(),"space");(t.inlinePatterns.length>0||r())&&((e,t)=>{const n=e.selection.getRng();PT(e,n).map(o=>{const r=Math.max(0,n.startOffset-1),s=LT(e.dom,o,n.startContainer,r),a=DT(t,o,s),i=VT(e,o,n.startContainer,r,a,!1);i.length>0&&e.undoManager.transact(()=>{WT(e,i)})})})(e,t)}};e.on("keyup",e=>{oO(n,e,(e,t)=>e===t.keyCode&&!vf.modifierPressed(t))&&s()}),e.on("keypress",n=>{oO(t,n,(e,t)=>e.charCodeAt(0)===t.charCode)&&Ag.setEditorTimeout(e,s)})},sO=e=>{const t=Pt.each,n=vf.BACKSPACE,o=vf.DELETE,r=e.dom,s=e.selection,a=e.parser,i=Tt.browser,l=i.isFirefox(),c=i.isChromium()||i.isSafari(),d=Tt.deviceType.isiPhone()||Tt.deviceType.isiPad(),u=Tt.os.isMacOS()||Tt.os.isiOS(),m=(t,n)=>{try{e.getDoc().execCommand(t,!1,String(n))}catch(e){}},f=e=>e.isDefaultPrevented(),g=()=>{e.shortcuts.add("meta+a",null,"SelectAll")},p=()=>{e.inline||r.bind(e.getDoc(),"mousedown mouseup",t=>{let n;if(t.target===e.getDoc().documentElement)if(n=s.getRng(),e.getBody().focus(),"mousedown"===t.type){if(ri(n.startContainer))return;s.placeCaretAt(t.clientX,t.clientY)}else s.setRng(n)})},h=()=>{Range.prototype.getClientRects||e.on("mousedown",t=>{if(!f(t)&&"HTML"===t.target.nodeName){const t=e.getBody();t.blur(),Ag.setEditorTimeout(e,()=>{t.focus()})}})},b=()=>{const t=Kc(e);e.on("click",n=>{const o=n.target;/^(IMG|HR)$/.test(o.nodeName)&&r.isEditable(o)&&(n.preventDefault(),e.selection.select(o),e.nodeChanged()),"A"===o.nodeName&&r.hasClass(o,t)&&0===o.childNodes.length&&r.isEditable(o.parentNode)&&(n.preventDefault(),s.select(o))})},v=()=>{e.on("keydown",e=>{if(!f(e)&&e.keyCode===n&&s.isCollapsed()&&0===s.getRng().startOffset){const t=s.getNode().previousSibling;if(t&&t.nodeName&&"table"===t.nodeName.toLowerCase())return e.preventDefault(),!1}return!0})},y=()=>{zc(e)||e.on("BeforeExecCommand mousedown",()=>{m("StyleWithCSS",!1),m("enableInlineTableEditing",!1),bc(e)||m("enableObjectResizing",!1)})},C=()=>{e.contentStyles.push("img:-moz-broken {-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}")},w=()=>{e.inline||e.on("keydown",()=>{document.activeElement===document.body&&e.getWin().focus()})},x=()=>{e.inline||(e.contentStyles.push("body {min-height: 150px}"),e.on("click",t=>{let n;"HTML"===t.target.nodeName&&(n=e.selection.getRng(),e.getBody().focus(),e.selection.setRng(n),e.selection.normalize(),e.nodeChanged())}))},S=()=>{u&&e.on("keydown",t=>{!vf.metaKeyPressed(t)||t.shiftKey||37!==t.keyCode&&39!==t.keyCode||(t.preventDefault(),e.selection.getSel().modify("move",37===t.keyCode?"backward":"forward","lineboundary"))})},_=()=>{e.on("click",e=>{let t=e.target;do{if("A"===t.tagName)return void e.preventDefault()}while(t=t.parentNode)}),e.contentStyles.push(".mce-content-body {-webkit-touch-callout: none}")},k=()=>{e.on("init",()=>{e.dom.bind(e.getBody(),"submit",e=>{e.preventDefault()})})},N=E;return ww(e)?(c&&(p(),b(),k(),g(),d&&(w(),x(),_())),l&&(h(),y(),C(),S())):(e.on("keydown",t=>{if(f(t)||t.keyCode!==vf.BACKSPACE)return;let n=s.getRng();const o=n.startContainer,a=n.startOffset,i=r.getRoot();let l=o;if(n.collapsed&&0===a){for(;l.parentNode&&l.parentNode.firstChild===l&&l.parentNode!==i;)l=l.parentNode;"BLOCKQUOTE"===l.nodeName&&(e.formatter.toggle("blockquote",void 0,l),n=r.createRng(),n.setStart(o,0),n.setEnd(o,0),s.setRng(n))}}),(()=>{const t=e=>{const t=r.create("body"),n=e.cloneContents();return t.appendChild(n),s.serializer.serialize(t,{format:"html"})};e.on("keydown",s=>{const a=s.keyCode;if(!f(s)&&(a===o||a===n)&&e.selection.isEditable()){const n=e.selection.isCollapsed(),o=e.getBody();if(n&&!Rr(e.schema,o))return;if(!n&&!(n=>{const o=t(n),s=r.createRng();return s.selectNode(e.getBody()),o===t(s)})(e.selection.getRng()))return;s.preventDefault(),e.setContent(""),o.firstChild&&r.isBlock(o.firstChild)?e.selection.setCursorLocation(o.firstChild,0):e.selection.setCursorLocation(o,0),e.nodeChanged()}})})(),Tt.windowsPhone||e.on("keyup focusin mouseup",t=>{vf.modifierPressed(t)||(e=>{const t=e.getBody(),n=e.selection.getRng();return n.startContainer===n.endContainer&&n.startContainer===t&&0===n.startOffset&&n.endOffset===t.childNodes.length})(e)||s.normalize()},!0),c&&(p(),b(),e.on("init",()=>{m("DefaultParagraphSeparator",ql(e))}),k(),v(),a.addNodeFilter("br",e=>{let t=e.length;for(;t--;)"Apple-interchange-newline"===e[t].attr("class")&&e[t].remove()}),d?(w(),x(),_()):g()),l&&(e.on("keydown",t=>{if(!f(t)&&t.keyCode===n){if(!e.getBody().getElementsByTagName("hr").length)return;if(s.isCollapsed()&&0===s.getRng().startOffset){const e=s.getNode(),n=e.previousSibling;if("HR"===e.nodeName)return r.remove(e),void t.preventDefault();n&&n.nodeName&&"hr"===n.nodeName.toLowerCase()&&(r.remove(n),t.preventDefault())}}}),h(),(()=>{const n=()=>{const n=r.getAttribs(s.getStart().cloneNode(!1));return()=>{const o=s.getStart();o!==e.getBody()&&(r.setAttrib(o,"style",null),t(n,e=>{o.setAttributeNode(e.cloneNode(!0))}))}},o=()=>!s.isCollapsed()&&r.getParent(s.getStart(),r.isBlock)!==r.getParent(s.getEnd(),r.isBlock);e.on("keypress",t=>{let r;return!(!(f(t)||8!==t.keyCode&&46!==t.keyCode)&&o()&&(r=n(),e.getDoc().execCommand("delete",!1),r(),t.preventDefault(),1))}),r.bind(e.getDoc(),"cut",t=>{if(!f(t)&&o()){const t=n();Ag.setEditorTimeout(e,()=>{t()})}})})(),y(),e.on("SetContent ExecCommand",e=>{"setcontent"!==e.type&&"mceInsertLink"!==e.command||t(r.select("a:not([data-mce-block])"),e=>{var t;let n=e.parentNode;const o=r.getRoot();if((null==n?void 0:n.lastChild)===e){for(;n&&!r.isBlock(n);){if((null===(t=n.parentNode)||void 0===t?void 0:t.lastChild)!==n||n===o)return;n=n.parentNode}r.add(n,"br",{"data-mce-bogus":1})}})}),C(),S(),v())),{refreshContentEditable:N,isHidden:()=>{if(!l||e.removed)return!1;const t=e.selection.getSel();return!t||!t.rangeCount||0===t.rangeCount}}},aO=la.DOM,iO=e=>e.inline?e.getElement().nodeName.toLowerCase():void 0,lO=e=>Ce(e,e=>!1===v(e)),cO=e=>{const t=e.options.get,n=e.editorUpload.blobCache;return lO({allow_conditional_comments:t("allow_conditional_comments"),allow_html_data_urls:t("allow_html_data_urls"),allow_svg_data_urls:t("allow_svg_data_urls"),allow_html_in_named_anchor:t("allow_html_in_named_anchor"),allow_script_urls:t("allow_script_urls"),allow_unsafe_link_target:t("allow_unsafe_link_target"),convert_unsafe_embeds:t("convert_unsafe_embeds"),convert_fonts_to_spans:t("convert_fonts_to_spans"),fix_list_elements:t("fix_list_elements"),font_size_legacy_values:t("font_size_legacy_values"),forced_root_block:t("forced_root_block"),forced_root_block_attrs:t("forced_root_block_attrs"),preserve_cdata:t("preserve_cdata"),inline_styles:t("inline_styles"),root_name:iO(e),sandbox_iframes:t("sandbox_iframes"),sandbox_iframes_exclusions:Rd(e),sanitize:t("xss_sanitization"),validate:!0,blob_cache:n,document:e.getDoc()})},dO=e=>{const t=e.options.get;return lO({custom_elements:t("custom_elements"),extended_valid_elements:t("extended_valid_elements"),invalid_elements:t("invalid_elements"),invalid_styles:t("invalid_styles"),schema:t("schema"),valid_children:t("valid_children"),valid_classes:t("valid_classes"),valid_elements:t("valid_elements"),valid_styles:t("valid_styles"),verify_html:t("verify_html"),padd_empty_block_inline_children:t("format_empty_lines")})},uO=e=>e.inline?e.ui.styleSheetLoader:e.dom.styleSheetLoader,mO=e=>{const t=uO(e),n=gc(e),o=e.contentCSS,r=()=>{t.unloadAll(o),e.inline||e.ui.styleSheetLoader.unloadAll(n)},s=()=>{e.removed?r():e.on("remove",r)};if(e.contentStyles.length>0){let t="";Pt.each(e.contentStyles,e=>{t+=e+"\r\n"}),e.dom.addStyle(t)}const a=Promise.all(((e,t,n)=>{const{pass:o,fail:r}=K(t,e=>hugerte.Resource.has(e)),s=o.map(t=>{const n=hugerte.Resource.get(t);return m(n)?Promise.resolve(uO(e).loadRawCss(t,n)):Promise.resolve()}),a=[...s,uO(e).loadAll(r)];return e.inline?a:a.concat([e.ui.styleSheetLoader.loadAll(n)])})(e,o,n)).then(s).catch(s),i=fc(e);return i&&((e,t)=>{const n=yn(e.getBody()),o=Vn(qn(n)),r=bn("style");Qt(r,"type","text/css"),vo(r,vn(t)),vo(o,r),e.on("remove",()=>{xo(r)})})(e,i),a},fO=e=>{!0!==e.removed&&((e=>{ww(e)||e.load({initial:!0,format:"html"}),e.startContent=e.getContent({format:"raw"})})(e),(e=>{e.bindPendingEventDelegates(),e.initialized=!0,(e=>{e.dispatch("Init")})(e),e.focus(!0),(e=>{const t=e.dom.getRoot();e.inline||pm(e)&&e.selection.getStart(!0)!==t||Uu(t).each(t=>{const n=t.getNode(),o=sr(n)?Uu(n).getOr(t):t;e.selection.setRng(o.toRange())})})(e),e.nodeChanged({initial:!0});const t=Xc(e);w(t)&&t.call(e,e),(e=>{const t=Qc(e);t&&Ag.setEditorTimeout(e,()=>{let n;n=!0===t?e:e.editorManager.get(t),n&&!n.destroyed&&(n.focus(),n.selection.scrollIntoView())},100)})(e)})(e))},gO=e=>{const t=e.getElement();let n=e.getDoc();e.inline&&(aO.addClass(t,"mce-content-body"),e.contentDocument=n=document,e.contentWindow=window,e.bodyElement=t,e.contentAreaContainer=t);const o=e.getBody();o.disabled=!0,e.readonly=zc(e),e._editableRoot=Uc(e),!e.readonly&&e.hasEditableRoot()&&(e.inline&&"static"===aO.getStyle(o,"position",!0)&&(o.style.position="relative"),o.contentEditable="true"),o.disabled=!1,e.editorUpload=vx(e),e.schema=Ps(dO(e)),e.dom=la(n,{keep_values:!0,url_converter:e.convertURL,url_converter_scope:e,update_styles:!0,root_element:e.inline?e.getBody():null,collect:e.inline,schema:e.schema,contentCssCors:ac(e),referrerPolicy:ic(e),onSetAttrib:t=>{e.dispatch("SetAttrib",t)},force_hex_color:kd(e)}),e.parser=(e=>{const t=jC(cO(e),e.schema);return t.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",(e,t)=>{let n=e.length;for(;n--;)e[n].attr(t,null)}),t.addAttributeFilter("src,href,style,tabindex",(t,n)=>{const o=e.dom,r="data-mce-"+n;let s=t.length;for(;s--;){const a=t[s];let i=a.attr(n);if(i){if(0===i.indexOf("data:")||0===i.indexOf("blob:"))continue;"style"===n?(i=o.serializeStyle(o.parseStyle(i),a.name),i.length||(i=null),a.attr(r,i),a.attr(n,i)):"tabindex"===n?(a.attr(r,i),a.attr(n,null)):a.attr(r,e.convertURL(i,n,a.name))}}}),t.addNodeFilter("script",e=>{let t=e.length;for(;t--;){const n=e[t],o=n.attr("type")||"no/type";0!==o.indexOf("mce-")&&n.attr("type","mce-"+o)}}),vd(e)&&t.addNodeFilter("#cdata",t=>{var n;let o=t.length;for(;o--;){const r=t[o];r.type=8,r.name="#comment",r.value="[CDATA["+e.dom.encode(null!==(n=r.value)&&void 0!==n?n:"")+"]]"}}),t.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",t=>{let n=t.length;const o=e.schema.getNonEmptyElements();for(;n--;){const e=t[n];e.isEmpty(o)&&0===e.getAll("br").length&&e.append(new Qg("br",1))}}),t})(e),e.serializer=Bw((e=>{const t=e.options.get;return{...cO(e),...dO(e),...lO({remove_trailing_brs:t("remove_trailing_brs"),pad_empty_with_br:t("pad_empty_with_br"),url_converter:t("url_converter"),url_converter_scope:t("url_converter_scope"),protect:ed(e),element_format:t("element_format"),entities:t("entities"),entity_encoding:t("entity_encoding"),indent:t("indent"),indent_after:t("indent_after"),indent_before:t("indent_before")})}})(e),e),e.selection=Aw(e.dom,e.getWin(),e.serializer,e),e.annotator=lf(e),e.formatter=Ax(e),e.undoManager=Ox(e),e._nodeChangeDispatcher=new HR(e),e._selectionOverrides=_T(e),(e=>{const t=va(),n=ua(!1),o=Ca(t=>{e.dispatch("longpress",{...t,type:"longpress"}),n.set(!0)},400);e.on("touchstart",e=>{o_(e).each(r=>{o.cancel();const s={x:r.clientX,y:r.clientY,target:e.target};o.throttle(e),n.set(!1),t.set(s)})},!0),e.on("touchmove",r=>{o.cancel(),o_(r).each(o=>{t.on(r=>{((e,t)=>{const n=Math.abs(e.clientX-t.x),o=Math.abs(e.clientY-t.y);return n>5||o>5})(o,r)&&(t.clear(),n.set(!1),e.dispatch("longpresscancel"))})})},!0),e.on("touchend touchcancel",r=>{o.cancel(),"touchcancel"!==r.type&&t.get().filter(e=>e.target.isEqualNode(r.target)).each(()=>{n.get()?r.preventDefault():e.dispatch("tap",{...r,type:"tap"})})},!0)})(e),(e=>{(e=>{e.on("click",t=>{e.dom.getParent(t.target,"details")&&t.preventDefault()})})(e),(e=>{e.parser.addNodeFilter("details",t=>{const n=Ed(e);V(t,e=>{"expanded"===n?e.attr("open","open"):"collapsed"===n&&e.attr("open",null)})}),e.serializer.addNodeFilter("details",t=>{const n=_d(e);V(t,e=>{"expanded"===n?e.attr("open","open"):"collapsed"===n&&e.attr("open",null)})})})(e)})(e),(e=>{const t="contenteditable",n=" "+Pt.trim(hd(e))+" ",o=" "+Pt.trim(pd(e))+" ",r=d_(n),s=d_(o),a=bd(e);a.length>0&&e.on("BeforeSetContent",t=>{((e,t,n)=>{let o=t.length,r=n.content;if("raw"!==n.format){for(;o--;)r=r.replace(t[o],u_(e,r,pd(e)));n.content=r}})(e,a,t)}),e.parser.addAttributeFilter("class",e=>{let n=e.length;for(;n--;){const o=e[n];r(o)?o.attr(t,"true"):s(o)&&o.attr(t,"false")}}),e.serializer.addAttributeFilter(t,e=>{let n=e.length;for(;n--;){const o=e[n];if(!r(o)&&!s(o))continue;const i=o.attr("data-mce-content");a.length>0&&i?m_(a,i)?(o.name="#text",o.type=3,o.raw=!0,o.value=i):o.remove():o.attr(t,null)}})})(e),ww(e)||((e=>{e.on("mousedown",t=>{t.detail>=3&&(t.preventDefault(),QA(e))})})(e),(e=>{rO(e)})(e));const r=jR(e);n_(e,r),(e=>{e.on("NodeChange",T(l_,e))})(e),(e=>{var t;const n=e.dom,o=ql(e),r=null!==(t=yc(e))&&void 0!==t?t:"",s=(t,a)=>{if((e=>{if(Dx(e)){const t=e.keyCode;return!Lx(e)&&(vf.metaKeyPressed(e)||e.altKey||t>=112&&t<=123||H(Bx,t))}return!1})(t))return;const i=e.getBody(),l=!(e=>Dx(e)&&!(Lx(e)||"keyup"===e.type&&229===e.keyCode))(t)&&((e,t,n)=>{if(e.isEmpty(t,void 0,{skipBogus:!1,includeZwsp:!0})){const o=t.firstElementChild;if(o){if(e.getStyle(t.firstElementChild,"padding-left")||e.getStyle(t.firstElementChild,"padding-right"))return!1;if(n===o.nodeName.toLowerCase()){let e=o.firstElementChild;for(;e&&e.hasAttribute("data-mce-bogus");)e=e.nextElementSibling;return null===e||"BR"===e.nodeName}return!1}return!0}return!1})(n,i,o);(""!==n.getAttrib(i,Px)!==l||a)&&(n.setAttrib(i,Px,l?r:null),((e,t)=>{e.dispatch("PlaceholderToggle",{state:t})})(e,l),e.on(l?"keydown":"keyup",s),e.off(l?"keyup":"keydown",s))};Ge(r)&&e.on("init",t=>{s(t,!0),e.on("change SetContent ExecCommand input",s),e.on("paste",t=>Ag.setEditorTimeout(e,()=>s(t)))})})(e),VA(e);const s=(e=>{const t=e;return(e=>Se(e.plugins,"rtc").bind(e=>I.from(e.setup)))(e).fold(()=>(t.rtcInstance=Cw(e),I.none()),e=>(t.rtcInstance=(()=>{const e=N(null),t=N("");return{init:{bindEvents:E},undoManager:{beforeChange:E,add:e,undo:e,redo:e,clear:E,reset:E,hasUndo:L,hasRedo:L,transact:e,ignore:E,extra:E},formatter:{match:L,matchAll:N([]),matchNode:N(void 0),canApply:L,closest:t,apply:E,remove:E,toggle:E,formatChanged:N({unbind:E})},editor:{getContent:t,setContent:N({content:"",html:""}),insertContent:N(""),addVisual:E},selection:{getContent:t},autocompleter:{addDecoration:E,removeDecoration:E},raw:{getModel:N(I.none())}}})(),I.some(()=>e().then(e=>(t.rtcInstance=(e=>{const t=e=>f(e)?e:{},{init:n,undoManager:o,formatter:r,editor:s,selection:a,autocompleter:i,raw:l}=e;return{init:{bindEvents:n.bindEvents},undoManager:{beforeChange:o.beforeChange,add:o.add,undo:o.undo,redo:o.redo,clear:o.clear,reset:o.reset,hasUndo:o.hasUndo,hasRedo:o.hasRedo,transact:(e,t,n)=>o.transact(n),ignore:(e,t)=>o.ignore(t),extra:(e,t,n,r)=>o.extra(n,r)},formatter:{match:(e,n,o,s)=>r.match(e,t(n),s),matchAll:r.matchAll,matchNode:r.matchNode,canApply:e=>r.canApply(e),closest:e=>r.closest(e),apply:(e,n,o)=>r.apply(e,t(n)),remove:(e,n,o,s)=>r.remove(e,t(n)),toggle:(e,n,o)=>r.toggle(e,t(n)),formatChanged:(e,t,n,o,s)=>r.formatChanged(t,n,o,s)},editor:{getContent:e=>s.getContent(e),setContent:(e,t)=>({content:s.setContent(e,t),html:""}),insertContent:(e,t)=>(s.insertContent(e),""),addVisual:s.addVisual},selection:{getContent:(e,t)=>a.getContent(t)},autocompleter:{addDecoration:i.addDecoration,removeDecoration:i.removeDecoration},raw:{getModel:()=>I.some(l.getRawModel())}}})(e),e.rtc.isRemote)))))})(e);(e=>{const t=e.getDoc(),n=e.getBody();(e=>{e.dispatch("PreInit")})(e),Jc(e)||(t.body.spellcheck=!1,aO.setAttrib(n,"spellcheck","false")),e.quirks=sO(e),(e=>{e.dispatch("PostRender")})(e);const o=pc(e);void 0!==o&&(n.dir=o);const r=ed(e);r&&e.on("BeforeSetContent",e=>{Pt.each(r,t=>{e.content=e.content.replace(t,e=>"\x3c!--mce:protected "+escape(e)+"--\x3e")})}),e.on("SetContent",()=>{e.addVisual(e.getBody())}),e.on("compositionstart compositionend",t=>{e.composing="compositionstart"===t.type})})(e),s.fold(()=>{const t=(e=>{let t=!1;const n=setTimeout(()=>{t||e.setProgressState(!0)},500);return()=>{clearTimeout(n),t=!0,e.setProgressState(!1)}})(e);mO(e).then(()=>{fO(e),t()})},t=>{e.setProgressState(!0),mO(e).then(()=>{t().then(t=>{e.setProgressState(!1),fO(e),Ew(e)},t=>{e.notificationManager.open({type:"error",text:String(t)}),fO(e),Ew(e)})})})},pO=M,hO=la.DOM,bO=la.DOM,vO=(e,t)=>({editorContainer:e,iframeContainer:t,api:{}}),yO=e=>{const t=e.getElement();return e.inline?vO(null):(e=>{const t=bO.create("div");return bO.insertAfter(t,e),vO(t,t)})(t)},CO=async e=>{e.dispatch("ScriptsLoaded"),(e=>{const t=Pt.trim(ec(e)),n=e.ui.registry.getAll().icons,o={...Kw.get("default").icons,...Kw.get(t).icons};pe(o,(t,o)=>{Ee(n,o)||e.ui.registry.addIcon(o,t)})})(e),(e=>{const t=xc(e);if(m(t)){const n=ox.get(t);e.theme=n(e,ox.urls[t])||{},w(e.theme.init)&&e.theme.init(e,ox.urls[t]||e.documentBaseUrl.replace(/\/$/,""))}else e.theme={}})(e),(e=>{const t=Ec(e),n=Yw.get(t);e.model=n(e,Yw.urls[t])})(e),(e=>{const t=[];V(Hc(e),n=>{((e,t,n)=>{const o=nx.get(n),r=nx.urls[n]||e.documentBaseUrl.replace(/\/$/,"");if(n=Pt.trim(n),o&&-1===Pt.inArray(t,n)){if(e.plugins[n])return;try{const s=o(e,r)||{};e.plugins[n]=s,w(s.init)&&(s.init(e,r),t.push(n))}catch(t){((e,t,n)=>{const o=pa.translate(["Failed to initialize plugin: {0}",t]);uf(e,"PluginLoadError",{message:o}),cx(o,n),ax(e,o)})(e,n,t)}}})(e,t,(e=>e.replace(/^\-/,""))(n))})})(e);const t=await(e=>{const t=e.getElement();return e.orgDisplay=t.style.display,m(xc(e))?(e=>{const t=e.theme.renderUI;return t?t():yO(e)})(e):w(xc(e))?(e=>{const t=e.getElement(),n=xc(e)(e,t);return n.editorContainer.nodeType&&(n.editorContainer.id=n.editorContainer.id||e.id+"_parent"),n.iframeContainer&&n.iframeContainer.nodeType&&(n.iframeContainer.id=n.iframeContainer.id||e.id+"_iframecontainer"),n.height=n.iframeHeight?n.iframeHeight:t.offsetHeight,n})(e):yO(e)})(e);((e,t)=>{const n={show:I.from(t.show).getOr(E),hide:I.from(t.hide).getOr(E),isEnabled:I.from(t.isEnabled).getOr(M),setEnabled:n=>{e.mode.isReadOnly()||I.from(t.setEnabled).each(e=>e(n))}};e.ui={...e.ui,...n}})(e,I.from(t.api).getOr({})),e.editorContainer=t.editorContainer,(e=>{e.contentCSS=e.contentCSS.concat((e=>ux(e,mc(e)))(e),(e=>ux(e,gc(e)))(e))})(e),e.inline?gO(e):((e,t)=>{((e,t)=>{const n=e.translate("Rich Text Area"),o=tn(yn(e.getElement()),"tabindex").bind(Ze),r=((e,t,n,o)=>{const r=bn("iframe");return o.each(e=>Qt(r,"tabindex",e)),Jt(r,n),Jt(r,{id:e+"_ifr",frameBorder:"0",allowTransparency:"true",title:t}),un(r,"tox-edit-area__iframe"),r})(e.id,n,Il(e),o).dom;r.onload=()=>{r.onload=null,e.dispatch("load")},e.contentAreaContainer=t.iframeContainer,e.iframeElement=r,e.iframeHTML=(e=>{let t=Fl(e)+"<html><head>";zl(e)!==e.documentBaseUrl&&(t+='<base href="'+e.documentBaseURI.getURI()+'" />'),t+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';const n=Ul(e),o=jl(e),r=e.translate(Yc(e));return Hl(e)&&(t+='<meta http-equiv="Content-Security-Policy" content="'+Hl(e)+'" />'),t+=`</head><body id="${n}" class="mce-content-body ${o}" data-id="${e.id}" aria-label="${r}"><br></body></html>`,t})(e),hO.add(t.iframeContainer,r)})(e,t),t.editorContainer&&(t.editorContainer.style.display=e.orgDisplay,e.hidden=hO.isHidden(t.editorContainer)),e.getElement().style.display="none",hO.setAttrib(e.id,"aria-hidden","true"),e.getElement().style.visibility=e.orgVisibility,(e=>{const t=e.iframeElement,n=()=>{e.contentDocument=t.contentDocument,gO(e)};if(wd(e)||Tt.browser.isFirefox()||Tt.browser.isSafari()&&Tt.os.isLinux()){const t=e.getDoc();t.open(),t.write(e.iframeHTML),t.close(),n()}else{const r=(o=yn(t),No(o,"load",pO,()=>{r.unbind(),n()}));t.srcdoc=e.iframeHTML}var o})(e)})(e,{editorContainer:t.editorContainer,iframeContainer:t.iframeContainer})},wO=la.DOM,xO=e=>"-"===e.charAt(0),SO=(e,t,n)=>I.from(t).filter(e=>Ge(e)&&!Kw.has(e)).map(t=>({url:`${e.editorManager.baseURL}/icons/${t}/icons${n}.js`,name:I.some(t)})),EO=(e,t)=>{const n=da.ScriptLoader,o=()=>{!e.removed&&(e=>{const t=xc(e);return!m(t)||C(ox.get(t))})(e)&&(e=>{const t=Ec(e);return C(Yw.get(t))})(e)&&CO(e)};((e,t)=>{const n=xc(e);if(m(n)&&!xO(n)&&!Ee(ox.urls,n)){const o=Sc(e),r=o?e.documentBaseURI.toAbsolute(o):`themes/${n}/theme${t}.js`;ox.load(n,r).catch(()=>{((e,t,n)=>{ix(e,"ThemeLoadError",lx("theme",t,n))})(e,r,n)})}})(e,t),((e,t)=>{const n=Ec(e);if("plugin"!==n&&!Ee(Yw.urls,n)){const o=_c(e),r=m(o)?e.documentBaseURI.toAbsolute(o):`models/${n}/model${t}.js`;Yw.load(n,r).catch(()=>{((e,t,n)=>{ix(e,"ModelLoadError",lx("model",t,n))})(e,r,n)})}})(e,t),((e,t)=>{const n=lc(t),o=cc(t);if(!pa.hasCode(n)&&"en"!==n){const r=Ge(o)?o:`${t.editorManager.baseURL}/langs/${n}.js`;e.add(r).catch(()=>{((e,t,n)=>{ix(e,"LanguageLoadError",lx("language",t,n))})(t,r,n)})}})(n,e),((e,t,n)=>{const o=SO(t,"default",n),r=(e=>I.from(tc(e)).filter(Ge).map(e=>({url:e,name:I.none()})))(t).orThunk(()=>SO(t,ec(t),""));V((e=>{const t=[],n=e=>{t.push(e)};for(let t=0;t<e.length;t++)e[t].each(n);return t})([o,r]),n=>{e.add(n.url).catch(()=>{((e,t,n)=>{ix(e,"IconsLoadError",lx("icons",t,n))})(t,n.url,n.name.getOrUndefined())})})})(n,e,t),((e,t)=>{const n=(t,n)=>{nx.load(t,n).catch(()=>{((e,t,n)=>{ix(e,"PluginLoadError",lx("plugin",t,n))})(e,n,t)})};pe($c(e),(t,o)=>{n(o,t),e.options.set("plugins",Hc(e).concat(o))}),V(Hc(e),e=>{!(e=Pt.trim(e))||nx.urls[e]||xO(e)||n(e,`plugins/${e}/plugin${t}.js`)})})(e,t),n.loadQueue().then(o,o)},_O=St().deviceType,kO=_O.isPhone(),NO=_O.isTablet(),RO=e=>{if(y(e))return[];{const t=p(e)?e:e.split(/[ ,]/),n=q(t,We);return Y(n,Ge)}},AO=(e,t)=>{const n=(t=>{const n={},o={};return ye(t,(t,n)=>H(e,n),ve(n),ve(o)),{t:n,f:o}})(t);return o=n.t,r=n.f,{sections:N(o),options:N(r)};var o,r},TO=(e,t)=>Ee(e.sections(),t),OO=(e,t)=>({table_grid:!1,object_resizing:!1,resize:!1,toolbar_mode:Se(e,"toolbar_mode").getOr("scrolling"),toolbar_sticky:!1,...t?{menubar:!1}:{}}),BO=(e,t)=>{var n;const o=null!==(n=t.external_plugins)&&void 0!==n?n:{};return e&&e.external_plugins?Pt.extend({},e.external_plugins,o):o},PO=(e,t,n,o,r)=>{var s;const a=e?{mobile:OO(null!==(s=r.mobile)&&void 0!==s?s:{},t)}:{},i=AO(["mobile"],Ek(a,r)),l=Pt.extend(n,o,i.options(),((e,t)=>e&&TO(t,"mobile"))(e,i)?((e,t,n={})=>{const o=e.sections(),r=Se(o,t).getOr({});return Pt.extend({},n,r)})(i,"mobile"):{},{external_plugins:BO(o,i.options())});return((e,t,n,o)=>{const r=RO(n.forced_plugins),s=RO(o.plugins),a=((e,t)=>TO(e,t)?e.sections()[t]:{})(t,"mobile"),i=((e,t,n,o)=>e&&TO(t,"mobile")?o:n)(e,t,s,a.plugins?RO(a.plugins):s),l=((e,t)=>[...RO(e),...RO(t)])(r,i);return Pt.extend(o,{forced_plugins:r,plugins:l})})(e,i,o,l)},DO=e=>{(e=>{const t=t=>()=>{V("left,center,right,justify".split(","),n=>{t!==n&&e.formatter.remove("align"+n)}),"none"!==t&&(t=>{e.formatter.toggle(t,void 0),e.nodeChanged()})("align"+t)};e.editorCommands.addCommands({JustifyLeft:t("left"),JustifyCenter:t("center"),JustifyRight:t("right"),JustifyFull:t("justify"),JustifyNone:t("none")})})(e),(e=>{const t=t=>()=>{const n=e.selection,o=n.isCollapsed()?[e.dom.getParent(n.getNode(),e.dom.isBlock)]:n.getSelectedBlocks();return $(o,n=>C(e.formatter.matchNode(n,t)))};e.editorCommands.addCommands({JustifyLeft:t("alignleft"),JustifyCenter:t("aligncenter"),JustifyRight:t("alignright"),JustifyFull:t("alignjustify")},"state")})(e)},LO=(e,t)=>{const n=e.selection,o=e.dom;return/^ | $/.test(t)?((e,t,n,o)=>{const r=yn(e.getRoot());return n=ah(r,Zi.fromRangeStart(t),o)?n.replace(/^ /,"&nbsp;"):n.replace(/^&nbsp;/," "),ih(r,Zi.fromRangeEnd(t),o)?n.replace(/(&nbsp;| )(<br( \/)>)?$/,"&nbsp;"):n.replace(/&nbsp;(<br( \/)?>)?$/," ")})(o,n.getRng(),t,e.schema):t},MO=(e,t)=>{if(e.selection.isEditable()){const{content:n,details:o}=(e=>{if("string"!=typeof e){const t=Pt.extend({paste:e.paste,data:{paste:e.paste}},e);return{content:e.content,details:t}}return{content:e,details:{}}})(t);WC(e,{...o,content:LO(e,n),format:"html",set:!1,selection:!0}).each(t=>{const n=((e,t,n)=>xw(e).editor.insertContent(t,n))(e,t.content,o);KC(e,n,t),e.addVisual()})}},IO={"font-size":"size","font-family":"face"},FO=Xt("font"),zO=e=>(t,n)=>I.from(n).map(yn).filter(Wt).bind(n=>((e,t,n)=>zb(yn(n),t=>(t=>mo(t,e).orThunk(()=>FO(t)?Se(IO,e).bind(e=>tn(t,e)):I.none()))(t),e=>En(yn(t),e)))(e,t,n.dom).or(((e,t)=>I.from(la.DOM.getStyle(t,e,!0)))(e,n.dom))).getOr(""),UO=zO("font-size"),jO=_(e=>e.replace(/[\'\"\\]/g,"").replace(/,\s+/g,","),zO("font-family")),HO=e=>Uu(e.getBody()).bind(e=>{const t=e.container();return I.from(lr(t)?t.parentNode:t)}),$O=(e,t)=>((e,t)=>(e=>I.from(e.selection.getRng()).bind(t=>{const n=e.getBody();return t.startContainer===n&&0===t.startOffset?I.none():I.from(e.selection.getStart(!0))}))(e).orThunk(T(HO,e)).map(yn).filter(Wt).bind(t))(e,k(I.some,t)),qO=(e,t)=>{if(/^[0-9.]+$/.test(t)){const n=parseInt(t,10);if(n>=1&&n<=7){const o=(e=>Pt.explode(e.options.get("font_size_style_values")))(e),r=(e=>Pt.explode(e.options.get("font_size_classes")))(e);return r.length>0?r[n-1]||t:o[n-1]||t}return t}return t},VO=e=>{const t=e.split(/\s*,\s*/);return q(t,e=>-1===e.indexOf(" ")||$e(e,'"')||$e(e,"'")?e:`'${e}'`).join(",")},WO=(e,t)=>{const n=e.dom,o=e.selection.getRng(),r=t?e.selection.getStart():e.selection.getEnd(),s=t?o.startContainer:o.endContainer,a=HN(n,s);if(!a||!a.isContentEditable)return;const i=t?po:ho,l=ql(e);((e,t,n,o)=>{const r=e.dom,s=e=>r.isBlock(e)&&e.parentElement===n,a=s(t)?t:r.getParent(o,s,n);return I.from(a).map(yn)})(e,r,a,s).each(t=>{const n=WN(e,s,t.dom,a,!1,l);i(t,yn(n)),e.selection.setCursorLocation(n,0),e.dispatch("NewBlock",{newBlock:n}),LN(e,"insertParagraph")})},KO=e=>{DO(e),(e=>{e.editorCommands.addCommands({"Cut,Copy,Paste":t=>{const n=e.getDoc();let o;try{n.execCommand(t)}catch(e){o=!0}if("paste"!==t||n.queryCommandEnabled(t)||(o=!0),o||!n.queryCommandSupported(t)){let t=e.translate("Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead.");(Tt.os.isMacOS()||Tt.os.isiOS())&&(t=t.replace(/Ctrl\+/g,"\u2318+")),e.notificationManager.open({text:t,type:"error"})}}})})(e),(e=>{e.editorCommands.addCommands({mceAddUndoLevel:()=>{e.undoManager.add()},mceEndUndoLevel:()=>{e.undoManager.add()},Undo:()=>{e.undoManager.undo()},Redo:()=>{e.undoManager.redo()}})})(e),(e=>{e.editorCommands.addCommands({mceSelectNodeDepth:(t,n,o)=>{let r=0;e.dom.getParent(e.selection.getNode(),t=>!Jo(t)||r++!==o||(e.selection.select(t),!1),e.getBody())},mceSelectNode:(t,n,o)=>{e.selection.select(o)},selectAll:()=>{const t=e.dom.getParent(e.selection.getStart(),hr);if(t){const n=e.dom.createRng();n.selectNodeContents(t),e.selection.setRng(n)}}})})(e),(e=>{e.editorCommands.addCommands({mceCleanup:()=>{const t=e.selection.getBookmark();e.setContent(e.getContent()),e.selection.moveToBookmark(t)},insertImage:(t,n,o)=>{MO(e,e.dom.createHTML("img",{src:o}))},insertHorizontalRule:()=>{e.execCommand("mceInsertContent",!1,"<hr>")},insertText:(t,n,o)=>{MO(e,e.dom.encode(o))},insertHTML:(t,n,o)=>{MO(e,o)},mceInsertContent:(t,n,o)=>{MO(e,o)},mceSetContent:(t,n,o)=>{e.setContent(o)},mceReplaceContent:(t,n,o)=>{e.execCommand("mceInsertContent",!1,o.replace(/\{\$selection\}/g,e.selection.getContent({format:"text"})))},mceNewDocument:()=>{e.setContent(sd(e))}})})(e),(e=>{const t=(t,n,o)=>{const r=m(o)?{href:o}:o,s=e.dom.getParent(e.selection.getNode(),"a");f(r)&&m(r.href)&&(r.href=r.href.replace(/&amp;/g,"&").replace(/ /g,"%20"),s&&r.href||e.formatter.remove("link"),r.href&&e.formatter.apply("link",r,s))};e.editorCommands.addCommands({unlink:()=>{if(e.selection.isEditable()){if(e.selection.isCollapsed()){const t=e.dom.getParent(e.selection.getStart(),"a");return void(t&&e.dom.remove(t,!0))}e.formatter.remove("link")}},mceInsertLink:t,createLink:t})})(e),(e=>{e.editorCommands.addCommands({Indent:()=>{(e=>{QE(e,"indent")})(e)},Outdent:()=>{JE(e)}}),e.editorCommands.addCommands({Outdent:()=>GE(e)},"state")})(e),(e=>{e.editorCommands.addCommands({InsertNewBlockBefore:()=>{(e=>{WO(e,!0)})(e)},InsertNewBlockAfter:()=>{(e=>{WO(e,!1)})(e)}})})(e),(e=>{e.editorCommands.addCommands({insertParagraph:()=>{_R(oR,e)},mceInsertNewLine:(t,n,o)=>{kR(e,o)},InsertLineBreak:(t,n,o)=>{_R(uR,e)}})})(e),(e=>{(e=>{const t=(t,n)=>{e.formatter.toggle(t,n),e.nodeChanged()};e.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":e=>{t(e)},"ForeColor,HiliteColor":(e,n,o)=>{t(e,{value:o})},BackColor:(e,n,o)=>{t("hilitecolor",{value:o})},FontName:(t,n,o)=>{((e,t)=>{const n=qO(e,t);e.formatter.toggle("fontname",{value:VO(n)}),e.nodeChanged()})(e,o)},FontSize:(t,n,o)=>{((e,t)=>{e.formatter.toggle("fontsize",{value:qO(e,t)}),e.nodeChanged()})(e,o)},LineHeight:(t,n,o)=>{((e,t)=>{e.formatter.toggle("lineheight",{value:String(t)}),e.nodeChanged()})(e,o)},Lang:(e,n,o)=>{var r;t(e,{value:o.code,customValue:null!==(r=o.customCode)&&void 0!==r?r:null})},RemoveFormat:t=>{e.formatter.remove(t)},mceBlockQuote:()=>{t("blockquote")},FormatBlock:(e,n,o)=>{t(m(o)?o:"p")},mceToggleFormat:(e,n,o)=>{t(o)}})})(e),(e=>{const t=t=>e.formatter.match(t);e.editorCommands.addCommands({"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":e=>t(e),mceBlockQuote:()=>t("blockquote")},"state"),e.editorCommands.addQueryValueHandler("FontName",()=>(e=>$O(e,t=>jO(e.getBody(),t.dom)).getOr(""))(e)),e.editorCommands.addQueryValueHandler("FontSize",()=>(e=>$O(e,t=>UO(e.getBody(),t.dom)).getOr(""))(e)),e.editorCommands.addQueryValueHandler("LineHeight",()=>(e=>$O(e,t=>{const n=yn(e.getBody()),o=zb(t,e=>mo(e,"line-height"),T(En,n));return o.getOrThunk(()=>{const e=parseFloat(co(t,"line-height")),n=parseFloat(co(t,"font-size"));return String(e/n)})}).getOr(""))(e))})(e)})(e),(e=>{e.editorCommands.addCommands({mceRemoveNode:(t,n,o)=>{const r=null!=o?o:e.selection.getNode();if(r!==e.getBody()){const t=e.selection.getBookmark();e.dom.remove(r,!0),e.selection.moveToBookmark(t)}},mcePrint:()=>{e.getWin().print()},mceFocus:(t,n,o)=>{((e,t)=>{e.removed||(t?jg(e):(e=>{const t=e.selection,n=e.getBody();let o=t.getRng();e.quirks.refreshContentEditable(),C(e.bookmark)&&!zg(e)&&Ng(e).each(t=>{e.selection.setRng(t),o=t});const r=((e,t)=>e.dom.getParent(t,t=>"true"===e.dom.getContentEditable(t)))(e,t.getNode());if(r&&e.dom.isChildOf(r,n))return Fg(r),Ig(e,o),void jg(e);e.inline||(Tt.browser.isOpera()||Fg(n),e.getWin().focus()),(Tt.browser.isFirefox()||e.inline)&&(Fg(n),Ig(e,o)),jg(e)})(e))})(e,!0===o)},mceToggleVisualAid:()=>{e.hasVisual=!e.hasVisual,e.addVisual()}})})(e)},YO=["toggleview"],GO=e=>H(YO,e.toLowerCase());class XO{constructor(e){this.commands={state:{},exec:{},value:{}},this.editor=e}execCommand(e,t=!1,n,o){const r=this.editor,s=e.toLowerCase(),a=null==o?void 0:o.skip_focus;if(r.removed)return!1;if("mcefocus"!==s&&(/^(mceAddUndoLevel|mceEndUndoLevel)$/i.test(s)||a?(e=>{Ng(e).each(t=>e.selection.setRng(t))})(r):r.focus()),r.dispatch("BeforeExecCommand",{command:e,ui:t,value:n}).isDefaultPrevented())return!1;const i=this.commands.exec[s];return!!w(i)&&(i(s,t,n),r.dispatch("ExecCommand",{command:e,ui:t,value:n}),!0)}queryCommandState(e){if(!GO(e)&&this.editor.quirks.isHidden()||this.editor.removed)return!1;const t=e.toLowerCase(),n=this.commands.state[t];return!!w(n)&&n(t)}queryCommandValue(e){if(!GO(e)&&this.editor.quirks.isHidden()||this.editor.removed)return"";const t=e.toLowerCase(),n=this.commands.value[t];return w(n)?n(t):""}addCommands(e,t="exec"){const n=this.commands;pe(e,(e,o)=>{V(o.toLowerCase().split(","),o=>{n[t][o]=e})})}addCommand(e,t,n){const o=e.toLowerCase();this.commands.exec[o]=(e,o,r)=>t.call(null!=n?n:this.editor,o,r)}queryCommandSupported(e){const t=e.toLowerCase();return!!this.commands.exec[t]}addQueryStateHandler(e,t,n){this.commands.state[e.toLowerCase()]=()=>t.call(null!=n?n:this.editor)}addQueryValueHandler(e,t,n){this.commands.value[e.toLowerCase()]=()=>t.call(null!=n?n:this.editor)}}const ZO="data-mce-contenteditable",QO=(e,t,n)=>{try{e.getDoc().execCommand(t,!1,String(n))}catch(e){}},JO=(e,t)=>{e.dom.contentEditable=t?"true":"false"},eB=e=>e.readonly,tB=e=>{e.parser.addAttributeFilter("contenteditable",t=>{eB(e)&&V(t,e=>{e.attr(ZO,e.attr("contenteditable")),e.attr("contenteditable","false")})}),e.serializer.addAttributeFilter(ZO,t=>{eB(e)&&V(t,e=>{e.attr("contenteditable",e.attr(ZO))})}),e.serializer.addTempAttr(ZO)},nB=["copy"],oB=Pt.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 rB{static isNative(e){return!!oB[e.toLowerCase()]}constructor(e){this.bindings={},this.settings=e||{},this.scope=this.settings.scope||this,this.toggleEvent=this.settings.toggleEvent||L}fire(e,t){return this.dispatch(e,t)}dispatch(e,t){const n=e.toLowerCase(),o=Ws(n,null!=t?t:{},this.scope);this.settings.beforeFire&&this.settings.beforeFire(o);const r=this.bindings[n];if(r)for(let e=0,t=r.length;e<t;e++){const t=r[e];if(!t.removed){if(t.once&&this.off(n,t.func),o.isImmediatePropagationStopped())return o;if(!1===t.func.call(this.scope,o))return o.preventDefault(),o}}return o}on(e,t,n,o){if(!1===t&&(t=L),t){const r={func:t,removed:!1};o&&Pt.extend(r,o);const s=e.toLowerCase().split(" ");let a=s.length;for(;a--;){const e=s[a];let t=this.bindings[e];t||(t=[],this.toggleEvent(e,!0)),t=n?[r,...t]:[...t,r],this.bindings[e]=t}}return this}off(e,t){if(e){const n=e.toLowerCase().split(" ");let o=n.length;for(;o--;){const r=n[o];let s=this.bindings[r];if(!r)return pe(this.bindings,(e,t)=>{this.toggleEvent(t,!1),delete this.bindings[t]}),this;if(s){if(t){const e=K(s,e=>e.func===t);s=e.fail,this.bindings[r]=s,V(e.pass,e=>{e.removed=!0})}else s.length=0;s.length||(this.toggleEvent(e,!1),delete this.bindings[r])}}}else pe(this.bindings,(e,t)=>{this.toggleEvent(t,!1)}),this.bindings={};return this}once(e,t,n){return this.on(e,t,n,{once:!0})}has(e){e=e.toLowerCase();const t=this.bindings[e];return!(!t||0===t.length)}}const sB=e=>(e._eventDispatcher||(e._eventDispatcher=new rB({scope:e,toggleEvent:(t,n)=>{rB.isNative(t)&&e.toggleNativeEvent&&e.toggleNativeEvent(t,n)}})),e._eventDispatcher),aB={fire(e,t,n){return this.dispatch(e,t,n)},dispatch(e,t,n){const o=this;if(o.removed&&"remove"!==e&&"detach"!==e)return Ws(e.toLowerCase(),null!=t?t:{},o);const r=sB(o).dispatch(e,t);if(!1!==n&&o.parent){let t=o.parent();for(;t&&!r.isPropagationStopped();)t.dispatch(e,r,!1),t=t.parent?t.parent():void 0}return r},on(e,t,n){return sB(this).on(e,t,n)},off(e,t){return sB(this).off(e,t)},once(e,t){return sB(this).once(e,t)},hasEventListeners(e){return sB(this).has(e)}},iB=la.DOM;let lB;const cB=(e,t)=>{if("selectionchange"===t)return e.getDoc();if(!e.inline&&/^(?:mouse|touch|click|contextmenu|drop|dragover|dragend)/.test(t))return e.getDoc().documentElement;const n=Cc(e);return n?(e.eventRoot||(e.eventRoot=iB.select(n)[0]),e.eventRoot):e.getBody()},dB=(e,t,n)=>{(e=>!e.hidden&&!eB(e))(e)?e.dispatch(t,n):eB(e)&&((e,t)=>{if((e=>"click"===e.type)(t)&&!vf.metaKeyPressed(t)){const n=yn(t.target);((e,t)=>no(t,"a",t=>En(t,yn(e.getBody()))).bind(e=>tn(e,"href")))(e,n).each(n=>{if(t.preventDefault(),/^#/.test(n)){const t=e.dom.select(`${n},[name="${je(n,"#")}"]`);t.length&&e.selection.scrollIntoView(t[0],!0)}else window.open(n,"_blank","rel=noopener noreferrer,menubar=yes,toolbar=yes,location=yes,status=yes,resizable=yes,scrollbars=yes")})}else(e=>H(nB,e.type))(t)&&e.dispatch(t.type,t)})(e,n)},uB=(e,t)=>{if(e.delegates||(e.delegates={}),e.delegates[t]||e.removed)return;const n=cB(e,t);if(Cc(e)){if(lB||(lB={},e.editorManager.on("removeEditor",()=>{e.editorManager.activeEditor||lB&&(pe(lB,(t,n)=>{e.dom.unbind(cB(e,n))}),lB=null)})),lB[t])return;const o=n=>{const o=n.target,r=e.editorManager.get();let s=r.length;for(;s--;){const e=r[s].getBody();(e===o||iB.isChildOf(o,e))&&dB(r[s],t,n)}};lB[t]=o,iB.bind(n,t,o)}else{const o=n=>{dB(e,t,n)};iB.bind(n,t,o),e.delegates[t]=o}},mB={...aB,bindPendingEventDelegates(){const e=this;Pt.each(e._pendingNativeEvents,t=>{uB(e,t)})},toggleNativeEvent(e,t){const n=this;"focus"!==e&&"blur"!==e&&(n.removed||(t?n.initialized?uB(n,e):n._pendingNativeEvents?n._pendingNativeEvents.push(e):n._pendingNativeEvents=[e]:n.initialized&&n.delegates&&(n.dom.unbind(cB(n,e),e,n.delegates[e]),delete n.delegates[e])))},unbindAllNativeEvents(){const e=this,t=e.getBody(),n=e.dom;e.delegates&&(pe(e.delegates,(t,n)=>{e.dom.unbind(cB(e,n),n,t)}),delete e.delegates),!e.inline&&t&&n&&(t.onload=null,n.unbind(e.getWin()),n.unbind(e.getDoc())),n&&(n.unbind(t),n.unbind(e.getContainer()))}},fB=e=>m(e)?{value:e.split(/[ ,]/),valid:!0}:S(e,m)?{value:e,valid:!0}:{valid:!1,message:"The value must be a string[] or a comma/space separated string."},gB=(e,t)=>e+(Xe(t.message)?"":`. ${t.message}`),pB=e=>e.valid,hB=(e,t,n="")=>{const o=t(e);return b(o)?o?{value:e,valid:!0}:{valid:!1,message:n}:o},bB=["design","readonly"],vB=(e,t,n,o)=>{const r=n[t.get()],s=n[o];try{s.activate()}catch(e){return void console.error(`problem while activating editor mode ${o}:`,e)}r.deactivate(),r.editorReadOnly!==s.editorReadOnly&&((e,t)=>{const n=yn(e.getBody());((e,t,n)=>{gn(e,t)&&!n?fn(e,t):n&&un(e,t)})(n,"mce-content-readonly",t),t?(e.selection.controlSelection.hideResizeRect(),e._selectionOverrides.hideFakeCaret(),(e=>{I.from(e.selection.getNode()).each(e=>{e.removeAttribute("data-mce-selected")})})(e),e.readonly=!0,JO(n,!1),V(zo(n,'*[contenteditable="true"]'),e=>{Qt(e,ZO,"true"),JO(e,!1)})):(e.readonly=!1,e.hasEditableRoot()&&JO(n,!0),V(zo(n,`*[${ZO}="true"]`),e=>{on(e,ZO),JO(e,!0)}),QO(e,"StyleWithCSS",!1),QO(e,"enableInlineTableEditing",!1),QO(e,"enableObjectResizing",!1),Ug(e)&&e.focus(),(e=>{e.selection.setRng(e.selection.getRng())})(e),e.nodeChanged())})(e,s.editorReadOnly),t.set(o),((e,t)=>{e.dispatch("SwitchMode",{mode:t})})(e,o)},yB=Pt.each,CB=Pt.explode,wB={f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},xB=Pt.makeMap("alt,ctrl,shift,meta,access"),SB=e=>{const t={},n=Tt.os.isMacOS()||Tt.os.isiOS();yB(CB(e.toLowerCase(),"+"),e=>{(e=>e in xB)(e)?t[e]=!0:/^[0-9]{2,}$/.test(e)?t.keyCode=parseInt(e,10):(t.charCode=e.charCodeAt(0),t.keyCode=wB[e]||e.toUpperCase().charCodeAt(0))});const o=[t.keyCode];let r;for(r in xB)t[r]?o.push(r):t[r]=!1;return t.id=o.join(","),t.access&&(t.alt=!0,n?t.ctrl=!0:t.shift=!0),t.meta&&(n?t.meta=!0:(t.ctrl=!0,t.meta=!1)),t};class EB{constructor(e){this.shortcuts={},this.pendingPatterns=[],this.editor=e;const t=this;e.on("keyup keypress keydown",e=>{!t.hasModifier(e)&&!t.isFunctionKey(e)||e.isDefaultPrevented()||(yB(t.shortcuts,n=>{t.matchShortcut(e,n)&&(t.pendingPatterns=n.subpatterns.slice(0),"keydown"===e.type&&t.executeShortcutAction(n))}),t.matchShortcut(e,t.pendingPatterns[0])&&(1===t.pendingPatterns.length&&"keydown"===e.type&&t.executeShortcutAction(t.pendingPatterns[0]),t.pendingPatterns.shift()))})}add(e,t,n,o){const r=this,s=r.normalizeCommandFunc(n);return yB(CB(Pt.trim(e)),e=>{const n=r.createShortcut(e,t,s,o);r.shortcuts[n.id]=n}),!0}remove(e){const t=this.createShortcut(e);return!!this.shortcuts[t.id]&&(delete this.shortcuts[t.id],!0)}normalizeCommandFunc(e){const t=this,n=e;return"string"==typeof n?()=>{t.editor.execCommand(n,!1,null)}:Pt.isArray(n)?()=>{t.editor.execCommand(n[0],n[1],n[2])}:n}createShortcut(e,t,n,o){const r=Pt.map(CB(e,">"),SB);return r[r.length-1]=Pt.extend(r[r.length-1],{func:n,scope:o||this.editor}),Pt.extend(r[0],{desc:this.editor.translate(t),subpatterns:r.slice(1)})}hasModifier(e){return e.altKey||e.ctrlKey||e.metaKey}isFunctionKey(e){return"keydown"===e.type&&e.keyCode>=112&&e.keyCode<=123}matchShortcut(e,t){return!!t&&t.ctrl===e.ctrlKey&&t.meta===e.metaKey&&t.alt===e.altKey&&t.shift===e.shiftKey&&!!(e.keyCode===t.keyCode||e.charCode&&e.charCode===t.charCode)&&(e.preventDefault(),!0)}executeShortcutAction(e){return e.func?e.func.call(e.scope):null}}const _B=()=>{const e=(()=>{const e={},t={},n={},o={},r={},s={},a={},i={},l=(e,t)=>(n,o)=>{e[n.toLowerCase()]={...o,type:t}};return{addButton:l(e,"button"),addGroupToolbarButton:l(e,"grouptoolbarbutton"),addToggleButton:l(e,"togglebutton"),addMenuButton:l(e,"menubutton"),addSplitButton:l(e,"splitbutton"),addMenuItem:l(t,"menuitem"),addNestedMenuItem:l(t,"nestedmenuitem"),addToggleMenuItem:l(t,"togglemenuitem"),addAutocompleter:l(n,"autocompleter"),addContextMenu:l(r,"contextmenu"),addContextToolbar:l(s,"contexttoolbar"),addContextForm:l(s,"contextform"),addSidebar:l(a,"sidebar"),addView:l(i,"views"),addIcon:(e,t)=>o[e.toLowerCase()]=t,getAll:()=>({buttons:e,menuItems:t,icons:o,popups:n,contextMenus:r,contextToolbars:s,sidebars:a,views:i})}})();return{addAutocompleter:e.addAutocompleter,addButton:e.addButton,addContextForm:e.addContextForm,addContextMenu:e.addContextMenu,addContextToolbar:e.addContextToolbar,addIcon:e.addIcon,addMenuButton:e.addMenuButton,addMenuItem:e.addMenuItem,addNestedMenuItem:e.addNestedMenuItem,addSidebar:e.addSidebar,addSplitButton:e.addSplitButton,addToggleButton:e.addToggleButton,addGroupToolbarButton:e.addGroupToolbarButton,addToggleMenuItem:e.addToggleMenuItem,addView:e.addView,getAll:e.getAll}},kB=la.DOM,NB=Pt.extend,RB=Pt.each;class AB{constructor(e,t,n){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=n,this.documentBaseUrl=n.documentBaseURL,NB(this,mB);const o=this;this.id=e,this.hidden=!1;const r=((e,t)=>PO(kO||NO,kO,t,e,t))(n.defaultOptions,t);this.options=((e,t)=>{const n={},o={},r=(e,t,n)=>{const r=hB(t,n);return pB(r)?(o[e]=r.value,!0):(console.warn(gB(`Invalid value passed for the ${e} option`,r)),!1)},s=e=>Ee(n,e);return{register:(e,s)=>{const a=(e=>m(e.processor))(s)?(e=>{const t=(()=>{switch(e){case"array":return p;case"boolean":return b;case"function":return w;case"number":return x;case"object":return f;case"string":return m;case"string[]":return fB;case"object[]":return e=>S(e,f);case"regexp":return e=>u(e,RegExp);default:return M}})();return n=>hB(n,t,`The value must be a ${e}.`)})(s.processor):s.processor,i=((e,t,n)=>{if(!v(t)){const o=hB(t,n);if(pB(o))return o.value;console.error(gB(`Invalid default value passed for the "${e}" option`,o))}})(e,s.default,a);n[e]={...s,default:i,processor:a},Se(o,e).orThunk(()=>Se(t,e)).each(t=>r(e,t,a))},isRegistered:s,get:e=>Se(o,e).orThunk(()=>Se(n,e).map(e=>e.default)).getOrUndefined(),set:(e,t)=>{if(s(e)){const o=n[e];return o.immutable?(console.error(`"${e}" is an immutable option and cannot be updated`),!1):r(e,t,o.processor)}return console.warn(`"${e}" is not a registered option. Ensure the option has been registered before setting a value.`),!1},unset:e=>{const t=s(e);return t&&delete o[e],t},isSet:e=>Ee(o,e)}})(0,r),(e=>{const t=e.options.register;t("id",{processor:"string",default:e.id}),t("selector",{processor:"string"}),t("target",{processor:"object"}),t("suffix",{processor:"string"}),t("cache_suffix",{processor:"string"}),t("base_url",{processor:"string"}),t("referrer_policy",{processor:"string",default:""}),t("language_load",{processor:"boolean",default:!0}),t("inline",{processor:"boolean",default:!1}),t("iframe_attrs",{processor:"object",default:{}}),t("doctype",{processor:"string",default:"<!DOCTYPE html>"}),t("document_base_url",{processor:"string",default:e.documentBaseUrl}),t("body_id",{processor:Ml(e,"hugerte"),default:"hugerte"}),t("body_class",{processor:Ml(e),default:""}),t("content_security_policy",{processor:"string",default:""}),t("br_in_pre",{processor:"boolean",default:!0}),t("forced_root_block",{processor:e=>{const t=m(e)&&Ge(e);return t?{value:e,valid:t}:{valid:!1,message:"Must be a non-empty string."}},default:"p"}),t("forced_root_block_attrs",{processor:"object",default:{}}),t("newline_behavior",{processor:e=>{const t=H(["block","linebreak","invert","default"],e);return t?{value:e,valid:t}:{valid:!1,message:"Must be one of: block, linebreak, invert or default."}},default:"default"}),t("br_newline_selector",{processor:"string",default:".mce-toc h2,figcaption,caption"}),t("no_newline_selector",{processor:"string",default:""}),t("keep_styles",{processor:"boolean",default:!0}),t("end_container_on_empty_block",{processor:e=>b(e)||m(e)?{valid:!0,value:e}:{valid:!1,message:"Must be boolean or a string"},default:"blockquote"}),t("font_size_style_values",{processor:"string",default:"xx-small,x-small,small,medium,large,x-large,xx-large"}),t("font_size_legacy_values",{processor:"string",default:"xx-small,small,medium,large,x-large,xx-large,300%"}),t("font_size_classes",{processor:"string",default:""}),t("automatic_uploads",{processor:"boolean",default:!0}),t("images_reuse_filename",{processor:"boolean",default:!1}),t("images_replace_blob_uris",{processor:"boolean",default:!0}),t("icons",{processor:"string",default:""}),t("icons_url",{processor:"string",default:""}),t("images_upload_url",{processor:"string",default:""}),t("images_upload_base_path",{processor:"string",default:""}),t("images_upload_credentials",{processor:"boolean",default:!1}),t("images_upload_handler",{processor:"function"}),t("language",{processor:"string",default:"en"}),t("language_url",{processor:"string",default:""}),t("entity_encoding",{processor:"string",default:"named"}),t("indent",{processor:"boolean",default:!0}),t("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"}),t("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"}),t("indent_use_margin",{processor:"boolean",default:!1}),t("indentation",{processor:"string",default:"40px"}),t("content_css",{processor:e=>{const t=!1===e||m(e)||S(e,m);return t?m(e)?{value:q(e.split(","),We),valid:t}:p(e)?{value:e,valid:t}:!1===e?{value:[],valid:t}:{value:e,valid:t}:{valid:!1,message:"Must be false, a string or an array of strings."}},default:Bc(e)?[]:["default"]}),t("content_style",{processor:"string"}),t("content_css_cors",{processor:"boolean",default:!1}),t("font_css",{processor:e=>{const t=m(e)||S(e,m);return t?{value:p(e)?e:q(e.split(","),We),valid:t}:{valid:!1,message:"Must be a string or an array of strings."}},default:[]}),t("inline_boundaries",{processor:"boolean",default:!0}),t("inline_boundaries_selector",{processor:"string",default:"a[href],code,sub,sup,span.mce-annotation"}),t("object_resizing",{processor:e=>{const t=b(e)||m(e);return t?!1===e||Tl.isiPhone()||Tl.isiPad()?{value:"",valid:t}:{value:!0===e?"table,img,figure.image,div,video,iframe":e,valid:t}:{valid:!1,message:"Must be boolean or a string"}},default:!Ol}),t("resize_img_proportional",{processor:"boolean",default:!0}),t("event_root",{processor:"string"}),t("service_message",{processor:"string"}),t("theme",{processor:e=>!1===e||m(e)||w(e),default:"silver"}),t("theme_url",{processor:"string"}),t("formats",{processor:"object"}),t("format_empty_lines",{processor:"boolean",default:!1}),t("format_noneditable_selector",{processor:"string",default:""}),t("preview_styles",{processor:e=>{const t=!1===e||m(e);return t?{value:!1===e?"":e,valid:t}:{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"}),t("custom_ui_selector",{processor:"string",default:""}),t("hidden_input",{processor:"boolean",default:!0}),t("submit_patch",{processor:"boolean",default:!0}),t("encoding",{processor:"string"}),t("add_form_submit_trigger",{processor:"boolean",default:!0}),t("add_unload_trigger",{processor:"boolean",default:!0}),t("custom_undo_redo_levels",{processor:"number",default:0}),t("disable_nodechange",{processor:"boolean",default:!1}),t("readonly",{processor:"boolean",default:!1}),t("editable_root",{processor:"boolean",default:!0}),t("plugins",{processor:"string[]",default:[]}),t("external_plugins",{processor:"object"}),t("forced_plugins",{processor:"string[]"}),t("model",{processor:"string",default:e.hasPlugin("rtc")?"plugin":"dom"}),t("model_url",{processor:"string"}),t("block_unsupported_drop",{processor:"boolean",default:!0}),t("visual",{processor:"boolean",default:!0}),t("visual_table_class",{processor:"string",default:"mce-item-table"}),t("visual_anchor_class",{processor:"string",default:"mce-item-anchor"}),t("iframe_aria_text",{processor:"string",default:"Rich Text Area. Press ALT-0 for help."}),t("setup",{processor:"function"}),t("init_instance_callback",{processor:"function"}),t("url_converter",{processor:"function",default:e.convertURL}),t("url_converter_scope",{processor:"object",default:e}),t("urlconverter_callback",{processor:"function"}),t("allow_conditional_comments",{processor:"boolean",default:!1}),t("allow_html_data_urls",{processor:"boolean",default:!1}),t("allow_svg_data_urls",{processor:"boolean"}),t("allow_html_in_named_anchor",{processor:"boolean",default:!1}),t("allow_script_urls",{processor:"boolean",default:!1}),t("allow_unsafe_link_target",{processor:"boolean",default:!1}),t("convert_fonts_to_spans",{processor:"boolean",default:!0,deprecated:!0}),t("fix_list_elements",{processor:"boolean",default:!1}),t("preserve_cdata",{processor:"boolean",default:!1}),t("remove_trailing_brs",{processor:"boolean",default:!0}),t("pad_empty_with_br",{processor:"boolean",default:!1}),t("inline_styles",{processor:"boolean",default:!0,deprecated:!0}),t("element_format",{processor:"string",default:"html"}),t("entities",{processor:"string"}),t("schema",{processor:"string",default:"html5"}),t("convert_urls",{processor:"boolean",default:!0}),t("relative_urls",{processor:"boolean",default:!0}),t("remove_script_host",{processor:"boolean",default:!0}),t("custom_elements",{processor:Ll}),t("extended_valid_elements",{processor:"string"}),t("invalid_elements",{processor:"string"}),t("invalid_styles",{processor:Ll}),t("valid_children",{processor:"string"}),t("valid_classes",{processor:Ll}),t("valid_elements",{processor:"string"}),t("valid_styles",{processor:Ll}),t("verify_html",{processor:"boolean",default:!0}),t("auto_focus",{processor:e=>m(e)||!0===e}),t("browser_spellcheck",{processor:"boolean",default:!1}),t("protect",{processor:"array"}),t("images_file_types",{processor:"string",default:"jpeg,jpg,jpe,jfi,jif,jfif,png,gif,bmp,webp"}),t("deprecation_warnings",{processor:"boolean",default:!0}),t("a11y_advanced_options",{processor:"boolean",default:!1}),t("api_key",{processor:"string"}),t("paste_block_drop",{processor:"boolean",default:!1}),t("paste_data_images",{processor:"boolean",default:!0}),t("paste_preprocess",{processor:"function"}),t("paste_postprocess",{processor:"function"}),t("paste_webkit_styles",{processor:"string",default:"none"}),t("paste_remove_styles_if_webkit",{processor:"boolean",default:!0}),t("paste_merge_formats",{processor:"boolean",default:!0}),t("smart_paste",{processor:"boolean",default:!0}),t("paste_as_text",{processor:"boolean",default:!1}),t("paste_tab_spaces",{processor:"number",default:4}),t("text_patterns",{processor:e=>S(e,f)||!1===e?{value:Al(!1===e?[]:e),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",trigger:"space"},{start:"##",format:"h2",trigger:"space"},{start:"###",format:"h3",trigger:"space"},{start:"####",format:"h4",trigger:"space"},{start:"#####",format:"h5",trigger:"space"},{start:"######",format:"h6",trigger:"space"},{start:"1.",cmd:"InsertOrderedList",trigger:"space"},{start:"*",cmd:"InsertUnorderedList",trigger:"space"},{start:"-",cmd:"InsertUnorderedList",trigger:"space"},{start:">",cmd:"mceBlockQuote",trigger:"space"},{start:"---",cmd:"InsertHorizontalRule",trigger:"space"}]}),t("text_patterns_lookup",{processor:e=>{return w(e)?{value:(t=e,e=>{const n=t(e);return Al(n)}),valid:!0}:{valid:!1,message:"Must be a single function"};var t},default:e=>[]}),t("noneditable_class",{processor:"string",default:"mceNonEditable"}),t("editable_class",{processor:"string",default:"mceEditable"}),t("noneditable_regexp",{processor:e=>S(e,Pl)?{value:e,valid:!0}:Pl(e)?{value:[e],valid:!0}:{valid:!1,message:"Must be a RegExp or an array of RegExp."},default:[]}),t("table_tab_navigation",{processor:"boolean",default:!0}),t("highlight_on_focus",{processor:"boolean",default:!0}),t("xss_sanitization",{processor:"boolean",default:!0}),t("details_initial_state",{processor:e=>{const t=H(["inherited","collapsed","expanded"],e);return t?{value:e,valid:t}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),t("details_serialized_state",{processor:e=>{const t=H(["inherited","collapsed","expanded"],e);return t?{value:e,valid:t}:{valid:!1,message:"Must be one of: inherited, collapsed, or expanded."}},default:"inherited"}),t("init_content_sync",{processor:"boolean",default:!1}),t("newdocument_content",{processor:"string",default:""}),t("force_hex_color",{processor:e=>{const t=["always","rgb_only","off"],n=H(t,e);return n?{value:e,valid:n}:{valid:!1,message:`Must be one of: ${t.join(", ")}.`}},default:"off"}),t("sandbox_iframes",{processor:"boolean",default:!0}),t("sandbox_iframes_exclusions",{processor:"string[]",default:["youtube.com","youtu.be","vimeo.com","dailymotion.com","dai.ly","codepen.io"]}),t("convert_unsafe_embeds",{processor:"boolean",default:!0}),e.on("ScriptsLoaded",()=>{t("directionality",{processor:"string",default:pa.isRtl()?"rtl":void 0}),t("placeholder",{processor:"string",default:Bl.getAttrib(e.getElement(),"placeholder")})})})(o);const s=this.options.get;s("deprecation_warnings")&&((e,t)=>{((e,t)=>{const n=zw(e),o=Hw(t),r=o.length>0,s=n.length>0,a="mobile"===t.theme;if(r||s||a){const e="\n- ",t=a?`\n\nThemes:${e}mobile`:"",i=r?`\n\nPlugins:${e}${o.join(e)}`:"",l=s?`\n\nOptions:${e}${n.join(e)}`:"";console.warn("The following deprecated features are currently enabled but have been removed in TinyMCE 6.0 and therefore, they are not present in HugeRTE either. These features will no longer work and should be removed from the HugeRTE configuration. See https://www.hugerte.org/docs/hugerte/1/migration-from-5x/ for more information."+t+i+l)}})(e,t),((e,t)=>{const n=Uw(e),o=$w(t),r=o.length>0,s=n.length>0;if(r||s){const e="\n- ",t=r?`\n\nPlugins:${e}${o.map(qw).join(e)}`:"",a=s?`\n\nOptions:${e}${n.join(e)}`:"";console.warn("The following deprecated features are currently enabled but will be removed soon."+t+a)}})(e,t)})(t,r);const a=s("suffix");a&&(n.suffix=a),this.suffix=n.suffix;const i=s("base_url");i&&n._setBaseUrl(i),this.baseUri=n.baseURI;const l=ic(o);l&&(da.ScriptLoader._setReferrerPolicy(l),la.DOM.styleSheetLoader._setReferrerPolicy(l));const c=jc(o);C(c)&&la.DOM.styleSheetLoader._setContentCssCors(c),ha.languageLoad=s("language_load"),ha.baseURL=n.baseURL,this.setDirty(!1),this.documentBaseURI=new kC(zl(o),{base_uri:this.baseUri}),this.baseURI=this.baseUri,this.inline=Bc(o),this.hasVisual=Vc(o),this.shortcuts=new EB(this),this.editorCommands=new XO(this),KO(this);const d=s("cache_suffix");d&&(Tt.cacheSuffix=d.replace(/^[\?\&]+/,"")),this.ui={registry:_B(),styleSheetLoader:void 0,show:E,hide:E,setEnabled:E,isEnabled:M},this.mode=(e=>{const t=ua("design"),n=ua({design:{activate:E,deactivate:E,editorReadOnly:!1},readonly:{activate:E,deactivate:E,editorReadOnly:!0}});return(e=>{e.serializer?tB(e):e.on("PreInit",()=>{tB(e)})})(e),(e=>{e.on("ShowCaret",t=>{eB(e)&&t.preventDefault()}),e.on("ObjectSelected",t=>{eB(e)&&t.preventDefault()})})(e),{isReadOnly:()=>eB(e),set:o=>((e,t,n,o)=>{if(o!==n.get()){if(!Ee(t,o))throw new Error(`Editor mode '${o}' is invalid`);e.initialized?vB(e,n,t,o):e.on("init",()=>vB(e,n,t,o))}})(e,n.get(),t,o),get:()=>t.get(),register:(e,t)=>{n.set(((e,t,n)=>{if(H(bB,t))throw new Error(`Cannot override default mode ${t}`);return{...e,[t]:{...n,deactivate:()=>{try{n.deactivate()}catch(e){console.error(`problem while deactivating editor mode ${t}:`,e)}}}}})(n.get(),e,t))}}})(o),n.dispatch("SetupEditor",{editor:this});const g=Gc(o);w(g)&&g.call(o,o)}render(){(e=>{const t=e.id;pa.setCode(lc(e));const n=()=>{wO.unbind(window,"ready",n),e.render()};if(!Qs.Event.domLoaded)return void wO.bind(window,"ready",n);if(!e.getElement())return;const o=yn(e.getElement()),r=rn(o);e.on("remove",()=>{W(o.dom.attributes,e=>on(o,e.name)),Jt(o,r)}),e.ui.styleSheetLoader=((e,t)=>Jr.forElement(e,{contentCssCors:jc(t),referrerPolicy:ic(t)}))(o,e),Bc(e)?e.inline=!0:(e.orgVisibility=e.getElement().style.visibility,e.getElement().style.visibility="hidden");const s=e.getElement().form||wO.getParent(t,"form");s&&(e.formElement=s,Pc(e)&&!ir(e.getElement())&&(wO.insertAfter(wO.create("input",{type:"hidden",name:t}),t),e.hasHiddenInput=!0),e.formEventDelegate=t=>{e.dispatch(t.type,t)},wO.bind(s,"submit reset",e.formEventDelegate),e.on("reset",()=>{e.resetContent()}),!Dc(e)||s.submit.nodeType||s.submit.length||s._mceOldSubmit||(s._mceOldSubmit=s.submit,s.submit=()=>(e.editorManager.triggerSave(),e.setDirty(!1),s._mceOldSubmit(s)))),e.windowManager=rx(e),e.notificationManager=tx(e),(e=>"xml"===e.options.get("encoding"))(e)&&e.on("GetContent",e=>{e.save&&(e.content=wO.encode(e.content))}),Lc(e)&&e.on("submit",()=>{e.initialized&&e.save()}),Mc(e)&&(e._beforeUnload=()=>{!e.initialized||e.destroyed||e.isHidden()||e.save({format:"raw",no_events:!0,set_dirty:!1})},e.editorManager.on("BeforeUnload",e._beforeUnload)),e.editorManager.add(e),EO(e,e.suffix)})(this)}focus(e){this.execCommand("mceFocus",!1,e)}hasFocus(){return zg(this)}translate(e){return pa.translate(e)}getParam(e,t,n){const o=this.options;return o.isRegistered(e)||(C(n)?o.register(e,{processor:n,default:t}):o.register(e,{processor:M,default:t})),o.isSet(e)||v(t)?o.get(e):t}hasPlugin(e,t){return!(!H(Hc(this),e)||t&&void 0===nx.get(e))}nodeChanged(e){this._nodeChangeDispatcher.nodeChanged(e)}addCommand(e,t,n){this.editorCommands.addCommand(e,t,n)}addQueryStateHandler(e,t,n){this.editorCommands.addQueryStateHandler(e,t,n)}addQueryValueHandler(e,t,n){this.editorCommands.addQueryValueHandler(e,t,n)}addShortcut(e,t,n,o){this.shortcuts.add(e,t,n,o)}execCommand(e,t,n,o){return this.editorCommands.execCommand(e,t,n,o)}queryCommandState(e){return this.editorCommands.queryCommandState(e)}queryCommandValue(e){return this.editorCommands.queryCommandValue(e)}queryCommandSupported(e){return this.editorCommands.queryCommandSupported(e)}show(){const e=this;e.hidden&&(e.hidden=!1,e.inline?e.getBody().contentEditable="true":(kB.show(e.getContainer()),kB.hide(e.id)),e.load(),e.dispatch("show"))}hide(){const e=this;e.hidden||(e.save(),e.inline?(e.getBody().contentEditable="false",e===e.editorManager.focusedEditor&&(e.editorManager.focusedEditor=null)):(kB.hide(e.getContainer()),kB.setStyle(e.id,"display",e.orgDisplay)),e.hidden=!0,e.dispatch("hide"))}isHidden(){return this.hidden}setProgressState(e,t){this.dispatch("ProgressState",{state:e,time:t})}load(e={}){const t=this,n=t.getElement();if(t.removed)return"";if(n){const o={...e,load:!0},r=ir(n)?n.value:n.innerHTML,s=t.setContent(r,o);return o.no_events||t.dispatch("LoadContent",{...o,element:n}),s}return""}save(e={}){const t=this;let n=t.getElement();if(!n||!t.initialized||t.removed)return"";const o={...e,save:!0,element:n};let r=t.getContent(o);const s={...o,content:r};if(s.no_events||t.dispatch("SaveContent",s),"raw"===s.format&&t.dispatch("RawSaveContent",s),r=s.content,ir(n))n.value=r;else{!e.is_removing&&t.inline||(n.innerHTML=r);const o=kB.getParent(t.id,"form");o&&RB(o.elements,e=>e.name!==t.id||(e.value=r,!1))}return s.element=o.element=n=null,!1!==s.set_dirty&&t.setDirty(!1),r}setContent(e,t){return Pw(this,e,t)}getContent(e){return((e,t={})=>{const n=((e,t)=>({...e,format:t,get:!0,getInner:!0}))(t,t.format?t.format:"html");return qC(e,n).fold(R,t=>{const n=((e,t)=>xw(e).editor.getContent(t))(e,t);return VC(e,n,t)})})(this,e)}insertContent(e,t){t&&(e=NB({content:e},t)),this.execCommand("mceInsertContent",!1,e)}resetContent(e){void 0===e?Pw(this,this.startContent,{format:"raw"}):Pw(this,e),this.undoManager.reset(),this.setDirty(!1),this.nodeChanged()}isDirty(){return!this.isNotDirty}setDirty(e){const t=!this.isNotDirty;this.isNotDirty=!e,e&&e!==t&&this.dispatch("dirty")}getContainer(){const e=this;return e.container||(e.container=e.editorContainer||kB.get(e.id+"_parent")),e.container}getContentAreaContainer(){return this.contentAreaContainer}getElement(){return this.targetElm||(this.targetElm=kB.get(this.id)),this.targetElm}getWin(){const e=this;if(!e.contentWindow){const t=e.iframeElement;t&&(e.contentWindow=t.contentWindow)}return e.contentWindow}getDoc(){const e=this;if(!e.contentDocument){const t=e.getWin();t&&(e.contentDocument=t.document)}return e.contentDocument}getBody(){var e,t;const n=this.getDoc();return null!==(t=null!==(e=this.bodyElement)&&void 0!==e?e:null==n?void 0:n.body)&&void 0!==t?t:null}convertURL(e,t,n){const o=this,r=o.options.get,s=Zc(o);if(w(s))return s.call(o,e,n,!0,t);if(!r("convert_urls")||"link"===n||f(n)&&"LINK"===n.nodeName||0===e.indexOf("file:")||0===e.length)return e;const a=new kC(e);return"http"!==a.protocol&&"https"!==a.protocol&&""!==a.protocol?e:r("relative_urls")?o.documentBaseURI.toRelative(e):e=o.documentBaseURI.toAbsolute(e,r("remove_script_host"))}addVisual(e){((e,t)=>{((e,t)=>{Sw(e).editor.addVisual(t)})(e,t)})(this,e)}setEditableRoot(e){((e,t)=>{e._editableRoot!==t&&(e._editableRoot=t,e.readonly||(e.getBody().contentEditable=String(e.hasEditableRoot()),e.nodeChanged()),((e,t)=>{e.dispatch("EditableRootStateChange",{state:t})})(e,t))})(this,e)}hasEditableRoot(){return this._editableRoot}remove(){(e=>{if(!e.removed){const{_selectionOverrides:t,editorUpload:n}=e,o=e.getBody(),r=e.getElement();o&&e.save({is_removing:!0}),e.removed=!0,e.unbindAllNativeEvents(),e.hasHiddenInput&&C(null==r?void 0:r.nextSibling)&&Vw.remove(r.nextSibling),(e=>{e.dispatch("remove")})(e),e.editorManager.remove(e),!e.inline&&o&&(e=>{Vw.setStyle(e.id,"display",e.orgDisplay)})(e),(e=>{e.dispatch("detach")})(e),Vw.remove(e.getContainer()),Ww(t),Ww(n),e.destroy()}})(this)}destroy(e){((e,t)=>{const{selection:n,dom:o}=e;e.destroyed||(t||e.removed?(t||(e.editorManager.off("beforeunload",e._beforeUnload),e.theme&&e.theme.destroy&&e.theme.destroy(),Ww(n),Ww(o)),(e=>{const t=e.formElement;t&&(t._mceOldSubmit&&(t.submit=t._mceOldSubmit,delete t._mceOldSubmit),Vw.unbind(t,"submit reset",e.formEventDelegate))})(e),(e=>{const t=e;t.contentAreaContainer=t.formElement=t.container=t.editorContainer=null,t.bodyElement=t.contentDocument=t.contentWindow=null,t.iframeElement=t.targetElm=null;const n=e.selection;if(n){const e=n.dom;t.selection=n.win=n.dom=e.doc=null}})(e),e.destroyed=!0):e.remove())})(this,e)}uploadImages(){return this.editorUpload.uploadImages()}_scanForImages(){return this.editorUpload.scanForImages()}}const TB=la.DOM,OB=Pt.each;let BB,PB=!1,DB=[];const LB=e=>{const t=e.type;OB(zB.get(),n=>{switch(t){case"scroll":n.dispatch("ScrollWindow",e);break;case"resize":n.dispatch("ResizeWindow",e)}})},MB=e=>{if(e!==PB){const t=la.DOM;e?(t.bind(window,"resize",LB),t.bind(window,"scroll",LB)):(t.unbind(window,"resize",LB),t.unbind(window,"scroll",LB)),PB=e}},IB=e=>{const t=DB;return DB=Y(DB,t=>e!==t),zB.activeEditor===e&&(zB.activeEditor=DB.length>0?DB[0]:null),zB.focusedEditor===e&&(zB.focusedEditor=null),t.length!==DB.length},FB="CSS1Compat"!==document.compatMode,zB={...aB,baseURI:null,baseURL:null,defaultOptions:{},documentBaseURL:null,suffix:null,majorVersion:"1",minorVersion:"0.12",releaseDate:"2026-06-29",i18n:pa,activeEditor:null,focusedEditor:null,setup(){const e=this;let t="",n="",o=kC.getDocumentBaseUrl(document.location);/^[^:]+:\/\/\/?[^\/]+\//.test(o)&&(o=o.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,""),/[\/\\]$/.test(o)||(o+="/"));const r=window.hugerte||window.hugeRTEPreInit;if(r)t=r.base||r.baseURL,n=r.suffix;else{const e=document.getElementsByTagName("script");for(let o=0;o<e.length;o++){const r=e[o].src||"";if(""===r)continue;const s=r.substring(r.lastIndexOf("/"));if(/hugerte(\.full|\.jquery|)(\.min|\.dev|)\.js/.test(r)){-1!==s.indexOf(".min")&&(n=".min"),t=r.substring(0,r.lastIndexOf("/"));break}}if(!t&&document.currentScript){const e=document.currentScript.src;-1!==e.indexOf(".min")&&(n=".min"),t=e.substring(0,e.lastIndexOf("/"))}}var s;e.baseURL=new kC(o).toAbsolute(t),e.documentBaseURL=o,e.baseURI=new kC(e.baseURL),e.suffix=n,(s=e).on("AddEditor",T(Lg,s)),s.on("RemoveEditor",T(Mg,s))},overrideDefaults(e){const t=e.base_url;t&&this._setBaseUrl(t);const n=e.suffix;n&&(this.suffix=n),this.defaultOptions=e;const o=e.plugin_base_urls;void 0!==o&&pe(o,(e,t)=>{ha.PluginManager.urls[t]=e})},init(e){const t=this;let n;const o=Pt.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"," ");let r=e=>{n=e};const s=()=>{let n=0;const a=[];let i;TB.unbind(window,"ready",s),(()=>{const n=e.onpageload;n&&n.apply(t,[])})(),i=me((e=>Tt.browser.isIE()||Tt.browser.isEdge()?(cx("HugeRTE does not support the browser you are using. For a list of supported browsers please see: https://www.hugerte.org/docs/hugerte/1/support/#supportedwebbrowsers"),[]):FB?(cx("Failed to initialize the editor as the document is not in standards mode. HugeRTE requires standards mode."),[]):m(e.selector)?TB.select(e.selector):C(e.target)?[e.target]:[])(e)),Pt.each(i,e=>{var n;(n=t.get(e.id))&&n.initialized&&!(n.getContainer()||n.getBody()).parentNode&&(IB(n),n.unbindAllNativeEvents(),n.destroy(!0),n.removed=!0)}),i=Pt.grep(i,e=>!t.get(e.id)),0===i.length?r([]):OB(i,s=>{((e,t)=>e.inline&&t.tagName.toLowerCase()in o)(e,s)?cx("Could not initialize inline editor on invalid inline target element",s):((e,o,s)=>{const l=new AB(e,o,t);a.push(l),l.on("init",()=>{++n===i.length&&r(a)}),l.targetElm=l.targetElm||s,l.render()})((e=>{let t=e.id;return t||(t=Se(e,"name").filter(e=>!TB.get(e)).getOrThunk(TB.uniqueId),e.setAttribute("id",t)),t})(s),e,s)})};return TB.bind(window,"ready",s),new Promise(e=>{n?e(n):r=t=>{e(t)}})},get(e){return 0===arguments.length?DB.slice(0):m(e)?Q(DB,t=>t.id===e).getOr(null):x(e)&&DB[e]?DB[e]:null},add(e){const t=this,n=t.get(e.id);return n===e||(null===n&&DB.push(e),MB(!0),t.activeEditor=e,t.dispatch("AddEditor",{editor:e}),BB||(BB=e=>{const n=t.dispatch("BeforeUnload");if(n.returnValue)return e.preventDefault(),e.returnValue=n.returnValue,n.returnValue},window.addEventListener("beforeunload",BB))),e},createEditor(e,t){return this.add(new AB(e,t,this))},remove(e){const t=this;let n;if(e){if(!m(e))return n=e,h(t.get(n.id))?null:(IB(n)&&t.dispatch("RemoveEditor",{editor:n}),0===DB.length&&window.removeEventListener("beforeunload",BB),n.remove(),MB(DB.length>0),n);OB(TB.select(e),e=>{n=t.get(e.id),n&&t.remove(n)})}else for(let e=DB.length-1;e>=0;e--)t.remove(DB[e])},execCommand(e,t,n){var o;const r=this,s=f(n)?null!==(o=n.id)&&void 0!==o?o:n.index:n;switch(e){case"mceAddEditor":if(!r.get(s)){const e=n.options;new AB(s,e,r).render()}return!0;case"mceRemoveEditor":{const e=r.get(s);return e&&e.remove(),!0}case"mceToggleEditor":{const e=r.get(s);return e?(e.isHidden()?e.show():e.hide(),!0):(r.execCommand("mceAddEditor",!1,n),!0)}}return!!r.activeEditor&&r.activeEditor.execCommand(e,t,n)},triggerSave:()=>{OB(DB,e=>{e.save()})},addI18n:(e,t)=>{pa.add(e,t)},translate:e=>pa.translate(e),setActive(e){const t=this.activeEditor;this.activeEditor!==e&&(t&&t.dispatch("deactivate",{relatedTarget:e}),e.dispatch("activate",{relatedTarget:t})),this.activeEditor=e},_setBaseUrl(e){this.baseURL=new kC(this.documentBaseURL).toAbsolute(e.replace(/\/+$/,"")),this.baseURI=new kC(this.baseURL)}};zB.setup();const UB=(()=>{const e=va();return{FakeClipboardItem:e=>({items:e,types:fe(e),getType:t=>Se(e,t).getOrUndefined()}),write:t=>{e.set(t)},read:()=>e.get().getOrUndefined(),clear:e.clear}})(),jB=Math.min,HB=Math.max,$B=Math.round,qB=(e,t,n)=>{let o=t.x,r=t.y;const s=e.w,a=e.h,i=t.w,l=t.h,c=(n||"").split("");return"b"===c[0]&&(r+=l),"r"===c[1]&&(o+=i),"c"===c[0]&&(r+=$B(l/2)),"c"===c[1]&&(o+=$B(i/2)),"b"===c[3]&&(r-=a),"r"===c[4]&&(o-=s),"c"===c[3]&&(r-=$B(a/2)),"c"===c[4]&&(o-=$B(s/2)),VB(o,r,s,a)},VB=(e,t,n,o)=>({x:e,y:t,w:n,h:o}),WB={inflate:(e,t,n)=>VB(e.x-t,e.y-n,e.w+2*t,e.h+2*n),relativePosition:qB,findBestRelativePosition:(e,t,n,o)=>{for(let r=0;r<o.length;r++){const s=qB(e,t,o[r]);if(s.x>=n.x&&s.x+s.w<=n.w+n.x&&s.y>=n.y&&s.y+s.h<=n.h+n.y)return o[r]}return null},intersect:(e,t)=>{const n=HB(e.x,t.x),o=HB(e.y,t.y),r=jB(e.x+e.w,t.x+t.w),s=jB(e.y+e.h,t.y+t.h);return r-n<0||s-o<0?null:VB(n,o,r-n,s-o)},clamp:(e,t,n)=>{let o=e.x,r=e.y,s=e.x+e.w,a=e.y+e.h;const i=t.x+t.w,l=t.y+t.h,c=HB(0,t.x-o),d=HB(0,t.y-r),u=HB(0,s-i),m=HB(0,a-l);return o+=c,r+=d,n&&(s+=c,a+=d,o-=u,r-=m),s-=u,a-=m,VB(o,r,s-o,a-r)},create:VB,fromClientRect:e=>VB(e.left,e.top,e.width,e.height)},KB=(()=>{const e={},t={},n={};return{load:(n,o)=>{const r=`Script at URL "${o}" failed to load`,s=`Script at URL "${o}" did not call \`hugerte.Resource.add('${n}', data)\` within 1 second`;if(void 0!==e[n])return e[n];{const a=new Promise((e,a)=>{const i=((e,t,n=1e3)=>{let o=!1,r=null;const s=e=>(...t)=>{o||(o=!0,null!==r&&(clearTimeout(r),r=null),e.apply(null,t))},a=s(e),i=s(t);return{start:(...e)=>{o||null!==r||(r=setTimeout(()=>i.apply(null,e),n))},resolve:a,reject:i}})(e,a);t[n]=i.resolve,da.ScriptLoader.loadScript(o).then(()=>i.start(s),()=>i.reject(r))});return e[n]=a,a}},add:(o,r)=>{void 0!==t[o]&&(t[o](r),delete t[o]),e[o]=Promise.resolve(r),n[o]=r},has:e=>e in n,get:e=>n[e],unload:t=>{delete e[t],delete n[t]}}})();let YB;try{const e="__storage_test__";YB=window.localStorage,YB.setItem(e,e),YB.removeItem(e)}catch(e){YB=(()=>{let e={},t=[];const n={getItem:t=>e[t]||null,setItem:(n,o)=>{t.push(n),e[n]=String(o)},key:e=>t[e],removeItem:n=>{t=t.filter(e=>e===n),delete e[n]},clear:()=>{t=[],e={}},length:0};return Object.defineProperty(n,"length",{get:()=>t.length,configurable:!1,enumerable:!1}),n})()}const GB={geom:{Rect:WB},util:{Delay:Ag,Tools:Pt,VK:vf,URI:kC,EventDispatcher:rB,Observable:aB,I18n:pa,LocalStorage:YB,ImageUploader:e=>{const t=fx(),n=bx(e,t);return{upload:(t,o=!0)=>n.upload(t,o?hx(e):void 0)}}},dom:{EventUtils:Qs,TreeWalker:$o,TextSeeker:Fa,DOMUtils:la,ScriptLoader:da,RangeUtils:Xf,Serializer:Bw,StyleSheetLoader:Qr,ControlSelection:Sf,BookmarkManager:cf,Selection:Aw,Event:Qs.Event},html:{Styles:$s,Entities:hs,Node:Qg,Schema:Ps,DomParser:jC,Writer:hp,Serializer:bp},Env:Tt,AddOnManager:ha,Annotator:lf,Formatter:Ax,UndoManager:Ox,EditorCommands:XO,WindowManager:rx,NotificationManager:tx,EditorObservable:mB,Shortcuts:EB,Editor:AB,FocusManager:Rg,EditorManager:zB,DOM:la.DOM,ScriptLoader:da.ScriptLoader,PluginManager:nx,ThemeManager:ox,ModelManager:Yw,IconManager:Kw,Resource:KB,FakeClipboard:UB,trim:Pt.trim,isArray:Pt.isArray,is:Pt.is,toArray:Pt.toArray,makeMap:Pt.makeMap,each:Pt.each,map:Pt.map,grep:Pt.grep,inArray:Pt.inArray,extend:Pt.extend,walk:Pt.walk,resolve:Pt.resolve,explode:Pt.explode,_addCacheSuffix:Pt._addCacheSuffix},XB=Pt.extend(zB,GB);(e=>{window.hugerte=e,window.hugeRTE=e})(XB),(e=>{if("object"==typeof module)try{module.exports=e}catch(e){}})(XB)}();