(self["webpackChunkhxmini"]=self["webpackChunkhxmini"]||[]).push([[8774],{4934:function(){(function(){"use strict";const e=Object.getPrototypeOf,t=(e,t,o)=>{var n;return!!o(e,t.prototype)||(null===(n=e.constructor)||void 0===n?void 0:n.name)===t.name},o=e=>{const o=typeof e;return null===e?"null":"object"===o&&Array.isArray(e)?"array":"object"===o&&t(e,String,(e,t)=>t.isPrototypeOf(e))?"string":o},n=e=>t=>o(t)===e,r=e=>t=>typeof t===e,s=e=>t=>e===t,a=(o,n)=>l(o)&&t(o,n,(t,o)=>e(t)===o),i=n("string"),l=n("object"),c=e=>a(e,Object),d=n("array"),m=s(null),u=r("boolean"),g=s(void 0),h=e=>null===e||void 0===e,p=e=>!h(e),f=r("function"),b=r("number"),v=(e,t)=>{if(d(e)){for(let o=0,n=e.length;o{},w=e=>()=>e(),x=(e,t)=>(...o)=>e(t.apply(null,o)),C=(e,t)=>o=>e(t(o)),S=e=>()=>e,k=e=>e,_=(e,t)=>e===t;function O(e,...t){return(...o)=>{const n=t.concat(o);return e.apply(null,n)}}const T=e=>t=>!e(t),E=e=>()=>{throw new Error(e)},D=e=>e(),A=S(!1),M=S(!0);var N=tinymce.util.Tools.resolve("tinymce.ThemeManager");class R{constructor(e,t){this.tag=e,this.value=t}static some(e){return new R(!0,e)}static none(){return R.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?R.some(e(this.value)):R.none()}bind(e){return this.tag?e(this.value):R.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:R.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&&void 0!==e?e:"Called getOrDie on None")}static from(e){return p(e)?R.some(e):R.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()"}}R.singletonNone=new R(!1);const B=Array.prototype.slice,L=Array.prototype.indexOf,H=Array.prototype.push,I=(e,t)=>L.call(e,t),P=(e,t)=>{const o=I(e,t);return-1===o?R.none():R.some(o)},z=(e,t)=>I(e,t)>-1,F=(e,t)=>{for(let o=0,n=e.length;o{const o=[];for(let n=0;n{const o=[];for(let n=0;n{const o=e.length,n=new Array(o);for(let r=0;r{for(let o=0,n=e.length;o{for(let o=e.length-1;o>=0;o--){const n=e[o];t(n,o)}},W=(e,t)=>{const o=[],n=[];for(let r=0,s=e.length;r{const o=[];for(let n=0,r=e.length;n($(e,(e,n)=>{o=t(o,e,n)}),o),K=(e,t,o)=>(j(e,(e,n)=>{o=t(o,e,n)}),o),Y=(e,t,o)=>{for(let n=0,r=e.length;nY(e,t,A),J=(e,t)=>{for(let o=0,n=e.length;o{const t=[];for(let o=0,n=e.length;oQ(U(e,t)),te=(e,t)=>{for(let o=0,n=e.length;o{const t=B.call(e,0);return t.reverse(),t},ne=(e,t)=>q(e,e=>!z(t,e)),re=(e,t)=>{const o={};for(let n=0,r=e.length;n[e],ae=(e,t)=>{const o=B.call(e,0);return o.sort(t),o},ie=(e,t)=>t>=0&&tie(e,0),ce=e=>ie(e,e.length-1),de=f(Array.from)?Array.from:e=>B.call(e),me=(e,t)=>{for(let o=0;o{const o=ue(e);for(let n=0,r=o.length;nfe(e,(e,o)=>({k:o,v:t(e,o)})),fe=(e,t)=>{const o={};return he(e,(e,n)=>{const r=t(e,n);o[r.k]=r.v}),o},be=e=>(t,o)=>{e[o]=t},ve=(e,t,o,n)=>{he(e,(e,r)=>{(t(e,r)?o:n)(e,r)})},ye=(e,t)=>{const o={},n={};return ve(e,t,be(o),be(n)),{t:o,f:n}},we=(e,t)=>{const o={};return ve(e,t,be(o),y),o},xe=(e,t)=>{const o=[];return he(e,(e,n)=>{o.push(t(e,n))}),o},Ce=(e,t)=>{const o=ue(e);for(let n=0,r=o.length;nxe(e,k),ke=(e,t)=>_e(e,t)?R.from(e[t]):R.none(),_e=(e,t)=>ge.call(e,t),Oe=(e,t)=>_e(e,t)&&void 0!==e[t]&&null!==e[t],Te=(e,t,o=_)=>e.exists(e=>o(e,t)),Ee=(e,t,o=_)=>Me(e,t,o).getOr(e.isNone()&&t.isNone()),De=e=>{const t=[],o=e=>{t.push(e)};for(let n=0;n{const t=[];for(let o=0;oe.isSome()&&t.isSome()?R.some(o(e.getOrDie(),t.getOrDie())):R.none(),Ne=(e,t,o,n)=>e.isSome()&&t.isSome()&&o.isSome()?R.some(n(e.getOrDie(),t.getOrDie(),o.getOrDie())):R.none(),Re=(e,t)=>void 0!==e&&null!==e?R.some(t(e)):R.none(),Be=(e,t)=>e?R.some(t):R.none(),Le=(e,t)=>e+t,He=(e,t)=>e.substring(t),Ie=(e,t,o)=>""===t||e.length>=t.length&&e.substr(o,o+t.length)===t,Pe=(e,t)=>Ve(e,t)?He(e,t.length):e,ze=(e,t)=>Ze(e,t)?e:Le(e,t),Fe=(e,t,o=0,n)=>{const r=e.indexOf(t,o);return-1!==r&&(!!g(n)||r+t.length<=n)},Ve=(e,t)=>Ie(e,t,0),Ze=(e,t)=>Ie(e,t,e.length-t.length),Ue=e=>t=>t.replace(e,""),je=Ue(/^\s+|\s+$/g),$e=e=>e.length>0,We=e=>!$e(e),qe=e=>void 0!==e.style&&f(e.style.getPropertyValue),Ge=(e,t)=>{const o=t||document,n=o.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 Xe(n.childNodes[0])},Ke=(e,t)=>{const o=t||document,n=o.createElement(e);return Xe(n)},Ye=(e,t)=>{const o=t||document,n=o.createTextNode(e);return Xe(n)},Xe=e=>{if(null===e||void 0===e)throw new Error("Node cannot be null or undefined");return{dom:e}},Je=(e,t,o)=>R.from(e.dom.elementFromPoint(t,o)).map(Xe),Qe={fromHtml:Ge,fromTag:Ke,fromText:Ye,fromDom:Xe,fromPoint:Je},et="undefined"!==typeof window?window:Function("return this;")(),tt=(e,t)=>{let o=void 0!==t&&null!==t?t:et;for(let n=0;n{const o=e.split(".");return tt(o,t)},nt=(e,t)=>ot(e,t),rt=(e,t)=>{const o=nt(e,t);if(void 0===o||null===o)throw new Error(e+" not available on this browser");return o},st=Object.getPrototypeOf,at=e=>rt("HTMLElement",e),it=e=>{const t=ot("ownerDocument.defaultView",e);return l(e)&&(at(t).prototype.isPrototypeOf(e)||/^HTML\w*Element$/.test(st(e).constructor.name))},lt=9,ct=11,dt=1,mt=3,ut=e=>{const t=e.dom.nodeName;return t.toLowerCase()},gt=e=>e.dom.nodeType,ht=e=>t=>gt(t)===e,pt=e=>ft(e)&&it(e.dom),ft=ht(dt),bt=ht(mt),vt=ht(lt),yt=ht(ct),wt=e=>t=>ft(t)&&ut(t)===e,xt=(e,t)=>{const o=e.dom;if(o.nodeType!==dt)return!1;{const e=o;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")}},Ct=e=>e.nodeType!==dt&&e.nodeType!==lt&&e.nodeType!==ct||0===e.childElementCount,St=(e,t)=>{const o=void 0===t?document:t.dom;return Ct(o)?[]:U(o.querySelectorAll(e),Qe.fromDom)},kt=(e,t)=>{const o=void 0===t?document:t.dom;return Ct(o)?R.none():R.from(o.querySelector(e)).map(Qe.fromDom)},_t=(e,t)=>e.dom===t.dom,Ot=(e,t)=>{const o=e.dom,n=t.dom;return o!==n&&o.contains(n)},Tt=e=>Qe.fromDom(e.dom.ownerDocument),Et=e=>vt(e)?e:Tt(e),Dt=e=>Qe.fromDom(Et(e).dom.documentElement),At=e=>Qe.fromDom(Et(e).dom.defaultView),Mt=e=>R.from(e.dom.parentNode).map(Qe.fromDom),Nt=e=>R.from(e.dom.parentElement).map(Qe.fromDom),Rt=e=>R.from(e.dom.offsetParent).map(Qe.fromDom),Bt=e=>R.from(e.dom.nextSibling).map(Qe.fromDom),Lt=e=>U(e.dom.childNodes,Qe.fromDom),Ht=(e,t)=>{const o=e.dom.childNodes;return R.from(o[t]).map(Qe.fromDom)},It=e=>Ht(e,0),Pt=(e,t)=>({element:e,offset:t}),zt=(e,t)=>{const o=Lt(e);return o.length>0&&tyt(e)&&p(e.dom.host),Vt=f(Element.prototype.attachShadow)&&f(Node.prototype.getRootNode),Zt=S(Vt),Ut=Vt?e=>Qe.fromDom(e.dom.getRootNode()):Et,jt=e=>Ft(e)?e:Qe.fromDom(Et(e).dom.body),$t=e=>Wt(e).isSome(),Wt=e=>{const t=Ut(e);return Ft(t)?R.some(t):R.none()},qt=e=>Qe.fromDom(e.dom.host),Gt=e=>{if(Zt()&&p(e.target)){const t=Qe.fromDom(e.target);if(ft(t)&&Kt(t)&&e.composed&&e.composedPath){const t=e.composedPath();if(t)return le(t)}}return R.from(e.target)},Kt=e=>p(e.dom.shadowRoot),Yt=e=>{const t=bt(e)?e.dom.parentNode:e.dom;if(void 0===t||null===t||null===t.ownerDocument)return!1;const o=t.ownerDocument;return Wt(Qe.fromDom(t)).fold(()=>o.body.contains(t),C(Yt,qt))},Xt=()=>Jt(Qe.fromDom(document)),Jt=e=>{const t=e.dom.body;if(null===t||void 0===t)throw new Error("Body is not available yet");return Qe.fromDom(t)},Qt=(e,t,o)=>{if(!(i(o)||u(o)||b(o)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",o,":: Element ",e),new Error("Attribute value was not simple");e.setAttribute(t,o+"")},eo=(e,t,o)=>{Qt(e.dom,t,o)},to=(e,t)=>{const o=e.dom;he(t,(e,t)=>{Qt(o,t,e)})},oo=(e,t)=>{const o=e.dom.getAttribute(t);return null===o?void 0:o},no=(e,t)=>R.from(oo(e,t)),ro=(e,t)=>{const o=e.dom;return!(!o||!o.hasAttribute)&&o.hasAttribute(t)},so=(e,t)=>{e.dom.removeAttribute(t)},ao=e=>K(e.dom.attributes,(e,t)=>(e[t.name]=t.value,e),{}),io=(e,t,o)=>{if(!i(o))throw console.error("Invalid call to CSS.set. Property ",t,":: Value ",o,":: Element ",e),new Error("CSS value must be a string: "+o);qe(e)&&e.style.setProperty(t,o)},lo=(e,t)=>{qe(e)&&e.style.removeProperty(t)},co=(e,t,o)=>{const n=e.dom;io(n,t,o)},mo=(e,t)=>{const o=e.dom;he(t,(e,t)=>{io(o,t,e)})},uo=(e,t)=>{const o=e.dom;he(t,(e,t)=>{e.fold(()=>{lo(o,t)},e=>{io(o,t,e)})})},go=(e,t)=>{const o=e.dom,n=window.getComputedStyle(o),r=n.getPropertyValue(t);return""!==r||Yt(e)?r:ho(o,t)},ho=(e,t)=>qe(e)?e.style.getPropertyValue(t):"",po=(e,t)=>{const o=e.dom,n=ho(o,t);return R.from(n).filter(e=>e.length>0)},fo=e=>{const t={},o=e.dom;if(qe(o))for(let n=0;n{const n=Qe.fromTag(e);co(n,t,o);const r=po(n,t);return r.isSome()},vo=(e,t)=>{const o=e.dom;lo(o,t),Te(no(e,"style").map(je),"")&&so(e,"style")},yo=e=>e.dom.offsetWidth,wo=(e,t)=>{const o=(t,o)=>{if(!b(o)&&!o.match(/^[0-9]+$/))throw new Error(e+".set accepts only positive integer values. Value was "+o);const n=t.dom;qe(n)&&(n.style[e]=o+"px")},n=o=>{const n=t(o);if(n<=0||null===n){const t=go(o,e);return parseFloat(t)||0}return n},r=n,s=(e,t)=>K(t,(t,o)=>{const n=go(e,o),r=void 0===n?0:parseInt(n,10);return isNaN(r)?t:t+r},0),a=(e,t,o)=>{const n=s(e,o),r=t>n?t-n:0;return r};return{set:o,get:n,getOuter:r,aggregate:s,max:a}},xo=wo("height",e=>{const t=e.dom;return Yt(e)?t.getBoundingClientRect().height:t.offsetHeight}),Co=e=>xo.get(e),So=e=>xo.getOuter(e),ko=(e,t)=>{const o=["margin-top","border-top-width","padding-top","padding-bottom","border-bottom-width","margin-bottom"],n=xo.max(e,t,o);co(e,"max-height",n+"px")},_o=(e,t)=>{const o=(o,n)=>_o(e+o,t+n);return{left:e,top:t,translate:o}},Oo=_o,To=e=>{const t=e.getBoundingClientRect();return Oo(t.left,t.top)},Eo=(e,t)=>void 0!==e?e:void 0!==t?t:0,Do=e=>{const t=e.dom.ownerDocument,o=t.body,n=t.defaultView,r=t.documentElement;if(o===e.dom)return Oo(o.offsetLeft,o.offsetTop);const s=Eo(null===n||void 0===n?void 0:n.pageYOffset,r.scrollTop),a=Eo(null===n||void 0===n?void 0:n.pageXOffset,r.scrollLeft),i=Eo(r.clientTop,o.clientTop),l=Eo(r.clientLeft,o.clientLeft);return Ao(e).translate(a-l,s-i)},Ao=e=>{const t=e.dom,o=t.ownerDocument,n=o.body;return n===t?Oo(n.offsetLeft,n.offsetTop):Yt(e)?To(t):Oo(0,0)},Mo=wo("width",e=>e.dom.offsetWidth),No=(e,t)=>Mo.set(e,t),Ro=e=>Mo.get(e),Bo=e=>Mo.getOuter(e),Lo=(e,t)=>{const o=["margin-left","border-left-width","padding-left","padding-right","border-right-width","margin-right"],n=Mo.max(e,t,o);co(e,"max-width",n+"px")},Ho=e=>{let t,o=!1;return(...n)=>(o||(o=!0,t=e.apply(null,n)),t)},Io=(e,t,o,n)=>{const r=e.isiOS()&&!0===/ipad/i.test(o),s=e.isiOS()&&!r,a=e.isiOS()||e.isAndroid(),i=a||n("(pointer:coarse)"),l=r||!s&&a&&n("(min-device-width:768px)"),c=s||a&&!l,d=t.isSafari()&&e.isiOS()&&!1===/safari/i.test(o),m=!c&&!l&&!d;return{isiPad:S(r),isiPhone:S(s),isTablet:S(l),isPhone:S(c),isTouch:S(i),isAndroid:e.isAndroid,isiOS:e.isiOS,isWebView:S(d),isDesktop:S(m)}},Po=(e,t)=>{for(let o=0;o{const o=Po(e,t);if(!o)return{major:0,minor:0};const n=e=>Number(t.replace(o,"$"+e));return Zo(n(1),n(2))},Fo=(e,t)=>{const o=String(t).toLowerCase();return 0===e.length?Vo():zo(e,o)},Vo=()=>Zo(0,0),Zo=(e,t)=>({major:e,minor:t}),Uo={nu:Zo,detect:Fo,unknown:Vo},jo=(e,t)=>me(t.brands,t=>{const o=t.brand.toLowerCase();return X(e,e=>{var t;return o===(null===(t=e.brand)||void 0===t?void 0:t.toLowerCase())}).map(e=>({current:e.name,version:Uo.nu(parseInt(t.version,10),0)}))}),$o=(e,t)=>{const o=String(t).toLowerCase();return X(e,e=>e.search(o))},Wo=(e,t)=>$o(e,t).map(e=>{const o=Uo.detect(e.versionRegexes,t);return{current:e.name,version:o}}),qo=(e,t)=>$o(e,t).map(e=>{const o=Uo.detect(e.versionRegexes,t);return{current:e.name,version:o}}),Go=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Ko=e=>t=>Fe(t,e),Yo=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:e=>Fe(e,"edge/")&&Fe(e,"chrome")&&Fe(e,"safari")&&Fe(e,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Go],search:e=>Fe(e,"chrome")&&!Fe(e,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:e=>Fe(e,"msie")||Fe(e,"trident")},{name:"Opera",versionRegexes:[Go,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Ko("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Ko("firefox")},{name:"Safari",versionRegexes:[Go,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:e=>(Fe(e,"safari")||Fe(e,"mobile/"))&&Fe(e,"applewebkit")}],Xo=[{name:"Windows",search:Ko("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:e=>Fe(e,"iphone")||Fe(e,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Ko("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Ko("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Ko("linux"),versionRegexes:[]},{name:"Solaris",search:Ko("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Ko("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Ko("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],Jo={browsers:S(Yo),oses:S(Xo)},Qo="Edge",en="Chromium",tn="IE",on="Opera",nn="Firefox",rn="Safari",sn=()=>an({current:void 0,version:Uo.unknown()}),an=e=>{const t=e.current,o=e.version,n=e=>()=>t===e;return{current:t,version:o,isEdge:n(Qo),isChromium:n(en),isIE:n(tn),isOpera:n(on),isFirefox:n(nn),isSafari:n(rn)}},ln={unknown:sn,nu:an,edge:S(Qo),chromium:S(en),ie:S(tn),opera:S(on),firefox:S(nn),safari:S(rn)},cn="Windows",dn="iOS",mn="Android",un="Linux",gn="macOS",hn="Solaris",pn="FreeBSD",fn="ChromeOS",bn=()=>vn({current:void 0,version:Uo.unknown()}),vn=e=>{const t=e.current,o=e.version,n=e=>()=>t===e;return{current:t,version:o,isWindows:n(cn),isiOS:n(dn),isAndroid:n(mn),isMacOS:n(gn),isLinux:n(un),isSolaris:n(hn),isFreeBSD:n(pn),isChromeOS:n(fn)}},yn={unknown:bn,nu:vn,windows:S(cn),ios:S(dn),android:S(mn),linux:S(un),macos:S(gn),solaris:S(hn),freebsd:S(pn),chromeos:S(fn)},wn=(e,t,o)=>{const n=Jo.browsers(),r=Jo.oses(),s=t.bind(e=>jo(n,e)).orThunk(()=>Wo(n,e)).fold(ln.unknown,ln.nu),a=qo(r,e).fold(yn.unknown,yn.nu),i=Io(a,s,e,o);return{browser:s,os:a,deviceType:i}},xn={detect:wn},Cn=e=>window.matchMedia(e).matches;let Sn=Ho(()=>xn.detect(navigator.userAgent,R.from(navigator.userAgentData),Cn));const kn=()=>Sn(),_n=(e,t,o,n,r,s,a)=>({target:e,x:t,y:o,stop:n,prevent:r,kill:s,raw:a}),On=e=>{const t=Qe.fromDom(Gt(e).getOr(e.target)),o=()=>e.stopPropagation(),n=()=>e.preventDefault(),r=x(n,o);return _n(t,e.clientX,e.clientY,o,n,r,e)},Tn=(e,t)=>o=>{e(o)&&t(On(o))},En=(e,t,o,n,r)=>{const s=Tn(o,n);return e.dom.addEventListener(t,s,r),{unbind:O(Mn,e,t,s,r)}},Dn=(e,t,o,n)=>En(e,t,o,n,!1),An=(e,t,o,n)=>En(e,t,o,n,!0),Mn=(e,t,o,n)=>{e.dom.removeEventListener(t,o,n)},Nn=(e,t)=>{const o=Mt(e);o.each(o=>{o.dom.insertBefore(t.dom,e.dom)})},Rn=(e,t)=>{const o=Bt(e);o.fold(()=>{const o=Mt(e);o.each(e=>{Ln(e,t)})},e=>{Nn(e,t)})},Bn=(e,t)=>{const o=It(e);o.fold(()=>{Ln(e,t)},o=>{e.dom.insertBefore(t.dom,o.dom)})},Ln=(e,t)=>{e.dom.appendChild(t.dom)},Hn=(e,t,o)=>{Ht(e,o).fold(()=>{Ln(e,t)},e=>{Nn(e,t)})},In=(e,t)=>{j(t,t=>{Ln(e,t)})},Pn=e=>{e.dom.textContent="",j(Lt(e),e=>{zn(e)})},zn=e=>{const t=e.dom;null!==t.parentNode&&t.parentNode.removeChild(t)},Fn=e=>{const t=void 0!==e?e.dom:document,o=t.body.scrollLeft||t.documentElement.scrollLeft,n=t.body.scrollTop||t.documentElement.scrollTop;return Oo(o,n)},Vn=(e,t,o)=>{const n=void 0!==o?o.dom:document,r=n.defaultView;r&&r.scrollTo(e,t)},Zn=e=>{const t=void 0===e?window:e;return kn().browser.isFirefox()?R.none():R.from(t.visualViewport)},Un=(e,t,o,n)=>({x:e,y:t,width:o,height:n,right:e+o,bottom:t+n}),jn=e=>{const t=void 0===e?window:e,o=t.document,n=Fn(Qe.fromDom(o));return Zn(t).fold(()=>{const e=t.document.documentElement,o=e.clientWidth,r=e.clientHeight;return Un(n.left,n.top,o,r)},e=>Un(Math.max(e.pageLeft,n.left),Math.max(e.pageTop,n.top),e.width,e.height))},$n=()=>Qe.fromDom(document),Wn=(e,t)=>{const o=e.view(t);return o.fold(S([]),t=>{const o=e.owner(t),n=Wn(e,o);return[t].concat(n)})},qn=(e,t)=>{const o=t.owner(e),n=Wn(t,o);return R.some(n)},Gn=e=>{var t;const o=e.dom===document?R.none():R.from(null===(t=e.dom.defaultView)||void 0===t?void 0:t.frameElement);return o.map(Qe.fromDom)},Kn=e=>Tt(e);var Yn=Object.freeze({__proto__:null,view:Gn,owner:Kn});const Xn=e=>{const t=$n(),o=Fn(t),n=qn(e,Yn);return n.fold(O(Do,e),t=>{const n=Ao(e),r=G(t,(e,t)=>{const o=Ao(t);return{left:e.left+o.left,top:e.top+o.top}},{left:0,top:0});return Oo(r.left+n.left+o.left,r.top+n.top+o.top)})},Jn=(e,t,o)=>({point:e,width:t,height:o}),Qn=(e,t,o,n)=>({x:e,y:t,width:o,height:n}),er=(e,t,o,n)=>({x:e,y:t,width:o,height:n,right:e+o,bottom:t+n}),tr=e=>{const t=Do(e),o=Bo(e),n=So(e);return er(t.left,t.top,o,n)},or=e=>{const t=Xn(e),o=Bo(e),n=So(e);return er(t.left,t.top,o,n)},nr=()=>jn(window),rr=e=>{const t=t=>t(e),o=S(e),n=()=>r,r={tag:!0,inner:e,fold:(t,o)=>o(e),isValue:M,isError:A,map:t=>ir.value(t(e)),mapError:n,bind:t,exists:t,forall:t,getOr:o,or:n,getOrThunk:o,orThunk:n,getOrDie:o,each:t=>{t(e)},toOptional:()=>R.some(e)};return r},sr=e=>{const t=()=>o,o={tag:!1,inner:e,fold:(t,o)=>t(e),isValue:A,isError:M,map:t,mapError:t=>ir.error(t(e)),bind:t,exists:A,forall:M,getOr:k,or:k,getOrThunk:D,orThunk:D,getOrDie:E(String(e)),each:y,toOptional:R.none};return o},ar=(e,t)=>e.fold(()=>sr(t),rr),ir={value:rr,error:sr,fromOption:ar};var lr;(function(e){e[e["Error"]=0]="Error",e[e["Value"]=1]="Value"})(lr||(lr={}));const cr=(e,t,o)=>e.stype===lr.Error?t(e.serror):o(e.svalue),dr=e=>{const t=[],o=[];return j(e,e=>{cr(e,e=>o.push(e),e=>t.push(e))}),{values:t,errors:o}},mr=(e,t)=>e.stype===lr.Error?{stype:lr.Error,serror:t(e.serror)}:e,ur=(e,t)=>e.stype===lr.Value?{stype:lr.Value,svalue:t(e.svalue)}:e,gr=(e,t)=>e.stype===lr.Value?t(e.svalue):e,hr=(e,t)=>e.stype===lr.Error?t(e.serror):e,pr=e=>({stype:lr.Value,svalue:e}),fr=e=>({stype:lr.Error,serror:e}),br=e=>cr(e,ir.error,ir.value),vr=e=>e.fold(fr,pr),yr={fromResult:vr,toResult:br,svalue:pr,partition:dr,serror:fr,bind:gr,bindError:hr,map:ur,mapError:mr,fold:cr},wr=(e,t,o,n)=>({tag:"field",key:e,newKey:t,presence:o,prop:n}),xr=(e,t)=>({tag:"custom",newKey:e,instantiator:t}),Cr=(e,t,o)=>{switch(e.tag){case"field":return t(e.key,e.newKey,e.presence,e.prop);case"custom":return o(e.newKey,e.instantiator)}},Sr=(e,t)=>t,kr=(e,t)=>{const o=c(e)&&c(t);return o?Or(e,t):t},_r=e=>(...t)=>{if(0===t.length)throw new Error("Can't merge zero objects");const o={};for(let n=0;n({tag:"required",process:{}}),Dr=e=>({tag:"defaultedThunk",process:e}),Ar=e=>Dr(S(e)),Mr=()=>({tag:"option",process:{}}),Nr=e=>({tag:"mergeWithThunk",process:e}),Rr=e=>Nr(S(e)),Br=(e,t)=>e.length>0?yr.svalue(Or(t,Tr.apply(void 0,e))):yr.svalue(t),Lr=e=>x(yr.serror,Q)(e),Hr=(e,t)=>{const o=yr.partition(e);return o.errors.length>0?Lr(o.errors):Br(o.values,t)},Ir=e=>{const t=yr.partition(e);return t.errors.length>0?Lr(t.errors):yr.svalue(t.values)},Pr={consolidateObj:Hr,consolidateArr:Ir},zr=e=>l(e)&&ue(e).length>100?" removed due to size":JSON.stringify(e,null,2),Fr=e=>{const t=e.length>10?e.slice(0,10).concat([{path:[],getErrorInfo:S("... (only showing first ten failures)")}]):e;return U(t,e=>"Failed path: ("+e.path.join(" > ")+")\n"+e.getErrorInfo())},Vr=(e,t)=>yr.serror([{path:e,getErrorInfo:t}]),Zr=(e,t,o)=>Vr(e,()=>'Could not find valid *required* value for "'+t+'" in '+zr(o)),Ur=(e,t)=>Vr(e,()=>'Choice schema did not contain choice key: "'+t+'"'),jr=(e,t,o)=>Vr(e,()=>'The chosen schema: "'+o+'" did not exist in branches: '+zr(t)),$r=(e,t)=>Vr(e,()=>"There are unsupported fields: ["+t.join(", ")+"] specified"),Wr=(e,t)=>Vr(e,S(t)),qr=e=>{const t=(t,o)=>yr.bindError(e(o),e=>Wr(t,e)),o=S("val");return{extract:t,toString:o}},Gr=qr(yr.svalue),Kr=(e,t,o,n)=>ke(t,o).fold(()=>Zr(e,o,t),n),Yr=(e,t,o,n)=>{const r=ke(e,t).getOrThunk(()=>o(e));return n(r)},Xr=(e,t,o)=>o(ke(e,t)),Jr=(e,t,o,n)=>{const r=ke(e,t).map(t=>!0===t?o(e):t);return n(r)},Qr=(e,t,o,n,r)=>{const s=e=>r.extract(t.concat([n]),e),a=e=>e.fold(()=>yr.svalue(R.none()),e=>{const o=r.extract(t.concat([n]),e);return yr.map(o,R.some)});switch(e.tag){case"required":return Kr(t,o,n,s);case"defaultedThunk":return Yr(o,n,e.process,s);case"option":return Xr(o,n,a);case"defaultedOptionThunk":return Jr(o,n,e.process,a);case"mergeWithThunk":return Yr(o,n,S({}),t=>{const n=Or(e.process(o),t);return s(n)})}},es=(e,t,o)=>{const n={},r=[];for(const s of o)Cr(s,(o,s,a,i)=>{const l=Qr(a,e,t,o,i);yr.fold(l,e=>{r.push(...e)},e=>{n[s]=e})},(e,o)=>{n[e]=o(t)});return r.length>0?yr.serror(r):yr.svalue(n)},ts=e=>{const t=(t,o)=>e().extract(t,o),o=()=>e().toString();return{extract:t,toString:o}},os=e=>ue(we(e,p)),ns=e=>{const t=rs(e),o=G(e,(e,t)=>Cr(t,t=>Or(e,{[t]:!0}),S(e)),{}),n=(e,n)=>{const r=u(n)?[]:os(n),s=q(r,e=>!Oe(o,e));return 0===s.length?t.extract(e,n):$r(e,s)};return{extract:n,toString:t.toString}},rs=e=>{const t=(t,o)=>es(t,o,e),o=()=>{const t=U(e,e=>Cr(e,(e,t,o,n)=>e+" -> "+n.toString(),(e,t)=>"state("+e+")"));return"obj{\n"+t.join("\n")+"}"};return{extract:t,toString:o}},ss=e=>{const t=(t,o)=>{const n=U(o,(o,n)=>e.extract(t.concat(["["+n+"]"]),o));return Pr.consolidateArr(n)},o=()=>"array("+e.toString()+")";return{extract:t,toString:o}},as=(e,t)=>{const o=void 0!==t?t:k,n=(t,n)=>{const r=[];for(const s of e){const e=s.extract(t,n);if(e.stype===lr.Value)return{stype:lr.Value,svalue:o(e.svalue)};r.push(e)}return Pr.consolidateArr(r)},r=()=>"oneOf("+U(e,e=>e.toString()).join(", ")+")";return{extract:n,toString:r}},is=(e,t)=>{const o=(t,o)=>ss(qr(e)).extract(t,o),n=(e,n)=>{const r=ue(n),s=o(e,r);return yr.bind(s,o=>{const r=U(o,e=>wr(e,e,Er(),t));return rs(r).extract(e,n)})},r=()=>"setOf("+t.toString()+")";return{extract:n,toString:r}},ls=(e,t)=>{const o=Ho(t),n=(e,t)=>o().extract(e,t),r=()=>o().toString();return{extract:n,toString:r}},cs=x(ss,rs),ds=S(Gr),ms=(e,t)=>qr(o=>{const n=typeof o;return e(o)?yr.svalue(o):yr.serror(`Expected type: ${t} but got: ${n}`)}),us=ms(b,"number"),gs=ms(i,"string"),hs=ms(u,"boolean"),ps=ms(f,"function"),fs=e=>{if(Object(e)!==e)return!0;switch({}.toString.call(e).slice(8,-1)){case"Boolean":case"Number":case"String":case"Date":case"RegExp":case"Blob":case"FileList":case"ImageData":case"ImageBitmap":case"ArrayBuffer":return!0;case"Array":case"Object":return Object.keys(e).every(t=>fs(e[t]));default:return!1}},bs=qr(e=>fs(e)?yr.svalue(e):yr.serror("Expected value to be acceptable for sending via postMessage")),vs=(e,t,o,n)=>{const r=ke(o,n);return r.fold(()=>jr(e,o,n),o=>o.extract(e.concat(["branch: "+n]),t))},ys=(e,t)=>{const o=(o,n)=>{const r=ke(n,e);return r.fold(()=>Ur(o,e),e=>vs(o,n,t,e))},n=()=>"chooseOn("+e+"). Possible values: "+ue(t);return{extract:o,toString:n}},ws=()=>ss(Gr),xs=e=>qr(t=>e(t).fold(yr.serror,yr.svalue)),Cs=(e,t)=>is(t=>yr.fromResult(e(t)),t),Ss=(e,t,o)=>{const n=t.extract([e],o);return yr.mapError(n,e=>({input:o,errors:e}))},ks=(e,t,o)=>yr.toResult(Ss(e,t,o)),_s=e=>e.fold(e=>{throw new Error(Ts(e))},k),Os=(e,t,o)=>_s(ks(e,t,o)),Ts=e=>"Errors: \n"+Fr(e.errors).join("\n")+"\n\nInput object: "+zr(e.input),Es=(e,t)=>ys(e,pe(t,rs)),Ds=(e,t)=>ls(e,t),As=wr,Ms=xr,Ns=e=>xs(t=>z(e,t)?ir.value(t):ir.error(`Unsupported value: "${t}", choose one of "${e.join(", ")}".`)),Rs=e=>As(e,e,Er(),ds()),Bs=(e,t)=>As(e,e,Er(),t),Ls=e=>Bs(e,us),Hs=e=>Bs(e,gs),Is=(e,t)=>As(e,e,Er(),Ns(t)),Ps=e=>Bs(e,hs),zs=e=>Bs(e,ps),Fs=(e,t)=>As(e,e,Mr(),qr(o=>yr.serror("The field: "+e+" is forbidden. "+t))),Vs=(e,t)=>As(e,e,Er(),rs(t)),Zs=(e,t)=>As(e,e,Er(),cs(t)),Us=(e,t)=>As(e,e,Er(),ss(t)),js=e=>As(e,e,Mr(),ds()),$s=(e,t)=>As(e,e,Mr(),t),Ws=e=>$s(e,us),qs=e=>$s(e,gs),Gs=(e,t)=>$s(e,Ns(t)),Ks=e=>$s(e,ps),Ys=(e,t)=>$s(e,ss(t)),Xs=(e,t)=>$s(e,rs(t)),Js=(e,t)=>$s(e,ns(t)),Qs=(e,t)=>As(e,e,Ar(t),ds()),ea=(e,t,o)=>As(e,e,Ar(t),o),ta=(e,t)=>ea(e,t,us),oa=(e,t)=>ea(e,t,gs),na=(e,t,o)=>ea(e,t,Ns(o)),ra=(e,t)=>ea(e,t,hs),sa=(e,t)=>ea(e,t,ps),aa=(e,t)=>ea(e,t,bs),ia=(e,t,o)=>ea(e,t,ss(o)),la=(e,t,o)=>ea(e,t,rs(o)),ca=e=>{let t=e;const o=()=>t,n=e=>{t=e};return{get:o,set:n}},da=e=>{if(!d(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=[],o={};return j(e,(n,r)=>{const s=ue(n);if(1!==s.length)throw new Error("one and only one name per case");const a=s[0],i=n[a];if(void 0!==o[a])throw new Error("duplicate key detected:"+a);if("cata"===a)throw new Error("cannot have a case named cata (sorry)");if(!d(i))throw new Error("case arguments must be an array");t.push(a),o[a]=(...o)=>{const n=o.length;if(n!==i.length)throw new Error("Wrong number of arguments to case "+a+". Expected "+i.length+" ("+i+"), got "+n);const s=e=>{const n=ue(e);if(t.length!==n.length)throw new Error("Wrong number of arguments to match. Expected: "+t.join(",")+"\nActual: "+n.join(","));const r=te(t,e=>z(n,e));if(!r)throw new Error("Not all branches were specified when using match. Specified: "+n.join(", ")+"\nRequired: "+t.join(", "));return e[a].apply(null,o)};return{fold:(...t)=>{if(t.length!==e.length)throw new Error("Wrong number of arguments to fold. Expected "+e.length+", got "+t.length);const n=t[r];return n.apply(null,o)},match:s,log:e=>{console.log(e,{constructors:t,constructor:a,params:o})}}}}),o},ma={generate:da};ma.generate([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const ua=e=>{const t=[],o=[];return j(e,e=>{e.fold(e=>{t.push(e)},e=>{o.push(e)})}),{errors:t,values:o}},ga=(e,t)=>{const o={};return he(e,(e,n)=>{z(t,n)||(o[n]=e)}),o},ha=(e,t)=>({[e]:t}),pa=e=>{const t={};return j(e,e=>{t[e.key]=e.value}),t},fa=(e,t)=>ga(e,t),ba=(e,t)=>ha(e,t),va=e=>pa(e),ya=(e,t)=>0===e.length?ir.value(t):ir.value(Or(t,Tr.apply(void 0,e))),wa=e=>ir.error(Q(e)),xa=(e,t)=>{const o=ua(e);return o.errors.length>0?wa(o.errors):ya(o.values,t)},Ca=e=>f(e)?e:A,Sa=(e,t,o)=>{let n=e.dom;const r=Ca(o);while(n.parentNode){n=n.parentNode;const e=Qe.fromDom(n),o=t(e);if(o.isSome())return o;if(r(e))break}return R.none()},ka=(e,t,o)=>{const n=t(e),r=Ca(o);return n.orThunk(()=>r(e)?R.none():Sa(e,t,r))},_a=(e,t)=>_t(e.element,t.event.target),Oa={can:M,abort:A,run:y},Ta=e=>{if(!Oe(e,"can")&&!Oe(e,"abort")&&!Oe(e,"run"))throw new Error("EventHandler defined by: "+JSON.stringify(e,null,2)+" does not have can, abort, or run!");return{...Oa,...e}},Ea=(e,t)=>(...o)=>K(e,(e,n)=>e&&t(n).apply(void 0,o),!0),Da=(e,t)=>(...o)=>K(e,(e,n)=>e||t(n).apply(void 0,o),!1),Aa=e=>f(e)?{can:M,abort:A,run:e}:e,Ma=e=>{const t=Ea(e,e=>e.can),o=Da(e,e=>e.abort),n=(...t)=>{j(e,e=>{e.run.apply(void 0,t)})};return{can:t,abort:o,run:n}},Na=S,Ra=Na("touchstart"),Ba=Na("touchmove"),La=Na("touchend"),Ha=Na("touchcancel"),Ia=Na("mousedown"),Pa=Na("mousemove"),za=Na("mouseout"),Fa=Na("mouseup"),Va=Na("mouseover"),Za=Na("focusin"),Ua=Na("focusout"),ja=Na("keydown"),$a=Na("keyup"),Wa=Na("input"),qa=Na("change"),Ga=Na("click"),Ka=Na("transitioncancel"),Ya=Na("transitionend"),Xa=Na("transitionstart"),Ja=Na("selectstart"),Qa=e=>S("alloy."+e),ei={tap:Qa("tap")},ti=Qa("focus"),oi=Qa("blur.post"),ni=Qa("paste.post"),ri=Qa("receive"),si=Qa("execute"),ai=Qa("focus.item"),ii=ei.tap,li=Qa("longpress"),ci=Qa("sandbox.close"),di=Qa("typeahead.cancel"),mi=Qa("system.init"),ui=Qa("system.touchmove"),gi=Qa("system.touchend"),hi=Qa("system.scroll"),pi=Qa("system.resize"),fi=Qa("system.attached"),bi=Qa("system.detached"),vi=Qa("system.dismissRequested"),yi=Qa("system.repositionRequested"),wi=Qa("focusmanager.shifted"),xi=Qa("slotcontainer.visibility"),Ci=Qa("change.tab"),Si=Qa("dismiss.tab"),ki=Qa("highlight"),_i=Qa("dehighlight"),Oi=(e,t)=>{Ai(e,e.element,t,{})},Ti=(e,t,o)=>{Ai(e,e.element,t,o)},Ei=e=>{Oi(e,si())},Di=(e,t,o)=>{Ai(e,t,o,{})},Ai=(e,t,o,n)=>{const r={target:t,...n};e.getSystem().triggerEvent(o,t,r)},Mi=(e,t,o,n)=>{const r={...n,target:t};e.getSystem().triggerEvent(o,t,r)},Ni=(e,t,o,n)=>{e.getSystem().triggerEvent(o,t,n.event)},Ri=e=>va(e),Bi=(e,t)=>({key:e,value:Ta({abort:t})}),Li=(e,t)=>({key:e,value:Ta({can:t})}),Hi=e=>({key:e,value:Ta({run:(e,t)=>{t.event.prevent()}})}),Ii=(e,t)=>({key:e,value:Ta({run:t})}),Pi=(e,t,o)=>({key:e,value:Ta({run:(e,n)=>{t.apply(void 0,[e,n].concat(o))}})}),zi=e=>t=>Ii(e,t),Fi=e=>t=>({key:e,value:Ta({run:(e,o)=>{_a(e,o)&&t(e,o)}})}),Vi=(e,t)=>Ii(e,(o,n)=>{o.getSystem().getByUid(t).each(t=>{Ni(t,t.element,e,n)})}),Zi=(e,t,o)=>{const n=t.partUids[o];return Vi(e,n)},Ui=(e,t)=>Ii(e,(e,o)=>{const n=o.event,r=e.getSystem().getByDom(n.target).getOrThunk(()=>{const t=ka(n.target,t=>e.getSystem().getByDom(t).toOptional(),A);return t.getOr(e)});t(e,r,o)}),ji=e=>Ii(e,(e,t)=>{t.cut()}),$i=e=>Ii(e,(e,t)=>{t.stop()}),Wi=(e,t)=>Fi(e)(t),qi=Fi(fi()),Gi=Fi(bi()),Ki=Fi(mi()),Yi=zi(si()),Xi=(e,t)=>{const o=t||document,n=o.createElement("div");return n.innerHTML=e,Lt(Qe.fromDom(n))},Ji=e=>e.dom.innerHTML,Qi=(e,t)=>{const o=Tt(e),n=o.dom,r=Qe.fromDom(n.createDocumentFragment()),s=Xi(t,n);In(r,s),Pn(e),Ln(e,r)},el=e=>{const t=Qe.fromTag("div"),o=Qe.fromDom(e.dom.cloneNode(!0));return Ln(t,o),Ji(t)},tl=(e,t)=>Qe.fromDom(e.dom.cloneNode(t)),ol=e=>tl(e,!1),nl=e=>{if(Ft(e))return"#shadow-root";{const t=ol(e);return el(t)}},rl=e=>nl(e),sl=(e,t,o)=>_t(t,e.element)&&!_t(t,o),al=Ri([Li(ti(),(e,t)=>{const o=t.event,n=o.originator,r=o.target;return!sl(e,n,r)||(console.warn(ti()+" did not get interpreted by the desired target. \nOriginator: "+rl(n)+"\nTarget: "+rl(r)+"\nCheck the "+ti()+" event handlers"),!1)})]);var il=Object.freeze({__proto__:null,events:al});let ll=0;const cl=e=>{const t=new Date,o=t.getTime(),n=Math.floor(1e9*Math.random());return ll++,e+"_"+n+ll+String(o)},dl=S("alloy-id-"),ml=S("data-alloy-id"),ul=dl(),gl=ml(),hl=(e,t)=>{const o=cl(ul+e);return pl(t,o),o},pl=(e,t)=>{Object.defineProperty(e.dom,gl,{value:t,writable:!0})},fl=e=>{const t=ft(e)?e.dom[gl]:null;return R.from(t)},bl=e=>cl(e),vl=k,yl=e=>{const t=t=>`The component must be in a context to execute: ${t}`+(e?"\n"+rl(e().element)+" is not in context.":""),o=e=>()=>{throw new Error(t(e))},n=e=>()=>{console.warn(t(e))};return{debugInfo:S("fake"),triggerEvent:n("triggerEvent"),triggerFocus:n("triggerFocus"),triggerEscape:n("triggerEscape"),broadcast:n("broadcast"),broadcastOn:n("broadcastOn"),broadcastEvent:n("broadcastEvent"),build:o("build"),buildOrPatch:o("buildOrPatch"),addToWorld:o("addToWorld"),removeFromWorld:o("removeFromWorld"),addToGui:o("addToGui"),removeFromGui:o("removeFromGui"),getByUid:o("getByUid"),getByDom:o("getByDom"),isConnected:A}},wl=yl(),xl=(e,t,o)=>{const n=o.toString(),r=n.indexOf(")")+1,s=n.indexOf("("),a=n.substring(s+1,r-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:t,parameters:Cl(a.slice(0,1).concat(a.slice(3)))}),e},Cl=e=>U(e,e=>Ze(e,"/*")?e.substring(0,e.length-2):e),Sl=(e,t)=>{const o=e.toString(),n=o.indexOf(")")+1,r=o.indexOf("("),s=o.substring(r+1,n-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:t,parameters:Cl(s)}),e},kl=(e,t)=>{const o=t.toString(),n=o.indexOf(")")+1,r=o.indexOf("("),s=o.substring(r+1,n-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:"OVERRIDE",parameters:Cl(s.slice(1))}),e},_l=cl("alloy-premade"),Ol=e=>(Object.defineProperty(e.element.dom,_l,{value:e.uid,writable:!0}),ba(_l,e)),Tl=e=>_e(e.dom,_l),El=e=>ke(e,_l),Dl=e=>kl((t,...o)=>e(t.getApis(),t,...o),e),Al={init:()=>Ml({readState:S("No State required")})},Ml=e=>e,Nl=(e,t)=>{const o=U(t,e=>Xs(e.name(),[Rs("config"),Qs("state",Al)])),n=ks("component.behaviours",rs(o),e.behaviours).fold(t=>{throw new Error(Ts(t)+"\nComplete spec:\n"+JSON.stringify(e,null,2))},k);return{list:t,data:pe(n,e=>{const t=e.map(e=>({config:e.config,state:e.state.init(e.config)}));return S(t)})}},Rl=e=>e.list,Bl=e=>e.data,Ll=(e,t)=>{const o={};return he(e,(e,n)=>{he(e,(e,r)=>{const s=ke(o,r).getOr([]);o[r]=s.concat([t(n,e)])})}),o},Hl=e=>({classes:g(e.classes)?[]:e.classes,attributes:g(e.attributes)?{}:e.attributes,styles:g(e.styles)?{}:e.styles}),Il=(e,t)=>({...e,attributes:{...e.attributes,...t.attributes},styles:{...e.styles,...t.styles},classes:e.classes.concat(t.classes)}),Pl=(e,t,o,n)=>{const r={...t};j(o,t=>{r[t.name()]=t.exhibit(e,n)});const s=Ll(r,(e,t)=>({name:e,modification:t})),a=e=>G(e,(e,t)=>({...t.modification,...e}),{}),i=G(s.classes,(e,t)=>t.modification.concat(e),[]),l=a(s.attributes),c=a(s.styles);return Hl({classes:i,attributes:l,styles:c})},zl=(e,t,o,n)=>{try{const r=ae(o,(o,r)=>{const s=o[t],a=r[t],i=n.indexOf(s),l=n.indexOf(a);if(-1===i)throw new Error("The ordering for "+e+" does not have an entry for "+s+".\nOrder specified: "+JSON.stringify(n,null,2));if(-1===l)throw new Error("The ordering for "+e+" does not have an entry for "+a+".\nOrder specified: "+JSON.stringify(n,null,2));return i({handler:e,purpose:t}),Vl=(e,t)=>({cHandler:e,purpose:t}),Zl=(e,t)=>Vl(O.apply(void 0,[e.handler].concat(t)),e.purpose),Ul=e=>e.cHandler,jl=(e,t)=>({name:e,handler:t}),$l=(e,t)=>{const o={};return j(e,e=>{o[e.name()]=e.handlers(t)}),o},Wl=(e,t,o)=>{const n={...o,...$l(t,e)};return Ll(n,jl)},ql=(e,t,o,n)=>{const r=Wl(e,o,n);return Xl(r,t)},Gl=e=>{const t=Aa(e);return(e,o,...n)=>{const r=[e,o].concat(n);t.abort.apply(void 0,r)?o.stop():t.can.apply(void 0,r)&&t.run.apply(void 0,r)}},Kl=(e,t)=>ir.error(["The event ("+e+') has more than one behaviour that listens to it.\nWhen this occurs, you must specify an event ordering for the behaviours in your spec (e.g. [ "listing", "toggling" ]).\nThe behaviours that can trigger it are: '+JSON.stringify(U(t,e=>e.name),null,2)]),Yl=(e,t,o)=>{const n=t[o];return n?zl("Event: "+o,"name",e,n).map(e=>{const t=U(e,e=>e.handler);return Ma(t)}):Kl(o,e)},Xl=(e,t)=>{const o=xe(e,(e,o)=>{const n=1===e.length?ir.value(e[0].handler):Yl(e,t,o);return n.map(n=>{const r=Gl(n),s=e.length>1?q(t[o],t=>F(e,e=>e.name===t)).join(" > "):e[0].name;return ba(o,Fl(r,s))})});return xa(o,{})},Jl="alloy.base.behaviour",Ql=rs([As("dom","dom",Er(),rs([Rs("tag"),Qs("styles",{}),Qs("classes",[]),Qs("attributes",{}),js("value"),js("innerHtml")])),Rs("components"),Rs("uid"),Qs("events",{}),Qs("apis",{}),As("eventOrder","eventOrder",Rr({[si()]:["disabling",Jl,"toggling","typeaheadevents"],[ti()]:[Jl,"focusing","keying"],[mi()]:[Jl,"disabling","toggling","representing"],[Wa()]:[Jl,"representing","streaming","invalidating"],[bi()]:[Jl,"representing","item-events","tooltipping"],[Ia()]:["focusing",Jl,"item-type-events"],[Ra()]:["focusing",Jl,"item-type-events"],[Va()]:["item-type-events","tooltipping"],[ri()]:["receiving","reflecting","tooltipping"]}),ds()),js("domModification")]),ec=e=>ks("custom.definition",Ql,e),tc=e=>({...e.dom,uid:e.uid,domChildren:U(e.components,e=>e.element)}),oc=e=>e.domModification.fold(()=>Hl({}),Hl),nc=e=>e.events,rc=(e,t)=>{const o=oo(e,t);return void 0===o||""===o?[]:o.split(" ")},sc=(e,t,o)=>{const n=rc(e,t),r=n.concat([o]);return eo(e,t,r.join(" ")),!0},ac=(e,t,o)=>{const n=q(rc(e,t),e=>e!==o);return n.length>0?eo(e,t,n.join(" ")):so(e,t),!1},ic=e=>void 0!==e.dom.classList,lc=e=>rc(e,"class"),cc=(e,t)=>sc(e,"class",t),dc=(e,t)=>ac(e,"class",t),mc=(e,t)=>{ic(e)?e.dom.classList.add(t):cc(e,t)},uc=e=>{const t=ic(e)?e.dom.classList:lc(e);0===t.length&&so(e,"class")},gc=(e,t)=>{if(ic(e)){const o=e.dom.classList;o.remove(t)}else dc(e,t);uc(e)},hc=(e,t)=>ic(e)&&e.dom.classList.contains(t),pc=(e,t)=>{j(t,t=>{mc(e,t)})},fc=(e,t)=>{j(t,t=>{gc(e,t)})},bc=(e,t)=>te(t,t=>hc(e,t)),vc=e=>{const t=e.dom.classList,o=new Array(t.length);for(let n=0;nic(e)?vc(e):lc(e),wc=e=>e.dom.value,xc=(e,t)=>{if(void 0===t)throw new Error("Value.set was undefined");e.dom.value=t},Cc=(e,t,o)=>{const n=Ht(e,t);return n.map(e=>{const t=o.exists(t=>!_t(t,e));if(t){const t=o.map(ut).getOr("span"),n=Qe.fromTag(t);return Nn(e,n),n}return e})},Sc=(e,t,o)=>{o.fold(()=>Ln(e,t),e=>{_t(e,t)||(Nn(e,t),zn(e))})},kc=(e,t,o)=>{const n=U(t,o),r=Lt(e);return j(r.slice(n.length),zn),n},_c=(e,t,o,n)=>{const r=Ht(e,t),s=n(o,r),a=Cc(e,t,r);return Sc(e,s.element,a),s},Oc=(e,t,o)=>kc(e,t,(t,n)=>_c(e,n,t,o)),Tc=(e,t)=>kc(e,t,(t,o)=>{const n=Ht(e,o);return Sc(e,t,n),t}),Ec=(e,t)=>{const o=ue(e),n=ue(t),r=ne(n,o),s=ye(e,(e,o)=>!_e(t,o)||e!==t[o]).t;return{toRemove:r,toSet:s}},Dc=(e,t)=>{const{class:o,style:n,...r}=ao(t),{toSet:s,toRemove:a}=Ec(e.attributes,r),i=()=>{j(a,e=>so(t,e)),to(t,s)},l=fo(t),{toSet:c,toRemove:d}=Ec(e.styles,l),m=()=>{j(d,e=>vo(t,e)),mo(t,c)},u=yc(t),g=ne(u,e.classes),h=ne(e.classes,u),p=()=>{pc(t,h),fc(t,g)},f=e=>{Qi(t,e)},b=()=>{const o=e.domChildren;Tc(t,o)},v=()=>{const o=t,n=e.value.getOrUndefined();n!==wc(o)&&xc(o,null!==n&&void 0!==n?n:"")};return i(),p(),m(),e.innerHtml.fold(b,f),v(),t},Ac=e=>{const t=Qe.fromTag(e.tag);to(t,e.attributes),pc(t,e.classes),mo(t,e.styles),e.innerHtml.each(e=>Qi(t,e));const o=e.domChildren;return In(t,o),e.value.each(e=>{xc(t,e)}),t},Mc=(e,t)=>{try{const o=Dc(e,t);return R.some(o)}catch(o){return R.none()}},Nc=e=>e.innerHtml.isSome()&&e.domChildren.length>0,Rc=(e,t)=>{const o=t=>ut(t)===e.tag&&!Nc(e)&&!Tl(t),n=t.filter(o).bind(t=>Mc(e,t)).getOrThunk(()=>Ac(e));return pl(n,e.uid),n},Bc=e=>{const t=ke(e,"behaviours").getOr({});return ee(ue(t),e=>{const o=t[e];return p(o)?[o.me]:[]})},Lc=(e,t)=>Nl(e,t),Hc=e=>{const t=Bc(e);return Lc(e,t)},Ic=(e,t,o)=>{const n=tc(e),r=oc(e),s={"alloy.base.modification":r},a=t.length>0?Pl(o,s,t,n):r;return Il(n,a)},Pc=(e,t,o)=>{const n={"alloy.base.behaviour":nc(e)};return ql(o,e.eventOrder,t,n).getOrDie()},zc=(e,t)=>{const o=()=>w,n=ca(wl),r=_s(ec(e)),s=Hc(e),a=Rl(s),i=Bl(s),l=Ic(r,a,i),c=Rc(l,t),d=Pc(r,a,i),m=ca(r.components),u=e=>{n.set(e)},g=()=>{n.set(yl(o))},h=()=>{const e=Lt(c),t=ee(e,e=>n.get().getByDom(e).fold(()=>[],se));m.set(t)},p=t=>{const o=i,n=f(o[t.name()])?o[t.name()]:()=>{throw new Error("Could not find "+t.name()+" in "+JSON.stringify(e,null,2))};return n()},b=e=>f(i[e.name()]),v=()=>r.apis,y=e=>i[e]().map(e=>e.state.readState()).getOr("not enabled"),w={uid:e.uid,getSystem:n.get,config:p,hasConfigured:b,spec:e,readState:y,getApis:v,connect:u,disconnect:g,element:c,syncComponents:h,components:m.get,events:d};return w},Fc=(e,t)=>{const o=ke(e,"components").getOr([]);return t.fold(()=>U(o,qc),e=>U(o,(t,o)=>Wc(t,Ht(e,o))))},Vc=(e,t)=>{const{events:o,...n}=vl(e),r=Fc(n,t),s={...n,events:{...il,...o},components:r};return ir.value(zc(s,t))},Zc=e=>{const t=Qe.fromText(e);return Uc({element:t})},Uc=e=>{const t=Os("external.component",ns([Rs("element"),js("uid")]),e),o=ca(yl()),n=e=>{o.set(e)},r=()=>{o.set(yl(()=>a))},s=t.uid.getOrThunk(()=>bl("external"));pl(t.element,s);const a={uid:s,getSystem:o.get,config:R.none,hasConfigured:A,connect:n,disconnect:r,getApis:()=>({}),element:t.element,spec:e,readState:S("No state"),syncComponents:y,components:S([]),events:{}};return Ol(a)},jc=bl,$c=e=>_e(e,"uid"),Wc=(e,t)=>El(e).getOrThunk(()=>{const o=$c(e)?e:{uid:jc(""),...e};return Vc(o,t).getOrDie()}),qc=e=>Wc(e,R.none()),Gc=Ol;var Kc=(e,t,o,n,r)=>e(o,n)?R.some(o):f(r)&&r(o)?R.none():t(o,n,r);const Yc=(e,t,o)=>{let n=e.dom;const r=f(o)?o:A;while(n.parentNode){n=n.parentNode;const e=Qe.fromDom(n);if(t(e))return R.some(e);if(r(e))break}return R.none()},Xc=(e,t,o)=>{const n=(e,t)=>t(e);return Kc(n,Yc,e,t,o)},Jc=(e,t)=>{const o=e=>t(Qe.fromDom(e)),n=X(e.dom.childNodes,o);return n.map(Qe.fromDom)},Qc=(e,t)=>{const o=e=>{for(let n=0;nXc(e,t,o).isSome(),td=(e,t,o)=>Yc(e,e=>xt(e,t),o),od=(e,t)=>Jc(e,e=>xt(e,t)),nd=(e,t)=>kt(t,e),rd=(e,t,o)=>{const n=(e,t)=>xt(e,t);return Kc(n,td,e,t,o)},sd="aria-controls",ad=e=>{const t=Xc(e,e=>{if(!ft(e))return!1;const t=oo(e,"id");return void 0!==t&&t.indexOf(sd)>-1});return t.bind(e=>{const t=oo(e,"id"),o=Ut(e);return nd(o,`[${sd}="${t}"]`)})},id=()=>{const e=cl(sd),t=t=>{eo(t,sd,e)},o=e=>{so(e,sd)};return{id:e,link:t,unlink:o}},ld=(e,t)=>ad(t).exists(t=>cd(e,t)),cd=(e,t)=>ed(t,t=>_t(t,e.element),A)||ld(e,t),dd="unknown";var md;(function(e){e[e["STOP"]=0]="STOP",e[e["NORMAL"]=1]="NORMAL",e[e["LOGGING"]=2]="LOGGING"})(md||(md={}));const ud=ca({}),gd=(e,t)=>{const o=[],n=(new Date).getTime();return{logEventCut:(e,t,n)=>{o.push({outcome:"cut",target:t,purpose:n})},logEventStopped:(e,t,n)=>{o.push({outcome:"stopped",target:t,purpose:n})},logNoParent:(e,t,n)=>{o.push({outcome:"no-parent",target:t,purpose:n})},logEventNoHandlers:(e,t)=>{o.push({outcome:"no-handlers-left",target:t})},logEventResponse:(e,t,n)=>{o.push({outcome:"response",purpose:n,target:t})},write:()=>{const r=(new Date).getTime();z(["mousemove","mouseover","mouseout",mi()],e)||console.log(e,{event:e,time:r-n,target:t.dom,sequence:U(o,e=>z(["cut","stopped","response"],e.outcome)?"{"+e.purpose+"} "+e.outcome+" at ("+rl(e.target)+")":e.outcome)})}}},hd=(e,t,o)=>{const n=ke(ud.get(),e).orThunk(()=>{const t=ue(ud.get());return me(t,t=>e.indexOf(t)>-1?R.some(ud.get()[t]):R.none())}).getOr(md.NORMAL);switch(n){case md.NORMAL:return o(yd());case md.LOGGING:{const n=gd(e,t),r=o(n);return n.write(),r}case md.STOP:return!0}},pd=["alloy/data/Fields","alloy/debugging/Debugging"],fd=()=>{const e=new Error;if(void 0!==e.stack){const t=e.stack.split("\n");return X(t,e=>e.indexOf("alloy")>0&&!F(pd,t=>e.indexOf(t)>-1)).getOr(dd)}return dd},bd={logEventCut:y,logEventStopped:y,logNoParent:y,logEventNoHandlers:y,logEventResponse:y,write:y},vd=(e,t,o)=>hd(e,t,o),yd=S(bd),wd=S([Rs("menu"),Rs("selectedMenu")]),xd=S([Rs("item"),Rs("selectedItem")]);S(rs(xd().concat(wd())));const Cd=S(rs(xd())),Sd=Vs("initSize",[Rs("numColumns"),Rs("numRows")]),kd=()=>Bs("markers",Cd()),_d=()=>Vs("markers",[Rs("backgroundMenu")].concat(wd()).concat(xd())),Od=e=>Vs("markers",U(e,Rs)),Td=(e,t,o)=>(fd(),As(t,t,o,xs(e=>ir.value((...t)=>e.apply(void 0,t))))),Ed=e=>Td("onHandler",e,Ar(y)),Dd=e=>Td("onKeyboardHandler",e,Ar(R.none)),Ad=e=>Td("onHandler",e,Er()),Md=e=>Td("onKeyboardHandler",e,Er()),Nd=(e,t)=>Ms(e,S(t)),Rd=e=>Ms(e,k),Bd=S(Sd),Ld=(e,t,o,n,r,s,a,i=!1)=>({x:e,y:t,bubble:o,direction:n,placement:r,restriction:s,label:`${a}-${r}`,alwaysFit:i}),Hd=ma.generate([{southeast:[]},{southwest:[]},{northeast:[]},{northwest:[]},{south:[]},{north:[]},{east:[]},{west:[]}]),Id=(e,t,o,n,r,s,a,i,l)=>e.fold(t,o,n,r,s,a,i,l),Pd=(e,t,o,n)=>e.fold(t,t,n,n,t,n,o,o),zd=(e,t,o,n)=>e.fold(t,n,t,n,o,o,t,n),Fd=Hd.southeast,Vd=Hd.southwest,Zd=Hd.northeast,Ud=Hd.northwest,jd=Hd.south,$d=Hd.north,Wd=Hd.east,qd=Hd.west,Gd=(e,t,o,n)=>{const r=e+t;return r>n?o:rMath.min(Math.max(e,t),o),Yd=(e,t)=>{switch(t){case 1:return e.x;case 0:return e.x+e.width;case 2:return e.y;case 3:return e.y+e.height}},Xd=(e,t)=>re(["left","right","top","bottom"],o=>ke(t,o).map(t=>Yd(e,t))),Jd=(e,t,o)=>{const n=(n,r)=>t[n].map(t=>{const s="top"===n||"bottom"===n,a=s?o.top:o.left,i="left"===n||"top"===n?Math.max:Math.min,l=i(t,r)+a;return s?Kd(l,e.y,e.bottom):Kd(l,e.x,e.right)}).getOr(r),r=n("left",e.x),s=n("top",e.y),a=n("right",e.right),i=n("bottom",e.bottom);return er(r,s,a-r,i-s)},Qd="layout",em=e=>e.x,tm=(e,t)=>e.x+e.width/2-t.width/2,om=(e,t)=>e.x+e.width-t.width,nm=(e,t)=>e.y-t.height,rm=e=>e.y+e.height,sm=(e,t)=>e.y+e.height/2-t.height/2,am=e=>e.x+e.width,im=(e,t)=>e.x-t.width,lm=(e,t,o)=>Ld(em(e),rm(e),o.southeast(),Fd(),"southeast",Xd(e,{left:1,top:3}),Qd),cm=(e,t,o)=>Ld(om(e,t),rm(e),o.southwest(),Vd(),"southwest",Xd(e,{right:0,top:3}),Qd),dm=(e,t,o)=>Ld(em(e),nm(e,t),o.northeast(),Zd(),"northeast",Xd(e,{left:1,bottom:2}),Qd),mm=(e,t,o)=>Ld(om(e,t),nm(e,t),o.northwest(),Ud(),"northwest",Xd(e,{right:0,bottom:2}),Qd),um=(e,t,o)=>Ld(tm(e,t),nm(e,t),o.north(),$d(),"north",Xd(e,{bottom:2}),Qd),gm=(e,t,o)=>Ld(tm(e,t),rm(e),o.south(),jd(),"south",Xd(e,{top:3}),Qd),hm=(e,t,o)=>Ld(am(e),sm(e,t),o.east(),Wd(),"east",Xd(e,{left:0}),Qd),pm=(e,t,o)=>Ld(im(e,t),sm(e,t),o.west(),qd(),"west",Xd(e,{right:1}),Qd),fm=()=>[lm,cm,dm,mm,gm,um,hm,pm],bm=()=>[cm,lm,mm,dm,gm,um,hm,pm],vm=()=>[dm,mm,lm,cm,um,gm],ym=()=>[mm,dm,cm,lm,um,gm],wm=()=>[lm,cm,dm,mm,gm,um],xm=()=>[cm,lm,mm,dm,gm,um],Cm=(e,t)=>t.universal?e:q(e,e=>z(t.channels,e)),Sm=e=>Ri([Ii(ri(),(t,o)=>{const n=e.channels,r=ue(n),s=o,a=Cm(r,s);j(a,e=>{const o=n[e],r=o.schema,a=Os("channel["+e+"] data\nReceiver: "+rl(t.element),r,s.data);o.onReceive(t,a)})})]);var km=Object.freeze({__proto__:null,events:Sm}),_m=[Bs("channels",Cs(ir.value,ns([Ad("onReceive"),Qs("schema",ds())])))];const Om=(e,t,o)=>Yi(n=>{o(n,e,t)}),Tm=(e,t,o)=>Ki((n,r)=>{o(n,e,t)}),Em=(e,t,o,n,r,s)=>{const a=ns(e),i=Xs(t,[Js("config",e)]);return Nm(a,i,t,o,n,r,s)},Dm=(e,t,o,n,r,s)=>{const a=e,i=Xs(t,[$s("config",e)]);return Nm(a,i,t,o,n,r,s)},Am=(e,t,o)=>{const n=(n,...r)=>{const s=[n].concat(r);return n.config({name:S(e)}).fold(()=>{throw new Error("We could not find any behaviour configuration for: "+e+". Using API: "+o)},e=>{const o=Array.prototype.slice.call(s,1);return t.apply(void 0,[n,e.config,e.state].concat(o))})};return xl(n,o,t)},Mm=e=>({key:e,value:void 0}),Nm=(e,t,o,n,r,s,a)=>{const i=e=>Oe(e,o)?e[o]():R.none(),l=pe(r,(e,t)=>Am(o,e,t)),c=pe(s,(e,t)=>Sl(e,t)),d={...c,...l,revoke:O(Mm,o),config:t=>{const n=Os(o+"-config",e,t);return{key:o,value:{config:n,me:d,configAsRaw:Ho(()=>Os(o+"-config",e,t)),initialConfig:t,state:a}}},schema:S(t),exhibit:(e,t)=>Me(i(e),ke(n,"exhibit"),(e,o)=>o(t,e.config,e.state)).getOrThunk(()=>Hl({})),name:S(o),handlers:e=>i(e).map(e=>{const t=ke(n,"events").getOr(()=>({}));return t(e.config,e.state)}).getOr({})};return d},Rm=e=>va(e),Bm=ns([Rs("fields"),Rs("name"),Qs("active",{}),Qs("apis",{}),Qs("state",Al),Qs("extra",{})]),Lm=e=>{const t=Os("Creating behaviour: "+e.name,Bm,e);return Em(t.fields,t.name,t.active,t.apis,t.extra,t.state)},Hm=ns([Rs("branchKey"),Rs("branches"),Rs("name"),Qs("active",{}),Qs("apis",{}),Qs("state",Al),Qs("extra",{})]),Im=e=>{const t=Os("Creating behaviour: "+e.name,Hm,e);return Dm(Es(t.branchKey,t.branches),t.name,t.active,t.apis,t.extra,t.state)},Pm=S(void 0),zm=Lm({fields:_m,name:"receiving",active:km}),Fm=(e,t)=>Hl({classes:[],styles:t.useFixed()?{}:{position:"relative"}});var Vm=Object.freeze({__proto__:null,exhibit:Fm});const Zm=e=>e.dom.focus(),Um=e=>e.dom.blur(),jm=e=>{const t=Ut(e).dom;return e.dom===t.activeElement},$m=(e=$n())=>R.from(e.dom.activeElement).map(Qe.fromDom),Wm=e=>$m(Ut(e)).filter(t=>e.dom.contains(t.dom)),qm=(e,t)=>{const o=Ut(t),n=$m(o).bind(e=>{const o=t=>_t(e,t);return o(t)?R.some(t):Qc(t,o)}),r=e(t);return n.each(e=>{$m(o).filter(t=>_t(t,e)).fold(()=>{Zm(e)},y)}),r},Gm=(e,t,o,n,r)=>{const s=e=>e+"px";return{position:e,left:t.map(s),top:o.map(s),right:n.map(s),bottom:r.map(s)}},Km=e=>({...e,position:R.some(e.position)}),Ym=(e,t)=>{uo(e,Km(t))},Xm=ma.generate([{none:[]},{relative:["x","y","width","height"]},{fixed:["x","y","width","height"]}]),Jm=(e,t,o,n,r,s)=>{const a=t.rect,i=a.x-o,l=a.y-n,c=a.width,d=a.height,m=r-(i+c),u=s-(l+d),g=R.some(i),h=R.some(l),p=R.some(m),f=R.some(u),b=R.none();return Id(t.direction,()=>Gm(e,g,h,b,b),()=>Gm(e,b,h,p,b),()=>Gm(e,g,b,b,f),()=>Gm(e,b,b,p,f),()=>Gm(e,g,h,b,b),()=>Gm(e,g,b,b,f),()=>Gm(e,g,h,b,b),()=>Gm(e,b,h,p,b))},Qm=(e,t)=>e.fold(()=>{const e=t.rect;return Gm("absolute",R.some(e.x),R.some(e.y),R.none(),R.none())},(e,o,n,r)=>Jm("absolute",t,e,o,n,r),(e,o,n,r)=>Jm("fixed",t,e,o,n,r)),eu=(e,t)=>{const o=O(Xn,t),n=e.fold(o,o,()=>{const e=Fn();return Xn(t).translate(-e.left,-e.top)}),r=Bo(t),s=So(t);return er(n.left,n.top,r,s)},tu=(e,t)=>t.fold(()=>e.fold(nr,nr,er),t=>e.fold(t,t,()=>{const o=t(),n=ou(e,o.x,o.y);return er(n.left,n.top,o.width,o.height)})),ou=(e,t,o)=>{const n=Oo(t,o),r=()=>{const e=Fn();return n.translate(-e.left,-e.top)};return e.fold(S(n),S(n),r)},nu=(e,t,o,n)=>e.fold(t,o,n);Xm.none;const ru=Xm.relative,su=Xm.fixed,au=(e,t)=>({anchorBox:e,origin:t}),iu=(e,t)=>au(e,t),lu="data-alloy-placement",cu=(e,t)=>{eo(e,lu,t)},du=e=>no(e,lu),mu=e=>so(e,lu),uu=ma.generate([{fit:["reposition"]},{nofit:["reposition","visibleW","visibleH","isVisible"]}]),gu=(e,t)=>{const{x:o,y:n,right:r,bottom:s}=t,{x:a,y:i,right:l,bottom:c,width:d,height:m}=e,u=a>=o&&a<=r,g=i>=n&&i<=s,h=u&&g,p=l<=r&&l>=o,f=c<=s&&c>=n,b=p&&f,v=Math.min(d,a>=o?r-a:l-o),y=Math.min(m,i>=n?s-i:c-n);return{originInBounds:h,sizeInBounds:b,visibleW:v,visibleH:y}},hu=(e,t)=>{const{x:o,y:n,right:r,bottom:s}=t,{x:a,y:i,width:l,height:c}=e,d=Math.max(o,r-l),m=Math.max(n,s-c),u=Kd(a,o,d),g=Kd(i,n,m),h=Math.min(u+l,r)-u,p=Math.min(g+c,s)-g;return er(u,g,h,p)},pu=(e,t,o)=>{const n=S(t.bottom-o.y),r=S(o.bottom-t.y),s=Pd(e,r,r,n),a=S(t.right-o.x),i=S(o.right-t.x),l=zd(e,i,i,a);return{maxWidth:l,maxHeight:s}},fu=(e,t,o,n)=>{const r=e.bubble,s=r.offset,a=Jd(n,e.restriction,s),i=e.x+s.left,l=e.y+s.top,c=er(i,l,t,o),{originInBounds:d,sizeInBounds:m,visibleW:u,visibleH:g}=gu(c,a),h=d&&m,p=h?c:hu(c,a),f=p.width>0&&p.height>0,{maxWidth:b,maxHeight:v}=pu(e.direction,p,n),y={rect:p,maxHeight:v,maxWidth:b,direction:e.direction,placement:e.placement,classes:{on:r.classesOn,off:r.classesOff},layout:e.label,testY:l};return h||e.alwaysFit?uu.fit(y):uu.nofit(y,u,g,f)},bu=(e,t,o,n,r,s)=>{const a=n.width,i=n.height,l=(t,l,c,d,m)=>{const u=t(o,n,r,e,s),g=fu(u,a,i,s);return g.fold(S(g),(e,t,o,n)=>{const r=m===n?o>d||t>c:!m&&n;return r?g:uu.nofit(l,c,d,m)})},c=K(t,(e,t)=>{const o=O(l,t);return e.fold(S(e),o)},uu.nofit({rect:o,maxHeight:n.height,maxWidth:n.width,direction:Fd(),placement:"southeast",classes:{on:[],off:[]},layout:"none",testY:o.y},-1,-1,!1));return c.fold(k,k)},vu=e=>{const t=ca(R.none()),o=()=>t.get().each(e),n=()=>{o(),t.set(R.none())},r=()=>t.get().isSome(),s=()=>t.get(),a=e=>{o(),t.set(R.some(e))};return{clear:n,isSet:r,get:s,set:a}},yu=()=>vu(e=>e.destroy()),wu=()=>vu(e=>e.unbind()),xu=()=>{const e=vu(y),t=t=>e.get().each(t);return{...e,on:t}},Cu=M,Su=(e,t,o)=>Dn(e,t,Cu,o),ku=(e,t,o)=>An(e,t,Cu,o),_u=On,Ou=["top","bottom","right","left"],Tu="data-alloy-transition-timer",Eu=(e,t)=>bc(e,t.classes),Du=(e,t,o)=>o.exists(o=>{const n=e.mode;return"all"===n||o[n]!==t[n]}),Au=(e,t)=>{const o=e=>parseFloat(e).toFixed(3);return Ce(t,(t,n)=>{const r=e[n].map(o),s=t.map(o);return!Ee(r,s)}).isSome()},Mu=e=>{const t=t=>{const o=go(e,t),n=o.split(/\s*,\s*/);return q(n,$e)},o=e=>{if(i(e)&&/^[\d.]+/.test(e)){const t=parseFloat(e);return Ze(e,"ms")?t:1e3*t}return 0},n=t("transition-delay"),r=t("transition-duration");return K(r,(e,t,r)=>{const s=o(n[r])+o(t);return Math.max(e,s)},0)},Nu=(e,t)=>{const o=wu(),n=wu();let r;const s=t=>{var o;const n=null!==(o=t.raw.pseudoElement)&&void 0!==o?o:"";return _t(t.target,e)&&We(n)&&z(Ou,t.raw.propertyName)},a=a=>{if(h(a)||s(a)){o.clear(),n.clear();const s=null===a||void 0===a?void 0:a.raw.type;(h(s)||s===Ya())&&(clearTimeout(r),so(e,Tu),fc(e,t.classes))}},i=Su(e,Xa(),t=>{s(t)&&(i.unbind(),o.set(Su(e,Ya(),a)),n.set(Su(e,Ka(),a)))}),l=Mu(e);requestAnimationFrame(()=>{r=setTimeout(a,l+17),eo(e,Tu,r)})},Ru=(e,t)=>{pc(e,t.classes),no(e,Tu).each(t=>{clearTimeout(parseInt(t,10)),so(e,Tu)}),Nu(e,t)},Bu=(e,t,o,n,r,s)=>{const a=Du(n,r,s);if(a||Eu(e,n)){co(e,"position",o.position);const s=eu(t,e),i=Qm(t,{...r,rect:s}),l=re(Ou,e=>i[e]);Au(o,l)&&(uo(e,l),a&&Ru(e,n),yo(e))}else fc(e,n.classes)},Lu=e=>({width:Bo(e),height:So(e)}),Hu=(e,t,o,n)=>{vo(t,"max-height"),vo(t,"max-width");const r=Lu(t);return bu(t,n.preference,e,r,o,n.bounds)},Iu=(e,t)=>{const o=t.classes;fc(e,o.off),pc(e,o.on)},Pu=(e,t,o)=>{const n=o.maxHeightFunction;n(e,t.maxHeight)},zu=(e,t,o)=>{const n=o.maxWidthFunction;n(e,t.maxWidth)},Fu=(e,t,o)=>{const n=Qm(o.origin,t);o.transition.each(r=>{Bu(e,o.origin,n,r,t,o.lastPlacement)}),Ym(e,n)},Vu=(e,t)=>{cu(e,t.placement)},Zu=(e,t)=>{ko(e,Math.floor(t))},Uu=S((e,t)=>{Zu(e,t),mo(e,{"overflow-x":"hidden","overflow-y":"auto"})}),ju=S((e,t)=>{Zu(e,t)}),$u=(e,t,o)=>void 0===e[t]?o:e[t],Wu=(e,t,o,n,r,s,a,i)=>{const l=$u(a,"maxHeightFunction",Uu()),c=$u(a,"maxWidthFunction",y),d=e.anchorBox,m=e.origin,u={bounds:tu(m,s),origin:m,preference:n,maxHeightFunction:l,maxWidthFunction:c,lastPlacement:r,transition:i};return qu(d,t,o,u)},qu=(e,t,o,n)=>{const r=Hu(e,t,o,n);return Fu(t,r,n),Vu(t,r),Iu(t,r),Pu(t,r,n),zu(t,r,n),{layout:r.layout,placement:r.placement}},Gu=["valignCentre","alignLeft","alignRight","alignCentre","top","bottom","left","right","inset"],Ku=(e,t,o,n=1)=>{const r=e*n,s=t*n,a=e=>ke(o,e).getOr([]),i=(e,t,o)=>{const n=ne(Gu,o);return{offset:Oo(e,t),classesOn:ee(o,a),classesOff:ee(n,a)}};return{southeast:()=>i(-e,t,["top","alignLeft"]),southwest:()=>i(e,t,["top","alignRight"]),south:()=>i(-e/2,t,["top","alignCentre"]),northeast:()=>i(-e,-t,["bottom","alignLeft"]),northwest:()=>i(e,-t,["bottom","alignRight"]),north:()=>i(-e/2,-t,["bottom","alignCentre"]),east:()=>i(e,-t/2,["valignCentre","left"]),west:()=>i(-e,-t/2,["valignCentre","right"]),insetNortheast:()=>i(r,s,["top","alignLeft","inset"]),insetNorthwest:()=>i(-r,s,["top","alignRight","inset"]),insetNorth:()=>i(-r/2,s,["top","alignCentre","inset"]),insetSoutheast:()=>i(r,-s,["bottom","alignLeft","inset"]),insetSouthwest:()=>i(-r,-s,["bottom","alignRight","inset"]),insetSouth:()=>i(-r/2,-s,["bottom","alignCentre","inset"]),insetEast:()=>i(-r,-s/2,["valignCentre","right","inset"]),insetWest:()=>i(r,-s/2,["valignCentre","left","inset"])}},Yu=()=>Ku(0,0,{}),Xu=k,Ju=(e,t)=>o=>"rtl"===Qu(o)?t:e,Qu=e=>"rtl"===go(e,"direction")?"rtl":"ltr";var eg;(function(e){e["TopToBottom"]="toptobottom",e["BottomToTop"]="bottomtotop"})(eg||(eg={}));const tg="data-alloy-vertical-dir",og=e=>ed(e,e=>ft(e)&&oo(e,"data-alloy-vertical-dir")===eg.BottomToTop),ng=()=>Xs("layouts",[Rs("onLtr"),Rs("onRtl"),js("onBottomLtr"),js("onBottomRtl")]),rg=(e,t,o,n,r,s,a)=>{const i=a.map(og).getOr(!1),l=t.layouts.map(t=>t.onLtr(e)),c=t.layouts.map(t=>t.onRtl(e)),d=i?t.layouts.bind(t=>t.onBottomLtr.map(t=>t(e))).or(l).getOr(r):l.getOr(o),m=i?t.layouts.bind(t=>t.onBottomRtl.map(t=>t(e))).or(c).getOr(s):c.getOr(n),u=Ju(d,m);return u(e)},sg=(e,t,o)=>{const n=t.hotspot,r=eu(o,n.element),s=rg(e.element,t,wm(),xm(),vm(),ym(),R.some(t.hotspot.element));return R.some(Xu({anchorBox:r,bubble:t.bubble.getOr(Yu()),overrides:t.overrides,layouts:s,placer:R.none()}))};var ag=[Rs("hotspot"),js("bubble"),Qs("overrides",{}),ng(),Nd("placement",sg)];const ig=(e,t,o)=>{const n=ou(o,t.x,t.y),r=er(n.left,n.top,t.width,t.height),s=rg(e.element,t,fm(),bm(),fm(),bm(),R.none());return R.some(Xu({anchorBox:r,bubble:t.bubble,overrides:t.overrides,layouts:s,placer:R.none()}))};var lg=[Rs("x"),Rs("y"),Qs("height",0),Qs("width",0),Qs("bubble",Yu()),Qs("overrides",{}),ng(),Nd("placement",ig)];const cg=ma.generate([{screen:["point"]},{absolute:["point","scrollLeft","scrollTop"]}]),dg=e=>e.fold(k,(e,t,o)=>e.translate(-t,-o)),mg=e=>e.fold(k,k),ug=e=>K(e,(e,t)=>e.translate(t.left,t.top),Oo(0,0)),gg=e=>{const t=U(e,dg);return ug(t)},hg=e=>{const t=U(e,mg);return ug(t)},pg=cg.screen,fg=cg.absolute,bg=(e,t,o)=>{const n=At(o.root).dom,r=t=>{const o=Tt(t),n=Tt(e.element);return _t(o,n)};return R.from(n.frameElement).map(Qe.fromDom).filter(r).map(Do)},vg=(e,t,o)=>{const n=Tt(e.element),r=Fn(n),s=bg(e,t,o).getOr(r);return fg(s,r.left,r.top)},yg=(e,t,o,n)=>{const r=pg(Oo(e,t));return R.some(Jn(r,o,n))},wg=(e,t,o,n,r)=>e.map(e=>{const s=[t,e.point],a=nu(n,()=>hg(s),()=>hg(s),()=>gg(s)),i=Qn(a.left,a.top,e.width,e.height),l=o.showAbove?vm():wm(),c=o.showAbove?ym():xm(),d=rg(r,o,l,c,l,c,R.none());return Xu({anchorBox:i,bubble:o.bubble.getOr(Yu()),overrides:o.overrides,layouts:d,placer:R.none()})}),xg=(e,t,o)=>{const n=vg(e,o,t);return t.node.filter(Yt).bind(r=>{const s=r.dom.getBoundingClientRect(),a=yg(s.left,s.top,s.width,s.height),i=t.node.getOr(e.element);return wg(a,n,t,o,i)})};var Cg=[Rs("node"),Rs("root"),js("bubble"),ng(),Qs("overrides",{}),Qs("showAbove",!1),Nd("placement",xg)];const Sg="\ufeff",kg=" ",_g=(e,t,o,n)=>({start:e,soffset:t,finish:o,foffset:n}),Og={create:_g},Tg=ma.generate([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Eg=(e,t,o,n)=>e.fold(t,o,n),Dg=e=>e.fold(k,k,k),Ag=Tg.before,Mg=Tg.on,Ng=Tg.after,Rg={before:Ag,on:Mg,after:Ng,cata:Eg,getStart:Dg},Bg=ma.generate([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Lg=e=>Bg.exact(e.start,e.soffset,e.finish,e.foffset),Hg=e=>e.match({domRange:e=>Qe.fromDom(e.startContainer),relative:(e,t)=>Rg.getStart(e),exact:(e,t,o,n)=>e}),Ig=Bg.domRange,Pg=Bg.relative,zg=Bg.exact,Fg=e=>{const t=Hg(e);return At(t)},Vg=Og.create,Zg={domRange:Ig,relative:Pg,exact:zg,exactFromRange:Lg,getWin:Fg,range:Vg},Ug=(e,t)=>{t.fold(t=>{e.setStartBefore(t.dom)},(t,o)=>{e.setStart(t.dom,o)},t=>{e.setStartAfter(t.dom)})},jg=(e,t)=>{t.fold(t=>{e.setEndBefore(t.dom)},(t,o)=>{e.setEnd(t.dom,o)},t=>{e.setEndAfter(t.dom)})},$g=(e,t,o)=>{const n=e.document.createRange();return Ug(n,t),jg(n,o),n},Wg=(e,t,o,n,r)=>{const s=e.document.createRange();return s.setStart(t.dom,o),s.setEnd(n.dom,r),s},qg=e=>({left:e.left,top:e.top,right:e.right,bottom:e.bottom,width:e.width,height:e.height}),Gg=e=>{const t=e.getClientRects(),o=t.length>0?t[0]:e.getBoundingClientRect();return o.width>0||o.height>0?R.some(o).map(qg):R.none()},Kg=e=>{const t=e.getBoundingClientRect();return t.width>0||t.height>0?R.some(t).map(qg):R.none()},Yg=ma.generate([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),Xg=(e,t,o)=>t(Qe.fromDom(o.startContainer),o.startOffset,Qe.fromDom(o.endContainer),o.endOffset),Jg=(e,t)=>t.match({domRange:e=>({ltr:S(e),rtl:R.none}),relative:(t,o)=>({ltr:Ho(()=>$g(e,t,o)),rtl:Ho(()=>R.some($g(e,o,t)))}),exact:(t,o,n,r)=>({ltr:Ho(()=>Wg(e,t,o,n,r)),rtl:Ho(()=>R.some(Wg(e,n,r,t,o)))})}),Qg=(e,t)=>{const o=t.ltr();if(o.collapsed){const n=t.rtl().filter(e=>!1===e.collapsed);return n.map(e=>Yg.rtl(Qe.fromDom(e.endContainer),e.endOffset,Qe.fromDom(e.startContainer),e.startOffset)).getOrThunk(()=>Xg(e,Yg.ltr,o))}return Xg(e,Yg.ltr,o)},eh=(e,t)=>{const o=Jg(e,t);return Qg(e,o)},th=(e,t)=>{const o=eh(e,t);return o.match({ltr:(t,o,n,r)=>{const s=e.document.createRange();return s.setStart(t.dom,o),s.setEnd(n.dom,r),s},rtl:(t,o,n,r)=>{const s=e.document.createRange();return s.setStart(n.dom,r),s.setEnd(t.dom,o),s}})};Yg.ltr,Yg.rtl;const oh=(e,t)=>St(t,e),nh=(e,t,o,n)=>{const r=Tt(e),s=r.dom.createRange();return s.setStart(e.dom,t),s.setEnd(o.dom,n),s},rh=(e,t,o,n)=>{const r=nh(e,t,o,n),s=_t(e,o)&&t===n;return r.collapsed&&!s},sh=e=>R.from(e.getSelection()),ah=e=>{if(e.rangeCount>0){const t=e.getRangeAt(0),o=e.getRangeAt(e.rangeCount-1);return R.some(Og.create(Qe.fromDom(t.startContainer),t.startOffset,Qe.fromDom(o.endContainer),o.endOffset))}return R.none()},ih=e=>{if(null===e.anchorNode||null===e.focusNode)return ah(e);{const t=Qe.fromDom(e.anchorNode),o=Qe.fromDom(e.focusNode);return rh(t,e.anchorOffset,o,e.focusOffset)?R.some(Og.create(t,e.anchorOffset,o,e.focusOffset)):ah(e)}},lh=e=>sh(e).filter(e=>e.rangeCount>0).bind(ih),ch=(e,t)=>{const o=th(e,t);return Gg(o)},dh=(e,t)=>{const o=th(e,t);return Kg(o)},mh=(e,t)=>{const o=o=>{if(!e(o))throw new Error("Can only get "+t+" value of a "+t+" node");return n(o).getOr("")},n=t=>e(t)?R.from(t.dom.nodeValue):R.none(),r=(o,n)=>{if(!e(o))throw new Error("Can only set raw "+t+" value of a "+t+" node");o.dom.nodeValue=n};return{get:o,getOption:n,set:r}},uh=mh(bt,"text"),gh=e=>uh.get(e),hh=(e,t)=>({element:e,offset:t}),ph=(e,t)=>{const o=Lt(e);if(0===o.length)return hh(e,t);if(tbt(e)?hh(e,t):ph(e,t),bh=(e,t)=>{const o=t.getSelection.getOrThunk(()=>()=>lh(e));return o().map(e=>{const t=fh(e.start,e.soffset),o=fh(e.finish,e.foffset);return Zg.range(t.element,t.offset,o.element,o.offset)})},vh=(e,t,o)=>{const n=At(t.root).dom,r=vg(e,o,t),s=bh(n,t).bind(e=>{const t=dh(n,Zg.exactFromRange(e)).orThunk(()=>{const t=Qe.fromText(Sg);Nn(e.start,t);const o=ch(n,Zg.exact(t,0,t,1));return zn(t),o});return t.bind(e=>yg(e.left,e.top,e.width,e.height))}),a=bh(n,t).bind(e=>ft(e.start)?R.some(e.start):Nt(e.start)),i=a.getOr(e.element);return wg(s,r,t,o,i)};var yh=[js("getSelection"),Rs("root"),js("bubble"),ng(),Qs("overrides",{}),Qs("showAbove",!1),Nd("placement",vh)];const wh="link-layout",xh=e=>e.x+e.width,Ch=(e,t)=>e.x-t.width,Sh=(e,t)=>e.y-t.height+e.height,kh=e=>e.y,_h=(e,t,o)=>Ld(xh(e),kh(e),o.southeast(),Fd(),"southeast",Xd(e,{left:0,top:2}),wh),Oh=(e,t,o)=>Ld(Ch(e,t),kh(e),o.southwest(),Vd(),"southwest",Xd(e,{right:1,top:2}),wh),Th=(e,t,o)=>Ld(xh(e),Sh(e,t),o.northeast(),Zd(),"northeast",Xd(e,{left:0,bottom:3}),wh),Eh=(e,t,o)=>Ld(Ch(e,t),Sh(e,t),o.northwest(),Ud(),"northwest",Xd(e,{right:1,bottom:3}),wh),Dh=()=>[_h,Oh,Th,Eh],Ah=()=>[Oh,_h,Eh,Th],Mh=(e,t,o)=>{const n=eu(o,t.item.element),r=rg(e.element,t,Dh(),Ah(),Dh(),Ah(),R.none());return R.some(Xu({anchorBox:n,bubble:Yu(),overrides:t.overrides,layouts:r,placer:R.none()}))};var Nh=[Rs("item"),ng(),Qs("overrides",{}),Nd("placement",Mh)],Rh=Es("type",{selection:yh,node:Cg,hotspot:ag,submenu:Nh,makeshift:lg});const Bh=[Us("classes",gs),na("mode","all",["all","layout","placement"])],Lh=[Qs("useFixed",A),js("getBounds")],Hh=[Bs("anchor",Rh),Xs("transition",Bh)],Ih=()=>{const e=document.documentElement;return su(0,0,e.clientWidth,e.clientHeight)},Ph=e=>{const t=Do(e.element),o=e.element.dom.getBoundingClientRect();return ru(t.left,t.top,o.width,o.height)},zh=(e,t,o,n,r,s,a)=>{const i=iu(o.anchorBox,t);return Wu(i,r.element,o.bubble,o.layouts,s,n,o.overrides,a)},Fh=(e,t,o,n,r)=>{Vh(e,t,o,n,r,R.none())},Vh=(e,t,o,n,r,s)=>{const a=s.map(tr);return Zh(e,t,o,n,r,a)},Zh=(e,t,o,n,r,s)=>{const a=Os("placement.info",rs(Hh),r),i=a.anchor,l=n.element,c=o.get(n.uid);qm(()=>{co(l,"position","fixed");const r=po(l,"visibility");co(l,"visibility","hidden");const d=t.useFixed()?Ih():Ph(e),m=i.placement,u=s.map(S).or(t.getBounds);m(e,i,d).each(t=>{const r=t.placer.getOr(zh),s=r(e,d,t,u,n,c,a.transition);o.set(n.uid,s)}),r.fold(()=>{vo(l,"visibility")},e=>{co(l,"visibility",e)}),po(l,"left").isNone()&&po(l,"top").isNone()&&po(l,"right").isNone()&&po(l,"bottom").isNone()&&Te(po(l,"position"),"fixed")&&vo(l,"position")},l)},Uh=(e,t,o)=>t.useFixed()?"fixed":"absolute",jh=(e,t,o,n)=>{const r=n.element;j(["position","left","right","top","bottom"],e=>vo(r,e)),mu(r),o.clear(n.uid)};var $h=Object.freeze({__proto__:null,position:Fh,positionWithin:Vh,positionWithinBounds:Zh,getMode:Uh,reset:jh});const Wh=()=>{let e={};const t=(t,o)=>{e[t]=o},o=t=>ke(e,t),n=t=>{p(t)?delete e[t]:e={}};return Ml({readState:()=>e,clear:n,set:t,get:o})};var qh=Object.freeze({__proto__:null,init:Wh});const Gh=Lm({fields:Lh,name:"positioning",active:Vm,apis:$h,state:qh}),Kh=e=>e.getSystem().isConnected(),Yh=e=>{Oi(e,bi());const t=e.components();j(t,Yh)},Xh=e=>{const t=e.components();j(t,Xh),Oi(e,fi())},Jh=(e,t)=>{e.getSystem().addToWorld(t),Yt(e.element)&&Xh(t)},Qh=e=>{Yh(e),e.getSystem().removeFromWorld(e)},ep=(e,t)=>{Ln(e.element,t.element)},tp=e=>{j(e.components(),e=>zn(e.element)),Pn(e.element),e.syncComponents()},op=(e,t,o)=>{const n=e.components();tp(e);const r=o(t),s=ne(n,r);j(s,t=>{Yh(t),e.getSystem().removeFromWorld(t)}),j(r,t=>{Kh(t)?ep(e,t):(e.getSystem().addToWorld(t),ep(e,t),Yt(e.element)&&Xh(t))}),e.syncComponents()},np=(e,t,o)=>{const n=e.components(),r=ee(t,e=>El(e).toArray());j(n,e=>{z(r,e)||Qh(e)});const s=o(t),a=ne(n,s);j(a,e=>{Kh(e)&&Qh(e)}),j(s,t=>{Kh(t)||Jh(e,t)}),e.syncComponents()},rp=(e,t)=>{sp(e,t,Ln)},sp=(e,t,o)=>{e.getSystem().addToWorld(t),o(e.element,t.element),Yt(e.element)&&Xh(t),e.syncComponents()},ap=e=>{Yh(e),zn(e.element),e.getSystem().removeFromWorld(e)},ip=e=>{const t=Mt(e.element).bind(t=>e.getSystem().getByDom(t).toOptional());ap(e),t.each(e=>{e.syncComponents()})},lp=e=>{const t=e.components();j(t,ap),Pn(e.element),e.syncComponents()},cp=(e,t)=>{mp(e,t,Ln)},dp=(e,t)=>{mp(e,t,Rn)},mp=(e,t,o)=>{o(e,t.element);const n=Lt(t.element);j(n,e=>{t.getByDom(e).each(Xh)})},up=e=>{const t=Lt(e.element);j(t,t=>{e.getByDom(t).each(Yh)}),zn(e.element)},gp=(e,t,o,n)=>{o.get().each(t=>{lp(e)});const r=t.getAttachPoint(e);rp(r,e);const s=e.getSystem().build(n);return rp(e,s),o.set(s),s},hp=(e,t,o,n)=>{const r=gp(e,t,o,n);return t.onOpen(e,r),r},pp=(e,t,o,n)=>o.get().map(()=>gp(e,t,o,n)),fp=(e,t,o,n,r)=>{Sp(e,t),hp(e,t,o,n),r(),_p(e,t)},bp=(e,t,o)=>{o.get().each(n=>{lp(e),ip(e),t.onClose(e,n),o.clear()})},vp=(e,t,o)=>o.isOpen(),yp=(e,t,o,n)=>vp(e,t,o)&&o.get().exists(o=>t.isPartOf(e,o,n)),wp=(e,t,o)=>o.get(),xp=(e,t,o,n)=>{po(e.element,t).fold(()=>{so(e.element,o)},t=>{eo(e.element,o,t)}),co(e.element,t,n)},Cp=(e,t,o)=>{no(e.element,o).fold(()=>vo(e.element,t),o=>co(e.element,t,o))},Sp=(e,t,o)=>{const n=t.getAttachPoint(e);co(e.element,"position",Gh.getMode(n)),xp(e,"visibility",t.cloakVisibilityAttr,"hidden")},kp=e=>F(["top","left","right","bottom"],t=>po(e,t).isSome()),_p=(e,t,o)=>{kp(e.element)||vo(e.element,"position"),Cp(e,"visibility",t.cloakVisibilityAttr)};var Op=Object.freeze({__proto__:null,cloak:Sp,decloak:_p,open:hp,openWhileCloaked:fp,close:bp,isOpen:vp,isPartOf:yp,getState:wp,setContent:pp});const Tp=(e,t)=>Ri([Ii(ci(),(o,n)=>{bp(o,e,t)})]);var Ep=Object.freeze({__proto__:null,events:Tp}),Dp=[Ed("onOpen"),Ed("onClose"),Rs("isPartOf"),Rs("getAttachPoint"),Qs("cloakVisibilityAttr","data-precloak-visibility")];const Ap=()=>{const e=xu(),t=S("not-implemented");return Ml({readState:t,isOpen:e.isSet,clear:e.clear,set:e.set,get:e.get})};var Mp=Object.freeze({__proto__:null,init:Ap});const Np=Lm({fields:Dp,name:"sandboxing",active:Ep,apis:Op,state:Mp}),Rp=S("dismiss.popups"),Bp=S("reposition.popups"),Lp=S("mouse.released"),Hp=ns([Qs("isExtraPart",A),Xs("fireEventInstead",[Qs("event",vi())])]),Ip=e=>{const t=Os("Dismissal",Hp,e);return{[Rp()]:{schema:ns([Rs("target")]),onReceive:(e,o)=>{if(Np.isOpen(e)){const n=Np.isPartOf(e,o.target)||t.isExtraPart(e,o.target);n||t.fireEventInstead.fold(()=>Np.close(e),t=>Oi(e,t.event))}}}}},Pp=ns([Xs("fireEventInstead",[Qs("event",yi())]),zs("doReposition")]),zp=e=>{const t=Os("Reposition",Pp,e);return{[Bp()]:{onReceive:e=>{Np.isOpen(e)&&t.fireEventInstead.fold(()=>t.doReposition(e),t=>Oi(e,t.event))}}}},Fp=(e,t,o)=>{t.store.manager.onLoad(e,t,o)},Vp=(e,t,o)=>{t.store.manager.onUnload(e,t,o)},Zp=(e,t,o,n)=>{t.store.manager.setValue(e,t,o,n)},Up=(e,t,o)=>t.store.manager.getValue(e,t,o),jp=(e,t,o)=>o;var $p=Object.freeze({__proto__:null,onLoad:Fp,onUnload:Vp,setValue:Zp,getValue:Up,getState:jp});const Wp=(e,t)=>{const o=e.resetOnDom?[qi((o,n)=>{Fp(o,e,t)}),Gi((o,n)=>{Vp(o,e,t)})]:[Tm(e,t,Fp)];return Ri(o)};var qp=Object.freeze({__proto__:null,events:Wp});const Gp=()=>{const e=ca(null),t=()=>({mode:"memory",value:e.get()}),o=()=>null===e.get(),n=()=>{e.set(null)};return Ml({set:e.set,get:e.get,isNotSet:o,clear:n,readState:t})},Kp=()=>{const e=y;return Ml({readState:e})},Yp=()=>{const e=ca({}),t=ca({}),o=()=>({mode:"dataset",dataByValue:e.get(),dataByText:t.get()}),n=()=>{e.set({}),t.set({})},r=o=>ke(e.get(),o).orThunk(()=>ke(t.get(),o)),s=o=>{const n=e.get(),r=t.get(),s={},a={};j(o,e=>{s[e.value]=e,ke(e,"meta").each(t=>{ke(t,"text").each(t=>{a[t]=e})})}),e.set({...n,...s}),t.set({...r,...a})};return Ml({readState:o,lookup:r,update:s,clear:n})},Xp=e=>e.store.manager.state(e);var Jp=Object.freeze({__proto__:null,memory:Gp,dataset:Yp,manual:Kp,init:Xp});const Qp=(e,t,o,n)=>{const r=t.store;o.update([n]),r.setValue(e,n),t.onSetValue(e,n)},ef=(e,t,o)=>{const n=t.store,r=n.getDataKey(e);return o.lookup(r).getOrThunk(()=>n.getFallbackEntry(r))},tf=(e,t,o)=>{const n=t.store;n.initialValue.each(n=>{Qp(e,t,o,n)})},of=(e,t,o)=>{o.clear()};var nf=[js("initialValue"),Rs("getFallbackEntry"),Rs("getDataKey"),Rs("setValue"),Nd("manager",{setValue:Qp,getValue:ef,onLoad:tf,onUnload:of,state:Yp})];const rf=(e,t,o)=>t.store.getValue(e),sf=(e,t,o,n)=>{t.store.setValue(e,n),t.onSetValue(e,n)},af=(e,t,o)=>{t.store.initialValue.each(o=>{t.store.setValue(e,o)})};var lf=[Rs("getValue"),Qs("setValue",y),js("initialValue"),Nd("manager",{setValue:sf,getValue:rf,onLoad:af,onUnload:y,state:Al.init})];const cf=(e,t,o,n)=>{o.set(n),t.onSetValue(e,n)},df=(e,t,o)=>o.get(),mf=(e,t,o)=>{t.store.initialValue.each(e=>{o.isNotSet()&&o.set(e)})},uf=(e,t,o)=>{o.clear()};var gf=[js("initialValue"),Nd("manager",{setValue:cf,getValue:df,onLoad:mf,onUnload:uf,state:Gp})],hf=[ea("store",{mode:"memory"},Es("mode",{memory:gf,manual:lf,dataset:nf})),Ed("onSetValue"),Qs("resetOnDom",!1)];const pf=Lm({fields:hf,name:"representing",active:qp,apis:$p,extra:{setValueFrom:(e,t)=>{const o=pf.getValue(t);pf.setValue(e,o)}},state:Jp}),ff=(e,t)=>la(e,{},U(t,t=>Fs(t.name(),"Cannot configure "+t.name()+" for "+e)).concat([Ms("dump",k)])),bf=e=>e.dump,vf=(e,t)=>({...Rm(t),...e.dump}),yf={field:ff,augment:vf,get:bf},wf="placeholder",xf=ma.generate([{single:["required","valueThunk"]},{multiple:["required","valueThunks"]}]),Cf=e=>_e(e,"uiType"),Sf=(e,t,o,n)=>e.exists(e=>e!==o.owner)?xf.single(!0,S(o)):ke(n,o.name).fold(()=>{throw new Error("Unknown placeholder component: "+o.name+"\nKnown: ["+ue(n)+"]\nNamespace: "+e.getOr("none")+"\nSpec: "+JSON.stringify(o,null,2))},e=>e.replace()),kf=(e,t,o,n)=>Cf(o)&&o.uiType===wf?Sf(e,t,o,n):xf.single(!1,S(o)),_f=(e,t,o,n)=>{const r=kf(e,t,o,n);return r.fold((r,s)=>{const a=Cf(o)?s(t,o.config,o.validated):s(t),i=ke(a,"components").getOr([]),l=ee(i,o=>_f(e,t,o,n));return[{...a,components:l}]},(e,n)=>{if(Cf(o)){const e=n(t,o.config,o.validated),r=o.validated.preprocess.getOr(k);return r(e)}return n(t)})},Of=(e,t,o,n)=>ee(o,o=>_f(e,t,o,n)),Tf=(e,t)=>{let o=!1;const n=()=>o,r=()=>{if(o)throw new Error("Trying to use the same placeholder more than once: "+e);return o=!0,t},s=()=>t.fold((e,t)=>e,(e,t)=>e);return{name:S(e),required:s,used:n,replace:r}},Ef=(e,t,o,n)=>{const r=pe(n,(e,t)=>Tf(t,e)),s=Of(e,t,o,r);return he(r,o=>{if(!1===o.used()&&o.required())throw new Error("Placeholder: "+o.name()+" was not found in components list\nNamespace: "+e.getOr("none")+"\nComponents: "+JSON.stringify(t.components,null,2))}),s},Df=xf.single,Af=xf.multiple,Mf=S(wf),Nf=ma.generate([{required:["data"]},{external:["data"]},{optional:["data"]},{group:["data"]}]),Rf=Qs("factory",{sketch:k}),Bf=Qs("schema",[]),Lf=Rs("name"),Hf=As("pname","pname",Dr(e=>""),ds()),If=Ms("schema",()=>[js("preprocess")]),Pf=Qs("defaults",S({})),zf=Qs("overrides",S({})),Ff=rs([Rf,Bf,Lf,Hf,Pf,zf]),Vf=rs([Rf,Bf,Lf,Pf,zf]),Zf=rs([Rf,Bf,Lf,Hf,Pf,zf]),Uf=rs([Rf,If,Lf,Rs("unit"),Hf,Pf,zf]),jf=e=>e.fold(R.some,R.none,R.some,R.some),$f=e=>{const t=e=>e.name;return e.fold(t,t,t,t)},Wf=e=>e.fold(k,k,k,k),qf=(e,t)=>o=>{const n=Os("Converting part type",t,o);return e(n)},Gf=qf(Nf.required,Ff),Kf=qf(Nf.external,Vf),Yf=qf(Nf.optional,Zf),Xf=qf(Nf.group,Uf),Jf=S("entirety");var Qf=Object.freeze({__proto__:null,required:Gf,external:Kf,optional:Yf,group:Xf,asNamedPart:jf,name:$f,asCommon:Wf,original:Jf});const eb=(e,t,o,n)=>Or(t.defaults(e,o,n),o,{uid:e.partUids[t.name]},t.overrides(e,o,n)),tb=(e,t,o)=>{const n={},r={};return j(o,e=>{e.fold(e=>{n[e.pname]=Df(!0,(t,o,n)=>e.factory.sketch(eb(t,e,o,n)))},e=>{const o=t.parts[e.name];r[e.name]=S(e.factory.sketch(eb(t,e,o[Jf()]),o))},e=>{n[e.pname]=Df(!1,(t,o,n)=>e.factory.sketch(eb(t,e,o,n)))},e=>{n[e.pname]=Af(!0,(t,o,n)=>{const r=t[e.name];return U(r,o=>e.factory.sketch(Or(e.defaults(t,o,n),o,e.overrides(t,o))))})})}),{internals:S(n),externals:S(r)}},ob=(e,t)=>{const o={};return j(t,t=>{jf(t).each(t=>{const n=nb(e,t.pname);o[t.name]=o=>{const r=Os("Part: "+t.name+" in "+e,rs(t.schema),o);return{...n,config:o,validated:r}}})}),o},nb=(e,t)=>({uiType:Mf(),owner:e,name:t}),rb=(e,t,o)=>({uiType:Mf(),owner:e,name:t,config:o,validated:{}}),sb=e=>ee(e,e=>e.fold(R.none,R.some,R.none,R.none).map(e=>Vs(e.name,e.schema.concat([Rd(Jf())]))).toArray()),ab=e=>U(e,$f),ib=(e,t,o)=>tb(e,t,o),lb=(e,t,o)=>Ef(R.some(e),t,t.components,o),cb=(e,t,o)=>{const n=t.partUids[o];return e.getSystem().getByUid(n).toOptional()},db=(e,t,o)=>cb(e,t,o).getOrDie("Could not find part: "+o),mb=(e,t,o)=>{const n={},r=t.partUids,s=e.getSystem();return j(o,e=>{n[e]=S(s.getByUid(r[e]))}),n},ub=(e,t)=>{const o=e.getSystem();return pe(t.partUids,(e,t)=>S(o.getByUid(e)))},gb=e=>ue(e.partUids),hb=(e,t,o)=>{const n={},r=t.partUids,s=e.getSystem();return j(o,e=>{n[e]=S(s.getByUid(r[e]).getOrDie())}),n},pb=(e,t)=>{const o=ab(t);return va(U(o,t=>({key:t,value:e+"-"+t})))},fb=e=>As("partUids","partUids",Nr(t=>pb(t.uid,e)),ds());var bb=Object.freeze({__proto__:null,generate:ob,generateOne:rb,schemas:sb,names:ab,substitutes:ib,components:lb,defaultUids:pb,defaultUidsSchema:fb,getAllParts:ub,getAllPartNames:gb,getPart:cb,getPartOrDie:db,getParts:mb,getPartsOrDie:hb});const vb=(e,t)=>{const o=e.length>0?[Vs("parts",e)]:[];return o.concat([Rs("uid"),Qs("dom",{}),Qs("components",[]),Rd("originalSpec"),Qs("debug.sketcher",{})]).concat(t)},yb=(e,t,o,n,r)=>{const s=vb(n,r);return Os(e+" [SpecSchema]",ns(s.concat(t)),o)},wb=(e,t,o,n)=>{const r=Sb(n),s=yb(e,t,r,[],[]);return o(s,r)},xb=(e,t,o,n,r)=>{const s=Sb(r),a=sb(o),i=fb(o),l=yb(e,t,s,a,[i]),c=ib(e,l,o),d=lb(e,l,c.internals());return n(l,d,s,c.externals())},Cb=e=>_e(e,"uid"),Sb=e=>Cb(e)?e:{...e,uid:bl("uid")},kb=e=>void 0!==e.uid,_b=ns([Rs("name"),Rs("factory"),Rs("configFields"),Qs("apis",{}),Qs("extraApis",{})]),Ob=ns([Rs("name"),Rs("factory"),Rs("configFields"),Rs("partFields"),Qs("apis",{}),Qs("extraApis",{})]),Tb=e=>{const t=Os("Sketcher for "+e.name,_b,e),o=e=>wb(t.name,t.configFields,t.factory,e),n=pe(t.apis,Dl),r=pe(t.extraApis,(e,t)=>Sl(e,t));return{name:t.name,configFields:t.configFields,sketch:o,...n,...r}},Eb=e=>{const t=Os("Sketcher for "+e.name,Ob,e),o=e=>xb(t.name,t.configFields,t.partFields,t.factory,e),n=ob(t.name,t.partFields),r=pe(t.apis,Dl),s=pe(t.extraApis,(e,t)=>Sl(e,t));return{name:t.name,partFields:t.partFields,configFields:t.configFields,sketch:o,parts:n,...r,...s}},Db=e=>wt("input")(e)&&"radio"!==oo(e,"type")||wt("textarea")(e),Ab=(e,t,o)=>t.find(e);var Mb=Object.freeze({__proto__:null,getCurrent:Ab});const Nb=[Rs("find")],Rb=Lm({fields:Nb,name:"composing",apis:Mb}),Bb=["input","button","textarea","select"],Lb=(e,t,o)=>{const n=t.disabled()?Ub:jb;n(e,t)},Hb=(e,t)=>!0===t.useNative&&z(Bb,ut(e.element)),Ib=e=>ro(e.element,"disabled"),Pb=e=>{eo(e.element,"disabled","disabled")},zb=e=>{so(e.element,"disabled")},Fb=e=>"true"===oo(e.element,"aria-disabled"),Vb=e=>{eo(e.element,"aria-disabled","true")},Zb=e=>{eo(e.element,"aria-disabled","false")},Ub=(e,t,o)=>{t.disableClass.each(t=>{mc(e.element,t)});const n=Hb(e,t)?Pb:Vb;n(e),t.onDisabled(e)},jb=(e,t,o)=>{t.disableClass.each(t=>{gc(e.element,t)});const n=Hb(e,t)?zb:Zb;n(e),t.onEnabled(e)},$b=(e,t)=>Hb(e,t)?Ib(e):Fb(e),Wb=(e,t,o,n)=>{const r=n?Ub:jb;r(e,t)};var qb=Object.freeze({__proto__:null,enable:jb,disable:Ub,isDisabled:$b,onLoad:Lb,set:Wb});const Gb=(e,t)=>Hl({classes:t.disabled()?t.disableClass.toArray():[]}),Kb=(e,t)=>Ri([Bi(si(),(t,o)=>$b(t,e)),Tm(e,t,Lb)]);var Yb=Object.freeze({__proto__:null,exhibit:Gb,events:Kb}),Xb=[sa("disabled",A),Qs("useNative",!0),js("disableClass"),Ed("onDisabled"),Ed("onEnabled")];const Jb=Lm({fields:Xb,name:"disabling",active:Yb,apis:qb}),Qb=(e,t,o,n)=>{const r=oh(e.element,"."+t.highlightClass);j(r,o=>{const r=F(n,e=>_t(e.element,o));r||(gc(o,t.highlightClass),e.getSystem().getByDom(o).each(o=>{t.onDehighlight(e,o),Oi(o,_i())}))})},ev=(e,t,o)=>Qb(e,t,o,[]),tv=(e,t,o,n)=>{iv(e,t,o,n)&&(gc(n.element,t.highlightClass),t.onDehighlight(e,n),Oi(n,_i()))},ov=(e,t,o,n)=>{Qb(e,t,o,[n]),iv(e,t,o,n)||(mc(n.element,t.highlightClass),t.onHighlight(e,n),Oi(n,ki()))},nv=(e,t,o)=>{dv(e,t).each(n=>{ov(e,t,o,n)})},rv=(e,t,o)=>{mv(e,t).each(n=>{ov(e,t,o,n)})},sv=(e,t,o,n)=>{cv(e,t,o,n).fold(e=>{throw e},n=>{ov(e,t,o,n)})},av=(e,t,o,n)=>{const r=pv(e,t),s=X(r,n);s.each(n=>{ov(e,t,o,n)})},iv=(e,t,o,n)=>hc(n.element,t.highlightClass),lv=(e,t,o)=>nd(e.element,"."+t.highlightClass).bind(t=>e.getSystem().getByDom(t).toOptional()),cv=(e,t,o,n)=>{const r=oh(e.element,"."+t.itemClass);return R.from(r[n]).fold(()=>ir.error(new Error("No element found with index "+n)),e.getSystem().getByDom)},dv=(e,t,o)=>nd(e.element,"."+t.itemClass).bind(t=>e.getSystem().getByDom(t).toOptional()),mv=(e,t,o)=>{const n=oh(e.element,"."+t.itemClass),r=n.length>0?R.some(n[n.length-1]):R.none();return r.bind(t=>e.getSystem().getByDom(t).toOptional())},uv=(e,t,o,n)=>{const r=oh(e.element,"."+t.itemClass),s=J(r,e=>hc(e,t.highlightClass));return s.bind(t=>{const o=Gd(t,n,0,r.length-1);return e.getSystem().getByDom(r[o]).toOptional()})},gv=(e,t,o)=>uv(e,t,o,-1),hv=(e,t,o)=>uv(e,t,o,1),pv=(e,t,o)=>{const n=oh(e.element,"."+t.itemClass);return De(U(n,t=>e.getSystem().getByDom(t).toOptional()))};var fv=Object.freeze({__proto__:null,dehighlightAll:ev,dehighlight:tv,highlight:ov,highlightFirst:nv,highlightLast:rv,highlightAt:sv,highlightBy:av,isHighlighted:iv,getHighlighted:lv,getFirst:dv,getLast:mv,getPrevious:gv,getNext:hv,getCandidates:pv}),bv=[Rs("highlightClass"),Rs("itemClass"),Ed("onHighlight"),Ed("onDehighlight")];const vv=Lm({fields:bv,name:"highlighting",apis:fv}),yv=[8],wv=[9],xv=[13],Cv=[27],Sv=[32],kv=[37],_v=[38],Ov=[39],Tv=[40],Ev=(e,t,o)=>{const n=oe(e.slice(0,t)),r=oe(e.slice(t+1));return X(n.concat(r),o)},Dv=(e,t,o)=>{const n=oe(e.slice(0,t));return X(n,o)},Av=(e,t,o)=>{const n=e.slice(0,t),r=e.slice(t+1);return X(r.concat(n),o)},Mv=(e,t,o)=>{const n=e.slice(t+1);return X(n,o)},Nv=e=>t=>{const o=t.raw;return z(e,o.which)},Rv=e=>t=>te(e,e=>e(t)),Bv=e=>{const t=e.raw;return!0===t.shiftKey},Lv=e=>{const t=e.raw;return!0===t.ctrlKey},Hv=T(Bv),Iv=(e,t)=>({matches:e,classification:t}),Pv=(e,t)=>{const o=X(e,e=>e.matches(t));return o.map(e=>e.classification)},zv=(e,t,o)=>{const n=t.exists(e=>o.exists(t=>_t(t,e)));n||Ti(e,wi(),{prevFocus:t,newFocus:o})},Fv=()=>{const e=e=>Wm(e.element),t=(t,o)=>{const n=e(t);t.getSystem().triggerFocus(o,t.element);const r=e(t);zv(t,n,r)};return{get:e,set:t}},Vv=()=>{const e=e=>vv.getHighlighted(e).map(e=>e.element),t=(t,o)=>{const n=e(t);t.getSystem().getByDom(o).fold(y,e=>{vv.highlight(t,e)});const r=e(t);zv(t,n,r)};return{get:e,set:t}};var Zv;(function(e){e["OnFocusMode"]="onFocus",e["OnEnterOrSpaceMode"]="onEnterOrSpace",e["OnApiMode"]="onApi"})(Zv||(Zv={}));const Uv=(e,t,o,n,r)=>{const s=()=>e.concat([Qs("focusManager",Fv()),ea("focusInside","onFocus",xs(e=>z(["onFocus","onEnterOrSpace","onApi"],e)?ir.value(e):ir.error("Invalid value for focusInside"))),Nd("handler",l),Nd("state",t),Nd("sendFocusIn",r)]),a=(e,t,o,n,r)=>{const s=o(e,t,n,r);return Pv(s,t.event).bind(o=>o(e,t,n,r))},i=(e,t)=>{const s=e.focusInside!==Zv.OnFocusMode?R.none():r(e).map(o=>Ii(ti(),(n,r)=>{o(n,e,t),r.stop()})),i=(o,n)=>{const s=Nv(Sv.concat(xv))(n.event);e.focusInside===Zv.OnEnterOrSpaceMode&&s&&_a(o,n)&&r(e).each(r=>{r(o,e,t),n.stop()})},l=[Ii(ja(),(n,r)=>{a(n,r,o,e,t).fold(()=>{i(n,r)},e=>{r.stop()})}),Ii($a(),(o,r)=>{a(o,r,n,e,t).each(e=>{r.stop()})})];return Ri(s.toArray().concat(l))},l={schema:s,processKey:a,toEvents:i};return l},jv=e=>{const t=[js("onEscape"),js("onEnter"),Qs("selector",'[data-alloy-tabstop="true"]:not(:disabled)'),Qs("firstTabstop",0),Qs("useTabstopAt",M),js("visibilitySelector")].concat([e]),o=(e,t)=>{const o=e.visibilitySelector.bind(e=>rd(t,e)).getOr(t);return Co(o)>0},n=(e,t)=>{const n=oh(e.element,t.selector),r=q(n,e=>o(t,e));return R.from(r[t.firstTabstop])},r=(e,t)=>t.focusManager.get(e).bind(e=>rd(e,t.selector)),s=(e,t)=>o(e,t)&&e.useTabstopAt(t),a=(e,t,o)=>{n(e,t).each(o=>{t.focusManager.set(e,o)})},i=(e,t,o,n,r)=>r(t,o,e=>s(n,e)).fold(()=>n.cyclic?R.some(!0):R.none(),t=>(n.focusManager.set(e,t),R.some(!0))),l=(e,t,o,n)=>{const s=oh(e.element,o.selector);return r(e,o).bind(t=>{const r=J(s,O(_t,t));return r.bind(t=>i(e,s,t,o,n))})},c=(e,t,o)=>{const n=o.cyclic?Ev:Dv;return l(e,t,o,n)},d=(e,t,o)=>{const n=o.cyclic?Av:Mv;return l(e,t,o,n)},m=(e,t,o)=>o.onEnter.bind(o=>o(e,t)),u=(e,t,o)=>o.onEscape.bind(o=>o(e,t)),g=S([Iv(Rv([Bv,Nv(wv)]),c),Iv(Nv(wv),d),Iv(Rv([Hv,Nv(xv)]),m)]),h=S([Iv(Nv(Cv),u)]);return Uv(t,Al.init,g,h,()=>R.some(a))};var $v=jv(Ms("cyclic",A)),Wv=jv(Ms("cyclic",M));const qv=(e,t,o)=>(Di(e,o,si()),R.some(!0)),Gv=(e,t,o)=>{const n=Db(o)&&Nv(Sv)(t.event);return n?R.none():qv(e,t,o)},Kv=(e,t)=>R.some(!0),Yv=[Qs("execute",Gv),Qs("useSpace",!1),Qs("useEnter",!0),Qs("useControlEnter",!1),Qs("useDown",!1)],Xv=(e,t,o)=>o.execute(e,t,e.element),Jv=(e,t,o,n)=>{const r=o.useSpace&&!Db(e.element)?Sv:[],s=o.useEnter?xv:[],a=o.useDown?Tv:[],i=r.concat(s).concat(a);return[Iv(Nv(i),Xv)].concat(o.useControlEnter?[Iv(Rv([Lv,Nv(xv)]),Xv)]:[])},Qv=(e,t,o,n)=>o.useSpace&&!Db(e.element)?[Iv(Nv(Sv),Kv)]:[];var ey=Uv(Yv,Al.init,Jv,Qv,()=>R.none());const ty=()=>{const e=xu(),t=(t,o)=>{e.set({numRows:t,numColumns:o})},o=()=>e.get().map(e=>e.numRows),n=()=>e.get().map(e=>e.numColumns);return Ml({readState:()=>e.get().map(e=>({numRows:String(e.numRows),numColumns:String(e.numColumns)})).getOr({numRows:"?",numColumns:"?"}),setGridSize:t,getNumRows:o,getNumColumns:n})},oy=e=>e.state(e);var ny=Object.freeze({__proto__:null,flatgrid:ty,init:oy});const ry=e=>(t,o,n,r)=>{const s=e(t.element);return ly(s,t,o,n,r)},sy=(e,t)=>{const o=Ju(e,t);return ry(o)},ay=(e,t)=>{const o=Ju(t,e);return ry(o)},iy=e=>(t,o,n,r)=>ly(e,t,o,n,r),ly=(e,t,o,n,r)=>{const s=n.focusManager.get(t).bind(o=>e(t.element,o,n,r));return s.map(e=>(n.focusManager.set(t,e),!0))},cy=iy,dy=iy,my=iy,uy=e=>e.offsetWidth<=0&&e.offsetHeight<=0,gy=e=>!uy(e.dom),hy=(e,t)=>J(e,t).map(t=>({index:t,candidates:e})),py=(e,t,o)=>{const n=e=>_t(e,t),r=oh(e,o),s=q(r,gy);return hy(s,n)},fy=(e,t)=>J(e,e=>_t(t,e)),by=(e,t,o,n)=>{const r=Math.floor(t/o),s=t%o;return n(r,s).bind(t=>{const n=t.row*o+t.column;return n>=0&&nby(e,t,n,(t,s)=>{const a=t===o-1,i=a?e.length-t*n:n,l=Gd(s,r,0,i-1);return R.some({row:t,column:l})}),yy=(e,t,o,n,r)=>by(e,t,n,(t,s)=>{const a=Gd(t,r,0,o-1),i=a===o-1,l=i?e.length-a*n:n,c=Kd(s,0,l-1);return R.some({row:a,column:c})}),wy=(e,t,o,n)=>vy(e,t,o,n,1),xy=(e,t,o,n)=>vy(e,t,o,n,-1),Cy=(e,t,o,n)=>yy(e,t,o,n,-1),Sy=(e,t,o,n)=>yy(e,t,o,n,1),ky=[Rs("selector"),Qs("execute",Gv),Dd("onEscape"),Qs("captureTab",!1),Bd()],_y=(e,t,o)=>{nd(e.element,t.selector).each(o=>{t.focusManager.set(e,o)})},Oy=(e,t)=>t.focusManager.get(e).bind(e=>rd(e,t.selector)),Ty=(e,t,o,n)=>Oy(e,o).bind(n=>o.execute(e,t,n)),Ey=e=>(t,o,n,r)=>py(t,o,n.selector).bind(t=>e(t.candidates,t.index,r.getNumRows().getOr(n.initSize.numRows),r.getNumColumns().getOr(n.initSize.numColumns))),Dy=(e,t,o)=>o.captureTab?R.some(!0):R.none(),Ay=(e,t,o)=>o.onEscape(e,t),My=Ey(xy),Ny=Ey(wy),Ry=Ey(Cy),By=Ey(Sy),Ly=S([Iv(Nv(kv),sy(My,Ny)),Iv(Nv(Ov),ay(My,Ny)),Iv(Nv(_v),cy(Ry)),Iv(Nv(Tv),dy(By)),Iv(Rv([Bv,Nv(wv)]),Dy),Iv(Rv([Hv,Nv(wv)]),Dy),Iv(Nv(Sv.concat(xv)),Ty)]),Hy=S([Iv(Nv(Cv),Ay),Iv(Nv(Sv),Kv)]);var Iy=Uv(ky,ty,Ly,Hy,()=>R.some(_y));const Py=(e,t,o,n)=>{const r=e=>"button"===ut(e)&&"disabled"===oo(e,"disabled"),s=(e,t,o)=>{const a=Gd(t,n,0,o.length-1);return a===e?R.none():r(o[a])?s(e,a,o):R.from(o[a])};return py(e,o,t).bind(e=>{const t=e.index,o=e.candidates;return s(t,t,o)})},zy=[Rs("selector"),Qs("getInitial",R.none),Qs("execute",Gv),Dd("onEscape"),Qs("executeOnMove",!1),Qs("allowVertical",!0)],Fy=(e,t)=>t.focusManager.get(e).bind(e=>rd(e,t.selector)),Vy=(e,t,o)=>Fy(e,o).bind(n=>o.execute(e,t,n)),Zy=(e,t,o)=>{t.getInitial(e).orThunk(()=>nd(e.element,t.selector)).each(o=>{t.focusManager.set(e,o)})},Uy=(e,t,o)=>Py(e,o.selector,t,-1),jy=(e,t,o)=>Py(e,o.selector,t,1),$y=e=>(t,o,n,r)=>e(t,o,n,r).bind(()=>n.executeOnMove?Vy(t,o,n):R.some(!0)),Wy=(e,t,o)=>o.onEscape(e,t),qy=(e,t,o,n)=>{const r=kv.concat(o.allowVertical?_v:[]),s=Ov.concat(o.allowVertical?Tv:[]);return[Iv(Nv(r),$y(sy(Uy,jy))),Iv(Nv(s),$y(ay(Uy,jy))),Iv(Nv(xv),Vy),Iv(Nv(Sv),Vy)]},Gy=S([Iv(Nv(Sv),Kv),Iv(Nv(Cv),Wy)]);var Ky=Uv(zy,Al.init,qy,Gy,()=>R.some(Zy));const Yy=(e,t,o)=>R.from(e[t]).bind(e=>R.from(e[o]).map(e=>({rowIndex:t,columnIndex:o,cell:e}))),Xy=(e,t,o,n)=>{const r=e[t],s=r.length,a=Gd(o,n,0,s-1);return Yy(e,t,a)},Jy=(e,t,o,n)=>{const r=Gd(o,n,0,e.length-1),s=e[r].length,a=Kd(t,0,s-1);return Yy(e,r,a)},Qy=(e,t,o,n)=>{const r=e[t],s=r.length,a=Kd(o+n,0,s-1);return Yy(e,t,a)},ew=(e,t,o,n)=>{const r=Kd(o+n,0,e.length-1),s=e[r].length,a=Kd(t,0,s-1);return Yy(e,r,a)},tw=(e,t,o)=>Xy(e,t,o,1),ow=(e,t,o)=>Xy(e,t,o,-1),nw=(e,t,o)=>Jy(e,o,t,-1),rw=(e,t,o)=>Jy(e,o,t,1),sw=(e,t,o)=>Qy(e,t,o,-1),aw=(e,t,o)=>Qy(e,t,o,1),iw=(e,t,o)=>ew(e,o,t,-1),lw=(e,t,o)=>ew(e,o,t,1),cw=[Vs("selectors",[Rs("row"),Rs("cell")]),Qs("cycles",!0),Qs("previousSelector",R.none),Qs("execute",Gv)],dw=(e,t,o)=>{const n=t.previousSelector(e).orThunk(()=>{const o=t.selectors;return nd(e.element,o.cell)});n.each(o=>{t.focusManager.set(e,o)})},mw=(e,t,o)=>Wm(e.element).bind(n=>o.execute(e,t,n)),uw=(e,t)=>U(e,e=>oh(e,t.selectors.cell)),gw=(e,t)=>(o,n,r)=>{const s=r.cycles?e:t;return rd(n,r.selectors.row).bind(e=>{const t=oh(e,r.selectors.cell);return fy(t,n).bind(t=>{const n=oh(o,r.selectors.row);return fy(n,e).bind(e=>{const o=uw(n,r);return s(o,e,t).map(e=>e.cell)})})})},hw=gw(ow,sw),pw=gw(tw,aw),fw=gw(nw,iw),bw=gw(rw,lw),vw=S([Iv(Nv(kv),sy(hw,pw)),Iv(Nv(Ov),ay(hw,pw)),Iv(Nv(_v),cy(fw)),Iv(Nv(Tv),dy(bw)),Iv(Nv(Sv.concat(xv)),mw)]),yw=S([Iv(Nv(Sv),Kv)]);var ww=Uv(cw,Al.init,vw,yw,()=>R.some(dw));const xw=[Rs("selector"),Qs("execute",Gv),Qs("moveOnTab",!1)],Cw=(e,t,o)=>o.focusManager.get(e).bind(n=>o.execute(e,t,n)),Sw=(e,t,o)=>{nd(e.element,t.selector).each(o=>{t.focusManager.set(e,o)})},kw=(e,t,o)=>Py(e,o.selector,t,-1),_w=(e,t,o)=>Py(e,o.selector,t,1),Ow=(e,t,o,n)=>o.moveOnTab?my(kw)(e,t,o,n):R.none(),Tw=(e,t,o,n)=>o.moveOnTab?my(_w)(e,t,o,n):R.none(),Ew=S([Iv(Nv(_v),my(kw)),Iv(Nv(Tv),my(_w)),Iv(Rv([Bv,Nv(wv)]),Ow),Iv(Rv([Hv,Nv(wv)]),Tw),Iv(Nv(xv),Cw),Iv(Nv(Sv),Cw)]),Dw=S([Iv(Nv(Sv),Kv)]);var Aw=Uv(xw,Al.init,Ew,Dw,()=>R.some(Sw));const Mw=[Dd("onSpace"),Dd("onEnter"),Dd("onShiftEnter"),Dd("onLeft"),Dd("onRight"),Dd("onTab"),Dd("onShiftTab"),Dd("onUp"),Dd("onDown"),Dd("onEscape"),Qs("stopSpaceKeyup",!1),js("focusIn")],Nw=(e,t,o)=>[Iv(Nv(Sv),o.onSpace),Iv(Rv([Hv,Nv(xv)]),o.onEnter),Iv(Rv([Bv,Nv(xv)]),o.onShiftEnter),Iv(Rv([Bv,Nv(wv)]),o.onShiftTab),Iv(Rv([Hv,Nv(wv)]),o.onTab),Iv(Nv(_v),o.onUp),Iv(Nv(Tv),o.onDown),Iv(Nv(kv),o.onLeft),Iv(Nv(Ov),o.onRight),Iv(Nv(Sv),o.onSpace)],Rw=(e,t,o)=>[...o.stopSpaceKeyup?[Iv(Nv(Sv),Kv)]:[],Iv(Nv(Cv),o.onEscape)];var Bw=Uv(Mw,Al.init,Nw,Rw,e=>e.focusIn);const Lw=$v.schema(),Hw=Wv.schema(),Iw=Ky.schema(),Pw=Iy.schema(),zw=ww.schema(),Fw=ey.schema(),Vw=Aw.schema(),Zw=Bw.schema();var Uw=Object.freeze({__proto__:null,acyclic:Lw,cyclic:Hw,flow:Iw,flatgrid:Pw,matrix:zw,execution:Fw,menu:Vw,special:Zw});const jw=e=>Oe(e,"setGridSize"),$w=Im({branchKey:"mode",branches:Uw,name:"keying",active:{events:(e,t)=>{const o=e.handler;return o.toEvents(e,t)}},apis:{focusIn:(e,t,o)=>{t.sendFocusIn(t).fold(()=>{e.getSystem().triggerFocus(e.element,e.element)},n=>{n(e,t,o)})},setGridSize:(e,t,o,n,r)=>{jw(o)?o.setGridSize(n,r):console.error("Layout does not support setGridSize")}},state:ny}),Ww=(e,t)=>{qm(()=>{op(e,t,()=>U(t,e.getSystem().build))},e.element)},qw=(e,t)=>{qm(()=>{np(e,t,()=>Oc(e.element,t,e.getSystem().buildOrPatch))},e.element)},Gw=(e,t,o,n)=>{Qh(t);const r=_c(e.element,o,n,e.getSystem().buildOrPatch);Jh(e,r),e.syncComponents()},Kw=(e,t,o)=>{const n=e.getSystem().build(o);sp(e,n,t)},Yw=(e,t,o,n)=>{ip(t),Kw(e,(e,t)=>Hn(e,t,o),n)},Xw=(e,t,o,n)=>{const r=t.reuseDom?qw:Ww;return r(e,n)},Jw=(e,t,o,n)=>{Kw(e,Ln,n)},Qw=(e,t,o,n)=>{Kw(e,Bn,n)},ex=(e,t,o,n)=>{const r=tx(e),s=X(r,e=>_t(n.element,e.element));s.each(ip)},tx=(e,t)=>e.components(),ox=(e,t,o,n,r)=>{const s=tx(e);return R.from(s[n]).map(o=>(r.fold(()=>ip(o),r=>{const s=t.reuseDom?Gw:Yw;s(e,o,n,r)}),o))},nx=(e,t,o,n,r)=>{const s=tx(e);return J(s,n).bind(n=>ox(e,t,o,n,r))};var rx=Object.freeze({__proto__:null,append:Jw,prepend:Qw,remove:ex,replaceAt:ox,replaceBy:nx,set:Xw,contents:tx});const sx=Lm({fields:[ra("reuseDom",!0)],name:"replacing",apis:rx}),ax=(e,t)=>{const o=Ri(t);return Lm({fields:[Rs("enabled")],name:e,active:{events:S(o)}})},ix=(e,t)=>{const o=ax(e,t);return{key:e,value:{config:{},me:o,configAsRaw:S({}),initialConfig:{},state:Al}}},lx=(e,t)=>{t.ignore||(Zm(e.element),t.onFocus(e))},cx=(e,t)=>{t.ignore||Um(e.element)},dx=e=>jm(e.element);var mx=Object.freeze({__proto__:null,focus:lx,blur:cx,isFocused:dx});const ux=(e,t)=>{const o=t.ignore?{}:{attributes:{tabindex:"-1"}};return Hl(o)},gx=e=>Ri([Ii(ti(),(t,o)=>{lx(t,e),o.stop()})].concat(e.stopMousedown?[Ii(Ia(),(e,t)=>{t.event.prevent()})]:[]));var hx=Object.freeze({__proto__:null,exhibit:ux,events:gx}),px=[Ed("onFocus"),Qs("stopMousedown",!1),Qs("ignore",!1)];const fx=Lm({fields:px,name:"focusing",active:hx,apis:mx}),bx=e=>{const t=()=>{const t=ca(e),o=()=>t.get(),n=e=>t.set(e),r=()=>t.set(e),s=()=>t.get();return{get:o,set:n,clear:r,readState:s}};return{init:t}},vx=(e,t,o)=>{const n=t.aria;n.update(e,n,o.get())},yx=(e,t,o)=>{t.toggleClass.each(t=>{o.get()?mc(e.element,t):gc(e.element,t)})},wx=(e,t,o,n)=>{const r=o.get();o.set(n),yx(e,t,o),vx(e,t,o),r!==n&&t.onToggled(e,n)},xx=(e,t,o)=>{wx(e,t,o,!o.get())},Cx=(e,t,o)=>{wx(e,t,o,!0)},Sx=(e,t,o)=>{wx(e,t,o,!1)},kx=(e,t,o)=>o.get(),_x=(e,t,o)=>{wx(e,t,o,t.selected)};var Ox=Object.freeze({__proto__:null,onLoad:_x,toggle:xx,isOn:kx,on:Cx,off:Sx,set:wx});const Tx=()=>Hl({}),Ex=(e,t)=>{const o=Om(e,t,xx),n=Tm(e,t,_x);return Ri(Q([e.toggleOnExecute?[o]:[],[n]]))};var Dx=Object.freeze({__proto__:null,exhibit:Tx,events:Ex});const Ax=(e,t,o)=>{eo(e.element,"aria-pressed",o),t.syncWithExpanded&&Rx(e,t,o)},Mx=(e,t,o)=>{eo(e.element,"aria-selected",o)},Nx=(e,t,o)=>{eo(e.element,"aria-checked",o)},Rx=(e,t,o)=>{eo(e.element,"aria-expanded",o)};var Bx=[Qs("selected",!1),js("toggleClass"),Qs("toggleOnExecute",!0),Ed("onToggled"),ea("aria",{mode:"none"},Es("mode",{pressed:[Qs("syncWithExpanded",!1),Nd("update",Ax)],checked:[Nd("update",Nx)],expanded:[Nd("update",Rx)],selected:[Nd("update",Mx)],none:[Nd("update",y)]}))];const Lx=Lm({fields:Bx,name:"toggling",active:Dx,apis:Ox,state:bx(!1)}),Hx=()=>{const e=(e,t)=>{t.stop(),Ei(e)};return[Ii(Ga(),e),Ii(ii(),e),ji(Ra()),ji(Ia())]},Ix=e=>{const t=e=>Yi((t,o)=>{e(t),o.stop()});return Ri(Q([e.map(t).toArray(),Hx()]))},Px="alloy.item-hover",zx="alloy.item-focus",Fx="alloy.item-toggled",Vx=e=>{(Wm(e.element).isNone()||fx.isFocused(e))&&(fx.isFocused(e)||fx.focus(e),Ti(e,Px,{item:e}))},Zx=e=>{Ti(e,zx,{item:e})},Ux=(e,t)=>{Ti(e,Fx,{item:e,state:t})},jx=S(Px),$x=S(zx),Wx=S(Fx),qx=e=>e.toggling.map(e=>e.exclusive?"menuitemradio":"menuitemcheckbox").getOr("menuitem"),Gx=e=>({aria:{mode:"checked"},...we(e,(e,t)=>"exclusive"!==t),onToggled:(t,o)=>{f(e.onToggled)&&e.onToggled(t,o),Ux(t,o)}}),Kx=e=>({dom:e.dom,domModification:{...e.domModification,attributes:{role:qx(e),...e.domModification.attributes,"aria-haspopup":e.hasSubmenu,...e.hasSubmenu?{"aria-expanded":!1}:{}}},behaviours:yf.augment(e.itemBehaviours,[e.toggling.fold(Lx.revoke,e=>Lx.config(Gx(e))),fx.config({ignore:e.ignoreFocus,stopMousedown:e.ignoreFocus,onFocus:e=>{Zx(e)}}),$w.config({mode:"execution"}),pf.config({store:{mode:"memory",initialValue:e.data}}),ix("item-type-events",[...Hx(),Ii(Va(),Vx),Ii(ai(),fx.focus)])]),components:e.components,eventOrder:e.eventOrder}),Yx=[Rs("data"),Rs("components"),Rs("dom"),Qs("hasSubmenu",!1),js("toggling"),yf.field("itemBehaviours",[Lx,fx,$w,pf]),Qs("ignoreFocus",!1),Qs("domModification",{}),Nd("builder",Kx),Qs("eventOrder",{})],Xx=e=>({dom:e.dom,components:e.components,events:Ri([$i(ai())])}),Jx=[Rs("dom"),Rs("components"),Nd("builder",Xx)],Qx=S("item-widget"),eC=S([Gf({name:"widget",overrides:e=>({behaviours:Rm([pf.config({store:{mode:"manual",getValue:t=>e.data,setValue:y}})])})})]),tC=e=>{const t=ib(Qx(),e,eC()),o=lb(Qx(),e,t.internals()),n=t=>cb(t,e,"widget").map(e=>($w.focusIn(e),e)),r=(t,o)=>Db(o.event.target)?R.none():(()=>e.autofocus?(o.setSource(t.element),R.none()):R.none())();return{dom:e.dom,components:o,domModification:e.domModification,events:Ri([Yi((e,t)=>{n(e).each(e=>{t.stop()})}),Ii(Va(),Vx),Ii(ai(),(t,o)=>{e.autofocus?n(t):fx.focus(t)})]),behaviours:yf.augment(e.widgetBehaviours,[pf.config({store:{mode:"memory",initialValue:e.data}}),fx.config({ignore:e.ignoreFocus,onFocus:e=>{Zx(e)}}),$w.config({mode:"special",focusIn:e.autofocus?e=>{n(e)}:Pm(),onLeft:r,onRight:r,onEscape:(t,o)=>fx.isFocused(t)||e.autofocus?e.autofocus?(o.setSource(t.element),R.none()):R.none():(fx.focus(t),R.some(!0))})])}},oC=[Rs("uid"),Rs("data"),Rs("components"),Rs("dom"),Qs("autofocus",!1),Qs("ignoreFocus",!1),yf.field("widgetBehaviours",[pf,fx,$w]),Qs("domModification",{}),fb(eC()),Nd("builder",tC)],nC=Es("type",{widget:oC,item:Yx,separator:Jx}),rC=(e,t)=>({mode:"flatgrid",selector:"."+e.markers.item,initSize:{numColumns:t.initSize.numColumns,numRows:t.initSize.numRows},focusManager:e.focusManager}),sC=(e,t)=>({mode:"matrix",selectors:{row:t.rowSelector,cell:"."+e.markers.item},previousSelector:t.previousSelector,focusManager:e.focusManager}),aC=(e,t)=>({mode:"menu",selector:"."+e.markers.item,moveOnTab:t.moveOnTab,focusManager:e.focusManager}),iC=S([Xf({factory:{sketch:e=>{const t=Os("menu.spec item",nC,e);return t.builder(t)}},name:"items",unit:"item",defaults:(e,t)=>_e(t,"uid")?t:{...t,uid:bl("item")},overrides:(e,t)=>({type:t.type,ignoreFocus:e.fakeFocus,domModification:{classes:[e.markers.item]}})})]),lC=S([Rs("value"),Rs("items"),Rs("dom"),Rs("components"),Qs("eventOrder",{}),ff("menuBehaviours",[vv,pf,Rb,$w]),ea("movement",{mode:"menu",moveOnTab:!0},Es("mode",{grid:[Bd(),Nd("config",rC)],matrix:[Nd("config",sC),Rs("rowSelector"),Qs("previousSelector",R.none)],menu:[Qs("moveOnTab",!0),Nd("config",aC)]})),kd(),Qs("fakeFocus",!1),Qs("focusManager",Fv()),Ed("onHighlight"),Ed("onDehighlight")]),cC=S("alloy.menu-focus"),dC=(e,t)=>{const o=oh(e.element,'[role="menuitemradio"][aria-checked="true"]');j(o,o=>{_t(o,t.element)||e.getSystem().getByDom(o).each(e=>{Lx.off(e)})})},mC=(e,t,o,n)=>({uid:e.uid,dom:e.dom,markers:e.markers,behaviours:vf(e.menuBehaviours,[vv.config({highlightClass:e.markers.selectedItem,itemClass:e.markers.item,onHighlight:e.onHighlight,onDehighlight:e.onDehighlight}),pf.config({store:{mode:"memory",initialValue:e.value}}),Rb.config({find:R.some}),$w.config(e.movement.config(e,e.movement))]),events:Ri([Ii($x(),(e,t)=>{const o=t.event;e.getSystem().getByDom(o.target).each(o=>{vv.highlight(e,o),t.stop(),Ti(e,cC(),{menu:e,item:o})})}),Ii(jx(),(e,t)=>{const o=t.event.item;vv.highlight(e,o)}),Ii(Wx(),(e,t)=>{const{item:o,state:n}=t.event;n&&"menuitemradio"===oo(o.element,"role")&&dC(e,o)})]),components:t,eventOrder:e.eventOrder,domModification:{attributes:{role:"menu"}}}),uC=Eb({name:"Menu",configFields:lC(),partFields:iC(),factory:mC}),gC=e=>fe(e,(e,t)=>({k:e,v:t})),hC=(e,t,o,n)=>ke(o,n).bind(n=>ke(e,n).bind(n=>{const r=hC(e,t,o,n);return R.some([n].concat(r))})).getOr([]),pC=(e,t)=>{const o={};he(e,(e,t)=>{j(e,e=>{o[e]=t})});const n=t,r=gC(t),s=pe(r,(e,t)=>[t].concat(hC(o,n,r,t)));return pe(o,e=>ke(s,e).getOr([e]))},fC=()=>{const e=ca({}),t=ca({}),o=ca({}),n=xu(),r=ca({}),s=()=>{e.set({}),t.set({}),o.set({}),n.clear()},a=()=>n.get().isNone(),i=(e,o)=>{t.set({...t.get(),[e]:{type:"prepared",menu:o}})},l=(s,a,i,l)=>{n.set(s),e.set(i),t.set(a),r.set(l);const c=pC(l,i);o.set(c)},c=t=>Ce(e.get(),(e,o)=>e===t),d=(e,t,o)=>p(e).bind(n=>c(e).bind(e=>t(e).map(e=>({triggeredMenu:n,triggeringItem:e,triggeringPath:o})))),m=(e,t)=>{const r=q(b(e).toArray(),e=>p(e).isSome());return ke(o.get(),e).bind(e=>{const o=oe(r.concat(e)),s=ee(o,(e,r)=>d(e,t,o.slice(0,r+1)).fold(()=>Te(n.get(),e)?[]:[R.none()],e=>[R.some(e)]));return Ae(s)})},u=t=>ke(e.get(),t).map(e=>{const n=ke(o.get(),t).getOr([]);return[e].concat(n)}),g=e=>ke(o.get(),e).bind(e=>e.length>1?R.some(e.slice(1)):R.none()),h=e=>ke(o.get(),e),p=e=>f(e).bind(bC),f=e=>ke(t.get(),e),b=t=>ke(e.get(),t),v=e=>{const t=r.get();return ne(ue(t),e)},y=()=>n.get().bind(p),w=()=>t.get();return{setMenuBuilt:i,setContents:l,expand:u,refresh:h,collapse:g,lookupMenu:f,lookupItem:b,otherMenus:v,getPrimary:y,getMenus:w,clear:s,isClear:a,getTriggeringPath:m}},bC=e=>"prepared"===e.type?R.some(e.menu):R.none(),vC={init:fC,extractPreparedMenu:bC},yC=cl("tiered-menu-item-highlight"),wC=cl("tiered-menu-item-dehighlight");var xC;(function(e){e[e["HighlightMenuAndItem"]=0]="HighlightMenuAndItem",e[e["HighlightJustMenu"]=1]="HighlightJustMenu",e[e["HighlightNone"]=2]="HighlightNone"})(xC||(xC={}));const CC=(e,t)=>{const o=xu(),n=(t,o,n)=>pe(n,(n,r)=>{const s=()=>uC.sketch({...n,value:r,markers:e.markers,fakeFocus:e.fakeFocus,onHighlight:(e,t)=>{const o={menuComp:e,itemComp:t};Ti(e,yC,o)},onDehighlight:(e,t)=>{const o={menuComp:e,itemComp:t};Ti(e,wC,o)},focusManager:e.fakeFocus?Vv():Fv()});return r===o?{type:"prepared",menu:t.getSystem().build(s())}:{type:"notbuilt",nbMenu:s}}),r=vC.init(),s=t=>{const o=n(t,e.data.primary,e.data.menus),s=l();return r.setContents(e.data.primary,o,e.data.expansions,s),r.getPrimary()},a=e=>pf.getValue(e).value,i=(e,t,o)=>me(t,e=>{if(!e.getSystem().isConnected())return R.none();const t=vv.getCandidates(e);return X(t,e=>a(e)===o)}),l=t=>pe(e.data.menus,(e,t)=>ee(e.items,e=>"separator"===e.type?[]:[e.data.value])),c=vv.highlight,d=(t,o)=>{c(t,o),vv.getHighlighted(o).orThunk(()=>vv.getFirst(o)).each(n=>{e.fakeFocus?vv.highlight(o,n):Di(t,n.element,ai())})},m=(e,t)=>De(U(t,t=>e.lookupMenu(t).bind(e=>"prepared"===e.type?R.some(e.menu):R.none()))),u=(t,o,n)=>{const r=m(o,o.otherMenus(n));j(r,o=>{fc(o.element,[e.markers.backgroundMenu]),e.stayInDom||sx.remove(t,o)})},g=t=>o.get().getOrThunk(()=>{const n={},r=oh(t.element,`.${e.markers.item}`),s=q(r,e=>"true"===oo(e,"aria-haspopup"));return j(s,e=>{t.getSystem().getByDom(e).each(e=>{const t=a(e);n[t]=e})}),o.set(n),n}),h=(e,t)=>{const o=g(e);he(o,(e,o)=>{const n=z(t,o);eo(e.element,"aria-expanded",n)})},p=(t,o,n)=>R.from(n[0]).bind(r=>o.lookupMenu(r).bind(r=>{if("notbuilt"===r.type)return R.none();{const s=r.menu,a=m(o,n.slice(1));return j(a,t=>{mc(t.element,e.markers.backgroundMenu)}),Yt(s.element)||sx.append(t,Gc(s)),fc(s.element,[e.markers.backgroundMenu]),d(t,s),u(t,o,n),R.some(s)}}));let f;(function(e){e[e["HighlightSubmenu"]=0]="HighlightSubmenu",e[e["HighlightParent"]=1]="HighlightParent"})(f||(f={}));const b=(e,t,o)=>{if("notbuilt"===o.type){const n=e.getSystem().build(o.nbMenu());return r.setMenuBuilt(t,n),n}return o.menu},v=(t,o,n=f.HighlightSubmenu)=>{if(o.hasConfigured(Jb)&&Jb.isDisabled(o))return R.some(o);{const s=a(o);return r.expand(s).bind(s=>(h(t,s),R.from(s[0]).bind(a=>r.lookupMenu(a).bind(i=>{const l=b(t,a,i);return Yt(l.element)||sx.append(t,Gc(l)),e.onOpenSubmenu(t,o,l,oe(s)),n===f.HighlightSubmenu?(vv.highlightFirst(l),p(t,r,s)):(vv.dehighlightAll(l),R.some(o))}))))}},w=(t,o)=>{const n=a(o);return r.collapse(n).bind(n=>(h(t,n),p(t,r,n).map(n=>(e.onCollapseMenu(t,o,n),n))))},x=(e,t)=>{const o=a(t);return r.refresh(o).bind(t=>(h(e,t),p(e,r,t)))},C=(e,t)=>Db(t.element)?R.none():v(e,t,f.HighlightSubmenu),S=(e,t)=>Db(t.element)?R.none():w(e,t),k=(t,o)=>w(t,o).orThunk(()=>e.onEscape(t,o).map(()=>t)),_=t=>(o,n)=>rd(n.getSource(),`.${e.markers.item}`).bind(e=>o.getSystem().getByDom(e).toOptional().bind(e=>t(o,e).map(M))),O=Ri([Ii(cC(),(e,t)=>{const o=t.event.item;r.lookupItem(a(o)).each(()=>{const o=t.event.menu;vv.highlight(e,o);const n=a(t.event.item);r.refresh(n).each(t=>u(e,r,t))})}),Yi((t,o)=>{const n=o.event.target;t.getSystem().getByDom(n).each(o=>{const n=a(o);0===n.indexOf("collapse-item")&&w(t,o),v(t,o,f.HighlightSubmenu).fold(()=>{e.onExecute(t,o)},y)})}),qi((t,o)=>{s(t).each(o=>{sx.append(t,Gc(o)),e.onOpenMenu(t,o),e.highlightOnOpen===xC.HighlightMenuAndItem?d(t,o):e.highlightOnOpen===xC.HighlightJustMenu&&c(t,o)})}),Ii(yC,(t,o)=>{e.onHighlightItem(t,o.event.menuComp,o.event.itemComp)}),Ii(wC,(t,o)=>{e.onDehighlightItem(t,o.event.menuComp,o.event.itemComp)}),...e.navigateOnHover?[Ii(jx(),(t,o)=>{const n=o.event.item;x(t,n),v(t,n,f.HighlightParent),e.onHover(t,n)})]:[]]),T=e=>vv.getHighlighted(e).bind(vv.getHighlighted),E=e=>{T(e).each(t=>{w(e,t)})},D=e=>{r.getPrimary().each(t=>{d(e,t)})},A=e=>R.from(e.components()[0]).filter(e=>"menu"===oo(e.element,"role")),N=t=>{const o=r.getPrimary().bind(e=>T(t).bind(e=>{const o=a(e),n=Se(r.getMenus()),s=De(U(n,vC.extractPreparedMenu));return r.getTriggeringPath(o,e=>i(t,s,e))}).map(t=>({primary:e,triggeringPath:t})));o.fold(()=>{A(t).each(o=>{e.onRepositionMenu(t,o,[])})},({primary:o,triggeringPath:n})=>{e.onRepositionMenu(t,o,n)})},B={collapseMenu:E,highlightPrimary:D,repositionMenus:N};return{uid:e.uid,dom:e.dom,markers:e.markers,behaviours:vf(e.tmenuBehaviours,[$w.config({mode:"special",onRight:_(C),onLeft:_(S),onEscape:_(k),focusIn:(e,t)=>{r.getPrimary().each(t=>{Di(e,t.element,ai())})}}),vv.config({highlightClass:e.markers.selectedMenu,itemClass:e.markers.menu}),Rb.config({find:e=>vv.getHighlighted(e)}),sx.config({})]),eventOrder:e.eventOrder,apis:B,events:O}},SC=S("collapse-item"),kC=(e,t,o)=>({primary:e,menus:t,expansions:o}),_C=(e,t)=>({primary:e,menus:ba(e,t),expansions:{}}),OC=e=>({value:cl(SC()),meta:{text:e}}),TC=Tb({name:"TieredMenu",configFields:[Md("onExecute"),Md("onEscape"),Ad("onOpenMenu"),Ad("onOpenSubmenu"),Ed("onRepositionMenu"),Ed("onCollapseMenu"),Qs("highlightOnOpen",xC.HighlightMenuAndItem),Vs("data",[Rs("primary"),Rs("menus"),Rs("expansions")]),Qs("fakeFocus",!1),Ed("onHighlightItem"),Ed("onDehighlightItem"),Ed("onHover"),_d(),Rs("dom"),Qs("navigateOnHover",!0),Qs("stayInDom",!1),ff("tmenuBehaviours",[$w,vv,Rb,sx]),Qs("eventOrder",{})],apis:{collapseMenu:(e,t)=>{e.collapseMenu(t)},highlightPrimary:(e,t)=>{e.highlightPrimary(t)},repositionMenus:(e,t)=>{e.repositionMenus(t)}},factory:CC,extraApis:{tieredData:kC,singleData:_C,collapseItem:OC}}),EC=(e,t,o,n,r)=>{const s=()=>e.lazySink(t),a="horizontal"===n.type?{layouts:{onLtr:()=>wm(),onRtl:()=>xm()}}:{},i=e=>2===e.length,l=e=>i(e)?a:{};return TC.sketch({dom:{tag:"div"},data:n.data,markers:n.menu.markers,highlightOnOpen:n.menu.highlightOnOpen,fakeFocus:n.menu.fakeFocus,onEscape:()=>(Np.close(t),e.onEscape.map(e=>e(t)),R.some(!0)),onExecute:()=>R.some(!0),onOpenMenu:(e,t)=>{Gh.positionWithinBounds(s().getOrDie(),t,o,r())},onOpenSubmenu:(e,t,o,n)=>{const r=s().getOrDie();Gh.position(r,o,{anchor:{type:"submenu",item:t,...l(n)}})},onRepositionMenu:(e,t,n)=>{const a=s().getOrDie();Gh.positionWithinBounds(a,t,o,r()),j(n,e=>{const t=l(e.triggeringPath);Gh.position(a,e.triggeredMenu,{anchor:{type:"submenu",item:e.triggeringItem,...t}})})}})},DC=(e,t)=>{const o=(t,o)=>{const n=e.getRelated(t);return n.exists(e=>cd(e,o))},n=(e,t)=>{Np.setContent(e,t)},r=(e,t,o)=>{s(e,t,o,R.none())},s=(e,t,o,n)=>{a(e,t,o,()=>n.map(e=>tr(e)))},a=(t,o,n,r)=>{const s=e.lazySink(t).getOrDie();Np.openWhileCloaked(t,o,()=>Gh.positionWithinBounds(s,t,n,r())),pf.setValue(t,R.some({mode:"position",config:n,getBounds:r}))},i=(e,t,o)=>{l(e,t,o,R.none)},l=(t,o,n,r)=>{const s=EC(e,t,o,n,r);Np.open(t,s),pf.setValue(t,R.some({mode:"menu",menu:s}))},c=e=>{Np.isOpen(e)&&(pf.setValue(e,R.none()),Np.close(e))},d=e=>Np.getState(e),m=t=>{Np.isOpen(t)&&pf.getValue(t).each(o=>{switch(o.mode){case"menu":Np.getState(t).each(TC.repositionMenus);break;case"position":const n=e.lazySink(t).getOrDie();Gh.positionWithinBounds(n,t,o.config,o.getBounds());break}})},u={setContent:n,showAt:r,showWithin:s,showWithinBounds:a,showMenuAt:i,showMenuWithinBounds:l,hide:c,getContent:d,reposition:m,isOpen:Np.isOpen};return{uid:e.uid,dom:e.dom,behaviours:vf(e.inlineBehaviours,[Np.config({isPartOf:(e,t,n)=>cd(t,n)||o(e,n),getAttachPoint:t=>e.lazySink(t).getOrDie(),onOpen:t=>{e.onShow(t)},onClose:t=>{e.onHide(t)}}),pf.config({store:{mode:"memory",initialValue:R.none()}}),zm.config({channels:{...Ip({isExtraPart:t.isExtraPart,...e.fireDismissalEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({})}),...zp({...e.fireRepositionEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({}),doReposition:m})}})]),eventOrder:e.eventOrder,apis:u}},AC=Tb({name:"InlineView",configFields:[Rs("lazySink"),Ed("onShow"),Ed("onHide"),Ks("onEscape"),ff("inlineBehaviours",[Np,pf,zm]),Xs("fireDismissalEventInstead",[Qs("event",vi())]),Xs("fireRepositionEventInstead",[Qs("event",yi())]),Qs("getRelated",R.none),Qs("isExtraPart",A),Qs("eventOrder",R.none)],factory:DC,apis:{showAt:(e,t,o,n)=>{e.showAt(t,o,n)},showWithin:(e,t,o,n,r)=>{e.showWithin(t,o,n,r)},showWithinBounds:(e,t,o,n,r)=>{e.showWithinBounds(t,o,n,r)},showMenuAt:(e,t,o,n)=>{e.showMenuAt(t,o,n)},showMenuWithinBounds:(e,t,o,n,r)=>{e.showMenuWithinBounds(t,o,n,r)},hide:(e,t)=>{e.hide(t)},isOpen:(e,t)=>e.isOpen(t),getContent:(e,t)=>e.getContent(t),setContent:(e,t,o)=>{e.setContent(t,o)},reposition:(e,t)=>{e.reposition(t)}}});var MC=tinymce.util.Tools.resolve("tinymce.util.Delay");const NC=e=>{const t=Ix(e.action),o=e.dom.tag,n=t=>ke(e.dom,"attributes").bind(e=>ke(e,t)),r=()=>{if("button"===o){const e=n("type").getOr("button"),t=n("role").map(e=>({role:e})).getOr({});return{type:e,...t}}{const e=n("role").getOr("button");return{role:e}}};return{uid:e.uid,dom:e.dom,components:e.components,events:t,behaviours:yf.augment(e.buttonBehaviours,[fx.config({}),$w.config({mode:"execution",useSpace:!0,useEnter:!0})]),domModification:{attributes:r()},eventOrder:e.eventOrder}},RC=Tb({name:"Button",factory:NC,configFields:[Qs("uid",void 0),Rs("dom"),Qs("components",[]),yf.field("buttonBehaviours",[fx,$w]),js("action"),js("role"),Qs("eventOrder",{})]}),BC=e=>{const t=kb(e)&&Oe(e,"uid")?e.uid:bl("memento"),o=e=>e.getSystem().getByUid(t).getOrDie(),n=e=>e.getSystem().getByUid(t).toOptional(),r=()=>({...e,uid:t});return{get:o,getOpt:n,asSpec:r}};var LC=tinymce.util.Tools.resolve("tinymce.util.I18n");const HC={indent:!0,outdent:!0,"table-insert-column-after":!0,"table-insert-column-before":!0,"paste-column-after":!0,"paste-column-before":!0,"unordered-list":!0,"list-bull-circle":!0,"list-bull-default":!0,"list-bull-square":!0},IC="temporary-placeholder",PC=e=>()=>ke(e,IC).getOr("!not found!"),zC=(e,t)=>{const o=e.toLowerCase();if(LC.isRtl()){const e=ze(o,"-rtl");return _e(t,e)?e:o}return o},FC=(e,t)=>ke(t,zC(e,t)),VC=(e,t)=>{const o=t();return FC(e,o).getOrThunk(PC(o))},ZC=(e,t,o)=>{const n=t();return FC(e,n).or(o).getOrThunk(PC(n))},UC=e=>!!LC.isRtl()&&_e(HC,e),jC=()=>ix("add-focusable",[qi(e=>{od(e.element,"svg").each(e=>eo(e,"focusable","false"))})]),$C=(e,t,o,n)=>{var r,s;const a=UC(t)?["tox-icon--flip"]:[],i=ke(o,zC(t,o)).or(n).getOrThunk(PC(o));return{dom:{tag:e.tag,attributes:null!==(r=e.attributes)&&void 0!==r?r:{},classes:e.classes.concat(a),innerHtml:i},behaviours:Rm([...null!==(s=e.behaviours)&&void 0!==s?s:[],jC()])}},WC=(e,t,o,n=R.none())=>$C(t,e,o(),n),qC=(e,t,o)=>{const n=o(),r=X(e,e=>_e(n,zC(e,n)));return $C(t,r.getOr(IC),n,R.none())},GC={success:"checkmark",error:"warning",err:"error",warning:"warning",warn:"warning",info:"info"},KC=e=>{const t=BC({dom:{tag:"p",innerHtml:e.translationProvider(e.text)},behaviours:Rm([sx.config({})])}),o=e=>({dom:{tag:"div",classes:["tox-bar"],styles:{width:`${e}%`}}}),n=e=>({dom:{tag:"div",classes:["tox-text"],innerHtml:`${e}%`}}),r=BC({dom:{tag:"div",classes:e.progress?["tox-progress-bar","tox-progress-indicator"]:["tox-progress-bar"]},components:[{dom:{tag:"div",classes:["tox-bar-container"]},components:[o(0)]},n(0)],behaviours:Rm([sx.config({})])}),s=(e,t)=>{e.getSystem().isConnected()&&r.getOpt(e).each(e=>{sx.set(e,[{dom:{tag:"div",classes:["tox-bar-container"]},components:[o(t)]},n(t)])})},a=(e,o)=>{if(e.getSystem().isConnected()){const n=t.get(e);sx.set(n,[Zc(o)])}},i={updateProgress:s,updateText:a},l=Q([e.icon.toArray(),e.level.toArray(),e.level.bind(e=>R.from(GC[e])).toArray()]),c=BC(RC.sketch({dom:{tag:"button",classes:["tox-notification__dismiss","tox-button","tox-button--naked","tox-button--icon"]},components:[WC("close",{tag:"div",classes:["tox-icon"],attributes:{"aria-label":e.translationProvider("Close")}},e.iconProvider)],action:t=>{e.onAction(t)}})),d=qC(l,{tag:"div",classes:["tox-notification__icon"]},e.iconProvider),m={dom:{tag:"div",classes:["tox-notification__body"]},components:[t.asSpec()],behaviours:Rm([sx.config({})])},u=[d,m];return{uid:e.uid,dom:{tag:"div",attributes:{role:"alert"},classes:e.level.map(e=>["tox-notification","tox-notification--in",`tox-notification--${e}`]).getOr(["tox-notification","tox-notification--in"])},behaviours:Rm([fx.config({}),ix("notification-events",[Ii(Za(),e=>{c.getOpt(e).each(fx.focus)})])]),components:u.concat(e.progress?[r.asSpec()]:[]).concat(e.closeButton?[c.asSpec()]:[]),apis:i}},YC=Tb({name:"Notification",factory:KC,configFields:[js("level"),Rs("progress"),js("icon"),Rs("onAction"),Rs("text"),Rs("iconProvider"),Rs("translationProvider"),ra("closeButton",!0)],apis:{updateProgress:(e,t,o)=>{e.updateProgress(t,o)},updateText:(e,t,o)=>{e.updateText(t,o)}}});var XC,JC,QC=(e,t,o)=>{const n=t.backstage.shared,r=()=>{const t=tr(Qe.fromDom(e.getContentAreaContainer())),o=nr(),n=Kd(o.x,t.x,t.right),r=Kd(o.y,t.y,t.bottom),s=Math.max(t.right,o.right),a=Math.max(t.bottom,o.bottom);return R.some(er(n,r,s-n,a-r))},s=(t,s)=>{const a=()=>{s(),AC.hide(l)},i=qc(YC.sketch({text:t.text,level:z(["success","error","warning","warn","info"],t.type)?t.type:void 0,progress:!0===t.progressBar,icon:t.icon,closeButton:t.closeButton,onAction:a,iconProvider:n.providers.icons,translationProvider:n.providers.translate})),l=qc(AC.sketch({dom:{tag:"div",classes:["tox-notifications-container"]},lazySink:n.getSink,fireDismissalEventInstead:{},...n.header.isPositionedAtTop()?{}:{fireRepositionEventInstead:{}}}));o.add(l),b(t.timeout)&&t.timeout>0&&MC.setEditorTimeout(e,()=>{a()},t.timeout);const c=()=>{const t=Gc(i),o={maxHeightFunction:ju()},s=e.notificationManager.getNotifications();if(s[0]===d){const e={...n.anchors.banner(),overrides:o};AC.showWithinBounds(l,t,{anchor:e},r)}else P(s,d).each(e=>{const n=s[e-1].getEl(),a={type:"node",root:Xt(),node:R.some(Qe.fromDom(n)),overrides:o,layouts:{onRtl:()=>[gm],onLtr:()=>[gm]}};AC.showWithinBounds(l,t,{anchor:a},r)})},d={close:a,reposition:c,text:e=>{YC.updateText(i,e)},settings:t,getEl:()=>i.element.dom,progressBar:{value:e=>{YC.updateProgress(i,e)}}};return d},a=e=>{e.close()},i=e=>e.settings;return{open:s,close:a,getArgs:i}},eS=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),tS=tinymce.util.Tools.resolve("tinymce.EditorManager"),oS=tinymce.util.Tools.resolve("tinymce.Env");(function(e){e["default"]="wrap",e["floating"]="floating",e["sliding"]="sliding",e["scrolling"]="scrolling"})(XC||(XC={})),function(e){e["auto"]="auto",e["top"]="top",e["bottom"]="bottom"}(JC||(JC={}));const nS=e=>t=>t.options.get(e),rS=e=>t=>R.from(e(t)),sS=e=>{const t=oS.deviceType.isPhone(),o=oS.deviceType.isTablet()||t,n=e.options.register,r=e=>i(e)||!1===e,s=e=>i(e)||b(e);n("skin",{processor:e=>i(e)||!1===e,default:"oxide"}),n("skin_url",{processor:"string"}),n("height",{processor:s,default:Math.max(e.getElement().offsetHeight,400)}),n("width",{processor:s,default:eS.DOM.getStyle(e.getElement(),"width")}),n("min_height",{processor:"number",default:100}),n("min_width",{processor:"number"}),n("max_height",{processor:"number"}),n("max_width",{processor:"number"}),n("style_formats",{processor:"object[]"}),n("style_formats_merge",{processor:"boolean",default:!1}),n("style_formats_autohide",{processor:"boolean",default:!1}),n("line_height_formats",{processor:"string",default:"1 1.1 1.2 1.3 1.4 1.5 2"}),n("font_family_formats",{processor:"string",default:"Andale Mono=andale mono,monospace;Arial=arial,helvetica,sans-serif;Arial Black=arial black,sans-serif;Book Antiqua=book antiqua,palatino,serif;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,palatino,serif;Helvetica=helvetica,arial,sans-serif;Impact=impact,sans-serif;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco,monospace;Times New Roman=times new roman,times,serif;Trebuchet MS=trebuchet ms,geneva,sans-serif;Verdana=verdana,geneva,sans-serif;Webdings=webdings;Wingdings=wingdings,zapf dingbats"}),n("font_size_formats",{processor:"string",default:"8pt 10pt 12pt 14pt 18pt 24pt 36pt"}),n("block_formats",{processor:"string",default:"Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h3;Heading 4=h4;Heading 5=h5;Heading 6=h6;Preformatted=pre"}),n("content_langs",{processor:"object[]"}),n("removed_menuitems",{processor:"string",default:""}),n("menubar",{processor:e=>i(e)||u(e),default:!t}),n("menu",{processor:"object",default:{}}),n("toolbar",{processor:e=>u(e)||i(e)||d(e)?{value:e,valid:!0}:{valid:!1,message:"Must be a boolean, string or array."},default:!0}),V(9,e=>{n("toolbar"+(e+1),{processor:"string"})}),n("toolbar_mode",{processor:"string",default:o?"scrolling":"floating"}),n("toolbar_groups",{processor:"object",default:{}}),n("toolbar_location",{processor:"string",default:JC.auto}),n("toolbar_persist",{processor:"boolean",default:!1}),n("toolbar_sticky",{processor:"boolean",default:e.inline}),n("toolbar_sticky_offset",{processor:"number",default:0}),n("fixed_toolbar_container",{processor:"string",default:""}),n("fixed_toolbar_container_target",{processor:"object"}),n("file_picker_callback",{processor:"function"}),n("file_picker_validator_handler",{processor:"function"}),n("file_picker_types",{processor:"string"}),n("typeahead_urls",{processor:"boolean",default:!0}),n("anchor_top",{processor:r,default:"#top"}),n("anchor_bottom",{processor:r,default:"#bottom"}),n("draggable_modal",{processor:"boolean",default:!1}),n("statusbar",{processor:"boolean",default:!0}),n("elementpath",{processor:"boolean",default:!0}),n("branding",{processor:"boolean",default:!0}),n("promotion",{processor:"boolean",default:!0}),n("resize",{processor:e=>"both"===e||u(e),default:!oS.deviceType.isTouch()}),n("sidebar_show",{processor:"string"})},aS=nS("readonly"),iS=nS("height"),lS=nS("width"),cS=rS(nS("min_width")),dS=rS(nS("min_height")),mS=rS(nS("max_width")),uS=rS(nS("max_height")),gS=rS(nS("style_formats")),hS=nS("style_formats_merge"),pS=nS("style_formats_autohide"),fS=nS("content_langs"),bS=nS("removed_menuitems"),vS=nS("toolbar_mode"),yS=nS("toolbar_groups"),wS=nS("toolbar_location"),xS=nS("fixed_toolbar_container"),CS=nS("fixed_toolbar_container_target"),SS=nS("toolbar_persist"),kS=nS("toolbar_sticky_offset"),_S=nS("menubar"),OS=nS("toolbar"),TS=nS("file_picker_callback"),ES=nS("file_picker_validator_handler"),DS=nS("file_picker_types"),AS=nS("typeahead_urls"),MS=nS("anchor_top"),NS=nS("anchor_bottom"),RS=nS("draggable_modal"),BS=nS("statusbar"),LS=nS("elementpath"),HS=nS("branding"),IS=nS("resize"),PS=nS("paste_as_text"),zS=nS("sidebar_show"),FS=nS("promotion"),VS=e=>!1===e.options.get("skin"),ZS=e=>!1!==e.options.get("menubar"),US=e=>{const t=e.options.get("skin_url");if(VS(e))return t;if(t)return e.documentBaseURI.toAbsolute(t);{const t=e.options.get("skin");return tS.baseURL+"/skins/ui/"+t}},jS=e=>e.options.get("line_height_formats").split(" "),$S=e=>{const t=OS(e),o=i(t),n=d(t)&&t.length>0;return!qS(e)&&(n||o||!0===t)},WS=e=>{const t=V(9,t=>e.options.get("toolbar"+(t+1))),o=q(t,i);return Be(o.length>0,o)},qS=e=>WS(e).fold(()=>{const t=OS(e);return v(t,i)&&t.length>0},M),GS=e=>wS(e)===JC.bottom,KS=e=>{var t;if(!e.inline)return R.none();const o=null!==(t=xS(e))&&void 0!==t?t:"";if(o.length>0)return nd(Xt(),o);const n=CS(e);return p(n)?R.some(Qe.fromDom(n)):R.none()},YS=e=>e.inline&&KS(e).isSome(),XS=e=>{const t=KS(e);return t.getOrThunk(()=>jt(Ut(Qe.fromDom(e.getElement()))))},JS=e=>e.inline&&!ZS(e)&&!$S(e)&&!qS(e),QS=e=>{const t=e.options.get("toolbar_sticky");return(t||e.inline)&&!YS(e)&&!JS(e)},ek=e=>{const t=e.options.get("menu");return pe(t,e=>({...e,items:e.items}))};var tk=Object.freeze({__proto__:null,get ToolbarMode(){return XC},get ToolbarLocation(){return JC},register:sS,getSkinUrl:US,isReadOnly:aS,isSkinDisabled:VS,getHeightOption:iS,getWidthOption:lS,getMinWidthOption:cS,getMinHeightOption:dS,getMaxWidthOption:mS,getMaxHeightOption:uS,getUserStyleFormats:gS,shouldMergeStyleFormats:hS,shouldAutoHideStyleFormats:pS,getLineHeightFormats:jS,getContentLanguages:fS,getRemovedMenuItems:bS,isMenubarEnabled:ZS,isMultipleToolbars:qS,isToolbarEnabled:$S,isToolbarPersist:SS,getMultipleToolbarsOption:WS,getUiContainer:XS,useFixedContainer:YS,getToolbarMode:vS,isDraggableModal:RS,isDistractionFree:JS,isStickyToolbar:QS,getStickyToolbarOffset:kS,getToolbarLocation:wS,isToolbarLocationBottom:GS,getToolbarGroups:yS,getMenus:ek,getMenubar:_S,getToolbar:OS,getFilePickerCallback:TS,getFilePickerTypes:DS,useTypeaheadUrls:AS,getAnchorTop:MS,getAnchorBottom:NS,getFilePickerValidatorHandler:ES,useStatusBar:BS,useElementPath:LS,promotionEnabled:FS,useBranding:HS,getResize:IS,getPasteAsText:PS,getSidebarShow:zS});const ok="[data-mce-autocompleter]",nk=e=>rd(e,ok),rk=e=>nd(e,ok),sk=(e,t)=>{const o=(e,t)=>{Ti(e,ja(),{raw:t})},n=()=>e.getMenu().bind(vv.getHighlighted);t.on("keydown",t=>{const r=t.which;e.isActive()&&(e.isMenuOpen()?13===r?(n().each(Ei),t.preventDefault()):40===r?(n().fold(()=>{e.getMenu().each(vv.highlightFirst)},e=>{o(e,t)}),t.preventDefault(),t.stopImmediatePropagation()):37!==r&&38!==r&&39!==r||n().each(e=>{o(e,t),t.preventDefault(),t.stopImmediatePropagation()}):13!==r&&38!==r&&40!==r||e.cancelIfNecessary())}),t.on("NodeChange",t=>{e.isActive()&&!e.isProcessingAction()&&nk(Qe.fromDom(t.element)).isNone()&&e.cancelIfNecessary()})},ak={setup:sk};var ik;(function(e){e[e["CLOSE_ON_EXECUTE"]=0]="CLOSE_ON_EXECUTE",e[e["BUBBLE_TO_SANDBOX"]=1]="BUBBLE_TO_SANDBOX"})(ik||(ik={}));var lk=ik;const ck="tox-menu-nav__js",dk="tox-collection__item",mk="tox-swatch",uk={normal:ck,color:mk},gk="tox-collection__item--enabled",hk="tox-collection__group-heading",pk="tox-collection__item-icon",fk="tox-collection__item-label",bk="tox-collection__item-accessory",vk="tox-collection__item-caret",yk="tox-collection__item-checkmark",wk="tox-collection__item--active",xk="tox-collection__item-container",Ck="tox-collection__item-container--column",Sk="tox-collection__item-container--row",kk="tox-collection__item-container--align-right",_k="tox-collection__item-container--align-left",Ok="tox-collection__item-container--valign-top",Tk="tox-collection__item-container--valign-middle",Ek="tox-collection__item-container--valign-bottom",Dk=e=>ke(uk,e).getOr(ck),Ak=e=>"color"===e?"tox-swatches":"tox-menu",Mk=e=>({backgroundMenu:"tox-background-menu",selectedMenu:"tox-selected-menu",selectedItem:"tox-collection__item--active",hasIcons:"tox-menu--has-icons",menu:Ak(e),tieredMenu:"tox-tiered-menu"}),Nk=e=>{const t=Mk(e);return{backgroundMenu:t.backgroundMenu,selectedMenu:t.selectedMenu,menu:t.menu,selectedItem:t.selectedItem,item:Dk(e)}},Rk=(e,t,o)=>{const n=Mk(o);return{tag:"div",classes:Q([[n.menu,`tox-menu-${t}-column`],e?[n.hasIcons]:[]])}},Bk=[uC.parts.items({})],Lk=(e,t,o)=>{const n=Mk(o),r={tag:"div",classes:Q([[n.tieredMenu]])};return{dom:r,markers:Nk(o)}},Hk=S([js("data"),Qs("inputAttributes",{}),Qs("inputStyles",{}),Qs("tag","input"),Qs("inputClasses",[]),Ed("onSetValue"),Qs("styles",{}),Qs("eventOrder",{}),ff("inputBehaviours",[pf,fx]),Qs("selectOnFocus",!0)]),Ik=e=>Rm([fx.config({onFocus:e.selectOnFocus?e=>{const t=e.element,o=wc(t);t.dom.setSelectionRange(0,o.length)}:y})]),Pk=e=>({...Ik(e),...vf(e.inputBehaviours,[pf.config({store:{mode:"manual",...e.data.map(e=>({initialValue:e})).getOr({}),getValue:e=>wc(e.element),setValue:(e,t)=>{const o=wc(e.element);o!==t&&xc(e.element,t)}},onSetValue:e.onSetValue})])}),zk=e=>({tag:e.tag,attributes:{type:"text",...e.inputAttributes},styles:e.inputStyles,classes:e.inputClasses}),Fk=(e,t)=>({uid:e.uid,dom:zk(e),components:[],behaviours:Pk(e),eventOrder:e.eventOrder}),Vk=Tb({name:"Input",configFields:Hk(),factory:Fk}),Zk=cl("refetch-trigger-event"),Uk=cl("redirect-menu-item-interaction"),jk="tox-menu__searcher",$k=e=>nd(e.element,`.${jk}`).bind(t=>e.getSystem().getByDom(t).toOptional()),Wk=$k,qk=(e,t)=>{pf.setValue(e,t.fetchPattern),e.element.dom.selectionStart=t.selectionStart,e.element.dom.selectionEnd=t.selectionEnd},Gk=e=>{const t=pf.getValue(e),o=e.element.dom.selectionStart,n=e.element.dom.selectionEnd;return{fetchPattern:t,selectionStart:o,selectionEnd:n}},Kk=(e,t)=>{no(t.element,"id").each(t=>eo(e.element,"aria-activedescendant",t))},Yk=e=>{const t=(e,t)=>(t.cut(),R.none()),o=(e,t)=>{const o={interactionEvent:t.event,eventType:t.event.raw.type};return Ti(e,Uk,o),R.some(!0)},n="searcher-events";return{dom:{tag:"div",classes:[dk]},components:[Vk.sketch({inputClasses:[jk,"tox-textfield"],inputAttributes:{...e.placeholder.map(t=>({placeholder:e.i18n(t)})).getOr({}),type:"search","aria-autocomplete":"list"},inputBehaviours:Rm([ix(n,[Ii(Wa(),e=>{Oi(e,Zk)}),Ii(ja(),(e,t)=>{"Escape"===t.event.raw.key&&t.stop()})]),$w.config({mode:"special",onLeft:t,onRight:t,onSpace:t,onEnter:o,onEscape:o,onUp:o,onDown:o})]),eventOrder:{keydown:[n,$w.name()]}})]}},Xk="tox-collection--results__js",Jk=e=>{var t;return e.dom?{...e,dom:{...e.dom,attributes:{...null!==(t=e.dom.attributes)&&void 0!==t?t:{},id:cl("aria-item-search-result-id"),"aria-selected":"false"}}}:e},Qk=(e,t)=>o=>{const n=Z(o,t);return U(n,t=>({dom:e,components:t}))},e_=e=>({dom:{tag:"div",classes:["tox-menu","tox-swatches-menu"]},components:[{dom:{tag:"div",classes:["tox-swatches"]},components:[uC.parts.items({preprocess:"auto"!==e?Qk({tag:"div",classes:["tox-swatches__row"]},e):k})]}]}),t_=e=>({dom:{tag:"div",classes:["tox-menu","tox-collection","tox-collection--toolbar","tox-collection--toolbar-lg"]},components:[uC.parts.items({preprocess:Qk({tag:"div",classes:["tox-collection__group"]},e)})]}),o_=(e,t)=>{const o=[];let n=[];return j(e,(e,r)=>{t(e,r)?(n.length>0&&o.push(n),n=[],(_e(e.dom,"innerHtml")||e.components&&e.components.length>0)&&n.push(e)):n.push(e)}),n.length>0&&o.push(n),U(o,e=>({dom:{tag:"div",classes:["tox-collection__group"]},components:e}))},n_=(e,t,o)=>uC.parts.items({preprocess:n=>{const r=U(n,o);return"auto"!==e&&e>1?Qk({tag:"div",classes:["tox-collection__group"]},e)(r):o_(r,(e,o)=>"separator"===t[o].type)}}),r_=(e,t,o=!0)=>({dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(1===e?["tox-collection--list"]:["tox-collection--grid"])},components:[n_(e,t,k)]}),s_=(e,t,o=!0)=>{const n=cl("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection",Xk].concat(1===e?["tox-collection--list"]:["tox-collection--grid"]),attributes:{id:n}},components:[n_(e,t,Jk)]}},a_=(e,t,o)=>{const n=cl("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(1===e?["tox-collection--list"]:["tox-collection--grid"])},components:[Yk({i18n:LC.translate,placeholder:o.placeholder}),{dom:{tag:"div",classes:[...1===e?["tox-collection--list"]:["tox-collection--grid"],Xk],attributes:{id:n}},components:[n_(e,t,Jk)]}]}},i_=(e,t=!0)=>({dom:{tag:"div",classes:["tox-collection","tox-collection--horizontal"]},components:[uC.parts.items({preprocess:t=>o_(t,(t,o)=>"separator"===e[o].type)})]}),l_=e=>F(e,e=>"icon"in e&&void 0!==e.icon),c_=e=>(console.error(Ts(e)),console.log(e),R.none()),d_=(e,t,o,n,r)=>{const s=i_(o);return{value:e,dom:s.dom,components:s.components,items:o}},m_=(e,t,o,n,r)=>{const s=()=>"searchable"!==r.menuType?r_(n,o):"search-with-field"===r.searchMode.searchMode?a_(n,o,r.searchMode):s_(n,o);if("color"===r.menuType){const t=e_(n);return{value:e,dom:t.dom,components:t.components,items:o}}if("normal"===r.menuType&&"auto"===n){const t=r_(n,o);return{value:e,dom:t.dom,components:t.components,items:o}}if("normal"===r.menuType||"searchable"===r.menuType){const t=s();return{value:e,dom:t.dom,components:t.components,items:o}}if("listpreview"===r.menuType&&"auto"!==n){const t=t_(n);return{value:e,dom:t.dom,components:t.components,items:o}}return{value:e,dom:Rk(t,n,r.menuType),components:Bk,items:o}},u_=Hs("type"),g_=Hs("name"),h_=Hs("label"),p_=Hs("text"),f_=Hs("title"),b_=Hs("icon"),v_=Hs("value"),y_=zs("fetch"),w_=zs("getSubmenuItems"),x_=zs("onAction"),C_=zs("onItemAction"),S_=sa("onSetup",()=>y),k_=qs("name"),__=qs("text"),O_=qs("icon"),T_=qs("tooltip"),E_=qs("label"),D_=qs("shortcut"),A_=Ks("select"),M_=ra("active",!1),N_=ra("borderless",!1),R_=ra("enabled",!0),B_=ra("primary",!1),L_=e=>Qs("columns",e),H_=Qs("meta",{}),I_=sa("onAction",y),P_=e=>oa("type",e),z_=e=>As("name","name",Dr(()=>cl(`${e}-name`)),gs),F_=e=>As("value","value",Dr(()=>cl(`${e}-value`)),ds()),V_=rs([u_,__]),Z_=e=>ks("separatormenuitem",V_,e),U_=rs([P_("autocompleteitem"),M_,R_,H_,v_,__,O_]),j_=e=>ks("Autocompleter.Separator",V_,e),$_=e=>ks("Autocompleter.Item",U_,e),W_=[R_,T_,O_,__,S_],q_=rs([u_,x_].concat(W_)),G_=e=>ks("toolbarbutton",q_,e),K_=[M_].concat(W_),Y_=rs(K_.concat([u_,x_])),X_=e=>ks("ToggleButton",Y_,e),J_=[sa("predicate",A),na("scope","node",["node","editor"]),na("position","selection",["node","selection","line"])],Q_=W_.concat([P_("contextformbutton"),B_,x_,Ms("original",k)]),eO=K_.concat([P_("contextformbutton"),B_,x_,Ms("original",k)]),tO=W_.concat([P_("contextformbutton")]),oO=K_.concat([P_("contextformtogglebutton")]),nO=Es("type",{contextformbutton:Q_,contextformtogglebutton:eO}),rO=rs([P_("contextform"),sa("initValue",S("")),E_,Us("commands",nO),$s("launch",Es("type",{contextformbutton:tO,contextformtogglebutton:oO}))].concat(J_)),sO=e=>ks("ContextForm",rO,e),aO=rs([P_("contexttoolbar"),Hs("items")].concat(J_)),iO=e=>ks("ContextToolbar",aO,e),lO=[u_,Hs("src"),qs("alt"),ia("classes",[],gs)],cO=rs(lO),dO=[u_,p_,k_,ia("classes",["tox-collection__item-label"],gs)],mO=rs(dO),uO=ts(()=>ys("type",{cardimage:cO,cardtext:mO,cardcontainer:gO})),gO=rs([u_,oa("direction","horizontal"),oa("align","left"),oa("valign","middle"),Us("items",uO)]),hO=[R_,__,D_,F_("menuitem"),H_],pO=rs([u_,E_,Us("items",uO),S_,I_].concat(hO)),fO=e=>ks("cardmenuitem",pO,e),bO=rs([u_,M_,O_].concat(hO)),vO=e=>ks("choicemenuitem",bO,e),yO=[u_,Hs("fancytype"),I_],wO=[Qs("initData",{})].concat(yO),xO=[la("initData",{},[ra("allowCustomColors",!0),oa("storageKey","default"),Ys("colors",ds())])].concat(yO),CO=Es("fancytype",{inserttable:wO,colorswatch:xO}),SO=e=>ks("fancymenuitem",CO,e),kO=rs([u_,S_,I_,O_].concat(hO)),_O=e=>ks("menuitem",kO,e),OO=rs([u_,w_,S_,O_].concat(hO)),TO=e=>ks("nestedmenuitem",OO,e),EO=rs([u_,O_,M_,S_,x_].concat(hO)),DO=e=>ks("togglemenuitem",EO,e),AO=(e,t,o)=>{const n=oh(e.element,"."+o);if(n.length>0){const e=J(n,e=>{const o=e.dom.getBoundingClientRect().top,r=n[0].dom.getBoundingClientRect().top;return Math.abs(o-r)>t}).getOr(n.length);return R.some({numColumns:e,numRows:Math.ceil(n.length/e)})}return R.none()},MO=(e,t)=>Rm([ix(e,t)]),NO=e=>MO(cl("unnamed-events"),e),RO={namedEvents:MO,unnamedEvents:NO},BO=cl("tooltip.exclusive"),LO=cl("tooltip.show"),HO=cl("tooltip.hide"),IO=(e,t,o)=>{e.getSystem().broadcastOn([BO],{})},PO=(e,t,o,n)=>{o.getTooltip().each(e=>{e.getSystem().isConnected()&&sx.set(e,n)})};var zO=Object.freeze({__proto__:null,hideAllExclusive:IO,setComponents:PO});const FO=(e,t)=>{const o=o=>{t.getTooltip().each(n=>{ip(n),e.onHide(o,n),t.clearTooltip()}),t.clearTimer()},n=o=>{if(!t.isShowing()){IO(o);const n=e.lazySink(o).getOrDie(),r=o.getSystem().build({dom:e.tooltipDom,components:e.tooltipComponents,events:Ri("normal"===e.mode?[Ii(Va(),e=>{Oi(o,LO)}),Ii(za(),e=>{Oi(o,HO)})]:[]),behaviours:Rm([sx.config({})])});t.setTooltip(r),rp(n,r),e.onShow(o,r),Gh.position(n,r,{anchor:e.anchor(o)})}};return Ri(Q([[Ii(LO,o=>{t.resetTimer(()=>{n(o)},e.delay)}),Ii(HO,n=>{t.resetTimer(()=>{o(n)},e.delay)}),Ii(ri(),(e,t)=>{const n=t;n.universal||z(n.channels,BO)&&o(e)}),Gi(e=>{o(e)})],"normal"===e.mode?[Ii(Za(),e=>{Oi(e,LO)}),Ii(oi(),e=>{Oi(e,HO)}),Ii(Va(),e=>{Oi(e,LO)}),Ii(za(),e=>{Oi(e,HO)})]:[Ii(ki(),(e,t)=>{Oi(e,LO)}),Ii(_i(),e=>{Oi(e,HO)})]]))};var VO=Object.freeze({__proto__:null,events:FO}),ZO=[Rs("lazySink"),Rs("tooltipDom"),Qs("exclusive",!0),Qs("tooltipComponents",[]),Qs("delay",300),na("mode","normal",["normal","follow-highlight"]),Qs("anchor",e=>({type:"hotspot",hotspot:e,layouts:{onLtr:S([gm,um,lm,dm,cm,mm]),onRtl:S([gm,um,lm,dm,cm,mm])}})),Ed("onHide"),Ed("onShow")];const UO=()=>{const e=xu(),t=xu(),o=()=>{e.on(clearTimeout)},n=(t,n)=>{o(),e.set(setTimeout(t,n))},r=S("not-implemented");return Ml({getTooltip:t.get,isShowing:t.isSet,setTooltip:t.set,clearTooltip:t.clear,clearTimer:o,resetTimer:n,readState:r})};var jO=Object.freeze({__proto__:null,init:UO});const $O=Lm({fields:ZO,name:"tooltipping",active:VO,state:jO,apis:zO}),WO=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),qO="silver.readonly",GO=rs([Ps("readonly")]),KO=(e,t)=>{const o=e.mainUi.outerContainer,n=o.element,r=[e.mainUi.mothership,...e.uiMotherships];t&&j(r,e=>{e.broadcastOn([Rp()],{target:n})}),j(r,e=>{e.broadcastOn([qO],{readonly:t})})},YO=(e,t)=>{e.on("init",()=>{e.mode.isReadOnly()&&KO(t,!0)}),e.on("SwitchMode",()=>KO(t,e.mode.isReadOnly())),aS(e)&&e.mode.set("readonly")},XO=()=>zm.config({channels:{[qO]:{schema:GO,onReceive:(e,t)=>{Jb.set(e,t.readonly)}}}}),JO=e=>Jb.config({disabled:e,disableClass:"tox-collection__item--state-disabled"}),QO=e=>Jb.config({disabled:e}),eT=e=>Jb.config({disabled:e,disableClass:"tox-tbtn--disabled"}),tT=e=>Jb.config({disabled:e,disableClass:"tox-tbtn--disabled",useNative:!1}),oT={item:JO,button:QO,splitButton:eT,toolbarButton:tT},nT=(e,t)=>{const o=e.getApi(t);return e=>{e(o)}},rT=(e,t)=>qi(o=>{const n=nT(e,o);n(o=>{const n=e.onSetup(o);f(n)&&t.set(n)})}),sT=(e,t)=>Gi(o=>nT(e,o)(t.get())),aT=(e,t)=>Yi((o,n)=>{nT(e,o)(e.onAction),e.triggersSubmenu||t!==lk.CLOSE_ON_EXECUTE||(o.getSystem().isConnected()&&Oi(o,ci()),n.stop())}),iT={[si()]:["disabling","alloy.base.behaviour","toggling","item-events"]},lT=De,cT=(e,t,o,n)=>{const r=ca(y);return{type:"item",dom:t.dom,components:lT(t.optComponents),data:e.data,eventOrder:iT,hasSubmenu:e.triggersSubmenu,itemBehaviours:Rm([ix("item-events",[aT(e,o),rT(e,r),sT(e,r)]),oT.item(()=>!e.enabled||n.isDisabled()),XO(),sx.config({})].concat(e.itemBehaviours))}},dT=e=>({value:e.value,meta:{text:e.text.getOr(""),...e.meta}}),mT=e=>{const t=oS.os.isMacOS()||oS.os.isiOS(),o={alt:"⌥",ctrl:"⌃",shift:"⇧",meta:"⌘",access:"⌃⌥"},n={meta:"Ctrl",access:"Shift+Alt"},r=t?o:n,s=e.split("+"),a=U(s,e=>{const t=e.toLowerCase().trim();return _e(r,t)?r[t]:e});return t?a.join(""):a.join("+")},uT=(e,t,o=[pk])=>WC(e,{tag:"div",classes:o},t),gT=e=>({dom:{tag:"div",classes:[fk]},components:[Zc(LC.translate(e))]}),hT=(e,t)=>({dom:{tag:"div",classes:t,innerHtml:e}}),pT=(e,t)=>({dom:{tag:"div",classes:[fk]},components:[{dom:{tag:e.tag,styles:e.styles},components:[Zc(LC.translate(t))]}]}),fT=e=>({dom:{tag:"div",classes:[bk]},components:[Zc(mT(e))]}),bT=e=>uT("checkmark",e,[yk]),vT=e=>uT("chevron-right",e,[vk]),yT=e=>uT("chevron-down",e,[vk]),wT=(e,t)=>{const o="vertical"===e.direction?Ck:Sk,n="left"===e.align?_k:kk,r=()=>{switch(e.valign){case"top":return Ok;case"middle":return Tk;case"bottom":return Ek}};return{dom:{tag:"div",classes:[xk,o,n,r()]},components:t}},xT=(e,t,o)=>({dom:{tag:"img",classes:t,attributes:{src:e,alt:o.getOr("")}}}),CT=(e,t,o)=>{const n="custom",r="remove",s=e.ariaLabel,a=e.value,i=e.iconContent.map(e=>ZC(e,t.icons,o)),l=()=>{const e=mk,o=i.getOr(""),l=s.map(e=>({title:t.translate(e)})).getOr({}),c={tag:"div",attributes:l,classes:[e]};return a===n?{...c,tag:"button",classes:[...c.classes,"tox-swatches__picker-btn"],innerHtml:o}:a===r?{...c,classes:[...c.classes,"tox-swatch--remove"],innerHtml:o}:p(a)?{...c,attributes:{...c.attributes,"data-mce-color":a},styles:{"background-color":a},innerHtml:o}:c};return{dom:l(),optComponents:[]}},ST=e=>{const t=e.map(e=>({attributes:{title:LC.translate(e)}})).getOr({});return{tag:"div",classes:[ck,dk],...t}},kT=(e,t,o,n)=>{const r={tag:"div",classes:[pk]},s=e=>WC(e,r,t.icons,n),a=()=>R.some({dom:r}),i=o?e.iconContent.map(s).orThunk(a):R.none(),l=e.checkMark,c=R.from(e.meta).fold(()=>gT,e=>_e(e,"style")?O(pT,e.style):gT),d=e.htmlContent.fold(()=>e.textContent.map(c),e=>R.some(hT(e,[fk]))),m={dom:ST(e.ariaLabel),optComponents:[i,d,e.shortcutContent.map(fT),l,e.caret]};return m},_T=(e,t,o,n=R.none())=>"color"===e.presets?CT(e,t,n):kT(e,t,o,n),OT=(e,t)=>ke(e,"tooltipWorker").map(e=>[$O.config({lazySink:t.getSink,tooltipDom:{tag:"div",classes:["tox-tooltip-worker-container"]},tooltipComponents:[],anchor:e=>({type:"submenu",item:e,overrides:{maxHeightFunction:ju}}),mode:"follow-highlight",onShow:(t,o)=>{e(e=>{$O.setComponents(t,[Uc({element:Qe.fromDom(e)})])})}})]).getOr([]),TT=e=>eS.DOM.encode(e),ET=(e,t)=>{const o=LC.translate(e),n=TT(o);if(t.length>0){const e=new RegExp(WO(t),"gi");return n.replace(e,e=>`${e}`)}return n},DT=(e,t,o,n,r,s,a,i=!0)=>{const l=_T({presets:n,textContent:R.none(),htmlContent:o?e.text.map(e=>ET(e,t)):R.none(),ariaLabel:e.text,iconContent:e.icon,shortcutContent:R.none(),checkMark:R.none(),caret:R.none(),value:e.value},a.providers,i,e.icon);return cT({data:dT(e),enabled:e.enabled,getApi:S({}),onAction:t=>r(e.value,e.meta),onSetup:S(y),triggersSubmenu:!1,itemBehaviours:OT(e.meta,a)},l,s,a.providers)},AT=(e,t)=>U(e,e=>{switch(e.type){case"cardcontainer":return wT(e,AT(e.items,t));case"cardimage":return xT(e.src,e.classes,e.alt);case"cardtext":const o=e.name.exists(e=>z(t.cardText.highlightOn,e)),n=o?R.from(t.cardText.matchText).getOr(""):"";return hT(ET(e.text,n),e.classes)}}),MT=(e,t,o,n)=>{const r=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>{Jb.set(e,!t),j(oh(e.element,"*"),o=>{e.getSystem().getByDom(o).each(e=>{e.hasConfigured(Jb)&&Jb.set(e,!t)})})}}),s={dom:ST(e.label),optComponents:[R.some({dom:{tag:"div",classes:[xk,Sk]},components:AT(e.items,n)})]};return cT({data:dT({text:R.none(),...e}),enabled:e.enabled,getApi:r,onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:R.from(n.itemBehaviours).getOr([])},s,t,o.providers)},NT=(e,t,o,n,r,s,a,i=!0)=>{const l=e=>({setActive:t=>{Lx.set(e,t)},isActive:()=>Lx.isOn(e),isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),c=_T({presets:o,textContent:t?e.text:R.none(),htmlContent:R.none(),ariaLabel:e.text,iconContent:e.icon,shortcutContent:t?e.shortcut:R.none(),checkMark:t?R.some(bT(a.icons)):R.none(),caret:R.none(),value:e.value},a,i);return Or(cT({data:dT(e),enabled:e.enabled,getApi:l,onAction:t=>n(e.value),onSetup:e=>(e.setActive(r),y),triggersSubmenu:!1,itemBehaviours:[]},c,s,a),{toggling:{toggleClass:gk,toggleOnExecute:!1,selected:e.active,exclusive:!0}})},RT=ob(Qx(),eC()),BT=e=>({value:e}),LT=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,HT=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,IT=e=>LT.test(e)||HT.test(e),PT=e=>Pe(e,"#").toUpperCase(),zT=e=>IT(e)?R.some({value:PT(e)}):R.none(),FT=e=>{const t=e.value.replace(LT,(e,t,o,n)=>t+t+o+o+n+n);return{value:t}},VT=e=>{const t=FT(e),o=HT.exec(t.value);return null===o?["FFFFFF","FF","FF","FF"]:o},ZT=e=>{const t=e.toString(16);return(1===t.length?"0"+t:t).toUpperCase()},UT=e=>{const t=ZT(e.red)+ZT(e.green)+ZT(e.blue);return BT(t)},jT=Math.min,$T=Math.max,WT=Math.round,qT=/^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)\s*$/i,GT=/^\s*rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d?(?:\.\d+)?)\s*\)\s*$/i,KT=(e,t,o,n)=>({red:e,green:t,blue:o,alpha:n}),YT=e=>{const t=parseInt(e,10);return t.toString()===e&&t>=0&&t<=255},XT=e=>{let t,o,n;const r=(e.hue||0)%360;let s=e.saturation/100,a=e.value/100;if(s=$T(0,jT(s,1)),a=$T(0,jT(a,1)),0===s)return t=o=n=WT(255*a),KT(t,o,n,1);const i=r/60,l=a*s,c=l*(1-Math.abs(i%2-1)),d=a-l;switch(Math.floor(i)){case 0:t=l,o=c,n=0;break;case 1:t=c,o=l,n=0;break;case 2:t=0,o=l,n=c;break;case 3:t=0,o=c,n=l;break;case 4:t=c,o=0,n=l;break;case 5:t=l,o=0,n=c;break;default:t=o=n=0}return t=WT(255*(t+d)),o=WT(255*(o+d)),n=WT(255*(n+d)),KT(t,o,n,1)},JT=e=>{const t=VT(e),o=parseInt(t[1],16),n=parseInt(t[2],16),r=parseInt(t[3],16);return KT(o,n,r,1)},QT=(e,t,o,n)=>{const r=parseInt(e,10),s=parseInt(t,10),a=parseInt(o,10),i=parseFloat(n);return KT(r,s,a,i)},eE=e=>{if("transparent"===e)return R.some(KT(0,0,0,0));const t=qT.exec(e);if(null!==t)return R.some(QT(t[1],t[2],t[3],"1"));const o=GT.exec(e);return null!==o?R.some(QT(o[1],o[2],o[3],o[4])):R.none()},tE=e=>`rgba(${e.red},${e.green},${e.blue},${e.alpha})`,oE=KT(255,0,0,1),nE=e=>{e.dispatch("SkinLoaded")},rE=(e,t)=>{e.dispatch("SkinLoadError",t)},sE=e=>{e.dispatch("ResizeEditor")},aE=(e,t)=>{e.dispatch("ResizeContent",t)},iE=(e,t)=>{e.dispatch("ScrollContent",t)},lE=(e,t)=>{e.dispatch("TextColorChange",t)},cE=(e,t)=>{e.dispatch("AfterProgressState",{state:t})},dE=(e,t)=>e.dispatch("ResolveName",{name:t.nodeName.toLowerCase(),target:t}),mE=(e,t)=>{e.dispatch("ToggleToolbarDrawer",{state:t})};var uE=tinymce.util.Tools.resolve("tinymce.util.LocalStorage");const gE={},hE=(e,t=10)=>{const o=uE.getItem(e),n=i(o)?JSON.parse(o):[],r=e=>{const o=t-e.length;return o<0?e.slice(0,t):e},s=r(n),a=o=>{P(s,o).each(l),s.unshift(o),s.length>t&&s.pop(),uE.setItem(e,JSON.stringify(s))},l=e=>{s.splice(e,1)},c=()=>s.slice(0);return{add:a,state:c}},pE=e=>ke(gE,e).getOrThunk(()=>{const t=`tinymce-custom-colors-${e}`,o=uE.getItem(t);if(h(o)){const e=uE.getItem("tinymce-custom-colors");uE.setItem(t,p(e)?e:"[]")}const n=hE(t,10);return gE[e]=n,n}),fE=e=>U(pE(e).state(),e=>({type:"choiceitem",text:e,icon:"checkmark",value:e})),bE=(e,t)=>{pE(e).add(t)},vE=(e,t,o)=>({hue:e,saturation:t,value:o}),yE=e=>{let t=0,o=0,n=0;const r=e.red/255,s=e.green/255,a=e.blue/255,i=Math.min(r,Math.min(s,a)),l=Math.max(r,Math.max(s,a));if(i===l)return n=i,vE(0,0,100*n);const c=r===i?s-a:a===i?r-s:a-r;return t=r===i?3:a===i?1:5,t=60*(t-c/(l-i)),o=(l-i)/l,n=l,vE(Math.round(t),Math.round(100*o),Math.round(100*n))},wE=e=>yE(JT(e)),xE=e=>UT(XT(e)),CE=e=>zT(e).orThunk(()=>eE(e).map(UT)).getOrThunk(()=>{const t=document.createElement("canvas");t.height=1,t.width=1;const o=t.getContext("2d");o.clearRect(0,0,t.width,t.height),o.fillStyle="#FFFFFF",o.fillStyle=e,o.fillRect(0,0,1,1);const n=o.getImageData(0,0,1,1).data,r=n[0],s=n[1],a=n[2],i=n[3];return UT(KT(r,s,a,i))}),SE="forecolor",kE="hilitecolor",_E=e=>Math.max(5,Math.ceil(Math.sqrt(e))),OE=e=>{const t=[];for(let o=0;ot=>t.options.get(e),EE="#000000",DE=e=>{const t=e.options.register,o=e=>v(e,i)?{value:OE(e),valid:!0}:{valid:!1,message:"Must be an array of strings."};t("color_map",{processor:o,default:["#BFEDD2","Light Green","#FBEEB8","Light Yellow","#F8CAC6","Light Red","#ECCAFA","Light Purple","#C2E0F4","Light Blue","#2DC26B","Green","#F1C40F","Yellow","#E03E2D","Red","#B96AD9","Purple","#3598DB","Blue","#169179","Dark Turquoise","#E67E23","Orange","#BA372A","Dark Red","#843FA1","Dark Purple","#236FA1","Dark Blue","#ECF0F1","Light Gray","#CED4D9","Medium Gray","#95A5A6","Gray","#7E8C8D","Dark Gray","#34495E","Navy Blue","#000000","Black","#ffffff","White"]}),t("color_map_background",{processor:o}),t("color_map_foreground",{processor:o}),t("color_cols",{processor:"number",default:_E(NE(e,"default").length)}),t("color_cols_foreground",{processor:"number",default:_E(NE(e,SE).length)}),t("color_cols_background",{processor:"number",default:_E(NE(e,kE).length)}),t("custom_colors",{processor:"boolean",default:!0}),t("color_default_foreground",{processor:"string",default:EE}),t("color_default_background",{processor:"string",default:EE})},AE=(e,t)=>t===SE?TE("color_cols_foreground")(e):t===kE?TE("color_cols_background")(e):TE("color_cols")(e),ME=TE("custom_colors"),NE=(e,t)=>t===SE&&e.options.isSet("color_map_foreground")?TE("color_map_foreground")(e):t===kE&&e.options.isSet("color_map_background")?TE("color_map_background")(e):TE("color_map")(e),RE=TE("color_default_foreground"),BE=TE("color_default_background"),LE=(e,t)=>{const o=go(Qe.fromDom(e.selection.getStart()),"hilitecolor"===t?"background-color":"color");return eE(o).map(e=>"#"+UT(e).value)},HE=(e,t,o)=>{e.undoManager.transact(()=>{e.focus(),e.formatter.apply(t,{value:o}),e.nodeChanged()})},IE=(e,t)=>{e.undoManager.transact(()=>{e.focus(),e.formatter.remove(t,{value:null},void 0,!0),e.nodeChanged()})},PE=e=>{e.addCommand("mceApplyTextcolor",(t,o)=>{HE(e,t,o)}),e.addCommand("mceRemoveTextcolor",t=>{IE(e,t)})},zE=e=>{const t="choiceitem",o={type:t,text:"Remove color",icon:"color-swatch-remove-color",value:"remove"},n={type:t,text:"Custom color",icon:"color-picker",value:"custom"};return e?[o,n]:[o]},FE=(e,t,o,n)=>{if("custom"===o){const o=WE(e);o(o=>{o.each(o=>{bE(t,o),e.execCommand("mceApplyTextcolor",t,o),n(o)})},LE(e,t).getOr(EE))}else"remove"===o?(n(""),e.execCommand("mceRemoveTextcolor",t)):(n(o),e.execCommand("mceApplyTextcolor",t,o))},VE=(e,t,o)=>e.concat(fE(t).concat(zE(o))),ZE=(e,t,o)=>n=>{n(VE(e,t,o))},UE=(e,t,o)=>{const n="forecolor"===t?"tox-icon-text-color__color":"tox-icon-highlight-bg-color__color";e.setIconFill(n,o)},jE=(e,t,o,n,r)=>{e.ui.registry.addSplitButton(t,{tooltip:n,presets:"color",icon:"forecolor"===t?"text-color":"highlight-bg-color",select:t=>{const n=LE(e,o);return Te(n,t.toUpperCase())},columns:AE(e,o),fetch:ZE(NE(e,o),o,ME(e)),onAction:t=>{FE(e,o,r.get(),y)},onItemAction:(n,s)=>{FE(e,o,s,o=>{r.set(o),lE(e,{name:t,color:o})})},onSetup:o=>{UE(o,t,r.get());const n=e=>{e.name===t&&UE(o,e.name,e.color)};return e.on("TextColorChange",n),()=>{e.off("TextColorChange",n)}}})},$E=(e,t,o,n)=>{e.ui.registry.addNestedMenuItem(t,{text:n,icon:"forecolor"===t?"text-color":"highlight-bg-color",getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"colorswatch",initData:{storageKey:o},onAction:t=>{FE(e,o,t.value,y)}}]})},WE=e=>(t,o)=>{let n=!1;const r=o=>{const r=o.getData(),s=r.colorpicker;n?(t(R.from(s)),o.close()):e.windowManager.alert(e.translate(["Invalid hex color code: {0}",s]))},s=(e,t)=>{"hex-valid"===t.name&&(n=t.value)},a={colorpicker:o};e.windowManager.open({title:"Color Picker",size:"normal",body:{type:"panel",items:[{type:"colorpicker",name:"colorpicker",label:"Color"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:a,onAction:s,onSubmit:r,onClose:y,onCancel:()=>{t(R.none())}})},qE=e=>{PE(e);const t=RE(e),o=BE(e),n=ca(t),r=ca(o);jE(e,"forecolor","forecolor","Text color",n),jE(e,"backcolor","hilitecolor","Background color",r),$E(e,"forecolor","forecolor","Text color"),$E(e,"backcolor","hilitecolor","Background color")},GE=(e,t,o,n,r,s,a,i)=>{const l=l_(t),c="color"!==r?"normal":"color",d=KE(t,o,n,c,s,a,i),m={menuType:r};return m_(e,l,d,n,m)},KE=(e,t,o,n,r,s,a)=>De(U(e,i=>"choiceitem"===i.type?vO(i).fold(c_,i=>R.some(NT(i,1===o,n,t,s(i.value),r,a,l_(e)))):R.none())),YE=(e,t)=>{const o=Nk(t);if(1===e)return{mode:"menu",moveOnTab:!0};if("auto"===e)return{mode:"grid",selector:"."+o.item,initSize:{numColumns:1,numRows:1}};{const e="color"===t?"tox-swatches__row":"tox-collection__group";return{mode:"matrix",rowSelector:"."+e,previousSelector:e=>"color"===t?nd(e.element,"[aria-checked=true]"):R.none()}}},XE=(e,t)=>1===e?{mode:"menu",moveOnTab:!1,selector:".tox-collection__item"}:"auto"===e?{mode:"flatgrid",selector:".tox-collection__item",initSize:{numColumns:1,numRows:1}}:{mode:"matrix",selectors:{row:"color"===t?".tox-swatches__row":".tox-collection__group",cell:"color"===t?`.${mk}`:`.${dk}`}},JE=(e,t)=>{const o=QE(e,t),n=t.colorinput.getColorCols(e.initData.storageKey),r="color",s=GE(cl("menu-value"),o,t=>{e.onAction({value:t})},n,r,lk.CLOSE_ON_EXECUTE,A,t.shared.providers),a={...s,markers:Nk(r),movement:YE(n,r)};return{type:"widget",data:{value:cl("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[RT.widget(uC.sketch(a))]}},QE=(e,t)=>{const o=e.initData.allowCustomColors&&t.colorinput.hasCustomColors();return e.initData.colors.fold(()=>VE(t.colorinput.getColors(e.initData.storageKey),e.initData.storageKey,o),e=>e.concat(zE(o)))},eD=cl("cell-over"),tD=cl("cell-execute"),oD=(e,t,o)=>{const n=o=>Ti(o,eD,{row:e,col:t}),r=o=>Ti(o,tD,{row:e,col:t}),s=(e,t)=>{t.stop(),r(e)};return qc({dom:{tag:"div",attributes:{role:"button",["aria-labelledby"]:o}},behaviours:Rm([ix("insert-table-picker-cell",[Ii(Va(),fx.focus),Ii(si(),r),Ii(Ga(),s),Ii(ii(),s)]),Lx.config({toggleClass:"tox-insert-table-picker__selected",toggleOnExecute:!1}),fx.config({onFocus:n})])})},nD=(e,t,o)=>{const n=[];for(let r=0;r{for(let s=0;see(e,e=>U(e,Gc)),aD=(e,t)=>Zc(`${t}x${e}`),iD=e=>{const t=10,o=10,n=cl("size-label"),r=nD(n,t,o),s=aD(0,0),a=BC({dom:{tag:"span",classes:["tox-insert-table-picker__label"],attributes:{id:n}},components:[s],behaviours:Rm([sx.config({})])});return{type:"widget",data:{value:cl("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[RT.widget({dom:{tag:"div",classes:["tox-insert-table-picker"]},components:sD(r).concat(a.asSpec()),behaviours:Rm([ix("insert-table-picker",[qi(e=>{sx.set(a.get(e),[s])}),Ui(eD,(e,n,s)=>{const{row:i,col:l}=s.event;rD(r,i,l,t,o),sx.set(a.get(e),[aD(i+1,l+1)])}),Ui(tD,(t,o,n)=>{const{row:r,col:s}=n.event;e.onAction({numRows:r+1,numColumns:s+1}),Oi(t,ci())})]),$w.config({initSize:{numRows:t,numColumns:o},mode:"flatgrid",selector:'[role="button"]'})])})]}},lD={inserttable:iD,colorswatch:JE},cD=(e,t)=>ke(lD,e.fancytype).map(o=>o(e,t)),dD=(e,t,o,n=!0,r=!1)=>{const s=r?yT(o.icons):vT(o.icons),a=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),i=_T({presets:"normal",iconContent:e.icon,textContent:e.text,htmlContent:R.none(),ariaLabel:e.text,caret:R.some(s),checkMark:R.none(),shortcutContent:e.shortcut},o,n);return cT({data:dT(e),getApi:a,enabled:e.enabled,onAction:y,onSetup:e.onSetup,triggersSubmenu:!0,itemBehaviours:[]},i,t,o)},mD=(e,t,o,n=!0)=>{const r=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),s=_T({presets:"normal",iconContent:e.icon,textContent:e.text,htmlContent:R.none(),ariaLabel:e.text,caret:R.none(),checkMark:R.none(),shortcutContent:e.shortcut},o,n);return cT({data:dT(e),getApi:r,enabled:e.enabled,onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:[]},s,t,o)},uD=e=>({type:"separator",dom:{tag:"div",classes:[dk,hk]},components:e.text.map(Zc).toArray()}),gD=(e,t,o,n=!0)=>{const r=e=>({setActive:t=>{Lx.set(e,t)},isActive:()=>Lx.isOn(e),isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),s=_T({iconContent:e.icon,textContent:e.text,htmlContent:R.none(),ariaLabel:e.text,checkMark:R.some(bT(o.icons)),caret:R.none(),shortcutContent:e.shortcut,presets:"normal",meta:e.meta},o,n);return Or(cT({data:dT(e),enabled:e.enabled,getApi:r,onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:[]},s,t,o),{toggling:{toggleClass:gk,toggleOnExecute:!1,selected:e.active}})},hD=DT,pD=uD,fD=mD,bD=dD,vD=gD,yD=cD,wD=MT,xD=(e,t,o,n)=>o.getOrCreate(e,t,n),CD=(e,t,o,n)=>o.getExisting(e,t,n);var SD=Object.freeze({__proto__:null,getCoupled:xD,getExistingCoupled:CD}),kD=[Bs("others",Cs(ir.value,ds()))];const _D=()=>{const e={},t=(t,o)=>{const n=ue(t.others);if(0===n.length)throw new Error("Cannot find any known coupled components");return ke(e,o)},o=(o,n,r)=>t(n,r).getOrThunk(()=>{const t=ke(n.others,r).getOrDie("No information found for coupled component: "+r),s=t(o),a=o.getSystem().build(s);return e[r]=a,a}),n=(e,o,n)=>t(o,n).orThunk(()=>(ke(o.others,n).getOrDie("No information found for coupled component: "+n),R.none())),r=S({});return Ml({readState:r,getExisting:n,getOrCreate:o})};var OD=Object.freeze({__proto__:null,init:_D});const TD=Lm({fields:kD,name:"coupling",apis:SD,state:OD}),ED=e=>{let t=R.none(),o=[];const n=e=>ED(t=>{r(o=>{t(e(o))})}),r=e=>{a()?l(e):o.push(e)},s=e=>{a()||(t=R.some(e),i(o),o=[])},a=()=>t.isSome(),i=e=>{j(e,l)},l=e=>{t.each(t=>{setTimeout(()=>{e(t)},0)})};return e(s),{get:r,map:n,isReady:a}},DD=e=>ED(t=>{t(e)}),AD={nu:ED,pure:DD},MD=e=>{setTimeout(()=>{throw e},0)},ND=e=>{const t=t=>{e().then(t,MD)},o=t=>ND(()=>e().then(t)),n=t=>ND(()=>e().then(e=>t(e).toPromise())),r=t=>ND(()=>e().then(()=>t.toPromise())),s=()=>AD.nu(t),a=()=>{let t=null;return ND(()=>(null===t&&(t=e()),t))},i=e;return{map:o,bind:n,anonBind:r,toLazy:s,toCached:a,toPromise:i,get:t}},RD=e=>ND(()=>new Promise(e)),BD=e=>ND(()=>Promise.resolve(e)),LD={nu:RD,pure:BD},HD=S("sink"),ID=S(Yf({name:HD(),overrides:S({dom:{tag:"div"},behaviours:Rm([Gh.config({useFixed:M})]),events:Ri([ji(ja()),ji(Ia()),ji(Ga())])})})),PD=(e,t)=>{const o=e.getHotspot(t).getOr(t),n="hotspot",r=e.getAnchorOverrides();return e.layouts.fold(()=>({type:n,hotspot:o,overrides:r}),e=>({type:n,hotspot:o,overrides:r,layouts:e}))},zD=(e,t,o)=>{const n=e.fetch;return n(o).map(t)},FD=(e,t,o,n,r,s,a)=>{const i=zD(e,t,n),l=$D(n,e);return i.map(e=>e.bind(e=>R.from(TC.sketch({...s.menu(),uid:bl(""),data:e,highlightOnOpen:a,onOpenMenu:(e,t)=>{const n=l().getOrDie();Gh.position(n,t,{anchor:o}),Np.decloak(r)},onOpenSubmenu:(e,t,o)=>{const n=l().getOrDie();Gh.position(n,o,{anchor:{type:"submenu",item:t}}),Np.decloak(r)},onRepositionMenu:(e,t,n)=>{const r=l().getOrDie();Gh.position(r,t,{anchor:o}),j(n,e=>{Gh.position(r,e.triggeredMenu,{anchor:{type:"submenu",item:e.triggeringItem}})})},onEscape:()=>(fx.focus(n),Np.close(r),R.some(!0))}))))},VD=(e,t,o,n,r,s,a)=>{const i=PD(e,o),l=FD(e,t,i,o,n,r,a);return l.map(e=>(e.fold(()=>{Np.isOpen(n)&&Np.close(n)},e=>{Np.cloak(n),Np.open(n,e),s(n)}),n))},ZD=(e,t,o,n,r,s,a)=>(Np.close(n),LD.pure(n)),UD=(e,t,o,n,r,s)=>{const a=TD.getCoupled(o,"sandbox"),i=Np.isOpen(a),l=i?ZD:VD;return l(e,t,o,a,n,r,s)},jD=(e,t,o)=>{const n=Rb.getCurrent(t).getOr(t),r=Ro(e.element);o?co(n.element,"min-width",r+"px"):No(n.element,r)},$D=(e,t)=>e.getSystem().getByUid(t.uid+"-"+HD()).map(e=>()=>ir.value(e)).getOrThunk(()=>t.lazySink.fold(()=>()=>ir.error(new Error("No internal sink is specified, nor could an external sink be found")),t=>()=>t(e))),WD=e=>{Np.getState(e).each(e=>{TC.repositionMenus(e)})},qD=(e,t,o)=>{const n=id(),r=(r,s)=>{const a=PD(e,t);n.link(t.element),e.matchWidth&&jD(a.hotspot,s,e.useMinWidth),e.onOpen(a,r,s),void 0!==o&&void 0!==o.onOpen&&o.onOpen(r,s)},s=(e,r)=>{n.unlink(t.element),void 0!==o&&void 0!==o.onClose&&o.onClose(e,r)},a=$D(t,e);return{dom:{tag:"div",classes:e.sandboxClasses,attributes:{id:n.id,role:"listbox"}},behaviours:yf.augment(e.sandboxBehaviours,[pf.config({store:{mode:"memory",initialValue:t}}),Np.config({onOpen:r,onClose:s,isPartOf:(e,o,n)=>cd(o,n)||cd(t,n),getAttachPoint:()=>a().getOrDie()}),Rb.config({find:e=>Np.getState(e).bind(e=>Rb.getCurrent(e))}),zm.config({channels:{...Ip({isExtraPart:A}),...zp({doReposition:WD})}})])}},GD=e=>{const t=TD.getCoupled(e,"sandbox");WD(t)},KD=()=>[Qs("sandboxClasses",[]),yf.field("sandboxBehaviours",[Rb,zm,Np,pf])],YD=S([Rs("dom"),Rs("fetch"),Ed("onOpen"),Dd("onExecute"),Qs("getHotspot",R.some),Qs("getAnchorOverrides",S({})),ng(),ff("dropdownBehaviours",[Lx,TD,$w,fx]),Rs("toggleClass"),Qs("eventOrder",{}),js("lazySink"),Qs("matchWidth",!1),Qs("useMinWidth",!1),js("role")].concat(KD())),XD=S([Kf({schema:[_d(),Qs("fakeFocus",!1)],name:"menu",defaults:e=>({onExecute:e.onExecute})}),ID()]),JD=(e,t,o,n)=>{const r=t=>ke(e.dom,"attributes").bind(e=>ke(e,t)),s=e=>{Np.getState(e).each(e=>{TC.highlightPrimary(e)})},a=(t,o,r)=>UD(e,k,t,n,o,r),i=e=>{const t=s;a(e,t,xC.HighlightMenuAndItem).get(y)},l={expand:e=>{Lx.isOn(e)||a(e,y,xC.HighlightNone).get(y)},open:e=>{Lx.isOn(e)||a(e,y,xC.HighlightMenuAndItem).get(y)},refetch:t=>{const o=TD.getExistingCoupled(t,"sandbox");return o.fold(()=>a(t,y,xC.HighlightMenuAndItem).map(y),o=>VD(e,k,t,o,n,y,xC.HighlightMenuAndItem).map(y))},isOpen:Lx.isOn,close:e=>{Lx.isOn(e)&&a(e,y,xC.HighlightMenuAndItem).get(y)},repositionMenus:e=>{Lx.isOn(e)&&GD(e)}},c=(e,t)=>(Ei(e),R.some(!0));return{uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.dropdownBehaviours,[Lx.config({toggleClass:e.toggleClass,aria:{mode:"expanded"}}),TD.config({others:{sandbox:t=>qD(e,t,{onOpen:()=>Lx.on(t),onClose:()=>Lx.off(t)})}}),$w.config({mode:"special",onSpace:c,onEnter:c,onDown:(e,t)=>{if(QD.isOpen(e)){const t=TD.getCoupled(e,"sandbox");s(t)}else QD.open(e);return R.some(!0)},onEscape:(e,t)=>QD.isOpen(e)?(QD.close(e),R.some(!0)):R.none()}),fx.config({})]),events:Ix(R.some(i)),eventOrder:{...e.eventOrder,[si()]:["disabling","toggling","alloy.base.behaviour"]},apis:l,domModification:{attributes:{"aria-haspopup":"true",...e.role.fold(()=>({}),e=>({role:e})),..."button"===e.dom.tag?{type:r("type").getOr("button")}:{}}}}},QD=Eb({name:"Dropdown",configFields:YD(),partFields:XD(),factory:JD,apis:{open:(e,t)=>e.open(t),refetch:(e,t)=>e.refetch(t),expand:(e,t)=>e.expand(t),close:(e,t)=>e.close(t),isOpen:(e,t)=>e.isOpen(t),repositionMenus:(e,t)=>e.repositionMenus(t)}}),eA=e=>{switch(e.searchMode){case"no-search":return{menuType:"normal"};default:return{menuType:"searchable",searchMode:e}}},tA=e=>{const t=pf.getValue(e),o=$k(e).map(Gk);QD.refetch(t).get(()=>{const e=TD.getCoupled(t,"sandbox");o.each(t=>$k(e).each(e=>qk(e,t)))})},oA=(e,t)=>{nA(e).each(o=>{Mi(e,o.element,t.event.eventType,t.event.interactionEvent)})},nA=e=>Np.getState(e).bind(vv.getHighlighted).bind(vv.getHighlighted),rA=e=>hc(e.element,Xk)?R.some(e.element):nd(e.element,"."+Xk),sA=(e,t,o)=>{Wk(e).each(e=>{Kk(e,o);const n=rA(t);n.each(t=>{no(t,"id").each(t=>eo(e.element,"aria-controls",t))})}),eo(o.element,"aria-selected","true")},aA=(e,t,o)=>{eo(o.element,"aria-selected","false")},iA=e=>{Wk(e).each(e=>fx.focus(e))},lA=e=>{const t=TD.getExistingCoupled(e,"sandbox");return t.bind($k).map(Gk).map(e=>e.fetchPattern).getOr("")};var cA;(function(e){e[e["ContentFocus"]=0]="ContentFocus",e[e["UiFocus"]=1]="UiFocus"})(cA||(cA={}));const dA=(e,t,o,n,r)=>{const s=o.shared.providers,a=e=>r?{...e,shortcut:R.none(),icon:e.text.isSome()?R.none():e.icon}:e;switch(e.type){case"menuitem":return _O(e).fold(c_,e=>R.some(fD(a(e),t,s,n)));case"nestedmenuitem":return TO(e).fold(c_,e=>R.some(bD(a(e),t,s,n,r)));case"togglemenuitem":return DO(e).fold(c_,e=>R.some(vD(a(e),t,s,n)));case"separator":return Z_(e).fold(c_,e=>R.some(pD(e)));case"fancymenuitem":return SO(e).fold(c_,e=>yD(e,o));default:return console.error("Unknown item in general menu",e),R.none()}},mA=(e,t,o,n,r,s,a)=>{const i=1===n,l=!i||l_(e);return De(U(e,e=>{switch(e.type){case"separator":return j_(e).fold(c_,e=>R.some(pD(e)));case"cardmenuitem":return fO(e).fold(c_,e=>R.some(wD({...e,onAction:t=>{e.onAction(t),o(e.value,e.meta)}},r,s,{itemBehaviours:OT(e.meta,s),cardText:{matchText:t,highlightOn:a}})));case"autocompleteitem":default:return $_(e).fold(c_,e=>R.some(hD(e,t,i,"normal",o,r,s,l)))}}))},uA=(e,t,o,n,r,s)=>{const a=l_(t),i=De(U(t,e=>{const t=e=>r?!_e(e,"text"):a,s=e=>dA(e,o,n,t(e),r);return"nestedmenuitem"===e.type&&e.getSubmenuItems().length<=0?s({...e,enabled:!1}):s(e)})),l=eA(s),c=r?d_:m_;return c(e,a,i,1,l)},gA=e=>TC.singleData(e.value,e),hA=(e,t,o,n)=>{const r=YE(t,n),s=Nk(n);return{data:gA({...e,movement:r,menuBehaviours:RO.unnamedEvents("auto"!==t?[]:[qi((e,t)=>{AO(e,4,s.item).each(({numColumns:t,numRows:o})=>{$w.setGridSize(e,o,t)})})])}),menu:{markers:Nk(n),fakeFocus:o===cA.ContentFocus}}},pA=(e,t)=>nk(Qe.fromDom(t.startContainer)).map(t=>{const o=e.createRng();return o.selectNode(t.dom),o}),fA=(e,t)=>{const o=ca(!1),n=ca(!1),r=qc(AC.sketch({dom:{tag:"div",classes:["tox-autocompleter"]},components:[],fireDismissalEventInstead:{},inlineBehaviours:Rm([ix("dismissAutocompleter",[Ii(vi(),()=>c())])]),lazySink:t.getSink})),s=()=>AC.isOpen(r),a=n.get,i=()=>{s()&&AC.hide(r)},l=()=>AC.getContent(r).bind(e=>ie(e.components(),0)),c=()=>e.execCommand("mceAutocompleterClose"),d=n=>{const r=me(n,e=>R.from(e.columns)).getOr(1);return ee(n,n=>{const s=n.items;return mA(s,n.matchText,(t,r)=>{const s=e.selection.getRng();pA(e.dom,s).each(s=>{const a={hide:()=>c(),reload:t=>{i(),e.execCommand("mceAutocompleterReload",!1,{fetchOptions:t})}};o.set(!0),n.onAction(a,s,t,r),o.set(!1)})},r,lk.BUBBLE_TO_SANDBOX,t,n.highlightOn)})},m=(t,o)=>{rk(Qe.fromDom(e.getBody())).each(n=>{const s=me(t,e=>R.from(e.columns)).getOr(1);AC.showMenuAt(r,{anchor:{type:"node",root:Qe.fromDom(e.getBody()),node:R.from(n)}},hA(m_("autocompleter-value",!0,o,s,{menuType:"normal"}),s,cA.ContentFocus,"normal"))}),l().each(vv.highlightFirst)},u=e=>{const t=d(e);t.length>0?m(e,t):i()};e.on("AutocompleterStart",({lookupData:e})=>{n.set(!0),o.set(!1),u(e)}),e.on("AutocompleterUpdate",({lookupData:e})=>u(e)),e.on("AutocompleterEnd",()=>{i(),n.set(!1),o.set(!1)});const g={cancelIfNecessary:c,isMenuOpen:s,isActive:a,isProcessingAction:o.get,getMenu:l};ak.setup(g,e)},bA={register:fA},vA=(e,t,o)=>rd(e,t,o).isSome(),yA=(e,t)=>{let o=null;const n=(...n)=>{o=setTimeout(()=>{e.apply(null,n),o=null},t)},r=()=>{null!==o&&(clearTimeout(o),o=null)};return{cancel:r,schedule:n}},wA=5,xA=400,CA=e=>{const t=e.raw;return void 0===t.touches||1!==t.touches.length?R.none():R.some(t.touches[0])},SA=(e,t)=>{const o=Math.abs(e.clientX-t.x),n=Math.abs(e.clientY-t.y);return o>wA||n>wA},kA=e=>{const t=xu(),o=ca(!1),n=yA(t=>{e.triggerEvent(li(),t),o.set(!0)},xA),r=e=>(CA(e).each(r=>{n.cancel();const s={x:r.clientX,y:r.clientY,target:e.target};n.schedule(e),o.set(!1),t.set(s)}),R.none()),s=e=>(n.cancel(),CA(e).each(e=>{t.on(o=>{SA(e,o)&&t.clear()})}),R.none()),a=r=>{n.cancel();const s=e=>_t(e.target,r.target);return t.get().filter(s).map(t=>o.get()?(r.prevent(),!1):e.triggerEvent(ii(),r))},i=va([{key:Ra(),value:r},{key:Ba(),value:s},{key:La(),value:a}]),l=(e,t)=>ke(i,t).bind(t=>t(e));return{fireIfReady:l}},_A=e=>{const t=e.raw;return t.which===yv[0]&&!z(["input","textarea"],ut(e.target))&&!vA(e.target,'[contenteditable="true"]')},OA=(e,t)=>{const o={stopBackspace:!0,...t},n=["touchstart","touchmove","touchend","touchcancel","gesturestart","mousedown","mouseup","mouseover","mousemove","mouseout","click"],r=kA(o),s=U(n.concat(["selectstart","input","contextmenu","change","transitionend","transitioncancel","drag","dragstart","dragend","dragenter","dragleave","dragover","drop","keyup"]),t=>Su(e,t,e=>{r.fireIfReady(e,t).each(t=>{t&&e.kill()});const n=o.triggerEvent(t,e);n&&e.kill()})),a=xu(),i=Su(e,"paste",e=>{r.fireIfReady(e,"paste").each(t=>{t&&e.kill()});const t=o.triggerEvent("paste",e);t&&e.kill(),a.set(setTimeout(()=>{o.triggerEvent(ni(),e)},0))}),l=Su(e,"keydown",e=>{const t=o.triggerEvent("keydown",e);t?e.kill():o.stopBackspace&&_A(e)&&e.prevent()}),c=Su(e,"focusin",e=>{const t=o.triggerEvent("focusin",e);t&&e.kill()}),d=xu(),m=Su(e,"focusout",e=>{const t=o.triggerEvent("focusout",e);t&&e.kill(),d.set(setTimeout(()=>{o.triggerEvent(oi(),e)},0))}),u=()=>{j(s,e=>{e.unbind()}),l.unbind(),c.unbind(),m.unbind(),i.unbind(),a.on(clearTimeout),d.on(clearTimeout)};return{unbind:u}},TA=(e,t)=>{const o=ke(e,"target").getOr(t);return ca(o)},EA=(e,t)=>{const o=ca(!1),n=ca(!1),r=()=>{o.set(!0)},s=()=>{n.set(!0)};return{stop:r,cut:s,isStopped:o.get,isCut:n.get,event:e,setSource:t.set,getSource:t.get}},DA=e=>{const t=ca(!1),o=()=>{t.set(!0)};return{stop:o,cut:y,isStopped:t.get,isCut:A,event:e,setSource:E("Cannot set source of a broadcasted event"),getSource:E("Cannot get source of a broadcasted event")}},AA=ma.generate([{stopped:[]},{resume:["element"]},{complete:[]}]),MA=(e,t,o,n,r,s)=>{const a=e(t,n),i=EA(o,r);return a.fold(()=>(s.logEventNoHandlers(t,n),AA.complete()),e=>{const o=e.descHandler,n=Ul(o);return n(i),i.isStopped()?(s.logEventStopped(t,e.element,o.purpose),AA.stopped()):i.isCut()?(s.logEventCut(t,e.element,o.purpose),AA.complete()):Mt(e.element).fold(()=>(s.logNoParent(t,e.element,o.purpose),AA.complete()),n=>(s.logEventResponse(t,e.element,o.purpose),AA.resume(n)))})},NA=(e,t,o,n,r,s)=>MA(e,t,o,n,r,s).fold(M,n=>NA(e,t,o,n,r,s),A),RA=(e,t,o,n,r)=>{const s=TA(o,n);return MA(e,t,o,n,s,r)},BA=(e,t,o)=>{const n=DA(t);return j(e,e=>{const t=e.descHandler,o=Ul(t);o(n)}),n.isStopped()},LA=(e,t,o,n)=>HA(e,t,o,o.target,n),HA=(e,t,o,n,r)=>{const s=TA(o,n);return NA(e,t,o,n,s,r)},IA=(e,t)=>({element:e,descHandler:t}),PA=(e,t)=>({id:e,descHandler:t}),zA=()=>{const e={},t=(t,o,n)=>{he(n,(n,r)=>{const s=void 0!==e[r]?e[r]:{};s[o]=Zl(n,t),e[r]=s})},o=(e,t)=>fl(t).bind(t=>ke(e,t)).map(e=>IA(t,e)),n=t=>ke(e,t).map(e=>xe(e,(e,t)=>PA(t,e))).getOr([]),r=(t,n,r)=>ke(e,n).bind(e=>ka(r,t=>o(e,t),t)),s=t=>{he(e,(e,o)=>{_e(e,t)&&delete e[t]})};return{registerId:t,unregisterId:s,filterByType:n,find:r}},FA=()=>{const e=zA(),t={},o=e=>{const t=e.element;return fl(t).getOrThunk(()=>hl("uid-",e.element))},n=(e,o)=>{const n=t[o];if(n!==e)throw new Error('The tagId "'+o+'" is already used by: '+rl(n.element)+"\nCannot use it for: "+rl(e.element)+"\nThe conflicting element is"+(Yt(n.element)?" ":" not ")+"already in the DOM");s(e)},r=r=>{const s=o(r);Oe(t,s)&&n(r,s);const a=[r];e.registerId(a,s,r.events),t[s]=r},s=o=>{fl(o.element).each(o=>{delete t[o],e.unregisterId(o)})},a=t=>e.filterByType(t),i=(t,o,n)=>e.find(t,o,n),l=e=>ke(t,e);return{find:i,filter:a,register:r,unregister:s,getById:l}},VA=e=>{const{attributes:t,...o}=e.dom;return{uid:e.uid,dom:{tag:"div",attributes:{role:"presentation",...t},...o},components:e.components,behaviours:bf(e.containerBehaviours),events:e.events,domModification:e.domModification,eventOrder:e.eventOrder}},ZA=Tb({name:"Container",factory:VA,configFields:[Qs("components",[]),ff("containerBehaviours",[]),Qs("events",{}),Qs("domModification",{}),Qs("eventOrder",{})]}),UA=e=>{const t=t=>Mt(e.element).fold(M,e=>_t(t,e)),o=FA(),n=(e,n)=>o.find(t,e,n),r=OA(e.element,{triggerEvent:(e,t)=>vd(e,t.target,o=>LA(n,e,t,o))}),s={debugInfo:S("real"),triggerEvent:(e,t,o)=>{vd(e,t,r=>HA(n,e,o,t,r))},triggerFocus:(e,t)=>{fl(e).fold(()=>{Zm(e)},o=>{vd(ti(),e,o=>(RA(n,ti(),{originator:t,kill:y,prevent:y,target:e},e,o),!1))})},triggerEscape:(e,t)=>{s.triggerEvent("keydown",e.element,t.event)},getByUid:e=>p(e),getByDom:e=>f(e),build:qc,buildOrPatch:Wc,addToGui:e=>{l(e)},removeFromGui:e=>{c(e)},addToWorld:e=>{a(e)},removeFromWorld:e=>{i(e)},broadcast:e=>{u(e)},broadcastOn:(e,t)=>{g(e,t)},broadcastEvent:(e,t)=>{h(e,t)},isConnected:M},a=e=>{e.connect(s),bt(e.element)||(o.register(e),j(e.components(),a),s.triggerEvent(mi(),e.element,{target:e.element}))},i=e=>{bt(e.element)||(j(e.components(),i),o.unregister(e)),e.disconnect()},l=t=>{rp(e,t)},c=e=>{ip(e)},d=()=>{r.unbind(),zn(e.element)},m=e=>{const t=o.filter(ri());j(t,t=>{const o=t.descHandler,n=Ul(o);n(e)})},u=e=>{m({universal:!0,data:e})},g=(e,t)=>{m({universal:!1,channels:e,data:t})},h=(e,t)=>{const n=o.filter(e);return BA(n,t)},p=e=>o.getById(e).fold(()=>ir.error(new Error('Could not find component with uid: "'+e+'" in system.')),ir.value),f=e=>{const t=fl(e).getOr("not found");return p(t)};return a(e),{root:e,element:e.element,destroy:d,add:l,remove:c,getByUid:p,getByDom:f,addToWorld:a,removeFromWorld:i,broadcast:u,broadcastOn:g,broadcastEvent:h}},jA=(e,t)=>({dom:{tag:"div",classes:["tox-bar","tox-form__controls-h-stack"]},components:U(e.items,t.interpreter)}),$A=S([Qs("prefix","form-field"),ff("fieldBehaviours",[Rb,pf])]),WA=S([Yf({schema:[Rs("dom")],name:"label"}),Yf({factory:{sketch:e=>({uid:e.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:e.text}})},schema:[Rs("text")],name:"aria-descriptor"}),Gf({factory:{sketch:e=>{const t=fa(e,["factory"]);return e.factory.sketch(t)}},schema:[Rs("factory")],name:"field"})]),qA=(e,t,o,n)=>{const r=vf(e.fieldBehaviours,[Rb.config({find:t=>cb(t,e,"field")}),pf.config({store:{mode:"manual",getValue:e=>Rb.getCurrent(e).bind(pf.getValue),setValue:(e,t)=>{Rb.getCurrent(e).each(e=>{pf.setValue(e,t)})}}})]),s=Ri([qi((t,o)=>{const n=mb(t,e,["label","field","aria-descriptor"]);n.field().each(t=>{const o=cl(e.prefix);n.label().each(e=>{eo(e.element,"for",o),eo(t.element,"id",o)}),n["aria-descriptor"]().each(o=>{const n=cl(e.prefix);eo(o.element,"id",n),eo(t.element,"aria-describedby",n)})})})]),a={getField:t=>cb(t,e,"field"),getLabel:t=>cb(t,e,"label")};return{uid:e.uid,dom:e.dom,components:t,behaviours:r,events:s,apis:a}},GA=Eb({name:"FormField",configFields:$A(),partFields:WA(),factory:qA,apis:{getField:(e,t)=>e.getField(t),getLabel:(e,t)=>e.getLabel(t)}}),KA=(e,t)=>Hl({attributes:va([{key:t.tabAttr,value:"true"}])});var YA=Object.freeze({__proto__:null,exhibit:KA}),XA=[Qs("tabAttr","data-alloy-tabstop")];const JA=Lm({fields:XA,name:"tabstopping",active:YA});var QA=tinymce.util.Tools.resolve("tinymce.html.Entities");const eM=(e,t,o,n)=>{const r=oM(e,t,o,n);return GA.sketch(r)},tM=(e,t)=>eM(e,t,[],[]),oM=(e,t,o,n)=>({dom:rM(o),components:e.toArray().concat([t]),fieldBehaviours:Rm(n)}),nM=()=>rM([]),rM=e=>({tag:"div",classes:["tox-form__group"].concat(e)}),sM=(e,t)=>GA.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[Zc(t.translate(e))]}),aM=cl("form-component-change"),iM=cl("form-close"),lM=cl("form-cancel"),cM=cl("form-action"),dM=cl("form-submit"),mM=cl("form-block"),uM=cl("form-unblock"),gM=cl("form-tabchange"),hM=cl("form-resize"),pM=(e,t,o)=>{const n=e.label.map(e=>sM(e,t)),r=e=>(t,o)=>{rd(o.event.target,"[data-collection-item-value]").each(n=>{e(t,o,n,oo(n,"data-collection-item-value"))})},s=(o,n)=>{const r=U(n,o=>{const n=LC.translate(o.text),r=1===e.columns?`
${n}
`:"",s=`
${o.icon}
`,a={_:" "," - ":" ","-":" "},i=n.replace(/\_| \- |\-/g,e=>a[e]),l=t.isDisabled()?" tox-collection__item--state-disabled":"";return`
${s}${r}
`}),s="auto"!==e.columns&&e.columns>1?Z(r,e.columns):[r],a=U(s,e=>`
${e.join("")}
`);Qi(o.element,a.join(""))},a=r((o,n,r,s)=>{n.stop(),t.isDisabled()||Ti(o,cM,{name:e.name,value:s})}),i=[Ii(Va(),r((e,t,o)=>{Zm(o)})),Ii(Ga(),a),Ii(ii(),a),Ii(Za(),r((e,t,o)=>{nd(e.element,"."+wk).each(e=>{gc(e,wk)}),mc(o,wk)})),Ii(Ua(),r(e=>{nd(e.element,"."+wk).each(e=>{gc(e,wk)})})),Yi(r((t,o,n,r)=>{Ti(t,cM,{name:e.name,value:r})}))],l=(e,t)=>U(oh(e.element,".tox-collection__item"),t),c=GA.parts.field({dom:{tag:"div",classes:["tox-collection"].concat(1!==e.columns?["tox-collection--grid"]:["tox-collection--list"])},components:[],factory:{sketch:k},behaviours:Rm([Jb.config({disabled:t.isDisabled,onDisabled:e=>{l(e,e=>{mc(e,"tox-collection__item--state-disabled"),eo(e,"aria-disabled",!0)})},onEnabled:e=>{l(e,e=>{gc(e,"tox-collection__item--state-disabled"),so(e,"aria-disabled")})}}),XO(),sx.config({}),pf.config({store:{mode:"memory",initialValue:o.getOr([])},onSetValue:(t,o)=>{s(t,o),"auto"===e.columns&&AO(t,5,"tox-collection__item").each(({numRows:e,numColumns:o})=>{$w.setGridSize(t,e,o)}),Oi(t,hM)}}),JA.config({}),$w.config(XE(e.columns,"normal")),ix("collection-events",i)]),eventOrder:{[si()]:["disabling","alloy.base.behaviour","collection-events"]}}),d=["tox-form__group--collection"];return eM(n,c,d,[])},fM=["input","textarea"],bM=e=>{const t=ut(e);return z(fM,t)},vM=(e,t)=>{const o=t.getRoot(e).getOr(e.element);gc(o,t.invalidClass),t.notify.each(t=>{bM(e.element)&&eo(e.element,"aria-invalid",!1),t.getContainer(e).each(e=>{Qi(e,t.validHtml)}),t.onValid(e)})},yM=(e,t,o,n)=>{const r=t.getRoot(e).getOr(e.element);mc(r,t.invalidClass),t.notify.each(t=>{bM(e.element)&&eo(e.element,"aria-invalid",!0),t.getContainer(e).each(e=>{Qi(e,n)}),t.onInvalid(e,n)})},wM=(e,t,o)=>t.validator.fold(()=>LD.pure(ir.value(!0)),t=>t.validate(e)),xM=(e,t,o)=>(t.notify.each(t=>{t.onValidate(e)}),wM(e,t).map(n=>e.getSystem().isConnected()?n.fold(n=>(yM(e,t,o,n),ir.error(n)),o=>(vM(e,t),ir.value(o))):ir.error("No longer in system"))),CM=(e,t)=>{const o=t.getRoot(e).getOr(e.element);return hc(o,t.invalidClass)};var SM=Object.freeze({__proto__:null,markValid:vM,markInvalid:yM,query:wM,run:xM,isInvalid:CM});const kM=(e,t)=>e.validator.map(o=>Ri([Ii(o.onEvent,o=>{xM(o,e,t).get(k)})].concat(o.validateOnLoad?[qi(o=>{xM(o,e,t).get(y)})]:[]))).getOr({});var _M=Object.freeze({__proto__:null,events:kM}),OM=[Rs("invalidClass"),Qs("getRoot",R.none),Xs("notify",[Qs("aria","alert"),Qs("getContainer",R.none),Qs("validHtml",""),Ed("onValid"),Ed("onInvalid"),Ed("onValidate")]),Xs("validator",[Rs("validate"),Qs("onEvent","input"),Qs("validateOnLoad",!0)])];const TM=Lm({fields:OM,name:"invalidating",active:_M,apis:SM,extra:{validation:e=>t=>{const o=pf.getValue(t);return LD.pure(e(o))}}}),EM=()=>Hl({styles:{"-webkit-user-select":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"-moz-none"},attributes:{unselectable:"on"}}),DM=()=>Ri([Bi(Ja(),M)]);var AM=Object.freeze({__proto__:null,events:DM,exhibit:EM});const MM=Lm({fields:[],name:"unselecting",active:AM}),NM=(e,t)=>QD.sketch({dom:e.dom,components:e.components,toggleClass:"mce-active",dropdownBehaviours:Rm([oT.button(t.providers.isDisabled),XO(),MM.config({}),JA.config({})]),layouts:e.layouts,sandboxClasses:["tox-dialog__popups"],lazySink:t.getSink,fetch:o=>LD.nu(t=>e.fetch(t)).map(n=>R.from(gA(Or(GE(cl("menu-value"),n,t=>{e.onItemAction(o,t)},e.columns,e.presets,lk.CLOSE_ON_EXECUTE,A,t.providers),{movement:YE(e.columns,e.presets)})))),parts:{menu:Lk(!1,1,e.presets)}}),RM=cl("color-input-change"),BM=cl("color-swatch-change"),LM=cl("color-picker-cancel"),HM=(e,t,o,n)=>{const r=GA.parts.field({factory:Vk,inputClasses:["tox-textfield"],data:n,onSetValue:e=>TM.run(e).get(y),inputBehaviours:Rm([Jb.config({disabled:t.providers.isDisabled}),XO(),JA.config({}),TM.config({invalidClass:"tox-textbox-field-invalid",getRoot:e=>Nt(e.element),notify:{onValid:e=>{const t=pf.getValue(e);Ti(e,RM,{color:t})}},validator:{validateOnLoad:!1,validate:e=>{const t=pf.getValue(e);if(0===t.length)return LD.pure(ir.value(!0));{const e=Qe.fromTag("span");co(e,"background-color",t);const o=po(e,"background-color").fold(()=>ir.error("blah"),e=>ir.value(t));return LD.pure(o)}}}})]),selectOnFocus:!1}),s=e.label.map(e=>sM(e,t.providers)),a=(e,t)=>{Ti(e,BM,{value:t})},i=(t,n)=>{l.getOpt(t).each(t=>{"custom"===n?o.colorPicker(o=>{o.fold(()=>Oi(t,LM),o=>{a(t,o),bE(e.storageKey,o)})},"#ffffff"):a(t,"remove"===n?"":n)})},l=BC(NM({dom:{tag:"span",attributes:{"aria-label":t.providers.translate("Color swatch")}},layouts:{onRtl:()=>[cm,lm,gm],onLtr:()=>[lm,cm,gm]},components:[],fetch:ZE(o.getColors(e.storageKey),e.storageKey,o.hasCustomColors()),columns:o.getColorCols(e.storageKey),presets:"color",onItemAction:i},t));return GA.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:s.toArray().concat([{dom:{tag:"div",classes:["tox-color-input"]},components:[r,l.asSpec()]}]),fieldBehaviours:Rm([ix("form-field-events",[Ii(RM,(t,o)=>{l.getOpt(t).each(e=>{co(e.element,"background-color",o.event.color)}),Ti(t,aM,{name:e.name})}),Ii(BM,(e,t)=>{GA.getField(e).each(o=>{pf.setValue(o,t.event.value),Rb.getCurrent(e).each(fx.focus)})}),Ii(LM,(e,t)=>{GA.getField(e).each(t=>{Rb.getCurrent(e).each(fx.focus)})})])])})},IM=Yf({schema:[Rs("dom")],name:"label"}),PM=e=>Yf({name:e+"-edge",overrides:t=>{const o=t.model.manager.edgeActions[e];return o.fold(()=>({}),e=>({events:Ri([Pi(Ra(),(t,o,n)=>e(t,n),[t]),Pi(Ia(),(t,o,n)=>e(t,n),[t]),Pi(Pa(),(t,o,n)=>{n.mouseIsDown.get()&&e(t,n)},[t])])}))}}),zM=PM("top-left"),FM=PM("top"),VM=PM("top-right"),ZM=PM("right"),UM=PM("bottom-right"),jM=PM("bottom"),$M=PM("bottom-left"),WM=PM("left"),qM=Gf({name:"thumb",defaults:S({dom:{styles:{position:"absolute"}}}),overrides:e=>({events:Ri([Zi(Ra(),e,"spectrum"),Zi(Ba(),e,"spectrum"),Zi(La(),e,"spectrum"),Zi(Ia(),e,"spectrum"),Zi(Pa(),e,"spectrum"),Zi(Fa(),e,"spectrum")])})}),GM=Gf({schema:[Ms("mouseIsDown",()=>ca(!1))],name:"spectrum",overrides:e=>{const t=e.model,o=t.manager,n=(t,n)=>o.getValueFromEvent(n).map(n=>o.setValueFrom(t,e,n));return{behaviours:Rm([$w.config({mode:"special",onLeft:t=>o.onLeft(t,e),onRight:t=>o.onRight(t,e),onUp:t=>o.onUp(t,e),onDown:t=>o.onDown(t,e)}),fx.config({})]),events:Ri([Ii(Ra(),n),Ii(Ba(),n),Ii(Ia(),n),Ii(Pa(),(t,o)=>{e.mouseIsDown.get()&&n(t,o)})])}}});var KM=[IM,WM,ZM,FM,jM,zM,VM,$M,UM,qM,GM];const YM="slider.change.value",XM=S(YM),JM=e=>-1!==e.type.indexOf("touch"),QM=e=>{const t=e.event.raw;if(JM(t)){const e=t;return void 0!==e.touches&&1===e.touches.length?R.some(e.touches[0]).map(e=>Oo(e.clientX,e.clientY)):R.none()}{const e=t;return void 0!==e.clientX?R.some(e).map(e=>Oo(e.clientX,e.clientY)):R.none()}},eN="top",tN="right",oN="bottom",nN="left",rN=e=>e.model.minX,sN=e=>e.model.minY,aN=e=>e.model.minX-1,iN=e=>e.model.minY-1,lN=e=>e.model.maxX,cN=e=>e.model.maxY,dN=e=>e.model.maxX+1,mN=e=>e.model.maxY+1,uN=(e,t,o)=>t(e)-o(e),gN=e=>uN(e,lN,rN),hN=e=>uN(e,cN,sN),pN=e=>gN(e)/2,fN=e=>hN(e)/2,bN=e=>e.stepSize,vN=e=>e.snapToGrid,yN=e=>e.snapStart,wN=e=>e.rounded,xN=(e,t)=>void 0!==e[t+"-edge"],CN=e=>xN(e,nN),SN=e=>xN(e,tN),kN=e=>xN(e,eN),_N=e=>xN(e,oN),ON=e=>e.model.value.get(),TN=(e,t)=>({x:e,y:t}),EN=(e,t)=>{Ti(e,XM(),{value:t})},DN=(e,t)=>{EN(e,TN(aN(t),iN(t)))},AN=(e,t)=>{EN(e,iN(t))},MN=(e,t)=>{EN(e,TN(pN(t),iN(t)))},NN=(e,t)=>{EN(e,TN(dN(t),iN(t)))},RN=(e,t)=>{EN(e,dN(t))},BN=(e,t)=>{EN(e,TN(dN(t),fN(t)))},LN=(e,t)=>{EN(e,TN(dN(t),mN(t)))},HN=(e,t)=>{EN(e,mN(t))},IN=(e,t)=>{EN(e,TN(pN(t),mN(t)))},PN=(e,t)=>{EN(e,TN(aN(t),mN(t)))},zN=(e,t)=>{EN(e,aN(t))},FN=(e,t)=>{EN(e,TN(aN(t),fN(t)))},VN=(e,t,o,n)=>eo?o:e===t?t-1:Math.max(t,e-n),ZN=(e,t,o,n)=>e>o?e:eMath.max(t,Math.min(o,e)),jN=(e,t,o,n,r)=>r.fold(()=>{const r=e-t,s=Math.round(r/n)*n;return UN(t+s,t-1,o+1)},t=>{const r=(e-t)%n,s=Math.round(r/n),a=Math.floor((e-t)/n),i=Math.floor((o-t)/n),l=Math.min(i,a+s),c=t+l*n;return Math.max(t,c)}),$N=(e,t,o)=>Math.min(o,Math.max(e,t))-t,WN=e=>{const{min:t,max:o,range:n,value:r,step:s,snap:a,snapStart:i,rounded:l,hasMinEdge:c,hasMaxEdge:d,minBound:m,maxBound:u,screenRange:g}=e,h=c?t-1:t,p=d?o+1:o;if(ru)return p;{const e=$N(r,m,u),c=UN(e/g*n+t,h,p);return a&&c>=t&&c<=o?jN(c,t,o,s,i):l?Math.round(c):c}},qN=e=>{const{min:t,max:o,range:n,value:r,hasMinEdge:s,hasMaxEdge:a,maxBound:i,maxOffset:l,centerMinEdge:c,centerMaxEdge:d}=e;return ro?a?i:d:(r-t)/n*l},GN="top",KN="right",YN="bottom",XN="left",JN="width",QN="height",eR=e=>e.element.dom.getBoundingClientRect(),tR=(e,t)=>e[t],oR=e=>{const t=eR(e);return tR(t,XN)},nR=e=>{const t=eR(e);return tR(t,KN)},rR=e=>{const t=eR(e);return tR(t,GN)},sR=e=>{const t=eR(e);return tR(t,YN)},aR=e=>{const t=eR(e);return tR(t,JN)},iR=e=>{const t=eR(e);return tR(t,QN)},lR=(e,t,o)=>(e+t)/2-o,cR=(e,t)=>{const o=eR(e),n=eR(t),r=tR(o,XN),s=tR(o,KN),a=tR(n,XN);return lR(r,s,a)},dR=(e,t)=>{const o=eR(e),n=eR(t),r=tR(o,GN),s=tR(o,YN),a=tR(n,GN);return lR(r,s,a)},mR=(e,t)=>{Ti(e,XM(),{value:t})},uR=(e,t,o)=>{const n={min:rN(t),max:lN(t),range:gN(t),value:o,step:bN(t),snap:vN(t),snapStart:yN(t),rounded:wN(t),hasMinEdge:CN(t),hasMaxEdge:SN(t),minBound:oR(e),maxBound:nR(e),screenRange:aR(e)};return WN(n)},gR=(e,t,o)=>{const n=uR(e,t,o),r=n;return mR(e,r),n},hR=(e,t)=>{const o=rN(t);mR(e,o)},pR=(e,t)=>{const o=lN(t);mR(e,o)},fR=(e,t,o)=>{const n=e>0?ZN:VN,r=n(ON(o),rN(o),lN(o),bN(o));return mR(t,r),R.some(r)},bR=e=>(t,o)=>fR(e,t,o).map(M),vR=e=>{const t=QM(e);return t.map(e=>e.left)},yR=(e,t,o,n,r)=>{const s=0,a=aR(e),i=n.bind(t=>R.some(cR(t,e))).getOr(s),l=r.bind(t=>R.some(cR(t,e))).getOr(a),c={min:rN(t),max:lN(t),range:gN(t),value:o,hasMinEdge:CN(t),hasMaxEdge:SN(t),minBound:oR(e),minOffset:s,maxBound:nR(e),maxOffset:a,centerMinEdge:i,centerMaxEdge:l};return qN(c)},wR=(e,t,o,n,r,s)=>{const a=yR(t,s,o,n,r);return oR(t)-oR(e)+a},xR=(e,t,o,n)=>{const r=ON(o),s=wR(e,n.getSpectrum(e),r,n.getLeftEdge(e),n.getRightEdge(e),o),a=Ro(t.element)/2;co(t.element,"left",s-a+"px")},CR=bR(-1),SR=bR(1),kR=R.none,_R=R.none,OR={"top-left":R.none(),top:R.none(),"top-right":R.none(),right:R.some(RN),"bottom-right":R.none(),bottom:R.none(),"bottom-left":R.none(),left:R.some(zN)};var TR=Object.freeze({__proto__:null,setValueFrom:gR,setToMin:hR,setToMax:pR,findValueOfOffset:uR,getValueFromEvent:vR,findPositionOfValue:wR,setPositionFromValue:xR,onLeft:CR,onRight:SR,onUp:kR,onDown:_R,edgeActions:OR});const ER=(e,t)=>{Ti(e,XM(),{value:t})},DR=(e,t,o)=>{const n={min:sN(t),max:cN(t),range:hN(t),value:o,step:bN(t),snap:vN(t),snapStart:yN(t),rounded:wN(t),hasMinEdge:kN(t),hasMaxEdge:_N(t),minBound:rR(e),maxBound:sR(e),screenRange:iR(e)};return WN(n)},AR=(e,t,o)=>{const n=DR(e,t,o),r=n;return ER(e,r),n},MR=(e,t)=>{const o=sN(t);ER(e,o)},NR=(e,t)=>{const o=cN(t);ER(e,o)},RR=(e,t,o)=>{const n=e>0?ZN:VN,r=n(ON(o),sN(o),cN(o),bN(o));return ER(t,r),R.some(r)},BR=e=>(t,o)=>RR(e,t,o).map(M),LR=e=>{const t=QM(e);return t.map(e=>e.top)},HR=(e,t,o,n,r)=>{const s=0,a=iR(e),i=n.bind(t=>R.some(dR(t,e))).getOr(s),l=r.bind(t=>R.some(dR(t,e))).getOr(a),c={min:sN(t),max:cN(t),range:hN(t),value:o,hasMinEdge:kN(t),hasMaxEdge:_N(t),minBound:rR(e),minOffset:s,maxBound:sR(e),maxOffset:a,centerMinEdge:i,centerMaxEdge:l};return qN(c)},IR=(e,t,o,n,r,s)=>{const a=HR(t,s,o,n,r);return rR(t)-rR(e)+a},PR=(e,t,o,n)=>{const r=ON(o),s=IR(e,n.getSpectrum(e),r,n.getTopEdge(e),n.getBottomEdge(e),o),a=Co(t.element)/2;co(t.element,"top",s-a+"px")},zR=R.none,FR=R.none,VR=BR(-1),ZR=BR(1),UR={"top-left":R.none(),top:R.some(AN),"top-right":R.none(),right:R.none(),"bottom-right":R.none(),bottom:R.some(HN),"bottom-left":R.none(),left:R.none()};var jR=Object.freeze({__proto__:null,setValueFrom:AR,setToMin:MR,setToMax:NR,findValueOfOffset:DR,getValueFromEvent:LR,findPositionOfValue:IR,setPositionFromValue:PR,onLeft:zR,onRight:FR,onUp:VR,onDown:ZR,edgeActions:UR});const $R=(e,t)=>{Ti(e,XM(),{value:t})},WR=(e,t)=>({x:e,y:t}),qR=(e,t,o)=>{const n=uR(e,t,o.left),r=DR(e,t,o.top),s=WR(n,r);return $R(e,s),s},GR=(e,t,o,n)=>{const r=e>0?ZN:VN,s=t?ON(n).x:r(ON(n).x,rN(n),lN(n),bN(n)),a=t?r(ON(n).y,sN(n),cN(n),bN(n)):ON(n).y;return $R(o,WR(s,a)),R.some(s)},KR=(e,t)=>(o,n)=>GR(e,t,o,n).map(M),YR=(e,t)=>{const o=rN(t),n=sN(t);$R(e,WR(o,n))},XR=(e,t)=>{const o=lN(t),n=cN(t);$R(e,WR(o,n))},JR=e=>QM(e),QR=(e,t,o,n)=>{const r=ON(o),s=wR(e,n.getSpectrum(e),r.x,n.getLeftEdge(e),n.getRightEdge(e),o),a=IR(e,n.getSpectrum(e),r.y,n.getTopEdge(e),n.getBottomEdge(e),o),i=Ro(t.element)/2,l=Co(t.element)/2;co(t.element,"left",s-i+"px"),co(t.element,"top",a-l+"px")},eB=KR(-1,!1),tB=KR(1,!1),oB=KR(-1,!0),nB=KR(1,!0),rB={"top-left":R.some(DN),top:R.some(MN),"top-right":R.some(NN),right:R.some(BN),"bottom-right":R.some(LN),bottom:R.some(IN),"bottom-left":R.some(PN),left:R.some(FN)};var sB=Object.freeze({__proto__:null,setValueFrom:qR,setToMin:YR,setToMax:XR,getValueFromEvent:JR,setPositionFromValue:QR,onLeft:eB,onRight:tB,onUp:oB,onDown:nB,edgeActions:rB});const aB=[Qs("stepSize",1),Qs("onChange",y),Qs("onChoose",y),Qs("onInit",y),Qs("onDragStart",y),Qs("onDragEnd",y),Qs("snapToGrid",!1),Qs("rounded",!0),js("snapStart"),Bs("model",Es("mode",{x:[Qs("minX",0),Qs("maxX",100),Ms("value",e=>ca(e.mode.minX)),Rs("getInitialValue"),Nd("manager",TR)],y:[Qs("minY",0),Qs("maxY",100),Ms("value",e=>ca(e.mode.minY)),Rs("getInitialValue"),Nd("manager",jR)],xy:[Qs("minX",0),Qs("maxX",100),Qs("minY",0),Qs("maxY",100),Ms("value",e=>ca({x:e.mode.minX,y:e.mode.minY})),Rs("getInitialValue"),Nd("manager",sB)]})),ff("sliderBehaviours",[$w,pf]),Ms("mouseIsDown",()=>ca(!1))],iB=(e,t,o,n)=>{const r=t=>db(t,e,"thumb"),s=t=>db(t,e,"spectrum"),a=t=>cb(t,e,"left-edge"),i=t=>cb(t,e,"right-edge"),l=t=>cb(t,e,"top-edge"),c=t=>cb(t,e,"bottom-edge"),d=e.model,m=d.manager,u=(t,o)=>{m.setPositionFromValue(t,o,e,{getLeftEdge:a,getRightEdge:i,getTopEdge:l,getBottomEdge:c,getSpectrum:s})},g=(e,t)=>{d.value.set(t);const o=r(e);u(e,o)},h=(t,o)=>{g(t,o);const n=r(t);return e.onChange(t,n,o),R.some(!0)},p=t=>{m.setToMin(t,e)},f=t=>{m.setToMax(t,e)},b=t=>{const o=()=>{cb(t,e,"thumb").each(o=>{const n=d.value.get();e.onChoose(t,o,n)})},n=e.mouseIsDown.get();e.mouseIsDown.set(!1),n&&o()},v=(t,o)=>{o.stop(),e.mouseIsDown.set(!0),e.onDragStart(t,r(t))},y=(t,o)=>{o.stop(),e.onDragEnd(t,r(t)),b(t)};return{uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.sliderBehaviours,[$w.config({mode:"special",focusIn:t=>cb(t,e,"spectrum").map($w.focusIn).map(M)}),pf.config({store:{mode:"manual",getValue:e=>d.value.get(),setValue:g}}),zm.config({channels:{[Lp()]:{onReceive:b}}})]),events:Ri([Ii(XM(),(e,t)=>{h(e,t.event.value)}),qi((t,o)=>{const n=d.getInitialValue();d.value.set(n);const a=r(t);u(t,a);const i=s(t);e.onInit(t,a,i,d.value.get())}),Ii(Ra(),v),Ii(La(),y),Ii(Ia(),v),Ii(Fa(),y)]),apis:{resetToMin:p,resetToMax:f,setValue:g,refresh:u},domModification:{styles:{position:"relative"}}}},lB=Eb({name:"Slider",configFields:aB,partFields:KM,factory:iB,apis:{setValue:(e,t,o)=>{e.setValue(t,o)},resetToMin:(e,t)=>{e.resetToMin(t)},resetToMax:(e,t)=>{e.resetToMax(t)},refresh:(e,t)=>{e.refresh(t)}}}),cB=cl("rgb-hex-update"),dB=cl("slider-update"),mB=cl("palette-update"),uB=(e,t)=>{const o=lB.parts.spectrum({dom:{tag:"div",classes:[t("hue-slider-spectrum")],attributes:{role:"presentation"}}}),n=lB.parts.thumb({dom:{tag:"div",classes:[t("hue-slider-thumb")],attributes:{role:"presentation"}}});return lB.sketch({dom:{tag:"div",classes:[t("hue-slider")],attributes:{role:"presentation"}},rounded:!1,model:{mode:"y",getInitialValue:S(0)},components:[o,n],sliderBehaviours:Rm([fx.config({})]),onChange:(e,t,o)=>{Ti(e,dB,{value:o})}})},gB="form",hB=[ff("formBehaviours",[pf])],pB=e=>"",fB=e=>{const t=(()=>{const e=[],t=(t,o)=>(e.push(t),rb(gB,pB(t),o));return{field:t,record:S(e)}})(),o=e(t),n=t.record(),r=U(n,e=>Gf({name:e,pname:pB(e)}));return xb(gB,hB,r,vB,o)},bB=(e,t)=>e.fold(()=>ir.error(t),ir.value),vB=(e,t)=>({uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.formBehaviours,[pf.config({store:{mode:"manual",getValue:t=>{const o=ub(t,e);return pe(o,(e,t)=>e().bind(e=>{const o=Rb.getCurrent(e);return bB(o,new Error(`Cannot find a current component to extract the value from for form part '${t}': `+rl(e.element)))}).map(pf.getValue))},setValue:(t,o)=>{he(o,(o,n)=>{cb(t,e,n).each(e=>{Rb.getCurrent(e).each(e=>{pf.setValue(e,o)})})})}}})]),apis:{getField:(t,o)=>cb(t,e,o).bind(Rb.getCurrent)}}),yB={getField:Dl((e,t,o)=>e.getField(t,o)),sketch:fB},wB=cl("valid-input"),xB=cl("invalid-input"),CB=cl("validating-input"),SB="colorcustom.rgb.",kB=(e,t,o,n)=>{const r=(o,n)=>TM.config({invalidClass:t("invalid"),notify:{onValidate:e=>{Ti(e,CB,{type:o})},onValid:e=>{Ti(e,wB,{type:o,value:pf.getValue(e)})},onInvalid:e=>{Ti(e,xB,{type:o,value:pf.getValue(e)})}},validator:{validate:t=>{const o=pf.getValue(t),r=n(o)?ir.value(!0):ir.error(e("aria.input.invalid"));return LD.pure(r)},validateOnLoad:!1}}),s=(o,n,s,a,i)=>{const l=e(SB+"range"),c=GA.parts.label({dom:{tag:"label",attributes:{"aria-label":a}},components:[Zc(s)]}),d=GA.parts.field({data:i,factory:Vk,inputAttributes:{type:"text",..."hex"===n?{"aria-live":"polite"}:{}},inputClasses:[t("textfield")],inputBehaviours:Rm([r(n,o),JA.config({})]),onSetValue:e=>{if(TM.isInvalid(e)){const t=TM.run(e);t.get(y)}}}),m=[c,d],u="hex"!==n?[GA.parts["aria-descriptor"]({text:l})]:[],g=m.concat(u);return{dom:{tag:"div",attributes:{role:"presentation"}},components:g}},a=(e,t)=>{const o=UT(t);return yB.getField(e,"hex").each(t=>{fx.isFocused(t)||pf.setValue(e,{hex:o.value})}),o},i=(e,t)=>{const o=t.red,n=t.green,r=t.blue;pf.setValue(e,{red:o,green:n,blue:r})},l=BC({dom:{tag:"div",classes:[t("rgba-preview")],styles:{"background-color":"white"},attributes:{role:"presentation"}}}),c=(e,t)=>{l.getOpt(e).each(e=>{co(e.element,"background-color","#"+t.value)})},d=()=>{const r={red:ca(R.some(255)),green:ca(R.some(255)),blue:ca(R.some(255)),hex:ca(R.some("ffffff"))},d=(e,t)=>{const o=JT(t);i(e,o),h(o)},m=e=>r[e].get(),u=(e,t)=>{r[e].set(t)},g=()=>m("red").bind(e=>m("green").bind(t=>m("blue").map(o=>KT(e,t,o,1)))),h=e=>{const t=e.red,o=e.green,n=e.blue;u("red",R.some(t)),u("green",R.some(o)),u("blue",R.some(n))},p=(e,t)=>{const o=t.event;"hex"!==o.type?u(o.type,R.none()):n(e)},f=(e,t)=>{o(e);const n=BT(t);u("hex",R.some(t));const r=JT(n);i(e,r),h(r),Ti(e,cB,{hex:n}),c(e,n)},b=(e,t,o)=>{const n=parseInt(o,10);u(t,R.some(n)),g().each(t=>{const o=a(e,t);Ti(e,cB,{hex:o}),c(e,o)})},v=e=>"hex"===e.type,y=(e,t)=>{const o=t.event;v(o)?f(e,o.value):b(e,o.type,o.value)},w=t=>({label:e(SB+t+".label"),description:e(SB+t+".description")}),x=w("red"),C=w("green"),S=w("blue"),k=w("hex");return Or(yB.sketch(o=>({dom:{tag:"form",classes:[t("rgb-form")],attributes:{"aria-label":e("aria.color.picker")}},components:[o.field("red",GA.sketch(s(YT,"red",x.label,x.description,255))),o.field("green",GA.sketch(s(YT,"green",C.label,C.description,255))),o.field("blue",GA.sketch(s(YT,"blue",S.label,S.description,255))),o.field("hex",GA.sketch(s(IT,"hex",k.label,k.description,"ffffff"))),l.asSpec()],formBehaviours:Rm([TM.config({invalidClass:t("form-invalid")}),ix("rgb-form-events",[Ii(wB,y),Ii(xB,p),Ii(CB,p)])])})),{apis:{updateHex:(e,t)=>{pf.setValue(e,{hex:t.value}),d(e,t),c(e,t)}}})},m=Tb({factory:d,name:"RgbForm",configFields:[],apis:{updateHex:(e,t,o)=>{e.updateHex(t,o)}},extraApis:{}});return m},_B=(e,t)=>{const o=lB.parts.spectrum({dom:{tag:"canvas",attributes:{role:"presentation"},classes:[t("sv-palette-spectrum")]}}),n=lB.parts.thumb({dom:{tag:"div",attributes:{role:"presentation"},classes:[t("sv-palette-thumb")],innerHtml:``}}),r=(e,t)=>{const{width:o,height:n}=e,r=e.getContext("2d");if(null===r)return;r.fillStyle=t,r.fillRect(0,0,o,n);const s=r.createLinearGradient(0,0,o,0);s.addColorStop(0,"rgba(255,255,255,1)"),s.addColorStop(1,"rgba(255,255,255,0)"),r.fillStyle=s,r.fillRect(0,0,o,n);const a=r.createLinearGradient(0,0,0,n);a.addColorStop(0,"rgba(0,0,0,0)"),a.addColorStop(1,"rgba(0,0,0,1)"),r.fillStyle=a,r.fillRect(0,0,o,n)},s=(e,t)=>{const o=e.components()[0].element.dom,n=vE(t,100,100),s=XT(n);r(o,tE(s))},a=(e,t)=>{const o=yE(JT(t));lB.setValue(e,{x:o.saturation,y:100-o.value})},i=e=>{const s=S({x:0,y:0}),a=(e,t,o)=>{Ti(e,mB,{value:o})},i=(e,t,o,n)=>{r(o.element.dom,tE(oE))},l=Rm([Rb.config({find:R.some}),fx.config({})]);return lB.sketch({dom:{tag:"div",attributes:{role:"presentation"},classes:[t("sv-palette")]},model:{mode:"xy",getInitialValue:s},rounded:!1,components:[o,n],onChange:a,onInit:i,sliderBehaviours:l})},l=Tb({factory:i,name:"SaturationBrightnessPalette",configFields:[],apis:{setHue:(e,t,o)=>{s(t,o)},setThumb:(e,t,o)=>{a(t,o)}},extraApis:{}});return l},OB=(e,t)=>{const o=o=>{const n=kB(e,t,o.onValidHex,o.onInvalidHex),r=_B(e,t),s=e=>(100-e)/100*360,a=e=>100-e/360*100,i={paletteRgba:ca(oE),paletteHue:ca(0)},l=BC(uB(e,t)),c=BC(r.sketch({})),d=BC(n.sketch({})),m=(e,t,o)=>{c.getOpt(e).each(e=>{r.setHue(e,o)})},u=(e,t)=>{d.getOpt(e).each(e=>{n.updateHex(e,t)})},g=(e,t,o)=>{l.getOpt(e).each(e=>{lB.setValue(e,a(o))})},h=(e,t)=>{c.getOpt(e).each(e=>{r.setThumb(e,t)})},p=(e,t)=>{const o=JT(e);i.paletteRgba.set(o),i.paletteHue.set(t)},f=(e,t,o,n)=>{p(t,o),j(n,n=>{n(e,t,o)})},b=()=>{const e=[u];return(t,o)=>{const n=o.event.value,r=i.paletteHue.get(),s=vE(r,n.x,100-n.y),a=xE(s);f(t,a,r,e)}},v=()=>{const e=[m,u];return(t,o)=>{const n=s(o.event.value),r=i.paletteRgba.get(),a=yE(r),l=vE(n,a.saturation,a.value),c=xE(l);f(t,c,n,e)}},y=()=>{const e=[m,g,h];return(t,o)=>{const n=o.event.hex,r=wE(n);f(t,n,r.hue,e)}};return{uid:o.uid,dom:o.dom,components:[c.asSpec(),l.asSpec(),d.asSpec()],behaviours:Rm([ix("colour-picker-events",[Ii(cB,y()),Ii(mB,b()),Ii(dB,v())]),Rb.config({find:e=>d.getOpt(e)}),$w.config({mode:"acyclic"})])}},n=Tb({name:"ColourPicker",configFields:[Rs("dom"),Qs("onValidHex",y),Qs("onInvalidHex",y)],factory:o});return n},TB=()=>Rb.config({find:R.some}),EB=e=>Rb.config({find:e.getOpt}),DB=e=>Rb.config({find:t=>Ht(t.element,e).bind(e=>t.getSystem().getByDom(e).toOptional())}),AB={self:TB,memento:EB,childAt:DB},MB=rs([Qs("preprocess",k),Qs("postprocess",k)]),NB=(e,t)=>{const o=Os("RepresentingConfigs.memento processors",MB,t);return pf.config({store:{mode:"manual",getValue:t=>{const n=e.get(t),r=pf.getValue(n);return o.postprocess(r)},setValue:(t,n)=>{const r=o.preprocess(n),s=e.get(t);pf.setValue(s,r)}}})},RB=(e,t,o)=>pf.config({store:{mode:"manual",...e.map(e=>({initialValue:e})).getOr({}),getValue:t,setValue:o}}),BB=(e,t,o)=>RB(e,e=>t(e.element),(e,t)=>o(e.element,t)),LB=e=>BB(e,wc,xc),HB=e=>BB(e,Ji,Qi),IB=e=>pf.config({store:{mode:"memory",initialValue:e}}),PB={memento:NB,withElement:BB,withComp:RB,domValue:LB,domHtml:HB,memory:IB},zB={"colorcustom.rgb.red.label":"R","colorcustom.rgb.red.description":"Red component","colorcustom.rgb.green.label":"G","colorcustom.rgb.green.description":"Green component","colorcustom.rgb.blue.label":"B","colorcustom.rgb.blue.description":"Blue component","colorcustom.rgb.hex.label":"#","colorcustom.rgb.hex.description":"Hex color code","colorcustom.rgb.range":"Range 0 to 255","aria.color.picker":"Color Picker","aria.input.invalid":"Invalid input"},FB=e=>t=>e.translate(zB[t]),VB=(e,t,o)=>{const n=e=>"tox-"+e,r=OB(FB(t),n),s=e=>{Ti(e,cM,{name:"hex-valid",value:!0})},a=e=>{Ti(e,cM,{name:"hex-valid",value:!1})},i=BC(r.sketch({dom:{tag:"div",classes:[n("color-picker-container")],attributes:{role:"presentation"}},onValidHex:s,onInvalidHex:a}));return{dom:{tag:"div"},components:[i.asSpec()],behaviours:Rm([PB.withComp(o,e=>{const t=i.get(e),o=Rb.getCurrent(t),n=o.bind(e=>{const t=pf.getValue(e);return t.hex});return n.map(e=>"#"+e).getOr("")},(e,t)=>{const o=/^#([a-fA-F0-9]{3}(?:[a-fA-F0-9]{3})?)/,n=R.from(o.exec(t)).bind(e=>ie(e,1)),r=i.get(e),s=Rb.getCurrent(r);s.fold(()=>{console.log("Can not find form")},e=>{pf.setValue(e,{hex:n.getOr("")}),yB.getField(e,"hex").each(e=>{Oi(e,Wa())})})}),AB.self()])}};var ZB=tinymce.util.Tools.resolve("tinymce.Resource");const UB=e=>_e(e,"init"),jB=e=>{const t=xu(),o=BC({dom:{tag:e.tag}}),n=xu();return{dom:{tag:"div",classes:["tox-custom-editor"]},behaviours:Rm([ix("custom-editor-events",[qi(r=>{o.getOpt(r).each(o=>{(UB(e)?e.init(o.element.dom):ZB.load(e.scriptId,e.scriptUrl).then(t=>t(o.element.dom,e.settings))).then(e=>{n.on(t=>{e.setValue(t)}),n.clear(),t.set(e)})})})]),PB.withComp(R.none(),()=>t.get().fold(()=>n.get().getOr(""),e=>e.getValue()),(e,o)=>{t.get().fold(()=>n.set(o),e=>e.setValue(o))}),AB.self()]),components:[o.asSpec()]}};var $B=tinymce.util.Tools.resolve("tinymce.util.Tools");const WB=(e,t)=>{const o=$B.explode(t.getOption("images_file_types")),n=e=>F(o,t=>Ze(e.name.toLowerCase(),`.${t.toLowerCase()}`));return q(de(e),n)},qB=(e,t,o)=>{const n=(e,t)=>{t.stop()},r=e=>(t,o)=>{j(e,e=>{e(t,o)})},s=(e,t)=>{var o;if(!Jb.isDisabled(e)){const n=t.event.raw;i(e,null===(o=n.dataTransfer)||void 0===o?void 0:o.files)}},a=(e,t)=>{const o=t.event.raw.target;i(e,o.files)},i=(o,n)=>{n&&(pf.setValue(o,WB(n,t)),Ti(o,aM,{name:e.name}))},l=BC({dom:{tag:"input",attributes:{type:"file",accept:"image/*"},styles:{display:"none"}},behaviours:Rm([ix("input-file-events",[ji(Ga()),ji(ii())])])}),c=e=>({uid:e.uid,dom:{tag:"div",classes:["tox-dropzone-container"]},behaviours:Rm([PB.memory(o.getOr([])),AB.self(),Jb.config({}),Lx.config({toggleClass:"dragenter",toggleOnExecute:!1}),ix("dropzone-events",[Ii("dragenter",r([n,Lx.toggle])),Ii("dragleave",r([n,Lx.toggle])),Ii("dragover",n),Ii("drop",r([n,s])),Ii(qa(),a)])]),components:[{dom:{tag:"div",classes:["tox-dropzone"],styles:{}},components:[{dom:{tag:"p"},components:[Zc(t.translate("Drop an image here"))]},RC.sketch({dom:{tag:"button",styles:{position:"relative"},classes:["tox-button","tox-button--secondary"]},components:[Zc(t.translate("Browse for an image")),l.asSpec()],action:e=>{const t=l.get(e);t.element.dom.click()},buttonBehaviours:Rm([JA.config({}),oT.button(t.isDisabled),XO()])})]}]}),d=e.label.map(e=>sM(e,t)),m=GA.parts.field({factory:{sketch:c}});return eM(d,m,["tox-form__group--stretched"],[])},GB=(e,t)=>({dom:{tag:"div",classes:["tox-form__grid",`tox-form__grid--${e.columns}col`]},components:U(e.items,t.interpreter)}),KB=cl("alloy-fake-before-tabstop"),YB=cl("alloy-fake-after-tabstop"),XB=e=>({dom:{tag:"div",styles:{width:"1px",height:"1px",outline:"none"},attributes:{tabindex:"0"},classes:e},behaviours:Rm([fx.config({ignore:!0}),JA.config({})])}),JB=e=>({dom:{tag:"div",classes:["tox-navobj"]},components:[XB([KB]),e,XB([YB])],behaviours:Rm([AB.childAt(1)])}),QB=(e,t)=>{Ti(e,ja(),{raw:{which:9,shiftKey:t}})},eL=(e,t)=>{const o=t.element;hc(o,KB)?QB(e,!0):hc(o,YB)&&QB(e,!1)},tL=e=>vA(e,["."+KB,"."+YB].join(","),A),oL=e=>{const t=ca(e.getOr(""));return{getValue:e=>t.get(),setValue:(e,o)=>{t.get()!==o&&eo(e.element,"srcdoc",o),t.set(o)}}},nL=(e,t,o)=>{const n=e.sandboxed,r=e.transparent,s="tox-dialog__iframe",a={...e.label.map(e=>({title:e})).getOr({}),...o.map(e=>({srcdoc:e})).getOr({}),...n?{sandbox:"allow-scripts allow-same-origin"}:{}},i=oL(o),l=e.label.map(e=>sM(e,t)),c=e=>JB({uid:e.uid,dom:{tag:"iframe",attributes:a,classes:r?[s]:[s,`${s}--opaque`]},behaviours:Rm([JA.config({}),fx.config({}),PB.withComp(o,i.getValue,i.setValue)])}),d=GA.parts.field({factory:{sketch:c}});return eM(l,d,["tox-form__group--stretched"],[])},rL=e=>new Promise((t,o)=>{const n=()=>{s(),t(e)},r=[Su(e,"load",n),Su(e,"error",()=>{s(),o("Unable to load data from image: "+e.dom.src)})],s=()=>j(r,e=>e.unbind());e.dom.complete&&n()}),sL=(e,t,o,n,r)=>{const s=o*r,a=n*r,i=Math.max(0,e/2-s/2),l=Math.max(0,t/2-a/2);return{left:i.toString()+"px",top:l.toString()+"px",width:s.toString()+"px",height:a.toString()+"px"}},aL=(e,t,o)=>{const n=Ro(e),r=Co(e);return Math.min(n/t,r/o,1)},iL=(e,t)=>{const o=ca(t.getOr({url:""})),n=BC({dom:{tag:"img",classes:["tox-imagepreview__image"],attributes:t.map(e=>({src:e.url})).getOr({})}}),r=BC({dom:{tag:"div",classes:["tox-imagepreview__container"],attributes:{role:"presentation"}},components:[n.asSpec()]}),s=(e,t)=>{const s={url:t.url};t.zoom.each(e=>s.zoom=e),t.cachedWidth.each(e=>s.cachedWidth=e),t.cachedHeight.each(e=>s.cachedHeight=e),o.set(s);const a=()=>{const{cachedWidth:t,cachedHeight:o,zoom:n}=s;if(!g(t)&&!g(o)){if(g(n)){const n=aL(e.element,t,o);s.zoom=n}const a=sL(Ro(e.element),Co(e.element),t,o,s.zoom);r.getOpt(e).each(e=>{mo(e.element,a)})}};n.getOpt(e).each(o=>{const n=o.element;t.url!==oo(n,"src")&&(eo(n,"src",t.url),gc(e.element,"tox-imagepreview__loaded")),a(),rL(n).then(t=>{e.getSystem().isConnected()&&(mc(e.element,"tox-imagepreview__loaded"),s.cachedWidth=t.dom.naturalWidth,s.cachedHeight=t.dom.naturalHeight,a())})})},a={};e.height.each(e=>a.height=e);const i=t.map(e=>({url:e.url,zoom:R.from(e.zoom),cachedWidth:R.from(e.cachedWidth),cachedHeight:R.from(e.cachedHeight)}));return{dom:{tag:"div",classes:["tox-imagepreview"],styles:a,attributes:{role:"presentation"}},components:[r.asSpec()],behaviours:Rm([AB.self(),PB.withComp(i,()=>o.get(),s)])}},lL=(e,t)=>{const o={dom:{tag:"label",classes:["tox-label"]},components:[Zc(t.providers.translate(e.label))]},n=U(e.items,t.interpreter);return{dom:{tag:"div",classes:["tox-form__group"]},components:[o,...n],behaviours:Rm([AB.self(),sx.config({}),PB.domHtml(R.none()),$w.config({mode:"acyclic"})])}},cL=cl("toolbar.button.execute"),dL=e=>Yi((t,o)=>{nT(e,t)(o=>{Ti(t,cL,{buttonApi:o}),e.onAction(o)})}),mL={[si()]:["disabling","alloy.base.behaviour","toggling","toolbar-button-events"]},uL=(e,t,o)=>WC(e,{tag:"span",classes:["tox-icon","tox-tbtn__icon-wrap"],behaviours:o},t),gL=(e,t)=>uL(e,t,[]),hL=(e,t)=>uL(e,t,[sx.config({})]),pL=(e,t,o)=>({dom:{tag:"span",classes:[`${t}__select-label`]},components:[Zc(o.translate(e))],behaviours:Rm([sx.config({})])}),fL=cl("update-menu-text"),bL=cl("update-menu-icon"),vL=(e,t,o)=>{const n=ca(y),r=e.text.map(e=>BC(pL(e,t,o.providers))),s=e.icon.map(e=>BC(hL(e,o.providers.icons))),a=(e,t)=>{const o=pf.getValue(e);return fx.focus(o),Ti(o,"keydown",{raw:t.event.raw}),QD.close(o),R.some(!0)},i=e.role.fold(()=>({}),e=>({role:e})),l=e.tooltip.fold(()=>({}),e=>{const t=o.providers.translate(e);return{title:t,"aria-label":t}}),c=WC("chevron-down",{tag:"div",classes:[`${t}__select-chevron`]},o.providers.icons),d=BC(QD.sketch({...e.uid?{uid:e.uid}:{},...i,dom:{tag:"button",classes:[t,`${t}--select`].concat(U(e.classes,e=>`${t}--${e}`)),attributes:{...l}},components:lT([s.map(e=>e.asSpec()),r.map(e=>e.asSpec()),R.some(c)]),matchWidth:!0,useMinWidth:!0,onOpen:(t,o,n)=>{e.searchable&&iA(n)},dropdownBehaviours:Rm([...e.dropdownBehaviours,oT.button(()=>e.disabled||o.providers.isDisabled()),XO(),MM.config({}),sx.config({}),ix("dropdown-events",[rT(e,n),sT(e,n)]),ix("menubutton-update-display-text",[Ii(fL,(e,t)=>{r.bind(t=>t.getOpt(e)).each(e=>{sx.set(e,[Zc(o.providers.translate(t.event.text))])})}),Ii(bL,(e,t)=>{s.bind(t=>t.getOpt(e)).each(e=>{sx.set(e,[hL(t.event.icon,o.providers.icons)])})})])]),eventOrder:Or(mL,{mousedown:["focusing","alloy.base.behaviour","item-type-events","normal-dropdown-events"]}),sandboxBehaviours:Rm([$w.config({mode:"special",onLeft:a,onRight:a}),ix("dropdown-sandbox-events",[Ii(Zk,(e,t)=>{tA(e),t.stop()}),Ii(Uk,(e,t)=>{oA(e,t),t.stop()})])]),lazySink:o.getSink,toggleClass:`${t}--active`,parts:{menu:{...Lk(!1,e.columns,e.presets),fakeFocus:e.searchable,onHighlightItem:sA,onCollapseMenu:(e,t,o)=>{vv.getHighlighted(o).each(t=>{sA(e,o,t)})},onDehighlightItem:aA}},fetch:t=>LD.nu(O(e.fetch,t))}));return d.asSpec()},yL=e=>i(e),wL=e=>"separator"===e.type,xL=e=>_e(e,"getSubmenuItems"),CL={type:"separator"},SL=(e,t)=>{const o=K(e,(e,o)=>yL(o)?""===o?e:"|"===o?e.length>0&&!wL(e[e.length-1])?e.concat([CL]):e:_e(t,o.toLowerCase())?e.concat([t[o.toLowerCase()]]):e:e.concat([o]),[]);return o.length>0&&wL(o[o.length-1])&&o.pop(),o},kL=(e,t)=>{const o=e.getSubmenuItems(),n=OL(o,t),r=Or(n.menus,{[e.value]:n.items}),s=Or(n.expansions,{[e.value]:e.value});return{item:e,menus:r,expansions:s}},_L=e=>{const t=ke(e,"value").getOrThunk(()=>cl("generated-menu-item"));return Or({value:t},e)},OL=(e,t)=>{const o=SL(i(e)?e.split(" "):e,t);return G(o,(e,o)=>{if(xL(o)){const n=_L(o),r=kL(n,t);return{menus:Or(e.menus,r.menus),items:[r.item,...e.items],expansions:Or(e.expansions,r.expansions)}}return{...e,items:[o,...e.items]}},{menus:{},expansions:{},items:[]})},TL=e=>e.search.fold(()=>({searchMode:"no-search"}),e=>({searchMode:"search-with-field",placeholder:e.placeholder})),EL=e=>e.search.fold(()=>({searchMode:"no-search"}),e=>({searchMode:"search-with-results"})),DL=(e,t,o,n)=>{const r=cl("primary-menu"),s=OL(e,o.shared.providers.menuItems());if(0===s.items.length)return R.none();const a=TL(n),i=uA(r,s.items,t,o,n.isHorizontalMenu,a),l=EL(n),c=pe(s.menus,(e,n)=>uA(n,e,t,o,!1,l)),d=Or(c,ba(r,i));return R.from(TC.tieredData(r,d,s.expansions))},AL=e=>!_e(e,"items"),ML="data-value",NL=(e,t,o,n)=>U(o,o=>AL(o)?{type:"togglemenuitem",text:o.text,value:o.value,active:o.value===n,onAction:()=>{pf.setValue(e,o.value),Ti(e,aM,{name:t}),fx.focus(e)}}:{type:"nestedmenuitem",text:o.text,getSubmenuItems:()=>NL(e,t,o.items,n)}),RL=(e,t)=>me(e,e=>AL(e)?Be(e.value===t,e):RL(e.items,t)),BL=(e,t,o)=>{const n=t.shared.providers,r=o.bind(t=>RL(e.items,t)).orThunk(()=>le(e.items).filter(AL)),s=e.label.map(e=>sM(e,n)),a=GA.parts.field({dom:{},factory:{sketch:o=>vL({uid:o.uid,text:r.map(e=>e.text),icon:R.none(),tooltip:e.label,role:R.none(),fetch:(o,n)=>{const r=NL(o,e.name,e.items,pf.getValue(o));n(DL(r,lk.CLOSE_ON_EXECUTE,t,{isHorizontalMenu:!1,search:R.none()}))},onSetup:S(y),getApi:S({}),columns:1,presets:"normal",classes:[],dropdownBehaviours:[JA.config({}),PB.withComp(r.map(e=>e.value),e=>oo(e.element,ML),(t,o)=>{RL(e.items,o).each(e=>{eo(t.element,ML,e.value),Ti(t,fL,{text:e.text})})})]},"tox-listbox",t.shared)}}),i={dom:{tag:"div",classes:["tox-listboxfield"]},components:[a]};return GA.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:Q([s.toArray(),[i]]),fieldBehaviours:Rm([Jb.config({disabled:S(!e.enabled),onDisabled:e=>{GA.getField(e).each(Jb.disable)},onEnabled:e=>{GA.getField(e).each(Jb.enable)}})])})},LL=(e,t)=>({dom:{tag:"div",classes:e.classes},components:U(e.items,t.shared.interpreter)}),HL=(e,t)=>{const o=U(e.options,e=>({dom:{tag:"option",value:e.value,innerHtml:e.text}})),n=e.data.map(e=>ba("initialValue",e)).getOr({});return{uid:e.uid,dom:{tag:"select",classes:e.selectClasses,attributes:e.selectAttributes},components:o,behaviours:vf(e.selectBehaviours,[fx.config({}),pf.config({store:{mode:"manual",getValue:e=>wc(e.element),setValue:(t,o)=>{const n=X(e.options,e=>e.value===o);n.isSome()&&xc(t.element,o)},...n}})])}},IL=Tb({name:"HtmlSelect",configFields:[Rs("options"),ff("selectBehaviours",[fx,pf]),Qs("selectClasses",[]),Qs("selectAttributes",{}),js("data")],factory:HL}),PL=(e,t,o)=>{const n=U(e.items,e=>({text:t.translate(e.text),value:e.value})),r=e.label.map(e=>sM(e,t)),s=GA.parts.field({dom:{},...o.map(e=>({data:e})).getOr({}),selectAttributes:{size:e.size},options:n,factory:IL,selectBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled()}),JA.config({}),ix("selectbox-change",[Ii(qa(),(t,o)=>{Ti(t,aM,{name:e.name})})])])}),a=e.size>1?R.none():R.some(WC("chevron-down",{tag:"div",classes:["tox-selectfield__icon-js"]},t.icons)),i={dom:{tag:"div",classes:["tox-selectfield"]},components:Q([[s],a.toArray()])};return GA.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:Q([r.toArray(),[i]]),fieldBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled(),onDisabled:e=>{GA.getField(e).each(Jb.disable)},onEnabled:e=>{GA.getField(e).each(Jb.enable)}}),XO()])})},zL=S([Qs("field1Name","field1"),Qs("field2Name","field2"),Ad("onLockedChange"),Od(["lockClass"]),Qs("locked",!1),yf.field("coupledFieldBehaviours",[Rb,pf])]),FL=(e,t,o)=>cb(e,t,o).bind(Rb.getCurrent),VL=(e,t)=>Gf({factory:GA,name:e,overrides:e=>({fieldBehaviours:Rm([ix("coupled-input-behaviour",[Ii(Wa(),o=>{FL(o,e,t).each(t=>{cb(o,e,"lock").each(n=>{Lx.isOn(n)&&e.onLockedChange(o,t,n)})})})])])})}),ZL=S([VL("field1","field2"),VL("field2","field1"),Gf({factory:RC,schema:[Rs("dom")],name:"lock",overrides:e=>({buttonBehaviours:Rm([Lx.config({selected:e.locked,toggleClass:e.markers.lockClass,aria:{mode:"pressed"}})])})})]),UL=(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,behaviours:yf.augment(e.coupledFieldBehaviours,[Rb.config({find:R.some}),pf.config({store:{mode:"manual",getValue:t=>{const o=hb(t,e,["field1","field2"]);return{[e.field1Name]:pf.getValue(o.field1()),[e.field2Name]:pf.getValue(o.field2())}},setValue:(t,o)=>{const n=hb(t,e,["field1","field2"]);Oe(o,e.field1Name)&&pf.setValue(n.field1(),o[e.field1Name]),Oe(o,e.field2Name)&&pf.setValue(n.field2(),o[e.field2Name])}}})]),apis:{getField1:t=>cb(t,e,"field1"),getField2:t=>cb(t,e,"field2"),getLock:t=>cb(t,e,"lock")}}),jL=Eb({name:"FormCoupledInputs",configFields:zL(),partFields:ZL(),factory:UL,apis:{getField1:(e,t)=>e.getField1(t),getField2:(e,t)=>e.getField2(t),getLock:(e,t)=>e.getLock(t)}}),$L=e=>{const t={"":0,px:0,pt:1,mm:1,pc:2,ex:2,em:2,ch:2,rem:2,cm:3,in:4,"%":4},o=e=>e in t?t[e]:1;let n=e.value.toFixed(o(e.unit));return-1!==n.indexOf(".")&&(n=n.replace(/\.?0*$/,"")),n+e.unit},WL=e=>{const t=/^\s*(\d+(?:\.\d+)?)\s*(|cm|mm|in|px|pt|pc|em|ex|ch|rem|vw|vh|vmin|vmax|%)\s*$/,o=t.exec(e);if(null!==o){const e=parseFloat(o[1]),t=o[2];return ir.value({value:e,unit:t})}return ir.error(e)},qL=(e,t)=>{const o={"":96,px:96,pt:72,cm:2.54,pc:12,mm:25.4,in:1},n=e=>_e(o,e);return e.unit===t?R.some(e.value):n(e.unit)&&n(t)?o[e.unit]===o[t]?R.some(e.value):R.some(e.value/o[e.unit]*o[t]):R.none()},GL=e=>R.none(),KL=(e,t)=>o=>qL(o,t).map(o=>({value:o*e,unit:t})),YL=(e,t)=>{const o=WL(e).toOptional(),n=WL(t).toOptional();return Me(o,n,(e,t)=>qL(e,t.unit).map(e=>t.value/e).map(e=>KL(e,t.unit)).getOr(GL)).getOr(GL)},XL=(e,t)=>{let o=GL;const n=cl("ratio-event"),r=e=>WC(e,{tag:"span",classes:["tox-icon","tox-lock-icon__"+e]},t.icons),s=jL.parts.lock({dom:{tag:"button",classes:["tox-lock","tox-button","tox-button--naked","tox-button--icon"],attributes:{title:t.translate(e.label.getOr("Constrain proportions"))}},components:[r("lock"),r("unlock")],buttonBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled()}),XO(),JA.config({})])}),a=e=>({dom:{tag:"div",classes:["tox-form__group"]},components:e}),i=o=>GA.parts.field({factory:Vk,inputClasses:["tox-textfield"],inputBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled()}),XO(),JA.config({}),ix("size-input-events",[Ii(Za(),(e,t)=>{Ti(e,n,{isField1:o})}),Ii(qa(),(t,o)=>{Ti(t,aM,{name:e.name})})])]),selectOnFocus:!1}),l=e=>({dom:{tag:"label",classes:["tox-label"]},components:[Zc(t.translate(e))]}),c=jL.parts.field1(a([GA.parts.label(l("Width")),i(!0)])),d=jL.parts.field2(a([GA.parts.label(l("Height")),i(!1)]));return jL.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:[{dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:[c,d,a([l(kg),s])]}],field1Name:"width",field2Name:"height",locked:!0,markers:{lockClass:"tox-locked"},onLockedChange:(e,t,n)=>{WL(pf.getValue(e)).each(e=>{o(e).each(e=>{pf.setValue(t,$L(e))})})},coupledFieldBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled(),onDisabled:e=>{jL.getField1(e).bind(GA.getField).each(Jb.disable),jL.getField2(e).bind(GA.getField).each(Jb.disable),jL.getLock(e).each(Jb.disable)},onEnabled:e=>{jL.getField1(e).bind(GA.getField).each(Jb.enable),jL.getField2(e).bind(GA.getField).each(Jb.enable),jL.getLock(e).each(Jb.enable)}}),XO(),ix("size-input-events2",[Ii(n,(e,t)=>{const n=t.event.isField1,r=n?jL.getField1(e):jL.getField2(e),s=n?jL.getField2(e):jL.getField1(e),a=r.map(pf.getValue).getOr(""),i=s.map(pf.getValue).getOr("");o=YL(a,i)})])])})},JL=(e,t,o)=>{const n=lB.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[Zc(t.translate(e.label))]}),r=lB.parts.spectrum({dom:{tag:"div",classes:["tox-slider__rail"],attributes:{role:"presentation"}}}),s=lB.parts.thumb({dom:{tag:"div",classes:["tox-slider__handle"],attributes:{role:"presentation"}}});return lB.sketch({dom:{tag:"div",classes:["tox-slider"],attributes:{role:"presentation"}},model:{mode:"x",minX:e.min,maxX:e.max,getInitialValue:S(o.getOrThunk(()=>(Math.abs(e.max)-Math.abs(e.min))/2))},components:[n,r,s],sliderBehaviours:Rm([AB.self(),fx.config({})]),onChoose:(t,o,n)=>{Ti(t,aM,{name:e.name,value:n})}})},QL=(e,t)=>{const o=e=>({dom:{tag:"th",innerHtml:t.translate(e)}}),n=e=>({dom:{tag:"thead"},components:[{dom:{tag:"tr"},components:U(e,o)}]}),r=e=>({dom:{tag:"td",innerHtml:t.translate(e)}}),s=e=>({dom:{tag:"tr"},components:U(e,r)}),a=e=>({dom:{tag:"tbody"},components:U(e,s)});return{dom:{tag:"table",classes:["tox-dialog__table"]},components:[n(e.header),a(e.cells)],behaviours:Rm([JA.config({}),fx.config({})])}},eH=(e,t)=>{const o=e.label.map(e=>sM(e,t)),n=[Jb.config({disabled:()=>e.disabled||t.isDisabled()}),XO(),$w.config({mode:"execution",useEnter:!0!==e.multiline,useControlEnter:!0===e.multiline,execute:e=>(Oi(e,dM),R.some(!0))}),ix("textfield-change",[Ii(Wa(),(t,o)=>{Ti(t,aM,{name:e.name})}),Ii(ni(),(t,o)=>{Ti(t,aM,{name:e.name})})]),JA.config({})],r=e.validation.map(e=>TM.config({getRoot:e=>Nt(e.element),invalidClass:"tox-invalid",validator:{validate:t=>{const o=pf.getValue(t),n=e.validator(o);return LD.pure(!0===n?ir.value(o):ir.error(n))},validateOnLoad:e.validateOnLoad}})).toArray(),s=e.placeholder.fold(S({}),e=>({placeholder:t.translate(e)})),a=e.inputMode.fold(S({}),e=>({inputmode:e})),i={...s,...a},l=GA.parts.field({tag:!0===e.multiline?"textarea":"input",...e.data.map(e=>({data:e})).getOr({}),inputAttributes:i,inputClasses:[e.classname],inputBehaviours:Rm(Q([n,r])),selectOnFocus:!1,factory:Vk}),c=e.flex?["tox-form__group--stretched"]:[],d=c.concat(e.maximized?["tox-form-group--maximize"]:[]),m=[Jb.config({disabled:()=>e.disabled||t.isDisabled(),onDisabled:e=>{GA.getField(e).each(Jb.disable)},onEnabled:e=>{GA.getField(e).each(Jb.enable)}}),XO()];return eM(o,l,d,m)},tH=(e,t,o)=>eH({name:e.name,multiline:!1,label:e.label,inputMode:e.inputMode,placeholder:e.placeholder,flex:!1,disabled:!e.enabled,classname:"tox-textfield",validation:R.none(),maximized:e.maximized,data:o},t),oH=(e,t,o)=>eH({name:e.name,multiline:!0,label:e.label,inputMode:R.none(),placeholder:e.placeholder,flex:!0,disabled:!e.enabled,classname:"tox-textarea",validation:R.none(),maximized:e.maximized,data:o},t),nH=(e,t)=>{const o=e.stream.streams,n=o.setup(e,t);return Ri([Ii(e.event,n),Gi(()=>t.cancel())].concat(e.cancelEvent.map(e=>[Ii(e,()=>t.cancel())]).getOr([])))};var rH=Object.freeze({__proto__:null,events:nH});const sH=(e,t)=>{let o=null;const n=()=>{m(o)||(clearTimeout(o),o=null)},r=(...n)=>{m(o)&&(o=setTimeout(()=>{o=null,e.apply(null,n)},t))};return{cancel:n,throttle:r}},aH=(e,t)=>{let o=null;const n=()=>{m(o)||(clearTimeout(o),o=null)},r=(...r)=>{n(),o=setTimeout(()=>{o=null,e.apply(null,r)},t)};return{cancel:n,throttle:r}},iH=e=>{const t=ca(null),o=()=>({timer:null!==t.get()?"set":"unset"}),n=e=>{t.set(e)},r=()=>{const e=t.get();null!==e&&e.cancel()};return Ml({readState:o,setTimer:n,cancel:r})},lH=e=>e.stream.streams.state(e);var cH=Object.freeze({__proto__:null,throttle:iH,init:lH});const dH=(e,t)=>{const o=e.stream,n=aH(e.onStream,o.delay);return t.setTimer(n),(e,t)=>{n.throttle(e,t),o.stopEvent&&t.stop()}};var mH=[Bs("stream",Es("mode",{throttle:[Rs("delay"),Qs("stopEvent",!0),Nd("streams",{setup:dH,state:iH})]})),Qs("event","input"),js("cancelEvent"),Ad("onStream")];const uH=Lm({fields:mH,name:"streaming",active:rH,state:cH}),gH=(e,t,o)=>{const n=pf.getValue(o);pf.setValue(t,n),pH(t)},hH=(e,t)=>{const o=e.element,n=wc(o),r=o.dom;"number"!==oo(o,"type")&&t(r,n)},pH=e=>{hH(e,(e,t)=>e.setSelectionRange(t.length,t.length))},fH=(e,t)=>{hH(e,(e,o)=>e.setSelectionRange(t,o.length))},bH=(e,t,o)=>{if(e.selectsOver){const n=pf.getValue(t),r=e.getDisplayText(n),s=pf.getValue(o),a=e.getDisplayText(s);return 0===a.indexOf(r)?R.some(()=>{gH(e,t,o),fH(t,r.length)}):R.none()}return R.none()},vH=S("alloy.typeahead.itemexecute"),yH=(e,t,o,n)=>{const r=(t,o,r)=>{e.previewing.set(!1);const s=TD.getCoupled(t,"sandbox");if(Np.isOpen(s))Rb.getCurrent(s).each(e=>{vv.getHighlighted(e).fold(()=>{r(e)},()=>{Ni(s,e.element,"keydown",o)})});else{const o=e=>{Rb.getCurrent(e).each(r)};VD(e,a(t),t,s,n,o,xC.HighlightMenuAndItem).get(y)}},s=Ik(e),a=e=>t=>t.map(t=>{const o=Se(t.menus),n=ee(o,e=>q(e.items,e=>"item"===e.type)),r=pf.getState(e);return r.update(U(n,e=>e.data)),t}),i=e=>Rb.getCurrent(e),l="typeaheadevents",c=[fx.config({}),pf.config({onSetValue:e.onSetValue,store:{mode:"dataset",getDataKey:e=>wc(e.element),getFallbackEntry:e=>({value:e,meta:{}}),setValue:(t,o)=>{xc(t.element,e.model.getDisplayText(o))},...e.initialData.map(e=>ba("initialValue",e)).getOr({})}}),uH.config({stream:{mode:"throttle",delay:e.responseTime,stopEvent:!1},onStream:(t,o)=>{const r=TD.getCoupled(t,"sandbox"),s=fx.isFocused(t);if(s&&wc(t.element).length>=e.minChars){const o=i(r).bind(e=>vv.getHighlighted(e).map(pf.getValue));e.previewing.set(!0);const s=t=>{i(r).each(t=>{o.fold(()=>{e.model.selectsOver&&vv.highlightFirst(t)},e=>{vv.highlightBy(t,t=>{const o=pf.getValue(t);return o.value===e.value}),vv.getHighlighted(t).orThunk(()=>(vv.highlightFirst(t),R.none()))})})};VD(e,a(t),t,r,n,s,xC.HighlightJustMenu).get(y)}},cancelEvent:di()}),$w.config({mode:"special",onDown:(e,t)=>(r(e,t,vv.highlightFirst),R.some(!0)),onEscape:e=>{const t=TD.getCoupled(e,"sandbox");return Np.isOpen(t)?(Np.close(t),R.some(!0)):R.none()},onUp:(e,t)=>(r(e,t,vv.highlightLast),R.some(!0)),onEnter:t=>{const o=TD.getCoupled(t,"sandbox"),n=Np.isOpen(o);if(n&&!e.previewing.get())return i(o).bind(e=>vv.getHighlighted(e)).map(e=>(Ti(t,vH(),{item:e}),!0));{const r=pf.getValue(t);return Oi(t,di()),e.onExecute(o,t,r),n&&Np.close(o),R.some(!0)}}}),Lx.config({toggleClass:e.markers.openClass,aria:{mode:"expanded"}}),TD.config({others:{sandbox:t=>qD(e,t,{onOpen:()=>Lx.on(t),onClose:()=>Lx.off(t)})}}),ix(l,[qi(t=>{e.lazyTypeaheadComp.set(R.some(t))}),Gi(t=>{e.lazyTypeaheadComp.set(R.none())}),Yi(t=>{const o=y;UD(e,a(t),t,n,o,xC.HighlightMenuAndItem).get(y)}),Ii(vH(),(t,o)=>{const n=TD.getCoupled(t,"sandbox");gH(e.model,t,o.event.item),Oi(t,di()),e.onItemExecute(t,n,o.event.item,pf.getValue(t)),Np.close(n),pH(t)})].concat(e.dismissOnBlur?[Ii(oi(),e=>{const t=TD.getCoupled(e,"sandbox");Wm(t.element).isNone()&&Np.close(t)})]:[]))],d={[bi()]:[pf.name(),uH.name(),l],...e.eventOrder};return{uid:e.uid,dom:zk(Or(e,{inputAttributes:{role:"combobox","aria-autocomplete":"list","aria-haspopup":"true"}})),behaviours:{...s,...vf(e.typeaheadBehaviours,c)},eventOrder:d}},wH=S([js("lazySink"),Rs("fetch"),Qs("minChars",5),Qs("responseTime",1e3),Ed("onOpen"),Qs("getHotspot",R.some),Qs("getAnchorOverrides",S({})),Qs("layouts",R.none()),Qs("eventOrder",{}),la("model",{},[Qs("getDisplayText",e=>void 0!==e.meta&&void 0!==e.meta.text?e.meta.text:e.value),Qs("selectsOver",!0),Qs("populateFromBrowse",!0)]),Ed("onSetValue"),Dd("onExecute"),Ed("onItemExecute"),Qs("inputClasses",[]),Qs("inputAttributes",{}),Qs("inputStyles",{}),Qs("matchWidth",!0),Qs("useMinWidth",!1),Qs("dismissOnBlur",!0),Od(["openClass"]),js("initialData"),ff("typeaheadBehaviours",[fx,pf,uH,$w,Lx,TD]),Ms("lazyTypeaheadComp",()=>ca(R.none)),Ms("previewing",()=>ca(!0))].concat(Hk()).concat(KD())),xH=S([Kf({schema:[_d()],name:"menu",overrides:e=>({fakeFocus:!0,onHighlightItem:(t,o,n)=>{e.previewing.get()?e.lazyTypeaheadComp.get().each(t=>{bH(e.model,t,n).fold(()=>{e.model.selectsOver?(vv.dehighlight(o,n),e.previewing.set(!0)):e.previewing.set(!1)},t=>{t(),e.previewing.set(!1)})}):e.lazyTypeaheadComp.get().each(t=>{e.model.populateFromBrowse&&gH(e.model,t,n)})},onExecute:(t,o)=>e.lazyTypeaheadComp.get().map(e=>(Ti(e,vH(),{item:o}),!0)),onHover:(t,o)=>{e.previewing.set(!1),e.lazyTypeaheadComp.get().each(t=>{e.model.populateFromBrowse&&gH(e.model,t,o)})}})})]),CH=Eb({name:"Typeahead",configFields:wH(),partFields:xH(),factory:yH}),SH=e=>{const t=()=>SH(e.toCached()),o=t=>SH(e.bind(e=>e.fold(e=>LD.pure(ir.error(e)),e=>t(e)))),n=t=>SH(e.map(e=>e.bind(t))),r=t=>SH(e.map(e=>e.map(t))),s=t=>SH(e.map(e=>e.mapError(t))),a=(t,o)=>e.map(e=>e.fold(t,o)),i=(t,o)=>SH(LD.nu(n=>{let r=!1;const s=setTimeout(()=>{r=!0,n(ir.error(o()))},t);e.get(e=>{r||(clearTimeout(s),n(e))})}));return{...e,toCached:t,bindFuture:o,bindResult:n,mapResult:r,mapError:s,foldResult:a,withTimeout:i}},kH=e=>SH(LD.nu(e)),_H=e=>SH(LD.pure(ir.value(e))),OH=e=>SH(LD.pure(ir.error(e))),TH=e=>SH(LD.pure(e)),EH=e=>SH(e.map(ir.value)),DH=e=>kH(t=>{e.then(e=>{t(ir.value(e))},e=>{t(ir.error(e))})}),AH={nu:kH,wrap:SH,pure:_H,value:_H,error:OH,fromResult:TH,fromFuture:EH,fromPromise:DH},MH=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t),setActive:t=>{const o=e.element;t?(mc(o,"tox-tbtn--enabled"),eo(o,"aria-pressed",!0)):(gc(o,"tox-tbtn--enabled"),so(o,"aria-pressed"))},isActive:()=>hc(e.element,"tox-tbtn--enabled")}),NH=(e,t,o,n)=>vL({text:e.text,icon:e.icon,tooltip:e.tooltip,searchable:e.search.isSome(),role:n,fetch:(t,n)=>{const r={pattern:e.search.isSome()?lA(t):""};e.fetch(t=>{n(DL(t,lk.CLOSE_ON_EXECUTE,o,{isHorizontalMenu:!1,search:e.search}))},r)},onSetup:e.onSetup,getApi:MH,columns:1,presets:"normal",classes:[],dropdownBehaviours:[JA.config({})]},t,o.shared),RH=(e,t,o)=>{const n=e=>n=>{const r=!n.isActive();n.setActive(r),e.storage.set(r),o.shared.getSink().each(o=>{t().getOpt(o).each(t=>{Zm(t.element),Ti(t,cM,{name:e.name,value:e.storage.get()})})})},r=e=>t=>{t.setActive(e.storage.get())};return t=>{t(U(e,e=>{const t=e.text.fold(()=>({}),e=>({text:e}));return{type:e.type,active:!1,...t,onAction:n(e),onSetup:r(e)}}))}},BH=(e,t,o=[],n,r,s)=>{const a=t.fold(()=>({}),e=>({action:e})),i={buttonBehaviours:Rm([oT.button(()=>!e.enabled||s.isDisabled()),XO(),JA.config({}),ix("button press",[Hi("click"),Hi("mousedown")])].concat(o)),eventOrder:{click:["button press","alloy.base.behaviour"],mousedown:["button press","alloy.base.behaviour"]},...a},l=Or(i,{dom:n});return Or(l,{components:r})},LH=(e,t,o,n=[])=>{const r=e.tooltip.map(e=>({"aria-label":o.translate(e),title:o.translate(e)})).getOr({}),s={tag:"button",classes:["tox-tbtn"],attributes:r},a=e.icon.map(e=>gL(e,o.icons)),i=lT([a]);return BH(e,t,n,s,i,o)},HH=e=>{switch(e){case"primary":return["tox-button"];case"toolbar":return["tox-tbtn"];case"secondary":default:return["tox-button","tox-button--secondary"]}},IH=(e,t,o,n=[],r=[])=>{const s=o.translate(e.text),a=e.icon.map(e=>gL(e,o.icons)),i=[a.getOrThunk(()=>Zc(s))],l=e.buttonType.getOr(e.primary||e.borderless?"primary":"secondary"),c=HH(l),d=[...c,...a.isSome()?["tox-button--icon"]:[],...e.borderless?["tox-button--naked"]:[],...r],m={tag:"button",classes:d,attributes:{title:s}};return BH(e,t,n,m,i,o)},PH=(e,t,o,n=[],r=[])=>{const s=IH(e,R.some(t),o,n,r);return RC.sketch(s)},zH=(e,t)=>o=>{"custom"===t?Ti(o,cM,{name:e,value:{}}):"submit"===t?Oi(o,dM):"cancel"===t?Oi(o,lM):console.error("Unknown button type: ",t)},FH=(e,t)=>"menu"===t,VH=(e,t)=>"custom"===t||"cancel"===t||"submit"===t,ZH=(e,t,o)=>{if(FH(e,t)){const t=()=>s,n=e,r={...e,type:"menubutton",search:R.none(),onSetup:t=>(t.setEnabled(e.enabled),y),fetch:RH(n.items,t,o)},s=BC(NH(r,"tox-tbtn",o,R.none()));return s.asSpec()}if(VH(e,t)){const n=zH(e.name,t),r={...e,borderless:!1};return PH(r,n,o.shared.providers,[])}throw console.error("Unknown footer button type: ",t),new Error("Unknown footer button type")},UH=(e,t)=>{const o=zH(e.name,"custom");return tM(R.none(),GA.parts.field({factory:RC,...IH(e,R.some(o),t,[PB.memory(""),AB.self()])}))},jH={type:"separator"},$H=e=>({type:"menuitem",value:e.url,text:e.title,meta:{attach:e.attach},onAction:y}),WH=(e,t)=>({type:"menuitem",value:t,text:e,meta:{attach:void 0},onAction:y}),qH=e=>U(e,$H),GH=(e,t)=>q(t,t=>t.type===e),KH=(e,t)=>qH(GH(e,t)),YH=e=>KH("header",e.targets),XH=e=>KH("anchor",e.targets),JH=e=>R.from(e.anchorTop).map(e=>WH("",e)).toArray(),QH=e=>R.from(e.anchorBottom).map(e=>WH("",e)).toArray(),eI=e=>U(e,e=>WH(e,e)),tI=e=>K(e,(e,t)=>{const o=0===e.length||0===t.length;return o?e.concat(t):e.concat(jH,t)},[]),oI=(e,t)=>{const o=e.toLowerCase();return q(t,e=>{var t;const n=void 0!==e.meta&&void 0!==e.meta.text?e.meta.text:e.text,r=null!==(t=e.value)&&void 0!==t?t:"";return Fe(n.toLowerCase(),o)||Fe(r.toLowerCase(),o)})},nI=(e,t,o)=>{const n=pf.getValue(t),r=void 0!==n.meta.text?n.meta.text:n.value,s=o.getLinkInformation();return s.fold(()=>[],t=>{const n=oI(r,eI(o.getHistory(e)));return"file"===e?tI([n,oI(r,YH(t)),oI(r,Q([JH(t),XH(t),QH(t)]))]):n})},rI=cl("aria-invalid"),sI=(e,t,o,n)=>{const r=t.shared.providers,s=t=>{const n=pf.getValue(t);o.addToHistory(n.value,e.filetype)},a={...n.map(e=>({initialData:e})).getOr({}),dismissOnBlur:!0,inputClasses:["tox-textfield"],sandboxClasses:["tox-dialog__popups"],inputAttributes:{"aria-errormessage":rI,type:"url"},minChars:0,responseTime:0,fetch:n=>{const r=nI(e.filetype,n,o),s=DL(r,lk.BUBBLE_TO_SANDBOX,t,{isHorizontalMenu:!1,search:R.none()});return LD.pure(s)},getHotspot:e=>h.getOpt(e),onSetValue:(e,t)=>{e.hasConfigured(TM)&&TM.run(e).get(y)},typeaheadBehaviours:Rm([...o.getValidationHandler().map(t=>TM.config({getRoot:e=>Nt(e.element),invalidClass:"tox-control-wrap--status-invalid",notify:{onInvalid:(e,t)=>{d.getOpt(e).each(e=>{eo(e.element,"title",r.translate(t))})}},validator:{validate:o=>{const n=pf.getValue(o);return AH.nu(o=>{t({type:e.filetype,url:n.value},e=>{if("invalid"===e.status){const t=ir.error(e.message);o(t)}else{const t=ir.value(e.message);o(t)}})})},validateOnLoad:!1}})).toArray(),Jb.config({disabled:()=>!e.enabled||r.isDisabled()}),JA.config({}),ix("urlinput-events",[Ii(Wa(),t=>{const o=wc(t.element),n=o.trim();n!==o&&xc(t.element,n),"file"===e.filetype&&Ti(t,aM,{name:e.name})}),Ii(qa(),t=>{Ti(t,aM,{name:e.name}),s(t)}),Ii(ni(),t=>{Ti(t,aM,{name:e.name}),s(t)})])]),eventOrder:{[Wa()]:["streaming","urlinput-events","invalidating"]},model:{getDisplayText:e=>e.value,selectsOver:!1,populateFromBrowse:!1},markers:{openClass:"tox-textfield--popup-open"},lazySink:t.shared.getSink,parts:{menu:Lk(!1,1,"normal")},onExecute:(e,t,o)=>{Ti(t,dM,{})},onItemExecute:(t,o,n,r)=>{s(t),Ti(t,aM,{name:e.name})}},i=GA.parts.field({...a,factory:CH}),l=e.label.map(e=>sM(e,r)),c=(e,t,o=e,n=e)=>WC(o,{tag:"div",classes:["tox-icon","tox-control-wrap__status-icon-"+e],attributes:{title:r.translate(n),"aria-live":"polite",...t.fold(()=>({}),e=>({id:e}))}},r.icons),d=BC(c("invalid",R.some(rI),"warning")),m=BC({dom:{tag:"div",classes:["tox-control-wrap__status-icon-wrap"]},components:[d.asSpec()]}),u=o.getUrlPicker(e.filetype),g=cl("browser.url.event"),h=BC({dom:{tag:"div",classes:["tox-control-wrap"]},components:[i,m.asSpec()],behaviours:Rm([Jb.config({disabled:()=>!e.enabled||r.isDisabled()})])}),p=BC(PH({name:e.name,icon:R.some("browse"),text:e.label.getOr(""),enabled:e.enabled,primary:!1,buttonType:R.none(),borderless:!0},e=>Oi(e,g),r,[],["tox-browse-url"])),f=()=>({dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:Q([[h.asSpec()],u.map(()=>p.asSpec()).toArray()])}),b=t=>{Rb.getCurrent(t).each(o=>{const n=pf.getValue(o),r={fieldname:e.name,...n};u.each(n=>{n(r).get(n=>{pf.setValue(o,n),Ti(t,aM,{name:e.name})})})})};return GA.sketch({dom:nM(),components:l.toArray().concat([f()]),fieldBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||r.isDisabled(),onDisabled:e=>{GA.getField(e).each(Jb.disable),p.getOpt(e).each(Jb.disable)},onEnabled:e=>{GA.getField(e).each(Jb.enable),p.getOpt(e).each(Jb.enable)}}),XO(),ix("url-input-events",[Ii(g,b)])])})},aI=(e,t)=>ZA.sketch({dom:{tag:"div",attributes:{role:"alert"},classes:["tox-notification","tox-notification--in",`tox-notification--${e.level}`]},components:[{dom:{tag:"div",classes:["tox-notification__icon"]},components:[RC.sketch({dom:{tag:"button",classes:["tox-button","tox-button--naked","tox-button--icon"],innerHtml:VC(e.icon,t.icons),attributes:{title:t.translate(e.iconTooltip)}},action:t=>{Ti(t,cM,{name:"alert-banner",value:e.url})},buttonBehaviours:Rm([jC()])})]},{dom:{tag:"div",classes:["tox-notification__body"],innerHtml:t.translate(e.text)}}]}),iI=(e,t)=>{e.dom.checked=t},lI=e=>e.dom.checked,cI=(e,t,o)=>{const n=e=>(e.element.dom.click(),R.some(!0)),r=GA.parts.field({factory:{sketch:k},dom:{tag:"input",classes:["tox-checkbox__input"],attributes:{type:"checkbox"}},behaviours:Rm([AB.self(),Jb.config({disabled:()=>!e.enabled||t.isDisabled()}),JA.config({}),fx.config({}),PB.withElement(o,lI,iI),$w.config({mode:"special",onEnter:n,onSpace:n,stopSpaceKeyup:!0}),ix("checkbox-events",[Ii(qa(),(t,o)=>{Ti(t,aM,{name:e.name})})])])}),s=GA.parts.label({dom:{tag:"span",classes:["tox-checkbox__label"]},components:[Zc(t.translate(e.label))],behaviours:Rm([MM.config({})])}),a=e=>{const o="checked"===e?"selected":"unselected";return WC(o,{tag:"span",classes:["tox-icon","tox-checkbox-icon__"+e]},t.icons)},i=BC({dom:{tag:"div",classes:["tox-checkbox__icons"]},components:[a("checked"),a("unchecked")]});return GA.sketch({dom:{tag:"label",classes:["tox-checkbox"]},components:[r,i.asSpec(),s],fieldBehaviours:Rm([Jb.config({disabled:()=>!e.enabled||t.isDisabled(),disableClass:"tox-checkbox--disabled",onDisabled:e=>{GA.getField(e).each(Jb.disable)},onEnabled:e=>{GA.getField(e).each(Jb.enable)}}),XO()])})},dI=e=>"presentation"===e.presets?ZA.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:e.html}}):ZA.sketch({dom:{tag:"div",classes:["tox-form__group"],innerHtml:e.html,attributes:{role:"document"}},containerBehaviours:Rm([JA.config({}),fx.config({})])}),mI=e=>(t,o,n,r)=>ke(o,"name").fold(()=>e(o,r,R.none()),s=>t.field(s,e(o,r,ke(n,s)))),uI=e=>(t,o,n,r)=>{const s=Or(o,{source:"dynamic"});return mI(e)(t,s,n,r)},gI={bar:mI((e,t)=>jA(e,t.shared)),collection:mI((e,t,o)=>pM(e,t.shared.providers,o)),alertbanner:mI((e,t)=>aI(e,t.shared.providers)),input:mI((e,t,o)=>tH(e,t.shared.providers,o)),textarea:mI((e,t,o)=>oH(e,t.shared.providers,o)),label:mI((e,t)=>lL(e,t.shared)),iframe:uI((e,t,o)=>nL(e,t.shared.providers,o)),button:mI((e,t)=>UH(e,t.shared.providers)),checkbox:mI((e,t,o)=>cI(e,t.shared.providers,o)),colorinput:mI((e,t,o)=>HM(e,t.shared,t.colorinput,o)),colorpicker:mI((e,t,o)=>VB(e,t.shared.providers,o)),dropzone:mI((e,t,o)=>qB(e,t.shared.providers,o)),grid:mI((e,t)=>GB(e,t.shared)),listbox:mI((e,t,o)=>BL(e,t,o)),selectbox:mI((e,t,o)=>PL(e,t.shared.providers,o)),sizeinput:mI((e,t)=>XL(e,t.shared.providers)),slider:mI((e,t,o)=>JL(e,t.shared.providers,o)),urlinput:mI((e,t,o)=>sI(e,t,t.urlinput,o)),customeditor:mI(jB),htmlpanel:mI(dI),imagepreview:mI((e,t,o)=>iL(e,o)),table:mI((e,t)=>QL(e,t.shared.providers)),panel:mI((e,t)=>LL(e,t))},hI={field:(e,t)=>t,record:S([])},pI=(e,t,o,n)=>{const r=Or(n,{shared:{interpreter:t=>fI(e,t,o,r)}});return fI(e,t,o,r)},fI=(e,t,o,n)=>ke(gI,t.type).fold(()=>(console.error(`Unknown factory type "${t.type}", defaulting to container: `,t),t),r=>r(e,t,o,n)),bI=(e,t,o)=>fI(hI,e,t,o),vI="layout-inset",yI=e=>e.x,wI=(e,t)=>e.x+e.width/2-t.width/2,xI=(e,t)=>e.x+e.width-t.width,CI=e=>e.y,SI=(e,t)=>e.y+e.height-t.height,kI=(e,t)=>e.y+e.height/2-t.height/2,_I=(e,t,o)=>Ld(xI(e,t),SI(e,t),o.insetSouthwest(),Ud(),"southwest",Xd(e,{right:0,bottom:3}),vI),OI=(e,t,o)=>Ld(yI(e),SI(e,t),o.insetSoutheast(),Zd(),"southeast",Xd(e,{left:1,bottom:3}),vI),TI=(e,t,o)=>Ld(xI(e,t),CI(e),o.insetNorthwest(),Vd(),"northwest",Xd(e,{right:0,top:2}),vI),EI=(e,t,o)=>Ld(yI(e),CI(e),o.insetNortheast(),Fd(),"northeast",Xd(e,{left:1,top:2}),vI),DI=(e,t,o)=>Ld(wI(e,t),CI(e),o.insetNorth(),jd(),"north",Xd(e,{top:2}),vI),AI=(e,t,o)=>Ld(wI(e,t),SI(e,t),o.insetSouth(),$d(),"south",Xd(e,{bottom:3}),vI),MI=(e,t,o)=>Ld(xI(e,t),kI(e,t),o.insetEast(),qd(),"east",Xd(e,{right:0}),vI),NI=(e,t,o)=>Ld(yI(e),kI(e,t),o.insetWest(),Wd(),"west",Xd(e,{left:1}),vI),RI=e=>{switch(e){case"north":return DI;case"northeast":return EI;case"northwest":return TI;case"south":return AI;case"southeast":return OI;case"southwest":return _I;case"east":return MI;case"west":return NI}},BI=(e,t,o,n,r)=>{const s=du(n).map(RI).getOr(DI);return s(e,t,o,n,r)},LI=e=>{switch(e){case"north":return AI;case"northeast":return OI;case"northwest":return _I;case"south":return DI;case"southeast":return EI;case"southwest":return TI;case"east":return NI;case"west":return MI}},HI=(e,t,o,n,r)=>{const s=du(n).map(LI).getOr(DI);return s(e,t,o,n,r)},II={valignCentre:[],alignCentre:[],alignLeft:[],alignRight:[],right:[],left:[],bottom:[],top:[]},PI=(e,t,o)=>{const n=12,r={maxHeightFunction:ju()},s=()=>({type:"node",root:jt(Ut(e())),node:R.from(e()),bubble:Ku(n,n,II),layouts:{onRtl:()=>[EI],onLtr:()=>[TI]},overrides:r}),a=()=>({type:"hotspot",hotspot:t(),bubble:Ku(-n,n,II),layouts:{onRtl:()=>[lm],onLtr:()=>[cm]},overrides:r});return()=>o()?s():a()},zI=(e,t,o)=>{const n=()=>({type:"node",root:jt(Ut(e())),node:R.from(e()),layouts:{onRtl:()=>[DI],onLtr:()=>[DI]}}),r=()=>({type:"hotspot",hotspot:t(),layouts:{onRtl:()=>[gm],onLtr:()=>[gm]}});return()=>o()?n():r()},FI=(e,t)=>()=>({type:"selection",root:t(),getSelection:()=>{const t=e.selection.getRng();return R.some(Zg.range(Qe.fromDom(t.startContainer),t.startOffset,Qe.fromDom(t.endContainer),t.endOffset))}}),VI=e=>t=>({type:"node",root:e(),node:t}),ZI=(e,t,o)=>{const n=YS(e),r=()=>Qe.fromDom(e.getBody()),s=()=>Qe.fromDom(e.getContentAreaContainer()),a=()=>n||!o();return{inlineDialog:PI(s,t,a),banner:zI(s,t,a),cursor:FI(e,r),node:VI(r)}},UI=e=>(t,o)=>{const n=WE(e);n(t,o)},jI=e=>()=>ME(e),$I=e=>t=>NE(e,t),WI=e=>t=>AE(e,t),qI=e=>({colorPicker:UI(e),hasCustomColors:jI(e),getColors:$I(e),getColorCols:WI(e)}),GI=e=>()=>RS(e),KI=e=>({isDraggableModal:GI(e)}),YI=e=>{const t=ca(GS(e)?"bottom":"top");return{isPositionedAtTop:()=>"top"===t.get(),getDockingMode:t.get,setDockingMode:t.set}},XI=e=>Oe(e,"items"),JI=e=>Oe(e,"format"),QI=[{title:"Headings",items:[{title:"Heading 1",format:"h1"},{title:"Heading 2",format:"h2"},{title:"Heading 3",format:"h3"},{title:"Heading 4",format:"h4"},{title:"Heading 5",format:"h5"},{title:"Heading 6",format:"h6"}]},{title:"Inline",items:[{title:"Bold",format:"bold"},{title:"Italic",format:"italic"},{title:"Underline",format:"underline"},{title:"Strikethrough",format:"strikethrough"},{title:"Superscript",format:"superscript"},{title:"Subscript",format:"subscript"},{title:"Code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Align",items:[{title:"Left",format:"alignleft"},{title:"Center",format:"aligncenter"},{title:"Right",format:"alignright"},{title:"Justify",format:"alignjustify"}]}],eP=e=>_e(e,"items"),tP=e=>_e(e,"block"),oP=e=>_e(e,"inline"),nP=e=>_e(e,"selector"),rP=e=>K(e,(e,t)=>{if(eP(t)){const o=rP(t.items);return{customFormats:e.customFormats.concat(o.customFormats),formats:e.formats.concat([{title:t.title,items:o.formats}])}}if(oP(t)||tP(t)||nP(t)){const o=i(t.name)?t.name:t.title.toLowerCase(),n=`custom-${o}`;return{customFormats:e.customFormats.concat([{name:n,format:t}]),formats:e.formats.concat([{title:t.title,format:n,icon:t.icon}])}}return{...e,formats:e.formats.concat(t)}},{customFormats:[],formats:[]}),sP=(e,t)=>{const o=rP(t),n=t=>{j(t,t=>{e.formatter.has(t.name)||e.formatter.register(t.name,t.format)})};return e.formatter?n(o.customFormats):e.on("init",()=>{n(o.customFormats)}),o.formats},aP=e=>gS(e).map(t=>{const o=sP(e,t);return hS(e)?QI.concat(o):o}).getOr(QI),iP=e=>{const t=ue(e);return 1===t.length&&z(t,"title")},lP=(e,t,o)=>({...e,type:"formatter",isSelected:t(e.format),getStylePreview:o(e.format)}),cP=(e,t,o,n)=>{const r=e=>lP(e,o,n),s=e=>{const t=l(e.items);return{...e,type:"submenu",getStyleItems:S(t)}},a=t=>{const r=i(t.name)?t.name:cl(t.title),s=`custom-${r}`,a={...t,type:"formatter",format:s,isSelected:o(s),getStylePreview:n(s)};return e.formatter.register(r,a),a},l=e=>U(e,e=>XI(e)?s(e):JI(e)?r(e):iP(e)?{...e,type:"separator"}:a(e));return l(t)},dP=e=>{const t=t=>()=>e.formatter.match(t),o=t=>()=>{const o=e.formatter.get(t);return void 0!==o?R.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):R.none()},n=ca([]),r=ca([]),s=ca(!1);e.on("PreInit",r=>{const s=aP(e),a=cP(e,s,t,o);n.set(a)}),e.on("addStyleModifications",n=>{const a=cP(e,n.items,t,o);r.set(a),s.set(n.replace)});const a=()=>{const e=s.get()?[]:n.get(),t=r.get();return e.concat(t)};return{getData:a}},mP=e=>p(e)&&1===e.nodeType,uP=$B.trim,gP=e=>t=>{if(mP(t)){if(t.contentEditable===e)return!0;if(t.getAttribute("data-mce-contenteditable")===e)return!0}return!1},hP=gP("true"),pP=gP("false"),fP=(e,t,o,n,r)=>({type:e,title:t,url:o,level:n,attach:r}),bP=e=>{let t=e;while(t=t.parentNode){const e=t.contentEditable;if(e&&"inherit"!==e)return hP(t)}return!1},vP=(e,t)=>U(oh(Qe.fromDom(t),e),e=>e.dom),yP=e=>e.innerText||e.textContent,wP=e=>e.id?e.id:cl("h"),xP=e=>e&&"A"===e.nodeName&&void 0!==(e.id||e.name),CP=e=>xP(e)&&kP(e),SP=e=>e&&/^(H[1-6])$/.test(e.nodeName),kP=e=>bP(e)&&!pP(e),_P=e=>SP(e)&&kP(e),OP=e=>SP(e)?parseInt(e.nodeName.substr(1),10):0,TP=e=>{var t;const o=wP(e),n=()=>{e.id=o};return fP("header",null!==(t=yP(e))&&void 0!==t?t:"","#"+o,OP(e),n)},EP=e=>{const t=e.id||e.name,o=yP(e);return fP("anchor",o||"#"+t,"#"+t,0,y)},DP=e=>U(q(e,_P),TP),AP=e=>U(q(e,CP),EP),MP=e=>{const t=vP("h1,h2,h3,h4,h5,h6,a:not([href])",e);return t},NP=e=>uP(e.title).length>0,RP=e=>{const t=MP(e);return q(DP(t).concat(AP(t)),NP)},BP={find:RP},LP="tinymce-url-history",HP=5,IP=e=>i(e)&&/^https?/.test(e),PP=e=>d(e)&&e.length<=HP&&te(e,IP),zP=e=>l(e)&&Ce(e,e=>!PP(e)).isNone(),FP=()=>{const e=uE.getItem(LP);if(null===e)return{};let t;try{t=JSON.parse(e)}catch(o){if(o instanceof SyntaxError)return console.log("Local storage "+LP+" was not valid JSON",o),{};throw o}return zP(t)?t:(console.log("Local storage "+LP+" was not valid format",t),{})},VP=e=>{if(!zP(e))throw new Error("Bad format for history:\n"+JSON.stringify(e));uE.setItem(LP,JSON.stringify(e))},ZP=e=>{const t=FP();return ke(t,e).getOr([])},UP=(e,t)=>{if(!IP(e))return;const o=FP(),n=ke(o,t).getOr([]),r=q(n,t=>t!==e);o[t]=[e].concat(r).slice(0,HP),VP(o)},jP=e=>!!e,$P=e=>pe($B.makeMap(e,/[, ]/),jP),WP=e=>R.from(TS(e)),qP=e=>{const t=R.from(DS(e)).filter(jP).map($P);return WP(e).fold(A,e=>t.fold(M,e=>ue(e).length>0&&e))},GP=(e,t)=>{const o=qP(e);return u(o)?o?WP(e):R.none():o[t]?WP(e):R.none()},KP=(e,t)=>GP(e,t).map(o=>n=>LD.nu(r=>{const s=(e,t)=>{if(!i(e))throw new Error("Expected value to be string");if(void 0!==t&&!l(t))throw new Error("Expected meta to be a object");const o={value:e,meta:t};r(o)},a={filetype:t,fieldname:n.fieldname,...R.from(n.meta).getOr({})};o.call(e,s,n.value,a)})),YP=e=>R.from(e).filter(i).getOrUndefined(),XP=e=>AS(e)?R.some({targets:BP.find(e.getBody()),anchorTop:YP(MS(e)),anchorBottom:YP(NS(e))}):R.none(),JP=e=>R.from(ES(e)),QP=e=>({getHistory:ZP,addToHistory:UP,getLinkInformation:()=>XP(e),getValidationHandler:()=>JP(e),getUrlPicker:t=>KP(e,t)}),ez=(e,t,o)=>{const n=ca(!1),r=YI(t),s={icons:()=>t.ui.registry.getAll().icons,menuItems:()=>t.ui.registry.getAll().menuItems,translate:LC.translate,isDisabled:()=>t.mode.isReadOnly()||!t.ui.isEnabled(),getOption:t.options.get},a=QP(t),i=dP(t),l=qI(t),c=KI(t),d=()=>n.get(),m=e=>n.set(e),u={shared:{providers:s,anchors:ZI(t,o,r.isPositionedAtTop),header:r},urlinput:a,styles:i,colorinput:l,dialog:c,isContextMenuOpen:d,setContextMenuState:m},g={...u,shared:{...u.shared,interpreter:e=>bI(e,{},g),getSink:e.popup}},h={...u,shared:{...u.shared,interpreter:e=>bI(e,{},h),getSink:e.dialog}};return{popup:g,dialog:h}},tz=(e,t,o)=>{const n=(e,n)=>{j([t,...o],t=>{t.broadcastEvent(e,n)})},r=(e,n)=>{j([t,...o],t=>{t.broadcastOn([e],n)})},s=e=>r(Rp(),{target:e.target}),a=$n(),i=Su(a,"touchstart",s),l=Su(a,"touchmove",e=>n(ui(),e)),c=Su(a,"touchend",e=>n(gi(),e)),d=Su(a,"mousedown",s),m=Su(a,"mouseup",e=>{0===e.raw.button&&r(Lp(),{target:e.target})}),u=e=>r(Rp(),{target:Qe.fromDom(e.target)}),g=e=>{0===e.button&&r(Lp(),{target:Qe.fromDom(e.target)})},h=()=>{j(e.editorManager.get(),t=>{e!==t&&t.dispatch("DismissPopups",{relatedTarget:e})})},p=e=>n(hi(),_u(e)),f=e=>{r(Bp(),{}),n(pi(),_u(e))},b=()=>r(Bp(),{}),v=t=>{t.state&&r(Rp(),{target:Qe.fromDom(e.getContainer())})},y=e=>{r(Rp(),{target:Qe.fromDom(e.relatedTarget.getContainer())})};e.on("PostRender",()=>{e.on("click",u),e.on("tap",u),e.on("mouseup",g),e.on("mousedown",h),e.on("ScrollWindow",p),e.on("ResizeWindow",f),e.on("ResizeEditor",b),e.on("AfterProgressState",v),e.on("DismissPopups",y)}),e.on("remove",()=>{e.off("click",u),e.off("tap",u),e.off("mouseup",g),e.off("mousedown",h),e.off("ScrollWindow",p),e.off("ResizeWindow",f),e.off("ResizeEditor",b),e.off("AfterProgressState",v),e.off("DismissPopups",y),d.unbind(),i.unbind(),l.unbind(),c.unbind(),m.unbind()}),e.on("detach",()=>{j([t,...o],up),j([t,...o],e=>e.destroy())})},oz=bb,nz=Qf,rz=S([Qs("shell",!1),Rs("makeItem"),Qs("setupItem",y),yf.field("listBehaviours",[sx])]),sz=()=>({behaviours:Rm([sx.config({})])}),az=Yf({name:"items",overrides:sz}),iz=S([az]),lz=S("CustomList"),cz=(e,t,o,n)=>{const r=(t,o)=>{a(t).fold(()=>{throw console.error("Custom List was defined to not be a shell, but no item container was specified in components"),new Error("Custom List was defined to not be a shell, but no item container was specified in components")},n=>{const r=sx.contents(n),s=o.length,a=s-r.length,i=a>0?V(a,()=>e.makeItem()):[],l=r.slice(s);j(l,e=>sx.remove(n,e)),j(i,e=>sx.append(n,e));const c=sx.contents(n);j(c,(n,r)=>{e.setupItem(t,n,o[r],r)})})},s=e.shell?{behaviours:[sx.config({})],components:[]}:{behaviours:[],components:t},a=t=>e.shell?R.some(t):cb(t,e,"items");return{uid:e.uid,dom:e.dom,components:s.components,behaviours:vf(e.listBehaviours,s.behaviours),apis:{setItems:r}}},dz=Eb({name:lz(),configFields:rz(),partFields:iz(),factory:cz,apis:{setItems:(e,t,o)=>{e.setItems(t,o)}}}),mz=S([Rs("dom"),Qs("shell",!0),ff("toolbarBehaviours",[sx])]),uz=()=>({behaviours:Rm([sx.config({})])}),gz=S([Yf({name:"groups",overrides:uz})]),hz=(e,t,o,n)=>{const r=(e,t)=>{s(e).fold(()=>{throw console.error("Toolbar was defined to not be a shell, but no groups container was specified in components"),new Error("Toolbar was defined to not be a shell, but no groups container was specified in components")},e=>{sx.set(e,t)})},s=t=>e.shell?R.some(t):cb(t,e,"groups"),a=e.shell?{behaviours:[sx.config({})],components:[]}:{behaviours:[],components:t};return{uid:e.uid,dom:e.dom,components:a.components,behaviours:vf(e.toolbarBehaviours,a.behaviours),apis:{setGroups:r},domModification:{attributes:{role:"group"}}}},pz=Eb({name:"Toolbar",configFields:mz(),partFields:gz(),factory:hz,apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)}}}),fz=y,bz=A,vz=S([]);var yz=Object.freeze({__proto__:null,setup:fz,isDocked:bz,getBehaviours:vz});const wz=e=>{const t=Te(po(e,"position"),"fixed"),o=t?R.none():Rt(e);return o.orThunk(()=>{const t=Qe.fromTag("span");return Mt(e).bind(e=>{Ln(e,t);const o=Rt(t);return zn(t),o})})},xz=e=>wz(e).map(Do).getOrThunk(()=>Oo(0,0)),Cz=ma.generate([{static:[]},{absolute:["positionCss"]},{fixed:["positionCss"]}]),Sz=(e,t)=>{const o=e.element;mc(o,t.transitionClass),gc(o,t.fadeOutClass),mc(o,t.fadeInClass),t.onShow(e)},kz=(e,t)=>{const o=e.element;mc(o,t.transitionClass),gc(o,t.fadeInClass),mc(o,t.fadeOutClass),t.onHide(e)},_z=(e,t)=>e.yt.y,Oz=(e,t)=>e.y>=t.y,Tz=(e,t)=>e.bottom<=t.bottom,Ez=(e,t,o)=>te(e,e=>{switch(e){case"bottom":return Tz(t,o);case"top":return Oz(t,o)}}),Dz=(e,t)=>t.getInitialPos().map(t=>er(t.bounds.x,t.bounds.y,Ro(e),Co(e))),Az=(e,t,o)=>{o.setInitialPos({style:fo(e),position:go(e,"position")||"static",bounds:t})},Mz=(e,t,o)=>o.getInitialPos().bind(n=>{switch(o.clearInitialPos(),n.position){case"static":return R.some(Cz.static());case"absolute":const o=wz(e).map(tr).getOrThunk(()=>tr(Xt()));return R.some(Cz.absolute(Gm("absolute",ke(n.style,"left").map(e=>t.x-o.x),ke(n.style,"top").map(e=>t.y-o.y),ke(n.style,"right").map(e=>o.right-t.right),ke(n.style,"bottom").map(e=>o.bottom-t.bottom))));default:return R.none()}}),Nz=(e,t,o)=>Dz(e,o).filter(e=>Ez(o.getModes(),e,t)).bind(t=>Mz(e,t,o)),Rz=(e,t,o)=>{const n=tr(e);if(Ez(o.getModes(),n,t))return R.none();{Az(e,n,o);const r=nr(),s=n.x-r.x,a=t.y-r.y,i=r.bottom-t.bottom,l=n.y<=t.y;return R.some(Cz.fixed(Gm("fixed",R.some(s),l?R.some(a):R.none(),R.none(),l?R.none():R.some(i))))}},Bz=(e,t,o)=>{const n=e.element,r=Te(po(n,"position"),"fixed");return r?Nz(n,t,o):Rz(n,t,o)},Lz=(e,t)=>{const o=e.element;return Dz(o,t).bind(e=>Mz(o,e,t))},Hz=(e,t,o)=>{o.setDocked(!1),j(["left","right","top","bottom","position"],t=>vo(e.element,t)),t.onUndocked(e)},Iz=(e,t,o,n)=>{const r="fixed"===n.position;o.setDocked(r),Ym(e.element,n);const s=r?t.onDocked:t.onUndocked;s(e)},Pz=(e,t,o,n,r=!1)=>{t.contextual.each(t=>{t.lazyContext(e).each(s=>{const a=_z(s,n);if(a!==o.isVisible())if(o.setVisible(a),r&&!a)pc(e.element,[t.fadeOutClass]),t.onHide(e);else{const o=a?Sz:kz;o(e,t)}})})},zz=(e,t,o)=>{const n=t.lazyViewport(e),r=o.isDocked();r&&Pz(e,t,o,n),Bz(e,n,o).each(r=>{r.fold(()=>Hz(e,t,o),n=>Iz(e,t,o,n),r=>{Pz(e,t,o,n,!0),Iz(e,t,o,r)})})},Fz=(e,t,o)=>{const n=e.element;o.setDocked(!1),Lz(e,o).each(n=>{n.fold(()=>Hz(e,t,o),n=>Iz(e,t,o,n),y)}),o.setVisible(!0),t.contextual.each(t=>{fc(n,[t.fadeInClass,t.fadeOutClass,t.transitionClass]),t.onShow(e)}),Vz(e,t,o)},Vz=(e,t,o)=>{e.getSystem().isConnected()&&zz(e,t,o)},Zz=(e,t,o)=>{o.isDocked()&&Fz(e,t,o)},Uz=(e,t,o)=>o.isDocked(),jz=(e,t,o,n)=>o.setModes(n),$z=(e,t,o)=>o.getModes();var Wz=Object.freeze({__proto__:null,refresh:Vz,reset:Zz,isDocked:Uz,getModes:$z,setModes:jz});const qz=(e,t)=>Ri([Wi(Ya(),(o,n)=>{e.contextual.each(e=>{if(hc(o.element,e.transitionClass)){fc(o.element,[e.transitionClass,e.fadeInClass]);const n=t.isVisible()?e.onShown:e.onHidden;n(o)}n.stop()})}),Ii(hi(),(o,n)=>{Vz(o,e,t)}),Ii(pi(),(o,n)=>{Zz(o,e,t)})]);var Gz=Object.freeze({__proto__:null,events:qz}),Kz=[Xs("contextual",[Hs("fadeInClass"),Hs("fadeOutClass"),Hs("transitionClass"),zs("lazyContext"),Ed("onShow"),Ed("onShown"),Ed("onHide"),Ed("onHidden")]),sa("lazyViewport",nr),ia("modes",["top","bottom"],gs),Ed("onDocked"),Ed("onUndocked")];const Yz=e=>{const t=ca(!1),o=ca(!0),n=xu(),r=ca(e.modes),s=()=>`docked: ${t.get()}, visible: ${o.get()}, modes: ${r.get().join(",")}`;return Ml({isDocked:t.get,setDocked:t.set,getInitialPos:n.get,setInitialPos:n.set,clearInitialPos:n.clear,isVisible:o.get,setVisible:o.set,getModes:r.get,setModes:r.set,readState:s})};var Xz=Object.freeze({__proto__:null,init:Yz});const Jz=Lm({fields:Kz,name:"docking",active:Gz,apis:Wz,state:Xz}),Qz=S(cl("toolbar-height-change")),eF={fadeInClass:"tox-editor-dock-fadein",fadeOutClass:"tox-editor-dock-fadeout",transitionClass:"tox-editor-dock-transition"},tF="tox-tinymce--toolbar-sticky-on",oF="tox-tinymce--toolbar-sticky-off",nF=(e,t)=>{const o=Tt(t),n=At(t),r=n.dom.innerHeight,s=Fn(o),a=Qe.fromDom(e.elm),i=or(a),l=Co(a),c=i.y,d=c+l,m=Do(t),u=Co(t),g=m.top,h=g+u,p=Math.abs(g-s.top)<2,f=Math.abs(h-(s.top+r))<2;if(p&&cg){const e=c-r+l+u;Vn(s.left,e,o)}},rF=(e,t)=>z(Jz.getModes(e),t),sF=e=>{const t=e=>So(e)+(parseInt(go(e,"margin-top"),10)||0)+(parseInt(go(e,"margin-bottom"),10)||0),o=e.element;Nt(o).each(n=>{const r="padding-"+Jz.getModes(e)[0];if(Jz.isDocked(e)){const e=Ro(n);co(o,"width",e+"px"),co(n,r,t(o)+"px")}else vo(o,"width"),vo(n,r)})},aF=(e,t)=>{t?(gc(e,eF.fadeOutClass),pc(e,[eF.transitionClass,eF.fadeInClass])):(gc(e,eF.fadeInClass),pc(e,[eF.fadeOutClass,eF.transitionClass]))},iF=(e,t)=>{const o=Qe.fromDom(e.getContainer());t?(mc(o,tF),gc(o,oF)):(mc(o,oF),gc(o,tF))},lF=(e,t)=>{const o=Tt(t);$m(o).filter(e=>!_t(t,e)).filter(t=>_t(t,Qe.fromDom(o.dom.body))||Ot(e,t)).each(()=>Zm(t))},cF=(e,t)=>Wm(e).orThunk(()=>t().toOptional().bind(e=>Wm(e.element))),dF=(e,t,o)=>{e.inline||(t.header.isPositionedAtTop()||e.on("ResizeEditor",()=>{o().each(Jz.reset)}),e.on("ResizeWindow ResizeEditor",()=>{o().each(sF)}),e.on("SkinLoaded",()=>{o().each(e=>{Jz.isDocked(e)?Jz.reset(e):Jz.refresh(e)})}),e.on("FullscreenStateChanged",()=>{o().each(Jz.reset)})),e.on("AfterScrollIntoView",e=>{o().each(t=>{Jz.refresh(t);const o=t.element;gy(o)&&nF(e,o)})}),e.on("PostRender",()=>{iF(e,!1)})},mF=e=>e().map(Jz.isDocked).getOr(!1),uF=()=>[zm.config({channels:{[Qz()]:{onReceive:sF}}})],gF=(e,t)=>{const o=xu(),n=t.getSink,r=e=>{n().each(t=>e(t.element))},s=t=>{e.inline||sF(t),iF(e,Jz.isDocked(t)),t.getSystem().broadcastOn([Bp()],{}),n().each(e=>e.getSystem().broadcastOn([Bp()],{}))},a=e.inline?[]:uF();return[fx.config({}),Jz.config({contextual:{lazyContext:t=>{const o=So(t.element),n=e.inline?e.getContentAreaContainer():e.getContainer(),r=tr(Qe.fromDom(n)),s=r.height-o,a=r.y+(rF(t,"top")?0:o);return R.some(er(r.x,a,r.width,s))},onShow:()=>{r(e=>aF(e,!0))},onShown:e=>{r(e=>fc(e,[eF.transitionClass,eF.fadeInClass])),o.get().each(t=>{lF(e.element,t),o.clear()})},onHide:e=>{cF(e.element,n).fold(o.clear,o.set),r(e=>aF(e,!1))},onHidden:()=>{r(e=>fc(e,[eF.transitionClass]))},...eF},lazyViewport:t=>{const o=nr(),n=kS(e),r=o.y+(rF(t,"top")?n:0),s=o.height-(rF(t,"bottom")?n:0);return er(o.x,r,o.width,s)},modes:[t.header.getDockingMode()],onDocked:s,onUndocked:s}),...a]};var hF=Object.freeze({__proto__:null,setup:dF,isDocked:mF,getBehaviours:gF});const pF=e=>{const t=e.editor,o=e.sticky?gF:vz;return{uid:e.uid,dom:e.dom,components:e.components,behaviours:Rm(o(t,e.sharedBackstage))}},fF=rs([u_,Bs("items",as([cs([g_,Us("items",gs)]),gs]))].concat(W_)),bF=e=>ks("GroupToolbarButton",fF,e),vF=[qs("text"),qs("tooltip"),qs("icon"),ea("search",!1,as([hs,rs([qs("placeholder")])],e=>u(e)?e?R.some({placeholder:R.none()}):R.none():R.some(e))),zs("fetch"),sa("onSetup",()=>y)],yF=rs([u_,...vF]),wF=e=>ks("menubutton",yF,e),xF=rs([u_,T_,O_,__,A_,y_,S_,na("presets","normal",["normal","color","listpreview"]),L_(1),x_,C_]),CF=e=>ks("SplitButton",xF,e),SF=(e,t)=>{const o=(e,o)=>{const n=U(o,e=>{const o={type:"menubutton",text:e.text,fetch:t=>{t(e.getItems())}},n=wF(o).mapError(e=>Ts(e)).getOrDie();return NH(n,"tox-mbtn",t.backstage,R.some("menuitem"))});sx.set(e,n)},n={focus:$w.focusIn,setMenus:o};return{uid:e.uid,dom:e.dom,components:[],behaviours:Rm([sx.config({}),ix("menubar-events",[qi(t=>{e.onSetup(t)}),Ii(Va(),(e,t)=>{nd(e.element,".tox-mbtn--active").each(o=>{rd(t.event.target,".tox-mbtn").each(t=>{_t(o,t)||e.getSystem().getByDom(o).each(o=>{e.getSystem().getByDom(t).each(e=>{QD.expand(e),QD.close(o),fx.focus(e)})})})})}),Ii(wi(),(e,t)=>{t.event.prevFocus.bind(t=>e.getSystem().getByDom(t).toOptional()).each(o=>{t.event.newFocus.bind(t=>e.getSystem().getByDom(t).toOptional()).each(e=>{QD.isOpen(o)&&(QD.expand(e),QD.close(o))})})})]),$w.config({mode:"flow",selector:".tox-mbtn",onEscape:t=>(e.onEscape(t),R.some(!0))}),JA.config({})]),apis:n,domModification:{attributes:{role:"menubar"}}}};var kF=Tb({factory:SF,name:"silver.Menubar",configFields:[Rs("dom"),Rs("uid"),Rs("onEscape"),Rs("backstage"),Qs("onSetup",y)],apis:{focus:(e,t)=>{e.focus(t)},setMenus:(e,t,o)=>{e.setMenus(t,o)}}});const _F="⚡️Upgrade",OF="https://www.tiny.cloud/tinymce-self-hosted-premium-features/?utm_source=TinyMCE&utm_medium=SPAP&utm_campaign=SPAP&utm_id=editorreferral",TF=e=>({uid:e.uid,dom:e.dom,components:[{dom:{tag:"a",attributes:{href:OF,rel:"noopener",target:"_blank","aria-hidden":"true"},classes:["tox-promotion-link"],innerHtml:_F}}]}),EF=(e,t)=>t.getAnimationRoot.fold(()=>e.element,t=>t(e)),DF=e=>e.dimension.property,AF=(e,t)=>e.dimension.getDimension(t),MF=(e,t)=>{const o=EF(e,t);fc(o,[t.shrinkingClass,t.growingClass])},NF=(e,t)=>{gc(e.element,t.openClass),mc(e.element,t.closedClass),co(e.element,DF(t),"0px"),yo(e.element)},RF=(e,t)=>{gc(e.element,t.closedClass),mc(e.element,t.openClass),vo(e.element,DF(t))},BF=(e,t,o,n)=>{o.setCollapsed(),co(e.element,DF(t),AF(t,e.element)),MF(e,t),NF(e,t),t.onStartShrink(e),t.onShrunk(e)},LF=(e,t,o,n)=>{const r=n.getOrThunk(()=>AF(t,e.element));o.setCollapsed(),co(e.element,DF(t),r),yo(e.element);const s=EF(e,t);gc(s,t.growingClass),mc(s,t.shrinkingClass),NF(e,t),t.onStartShrink(e)},HF=(e,t,o)=>{const n=AF(t,e.element),r="0px"===n?BF:LF;r(e,t,o,R.some(n))},IF=(e,t,o)=>{const n=EF(e,t),r=hc(n,t.shrinkingClass),s=AF(t,e.element);RF(e,t);const a=AF(t,e.element),i=()=>{co(e.element,DF(t),s),yo(e.element)},l=()=>{NF(e,t)},c=r?i:l;c(),gc(n,t.shrinkingClass),mc(n,t.growingClass),RF(e,t),co(e.element,DF(t),a),o.setExpanded(),t.onStartGrow(e)},PF=(e,t,o)=>{if(o.isExpanded()){vo(e.element,DF(t));const o=AF(t,e.element);co(e.element,DF(t),o)}},zF=(e,t,o)=>{o.isExpanded()||IF(e,t,o)},FF=(e,t,o)=>{o.isExpanded()&&HF(e,t,o)},VF=(e,t,o)=>{o.isExpanded()&&BF(e,t,o)},ZF=(e,t,o)=>o.isExpanded(),UF=(e,t,o)=>o.isCollapsed(),jF=(e,t,o)=>{const n=EF(e,t);return!0===hc(n,t.growingClass)},$F=(e,t,o)=>{const n=EF(e,t);return!0===hc(n,t.shrinkingClass)},WF=(e,t,o)=>jF(e,t)||$F(e,t),qF=(e,t,o)=>{const n=o.isExpanded()?HF:IF;n(e,t,o)},GF=(e,t,o)=>{o.isExpanded()||(RF(e,t),co(e.element,DF(t),AF(t,e.element)),MF(e,t),o.setExpanded(),t.onStartGrow(e),t.onGrown(e))};var KF=Object.freeze({__proto__:null,refresh:PF,grow:zF,shrink:FF,immediateShrink:VF,hasGrown:ZF,hasShrunk:UF,isGrowing:jF,isShrinking:$F,isTransitioning:WF,toggleGrow:qF,disableTransitions:MF,immediateGrow:GF});const YF=(e,t,o)=>{const n=t.expanded;return Hl(n?{classes:[t.openClass],styles:{}}:{classes:[t.closedClass],styles:ba(t.dimension.property,"0px")})},XF=(e,t)=>Ri([Wi(Ya(),(o,n)=>{const r=n.event.raw;if(r.propertyName===e.dimension.property){MF(o,e),t.isExpanded()&&vo(o.element,e.dimension.property);const n=t.isExpanded()?e.onGrown:e.onShrunk;n(o)}})]);var JF=Object.freeze({__proto__:null,exhibit:YF,events:XF}),QF=[Rs("closedClass"),Rs("openClass"),Rs("shrinkingClass"),Rs("growingClass"),js("getAnimationRoot"),Ed("onShrunk"),Ed("onStartShrink"),Ed("onGrown"),Ed("onStartGrow"),Qs("expanded",!1),Bs("dimension",Es("property",{width:[Nd("property","width"),Nd("getDimension",e=>Ro(e)+"px")],height:[Nd("property","height"),Nd("getDimension",e=>Co(e)+"px")]}))];const eV=e=>{const t=ca(e.expanded),o=()=>"expanded: "+t.get();return Ml({isExpanded:()=>!0===t.get(),isCollapsed:()=>!1===t.get(),setCollapsed:O(t.set,!1),setExpanded:O(t.set,!0),readState:o})};var tV=Object.freeze({__proto__:null,init:eV});const oV=Lm({fields:QF,name:"sliding",active:JF,apis:KF,state:tV}),nV="container",rV=[ff("slotBehaviours",[])],sV=e=>"",aV=e=>{const t=(()=>{const e=[],t=(t,o)=>(e.push(t),rb(nV,sV(t),o));return{slot:t,record:S(e)}})(),o=e(t),n=t.record(),r=U(n,e=>Gf({name:e,pname:sV(e)}));return xb(nV,rV,r,iV,o)},iV=(e,t)=>{const o=t=>gb(e),n=(t,o)=>cb(t,e,o),r=(t,o)=>(n,r)=>cb(n,e,r).map(e=>t(e,r)).getOr(o),s=e=>(t,o)=>{j(o,o=>e(t,o))},a=(e,t)=>"true"!==oo(e.element,"aria-hidden"),i=(e,t)=>{if(!a(e)){const o=e.element;vo(o,"display"),so(o,"aria-hidden"),Ti(e,xi(),{name:t,visible:!0})}},l=(e,t)=>{if(a(e)){const o=e.element;co(o,"display","none"),eo(o,"aria-hidden","true"),Ti(e,xi(),{name:t,visible:!1})}},c=r(a,!1),d=r(l),m=s(d),u=e=>m(e,o()),g=r(i),h={getSlotNames:o,getSlot:n,isShowing:c,hideSlot:d,hideAllSlots:u,showSlot:g};return{uid:e.uid,dom:e.dom,components:t,behaviours:bf(e.slotBehaviours),apis:h}},lV=pe({getSlotNames:(e,t)=>e.getSlotNames(t),getSlot:(e,t,o)=>e.getSlot(t,o),isShowing:(e,t,o)=>e.isShowing(t,o),hideSlot:(e,t,o)=>e.hideSlot(t,o),hideAllSlots:(e,t)=>e.hideAllSlots(t),showSlot:(e,t,o)=>e.showSlot(t,o)},e=>Dl(e)),cV={...lV,sketch:aV},dV=rs([O_,T_,sa("onShow",y),sa("onHide",y),S_]),mV=e=>ks("sidebar",dV,e),uV=e=>{const{sidebars:t}=e.ui.registry.getAll();j(ue(t),o=>{const n=t[o],r=()=>Te(R.from(e.queryCommandValue("ToggleSidebar")),o);e.ui.registry.addToggleButton(o,{icon:n.icon,tooltip:n.tooltip,onAction:t=>{e.execCommand("ToggleSidebar",!1,o),t.setActive(r())},onSetup:t=>{t.setActive(r());const o=()=>t.setActive(r());return e.on("ToggleSidebar",o),()=>{e.off("ToggleSidebar",o)}}})})},gV=e=>({element:()=>e.element.dom}),hV=(e,t)=>{const o=U(ue(t),e=>{const o=t[e],n=_s(mV(o));return{name:e,getApi:gV,onSetup:n.onSetup,onShow:n.onShow,onHide:n.onHide}});return U(o,t=>{const n=ca(y);return e.slot(t.name,{dom:{tag:"div",classes:["tox-sidebar__pane"]},behaviours:RO.unnamedEvents([rT(t,n),sT(t,n),Ii(xi(),(e,t)=>{const n=t.event,r=X(o,e=>e.name===n.name);r.each(t=>{const o=n.visible?t.onShow:t.onHide;o(t.getApi(e))})})])})})},pV=e=>cV.sketch(t=>({dom:{tag:"div",classes:["tox-sidebar__pane-container"]},components:hV(t,e),slotBehaviours:RO.unnamedEvents([qi(e=>cV.hideAllSlots(e))])})),fV=(e,t,o)=>{const n=Rb.getCurrent(e);n.each(e=>{sx.set(e,[pV(t)]);const n=null===o||void 0===o?void 0:o.toLowerCase();i(n)&&_e(t,n)&&Rb.getCurrent(e).each(t=>{cV.showSlot(t,n),oV.immediateGrow(e),vo(e.element,"width")})})},bV=(e,t)=>{const o=Rb.getCurrent(e);o.each(e=>{const o=Rb.getCurrent(e);o.each(o=>{oV.hasGrown(e)?cV.isShowing(o,t)?oV.shrink(e):(cV.hideAllSlots(o),cV.showSlot(o,t)):(cV.hideAllSlots(o),cV.showSlot(o,t),oV.grow(e))})})},vV=e=>{const t=Rb.getCurrent(e);return t.bind(e=>{const t=oV.isGrowing(e)||oV.hasGrown(e);if(t){const t=Rb.getCurrent(e);return t.bind(e=>X(cV.getSlotNames(e),t=>cV.isShowing(e,t)))}return R.none()})},yV=cl("FixSizeEvent"),wV=cl("AutoSizeEvent"),xV=e=>({uid:e.uid,dom:{tag:"div",classes:["tox-sidebar"],attributes:{role:"complementary"}},components:[{dom:{tag:"div",classes:["tox-sidebar__slider"]},components:[],behaviours:Rm([JA.config({}),fx.config({}),oV.config({dimension:{property:"width"},closedClass:"tox-sidebar--sliding-closed",openClass:"tox-sidebar--sliding-open",shrinkingClass:"tox-sidebar--sliding-shrinking",growingClass:"tox-sidebar--sliding-growing",onShrunk:e=>{const t=Rb.getCurrent(e);t.each(cV.hideAllSlots),Oi(e,wV)},onGrown:e=>{Oi(e,wV)},onStartGrow:e=>{Ti(e,yV,{width:po(e.element,"width").getOr("")})},onStartShrink:e=>{Ti(e,yV,{width:Ro(e.element)+"px"})}}),sx.config({}),Rb.config({find:e=>{const t=sx.contents(e);return le(t)}})])}],behaviours:Rm([AB.childAt(0),ix("sidebar-sliding-events",[Ii(yV,(e,t)=>{co(e.element,"width",t.event.width)}),Ii(wV,(e,t)=>{vo(e.element,"width")})])])}),CV=(e,t,o,n)=>{eo(e.element,"aria-busy",!0);const r=t.getRoot(e).getOr(e),s=Rm([$w.config({mode:"special",onTab:()=>R.some(!0),onShiftTab:()=>R.some(!0)}),fx.config({})]),a=n(r,s),i=r.getSystem().build(a);sx.append(r,Gc(i)),i.hasConfigured($w)&&t.focus&&$w.focusIn(i),o.isBlocked()||t.onBlock(e),o.blockWith(()=>sx.remove(r,i))},SV=(e,t,o)=>{so(e.element,"aria-busy"),o.isBlocked()&&t.onUnblock(e),o.clear()};var kV=Object.freeze({__proto__:null,block:CV,unblock:SV}),_V=[sa("getRoot",R.none),ra("focus",!0),Ed("onBlock"),Ed("onUnblock")];const OV=()=>{const e=yu(),t=t=>{e.set({destroy:t})};return Ml({readState:e.isSet,blockWith:t,clear:e.clear,isBlocked:e.isSet})};var TV=Object.freeze({__proto__:null,init:OV});const EV=Lm({fields:_V,name:"blocking",apis:kV,state:TV}),DV=e=>{const t=void 0!==e.dom.attributes?e.dom.attributes:[];return K(t,(e,t)=>"class"===t.name?e:{...e,[t.name]:t.value},{})},AV=e=>Array.prototype.slice.call(e.dom.classList,0),MV=e=>{const t=Qe.fromHtml(e),o=Lt(t),n=DV(t),r=AV(t),s=0===o.length?{}:{innerHtml:Ji(t)};return{tag:ut(t),classes:r,attributes:n,...s}},NV=e=>(t,o)=>({dom:{tag:"div",attributes:{"aria-label":e.translate("Loading..."),tabindex:"0"},classes:["tox-throbber__busy-spinner"]},components:[{dom:MV('
')}]}),RV=e=>Rb.getCurrent(e).each(e=>Zm(e.element)),BV=(e,t)=>{const o="tabindex",n=`data-mce-${o}`;R.from(e.iframeElement).map(Qe.fromDom).each(e=>{t?(no(e,o).each(t=>eo(e,n,t)),eo(e,o,-1)):(so(e,o),no(e,n).each(t=>{eo(e,o,t),so(e,n)}))})},LV=(e,t,o,n)=>{const r=t.element;if(BV(e,o),o)EV.block(t,NV(n)),vo(r,"display"),so(r,"aria-hidden"),e.hasFocus()&&RV(t);else{const o=Rb.getCurrent(t).exists(e=>jm(e.element));EV.unblock(t),co(r,"display","none"),eo(r,"aria-hidden","true"),o&&e.focus()}},HV=e=>({uid:e.uid,dom:{tag:"div",attributes:{"aria-hidden":"true"},classes:["tox-throbber"],styles:{display:"none"}},behaviours:Rm([sx.config({}),EV.config({focus:!1}),Rb.config({find:e=>le(e.components())})]),components:[]}),IV=e=>"focusin"===e.type,PV=e=>{if(IV(e)){const t=e.composed?le(e.composedPath()):R.from(e.target);return t.map(Qe.fromDom).filter(ft).exists(e=>hc(e,"mce-pastebin"))}return!1},zV=(e,t,o)=>{const n=ca(!1),r=xu(),s=o=>{n.get()&&!PV(o)&&(o.preventDefault(),RV(t()),e.editorManager.setActive(e))};e.inline||e.on("PreInit",()=>{e.dom.bind(e.getWin(),"focusin",s),e.on("BeforeExecCommand",e=>{"mcefocus"===e.command.toLowerCase()&&!0!==e.value&&s(e)})});const a=r=>{r!==n.get()&&(n.set(r),LV(e,t(),r,o.providers),cE(e,r))};e.on("ProgressState",t=>{if(r.on(clearTimeout),b(t.time)){const o=MC.setEditorTimeout(e,()=>a(t.state),t.time);r.set(o)}else a(t.state),r.clear()})},FV=(e,t)=>{const o={len:0,list:[]},n=K(e,(e,o)=>{const n=t(o,e.len);return n.fold(S(e),t=>({len:t.finish,list:e.list.concat([t])}))},o);return n.list},VV=(e,t,o)=>({within:e,extra:t,withinWidth:o}),ZV=(e,t,o)=>{const n=FV(e,(e,t)=>{const n=o(e);return R.some({element:e,start:t,finish:t+n,width:n})}),r=q(n,e=>e.finish<=t),s=G(r,(e,t)=>e+t.width,0),a=n.slice(r.length);return{within:r,extra:a,withinWidth:s}},UV=e=>U(e,e=>e.element),jV=(e,t,o)=>{const n=UV(e.concat(t));return VV(n,[],o)},$V=(e,t,o,n)=>{const r=UV(e).concat([o]);return VV(r,UV(t),n)},WV=(e,t,o)=>VV(UV(e),[],o),qV=(e,t,o)=>{const n=ZV(t,e,o);return 0===n.extra.length?R.some(n):R.none()},GV=(e,t,o,n)=>{const r=qV(e,t,o).getOrThunk(()=>ZV(t,e-o(n),o)),s=r.within,a=r.extra,i=r.withinWidth;return 1===a.length&&a[0].width<=o(n)?jV(s,a,i):a.length>=1?$V(s,a,n,i):WV(s,a,i)},KV=(e,t)=>{const o=U(t,e=>Gc(e));pz.setGroups(e,o)},YV=e=>me(e,e=>Wm(e.element).bind(t=>e.getSystem().getByDom(t).toOptional())),XV=(e,t,o)=>{const n=t.builtGroups.get();if(0===n.length)return;const r=db(e,t,"primary"),s=TD.getCoupled(e,"overflowGroup");co(r.element,"visibility","hidden");const a=n.concat([s]),i=YV(a);o([]),KV(r,a);const l=Ro(r.element),c=GV(l,t.builtGroups.get(),e=>Ro(e.element),s);0===c.extra.length?(sx.remove(r,s),o([])):(KV(r,c.within),o(c.extra)),vo(r.element,"visibility"),yo(r.element),i.each(fx.focus)},JV=S([ff("splitToolbarBehaviours",[TD]),Ms("builtGroups",()=>ca([]))]),QV=S([Od(["overflowToggledClass"]),Ks("getOverflowBounds"),Rs("lazySink"),Ms("overflowGroups",()=>ca([])),Ed("onOpened"),Ed("onClosed")].concat(JV())),eZ=S([Gf({factory:pz,schema:mz(),name:"primary"}),Kf({schema:mz(),name:"overflow"}),Kf({name:"overflow-button"}),Kf({name:"overflow-group"})]),tZ=S((e,t)=>{Lo(e,Math.floor(t))}),oZ=S([Od(["toggledClass"]),Rs("lazySink"),zs("fetch"),Ks("getBounds"),Xs("fireDismissalEventInstead",[Qs("event",vi())]),ng(),Ed("onToggled")]),nZ=S([Kf({name:"button",overrides:e=>({dom:{attributes:{"aria-haspopup":"true"}},buttonBehaviours:Rm([Lx.config({toggleClass:e.markers.toggledClass,aria:{mode:"expanded"},toggleOnExecute:!1,onToggled:e.onToggled})])})}),Kf({factory:pz,schema:mz(),name:"toolbar",overrides:e=>({toolbarBehaviours:Rm([$w.config({mode:"cyclic",onEscape:t=>(cb(t,e,"button").each(fx.focus),R.none())})])})})]),rZ=(e,t)=>{const o=TD.getCoupled(e,"toolbarSandbox");Np.isOpen(o)?Np.close(o):Np.open(o,t.toolbar())},sZ=(e,t,o,n)=>{const r=o.getBounds.map(e=>e()),s=o.lazySink(e).getOrDie();Gh.positionWithinBounds(s,t,{anchor:{type:"hotspot",hotspot:e,layouts:n,overrides:{maxWidthFunction:tZ()}}},r)},aZ=(e,t,o,n,r)=>{pz.setGroups(t,r),sZ(e,t,o,n),Lx.on(e)},iZ=(e,t,o)=>{const n=id(),r=(r,s)=>{o.fetch().get(r=>{aZ(e,s,o,t.layouts,r),n.link(e.element),$w.focusIn(s)})},s=()=>{Lx.off(e),fx.focus(e),n.unlink(e.element)};return{dom:{tag:"div",attributes:{id:n.id}},behaviours:Rm([$w.config({mode:"special",onEscape:e=>(Np.close(e),R.some(!0))}),Np.config({onOpen:r,onClose:s,isPartOf:(t,o,n)=>cd(o,n)||cd(e,n),getAttachPoint:()=>o.lazySink(e).getOrDie()}),zm.config({channels:{...Ip({isExtraPart:A,...o.fireDismissalEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({})}),...zp({doReposition:()=>{Np.getState(TD.getCoupled(e,"toolbarSandbox")).each(n=>{sZ(e,n,o,t.layouts)})}})}})])}},lZ=(e,t,o,n)=>({...RC.sketch({...n.button(),action:e=>{rZ(e,n)},buttonBehaviours:yf.augment({dump:n.button().buttonBehaviours},[TD.config({others:{toolbarSandbox:t=>iZ(t,o,e)}})])}),apis:{setGroups:(t,n)=>{Np.getState(TD.getCoupled(t,"toolbarSandbox")).each(r=>{aZ(t,r,e,o.layouts,n)})},reposition:t=>{Np.getState(TD.getCoupled(t,"toolbarSandbox")).each(n=>{sZ(t,n,e,o.layouts)})},toggle:e=>{rZ(e,n)},getToolbar:e=>Np.getState(TD.getCoupled(e,"toolbarSandbox")),isOpen:e=>Np.isOpen(TD.getCoupled(e,"toolbarSandbox"))}}),cZ=Eb({name:"FloatingToolbarButton",factory:lZ,configFields:oZ(),partFields:nZ(),apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)},reposition:(e,t)=>{e.reposition(t)},toggle:(e,t)=>{e.toggle(t)},getToolbar:(e,t)=>e.getToolbar(t),isOpen:(e,t)=>e.isOpen(t)}}),dZ=S([Rs("items"),Od(["itemSelector"]),ff("tgroupBehaviours",[$w])]),mZ=S([Xf({name:"items",unit:"item"})]),uZ=(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.tgroupBehaviours,[$w.config({mode:"flow",selector:e.markers.itemSelector})]),domModification:{attributes:{role:"toolbar"}}}),gZ=Eb({name:"ToolbarGroup",configFields:dZ(),partFields:mZ(),factory:uZ}),hZ=e=>U(e,e=>Gc(e)),pZ=(e,t,o)=>{XV(e,o,n=>{o.overflowGroups.set(n),t.getOpt(e).each(e=>{cZ.setGroups(e,hZ(n))})})},fZ=(e,t,o,n)=>{const r=BC(cZ.sketch({fetch:()=>LD.nu(t=>{t(hZ(e.overflowGroups.get()))}),layouts:{onLtr:()=>[cm,lm],onRtl:()=>[lm,cm],onBottomLtr:()=>[mm,dm],onBottomRtl:()=>[dm,mm]},getBounds:o.getOverflowBounds,lazySink:e.lazySink,fireDismissalEventInstead:{},markers:{toggledClass:e.markers.overflowToggledClass},parts:{button:n["overflow-button"](),toolbar:n.overflow()},onToggled:(t,o)=>e[o?"onOpened":"onClosed"](t)}));return{uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.splitToolbarBehaviours,[TD.config({others:{overflowGroup:()=>gZ.sketch({...n["overflow-group"](),items:[r.asSpec()]})}})]),apis:{setGroups:(t,o)=>{e.builtGroups.set(U(o,t.getSystem().build)),pZ(t,r,e)},refresh:t=>pZ(t,r,e),toggle:e=>{r.getOpt(e).each(e=>{cZ.toggle(e)})},isOpen:e=>r.getOpt(e).map(cZ.isOpen).getOr(!1),reposition:e=>{r.getOpt(e).each(e=>{cZ.reposition(e)})},getOverflow:e=>r.getOpt(e).bind(cZ.getToolbar)},domModification:{attributes:{role:"group"}}}},bZ=Eb({name:"SplitFloatingToolbar",configFields:QV(),partFields:eZ(),factory:fZ,apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)},refresh:(e,t)=>{e.refresh(t)},reposition:(e,t)=>{e.reposition(t)},toggle:(e,t)=>{e.toggle(t)},isOpen:(e,t)=>e.isOpen(t),getOverflow:(e,t)=>e.getOverflow(t)}}),vZ=S([Od(["closedClass","openClass","shrinkingClass","growingClass","overflowToggledClass"]),Ed("onOpened"),Ed("onClosed")].concat(JV())),yZ=S([Gf({factory:pz,schema:mz(),name:"primary"}),Gf({factory:pz,schema:mz(),name:"overflow",overrides:e=>({toolbarBehaviours:Rm([oV.config({dimension:{property:"height"},closedClass:e.markers.closedClass,openClass:e.markers.openClass,shrinkingClass:e.markers.shrinkingClass,growingClass:e.markers.growingClass,onShrunk:t=>{cb(t,e,"overflow-button").each(e=>{Lx.off(e),fx.focus(e)}),e.onClosed(t)},onGrown:t=>{$w.focusIn(t),e.onOpened(t)},onStartGrow:t=>{cb(t,e,"overflow-button").each(Lx.on)}}),$w.config({mode:"acyclic",onEscape:t=>(cb(t,e,"overflow-button").each(fx.focus),R.some(!0))})])})}),Kf({name:"overflow-button",overrides:e=>({buttonBehaviours:Rm([Lx.config({toggleClass:e.markers.overflowToggledClass,aria:{mode:"pressed"},toggleOnExecute:!1})])})}),Kf({name:"overflow-group"})]),wZ=(e,t)=>cb(e,t,"overflow").map(oV.hasGrown).getOr(!1),xZ=(e,t)=>{cb(e,t,"overflow-button").bind(()=>cb(e,t,"overflow")).each(o=>{CZ(e,t),oV.toggleGrow(o)})},CZ=(e,t)=>{cb(e,t,"overflow").each(o=>{XV(e,t,e=>{const t=U(e,e=>Gc(e));pz.setGroups(o,t)}),cb(e,t,"overflow-button").each(e=>{oV.hasGrown(o)&&Lx.on(e)}),oV.refresh(o)})},SZ=(e,t,o,n)=>{const r="alloy.toolbar.toggle",s=(t,o)=>{const n=U(o,t.getSystem().build);e.builtGroups.set(n)};return{uid:e.uid,dom:e.dom,components:t,behaviours:vf(e.splitToolbarBehaviours,[TD.config({others:{overflowGroup:e=>gZ.sketch({...n["overflow-group"](),items:[RC.sketch({...n["overflow-button"](),action:t=>{Oi(e,r)}})]})}}),ix("toolbar-toggle-events",[Ii(r,t=>{xZ(t,e)})])]),apis:{setGroups:(t,o)=>{s(t,o),CZ(t,e)},refresh:t=>CZ(t,e),toggle:t=>xZ(t,e),isOpen:t=>wZ(t,e)},domModification:{attributes:{role:"group"}}}},kZ=Eb({name:"SplitSlidingToolbar",configFields:vZ(),partFields:yZ(),factory:SZ,apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)},refresh:(e,t)=>{e.refresh(t)},toggle:(e,t)=>{e.toggle(t)},isOpen:(e,t)=>e.isOpen(t)}}),_Z=e=>{const t=e.title.fold(()=>({}),e=>({attributes:{title:e}}));return{dom:{tag:"div",classes:["tox-toolbar__group"],...t},components:[gZ.parts.items({})],items:e.items,markers:{itemSelector:"*:not(.tox-split-button) > .tox-tbtn:not([disabled]), .tox-split-button:not([disabled]), .tox-toolbar-nav-js:not([disabled])"},tgroupBehaviours:Rm([JA.config({}),fx.config({})])}},OZ=e=>gZ.sketch(_Z(e)),TZ=(e,t)=>{const o=qi(t=>{const o=U(e.initGroups,OZ);pz.setGroups(t,o)});return Rm([oT.toolbarButton(e.providers.isDisabled),XO(),$w.config({mode:t,onEscape:e.onEscape,selector:".tox-toolbar__group"}),ix("toolbar-events",[o])])},EZ=e=>{const t=e.cyclicKeying?"cyclic":"acyclic";return{uid:e.uid,dom:{tag:"div",classes:["tox-toolbar-overlord"]},parts:{"overflow-group":_Z({title:R.none(),items:[]}),"overflow-button":LH({name:"more",icon:R.some("more-drawer"),enabled:!0,tooltip:R.some("More..."),primary:!1,buttonType:R.none(),borderless:!1},R.none(),e.providers)},splitToolbarBehaviours:TZ(e,t)}},DZ=e=>{const t=EZ(e),o=4,n=bZ.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}});return bZ.sketch({...t,lazySink:e.getSink,getOverflowBounds:()=>{const t=e.moreDrawerData.lazyHeader().element,n=or(t),r=Dt(t),s=or(r),a=Math.max(r.dom.scrollHeight,s.height);return er(n.x+o,s.y,n.width-2*o,a)},parts:{...t.parts,overflow:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:e.attributes}}},components:[n],markers:{overflowToggledClass:"tox-tbtn--enabled"},onOpened:t=>e.onToggled(t,!0),onClosed:t=>e.onToggled(t,!1)})},AZ=e=>{const t=kZ.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}}),o=kZ.parts.overflow({dom:{tag:"div",classes:["tox-toolbar__overflow"]}}),n=EZ(e);return kZ.sketch({...n,components:[t,o],markers:{openClass:"tox-toolbar__overflow--open",closedClass:"tox-toolbar__overflow--closed",growingClass:"tox-toolbar__overflow--growing",shrinkingClass:"tox-toolbar__overflow--shrinking",overflowToggledClass:"tox-tbtn--enabled"},onOpened:t=>{t.getSystem().broadcastOn([Qz()],{type:"opened"}),e.onToggled(t,!0)},onClosed:t=>{t.getSystem().broadcastOn([Qz()],{type:"closed"}),e.onToggled(t,!1)}})},MZ=e=>{const t=e.cyclicKeying?"cyclic":"acyclic";return pz.sketch({uid:e.uid,dom:{tag:"div",classes:["tox-toolbar"].concat(e.type===XC.scrolling?["tox-toolbar--scrolling"]:[])},components:[pz.parts.groups({})],toolbarBehaviours:TZ(e,t)})},NZ=[Is("type",["button"]),p_,na("buttonType","secondary",["primary","secondary"]),zs("onAction")],RZ=Es("type",{button:NZ}),BZ=rs([ia("buttons",[],RZ),zs("onShow"),zs("onHide")]),LZ=e=>ks("view",BZ,e),HZ=(e,t)=>PH({text:e.text,enabled:!0,primary:!1,name:"name",icon:R.none(),borderless:!1,buttonType:R.some(e.buttonType)},t=>{e.onAction()},t),IZ=e=>{const t=U(e.buttons,t=>HZ(t,e.providers));return{uid:e.uid,dom:{tag:"div",classes:["tox-view__header"]},components:[ZA.sketch({dom:{tag:"div",classes:["tox-view__header-start"]},components:[]}),ZA.sketch({dom:{tag:"div",classes:["tox-view__header-end"]},components:t})]}},PZ=e=>({uid:e.uid,dom:{tag:"div",classes:["tox-view__pane"]}}),zZ=(e,t,o,n)=>{const r={getPane:t=>oz.getPart(t,e,"pane"),getOnShow:t=>e.viewConfig.onShow,getOnHide:t=>e.viewConfig.onHide};return{uid:e.uid,dom:e.dom,components:t,apis:r}};var FZ=Eb({name:"silver.View",configFields:[Rs("viewConfig")],partFields:[Yf({factory:{sketch:IZ},schema:[Rs("buttons"),Rs("providers")],name:"header"}),Yf({factory:{sketch:PZ},schema:[],name:"pane"})],factory:zZ,apis:{getPane:(e,t)=>e.getPane(t),getOnShow:(e,t)=>e.getOnShow(t),getOnHide:(e,t)=>e.getOnHide(t)}});const VZ=(e,t,o)=>xe(t,(t,n)=>{const r=_s(LZ(t));return e.slot(n,FZ.sketch({dom:{tag:"div",classes:["tox-view"]},viewConfig:r,components:[...r.buttons.length>0?[FZ.parts.header({buttons:r.buttons,providers:o})]:[],FZ.parts.pane({})]}))}),ZZ=(e,t)=>cV.sketch(o=>({dom:{tag:"div",classes:["tox-view-wrap__slot-container"]},components:VZ(o,e,t),slotBehaviours:RO.unnamedEvents([qi(e=>cV.hideAllSlots(e))])})),UZ=e=>X(cV.getSlotNames(e),t=>cV.isShowing(e,t)),jZ=e=>{const t=e.element;co(t,"display","none"),eo(t,"aria-hidden","true")},$Z=e=>{const t=e.element;vo(t,"display"),so(t,"aria-hidden")},WZ=e=>({getContainer:S(e)}),qZ=(e,t,o)=>{cV.getSlot(e,t).each(e=>{FZ.getPane(e).each(t=>{const n=o(e);n(WZ(t.element.dom))})})},GZ=(e,t)=>qZ(e,t,FZ.getOnShow),KZ=(e,t)=>qZ(e,t,FZ.getOnHide),YZ=(e,t)=>{const o=(e,o)=>{sx.set(e,[ZZ(o,t.backstage.shared.providers)])},n=e=>Rb.getCurrent(e).bind(UZ),r=(e,t,o,n)=>Rb.getCurrent(e).exists(r=>{const s=UZ(r),a=s.exists(e=>n===e),i=cV.getSlot(r,n).isSome();return i&&(cV.hideAllSlots(r),a?(jZ(e),t()):(o(),$Z(e),cV.showSlot(r,n),GZ(r,n)),s.each(e=>KZ(r,e))),i}),s={setViews:o,whichView:n,toggleView:r};return{uid:e.uid,dom:{tag:"div",classes:["tox-view-wrap"],attributes:{"aria-hidden":"true"},styles:{display:"none"}},components:[],behaviours:Rm([sx.config({}),Rb.config({find:e=>{const t=sx.contents(e);return le(t)}})]),apis:s}};var XZ=Tb({factory:YZ,name:"silver.ViewWrapper",configFields:[Rs("backstage")],apis:{setViews:(e,t,o)=>e.setViews(t,o),toggleView:(e,t,o,n,r)=>e.toggleView(t,o,n,r),whichView:(e,t)=>e.whichView(t)}});const JZ=(e,t,o)=>{let n=!1;const r={getSocket:t=>oz.getPart(t,e,"socket"),setSidebar:(t,o,n)=>{oz.getPart(t,e,"sidebar").each(e=>fV(e,o,n))},toggleSidebar:(t,o)=>{oz.getPart(t,e,"sidebar").each(e=>bV(e,o))},whichSidebar:t=>oz.getPart(t,e,"sidebar").bind(vV).getOrNull(),getHeader:t=>oz.getPart(t,e,"header"),getToolbar:t=>oz.getPart(t,e,"toolbar"),setToolbar:(t,o)=>{oz.getPart(t,e,"toolbar").each(e=>{const t=U(o,OZ);e.getApis().setGroups(e,t)})},setToolbars:(t,o)=>{oz.getPart(t,e,"multiple-toolbar").each(e=>{const t=U(o,e=>U(e,OZ));dz.setItems(e,t)})},refreshToolbar:t=>{const o=oz.getPart(t,e,"toolbar");o.each(e=>e.getApis().refresh(e))},toggleToolbarDrawer:t=>{oz.getPart(t,e,"toolbar").each(e=>{Re(e.getApis().toggle,t=>t(e))})},isToolbarDrawerToggled:t=>oz.getPart(t,e,"toolbar").bind(e=>R.from(e.getApis().isOpen).map(t=>t(e))).getOr(!1),getThrobber:t=>oz.getPart(t,e,"throbber"),focusToolbar:t=>{const o=oz.getPart(t,e,"toolbar").orThunk(()=>oz.getPart(t,e,"multiple-toolbar"));o.each(e=>{$w.focusIn(e)})},setMenubar:(t,o)=>{oz.getPart(t,e,"menubar").each(e=>{kF.setMenus(e,o)})},focusMenubar:t=>{oz.getPart(t,e,"menubar").each(e=>{kF.focus(e)})},setViews:(t,o)=>{oz.getPart(t,e,"viewWrapper").each(e=>{XZ.setViews(e,o)})},toggleView:(t,o)=>oz.getPart(t,e,"viewWrapper").exists(e=>XZ.toggleView(e,()=>r.showMainView(t),()=>r.hideMainView(t),o)),whichView:t=>oz.getPart(t,e,"viewWrapper").bind(XZ.whichView).getOrNull(),hideMainView:t=>{n=r.isToolbarDrawerToggled(t),n&&r.toggleToolbarDrawer(t),oz.getPart(t,e,"editorContainer").each(e=>{const t=e.element;co(t,"display","none"),eo(t,"aria-hidden","true")})},showMainView:t=>{n&&r.toggleToolbarDrawer(t),oz.getPart(t,e,"editorContainer").each(e=>{const t=e.element;vo(t,"display"),so(t,"aria-hidden")})}};return{uid:e.uid,dom:e.dom,components:t,apis:r,behaviours:e.behaviours}},QZ=nz.optional({factory:kF,name:"menubar",schema:[Rs("backstage")]}),eU=e=>e.type===XC.sliding?AZ:e.type===XC.floating?DZ:MZ,tU=nz.optional({factory:{sketch:e=>dz.sketch({uid:e.uid,dom:e.dom,listBehaviours:Rm([$w.config({mode:"acyclic",selector:".tox-toolbar"})]),makeItem:()=>MZ({type:e.type,uid:cl("multiple-toolbar-item"),cyclicKeying:!1,initGroups:[],providers:e.providers,onEscape:()=>(e.onEscape(),R.some(!0))}),setupItem:(e,t,o,n)=>{pz.setGroups(t,o)},shell:!0})},name:"multiple-toolbar",schema:[Rs("dom"),Rs("onEscape")]}),oU=nz.optional({factory:{sketch:e=>{const t=eU(e),o={type:e.type,uid:e.uid,onEscape:()=>(e.onEscape(),R.some(!0)),onToggled:(t,o)=>e.onToolbarToggled(o),cyclicKeying:!1,initGroups:[],getSink:e.getSink,providers:e.providers,moreDrawerData:{lazyToolbar:e.lazyToolbar,lazyMoreButton:e.lazyMoreButton,lazyHeader:e.lazyHeader},attributes:e.attributes};return t(o)}},name:"toolbar",schema:[Rs("dom"),Rs("onEscape"),Rs("getSink")]}),nU=nz.optional({factory:{sketch:pF},name:"header",schema:[Rs("dom")]}),rU=nz.optional({factory:{sketch:TF},name:"promotion",schema:[Rs("dom")]}),sU=nz.optional({name:"socket",schema:[Rs("dom")]}),aU=nz.optional({factory:{sketch:xV},name:"sidebar",schema:[Rs("dom")]}),iU=nz.optional({factory:{sketch:HV},name:"throbber",schema:[Rs("dom")]}),lU=nz.optional({factory:XZ,name:"viewWrapper",schema:[Rs("backstage")]}),cU=e=>({uid:e.uid,dom:{tag:"div",classes:["tox-editor-container"]},components:e.components}),dU=nz.optional({factory:{sketch:cU},name:"editorContainer",schema:[]});var mU=Eb({name:"OuterContainer",factory:JZ,configFields:[Rs("dom"),Rs("behaviours")],partFields:[nU,QZ,oU,tU,sU,aU,rU,iU,lU,dU],apis:{getSocket:(e,t)=>e.getSocket(t),setSidebar:(e,t,o,n)=>{e.setSidebar(t,o,n)},toggleSidebar:(e,t,o)=>{e.toggleSidebar(t,o)},whichSidebar:(e,t)=>e.whichSidebar(t),getHeader:(e,t)=>e.getHeader(t),getToolbar:(e,t)=>e.getToolbar(t),setToolbar:(e,t,o)=>{e.setToolbar(t,o)},setToolbars:(e,t,o)=>{e.setToolbars(t,o)},refreshToolbar:(e,t)=>e.refreshToolbar(t),toggleToolbarDrawer:(e,t)=>{e.toggleToolbarDrawer(t)},isToolbarDrawerToggled:(e,t)=>e.isToolbarDrawerToggled(t),getThrobber:(e,t)=>e.getThrobber(t),setMenubar:(e,t,o)=>{e.setMenubar(t,o)},focusMenubar:(e,t)=>{e.focusMenubar(t)},focusToolbar:(e,t)=>{e.focusToolbar(t)},setViews:(e,t,o)=>{e.setViews(t,o)},toggleView:(e,t,o)=>e.toggleView(t,o),whichView:(e,t)=>e.whichView(t)}});const uU="file edit view insert format tools table help",gU={file:{title:"File",items:"newdocument restoredraft | preview | export print | deleteallconversations"},edit:{title:"Edit",items:"undo redo | cut copy paste pastetext | selectall | searchreplace"},view:{title:"View",items:"code | visualaid visualchars visualblocks | spellchecker | preview fullscreen | showcomments"},insert:{title:"Insert",items:"image link media addcomment pageembed template codesample inserttable | charmap emoticons hr | pagebreak nonbreaking anchor tableofcontents footnotes | mergetags | insertdatetime"},format:{title:"Format",items:"bold italic underline strikethrough superscript subscript codeformat | styles blocks fontfamily fontsize align lineheight | forecolor backcolor | language | removeformat"},tools:{title:"Tools",items:"spellchecker spellcheckerlanguage | autocorrect capitalization | a11ycheck code wordcount"},table:{title:"Table",items:"inserttable | cell row column | advtablesort | tableprops deletetable"},help:{title:"Help",items:"help"}},hU=(e,t,o)=>{const n=bS(o).split(/[ ,]/);return{text:e.title,getItems:()=>ee(e.items,e=>{const o=e.toLowerCase();return 0===o.trim().length||F(n,e=>e===o)?[]:"separator"===o||"|"===o?[{type:"separator"}]:t.menuItems[o]?[t.menuItems[o]]:[]})}},pU=e=>e.split(" "),fU=(e,t)=>{const o={...gU,...t.menus},n=ue(t.menus).length>0,r=void 0===t.menubar||!0===t.menubar?pU(uU):pU(!1===t.menubar?"":t.menubar),s=q(r,e=>{const o=_e(gU,e);return n?o||ke(t.menus,e).exists(e=>_e(e,"items")):o}),a=U(s,n=>{const r=o[n];return hU({title:r.title,items:pU(r.items)},t,e)});return q(a,e=>{const t=e=>i(e)||"separator"!==e.type;return e.getItems().length>0&&F(e.getItems(),t)})},bU=e=>{const t=()=>{e._skinLoaded=!0,nE(e)};return()=>{e.initialized?t():e.on("init",t)}},vU=(e,t)=>()=>rE(e,{message:t}),yU=(e,t,o)=>(e.on("remove",()=>o.unload(t)),o.load(t)),wU=(e,t)=>{const o=t+"/skin.min.css";return yU(e,o,e.ui.styleSheetLoader)},xU=(e,t)=>{const o=$t(Qe.fromDom(e.getElement()));if(o){const o=t+"/skin.shadowdom.min.css";return yU(e,o,eS.DOM.styleSheetLoader)}return Promise.resolve()},CU=(e,t)=>{const o=US(t);o&&t.contentCSS.push(o+(e?"/content.inline":"/content")+".min.css"),!VS(t)&&i(o)?Promise.all([wU(t,o),xU(t,o)]).then(bU(t),vU(t,"Skin could not be loaded")):bU(t)()},SU=O(CU,!1),kU=O(CU,!0),_U=(e,t)=>o=>{const n=wu(),r=()=>{o.setActive(e.formatter.match(t));const r=e.formatter.formatChanged(t,o.setActive);n.set(r)};return e.initialized?r():e.once("init",r),()=>{e.off("init",r),n.clear()}},OU=(e,t,o)=>n=>{const r=()=>o(n),s=()=>{o(n),e.on(t,r)};return e.initialized?s():e.once("init",s),()=>{e.off("init",s),e.off(t,r)}},TU=e=>t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("mceToggleFormat",!1,t.format)})},EU=(e,t)=>()=>e.execCommand(t),DU=(e,t,o)=>{const n=(e,n,s,a)=>{const i=t.shared.providers.translate(e.title);if("separator"===e.type)return R.some({type:"separator",text:i});if("submenu"===e.type){const t=ee(e.getStyleItems(),e=>r(e,n,a));return 0===n&&t.length<=0?R.none():R.some({type:"nestedmenuitem",text:i,enabled:t.length>0,getSubmenuItems:()=>ee(e.getStyleItems(),e=>r(e,n,a))})}return R.some({type:"togglemenuitem",text:i,icon:e.icon,active:e.isSelected(a),enabled:!s,onAction:o.onAction(e),...e.getStylePreview().fold(()=>({}),e=>({meta:{style:e}}))})},r=(e,t,r)=>{const s="formatter"===e.type&&o.isInvalid(e);return 0===t?s?[]:n(e,t,!1,r).toArray():n(e,t,s,r).toArray()},s=e=>{const t=o.getCurrentValue(),n=o.shouldHide?0:1;return ee(e,e=>r(e,n,t))},a=(e,t)=>(o,n)=>{const r=t(),a=s(r),i=DL(a,lk.CLOSE_ON_EXECUTE,e,{isHorizontalMenu:!1,search:R.none()});n(i)};return{validateItems:s,getFetch:a}},AU=(e,t,o)=>{const n=o.dataset,r="basic"===n.type?()=>U(n.data,e=>lP(e,o.isSelectedFor,o.getPreviewFor)):n.getData;return{items:DU(e,t,o),getStyleItems:r}},MU=(e,t,o)=>{const{items:n,getStyleItems:r}=AU(e,t,o),s=e=>({getComponent:S(e)}),a=OU(e,"NodeChange",e=>{const t=e.getComponent();o.updateText(t)});return vL({text:o.icon.isSome()?R.none():o.text,icon:o.icon,tooltip:R.from(o.tooltip),role:R.none(),fetch:n.getFetch(t,r),onSetup:a,getApi:s,columns:1,presets:"normal",classes:o.icon.isSome()?[]:["bespoke"],dropdownBehaviours:[]},"tox-tbtn",t.shared)},NU=e=>U(e,e=>{let t=e,o=e;const n=e.split("=");return n.length>1&&(t=n[0],o=n[1]),{title:t,format:o}}),RU=e=>({type:"basic",data:e});var BU;(function(e){e[e["SemiColon"]=0]="SemiColon",e[e["Space"]=1]="Space"})(BU||(BU={}));const LU=(e,t)=>t===BU.SemiColon?e.replace(/;$/,"").split(";"):e.split(" "),HU=(e,t,o)=>{const n=e.options.get(t),r=NU(LU(n,o));return{type:"basic",data:r}},IU=[{title:"Left",icon:"align-left",format:"alignleft",command:"JustifyLeft"},{title:"Center",icon:"align-center",format:"aligncenter",command:"JustifyCenter"},{title:"Right",icon:"align-right",format:"alignright",command:"JustifyRight"},{title:"Justify",icon:"align-justify",format:"alignjustify",command:"JustifyFull"}],PU=e=>{const t=()=>X(IU,t=>e.formatter.match(t.format)),o=t=>()=>e.formatter.match(t),n=e=>R.none,r=e=>{const o=t(),n=o.fold(S("left"),e=>e.title.toLowerCase());Ti(e,bL,{icon:`align-${n}`})},s=RU(IU),a=t=>()=>X(IU,e=>e.format===t.format).each(t=>e.execCommand(t.command));return{tooltip:"Align",text:R.none(),icon:R.some("align-left"),isSelectedFor:o,getCurrentValue:R.none,getPreviewFor:n,onAction:a,updateText:r,dataset:s,shouldHide:!1,isInvalid:t=>!e.formatter.canApply(t.format)}},zU=(e,t)=>MU(e,t,PU(e)),FU=(e,t)=>{const o=AU(e,t,PU(e));e.ui.registry.addNestedMenuItem("align",{text:t.shared.providers.translate("Align"),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})},VU=(e,t)=>{const o=t(),n=U(o,e=>e.format);return R.from(e.formatter.closest(n)).bind(e=>X(o,t=>t.format===e)).orThunk(()=>Be(e.formatter.match("p"),{title:"Paragraph",format:"p"}))},ZU=e=>{const t="Paragraph",o=t=>()=>e.formatter.match(t),n=t=>()=>{const o=e.formatter.get(t);return o?R.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):R.none()},r=o=>{const n=VU(e,()=>s.data),r=n.fold(S(t),e=>e.title);Ti(o,fL,{text:r})},s=HU(e,"block_formats",BU.SemiColon);return{tooltip:"Blocks",text:R.some(t),icon:R.none(),isSelectedFor:o,getCurrentValue:R.none,getPreviewFor:n,onAction:TU(e),updateText:r,dataset:s,shouldHide:!1,isInvalid:t=>!e.formatter.canApply(t.format)}},UU=(e,t)=>MU(e,t,ZU(e)),jU=(e,t)=>{const o=AU(e,t,ZU(e));e.ui.registry.addNestedMenuItem("blocks",{text:"Blocks",getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})},$U=["-apple-system","Segoe UI","Roboto","Helvetica Neue","sans-serif"],WU=e=>{const t=e.split(/\s*,\s*/);return U(t,e=>e.replace(/^['"]+|['"]+$/g,""))},qU=e=>{const t=()=>{const t=WU(e.toLowerCase());return te($U,e=>t.indexOf(e.toLowerCase())>-1)};return 0===e.indexOf("-apple-system")&&t()},GU=e=>{const t="System Font",o=()=>{const o=e=>e?WU(e)[0]:"",n=e.queryCommandValue("FontName"),r=l.data,s=n?n.toLowerCase():"",a=X(r,e=>{const t=e.format;return t.toLowerCase()===s||o(t).toLowerCase()===o(s).toLowerCase()}).orThunk(()=>Be(qU(s),{title:t,format:s}));return{matchOpt:a,font:n}},n=e=>t=>t.exists(t=>t.format===e),r=()=>{const{matchOpt:e}=o();return e},s=e=>()=>R.some({tag:"div",styles:-1===e.indexOf("dings")?{"font-family":e}:{}}),a=t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("FontName",!1,t.format)})},i=e=>{const{matchOpt:t,font:n}=o(),r=t.fold(S(n),e=>e.title);Ti(e,fL,{text:r})},l=HU(e,"font_family_formats",BU.SemiColon);return{tooltip:"Fonts",text:R.some(t),icon:R.none(),isSelectedFor:n,getCurrentValue:r,getPreviewFor:s,onAction:a,updateText:i,dataset:l,shouldHide:!1,isInvalid:A}},KU=(e,t)=>MU(e,t,GU(e)),YU=(e,t)=>{const o=AU(e,t,GU(e));e.ui.registry.addNestedMenuItem("fontfamily",{text:t.shared.providers.translate("Fonts"),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})},XU={"8pt":"1","10pt":"2","12pt":"3","14pt":"4","18pt":"5","24pt":"6","36pt":"7"},JU={"xx-small":"7pt","x-small":"8pt",small:"10pt",medium:"12pt",large:"14pt","x-large":"18pt","xx-large":"24pt"},QU=(e,t)=>{const o=Math.pow(10,t);return Math.round(e*o)/o},ej=(e,t)=>/[0-9.]+px$/.test(e)?QU(72*parseInt(e,10)/96,t||0)+"pt":ke(JU,e).getOr(e),tj=e=>ke(XU,e).getOr(""),oj=e=>{const t=()=>{let t=R.none();const o=i.data,n=e.queryCommandValue("FontSize");if(n)for(let e=3;t.isNone()&&e>=0;e--){const r=ej(n,e),s=tj(r);t=X(o,e=>e.format===n||e.format===r||e.format===s)}return{matchOpt:t,size:n}},o=e=>t=>t.exists(t=>t.format===e),n=()=>{const{matchOpt:e}=t();return e},r=S(R.none),s=t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("FontSize",!1,t.format)})},a=e=>{const{matchOpt:o,size:n}=t(),r=o.fold(S(n),e=>e.title);Ti(e,fL,{text:r})},i=HU(e,"font_size_formats",BU.Space);return{tooltip:"Font sizes",text:R.some("12pt"),icon:R.none(),isSelectedFor:o,getPreviewFor:r,getCurrentValue:n,onAction:s,updateText:a,dataset:i,shouldHide:!1,isInvalid:A}},nj=(e,t)=>MU(e,t,oj(e)),rj=(e,t)=>{const o=AU(e,t,oj(e));e.ui.registry.addNestedMenuItem("fontsize",{text:"Font sizes",getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})},sj=(e,t)=>{const o="Paragraph",n=t=>()=>e.formatter.match(t),r=t=>()=>{const o=e.formatter.get(t);return void 0!==o?R.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):R.none()},s=t=>{const n=e=>XI(e)?ee(e.items,n):JI(e)?[{title:e.title,format:e.format}]:[],r=ee(aP(e),n),s=VU(e,S(r)),a=s.fold(S(o),e=>e.title);Ti(t,fL,{text:a})};return{tooltip:"Formats",text:R.some(o),icon:R.none(),isSelectedFor:n,getCurrentValue:R.none,getPreviewFor:r,onAction:TU(e),updateText:s,shouldHide:pS(e),isInvalid:t=>!e.formatter.canApply(t.format),dataset:t}},aj=(e,t)=>{const o={type:"advanced",...t.styles};return MU(e,t,sj(e,o))},ij=(e,t)=>{const o={type:"advanced",...t.styles},n=AU(e,t,sj(e,o));e.ui.registry.addNestedMenuItem("styles",{text:"Formats",getSubmenuItems:()=>n.items.validateItems(n.getStyleItems())})},lj=(e,t)=>{const o=(o,n)=>{e.updateState.each(e=>{const r=e(o,n);t.set(r)}),e.renderComponents.each(r=>{const s=r(n,t.get()),a=e.reuseDom?qw:Ww;a(o,s)})};return Ri([Ii(ri(),(t,n)=>{const r=n;if(!r.universal){const n=e.channel;z(r.channels,n)&&o(t,r.data)}}),qi((t,n)=>{e.initialData.each(e=>{o(t,e)})})])};var cj=Object.freeze({__proto__:null,events:lj});const dj=(e,t,o)=>o;var mj=Object.freeze({__proto__:null,getState:dj}),uj=[Rs("channel"),js("renderComponents"),js("updateState"),js("initialData"),ra("reuseDom",!0)];const gj=()=>{const e=ca(R.none()),t=()=>e.set(R.none()),o=()=>e.get().getOr("none");return{readState:o,get:e.get,set:e.set,clear:t}};var hj=Object.freeze({__proto__:null,init:gj});const pj=Lm({fields:uj,name:"reflecting",active:cj,apis:mj,state:hj}),fj=S([Rs("toggleClass"),Rs("fetch"),Ad("onExecute"),Qs("getHotspot",R.some),Qs("getAnchorOverrides",S({})),ng(),Ad("onItemExecute"),js("lazySink"),Rs("dom"),Ed("onOpen"),ff("splitDropdownBehaviours",[TD,$w,fx]),Qs("matchWidth",!1),Qs("useMinWidth",!1),Qs("eventOrder",{}),js("role")].concat(KD())),bj=Gf({factory:RC,schema:[Rs("dom")],name:"arrow",defaults:()=>({buttonBehaviours:Rm([fx.revoke()])}),overrides:e=>({dom:{tag:"span",attributes:{role:"presentation"}},action:t=>{t.getSystem().getByUid(e.uid).each(Ei)},buttonBehaviours:Rm([Lx.config({toggleOnExecute:!1,toggleClass:e.toggleClass})])})}),vj=Gf({factory:RC,schema:[Rs("dom")],name:"button",defaults:()=>({buttonBehaviours:Rm([fx.revoke()])}),overrides:e=>({dom:{tag:"span",attributes:{role:"presentation"}},action:t=>{t.getSystem().getByUid(e.uid).each(o=>{e.onExecute(o,t)})}})}),yj=S([bj,vj,Yf({factory:{sketch:e=>({uid:e.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:e.text}})},schema:[Rs("text")],name:"aria-descriptor"}),Kf({schema:[_d()],name:"menu",defaults:e=>({onExecute:(t,o)=>{t.getSystem().getByUid(e.uid).each(n=>{e.onItemExecute(n,t,o)})}})}),ID()]),wj=(e,t,o,n)=>{const r=e=>{Rb.getCurrent(e).each(e=>{vv.highlightFirst(e),$w.focusIn(e)})},s=t=>{const o=r;UD(e,k,t,n,o,xC.HighlightMenuAndItem).get(y)},a=e=>(s(e),R.some(!0)),i=t=>{const o=db(t,e,"button");return Ei(o),R.some(!0)},l={...Ri([qi((t,o)=>{const n=cb(t,e,"aria-descriptor");n.each(e=>{const o=cl("aria");eo(e.element,"id",o),eo(t.element,"aria-describedby",o)})})]),...Ix(R.some(s))},c={repositionMenus:e=>{Lx.isOn(e)&&GD(e)}};return{uid:e.uid,dom:e.dom,components:t,apis:c,eventOrder:{...e.eventOrder,[si()]:["disabling","toggling","alloy.base.behaviour"]},events:l,behaviours:vf(e.splitDropdownBehaviours,[TD.config({others:{sandbox:t=>{const o=db(t,e,"arrow"),n={onOpen:()=>{Lx.on(o),Lx.on(t)},onClose:()=>{Lx.off(o),Lx.off(t)}};return qD(e,t,n)}}}),$w.config({mode:"special",onSpace:i,onEnter:i,onDown:a}),fx.config({}),Lx.config({toggleOnExecute:!1,aria:{mode:"expanded"}})]),domModification:{attributes:{role:e.role.getOr("button"),"aria-haspopup":!0}}}},xj=Eb({name:"SplitDropdown",configFields:fj(),partFields:yj(),factory:wj,apis:{repositionMenus:(e,t)=>e.repositionMenus(t)}}),Cj=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),Sj=e=>({setActive:t=>{Lx.set(e,t)},isActive:()=>Lx.isOn(e),isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t)}),kj=(e,t)=>e.map(e=>({"aria-label":t.translate(e),title:t.translate(e)})).getOr({}),_j=cl("focus-button"),Oj=(e,t,o,n,r,s)=>({dom:{tag:"button",classes:["tox-tbtn"].concat(t.isSome()?["tox-tbtn--select"]:[]),attributes:kj(o,s)},components:lT([e.map(e=>gL(e,s.icons)),t.map(e=>pL(e,"tox-tbtn",s))]),eventOrder:{[Ia()]:["focusing","alloy.base.behaviour","common-button-display-events"]},buttonBehaviours:Rm([oT.toolbarButton(s.isDisabled),XO(),ix("common-button-display-events",[Ii(Ia(),(e,t)=>{t.event.prevent(),Oi(e,_j)})])].concat(n.map(o=>pj.config({channel:o,initialData:{icon:e,text:t},renderComponents:(e,t)=>lT([e.icon.map(e=>gL(e,s.icons)),e.text.map(e=>pL(e,"tox-tbtn",s))])})).toArray()).concat(r.getOr([])))}),Tj=(e,t,o,n)=>{const r=t.shared;return cZ.sketch({lazySink:r.getSink,fetch:()=>LD.nu(t=>{t(U(o(e.items),OZ))}),markers:{toggledClass:"tox-tbtn--enabled"},parts:{button:Oj(e.icon,e.text,e.tooltip,R.none(),R.none(),r.providers),toolbar:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:n}}}})},Ej=(e,t,o)=>{const n=ca(y),r=Oj(e.icon,e.text,e.tooltip,R.none(),R.none(),o);return RC.sketch({dom:r.dom,components:r.components,eventOrder:mL,buttonBehaviours:Rm([ix("toolbar-button-events",[dL({onAction:e.onAction,getApi:t.getApi}),rT(t,n),sT(t,n)]),oT.toolbarButton(()=>!e.enabled||o.isDisabled()),XO()].concat(t.toolbarButtonBehaviours))})},Dj=(e,t)=>Aj(e,t,[]),Aj=(e,t,o)=>Ej(e,{toolbarButtonBehaviours:o.length>0?[ix("toolbarButtonWith",o)]:[],getApi:Cj,onSetup:e.onSetup},t),Mj=(e,t)=>Nj(e,t,[]),Nj=(e,t,o)=>Ej(e,{toolbarButtonBehaviours:[sx.config({}),Lx.config({toggleClass:"tox-tbtn--enabled",aria:{mode:"pressed"},toggleOnExecute:!1})].concat(o.length>0?[ix("toolbarToggleButtonWith",o)]:[]),getApi:Sj,onSetup:e.onSetup},t),Rj=(e,t,o)=>n=>LD.nu(e=>t.fetch(e)).map(r=>R.from(gA(Or(GE(cl("menu-value"),r,o=>{t.onItemAction(e(n),o)},t.columns,t.presets,lk.CLOSE_ON_EXECUTE,t.select.getOr(A),o),{movement:YE(t.columns,t.presets),menuBehaviours:RO.unnamedEvents("auto"!==t.columns?[]:[qi((e,o)=>{AO(e,4,Dk(t.presets)).each(({numRows:t,numColumns:o})=>{$w.setGridSize(e,t,o)})})])})))),Bj=(e,t)=>{const o=cl("channel-update-split-dropdown-display"),n=e=>({isEnabled:()=>!Jb.isDisabled(e),setEnabled:t=>Jb.set(e,!t),setIconFill:(t,o)=>{nd(e.element,'svg path[id="'+t+'"], rect[id="'+t+'"]').each(e=>{eo(e,"fill",o)})},setActive:t=>{eo(e.element,"aria-pressed",t),nd(e.element,"span").each(o=>{e.getSystem().getByDom(o).each(e=>Lx.set(e,t))})},isActive:()=>nd(e.element,"span").exists(t=>e.getSystem().getByDom(t).exists(Lx.isOn))}),r=ca(y),s={getApi:n,onSetup:e.onSetup};return xj.sketch({dom:{tag:"div",classes:["tox-split-button"],attributes:{"aria-pressed":!1,...kj(e.tooltip,t.providers)}},onExecute:t=>{e.onAction(n(t))},onItemExecute:(e,t,o)=>{},splitDropdownBehaviours:Rm([oT.splitButton(t.providers.isDisabled),XO(),ix("split-dropdown-events",[Ii(_j,fx.focus),rT(s,r),sT(s,r)]),MM.config({})]),eventOrder:{[fi()]:["alloy.base.behaviour","split-dropdown-events"]},toggleClass:"tox-tbtn--enabled",lazySink:t.getSink,fetch:Rj(n,e,t.providers),parts:{menu:Lk(!1,e.columns,e.presets)},components:[xj.parts.button(Oj(e.icon,e.text,R.none(),R.some(o),R.some([Lx.config({toggleClass:"tox-tbtn--enabled",toggleOnExecute:!1})]),t.providers)),xj.parts.arrow({dom:{tag:"button",classes:["tox-tbtn","tox-split-button__chevron"],innerHtml:VC("chevron-down",t.providers.icons)},buttonBehaviours:Rm([oT.splitButton(t.providers.isDisabled),XO(),jC()])}),xj.parts["aria-descriptor"]({text:t.providers.translate("To open the popup, press Shift+Enter")})]})},Lj=[{name:"history",items:["undo","redo"]},{name:"styles",items:["styles"]},{name:"formatting",items:["bold","italic"]},{name:"alignment",items:["alignleft","aligncenter","alignright","alignjustify"]},{name:"indentation",items:["outdent","indent"]},{name:"permanent pen",items:["permanentpen"]},{name:"comments",items:["addcomment"]}],Hj=(e,t)=>(o,n,r)=>{const s=e(o).mapError(e=>Ts(e)).getOrDie();return t(s,n,r)},Ij={button:Hj(G_,(e,t)=>Dj(e,t.shared.providers)),togglebutton:Hj(X_,(e,t)=>Mj(e,t.shared.providers)),menubutton:Hj(wF,(e,t)=>NH(e,"tox-tbtn",t,R.none())),splitbutton:Hj(CF,(e,t)=>Bj(e,t.shared)),grouptoolbarbutton:Hj(bF,(e,t,o)=>{const n=o.ui.registry.getAll().buttons,r=e=>$j(o,{buttons:n,toolbar:e,allowToolbarGroups:!1},t,R.none()),s={[tg]:t.shared.header.isPositionedAtTop()?eg.TopToBottom:eg.BottomToTop};switch(vS(o)){case XC.floating:return Tj(e,t,r,s);default:throw new Error("Toolbar groups are only supported when using floating toolbar mode")}})},Pj=(e,t,o)=>ke(Ij,e.type).fold(()=>(console.error("skipping button defined by",e),R.none()),n=>R.some(n(e,t,o))),zj={styles:aj,fontsize:nj,fontfamily:KU,blocks:UU,align:zU},Fj=e=>{const t=U(Lj,t=>{const o=q(t.items,t=>_e(e,t)||_e(zj,t));return{name:t.name,items:o}});return q(t,e=>e.items.length>0)},Vj=e=>{const t=e.split("|");return U(t,e=>({items:e.trim().split(" ")}))},Zj=e=>v(e,e=>_e(e,"name")&&_e(e,"items")),Uj=e=>{const t=e.toolbar,o=e.buttons;return!1===t?[]:void 0===t||!0===t?Fj(o):i(t)?Vj(t):Zj(t)?t:(console.error("Toolbar type should be string, string[], boolean or ToolbarGroup[]"),[])},jj=(e,t,o,n,r,s)=>ke(t,o.toLowerCase()).orThunk(()=>s.bind(e=>me(e,e=>ke(t,e+o.toLowerCase())))).fold(()=>ke(zj,o.toLowerCase()).map(t=>t(e,r)),t=>"grouptoolbarbutton"!==t.type||n?Pj(t,r,e):(console.warn(`Ignoring the '${o}' toolbar button. Group toolbar buttons are only supported when using floating toolbar mode and cannot be nested.`),R.none())),$j=(e,t,o,n)=>{const r=Uj(t),s=U(r,r=>{const s=ee(r.items,r=>0===r.trim().length?[]:jj(e,t.buttons,r,t.allowToolbarGroups,o,n).toArray());return{title:R.from(e.translate(r.name)),items:s}});return q(s,e=>e.items.length>0)},Wj=(e,t,o,n)=>{const r=t.mainUi.outerContainer,s=o.toolbar,a=o.buttons;if(v(s,i)){const t=s.map(t=>{const r={toolbar:t,buttons:a,allowToolbarGroups:o.allowToolbarGroups};return $j(e,r,n,R.none())});mU.setToolbars(r,t)}else mU.setToolbar(r,$j(e,o,n,R.none()))},qj=kn(),Gj=qj.os.isiOS()&&qj.os.version.major<=12,Kj=(e,t)=>{const{uiMotherships:o}=t,n=e.dom;let r=e.getWin();const s=e.getDoc().documentElement,a=ca(Oo(r.innerWidth,r.innerHeight)),i=ca(Oo(s.offsetWidth,s.offsetHeight)),l=()=>{const t=a.get();t.left===r.innerWidth&&t.top===r.innerHeight||(a.set(Oo(r.innerWidth,r.innerHeight)),aE(e))},c=()=>{const t=e.getDoc().documentElement,o=i.get();o.left===t.offsetWidth&&o.top===t.offsetHeight||(i.set(Oo(t.offsetWidth,t.offsetHeight)),aE(e))},d=t=>{iE(e,t)};n.bind(r,"resize",l),n.bind(r,"scroll",d);const m=ku(Qe.fromDom(e.getBody()),"load",c);e.on("hide",()=>{j(o,e=>{co(e.element,"display","none")})}),e.on("show",()=>{j(o,e=>{vo(e.element,"display")})}),e.on("NodeChange",c),e.on("remove",()=>{m.unbind(),n.unbind(r,"resize",l),n.unbind(r,"scroll",d),r=null})},Yj=(e,t)=>{cp(e,t.dialogUi.mothership)},Xj=(e,t,o,n,r)=>{const{mainUi:s,uiMotherships:a}=t,i=ca(0),l=s.outerContainer;SU(e);const c=Qe.fromDom(r.targetNode),d=jt(Ut(c));dp(c,s.mothership),Yj(d,t),e.on("PostRender",()=>{mU.setSidebar(l,o.sidebar,zS(e)),Wj(e,t,o,n),i.set(e.getWin().innerWidth),mU.setMenubar(l,fU(e,o)),mU.setViews(l,o.views),Kj(e,t)});const u=mU.getSocket(l).getOrDie("Could not find expected socket element");if(Gj){mo(u.element,{overflow:"scroll","-webkit-overflow-scrolling":"touch"});const t=sH(()=>{e.dispatch("ScrollContent")},20),o=Su(u.element,"scroll",t.throttle);e.on("remove",o.unbind)}YO(e,t),e.addCommand("ToggleSidebar",(t,o)=>{mU.toggleSidebar(l,o),e.dispatch("ToggleSidebar")}),e.addQueryValueHandler("ToggleSidebar",()=>{var e;return null!==(e=mU.whichSidebar(l))&&void 0!==e?e:""}),e.addCommand("ToggleView",(t,o)=>{if(mU.toggleView(l,o)){const t=l.element;s.mothership.broadcastOn([Rp()],{target:t}),j(a,e=>{e.broadcastOn([Rp()],{target:t})}),m(mU.whichView(l))&&(e.focus(),e.nodeChanged())}}),e.addQueryValueHandler("ToggleView",()=>{var e;return null!==(e=mU.whichView(l))&&void 0!==e?e:""});const g=vS(e),h=()=>{mU.refreshToolbar(t.mainUi.outerContainer)};g!==XC.sliding&&g!==XC.floating||e.on("ResizeWindow ResizeEditor ResizeContent",()=>{const t=e.getWin().innerWidth;t!==i.get()&&(h(),i.set(t))});const p={setEnabled:e=>{KO(t,!e)},isEnabled:()=>!Jb.isDisabled(l)};return{iframeContainer:u.element.dom,editorContainer:l.element.dom,api:p}};var Jj=Object.freeze({__proto__:null,render:Xj});const Qj=e=>{const t=/^[0-9\.]+(|px)$/i;return t.test(""+e)?R.some(parseInt(""+e,10)):R.none()},e$=e=>b(e)?e+"px":e,t$=(e,t,o)=>{const n=t.filter(t=>ee>t);return n.or(r).getOr(e)},o$=e=>{const t=iS(e),o=dS(e),n=uS(e);return Qj(t).map(e=>t$(e,o,n))},n$=e=>{const t=o$(e);return t.getOr(iS(e))},r$=e=>{const t=lS(e),o=cS(e),n=mS(e);return Qj(t).map(e=>t$(e,o,n))},s$=e=>{const t=r$(e);return t.getOr(lS(e))},{ToolbarLocation:a$,ToolbarMode:i$}=tk,l$=(e,t,o,n,r)=>{const{mainUi:s,uiMotherships:a}=o,i=eS.DOM,l=YS(e),c=QS(e),d=mS(e).or(r$(e)),m=n.shared.header,u=m.isPositionedAtTop,g=vS(e),h=g===i$.sliding||g===i$.floating,p=ca(!1),f=()=>p.get()&&!e.removed,b=e=>h?e.fold(S(0),e=>e.components().length>1?Co(e.components()[1].element):0):0,v=o=>{switch(wS(e)){case a$.auto:const e=mU.getToolbar(s.outerContainer),n=b(e),r=Co(o.element)-n,a=tr(t),i=a.y>r;if(i)return"top";{const e=Dt(t),o=Math.max(e.dom.scrollHeight,Co(e)),n=a.bottom{r.on(t=>{Jz.setModes(t,[e]),m.setDockingMode(e);const o=u()?eg.TopToBottom:eg.BottomToTop;eo(t.element,tg,o)})},w=()=>{r.on(e=>{const o=d.getOrThunk(()=>{const e=Qj(go(Xt(),"margin-left")).getOr(0);return Ro(Xt())-Do(t).left+e});co(e.element,"max-width",o+"px")})},x=()=>{r.on(e=>{const o=mU.getToolbar(s.outerContainer),n=b(o),r=tr(t),a=u()?Math.max(r.y-Co(e.element)+n,0):r.bottom;mo(s.outerContainer.element,{position:"absolute",top:Math.round(a)+"px",left:Math.round(r.x)+"px"})})},C=()=>{j(a,e=>{e.broadcastOn([Bp()],{})})},k=(e=!1)=>{if(f()){if(l||w(),h&&mU.refreshToolbar(s.outerContainer),l||x(),c){const t=e?Jz.reset:Jz.refresh;r.on(t)}C()}},_=(e=!0)=>{!l&&c&&f()&&r.on(t=>{const o=m.getDockingMode(),n=v(t);n!==o&&(y(n),e&&k(!0))})},O=()=>{p.set(!0),co(s.outerContainer.element,"display","flex"),i.addClass(e.getBody(),"mce-edit-focus"),j(a,e=>{vo(e.element,"display")}),_(!1),k()},T=()=>{p.set(!1),co(s.outerContainer.element,"display","none"),i.removeClass(e.getBody(),"mce-edit-focus"),j(a,e=>{co(e.element,"display","none")})};return{isVisible:f,isPositionedAtTop:u,show:O,hide:T,update:k,updateMode:_,repositionPopups:C}},c$=(e,t)=>{const o=tr(e);return{pos:t?o.y:o.bottom,bounds:o}},d$=(e,t,o,n)=>{const r=ca(c$(t,o.isPositionedAtTop())),s=n=>{const{pos:s,bounds:a}=c$(t,o.isPositionedAtTop()),{pos:i,bounds:l}=r.get(),c=a.height!==l.height||a.width!==l.width;r.set({pos:s,bounds:a}),c&&aE(e,n),o.isVisible()&&(i!==s?o.update(!0):c&&(o.updateMode(),o.repositionPopups()))};n||(e.on("activate",o.show),e.on("deactivate",o.hide)),e.on("SkinLoaded ResizeWindow",()=>o.update(!0)),e.on("NodeChange keydown",e=>{requestAnimationFrame(()=>s(e))}),e.on("ScrollWindow",()=>o.updateMode());const a=wu();a.set(ku(Qe.fromDom(e.getBody()),"load",e=>s(e.raw))),e.on("remove",()=>{a.clear()})},m$=(e,t)=>{cp(e,t.dialogUi.mothership)},u$=(e,t,o,n,r)=>{const{mainUi:s}=t,a=xu(),i=Qe.fromDom(r.targetNode),l=l$(e,i,t,n,a),c=SS(e);kU(e);const d=()=>{if(a.isSet())return void l.show();a.set(mU.getHeader(s.outerContainer).getOrDie());const r=XS(e);cp(r,s.mothership),m$(r,t),Wj(e,t,o,n),mU.setMenubar(s.outerContainer,fU(e,o)),l.show(),d$(e,i,l,c),e.nodeChanged()};e.on("show",d),e.on("hide",l.hide),c||(e.on("focus",d),e.on("blur",l.hide)),e.on("init",()=>{(e.hasFocus()||c)&&d()}),YO(e,t);const m={show:d,hide:l.hide,setEnabled:e=>{KO(t,!e)},isEnabled:()=>!Jb.isDisabled(s.outerContainer)};return{editorContainer:s.outerContainer.element.dom,api:m}};var g$=Object.freeze({__proto__:null,render:u$});const h$=()=>{const e=xu(),t=xu(),o=xu(),n=t=>{e.set(t)},r=(e,t)=>()=>o.get().bind(e=>t(e.outerContainer)).getOrDie(`Could not find ${e} element in OuterContainer`);return{dialogUi:e,popupUi:t,mainUi:o,getUiMotherships:()=>[...e.get().map(e=>e.mothership).toArray()],setupDialogUi:n,lazyGetInOuterOrDie:r}},p$="contexttoolbar-show",f$="contexttoolbar-hide",b$=e=>({hide:()=>Oi(e,ci()),getValue:()=>pf.getValue(e)}),v$=(e,t)=>Ii(cL,(o,n)=>{const r=e.get(o),s=b$(r);t.onAction(s,n.event.buttonApi)}),y$=(e,t,o)=>{const{primary:n,...r}=t.original,s=_s(G_({...r,type:"button",onAction:y}));return Aj(s,o,[v$(e,t)])},w$=(e,t,o)=>{const{primary:n,...r}=t.original,s=_s(X_({...r,type:"togglebutton",onAction:y}));return Nj(s,o,[v$(e,t)])},x$=e=>"contextformtogglebutton"===e.type,C$=(e,t,o)=>x$(t)?w$(e,t,o):y$(e,t,o),S$=(e,t,o)=>{const n=U(t,t=>BC(C$(e,t,o))),r=()=>U(n,e=>e.asSpec()),s=e=>me(t,(t,o)=>t.primary?R.from(n[o]).bind(t=>t.getOpt(e)).filter(T(Jb.isDisabled)):R.none());return{asSpecs:r,findPrimary:s}},k$=(e,t)=>{const o=e.label.fold(()=>({}),e=>({"aria-label":e})),n=BC(Vk.sketch({inputClasses:["tox-toolbar-textfield","tox-toolbar-nav-js"],data:e.initValue(),inputAttributes:o,selectOnFocus:!0,inputBehaviours:Rm([$w.config({mode:"special",onEnter:e=>r.findPrimary(e).map(e=>(Ei(e),!0)),onLeft:(e,t)=>(t.cut(),R.none()),onRight:(e,t)=>(t.cut(),R.none())})])})),r=S$(n,e.commands,t);return[{title:R.none(),items:[n.asSpec()]},{title:R.none(),items:r.asSpecs()}]},_$=(e,t,o)=>MZ({type:e,uid:cl("context-toolbar"),initGroups:k$(t,o),onEscape:R.none,cyclicKeying:!0,providers:o}),O$={renderContextForm:_$,buildInitGroups:k$},T$=(e,t,o)=>t.bottom-e.y>=o&&e.bottom-t.y>=o,E$=e=>{const t=e.getBoundingClientRect();if(t.height<=0&&t.width<=0){const o=zt(Qe.fromDom(e.startContainer),e.startOffset).element,n=bt(o)?Mt(o):R.some(o);return n.filter(ft).map(e=>e.dom.getBoundingClientRect()).getOr(t)}return t},D$=e=>{const t=e.selection.getRng(),o=E$(t);if(e.inline){const e=Fn();return er(e.left+o.left,e.top+o.top,o.width,o.height)}{const t=or(Qe.fromDom(e.getBody()));return er(t.x+o.left,t.y+o.top,o.width,o.height)}},A$=(e,t)=>t.filter(e=>Yt(e)&&pt(e)).map(or).getOrThunk(()=>D$(e)),M$=(e,t,o)=>{const n=Math.max(e.x+o,t.x),r=Math.min(e.right-o,t.right);return{x:n,width:r-n}},N$=(e,t,o,n,r,s)=>{const a=Qe.fromDom(e.getContainer()),i=nd(a,".tox-editor-header").getOr(a),l=tr(i),c=l.y>=t.bottom,d=n&&!c;if(e.inline&&d)return{y:Math.max(l.bottom+s,o.y),bottom:o.bottom};if(e.inline&&!d)return{y:o.y,bottom:Math.min(l.y-s,o.bottom)};const m="line"===r?tr(a):t;return d?{y:Math.max(l.bottom+s,o.y),bottom:Math.min(m.bottom-s,o.bottom)}:{y:Math.max(m.y+s,o.y),bottom:Math.min(l.y-s,o.bottom)}},R$=(e,t,o,n=0)=>{const r=jn(window),s=tr(Qe.fromDom(e.getContentAreaContainer())),a=ZS(e)||$S(e)||qS(e),{x:i,width:l}=M$(s,r,n);if(e.inline&&!a)return er(i,r.y,l,r.height);{const a=t.header.isPositionedAtTop(),{y:c,bottom:d}=N$(e,s,r,a,o,n);return er(i,c,l,d-c)}},B$=12,L$={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"],inset:["tox-pop--inset"]},H$={maxHeightFunction:ju(),maxWidthFunction:tZ()},I$=(e,t)=>{const o=e.selection.getRng(),n=zt(Qe.fromDom(o.startContainer),o.startOffset);return o.startContainer===o.endContainer&&o.startOffset===o.endOffset-1&&_t(n.element,t)},P$=(e,t,o)=>{const n=po(e,"position");co(e,"position",t);const r=o(e);return n.each(t=>co(e,"position",t)),r},z$=e=>"node"===e,F$=(e,t,o,n,r)=>{const s=D$(e),a=n.lastElement().exists(e=>_t(o,e));if(I$(e,o))return a?BI:DI;if(a)return P$(t,n.getMode(),()=>{const e=T$(s,tr(t),-20);return e&&!n.isReposition()?HI:BI});{const e="fixed"===n.getMode()?r.y+Fn().top:r.y,o=Co(t)+B$;return e+o<=s.y?DI:AI}},V$=(e,t,o,n)=>{const r=t=>(n,r,s,a,i)=>{const l=F$(e,a,t,o,i),c={...n,y:i.y,height:i.height};return{...l(c,r,s,a,i),alwaysFit:!0}},s=e=>z$(n)?[r(e)]:[],a={onLtr:e=>[um,gm,dm,lm,mm,cm].concat(s(e)),onRtl:e=>[um,gm,mm,cm,dm,lm].concat(s(e))},i={onLtr:e=>[gm,lm,cm,dm,mm,um].concat(s(e)),onRtl:e=>[gm,cm,lm,mm,dm,um].concat(s(e))};return t?i:a},Z$=(e,t,o,n)=>"line"===t?{bubble:Ku(B$,0,L$),layouts:{onLtr:()=>[hm],onRtl:()=>[pm]},overrides:H$}:{bubble:Ku(0,B$,L$,1/B$),layouts:V$(e,o,n,t),overrides:H$},U$=(e,t)=>{const o=q(t,t=>t.predicate(e.dom)),{pass:n,fail:r}=W(o,e=>"contexttoolbar"===e.type);return{contextToolbars:n,contextForms:r}},j$=e=>{if(e.length<=1)return e;{const t=t=>F(e,e=>e.position===t),o=t=>q(e,e=>e.position===t),n=t("selection"),r=t("node");if(n||r){if(r&&n){const e=o("node"),t=U(o("selection"),e=>({...e,position:"node"}));return e.concat(t)}return o(n?"selection":"node")}return o("line")}},$$=e=>{if(e.length<=1)return e;{const t=t=>X(e,e=>e.position===t),o=t("selection").orThunk(()=>t("node")).orThunk(()=>t("line")).map(e=>e.position);return o.fold(()=>[],t=>q(e,e=>e.position===t))}},W$=(e,t,o)=>{const n=U$(e,t);if(n.contextForms.length>0)return R.some({elem:e,toolbars:[n.contextForms[0]]});{const t=U$(e,o);if(t.contextForms.length>0)return R.some({elem:e,toolbars:[t.contextForms[0]]});if(n.contextToolbars.length>0||t.contextToolbars.length>0){const o=j$(n.contextToolbars.concat(t.contextToolbars));return R.some({elem:e,toolbars:o})}return R.none()}},q$=(e,t,o)=>e(t)?R.none():Sa(t,e=>{if(ft(e)){const{contextToolbars:t,contextForms:n}=U$(e,o.inNodeScope),r=n.length>0?n:$$(t);return r.length>0?R.some({elem:e,toolbars:r}):R.none()}return R.none()},e),G$=(e,t)=>{const o=Qe.fromDom(t.getBody()),n=e=>_t(e,o),r=e=>!n(e)&&!Ot(o,e),s=Qe.fromDom(t.selection.getNode());return r(s)?R.none():W$(s,e.inNodeScope,e.inEditorScope).orThunk(()=>q$(n,s,e))},K$=(e,t)=>{const o={},n=[],r=[],s={},a={},i=(e,i)=>{const l=_s(sO(i));o[e]=l,l.launch.map(o=>{s["form:"+e]={...i.launch,type:"contextformtogglebutton"===o.type?"togglebutton":"button",onAction:()=>{t(l)}}}),"editor"===l.scope?r.push(l):n.push(l),a[e]=l},l=(e,t)=>{iO(t).each(o=>{"editor"===t.scope?r.push(o):n.push(o),a[e]=o})},c=ue(e);return j(c,t=>{const o=e[t];"contextform"===o.type?i(t,o):"contexttoolbar"===o.type&&l(t,o)}),{forms:o,inNodeScope:n,inEditorScope:r,lookupTable:a,formNavigators:s}},Y$=cl("forward-slide"),X$=cl("backward-slide"),J$=cl("change-slide-event"),Q$="tox-pop--resizing",eW=e=>{const t=ca([]);return AC.sketch({dom:{tag:"div",classes:["tox-pop"]},fireDismissalEventInstead:{event:"doNotDismissYet"},onShow:e=>{t.set([]),AC.getContent(e).each(e=>{vo(e.element,"visibility")}),gc(e.element,Q$),vo(e.element,"width")},inlineBehaviours:Rm([ix("context-toolbar-events",[Wi(Ya(),(e,t)=>{"width"===t.event.raw.propertyName&&(gc(e.element,Q$),vo(e.element,"width"))}),Ii(J$,(e,t)=>{const o=e.element;vo(o,"width");const n=Ro(o);AC.setContent(e,t.event.contents),mc(o,Q$);const r=Ro(o);co(o,"width",n+"px"),AC.getContent(e).each(e=>{t.event.focus.bind(e=>(Zm(e),Wm(o))).orThunk(()=>($w.focusIn(e),$m(Ut(o))))}),setTimeout(()=>{co(e.element,"width",r+"px")},0)}),Ii(Y$,(e,o)=>{AC.getContent(e).each(o=>{t.set(t.get().concat([{bar:o,focus:$m(Ut(e.element))}]))}),Ti(e,J$,{contents:o.event.forwardContents,focus:R.none()})}),Ii(X$,(e,o)=>{ce(t.get()).each(o=>{t.set(t.get().slice(0,t.get().length-1)),Ti(e,J$,{contents:Gc(o.bar),focus:o.focus})})})]),$w.config({mode:"special",onEscape:o=>ce(t.get()).fold(()=>e.onEscape(),e=>(Oi(o,X$),R.some(!0)))})]),lazySink:()=>ir.value(e.sink)})},tW="tox-pop--transition",oW=(e,t,o,n)=>{const r=n.backstage,s=r.shared,a=kn().deviceType.isTouch,i=xu(),l=xu(),c=xu(),d=qc(eW({sink:o,onEscape:()=>(e.focus(),R.some(!0))})),m=()=>{const t=c.get().getOr("node"),o=z$(t)?1:0;return R$(e,s,t,o)},u=()=>!e.removed&&!(a()&&r.isContextMenuOpen()),g=e=>Te(Me(e,i.get(),_t),!0),h=()=>{if(u()){const t=m(),o=Te(c.get(),"node")?A$(e,i.get()):D$(e);return t.height<=0||!T$(o,t,.01)}return!0},p=()=>{i.clear(),l.clear(),c.clear(),AC.hide(d)},f=()=>{if(AC.isOpen(d)){const e=d.element;vo(e,"display"),h()?co(e,"display","none"):(l.set(0),AC.reposition(d))}},b=t=>({dom:{tag:"div",classes:["tox-pop__dialog"]},components:[t],behaviours:Rm([$w.config({mode:"acyclic"}),ix("pop-dialog-wrap-events",[qi(t=>{e.shortcuts.add("ctrl+F9","focus statusbar",()=>$w.focusIn(t))}),Gi(t=>{e.shortcuts.remove("ctrl+F9")})])])}),v=Ho(()=>K$(t,e=>{const t=C([e]);Ti(d,Y$,{forwardContents:b(t)})})),w=(t,o)=>$j(e,{buttons:t,toolbar:o.items,allowToolbarGroups:!1},n.backstage,R.some(["form:"])),x=(e,t)=>O$.buildInitGroups(e,t),C=t=>{const{buttons:o}=e.ui.registry.getAll(),n=v(),r={...o,...n.formNavigators},a=vS(e)===XC.scrolling?XC.scrolling:XC.default,i=Q(U(t,e=>"contexttoolbar"===e.type?w(r,e):x(e,s.providers)));return MZ({type:a,uid:cl("context-toolbar"),initGroups:i,onEscape:R.none,cyclicKeying:!0,providers:s.providers})},S=(t,n)=>{const r="node"===t?s.anchors.node(n):s.anchors.cursor(),c=Z$(e,t,a(),{lastElement:i.get,isReposition:()=>Te(l.get(),0),getMode:()=>Gh.getMode(o)});return Or(r,c)},k=(e,t)=>{if(_.cancel(),!u())return;const n=C(e),r=e[0].position,s=S(r,t);c.set(r),l.set(1);const a=d.element;vo(a,"display"),g(t)||(gc(a,tW),Gh.reset(o,d)),AC.showWithinBounds(d,b(n),{anchor:s,transition:{classes:[tW],mode:"placement"}},()=>R.some(m())),t.fold(i.clear,i.set),h()&&co(a,"display","none")},_=aH(()=>{if(e.hasFocus()&&!e.removed)if(hc(d.element,tW))_.throttle();else{const t=v();G$(t,e).fold(p,e=>{k(e.toolbars,R.some(e.elem))})}},17);e.on("init",()=>{e.on("remove",p),e.on("ScrollContent ScrollWindow ObjectResized ResizeEditor longpress",f),e.on("click keyup focus SetContent",_.throttle),e.on(f$,p),e.on(p$,t=>{const o=v();ke(o.lookupTable,t.toolbarKey).each(o=>{k([o],Be(t.target!==e,t.target)),AC.getContent(d).each($w.focusIn)})}),e.on("focusout",t=>{MC.setEditorTimeout(e,()=>{Wm(o.element).isNone()&&Wm(d.element).isNone()&&p()},0)}),e.on("SwitchMode",()=>{e.mode.isReadOnly()&&p()}),e.on("AfterProgressState",t=>{t.state?p():e.hasFocus()&&_.throttle()}),e.on("NodeChange",e=>{Wm(d.element).fold(_.throttle,y)})})},nW=e=>{const t=[{name:"alignleft",text:"Align left",cmd:"JustifyLeft",icon:"align-left"},{name:"aligncenter",text:"Align center",cmd:"JustifyCenter",icon:"align-center"},{name:"alignright",text:"Align right",cmd:"JustifyRight",icon:"align-right"},{name:"alignjustify",text:"Justify",cmd:"JustifyFull",icon:"align-justify"}];j(t,t=>{e.ui.registry.addToggleButton(t.name,{tooltip:t.text,icon:t.icon,onAction:EU(e,t.cmd),onSetup:_U(e,t.name)})}),e.ui.registry.addButton("alignnone",{tooltip:"No alignment",icon:"align-none",onAction:EU(e,"JustifyNone")})},rW={unsupportedLength:["em","ex","cap","ch","ic","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","cm","mm","Q","in","pc","pt","px"],fixed:["px","pt"],relative:["%"],empty:[""]},sW=(()=>{const e="[0-9]+",t="[+-]?"+e,o="[eE]"+t,n="\\.",r=e=>`(?:${e})?`,s=["Infinity",e+n+r(e)+r(o),n+e+r(o),e+r(o)].join("|"),a=`[+-]?(?:${s})`;return new RegExp(`^(${a})(.*)$`)})(),aW=(e,t)=>F(t,t=>F(rW[t],t=>e===t)),iW=(e,t)=>{const o=R.from(sW.exec(e));return o.bind(e=>{const o=Number(e[1]),n=e[2];return aW(n,t)?R.some({value:o,unit:n}):R.none()})},lW=(e,t)=>iW(e,t).map(({value:e,unit:t})=>e+t),cW=(e,t)=>{const o=()=>{const o=t.getOptions(e),n=t.getCurrent(e).map(t.hash),r=xu();return U(o,o=>({type:"togglemenuitem",text:t.display(o),onSetup:s=>{const a=e=>{e&&(r.on(e=>e.setActive(!1)),r.set(s)),s.setActive(e)};a(Te(n,t.hash(o)));const i=t.watcher(e,o,a);return()=>{r.clear(),i()}},onAction:()=>t.setCurrent(e,o)}))};e.ui.registry.addMenuButton(t.name,{tooltip:t.text,icon:t.icon,fetch:e=>e(o()),onSetup:t.onToolbarSetup}),e.ui.registry.addNestedMenuItem(t.name,{type:"nestedmenuitem",text:t.text,getSubmenuItems:o,onSetup:t.onMenuSetup})},dW={name:"lineheight",text:"Line height",icon:"line-height",getOptions:jS,hash:e=>lW(e,["fixed","relative","empty"]).getOr(e),display:k,watcher:(e,t,o)=>e.formatter.formatChanged("lineheight",o,!1,{value:t}).unbind,getCurrent:e=>R.from(e.queryCommandValue("LineHeight")),setCurrent:(e,t)=>e.execCommand("LineHeight",!1,t)},mW=e=>{const t=R.from(fS(e));return t.map(t=>({name:"language",text:"Language",icon:"language",getOptions:S(t),hash:e=>g(e.customCode)?e.code:`${e.code}/${e.customCode}`,display:e=>e.title,watcher:(e,t,o)=>{var n;return e.formatter.formatChanged("lang",o,!1,{value:t.code,customValue:null!==(n=t.customCode)&&void 0!==n?n:null}).unbind},getCurrent:e=>{const t=Qe.fromDom(e.selection.getNode());return ka(t,e=>R.some(e).filter(ft).bind(e=>{const t=no(e,"lang");return t.map(t=>{const o=no(e,"data-mce-lang").getOrUndefined();return{code:t,customCode:o,title:""}})}))},setCurrent:(e,t)=>e.execCommand("Lang",!1,t),onToolbarSetup:t=>{const o=wu();return t.setActive(e.formatter.match("lang",{},void 0,!0)),o.set(e.formatter.formatChanged("lang",t.setActive,!0)),o.clear}}))},uW=e=>{cW(e,dW),mW(e).each(t=>cW(e,t))},gW=(e,t)=>{FU(e,t),YU(e,t),ij(e,t),jU(e,t),rj(e,t)},hW=e=>OU(e,"NodeChange",t=>{t.setEnabled(e.queryCommandState("outdent"))}),pW=e=>{e.ui.registry.addButton("outdent",{tooltip:"Decrease indent",icon:"outdent",onSetup:hW(e),onAction:EU(e,"outdent")}),e.ui.registry.addButton("indent",{tooltip:"Increase indent",icon:"indent",onAction:EU(e,"indent")})},fW=e=>{pW(e)},bW=(e,t)=>o=>{o.setActive(t.get());const n=e=>{t.set(e.state),o.setActive(e.state)};return e.on("PastePlainTextToggle",n),()=>e.off("PastePlainTextToggle",n)},vW=e=>{const t=ca(PS(e)),o=()=>e.execCommand("mceTogglePlainTextPaste");e.ui.registry.addToggleButton("pastetext",{active:!1,icon:"paste-text",tooltip:"Paste as text",onAction:o,onSetup:bW(e,t)}),e.ui.registry.addToggleMenuItem("pastetext",{text:"Paste as text",icon:"paste-text",onAction:o,onSetup:bW(e,t)})},yW=(e,t)=>()=>{e.execCommand("mceToggleFormat",!1,t)},wW=e=>{$B.each([{name:"bold",text:"Bold",icon:"bold"},{name:"italic",text:"Italic",icon:"italic"},{name:"underline",text:"Underline",icon:"underline"},{name:"strikethrough",text:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",icon:"superscript"}],(t,o)=>{e.ui.registry.addToggleButton(t.name,{tooltip:t.text,icon:t.icon,onSetup:_U(e,t.name),onAction:yW(e,t.name)})});for(let t=1;t<=6;t++){const o="h"+t;e.ui.registry.addToggleButton(o,{text:o.toUpperCase(),tooltip:"Heading "+t,onSetup:_U(e,o),onAction:yW(e,o)})}},xW=e=>{$B.each([{name:"cut",text:"Cut",action:"Cut",icon:"cut"},{name:"copy",text:"Copy",action:"Copy",icon:"copy"},{name:"paste",text:"Paste",action:"Paste",icon:"paste"},{name:"help",text:"Help",action:"mceHelp",icon:"help"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all"},{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"remove",text:"Remove",action:"Delete",icon:"remove"},{name:"print",text:"Print",action:"mcePrint",icon:"print"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],t=>{e.ui.registry.addButton(t.name,{tooltip:t.text,icon:t.icon,onAction:EU(e,t.action)})})},CW=e=>{$B.each([{name:"blockquote",text:"Blockquote",action:"mceBlockQuote",icon:"quote"}],t=>{e.ui.registry.addToggleButton(t.name,{tooltip:t.text,icon:t.icon,onAction:EU(e,t.action),onSetup:_U(e,t.name)})})},SW=e=>{wW(e),xW(e),CW(e)},kW=e=>{$B.each([{name:"bold",text:"Bold",action:"Bold",icon:"bold",shortcut:"Meta+B"},{name:"italic",text:"Italic",action:"Italic",icon:"italic",shortcut:"Meta+I"},{name:"underline",text:"Underline",action:"Underline",icon:"underline",shortcut:"Meta+U"},{name:"strikethrough",text:"Strikethrough",action:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",action:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",action:"Superscript",icon:"superscript"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"cut",text:"Cut",action:"Cut",icon:"cut",shortcut:"Meta+X"},{name:"copy",text:"Copy",action:"Copy",icon:"copy",shortcut:"Meta+C"},{name:"paste",text:"Paste",action:"Paste",icon:"paste",shortcut:"Meta+V"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all",shortcut:"Meta+A"},{name:"print",text:"Print...",action:"mcePrint",icon:"print",shortcut:"Meta+P"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],t=>{e.ui.registry.addMenuItem(t.name,{text:t.text,icon:t.icon,shortcut:t.shortcut,onAction:EU(e,t.action)})}),e.ui.registry.addMenuItem("codeformat",{text:"Code",icon:"sourcecode",onAction:yW(e,"code")})},_W=e=>{SW(e),kW(e)},OW=(e,t)=>OU(e,"Undo Redo AddUndo TypingUndo ClearUndos SwitchMode",o=>{o.setEnabled(!e.mode.isReadOnly()&&e.undoManager[t]())}),TW=e=>{e.ui.registry.addMenuItem("undo",{text:"Undo",icon:"undo",shortcut:"Meta+Z",onSetup:OW(e,"hasUndo"),onAction:EU(e,"undo")}),e.ui.registry.addMenuItem("redo",{text:"Redo",icon:"redo",shortcut:"Meta+Y",onSetup:OW(e,"hasRedo"),onAction:EU(e,"redo")})},EW=e=>{e.ui.registry.addButton("undo",{tooltip:"Undo",icon:"undo",enabled:!1,onSetup:OW(e,"hasUndo"),onAction:EU(e,"undo")}),e.ui.registry.addButton("redo",{tooltip:"Redo",icon:"redo",enabled:!1,onSetup:OW(e,"hasRedo"),onAction:EU(e,"redo")})},DW=e=>{TW(e),EW(e)},AW=e=>OU(e,"VisualAid",t=>{t.setActive(e.hasVisual)}),MW=e=>{e.ui.registry.addToggleMenuItem("visualaid",{text:"Visual aids",onSetup:AW(e),onAction:EU(e,"mceToggleVisualAid")})},NW=e=>{e.ui.registry.addButton("visualaid",{tooltip:"Visual aids",text:"Visual aids",onAction:EU(e,"mceToggleVisualAid")})},RW=e=>{NW(e),MW(e)},BW=(e,t)=>{nW(e),_W(e),gW(e,t),DW(e),qE(e),RW(e),fW(e),uW(e),vW(e)},LW=e=>i(e)?e.split(/[ ,]/):e,HW=e=>t=>t.options.get(e),IW=e=>{const t=e.options.register;t("contextmenu_avoid_overlap",{processor:"string",default:""}),t("contextmenu_never_use_native",{processor:"boolean",default:!1}),t("contextmenu",{processor:e=>!1===e?{value:[],valid:!0}:i(e)||v(e,i)?{value:LW(e),valid:!0}:{valid:!1,message:"Must be false or a string."},default:"link linkchecker image editimage table spellchecker configurepermanentpen"})},PW=HW("contextmenu_never_use_native"),zW=HW("contextmenu_avoid_overlap"),FW=e=>0===VW(e).length,VW=e=>{const t=e.ui.registry.getAll().contextMenus,o=e.options.get("contextmenu");return e.options.isSet("contextmenu")?o:q(o,e=>_e(t,e))},ZW=(e,t)=>({type:"makeshift",x:e,y:t}),UW=(e,t,o)=>ZW(e.x+t,e.y+o),jW=e=>"longpress"===e.type||0===e.type.indexOf("touch"),$W=e=>{if(jW(e)){const t=e.touches[0];return ZW(t.pageX,t.pageY)}return ZW(e.pageX,e.pageY)},WW=e=>{if(jW(e)){const t=e.touches[0];return ZW(t.clientX,t.clientY)}return ZW(e.clientX,e.clientY)},qW=(e,t)=>{const o=eS.DOM.getPos(e);return UW(t,o.x,o.y)},GW=(e,t)=>"contextmenu"===t.type||"longpress"===t.type?e.inline?$W(t):qW(e.getContentAreaContainer(),WW(t)):KW(e),KW=e=>({type:"selection",root:Qe.fromDom(e.selection.getNode())}),YW=e=>({type:"node",node:R.some(Qe.fromDom(e.selection.getNode())),root:Qe.fromDom(e.getBody())}),XW=(e,t,o)=>{switch(o){case"node":return YW(e);case"point":return GW(e,t);case"selection":return KW(e)}},JW=(e,t,o,n,r,s)=>{const a=o(),i=XW(e,t,s);DL(a,lk.CLOSE_ON_EXECUTE,n,{isHorizontalMenu:!1,search:R.none()}).map(e=>{t.preventDefault(),AC.showMenuAt(r,{anchor:i},{menu:{markers:Nk("normal")},data:e})})},QW={onLtr:()=>[gm,lm,cm,dm,mm,um,DI,AI,EI,OI,TI,_I],onRtl:()=>[gm,cm,lm,mm,dm,um,DI,AI,TI,_I,EI,OI]},eq=12,tq={valignCentre:[],alignCentre:[],alignLeft:["tox-pop--align-left"],alignRight:["tox-pop--align-right"],right:["tox-pop--right"],left:["tox-pop--left"],bottom:["tox-pop--bottom"],top:["tox-pop--top"]},oq=(e,t)=>{const o=e.selection;if(o.isCollapsed()||t.touches.length<1)return!1;{const n=t.touches[0],r=o.getRng(),s=ch(e.getWin(),Zg.domRange(r));return s.exists(e=>e.left<=n.clientX&&e.right>=n.clientX&&e.top<=n.clientY&&e.bottom>=n.clientY)}},nq=e=>{const t=e.selection.getRng(),o=()=>{MC.setEditorTimeout(e,()=>{e.selection.setRng(t)},10),s()};e.once("touchend",o);const n=e=>{e.preventDefault(),e.stopImmediatePropagation()};e.on("mousedown",n,!0);const r=()=>s();e.once("longpresscancel",r);const s=()=>{e.off("touchend",o),e.off("longpresscancel",r),e.off("mousedown",n)}},rq=(e,t,o)=>{const n=XW(e,t,o),r="point"===o?eq:0;return{bubble:Ku(0,r,tq),layouts:QW,overrides:{maxWidthFunction:tZ(),maxHeightFunction:ju()},...n}},sq=(e,t,o,n,r,s,a)=>{const i=rq(e,t,s);DL(o,lk.CLOSE_ON_EXECUTE,n,{isHorizontalMenu:!0,search:R.none()}).map(o=>{t.preventDefault();const l=a?xC.HighlightMenuAndItem:xC.HighlightNone;AC.showMenuWithinBounds(r,{anchor:i},{menu:{markers:Nk("normal"),highlightOnOpen:l},data:o,type:"horizontal"},()=>R.some(R$(e,n.shared,"node"===s?"node":"selection"))),e.dispatch(f$)})},aq=(e,t,o,n,r,s)=>{const a=kn(),i=a.os.isiOS(),l=a.os.isMacOS(),c=a.os.isAndroid(),d=a.deviceType.isTouch(),m=()=>!(c||i||l&&d),u=()=>{const a=o();sq(e,t,a,n,r,s,m())};if((l||i)&&"node"!==s){const o=()=>{nq(e),u()};oq(e,t)?o():(e.once("selectionchange",o),e.once("touchend",()=>e.off("selectionchange",o)))}else u()},iq=e=>i(e)?"|"===e:"separator"===e.type,lq={type:"separator"},cq=e=>{const t=e=>({text:e.text,icon:e.icon,enabled:e.enabled,shortcut:e.shortcut});if(i(e))return e;switch(e.type){case"separator":return lq;case"submenu":return{type:"nestedmenuitem",...t(e),getSubmenuItems:()=>{const t=e.getSubmenuItems();return i(t)?t:U(t,cq)}};default:const o=e;return{type:"menuitem",...t(o),onAction:w(o.onAction)}}},dq=(e,t)=>{if(0===t.length)return e;const o=ce(e).filter(e=>!iq(e)),n=o.fold(()=>[],e=>[lq]);return e.concat(n).concat(t).concat([lq])},mq=(e,t,o)=>{const n=K(t,(t,n)=>ke(e,n.toLowerCase()).map(e=>{const n=e.update(o);if(i(n))return dq(t,n.split(" "));if(n.length>0){const e=U(n,cq);return dq(t,e)}return t}).getOrThunk(()=>t.concat([n])),[]);return n.length>0&&iq(n[n.length-1])&&n.pop(),n},uq=(e,t)=>t.ctrlKey&&!PW(e),gq=e=>"longpress"===e.type||_e(e,"touches"),hq=(e,t)=>!gq(t)&&(2!==t.button||t.target===e.getBody()&&""===t.pointerType),pq=(e,t)=>hq(e,t)?e.selection.getStart(!0):t.target,fq=(e,t)=>{const o=zW(e),n=hq(e,t)?"selection":"point";if($e(o)){const r=pq(e,t),s=vA(Qe.fromDom(r),o);return s?"node":n}return n},bq=(e,t,o)=>{const n=kn(),r=n.deviceType.isTouch,s=qc(AC.sketch({dom:{tag:"div"},lazySink:t,onEscape:()=>e.focus(),onShow:()=>o.setContextMenuState(!0),onHide:()=>o.setContextMenuState(!1),fireDismissalEventInstead:{},inlineBehaviours:Rm([ix("dismissContextMenu",[Ii(vi(),(t,o)=>{Np.close(t),e.focus()})])])})),a=()=>AC.hide(s),i=t=>{if(PW(e)&&t.preventDefault(),uq(e,t)||FW(e))return;const n=fq(e,t),a=()=>{const o=pq(e,t),n=e.ui.registry.getAll(),r=VW(e);return mq(n.contextMenus,r,o)},i=r()?aq:JW;i(e,t,a,o,s,n)};e.on("init",()=>{const t="ResizeEditor ScrollContent ScrollWindow longpresscancel"+(r()?"":" ResizeWindow");e.on(t,a),e.on("longpress contextmenu",i)})},vq=ma.generate([{offset:["x","y"]},{absolute:["x","y"]},{fixed:["x","y"]}]),yq=e=>t=>t.translate(-e.left,-e.top),wq=e=>t=>t.translate(e.left,e.top),xq=e=>(t,o)=>K(e,(e,t)=>t(e),Oo(t,o)),Cq=(e,t,o)=>e.fold(xq([wq(o),yq(t)]),xq([yq(t)]),xq([])),Sq=(e,t,o)=>e.fold(xq([wq(o)]),xq([]),xq([wq(t)])),kq=(e,t,o)=>e.fold(xq([]),xq([yq(o)]),xq([wq(t),yq(o)])),_q=(e,t,o,n,r,s)=>{const a=Sq(e,r,s),i=Sq(t,r,s);return Math.abs(a.left-i.left)<=o&&Math.abs(a.top-i.top)<=n},Oq=(e,t,o,n,r,s)=>{const a=Sq(e,r,s),i=Sq(t,r,s),l=Math.abs(a.left-i.left),c=Math.abs(a.top-i.top);return Oo(l,c)},Tq=(e,t,o)=>{const n=e.fold((e,t)=>({position:R.some("absolute"),left:R.some(e+"px"),top:R.some(t+"px")}),(e,t)=>({position:R.some("absolute"),left:R.some(e-o.left+"px"),top:R.some(t-o.top+"px")}),(e,t)=>({position:R.some("fixed"),left:R.some(e+"px"),top:R.some(t+"px")}));return{right:R.none(),bottom:R.none(),...n}},Eq=(e,t,o)=>e.fold((e,n)=>Aq(e+t,n+o),(e,n)=>Mq(e+t,n+o),(e,n)=>Nq(e+t,n+o)),Dq=(e,t,o,n)=>{const r=(e,r)=>(s,a)=>{const i=e(t,o,n);return r(s.getOr(i.left),a.getOr(i.top))};return e.fold(r(kq,Aq),r(Sq,Mq),r(Cq,Nq))},Aq=vq.offset,Mq=vq.absolute,Nq=vq.fixed,Rq=(e,t)=>{const o=oo(e,t);return g(o)?NaN:parseInt(o,10)},Bq=(e,t)=>{const o=e.element,n=Rq(o,t.leftAttr),r=Rq(o,t.topAttr);return isNaN(n)||isNaN(r)?R.none():R.some(Oo(n,r))},Lq=(e,t,o)=>{const n=e.element;eo(n,t.leftAttr,o.left+"px"),eo(n,t.topAttr,o.top+"px")},Hq=(e,t)=>{const o=e.element;so(o,t.leftAttr),so(o,t.topAttr)},Iq=(e,t,o,n)=>Bq(e,t).fold(()=>o,e=>Nq(e.left+n.left,e.top+n.top)),Pq=(e,t,o,n,r,s)=>{const a=Iq(e,t,o,n),i=t.mustSnap?Vq(e,t,a,r,s):Zq(e,t,a,r,s),l=Cq(a,r,s);return Lq(e,t,l),i.fold(()=>({coord:Nq(l.left,l.top),extra:R.none()}),e=>({coord:e.output,extra:e.extra}))},zq=(e,t)=>{Hq(e,t)},Fq=(e,t,o,n)=>me(e,e=>{const r=e.sensor,s=_q(t,r,e.range.left,e.range.top,o,n);return s?R.some({output:Dq(e.output,t,o,n),extra:e.extra}):R.none()}),Vq=(e,t,o,n,r)=>{const s=t.getSnapPoints(e),a=Fq(s,o,n,r);return a.orThunk(()=>{const e=K(s,(e,t)=>{const s=t.sensor,a=Oq(o,s,t.range.left,t.range.top,n,r);return e.deltas.fold(()=>({deltas:R.some(a),snap:R.some(t)}),o=>{const n=(a.left+a.top)/2,r=(o.left+o.top)/2;return n<=r?{deltas:R.some(a),snap:R.some(t)}:e})},{deltas:R.none(),snap:R.none()});return e.snap.map(e=>({output:Dq(e.output,o,n,r),extra:e.extra}))})},Zq=(e,t,o,n,r)=>{const s=t.getSnapPoints(e);return Fq(s,o,n,r)},Uq=(e,t,o)=>({coord:Dq(e.output,e.output,t,o),extra:e.extra}),jq=(e,t,o,n)=>{const r=t.getTarget(e.element);if(t.repositionTarget){const t=Tt(e.element),o=Fn(t),s=xz(r),a=Uq(n,o,s),i=Tq(a.coord,o,s);uo(r,i)}};var $q=Object.freeze({__proto__:null,snapTo:jq});const Wq="data-initial-z-index",qq=e=>{Mt(e.element).filter(ft).each(e=>{no(e,Wq).fold(()=>vo(e,"z-index"),t=>co(e,"z-index",t)),so(e,Wq)})},Gq=e=>{Mt(e.element).filter(ft).each(t=>{po(t,"z-index").each(e=>{eo(t,Wq,e)}),co(t,"z-index",go(e.element,"z-index"))})},Kq=(e,t)=>{e.getSystem().addToGui(t),Gq(t)},Yq=e=>{qq(e),e.getSystem().removeFromGui(e)},Xq=(e,t,o)=>e.getSystem().build(ZA.sketch({dom:{styles:{left:"0px",top:"0px",width:"100%",height:"100%",position:"fixed","z-index":"1000000000000000"},classes:[t]},events:o}));var Jq=Xs("snaps",[Rs("getSnapPoints"),Ed("onSensor"),Rs("leftAttr"),Rs("topAttr"),Qs("lazyViewport",nr),Qs("mustSnap",!1)]);const Qq=[Qs("useFixed",A),Rs("blockerClass"),Qs("getTarget",k),Qs("onDrag",y),Qs("repositionTarget",!0),Qs("onDrop",y),sa("getBounds",nr),Jq],eG=e=>Ne(po(e,"left"),po(e,"top"),po(e,"position"),(e,t,o)=>{const n="fixed"===o?Nq:Aq;return n(parseInt(e,10),parseInt(t,10))}).getOrThunk(()=>{const t=Do(e);return Mq(t.left,t.top)}),tG=(e,t,o,n,r)=>{const s=r.bounds,a=Sq(t,o,n),i=Kd(a.left,s.x,s.x+s.width-r.width),l=Kd(a.top,s.y,s.y+s.height-r.height),c=Mq(i,l);return t.fold(()=>{const e=kq(c,o,n);return Aq(e.left,e.top)},S(c),()=>{const e=Cq(c,o,n);return Nq(e.left,e.top)})},oG=(e,t,o,n,r,s,a)=>{const i=t.fold(()=>{const e=Eq(o,s.left,s.top),t=Cq(e,n,r);return Nq(t.left,t.top)},t=>{const a=Pq(e,t,o,s,n,r);return a.extra.each(o=>{t.onSensor(e,o)}),a.coord});return tG(e,i,n,r,a)},nG=(e,t,o,n)=>{const r=t.getTarget(e.element);if(t.repositionTarget){const s=Tt(e.element),a=Fn(s),i=xz(r),l=eG(r),c=oG(e,t.snaps,l,a,i,n,o),d=Tq(c,a,i);uo(r,d)}t.onDrag(e,r,n)},rG=(e,t)=>({bounds:e.getBounds(),height:So(t.element),width:Bo(t.element)}),sG=(e,t,o,n,r)=>{const s=o.update(n,r),a=o.getStartData().getOrThunk(()=>rG(t,e));s.each(o=>{nG(e,t,a,o)})},aG=(e,t,o,n)=>{t.each(Yq),o.snaps.each(t=>{zq(e,t)});const r=o.getTarget(e.element);n.reset(),o.onDrop(e,r)},iG=e=>(t,o)=>{const n=e=>{o.setStartData(rG(t,e))};return Ri([Ii(hi(),e=>{o.getStartData().each(()=>n(e))}),...e(t,o,n)])},lG=e=>Ri([Ii(Ia(),e.forceDrop),Ii(Fa(),e.drop),Ii(Pa(),(t,o)=>{e.move(o.event)}),Ii(za(),e.delayDrop)]),cG=e=>R.from(Oo(e.x,e.y)),dG=(e,t)=>Oo(t.left-e.left,t.top-e.top);var mG=Object.freeze({__proto__:null,getData:cG,getDelta:dG});const uG=(e,t,o)=>[Ii(Ia(),(n,r)=>{const s=r.event.raw;if(0!==s.button)return;r.stop();const a=()=>aG(n,R.some(c),e,t),i=yA(a,200),l={drop:a,delayDrop:i.schedule,forceDrop:a,move:o=>{i.cancel(),sG(n,e,t,mG,o)}},c=Xq(n,e.blockerClass,lG(l)),d=()=>{o(n),Kq(n,c)};d()})],gG=[...Qq,Nd("dragger",{handlers:iG(uG)})],hG=e=>Ri([Ii(Ra(),e.forceDrop),Ii(La(),e.drop),Ii(Ha(),e.drop),Ii(Ba(),(t,o)=>{e.move(o.event)})]),pG=e=>{const t=e[0];return R.some(Oo(t.clientX,t.clientY))},fG=e=>{const t=e.raw,o=t.touches;return 1===o.length?pG(o):R.none()},bG=(e,t)=>Oo(t.left-e.left,t.top-e.top);var vG=Object.freeze({__proto__:null,getData:fG,getDelta:bG});const yG=(e,t,o)=>{const n=xu(),r=o=>{aG(o,n.get(),e,t),n.clear()};return[Ii(Ra(),(s,a)=>{a.stop();const i=()=>r(s),l={drop:i,delayDrop:y,forceDrop:i,move:o=>{sG(s,e,t,vG,o)}},c=Xq(s,e.blockerClass,hG(l));n.set(c);const d=()=>{o(s),Kq(s,c)};d()}),Ii(Ba(),(o,n)=>{n.stop(),sG(o,e,t,vG,n.event)}),Ii(La(),(e,t)=>{t.stop(),r(e)}),Ii(Ha(),r)]},wG=[...Qq,Nd("dragger",{handlers:iG(yG)})],xG=(e,t,o)=>[...uG(e,t,o),...yG(e,t,o)],CG=[...Qq,Nd("dragger",{handlers:iG(xG)})],SG=gG,kG=wG,_G=CG;var OG=Object.freeze({__proto__:null,mouse:SG,touch:kG,mouseOrTouch:_G});const TG=()=>{let e=R.none(),t=R.none();const o=()=>{e=R.none(),t=R.none()},n=(t,o)=>{const n=e.map(e=>t.getDelta(e,o));return e=R.some(o),n},r=(e,t)=>e.getData(t).bind(t=>n(e,t)),s=e=>{t=R.some(e)},a=()=>t,i=S({});return Ml({readState:i,reset:o,update:r,getStartData:a,setStartData:s})};var EG=Object.freeze({__proto__:null,init:TG});const DG=Im({branchKey:"mode",branches:OG,name:"dragging",active:{events:(e,t)=>{const o=e.dragger;return o.handlers(e,t)}},extra:{snap:e=>({sensor:e.sensor,range:e.range,output:e.output,extra:R.from(e.extra)})},state:EG,apis:$q}),AG=40,MG=AG/2,NG=(e,t,o,n,r,s)=>e.fold(()=>DG.snap({sensor:Mq(o-MG,n-MG),range:Oo(r,s),output:Mq(R.some(o),R.some(n)),extra:{td:t}}),e=>{const r=o-MG,s=n-MG,a=AG,i=AG,l=e.element.dom.getBoundingClientRect();return DG.snap({sensor:Mq(r,s),range:Oo(a,i),output:Mq(R.some(o-l.width/2),R.some(n-l.height/2)),extra:{td:t}})}),RG=(e,t,o)=>{const n=(e,t)=>e.exists(e=>_t(e,t));return{getSnapPoints:e,leftAttr:"data-drag-left",topAttr:"data-drag-top",onSensor:(e,r)=>{const s=r.td;n(t.get(),s)||(t.set(s),o(s))},mustSnap:!0}},BG=e=>BC(RC.sketch({dom:{tag:"div",classes:["tox-selector"]},buttonBehaviours:Rm([DG.config({mode:"mouseOrTouch",blockerClass:"blocker",snaps:e}),MM.config({})]),eventOrder:{mousedown:["dragging","alloy.base.behaviour"],touchstart:["dragging","alloy.base.behaviour"]}})),LG=(e,t)=>{const o=ca([]),n=ca([]),r=ca(!1),s=xu(),a=xu(),i=e=>{const o=or(e);return NG(g.getOpt(t),e,o.x,o.y,o.width,o.height)},l=()=>U(o.get(),e=>i(e)),c=e=>{const o=or(e);return NG(h.getOpt(t),e,o.right,o.bottom,o.width,o.height)},d=()=>U(n.get(),e=>c(e)),m=RG(l,s,t=>{a.get().each(o=>{e.dispatch("TableSelectorChange",{start:t,finish:o})})}),u=RG(d,a,t=>{s.get().each(o=>{e.dispatch("TableSelectorChange",{start:o,finish:t})})}),g=BG(m),h=BG(u),p=qc(g.asSpec()),f=qc(h.asSpec()),b=(t,o,n,r)=>{const s=o.dom.getBoundingClientRect();vo(t.element,"display");const a=At(Qe.fromDom(e.getBody())).dom.innerHeight,i=n(s),l=r(s,a);(i||l)&&co(t.element,"display","none")},v=(e,t,o,n)=>{const r=o(t);DG.snapTo(e,r);const s=e=>e[n]<0,a=(e,t)=>e[n]>t;b(e,t,s,a)},y=e=>v(p,e,i,"top"),w=()=>s.get().each(y),x=e=>v(f,e,c,"bottom"),C=()=>a.get().each(x);kn().deviceType.isTouch()&&(e.on("TableSelectionChange",e=>{r.get()||(rp(t,p),rp(t,f),r.set(!0)),s.set(e.start),a.set(e.finish),e.otherCells.each(t=>{o.set(t.upOrLeftCells),n.set(t.downOrRightCells),y(e.start),x(e.finish)})}),e.on("ResizeEditor ResizeWindow ScrollContent",()=>{w(),C()}),e.on("TableSelectionClear",()=>{r.get()&&(ip(p),ip(f),r.set(!1)),s.clear(),a.clear()}))};var HG='\n \n\n';const IG=e=>"BR"===e.nodeName||!!e.getAttribute("data-mce-bogus")||"bookmark"===e.getAttribute("data-mce-type"),PG=(e,t,o)=>{var n;const r=null!==(n=t.delimiter)&&void 0!==n?n:"›",s=(t,n,r)=>RC.sketch({dom:{tag:"div",classes:["tox-statusbar__path-item"],attributes:{"data-index":r,"aria-level":r+1}},components:[Zc(t)],action:t=>{e.focus(),e.selection.select(n),e.nodeChanged()},buttonBehaviours:Rm([oT.button(o.isDisabled),XO()])}),a=()=>({dom:{tag:"div",classes:["tox-statusbar__path-divider"],attributes:{"aria-hidden":!0}},components:[Zc(` ${r} `)]}),i=e=>K(e,(e,t,o)=>{const n=s(t.name,t.element,o);return 0===o?e.concat([n]):e.concat([a(),n])},[]),l=t=>{const o=[];let n=t.length;while(n-- >0){const r=t[n];if(1===r.nodeType&&!IG(r)){const t=dE(e,r);if(t.isDefaultPrevented()||o.push({name:t.name,element:r}),t.isPropagationStopped())break}}return o};return{dom:{tag:"div",classes:["tox-statusbar__path"],attributes:{role:"navigation"}},behaviours:Rm([$w.config({mode:"flow",selector:"div[role=button]"}),Jb.config({disabled:o.isDisabled}),XO(),JA.config({}),sx.config({}),ix("elementPathEvents",[qi((t,o)=>{e.shortcuts.add("alt+F11","focus statusbar elementpath",()=>$w.focusIn(t)),e.on("NodeChange",e=>{const o=l(e.parents),n=o.length>0?i(o):[];sx.set(t,n)})})])]),components:[]}};var zG;(function(e){e[e["None"]=0]="None",e[e["Both"]=1]="Both",e[e["Vertical"]=2]="Vertical"})(zG||(zG={}));const FG=(e,t,o,n,r)=>{const s={height:t$(n+t.top,dS(e),uS(e))};return o===zG.Both&&(s.width=t$(r+t.left,cS(e),mS(e))),s},VG=(e,t,o)=>{const n=Qe.fromDom(e.getContainer()),r=FG(e,t,o,Co(n),Ro(n));he(r,(e,t)=>{b(e)&&co(n,t,e$(e))}),sE(e)},ZG=e=>{const t=IS(e);return!1===t?zG.None:"both"===t?zG.Both:zG.Vertical},UG=(e,t,o,n)=>{const r=20,s=Oo(o*r,n*r);return VG(e,s,t),R.some(!0)},jG=(e,t)=>{const o=ZG(e);return o===zG.None?R.none():R.some(WC("resize-handle",{tag:"div",classes:["tox-statusbar__resize-handle"],attributes:{title:t.translate("Resize")},behaviours:[DG.config({mode:"mouse",repositionTarget:!1,onDrag:(t,n,r)=>VG(e,r,o),blockerClass:"tox-blocker"}),$w.config({mode:"special",onLeft:()=>UG(e,o,-1,0),onRight:()=>UG(e,o,1,0),onUp:()=>UG(e,o,0,-1),onDown:()=>UG(e,o,0,1)}),JA.config({}),fx.config({})]},t.icons))},$G=(e,t)=>{const o=(e,o,n)=>sx.set(e,[Zc(t.translate(["{0} "+n,o[n]]))]);return RC.sketch({dom:{tag:"button",classes:["tox-statusbar__wordcount"]},components:[],buttonBehaviours:Rm([oT.button(t.isDisabled),XO(),JA.config({}),sx.config({}),pf.config({store:{mode:"memory",initialValue:{mode:"words",count:{words:0,characters:0}}}}),ix("wordcount-events",[Yi(e=>{const t=pf.getValue(e),n="words"===t.mode?"characters":"words";pf.setValue(e,{mode:n,count:t.count}),o(e,t.count,n)}),qi(t=>{e.on("wordCountUpdate",e=>{const{mode:n}=pf.getValue(t);pf.setValue(t,{mode:n,count:e.wordCount}),o(t,e.wordCount,n)})})])]),eventOrder:{[si()]:["disabling","alloy.base.behaviour","wordcount-events"]}})},WG=(e,t)=>{const o=()=>({dom:{tag:"span",classes:["tox-statusbar__branding"]},components:[{dom:{tag:"a",attributes:{href:"https://www.tiny.cloud/powered-by-tiny?utm_campaign=editor_referral&utm_medium=poweredby&utm_source=tinymce&utm_content=v6",rel:"noopener",target:"_blank","aria-label":LC.translate(["Powered by {0}","Tiny"])},innerHtml:HG.trim()},behaviours:Rm([fx.config({})])}]}),n=()=>{const n=[];return LS(e)&&n.push(PG(e,{},t)),e.hasPlugin("wordcount")&&n.push($G(e,t)),HS(e)&&n.push(o()),n.length>0?[{dom:{tag:"div",classes:["tox-statusbar__text-container"]},components:n}]:[]},r=()=>{const o=n(),r=jG(e,t);return o.concat(r.toArray())};return{dom:{tag:"div",classes:["tox-statusbar"]},components:r()}},qG=(e,t)=>t.get().getOrDie(`UI for ${e} has not been rendered`),GG=e=>{const t=e.inline,o=t?g$:Jj,n=QS(e)?hF:yz,r=h$(),s=xu(),a=xu(),i=kn(),l=i.deviceType.isTouch(),c="tox-platform-touch",d=l?[c]:[],m=GS(e),u=vS(e),g=BC({dom:{tag:"div",classes:["tox-anchorbar"]}}),h=()=>r.mainUi.get().map(e=>e.outerContainer).bind(mU.getHeader),p=()=>ir.fromOption(r.dialogUi.get().map(e=>e.sink),"UI has not been rendered"),f=()=>ir.fromOption(r.popupUi.get().map(e=>e.sink),"(popup) UI has not been rendered"),b=r.lazyGetInOuterOrDie("anchor bar",g.getOpt),v=r.lazyGetInOuterOrDie("toolbar",mU.getToolbar),y=r.lazyGetInOuterOrDie("throbber",mU.getThrobber),w=ez({popup:f,dialog:p},e,b),x=()=>{const t={attributes:{[tg]:m?eg.BottomToTop:eg.TopToBottom}},o=mU.parts.menubar({dom:{tag:"div",classes:["tox-menubar"]},backstage:w.popup,onEscape:()=>{e.focus()}}),n=mU.parts.toolbar({dom:{tag:"div",classes:["tox-toolbar"]},getSink:w.popup.shared.getSink,providers:w.popup.shared.providers,onEscape:()=>{e.focus()},onToolbarToggled:t=>{mE(e,t)},type:u,lazyToolbar:v,lazyHeader:()=>h().getOrDie("Could not find header element"),...t}),r=mU.parts["multiple-toolbar"]({dom:{tag:"div",classes:["tox-toolbar-overlord"]},providers:w.popup.shared.providers,onEscape:()=>{e.focus()},type:u}),s=qS(e),a=$S(e),i=ZS(e),l=FS(e),c=C(),d=s||a||i,p=()=>s?[r]:a?[n]:[],f=l?[c,o]:[o];return mU.parts.header({dom:{tag:"div",classes:["tox-editor-header"].concat(d?[]:["tox-editor-header--empty"]),...t},components:Q([i?f:[],p(),YS(e)?[]:[g.asSpec()]]),sticky:QS(e),editor:e,sharedBackstage:w.popup.shared})},C=()=>mU.parts.promotion({dom:{tag:"div",classes:["tox-promotion"]}}),S=()=>{const e=mU.parts.socket({dom:{tag:"div",classes:["tox-edit-area"]}}),t=mU.parts.sidebar({dom:{tag:"div",classes:["tox-sidebar"]}});return{dom:{tag:"div",classes:["tox-sidebar-wrap"]},components:[e,t]}},_=()=>{const t=XS(e),o=_t(Xt(),t)&&"grid"===go(t,"display"),r={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-tinymce-aux"].concat(d),attributes:{...LC.isRtl()?{dir:"rtl"}:{}}},behaviours:Rm([Gh.config({useFixed:()=>n.isDocked(h)})])},s={dom:{styles:{width:document.body.clientWidth+"px"}},events:Ri([Ii(pi(),e=>{co(e.element,"width",document.body.clientWidth+"px")})])},i=qc(Or(r,o?s:{})),l=UA(i);return a.set(l),{sink:i,mothership:l}},O=k,T=()=>{const o=x(),n=S(),r=mU.parts.throbber({dom:{tag:"div",classes:["tox-throbber"]},backstage:w.popup}),a=mU.parts.viewWrapper({backstage:w.popup}),i=BS(e)&&!t?R.some(WG(e,w.popup.shared.providers)):R.none(),l=Q([m?[]:[o],t?[]:[n],m?[o]:[]]),c=mU.parts.editorContainer({components:Q([l,t?[]:i.toArray()])}),u=JS(e),g={role:"application",...LC.isRtl()?{dir:"rtl"}:{},...u?{"aria-hidden":"true"}:{}},h=qc(mU.sketch({dom:{tag:"div",classes:["tox","tox-tinymce"].concat(t?["tox-tinymce-inline"]:[]).concat(m?["tox-tinymce--toolbar-bottom"]:[]).concat(d),styles:{visibility:"hidden",...u?{opacity:"0",border:"0"}:{}},attributes:g},components:[c,...t?[]:[a],r],behaviours:Rm([XO(),Jb.config({disableClass:"tox-tinymce--disabled"}),$w.config({mode:"cyclic",selector:".tox-menubar, .tox-toolbar, .tox-toolbar__primary, .tox-toolbar__overflow--open, .tox-sidebar__overflow--open, .tox-statusbar__path, .tox-statusbar__wordcount, .tox-statusbar__branding a, .tox-statusbar__resize-handle"})])})),p=UA(h);return s.set(p),{mothership:p,outerContainer:h}},E=t=>{const o=e$(n$(e)),n=e$(s$(e));return e.inline||(bo("div","width",n)&&co(t.element,"width",n),bo("div","height",o)?co(t.element,"height",o):co(t.element,"height","400px")),o},D=t=>{e.addShortcut("alt+F9","focus menubar",()=>{mU.focusMenubar(t)}),e.addShortcut("alt+F10","focus toolbar",()=>{mU.focusToolbar(t)}),e.addCommand("ToggleToolbarDrawer",()=>{mU.toggleToolbarDrawer(t)}),e.addQueryStateHandler("ToggleToolbarDrawer",()=>mU.isToolbarDrawerToggled(t))},A=t=>{const{mainUi:r,popupUi:s,uiMotherships:a}=t;pe(yS(e),(t,o)=>{e.ui.registry.addGroupToolbarButton(o,t)});const{buttons:i,menuItems:l,contextToolbars:c,sidebars:d,views:m}=e.ui.registry.getAll(),g=WS(e),p={menuItems:l,menus:ek(e),menubar:_S(e),toolbar:g.getOrThunk(()=>OS(e)),allowToolbarGroups:u===XC.floating,buttons:i,sidebar:d,views:m};D(r.outerContainer),tz(e,r.mothership,a),n.setup(e,w.popup.shared,h),BW(e,w.popup),bq(e,w.popup.shared.getSink,w.popup),uV(e),zV(e,y,w.popup.shared),oW(e,c,s.sink,{backstage:w.popup}),LG(e,s.sink);const f=e.getElement(),b=E(r.outerContainer),v={targetNode:f,height:b};return o.render(e,t,p,w.popup,v)},M=()=>{const e=T(),t=_(),o=O(t);r.dialogUi.set(t),r.popupUi.set(o),r.mainUi.set(e);const n={popupUi:o,dialogUi:t,mainUi:e,uiMotherships:r.getUiMotherships()};return A(n)};return{popups:{backstage:w.popup,getMothership:()=>qG("popups",a)},dialogs:{backstage:w.dialog,getMothership:()=>qG("dialogs",a)},renderUI:M}},KG=(e,t)=>{const o=R.from(oo(e,"id")).fold(()=>{const e=cl("dialog-describe");return eo(t,"id",e),e},k);eo(e,"aria-describedby",o)},YG=(e,t)=>{const o=no(e,"id").fold(()=>{const e=cl("dialog-label");return eo(t,"id",e),e},k);eo(e,"aria-labelledby",o)},XG=S([Rs("lazySink"),js("dragBlockClass"),sa("getBounds",nr),Qs("useTabstopAt",M),Qs("eventOrder",{}),ff("modalBehaviours",[$w]),Dd("onExecute"),Md("onEscape")]),JG={sketch:k},QG=S([Yf({name:"draghandle",overrides:(e,t)=>({behaviours:Rm([DG.config({mode:"mouse",getTarget:e=>td(e,'[role="dialog"]').getOr(e),blockerClass:e.dragBlockClass.getOrDie(new Error("The drag blocker class was not specified for a dialog with a drag handle: \n"+JSON.stringify(t,null,2)).message),getBounds:e.getDragBounds})])})}),Gf({schema:[Rs("dom")],name:"title"}),Gf({factory:JG,schema:[Rs("dom")],name:"close"}),Gf({factory:JG,schema:[Rs("dom")],name:"body"}),Yf({factory:JG,schema:[Rs("dom")],name:"footer"}),Kf({factory:{sketch:(e,t)=>({...e,dom:t.dom,components:t.components})},schema:[Qs("dom",{tag:"div",styles:{position:"fixed",left:"0px",top:"0px",right:"0px",bottom:"0px"}}),Qs("components",[])],name:"blocker"})]),eK=(e,t,o,n)=>{const r=xu(),s=t=>{r.set(t);const o=e.lazySink(t).getOrDie(),s=n.blocker(),a=o.getSystem().build({...s,components:s.components.concat([Gc(t)]),behaviours:Rm([fx.config({}),ix("dialog-blocker-events",[Wi(Za(),()=>{$w.focusIn(t)})])])});rp(o,a),$w.focusIn(t)},a=e=>{r.clear(),Mt(e.element).each(t=>{e.getSystem().getByDom(t).each(e=>{ip(e)})})},i=t=>db(t,e,"body"),l=t=>db(t,e,"footer"),c=(e,t)=>{EV.block(e,t)},d=e=>{EV.unblock(e)},m=cl("modal-events"),u={...e.eventOrder,[fi()]:[m].concat(e.eventOrder["alloy.system.attached"]||[])};return{uid:e.uid,dom:e.dom,components:t,apis:{show:s,hide:a,getBody:i,getFooter:l,setIdle:d,setBusy:c},eventOrder:u,domModification:{attributes:{role:"dialog","aria-modal":"true"}},behaviours:vf(e.modalBehaviours,[sx.config({}),$w.config({mode:"cyclic",onEnter:e.onExecute,onEscape:e.onEscape,useTabstopAt:e.useTabstopAt}),EV.config({getRoot:r.get}),ix(m,[qi(t=>{YG(t.element,db(t,e,"title").element),KG(t.element,db(t,e,"body").element)})])])}},tK=Eb({name:"ModalDialog",configFields:XG(),partFields:QG(),factory:eK,apis:{show:(e,t)=>{e.show(t)},hide:(e,t)=>{e.hide(t)},getBody:(e,t)=>e.getBody(t),getFooter:(e,t)=>e.getFooter(t),setBusy:(e,t,o)=>{e.setBusy(t,o)},setIdle:(e,t)=>{e.setIdle(t)}}}),oK=rs([u_,g_].concat(hO)),nK=hs,rK=[z_("button"),O_,na("align","end",["start","end"]),B_,R_,Gs("buttonType",["primary","secondary"])],sK=[...rK,p_],aK=[Is("type",["submit","cancel","custom"]),...sK],iK=[Is("type",["menu"]),__,T_,O_,Us("items",oK),...rK],lK=Es("type",{submit:aK,cancel:aK,custom:aK,menu:iK}),cK=[u_,p_,Is("level",["info","warn","error","success"]),b_,Qs("url","")],dK=rs(cK),mK=e=>[u_,e],uK=[u_,p_,R_,z_("button"),O_,N_,Gs("buttonType",["primary","secondary","toolbar"]),B_],gK=rs(uK),hK=[u_,g_],pK=hK.concat([E_]),fK=hK.concat([h_,R_]),bK=rs(fK),vK=hs,yK=pK.concat([L_("auto")]),wK=rs(yK),xK=cs([v_,p_,b_]),CK=pK.concat([oa("storageKey","default")]),SK=rs(CK),kK=gs,_K=pK,OK=rs(_K),TK=gs,EK=hK.concat([oa("tag","textarea"),Hs("scriptId"),Hs("scriptUrl"),aa("settings",void 0)]),DK=hK.concat([oa("tag","textarea"),zs("init")]),AK=xs(e=>ks("customeditor.old",ns(DK),e).orThunk(()=>ks("customeditor.new",ns(EK),e))),MK=gs,NK=pK,RK=rs(NK),BK=ws(),LK=e=>[u_,Ls("columns"),e],HK=[u_,Hs("html"),na("presets","presentation",["presentation","document"])],IK=rs(HK),PK=pK.concat([ra("sandboxed",!0),ra("transparent",!0)]),zK=rs(PK),FK=gs,VK=rs(hK.concat([qs("height")])),ZK=rs([Hs("url"),Ws("zoom"),Ws("cachedWidth"),Ws("cachedHeight")]),UK=pK.concat([qs("inputMode"),qs("placeholder"),ra("maximized",!1),R_]),jK=rs(UK),$K=gs,WK=e=>[u_,h_,e],qK=[p_,v_],GK=[p_,Us("items",Ds("items",()=>KK))],KK=as([rs(qK),rs(GK)]),YK=pK.concat([Us("items",KK),R_]),XK=rs(YK),JK=gs,QK=pK.concat([Zs("items",[p_,v_]),ta("size",1),R_]),eY=rs(QK),tY=gs,oY=pK.concat([ra("constrain",!0),R_]),nY=rs(oY),rY=rs([Hs("width"),Hs("height")]),sY=hK.concat([h_,ta("min",0),ta("max",0)]),aY=rs(sY),iY=us,lY=[u_,Us("header",gs),Us("cells",ss(gs))],cY=rs(lY),dY=pK.concat([qs("placeholder"),ra("maximized",!1),R_]),mY=rs(dY),uY=gs,gY=pK.concat([na("filetype","file",["image","media","file"]),R_]),hY=rs(gY),pY=rs([v_,H_]),fY=e=>As("items","items",Er(),ss(xs(t=>ks(`Checking item of ${e}`,bY,t).fold(e=>ir.error(Ts(e)),e=>ir.value(e))))),bY=ts(()=>ys("type",{alertbanner:dK,bar:rs(mK(fY("bar"))),button:gK,checkbox:bK,colorinput:SK,colorpicker:OK,dropzone:RK,grid:rs(LK(fY("grid"))),iframe:zK,input:jK,listbox:XK,selectbox:eY,sizeinput:nY,slider:aY,textarea:mY,urlinput:hY,customeditor:AK,htmlpanel:IK,imagepreview:VK,collection:wK,label:rs(WK(fY("label"))),table:cY,panel:yY})),vY=[u_,Qs("classes",[]),Us("items",bY)],yY=rs(vY),wY=[z_("tab"),f_,Us("items",bY)],xY=[u_,Zs("tabs",wY)],CY=rs(xY),SY=sK,kY=lK,_Y=rs([Hs("title"),Bs("body",ys("type",{panel:yY,tabpanel:CY})),oa("size","normal"),Us("buttons",kY),Qs("initialData",{}),sa("onAction",y),sa("onChange",y),sa("onSubmit",y),sa("onClose",y),sa("onCancel",y),sa("onTabChange",y)]),OY=e=>ks("dialog",_Y,e),TY=rs([Is("type",["cancel","custom"]),...SY]),EY=rs([Hs("title"),Hs("url"),Ws("height"),Ws("width"),Ys("buttons",TY),sa("onAction",y),sa("onCancel",y),sa("onClose",y),sa("onMessage",y)]),DY=e=>ks("dialog",EY,e),AY=e=>l(e)?[e].concat(ee(Se(e),AY)):d(e)?ee(e,AY):[],MY=e=>i(e.type)&&i(e.name),NY={checkbox:vK,colorinput:kK,colorpicker:TK,dropzone:BK,input:$K,iframe:FK,imagepreview:ZK,selectbox:tY,sizeinput:rY,slider:iY,listbox:JK,size:rY,textarea:uY,urlinput:pY,customeditor:MK,collection:xK,togglemenuitem:nK},RY=e=>R.from(NY[e.type]),BY=e=>q(AY(e),MY),LY=e=>{const t=BY(e),o=ee(t,e=>RY(e).fold(()=>[],t=>[Bs(e.name,t)]));return rs(o)},HY=e=>{var t;const o=_s(OY(e)),n=LY(e),r=null!==(t=e.initialData)&&void 0!==t?t:{};return{internalDialog:o,dataValidator:n,initialData:r}},IY={open:(e,t)=>{const o=HY(t);return e(o.internalDialog,o.initialData,o.dataValidator)},openUrl:(e,t)=>{const o=_s(DY(t));return e(o)},redial:e=>HY(e)},PY=e=>{const t=[],o={};return he(e,(e,n)=>{e.fold(()=>{t.push(n)},e=>{o[n]=e})}),t.length>0?ir.error(t):ir.value(o)},zY=(e,t,o)=>{const n=BC(yB.sketch(n=>({dom:{tag:"div",classes:["tox-form"].concat(e.classes)},components:U(e.items,e=>pI(n,e,t,o))})));return{dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[n.asSpec()]}],behaviours:Rm([$w.config({mode:"acyclic",useTabstopAt:T(tL)}),AB.memento(n),PB.memento(n,{postprocess:e=>PY(e).fold(e=>(console.error(e),{}),k)})])}},FY=(e,t)=>({uid:e.uid,dom:e.dom,components:e.components,events:Ix(e.action),behaviours:vf(e.tabButtonBehaviours,[fx.config({}),$w.config({mode:"execution",useSpace:!0,useEnter:!0}),pf.config({store:{mode:"memory",initialValue:e.value}})]),domModification:e.domModification}),VY=Tb({name:"TabButton",configFields:[Qs("uid",void 0),Rs("value"),As("dom","dom",Nr(()=>({attributes:{role:"tab",id:cl("aria"),"aria-selected":"false"}})),ds()),js("action"),Qs("domModification",{}),ff("tabButtonBehaviours",[fx,$w,pf]),Rs("view")],factory:FY}),ZY=S([Rs("tabs"),Rs("dom"),Qs("clickToDismiss",!1),ff("tabbarBehaviours",[vv,$w]),Od(["tabClass","selectedClass"])]),UY=Xf({factory:VY,name:"tabs",unit:"tab",overrides:e=>{const t=(e,t)=>{vv.dehighlight(e,t),Ti(e,Si(),{tabbar:e,button:t})},o=(e,t)=>{vv.highlight(e,t),Ti(e,Ci(),{tabbar:e,button:t})};return{action:n=>{const r=n.getSystem().getByUid(e.uid).getOrDie(),s=vv.isHighlighted(r,n),a=(()=>s&&e.clickToDismiss?t:s?y:o)();a(r,n)},domModification:{classes:[e.markers.tabClass]}}}}),jY=S([UY]),$Y=(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,"debug.sketcher":"Tabbar",domModification:{attributes:{role:"tablist"}},behaviours:vf(e.tabbarBehaviours,[vv.config({highlightClass:e.markers.selectedClass,itemClass:e.markers.tabClass,onHighlight:(e,t)=>{eo(t.element,"aria-selected","true")},onDehighlight:(e,t)=>{eo(t.element,"aria-selected","false")}}),$w.config({mode:"flow",getInitial:e=>vv.getHighlighted(e).map(e=>e.element),selector:"."+e.markers.tabClass,executeOnMove:!0})])}),WY=Eb({name:"Tabbar",configFields:ZY(),partFields:jY(),factory:$Y}),qY=(e,t)=>({uid:e.uid,dom:e.dom,behaviours:vf(e.tabviewBehaviours,[sx.config({})]),domModification:{attributes:{role:"tabpanel"}}}),GY=Tb({name:"Tabview",configFields:[ff("tabviewBehaviours",[sx])],factory:qY}),KY=S([Qs("selectFirst",!0),Ed("onChangeTab"),Ed("onDismissTab"),Qs("tabs",[]),ff("tabSectionBehaviours",[])]),YY=Gf({factory:WY,schema:[Rs("dom"),Vs("markers",[Rs("tabClass"),Rs("selectedClass")])],name:"tabbar",defaults:e=>({tabs:e.tabs})}),XY=Gf({factory:GY,name:"tabview"}),JY=S([YY,XY]),QY=(e,t,o,n)=>{const r=t=>{const o=pf.getValue(t);cb(t,e,"tabview").each(n=>{const r=X(e.tabs,e=>e.value===o);r.each(o=>{const r=o.view();no(t.element,"id").each(e=>{eo(n.element,"aria-labelledby",e)}),sx.set(n,r),e.onChangeTab(n,t,r)})})},s=(t,o)=>{cb(t,e,"tabbar").each(e=>{o(e).each(Ei)})};return{uid:e.uid,dom:e.dom,components:t,behaviours:bf(e.tabSectionBehaviours),events:Ri(Q([e.selectFirst?[qi((e,t)=>{s(e,vv.getFirst)})]:[],[Ii(Ci(),(e,t)=>{const o=t.event.button;r(o)}),Ii(Si(),(t,o)=>{const n=o.event.button;e.onDismissTab(t,n)})]])),apis:{getViewItems:t=>cb(t,e,"tabview").map(e=>sx.contents(e)).getOr([]),showTab:(e,t)=>{const o=e=>{const o=vv.getCandidates(e),n=X(o,e=>pf.getValue(e)===t);return n.filter(t=>!vv.isHighlighted(e,t))};s(e,o)}}}},eX=Eb({name:"TabSection",configFields:KY(),partFields:JY(),factory:QY,apis:{getViewItems:(e,t)=>e.getViewItems(t),showTab:(e,t,o)=>{e.showTab(t,o)}}}),tX=(e,t,o)=>U(e,(n,r)=>{sx.set(o,e[r].view());const s=t.dom.getBoundingClientRect();return sx.set(o,[]),s.height}),oX=e=>le(ae(e,(e,t)=>e>t?-1:e{const n=Dt(e).dom,r=td(e,".tox-dialog-wrap").getOr(e),s="fixed"===go(r,"position");let a;a=s?Math.max(n.clientHeight,window.innerHeight):Math.max(n.offsetHeight,n.scrollHeight);const i=Co(t),l=t.dom.offsetLeft>=o.dom.offsetLeft+Ro(o),c=l?Math.max(Co(o),i):i,d=parseInt(go(e,"margin-top"),10)||0,m=parseInt(go(e,"margin-bottom"),10)||0,u=Co(e)+d+m,g=u-c;return a-g},rX=(e,t)=>{le(e).each(e=>eX.showTab(t,e.value))},sX=(e,t)=>{co(e,"height",t+"px"),co(e,"flex-basis",t+"px")},aX=(e,t,o)=>{td(e,'[role="dialog"]').each(e=>{nd(e,'[role="tablist"]').each(n=>{o.get().map(o=>(co(t,"height","0"),co(t,"flex-basis","0"),Math.min(o,nX(e,t,n)))).each(e=>{sX(t,e)})})})},iX=e=>nd(e,'[role="tabpanel"]'),lX=e=>{const t=xu(),o=[qi(o=>{const n=o.element;iX(n).each(r=>{co(r,"visibility","hidden"),o.getSystem().getByDom(r).toOptional().each(o=>{const n=tX(e,r,o),s=oX(n);s.fold(t.clear,t.set)}),aX(n,r,t),vo(r,"visibility"),rX(e,o),requestAnimationFrame(()=>{aX(n,r,t)})})}),Ii(pi(),e=>{const o=e.element;iX(o).each(e=>{aX(o,e,t)})}),Ii(hM,(e,o)=>{const n=e.element;iX(n).each(e=>{const o=$m(Ut(e));co(e,"visibility","hidden");const r=po(e,"height").map(e=>parseInt(e,10));vo(e,"height"),vo(e,"flex-basis");const s=e.dom.getBoundingClientRect().height,a=r.forall(e=>s>e);a?(t.set(s),aX(n,e,t)):r.each(t=>{sX(e,t)}),vo(e,"visibility"),o.each(Zm)})})],n=!1;return{extraEvents:o,selectFirst:n}},cX="send-data-to-section",dX="send-data-to-view",mX=(e,t,o)=>{const n=ca({}),r=e=>{const t=pf.getValue(e),o=PY(t).getOr({}),r=n.get(),s=Or(r,o);n.set(s)},s=e=>{const t=n.get();pf.setValue(e,t)},a=ca(null),i=U(e.tabs,e=>({value:e.name,dom:{tag:"div",classes:["tox-dialog__body-nav-item"]},components:[Zc(o.shared.providers.translate(e.title))],view:()=>[yB.sketch(n=>({dom:{tag:"div",classes:["tox-form"]},components:U(e.items,e=>pI(n,e,t,o)),formBehaviours:Rm([$w.config({mode:"acyclic",useTabstopAt:T(tL)}),ix("TabView.form.events",[qi(s),Gi(r)]),zm.config({channels:va([{key:cX,value:{onReceive:r}},{key:dX,value:{onReceive:s}}])})])}))]})),l=lX(i);return eX.sketch({dom:{tag:"div",classes:["tox-dialog__body"]},onChangeTab:(e,t,o)=>{const n=pf.getValue(t);Ti(e,gM,{name:n,oldName:a.get()}),a.set(n)},tabs:i,components:[eX.parts.tabbar({dom:{tag:"div",classes:["tox-dialog__body-nav"]},components:[WY.parts.tabs({})],markers:{tabClass:"tox-tab",selectedClass:"tox-dialog__body-nav-item--active"},tabbarBehaviours:Rm([JA.config({})])}),eX.parts.tabview({dom:{tag:"div",classes:["tox-dialog__body-content"]}})],selectFirst:l.selectFirst,tabSectionBehaviours:Rm([ix("tabpanel",l.extraEvents),$w.config({mode:"acyclic"}),Rb.config({find:e=>le(eX.getViewItems(e))}),PB.withComp(R.none(),e=>(e.getSystem().broadcastOn([cX],{}),n.get()),(e,t)=>{n.set(t),e.getSystem().broadcastOn([dX],{})})])})},uX=cl("update-dialog"),gX=cl("update-title"),hX=cl("update-body"),pX=cl("update-footer"),fX=cl("body-send-message"),bX=(e,t,o,n,r)=>{const s=e=>{const t=e.body;switch(t.type){case"tabpanel":return[mX(t,e.initialData,n)];default:return[zY(t,e.initialData,n)]}},a=(e,t)=>R.some({isTabPanel:()=>"tabpanel"===t.body.type}),i={"aria-live":"polite"};return{dom:{tag:"div",classes:["tox-dialog__content-js"],attributes:{...o.map(e=>({id:e})).getOr({}),...r?i:{}}},components:[],behaviours:Rm([AB.childAt(0),pj.config({channel:`${hX}-${t}`,updateState:a,renderComponents:s,initialData:e})])}},vX=(e,t,o,n,r)=>bX(e,t,R.some(o),n,r),yX=(e,t,o)=>{const n=bX(e,t,R.none(),o,!1);return tK.parts.body(n)},wX=e=>{const t={dom:{tag:"div",classes:["tox-dialog__content-js"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-iframe"]},components:[JB({dom:{tag:"iframe",attributes:{src:e.url}},behaviours:Rm([JA.config({}),fx.config({})])})]}],behaviours:Rm([$w.config({mode:"acyclic",useTabstopAt:T(tL)})])};return tK.parts.body(t)};function xX(e){return xX="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xX(e)}function CX(e,t){return CX=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},CX(e,t)}function SX(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function kX(e,t,o){return kX=SX()?Reflect.construct:function(e,t,o){var n=[null];n.push.apply(n,t);var r=Function.bind.apply(e,n),s=new r;return o&&CX(s,o.prototype),s},kX.apply(null,arguments)}function _X(e){return OX(e)||TX(e)||EX(e)||AX()}function OX(e){if(Array.isArray(e))return DX(e)}function TX(e){if("undefined"!==typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function EX(e,t){if(e){if("string"===typeof e)return DX(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);return"Object"===o&&e.constructor&&(o=e.constructor.name),"Map"===o||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?DX(e,t):void 0}}function DX(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=new Array(t);o1?o-1:0),r=1;r/gm),fJ=IX(/^data-[\-\w.\u00B7-\uFFFF]/),bJ=IX(/^aria-[\-\w]+$/),vJ=IX(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),yJ=IX(/^(?:\w+script|data):/i),wJ=IX(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),xJ=IX(/^html$/i),CJ=function(){return"undefined"===typeof window?null:window},SJ=function(e,t){if("object"!==xX(e)||"function"!==typeof e.createPolicy)return null;var o=null,n="data-tt-policy-suffix";t.currentScript&&t.currentScript.hasAttribute(n)&&(o=t.currentScript.getAttribute(n));var r="dompurify"+(o?"#"+o:"");try{return e.createPolicy(r,{createHTML:function(e){return e}})}catch(s){return console.warn("TrustedTypes policy "+r+" could not be created."),null}};function kJ(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:CJ(),t=function(e){return kJ(e)};if(t.version="2.3.8",t.removed=[],!e||!e.document||9!==e.document.nodeType)return t.isSupported=!1,t;var o=e.document,n=e.document,r=e.DocumentFragment,s=e.HTMLTemplateElement,a=e.Node,i=e.Element,l=e.NodeFilter,c=e.NamedNodeMap,d=void 0===c?e.NamedNodeMap||e.MozNamedAttrMap:c,m=e.HTMLFormElement,u=e.DOMParser,g=e.trustedTypes,h=i.prototype,p=oJ(h,"cloneNode"),f=oJ(h,"nextSibling"),b=oJ(h,"childNodes"),v=oJ(h,"parentNode");if("function"===typeof s){var y=n.createElement("template");y.content&&y.content.ownerDocument&&(n=y.content.ownerDocument)}var w=SJ(g,o),x=w?w.createHTML(""):"",C=n,S=C.implementation,k=C.createNodeIterator,_=C.createDocumentFragment,O=C.getElementsByTagName,T=o.importNode,E={};try{E=tJ(n).documentMode?n.documentMode:{}}catch(Ve){}var D={};t.isSupported="function"===typeof v&&S&&"undefined"!==typeof S.createHTMLDocument&&9!==E;var A,M,N=hJ,R=pJ,B=fJ,L=bJ,H=yJ,I=wJ,P=vJ,z=null,F=eJ({},[].concat(_X(nJ),_X(rJ),_X(sJ),_X(iJ),_X(cJ))),V=null,Z=eJ({},[].concat(_X(dJ),_X(mJ),_X(uJ),_X(gJ))),U=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),j=null,$=null,W=!0,q=!0,G=!1,K=!1,Y=!1,X=!1,J=!1,Q=!1,ee=!1,te=!1,oe=!0,ne=!0,re=!1,se={},ae=null,ie=eJ({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),le=null,ce=eJ({},["audio","video","img","source","image","track"]),de=null,me=eJ({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ue="http://www.w3.org/1998/Math/MathML",ge="http://www.w3.org/2000/svg",he="http://www.w3.org/1999/xhtml",pe=he,fe=!1,be=["application/xhtml+xml","text/html"],ve="text/html",ye=null,we=n.createElement("form"),xe=function(e){return e instanceof RegExp||e instanceof Function},Ce=function(e){ye&&ye===e||(e&&"object"===xX(e)||(e={}),e=tJ(e),z="ALLOWED_TAGS"in e?eJ({},e.ALLOWED_TAGS):F,V="ALLOWED_ATTR"in e?eJ({},e.ALLOWED_ATTR):Z,de="ADD_URI_SAFE_ATTR"in e?eJ(tJ(me),e.ADD_URI_SAFE_ATTR):me,le="ADD_DATA_URI_TAGS"in e?eJ(tJ(ce),e.ADD_DATA_URI_TAGS):ce,ae="FORBID_CONTENTS"in e?eJ({},e.FORBID_CONTENTS):ie,j="FORBID_TAGS"in e?eJ({},e.FORBID_TAGS):{},$="FORBID_ATTR"in e?eJ({},e.FORBID_ATTR):{},se="USE_PROFILES"in e&&e.USE_PROFILES,W=!1!==e.ALLOW_ARIA_ATTR,q=!1!==e.ALLOW_DATA_ATTR,G=e.ALLOW_UNKNOWN_PROTOCOLS||!1,K=e.SAFE_FOR_TEMPLATES||!1,Y=e.WHOLE_DOCUMENT||!1,Q=e.RETURN_DOM||!1,ee=e.RETURN_DOM_FRAGMENT||!1,te=e.RETURN_TRUSTED_TYPE||!1,J=e.FORCE_BODY||!1,oe=!1!==e.SANITIZE_DOM,ne=!1!==e.KEEP_CONTENT,re=e.IN_PLACE||!1,P=e.ALLOWED_URI_REGEXP||P,pe=e.NAMESPACE||he,e.CUSTOM_ELEMENT_HANDLING&&xe(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(U.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&xe(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(U.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"===typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(U.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),A=A=-1===be.indexOf(e.PARSER_MEDIA_TYPE)?ve:e.PARSER_MEDIA_TYPE,M="application/xhtml+xml"===A?function(e){return e}:$X,K&&(q=!1),ee&&(Q=!0),se&&(z=eJ({},_X(cJ)),V=[],!0===se.html&&(eJ(z,nJ),eJ(V,dJ)),!0===se.svg&&(eJ(z,rJ),eJ(V,mJ),eJ(V,gJ)),!0===se.svgFilters&&(eJ(z,sJ),eJ(V,mJ),eJ(V,gJ)),!0===se.mathMl&&(eJ(z,iJ),eJ(V,uJ),eJ(V,gJ))),e.ADD_TAGS&&(z===F&&(z=tJ(z)),eJ(z,e.ADD_TAGS)),e.ADD_ATTR&&(V===Z&&(V=tJ(V)),eJ(V,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&eJ(de,e.ADD_URI_SAFE_ATTR),e.FORBID_CONTENTS&&(ae===ie&&(ae=tJ(ae)),eJ(ae,e.FORBID_CONTENTS)),ne&&(z["#text"]=!0),Y&&eJ(z,["html","head","body"]),z.table&&(eJ(z,["tbody"]),delete j.tbody),HX&&HX(e),ye=e)},Se=eJ({},["mi","mo","mn","ms","mtext"]),ke=eJ({},["foreignobject","desc","title","annotation-xml"]),_e=eJ({},["title","style","font","a","script"]),Oe=eJ({},rJ);eJ(Oe,sJ),eJ(Oe,aJ);var Te=eJ({},iJ);eJ(Te,lJ);var Ee=function(e){var t=v(e);t&&t.tagName||(t={namespaceURI:he,tagName:"template"});var o=$X(e.tagName),n=$X(t.tagName);return e.namespaceURI===ge?t.namespaceURI===he?"svg"===o:t.namespaceURI===ue?"svg"===o&&("annotation-xml"===n||Se[n]):Boolean(Oe[o]):e.namespaceURI===ue?t.namespaceURI===he?"math"===o:t.namespaceURI===ge?"math"===o&&ke[n]:Boolean(Te[o]):e.namespaceURI===he&&(!(t.namespaceURI===ge&&!ke[n])&&(!(t.namespaceURI===ue&&!Se[n])&&(!Te[o]&&(_e[o]||!Oe[o]))))},De=function(e){jX(t.removed,{element:e});try{e.parentNode.removeChild(e)}catch(Ve){try{e.outerHTML=x}catch(Ve){e.remove()}}},Ae=function(e,o){try{jX(t.removed,{attribute:o.getAttributeNode(e),from:o})}catch(Ve){jX(t.removed,{attribute:null,from:o})}if(o.removeAttribute(e),"is"===e&&!V[e])if(Q||ee)try{De(o)}catch(Ve){}else try{o.setAttribute(e,"")}catch(Ve){}},Me=function(e){var t,o;if(J)e=""+e;else{var r=WX(e,/^[\r\n\t ]+/);o=r&&r[0]}"application/xhtml+xml"===A&&(e=''+e+"");var s=w?w.createHTML(e):e;if(pe===he)try{t=(new u).parseFromString(s,A)}catch(Ve){}if(!t||!t.documentElement){t=S.createDocument(pe,"template",null);try{t.documentElement.innerHTML=fe?"":s}catch(Ve){}}var a=t.body||t.documentElement;return e&&o&&a.insertBefore(n.createTextNode(o),a.childNodes[0]||null),pe===he?O.call(t,Y?"html":"body")[0]:Y?t.documentElement:a},Ne=function(e){return k.call(e.ownerDocument||e,e,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},Re=function(e){return e instanceof m&&("string"!==typeof e.nodeName||"string"!==typeof e.textContent||"function"!==typeof e.removeChild||!(e.attributes instanceof d)||"function"!==typeof e.removeAttribute||"function"!==typeof e.setAttribute||"string"!==typeof e.namespaceURI||"function"!==typeof e.insertBefore)},Be=function(e){return"object"===xX(a)?e instanceof a:e&&"object"===xX(e)&&"number"===typeof e.nodeType&&"string"===typeof e.nodeName},Le=function(e,o,n){D[e]&&ZX(D[e],function(e){e.call(t,o,n,ye)})},He=function(e){var o;if(Le("beforeSanitizeElements",e,null),Re(e))return De(e),!0;if(YX(/[\u0080-\uFFFF]/,e.nodeName))return De(e),!0;var n=M(e.nodeName);if(Le("uponSanitizeElement",e,{tagName:n,allowedTags:z}),e.hasChildNodes()&&!Be(e.firstElementChild)&&(!Be(e.content)||!Be(e.content.firstElementChild))&&YX(/<[/\w]/g,e.innerHTML)&&YX(/<[/\w]/g,e.textContent))return De(e),!0;if("select"===n&&YX(/