UNPKG

tinymce

Version:

Web based JavaScript HTML WYSIWYG editor control.

3 lines 449 kB
!function(){"use strict";const e=Object.getPrototypeOf,t=(e,t,o)=>!!o(e,t.prototype)||e.constructor?.name===t.name,o=e=>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})(o)===e,n=e=>t=>typeof t===e,s=e=>t=>e===t,r=o("string"),a=o("object"),i=o=>((o,n)=>a(o)&&t(o,n,(t,o)=>e(t)===o))(o,Object),l=o("array"),c=s(null),d=n("boolean"),u=s(void 0),m=e=>null==e,g=e=>!m(e),p=n("function"),h=n("number"),f=(e,t)=>{if(l(e)){for(let o=0,n=e.length;o<n;++o)if(!t(e[o]))return!1;return!0}return!1},b=()=>{},v=e=>()=>e(),x=(e,t)=>(...o)=>e(t.apply(null,o)),y=e=>()=>e,w=e=>e,S=(e,t)=>e===t;function C(e,...t){return(...o)=>{const n=t.concat(o);return e.apply(null,n)}}const k=e=>t=>!e(t),O=e=>()=>{throw new Error(e)},_=e=>e(),T=y(!1),E=y(!0);class A{tag;value;static singletonNone=new A(!1);constructor(e,t){this.tag=e,this.value=t}static some(e){return new A(!0,e)}static none(){return A.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?A.some(e(this.value)):A.none()}bind(e){return this.tag?e(this.value):A.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:A.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(e??"Called getOrDie on None")}static from(e){return g(e)?A.some(e):A.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()"}}const D=Array.prototype.slice,M=Array.prototype.indexOf,B=Array.prototype.push,I=(e,t)=>M.call(e,t),F=(e,t)=>I(e,t)>-1,R=(e,t)=>{for(let o=0,n=e.length;o<n;o++)if(t(e[o],o))return!0;return!1},N=(e,t)=>{const o=[];for(let n=0;n<e;n++)o.push(t(n));return o},z=(e,t)=>{const o=[];for(let n=0;n<e.length;n+=t){const s=D.call(e,n,n+t);o.push(s)}return o},V=(e,t)=>{const o=e.length,n=new Array(o);for(let s=0;s<o;s++){const o=e[s];n[s]=t(o,s)}return n},L=(e,t)=>{for(let o=0,n=e.length;o<n;o++)t(e[o],o)},H=(e,t)=>{const o=[],n=[];for(let s=0,r=e.length;s<r;s++){const r=e[s];(t(r,s)?o:n).push(r)}return{pass:o,fail:n}},P=(e,t)=>{const o=[];for(let n=0,s=e.length;n<s;n++){const s=e[n];t(s,n)&&o.push(s)}return o},U=(e,t,o)=>(((e,t)=>{for(let o=e.length-1;o>=0;o--)t(e[o],o)})(e,(e,n)=>{o=t(o,e,n)}),o),W=(e,t,o)=>(L(e,(e,n)=>{o=t(o,e,n)}),o),j=(e,t)=>((e,t,o)=>{for(let n=0,s=e.length;n<s;n++){const s=e[n];if(t(s,n))return A.some(s);if(o(s,n))break}return A.none()})(e,t,T),$=(e,t)=>{for(let o=0,n=e.length;o<n;o++)if(t(e[o],o))return A.some(o);return A.none()},G=e=>{const t=[];for(let o=0,n=e.length;o<n;++o){if(!l(e[o]))throw new Error("Arr.flatten item "+o+" was not an array, input: "+e);B.apply(t,e[o])}return t},q=(e,t)=>G(V(e,t)),Y=(e,t)=>{for(let o=0,n=e.length;o<n;++o)if(!0!==t(e[o],o))return!1;return!0},X=e=>{const t=D.call(e,0);return t.reverse(),t},K=(e,t)=>P(e,e=>!F(t,e)),J=(e,t)=>{const o={};for(let n=0,s=e.length;n<s;n++){const s=e[n];o[String(s)]=t(s,n)}return o},Q=e=>[e],Z=(e,t)=>{const o=D.call(e,0);return o.sort(t),o},ee=(e,t)=>t>=0&&t<e.length?A.some(e[t]):A.none(),te=e=>ee(e,0),oe=e=>ee(e,e.length-1),ne=p(Array.from)?Array.from:e=>D.call(e),se=(e,t)=>{for(let o=0;o<e.length;o++){const n=t(e[o],o);if(n.isSome())return n}return A.none()},re=Object.keys,ae=Object.hasOwnProperty,ie=(e,t)=>{const o=re(e);for(let n=0,s=o.length;n<s;n++){const s=o[n];t(e[s],s)}},le=(e,t)=>ce(e,(e,o)=>({k:o,v:t(e,o)})),ce=(e,t)=>{const o={};return ie(e,(e,n)=>{const s=t(e,n);o[s.k]=s.v}),o},de=e=>(t,o)=>{e[o]=t},ue=(e,t,o,n)=>{ie(e,(e,s)=>{(t(e,s)?o:n)(e,s)})},me=(e,t)=>{const o={};return ue(e,t,de(o),b),o},ge=(e,t)=>{const o=[];return ie(e,(e,n)=>{o.push(t(e,n))}),o},pe=(e,t)=>{const o=re(e);for(let n=0,s=o.length;n<s;n++){const s=o[n],r=e[s];if(t(r,s,e))return A.some(r)}return A.none()},he=e=>ge(e,w),fe=(e,t)=>be(e,t)?A.from(e[t]):A.none(),be=(e,t)=>ae.call(e,t),ve=(e,t)=>be(e,t)&&void 0!==e[t]&&null!==e[t],xe=e=>{if(!l(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 L(e,(n,s)=>{const r=re(n);if(1!==r.length)throw new Error("one and only one name per case");const a=r[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(!l(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);return{fold:(...t)=>{if(t.length!==e.length)throw new Error("Wrong number of arguments to fold. Expected "+e.length+", got "+t.length);return t[s].apply(null,o)},match:e=>{const n=re(e);if(t.length!==n.length)throw new Error("Wrong number of arguments to match. Expected: "+t.join(",")+"\nActual: "+n.join(","));if(!Y(t,e=>F(n,e)))throw new Error("Not all branches were specified when using match. Specified: "+n.join(", ")+"\nRequired: "+t.join(", "));return e[a].apply(null,o)},log:e=>{console.log(e,{constructors:t,constructor:a,params:o})}}}}),o},ye=e=>{let t=e;return{get:()=>t,set:e=>{t=e}}},we=e=>{let t=A.none(),o=[];const n=e=>{s()?r(e):o.push(e)},s=()=>t.isSome(),r=e=>{t.each(t=>{setTimeout(()=>{e(t)},0)})};return e(e=>{s()||(t=A.some(e),L(o,r),o=[])}),{get:n,map:e=>we(t=>{n(o=>{t(e(o))})}),isReady:s}},Se={nu:we,pure:e=>we(t=>{t(e)})},Ce=e=>{setTimeout(()=>{throw e},0)},ke=e=>{const t=t=>{e().then(t,Ce)};return{map:t=>ke(()=>e().then(t)),bind:t=>ke(()=>e().then(e=>t(e).toPromise())),anonBind:t=>ke(()=>e().then(()=>t.toPromise())),toLazy:()=>Se.nu(t),toCached:()=>{let t=null;return ke(()=>(null===t&&(t=e()),t))},toPromise:e,get:t}},Oe=e=>ke(()=>new Promise(e)),_e=e=>ke(()=>Promise.resolve(e)),Te=e=>{const t=t=>t(e),o=y(e),n=()=>s,s={tag:!0,inner:e,fold:(t,o)=>o(e),isValue:E,isError:T,map:t=>Ae.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:()=>A.some(e)};return s},Ee=e=>{const t=()=>o,o={tag:!1,inner:e,fold:(t,o)=>t(e),isValue:T,isError:E,map:t,mapError:t=>Ae.error(t(e)),bind:t,exists:T,forall:E,getOr:w,or:w,getOrThunk:_,orThunk:_,getOrDie:O(String(e)),each:b,toOptional:A.none};return o},Ae={value:Te,error:Ee,fromOption:(e,t)=>e.fold(()=>Ee(t),Te)},De=e=>({...e,toCached:()=>De(e.toCached()),bindFuture:t=>De(e.bind(e=>e.fold(e=>_e(Ae.error(e)),e=>t(e)))),bindResult:t=>De(e.map(e=>e.bind(t))),mapResult:t=>De(e.map(e=>e.map(t))),mapError:t=>De(e.map(e=>e.mapError(t))),foldResult:(t,o)=>e.map(e=>e.fold(t,o)),withTimeout:(t,o)=>De(Oe(n=>{let s=!1;const r=setTimeout(()=>{s=!0,n(Ae.error(o()))},t);e.get(e=>{s||(clearTimeout(r),n(e))})}))}),Me=e=>De(Oe(e)),Be="undefined"!=typeof window?window:Function("return this;")(),Ie=(e,t,o,n)=>{const s=e+t;return s>n?o:s<o?n:s},Fe=(e,t,o)=>Math.min(Math.max(e,t),o);let Re=0;const Ne=e=>{const t=(new Date).getTime(),o=Math.floor(window.crypto.getRandomValues(new Uint32Array(1))[0]/4294967295*1e9);return Re++,e+"_"+o+Re+String(t)},ze=e=>(...t)=>{if(0===t.length)throw new Error("Can't merge zero objects");const o={};for(let n=0;n<t.length;n++){const s=t[n];for(const t in s)be(s,t)&&(o[t]=e(o[t],s[t]))}return o},Ve=ze((e,t)=>i(e)&&i(t)?Ve(e,t):t),Le=ze((e,t)=>t),He=(e,t,o=S)=>e.exists(e=>o(e,t)),Pe=e=>{const t=[],o=e=>{t.push(e)};for(let t=0;t<e.length;t++)e[t].each(o);return t},Ue=(e,t,o)=>e.isSome()&&t.isSome()?A.some(o(e.getOrDie(),t.getOrDie())):A.none(),We=(e,t)=>null!=e?A.some(t(e)):A.none(),je=(e,t)=>e?A.some(t):A.none(),$e=(e,t)=>((e,t)=>{let o=null!=t?t:Be;for(let t=0;t<e.length&&null!=o;++t)o=o[e[t]];return o})(e.split("."),t);xe([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]);const Ge=e=>{const t=ye(A.none()),o=()=>t.get().each(e);return{clear:()=>{o(),t.set(A.none())},isSet:()=>t.get().isSome(),get:()=>t.get(),set:e=>{o(),t.set(A.some(e))}}},qe=()=>Ge(e=>e.unbind()),Ye=()=>{const e=Ge(b);return{...e,on:t=>e.get().each(t)}},Xe=(e,t,o)=>""===t||e.length>=t.length&&e.substr(o,o+t.length)===t,Ke=(e,t)=>Qe(e,t)?((e,t)=>e.substring(t))(e,t.length):e,Je=(e,t,o=0,n)=>{const s=e.indexOf(t,o);return-1!==s&&(!!u(n)||s+t.length<=n)},Qe=(e,t)=>Xe(e,t,0),Ze=(e,t)=>Xe(e,t,e.length-t.length),et=(bt=/^\s+|\s+$/g,e=>e.replace(bt,"")),tt=e=>e.length>0,ot=e=>!tt(e),nt=(e,t)=>{let o=null;const n=()=>{c(o)||(clearTimeout(o),o=null)};return{cancel:n,throttle:(...s)=>{n(),o=setTimeout(()=>{o=null,e.apply(null,s)},t)}}},st=e=>{let t,o=!1;return(...n)=>(o||(o=!0,t=e.apply(null,n)),t)},rt=e=>{if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}},at=(e,t)=>{const o=(t||document).createElement("div");if(o.innerHTML=e,!o.hasChildNodes()||o.childNodes.length>1){const t="HTML does not have a single root node";throw console.error(t,e),new Error(t)}return rt(o.childNodes[0])},it=(e,t)=>{const o=(t||document).createElement(e);return rt(o)},lt=(e,t)=>{const o=(t||document).createTextNode(e);return rt(o)},ct=rt,dt=(e,t,o)=>{const n=e.document.createRange();var s;return s=n,t.fold(e=>{s.setStartBefore(e.dom)},(e,t)=>{s.setStart(e.dom,t)},e=>{s.setStartAfter(e.dom)}),((e,t)=>{t.fold(t=>{e.setEndBefore(t.dom)},(t,o)=>{e.setEnd(t.dom,o)},t=>{e.setEndAfter(t.dom)})})(n,o),n},ut=(e,t,o,n,s)=>{const r=e.document.createRange();return r.setStart(t.dom,o),r.setEnd(n.dom,s),r},mt=e=>({left:e.left,top:e.top,right:e.right,bottom:e.bottom,width:e.width,height:e.height}),gt=xe([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),pt=(e,t,o)=>t(ct(o.startContainer),o.startOffset,ct(o.endContainer),o.endOffset),ht=(e,t)=>{const o=((e,t)=>t.match({domRange:e=>({ltr:y(e),rtl:A.none}),relative:(t,o)=>({ltr:st(()=>dt(e,t,o)),rtl:st(()=>A.some(dt(e,o,t)))}),exact:(t,o,n,s)=>({ltr:st(()=>ut(e,t,o,n,s)),rtl:st(()=>A.some(ut(e,n,s,t,o)))})}))(e,t);return((e,t)=>{const o=t.ltr();return o.collapsed?t.rtl().filter(e=>!1===e.collapsed).map(e=>gt.rtl(ct(e.endContainer),e.endOffset,ct(e.startContainer),e.startOffset)).getOrThunk(()=>pt(0,gt.ltr,o)):pt(0,gt.ltr,o)})(0,o)},ft=(e,t)=>ht(e,t).match({ltr:(t,o,n,s)=>{const r=e.document.createRange();return r.setStart(t.dom,o),r.setEnd(n.dom,s),r},rtl:(t,o,n,s)=>{const r=e.document.createRange();return r.setStart(n.dom,s),r.setEnd(t.dom,o),r}});var bt;gt.ltr,gt.rtl;const vt=(e,t)=>{const o=e.dom;if(1!==o.nodeType)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")}},xt=e=>1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType||0===e.childElementCount,yt=(e,t)=>{const o=void 0===t?document:t.dom;return xt(o)?A.none():A.from(o.querySelector(e)).map(ct)},wt=(e,t)=>e.dom===t.dom,St=(e,t)=>{const o=e.dom,n=t.dom;return o!==n&&o.contains(n)},Ct=()=>kt(0,0),kt=(e,t)=>({major:e,minor:t}),Ot={nu:kt,detect:(e,t)=>{const o=String(t).toLowerCase();return 0===e.length?Ct():((e,t)=>{const o=((e,t)=>{for(let o=0;o<e.length;o++){const n=e[o];if(n.test(t))return n}})(e,t);if(!o)return{major:0,minor:0};const n=e=>Number(t.replace(o,"$"+e));return kt(n(1),n(2))})(e,o)},unknown:Ct},_t=(e,t)=>{const o=String(t).toLowerCase();return j(e,e=>e.search(o))},Tt=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Et=e=>t=>Je(t,e),At=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:e=>Je(e,"edge/")&&Je(e,"chrome")&&Je(e,"safari")&&Je(e,"applewebkit")},{name:"Chromium",brand:"Chromium",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Tt],search:e=>Je(e,"chrome")&&!Je(e,"chromeframe")},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:e=>Je(e,"msie")||Je(e,"trident")},{name:"Opera",versionRegexes:[Tt,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Et("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Et("firefox")},{name:"Safari",versionRegexes:[Tt,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:e=>(Je(e,"safari")||Je(e,"mobile/"))&&Je(e,"applewebkit")}],Dt=[{name:"Windows",search:Et("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:e=>Je(e,"iphone")||Je(e,"ipad"),versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Et("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"macOS",search:Et("mac os x"),versionRegexes:[/.*?mac\ os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Et("linux"),versionRegexes:[]},{name:"Solaris",search:Et("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Et("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Et("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],Mt={browsers:y(At),oses:y(Dt)},Bt="Edge",It="Chromium",Ft="Opera",Rt="Firefox",Nt="Safari",zt=e=>{const t=e.current,o=e.version,n=e=>()=>t===e;return{current:t,version:o,isEdge:n(Bt),isChromium:n(It),isIE:n("IE"),isOpera:n(Ft),isFirefox:n(Rt),isSafari:n(Nt)}},Vt=()=>zt({current:void 0,version:Ot.unknown()}),Lt=zt,Ht=(y(Bt),y(It),y("IE"),y(Ft),y(Rt),y(Nt),"Windows"),Pt="Android",Ut="Linux",Wt="macOS",jt="Solaris",$t="FreeBSD",Gt="ChromeOS",qt=e=>{const t=e.current,o=e.version,n=e=>()=>t===e;return{current:t,version:o,isWindows:n(Ht),isiOS:n("iOS"),isAndroid:n(Pt),isMacOS:n(Wt),isLinux:n(Ut),isSolaris:n(jt),isFreeBSD:n($t),isChromeOS:n(Gt)}},Yt=()=>qt({current:void 0,version:Ot.unknown()}),Xt=qt,Kt=(y(Ht),y("iOS"),y(Pt),y(Ut),y(Wt),y(jt),y($t),y(Gt),e=>window.matchMedia(e).matches);let Jt=st(()=>((e,t,o)=>{const n=Mt.browsers(),s=Mt.oses(),r=t.bind(e=>((e,t)=>se(t.brands,t=>{const o=t.brand.toLowerCase();return j(e,e=>o===e.brand?.toLowerCase()).map(e=>({current:e.name,version:Ot.nu(parseInt(t.version,10),0)}))}))(n,e)).orThunk(()=>((e,t)=>_t(e,t).map(e=>{const o=Ot.detect(e.versionRegexes,t);return{current:e.name,version:o}}))(n,e)).fold(Vt,Lt),a=((e,t)=>_t(e,t).map(e=>{const o=Ot.detect(e.versionRegexes,t);return{current:e.name,version:o}}))(s,e).fold(Yt,Xt),i=((e,t,o,n)=>{const s=e.isiOS()&&!0===/ipad/i.test(o),r=e.isiOS()&&!s,a=e.isiOS()||e.isAndroid(),i=a||n("(pointer:coarse)"),l=s||!r&&a&&n("(min-device-width:768px)"),c=r||a&&!l,d=t.isSafari()&&e.isiOS()&&!1===/safari/i.test(o),u=!c&&!l&&!d;return{isiPad:y(s),isiPhone:y(r),isTablet:y(l),isPhone:y(c),isTouch:y(i),isAndroid:e.isAndroid,isiOS:e.isiOS,isWebView:y(d),isDesktop:y(u)}})(a,r,e,o);return{browser:r,os:a,deviceType:i}})(window.navigator.userAgent,A.from(window.navigator.userAgentData),Kt));const Qt=()=>Jt(),Zt=Object.getPrototypeOf,eo=e=>{const t=$e("ownerDocument.defaultView",e);return a(e)&&((e=>((e,t)=>{const o=((e,t)=>$e(e,t))(e,t);if(null==o)throw new Error(e+" not available on this browser");return o})("HTMLElement",e))(t).prototype.isPrototypeOf(e)||/^HTML\w*Element$/.test(Zt(e).constructor.name))},to=e=>e.dom.nodeName.toLowerCase(),oo=e=>t=>(e=>e.dom.nodeType)(t)===e,no=e=>so(e)&&eo(e.dom),so=oo(1),ro=oo(3),ao=oo(9),io=oo(11),lo=e=>t=>so(t)&&to(t)===e,co=e=>ct(e.dom.ownerDocument),uo=e=>ao(e)?e:co(e),mo=e=>ct(uo(e).dom.documentElement),go=e=>ct(uo(e).dom.defaultView),po=e=>A.from(e.dom.parentNode).map(ct),ho=e=>A.from(e.dom.parentElement).map(ct),fo=e=>A.from(e.dom.offsetParent).map(ct),bo=e=>A.from(e.dom.previousSibling).map(ct),vo=e=>A.from(e.dom.nextSibling).map(ct),xo=e=>V(e.dom.childNodes,ct),yo=(e,t)=>{const o=e.dom.childNodes;return A.from(o[t]).map(ct)},wo=e=>yo(e,0),So=(e,t)=>({element:e,offset:t}),Co=(e,t)=>{const o=xo(e);return o.length>0&&t<o.length?So(o[t],0):So(e,t)},ko=e=>io(e)&&g(e.dom.host),Oo=e=>ct(e.dom.getRootNode()),_o=e=>ko(e)?e:ct(uo(e).dom.body),To=e=>{const t=Oo(e);return ko(t)?A.some(t):A.none()},Eo=e=>ct(e.dom.host),Ao=e=>{const t=ct((e=>{if(g(e.target)){const t=ct(e.target);if(so(t)&&(e=>g(e.dom.shadowRoot))(t)&&e.composed&&e.composedPath){const t=e.composedPath();if(t)return te(t)}}return A.from(e.target)})(e).getOr(e.target)),o=()=>e.stopPropagation(),n=()=>e.preventDefault(),s=x(n,o);return((e,t,o,n,s,r,a)=>({target:e,x:t,y:o,stop:n,prevent:s,kill:r,raw:a}))(t,e.clientX,e.clientY,o,n,s,e)},Do=(e,t,o,n,s)=>{const r=((e,t)=>o=>{e(o)&&t(Ao(o))})(o,n);return e.dom.addEventListener(t,r,s),{unbind:C(Mo,e,t,r,s)}},Mo=(e,t,o,n)=>{e.dom.removeEventListener(t,o,n)},Bo=E,Io=(e,t,o)=>((e,t,o,n)=>Do(e,t,o,n,!1))(e,t,Bo,o),Fo=(e,t,o)=>((e,t,o,n)=>Do(e,t,o,n,!0))(e,t,Bo,o),Ro=Ao,No=()=>ct(document),zo=(e,t=!1)=>e.dom.focus({preventScroll:t}),Vo=e=>e.dom.blur(),Lo=e=>{const t=Oo(e).dom;return e.dom===t.activeElement},Ho=(e=No())=>A.from(e.dom.activeElement).map(ct),Po=e=>Ho(Oo(e)).filter(t=>e.dom.contains(t.dom)),Uo=(e,t)=>{po(e).each(o=>{o.dom.insertBefore(t.dom,e.dom)})},Wo=(e,t)=>{vo(e).fold(()=>{po(e).each(e=>{$o(e,t)})},e=>{Uo(e,t)})},jo=(e,t)=>{wo(e).fold(()=>{$o(e,t)},o=>{e.dom.insertBefore(t.dom,o.dom)})},$o=(e,t)=>{e.dom.appendChild(t.dom)},Go=(e,t)=>{L(t,t=>{$o(e,t)})},qo=(e,t,o)=>{if(!(r(o)||d(o)||h(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+"")},Yo=(e,t,o)=>{qo(e.dom,t,o)},Xo=(e,t)=>{const o=e.dom;ie(t,(e,t)=>{qo(o,t,e)})},Ko=(e,t)=>{const o=e.dom.getAttribute(t);return null===o?void 0:o},Jo=(e,t)=>A.from(Ko(e,t)),Qo=(e,t)=>{const o=e.dom;return!(!o||!o.hasAttribute)&&o.hasAttribute(t)},Zo=(e,t)=>{e.dom.removeAttribute(t)},en=e=>{e.dom.textContent="",L(xo(e),e=>{tn(e)})},tn=e=>{const t=e.dom;null!==t.parentNode&&t.parentNode.removeChild(t)},on=(e,t)=>ct(e.dom.cloneNode(t)),nn=e=>e.dom.innerHTML,sn=(e,t)=>{const o=co(e).dom,n=ct(o.createDocumentFragment()),s=((e,t)=>{const o=(t||document).createElement("div");return o.innerHTML=e,xo(ct(o))})(t,o);Go(n,s),en(e),$o(e,n)},rn=e=>new Promise((t,o)=>{const n=()=>{r(),t(e)},s=[Io(e,"load",n),Io(e,"error",()=>{r(),o("Unable to load data from image: "+e.dom.src)})],r=()=>L(s,e=>e.unbind());e.dom.complete&&n()}),an=e=>void 0!==e.style&&p(e.style.getPropertyValue),ln=e=>{const t=ro(e)?e.dom.parentNode:e.dom;if(null==t||null===t.ownerDocument)return!1;const o=t.ownerDocument;return To(ct(t)).fold(()=>o.body.contains(t),(n=ln,s=Eo,e=>n(s(e))));var n,s},cn=()=>dn(ct(document)),dn=e=>{const t=e.dom.body;if(null==t)throw new Error("Body is not available yet");return ct(t)},un=(e,t,o)=>{if(!r(o))throw console.error("Invalid call to CSS.set. Property ",t,":: Value ",o,":: Element ",e),new Error("CSS value must be a string: "+o);an(e)&&e.style.setProperty(t,o)},mn=(e,t)=>{an(e)&&e.style.removeProperty(t)},gn=(e,t,o)=>{const n=e.dom;un(n,t,o)},pn=(e,t)=>{const o=e.dom;ie(t,(e,t)=>{un(o,t,e)})},hn=(e,t)=>{const o=e.dom;ie(t,(e,t)=>{e.fold(()=>{mn(o,t)},e=>{un(o,t,e)})})},fn=(e,t)=>{const o=e.dom,n=window.getComputedStyle(o).getPropertyValue(t);return""!==n||ln(e)?n:bn(o,t)},bn=(e,t)=>an(e)?e.style.getPropertyValue(t):"",vn=(e,t)=>{const o=e.dom,n=bn(o,t);return A.from(n).filter(e=>e.length>0)},xn=e=>{const t={},o=e.dom;if(an(o))for(let e=0;e<o.style.length;e++){const n=o.style.item(e);t[n]=o.style[n]}return t},yn=(e,t,o)=>{const n=it(e);return gn(n,t,o),vn(n,t).isSome()},wn=(e,t)=>{const o=e.dom;mn(o,t),He(Jo(e,"style").map(et),"")&&Zo(e,"style")},Sn=e=>e.dom.offsetWidth,Cn=(e,t)=>{const o=o=>{const n=t(o);if(n<=0||null===n){const t=fn(o,e);return parseFloat(t)||0}return n},n=(e,t)=>W(t,(t,o)=>{const n=fn(e,o),s=void 0===n?0:parseInt(n,10);return isNaN(s)?t:t+s},0);return{set:(t,o)=>{if(!h(o)&&!o.match(/^[0-9]+$/))throw new Error(e+".set accepts only positive integer values. Value was "+o);const n=t.dom;an(n)&&(n.style[e]=o+"px")},get:o,getOuter:o,aggregate:n,max:(e,t,o)=>{const s=n(e,o);return t>s?t-s:0}}},kn=Cn("height",e=>{const t=e.dom;return ln(e)?t.getBoundingClientRect().height:t.offsetHeight}),On=e=>kn.get(e),_n=e=>kn.getOuter(e),Tn=e=>!(e=>e.offsetWidth<=0&&e.offsetHeight<=0)(e.dom),En=Cn("width",e=>{const t=e.dom;return ln(e)?t.getBoundingClientRect().width:t.offsetWidth}),An=e=>En.get(e),Dn=e=>En.getOuter(e),Mn=(e,t)=>({left:e,top:t,translate:(o,n)=>Mn(e+o,t+n)}),Bn=Mn,In=(e,t)=>void 0!==e?e:void 0!==t?t:0,Fn=e=>{const t=e.dom.ownerDocument,o=t.body,n=t.defaultView,s=t.documentElement;if(o===e.dom)return Bn(o.offsetLeft,o.offsetTop);const r=In(n?.pageYOffset,s.scrollTop),a=In(n?.pageXOffset,s.scrollLeft),i=In(s.clientTop,o.clientTop),l=In(s.clientLeft,o.clientLeft);return Rn(e).translate(a-l,r-i)},Rn=e=>{const t=e.dom,o=t.ownerDocument.body;return o===t?Bn(o.offsetLeft,o.offsetTop):ln(e)?(e=>{const t=e.getBoundingClientRect();return Bn(t.left,t.top)})(t):Bn(0,0)},Nn=e=>{const t=void 0!==e?e.dom:document,o=t.body.scrollLeft||t.documentElement.scrollLeft,n=t.body.scrollTop||t.documentElement.scrollTop;return Bn(o,n)},zn=(e,t,o)=>{const n=(void 0!==o?o.dom:document).defaultView;n&&n.scrollTo(e,t)},Vn=(e=>{const t=t=>e(t)?A.from(t.dom.nodeValue):A.none();return{get:o=>{if(!e(o))throw new Error("Can only get text value of a text node");return t(o).getOr("")},getOption:t,set:(t,o)=>{if(!e(t))throw new Error("Can only set raw text value of a text node");t.dom.nodeValue=o}}})(ro),Ln=(e,t)=>o=>"rtl"===Hn(o)?t:e,Hn=e=>"rtl"===fn(e,"direction")?"rtl":"ltr",Pn=(e,t)=>{const o=Ko(e,t);return void 0===o||""===o?[]:o.split(" ")};var Un=(e,t,o,n,s)=>e(o,n)?A.some(o):p(s)&&s(o)?A.none():t(o,n,s);const Wn=(e,t,o)=>{let n=e.dom;const s=p(o)?o:T;for(;n.parentNode;){n=n.parentNode;const e=ct(n);if(t(e))return A.some(e);if(s(e))break}return A.none()},jn=(e,t,o)=>Un((e,t)=>t(e),Wn,e,t,o),$n=(e,t)=>j(e.dom.childNodes,e=>t(ct(e))).map(ct),Gn=(e,t,o)=>Wn(e,e=>vt(e,t),o),qn=(e,t)=>(e=>{const o=e.dom;return o.parentNode?$n(ct(o.parentNode),o=>!wt(e,o)&&vt(o,t)):A.none()})(e),Yn=(e,t)=>$n(e,e=>vt(e,t)),Xn=(e,t)=>yt(t,e),Kn=(e,t,o)=>Un((e,t)=>vt(e,t),Gn,e,t,o),Jn=(e,t)=>{e.dom.checked=t},Qn=e=>e.dom.checked,Zn=e=>void 0!==e.dom.classList,es=e=>Pn(e,"class"),ts=(e,t)=>((e,t,o)=>{const n=Pn(e,t).concat([o]);return Yo(e,t,n.join(" ")),!0})(e,"class",t),os=(e,t)=>((e,t,o)=>{const n=P(Pn(e,t),e=>e!==o);return n.length>0?Yo(e,t,n.join(" ")):Zo(e,t),!1})(e,"class",t),ns=(e,t)=>{Zn(e)?e.dom.classList.add(t):ts(e,t)},ss=e=>{0===(Zn(e)?e.dom.classList:es(e)).length&&Zo(e,"class")},rs=(e,t)=>{Zn(e)?e.dom.classList.remove(t):os(e,t),ss(e)},as=(e,t)=>Zn(e)&&e.dom.classList.contains(t),is=(e,t)=>{L(t,t=>{ns(e,t)})},ls=(e,t)=>{L(t,t=>{rs(e,t)})},cs=e=>Zn(e)?(e=>{const t=e.dom.classList,o=new Array(t.length);for(let e=0;e<t.length;e++){const n=t.item(e);null!==n&&(o[e]=n)}return o})(e):es(e),ds=e=>e.dom.value,us=(e,t)=>{if(void 0===t)throw new Error("Value.set was undefined");e.dom.value=t},ms=(e,t,o)=>P(((e,t)=>{const o=p(t)?t:T;let n=e.dom;const s=[];for(;null!==n.parentNode&&void 0!==n.parentNode;){const e=n.parentNode,t=ct(e);if(s.push(t),!0===o(t))break;n=e}return s})(e,o),t),gs=(e,t)=>((e,t)=>{const o=void 0===t?document:t.dom;return xt(o)?[]:V(o.querySelectorAll(e),ct)})(t,e),ps=(e,t,o)=>jn(e,t,o).isSome(),hs=(e,t,o)=>Kn(e,t,o).isSome(),fs=e=>p(e)?e:T,bs=(e,t,o)=>{let n=e.dom;const s=fs(o);for(;n.parentNode;){n=n.parentNode;const e=ct(n),o=t(e);if(o.isSome())return o;if(s(e))break}return A.none()},vs=(e,t,o)=>{const n=t(e),s=fs(o);return n.orThunk(()=>s(e)?A.none():bs(e,t,s))},xs=(e,t,o,n)=>({start:e,soffset:t,finish:o,foffset:n}),ys=xe([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),ws={before:ys.before,on:ys.on,after:ys.after,cata:(e,t,o,n)=>e.fold(t,o,n),getStart:e=>e.fold(w,w,w)},Ss=xe([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Cs={domRange:Ss.domRange,relative:Ss.relative,exact:Ss.exact,exactFromRange:e=>Ss.exact(e.start,e.soffset,e.finish,e.foffset),getWin:e=>{const t=(e=>e.match({domRange:e=>ct(e.startContainer),relative:(e,t)=>ws.getStart(e),exact:(e,t,o,n)=>e}))(e);return go(t)},range:xs},ks=(e,t)=>{const o=to(e);return"input"===o?ws.after(e):F(["br","img"],o)?0===t?ws.before(e):ws.after(e):ws.on(e,t)},Os=e=>A.from(e.getSelection()),_s=(e,t,o,n,s)=>{((e,t)=>{Os(e).each(e=>{e.removeAllRanges(),e.addRange(t)})})(e,ut(e,t,o,n,s))},Ts=e=>{if(e.rangeCount>0){const t=e.getRangeAt(0),o=e.getRangeAt(e.rangeCount-1);return A.some(xs(ct(t.startContainer),t.startOffset,ct(o.endContainer),o.endOffset))}return A.none()},Es=e=>{if(null===e.anchorNode||null===e.focusNode)return Ts(e);{const t=ct(e.anchorNode),o=ct(e.focusNode);return((e,t,o,n)=>{const s=((e,t,o,n)=>{const s=co(e).dom.createRange();return s.setStart(e.dom,t),s.setEnd(o.dom,n),s})(e,t,o,n),r=wt(e,o)&&t===n;return s.collapsed&&!r})(t,e.anchorOffset,o,e.focusOffset)?A.some(xs(t,e.anchorOffset,o,e.focusOffset)):Ts(e)}},As=e=>Os(e).filter(e=>e.rangeCount>0).bind(Es),Ds=(e,t)=>(e=>{const t=e.getClientRects(),o=t.length>0?t[0]:e.getBoundingClientRect();return o.width>0||o.height>0?A.some(o).map(mt):A.none()})(ft(e,t)),Ms={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:[""]},Bs=(()=>{const e="[0-9]+",t="[eE][+-]?"+e,o=e=>`(?:${e})?`,n=["Infinity",e+"\\."+o(e)+o(t),"\\."+e+o(t),e+o(t)].join("|");return new RegExp(`^([+-]?(?:${n}))(.*)$`)})(),Is=(e,t)=>A.from(Bs.exec(e)).bind(e=>{const o=Number(e[1]),n=e[2];return((e,t)=>R(t,t=>R(Ms[t],t=>e===t)))(n,t)?A.some({value:o,unit:n}):A.none()}),Fs=(e,t,o,n)=>({x:e,y:t,width:o,height:n,right:e+o,bottom:t+n}),Rs=e=>{const t=void 0===e?window:e,o=t.document,n=Nn(ct(o));return(e=>{const t=void 0===e?window:e;return Qt().browser.isFirefox()?A.none():A.from(t.visualViewport)})(t).fold(()=>{const e=t.document.documentElement,o=e.clientWidth,s=e.clientHeight;return Fs(n.left,n.top,o,s)},e=>Fs(Math.max(e.pageLeft,n.left),Math.max(e.pageTop,n.top),e.width,e.height))},Ns=(e,t)=>e.view(t).fold(y([]),t=>{const o=e.owner(t),n=Ns(e,o);return[t].concat(n)});var zs=Object.freeze({__proto__:null,view:e=>(e.dom===document?A.none():A.from(e.dom.defaultView?.frameElement)).map(ct),owner:e=>co(e)});const Vs=e=>{const t=No(),o=Nn(t),n=((e,t)=>{const o=t.owner(e),n=Ns(t,o);return A.some(n)})(e,zs);return n.fold(C(Fn,e),t=>{const n=Rn(e),s=U(t,(e,t)=>{const o=Rn(t);return{left:e.left+o.left,top:e.top+o.top}},{left:0,top:0});return Bn(s.left+n.left+o.left,s.top+n.top+o.top)})},Ls=(e,t,o,n)=>({x:e,y:t,width:o,height:n,right:e+o,bottom:t+n}),Hs=e=>{const t=Fn(e),o=Dn(e),n=_n(e);return Ls(t.left,t.top,o,n)},Ps=e=>{const t=Vs(e),o=Dn(e),n=_n(e);return Ls(t.left,t.top,o,n)},Us=(e,t)=>{const o=Math.max(e.x,t.x),n=Math.max(e.y,t.y),s=Math.min(e.right,t.right),r=Math.min(e.bottom,t.bottom);return Ls(o,n,s-o,r-n)},Ws=()=>Rs(window),js=(e,t)=>wt(e.element,t.event.target),$s=e=>(He(vn(e,"position"),"fixed")?A.none():fo(e)).orThunk(()=>{const t=it("span");return po(e).bind(e=>{$o(e,t);const o=fo(t);return tn(t),o})}),Gs=e=>$s(e).map(Fn).getOrThunk(()=>Bn(0,0)),qs=(e,t)=>{const o=A.from(Ko(e,"id")).getOrThunk(()=>{const e=Ne("aria");return Yo(t,"id",e),e});Yo(e,"aria-describedby",o)};var Ys;!function(e){e[e.Error=0]="Error",e[e.Value=1]="Value"}(Ys||(Ys={}));const Xs=(e,t,o)=>e.stype===Ys.Error?t(e.serror):o(e.svalue),Ks=e=>({stype:Ys.Value,svalue:e}),Js=e=>({stype:Ys.Error,serror:e}),Qs=Ks,Zs=Js,er=Xs,tr=e=>a(e)&&re(e).length>100?" removed due to size":JSON.stringify(e,null,2),or=(e,t)=>Zs([{path:e,getErrorInfo:t}]),nr=e=>({extract:(t,o)=>((e,t)=>e.stype===Ys.Error?t(e.serror):e)(e(o),e=>((e,t)=>or(e,y(t)))(t,e)),toString:y("val")}),sr=nr(Qs),rr=y(sr),ar=(e,t)=>nr(o=>{const n=typeof o;return e(o)?Qs(o):Zs(`Expected type: ${t} but got: ${n}`)}),ir=ar(h,"number"),lr=ar(r,"string"),cr=ar(d,"boolean"),dr=ar(p,"function"),ur=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=>ur(e[t]));default:return!1}},mr=nr(e=>ur(e)?Qs(e):Zs("Expected value to be acceptable for sending via postMessage")),gr=e=>({tag:"defaultedThunk",process:e}),pr=e=>gr(y(e)),hr=e=>({tag:"mergeWithThunk",process:e}),fr=(e,t,o,n)=>({tag:"field",key:e,newKey:t,presence:o,prop:n}),br=(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)}},vr=e=>{const t=(e=>{const t=[],o=[];return L(e,e=>{Xs(e,e=>o.push(e),e=>t.push(e))}),{values:t,errors:o}})(e);return t.errors.length>0?(o=t.errors,x(Zs,G)(o)):Qs(t.values);var o},xr=(e,t,o,n)=>n(fe(e,t).getOrThunk(()=>o(e))),yr=(e,t,o,n,s)=>{const r=e=>s.extract(t.concat([n]),e),a=e=>e.fold(()=>Qs(A.none()),e=>((e,t)=>e.stype===Ys.Value?{stype:Ys.Value,svalue:t(e.svalue)}:e)(s.extract(t.concat([n]),e),A.some));switch(e.tag){case"required":return((e,t,o,n)=>fe(t,o).fold(()=>((e,t,o)=>or(e,()=>'Could not find valid *required* value for "'+t+'" in '+tr(o)))(e,o,t),n))(t,o,n,r);case"defaultedThunk":return xr(o,n,e.process,r);case"option":return((e,t,o)=>o(fe(e,t)))(o,n,a);case"defaultedOptionThunk":return((e,t,o,n)=>n(fe(e,t).map(t=>!0===t?o(e):t)))(o,n,e.process,a);case"mergeWithThunk":return xr(o,n,y({}),t=>{const n=Ve(e.process(o),t);return r(n)})}},wr=e=>({extract:(t,o)=>e().extract(t,o),toString:()=>e().toString()}),Sr=e=>re(me(e,g)),Cr=e=>{const t=kr(e),o=U(e,(e,t)=>br(t,t=>Ve(e,{[t]:!0}),y(e)),{});return{extract:(e,n)=>{const s=d(n)?[]:Sr(n),r=P(s,e=>!ve(o,e));return 0===r.length?t.extract(e,n):((e,t)=>or(e,()=>"There are unsupported fields: ["+t.join(", ")+"] specified"))(e,r)},toString:t.toString}},kr=e=>({extract:(t,o)=>((e,t,o)=>{const n={},s=[];for(const r of o)br(r,(o,r,a,i)=>{const l=yr(a,e,t,o,i);er(l,e=>{s.push(...e)},e=>{n[r]=e})},(e,o)=>{n[e]=o(t)});return s.length>0?Zs(s):Qs(n)})(t,o,e),toString:()=>{const t=V(e,e=>br(e,(e,t,o,n)=>e+" -> "+n.toString(),(e,t)=>"state("+e+")"));return"obj{\n"+t.join("\n")+"}"}}),Or=e=>({extract:(t,o)=>{const n=V(o,(o,n)=>e.extract(t.concat(["["+n+"]"]),o));return vr(n)},toString:()=>"array("+e.toString()+")"}),_r=(e,t)=>{const o=void 0!==t?t:w;return{extract:(t,n)=>{const s=[];for(const r of e){const e=r.extract(t,n);if(e.stype===Ys.Value)return{stype:Ys.Value,svalue:o(e.svalue)};s.push(e)}return vr(s)},toString:()=>"oneOf("+V(e,e=>e.toString()).join(", ")+")"}},Tr=(e,t)=>({extract:(o,n)=>{const s=re(n),r=((t,o)=>Or(nr(e)).extract(t,o))(o,s);return((e,t)=>e.stype===Ys.Value?t(e.svalue):e)(r,e=>{const s=V(e,e=>fr(e,e,{tag:"required",process:{}},t));return kr(s).extract(o,n)})},toString:()=>"setOf("+t.toString()+")"}),Er=x(Or,kr),Ar=(e,t)=>({extract:(o,n)=>fe(n,e).fold(()=>((e,t)=>or(e,()=>'Choice schema did not contain choice key: "'+t+'"'))(o,e),e=>((e,t,o,n)=>fe(o,n).fold(()=>((e,t,o)=>or(e,()=>'The chosen schema: "'+o+'" did not exist in branches: '+tr(t)))(e,o,n),o=>o.extract(e.concat(["branch: "+n]),t)))(o,n,t,e)),toString:()=>"chooseOn("+e+"). Possible values: "+re(t)}),Dr=e=>nr(t=>e(t).fold(Zs,Qs)),Mr=(e,t)=>Tr(t=>e(t).fold(Js,Ks),t),Br=(e,t,o)=>{return n=((e,t,o)=>((e,t)=>e.stype===Ys.Error?{stype:Ys.Error,serror:t(e.serror)}:e)(t.extract([e],o),e=>({input:o,errors:e})))(e,t,o),Xs(n,Ae.error,Ae.value);var n},Ir=e=>e.fold(e=>{throw new Error(Rr(e))},w),Fr=(e,t,o)=>Ir(Br(e,t,o)),Rr=e=>"Errors: \n"+(e=>{const t=e.length>10?e.slice(0,10).concat([{path:[],getErrorInfo:y("... (only showing first ten failures)")}]):e;return V(t,e=>"Failed path: ("+e.path.join(" > ")+")\n"+e.getErrorInfo())})(e.errors).join("\n")+"\n\nInput object: "+tr(e.input),Nr=(e,t)=>Ar(e,le(t,kr)),zr=(e,t)=>((e,t)=>{const o=st(t);return{extract:(e,t)=>o().extract(e,t),toString:()=>o().toString()}})(0,t),Vr=fr,Lr=(e,t)=>({tag:"custom",newKey:e,instantiator:t}),Hr=e=>Dr(t=>F(e,t)?Ae.value(t):Ae.error(`Unsupported value: "${t}", choose one of "${e.join(", ")}".`)),Pr=e=>Vr(e,e,{tag:"required",process:{}},rr()),Ur=(e,t)=>Vr(e,e,{tag:"required",process:{}},t),Wr=e=>Ur(e,ir),jr=e=>Ur(e,lr),$r=(e,t)=>Vr(e,e,{tag:"required",process:{}},Hr(t)),Gr=e=>Ur(e,dr),qr=(e,t)=>Vr(e,e,{tag:"required",process:{}},kr(t)),Yr=(e,t)=>Vr(e,e,{tag:"required",process:{}},Er(t)),Xr=(e,t)=>Vr(e,e,{tag:"required",process:{}},Or(t)),Kr=e=>Vr(e,e,{tag:"option",process:{}},rr()),Jr=(e,t)=>Vr(e,e,{tag:"option",process:{}},t),Qr=e=>Jr(e,ir),Zr=e=>Jr(e,lr),ea=(e,t)=>Jr(e,Hr(t)),ta=e=>Jr(e,dr),oa=(e,t)=>Jr(e,Or(t)),na=(e,t)=>Jr(e,kr(t)),sa=(e,t)=>Vr(e,e,pr(t),rr()),ra=(e,t,o)=>Vr(e,e,pr(t),o),aa=(e,t)=>ra(e,t,ir),ia=(e,t)=>ra(e,t,lr),la=(e,t,o)=>ra(e,t,Hr(o)),ca=(e,t)=>ra(e,t,cr),da=(e,t)=>ra(e,t,dr),ua=(e,t,o)=>ra(e,t,Or(o)),ma=(e,t,o)=>ra(e,t,kr(o)),ga=(e,t)=>((e,t)=>({[e]:t}))(e,t),pa=e=>(e=>{const t={};return L(e,e=>{t[e.key]=e.value}),t})(e),ha=y,fa=ha("touchstart"),ba=ha("touchmove"),va=ha("touchend"),xa=ha("touchcancel"),ya=ha("mousedown"),wa=ha("mousemove"),Sa=ha("mouseout"),Ca=ha("mouseup"),ka=ha("mouseover"),Oa=ha("focusin"),_a=ha("focusout"),Ta=ha("keydown"),Ea=ha("keyup"),Aa=ha("input"),Da=ha("change"),Ma=ha("click"),Ba=ha("transitioncancel"),Ia=ha("transitionend"),Fa=ha("transitionstart"),Ra=ha("selectstart"),Na=ha("pointerdown"),za=ha("pointermove"),Va=ha("pointerup"),La=ha("lostpointercapture"),Ha=e=>y("alloy."+e),Pa={tap:Ha("tap")},Ua=Ha("focus"),Wa=Ha("blur.post"),ja=Ha("paste.post"),$a=Ha("receive"),Ga=Ha("execute"),qa=Ha("focus.item"),Ya=Pa.tap,Xa=Ha("longpress"),Ka=Ha("sandbox.close"),Ja=Ha("typeahead.cancel"),Qa=Ha("system.init"),Za=Ha("system.touchmove"),ei=Ha("system.touchend"),ti=Ha("system.scroll"),oi=Ha("system.resize"),ni=Ha("system.attached"),si=Ha("system.detached"),ri=Ha("system.dismissRequested"),ai=Ha("system.repositionRequested"),ii=Ha("focusmanager.shifted"),li=Ha("slotcontainer.visibility"),ci=Ha("system.external.element.scroll"),di=Ha("change.tab"),ui=Ha("dismiss.tab"),mi=Ha("highlight"),gi=Ha("dehighlight"),pi=e=>(e=>{if(ko(e))return"#shadow-root";{const t=(e=>on(e,!1))(e);return(e=>{const t=it("div"),o=ct(e.dom.cloneNode(!0));return $o(t,o),nn(t)})(t)}})(e);var hi;!function(e){e[e.STOP=0]="STOP",e[e.NORMAL=1]="NORMAL",e[e.LOGGING=2]="LOGGING"}(hi||(hi={}));const fi=ye({}),bi=["alloy/data/Fields","alloy/debugging/Debugging"],vi=(e,t,o)=>((e,t,o)=>{switch(fe(fi.get(),e).orThunk(()=>{const t=re(fi.get());return se(t,t=>e.indexOf(t)>-1?A.some(fi.get()[t]):A.none())}).getOr(hi.NORMAL)){case hi.NORMAL:return o(xi());case hi.LOGGING:{const n=((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 s=(new Date).getTime();F(["mousemove","mouseover","mouseout",Qa()],e)||console.log(e,{event:e,time:s-n,target:t.dom,sequence:V(o,e=>F(["cut","stopped","response"],e.outcome)?"{"+e.purpose+"} "+e.outcome+" at ("+pi(e.target)+")":e.outcome)})}}})(e,t),s=o(n);return n.write(),s}case hi.STOP:return!0}})(e,t,o),xi=y({logEventCut:b,logEventStopped:b,logNoParent:b,logEventNoHandlers:b,logEventResponse:b,write:b}),yi=y([Pr("menu"),Pr("selectedMenu")]),wi=y([Pr("item"),Pr("selectedItem")]);y(kr(wi().concat(yi())));const Si=y(kr(wi())),Ci=qr("initSize",[Pr("numColumns"),Pr("numRows")]),ki=()=>qr("markers",[Pr("backgroundMenu")].concat(yi()).concat(wi())),Oi=e=>qr("markers",V(e,Pr)),_i=(e,t,o)=>((()=>{const e=new Error;if(void 0!==e.stack){const t=e.stack.split("\n");j(t,e=>e.indexOf("alloy")>0&&!R(bi,t=>e.indexOf(t)>-1)).getOr("unknown")}})(),Vr(t,t,o,Dr(e=>Ae.value((...t)=>e.apply(void 0,t))))),Ti=e=>_i(0,e,pr(b)),Ei=e=>_i(0,e,pr(A.none)),Ai=e=>_i(0,e,{tag:"required",process:{}}),Di=e=>_i(0,e,{tag:"required",process:{}}),Mi=(e,t)=>Lr(e,y(t)),Bi=e=>Lr(e,w),Ii=y(Ci),Fi=e=>V(e,e=>Ze(e,"/*")?e.substring(0,e.length-2):e),Ri=(e,t)=>{const o=e.toString(),n=o.indexOf(")")+1,s=o.indexOf("("),r=o.substring(s+1,n-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:t,parameters:Fi(r)}),e},Ni=(e,t)=>{let o=null;return{cancel:()=>{null!==o&&(clearTimeout(o),o=null)},schedule:(...n)=>{o=setTimeout(()=>{e.apply(null,n),o=null},t)}}},zi=e=>{const t=e.raw;return void 0===t.touches||1!==t.touches.length?A.none():A.some(t.touches[0])};var Vi;!function(e){e.OnFocusMode="onFocus",e.OnEnterOrSpaceMode="onEnterOrSpace",e.OnApiMode="onApi"}(Vi||(Vi={}));const Li="placeholder",Hi=xe([{single:["required","valueThunk"]},{multiple:["required","valueThunks"]}]),Pi=e=>be(e,"uiType"),Ui=(e,t,o,n)=>((e,t,o,n)=>Pi(o)&&o.uiType===Li?((e,t,o,n)=>e.exists(e=>e!==o.owner)?Hi.single(!0,y(o)):fe(n,o.name).fold(()=>{throw new Error("Unknown placeholder component: "+o.name+"\nKnown: ["+re(n)+"]\nNamespace: "+e.getOr("none")+"\nSpec: "+JSON.stringify(o,null,2))},e=>e.replace()))(e,0,o,n):Hi.single(!1,y(o)))(e,0,o,n).fold((s,r)=>{const a=Pi(o)?r(t,o.config,o.validated):r(t),i=fe(a,"components").getOr([]),l=q(i,o=>Ui(e,t,o,n));return[{...a,components:l}]},(e,n)=>{if(Pi(o)){const e=n(t,o.config,o.validated);return o.validated.preprocess.getOr(w)(e)}return n(t)}),Wi=Hi.single,ji=Hi.multiple,$i=y(Li),Gi=xe([{required:["data"]},{external:["data"]},{optional:["data"]},{group:["data"]}]),qi=sa("factory",{sketch:w}),Yi=sa("schema",[]),Xi=Pr("name"),Ki=Vr("pname","pname",gr(e=>"<alloy."+Ne(e.name)+">"),rr()),Ji=Lr("schema",()=>[Kr("preprocess")]),Qi=sa("defaults",y({})),Zi=sa("overrides",y({})),el=kr([qi,Yi,Xi,Ki,Qi,Zi]),tl=kr([qi,Yi,Xi,Qi,Zi]),ol=kr([qi,Yi,Xi,Ki,Qi,Zi]),nl=kr([qi,Ji,Xi,Pr("unit"),Ki,Qi,Zi]),sl=e=>e.fold(A.some,A.none,A.some,A.some),rl=e=>{const t=e=>e.name;return e.fold(t,t,t,t)},al=(e,t)=>o=>{const n=Fr("Converting part type",t,o);return e(n)},il=al(Gi.required,el),ll=al(Gi.external,tl),cl=al(Gi.optional,ol),dl=al(Gi.group,nl),ul=y("entirety");var ml=Object.freeze({__proto__:null,required:il,external:ll,optional:cl,group:dl,asNamedPart:sl,name:rl,asCommon:e=>e.fold(w,w,w,w),original:ul});const gl=(e,t,o,n)=>Ve(t.defaults(e,o,n),o,{uid:e.partUids[t.name]},t.overrides(e,o,n)),pl=(e,t)=>{const o={};return L(t,t=>{sl(t).each(t=>{const n=hl(e,t.pname);o[t.name]=o=>{const s=Fr("Part: "+t.name+" in "+e,kr(t.schema),o);return{...n,config:o,validated:s}}})}),o},hl=(e,t)=>({uiType:$i(),owner:e,name:t}),fl=(e,t,o)=>({uiType:$i(),owner:e,name:t,config:o,validated:{}}),bl=e=>q(e,e=>e.fold(A.none,A.some,A.none,A.none).map(e=>qr(e.name,e.schema.concat([Bi(ul())]))).toArray()),vl=e=>V(e,rl),xl=(e,t,o)=>((e,t,o)=>{const n={},s={};return L(o,e=>{e.fold(e=>{n[e.pname]=Wi(!0,(t,o,n)=>e.factory.sketch(gl(t,e,o,n)))},e=>{const o=t.parts[e.name];s[e.name]=y(e.factory.sketch(gl(t,e,o[ul()]),o))},e=>{n[e.pname]=Wi(!1,(t,o,n)=>e.factory.sketch(gl(t,e,o,n)))},e=>{n[e.pname]=ji(!0,(t,o,n)=>{const s=t[e.name];return V(s,o=>e.factory.sketch(Ve(e.defaults(t,o,n),o,e.overrides(t,o))))})})}),{internals:y(n),externals:y(s)}})(0,t,o),yl=(e,t,o)=>((e,t,o,n)=>{const s=le(n,(e,t)=>((e,t)=>{let o=!1;return{name:y(e),required:()=>t.fold((e,t)=>e,(e,t)=>e),used:()=>o,replace:()=>{if(o)throw new Error("Trying to use the same placeholder more than once: "+e);return o=!0,t}}})(t,e)),r=((e,t,o,n)=>q(o,o=>Ui(e,t,o,n)))(e,t,o,s);return ie(s,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))}),r})(A.some(e),t,t.components,o),wl=(e,t,o)=>{const n=t.partUids[o];return e.getSystem().getByUid(n).toOptional()},Sl=(e,t,o)=>wl(e,t,o).getOrDie("Could not find part: "+o),Cl=(e,t,o)=>{const n={},s=t.partUids,r=e.getSystem();return L(o,e=>{n[e]=y(r.getByUid(s[e]))}),n},kl=(e,t)=>{const o=e.getSystem();return le(t.partUids,(e,t)=>y(o.getByUid(e)))},Ol=e=>re(e.partUids),_l=(e,t,o)=>{const n={},s=t.partUids,r=e.getSystem();return L(o,e=>{n[e]=y(r.getByUid(s[e]).getOrDie())}),n},Tl=(e,t)=>{const o=vl(t);return pa(V(o,t=>({key:t,value:e+"-"+t})))},El=e=>Vr("partUids","partUids",hr(t=>Tl(t.uid,e)),rr());var Al=Object.freeze({__proto__:null,generate:pl,generateOne:fl,schemas:bl,names:vl,substitutes:xl,components:yl,defaultUids:Tl,defaultUidsSchema:El,getAllParts:kl,getAllPartNames:Ol,getPart:wl,getPartOrDie:Sl,getParts:Cl,getPartsOrDie:_l});const Dl=["valignCentre","alignLeft","alignRight","alignCentre","top","bottom","left","right","inset"],Ml=(e,t,o,n=1)=>{const s=e*n,r=t*n,a=e=>fe(o,e).getOr([]),i=(e,t,o)=>{const n=K(Dl,o);return{offset:Bn(e,t),classesOn:q(o,a),classesOff:q(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(s,r,["top","alignLeft","inset"]),insetNorthwest:()=>i(-s,r,["top","alignRight","inset"]),insetNorth:()=>i(-s/2,r,["top","alignCentre","inset"]),insetSoutheast:()=>i(s,-r,["bottom","alignLeft","inset"]),insetSouthwest:()=>i(-s,-r,["bottom","alignRight","inset"]),insetSouth:()=>i(-s/2,-r,["bottom","alignCentre","inset"]),insetEast:()=>i(-s,-r/2,["valignCentre","right","inset"]),insetWest:()=>i(s,-r/2,["valignCentre","left","inset"])}},Bl=()=>Ml(0,0,{}),Il=(e,t,o,n,s,r,a,i=!1)=>({x:e,y:t,bubble:o,direction:n,placement:s,restriction:r,label:`${a}-${s}`,alwaysFit:i}),Fl=xe([{southeast:[]},{southwest:[]},{northeast:[]},{northwest:[]},{south:[]},{north:[]},{east:[]},{west:[]}]),Rl=Fl.southeast,Nl=Fl.southwest,zl=Fl.northeast,Vl=Fl.northwest,Ll=Fl.south,Hl=Fl.north,Pl=Fl.east,Ul=Fl.west,Wl=(e,t)=>J(["left","right","top","bottom"],o=>fe(t,o).map(t=>((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}})(e,t))),jl="layout",$l=e=>e.x,Gl=(e,t)=>e.x+e.width/2-t.width/2,ql=(e,t)=>e.x+e.width-t.width,Yl=(e,t)=>e.y-t.height,Xl=e=>e.y+e.height,Kl=(e,t)=>e.y+e.height/2-t.height/2,Jl=(e,t,o)=>Il($l(e),Xl(e),o.southeast(),Rl(),"southeast",Wl(e,{left:1,top:3}),jl),Ql=(e,t,o)=>Il(ql(e,t),Xl(e),o.southwest(),Nl(),"southwest",Wl(e,{right:0,top:3}),jl),Zl=(e,t,o)=>Il($l(e),Yl(e,t),o.northeast(),zl(),"northeast",Wl(e,{left:1,bottom:2}),jl),ec=(e,t,o)=>Il(ql(e,t),Yl(e,t),o.northwest(),Vl(),"northwest",Wl(e,{right:0,bottom:2}),jl),tc=(e,t,o)=>Il(Gl(e,t),Yl(e,t),o.north(),Hl(),"north",Wl(e,{bottom:2}),jl),oc=(e,t,o)=>Il(Gl(e,t),Xl(e),o.south(),Ll(),"south",Wl(e,{top:3}),jl),nc=(e,t,o)=>Il((e=>e.x+e.width)(e),Kl(e,t),o.east(),Pl(),"east",Wl(e,{left:0}),jl),sc=(e,t,o)=>Il(((e,t)=>e.x-t.width)(e,t),Kl(e,t),o.west(),Ul(),"west",Wl(e,{right:1}),jl),rc=()=>[Jl,Ql,Zl,ec,oc,tc,nc,sc],ac=()=>[Ql,Jl,ec,Zl,oc,tc,nc,sc],ic=()=>[Zl,ec,Jl,Ql,tc,oc],lc=()=>[ec,Zl,Ql,Jl,tc,oc],cc=()=>[Jl,Ql,Zl,ec,oc,tc],dc=()=>[Ql,Jl,ec,Zl,oc,tc],uc="data-alloy-placement",mc=e=>Jo(e,uc),gc="layout-inset",pc=e=>e.x,hc=(e,t)=>e.x+e.width/2-t.width/2,fc=(e,t)=>e.x+e.width-t.width,bc=e=>e.y,vc=(e,t)=>e.y+e.height-t.height,xc=(e,t)=>e.y+e.height/2-t.height/2,yc=(e,t,o)=>Il(fc(e,t),vc(e,t),o.insetSouthwest(),Vl(),"southwest",Wl(e,{right:0,bottom:3}),gc),wc=(e,t,o)=>Il(pc(e),vc(e,t),o.insetSoutheast(),zl(),"southeast",Wl(e,{left:1,bottom:3}),gc),Sc=(e,t,o)=>Il(fc(e,t),bc(e),o.insetNorthwest(),Nl(),"northwest",Wl(e,{right:0,top:2}),gc),Cc=(e,t,o)=>Il(pc(e),bc(e),o.insetNortheast(),Rl(),"northeast",Wl(e,{left:1,top:2}),gc),kc=(e,t,o)=>Il(hc(e,t),bc(e),o.insetNorth(),Ll(),"north",Wl(e,{top:2}),gc),Oc=(e,t,o)=>Il(hc(e,t),vc(e,t),o.insetSouth(),Hl(),"south",Wl(e,{bottom:3}),gc),_c=(e,t,o)=>Il(fc(e,t),xc(e,t),o.insetEast(),Ul(),"east",Wl(e,{right:0}),gc),Tc=(e,t,o)=>Il(pc(e),xc(e,t),o.insetWest(),Pl(),"west",Wl(e,{left:1}),gc),Ec=e=>{switch(e){case"north":return kc;case"northeast":return Cc;case"northwest":return Sc;case"south":return Oc;case"southeast":return wc;case"southwest":return yc;case"east":return _c;case"west":return Tc}},Ac=(e,t,o,n,s)=>mc(n).map(Ec).getOr(kc)(e,t,o,n,s),Dc=e=>{switch(e){case"north":return Oc;case"northeast":return wc;case"northwest":return yc;case"south":return kc;case"southeast":return Cc;case"southwest":return Sc;case"east":return Tc;case"west":return _c}},Mc=(e,t,o,n,s)=>mc(n).map(Dc).getOr(kc)(e,t,o,n,s),Bc=(e,t)=>{((e,t)=>{const o=kn.max(e,t,["margin-top","border-top-width","padding-top","padding-bottom","border-bottom-width","margin-bottom"]);gn(e,"max-height",o+"px")})(e,Math.floor(t))},Ic=y((e,t)=>{Bc(e,t),pn(e,{"overflow-x":"hidden","overflow-y":"auto"})}),Fc=y((e,t)=>{Bc(e,t)}),Rc=y((e,t)=>{((e,t)=>{const o=En.max(e,t,["margin-left","border-left-width","padding-left","padding-right","border-right-width","margin-right"]);gn(e,"max-width",o+"px")})(e,Math.floor(t))});var Nc;!function(e){e.TopToBottom="toptobottom",e.BottomToTop="bottomtotop"}(Nc||(Nc={}));const zc="data-alloy-vertical-dir",Vc=e=>ps(e,e=>so(e)&&Ko(e,"data-alloy-vertical-dir")===Nc.BottomToTop);var Lc;!function(e){e[e.HighlightMenuAndItem=0]="HighlightMenuAndItem",e[e.HighlightJustMenu=1]="HighlightJustMenu",e[e.HighlightNone=2]="HighlightNone"}(Lc||(Lc={}));const Hc={init:()=>Pc({readState:y("No State required")})},Pc=e=>e,Uc={can:E,abort:T,run:b},Wc=e=>{if(!ve(e,"can")&&!ve(e,"abort")&&!ve(e,"run"))throw new Error("EventHandler defined by: "+JSON.stringify(e,null,2)+" does not have can, abort, or run!");return{...Uc,...e}},jc=(e,t)=>{Yc(e,e.element,t,{})},$c=(e,t,o)=>{Yc(e,e.element,t,o)},Gc=e=>{jc(e,Ga())},qc=(e,t,o)=>{Yc(e,t,o,{})},Yc=(e,t,o,n)=>{const s={target:t,...n};e.getSystem().triggerEvent(o,t,s)},Xc=(e,t,o,n)=>{e.getSystem().triggerEvent(o,t,n.event)},Kc=e=>pa(e),Jc=(e,t)=>({key:e,value:Wc({abort:t})}),Qc=e=>({key:e,value:Wc({run:(e,t)=>{t.event.prevent()}})}),Zc=(e,t)=>({key:e,value:Wc({run:t})}),ed=(e,t,o)=>({key:e,value:Wc({run:(e,n)=>{t.apply(void 0,[e,n].concat(o))}})}),td=e=>t=>({key:e,value:Wc({run:(e,o)=>{js(e,o)&&t(e,o)}})}),od=(e,t,o)=>((e,t)=>Zc(e,(o,n)=>{o.getSystem().getByUid(t).each(t=>{Xc(t,t.element,e,n)})}))(e,t.partUids[o]),nd=(e,t)=>Zc(e,(e,o)=>{const n=o.event,s=e.getSystem().getByDom(n.target).getOrThunk(()=>vs(n.target,t=>e.getSystem().getByDom(t).toOptional(),T).getOr(e));t(e,s,o)}),sd=e=>Zc(e,(e,t)=>{t.cut()}),rd=e=>Zc(e,(e,t)=>{t.stop()}),ad=(e,t)=>td(e)(t),id=td(ni()),ld=td(si()),cd=td(Qa()),dd=(e=>t=>Zc(e,t))(Ga()),ud=e=>({classes:u(e.classes)?[]:e.classes,attributes:u(e.attributes)?{}:e.attributes,styles:u(e.styles)?{}:e.styles}),md=(e,t,o)=>cd((n,s)=>{o(n,e,t)}),gd=e=>({key:e,value:void 0}),pd=(e,t,o,n,s,r,a)=>{const i=e=>ve(e,o)?e[o]():A.none(),l=le(s,(e,t)=>((e,t,o)=>((e,t,o)=>{const n=o.toString(),s=n.indexOf(")")+1,r=n.indexOf("("),a=n.substring(r+1,s-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:t,parameters:Fi(a.slice(0,1).concat(a.slice(3)))}),e})((n,...s)=>{const r=[n].concat(s);return n.config({name:y(e)}).fold(()=>{throw new Error("We could not find any behaviour configuration for: "+e+". Using API: "+o)},e=>{const o=Array.prototype.slice.call(r,1);return t.apply(void 0,[n,e.config,e.state].concat(o))})},o,t))(o,e,t)),c={...le(r,(e,t)=>Ri(e,t)),...l,revoke:C(gd,o),config:t=>{const n=Fr(o+"-config",e,t);return{key:o,value:{config:n,me:c,configAsRaw:st(()=>Fr(o+"-config",e,t)),initialConfig:t,state:a}}},schema:y(t),exhibit:(e,t)=>Ue(i(e),fe(n,"exhibit"),(e,o)=>o(t,e.config,e.state)).getOrThunk(()=>ud({})),name:y(o),handlers:e=>i(e).map(e=>fe(n,"events").getOr(()=>({}))(e.config,e.state)).getOr({})};return c},hd=e=>pa(e),fd=Cr([Pr("fields"),Pr("name"),sa("active",{}),sa("apis",{}),sa("state",Hc),sa("extra",{})]),bd=e=>{const t=Fr("Creating behaviour: "+e.name,fd,e);return((e,t,o,n,s,r)=>{const a=Cr(e),i=na(t,[(l=e,Jr("config",Cr(l)))]);var l;return pd(a,i,t,o,n,s,r)})(t.fields,t.name,t.active,t.apis,t.extra,t.state)},vd=Cr([Pr("branchKey"),Pr("branches"),Pr("name"),sa("active",{}),sa("apis",{}),sa("state",Hc),sa("extra",{})]),xd=e=>{const t=Fr("Creating behaviour: "+e.name,vd,e);return((e,t,o,n,s,r)=>{const a=e,i=na(t,[Jr("config",e)]);return pd(a,i,t,o,n,s,r)})(Nr(t.branchKey,t.branches),t.name,t.active,t.apis,t.extra,t.state)},yd=y(void 0),wd=(e,t)=>{const o=((e,t)=>{const o=Kc(t);return bd({fields:[Pr("enabled")],name:e,active:{events:y(o)}})})(e,t);return{key:e,value:{config:{},me:o,configAsRaw:y({}),initialConfig:{},state:Hc}}},Sd=(e,t)=>{t.ignore||(zo(e.element),t.onFocus(e))};var Cd=Object.freeze({__proto__:null,focus:Sd,blur:(e,t)=>{t.ignore||Vo(e.element)},isFocused:e=>Lo(e.element)}),kd=Object.freeze({__proto__:null,exhibit:(e,t)=>{const o=t.ignore?{}:{attributes:{tabindex:"-1"}};return ud(o)},events:e=>Kc([Zc(Ua(),(t,o)=>{Sd(t,e),o.stop()})].concat(e.stopMousedown?[Zc(ya(),(e,t)=>{t.event.prevent()})]:[]))}),Od=[Ti("onFocus"),sa("stopMousedown",!1),sa("ignore",!1)];const _d=bd({fields:Od,name:"focusing",active:kd,apis:Cd}),Td=[8],Ed=[9],Ad=[13],Dd=[27],Md=[32],Bd=[37],Id=[38],Fd=[39],Rd=[40],Nd=y("tooltipping.close.all"),zd=y("dismiss.popups"),Vd=y("reposition.popups"),Ld=y("mouse.released"),Hd=(e,t,o)=>{const n=X(e.slice(0,t)),s=X(e.slice(t+1));return j(n.concat(s),o)},Pd=(e,t,o)=>{const n=X(e.slice(0,t));return j(n,o)},Ud=(e,t,o)=>{const n=e.slice(0,t),s=e.slice(t+1);return j(s.concat(n),o)},Wd=(e,t,o)=>{const n=e.slice(t+1);return j(n,o)},jd=e=>t=>{const o=t.raw;return F(e,o.which)},$d=e=>t=>Y(e,e=>e(t)),Gd=e=>!0===e.raw.shiftKey,qd=e=>!0===e.raw.ctrlKey,Yd=k(Gd),Xd=(e,t)=>({matches:e,classification:t}),Kd=(e,t,o,n)=>{const s=gs(e.element,"."+t.highlightClass);L(s,o=>{R(n,e=>wt(e.element,o))||(rs(o,t.highlightClass),e.getSystem().getByDom(o).each(o=>{t.onDehighlight(e,o),jc(o,gi())}))})},Jd=(e,t,o,n)=>{Kd(e,t,0,[n]),Qd(e,t,o,n)||(ns(n.element,t.highlightClass),t.onHighlight(e,n),jc(n,mi()))},Qd=(e,t,o,n)=>as(n.element,t.highlightClass),Zd=(e,t,o)=>Xn(e.element,"."+t.itemClass).bind(t=>e.getSystem().getByDom(t).toOptional()),eu=(e,t,o)=>{const n=gs(e.element,"."+t.itemClass);return(n.length>0?A.some(n[n.length-1]):A.none()).bind(t=>e.getSystem().getByDom(t).toOptional())},tu=(e,t,o,n)=>{const s=gs(e.element,"."+t.itemClass);return $(s,e=>as(e,t.highlightClass)).bind(t=>{const o=Ie(t,n,0,s.length-1);return e.getSystem().getByDom(s[o]).toOptional()})},ou=(e,t,o)=>{const n=gs(e.element,"."+t.itemClass);return Pe(V(n,t=>e.getSystem().getByDom(t).toOptional()))};var nu=Object.freeze({__proto__:null,dehighlightAll:(e,t,o)=>Kd(e,t,0,[]),dehighlight:(e,t,o,n)=>{Qd(e,t,o,n)&&(rs(n.element,t.highlightClass),t.onDehighlight(e,n),jc(n,gi()))},highlight:Jd,highlightFirst:(e,t,o)=>{Zd(e,t).each(n=>{Jd(e,t,o,n)})},highlightLast:(e,t,o)=>{eu(e,t).each(n=>{Jd(e,t,o,n)})},highlightAt:(e,t,o,n)=>{((e,t,o,n)=>{const s=gs(e.element,"."+t.itemClass);return A.from(s[n]).fold(()=>Ae.error(new Error("No element found with index "+n)),e.getSystem().getByDom)})(e,t,0,n).fold(e=>{throw e},n=>{Jd(e,t,o,n)})},highlightBy:(e,t,o,n)=>{const s=ou(e,t);j(s,n).each(n=>{Jd(e,t,o,n)})},isHighlighted:Qd,getHighlighted:(e,t,o)=>Xn(e.element,"."+t.highlightClass).bind(t=>e.getSystem().getByDom(t).toOptional()),getFirst:Zd,getLast:eu,getPrevious:(e,t,o)=>tu(e,t,0,-1),getNext:(e,t,o)=>tu(e,t,0,1),getCandidates:ou}),su=[Pr("highlightClass"),Pr("itemClass"),Ti("onHighlight"),Ti("onDehighlight")];const ru=bd({fields:su,name:"highlighting",apis:nu}),au=(e,t,o)=>{t.exists(e=>o.exists(t=>wt(t,e)))||$c(e,ii(),{prevFocus:t,newFocus:o})},iu=()=>{const e=e=>Po(e.element);return{get:e,set:(t,o)=>{const n=e(t);t.getSystem().triggerFocus(o,t.element);const s=e(t);au(t,n,s)}}},lu=()=>{const e=e=>ru.getHighlighted(e).map(e=>e.element);return{get:e,set:(t,o)=>{const n=e(t);t.getSystem().getByDom(o).fold(b,e=>{ru.highlight(t,e)});const s=e(t);au(t,n,s)}}},cu=(e,t,o,n,s)=>{const r=(e,t,o,n,s)=>{return(r=o(e,t,n,s),a=t.event,j(r,e=>e.matches(a)).map(e=>e.classification)).bind(o=>o(e,t,n,s));var r,a},a={schema:()=>e.concat([sa("focusManager",iu()),ra("focusInside","onFocus",Dr(e=>F(["onFocus","onEnterOrSpace","onApi"],e)?Ae.value(e):Ae.error("Invalid value for focusInside"))),Mi("handler",a),Mi("state",t),Mi("sendFocusIn",s)]),processKey:r,toEvents:(e,t)=>{const a=e.focusInside!==Vi.OnFocusMode?A.none():s(e).map(o=>Zc(Ua(),(n,s)=>{o(n,e,t),s.stop()})),i=[Zc(Ta(),(n,a)=>{r(n,a,o,e,t).fold(()=>{((o,n)=>{const r=jd(Md.concat(Ad))(n.event);e.focusInside===Vi.OnEnterOrSpaceMode&&r&&js(o,n)&&s(e).each(s=>{s(o,e,t),n.stop()})})(n,a)},e=>{a.stop()})}),Zc(Ea(),(o,s)=>{r(o,s,n,e,t).each(e=>{s.stop()})})];return Kc(a.toArray().concat(i))}};return a},du=e=>{const t=[Kr("onEscape"),Kr("onEnter"),sa("selector",'[data-alloy-tabstop="true"]:not(:disabled)'),sa("firstTabstop",0),sa("useTabstopAt",E),Kr("visibilitySelector")].concat([e]),o=(e,t)=>{const o=e.visibilitySelector.bind(e=>Kn(t,e)).getOr(t);return On(o)>0},n=(e,t)=>t.focusManager.get(e).bind(e=>Kn(e,t.selector)),s=(e,t,n)=>{((e,t)=>{const n=gs(e.element,t.selector),s=P(n,e=>o(t,e));return A.from(s[t.firstTabstop])})(e,t).each(o=>{t.focusManager.set(e,o)})},r=(e,t,s,r)=>{const a=P(gs(e.element,s.selector),e=>o(s,e));return n(e,s).bind(t=>$(a,C(wt,t)).bind(t=>((e,t,n,s,r)=>r(t,n,e=>((e,t)=>o(e,t)&&e.useTabstopAt(t))(s,e)).fold(()=>s.cyclic?A.some(!0):A.none(),t=>(s.focusManager.set(e,t),A.some(!0))))(e,a,t,s,r)))},a=(e,t,o)=>{const n=o.cyclic?Hd:Pd;return r(e,0,o,n)},i=(e,t,o)=>{const n=o.cyclic?Ud:Wd;return r(e,0,o,n)},l=y([Xd($d([Gd,jd(Ed)]),a),Xd(jd(Ed),i),Xd($d([Yd,jd(Ad)]),(e,t,o)=>o.onEnter.bind(o=>o(e,t)))]),c=y([Xd(jd(Dd),(e,t,o)=>(e.getSystem().broadcastOn([Nd()],{closedTooltip:()=>{t.stop()}}),t.isStopped()?A.none():o.onEscape.bind(o=>o(e,t)))),Xd(jd(Ed),(e,t,o)=>n(e,o).filter(e=>!o.useTabstopAt(e)).bind(n=>((e=>(e=>po(e))(e).bind(wo).exists(t=>wt(t,e)))(n)?a:i)(e,t,o)))]);return cu(t,Hc.init,l,c,()=>A.some(s))};var uu=du(Lr("cyclic",T)),mu=du(Lr("cyclic",E));const gu=e=>lo("input")(e)&&"radio"!==Ko(e,"type")||lo("textarea")(e),pu=(e,t,o)=>gu(o)&&jd(Md)(t.event)?A.none():((e,t,o)=>(qc(e,o,Ga()),A.some(!0)))(e,0,o),hu=(e,t)=>A.some(!0),fu=[sa("execute",pu),sa("useSpace",!1),sa("useEnter",!0),sa("useControlEnter",!1),sa("useDown",!1)],bu=(e,t,o)=>o.execute(e,t,e.element);var vu=cu(fu,Hc.init,(e,t,o,n)=>{const s=o.useSpace&&!gu(e.element)?Md:[],r=o.useEnter?Ad:[],a=o.useDown?Rd:[],i=s.concat(r).concat(a);return[Xd(jd(i),bu)].concat(o.useControlEnter?[Xd($d([qd,jd(Ad)]),bu)]:[])},(e,t,o,n)=>o.useSpace&&!gu(e.element)?[Xd(jd(Md),hu)]:[],()=>A.none());const xu=()=>{const e=Ye();return Pc({readState:()=>e.get().map(e=>({numRows:String(e.numRows),numColumns:String(e.numColumns)})).getOr({numRows:"?",numColumns:"?"}),setGridSize:(t,o)=>{e.set({numRows:t,numColumns:o})},getNumRows:()=>e.get().map(e=>e.numRows),getNumColumns:()=>e.get().map(e=>e.numColumns)})};var yu=Object.freeze({__proto__:null,flatgrid:xu,init:e=>e.state(e)});const wu=e=>(t,o,n,s)=>{const r=e(t.element);return Ou(r,t,o,n,s)},Su=(e,t)=>{const o=Ln(e,t);return wu(o)},Cu=(e,t)=>{const o=Ln(t,e);return wu(o)},ku=e=>(t,o,n,s)=>Ou(e,t,o,n,s),Ou=(e,t,o,n,s)=>n.focusManager.get(t).bind(o=>e(t.element,o,n,s)).map(e=>(n.focusManager.set(t,e),!0)),_u=ku,Tu=ku,Eu=ku,Au=(e,t,o)=>{const n=gs(e,o);return(e=>$(e,e=>wt(e,t)).map(t=>({index:t,candidates:e})))(P(n,Tn))},Du=(e,t)=>$(e,e=>wt(t,e)),Mu=(e,t,o,n)=>n(Math.floor(t/o),t%o).bind(t=>{const n=t.row*o+t.column;return n>=0&&n<e.length?A.some(e[n]):A.none()}),Bu=(e,t,o,n,s)=>Mu(e,t,n,(t,r)=>{const a=t===o-1?e.length-t*n:n,i=Ie(r,s,0,a-1);return A.some({row:t,column:i})}),Iu=(e,t,o,n,s)=>Mu(e,t,n,(t,r)=>{const a=Ie(t,s,0,o-1),i=a===o-1?e.length-a*n:n,l=Fe(r,0,i-1);return A.some({row:a,column:l})}),Fu=[Pr("selector"),sa("execute",pu),Ei("onEscape"),sa("captureTab",!1),Ii()],Ru=(e,t,o)=>{Xn(e.element,t.selector).each(o=>{t.focusManager.set(e,o)})},Nu=e=>(t,o,n,s)=>Au(t,o,n.selector).bind(t=>e(t.candidates,t.index,s.getNumRows().getOr(n.initSize.numRows),s.getNumColumns().getOr(n.initSize.numColumns))),zu=(e,t,o)=>o.captureTab?A.some(!0):A.none(),Vu=Nu((e,t,o,n)=>Bu(e,t,o,n,-1)),Lu=Nu((e,t,o,n)=>Bu(e,t,o,n,1)),Hu=Nu((e,t,o,n)=>Iu(e,t,o,n,-1)),Pu=Nu((e,t,o,n)=>Iu(e,t,o,n,1)),Uu=y([Xd(jd(Bd),Su(Vu,Lu)),Xd(jd(Fd),Cu(Vu,Lu)),Xd(jd(Id),_u(Hu)),Xd(jd(Rd),Tu(Pu)),Xd($d([Gd,jd(Ed)]),zu),Xd($d([Yd,jd(Ed)]),zu),Xd(jd(Md.concat(Ad)),(e,t,o,n)=>((e,t)=>t.focusManager.get(e).bind(e=>Kn(e,t.selector)))(e,o).bind(n=>o.execute(e,t,n)))]),Wu=y([Xd(jd(Dd),(e,t,o)=>o.onEscape(e,t)),Xd(jd(Md),hu)]);var ju=cu(Fu,xu,Uu,Wu,()=>A.some(Ru));const $u=(e,t,o,n,s)=>{const r=(e,t,o)=>s(e,t,n,0,o.length-1,o[t],t=>{return n=o[t],"button"===to(n)&&"disabled"===Ko(n,"disabled")?r(e,t,o):A.from(o[t]);var n});return Au(e,o,t).bind(e=>{const t=e.index,o=e.candidates;return r(t,t,o)})},Gu=(e,t,o,n)=>$u(e,t,o,n,(e,t,o,n,s,r,a)=>{const i=Fe(t+o,n,s);return i===e?A.from(r):a(i)}),qu=(e,t,o,n)=>$u(e,t,o,n,(e,t,o,n,s,r,a)=>{const i=Ie(t,o,n,s);return i===e?A.none():a(i)}),Yu=[Pr("selector"),sa("getInitial",A.none),sa("execute",pu),Ei("onEscape"),sa("executeOnMove",!1),sa("allowVertical",!0),sa("allowHorizontal",!0),sa("cycles",!0)],Xu=(e,t,o)=>((e,t)=>t.focusManager.get(e).bind(e=>Kn(e,t.selector)))(e,o).bind(n=>o.execute(e,t,n)),Ku=(e,t,o)=>{t.getInitial(e).orThunk(()=>Xn(e.element,t.selector)).each(o=>{t.focusManager.set(e,o)})},Ju=(e,t,o)=>(o.cycles?qu:Gu)(e,o.selector,t,-1),Qu=(e,t,o)=>(o.cycles?qu:Gu)(e,o.selector,t,1),Zu=e=>(t,o,n,s)=>e(t,o,n,s).bind(()=>n.executeOnMove?Xu(t,o,n):A.some(!0)),em=y([Xd(jd(Md),hu),Xd(jd(Dd),(e,t,o)=>o.onEscape(e,t))]);var tm=cu(Yu,Hc.init,(e,t,o,n)=>{const s=[...o.allowHorizontal?Bd:[]].concat(o.allowVertical?Id:[]),r=[...o.allowHorizontal?Fd:[]].concat(o.allowVertical?Rd:[]);return[Xd(jd(s),Zu(Su(Ju,Qu))),Xd(jd(r),Zu(Cu(Ju,Qu))),Xd(jd(Ad),Xu),Xd(jd(Md),Xu)]},em,()=>A.some(Ku));const om=(e,t,o)=>A.from(e[t]).bind(e=>A.from(e[o]).map(e=>({rowIndex:t,columnIndex:o,cell:e}))),nm=(e,t,o,n)=>{const s=e[t].length,r=Ie(o,n,0,s-1);return om(e,t,r)},sm=(e,t,o,n)=>{const s=Ie(o,n,0,e.length-1),r=e[s].length,a=Fe(t,0,r-1);return om(e,s,a)},rm=(e,t,o,n)=>{const s=e[t].length,r=Fe(o+n,0,s-1);return om(e,t,r)},am=(e,t,o,n)=>{const s=Fe(o+n,0,e.length-1),r=e[s].length,a=Fe(t,0,r-1);return om(e,s,a)},im=[qr("selectors",[Pr("row"),Pr("cell")]),sa("cycles",!0),sa("previousSelector",A.none),sa("execute",pu)],lm=(e,t,o)=>{t.previousSelector(e).orThunk(()=>{const o=t.selectors;return Xn(e.element,o.cell)}).each(o=>{t.focusManager.set(e,o)})},cm=(e,t)=>(o,n,s)=>{const r=s.cycles?e:t;return Kn(n,s.selectors.row).bind(e=>{const t=gs(e,s.selectors.cell);return Du(t,n).bind(t=>{const n=gs(o,s.selectors.row);return Du(n,e).bind(e=>{const o=((e,t)=>V(e,e=>gs(e,t.selectors.cell)))(n,s);return r(o,e,t).map(e=>e.cell)})})})},dm=cm((e,t,o)=>nm(e,t,o,-1),(e,t,o)=>rm(e,t,o,-1)),um=cm((e,t,o)=>nm(e,t,o,1),(e,t,o)=>rm(e,t,o,1)),mm=cm((e,t,o)=>sm(e,o,t,-1),(e,t,o)=>am(e,o,t,-1)),gm=cm((e,t,o)=>sm(e,o,t,1),(e,t,o)=>am(e,o,t,1)),pm=y([Xd(jd(Bd),Su(dm,um)),Xd(jd(Fd),Cu(dm,um)),Xd(jd(Id),_u(mm)),Xd(jd(Rd),Tu(gm)),Xd(jd(Md.concat(Ad)),(e,t,o)=>Po(e.element).bind(n=>o.execute(e,t,n)))]),hm=y([Xd(jd(Md),hu)]);var fm=cu(im,Hc.init,pm,hm,()=>A.some(lm));const bm=[Pr("selector"),sa("execute",pu)],vm=(e,t,o)=>o.focusManager.get(e).bind(n=>o.execute(e,t,n)),xm=(e,t,o)=>{Xn(e.element,t.selector).each(o=>{t.focusManager.set(e,o)})},ym=y([Xd(jd(Id),Eu((e,t,o)=>qu(e,o.selector,t,-1))),Xd(jd(Rd),Eu((e,t,o)=>qu(e,o.selector,t,1))),Xd(jd(Ad),vm),Xd(jd(Md),vm)]),wm=y([Xd(jd(Md),hu)]);var Sm=cu(bm,Hc.init,ym,wm,()=>A.some(xm));const Cm=[Ei("onSpace"),Ei("onEnter"),Ei("onShiftEnter"),Ei("onLeft"),Ei("onRight"),Ei("onTab"),Ei("onShiftTab"),Ei("onUp"),Ei("onDown"),Ei("onEscape"),sa("stopSpaceKeyup",!1),Kr("focusIn")];var km=cu(Cm,Hc.init,(e,t,o)=>[Xd(jd(Md),o.onSpace),Xd($d([Yd,jd(Ad)]),o.onEnter),Xd($d([Gd,jd(Ad)]),o.onShiftEnter),Xd($d([Gd,jd(Ed)]),o.onShiftTab),Xd($d([Yd,jd(Ed)]),o.onTab),Xd(jd(Id),o.onUp),Xd(jd(Rd),o.onDown),Xd(jd(Bd),o.onLeft),Xd(jd(Fd),o.onRight),Xd(jd(Md),o.onSpace)],(e,t,o)=>[...o.stopSpaceKeyup?[Xd(jd(Md),hu)]:[],Xd(jd(Dd),o.onEscape)],e=>e.focusIn);const Om=uu.schema(),_m=mu.schema(),Tm=tm.schema(),Em=ju.schema(),Am=fm.schema(),Dm=vu.schema(),Mm=Sm.schema(),Bm=km.schema(),Im=xd({branchKey:"mode",branches:Object.freeze({__proto__:null,acyclic:Om,cyclic:_m,flow:Tm,flatgrid:Em,matrix:Am,execution:Dm,menu:Mm,special:Bm}),name:"keying",active:{events:(e,t)=>e.handler.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,s)=>{(e=>ve(e,"setGridSize"))(o)?o.setGridSize(n,s):console.error("Layout does not support setGridSize")}},state:yu}),Fm=Ne("alloy-premade"),Rm=e=>(Object.defineProperty(e.element.dom,Fm,{value:e.uid,writable:!0}),ga(Fm,e)),Nm=e=>fe(e,Fm),zm=e=>((e,t)=>{const o=t.toString(),n=o.indexOf(")")+1,s=o.indexOf("("),r=o.substring(s+1,n-1).split(/,\s*/);return e.toFunctionAnnotation=()=>({name:"OVERRIDE",parameters:Fi(r.slice(1))}),e})((t,...o)=>e(t.getApis(),t,...o),e),Vm=e=>e.getSystem().isConnected(),Lm=e=>{jc(e,si());const t=e.components();L(t,Lm)},Hm=e=>{const t=e.components();L(t,Hm),jc(e,ni())},Pm=(e,t)=>{e.getSystem().addToWorld(t),ln(e.element)&&Hm(t)},Um=e=>{Lm(e),e.getSystem().removeFromWorld(e)},Wm=(e,t)=>{$o(e.element,t.element)},jm=(e,t)=>{$m(e,t,$o)},$m=(e,t,o)=>{e.getSystem().addToWorld(t),o(e.element,t.element),ln(e.element)&&Hm(t),e.syncComponents()},Gm=e=>{Lm(e),tn(e.element),e.getSystem().removeFromWorld(e)},qm=e=>{const t=po(e.element).bind(t=>e.getSystem().getByDom(t).toOptional());Gm(e),t.each(e=>{e.syncComponents()})},Ym=e=>{const t=e.components();L(t,Gm),en(e.element),e.syncComponents()},Xm=(e,t)=>{Jm(e,t,$o)},Km=(e,t)=>{Jm(e,t,Wo)},Jm=(e,t,o)=>{o(e,t.element);const n=xo(t.element);L(n,e=>{t.getByDom(e).each(Hm)})},Qm=e=>{const t=xo(e.element);L(t,t=>{e.getByDom(t).each(Lm)}),tn(e.element)},Zm=(e,t,o)=>{o.fold(()=>$o(e,t),e=>{wt(e,t)||(Uo(e,t),tn(e))})},eg=(e,t,o)=>{const n=V(t,o),s=xo(e);return L(s.slice(n.length),tn),n},tg=(e,t,o,n)=>{const s=yo(e,t),r=n(o,s),a=((e,t,o)=>yo(e,t).map(e=>{if(o.exists(t=>!wt(t,e))){const t=o.map(to).getOr("span"),n=it(t);return Uo(e,n),n}return e}))(e,t,s);return Zm(e,r.element,a),r},og=(e,t)=>{const o=Oo(t),n=Ho(o).bind(e=>{const o=t=>wt(e,t);return o(t)?A.some(t):((e,t)=>{const o=e=>{for(let n=0;n<e.childNodes.length;n++){const s=ct(e.childNodes[n]);if(t(s))return A.some(s);const r=o(e.childNodes[n]);if(r.isSome())return r}return A.none()};return o(e.dom)})(t,o)}),s=e(t);return n.each(e=>{Ho(o).filter(t=>wt(t,e)).fold(()=>{zo(e)},b)}),s},ng=(e,t)=>{og(()=>{((e,t,o)=>{const n=e.components();(e=>{L(e.components(),e=>tn(e.element)),en(e.element),e.syncComponents()})(e);const s=o(t),r=K(n,s);L(r,t=>{Lm(t),e.getSystem().removeFromWorld(t)}),L(s,t=>{Vm(t)?Wm(e,t):(e.getSystem().addToWorld(t),Wm(e,t),ln(e.element)&&Hm(t))}),e.syncComponents()})(e,t,()=>V(t,e.getSystem().build))},e.element)},sg=(e,t)=>{og(()=>{((o,n)=>{const s=o.components(),r=q(n,e=>Nm(e).toArray());L(s,e=>{F(r,e)||Um(e)});const a=((e,t,o)=>eg(e,t,(t,n)=>tg(e,n,t,o)))(e.element,t,e.getSystem().buildOrPatch),i=K(s,a);L(i,e=>{Vm(e)&&Um(e)}),L(a,e=>{Vm(e)||Pm(o,e)}),o.syncComponents()})(e,t)},e.element)},rg=(e,t,o,n)=>{Um(t);const s=tg(e.element,o,n,e.getSystem().buildOrPatch);Pm(e,s),e.syncComponents()},ag=(e,t,o)=>{const n=e.getSystem().build(o);$m(e,n,t)},ig=(e,t,o,n)=>{qm(t),ag(e,(e,t)=>((e,t,o)=>{yo(e,o).fold(()=>{$o(e,t)},e=>{Uo(e,t)})})(e,t,o),n)},lg=(e,t)=>e.components(),cg=(e,t,o,n,s)=>{const r=lg(e);return A.from(r[n]).map(o=>(s.fold(()=>qm(o),s=>{(t.reuseDom?rg:ig)(e,o,n,s)}),o))};var dg=Object.freeze({__proto__:null,append:(e,t,o,n)=>{ag(e,$o,n)},prepend:(e,t,o,n)=>{ag(e,jo,n)},remove:(e,t,o,n)=>{const s=lg(e),r=j(s,e=>wt(n.element,e.element));r.each(qm)},replaceAt:cg,replaceBy:(e,t,o,n,s)=>{const r=lg(e);return $(r,n).bind(o=>cg(e,t,0,o,s))},set:(e,t,o,n)=>(t.reuseDom?sg:ng)(e,n),contents:lg});const ug=bd({fields:[ca("reuseDom",!0)],name:"replacing",apis:dg}),mg=Kc([(e=>({key:e,value:Wc({can:(e,t)=>{const o=t.event,n=o.originator,s=o.target;return!((e,t,o)=>wt(t,e.element)&&!wt(t,o))(e,n,s)||(console.warn(Ua()+" did not get interpreted by the desired target. \nOriginator: "+pi(n)+"\nTarget: "+pi(s)+"\nCheck the "+Ua()+" event handlers"),!1)}})}))(Ua())]);var gg=Object.freeze({__proto__:null,events:mg});const pg=y("alloy-id-"),hg=y("data-alloy-id"),fg=pg(),bg=hg(),vg=(e,t)=>{Object.defineProperty(e.dom,bg,{value:t,writable:!0})},xg=e=>{const t=so(e)?e.dom[bg]:null;return A.from(t)},yg=e=>Ne(e),wg=w,Sg=e=>{const t=t=>`The component must be in a context to execute: ${t}`+(e?"\n"+pi(e().element)+" is not in context.":""),o=e=>()=>{throw new Error(t(e))},n=e=>()=>{console.warn(t(e))};return{debugInfo:y("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:T}},Cg=Sg(),kg=(e,t)=>{const o={};return ie(e,(e,n)=>{ie(e,(e,s)=>{const r=fe(o,s).getOr([]);o[s]=r.concat([t(n,e)])})}),o},Og=e=>e.cHandler,_g=(e,t)=>({name:e,handler:t}),Tg=(e,t)=>{const o={};return L(e,e=>{o[e.name()]=e.handlers(t)}),o},Eg=(e,t,o)=>{const n=t[o];return n?((e,t,o,n)=>{try{const s=Z(o,(o,s)=>{const r=o[t],a=s[t],i=n.indexOf(r),l=n.indexOf(a);if(-1===i)throw new Error("The ordering for "+e+" does not have an entry for "+r+".\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<l?-1:l<i?1:0});return Ae.value(s)}catch(e){return Ae.error([e])}})("Event: "+o,"name",e,n).map(e=>(e=>{const t=(e=>(...t)=>W(e,(e,o)=>e&&(e=>e.can)(o).apply(void 0,t),!0))(e),o=(e=>(...t)=>W(e,(e,o)=>e||(e=>e.abort)(o).apply(void 0,t),!1))(e);return{can:t,abort:o,run:(...t)=>{L(e,e=>{e.run.apply(void 0,t)})}}})(V(e,e=>e.handler))):((e,t)=>Ae.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(V(t,e=>e.name),null,2)]))(o,e)},Ag=(e,t)=>((e,t)=>{const o=(e=>{const t=[],o=[];return L(e,e=>{e.fold(e=>{t.push(e)},e=>{o.push(e)})}),{errors:t,values:o}})(e);return o.errors.length>0?(n=o.errors,Ae.error(G(n))):((e,t)=>0===e.length?Ae.value(t):Ae.value(Ve(t,Le.apply(void 0,e))))(o.values,t);var n})(ge(e,(e,o)=>(1===e.length?Ae.value(e[0].handler):Eg(e,t,o)).map(n=>{const s=(e=>{const t=(e=>p(e)?{can:E,abort:T,run:e}:e)(e);return(e,o,...n)=>{const s=[e,o].concat(n);t.abort.apply(void 0,s)?o.stop():t.can.apply(void 0,s)&&t.run.apply(void 0,s)}})(n),r=e.length>1?P(t[o],t=>R(e,e=>e.name===t)).join(" > "):e[0].name;return ga(o,((e,t)=>({handler:e,purpose:t}))(s,r))})),{}),Dg="alloy.base.behaviour",Mg=kr([Vr("dom","dom",{tag:"required",process:{}},kr([Pr("tag"),sa("styles",{}),sa("classes",[]),sa("attributes",{}),Kr("value"),Kr("innerHtml")])),Pr("components"),Pr("uid"),sa("events",{}),sa("apis",{}),Vr("eventOrder","eventOrder",(Wg={[Ga()]:["disabling",Dg,"toggling","typeaheadevents"],[Ua()]:[Dg,"focusing","keying"],[Qa()]:[Dg,"disabling","toggling","representing","tooltipping"],[Aa()]:[Dg,"representing","streaming","invalidating"],[si()]:[Dg,"representing","item-events","toolbar-button-events","tooltipping"],[ya()]:["focusing",Dg,"item-type-events"],[fa()]:["focusing",Dg,"item-type-events"],[ka()]:["item-type-events","tooltipping"],[$a()]:["receiving","reflecting","tooltipping"]},hr(y(Wg))),rr()),Kr("domModification")]),Bg=e=>e.events,Ig=(e,t)=>{const o=re(e),n=re(t),s=K(n,o),r=(e=>{const o={},n={};return ue(e,(e,o)=>!be(t,o)||e!==t[o],de(o),de(n)),{t:o,f:n}})(e).t;return{toRemove:s,toSet:r}},Fg=(e,t)=>{const o=t.filter(t=>to(t)===e.tag&&!(e=>e.innerHtml.isSome()&&e.domChildren.length>0)(e)&&!(e=>be(e.dom,Fm))(t)).bind(t=>((e,t)=>{try{const o=((e,t)=>{const{class:o,style:n,...s}=(e=>W(e.dom.attributes,(e,t)=>(e[t.name]=t.value,e),{}))(t),{toSet:r,toRemove:a}=Ig(e.attributes,s),i=xn(t),{toSet:l,toRemove:c}=Ig(e.styles,i),d=cs(t),u=K(d,e.classes),m=K(e.classes,d);return L(a,e=>Zo(t,e)),Xo(t,r),is(t,m),ls(t,u),L(c,e=>wn(t,e)),pn(t,l),e.innerHtml.fold(()=>{const o=e.domChildren;((e,t)=>{eg(e,t,(t,o)=>{const n=yo(e,o);return Zm(e,t,n),t})})(t,o)},e=>{sn(t,e)}),(()=>{const o=t,n=e.value.getOrUndefined();n!==ds(o)&&us(o,n??"")})(),t})(e,t);return A.some(o)}catch{return A.none()}})(e,t)).getOrThunk(()=>(e=>{const t=it(e.tag);Xo(t,e.attributes),is(t,e.classes),pn(t,e.styles),e.innerHtml.each(e=>sn(t,e));const o=e.domChildren;return Go(t,o),e.value.each(e=>{us(t,e)}),t})(e));return vg(o,e.uid),o},Rg=e=>{const t=(e=>{const t=fe(e,"behaviours").getOr({});return q(re(t),e=>{const o=t[e];return g(o)?[o.me]:[]})})(e);return((e,t)=>((e,t)=>{const o=V(t,e=>na(e.name(),[Pr("config"),sa("state",Hc)])),n=Br("component.behaviours",kr(o),e.behaviours).fold(t=>{throw new Error(Rr(t)+"\nComplete spec:\n"+JSON.stringify(e,null,2))},w);return{list:t,data:le(n,e=>{const t=e.map(e=>({config:e.config,state:e.state.init(e.config)}));return y(t)})}})(e,t))(e,t)},Ng=(e,t)=>{const o=()=>m,n=ye(Cg),s=Ir((e=>Br("custom.definition",Mg,e))(e)),r=Rg(e),a=(e=>e.list)(r),i=(e=>e.data)(r),l=((e,t,o)=>{const n={...(s=e).dom,uid:s.uid,domChildren:V(s.components,e=>e.element)};var s;const r=(e=>e.domModification.fold(()=>ud({}),ud))(e),a={"alloy.base.modification":r},i=t.length>0?((e,t,o,n)=>{const s={...t};L(o,t=>{s[t.name()]=t.exhibit(e,n)});const r=kg(s,(e,t)=>({name:e,modification:t})),a=e=>U(e,(e,t)=>({...t.modification,...e}),{}),i=U(r.classes,(e,t)=>t.modification.concat(e),[]),l=a(r.attributes),c=a(r.styles);return ud({classes:i,attributes:l,styles:c})})(o,a,t,n):r;return l=n,c=i,{...l,attributes:{...l.attributes,...c.attributes},styles:{...l.styles,...c.styles},classes:l.classes.concat(c.classes)};var l,c})(s,a,i),c=Fg(l,t),d=((e,t,o)=>{const n={"alloy.base.behaviour":Bg(e)};return((e,t,o,n)=>{const s=((e,t,o)=>{const n={...o,...Tg(t,e)};return kg(n,_g)})(e,o,n);return Ag(s,t)})(o,e.eventOrder,t,n).getOrDie()})(s,a,i),u=ye(s.components),m={uid:e.uid,getSystem:n.get,config:t=>{const o=i;return(p(o[t.name()])?o[t.name()]:()=>{throw new Error("Could not find "+t.name()+" in "+JSON.stringify(e,null,2))})()},hasConfigured:e=>p(i[e.name()]),spec:e,readState:e=>i[e]().map(e=>e.state.readState()).getOr("not enabled"),getApis:()=>s.apis,connect:e=>{n.set(e)},disconnect:()=>{n.set(Sg(o))},element:c,syncComponents:()=>{const e=xo(c),t=q(e,e=>n.get().getByDom(e).fold(()=>[],Q));u.set(t)},components:u.get,events:d};return m},zg=e=>{const t=lt(e);return Vg({element:t})},Vg=e=>{const t=Fr("external.component",Cr([Pr("element"),Kr("uid")]),e),o=ye(Sg()),n=t.uid.getOrThunk(()=>yg("external"));vg(t.element,n);const s={uid:n,getSystem:o.get,config:A.none,hasConfigured:T,connect:e=>{o.set(e)},disconnect:()=>{o.set(Sg(()=>s))},getApis:()=>({}),element:t.element,spec:e,readState:y("No state"),syncComponents:b,components:y([]),events:{}};return Rm(s)},Lg=yg,Hg=(e,t)=>Nm(e).getOrThunk(()=>((e,t)=>{const{events:o,...n}=wg(e),s=((e,t)=>{const o=fe(e,"components").getOr([]);return t.fold(()=>V(o,Pg),e=>V(o,(t,o)=>Hg(t,yo(e,o))))})(n,t),r={...n,events:{...gg,...o},components:s};return Ae.value(Ng(r,t))})((e=>be(e,"uid"))(e)?e:{uid:Lg(""),...e},t).getOrDie()),Pg=e=>Hg(e,A.none()),Ug=Rm;var Wg,jg=Object.freeze({__proto__:null,block:(e,t,o,n)=>{Yo(e.element,"aria-busy",!0);const s=t.getRoot(e).getOr(e),r=hd([Im.config({mode:"special",onTab:()=>A.some(!0),onShiftTab:()=>A.some(!0)}),_d.config({})]),a=n(s,r),i=s.getSystem().build(a);ug.append(s,Ug(i)),i.hasConfigured(Im)&&t.focus&&Im.focusIn(i),o.isBlocked()||t.onBlock(e),o.blockWith(()=>ug.remove(s,i))},unblock:(e,t,o)=>{Zo(e.element,"aria-busy"),o.isBlocked()&&t.onUnblock(e),o.clear()},isBlocked:(e,t,o)=>o.isBlocked()}),$g=[da("getRoot",A.none),ca("focus",!0),Ti("onBlock"),Ti("onUnblock")];const Gg=bd({fields:$g,name:"blocking",apis:jg,state:Object.freeze({__proto__:null,init:()=>{const e=Ge(e=>e.destroy());return Pc({readState:e.isSet,blockWith:t=>{e.set({destroy:t})},clear:e.clear,isBlocked:e.isSet})}})});var qg=Object.freeze({__proto__:null,getCurrent:(e,t,o)=>t.find(e)});const Yg=[Pr("find")],Xg=bd({fields:Yg,name:"composing",apis:qg});var Kg=Object.freeze({__proto__:null,getCoupled:(e,t,o,n)=>o.getOrCreate(e,t,n),getExistingCoupled:(e,t,o,n)=>o.getExisting(e,t,n)}),Jg=[Ur("others",Mr(Ae.value,rr()))],Qg=Object.freeze({__proto__:null,init:()=>{const e={},t=(t,o)=>{if(0===re(t.others).length)throw new Error("Cannot find any known coupled components");return fe(e,o)},o=y({});return Pc({readState:o,getExisting:(e,o,n)=>t(o,n).orThunk(()=>(fe(o.others,n).getOrDie("No information found for coupled component: "+n),A.none())),getOrCreate:(o,n,s)=>t(n,s).getOrThunk(()=>{const t=fe(n.others,s).getOrDie("No information found for coupled component: "+s)(o),r=o.getSystem().build(t);return e[s]=r,r})})}});const Zg=bd({fields:Jg,name:"coupling",apis:Kg,state:Qg}),ep=["input","button","textarea","select"],tp=(e,t,o)=>{(t.disabled()?ip:lp)(e,t)},op=(e,t)=>!0===t.useNative&&F(ep,to(e.element)),np=e=>{Yo(e.element,"disabled","disabled")},sp=e=>{Zo(e.element,"disabled")},rp=e=>{Yo(e.element,"aria-disabled","true")},ap=e=>{Yo(e.element,"aria-disabled","false")},ip=(e,t,o)=>{t.disableClass.each(t=>{ns(e.element,t)}),(op(e,t)?np:rp)(e),t.onDisabled(e)},lp=(e,t,o)=>{t.disableClass.each(t=>{rs(e.element,t)}),(op(e,t)?sp:ap)(e),t.onEnabled(e)},cp=(e,t)=>op(e,t)?(e=>Qo(e.element,"disabled"))(e):(e=>"true"===Ko(e.element,"aria-disabled"))(e);var dp=Object.freeze({__proto__:null,enable:lp,disable:ip,isDisabled:cp,onLoad:tp,set:(e,t,o,n)=>{(n?ip:lp)(e,t)}}),up=Object.freeze({__proto__:null,exhibit:(e,t)=>ud({classes:t.disabled()?t.disableClass.toArray():[]}),events:(e,t)=>Kc([Jc(Ga(),(t,o)=>cp(t,e)),md(e,t,tp)])}),mp=[da("disabled",T),sa("useNative",!0),Kr("disableClass"),Ti("onDisabled"),Ti("onEnabled")];const gp=bd({fields:mp,name:"disabling",active:up,apis:dp}),pp=(e,t,o,n,s)=>{const r=e=>e+"px";return{position:e,left:t.map(r),top:o.map(r),right:n.map(r),bottom:s.map(r)}},hp=(e,t)=>{hn(e,(e=>({...e,position:A.some(e.position)}))(t))},fp=(e,t)=>{const o=e.element;ns(o,t.transitionClass),rs(o,t.fadeOutClass),ns(o,t.fadeInClass),t.onShow(e)},bp=(e,t)=>{const o=e.element;ns(o,t.transitionClass),rs(o,t.fadeInClass),ns(o,t.fadeOutClass),t.onHide(e)},vp=(e,t)=>e.y>=t.y,xp=(e,t)=>e.bottom<=t.bottom,yp=(e,t,o)=>({location:"top",leftX:t,topY:o.bounds.y-e.y}),wp=(e,t,o)=>({location:"bottom",leftX:t,bottomY:e.bottom-o.bounds.bottom}),Sp=e=>e.box.x-e.win.x,Cp=(e,t,o)=>o.getInitialPos().map(o=>{const n=((e,t)=>{const o=t.optScrollEnv.fold(y(e.bounds.y),t=>t.scrollElmTop+(e.bounds.y-t.currentScrollTop));return Bn(e.bounds.x,o)})(o,t);return{box:Ls(n.left,n.top,An(e),On(e)),location:o.location}}),kp=(e,t,o,n,s)=>{const r=((e,t)=>{const o=t.optScrollEnv.fold(y(e.y),t=>e.y+t.currentScrollTop-t.scrollElmTop);return Bn(e.x,o)})(t,o),a=Ls(r.left,r.top,t.width,t.height);n.setInitialPos({style:xn(e),position:fn(e,"position")||"static",bounds:a,location:s.location})},Op=(e,t,o)=>o.getInitialPos().bind(n=>{switch(o.clearInitialPos(),n.position){case"static":return A.some({morph:"static"});case"absolute":const o=$s(e).getOr(cn()),s=Hs(o),r=o.dom.scrollTop??0;return A.some({morph:"absolute",positionCss:pp("absolute",fe(n.style,"left").map(e=>t.x-s.x),fe(n.style,"top").map(e=>t.y-s.y+r),fe(n.style,"right").map(e=>s.right-t.right),fe(n.style,"bottom").map(e=>s.bottom-t.bottom))});default:return A.none()}}),_p=e=>{switch(e.location){case"top":return A.some({morph:"fixed",positionCss:pp("fixed",A.some(e.leftX),A.some(e.topY),A.none(),A.none())});case"bottom":return A.some({morph:"fixed",positionCss:pp("fixed",A.some(e.leftX),A.none(),A.none(),A.some(e.bottomY))});default:return A.none()}},Tp=(e,t,o)=>{const n=e.element;return He(vn(n,"position"),"fixed")?((e,t,o)=>((e,t,o)=>Cp(e,t,o).filter(({box:e})=>((e,t,o)=>Y(e,e=>{switch(e){case"bottom":return xp(t,o.bounds);case"top":return vp(t,o.bounds)}}))(o.getModes(),e,t)).bind(({box:t})=>Op(e,t,o)))(e,t,o).orThunk(()=>t.optScrollEnv.bind(n=>Cp(e,t,o)).bind(({box:e,location:o})=>{const n=Ws(),s=Sp({win:n,box:e}),r="top"===o?yp(n,s,t):wp(n,s,t);return _p(r)})))(n,t,o):((e,t,o)=>{const n=Hs(e),s=Ws(),r=((e,t,o)=>{const n=t.win,s=t.box,r=Sp(t);return se(e,e=>{switch(e){case"bottom":return xp(s,o.bounds)?A.none():A.some(wp(n,r,o));case"top":return vp(s,o.bounds)?A.none():A.some(yp(n,r,o));default:return A.none()}}).getOr({location:"no-dock"})})(o.getModes(),{win:s,box:n},t);return"top"===r.location||"bottom"===r.location?(kp(e,n,t,o,r),_p(r)):A.none()})(n,t,o)},Ep=(e,t,o)=>{o.setDocked(!1),L(["left","right","top","bottom","position"],t=>wn(e.element,t)),t.onUndocked(e)},Ap=(e,t,o,n)=>{const s="fixed"===n.position;o.setDocked(s),hp(e.element,n),(s?t.onDocked:t.onUndocked)(e)},Dp=(e,t,o,n,s=!1)=>{t.contextual.each(t=>{t.lazyContext(e).each(r=>{const a=((e,t)=>e.y<t.bottom&&e.bottom>t.y)(r,n.bounds);a!==o.isVisible()&&(o.setVisible(a),s&&!a?(is(e.element,[t.fadeOutClass]),t.onHide(e)):(a?fp:bp)(e,t))})})},Mp=(e,t,o,n,s)=>{Dp(e,t,o,n,!0),Ap(e,t,o,s.positionCss)},Bp=(e,t,o)=>{e.getSystem().isConnected()&&((e,t,o)=>{const n=t.lazyViewport(e);Dp(e,t,o,n),Tp(e,n,o).each(s=>{((e,t,o,n,s)=>{switch(s.morph){case"static":return Ep(e,t,o);case"absolute":return Ap(e,t,o,s.positionCss);case"fixed":Mp(e,t,o,n,s)}})(e,t,o,n,s)})})(e,t,o)},Ip=(e,t,o)=>{o.isDocked()&&((e,t,o)=>{const n=e.element;o.setDocked(!1);const s=t.lazyViewport(e);((e,t,o)=>{const n=e.element;return Cp(n,t,o).bind(({box:e})=>Op(n,e,o))})(e,s,o).each(n=>{switch(n.morph){case"static":Ep(e,t,o);break;case"absolute":Ap(e,t,o,n.positionCss)}}),o.setVisible(!0),t.contextual.each(t=>{ls(n,[t.fadeInClass,t.fadeOutClass,t.transitionClass]),t.onShow(e)}),Bp(e,t,o)})(e,t,o)},Fp=e=>(t,o,n)=>{const s=o.lazyViewport(t);((e,t,o,n)=>{const s=Hs(e),r=Ws(),a=n(r,Sp({win:r,box:s}),t);return"bottom"===a.location||"top"===a.location?(((e,t,o,n,s)=>{n.getInitialPos().fold(()=>kp(e,t,o,n,s),()=>b)})(e,s,t,o,a),_p(a)):A.none()})(t.element,s,n,e).each(e=>{Mp(t,o,n,s,e)})},Rp=Fp(yp),Np=Fp(wp);var zp=Object.freeze({__proto__:null,refresh:Bp,reset:Ip,isDocked:(e,t,o)=>o.isDocked(),getModes:(e,t,o)=>o.getModes(),setModes:(e,t,o,n)=>o.setModes(n),forceDockToTop:Rp,forceDockToBottom:Np}),Vp=Object.freeze({__proto__:null,events:(e,t)=>Kc([ad(Ia(),(o,n)=>{e.contextual.each(e=>{as(o.element,e.transitionClass)&&(ls(o.element,[e.transitionClass,e.fadeInClass]),(t.isVisible()?e.onShown:e.onHidden)(o)),n.stop()})}),Zc(ti(),(o,n)=>{Bp(o,e,t)}),Zc(ci(),(o,n)=>{Bp(o,e,t)}),Zc(oi(),(o,n)=>{Ip(o,e,t)})])}),Lp=[na("contextual",[jr("fadeInClass"),jr("fadeOutClass"),jr("transitionClass"),Gr("lazyContext"),Ti("onShow"),Ti("onShown"),Ti("onHide"),Ti("onHidden")]),da("lazyViewport",()=>({bounds:Ws(),optScrollEnv:A.none()})),ua("modes",["top","bottom"],lr),Ti("onDocked"),Ti("onUndocked")];const Hp=bd({fields:Lp,name:"docking",active:Vp,apis:zp,state:Object.freeze({__proto__:null,init:e=>{const t=ye(!1),o=ye(!0),n=Ye(),s=ye(e.modes);return Pc({isDocked:t.get,setDocked:t.set,getInitialPos:n.get,setInitialPos:n.set,clearInitialPos:n.clear,isVisible:o.get,setVisible:o.set,getModes:s.get,setModes:s.set,readState:()=>`docked:  ${t.get()}, visible: ${o.get()}, modes: ${s.get().join(",")}`})}})}),Pp=xe([{offset:["x","y"]},{absolute:["x","y"]},{fixed:["x","y"]}]),Up=e=>t=>t.translate(-e.left,-e.top),Wp=e=>t=>t.translate(e.left,e.top),jp=e=>(t,o)=>W(e,(e,t)=>t(e),Bn(t,o)),$p=(e,t,o)=>e.fold(jp([Wp(o),Up(t)]),jp([Up(t)]),jp([])),Gp=(e,t,o)=>e.fold(jp([Wp(o)]),jp([]),jp([Wp(t)])),qp=(e,t,o)=>e.fold(jp([]),jp([Up(o)]),jp([Wp(t),Up(o)])),Yp=(e,t,o)=>{const n=e.fold((e,t)=>({position:A.some("absolute"),left:A.some(e+"px"),top:A.some(t+"px")}),(e,t)=>({position:A.some("absolute"),left:A.some(e-o.left+"px"),top:A.some(t-o.top+"px")}),(e,t)=>({position:A.some("fixed"),left:A.some(e+"px"),top:A.some(t+"px")}));return{right:A.none(),bottom:A.none(),...n}},Xp=(e,t,o,n)=>{const s=(e,s)=>(r,a)=>{const i=e(t,o,n);return s(r.getOr(i.left),a.getOr(i.top))};return e.fold(s(qp,Kp),s(Gp,Jp),s($p,Qp))},Kp=Pp.offset,Jp=Pp.absolute,Qp=Pp.fixed,Zp=(e,t)=>{const o=Ko(e,t);return u(o)?NaN:parseInt(o,10)},eh=(e,t,o,n,s,r)=>{const a=((e,t,o,n)=>((e,t)=>{const o=e.element,n=Zp(o,t.leftAttr),s=Zp(o,t.topAttr);return isNaN(n)||isNaN(s)?A.none():A.some(Bn(n,s))})(e,t).fold(()=>o,e=>Qp(e.left+n.left,e.top+n.top)))(e,t,o,n),i=t.mustSnap?oh(e,t,a,s,r):nh(e,t,a,s,r),l=$p(a,s,r);return((e,t,o)=>{const n=e.element;Yo(n,t.leftAttr,o.left+"px"),Yo(n,t.topAttr,o.top+"px")})(e,t,l),i.fold(()=>({coord:Qp(l.left,l.top),extra:A.none()}),e=>({coord:e.output,extra:e.extra}))},th=(e,t,o,n)=>se(e,e=>{const s=e.sensor,r=((e,t,o,n,s,r)=>{const a=Gp(e,s,r),i=Gp(t,s,r);return Math.abs(a.left-i.left)<=o&&Math.abs(a.top-i.top)<=n})(t,s,e.range.left,e.range.top,o,n);return r?A.some({output:Xp(e.output,t,o,n),extra:e.extra}):A.none()}),oh=(e,t,o,n,s)=>{const r=t.getSnapPoints(e);return th(r,o,n,s).orThunk(()=>{const e=W(r,(e,t)=>{const r=t.sensor,a=((e,t,o,n,s,r)=>{const a=Gp(e,s,r),i=Gp(t,s,r),l=Math.abs(a.left-i.left),c=Math.abs(a.top-i.top);return Bn(l,c)})(o,r,t.range.left,t.range.top,n,s);return e.deltas.fold(()=>({deltas:A.some(a),snap:A.some(t)}),o=>(a.left+a.top)/2<=(o.left+o.top)/2?{deltas:A.some(a),snap:A.some(t)}:e)},{deltas:A.none(),snap:A.none()});return e.snap.map(e=>({output:Xp(e.output,o,n,s),extra:e.extra}))})},nh=(e,t,o,n,s)=>{const r=t.getSnapPoints(e);return th(r,o,n,s)};var sh=Object.freeze({__proto__:null,snapTo:(e,t,o,n)=>{const s=t.getTarget(e.element);if(t.repositionTarget){const t=co(e.element),o=Nn(t),r=Gs(s),a=((e,t,o)=>({coord:Xp(e.output,e.output,t,o),extra:e.extra}))(n,o,r),i=Yp(a.coord,0,r);hn(s,i)}}});const rh=(e,t)=>ma(e,{},V(t,t=>{return o=t.name(),n="Cannot configure "+t.name()+" for "+e,Vr(o,o,{tag:"option",process:{}},nr(e=>Zs("The field: "+o+" is forbidden. "+n)));var o,n}).concat([Lr("dump",w)])),ah=e=>e.dump,ih=(e,t)=>({...hd(t),...e.dump}),lh=rh,ch=ih,dh=(e,t,o,n,s)=>{const r=((e,t)=>(e.length>0?[qr("parts",e)]:[]).concat([Pr("uid"),sa("dom",{}),sa("components",[]),Bi("originalSpec"),sa("debug.sketcher",{})]).concat(t))(n,s);return Fr(e+" [SpecSchema]",Cr(r.concat(t)),o)},uh=(e,t,o,n,s)=>{const r=mh(s),a=bl(o),i=El(o),l=dh(e,t,r,a,[i]),c=xl(0,l,o);return n(l,yl(e,l,c.internals()),r,c.externals())},mh=e=>(e=>be(e,"uid"))(e)?e:{...e,uid:yg("uid")},gh=Cr([Pr("name"),Pr("factory"),Pr("configFields"),sa("apis",{}),sa("extraApis",{})]),ph=Cr([Pr("name"),Pr("factory"),Pr("configFields"),Pr("partFields"),sa("apis",{}),sa("extraApis",{})]),hh=e=>{const t=Fr("Sketcher for "+e.name,gh,e),o=le(t.apis,zm),n=le(t.extraApis,(e,t)=>Ri(e,t));return{name:t.name,configFields:t.configFields,sketch:e=>((e,t,o,n)=>{const s=mh(n);return o(dh(e,t,s,[],[]),s)})(t.name,t.configFields,t.factory,e),...o,...n}},fh=e=>{const t=Fr("Sketcher for "+e.name,ph,e),o=pl(t.name,t.partFields),n=le(t.apis,zm),s=le(t.extraApis,(e,t)=>Ri(e,t));return{name:t.name,partFields:t.partFields,configFields:t.configFields,sketch:e=>uh(t.name,t.configFields,t.partFields,t.factory,e),parts:o,...n,...s}},bh=hh({name:"Container",factory:e=>{const{attributes:t,...o}=e.dom;return{uid:e.uid,dom:{tag:"div",attributes:{role:"presentation",...t},...o},components:e.components,behaviours:ah(e.containerBehaviours),events:e.events,domModification:e.domModification,eventOrder:e.eventOrder}},configFields:[sa("components",[]),rh("containerBehaviours",[]),sa("events",{}),sa("domModification",{}),sa("eventOrder",{})]}),vh="data-initial-z-index",xh=(e,t)=>{e.getSystem().addToGui(t),(e=>{po(e.element).filter(so).each(t=>{vn(t,"z-index").each(e=>{Yo(t,vh,e)}),gn(t,"z-index",fn(e.element,"z-index"))})})(t)},yh=e=>{(e=>{po(e.element).filter(so).each(e=>{Jo(e,vh).fold(()=>wn(e,"z-index"),t=>gn(e,"z-index",t)),Zo(e,vh)})})(e),e.getSystem().removeFromGui(e)},wh=(e,t,o)=>e.getSystem().build(bh.sketch({dom:{styles:{left:"0px",top:"0px",width:"100%",height:"100%",position:"fixed","z-index":"1000000000000000"},classes:[t]},events:o}));var Sh=na("snaps",[Pr("getSnapPoints"),Ti("onSensor"),Pr("leftAttr"),Pr("topAttr"),sa("lazyViewport",Ws),sa("mustSnap",!1)]);const Ch=[sa("useFixed",T),sa("getTarget",w),sa("onDragStart",b),sa("onDrag",b),sa("repositionTarget",!0),sa("onDrop",b),da("getBounds",Ws),Sh],kh=e=>{return(t=vn(e,"left"),o=vn(e,"top"),n=vn(e,"position"),t.isSome()&&o.isSome()&&n.isSome()?A.some(((e,t,o)=>("fixed"===o?Qp:Kp)(parseInt(e,10),parseInt(t,10)))(t.getOrDie(),o.getOrDie(),n.getOrDie())):A.none()).getOrThunk(()=>{const t=Fn(e);return Jp(t.left,t.top)});var t,o,n},Oh=(e,t)=>({bounds:e.getBounds(),height:_n(t.element),width:Dn(t.element)}),_h=(e,t,o,n,s)=>{const r=o.update(n,s),a=o.getStartData().getOrThunk(()=>Oh(t,e));r.each(o=>{((e,t,o,n)=>{const s=t.getTarget(e.element);if(t.repositionTarget){const r=co(e.element),a=Nn(r),i=Gs(s),l=kh(s),c=((e,t,o,n,s,r,a)=>((e,t,o,n,s)=>{const r=s.bounds,a=Gp(t,o,n),i=Fe(a.left,r.x,r.x+r.width-s.width),l=Fe(a.top,r.y,r.y+r.height-s.height),c=Jp(i,l);return t.fold(()=>{const e=qp(c,o,n);return Kp(e.left,e.top)},y(c),()=>{const e=$p(c,o,n);return Qp(e.left,e.top)})})(0,t.fold(()=>{const e=(t=o,a=r.left,i=r.top,t.fold((e,t)=>Kp(e+a,t+i),(e,t)=>Jp(e+a,t+i),(e,t)=>Qp(e+a,t+i)));var t,a,i;const l=$p(e,n,s);return Qp(l.left,l.top)},t=>{const a=eh(e,t,o,r,n,s);return a.extra.each(o=>{t.onSensor(e,o)}),a.coord}),n,s,a))(e,t.snaps,l,a,i,n,o),d=Yp(c,0,i);hn(s,d)}t.onDrag(e,s,n)})(e,t,a,o)})},Th=(e,t,o,n)=>{t.each(yh),o.snaps.each(t=>{((e,t)=>{((e,t)=>{const o=e.element;Zo(o,t.leftAttr),Zo(o,t.topAttr)})(e,t)})(e,t)});const s=o.getTarget(e.element);n.reset(),o.onDrop(e,s)},Eh=e=>(t,o)=>{const n=e=>{const n=o.getStartData().isSome();if(o.setStartData(Oh(t,e)),!n){const o=t.getTarget(e.element);t.onDragStart(e,o)}};return Kc([Zc(ti(),e=>{o.getStartData().each(()=>n(e))}),...e(t,o,n)])};var Ah=Object.freeze({__proto__:null,getData:e=>A.from(Bn(e.x,e.y)),getDelta:(e,t)=>Bn(t.left-e.left,t.top-e.top)});const Dh=(e,t,o)=>[Zc(ya(),(n,s)=>{if(0!==s.event.raw.button)return;s.stop();const r=()=>Th(n,A.some(l),e,t),a=Ni(r,200),i={drop:r,delayDrop:a.schedule,forceDrop:r,move:o=>{a.cancel(),_h(n,e,t,Ah,o)}},l=wh(n,e.blockerClass,(e=>Kc([Zc(ya(),e.forceDrop),Zc(Ca(),e.drop),Zc(wa(),(t,o)=>{e.move(o.event)}),Zc(Sa(),e.delayDrop)]))(i));o(n),xh(n,l)})],Mh=[...Ch,Pr("blockerClass"),Mi("dragger",{handlers:Eh(Dh)})];var Bh=Object.freeze({__proto__:null,getData:e=>{const t=e.raw.touches;return 1===t.length?(e=>{const t=e[0];return A.some(Bn(t.clientX,t.clientY))})(t):A.none()},getDelta:(e,t)=>Bn(t.left-e.left,t.top-e.top)});const Ih=(e,t,o)=>{const n=Ye(),s=o=>{Th(o,n.get(),e,t),n.clear()};return[Zc(fa(),(r,a)=>{a.stop();const i=()=>s(r),l={drop:i,delayDrop:b,forceDrop:i,move:o=>{_h(r,e,t,Bh,o)}},c=wh(r,e.blockerClass,(e=>Kc([Zc(fa(),e.forceDrop),Zc(va(),e.drop),Zc(xa(),e.drop),Zc(ba(),(t,o)=>{e.move(o.event)})]))(l));n.set(c),o(r),xh(r,c)}),Zc(ba(),(o,n)=>{n.stop(),_h(o,e,t,Bh,n.event)}),Zc(va(),(e,t)=>{t.stop(),s(e)}),Zc(xa(),s)]},Fh=[...Ch,Pr("blockerClass"),Mi("dragger",{handlers:Eh(Ih)})],Rh=[...Ch,Pr("blockerClass"),Mi("dragger",{handlers:Eh((e,t,o)=>[...Dh(e,t,o),...Ih(e,t,o)])})];var Nh=Object.freeze({__proto__:null,getData:e=>A.from(Bn(e.x,e.y)),getDelta:(e,t)=>Bn(t.left-e.left,t.top-e.top)});const zh=Mh,Vh=Fh,Lh=Rh,Hh=[...Ch,Mi("dragger",{handlers:Eh((e,t,o)=>[Zc(Na(),(e,n)=>{const s=n.event.raw;0===s.button&&t.getStartData().isNone()&&(n.stop(),e.element.dom.setPointerCapture(s.pointerId),t.setActivePointerId(s.pointerId),o(e))}),Zc(za(),(o,n)=>{const s=n.event.raw.pointerId;Ue(t.getStartData(),t.getActivePointerId(),(r,a)=>{s===a&&_h(o,e,t,Nh,n.event)})}),Zc(Va(),(o,n)=>{const s=n.event.raw.pointerId;Ue(t.getStartData(),t.getActivePointerId(),(n,r)=>{s===r&&(o.element.dom.releasePointerCapture(s),Th(o,A.none(),e,t))})}),Zc(La(),o=>{t.getStartData().each(()=>{Th(o,A.none(),e,t)})})])})];var Ph=Object.freeze({__proto__:null,mouse:zh,touch:Vh,mouseOrTouch:Lh,pointer:Hh}),Uh=Object.freeze({__proto__:null,init:()=>{const e=Ye(),t=Ye(),o=Ye(),n=y({});return Pc({readState:n,reset:()=>{e.clear(),t.clear(),o.clear()},update:(t,o)=>t.getData(o).bind(o=>((t,o)=>{const n=e.get().map(e=>t.getDelta(e,o));return e.set(o),n})(t,o)),getStartData:()=>t.get(),setStartData:e=>{t.set(e)},setActivePointerId:e=>{o.set(e)},getActivePointerId:()=>o.get()})}});const Wh=xd({branchKey:"mode",branches:Ph,name:"dragging",active:{events:(e,t)=>e.dragger.handlers(e,t)},extra:{snap:e=>({sensor:e.sensor,range:e.range,output:e.output,extra:A.from(e.extra)})},state:Uh,apis:sh}),jh=["input","textarea"],$h=e=>{const t=to(e);return F(jh,t)},Gh=(e,t)=>{const o=t.getRoot(e).getOr(e.element);rs(o,t.invalidClass),t.notify.each(t=>{$h(e.element)&&Yo(e.element,"aria-invalid",!1),t.getContainer(e).each(e=>{sn(e,t.validHtml)}),t.onValid(e)})},qh=(e,t,o,n)=>{const s=t.getRoot(e).getOr(e.element);ns(s,t.invalidClass),t.notify.each(t=>{$h(e.element)&&Yo(e.element,"aria-invalid",!0),t.getContainer(e).each(e=>{sn(e,n)}),t.onInvalid(e,n)})},Yh=(e,t,o)=>t.validator.fold(()=>_e(Ae.value(!0)),t=>t.validate(e)),Xh=(e,t,o)=>(t.notify.each(t=>{t.onValidate(e)}),Yh(e,t).map(o=>e.getSystem().isConnected()?o.fold(o=>(qh(e,t,0,o),Ae.error(o)),o=>(Gh(e,t),Ae.value(o))):Ae.error("No longer in system")));var Kh=Object.freeze({__proto__:null,markValid:Gh,markInvalid:qh,query:Yh,run:Xh,isInvalid:(e,t)=>{const o=t.getRoot(e).getOr(e.element);return as(o,t.invalidClass)}}),Jh=Object.freeze({__proto__:null,events:(e,t)=>e.validator.map(t=>Kc([Zc(t.onEvent,t=>{Xh(t,e).get(w)})].concat(t.validateOnLoad?[id(t=>{Xh(t,e).get(b)})]:[]))).getOr({})}),Qh=[Pr("invalidClass"),sa("getRoot",A.none),na("notify",[sa("aria","alert"),sa("getContainer",A.none),sa("validHtml",""),Ti("onValid"),Ti("onInvalid"),Ti("onValidate")]),na("validator",[Pr("validate"),sa("onEvent","input"),sa("validateOnLoad",!0)])];const Zh=(e,t,o)=>{t.store.manager.onLoad(e,t,o)},ef=(e,t,o)=>{t.store.manager.onUnload(e,t,o)};var tf=Object.freeze({__proto__:null,onLoad:Zh,onUnload:ef,setValue:(e,t,o,n)=>{t.store.manager.setValue(e,t,o,n)},getValue:(e,t,o)=>t.store.manager.getValue(e,t,o),getState:(e,t,o)=>o}),of=Object.freeze({__proto__:null,events:(e,t)=>{const o=e.resetOnDom?[id((o,n)=>{Zh(o,e,t)}),ld((o,n)=>{ef(o,e,t)})]:[md(e,t,Zh)];return Kc(o)}});const nf=()=>{const e=ye(null);return Pc({set:e.set,get:e.get,isNotSet:()=>null===e.get(),clear:()=>{e.set(null)},readState:()=>({mode:"memory",value:e.get()})})},sf=()=>{const e=ye({}),t=ye({});return Pc({readState:()=>({mode:"dataset",dataByValue:e.get(),dataByText:t.get()}),lookup:o=>fe(e.get(),o).orThunk(()=>fe(t.get(),o)),update:o=>{const n=e.get(),s=t.get(),r={},a={};L(o,e=>{r[e.value]=e,fe(e,"meta").each(t=>{fe(t,"text").each(t=>{a[t]=e})})}),e.set({...n,...r}),t.set({...s,...a})},clear:()=>{e.set({}),t.set({})}})};var rf=Object.freeze({__proto__:null,memory:nf,dataset:sf,manual:()=>Pc({readState:b}),init:e=>e.store.manager.state(e)});const af=(e,t,o,n)=>{const s=t.store;o.update([n]),s.setValue(e,n),t.onSetValue(e,n)};var lf=[Kr("initialValue"),Pr("getFallbackEntry"),Pr("getDataKey"),Pr("setValue"),Mi("manager",{setValue:af,getValue:(e,t,o)=>{const n=t.store,s=n.getDataKey(e);return o.lookup(s).getOrThunk(()=>n.getFallbackEntry(s))},onLoad:(e,t,o)=>{t.store.initialValue.each(n=>{af(e,t,o,n)})},onUnload:(e,t,o)=>{o.clear()},state:sf})],cf=[Pr("getValue"),sa("setValue",b),Kr("initialValue"),Mi("manager",{setValue:(e,t,o,n)=>{t.store.setValue(e,n),t.onSetValue(e,n)},getValue:(e,t,o)=>t.store.getValue(e),onLoad:(e,t,o)=>{t.store.initialValue.each(o=>{t.store.setValue(e,o)})},onUnload:b,state:Hc.init})],df=[Kr("initialValue"),Mi("manager",{setValue:(e,t,o,n)=>{o.set(n),t.onSetValue(e,n)},getValue:(e,t,o)=>o.get(),onLoad:(e,t,o)=>{t.store.initialValue.each(e=>{o.isNotSet()&&o.set(e)})},onUnload:(e,t,o)=>{o.clear()},state:nf})],uf=[ra("store",{mode:"memory"},Nr("mode",{memory:df,manual:cf,dataset:lf})),Ti("onSetValue"),sa("resetOnDom",!1)];const mf=bd({fields:uf,name:"representing",active:of,apis:tf,extra:{setValueFrom:(e,t)=>{const o=mf.getValue(t);mf.setValue(e,o)}},state:rf}),gf=bd({fields:Qh,name:"invalidating",active:Jh,apis:Kh,extra:{validation:e=>t=>{const o=mf.getValue(t);return _e(e(o))}}});var pf=Object.freeze({__proto__:null,exhibit:(e,t)=>ud({classes:[],styles:t.useFixed()?{}:{position:"relative"}})});const hf=xe([{none:[]},{relative:["x","y","width","height"]},{fixed:["x","y","width","height"]}]),ff=(e,t,o,n,s,r)=>{const a=t.rect,i=a.x-o,l=a.y-n,c=s-(i+a.width),d=r-(l+a.height),u=A.some(i),m=A.some(l),g=A.some(c),p=A.some(d),h=A.none();return t.direction.fold(()=>pp(e,u,m,h,h),()=>pp(e,h,m,g,h),()=>pp(e,u,h,h,p),()=>pp(e,h,h,g,p),()=>pp(e,u,m,h,h),()=>pp(e,u,h,h,p),()=>pp(e,u,m,h,h),()=>pp(e,h,m,g,h))},bf=(e,t)=>e.fold(()=>{const e=t.rect;return pp("absolute",A.some(e.x),A.some(e.y),A.none(),A.none())},(e,o,n,s)=>ff("absolute",t,e,o,n,s),(e,o,n,s)=>ff("fixed",t,e,o,n,s)),vf=(e,t)=>{const o=C(Vs,t),n=e.fold(o,o,()=>{const e=Nn();return Vs(t).translate(-e.left,-e.top)}),s=Dn(t),r=_n(t);return Ls(n.left,n.top,s,r)},xf=(e,t)=>t.fold(()=>e.fold(Ws,Ws,Ls),t=>e.fold(y(t),y(t),()=>{const o=yf(e,t.x,t.y);return Ls(o.left,o.top,t.width,t.height)})),yf=(e,t,o)=>{const n=Bn(t,o);return e.fold(y(n),y(n),()=>{const e=Nn();return n.translate(-e.left,-e.top)})};hf.none;const wf=hf.relative,Sf=hf.fixed,Cf=xe([{fit:["reposition"]},{nofit:["reposition","visibleW","visibleH","isVisible"]}]),kf=(e,t,o,n)=>{const s=e.bubble,r=s.offset,a=((e,t,o)=>{const n=(n,s)=>t[n].map(t=>{const r="top"===n||"bottom"===n,a=r?o.top:o.left,i=("left"===n||"top"===n?Math.max:Math.min)(t,s)+a;return r?Fe(i,e.y,e.bottom):Fe(i,e.x,e.right)}).getOr(s),s=n("left",e.x),r=n("top",e.y),a=n("right",e.right),i=n("bottom",e.bottom);return Ls(s,r,a-s,i-r)})(n,e.restriction,r),i=e.x+r.left,l=e.y+r.top,c=Ls(i,l,t,o),{originInBounds:d,sizeInBounds:u,visibleW:m,visibleH:g}=((e,t)=>{const{x:o,y:n,right:s,bottom:r}=t,{x:a,y:i,right:l,bottom:c,width:d,height:u}=e;return{originInBounds:a>=o&&a<=s&&i>=n&&i<=r,sizeInBounds:l<=s&&l>=o&&c<=r&&c>=n,visibleW:Math.min(d,a>=o?s-a:l-o),visibleH:Math.min(u,i>=n?r-i:c-n)}})(c,a),p=d&&u,h=p?c:((e,t)=>{const{x:o,y:n,right:s,bottom:r}=t,{x:a,y:i,width:l,height:c}=e,d=Math.max(o,s-l),u=Math.max(n,r-c),m=Fe(a,o,d),g=Fe(i,n,u),p=Math.min(m+l,s)-m,h=Math.min(g+c,r)-g;return Ls(m,g,p,h)})(c,a),f=h.width>0&&h.height>0,{maxWidth:b,maxHeight:v}=((e,t,o)=>{const n=y(t.bottom-o.y),s=y(o.bottom-t.y),r=((e,t,o,n)=>e.fold(t,t,n,n,t,n,o,o))(e,s,s,n),a=y(t.right-o.x),i=y(o.right-t.x),l=((e,t,o,n)=>e.fold(t,n,t,n,o,o,t,n))(e,i,i,a);return{maxWidth:l,maxHeight:r}})(e.direction,h,n),x={rect:h,maxHeight:v,maxWidth:b,direction:e.direction,placement:e.placement,classes:{on:s.classesOn,off:s.classesOff},layout:e.label,testY:l};return p||e.alwaysFit?Cf.fit(x):Cf.nofit(x,m,g,f)},Of=["top","bottom","right","left"],_f="data-alloy-transition-timer",Tf=(e,t,o,n,s,a)=>{const i=((e,t,o)=>o.exists(o=>{const n=e.mode;return"all"===n||o[n]!==t[n]}))(n,s,a);if(i||((e,t)=>((e,t)=>Y(t,t=>as(e,t)))(e,t.classes))(e,n)){gn(e,"position",o.position);const a=vf(t,e),l=bf(t,{...s,rect:a}),c=J(Of,e=>l[e]);((e,t)=>{const o=e=>parseFloat(e).toFixed(3);return pe(t,(t,n)=>!((e,t,o=S)=>Ue(e,t,o).getOr(e.isNone()&&t.isNone()))(e[n].map(o),t.map(o))).isSome()})(o,c)&&(hn(e,c),i&&((e,t)=>{is(e,t.classes),Jo(e,_f).each(t=>{clearTimeout(parseInt(t,10)),Zo(e,_f)}),((e,t)=>{const o=qe(),n=qe();let s;const a=t=>{const o=t.raw.pseudoElement??"";return wt(t.target,e)&&ot(o)&&F(Of,t.raw.propertyName)},i=r=>{if(m(r)||a(r)){o.clear(),n.clear();const a=r?.raw.type;(m(a)||a===Ia())&&(clearTimeout(s),Zo(e,_f),ls(e,t.classes))}},l=Io(e,Fa(),t=>{a(t)&&(l.unbind(),o.set(Io(e,Ia(),i)),n.set(Io(e,Ba(),i)))}),c=(e=>{const t=t=>{const o=fn(e,t).split(/\s*,\s*/);return P(o,tt)},o=e=>{if(r(e)&&/^[\d.]+/.test(e)){const t=parseFloat(e);return Ze(e,"ms")?t:1e3*t}return 0},n=t("transition-delay"),s=t("transition-duration");return W(s,(e,t,s)=>{const r=o(n[s])+o(t);return Math.max(e,r)},0)})(e);window.requestAnimationFrame(()=>{s=setTimeout(i,c+17),Yo(e,_f,s)})})(e,t)})(e,n),Sn(e))}else ls(e,n.classes)},Ef=(e,t,o)=>void 0===e[t]?o:e[t],Af=(e,t,o,n)=>{const s=((e,t,o,n)=>{wn(t,"max-height"),wn(t,"max-width");const s=(r=t,{width:Math.ceil(Dn(r)),height:_n(r)});var r;return((e,t,o,n,s,r)=>{const a=n.width,i=n.height,l=(t,l,c,d,u)=>{const m=t(o,n,s,e,r),g=kf(m,a,i,r);return g.fold(y(g),(e,t,o,n)=>(u===n?o>d||t>c:!u&&n)?g:Cf.nofit(l,c,d,u))};return W(t,(e,t)=>{const o=C(l,t);return e.fold(y(e),o)},Cf.nofit({rect:o,maxHeight:n.height,maxWidth:n.width,direction:Rl(),placement:"southeast",classes:{on:[],off:[]},layout:"none",testY:o.y},-1,-1,!1)).fold(w,w)})(t,n.preference,e,s,o,n.bounds)})(e,t,o,n);return((e,t,o)=>{const n=bf(o.origin,t);o.transition.each(s=>{Tf(e,o.origin,n,s,t,o.lastPlacement)}),hp(e,n)})(t,s,n),((e,t)=>{((e,t)=>{Yo(e,uc,t)})(e,t.placement)})(t,s),((e,t)=>{const o=t.classes;ls(e,o.off),is(e,o.on)})(t,s),((e,t,o)=>{(0,o.maxHeightFunction)(e,t.maxHeight)})(t,s,n),((e,t,o)=>{(0,o.maxWidthFunction)(e,t.maxWidth)})(t,s,n),{layout:s.layout,placement:s.placement}},Df=w,Mf=()=>na("layouts",[Pr("onLtr"),Pr("onRtl"),Kr("onBottomLtr"),Kr("onBottomRtl")]),Bf=(e,t,o,n,s,r,a)=>{const i=a.map(Vc).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(s):l.getOr(o),u=i?t.layouts.bind(t=>t.onBottomRtl.map(t=>t(e))).or(c).getOr(r):c.getOr(n);return Ln(d,u)(e)};var If=[Pr("hotspot"),Kr("bubble"),sa("overrides",{}),Mf(),Mi("placement",(e,t,o)=>{const n=t.hotspot,s=vf(o,n.element),r=Bf(e.element,t,cc(),dc(),ic(),lc(),A.some(t.hotspot.element));return A.some(Df({anchorBox:s,bubble:t.bubble.getOr(Bl()),overrides:t.overrides,layouts:r}))})],Ff=[Pr("x"),Pr("y"),sa("height",0),sa("width",0),sa("bubble",Bl()),sa("overrides",{}),Mf(),Mi("placement",(e,t,o)=>{const n=yf(o,t.x,t.y),s=Ls(n.left,n.top,t.width,t.height),r=Bf(e.element,t,rc(),ac(),rc(),ac(),A.none());return A.some(Df({anchorBox:s,bubble:t.bubble,overrides:t.overrides,layouts:r}))})];const Rf=xe([{screen:["point"]},{absolute:["point","scrollLeft","scrollTop"]}]),Nf=e=>e.fold(w,(e,t,o)=>e.translate(-t,-o)),zf=e=>e.fold(w,w),Vf=e=>W(e,(e,t)=>e.translate(t.left,t.top),Bn(0,0)),Lf=e=>{const t=V(e,zf);return Vf(t)},Hf=Rf.screen,Pf=Rf.absolute,Uf=(e,t,o)=>{const n=co(e.element),s=Nn(n),r=((e,t,o)=>{const n=go(o.root).dom;return A.from(n.frameElement).map(ct).filter(t=>{const o=co(t),n=co(e.element);return wt(o,n)}).map(Fn)})(e,0,o).getOr(s);return Pf(r,s.left,s.top)},Wf=(e,t,o,n)=>{const s=Hf(Bn(e,t));return A.some(((e,t,o)=>({point:e,width:t,height:o}))(s,o,n))},jf=(e,t,o,n,s)=>e.map(e=>{const r=[t,e.point],a=(i=()=>Lf(r),l=()=>Lf(r),c=()=>(e=>{const t=V(e,Nf);return Vf(t)})(r),n.fold(i,l,c));var i,l,c;const d=(p=a.left,h=a.top,f=e.width,b=e.height,{x:p,y:h,width:f,height:b}),u=o.showAbove?ic():cc(),m=o.showAbove?lc():dc(),g=Bf(s,o,u,m,u,m,A.none());var p,h,f,b;return Df({anchorBox:d,bubble:o.bubble.getOr(Bl()),overrides:o.overrides,layouts:g})});var $f=[Pr("node"),Pr("root"),Kr("bubble"),Mf(),sa("overrides",{}),sa("showAbove",!1),Mi("placement",(e,t,o)=>{const n=Uf(e,0,t);return t.node.filter(ln).bind(s=>{const r=s.dom.getBoundingClientRect(),a=Wf(r.left,r.top,r.width,r.height),i=t.node.getOr(e.element);return jf(a,n,t,o,i)})})];const Gf=(e,t)=>({element:e,offset:t}),qf=(e,t)=>ro(e)?Gf(e,t):((e,t)=>{const o=xo(e);if(0===o.length)return Gf(e,t);if(t<o.length)return Gf(o[t],0);{const e=o[o.length-1],t=ro(e)?(e=>Vn.get(e))(e).length:xo(e).length;return Gf(e,t)}})(e,t),Yf=e=>void 0!==e.foffset,Xf=(e,t)=>t.getSelection.getOrThunk(()=>()=>As(e))().map(e=>{if(Yf(e)){const t=qf(e.start,e.soffset),o=qf(e.finish,e.foffset);return Cs.range(t.element,t.offset,o.element,o.offset)}return e});var Kf=[Kr("getSelection"),Pr("root"),Kr("bubble"),Mf(),sa("overrides",{}),sa("showAbove",!1),Mi("placement",(e,t,o)=>{const n=go(t.root).dom,s=Uf(e,0,t),r=Xf(n,t).bind(e=>{if(Yf(e)){const t=((e,t)=>(e=>{const t=e.getBoundingClientRect();return t.width>0||t.height>0?A.some(t).map(mt):A.none()})(ft(e,t)))(n,Cs.exactFromRange(e)).orThunk(()=>{const t=lt("\ufeff"),o=As(n);Uo(e.start,t);const s=Ds(n,Cs.exact(t,0,t,1));return tn(t),o.each(e=>((e,t,o,n,s)=>{const r=((e,t,o,n)=>{const s=ks(e,t),r=ks(o,n);return Cs.relative(s,r)})(t,o,n,s);((e,t)=>{ht(e,t).match({ltr:(t,o,n,s)=>{_s(e,t,o,n,s)},rtl:(t,o,n,s)=>{Os(e).each(r=>{if(r.setBaseAndExtent)r.setBaseAndExtent(t.dom,o,n.dom,s);else if(r.extend)try{((e,t,o,n,s,r)=>{t.collapse(o.dom,n),t.extend(s.dom,r)})(0,r,t,o,n,s)}catch{_s(e,n,s,t,o)}else _s(e,n,s,t,o)})}})})(e,r)})(n,e.start,e.soffset,e.finish,e.foffset)),s});return t.bind(e=>Wf(e.left,e.top,e.width,e.height))}{const t=le(e,e=>e.dom.getBoundingClientRect()),o={left:Math.min(t.firstCell.left,t.lastCell.left),right:Math.max(t.firstCell.right,t.lastCell.right),top:Math.min(t.firstCell.top,t.lastCell.top),bottom:Math.max(t.firstCell.bottom,t.lastCell.bottom)};return Wf(o.left,o.top,o.right-o.left,o.bottom-o.top)}}),a=Xf(n,t).bind(e=>Yf(e)?so(e.start)?A.some(e.start):ho(e.start):A.some(e.firstCell)).getOr(e.element);return jf(r,s,t,o,a)})];const Jf="link-layout",Qf=e=>e.x+e.width,Zf=(e,t)=>e.x-t.width,eb=(e,t)=>e.y-t.height+e.height,tb=e=>e.y,ob=(e,t,o)=>Il(Qf(e),tb(e),o.southeast(),Rl(),"southeast",Wl(e,{left:0,top:2}),Jf),nb=(e,t,o)=>Il(Zf(e,t),tb(e),o.southwest(),Nl(),"southwest",Wl(e,{right:1,top:2}),Jf),sb=(e,t,o)=>Il(Qf(e),eb(e,t),o.northeast(),zl(),"northeast",Wl(e,{left:0,bottom:3}),Jf),rb=(e,t,o)=>Il(Zf(e,t),eb(e,t),o.northwest(),Vl(),"northwest",Wl(e,{right:1,bottom:3}),Jf),ab=()=>[ob,nb,sb,rb],ib=()=>[nb,ob,rb,sb];var lb=[Pr("item"),Mf(),sa("overrides",{}),Mi("placement",(e,t,o)=>{const n=vf(o,t.item.element),s=Bf(e.element,t,ab(),ib(),ab(),ib(),A.none());return A.some(Df({anchorBox:n,bubble:Bl(),overrides:t.overrides,layouts:s}))})],cb=Nr("type",{selection:Kf,node:$f,hotspot:If,submenu:lb,makeshift:Ff});const db=[Xr("classes",lr),la("mode","all",["all","layout","placement"])],ub=[sa("useFixed",T),Kr("getBounds")],mb=[Ur("anchor",cb),na("transition",db)],gb=(e,t,o,n,s,r)=>{const a=Fr("placement.info",kr(mb),s),i=a.anchor,l=n.element,c=o.get(n.uid);og(()=>{gn(l,"position","fixed");const s=vn(l,"visibility");gn(l,"visibility","hidden");const d=t.useFixed()?(()=>{const e=document.documentElement;return Sf(0,0,e.clientWidth,e.clientHeight)})():(e=>{const t=Fn(e.element),o=e.element.dom.getBoundingClientRect();return wf(t.left,t.top,o.width,o.height)})(e);i.placement(e,i,d).each(e=>{const s=r.orThunk(()=>t.getBounds.map(_)),i=((e,t,o,n,s,r)=>((e,t,o,n,s,r,a,i)=>{const l=Ef(a,"maxHeightFunction",Ic()),c=Ef(a,"maxWidthFunction",b),d=e.anchorBox,u=e.origin,m={bounds:xf(u,r),origin:u,preference:n,maxHeightFunction:l,maxWidthFunction:c,lastPlacement:s,transition:i};return Af(d,t,o,m)})(((e,t)=>((e,t)=>({anchorBox:e,origin:t}))(e,t))(t.anchorBox,e),n.element,t.bubble,t.layouts,s,o,t.overrides,r))(d,e,s,n,c,a.transition);o.set(n.uid,i)}),s.fold(()=>{wn(l,"visibility")},e=>{gn(l,"visibility",e)}),vn(l,"left").isNone()&&vn(l,"top").isNone()&&vn(l,"right").isNone()&&vn(l,"bottom").isNone()&&He(vn(l,"position"),"fixed")&&wn(l,"position")},l)};var pb=Object.freeze({__proto__:null,position:(e,t,o,n,s)=>{const r=A.none();gb(e,t,o,n,s,r)},positionWithinBounds:gb,getMode:(e,t,o)=>t.useFixed()?"fixed":"absolute",reset:(e,t,o,n)=>{const s=n.element;L(["position","left","right","top","bottom"],e=>wn(s,e)),(e=>{Zo(e,uc)})(s),o.clear(n.uid)}});const hb=bd({fields:ub,name:"positioning",active:pf,apis:pb,state:Object.freeze({__proto__:null,init:()=>{let e={};return Pc({readState:()=>e,clear:t=>{g(t)?delete e[t]:e={}},set:(t,o)=>{e[t]=o},get:t=>fe(e,t)})}})});var fb=Object.freeze({__proto__:null,events:e=>Kc([Zc($a(),(t,o)=>{const n=e.channels,s=re(n),r=o,a=((e,t)=>t.universal?e:P(e,e=>F(t.channels,e)))(s,r);L(a,e=>{const o=n[e],s=o.schema,a=Fr("channel["+e+"] data\nReceiver: "+pi(t.element),s,r.data);o.onReceive(t,a)})})])}),bb=[Ur("channels",Mr(Ae.value,Cr([Ai("onReceive"),sa("schema",rr())])))];const vb=bd({fields:bb,name:"receiving",active:fb});var xb=Object.freeze({__proto__:null,events:(e,t)=>{const o=(o,n)=>{e.updateState.each(e=>{const s=e(o,n);t.set(s)}),e.renderComponents.each(s=>{const r=s(n,t.get());(e.reuseDom?sg:ng)(o,r)})};return Kc([Zc($a(),(t,n)=>{const s=n;if(!s.universal){const n=e.channel;F(s.channels,n)&&o(t,s.data)}}),id((t,n)=>{e.initialData.each(e=>{o(t,e)})})])}}),yb=Object.freeze({__proto__:null,getState:(e,t,o)=>o}),wb=[Pr("channel"),Kr("renderComponents"),Kr("updateState"),Kr("initialData"),ca("reuseDom",!0)];const Sb=bd({fields:wb,name:"reflecting",active:xb,apis:yb,state:Object.freeze({__proto__:null,init:()=>{const e=ye(A.none());return{readState:()=>e.get().getOr("none"),get:e.get,set:e.set,clear:()=>e.set(A.none())}}})}),Cb=e=>{const t=e.getAccumulatedDelta(),o=e.getBounds();return{width:Fe(Math.round(e.getOriginalWidth()+t.left),o.minWidth.getOr(0),o.maxWidth.getOr(Number.MAX_VALUE)),height:Fe(Math.round(e.getOriginalHeight()+t.top),o.minHeight.getOr(0),o.maxHeight.getOr(Number.MAX_VALUE))}};var kb=Object.freeze({__proto__:null,start:(e,t,o,n,s,r)=>{o.start(n,s,r)},moveBy:(e,t,o,n)=>o.isActive()?(o.drag(n),A.some(Cb(o))):A.none(),stop:(e,t,o)=>o.isActive()?(o.stop(),A.some(Cb(o))):A.none()}),Ob=Object.freeze({__proto__:null,init:()=>{const e=ye(0),t=ye(0),o=ye(Bn(0,0)),n=ye(!1),s=ye({minWidth:A.none(),maxWidth:A.none(),minHeight:A.none(),maxHeight:A.none()});return Pc({start:(r,a,i={})=>{e.set(r),t.set(a),o.set(Bn(0,0)),s.set({minWidth:A.from(i.minWidth),maxWidth:A.from(i.maxWidth),minHeight:A.from(i.minHeight),maxHeight:A.from(i.maxHeight)}),n.set(!0)},stop:()=>{n.set(!1)},isActive:()=>n.get(),drag:e=>{const t=o.get().translate(e.left,e.top);return o.set(t),t},getAccumulatedDelta:()=>o.get(),getOriginalWidth:()=>e.get(),getOriginalHeight:()=>t.get(),getBounds:()=>s.get(),readState:()=>({originalWidth:e.get(),originalHeight:t.get(),accumulatedDelta:o.get(),active:n.get(),bounds:s.get()})})}});const _b=bd({fields:[],name:"resizing",apis:kb,state:Ob}),Tb=(e,t,o,n)=>{o.get().each(t=>{Ym(e)});const s=t.getAttachPoint(e);jm(s,e);const r=e.getSystem().build(n);return jm(e,r),o.set(r),r},Eb=(e,t,o,n)=>{const s=Tb(e,t,o,n);return t.onOpen(e,s),s},Ab=(e,t,o)=>{o.get().each(n=>{Ym(e),qm(e),t.onClose(e,n),o.clear()})},Db=(e,t,o)=>o.isOpen(),Mb=(e,t,o)=>{const n=t.getAttachPoint(e);gn(e.element,"position",hb.getMode(n)),((e,t,o)=>{vn(e.element,t).fold(()=>{Zo(e.element,o)},t=>{Yo(e.element,o,t)}),gn(e.element,t,"hidden")})(e,"visibility",t.cloakVisibilityAttr)},Bb=(e,t,o)=>{(e=>R(["top","left","right","bottom"],t=>vn(e,t).isSome()))(e.element)||wn(e.element,"position"),((e,t,o)=>{Jo(e.element,o).fold(()=>wn(e.element,t),o=>gn(e.element,t,o))})(e,"visibility",t.cloakVisibilityAttr)};var Ib=Object.freeze({__proto__:null,cloak:Mb,decloak:Bb,open:Eb,openWhileCloaked:(e,t,o,n,s)=>{Mb(e,t),Eb(e,t,o,n),s(),Bb(e,t)},close:Ab,isOpen:Db,isPartOf:(e,t,o,n)=>Db(0,0,o)&&o.get().exists(o=>t.isPartOf(e,o,n)),getState:(e,t,o)=>o.get(),setContent:(e,t,o,n)=>o.get().map(()=>Tb(e,t,o,n))}),Fb=Object.freeze({__proto__:null,events:(e,t)=>Kc([Zc(Ka(),(o,n)=>{Ab(o,e,t)})])}),Rb=[Ti("onOpen"),Ti("onClose"),Pr("isPartOf"),Pr("getAttachPoint"),sa("cloakVisibilityAttr","data-precloak-visibility")],Nb=Object.freeze({__proto__:null,init:()=>{const e=Ye(),t=y("not-implemented");return Pc({readState:t,isOpen:e.isSet,clear:e.clear,set:e.set,get:e.get})}});const zb=bd({fields:Rb,name:"sandboxing",active:Fb,apis:Ib,state:Nb}),Vb=(e,t)=>t.getAnimationRoot.fold(()=>e.element,t=>t(e)),Lb=e=>e.dimension.property,Hb=(e,t)=>e.dimension.getDimension(t),Pb=(e,t)=>{const o=Vb(e,t);ls(o,[t.shrinkingClass,t.growingClass])},Ub=(e,t)=>{rs(e.element,t.openClass),ns(e.element,t.closedClass),gn(e.element,Lb(t),"0px"),Sn(e.element)},Wb=(e,t)=>{rs(e.element,t.closedClass),ns(e.element,t.openClass),wn(e.element,Lb(t))},jb=(e,t,o,n)=>{o.setCollapsed(),gn(e.element,Lb(t),Hb(t,e.element)),Pb(e,t),Ub(e,t),t.onStartShrink(e),t.onShrunk(e)},$b=(e,t,o,n)=>{const s=n.getOrThunk(()=>Hb(t,e.element));o.setCollapsed(),gn(e.element,Lb(t),s),Sn(e.element);const r=Vb(e,t);rs(r,t.growingClass),ns(r,t.shrinkingClass),Ub(e,t),t.onStartShrink(e)},Gb=(e,t,o)=>{const n=Hb(t,e.element);("0px"===n?jb:$b)(e,t,o,A.some(n))},qb=(e,t,o)=>{const n=Vb(e,t),s=as(n,t.shrinkingClass),r=Hb(t,e.element);Wb(e,t);const a=Hb(t,e.element);(s?()=>{gn(e.element,Lb(t),r),Sn(e.element)}:()=>{Ub(e,t)})(),rs(n,t.shrinkingClass),ns(n,t.growingClass),Wb(e,t),gn(e.element,Lb(t),a),o.setExpanded(),t.onStartGrow(e)},Yb=(e,t,o)=>{const n=Vb(e,t);return!0===as(n,t.growingClass)},Xb=(e,t,o)=>{const n=Vb(e,t);return!0===as(n,t.shrinkingClass)};var Kb=Object.freeze({__proto__:null,refresh:(e,t,o)=>{if(o.isExpanded()){wn(e.element,Lb(t));const o=Hb(t,e.element);gn(e.element,Lb(t),o)}},grow:(e,t,o)=>{o.isExpanded()||qb(e,t,o)},shrink:(e,t,o)=>{o.isExpanded()&&Gb(e,t,o)},immediateShrink:(e,t,o)=>{o.isExpanded()&&jb(e,t,o)},hasGrown:(e,t,o)=>o.isExpanded(),hasShrunk:(e,t,o)=>o.isCollapsed(),isGrowing:Yb,isShrinking:Xb,isTransitioning:(e,t,o)=>Yb(e,t)||Xb(e,t),toggleGrow:(e,t,o)=>{(o.isExpanded()?Gb:qb)(e,t,o)},disableTransitions:Pb,immediateGrow:(e,t,o)=>{o.isExpanded()||(Wb(e,t),gn(e.element,Lb(t),Hb(t,e.element)),Pb(e,t),o.setExpanded(),t.onStartGrow(e),t.onGrown(e))}}),Jb=Object.freeze({__proto__:null,exhibit:(e,t,o)=>{const n=t.expanded;return ud(n?{classes:[t.openClass],styles:{}}:{classes:[t.closedClass],styles:ga(t.dimension.property,"0px")})},events:(e,t)=>Kc([ad(Ia(),(o,n)=>{n.event.raw.propertyName===e.dimension.property&&(Pb(o,e),t.isExpanded()&&wn(o.element,e.dimension.property),(t.isExpanded()?e.onGrown:e.onShrunk)(o))})])}),Qb=[Pr("closedClass"),Pr("openClass"),Pr("shrinkingClass"),Pr("growingClass"),Kr("getAnimationRoot"),Ti("onShrunk"),Ti("onStartShrink"),Ti("onGrown"),Ti("onStartGrow"),sa("expanded",!1),Ur("dimension",Nr("property",{width:[Mi("property","width"),Mi("getDimension",e=>An(e)+"px")],height:[Mi("property","height"),Mi("getDimension",e=>On(e)+"px")]}))];const Zb=bd({fields:Qb,name:"sliding",active:Jb,apis:Kb,state:Object.freeze({__proto__:null,init:e=>{const t=ye(e.expanded);return Pc({isExpanded:()=>!0===t.get(),isCollapsed:()=>!1===t.get(),setCollapsed:C(t.set,!1),setExpanded:C(t.set,!0),readState:()=>"expanded: "+t.get()})}})});var ev=Object.freeze({__proto__:null,events:(e,t)=>{const o=e.stream.streams.setup(e,t);return Kc([Zc(e.event,o),ld(()=>t.cancel())].concat(e.cancelEvent.map(e=>[Zc(e,()=>t.cancel())]).getOr([])))}});const tv=e=>{const t=ye(null);return Pc({readState:()=>({timer:null!==t.get()?"set":"unset"}),setTimer:e=>{t.set(e)},cancel:()=>{const e=t.get();null!==e&&e.cancel()}})};var ov=Object.freeze({__proto__:null,throttle:tv,init:e=>e.stream.streams.state(e)}),nv=[Ur("stream",Nr("mode",{throttle:[Pr("delay"),sa("stopEvent",!0),Mi("streams",{setup:(e,t)=>{const o=e.stream,n=nt(e.onStream,o.delay);return t.setTimer(n),(e,t)=>{n.throttle(e,t),o.stopEvent&&t.stop()}},state:tv})]})),sa("event","input"),Kr("cancelEvent"),Ai("onStream")];const sv=bd({fields:nv,name:"streaming",active:ev,state:ov});var rv=Object.freeze({__proto__:null,exhibit:(e,t)=>ud({attributes:pa([{key:t.tabAttr,value:"true"}])})}),av=[sa("tabAttr","data-alloy-tabstop")];const iv=bd({fields:av,name:"tabstopping",active:rv}),lv=(e,t,o,n)=>{const s=o.get();o.set(n),((e,t,o)=>{t.toggleClass.each(t=>{o.get()?ns(e.element,t):rs(e.element,t)})})(e,t,o),((e,t,o)=>{const n=t.aria;n.update(e,n,o.get())})(e,t,o),s!==n&&t.onToggled(e,n)},cv=(e,t,o)=>{lv(e,t,o,!o.get())},dv=(e,t,o)=>{lv(e,t,o,t.selected)};var uv=Object.freeze({__proto__:null,onLoad:dv,toggle:cv,isOn:(e,t,o)=>o.get(),on:(e,t,o)=>{lv(e,t,o,!0)},off:(e,t,o)=>{lv(e,t,o,!1)},set:lv}),mv=Object.freeze({__proto__:null,exhibit:()=>ud({}),events:(e,t)=>{const o=(n=e,s=t,r=cv,dd(e=>{r(e,n,s)}));var n,s,r;const a=md(e,t,dv);return Kc(G([e.toggleOnExecute?[o]:[],[a]]))}});const gv=(e,t,o)=>{Yo(e.element,"aria-expanded",o)};var pv=[sa("selected",!1),Kr("toggleClass"),sa("toggleOnExecute",!0),Ti("onToggled"),ra("aria",{mode:"none"},Nr("mode",{pressed:[sa("syncWithExpanded",!1),Mi("update",(e,t,o)=>{Yo(e.element,"aria-pressed",o),t.syncWithExpanded&&gv(e,0,o)})],checked:[Mi("update",(e,t,o)=>{Yo(e.element,"aria-checked",o)})],expanded:[Mi("update",gv)],selected:[Mi("update",(e,t,o)=>{Yo(e.element,"aria-selected",o)})],none:[Mi("update",b)]}))];const hv=bd({fields:pv,name:"toggling",active:mv,apis:uv,state:(fv=!1,{init:()=>{const e=ye(fv);return{get:()=>e.get(),set:t=>e.set(t),clear:()=>e.set(fv),readState:()=>e.get()}}})});var fv;const bv=Ne("tooltip.exclusive"),vv=Ne("tooltip.show"),xv=Ne("tooltip.hide"),yv=Ne("tooltip.immediateHide"),wv=Ne("tooltip.immediateShow"),Sv=(e,t,o)=>{e.getSystem().broadcastOn([bv],{})};var Cv=Object.freeze({__proto__:null,hideAllExclusive:Sv,immediateOpenClose:(e,t,o,n)=>jc(e,n?wv:yv),isEnabled:(e,t,o)=>o.isEnabled(),setComponents:(e,t,o,n)=>{o.getTooltip().each(e=>{e.getSystem().isConnected()&&ug.set(e,n)})},setEnabled:(e,t,o,n)=>o.setEnabled(n)}),kv=Object.freeze({__proto__:null,events:(e,t)=>{const o=o=>{t.getTooltip().each(n=>{n.getSystem().isConnected()&&(qm(n),e.onHide(o,n),t.clearTooltip())}),t.clearTimer()},n=o=>{if(!t.isShowing()&&t.isEnabled()){Sv(o);const n=e.lazySink(o).getOrDie(),s=o.getSystem().build({dom:e.tooltipDom,components:e.tooltipComponents,events:Kc("normal"===e.mode?[Zc(ka(),e=>{jc(o,vv)}),Zc(Sa(),e=>{jc(o,xv)})]:[]),behaviours:hd([ug.config({})])});t.setTooltip(s),jm(n,s),e.onShow(o,s),hb.position(n,s,{anchor:e.anchor(o)})}},s=o=>{t.getTooltip().each(t=>{const n=e.lazySink(o).getOrDie();hb.position(n,t,{anchor:e.anchor(o)})})};return Kc(G([[cd(t=>{e.onSetup(t)}),Zc(vv,o=>{t.resetTimer(()=>{n(o)},e.delayForShow())}),Zc(xv,n=>{t.resetTimer(()=>{o(n)},e.delayForHide())}),Zc(wv,e=>{t.resetTimer(()=>{n(e)},0)}),Zc(yv,e=>{t.resetTimer(()=>{o(e)},0)}),Zc($a(),(e,n)=>{const s=n;s.universal||(F(s.channels,bv)||F(s.channels,Nd()))&&(s.data.closedTooltip&&t.isShowing()&&s.data.closedTooltip(),o(e))}),ld(e=>{o(e)})],(()=>{switch(e.mode){case"normal":return[Zc(Oa(),e=>{jc(e,wv)}),Zc(Wa(),e=>{jc(e,yv)}),Zc(ka(),e=>{jc(e,vv)}),Zc(Sa(),e=>{jc(e,xv)})];case"follow-highlight":return[Zc(mi(),(e,t)=>{jc(e,vv)}),Zc(gi(),e=>{jc(e,xv)})];case"children-normal":return[Zc(Oa(),(o,n)=>{Po(o.element).each(r=>{vt(n.event.target,"[data-mce-tooltip]")&&t.getTooltip().fold(()=>{jc(o,wv)},n=>{t.isShowing()&&(e.onShow(o,n),s(o))})})}),Zc(Wa(),e=>{Po(e.element).fold(()=>{jc(e,yv)},b)}),Zc(ka(),o=>{Xn(o.element,"[data-mce-tooltip]:hover").each(n=>{t.getTooltip().fold(()=>{jc(o,vv)},n=>{t.isShowing()&&(e.onShow(o,n),s(o))})})}),Zc(Sa(),e=>{Xn(e.element,"[data-mce-tooltip]:hover").fold(()=>{jc(e,xv)},b)})];default:return[Zc(Oa(),(o,n)=>{Po(o.element).each(r=>{vt(n.event.target,"[data-mce-tooltip]")&&t.getTooltip().fold(()=>{jc(o,wv)},n=>{t.isShowing()&&(e.onShow(o,n),s(o))})})}),Zc(Wa(),e=>{Po(e.element).fold(()=>{jc(e,yv)},b)})]}})()]))}}),Ov=[Pr("lazySink"),Pr("tooltipDom"),sa("exclusive",!0),sa("tooltipComponents",[]),da("delayForShow",y(300)),da("delayForHide",y(100)),da("onSetup",b),la("mode","normal",["normal","follow-highlight","children-keyboard-focus","children-normal"]),sa("anchor",e=>({type:"hotspot",hotspot:e,layouts:{onLtr:y([oc,tc,Jl,Zl,Ql,ec]),onRtl:y([oc,tc,Jl,Zl,Ql,ec])},bubble:Ml(0,-2,{})})),Ti("onHide"),Ti("onShow")],_v=Object.freeze({__proto__:null,init:()=>{const e=ye(!0),t=Ye(),o=Ye(),n=()=>{t.on(clearTimeout)},s=y("not-implemented");return Pc({getTooltip:o.get,isShowing:o.isSet,setTooltip:o.set,clearTooltip:o.clear,clearTimer:n,resetTimer:(e,o)=>{n(),t.set(setTimeout(e,o))},readState:s,isEnabled:()=>e.get(),setEnabled:t=>e.set(t)})}});const Tv=bd({fields:Ov,name:"tooltipping",active:kv,state:_v,apis:Cv}),Ev=bd({fields:[],name:"unselecting",active:Object.freeze({__proto__:null,events:()=>Kc([Jc(Ra(),E)]),exhibit:()=>ud({styles:{"-webkit-user-select":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"-moz-none"},attributes:{unselectable:"on"}})})}),Av=e=>{const t=at(e),o=xo(t),n=(e=>{const t=void 0!==e.dom.attributes?e.dom.attributes:[];return W(t,(e,t)=>"class"===t.name?e:{...e,[t.name]:t.value},{})})(t),s=(e=>Array.prototype.slice.call(e.dom.classList,0))(t),r=0===o.length?{}:{innerHtml:nn(t)};return{tag:to(t),classes:s,attributes:n,...r}},Dv=e=>{const t=(e=>void 0!==e.uid)(e)&&ve(e,"uid")?e.uid:yg("memento");return{get:e=>e.getSystem().getByUid(t).getOrDie(),getOpt:e=>e.getSystem().getByUid(t).toOptional(),asSpec:()=>({...e,uid:t})}},Mv=Al,Bv=ml,Iv=(e,t)=>{const o={stopBackspace:!0,...t},n=(e=>{const t=Ye(),o=ye(!1),n=Ni(t=>{e.triggerEvent(Xa(),t),o.set(!0)},400),s=pa([{key:fa(),value:e=>(zi(e).each(s=>{n.cancel();const r={x:s.clientX,y:s.clientY,target:e.target};n.schedule(e),o.set(!1),t.set(r)}),A.none())},{key:ba(),value:e=>(n.cancel(),zi(e).each(e=>{t.on(o=>{((e,t)=>{const o=Math.abs(e.clientX-t.x),n=Math.abs(e.clientY-t.y);return o>5||n>5})(e,o)&&t.clear()})}),A.none())},{key:va(),value:s=>(n.cancel(),t.get().filter(e=>wt(e.target,s.target)).map(t=>o.get()?(s.prevent(),!1):e.triggerEvent(Ya(),s)))}]);return{fireIfReady:(e,t)=>fe(s,t).bind(t=>t(e))}})(o),s=V(["touchstart","touchmove","touchend","touchcancel","gesturestart","mousedown","mouseup","mouseover","mousemove","mouseout","click","pointerdown","pointermove","pointerup","lostpointercapture"].concat(["selectstart","input","contextmenu","change","transitionend","transitioncancel","drag","dragstart","dragend","dragenter","dragleave","dragover","drop","keyup"]),t=>Io(e,t,e=>{n.fireIfReady(e,t).each(t=>{t&&e.kill()}),o.triggerEvent(t,e)&&e.kill()})),r=Ye(),a=Io(e,"paste",e=>{n.fireIfReady(e,"paste").each(t=>{t&&e.kill()}),o.triggerEvent("paste",e)&&e.kill(),r.set(setTimeout(()=>{o.triggerEvent(ja(),e)},0))}),i=Io(e,"keydown",e=>{o.triggerEvent("keydown",e)?e.kill():o.stopBackspace&&(e=>e.raw.which===Td[0]&&!F(["input","textarea"],to(e.target))&&!hs(e.target,'[contenteditable="true"]'))(e)&&e.prevent()}),l=Io(e,"focusin",e=>{o.triggerEvent("focusin",e)&&e.kill()}),c=Ye(),d=Io(e,"focusout",e=>{o.triggerEvent("focusout",e)&&e.kill(),c.set(setTimeout(()=>{o.triggerEvent(Wa(),e)},0))});return{unbind:()=>{L(s,e=>{e.unbind()}),i.unbind(),l.unbind(),d.unbind(),a.unbind(),r.on(clearTimeout),c.on(clearTimeout)}}},Fv=(e,t)=>{const o=fe(e,"target").getOr(t);return ye(o)},Rv=xe([{stopped:[]},{resume:["element"]},{complete:[]}]),Nv=(e,t,o,n,s,r)=>{const a=e(t,n),i=((e,t)=>{const o=ye(!1),n=ye(!1);return{stop:()=>{o.set(!0)},cut:()=>{n.set(!0)},isStopped:o.get,isCut:n.get,event:e,setSource:t.set,getSource:t.get}})(o,s);return a.fold(()=>(r.logEventNoHandlers(t,n),Rv.complete()),e=>{const o=e.descHandler;return Og(o)(i),i.isStopped()?(r.logEventStopped(t,e.element,o.purpose),Rv.stopped()):i.isCut()?(r.logEventCut(t,e.element,o.purpose),Rv.complete()):po(e.element).fold(()=>(r.logNoParent(t,e.element,o.purpose),Rv.complete()),n=>(r.logEventResponse(t,e.element,o.purpose),Rv.resume(n)))})},zv=(e,t,o,n,s,r)=>Nv(e,t,o,n,s,r).fold(E,n=>zv(e,t,o,n,s,r),T),Vv=(e,t,o,n,s)=>{const r=Fv(o,n);return zv(e,t,o,n,r,s)},Lv=()=>{const e=(()=>{const e={};return{registerId:(t,o,n)=>{ie(n,(n,s)=>{const r=void 0!==e[s]?e[s]:{};r[o]=((e,t)=>({cHandler:C.apply(void 0,[e.handler].concat(t)),purpose:e.purpose}))(n,t),e[s]=r})},unregisterId:t=>{ie(e,(e,o)=>{be(e,t)&&delete e[t]})},filterByType:t=>fe(e,t).map(e=>ge(e,(e,t)=>((e,t)=>({id:e,descHandler:t}))(t,e))).getOr([]),find:(t,o,n)=>fe(e,o).bind(e=>vs(n,t=>((e,t)=>xg(t).bind(t=>fe(e,t)).map(e=>((e,t)=>({element:e,descHandler:t}))(t,e)))(e,t),t))}})(),t={},o=o=>{xg(o.element).each(o=>{delete t[o],e.unregisterId(o)})};return{find:(t,o,n)=>e.find(t,o,n),filter:t=>e.filterByType(t),register:n=>{const s=(e=>{const t=e.element;return xg(t).getOrThunk(()=>((e,t)=>{const o=Ne(fg+"uid-");return vg(t,o),o})(0,e.element))})(n);ve(t,s)&&((e,n)=>{const s=t[n];if(s!==e)throw new Error('The tagId "'+n+'" is already used by: '+pi(s.element)+"\nCannot use it for: "+pi(e.element)+"\nThe conflicting element is"+(ln(s.element)?" ":" not ")+"already in the DOM");o(e)})(n,s);const r=[n];e.registerId(r,s,n.events),t[s]=n},unregister:o,getById:e=>fe(t,e)}},Hv=e=>{const t=t=>po(e.element).fold(E,e=>wt(t,e)),o=Lv(),n=(e,n)=>o.find(t,e,n),s=Iv(e.element,{triggerEvent:(e,t)=>vi(e,t.target,o=>((e,t,o,n)=>Vv(e,t,o,o.target,n))(n,e,t,o))}),r={debugInfo:y("real"),triggerEvent:(e,t,o)=>{vi(e,t,s=>Vv(n,e,o,t,s))},triggerFocus:(e,t)=>{xg(e).fold(()=>{zo(e)},o=>{vi(Ua(),e,o=>(((e,t,o,n,s)=>{const r=Fv(o,n);Nv(e,t,o,n,r,s)})(n,Ua(),{originator:t,kill:b,prevent:b,target:e},e,o),!1))})},triggerEscape:(e,t)=>{r.triggerEvent("keydown",e.element,t.event)},getByUid:e=>p(e),getByDom:e=>h(e),build:Pg,buildOrPatch:Hg,addToGui:e=>{l(e)},removeFromGui:e=>{c(e)},addToWorld:e=>{a(e)},removeFromWorld:e=>{i(e)},broadcast:e=>{u(e)},broadcastOn:(e,t)=>{m(e,t)},broadcastEvent:(e,t)=>{g(e,t)},isConnected:E},a=e=>{e.connect(r),ro(e.element)||(o.register(e),L(e.components(),a),r.triggerEvent(Qa(),e.element,{target:e.element}))},i=e=>{ro(e.element)||(L(e.components(),i),o.unregister(e)),e.disconnect()},l=t=>{jm(e,t)},c=e=>{qm(e)},d=e=>{const t=o.filter($a());L(t,t=>{const o=t.descHandler;Og(o)(e)})},u=e=>{d({universal:!0,data:e})},m=(e,t)=>{d({universal:!1,channels:e,data:t})},g=(e,t)=>((e,t)=>{const o=(e=>{const t=ye(!1);return{stop:()=>{t.set(!0)},cut:b,isStopped:t.get,isCut:T,event:e,setSource:O("Cannot set source of a broadcasted event"),getSource:O("Cannot get source of a broadcasted event")}})(t);return L(e,e=>{const t=e.descHandler;Og(t)(o)}),o.isStopped()})(o.filter(e),t),p=e=>o.getById(e).fold(()=>Ae.error(new Error('Could not find component with uid: "'+e+'" in system.')),Ae.value),h=e=>{const t=xg(e).getOr("not found");return p(t)};return a(e),{root:e,element:e.element,destroy:()=>{s.unbind(),tn(e.element)},add:l,remove:c,getByUid:p,getByDom:h,addToWorld:a,removeFromWorld:i,broadcast:u,broadcastOn:m,broadcastEvent:g}},Pv=()=>{const e=(e,t)=>{t.stop(),Gc(e)};return[Zc(Ma(),e),Zc(Ya(),e),sd(fa()),sd(ya())]},Uv=e=>Kc(G([e.map(e=>dd((t,o)=>{e(t),o.stop()})).toArray(),Pv()])),Wv=hh({name:"Button",factory:e=>{const t=Uv(e.action),o=e.dom.tag,n=t=>fe(e.dom,"attributes").bind(e=>fe(e,t));return{uid:e.uid,dom:e.dom,components:e.components,events:t,behaviours:ch(e.buttonBehaviours,[_d.config({}),Im.config({mode:"execution",useSpace:!0,useEnter:!0})]),domModification:{attributes:"button"===o?{type:n("type").getOr("button"),...n("role").map(e=>({role:e})).getOr({})}:{role:e.role.getOr(n("role").getOr("button"))}},eventOrder:e.eventOrder}},configFields:[sa("uid",void 0),Pr("dom"),sa("components",[]),lh("buttonBehaviours",[_d,Im]),Kr("action"),Kr("role"),sa("eventOrder",{})]}),jv=y([sa("shell",!1),Pr("makeItem"),sa("setupItem",b),lh("listBehaviours",[ug])]),$v=cl({name:"items",overrides:()=>({behaviours:hd([ug.config({})])})}),Gv=y([$v]),qv=fh({name:y("CustomList")(),configFields:jv(),partFields:Gv(),factory:(e,t,o,n)=>{const s=e.shell?{behaviours:[ug.config({})],components:[]}:{behaviours:[],components:t};return{uid:e.uid,dom:e.dom,components:s.components,behaviours:ih(e.listBehaviours,s.behaviours),apis:{setItems:(t,o)=>{var n;(n=t,e.shell?A.some(n):wl(n,e,"items")).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 s=ug.contents(n),r=o.length,a=r-s.length,i=a>0?N(a,()=>e.makeItem()):[],l=s.slice(r);L(l,e=>ug.remove(n,e)),L(i,e=>ug.append(n,e));const c=ug.contents(n);L(c,(n,s)=>{e.setupItem(t,n,o[s],s)})})}}}},apis:{setItems:(e,t,o)=>{e.setItems(t,o)}}}),Yv="aria-controls",Xv=()=>{const e=Ne(Yv);return{id:e,link:t=>{Yo(t,Yv,e)},unlink:e=>{Zo(e,Yv)}}},Kv=(e,t)=>ps(t,t=>wt(t,e.element),T)||((e,t)=>(e=>jn(e,e=>{if(!so(e))return!1;const t=Ko(e,"id");return void 0!==t&&t.indexOf(Yv)>-1}).bind(e=>{const t=Ko(e,"id"),o=Oo(e);return Xn(o,`[${Yv}="${t}"]`)}))(t).exists(t=>Kv(e,t)))(e,t),Jv="alloy.item-hover",Qv="alloy.item-focus",Zv="alloy.item-toggled",ex=e=>{(Po(e.element).isNone()||_d.isFocused(e))&&(_d.isFocused(e)||_d.focus(e),$c(e,Jv,{item:e}))},tx=e=>{$c(e,Qv,{item:e})},ox=y(Jv),nx=y(Qv),sx=y(Zv),rx=e=>e.role.fold(()=>e.toggling.map(e=>e.exclusive?"menuitemradio":"menuitemcheckbox").getOr("menuitem"),w);var ax=[Pr("data"),Pr("components"),Pr("dom"),sa("hasSubmenu",!1),Kr("toggling"),Kr("role"),lh("itemBehaviours",[hv,_d,Im,mf]),sa("ignoreFocus",!1),sa("domModification",{}),Mi("builder",e=>({dom:e.dom,domModification:{...e.domModification,attributes:{role:rx(e),...e.domModification.attributes,"aria-haspopup":e.hasSubmenu,...e.hasSubmenu?{"aria-expanded":!1}:{}}},behaviours:ch(e.itemBehaviours,[e.toggling.fold(hv.revoke,t=>hv.config(((e,t)=>({aria:{mode:t?"selected":"checked"},...me(e,(e,t)=>"exclusive"!==t),onToggled:(t,o)=>{p(e.onToggled)&&e.onToggled(t,o),((e,t)=>{$c(e,Zv,{item:e,state:t})})(t,o)}}))(t,e.role.exists(e=>"option"===e)))),_d.config({ignore:e.ignoreFocus,stopMousedown:e.ignoreFocus,onFocus:e=>{tx(e)}}),Im.config({mode:"execution"}),mf.config({store:{mode:"memory",initialValue:e.data}}),wd("item-type-events",[...Pv(),Zc(ka(),ex),Zc(qa(),_d.focus)])]),components:e.components,eventOrder:e.eventOrder})),sa("eventOrder",{})],ix=[Pr("dom"),Pr("components"),Mi("builder",e=>({dom:e.dom,components:e.components,events:Kc([rd(qa())])}))];const lx=y("item-widget"),cx=y([il({name:"widget",overrides:e=>({behaviours:hd([mf.config({store:{mode:"manual",getValue:t=>e.data,setValue:b}})])})})]),dx=[Pr("uid"),Pr("data"),Pr("components"),Pr("dom"),sa("autofocus",!1),sa("ignoreFocus",!1),lh("widgetBehaviours",[mf,_d,Im]),sa("domModification",{}),El(cx()),Mi("builder",e=>{const t=xl(lx(),e,cx()),o=yl(lx(),e,t.internals()),n=t=>wl(t,e,"widget").map(e=>(Im.focusIn(e),e)),s=(t,o)=>gu(o.event.target)?A.none():e.autofocus?(o.setSource(t.element),A.none()):A.none();return{dom:e.dom,components:o,domModification:e.domModification,events:Kc([dd((e,t)=>{n(e).each(e=>{t.stop()})}),Zc(ka(),ex),Zc(qa(),(t,o)=>{e.autofocus?n(t):_d.focus(t)})]),behaviours:ch(e.widgetBehaviours,[mf.config({store:{mode:"memory",initialValue:e.data}}),_d.config({ignore:e.ignoreFocus,onFocus:e=>{tx(e)}}),Im.config({mode:"special",focusIn:e.autofocus?e=>{n(e)}:yd(),onLeft:s,onRight:s,onEscape:(t,o)=>_d.isFocused(t)||e.autofocus?e.autofocus?(o.setSource(t.element),A.none()):A.none():(_d.focus(t),A.some(!0))})])}})],ux=Nr("type",{widget:dx,item:ax,separator:ix}),mx=y([dl({factory:{sketch:e=>{const t=Fr("menu.spec item",ux,e);return t.builder(t)}},name:"items",unit:"item",defaults:(e,t)=>be(t,"uid")?t:{...t,uid:yg("item")},overrides:(e,t)=>({type:t.type,ignoreFocus:e.fakeFocus,domModification:{classes:[e.markers.item]}})})]),gx=y([Zr("role"),Pr("value"),Pr("items"),Pr("dom"),Pr("components"),sa("eventOrder",{}),rh("menuBehaviours",[ru,mf,Xg,Im]),ra("movement",{mode:"menu"},Nr("mode",{grid:[Ii(),Mi("config",(e,t)=>({mode:"flatgrid",selector:"."+e.markers.item,initSize:{numColumns:t.initSize.numColumns,numRows:t.initSize.numRows},focusManager:e.focusManager}))],matrix:[Mi("config",(e,t)=>({mode:"matrix",selectors:{row:t.rowSelector,cell:"."+e.markers.item},previousSelector:t.previousSelector,focusManager:e.focusManager})),Pr("rowSelector"),sa("previousSelector",A.none)],menu:[Mi("config",(e,t)=>({mode:"menu",selector:"."+e.markers.item,focusManager:e.focusManager}))]})),Ur("markers",Si()),sa("fakeFocus",!1),sa("focusManager",iu()),Ti("onHighlight"),Ti("onDehighlight"),sa("showMenuRole",!0)]),px=y("alloy.menu-focus"),hx=fh({name:"Menu",configFields:gx(),partFields:mx(),factory:(e,t,o,n)=>({uid:e.uid,dom:e.dom,markers:e.markers,behaviours:ih(e.menuBehaviours,[ru.config({highlightClass:e.markers.selectedItem,itemClass:e.markers.item,onHighlight:e.onHighlight,onDehighlight:e.onDehighlight}),mf.config({store:{mode:"memory",initialValue:e.value}}),Xg.config({find:A.some}),Im.config(e.movement.config(e,e.movement))]),events:Kc([Zc(nx(),(e,t)=>{const o=t.event;e.getSystem().getByDom(o.target).each(o=>{ru.highlight(e,o),t.stop(),$c(e,px(),{menu:e,item:o})})}),Zc(ox(),(e,t)=>{const o=t.event.item;ru.highlight(e,o)}),Zc(sx(),(e,t)=>{const{item:o,state:n}=t.event;n&&"menuitemradio"===Ko(o.element,"role")&&((e,t)=>{const o=gs(e.element,'[role="menuitemradio"][aria-checked="true"]');L(o,o=>{wt(o,t.element)||e.getSystem().getByDom(o).each(e=>{hv.off(e)})})})(e,o)})]),components:t,eventOrder:e.eventOrder,...e.showMenuRole?{domModification:{attributes:{role:e.role.getOr("menu")}}}:{}})}),fx=(e,t,o,n)=>fe(o,n).bind(n=>fe(e,n).bind(n=>{const s=fx(e,t,o,n);return A.some([n].concat(s))})).getOr([]),bx=e=>"prepared"===e.type?A.some(e.menu):A.none(),vx=()=>{const e=ye({}),t=ye({}),o=ye({}),n=Ye(),s=ye({}),r=e=>a(e).bind(bx),a=e=>fe(t.get(),e),i=t=>fe(e.get(),t);return{setMenuBuilt:(e,o)=>{t.set({...t.get(),[e]:{type:"prepared",menu:o}})},setContents:(r,a,i,l)=>{n.set(r),e.set(i),t.set(a),s.set(l);const c=((e,t)=>{const o={};ie(e,(e,t)=>{L(e,e=>{o[e]=t})});const n=t,s=ce(t,(e,t)=>({k:e,v:t})),r=le(s,(e,t)=>[t].concat(fx(o,n,s,t)));return le(o,e=>fe(r,e).getOr([e]))})(l,i);o.set(c)},expand:t=>fe(e.get(),t).map(e=>{const n=fe(o.get(),t).getOr([]);return[e].concat(n)}),refresh:e=>fe(o.get(),e),collapse:e=>fe(o.get(),e).bind(e=>e.length>1?A.some(e.slice(1)):A.none()),lookupMenu:a,lookupItem:i,otherMenus:e=>{const t=s.get();return K(re(t),e)},getPrimary:()=>n.get().bind(r),getMenus:()=>t.get(),clear:()=>{e.set({}),t.set({}),o.set({}),n.clear()},isClear:()=>n.get().isNone(),getTriggeringPath:(t,s)=>{const a=P(i(t).toArray(),e=>r(e).isSome());return fe(o.get(),t).bind(t=>{const o=X(a.concat(t));return(e=>{const t=[];for(let o=0;o<e.length;o++){const n=e[o];if(!n.isSome())return A.none();t.push(n.getOrDie())}return A.some(t)})(q(o,(t,a)=>((t,o,n)=>r(t).bind(s=>(t=>pe(e.get(),(e,o)=>e===t))(t).bind(e=>o(e).map(e=>({triggeredMenu:s,triggeringItem:e,triggeringPath:n})))))(t,s,o.slice(0,a+1)).fold(()=>He(n.get(),t)?[]:[A.none()],e=>[A.some(e)])))})}}},xx=bx,yx=Ne("tiered-menu-item-highlight"),wx=Ne("tiered-menu-item-dehighlight"),Sx=y("collapse-item"),Cx=hh({name:"TieredMenu",configFields:[Di("onExecute"),Di("onEscape"),Ei("onTab"),Ei("onShiftTab"),Ai("onOpenMenu"),Ai("onOpenSubmenu"),Ti("onRepositionMenu"),Ti("onCollapseMenu"),sa("highlightOnOpen",Lc.HighlightMenuAndItem),qr("data",[Pr("primary"),Pr("menus"),Pr("expansions")]),sa("fakeFocus",!1),Ti("onHighlightItem"),Ti("onDehighlightItem"),Ti("onHover"),ki(),Pr("dom"),sa("navigateOnHover",!0),sa("stayInDom",!1),rh("tmenuBehaviours",[Im,ru,Xg,ug]),sa("eventOrder",{})],apis:{collapseMenu:(e,t)=>{e.collapseMenu(t)},highlightPrimary:(e,t)=>{e.highlightPrimary(t)},repositionMenus:(e,t)=>{e.repositionMenus(t)}},factory:(e,t)=>{const o=Ye(),n=vx(),s=e=>mf.getValue(e).value,r=t=>le(e.data.menus,(e,t)=>q(e.items,e=>"separator"===e.type?[]:[e.data.value])),a=ru.highlight,i=(t,o)=>{a(t,o),ru.getHighlighted(o).orThunk(()=>ru.getFirst(o)).each(n=>{e.fakeFocus?ru.highlight(o,n):qc(t,n.element,qa())})},l=(e,t)=>Pe(V(t,t=>e.lookupMenu(t).bind(e=>"prepared"===e.type?A.some(e.menu):A.none()))),c=(t,o,n)=>{const s=l(o,o.otherMenus(n));L(s,o=>{ls(o.element,[e.markers.backgroundMenu]),e.stayInDom||ug.remove(t,o)})},d=(t,n)=>{const r=(t=>o.get().getOrThunk(()=>{const n={},r=gs(t.element,`.${e.markers.item}`),a=P(r,e=>"true"===Ko(e,"aria-haspopup"));return L(a,e=>{t.getSystem().getByDom(e).each(e=>{const t=s(e);n[t]=e})}),o.set(n),n}))(t);ie(r,(e,t)=>{const o=F(n,t);Yo(e.element,"aria-expanded",o)})},u=(t,o,n)=>A.from(n[0]).bind(s=>o.lookupMenu(s).bind(s=>{if("notbuilt"===s.type)return A.none();{const r=s.menu,a=l(o,n.slice(1));return L(a,t=>{ns(t.element,e.markers.backgroundMenu)}),ln(r.element)||ug.append(t,Ug(r)),ls(r.element,[e.markers.backgroundMenu]),i(t,r),c(t,o,n),A.some(r)}}));let m;!function(e){e[e.HighlightSubmenu=0]="HighlightSubmenu",e[e.HighlightParent=1]="HighlightParent"}(m||(m={}));const g=(t,o,r=m.HighlightSubmenu)=>{if(o.hasConfigured(gp)&&gp.isDisabled(o))return A.some(o);{const a=s(o);return n.expand(a).bind(s=>(d(t,s),A.from(s[0]).bind(a=>n.lookupMenu(a).bind(i=>{const l=((e,t,o)=>{if("notbuilt"===o.type){const s=e.getSystem().build(o.nbMenu());return n.setMenuBuilt(t,s),s}return o.menu})(t,a,i);return ln(l.element)||ug.append(t,Ug(l)),e.onOpenSubmenu(t,o,l,X(s)),r===m.HighlightSubmenu?(ru.highlightFirst(l),u(t,n,s)):(ru.dehighlightAll(l),A.some(o))}))))}},p=(t,o)=>{const r=s(o);return n.collapse(r).bind(s=>(d(t,s),u(t,n,s).map(n=>(e.onCollapseMenu(t,o,n),n))))},h=t=>(o,n)=>Kn(n.getSource(),`.${e.markers.item}`).bind(e=>o.getSystem().getByDom(e).toOptional().bind(e=>t(o,e).map(E))),f=Kc([Zc(px(),(e,t)=>{const o=t.event.item;n.lookupItem(s(o)).each(()=>{const o=t.event.menu;ru.highlight(e,o);const r=s(t.event.item);n.refresh(r).each(t=>c(e,n,t))})}),dd((t,o)=>{const n=o.event.target;t.getSystem().getByDom(n).each(o=>{0===s(o).indexOf("collapse-item")&&p(t,o),g(t,o,m.HighlightSubmenu).fold(()=>{e.onExecute(t,o)},b)})}),id((t,o)=>{(t=>{const o=((t,o,n)=>le(n,(n,s)=>{const r=()=>hx.sketch({...n,value:s,markers:e.markers,fakeFocus:e.fakeFocus,onHighlight:(e,t)=>{$c(e,yx,{menuComp:e,itemComp:t})},onDehighlight:(e,t)=>{$c(e,wx,{menuComp:e,itemComp:t})},focusManager:e.fakeFocus?lu():iu()});return s===o?{type:"prepared",menu:t.getSystem().build(r())}:{type:"notbuilt",nbMenu:r}}))(t,e.data.primary,e.data.menus),s=r();return n.setContents(e.data.primary,o,e.data.expansions,s),n.getPrimary()})(t).each(o=>{ug.append(t,Ug(o)),e.onOpenMenu(t,o),e.highlightOnOpen===Lc.HighlightMenuAndItem?i(t,o):e.highlightOnOpen===Lc.HighlightJustMenu&&a(t,o)})}),Zc(yx,(t,o)=>{e.onHighlightItem(t,o.event.menuComp,o.event.itemComp)}),Zc(wx,(t,o)=>{e.onDehighlightItem(t,o.event.menuComp,o.event.itemComp)}),...e.navigateOnHover?[Zc(ox(),(t,o)=>{const r=o.event.item;((e,t)=>{const o=s(t);n.refresh(o).bind(t=>(d(e,t),u(e,n,t)))})(t,r),g(t,r,m.HighlightParent),e.onHover(t,r)})]:[]]),v=e=>ru.getHighlighted(e).bind(ru.getHighlighted),x={collapseMenu:e=>{v(e).each(t=>{p(e,t)})},highlightPrimary:e=>{n.getPrimary().each(t=>{i(e,t)})},repositionMenus:t=>{const o=n.getPrimary().bind(e=>v(t).bind(e=>{const t=s(e),o=he(n.getMenus()),r=Pe(V(o,xx));return n.getTriggeringPath(t,e=>((e,t,o)=>se(t,e=>{if(!e.getSystem().isConnected())return A.none();const t=ru.getCandidates(e);return j(t,e=>s(e)===o)}))(0,r,e))}).map(t=>({primary:e,triggeringPath:t})));o.fold(()=>{(e=>A.from(e.components()[0]).filter(e=>"menu"===Ko(e.element,"role")))(t).each(o=>{e.onRepositionMenu(t,o,[])})},({primary:o,triggeringPath:n})=>{e.onRepositionMenu(t,o,n)})}};return{uid:e.uid,dom:e.dom,markers:e.markers,behaviours:ih(e.tmenuBehaviours,[Im.config({mode:"special",onRight:h((e,t)=>gu(t.element)?A.none():g(e,t,m.HighlightSubmenu)),onLeft:h((e,t)=>gu(t.element)?A.none():p(e,t)),onEscape:h((t,o)=>p(t,o).orThunk(()=>e.onEscape(t,o).map(()=>t))),onTab:e.onTab,onShiftTab:e.onShiftTab,focusIn:(e,t)=>{n.getPrimary().each(t=>{qc(e,t.element,qa())})}}),ru.config({highlightClass:e.markers.selectedMenu,itemClass:e.markers.menu}),Xg.config({find:e=>ru.getHighlighted(e)}),ug.config({})]),eventOrder:e.eventOrder,apis:x,events:f}},extraApis:{tieredData:(e,t,o)=>({primary:e,menus:t,expansions:o}),singleData:(e,t)=>({primary:e,menus:ga(e,t),expansions:{}}),collapseItem:e=>({value:Ne(Sx()),meta:{text:e}})}}),kx=y("sink"),Ox=y(cl({name:kx(),overrides:y({dom:{tag:"div"},behaviours:hd([hb.config({useFixed:E})]),events:Kc([sd(Ta()),sd(ya()),sd(Ma())])})})),_x=Cr([sa("isExtraPart",T),na("fireEventInstead",[sa("event",ri())])]),Tx=e=>{const t=Fr("Dismissal",_x,e);return{[zd()]:{schema:Cr([Pr("target")]),onReceive:(e,o)=>{zb.isOpen(e)&&(zb.isPartOf(e,o.target)||t.isExtraPart(e,o.target)||t.fireEventInstead.fold(()=>zb.close(e),t=>jc(e,t.event)))}}}},Ex=Cr([na("fireEventInstead",[sa("event",ai())]),Gr("doReposition")]),Ax=e=>{const t=Fr("Reposition",Ex,e);return{[Vd()]:{onReceive:e=>{zb.isOpen(e)&&t.fireEventInstead.fold(()=>t.doReposition(e),t=>jc(e,t.event))}}}},Dx=(e,t)=>{const o=e.getHotspot(t).getOr(t),n="hotspot",s=e.getAnchorOverrides();return e.layouts.fold(()=>({type:n,hotspot:o,overrides:s}),e=>({type:n,hotspot:o,overrides:s,layouts:e}))},Mx=(e,t,o,n,s,r,a)=>{const i=((e,t,o,n,s,r,a)=>{const i=((e,t,o)=>(0,e.fetch)(o).map(t))(e,t,n),l=Fx(n,e),c=(e,t)=>(_d.focus(n),$c(n,"keydown",{raw:t.event.raw}),zb.close(s),A.some(!0));return i.map(t=>t.bind(t=>{const i=t.menus[t.primary];return A.from(i).each(t=>{e.listRole.each(e=>{t.role=e})}),A.from(Cx.sketch({...r.menu(),uid:yg(""),data:t,highlightOnOpen:a,onOpenMenu:(e,t)=>{const n=l().getOrDie();hb.position(n,t,{anchor:o}),zb.decloak(s)},onOpenSubmenu:(e,t,o)=>{const n=l().getOrDie();hb.position(n,o,{anchor:{type:"submenu",item:t}}),zb.decloak(s)},onRepositionMenu:(e,t,n)=>{const s=l().getOrDie();hb.position(s,t,{anchor:o}),L(n,e=>{hb.position(s,e.triggeredMenu,{anchor:{type:"submenu",item:e.triggeringItem}})})},onEscape:()=>(_d.focus(n),zb.close(s),A.some(!0)),onTab:c,onShiftTab:c}))}))})(e,t,Dx(e,o),o,n,s,a);return i.map(e=>(e.fold(()=>{zb.isOpen(n)&&zb.close(n)},e=>{zb.cloak(n),zb.open(n,e),r(n)}),n))},Bx=(e,t,o,n,s,r,a)=>(zb.close(n),_e(n)),Ix=(e,t,o,n,s,r)=>{const a=Zg.getCoupled(o,"sandbox");return(zb.isOpen(a)?Bx:Mx)(e,t,o,a,n,s,r)},Fx=(e,t)=>e.getSystem().getByUid(t.uid+"-"+kx()).map(e=>()=>Ae.value(e)).getOrThunk(()=>t.lazySink.fold(()=>()=>Ae.error(new Error("No internal sink is specified, nor could an external sink be found")),t=>()=>t(e))),Rx=e=>{zb.getState(e).each(e=>{Cx.repositionMenus(e)})},Nx=(e,t,o)=>{const n=Xv(),s=Fx(t,e);return{dom:{tag:"div",classes:e.sandboxClasses,attributes:{id:n.id}},behaviours:ch(e.sandboxBehaviours,[mf.config({store:{mode:"memory",initialValue:t}}),zb.config({onOpen:(s,r)=>{const a=Dx(e,t);n.link(t.element),e.matchWidth&&((e,t,o)=>{const n=Xg.getCurrent(t).getOr(t),s=An(e.element);o?gn(n.element,"min-width",s+"px"):((e,t)=>{En.set(e,t)})(n.element,s)})(a.hotspot,r,e.useMinWidth),e.onOpen(a,s,r),void 0!==o&&void 0!==o.onOpen&&o.onOpen(s,r),Cx.repositionMenus(r)},onClose:(e,r)=>{n.unlink(t.element),s().getOr(r).element.dom.dispatchEvent(new window.FocusEvent("focusout")),void 0!==o&&void 0!==o.onClose&&o.onClose(e,r)},isPartOf:(e,o,n)=>Kv(o,n)||Kv(t,n),getAttachPoint:()=>s().getOrDie()}),Xg.config({find:e=>zb.getState(e).bind(e=>Xg.getCurrent(e))}),vb.config({channels:{...Tx({isExtraPart:T}),...Ax({doReposition:Rx})}})])}},zx=()=>[sa("sandboxClasses",[]),lh("sandboxBehaviours",[Xg,vb,zb,mf])],Vx=y([Pr("dom"),Pr("fetch"),Ti("onOpen"),Ei("onExecute"),sa("getHotspot",A.some),sa("getAnchorOverrides",y({})),Mf(),rh("dropdownBehaviours",[hv,Zg,Im,_d]),Pr("toggleClass"),sa("eventOrder",{}),Kr("lazySink"),sa("matchWidth",!1),sa("useMinWidth",!1),Kr("role"),Kr("listRole")].concat(zx())),Lx=y([ll({schema:[ki(),sa("fakeFocus",!1)],name:"menu",defaults:e=>({onExecute:e.onExecute})}),Ox()]),Hx=fh({name:"Dropdown",configFields:Vx(),partFields:Lx(),factory:(e,t,o,n)=>{const s=e=>{zb.getState(e).each(e=>{Cx.highlightPrimary(e)})},r=(t,o,s)=>Ix(e,w,t,n,o,s),a={expand:e=>{hv.isOn(e)||r(e,b,Lc.HighlightNone).get(b)},open:e=>{hv.isOn(e)||r(e,b,Lc.HighlightMenuAndItem).get(b)},refetch:t=>Zg.getExistingCoupled(t,"sandbox").fold(()=>r(t,b,Lc.HighlightMenuAndItem).map(b),o=>Mx(e,w,t,o,n,b,Lc.HighlightMenuAndItem).map(b)),isOpen:hv.isOn,close:e=>{hv.isOn(e)&&r(e,b,Lc.HighlightMenuAndItem).get(b)},repositionMenus:e=>{hv.isOn(e)&&(e=>{const t=Zg.getCoupled(e,"sandbox");Rx(t)})(e)}},i=(e,t)=>(Gc(e),A.some(!0));return{uid:e.uid,dom:e.dom,components:t,behaviours:ih(e.dropdownBehaviours,[hv.config({toggleClass:e.toggleClass,aria:{mode:"expanded"}}),Zg.config({others:{sandbox:t=>Nx(e,t,{onOpen:()=>hv.on(t),onClose:()=>hv.off(t)})}}),Im.config({mode:"special",onSpace:i,onEnter:i,onDown:(e,t)=>{if(Hx.isOpen(e)){const t=Zg.getCoupled(e,"sandbox");s(t)}else Hx.open(e);return A.some(!0)},onEscape:(e,t)=>Hx.isOpen(e)?(Hx.close(e),A.some(!0)):A.none()}),_d.config({})]),events:Uv(A.some(e=>{r(e,s,Lc.HighlightMenuAndItem).get(b)})),eventOrder:{...e.eventOrder,[Ga()]:["disabling","toggling","alloy.base.behaviour"]},apis:a,domModification:{attributes:{"aria-haspopup":e.listRole.getOr("true"),...e.role.fold(()=>({}),e=>({role:e})),..."button"===e.dom.tag?{type:fe(e.dom,"attributes").bind(e=>fe(e,"type")).getOr("button")}:{}}}}},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)}}),Px="form",Ux=[rh("formBehaviours",[mf])],Wx=e=>"<alloy.field."+e+">",jx=(e,t)=>({uid:e.uid,dom:e.dom,components:t,behaviours:ih(e.formBehaviours,[mf.config({store:{mode:"manual",getValue:t=>{const o=kl(t,e);return le(o,(e,t)=>e().bind(e=>{return o=Xg.getCurrent(e),n=new Error(`Cannot find a current component to extract the value from for form part '${t}': `+pi(e.element)),o.fold(()=>Ae.error(n),Ae.value);var o,n}).map(mf.getValue))},setValue:(t,o)=>{ie(o,(o,n)=>{wl(t,e,n).each(e=>{Xg.getCurrent(e).each(e=>{mf.setValue(e,o)})})})}}})]),apis:{getField:(t,o)=>wl(t,e,o).bind(Xg.getCurrent)}}),$x={getField:zm((e,t,o)=>e.getField(t,o)),sketch:e=>{const t=(()=>{const e=[];return{field:(t,o)=>(e.push(t),fl(Px,Wx(t),o)),record:y(e)}})(),o=e(t),n=t.record(),s=V(n,e=>il({name:e,pname:Wx(e)}));return uh(Px,Ux,s,jx,o)}},Gx=y([Pr("dom"),sa("shell",!0),rh("toolbarBehaviours",[ug])]),qx=y([cl({name:"groups",overrides:()=>({behaviours:hd([ug.config({})])})})]),Yx=fh({name:"Toolbar",configFields:Gx(),partFields:qx(),factory:(e,t,o,n)=>{const s=e.shell?{behaviours:[ug.config({})],components:[]}:{behaviours:[],components:t};return{uid:e.uid,dom:e.dom,components:s.components,behaviours:ih(e.toolbarBehaviours,s.behaviours),apis:{setGroups:(t,o)=>{var n;(n=t,e.shell?A.some(n):wl(n,e,"groups")).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=>{ug.set(e,o)})},refresh:b},domModification:{attributes:{role:"toolbar"}}}},apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)}}}),Xx=y([Oi(["toggledClass"]),Pr("lazySink"),Gr("fetch"),ta("getBounds"),na("fireDismissalEventInstead",[sa("event",ri())]),Mf(),Ti("onToggled")]),Kx=y([ll({name:"button",overrides:e=>({dom:{attributes:{"aria-haspopup":"true"}},buttonBehaviours:hd([hv.config({toggleClass:e.markers.toggledClass,aria:{mode:"expanded"},toggleOnExecute:!1,onToggled:e.onToggled})])})}),ll({factory:Yx,schema:Gx(),name:"toolbar",overrides:e=>({toolbarBehaviours:hd([Im.config({mode:"cyclic",onEscape:t=>(wl(t,e,"button").each(_d.focus),A.none())})])})})]),Jx=Ye(),Qx=(e,t)=>{const o=Zg.getCoupled(e,"toolbarSandbox");zb.isOpen(o)?zb.close(o):zb.open(o,t.toolbar())},Zx=(e,t,o,n)=>{const s=o.getBounds.map(e=>e()),r=o.lazySink(e).getOrDie();hb.positionWithinBounds(r,t,{anchor:{type:"hotspot",hotspot:e,layouts:n,overrides:{maxWidthFunction:Rc()}}},s)},ey=(e,t,o,n,s)=>{Yx.setGroups(t,s),Zx(e,t,o,n),hv.on(e)},ty=fh({name:"FloatingToolbarButton",factory:(e,t,o,n)=>({...Wv.sketch({...n.button(),action:e=>{Qx(e,n)},buttonBehaviours:ch({dump:n.button().buttonBehaviours},[Zg.config({others:{toolbarSandbox:t=>((e,t,o)=>{const n=Xv();return{dom:{tag:"div",attributes:{id:n.id}},behaviours:hd([Im.config({mode:"special",onEscape:e=>(zb.close(e),A.some(!0))}),zb.config({onOpen:(s,r)=>{const a=Jx.get().getOr(!1);o.fetch().get(s=>{ey(e,r,o,t.layouts,s),n.link(e.element),a||Im.focusIn(r)})},onClose:()=>{hv.off(e),Jx.get().getOr(!1)||_d.focus(e),n.unlink(e.element)},isPartOf:(t,o,n)=>Kv(o,n)||Kv(e,n),getAttachPoint:()=>o.lazySink(e).getOrDie()}),vb.config({channels:{...Tx({isExtraPart:T,...o.fireDismissalEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({})}),...Ax({doReposition:()=>{zb.getState(Zg.getCoupled(e,"toolbarSandbox")).each(n=>{Zx(e,n,o,t.layouts)})}})}})])}})(t,o,e)}})])}),apis:{setGroups:(t,n)=>{zb.getState(Zg.getCoupled(t,"toolbarSandbox")).each(s=>{ey(t,s,e,o.layouts,n)})},reposition:t=>{zb.getState(Zg.getCoupled(t,"toolbarSandbox")).each(n=>{Zx(t,n,e,o.layouts)})},toggle:e=>{Qx(e,n)},toggleWithoutFocusing:e=>{((e,t)=>{Jx.set(!0),Qx(e,t),Jx.clear()})(e,n)},getToolbar:e=>zb.getState(Zg.getCoupled(e,"toolbarSandbox")),isOpen:e=>zb.isOpen(Zg.getCoupled(e,"toolbarSandbox"))}}),configFields:Xx(),partFields:Kx(),apis:{setGroups:(e,t,o)=>{e.setGroups(t,o)},reposition:(e,t)=>{e.reposition(t)},toggle:(e,t)=>{e.toggle(t)},toggleWithoutFocusing:(e,t)=>{e.toggleWithoutFocusing(t)},getToolbar:(e,t)=>e.getToolbar(t),isOpen:(e,t)=>e.isOpen(t)}}),oy=y([sa("prefix","form-field"),rh("fieldBehaviours",[Xg,mf])]),ny=y([cl({schema:[Pr("dom")],name:"label"}),cl({factory:{sketch:e=>({uid:e.uid,dom:{tag:"span",styles:{display:"none"},attributes:{"aria-hidden":"true"},innerHtml:e.text}})},schema:[Pr("text")],name:"aria-descriptor"}),il({factory:{sketch:e=>{const t=((e,t)=>{const o={};return ie(e,(e,n)=>{F(t,n)||(o[n]=e)}),o})(e,["factory"]);return e.factory.sketch(t)}},schema:[Pr("factory")],name:"field"})]),sy=fh({name:"FormField",configFields:oy(),partFields:ny(),factory:(e,t,o,n)=>{const s=ih(e.fieldBehaviours,[Xg.config({find:t=>wl(t,e,"field")}),mf.config({store:{mode:"manual",getValue:e=>Xg.getCurrent(e).bind(mf.getValue),setValue:(e,t)=>{Xg.getCurrent(e).each(e=>{mf.setValue(e,t)})}}})]),r=Kc([id((t,o)=>{const n=Cl(t,e,["label","field","aria-descriptor"]);n.field().each(t=>{const o=Ne(e.prefix);n.label().each(e=>{Yo(e.element,"for",o),Yo(t.element,"id",o)}),n["aria-descriptor"]().each(o=>{const n=Ne(e.prefix);Yo(o.element,"id",n),Yo(t.element,"aria-describedby",n)})})})]),a={getField:t=>wl(t,e,"field"),getLabel:t=>wl(t,e,"label")};return{uid:e.uid,dom:e.dom,components:t,behaviours:s,events:r,apis:a}},apis:{getField:(e,t)=>e.getField(t),getLabel:(e,t)=>e.getLabel(t)}}),ry=y([sa("field1Name","field1"),sa("field2Name","field2"),Ai("onLockedChange"),Oi(["lockClass"]),sa("locked",!1),lh("coupledFieldBehaviours",[Xg,mf]),da("onInput",b)]),ay=(e,t)=>il({factory:sy,name:e,overrides:e=>({fieldBehaviours:hd([wd("coupled-input-behaviour",[Zc(Aa(),o=>{((e,t,o)=>wl(e,t,o).bind(Xg.getCurrent))(o,e,t).each(t=>{wl(o,e,"lock").each(n=>{hv.isOn(n)&&e.onLockedChange(o,t,n),e.onInput(o)})})})])])})}),iy=y([ay("field1","field2"),ay("field2","field1"),il({factory:Wv,schema:[Pr("dom")],name:"lock",overrides:e=>({buttonBehaviours:hd([hv.config({selected:e.locked,toggleClass:e.markers.lockClass,aria:{mode:"pressed"}})])})})]),ly=fh({name:"FormCoupledInputs",configFields:ry(),partFields:iy(),factory:(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,behaviours:ch(e.coupledFieldBehaviours,[Xg.config({find:A.some}),mf.config({store:{mode:"manual",getValue:t=>{const o=_l(t,e,["field1","field2"]);return{[e.field1Name]:mf.getValue(o.field1()),[e.field2Name]:mf.getValue(o.field2())}},setValue:(t,o)=>{const n=_l(t,e,["field1","field2"]);ve(o,e.field1Name)&&mf.setValue(n.field1(),o[e.field1Name]),ve(o,e.field2Name)&&mf.setValue(n.field2(),o[e.field2Name])}}})]),apis:{getField1:t=>wl(t,e,"field1"),getField2:t=>wl(t,e,"field2"),getLock:t=>wl(t,e,"lock")}}),apis:{getField1:(e,t)=>e.getField1(t),getField2:(e,t)=>e.getField2(t),getLock:(e,t)=>e.getLock(t)}}),cy=hh({name:"HtmlSelect",configFields:[Pr("options"),rh("selectBehaviours",[_d,mf]),sa("selectClasses",[]),sa("selectAttributes",{}),Kr("data")],factory:(e,t)=>{const o=V(e.options,e=>({dom:{tag:"option",value:e.value,innerHtml:e.text}})),n=e.data.map(e=>ga("initialValue",e)).getOr({});return{uid:e.uid,dom:{tag:"select",classes:e.selectClasses,attributes:e.selectAttributes},components:o,behaviours:ih(e.selectBehaviours,[_d.config({}),mf.config({store:{mode:"manual",getValue:e=>ds(e.element),setValue:(t,o)=>{const n=te(e.options);j(e.options,e=>e.value===o).isSome()?us(t.element,o):-1===t.element.dom.selectedIndex&&""===o&&n.each(e=>us(t.element,e.value))},...n}})])}}}),dy=hh({name:"InlineView",configFields:[Pr("lazySink"),Ti("onShow"),Ti("onHide"),ta("onEscape"),rh("inlineBehaviours",[zb,mf,vb]),na("fireDismissalEventInstead",[sa("event",ri())]),na("fireRepositionEventInstead",[sa("event",ai())]),sa("getRelated",A.none),sa("isExtraPart",T),sa("eventOrder",A.none)],factory:(e,t)=>{const o=(t,o,n,s)=>{const r=e.lazySink(t).getOrDie();zb.openWhileCloaked(t,o,()=>hb.positionWithinBounds(r,t,n,s())),mf.setValue(t,A.some({mode:"position",config:n,getBounds:s}))},n=(t,o,n,s)=>{const r=((e,t,o,n,s)=>{const r=()=>e.lazySink(t),a="horizontal"===n.type?{layouts:{onLtr:()=>cc(),onRtl:()=>dc()}}:{},i=e=>(e=>2===e.length)(e)?a:{};return Cx.sketch({dom:{tag:"div"},data:n.data,markers:n.menu.markers,highlightOnOpen:n.menu.highlightOnOpen,fakeFocus:n.menu.fakeFocus,onEscape:()=>(zb.close(t),e.onEscape.map(e=>e(t)),A.some(!0)),onExecute:()=>A.some(!0),onOpenMenu:(e,t)=>{hb.positionWithinBounds(r().getOrDie(),t,o,s())},onOpenSubmenu:(e,t,o,n)=>{const s=r().getOrDie();hb.position(s,o,{anchor:{type:"submenu",item:t,...i(n)}})},onRepositionMenu:(e,t,n)=>{const a=r().getOrDie();hb.positionWithinBounds(a,t,o,s()),L(n,e=>{const t=i(e.triggeringPath);hb.position(a,e.triggeredMenu,{anchor:{type:"submenu",item:e.triggeringItem,...t}})})}})})(e,t,o,n,s);zb.open(t,r),mf.setValue(t,A.some({mode:"menu",menu:r}))},s=t=>{zb.isOpen(t)&&mf.getValue(t).each(o=>{switch(o.mode){case"menu":zb.getState(t).each(Cx.repositionMenus);break;case"position":const n=e.lazySink(t).getOrDie();hb.positionWithinBounds(n,t,o.config,o.getBounds())}})},r={setContent:(e,t)=>{zb.setContent(e,t)},showAt:(e,t,n)=>{const s=A.none;o(e,t,n,s)},showWithinBounds:o,showMenuAt:(e,t,o)=>{n(e,t,o,A.none)},showMenuWithinBounds:n,hide:e=>{zb.isOpen(e)&&(mf.setValue(e,A.none()),zb.close(e))},getContent:e=>zb.getState(e),reposition:s,isOpen:zb.isOpen};return{uid:e.uid,dom:e.dom,behaviours:ih(e.inlineBehaviours,[zb.config({isPartOf:(t,o,n)=>Kv(o,n)||((t,o)=>e.getRelated(t).exists(e=>Kv(e,o)))(t,n),getAttachPoint:t=>e.lazySink(t).getOrDie(),onOpen:t=>{e.onShow(t)},onClose:t=>{e.onHide(t)}}),mf.config({store:{mode:"memory",initialValue:A.none()}}),vb.config({channels:{...Tx({isExtraPart:t.isExtraPart,...e.fireDismissalEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({})}),...Ax({...e.fireRepositionEventInstead.map(e=>({fireEventInstead:{event:e.event}})).getOr({}),doReposition:s})}})]),eventOrder:e.eventOrder,apis:r}},apis:{showAt:(e,t,o,n)=>{e.showAt(t,o,n)},showWithinBounds:(e,t,o,n,s)=>{e.showWithinBounds(t,o,n,s)},showMenuAt:(e,t,o,n)=>{e.showMenuAt(t,o,n)},showMenuWithinBounds:(e,t,o,n,s)=>{e.showMenuWithinBounds(t,o,n,s)},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)}}}),uy=y([ia("type","text"),Kr("data"),sa("inputAttributes",{}),sa("inputStyles",{}),sa("tag","input"),sa("inputClasses",[]),Ti("onSetValue"),da("fromInputValue",w),da("toInputValue",w),sa("styles",{}),sa("eventOrder",{}),rh("inputBehaviours",[mf,_d]),sa("selectOnFocus",!0)]),my=e=>hd([_d.config({onFocus:e.selectOnFocus?t=>{const o=t.element,n=ds(o);"range"!==e.type&&o.dom.setSelectionRange(0,n.length)}:b})]),gy=e=>({...my(e),...ih(e.inputBehaviours,[mf.config({store:{mode:"manual",...e.data.map(e=>({initialValue:e})).getOr({}),getValue:t=>e.fromInputValue(ds(t.element)),setValue:(t,o)=>{ds(t.element)!==o&&us(t.element,e.toInputValue(o))}},onSetValue:e.onSetValue})])}),py=e=>({tag:e.tag,attributes:{type:e.type,...e.inputAttributes},styles:e.inputStyles,classes:e.inputClasses}),hy=hh({name:"Input",configFields:uy(),factory:(e,t)=>({uid:e.uid,dom:py(e),components:[],behaviours:gy(e),eventOrder:e.eventOrder})}),fy=pl(lx(),cx()),by=y([Pr("lazySink"),Kr("dragBlockClass"),da("getBounds",Ws),sa("useTabstopAt",E),sa("firstTabstop",0),sa("eventOrder",{}),la("role","dialog",["dialog","alertdialog"]),rh("modalBehaviours",[Im]),Ei("onExecute"),Di("onEscape")]),vy={sketch:w},xy=y([cl({name:"draghandle",overrides:(e,t)=>({behaviours:hd([Wh.config({mode:"mouse",getTarget:e=>Gn(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})])})}),il({schema:[Pr("dom")],name:"title"}),il({factory:vy,schema:[Pr("dom")],name:"close"}),il({factory:vy,schema:[Pr("dom")],name:"body"}),cl({factory:vy,schema:[Pr("dom")],name:"footer"}),ll({factory:{sketch:(e,t)=>({...e,dom:t.dom,components:t.components})},schema:[sa("dom",{tag:"div",styles:{position:"fixed",left:"0px",top:"0px",right:"0px",bottom:"0px"}}),sa("components",[])],name:"blocker"})]),yy=fh({name:"ModalDialog",configFields:by(),partFields:xy(),factory:(e,t,o,n)=>{const s=Ye(),r=Ne("modal-events"),a={...e.eventOrder,[ni()]:[r].concat(e.eventOrder["alloy.system.attached"]||[])},i=Qt();return{uid:e.uid,dom:e.dom,components:t,apis:{show:t=>{s.set(t);const o=e.lazySink(t).getOrDie(),r=n.blocker(),a=o.getSystem().build({...r,components:r.components.concat([Ug(t)]),behaviours:hd([_d.config({}),wd("dialog-blocker-events",[ad(Oa(),()=>{Gg.isBlocked(t)||Im.focusIn(t)})])])});jm(o,a),Im.focusIn(t)},hide:e=>{s.clear(),po(e.element).each(t=>{e.getSystem().getByDom(t).each(e=>{qm(e)})})},getBody:t=>Sl(t,e,"body"),getFooter:t=>wl(t,e,"footer"),setIdle:e=>{Gg.unblock(e)},setBusy:(e,t)=>{Gg.block(e,t)}},eventOrder:a,domModification:{attributes:{role:e.role,"aria-modal":"true"}},behaviours:ih(e.modalBehaviours,[ug.config({}),Im.config({mode:"cyclic",onEnter:e.onExecute,onEscape:e.onEscape,useTabstopAt:e.useTabstopAt,firstTabstop:e.firstTabstop}),Gg.config({getRoot:s.get}),wd(r,[id(t=>{const o=Sl(t,e,"title").element,n=(e=>e.dom.textContent)(o);g(n)&&""!==n&&(i.os.isMacOS()?Yo(t.element,"aria-label",n):((e,t)=>{const o=Jo(e,"id").fold(()=>{const e=Ne("dialog-label");return Yo(t,"id",e),e},w);Yo(e,"aria-labelledby",o)})(t.element,o))})])])}},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)}}}),wy=cl({schema:[Pr("dom")],name:"label"}),Sy=e=>cl({name:e+"-edge",overrides:t=>t.model.manager.edgeActions[e].fold(()=>({}),e=>({events:Kc([ed(fa(),(t,o,n)=>e(t,n),[t]),ed(ya(),(t,o,n)=>e(t,n),[t]),ed(wa(),(t,o,n)=>{n.mouseIsDown.get()&&e(t,n)},[t])])}))}),Cy=Sy("top-left"),ky=Sy("top"),Oy=Sy("top-right"),_y=Sy("right"),Ty=Sy("bottom-right"),Ey=Sy("bottom"),Ay=Sy("bottom-left"),Dy=Sy("left"),My=il({name:"thumb",defaults:y({dom:{styles:{position:"absolute"}}}),overrides:e=>({events:Kc([od(fa(),e,"spectrum"),od(ba(),e,"spectrum"),od(va(),e,"spectrum"),od(ya(),e,"spectrum"),od(wa(),e,"spectrum"),od(Ca(),e,"spectrum")])})}),By=e=>Gd(e.event),Iy=il({schema:[Lr("mouseIsDown",()=>ye(!1))],name:"spectrum",overrides:e=>{const t=e.model.manager,o=(o,n)=>t.getValueFromEvent(n).map(n=>t.setValueFrom(o,e,n));return{behaviours:hd([Im.config({mode:"special",onLeft:(o,n)=>t.onLeft(o,e,By(n)),onRight:(o,n)=>t.onRight(o,e,By(n)),onUp:(o,n)=>t.onUp(o,e,By(n)),onDown:(o,n)=>t.onDown(o,e,By(n))}),iv.config({}),_d.config({})]),events:Kc([Zc(fa(),o),Zc(ba(),o),Zc(ya(),o),Zc(wa(),(t,n)=>{e.mouseIsDown.get()&&o(t,n)})])}}});var Fy=[wy,Dy,_y,ky,Ey,Cy,Oy,Ay,Ty,My,Iy];const Ry=y("slider.change.value"),Ny=e=>{const t=e.event.raw;if((e=>-1!==e.type.indexOf("touch"))(t)){const e=t;return void 0!==e.touches&&1===e.touches.length?A.some(e.touches[0]).map(e=>Bn(e.clientX,e.clientY)):A.none()}{const e=t;return void 0!==e.clientX?A.some(e).map(e=>Bn(e.clientX,e.clientY)):A.none()}},zy=e=>e.model.minX,Vy=e=>e.model.minY,Ly=e=>e.model.minX-1,Hy=e=>e.model.minY-1,Py=e=>e.model.maxX,Uy=e=>e.model.maxY,Wy=e=>e.model.maxX+1,jy=e=>e.model.maxY+1,$y=(e,t,o)=>t(e)-o(e),Gy=e=>$y(e,Py,zy),qy=e=>$y(e,Uy,Vy),Yy=e=>Gy(e)/2,Xy=e=>qy(e)/2,Ky=(e,t)=>t?e.stepSize*e.speedMultiplier:e.stepSize,Jy=e=>e.snapToGrid,Qy=e=>e.snapStart,Zy=e=>e.rounded,ew=(e,t)=>void 0!==e[t+"-edge"],tw=e=>ew(e,"left"),ow=e=>ew(e,"right"),nw=e=>ew(e,"top"),sw=e=>ew(e,"bottom"),rw=e=>e.model.value.get(),aw=(e,t)=>({x:e,y:t}),iw=(e,t)=>{$c(e,Ry(),{value:t})},lw=(e,t,o,n)=>e<t?e:e>o?o:e===t?t-1:Math.max(t,e-n),cw=(e,t,o,n)=>e>o?e:e<t?t:e===o?o+1:Math.min(o,e+n),dw=(e,t,o)=>Math.max(t,Math.min(o,e)),uw=e=>{const{min:t,max:o,range:n,value:s,step:r,snap:a,snapStart:i,rounded:l,hasMinEdge:c,hasMaxEdge:d,minBound:u,maxBound:m,screenRange:g}=e,p=c?t-1:t,h=d?o+1:o;if(s<u)return p;if(s>m)return h;{const e=((e,t,o)=>Math.min(o,Math.max(e,t))-t)(s,u,m),c=dw(e/g*n+t,p,h);return a&&c>=t&&c<=o?((e,t,o,n,s)=>s.fold(()=>{const s=e-t,r=Math.round(s/n)*n;return dw(t+r,t-1,o+1)},t=>{const s=(e-t)%n,r=Math.round(s/n),a=Math.floor((e-t)/n),i=Math.floor((o-t)/n),l=t+Math.min(i,a+r)*n;return Math.max(t,l)}))(c,t,o,r,i):l?Math.round(c):c}},mw=e=>{const{min:t,max:o,range:n,value:s,hasMinEdge:r,hasMaxEdge:a,maxBound:i,maxOffset:l,centerMinEdge:c,centerMaxEdge:d}=e;return s<t?r?0:c:s>o?a?i:d:(s-t)/n*l},gw="top",pw="right",hw="bottom",fw="left",bw=e=>e.element.dom.getBoundingClientRect(),vw=(e,t)=>e[t],xw=e=>{const t=bw(e);return vw(t,fw)},yw=e=>{const t=bw(e);return vw(t,pw)},ww=e=>{const t=bw(e);return vw(t,gw)},Sw=e=>{const t=bw(e);return vw(t,hw)},Cw=e=>{const t=bw(e);return vw(t,"width")},kw=e=>{const t=bw(e);return vw(t,"height")},Ow=(e,t,o)=>(e+t)/2-o,_w=(e,t)=>{const o=bw(e),n=bw(t),s=vw(o,fw),r=vw(o,pw),a=vw(n,fw);return Ow(s,r,a)},Tw=(e,t)=>{const o=bw(e),n=bw(t),s=vw(o,gw),r=vw(o,hw),a=vw(n,gw);return Ow(s,r,a)},Ew=(e,t)=>{$c(e,Ry(),{value:t})},Aw=(e,t,o)=>{const n={min:zy(t),max:Py(t),range:Gy(t),value:o,step:Ky(t),snap:Jy(t),snapStart:Qy(t),rounded:Zy(t),hasMinEdge:tw(t),hasMaxEdge:ow(t),minBound:xw(e),maxBound:yw(e),screenRange:Cw(e)};return uw(n)},Dw=e=>(t,o,n)=>((e,t,o,n)=>{const s=(e>0?cw:lw)(rw(o),zy(o),Py(o),Ky(o,n));return Ew(t,s),A.some(s)})(e,t,o,n).map(E),Mw=(e,t,o,n,s,r)=>{const a=((e,t,o,n,s)=>{const r=Cw(e),a=n.bind(t=>A.some(_w(t,e))).getOr(0),i=s.bind(t=>A.some(_w(t,e))).getOr(r),l={min:zy(t),max:Py(t),range:Gy(t),value:o,hasMinEdge:tw(t),hasMaxEdge:ow(t),minBound:xw(e),minOffset:0,maxBound:yw(e),maxOffset:r,centerMinEdge:a,centerMaxEdge:i};return mw(l)})(t,r,o,n,s);return xw(t)-xw(e)+a},Bw=Dw(-1),Iw=Dw(1),Fw=A.none,Rw=A.none,Nw={"top-left":A.none(),top:A.none(),"top-right":A.none(),right:A.some((e,t)=>{iw(e,Wy(t))}),"bottom-right":A.none(),bottom:A.none(),"bottom-left":A.none(),left:A.some((e,t)=>{iw(e,Ly(t))})};var zw=Object.freeze({__proto__:null,setValueFrom:(e,t,o)=>{const n=Aw(e,t,o);return Ew(e,n),n},setToMin:(e,t)=>{const o=zy(t);Ew(e,o)},setToMax:(e,t)=>{const o=Py(t);Ew(e,o)},findValueOfOffset:Aw,getValueFromEvent:e=>Ny(e).map(e=>e.left),findPositionOfValue:Mw,setPositionFromValue:(e,t,o,n)=>{const s=rw(o),r=Mw(e,n.getSpectrum(e),s,n.getLeftEdge(e),n.getRightEdge(e),o),a=An(t.element)/2;gn(t.element,"left",r-a+"px")},onLeft:Bw,onRight:Iw,onUp:Fw,onDown:Rw,edgeActions:Nw});const Vw=(e,t)=>{$c(e,Ry(),{value:t})},Lw=(e,t,o)=>{const n={min:Vy(t),max:Uy(t),range:qy(t),value:o,step:Ky(t),snap:Jy(t),snapStart:Qy(t),rounded:Zy(t),hasMinEdge:nw(t),hasMaxEdge:sw(t),minBound:ww(e),maxBound:Sw(e),screenRange:kw(e)};return uw(n)},Hw=e=>(t,o,n)=>((e,t,o,n)=>{const s=(e>0?cw:lw)(rw(o),Vy(o),Uy(o),Ky(o,n));return Vw(t,s),A.some(s)})(e,t,o,n).map(E),Pw=(e,t,o,n,s,r)=>{const a=((e,t,o,n,s)=>{const r=kw(e),a=n.bind(t=>A.some(Tw(t,e))).getOr(0),i=s.bind(t=>A.some(Tw(t,e))).getOr(r),l={min:Vy(t),max:Uy(t),range:qy(t),value:o,hasMinEdge:nw(t),hasMaxEdge:sw(t),minBound:ww(e),minOffset:0,maxBound:Sw(e),maxOffset:r,centerMinEdge:a,centerMaxEdge:i};return mw(l)})(t,r,o,n,s);return ww(t)-ww(e)+a},Uw=A.none,Ww=A.none,jw=Hw(-1),$w=Hw(1),Gw={"top-left":A.none(),top:A.some((e,t)=>{iw(e,Hy(t))}),"top-right":A.none(),right:A.none(),"bottom-right":A.none(),bottom:A.some((e,t)=>{iw(e,jy(t))}),"bottom-left":A.none(),left:A.none()};var qw=Object.freeze({__proto__:null,setValueFrom:(e,t,o)=>{const n=Lw(e,t,o);return Vw(e,n),n},setToMin:(e,t)=>{const o=Vy(t);Vw(e,o)},setToMax:(e,t)=>{const o=Uy(t);Vw(e,o)},findValueOfOffset:Lw,getValueFromEvent:e=>Ny(e).map(e=>e.top),findPositionOfValue:Pw,setPositionFromValue:(e,t,o,n)=>{const s=rw(o),r=Pw(e,n.getSpectrum(e),s,n.getTopEdge(e),n.getBottomEdge(e),o),a=On(t.element)/2;gn(t.element,"top",r-a+"px")},onLeft:Uw,onRight:Ww,onUp:jw,onDown:$w,edgeActions:Gw});const Yw=(e,t)=>{$c(e,Ry(),{value:t})},Xw=(e,t)=>({x:e,y:t}),Kw=(e,t)=>(o,n,s)=>((e,t,o,n,s)=>{const r=e>0?cw:lw,a=t?rw(n).x:r(rw(n).x,zy(n),Py(n),Ky(n,s)),i=t?r(rw(n).y,Vy(n),Uy(n),Ky(n,s)):rw(n).y;return Yw(o,Xw(a,i)),A.some(a)})(e,t,o,n,s).map(E),Jw=Kw(-1,!1),Qw=Kw(1,!1),Zw=Kw(-1,!0),eS=Kw(1,!0),tS={"top-left":A.some((e,t)=>{iw(e,aw(Ly(t),Hy(t)))}),top:A.some((e,t)=>{iw(e,aw(Yy(t),Hy(t)))}),"top-right":A.some((e,t)=>{iw(e,aw(Wy(t),Hy(t)))}),right:A.some((e,t)=>{iw(e,aw(Wy(t),Xy(t)))}),"bottom-right":A.some((e,t)=>{iw(e,aw(Wy(t),jy(t)))}),bottom:A.some((e,t)=>{iw(e,aw(Yy(t),jy(t)))}),"bottom-left":A.some((e,t)=>{iw(e,aw(Ly(t),jy(t)))}),left:A.some((e,t)=>{iw(e,aw(Ly(t),Xy(t)))})};var oS=Object.freeze({__proto__:null,setValueFrom:(e,t,o)=>{const n=Aw(e,t,o.left),s=Lw(e,t,o.top),r=Xw(n,s);return Yw(e,r),r},setToMin:(e,t)=>{const o=zy(t),n=Vy(t);Yw(e,Xw(o,n))},setToMax:(e,t)=>{const o=Py(t),n=Uy(t);Yw(e,Xw(o,n))},getValueFromEvent:e=>Ny(e),setPositionFromValue:(e,t,o,n)=>{const s=rw(o),r=Mw(e,n.getSpectrum(e),s.x,n.getLeftEdge(e),n.getRightEdge(e),o),a=Pw(e,n.getSpectrum(e),s.y,n.getTopEdge(e),n.getBottomEdge(e),o),i=An(t.element)/2,l=On(t.element)/2;gn(t.element,"left",r-i+"px"),gn(t.element,"top",a-l+"px")},onLeft:Jw,onRight:Qw,onUp:Zw,onDown:eS,edgeActions:tS});const nS=fh({name:"Slider",configFields:[sa("stepSize",1),sa("speedMultiplier",10),sa("onChange",b),sa("onChoose",b),sa("onInit",b),sa("onDragStart",b),sa("onDragEnd",b),sa("snapToGrid",!1),sa("rounded",!0),Kr("snapStart"),Ur("model",Nr("mode",{x:[sa("minX",0),sa("maxX",100),Lr("value",e=>ye(e.mode.minX)),Pr("getInitialValue"),Mi("manager",zw)],y:[sa("minY",0),sa("maxY",100),Lr("value",e=>ye(e.mode.minY)),Pr("getInitialValue"),Mi("manager",qw)],xy:[sa("minX",0),sa("maxX",100),sa("minY",0),sa("maxY",100),Lr("value",e=>ye({x:e.mode.minX,y:e.mode.minY})),Pr("getInitialValue"),Mi("manager",oS)]})),rh("sliderBehaviours",[Im,mf]),Lr("mouseIsDown",()=>ye(!1))],partFields:Fy,factory:(e,t,o,n)=>{const s=t=>Sl(t,e,"thumb"),r=t=>Sl(t,e,"spectrum"),a=t=>wl(t,e,"left-edge"),i=t=>wl(t,e,"right-edge"),l=t=>wl(t,e,"top-edge"),c=t=>wl(t,e,"bottom-edge"),d=e.model,u=d.manager,m=(t,o)=>{u.setPositionFromValue(t,o,e,{getLeftEdge:a,getRightEdge:i,getTopEdge:l,getBottomEdge:c,getSpectrum:r})},g=(e,t)=>{d.value.set(t);const o=s(e);m(e,o)},p=t=>{const o=e.mouseIsDown.get();e.mouseIsDown.set(!1),o&&wl(t,e,"thumb").each(o=>{const n=d.value.get();e.onChoose(t,o,n)})},h=(t,o)=>{o.stop(),e.mouseIsDown.set(!0),e.onDragStart(t,s(t))},f=(t,o)=>{o.stop(),e.onDragEnd(t,s(t)),p(t)},b=t=>{wl(t,e,"spectrum").map(Im.focusIn)};return{uid:e.uid,dom:e.dom,components:t,behaviours:ih(e.sliderBehaviours,[Im.config({mode:"special",focusIn:b}),mf.config({store:{mode:"manual",getValue:e=>d.value.get(),setValue:g}}),vb.config({channels:{[Ld()]:{onReceive:p}}})]),events:Kc([Zc(Ry(),(t,o)=>{((t,o)=>{g(t,o);const n=s(t);e.onChange(t,n,o),A.some(!0)})(t,o.event.value)}),id((t,o)=>{const n=d.getInitialValue();d.value.set(n);const a=s(t);m(t,a);const i=r(t);e.onInit(t,a,i,d.value.get())}),Zc(fa(),h),Zc(va(),f),Zc(ya(),(e,t)=>{b(e),h(e,t)}),Zc(Ca(),f)]),apis:{resetToMin:t=>{u.setToMin(t,e)},resetToMax:t=>{u.setToMax(t,e)},setValue:g,refresh:m},domModification:{styles:{position:"relative"}}}},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)}}}),sS="container",rS=[rh("slotBehaviours",[])],aS=e=>"<alloy.field."+e+">",iS=(e,t)=>{const o=t=>Ol(e),n=(t,o)=>(n,s)=>wl(n,e,s).map(e=>t(e,s)).getOr(o),s=(e,t)=>"true"!==Ko(e.element,"aria-hidden"),r=n(s,!1),a=n((e,t)=>{if(s(e)){const o=e.element;gn(o,"display","none"),Yo(o,"aria-hidden","true"),$c(e,li(),{name:t,visible:!1})}}),i=(e=>(t,o)=>{L(o,o=>e(t,o))})(a),l=n((e,t)=>{if(!s(e)){const o=e.element;wn(o,"display"),Zo(o,"aria-hidden"),$c(e,li(),{name:t,visible:!0})}}),c={getSlotNames:o,getSlot:(t,o)=>wl(t,e,o),isShowing:r,hideSlot:a,hideAllSlots:e=>i(e,o()),showSlot:l};return{uid:e.uid,dom:e.dom,components:t,behaviours:ah(e.slotBehaviours),apis:c}},lS=le({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=>zm(e)),cS={...lS,sketch:e=>{const t=(()=>{const e=[];return{slot:(t,o)=>(e.push(t),fl(sS,aS(t),o)),record:y(e)}})(),o=e(t),n=t.record(),s=V(n,e=>il({name:e,pname:aS(e)}));return uh(sS,rS,s,iS,o)}},dS=(e,t,o)=>({within:e,extra:t,withinWidth:o}),uS=(e,t,o)=>{const n=W(e,(e,t)=>((e,t)=>{const n=o(e);return A.some({element:e,start:t,finish:t+n,width:n})})(t,e.len).fold(y(e),t=>({len:t.finish,list:e.list.concat([t])})),{len:0,list:[]}).list,s=P(n,e=>e.finish<=t),r=U(s,(e,t)=>e+t.width,0);return{within:s,extra:n.slice(s.length),withinWidth:r}},mS=e=>V(e,e=>e.element),gS=(e,t)=>{const o=V(t,e=>Ug(e));Yx.setGroups(e,o)},pS=(e,t,o)=>{const n=t.builtGroups.get();if(0===n.length)return;const s=Sl(e,t,"primary"),r=Zg.getCoupled(e,"overflowGroup");gn(s.element,"visibility","hidden");const a=n.concat([r]),i=se(a,e=>Po(e.element).bind(t=>e.getSystem().getByDom(t).toOptional()));o([]),gS(s,a);const l=((e,t,o,n)=>{const s=((e,t,o)=>{const n=uS(t,e,o);return 0===n.extra.length?A.some(n):A.none()})(e,t,o).getOrThunk(()=>uS(t,e-o(n),o)),r=s.within,a=s.extra,i=s.withinWidth;return 1===a.length&&a[0].width<=o(n)?((e,t,o)=>{const n=mS(e.concat(t));return dS(n,[],o)})(r,a,i):a.length>=1?((e,t,o,n)=>{const s=mS(e).concat([o]);return dS(s,mS(t),n)})(r,a,n,i):((e,t,o)=>dS(mS(e),[],o))(r,0,i)})(An(s.element),t.builtGroups.get(),e=>Math.ceil(e.element.dom.getBoundingClientRect().width),r);0===l.extra.length?(ug.remove(s,r),o([])):(gS(s,l.within),o(l.extra)),wn(s.element,"visibility"),Sn(s.element),i.each(_d.focus)},hS=y([rh("splitToolbarBehaviours",[Zg]),Lr("builtGroups",()=>ye([]))]),fS=y([Oi(["overflowToggledClass"]),ta("getOverflowBounds"),Pr("lazySink"),Lr("overflowGroups",()=>ye([])),Ti("onOpened"),Ti("onClosed")].concat(hS())),bS=y([il({factory:Yx,schema:Gx(),name:"primary"}),ll({schema:Gx(),name:"overflow"}),ll({name:"overflow-button"}),ll({name:"overflow-group"})]),vS=y([Pr("items"),Oi(["itemSelector"]),rh("tgroupBehaviours",[Im])]),xS=y([dl({name:"items",unit:"item"})]),yS=fh({name:"ToolbarGroup",configFields:vS(),partFields:xS(),factory:(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,behaviours:ih(e.tgroupBehaviours,[Im.config({mode:"flow",selector:e.markers.itemSelector})]),domModification:{attributes:{role:"group"}}})}),wS=e=>V(e,e=>Ug(e)),SS=(e,t,o)=>{pS(e,o,n=>{o.overflowGroups.set(n),t.getOpt(e).each(e=>{ty.setGroups(e,wS(n))})})},CS=fh({name:"SplitFloatingToolbar",configFields:fS(),partFields:bS(),factory:(e,t,o,n)=>{const s=Dv(ty.sketch({fetch:()=>Oe(t=>{t(wS(e.overflowGroups.get()))}),layouts:{onLtr:()=>[Ql,Jl],onRtl:()=>[Jl,Ql],onBottomLtr:()=>[ec,Zl],onBottomRtl:()=>[Zl,ec]},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:ih(e.splitToolbarBehaviours,[Zg.config({others:{overflowGroup:()=>yS.sketch({...n["overflow-group"](),items:[s.asSpec()]})}})]),apis:{setGroups:(t,o)=>{e.builtGroups.set(V(o,t.getSystem().build)),SS(t,s,e)},refresh:t=>SS(t,s,e),toggle:e=>{s.getOpt(e).each(e=>{ty.toggle(e)})},toggleWithoutFocusing:e=>{s.getOpt(e).each(ty.toggleWithoutFocusing)},isOpen:e=>s.getOpt(e).map(ty.isOpen).getOr(!1),reposition:e=>{s.getOpt(e).each(e=>{ty.reposition(e)})},getOverflow:e=>s.getOpt(e).bind(ty.getToolbar)},domModification:{attributes:{role:"group"}}}},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)},toggleWithoutFocusing:(e,t)=>{e.toggle(t)},isOpen:(e,t)=>e.isOpen(t),getOverflow:(e,t)=>e.getOverflow(t)}}),kS=y([Oi(["closedClass","openClass","shrinkingClass","growingClass","overflowToggledClass"]),Ti("onOpened"),Ti("onClosed")].concat(hS())),OS=y([il({factory:Yx,schema:Gx(),name:"primary"}),il({factory:Yx,schema:Gx(),name:"overflow",overrides:e=>({toolbarBehaviours:hd([Zb.config({dimension:{property:"height"},closedClass:e.markers.closedClass,openClass:e.markers.openClass,shrinkingClass:e.markers.shrinkingClass,growingClass:e.markers.growingClass,onShrunk:t=>{wl(t,e,"overflow-button").each(e=>{hv.off(e)}),e.onClosed(t)},onGrown:t=>{e.onOpened(t)},onStartGrow:t=>{wl(t,e,"overflow-button").each(hv.on)}}),Im.config({mode:"acyclic",onEscape:t=>(wl(t,e,"overflow-button").each(_d.focus),A.some(!0))})])})}),ll({name:"overflow-button",overrides:e=>({buttonBehaviours:hd([hv.config({toggleClass:e.markers.overflowToggledClass,aria:{mode:"expanded"},toggleOnExecute:!1})])})}),ll({name:"overflow-group"})]),_S=(e,t,o)=>{wl(e,t,"overflow-button").each(n=>{wl(e,t,"overflow").each(s=>{if(TS(e,t),Zb.hasShrunk(s)){const e=t.onOpened;t.onOpened=n=>{o||Im.focusIn(s),e(n),t.onOpened=e}}else{const e=t.onClosed;t.onClosed=s=>{o||_d.focus(n),e(s),t.onClosed=e}}Zb.toggleGrow(s)})})},TS=(e,t)=>{wl(e,t,"overflow").each(o=>{pS(e,t,e=>{const t=V(e,e=>Ug(e));Yx.setGroups(o,t)}),wl(e,t,"overflow-button").each(e=>{Zb.hasGrown(o)&&hv.on(e)}),Zb.refresh(o)})},ES=fh({name:"SplitSlidingToolbar",configFields:kS(),partFields:OS(),factory:(e,t,o,n)=>{const s="alloy.toolbar.toggle";return{uid:e.uid,dom:e.dom,components:t,behaviours:ih(e.splitToolbarBehaviours,[Zg.config({others:{overflowGroup:e=>yS.sketch({...n["overflow-group"](),items:[Wv.sketch({...n["overflow-button"](),action:t=>{jc(e,s)}})]})}}),wd("toolbar-toggle-events",[Zc(s,t=>{_S(t,e,!1)})])]),apis:{setGroups:(t,o)=>{((t,o)=>{const n=V(o,t.getSystem().build);e.builtGroups.set(n)})(t,o),TS(t,e)},refresh:t=>TS(t,e),toggle:t=>{_S(t,e,!1)},toggleWithoutFocusing:t=>{_S(t,e,!0)},isOpen:t=>((e,t)=>wl(e,t,"overflow").map(Zb.hasGrown).getOr(!1))(t,e)},domModification:{attributes:{role:"group"}}}},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)}}),AS=hh({name:"TabButton",configFields:[sa("uid",void 0),Pr("value"),Vr("dom","dom",hr(()=>({attributes:{role:"tab",id:Ne("aria"),"aria-selected":"false"}})),rr()),Kr("action"),sa("domModification",{}),rh("tabButtonBehaviours",[_d,Im,mf]),Pr("view")],factory:(e,t)=>({uid:e.uid,dom:e.dom,components:e.components,events:Uv(e.action),behaviours:ih(e.tabButtonBehaviours,[_d.config({}),Im.config({mode:"execution",useSpace:!0,useEnter:!0}),mf.config({store:{mode:"memory",initialValue:e.value}})]),domModification:e.domModification})}),DS=y([Pr("tabs"),Pr("dom"),sa("clickToDismiss",!1),rh("tabbarBehaviours",[ru,Im]),Oi(["tabClass","selectedClass"])]),MS=dl({factory:AS,name:"tabs",unit:"tab",overrides:e=>{const t=(e,t)=>{ru.dehighlight(e,t),$c(e,ui(),{tabbar:e,button:t})},o=(e,t)=>{ru.highlight(e,t),$c(e,di(),{tabbar:e,button:t})};return{action:n=>{const s=n.getSystem().getByUid(e.uid).getOrDie(),r=ru.isHighlighted(s,n);(r&&e.clickToDismiss?t:r?b:o)(s,n)},domModification:{classes:[e.markers.tabClass]}}}}),BS=y([MS]),IS=fh({name:"Tabbar",configFields:DS(),partFields:BS(),factory:(e,t,o,n)=>({uid:e.uid,dom:e.dom,components:t,"debug.sketcher":"Tabbar",domModification:{attributes:{role:"tablist"}},behaviours:ih(e.tabbarBehaviours,[ru.config({highlightClass:e.markers.selectedClass,itemClass:e.markers.tabClass,onHighlight:(e,t)=>{Yo(t.element,"aria-selected","true")},onDehighlight:(e,t)=>{Yo(t.element,"aria-selected","false")}}),Im.config({mode:"flow",getInitial:e=>ru.getHighlighted(e).map(e=>e.element),selector:"."+e.markers.tabClass,executeOnMove:!0})])})}),FS=hh({name:"Tabview",configFields:[rh("tabviewBehaviours",[ug])],factory:(e,t)=>({uid:e.uid,dom:e.dom,behaviours:ih(e.tabviewBehaviours,[ug.config({})]),domModification:{attributes:{role:"tabpanel"}}})}),RS=y([sa("selectFirst",!0),Ti("onChangeTab"),Ti("onDismissTab"),sa("tabs",[]),rh("tabSectionBehaviours",[])]),NS=il({factory:IS,schema:[Pr("dom"),qr("markers",[Pr("tabClass"),Pr("selectedClass")])],name:"tabbar",defaults:e=>({tabs:e.tabs})}),zS=il({factory:FS,name:"tabview"}),VS=y([NS,zS]),LS=fh({name:"TabSection",configFields:RS(),partFields:VS(),factory:(e,t,o,n)=>{const s=(t,o)=>{wl(t,e,"tabbar").each(e=>{o(e).each(Gc)})};return{uid:e.uid,dom:e.dom,components:t,behaviours:ah(e.tabSectionBehaviours),events:Kc(G([e.selectFirst?[id((e,t)=>{s(e,ru.getFirst)})]:[],[Zc(di(),(t,o)=>{(t=>{const o=mf.getValue(t);wl(t,e,"tabview").each(n=>{j(e.tabs,e=>e.value===o).each(o=>{const s=o.view();Jo(t.element,"id").each(e=>{Yo(n.element,"aria-labelledby",e)}),ug.set(n,s),e.onChangeTab(n,t,s)})})})(o.event.button)}),Zc(ui(),(t,o)=>{const n=o.event.button;e.onDismissTab(t,n)})]])),apis:{getViewItems:t=>wl(t,e,"tabview").map(e=>ug.contents(e)).getOr([]),showTab:(e,t)=>{s(e,e=>{const o=ru.getCandidates(e);return j(o,e=>mf.getValue(e)===t).filter(t=>!ru.isHighlighted(e,t))})}}}},apis:{getViewItems:(e,t)=>e.getViewItems(t),showTab:(e,t,o)=>{e.showTab(t,o)}}}),HS=(e,t,o)=>{const n=mf.getValue(o);mf.setValue(t,n),US(t)},PS=(e,t)=>{const o=e.element,n=ds(o),s=o.dom;"number"!==Ko(o,"type")&&t(s,n)},US=e=>{PS(e,(e,t)=>e.setSelectionRange(t.length,t.length))},WS=y("alloy.typeahead.itemexecute"),jS=y([Kr("lazySink"),Pr("fetch"),sa("minChars",5),sa("responseTime",1e3),Ti("onOpen"),sa("getHotspot",A.some),sa("getAnchorOverrides",y({})),sa("layouts",A.none()),sa("eventOrder",{}),ma("model",{},[sa("getDisplayText",e=>void 0!==e.meta&&void 0!==e.meta.text?e.meta.text:e.value),sa("selectsOver",!0),sa("populateFromBrowse",!0)]),Ti("onSetValue"),Ei("onExecute"),Ti("onItemExecute"),sa("inputClasses",[]),sa("inputAttributes",{}),sa("inputStyles",{}),sa("matchWidth",!0),sa("useMinWidth",!1),sa("dismissOnBlur",!0),Oi(["openClass"]),Kr("initialData"),Kr("listRole"),rh("typeaheadBehaviours",[_d,mf,sv,Im,hv,Zg]),Lr("lazyTypeaheadComp",()=>ye(A.none)),Lr("previewing",()=>ye(!0))].concat(uy()).concat(zx())),$S=y([ll({schema:[ki()],name:"menu",overrides:e=>({fakeFocus:!0,onHighlightItem:(t,o,n)=>{e.previewing.get()?e.lazyTypeaheadComp.get().each(t=>{((e,t,o)=>{if(e.selectsOver){const n=mf.getValue(t),s=e.getDisplayText(n),r=mf.getValue(o);return 0===e.getDisplayText(r).indexOf(s)?A.some(()=>{HS(0,t,o),((e,t)=>{PS(e,(e,o)=>e.setSelectionRange(t,o.length))})(t,s.length)}):A.none()}return A.none()})(e.model,t,n).fold(()=>{e.model.selectsOver?(ru.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&&HS(e.model,t,n),Jo(n.element,"id").each(e=>Yo(t.element,"aria-activedescendant",e))})},onExecute:(t,o)=>e.lazyTypeaheadComp.get().map(e=>($c(e,WS(),{item:o}),!0)),onHover:(t,o)=>{e.previewing.set(!1),e.lazyTypeaheadComp.get().each(t=>{e.model.populateFromBrowse&&HS(e.model,t,o)})}})})]),GS=fh({name:"Typeahead",configFields:jS(),partFields:$S(),factory:(e,t,o,n)=>{const s=(t,o,s)=>{e.previewing.set(!1);const r=Zg.getCoupled(t,"sandbox");if(zb.isOpen(r))Xg.getCurrent(r).each(e=>{ru.getHighlighted(e).fold(()=>{s(e)},()=>{Xc(r,e.element,"keydown",o)})});else{const o=e=>{Xg.getCurrent(e).each(s)};Mx(e,a(t),t,r,n,o,Lc.HighlightMenuAndItem).get(b)}},r=my(e),a=e=>t=>t.map(t=>{const o=he(t.menus),n=q(o,e=>P(e.items,e=>"item"===e.type));return mf.getState(e).update(V(n,e=>e.data)),t}),i=e=>Xg.getCurrent(e),l="typeaheadevents",c=[_d.config({}),mf.config({onSetValue:e.onSetValue,store:{mode:"dataset",getDataKey:e=>ds(e.element),getFallbackEntry:e=>({value:e,meta:{}}),setValue:(t,o)=>{us(t.element,e.model.getDisplayText(o))},...e.initialData.map(e=>ga("initialValue",e)).getOr({})}}),sv.config({stream:{mode:"throttle",delay:e.responseTime,stopEvent:!1},onStream:(t,o)=>{const s=Zg.getCoupled(t,"sandbox");if(_d.isFocused(t)&&ds(t.element).length>=e.minChars){const o=i(s).bind(e=>ru.getHighlighted(e).map(mf.getValue));e.previewing.set(!0);const r=t=>{i(s).each(t=>{o.fold(()=>{e.model.selectsOver&&ru.highlightFirst(t)},e=>{ru.highlightBy(t,t=>mf.getValue(t).value===e.value),ru.getHighlighted(t).orThunk(()=>(ru.highlightFirst(t),A.none()))})})};Mx(e,a(t),t,s,n,r,Lc.HighlightJustMenu).get(b)}},cancelEvent:Ja()}),Im.config({mode:"special",onDown:(e,t)=>(s(e,t,ru.highlightFirst),A.some(!0)),onEscape:e=>{const t=Zg.getCoupled(e,"sandbox");return zb.isOpen(t)?(zb.close(t),A.some(!0)):A.none()},onUp:(e,t)=>(s(e,t,ru.highlightLast),A.some(!0)),onEnter:t=>{const o=Zg.getCoupled(t,"sandbox"),n=zb.isOpen(o);if(n&&!e.previewing.get())return i(o).bind(e=>ru.getHighlighted(e)).map(e=>($c(t,WS(),{item:e}),!0));{const s=mf.getValue(t);return jc(t,Ja()),e.onExecute(o,t,s),n&&zb.close(o),A.some(!0)}}}),hv.config({toggleClass:e.markers.openClass,aria:{mode:"expanded"}}),Zg.config({others:{sandbox:t=>Nx(e,t,{onOpen:()=>hv.on(t),onClose:()=>{e.lazyTypeaheadComp.get().each(e=>Zo(e.element,"aria-activedescendant")),hv.off(t)}})}}),wd(l,[id(t=>{e.lazyTypeaheadComp.set(A.some(t))}),ld(t=>{e.lazyTypeaheadComp.set(A.none())}),dd(t=>{const o=b;Ix(e,a(t),t,n,o,Lc.HighlightMenuAndItem).get(b)}),Zc(WS(),(t,o)=>{const n=Zg.getCoupled(t,"sandbox");HS(e.model,t,o.event.item),jc(t,Ja()),e.onItemExecute(t,n,o.event.item,mf.getValue(t)),zb.close(n),US(t)})].concat(e.dismissOnBlur?[Zc(Wa(),e=>{const t=Zg.getCoupled(e,"sandbox");Po(t.element).isNone()&&zb.close(t)})]:[]))],d={[si()]:[mf.name(),sv.name(),l],...e.eventOrder};return{uid:e.uid,dom:py(Ve(e,{inputAttributes:{role:"combobox","aria-autocomplete":"list","aria-haspopup":"true"}})),behaviours:{...r,...ih(e.typeaheadBehaviours,c)},eventOrder:d}}});var qS=tinymce.util.Tools.resolve("tinymce.ThemeManager"),YS=tinymce.util.Tools.resolve("tinymce.util.Delay"),XS=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),KS=tinymce.util.Tools.resolve("tinymce.EditorManager"),JS=tinymce.util.Tools.resolve("tinymce.Env");const QS={default:"wrap",floating:"floating",sliding:"sliding",scrolling:"scrolling"},ZS={auto:"auto",top:"top",bottom:"bottom"},eC=e=>t=>t.options.get(e),tC=e=>t=>A.from(e(t)),oC=e=>{const t=JS.deviceType.isPhone(),o=JS.deviceType.isTablet()||t,n=e.options.register,s=e=>r(e)||!1===e,a=e=>r(e)||h(e);n("skin",{processor:e=>r(e)||!1===e,default:"oxide"}),n("skin_url",{processor:"string"}),n("height",{processor:a,default:Math.max(e.getElement().offsetHeight,400)}),n("width",{processor:a,default:XS.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("font_size_input_default_unit",{processor:"string",default:"pt"}),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=>r(e)||d(e),default:!t}),n("menu",{processor:"object",default:{}}),n("toolbar",{processor:e=>d(e)||r(e)||l(e)?{value:e,valid:!0}:{valid:!1,message:"Must be a boolean, string or array."},default:!0}),N(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:ZS.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("ui_mode",{processor:"string",default:"combined"}),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:s,default:"#top"}),n("anchor_bottom",{processor:s,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||d(e),default:!JS.deviceType.isTouch()}),n("sidebar_show",{processor:"string"}),n("sidebar_width",{processor:"number",default:440}),n("sidebar_min_width",{processor:"number",default:300}),n("sidebar_max_width",{processor:"number",default:800}),n("view_show",{processor:"string"}),n("help_accessibility",{processor:"boolean",default:e.hasPlugin("help")}),n("default_font_stack",{processor:"string[]",default:[]})},nC=eC("readonly"),sC=eC("disabled"),rC=eC("height"),aC=eC("width"),iC=tC(eC("min_width")),lC=tC(eC("min_height")),cC=tC(eC("max_width")),dC=tC(eC("max_height")),uC=tC(eC("style_formats")),mC=eC("style_formats_merge"),gC=eC("style_formats_autohide"),pC=eC("content_langs"),hC=eC("removed_menuitems"),fC=eC("toolbar_mode"),bC=eC("toolbar_groups"),vC=eC("toolbar_location"),xC=eC("fixed_toolbar_container"),yC=eC("fixed_toolbar_container_target"),wC=eC("toolbar_persist"),SC=eC("toolbar_sticky_offset"),CC=eC("menubar"),kC=eC("toolbar"),OC=eC("file_picker_callback"),_C=eC("file_picker_validator_handler"),TC=eC("font_size_input_default_unit"),EC=eC("file_picker_types"),AC=eC("typeahead_urls"),DC=eC("anchor_top"),MC=eC("anchor_bottom"),BC=eC("draggable_modal"),IC=eC("statusbar"),FC=eC("elementpath"),RC=eC("branding"),NC=eC("resize"),zC=eC("paste_as_text"),VC=eC("sidebar_show"),LC=eC("sidebar_width"),HC=eC("sidebar_min_width"),PC=eC("sidebar_max_width"),UC=eC("view_show"),WC=eC("promotion"),jC=eC("help_accessibility"),$C=eC("default_font_stack"),GC=eC("skin"),qC=e=>!1===e.options.get("skin"),YC=e=>!1!==e.options.get("menubar"),XC=e=>{const t=e.options.get("skin_url");if(qC(e))return t;if(t)return e.documentBaseURI.toAbsolute(t);{const t=e.options.get("skin");return KS.baseURL+"/skins/ui/"+t}},KC=e=>e.options.get("line_height_formats").split(" "),JC=e=>{const t=kC(e),o=r(t),n=l(t)&&t.length>0;return!ZC(e)&&(n||o||!0===t)},QC=e=>{const t=N(9,t=>e.options.get("toolbar"+(t+1))),o=P(t,r);return je(o.length>0,o)},ZC=e=>QC(e).fold(()=>{const t=kC(e);return f(t,r)&&t.length>0},E),ek=e=>vC(e)===ZS.bottom,tk=e=>{if(!e.inline)return A.none();const t=xC(e)??"";if(t.length>0)return Xn(cn(),t);const o=yC(e);return g(o)?A.some(ct(o)):A.none()},ok=e=>e.inline&&tk(e).isSome(),nk=e=>tk(e).getOrThunk(()=>_o(Oo(ct(e.getElement())))),sk=e=>e.inline&&!YC(e)&&!JC(e)&&!ZC(e),rk=e=>(e.options.get("toolbar_sticky")||e.inline)&&!ok(e)&&!sk(e),ak=e=>!ok(e)&&"split"===e.options.get("ui_mode"),ik=e=>{const t=e.options.get("menu");return le(t,e=>({...e,items:e.items}))};var lk=Object.freeze({__proto__:null,ToolbarMode:QS,ToolbarLocation:ZS,getAnchorBottom:MC,getAnchorTop:DC,getContentLanguages:pC,getDefaultFontStack:$C,getFilePickerCallback:OC,getFilePickerTypes:EC,getFilePickerValidatorHandler:_C,getFontSizeInputDefaultUnit:TC,getHeightOption:rC,getLineHeightFormats:KC,getMaxHeightOption:dC,getMaxWidthOption:cC,getMenubar:CC,getMenus:ik,getMinHeightOption:lC,getMinWidthOption:iC,getMultipleToolbarsOption:QC,getPasteAsText:zC,getRemovedMenuItems:hC,getResize:NC,getSidebarShow:VC,getSidebarWidth:LC,getSidebarMinWidth:HC,getSidebarMaxWidth:PC,getSkin:GC,getSkinUrl:XC,getSkinUrlOption:e=>A.from(e.options.get("skin_url")),getStickyToolbarOffset:SC,getToolbar:kC,getToolbarGroups:bC,getToolbarLocation:vC,getToolbarMode:fC,getUiContainer:nk,getUserStyleFormats:uC,getViewShow:UC,getWidthOption:aC,isDisabled:sC,isDistractionFree:sk,isDraggableModal:BC,isMenubarEnabled:YC,isMultipleToolbars:ZC,isReadOnly:nC,isSkinDisabled:qC,isSplitUiMode:ak,isStickyToolbar:rk,isToolbarEnabled:JC,isToolbarLocationBottom:ek,isToolbarPersist:wC,promotionEnabled:WC,register:oC,shouldAutoHideStyleFormats:gC,shouldMergeStyleFormats:mC,useBranding:RC,useElementPath:FC,useFixedContainer:ok,useHelpAccessibility:jC,useStatusBar:IC,useTypeaheadUrls:AC});const ck=["visible","hidden","clip"],dk=e=>et(e).length>0&&!F(ck,e),uk=e=>{if(no(e)){const t=fn(e,"overflow-x"),o=fn(e,"overflow-y");return dk(t)||dk(o)}return!1},mk=e=>e.plugins.fullscreen&&e.plugins.fullscreen.isFullscreen(),gk=(e,t)=>ak(e)?((e,t)=>{const o=ms(t,uk),n=0===o.length?To(t).map(Eo).map(e=>ms(e,uk)).getOr([]):o;return te(n).map(t=>({element:t,others:n.slice(1),isFullscreen:()=>mk(e)}))})(e,t):A.none(),pk=e=>{const t=[...V(e.others,Hs),Ws()];return e.isFullscreen()?Ws():((e,t)=>W(t,(e,t)=>Us(e,t),e))(Hs(e.element),t)};
/*! @license DOMPurify 3.4.12 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.12/LICENSE */
function hk(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=Array(t);o<t;o++)n[o]=e[o];return n}function fk(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var n,s,r,a,i=[],l=!0,c=!1;try{if(r=(o=o.call(e)).next,0===t);else for(;!(l=(n=r.call(o)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){c=!0,s=e}finally{try{if(!l&&null!=o.return&&(a=o.return(),Object(a)!==a))return}finally{if(c)throw s}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return hk(e,t);var o={}.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)?hk(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}const bk=Object.entries,vk=Object.setPrototypeOf,xk=Object.isFrozen,yk=Object.getPrototypeOf,wk=Object.getOwnPropertyDescriptor;let Sk=Object.freeze,Ck=Object.seal,kk=Object.create,Ok="undefined"!=typeof Reflect&&Reflect,_k=Ok.apply,Tk=Ok.construct;Sk||(Sk=function(e){return e}),Ck||(Ck=function(e){return e}),_k||(_k=function(e,t){for(var o=arguments.length,n=new Array(o>2?o-2:0),s=2;s<o;s++)n[s-2]=arguments[s];return e.apply(t,n)}),Tk||(Tk=function(e){for(var t=arguments.length,o=new Array(t>1?t-1:0),n=1;n<t;n++)o[n-1]=arguments[n];return new e(...o)});const Ek=Xk(Array.prototype.forEach),Ak=Xk(Array.prototype.lastIndexOf),Dk=Xk(Array.prototype.pop),Mk=Xk(Array.prototype.push),Bk=Xk(Array.prototype.splice),Ik=Array.isArray,Fk=Xk(String.prototype.toLowerCase),Rk=Xk(String.prototype.toString),Nk=Xk(String.prototype.match),zk=Xk(String.prototype.replace),Vk=Xk(String.prototype.indexOf),Lk=Xk(String.prototype.trim),Hk=Xk(Number.prototype.toString),Pk=Xk(Boolean.prototype.toString),Uk="undefined"==typeof BigInt?null:Xk(BigInt.prototype.toString),Wk="undefined"==typeof Symbol?null:Xk(Symbol.prototype.toString),jk=Xk(Object.prototype.hasOwnProperty),$k=Xk(Object.prototype.toString),Gk=Xk(RegExp.prototype.test),qk=(Yk=TypeError,function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return Tk(Yk,t)});var Yk;function Xk(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var o=arguments.length,n=new Array(o>1?o-1:0),s=1;s<o;s++)n[s-1]=arguments[s];return _k(e,t,n)}}function Kk(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Fk;if(vk&&vk(e,null),!Ik(t))return e;let n=t.length;for(;n--;){let s=t[n];if("string"==typeof s){const e=o(s);e!==s&&(xk(t)||(t[n]=e),s=e)}e[s]=!0}return e}function Jk(e){for(let t=0;t<e.length;t++)jk(e,t)||(e[t]=null);return e}function Qk(e){const t=kk(null);for(const n of bk(e)){var o=fk(n,2);const s=o[0],r=o[1];jk(e,s)&&(Ik(r)?t[s]=Jk(r):r&&"object"==typeof r&&r.constructor===Object?t[s]=Qk(r):t[s]=r)}return t}function Zk(e,t){for(;null!==e;){const o=wk(e,t);if(o){if(o.get)return Xk(o.get);if("function"==typeof o.value)return Xk(o.value)}e=yk(e)}return function(){return null}}const eO=Sk(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),tO=Sk(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),oO=Sk(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),nO=Sk(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),sO=Sk(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),rO=Sk(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),aO=Sk(["#text"]),iO=Sk(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),lO=Sk(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),cO=Sk(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),dO=Sk(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),uO=Ck(/{{[\w\W]*|^[\w\W]*}}/g),mO=Ck(/<%[\w\W]*|^[\w\W]*%>/g),gO=Ck(/\${[\w\W]*/g),pO=Ck(/^data-[\-\w.\u00B7-\uFFFF]+$/),hO=Ck(/^aria-[\-\w]+$/),fO=Ck(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),bO=Ck(/^(?:\w+script|data):/i),vO=Ck(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),xO=Ck(/^html$/i),yO=Ck(/^[a-z][.\w]*(-[.\w]+)+$/i),wO=Ck(/<[/\w!]/g),SO=Ck(/<[/\w]/g),CO=Ck(/<\/no(script|embed|frames)/i),kO=Ck(/\/>/i),OO=function(){return"undefined"==typeof window?null:window},_O=function(e,t,o,n){return jk(e,t)&&Ik(e[t])?Kk(n.base?Qk(n.base):{},e[t],n.transform):o};var TO=function e(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:OO();const o=t=>e(t);if(o.version="3.4.12",o.removed=[],!t||!t.document||9!==t.document.nodeType||!t.Element)return o.isSupported=!1,o;let n=t.document;const s=n,r=s.currentScript;t.DocumentFragment;const a=t.HTMLTemplateElement,i=t.Node,l=t.Element,c=t.NodeFilter;void 0===t.NamedNodeMap&&(t.NamedNodeMap||t.MozNamedAttrMap),t.HTMLFormElement;const d=t.DOMParser,u=t.trustedTypes,m=l.prototype,g=Zk(m,"cloneNode"),p=Zk(m,"remove"),h=Zk(m,"nextSibling"),f=Zk(m,"childNodes"),b=Zk(m,"parentNode"),v=Zk(m,"shadowRoot"),x=Zk(m,"attributes"),y=i&&i.prototype?Zk(i.prototype,"nodeType"):null,w=i&&i.prototype?Zk(i.prototype,"nodeName"):null;if("function"==typeof a){const e=n.createElement("template");e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let S,C,k="",O=!1,_=0;const T=function(){if(_>0)throw qk('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},E=function(e){T(),_++;try{return S.createHTML(e)}finally{_--}},A=n,D=A.implementation,M=A.createNodeIterator,B=A.createDocumentFragment,I=A.getElementsByTagName,F=s.importNode;let R={afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]};o.isSupported="function"==typeof bk&&"function"==typeof b&&D&&void 0!==D.createHTMLDocument;const N=uO,z=mO,V=gO,L=pO,H=hO,P=bO,U=vO,W=yO;let j=fO,$=null;const G=Kk({},[...eO,...tO,...oO,...sO,...aO]);let q=null;const Y=Kk({},[...iO,...lO,...cO,...dO]);let X=Object.seal(kk(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}})),K=null,J=null;const Q=Object.seal(kk(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Z=!0,ee=!0,te=!1,oe=!0,ne=!1,se=!0,re=!1,ae=!1,ie=null,le=null,ce=!1,de=!1,ue=!1,me=!1,ge=!0,pe=!1;const he="user-content-";let fe=!0,be=!1,ve={},xe=null;const ye=Kk({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let we=null;const Se=Kk({},["audio","video","img","source","image","track"]);let Ce=null;const ke=Kk({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Oe="http://www.w3.org/1998/Math/MathML",_e="http://www.w3.org/2000/svg",Te="http://www.w3.org/1999/xhtml";let Ee=Te,Ae=!1,De=null;const Me=Kk({},[Oe,_e,Te],Rk),Be=Sk(["mi","mo","mn","ms","mtext"]);let Ie=Kk({},Be);const Fe=Sk(["annotation-xml"]);let Re=Kk({},Fe);const Ne=Kk({},["title","style","font","a","script"]);let ze=null;const Ve=["application/xhtml+xml","text/html"];let Le=null,He=null;const Pe=n.createElement("form"),Ue=function(e){return e instanceof RegExp||e instanceof Function},We=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(He&&He===e)return;e&&"object"==typeof e||(e={}),e=Qk(e),ze=-1===Ve.indexOf(e.PARSER_MEDIA_TYPE)?"text/html":e.PARSER_MEDIA_TYPE,Le="application/xhtml+xml"===ze?Rk:Fk,$=_O(e,"ALLOWED_TAGS",G,{transform:Le}),q=_O(e,"ALLOWED_ATTR",Y,{transform:Le}),De=_O(e,"ALLOWED_NAMESPACES",Me,{transform:Rk}),Ce=_O(e,"ADD_URI_SAFE_ATTR",ke,{transform:Le,base:ke}),we=_O(e,"ADD_DATA_URI_TAGS",Se,{transform:Le,base:Se}),xe=_O(e,"FORBID_CONTENTS",ye,{transform:Le}),K=_O(e,"FORBID_TAGS",Qk({}),{transform:Le}),J=_O(e,"FORBID_ATTR",Qk({}),{transform:Le}),ve=!!jk(e,"USE_PROFILES")&&(e.USE_PROFILES&&"object"==typeof e.USE_PROFILES?Qk(e.USE_PROFILES):e.USE_PROFILES),Z=!1!==e.ALLOW_ARIA_ATTR,ee=!1!==e.ALLOW_DATA_ATTR,te=e.ALLOW_UNKNOWN_PROTOCOLS||!1,oe=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,ne=e.SAFE_FOR_TEMPLATES||!1,se=!1!==e.SAFE_FOR_XML,re=e.WHOLE_DOCUMENT||!1,de=e.RETURN_DOM||!1,ue=e.RETURN_DOM_FRAGMENT||!1,me=e.RETURN_TRUSTED_TYPE||!1,ce=e.FORCE_BODY||!1,ge=!1!==e.SANITIZE_DOM,pe=e.SANITIZE_NAMED_PROPS||!1,fe=!1!==e.KEEP_CONTENT,be=e.IN_PLACE||!1,j=function(e){try{return Gk(e,""),!0}catch(e){return!1}}(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:fO,Ee="string"==typeof e.NAMESPACE?e.NAMESPACE:Te,Ie=jk(e,"MATHML_TEXT_INTEGRATION_POINTS")&&e.MATHML_TEXT_INTEGRATION_POINTS&&"object"==typeof e.MATHML_TEXT_INTEGRATION_POINTS?Qk(e.MATHML_TEXT_INTEGRATION_POINTS):Kk({},Be),Re=jk(e,"HTML_INTEGRATION_POINTS")&&e.HTML_INTEGRATION_POINTS&&"object"==typeof e.HTML_INTEGRATION_POINTS?Qk(e.HTML_INTEGRATION_POINTS):Kk({},Fe);const t=jk(e,"CUSTOM_ELEMENT_HANDLING")&&e.CUSTOM_ELEMENT_HANDLING&&"object"==typeof e.CUSTOM_ELEMENT_HANDLING?Qk(e.CUSTOM_ELEMENT_HANDLING):kk(null);if(X=kk(null),jk(t,"tagNameCheck")&&Ue(t.tagNameCheck)&&(X.tagNameCheck=t.tagNameCheck),jk(t,"attributeNameCheck")&&Ue(t.attributeNameCheck)&&(X.attributeNameCheck=t.attributeNameCheck),jk(t,"allowCustomizedBuiltInElements")&&"boolean"==typeof t.allowCustomizedBuiltInElements&&(X.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),Ck(X),ne&&(ee=!1),ue&&(de=!0),ve&&($=Kk({},aO),q=kk(null),!0===ve.html&&(Kk($,eO),Kk(q,iO)),!0===ve.svg&&(Kk($,tO),Kk(q,lO),Kk(q,dO)),!0===ve.svgFilters&&(Kk($,oO),Kk(q,lO),Kk(q,dO)),!0===ve.mathMl&&(Kk($,sO),Kk(q,cO),Kk(q,dO))),Q.tagCheck=null,Q.attributeCheck=null,jk(e,"ADD_TAGS")&&("function"==typeof e.ADD_TAGS?Q.tagCheck=e.ADD_TAGS:Ik(e.ADD_TAGS)&&($===G&&($=Qk($)),Kk($,e.ADD_TAGS,Le))),jk(e,"ADD_ATTR")&&("function"==typeof e.ADD_ATTR?Q.attributeCheck=e.ADD_ATTR:Ik(e.ADD_ATTR)&&(q===Y&&(q=Qk(q)),Kk(q,e.ADD_ATTR,Le))),jk(e,"ADD_URI_SAFE_ATTR")&&Ik(e.ADD_URI_SAFE_ATTR)&&Kk(Ce,e.ADD_URI_SAFE_ATTR,Le),jk(e,"FORBID_CONTENTS")&&Ik(e.FORBID_CONTENTS)&&(xe===ye&&(xe=Qk(xe)),Kk(xe,e.FORBID_CONTENTS,Le)),jk(e,"ADD_FORBID_CONTENTS")&&Ik(e.ADD_FORBID_CONTENTS)&&(xe===ye&&(xe=Qk(xe)),Kk(xe,e.ADD_FORBID_CONTENTS,Le)),fe&&($["#text"]=!0),re&&Kk($,["html","head","body"]),$.table&&(Kk($,["tbody"]),delete K.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw qk('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw qk('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const t=S;S=e.TRUSTED_TYPES_POLICY;try{k=E("")}catch(e){throw S=t,e}}else null===e.TRUSTED_TYPES_POLICY?(S=void 0,k=""):(void 0===S&&(O||(C=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;let o=null;const n="data-tt-policy-suffix";t&&t.hasAttribute(n)&&(o=t.getAttribute(n));const s="dompurify"+(o?"#"+o:"");try{return e.createPolicy(s,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){return console.warn("TrustedTypes policy "+s+" could not be created."),null}}(u,r),O=!0),S=C),S&&"string"==typeof k&&(k=E("")));Sk&&Sk(e),He=e},je=Kk({},[...tO,...oO,...nO]),$e=Kk({},[...sO,...rO]),Ge=function(e){Mk(o.removed,{element:e});try{b(e).removeChild(e)}catch(t){if(p(e),!b(e))throw qk("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},qe=function(e){Ke(e);const t=f(e);if(t){const e=[];Ek(t,t=>{Mk(e,t)}),Ek(e,e=>{try{p(e)}catch(e){}})}const o=x(e);if(o)for(let t=o.length-1;t>=0;--t){const n=o[t],s=n&&n.name;if("string"==typeof s)try{e.removeAttribute(s)}catch(e){}}},Ye=function(e,t){try{Mk(o.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){Mk(o.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e)if(de||ue)try{Ge(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},Xe=function(e){const t=x(e);if(t)for(let o=t.length-1;o>=0;--o){const n=t[o],s=n&&n.name;if("string"==typeof s&&!q[Le(s)])try{e.removeAttribute(s)}catch(e){}}},Ke=function(e){const t=[e];for(;t.length>0;){const e=t.pop();1===(y?y(e):e.nodeType)&&Xe(e);const o=f(e);if(o)for(let e=o.length-1;e>=0;--e)t.push(o[e])}},Je=function(e){let t=null,o=null;if(ce)e="<remove></remove>"+e;else{const t=Nk(e,/^[\r\n\t ]+/);o=t&&t[0]}"application/xhtml+xml"===ze&&Ee===Te&&(e='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+e+"</body></html>");const s=S?E(e):e;if(Ee===Te)try{t=(new d).parseFromString(s,ze)}catch(e){}if(!t||!t.documentElement){t=D.createDocument(Ee,"template",null);try{t.documentElement.innerHTML=Ae?k:s}catch(e){}}const r=t.body||t.documentElement;return e&&o&&r.insertBefore(n.createTextNode(o),r.childNodes[0]||null),Ee===Te?I.call(t,re?"html":"body")[0]:re?t.documentElement:r},Qe=function(e){return M.call(e.ownerDocument||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Ze=function(e){return e=zk(e,N," "),e=zk(e,z," "),zk(e,V," ")},et=function(e){var t;e.normalize();const o=M.call(e.ownerDocument||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null);let n=o.nextNode();for(;n;)n.data=Ze(n.data),n=o.nextNode();const s=null===(t=e.querySelectorAll)||void 0===t?void 0:t.call(e,"template");s&&Ek(s,e=>{ot(e.content)&&et(e.content)})},tt=function(e){const t=w?w(e):null;return"string"==typeof t&&"form"===Le(t)&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||e.attributes!==x(e)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore||"function"!=typeof e.hasChildNodes||e.nodeType!==y(e)||e.childNodes!==f(e))},ot=function(e){if(!y||"object"!=typeof e||null===e)return!1;try{return 11===y(e)}catch(e){return!1}},nt=function(e){if(!y||"object"!=typeof e||null===e)return!1;try{return"number"==typeof y(e)}catch(e){return!1}};function st(e,t,n){0!==e.length&&Ek(e,e=>{e.call(o,t,n,He)})}const rt=function(e,t){if(st(R.beforeSanitizeElements,e,null),e!==t&&null===b(e))return!0;if(tt(e))return Ge(e),!0;const n=Le(w?w(e):e.nodeName);if(st(R.uponSanitizeElement,e,{tagName:n,allowedTags:$}),e!==t&&null===b(e))return!0;if(function(e,t){return!!(se&&e.hasChildNodes()&&!nt(e.firstElementChild)&&Gk(wO,e.textContent)&&Gk(wO,e.innerHTML))||!(!se||e.namespaceURI!==Te||"style"!==t||!nt(e.firstElementChild))||7===e.nodeType||!(!se||8!==e.nodeType||!Gk(SO,e.data))}(e,n))return Ge(e),!0;if(K[n]||!(Q.tagCheck instanceof Function&&Q.tagCheck(n))&&!$[n]){const t=function(e,t){if(!K[t]&&lt(t)){if(X.tagNameCheck instanceof RegExp&&Gk(X.tagNameCheck,t))return!1;if(X.tagNameCheck instanceof Function&&X.tagNameCheck(t))return!1}if(fe&&!xe[t]){const t=b(e),o=f(e);if(o&&t)for(let n=o.length-1;n>=0;--n){const s=be?o[n]:g(o[n],!0);t.insertBefore(s,h(e))}}return Ge(e),!0}(e,n);return!1===t&&st(R.afterSanitizeElements,e,null),t}if(1===(y?y(e):e.nodeType)&&!function(e){let t=b(e);t&&t.tagName||(t={namespaceURI:Ee,tagName:"template"});const o=Fk(e.tagName),n=Fk(t.tagName);return!!De[e.namespaceURI]&&(e.namespaceURI===_e?function(e,t,o){return t.namespaceURI===Te?"svg"===e:t.namespaceURI===Oe?"svg"===e&&("annotation-xml"===o||Ie[o]):Boolean(je[e])}(o,t,n):e.namespaceURI===Oe?function(e,t,o){return t.namespaceURI===Te?"math"===e:t.namespaceURI===_e?"math"===e&&Re[o]:Boolean($e[e])}(o,t,n):e.namespaceURI===Te?function(e,t,o){return!(t.namespaceURI===_e&&!Re[o])&&!(t.namespaceURI===Oe&&!Ie[o])&&!$e[e]&&(Ne[e]||!je[e])}(o,t,n):!("application/xhtml+xml"!==ze||!De[e.namespaceURI]))}(e))return Ge(e),!0;if(("noscript"===n||"noembed"===n||"noframes"===n)&&Gk(CO,e.innerHTML))return Ge(e),!0;if(ne&&3===e.nodeType){const t=Ze(e.textContent);e.textContent!==t&&(Mk(o.removed,{element:e.cloneNode()}),e.textContent=t)}return st(R.afterSanitizeElements,e,null),!1},at=function(e,t,o){if(J[t])return!1;if(se&&"patchsrc"===t)return!1;if(se&&"for"===t&&"label"!==e&&"output"!==e)return!1;if(ge&&("id"===t||"name"===t)&&(o in n||o in Pe))return!1;const s=q[t]||Q.attributeCheck instanceof Function&&Q.attributeCheck(t,e);if(ee&&Gk(L,t));else if(Z&&Gk(H,t));else if(s){if(Ce[t]);else if(Gk(j,zk(o,U,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==Vk(o,"data:")||!we[e])if(te&&!Gk(P,zk(o,U,"")));else if(o)return!1}else if(!(lt(e)&&(X.tagNameCheck instanceof RegExp&&Gk(X.tagNameCheck,e)||X.tagNameCheck instanceof Function&&X.tagNameCheck(e))&&(X.attributeNameCheck instanceof RegExp&&Gk(X.attributeNameCheck,t)||X.attributeNameCheck instanceof Function&&X.attributeNameCheck(t,e))||"is"===t&&X.allowCustomizedBuiltInElements&&(X.tagNameCheck instanceof RegExp&&Gk(X.tagNameCheck,o)||X.tagNameCheck instanceof Function&&X.tagNameCheck(o))))return!1;return!0},it=Kk({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),lt=function(e){return!it[Fk(e)]&&Gk(W,e)},ct=function(e,t,o,n){if(S&&"object"==typeof u&&"function"==typeof u.getAttributeType&&!o)switch(u.getAttributeType(e,t)){case"TrustedHTML":return E(n);case"TrustedScriptURL":return function(e){T(),_++;try{return S.createScriptURL(e)}finally{_--}}(n)}return n},dt=function(e,t,n,s){try{n?e.setAttributeNS(n,t,s):e.setAttribute(t,s),tt(e)?Ge(e):Dk(o.removed)}catch(o){Ye(t,e)}},ut=function(e){st(R.beforeSanitizeAttributes,e,null);const t=e.attributes;if(!t||tt(e))return;const o={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:q,forceKeepAttr:void 0};let n=t.length;const s=Le(e.nodeName);for(;n--;){const r=t[n],a=r.name,i=r.namespaceURI,l=r.value,c=Le(a),d=l;let u="value"===a?d:Lk(d);o.attrName=c,o.attrValue=u,o.keepAttr=!0,o.forceKeepAttr=void 0,st(R.uponSanitizeAttribute,e,o),u=o.attrValue,!pe||"id"!==c&&"name"!==c||0===Vk(u,he)||(Ye(a,e),u=he+u),se&&Gk(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,u)||"attributename"===c&&Nk(u,"href")?Ye(a,e):o.forceKeepAttr||(!o.keepAttr||!oe&&Gk(kO,u)?Ye(a,e):(ne&&(u=Ze(u)),at(s,c,u)?(u=ct(s,c,i,u),u!==d&&dt(e,a,i,u)):Ye(a,e)))}st(R.afterSanitizeAttributes,e,null)},mt=function(e){let t=null;const o=Qe(e);for(st(R.beforeSanitizeShadowDOM,e,null);t=o.nextNode();)if(st(R.uponSanitizeShadowNode,t,null),rt(t,e),ut(t),ot(t.content)&&mt(t.content),1===(y?y(t):t.nodeType)){const e=v(t);ot(e)&&(gt(e),mt(e))}st(R.afterSanitizeShadowDOM,e,null)},gt=function(e){const t=[{node:e,shadow:null}];for(;t.length>0;){const e=t.pop();if(e.shadow){mt(e.shadow);continue}const o=e.node,n=1===(y?y(o):o.nodeType),s=f(o);if(s)for(let e=s.length-1;e>=0;--e)t.push({node:s[e],shadow:null});if(n){const e=w?w(o):null;if("string"==typeof e&&"template"===Le(e)){const e=o.content;ot(e)&&t.push({node:e,shadow:null})}}if(n){const e=v(o);ot(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return o.sanitize=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=null,r=null,a=null,i=null;if(Ae=!e,Ae&&(e="\x3c!--\x3e"),"string"!=typeof e&&!nt(e)&&(e=function(e){switch(typeof e){case"string":return e;case"number":return Hk(e);case"boolean":return Pk(e);case"bigint":return Uk?Uk(e):"0";case"symbol":return Wk?Wk(e):"Symbol()";case"undefined":default:return $k(e);case"function":case"object":{if(null===e)return $k(e);const t=e,o=Zk(t,"toString");if("function"==typeof o){const e=o(t);return"string"==typeof e?e:$k(e)}return $k(e)}}}(e),"string"!=typeof e))throw qk("dirty is not a string, aborting");if(!o.isSupported)return e;ae?($=ie,q=le):We(t),(R.uponSanitizeElement.length>0||R.uponSanitizeAttribute.length>0)&&($=Qk($)),R.uponSanitizeAttribute.length>0&&(q=Qk(q)),o.removed=[];const l=be&&"string"!=typeof e&&nt(e);if(l){!function(e){if(!se)return;const t=[e];for(;t.length>0;){const e=t.pop(),o=y?y(e):e.nodeType;if(7===o||8===o&&Gk(SO,e.data)){try{p(e)}catch(e){}continue}if(1===o){const t=e,o=Le(w?w(e):e.nodeName);try{t.hasAttribute&&t.hasAttribute("patchsrc")&&t.removeAttribute("patchsrc"),t.hasAttribute&&t.hasAttribute("for")&&"label"!==o&&"output"!==o&&t.removeAttribute("for")}catch(e){}}const n=f(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}}(e);const t=w?w(e):e.nodeName;if("string"==typeof t){const o=Le(t);if(!$[o]||K[o])throw qe(e),qk("root node is forbidden and cannot be sanitized in-place")}if(tt(e))throw qe(e),qk("root node is clobbered and cannot be sanitized in-place");try{gt(e)}catch(t){throw qe(e),t}}else if(nt(e))n=Je("\x3c!----\x3e"),r=n.ownerDocument.importNode(e,!0),1===r.nodeType&&"BODY"===r.nodeName||"HTML"===r.nodeName?n=r:n.appendChild(r),gt(r);else{if(!de&&!ne&&!re&&-1===e.indexOf("<"))return S&&me?E(e):e;if(n=Je(e),!n)return de?null:me?k:""}n&&ce&&Ge(n.firstChild);const c=l?e:n,d=Qe(c);try{for(;a=d.nextNode();)rt(a,c),ut(a),ot(a.content)&&mt(a.content)}catch(t){throw l&&(qe(e),Ek(o.removed,e=>{e.element&&Ke(e.element)})),t}if(l)return Ek(o.removed,e=>{e.element&&Ke(e.element)}),ne&&et(e),e;if(de){if(ne&&et(n),ue)for(i=B.call(n.ownerDocument);n.firstChild;)i.appendChild(n.firstChild);else i=n;return(q.shadowroot||q.shadowrootmode)&&(i=F.call(s,i,!0)),i}let u=re?n.outerHTML:n.innerHTML;return re&&$["!doctype"]&&n.ownerDocument&&n.ownerDocument.doctype&&n.ownerDocument.doctype.name&&Gk(xO,n.ownerDocument.doctype.name)&&(u="<!DOCTYPE "+n.ownerDocument.doctype.name+">\n"+u),ne&&(u=Ze(u)),S&&me?E(u):u},o.setConfig=function(){We(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),ae=!0,ie=$,le=q},o.clearConfig=function(){He=null,ae=!1,ie=null,le=null,S=C,k=""},o.isValidAttribute=function(e,t,o){He||We({});const n=Le(e),s=Le(t);return at(n,s,o)},o.addHook=function(e,t){"function"==typeof t&&jk(R,e)&&Mk(R[e],t)},o.removeHook=function(e,t){if(jk(R,e)){if(void 0!==t){const o=Ak(R[e],t);return-1===o?void 0:Bk(R[e],o,1)[0]}return Dk(R[e])}},o.removeHooks=function(e){jk(R,e)&&(R[e]=[])},o.removeAllHooks=function(){R={afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},o}();const EO=e=>TO().sanitize(e);var AO=tinymce.util.Tools.resolve("tinymce.util.I18n");const DO={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-disc":!0,"list-bull-default":!0,"list-bull-square":!0},MO="temporary-placeholder",BO=e=>()=>fe(e,MO).getOr("!not found!"),IO=(e,t)=>{const o=e.toLowerCase();if(AO.isRtl()){const e=((e,t)=>Ze(e,t)?e:((e,t)=>e+t)(e,t))(o,"-rtl");return be(t,e)?e:o}return o},FO=(e,t)=>fe(t,IO(e,t)),RO=(e,t)=>{const o=t();return FO(e,o).getOrThunk(BO(o))},NO=()=>wd("add-focusable",[id(e=>{Yn(e.element,"svg").each(e=>Yo(e,"focusable","false"))})]),zO=(e,t,o,n)=>{const s=(e=>!!AO.isRtl()&&be(DO,e))(t)?["tox-icon--flip"]:[],r=fe(o,IO(t,o)).or(n).getOrThunk(BO(o));return{dom:{tag:e.tag,attributes:e.attributes??{},classes:e.classes.concat(s),innerHtml:r},behaviours:hd([...e.behaviours??[],NO()]),eventOrder:e.eventOrder??{}}},VO=(e,t,o,n=A.none())=>zO(t,e,o(),n),LO={success:"checkmark",error:"warning",err:"error",warning:"warning",warn:"warning",info:"info"},HO=hh({name:"Notification",factory:e=>{const t=Ne("notification-text"),o=Dv({dom:Av(`<p id=${t}>${EO(e.backstageProvider.translate(e.text))}</p>`),behaviours:hd([ug.config({})])}),n=e=>({dom:{tag:"div",classes:["tox-bar"],styles:{width:`${e}%`}}}),s=e=>({dom:{tag:"div",classes:["tox-text"],innerHtml:`${e}%`}}),r=Dv({dom:{tag:"div",classes:e.progress?["tox-progress-bar","tox-progress-indicator"]:["tox-progress-bar"]},components:[{dom:{tag:"div",classes:["tox-bar-container"]},components:[n(0)]},s(0)],behaviours:hd([ug.config({})])}),a={updateProgress:(e,t)=>{e.getSystem().isConnected()&&r.getOpt(e).each(e=>{ug.set(e,[{dom:{tag:"div",classes:["tox-bar-container"]},components:[n(t)]},s(t)])})},updateText:(e,t)=>{if(e.getSystem().isConnected()){const n=o.get(e);ug.set(n,[zg(t)])}}},i=G([e.icon.toArray(),[e.level],A.from(LO[e.level]).toArray()]),l=Dv(Wv.sketch({dom:{tag:"button",classes:["tox-notification__dismiss","tox-button","tox-button--naked","tox-button--icon"],attributes:{"aria-label":e.backstageProvider.translate("Close")}},components:[VO("close",{tag:"span",classes:["tox-icon"]},e.iconProvider)],buttonBehaviours:hd([iv.config({}),Tv.config({...e.backstageProvider.tooltips.getConfig({tooltipText:e.backstageProvider.translate("Close")})})]),action:t=>{e.onAction(t)}})),c=((e,t,o)=>{const n=o(),s=j(e,e=>be(n,IO(e,n)));return zO({tag:"div",classes:["tox-notification__icon"]},s.getOr(MO),n,A.none())})(i,0,e.iconProvider),d=[c,{dom:{tag:"div",classes:["tox-notification__body"]},components:[o.asSpec()],behaviours:hd([ug.config({})])}];return{uid:e.uid,dom:{tag:"div",attributes:{role:"alert","aria-labelledby":t},classes:["tox-notification","tox-notification--in",`tox-notification--${e.level}`]},behaviours:hd([iv.config({}),_d.config({}),Im.config({mode:"special",onEscape:t=>(e.onAction(t),A.some(!0))})]),components:d.concat(e.progress?[r.asSpec()]:[]).concat([l.asSpec()]),apis:a}},configFields:[la("level","info",["success","error","warning","warn","info"]),Pr("progress"),Kr("icon"),Pr("onAction"),Pr("text"),Pr("iconProvider"),Pr("backstageProvider")],apis:{updateProgress:(e,t,o)=>{e.updateProgress(t,o)},updateText:(e,t,o)=>{e.updateText(t,o)}}});var PO=(e,t,o,n)=>{const s=t.backstage.shared,r=()=>ct(""===e.queryCommandValue("ToggleView")?e.getContentAreaContainer():e.getContainer()),a=()=>{const e=Hs(r());return A.some(e)},i=e=>{a().each(t=>{L(e,e=>{wn(e.element,"width"),An(e.element)>t.width&&gn(e.element,"width",t.width+"px")})})};return{open:(t,l,c)=>{const d=()=>{n.on(t=>{l();const o=c();(e=>{ug.remove(e,u),m()})(t),((t,o)=>{0===xo(t.element).length?((t,o)=>{dy.hide(t),n.clear(),o&&e.focus()})(t,o):((e,t)=>{t&&Im.focusIn(e)})(t,o)})(t,o)})},u=Pg(HO.sketch({text:t.text,level:F(["success","error","warning","warn","info"],t.type)?t.type:void 0,progress:!0===t.progressBar,icon:t.icon,onAction:d,iconProvider:s.providers.icons,backstageProvider:s.providers}));if(n.isSet()){const e=Ug(u);n.on(t=>{ug.append(t,e),dy.reposition(t),u.hasConfigured(Hp)&&Hp.refresh(t),i(t.components())})}else{const t=Pg(dy.sketch({dom:{tag:"div",classes:["tox-notifications-container"],attributes:{"aria-label":"Notifications",role:"region"}},lazySink:s.getSink,fireDismissalEventInstead:{},...s.header.isPositionedAtTop()?{}:{fireRepositionEventInstead:{}},inlineBehaviours:hd([Im.config({mode:"cyclic",selector:".tox-notification, .tox-notification a, .tox-notification button"}),ug.config({}),...rk(e)&&s.header.isPositionedAtTop()?[]:[Hp.config({contextual:{lazyContext:()=>A.some(Hs(r())),fadeInClass:"tox-notification-container-dock-fadein",fadeOutClass:"tox-notification-container-dock-fadeout",transitionClass:"tox-notification-container-dock-transition"},modes:["top"],lazyViewport:t=>gk(e,t.element).map(e=>({bounds:pk(e),optScrollEnv:A.some({currentScrollTop:e.element.dom.scrollTop,scrollElmTop:Fn(e.element).top})})).getOrThunk(()=>({bounds:Ws(),optScrollEnv:A.none()}))})]])})),i=Ug(u),l={maxHeightFunction:Fc()},c={...s.anchors.banner(),overrides:l};n.set(t),o.add(t),dy.showWithinBounds(t,i,{anchor:c},a)}h(t.timeout)&&t.timeout>0&&YS.setEditorTimeout(e,()=>{d()},t.timeout);const m=()=>{n.on(e=>{dy.reposition(e),e.hasConfigured(Hp)&&Hp.refresh(e),i(e.components())})};return{close:d,reposition:m,text:e=>{HO.updateText(u,e)},settings:t,getEl:()=>u.element.dom,progressBar:{value:e=>{HO.updateProgress(u,e)}}}},close:e=>{e.close()},getArgs:e=>e.settings}};var UO;!function(e){e[e.CLOSE_ON_EXECUTE=0]="CLOSE_ON_EXECUTE",e[e.BUBBLE_TO_SANDBOX=1]="BUBBLE_TO_SANDBOX"}(UO||(UO={}));var WO=UO;const jO="tox-menu-nav__js",$O="tox-collection__item",GO="tox-swatch",qO={normal:jO,color:GO},YO="tox-collection__item--enabled",XO="tox-collection__item-icon",KO="tox-collection__item-label",JO="tox-collection__item-caret",QO="tox-collection__item--active",ZO="tox-collection__item-container",e_="tox-collection__item-container--row",t_=e=>fe(qO,e).getOr(jO),o_=e=>"color"===e?"tox-swatches":"tox-menu",n_=e=>({backgroundMenu:"tox-background-menu",selectedMenu:"tox-selected-menu",selectedItem:"tox-collection__item--active",hasIcons:"tox-menu--has-icons",menu:o_(e),tieredMenu:"tox-tiered-menu"}),s_=e=>{const t=n_(e);return{backgroundMenu:t.backgroundMenu,selectedMenu:t.selectedMenu,menu:t.menu,selectedItem:t.selectedItem,item:t_(e)}},r_=(e,t,o)=>{const n=n_(o);return{tag:"div",classes:G([[n.menu,`tox-menu-${t}-column`],e?[n.hasIcons]:[]])}},a_=[hx.parts.items({})],i_=(e,t,o)=>{const n=n_(o);return{dom:{tag:"div",classes:G([[n.tieredMenu]])},markers:s_(o)}},l_=Ne("refetch-trigger-event"),c_=Ne("redirect-menu-item-interaction"),d_="tox-menu__searcher",u_=e=>Xn(e.element,`.${d_}`).bind(t=>e.getSystem().getByDom(t).toOptional()),m_=u_,g_=e=>({fetchPattern:mf.getValue(e),selectionStart:e.element.dom.selectionStart,selectionEnd:e.element.dom.selectionEnd}),p_=e=>{const t=(e,t)=>(t.cut(),A.none()),o=(e,t)=>{const o={interactionEvent:t.event,eventType:t.event.raw.type};return $c(e,c_,o),A.some(!0)},n="searcher-events";return{dom:{tag:"div",classes:[$O]},components:[hy.sketch({inputClasses:[d_,"tox-textfield"],inputAttributes:{...e.placeholder.map(t=>({placeholder:e.i18n(t)})).getOr({}),type:"search","aria-autocomplete":"list"},inputBehaviours:hd([wd(n,[Zc(Aa(),e=>{jc(e,l_)}),Zc(Ta(),(e,t)=>{"Escape"===t.event.raw.key&&t.stop()})]),Im.config({mode:"special",onLeft:t,onRight:t,onSpace:t,onEnter:o,onEscape:o,onUp:o,onDown:o})]),eventOrder:{keydown:[n,Im.name()]}})]}},h_="tox-collection--results__js",f_=e=>e.dom?{...e,dom:{...e.dom,attributes:{...e.dom.attributes??{},id:Ne("aria-item-search-result-id"),"aria-selected":"false"}}}:e,b_="Use arrow keys to navigate.",v_=(e,t)=>o=>{const n=z(o,t);return V(n,t=>({dom:e,components:t}))},x_=(e,t)=>{const o=[];let n=[];return L(e,(e,s)=>{t(e,s)?(n.length>0&&o.push(n),n=[],(be(e.dom,"innerHtml")||e.components&&e.components.length>0)&&n.push(e)):n.push(e)}),n.length>0&&o.push(n),V(o,e=>({dom:{tag:"div",classes:["tox-collection__group"]},components:e}))},y_=(e,t,o)=>hx.parts.items({preprocess:n=>{const s=V(n,o);return"auto"!==e&&e>1?v_({tag:"div",classes:["tox-collection__group"]},e)(s):x_(s,(e,o)=>"separator"===t[o].type)}}),w_=(e,t,o=!0)=>{return{dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(1===e?["tox-collection--list"]:["tox-collection--grid"]),attributes:{...(n=t,R(n,e=>"widget"===e.type)?{"aria-label":AO.translate(b_)}:{})}},components:[y_(e,t,w)]};var n},S_=e=>R(e,e=>"icon"in e&&void 0!==e.icon),C_=e=>(console.error(Rr(e)),console.log(e),A.none()),k_=(e,t,o,n,s)=>{const r=(a=o,{dom:{tag:"div",classes:["tox-collection","tox-collection--horizontal"]},components:[hx.parts.items({preprocess:e=>x_(e,(e,t)=>"separator"===a[t].type)})]});var a;return{value:e,dom:r.dom,components:r.components,items:o}},O_=(e,t,o,n,s)=>{if("color"===s.menuType){const t=(e=>({dom:{tag:"div",classes:["tox-menu","tox-swatches-menu"],attributes:{"aria-label":AO.translate(b_)}},components:[{dom:{tag:"div",classes:["tox-swatches"]},components:[hx.parts.items({preprocess:"auto"!==e?v_({tag:"div",classes:["tox-swatches__row"]},e):w})]}]}))(n);return{value:e,dom:t.dom,components:t.components,items:o}}if("imageselector"===s.menuType&&"auto"!==n){const t=(e=>({dom:{tag:"div",classes:["tox-menu","tox-image-selector-menu"]},components:[{dom:{tag:"div",classes:["tox-image-selector"]},components:[hx.parts.items({preprocess:"auto"!==e?v_({tag:"div",classes:["tox-image-selector__row"]},e):w})]}]}))(n);return{value:e,dom:t.dom,components:t.components,items:o}}if("normal"===s.menuType&&"auto"===n){const t=w_(n,o);return{value:e,dom:t.dom,components:t.components,items:o}}if("normal"===s.menuType||"searchable"===s.menuType){const t="searchable"!==s.menuType?w_(n,o):"search-with-field"===s.searchMode.searchMode?((e,t,o)=>{const n=Ne("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection"].concat(1===e?["tox-collection--list"]:["tox-collection--grid"])},components:[p_({i18n:AO.translate,placeholder:o.placeholder}),{dom:{tag:"div",classes:[...1===e?["tox-collection--list"]:["tox-collection--grid"],h_],attributes:{id:n}},components:[y_(e,t,f_)]}]}})(n,o,s.searchMode):((e,t)=>{const o=Ne("aria-controls-search-results");return{dom:{tag:"div",classes:["tox-menu","tox-collection",h_].concat(1===e?["tox-collection--list"]:["tox-collection--grid"]),attributes:{id:o}},components:[y_(e,t,f_)]}})(n,o);return{value:e,dom:t.dom,components:t.components,items:o}}if("listpreview"===s.menuType&&"auto"!==n){const t=(e=>({dom:{tag:"div",classes:["tox-menu","tox-collection","tox-collection--toolbar","tox-collection--toolbar-lg"]},components:[hx.parts.items({preprocess:v_({tag:"div",classes:["tox-collection__group"]},e)})]}))(n);return{value:e,dom:t.dom,components:t.components,items:o}}return{value:e,dom:r_(t,n,s.menuType),components:a_,items:o}},__=jr("type"),T_=jr("name"),E_=jr("label"),A_=jr("text"),D_=jr("title"),M_=jr("icon"),B_=jr("url"),I_=jr("value"),F_=Gr("fetch"),R_=Gr("getSubmenuItems"),N_=Gr("onAction"),z_=Gr("onItemAction"),V_=da("onSetup",()=>b),L_=Zr("name"),H_=Zr("text"),P_=Zr("role"),U_=Zr("icon"),W_=Zr("tooltip"),j_=Zr("chevronTooltip"),$_=Zr("label"),G_=Zr("shortcut"),q_=ta("select"),Y_=ca("active",!1),X_=ca("borderless",!1),K_=ca("enabled",!0),J_=ca("primary",!1),Q_=e=>sa("columns",e),Z_=sa("meta",{}),eT=da("onAction",b),tT=e=>ia("type",e),oT=e=>Vr("name","name",gr(()=>Ne(`${e}-name`)),lr),nT=[__,A_,$r("level",["info","warn","error","success"]),M_,sa("url","")],sT=kr(nT),rT=[__,A_,K_,oT("button"),U_,X_,ea("buttonType",["primary","secondary","toolbar"]),J_,ia("context","mode:design")],aT=kr(rT),iT=[__,T_],lT=iT.concat([$_]),cT=iT.concat([E_,K_,ia("context","mode:design")]),dT=kr(cT),uT=cr,mT=lT.concat([Q_("auto"),ia("context","mode:design")]),gT=kr(mT),pT=Er([I_,A_,M_]),hT=lT.concat([ia("storageKey","default"),ia("context","mode:design")]),fT=kr(hT),bT=lr,vT=kr(lT),xT=lr,yT=iT.concat([ia("tag","textarea"),jr("scriptId"),jr("scriptUrl"),ta("onFocus"),ra("settings",void 0,mr)]),wT=iT.concat([ia("tag","textarea"),Gr("init")]),ST=Dr(e=>Br("customeditor.old",Cr(wT),e).orThunk(()=>Br("customeditor.new",Cr(yT),e))),CT=lr,kT=[K_,H_,P_,G_,Vr("value","value",gr(()=>Ne("menuitem-value")),rr()),Z_,ia("context","mode:design")];const OT=kr([__,T_].concat(kT)),_T=cr,TT=[oT("button"),U_,la("align","end",["start","end"]),J_,K_,ea("buttonType",["primary","secondary"]),ia("context","mode:design")],ET=[...TT,A_],AT=[$r("type",["submit","cancel","custom"]),...ET],DT=[$r("type",["menu"]),H_,W_,U_,Xr("items",OT),...TT],MT=[...TT,$r("type",["togglebutton"]),W_,U_,H_,ca("active",!1)],BT=Nr("type",{submit:AT,cancel:AT,custom:AT,menu:DT,togglebutton:MT}),IT=lT.concat([ia("context","mode:design"),Zr("dropAreaLabel"),Zr("buttonLabel"),Zr("allowedFileTypes"),oa("allowedFileExtensions",lr),da("onInvalidFiles",()=>Promise.resolve())]),FT=kr(IT),RT=Or(sr),NT=e=>[__,Wr("columns"),e],zT=[__,jr("html"),la("presets","presentation",["presentation","document"]),da("onInit",b),ca("stretched",!1)],VT=kr(zT),LT=lT.concat([ca("border",!1),ca("sandboxed",!0),ca("streamContent",!1),ca("transparent",!0)]),HT=kr(LT),PT=lr,UT=kr(iT.concat([Zr("height")])),WT=kr([jr("url"),Qr("zoom"),Qr("cachedWidth"),Qr("cachedHeight")]),jT=lT.concat([Zr("inputMode"),Zr("placeholder"),ca("maximized",!1),K_,ia("context","mode:design")]),$T=kr(jT),GT=lr,qT=e=>[__,E_,e,la("align","start",["start","center","end"]),Zr("for")],YT=[A_,I_],XT=[A_,Xr("items",zr(0,()=>KT))],KT=_r([kr(YT),kr(XT)]),JT=lT.concat([Xr("items",KT),K_,ia("context","mode:design")]),QT=kr(JT),ZT=lr,eE=lT.concat([Yr("items",[A_,I_]),aa("size",1),K_,ia("context","mode:design")]),tE=kr(eE),oE=lr,nE=lT.concat([ca("constrain",!0),K_,ia("context","mode:design")]),sE=kr(nE),rE=kr([jr("width"),jr("height")]),aE=iT.concat([E_,aa("min",0),aa("max",0)]),iE=kr(aE),lE=ir,cE=[__,Xr("header",lr),Xr("cells",Or(lr))],dE=kr(cE),uE=lT.concat([Zr("placeholder"),ca("maximized",!1),K_,ia("context","mode:design"),Jr("spellcheck",cr)]);const mE=kr(uE),gE=lr,pE=[ia("buttonType","default"),Zr("text"),Zr("tooltip"),Zr("icon"),ra("search",!1,_r([cr,kr([Zr("placeholder")])],e=>d(e)?e?A.some({placeholder:A.none()}):A.none():A.some(e))),Gr("fetch"),da("onSetup",()=>b),ia("context","mode:design")],hE=kr([__,...pE]),fE=e=>Br("menubutton",hE,e),bE=[$r("type",["directory","leaf"]),D_,jr("id"),Jr("menu",hE),Zr("customStateIcon"),Zr("customStateIconTooltip")],vE=kr(bE),xE=bE.concat([Xr("children",zr(0,()=>Ar("type",{directory:yE,leaf:vE})))]),yE=kr(xE),wE=Ar("type",{directory:yE,leaf:vE}),SE=[__,Xr("items",wE),ta("onLeafAction"),ta("onToggleExpand"),ua("defaultExpandedIds",[],lr),Zr("defaultSelectedId")],CE=kr(SE),kE=lT.concat([la("filetype","file",["image","media","file"]),K_,Zr("picker_text"),ia("context","mode:design")]),OE=kr(kE),_E=kr([I_,Z_]),TE=e=>Vr("items","items",{tag:"required",process:{}},Or(Dr(t=>Br(`Checking item of ${e}`,EE,t).fold(e=>Ae.error(Rr(e)),e=>Ae.value(e))))),EE=wr(()=>{return Ar("type",{alertbanner:sT,bar:kr((e=TE("bar"),[__,e])),button:aT,checkbox:dT,colorinput:fT,colorpicker:vT,dropzone:FT,grid:kr(NT(TE("grid"))),iframe:HT,input:$T,listbox:QT,selectbox:tE,sizeinput:sE,slider:iE,textarea:mE,urlinput:OE,customeditor:ST,htmlpanel:VT,imagepreview:UT,collection:gT,label:kr(qT(TE("label"))),table:dE,tree:CE,panel:DE});var e}),AE=[__,sa("classes",[]),Xr("items",EE)],DE=kr(AE),ME=[oT("tab"),D_,Xr("items",EE)],BE=[__,Yr("tabs",ME),ca("dynamicHeight",!1)],IE=kr(BE),FE=ET,RE=BT,NE=kr([jr("title"),Ur("body",Ar("type",{panel:DE,tabpanel:IE})),ia("size","normal"),ua("buttons",[],RE),sa("initialData",{}),da("onAction",b),da("onChange",b),da("onSubmit",b),da("onClose",b),da("onCancel",b),da("onTabChange",b)]),zE=kr([$r("type",["cancel","custom"]),...FE]),VE=kr([jr("title"),jr("url"),Qr("height"),Qr("width"),oa("buttons",zE),da("onAction",b),da("onCancel",b),da("onClose",b),da("onMessage",b)]),LE=e=>a(e)?[e].concat(q(he(e),LE)):l(e)?q(e,LE):[],HE=e=>r(e.type)&&r(e.name),PE={checkbox:uT,colorinput:bT,colorpicker:xT,dropzone:RT,input:GT,iframe:PT,imagepreview:WT,selectbox:oE,sizeinput:rE,slider:lE,listbox:ZT,size:rE,textarea:gE,urlinput:_E,customeditor:CT,collection:pT,togglemenuitem:_T},UE=e=>{const t=(e=>P(LE(e),HE))(e),o=q(t,e=>(e=>A.from(PE[e.type]))(e).fold(()=>[],t=>[Ur(e.name,t)]));return kr(o)},WE=e=>({internalDialog:Ir(Br("dialog",NE,e)),dataValidator:UE(e),initialData:e.initialData??{}}),jE={open:(e,t)=>{const o=WE(t);return e(o.internalDialog,o.initialData,o.dataValidator)},openUrl:(e,t)=>e(Ir(Br("dialog",VE,t))),redial:e=>WE(e)},$E=kr([__,H_]),GE=kr([tT("autocompleteitem"),Y_,K_,Z_,I_,H_,U_]);kr([__,jr("trigger"),aa("minChars",1),Q_(1),aa("maxResults",10),ta("matches"),F_,N_,ua("highlightOn",[],lr)]);const qE=[K_,W_,U_,H_,V_,ia("context","mode:design")],YE=kr([__,N_,G_].concat(qE)),XE=e=>Br("toolbarbutton",YE,e),KE=[Y_].concat(qE),JE=kr(KE.concat([__,N_,G_])),QE=e=>Br("ToggleButton",JE,e),ZE=[da("predicate",T),la("scope","node",["node","editor"]),la("position","selection",["node","selection","line"])],eA=qE.concat([tT("contextformbutton"),ia("align","end"),J_,N_,Lr("original",w)]),tA=KE.concat([tT("contextformbutton"),ia("align","end"),J_,N_,Lr("original",w)]),oA=qE.concat([tT("contextformbutton")]),nA=KE.concat([tT("contextformtogglebutton")]),sA=[$_,Xr("commands",Nr("type",{contextformbutton:eA,contextformtogglebutton:tA})),Jr("launch",Nr("type",{contextformbutton:oA,contextformtogglebutton:nA})),da("onInput",b),da("onSetup",b)],rA=[...ZE,...sA,$r("type",["contextform"]),da("initValue",y("")),Zr("placeholder")],aA=[...ZE,...sA,$r("type",["contextsliderform"]),da("initValue",y(0)),da("min",y(0)),da("max",y(100))],iA=[...ZE,...sA,$r("type",["contextsizeinputform"]),da("initValue",y({width:"",height:""}))],lA=Nr("type",{contextform:rA,contextsliderform:aA,contextsizeinputform:iA}),cA=qE.concat([tT("contexttoolbarbutton")]),dA=kr([tT("contexttoolbar"),na("launch",cA),Ur("items",_r([lr,Er([Zr("name"),Zr("label"),Xr("items",lr)])]))].concat(ZE)),uA=e=>({name:e.name.getOrUndefined(),label:e.label.getOrUndefined(),items:e.items}),mA=[__,jr("src"),Zr("alt"),ua("classes",[],lr)],gA=kr(mA),pA=[__,A_,L_,ua("classes",["tox-collection__item-label"],lr)],hA=kr(pA),fA=wr(()=>Ar("type",{cardimage:gA,cardtext:hA,cardcontainer:bA})),bA=kr([__,ia("direction","horizontal"),ia("align","left"),ia("valign","middle"),Xr("items",fA)]),vA=kr([__,$_,Xr("items",fA),V_,eT].concat(kT)),xA=kr([__,Y_,U_,$_].concat(kT)),yA=[__,jr("fancytype"),eT],wA=[sa("initData",{})].concat(yA),SA=[ta("select"),ma("initData",{},[ca("allowCustomColors",!0),ia("storageKey","default"),oa("colors",rr())])].concat(yA),CA=[ta("select"),qr("initData",[Wr("columns"),ua("items",[],rr())])].concat(yA),kA=Nr("fancytype",{inserttable:wA,colorswatch:SA,imageselect:CA}),OA=kr([__,Y_,B_,$_,W_].concat(kT)),_A=kr([__,Y_,M_,E_,W_,I_].concat(kT)),TA=kr([__,V_,eT,U_].concat(kT)),EA=kr([__,R_,V_,U_].concat(kT)),AA=kr([__,U_,Y_,V_,N_].concat(kT)),DA=kr([U_,W_,ca("resizable",!1),da("onShow",b),da("onHide",b),V_]),MA=kr([__,Ur("items",_r([Er([T_,Xr("items",lr)]),lr]))].concat(qE)),BA=kr([__,W_,j_,U_,H_,q_,F_,V_,la("presets","normal",["normal","color","listpreview"]),Q_(1),N_,z_,ia("context","mode:design")]),IA=[H_,U_,Zr("tooltip"),la("buttonType","secondary",["primary","secondary"]),ca("borderless",!1),Gr("onAction"),ia("context","mode:design")],FA={button:[...IA,A_,$r("type",["button"])],togglebutton:[...IA,ca("active",!1),$r("type",["togglebutton"])]},RA=[$r("type",["group"]),ua("buttons",[],Nr("type",FA))],NA=Nr("type",{...FA,group:RA}),zA=kr([ua("buttons",[],NA),Gr("onShow"),Gr("onHide")]),VA=(e,t,o)=>{const n=gs(e.element,"."+o);if(n.length>0){const e=$(n,e=>{const o=e.dom.getBoundingClientRect().top,s=n[0].dom.getBoundingClientRect().top;return Math.abs(o-s)>t}).getOr(n.length);return A.some({numColumns:e,numRows:Math.ceil(n.length/e)})}return A.none()},LA=e=>((e,t)=>hd([wd(e,t)]))(Ne("unnamed-events"),e),HA=e=>gp.config({disabled:e,disableClass:"tox-collection__item--state-disabled"}),PA=e=>gp.config({disabled:e}),UA=e=>gp.config({disabled:e,disableClass:"tox-tbtn--disabled",useNative:!1}),WA=(e,t)=>{const o=e.getApi(t);return e=>{e(o)}},jA=(e,t)=>id(o=>{p(e.onBeforeSetup)&&e.onBeforeSetup(o),WA(e,o)(o=>{const n=e.onSetup(o);p(n)&&t.set(n)})}),$A=(e,t)=>ld(o=>WA(e,o)(t.get())),GA=(e,t,o)=>ld(n=>(o.set(mf.getValue(n)),WA(e,n)(t.get()))),qA="silver.uistate",YA="setDisabled",XA="init",KA=["switchmode",XA],JA=(e,t)=>{const o=e.mainUi.outerContainer,n=[e.mainUi.mothership,...e.uiMotherships];t===YA&&L(n,e=>{e.broadcastOn([zd()],{target:o.element})}),L(n,e=>{e.broadcastOn([qA],t)})},QA=(e,t)=>{e.on("init SwitchMode",e=>{JA(t,e.type)}),e.on("DisabledStateChange",o=>{if(!o.isDefaultPrevented()){const n=o.state?YA:XA;JA(t,n),o.state||e.nodeChanged()}}),e.on("NodeChange",o=>{const n=e.ui.isEnabled()?o.type:YA;JA(t,n)}),nC(e)&&e.mode.set("readonly")},ZA=e=>vb.config({channels:{[qA]:{onReceive:(t,o)=>{if(o===YA||"setEnabled"===o)return void gp.set(t,o===YA);const{contextType:n,shouldDisable:s}=e();("mode"!==n||F(KA,o))&&gp.set(t,s)}}}}),eD=(e,t)=>dd((o,n)=>{WA(e,o)(e.onAction),e.triggersSubmenu||t!==WO.CLOSE_ON_EXECUTE||(o.getSystem().isConnected()&&jc(o,Ka()),n.stop())}),tD={[Ga()]:["disabling","alloy.base.behaviour","toggling","item-events"]},oD=Pe,nD=(e,t,o,n)=>{const s=ye(b);return{type:"item",dom:t.dom,components:oD(t.optComponents),data:e.data,eventOrder:tD,hasSubmenu:e.triggersSubmenu,itemBehaviours:hd([wd("item-events",[eD(e,o),jA(e,s),$A(e,s)]),HA(()=>!e.enabled||n.checkUiComponentContext(e.context).shouldDisable),ZA(()=>n.checkUiComponentContext(e.context)),ug.config({})].concat(e.itemBehaviours))}},sD=e=>({value:e.value,meta:{text:e.text.getOr(""),...e.meta}}),rD=(e,t)=>{const o=it("div");return ns(o,"tox-image-selector-loading-spinner"),{dom:{tag:e.tag,attributes:e.attributes??{},classes:e.classes},components:[{dom:{tag:"div",classes:["tox-image-selector-image-wrapper"]},components:[{dom:{tag:"img",attributes:{src:t},classes:["tox-image-selector-image-img"]}}]},...e.checkMark.toArray()],behaviours:hd([...e.behaviours??[],wd("render-image-events",[id(e=>{var t;t=e.element,ns(t,"tox-image-selector-loading-spinner-wrapper"),$o(t,o),Xn(e.element,"img").each(t=>{rn(t).catch(e=>{console.error(e)}).finally(()=>{(e=>{rs(e,"tox-image-selector-loading-spinner-wrapper"),tn(o)})(e.element)})})})])])}},aD=e=>{const t=JS.os.isMacOS()||JS.os.isiOS(),o=t?{alt:"\u2325",ctrl:"\u2303",shift:"\u21e7",meta:"\u2318",access:"\u2303\u2325"}:{meta:"Ctrl",access:"Shift+Alt"},n=e.split("+"),s=V(n,e=>{const t=e.toLowerCase().trim();return be(o,t)?o[t]:e});return t?s.join(""):s.join("+")},iD=(e,t,o=[XO])=>VO(e,{tag:"div",classes:o},t),lD=e=>({dom:{tag:"div",classes:[KO]},components:[zg(AO.translate(e))]}),cD=(e,t)=>({dom:{tag:"div",classes:t,innerHtml:e}}),dD=(e,t)=>({dom:{tag:"div",classes:[KO]},components:[{dom:{tag:e.tag,styles:e.styles},components:[zg(AO.translate(t))]}]}),uD=e=>({dom:{tag:"div",classes:["tox-collection__item-accessory"]},components:[zg(aD(e))]}),mD=e=>iD("checkmark",e,["tox-collection__item-checkmark"]),gD=(e,t)=>{const o=e.map(e=>({attributes:{id:Ne("menu-item"),"aria-label":AO.translate(e)}})).getOr({});return{tag:"div",classes:[jO,$O].concat(t),...o}},pD=e=>({dom:{tag:"label"},components:[zg(e)]}),hD=(e,t,o,n=A.none())=>"color"===e.presets?((e,t,o)=>{const n=e.value,s=e.iconContent.map(e=>((e,t,o)=>{const n=t();return FO(e,n).or(o).getOrThunk(BO(n))})(e,t.icons,o)),r=e.ariaLabel.map(e=>({"aria-label":t.translate(e),"data-mce-name":e})).getOr({});return{dom:(()=>{const e=GO,t=s.getOr(""),o={tag:"div",attributes:r,classes:[e]};return"custom"===n?{...o,tag:"button",classes:[...o.classes,"tox-swatches__picker-btn"],innerHtml:t}:"remove"===n?{...o,classes:[...o.classes,"tox-swatch--remove"],innerHtml:t}:g(n)?{...o,attributes:{...o.attributes,"data-mce-color":n},styles:{"background-color":n},innerHtml:t}:o})(),optComponents:[]}})(e,t,n):"img"===e.presets?(e=>{var t,o;return{dom:gD(e.ariaLabel,["tox-collection__item-image-selector"]),optComponents:[A.some((t=e.iconContent.getOrDie(),o={tag:"div",classes:["tox-collection__item-image"],checkMark:e.checkMark},rD(o,t))),e.labelContent.map(pD)]}})(e):((e,t,o,n)=>{const s={tag:"div",classes:[XO]},r=o?e.iconContent.map(e=>VO(e,s,t.icons,n)).orThunk(()=>A.some({dom:s})):A.none(),a=e.checkMark,i=A.from(e.meta).fold(()=>lD,e=>be(e,"style")?C(dD,e.style):lD),l=e.htmlContent.fold(()=>e.textContent.map(i),e=>A.some(cD(e,[KO])));return{dom:gD(e.ariaLabel,[]),optComponents:[r,l,e.shortcutContent.map(uD),a,e.caret,e.labelContent.map(pD)]}})(e,t,o,n),fD=(e,t,o)=>fe(e,"tooltipWorker").map(e=>[Tv.config({lazySink:t.getSink,tooltipDom:{tag:"div",classes:["tox-tooltip-worker-container"]},tooltipComponents:[],anchor:e=>({type:"submenu",item:e,overrides:{maxHeightFunction:Fc}}),mode:"follow-highlight",onShow:(t,o)=>{e(e=>{Tv.setComponents(t,[Vg({element:ct(e)})])})}})]).getOrThunk(()=>o.map(e=>[Tv.config({...t.providers.tooltips.getConfig({tooltipText:e}),mode:"follow-highlight"})]).getOr([])),bD=(e,t)=>{const o=(e=>XS.DOM.encode(e))(AO.translate(e));if(t.length>0){const e=new RegExp((e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(t),"gi");return o.replace(e,e=>`<span class="tox-autocompleter-highlight">${e}</span>`)}return o},vD=(e,t,o,n,s,r,a,i=!0)=>{const l=hD({presets:o,textContent:t?e.text:A.none(),htmlContent:A.none(),labelContent:e.label,ariaLabel:e.text,iconContent:e.icon,shortcutContent:t?e.shortcut:A.none(),checkMark:t?A.some(mD(a.icons)):A.none(),caret:A.none(),value:e.value},a,i),c=e.text.filter(y(!t)).map(e=>Tv.config(a.tooltips.getConfig({tooltipText:a.translate(e)})));return Ve(nD({context:e.context,data:sD(e),enabled:e.enabled,getApi:e=>({setActive:t=>{hv.set(e,t)},isActive:()=>hv.isOn(e),isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t)}),onAction:t=>n(e.value),onSetup:e=>(e.setActive(s),b),triggersSubmenu:!1,itemBehaviours:[...c.toArray()]},l,r,a),{toggling:{toggleClass:YO,toggleOnExecute:!1,selected:e.active,exclusive:!0}})},xD=e=>({type:"separator",dom:{tag:"div",classes:[$O,"tox-collection__group-heading"]},components:e.text.map(zg).toArray()}),yD=e=>({value:kD(e)}),wD=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,SD=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,CD=e=>wD.test(e)||SD.test(e),kD=e=>Ke(e,"#").toUpperCase(),OD=e=>{const t=e.toString(16);return(1===t.length?"0"+t:t).toUpperCase()},_D=e=>{const t=OD(e.red)+OD(e.green)+OD(e.blue);return yD(t)},TD=(e,t,o)=>({hue:e,saturation:t,value:o}),ED=e=>{let t=0,o=0,n=0;const s=e.red/255,r=e.green/255,a=e.blue/255,i=Math.min(s,Math.min(r,a)),l=Math.max(s,Math.max(r,a));return i===l?(n=i,TD(0,0,100*n)):(t=s===i?3:a===i?1:5,t=60*(t-(s===i?r-a:a===i?s-r:a-s)/(l-i)),o=(l-i)/l,n=l,TD(Math.round(t),Math.round(100*o),Math.round(100*n)))},AD=Math.min,DD=Math.max,MD=Math.round,BD=/^\s*rgb\s*\(\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*(\d+)\s*\)\s*$/i,ID=/^\s*rgba\s*\(\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*((?:\d?\.\d+|\d+)%?)\s*\)\s*$/i,FD=(e,t,o,n)=>({red:e,green:t,blue:o,alpha:n}),RD=e=>{const t=parseInt(e,10);return t.toString()===e&&t>=0&&t<=255},ND=e=>{let t,o,n;const s=(e.hue||0)%360;let r=e.saturation/100,a=e.value/100;if(r=DD(0,AD(r,1)),a=DD(0,AD(a,1)),0===r)return t=o=n=MD(255*a),FD(t,o,n,1);const i=s/60,l=a*r,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=MD(255*(t+d)),o=MD(255*(o+d)),n=MD(255*(n+d)),FD(t,o,n,1)},zD=e=>{const t=(e=>{const t=(e=>{const t=e.value.replace(wD,(e,t,o,n)=>t+t+o+o+n+n);return{value:t}})(e),o=SD.exec(t.value);return null===o?["FFFFFF","FF","FF","FF"]:o})(e),o=parseInt(t[1],16),n=parseInt(t[2],16),s=parseInt(t[3],16);return FD(o,n,s,1)},VD=(e,t,o,n)=>{const s=parseInt(e,10),r=parseInt(t,10),a=parseInt(o,10),i=parseFloat(n);return FD(s,r,a,i)},LD=e=>{const t=BD.exec(e);if(null!==t)return A.some(VD(t[1],t[2],t[3],"1"));const o=ID.exec(e);return null!==o?A.some(VD(o[1],o[2],o[3],o[4])):A.none()},HD=e=>`rgba(${e.red},${e.green},${e.blue},${e.alpha})`,PD=FD(255,0,0,1),UD=e=>_D(ND(e)),WD=(e,t)=>{e.dispatch("ResizeContent",t)},jD=(e,t)=>{e.dispatch("TextColorChange",t)},$D=(e,t)=>e.dispatch("ResolveName",{name:t.nodeName.toLowerCase(),target:t}),GD=e=>{e.dispatch("ContextToolbarClose")},qD=(e,t)=>()=>{e(),t()},YD=(e,t=E)=>KD(e,"NodeChange",o=>{o.setEnabled(e.selection.isEditable()&&t())}),XD=(e,t)=>o=>{const n=YD(e)(o),s=((e,t)=>o=>{const n=qe(),s=()=>{o.setActive(e.formatter.match(t));const s=e.formatter.formatChanged(t,o.setActive);n.set(s)};return e.initialized?s():e.once("init",s),()=>{e.off("init",s),n.clear()}})(e,t)(o);return()=>{n(),s()}},KD=(e,t,o)=>n=>{const s=()=>o(n),r=()=>{o(n),e.on(t,s)};return e.initialized?r():e.once("init",r),()=>{e.off("init",r),e.off(t,s)}},JD=e=>t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("mceToggleFormat",!1,t.format)})},QD=(e,t)=>()=>e.execCommand(t);var ZD=tinymce.util.Tools.resolve("tinymce.util.LocalStorage");const eM={},tM=e=>fe(eM,e).getOrThunk(()=>{const t=`tinymce-custom-colors-${e}`,o=ZD.getItem(t);if(m(o)){const e=ZD.getItem("tinymce-custom-colors");ZD.setItem(t,g(e)?e:"[]")}const n=((e,t=10)=>{const o=ZD.getItem(e),n=r(o)?JSON.parse(o):[],s=t-(a=n).length<0?a.slice(0,t):a;var a;const i=e=>{s.splice(e,1)};return{add:o=>{((e,t)=>{const o=I(e,t);return-1===o?A.none():A.some(o)})(s,o).each(i),s.unshift(o),s.length>t&&s.pop(),ZD.setItem(e,JSON.stringify(s))},state:()=>s.slice(0)}})(t,10);return eM[e]=n,n}),oM=(e,t)=>{tM(e).add(t)},nM="forecolor",sM="hilitecolor",rM=e=>{const t=[];for(let o=0;o<e.length;o+=2)t.push({text:e[o+1],value:e[o],icon:"checkmark",type:"choiceitem"});return t},aM=e=>t=>t.options.get(e),iM="#000000",lM=(e,t)=>t===nM&&e.options.isSet("color_map_foreground")?aM("color_map_foreground")(e):t===sM&&e.options.isSet("color_map_background")?aM("color_map_background")(e):e.options.isSet("color_map_raw")?aM("color_map_raw")(e):aM("color_map")(e),cM=(e,t="default")=>Math.max(5,Math.ceil(Math.sqrt(lM(e,t).length))),dM=(e,t)=>{const o=aM("color_cols")(e),n=cM(e,t);return o===cM(e)?n:o},uM=(e,t="default")=>Math.round(t===nM?aM("color_cols_foreground")(e):t===sM?aM("color_cols_background")(e):aM("color_cols")(e)),mM=aM("custom_colors"),gM=aM("color_default_foreground"),pM=aM("color_default_background"),hM=(e,t)=>{const o=ct(e.selection.getStart()),n="hilitecolor"===t?vs(o,e=>{if(so(e)){const t=fn(e,"background-color");return je((e=>LD(e).exists(e=>0!==e.alpha))(t),t)}return A.none()}).getOr("rgba(0, 0, 0, 0)"):fn(o,"color");return LD(n).map(e=>"#"+_D(e).value)},fM=e=>{const t="choiceitem",o={type:t,text:"Remove color",icon:"color-swatch-remove-color",value:"remove"};return e?[o,{type:t,text:"Custom color",icon:"color-picker",value:"custom"}]:[o]},bM=(e,t,o,n)=>{"custom"===o?_M(e)(o=>{o.each(o=>{oM(t,o),e.execCommand("mceApplyTextcolor",t,o),n(o)})},hM(e,t).getOr(iM)):"remove"===o?(n(""),e.execCommand("mceRemoveTextcolor",t)):(n(o),e.execCommand("mceApplyTextcolor",t,o))},vM=(e,t,o)=>e.concat((e=>V(tM(e).state(),e=>({type:"choiceitem",text:e,icon:"checkmark",value:e})))(t).concat(fM(o))),xM=(e,t,o)=>n=>{n(vM(e,t,o))},yM=(e,t,o)=>{const n="forecolor"===t?"tox-icon-text-color__color":"tox-icon-highlight-bg-color__color";e.setIconFill(n,o)},wM=(e,t)=>{e.setTooltip(t)},SM=(e,t)=>o=>{const n=hM(e,t);return He(n,o.toUpperCase())},CM=(e,t,o)=>{if(ot(o))return"forecolor"===t?"Text color":"Background color";const n="forecolor"===t?"Text color {0}":"Background color {0}",s=vM(lM(e,t),t,!1),r=j(s,e=>e.value===o).getOr({text:""}).text;return e.translate([n,e.translate(r)])},kM=(e,t,o,n)=>{e.ui.registry.addSplitButton(t,{tooltip:CM(e,o,n.get()),chevronTooltip:"forecolor"===t?"Text color menu":"Background color menu",presets:"color",icon:"forecolor"===t?"text-color":"highlight-bg-color",select:SM(e,o),columns:uM(e,o),fetch:xM(lM(e,o),o,mM(e)),onAction:t=>{bM(e,o,n.get(),b)},onItemAction:(s,r)=>{bM(e,o,r,o=>{n.set(o),jD(e,{name:t,color:o})})},onSetup:s=>{yM(s,t,n.get());const r=n=>{n.name===t&&(yM(s,n.name,n.color),wM(s,CM(e,o,n.color)))};return e.on("TextColorChange",r),qD(YD(e)(s),()=>{e.off("TextColorChange",r)})}})},OM=(e,t,o,n,s)=>{e.ui.registry.addNestedMenuItem(t,{text:n,icon:"forecolor"===t?"text-color":"highlight-bg-color",onSetup:n=>(wM(n,CM(e,o,s.get())),yM(n,t,s.get()),YD(e)(n)),getSubmenuItems:()=>[{type:"fancymenuitem",fancytype:"colorswatch",select:SM(e,o),initData:{storageKey:o},onAction:n=>{bM(e,o,n.value,o=>{s.set(o),jD(e,{name:t,color:o})})}}]})},_M=e=>(t,o)=>{let n=!1;const s={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:s,onAction:(e,t)=>{"hex-valid"===t.name&&(n=t.value)},onSubmit:o=>{const s=o.getData().colorpicker;n?(t(A.from(s)),o.close()):e.windowManager.alert(e.translate(["Invalid hex color code: {0}",s]))},onClose:b,onCancel:()=>{t(A.none())}})},TM=(e,t,o,n,s,r,a,i)=>{const l=S_(t),c=EM(t,o,n,"color"!==s?"normal":"color",r,a,i);return O_(e,l,c,n,{menuType:s})},EM=(e,t,o,n,s,r,a)=>Pe(V(e,i=>{return"choiceitem"===i.type?(l=i,Br("choicemenuitem",xA,l)).fold(C_,i=>A.some(vD(i,1===o,n,t,r(i.value),s,a,S_(e)))):"imageitem"===i.type?(e=>Br("imagemenuitem",OA,e))(i).fold(C_,e=>A.some(((e,t,o,n,s)=>{const r=hD({presets:"img",textContent:A.none(),htmlContent:A.none(),ariaLabel:e.tooltip,iconContent:A.some(e.url),labelContent:e.label,shortcutContent:A.none(),checkMark:A.some(mD(s.icons)),caret:A.none(),value:e.value},s,!0),a=e.tooltip.map(e=>Tv.config(s.tooltips.getConfig({tooltipText:s.translate(e)})));return Ve(nD({context:e.context,data:sD(e),enabled:e.enabled,getApi:e=>({setActive:t=>{hv.set(e,t)},isActive:()=>hv.isOn(e),isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t)}),onAction:o=>{t(e.value),o.setActive(!0)},onSetup:e=>(e.setActive(o),b),triggersSubmenu:!1,itemBehaviours:[...a.toArray()]},r,n,s),{toggling:{toggleClass:YO,toggleOnExecute:!1,selected:e.active,exclusive:!0}})})(e,t,r(e.value),s,a))):"resetimage"===i.type?(e=>Br("resetimageitem",_A,e))(i).fold(C_,i=>A.some(vD({...i,type:"choiceitem",text:i.tooltip,icon:A.some(i.icon),label:A.some(i.label)},1===o,n,t,r(i.value),s,a,S_(e)))):A.none();var l})),AM=(e,t)=>{const o=s_(t);return 1===e?{mode:"menu"}:"auto"===e?{mode:"grid",selector:"."+o.item,initSize:{numColumns:1,numRows:1}}:{mode:"matrix",rowSelector:"."+{color:"tox-swatches__row",imageselector:"tox-image-selector__row",listpreview:"tox-collection__group",normal:"tox-collection__group"}[t],previousSelector:e=>"color"===t?Xn(e.element,"[aria-checked=true]"):A.none()}},DM=Ne("cell-over"),MM=Ne("cell-execute"),BM=(e,t,o)=>{const n=o=>$c(o,MM,{row:e,col:t}),s=(e,t)=>{t.stop(),n(e)};return Pg({dom:{tag:"div",attributes:{role:"button","aria-label":o}},behaviours:hd([wd("insert-table-picker-cell",[Zc(ka(),_d.focus),Zc(Ga(),n),Zc(Ma(),s),Zc(Ya(),s)]),hv.config({toggleClass:"tox-insert-table-picker__selected",toggleOnExecute:!1}),_d.config({onFocus:o=>$c(o,DM,{row:e,col:t})})])})},IM=e=>q(e,e=>V(e,Ug)),FM=(e,t)=>zg(`${t}x${e}`),RM={inserttable:(e,t)=>{const o=(e=>(t,o)=>e.shared.providers.translate(["{0} columns, {1} rows",o,t]))(t),n=(e=>{const t=[];for(let o=0;o<10;o++){const n=[];for(let t=0;t<10;t++){const s=e(o+1,t+1);n.push(BM(o,t,s))}t.push(n)}return t})(o),s=FM(0,0),r=Dv({dom:{tag:"span",classes:["tox-insert-table-picker__label"]},components:[s],behaviours:hd([ug.config({})])});return{type:"widget",data:{value:Ne("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[fy.widget({dom:{tag:"div",classes:["tox-insert-table-picker"]},components:IM(n).concat(r.asSpec()),behaviours:hd([wd("insert-table-picker",[id(e=>{ug.set(r.get(e),[s])}),nd(DM,(e,t,o)=>{const{row:s,col:a}=o.event;((e,t,o)=>{for(let n=0;n<10;n++)for(let s=0;s<10;s++)hv.set(e[n][s],n<=t&&s<=o)})(n,s,a),ug.set(r.get(e),[FM(s+1,a+1)])}),nd(MM,(t,o,n)=>{const{row:s,col:r}=n.event;jc(t,Ka()),e.onAction({numRows:s+1,numColumns:r+1})})]),Im.config({initSize:{numRows:10,numColumns:10},mode:"flatgrid",selector:'[role="button"]'})])})]}},colorswatch:(e,t)=>{const o=((e,t)=>{const o=e.initData.allowCustomColors&&t.colorinput.hasCustomColors();return e.initData.colors.fold(()=>vM(t.colorinput.getColors(e.initData.storageKey),e.initData.storageKey,o),e=>e.concat(fM(o)))})(e,t),n=t.colorinput.getColorCols(e.initData.storageKey),s="color",r=TM(Ne("menu-value"),o,t=>{e.onAction({value:t})},n,s,WO.CLOSE_ON_EXECUTE,e.select.getOr(T),t.shared.providers),a={...r,markers:s_(s),movement:AM(n,s),showMenuRole:!1};return{type:"widget",data:{value:Ne("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem"]},autofocus:!0,components:[fy.widget(hx.sketch(a))]}},imageselect:(e,t)=>{const o="imageselector",n=e.initData.columns,s=TM(Ne("menu-value"),e.initData.items,t=>{e.onAction({value:t})},n,o,WO.CLOSE_ON_EXECUTE,e.select.getOr(T),t.shared.providers),r={...s,markers:s_(o),movement:AM(n,o),showMenuRole:!1};return{type:"widget",data:{value:Ne("widget-id")},dom:{tag:"div",classes:["tox-fancymenuitem","tox-collection--toolbar"]},autofocus:!0,components:[fy.widget(hx.sketch(r))]}}},NM=(e,t)=>V(e,e=>{switch(e.type){case"cardcontainer":return((e,t)=>{const o="vertical"===e.direction?"tox-collection__item-container--column":e_,n="left"===e.align?"tox-collection__item-container--align-left":"tox-collection__item-container--align-right";return{dom:{tag:"div",classes:[ZO,o,n,(()=>{switch(e.valign){case"top":return"tox-collection__item-container--valign-top";case"middle":return"tox-collection__item-container--valign-middle";case"bottom":return"tox-collection__item-container--valign-bottom"}})()]},components:t}})(e,NM(e.items,t));case"cardimage":return((e,t,o)=>({dom:{tag:"img",classes:t,attributes:{src:e,alt:o.getOr("")}}}))(e.src,e.classes,e.alt);case"cardtext":const o=e.name.exists(e=>F(t.cardText.highlightOn,e)),n=o?A.from(t.cardText.matchText).getOr(""):"";return cD(bD(e.text,n),e.classes)}}),zM=(e,t,o)=>{m_(e).each(e=>{var n;((e,t)=>{Jo(t.element,"id").each(t=>Yo(e.element,"aria-activedescendant",t))})(e,o),(as((n=t).element,h_)?A.some(n.element):Xn(n.element,"."+h_)).each(t=>{Jo(t,"id").each(t=>Yo(e.element,"aria-controls",t))})}),Yo(o.element,"aria-selected","true")},VM=(e,t,o)=>{Yo(o.element,"aria-selected","false")},LM=e=>Zg.getExistingCoupled(e,"sandbox").bind(u_).map(g_).map(e=>e.fetchPattern).getOr("");var HM;!function(e){e[e.ContentFocus=0]="ContentFocus",e[e.UiFocus=1]="UiFocus"}(HM||(HM={}));const PM=(e,t,o,n,s)=>{const r=o.shared.providers,a=e=>s?{...e,shortcut:A.none(),icon:e.text.isSome()?A.none():e.icon}:e;switch(e.type){case"menuitem":return(i=e,Br("menuitem",TA,i)).fold(C_,e=>A.some(((e,t,o,n=!0)=>{const s=hD({presets:"normal",iconContent:e.icon,textContent:e.text,htmlContent:A.none(),labelContent:A.none(),ariaLabel:e.text,caret:A.none(),checkMark:A.none(),shortcutContent:e.shortcut},o,n);return nD({context:e.context,data:sD(e),getApi:e=>({isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t)}),enabled:e.enabled,onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:[]},s,t,o)})(a(e),t,r,n)));case"nestedmenuitem":return(e=>Br("nestedmenuitem",EA,e))(e).fold(C_,e=>A.some(((e,t,o,n=!0,s=!1)=>{const r=s?(a=o.icons,iD("chevron-down",a,[JO])):(e=>iD("chevron-right",e,[JO]))(o.icons);var a;const i=hD({presets:"normal",iconContent:e.icon,textContent:e.text,htmlContent:A.none(),ariaLabel:e.text,labelContent:A.none(),caret:A.some(r),checkMark:A.none(),shortcutContent:e.shortcut},o,n);return nD({context:e.context,data:sD(e),getApi:e=>({isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t),setIconFill:(t,o)=>{Xn(e.element,`svg path[class="${t}"], rect[class="${t}"]`).each(e=>{Yo(e,"fill",o)})},setTooltip:t=>{const n=o.translate(t);Yo(e.element,"aria-label",n)}}),enabled:e.enabled,onAction:b,onSetup:e.onSetup,triggersSubmenu:!0,itemBehaviours:[]},i,t,o)})(a(e),t,r,n,s)));case"togglemenuitem":return(e=>Br("togglemenuitem",AA,e))(e).fold(C_,e=>A.some(((e,t,o,n=!0)=>{const s=hD({iconContent:e.icon,textContent:e.text,htmlContent:A.none(),labelContent:A.none(),ariaLabel:e.text,checkMark:A.some(mD(o.icons)),caret:A.none(),shortcutContent:e.shortcut,presets:"normal",meta:e.meta},o,n);return Ve(nD({context:e.context,data:sD(e),enabled:e.enabled,getApi:e=>({setActive:t=>{hv.set(e,t)},isActive:()=>hv.isOn(e),isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t)}),onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:[]},s,t,o),{toggling:{toggleClass:YO,toggleOnExecute:!1,selected:e.active},role:e.role.getOrUndefined()})})(a(e),t,r,n)));case"separator":return(e=>Br("separatormenuitem",$E,e))(e).fold(C_,e=>A.some(xD(e)));case"fancymenuitem":return(e=>Br("fancymenuitem",kA,e))(e).fold(C_,e=>((e,t)=>fe(RM,e.fancytype).map(o=>o(e,t)))(e,o));default:return console.error("Unknown item in general menu",e),A.none()}var i},UM=(e,t,o,n,s,r)=>{const a=S_(t),i=Pe(V(t,e=>{const t=e=>PM(e,o,n,(e=>s?!be(e,"text"):a)(e),s);return"nestedmenuitem"===e.type&&e.getSubmenuItems().length<=0?t({...e,enabled:!1}):t(e)})),l=(e=>"no-search"===e.searchMode?{menuType:"normal"}:{menuType:"searchable",searchMode:e})(r);return(s?k_:O_)(e,a,i,1,l)},WM=e=>Cx.singleData(e.value,e),jM=e=>xs(ct(e.startContainer),e.startOffset,ct(e.endContainer),e.endOffset),$M=(e,t)=>{const o=Ne("autocompleter"),n=ye(!1),s=ye(!1),r=Ye(),a=Pg(dy.sketch({dom:{tag:"div",classes:["tox-autocompleter"],attributes:{id:o}},components:[],fireDismissalEventInstead:{},inlineBehaviours:hd([wd("dismissAutocompleter",[Zc(ri(),()=>u()),Zc(mi(),(t,o)=>{Jo(o.event.target,"id").each(t=>Yo(ct(e.getBody()),"aria-activedescendant",t))})])]),lazySink:t.getSink})),i=()=>dy.isOpen(a),l=s.get,c=()=>{if(i()){dy.hide(a),e.dom.remove(o,!1);const t=ct(e.getBody());Jo(t,"aria-owns").filter(e=>e===o).each(()=>{Zo(t,"aria-owns"),Zo(t,"aria-activedescendant")})}},d=()=>dy.getContent(a).bind(e=>ee(e.components(),0)),u=()=>e.execCommand("mceAutocompleterClose"),m=s=>{const i=(o=>{const s=se(o,e=>A.from(e.columns)).getOr(1);return q(o,o=>((e,t,o,n,s,r,a)=>{const i=1===n,l=!i||S_(e);return Pe(V(e,e=>{switch(e.type){case"separator":return(n=e,Br("Autocompleter.Separator",$E,n)).fold(C_,e=>A.some(xD(e)));case"cardmenuitem":return(e=>Br("cardmenuitem",vA,e))(e).fold(C_,e=>A.some(((e,t,o,n)=>{const s={dom:gD(e.label,[]),optComponents:[A.some({dom:{tag:"div",classes:[ZO,e_]},components:NM(e.items,n)})]};return nD({context:"mode:design",data:sD({text:A.none(),...e}),enabled:e.enabled,getApi:e=>({isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>{gp.set(e,!t),L(gs(e.element,"*"),o=>{e.getSystem().getByDom(o).each(e=>{e.hasConfigured(gp)&&gp.set(e,!t)})})}}),onAction:e.onAction,onSetup:e.onSetup,triggersSubmenu:!1,itemBehaviours:A.from(n.itemBehaviours).getOr([])},s,t,o.providers)})({...e,onAction:t=>{e.onAction(t),o(e.value,e.meta)}},s,r,{itemBehaviours:fD(e.meta,r,A.none()),cardText:{matchText:t,highlightOn:a}})));default:return(e=>Br("Autocompleter.Item",GE,e))(e).fold(C_,e=>A.some(((e,t,o,n,s,r,a,i=!0)=>{const l=hD({presets:"normal",textContent:A.none(),htmlContent:o?e.text.map(e=>bD(e,t)):A.none(),ariaLabel:e.text,labelContent:A.none(),iconContent:e.icon,shortcutContent:A.none(),checkMark:A.none(),caret:A.none(),value:e.value},a.providers,i,e.icon),c=e.text.filter(e=>!o&&""!==e);return nD({context:"mode:design",data:sD(e),enabled:e.enabled,getApi:y({}),onAction:t=>s(e.value,e.meta),onSetup:y(b),triggersSubmenu:!1,itemBehaviours:fD(e,a,c)},l,r,a.providers)})(e,t,i,0,o,s,r,l)))}var n}))})(o.items,o.matchText,(t,s)=>{const a={hide:()=>u(),reload:t=>{c(),e.execCommand("mceAutocompleterReload",!1,{fetchOptions:t})}};e.execCommand("mceAutocompleterRefreshActiveRange"),r.get().each(e=>{n.set(!0),o.onAction(a,e,t,s),n.set(!1)})},s,WO.BUBBLE_TO_SANDBOX,t,o.highlightOn))})(s);i.length>0?(((t,o)=>{const n=se(t,e=>A.from(e.columns)).getOr(1);dy.showMenuAt(a,{anchor:{type:"selection",getSelection:()=>r.get().map(jM),root:ct(e.getBody())}},((e,t,o,n)=>{const s=AM(t,n),r=s_(n);return{data:WM({...e,movement:s,menuBehaviours:LA("auto"!==t?[]:[id((e,t)=>{VA(e,4,r.item).each(({numColumns:t,numRows:o})=>{Im.setGridSize(e,o,t)})})])}),menu:{markers:s_(n),fakeFocus:o===HM.ContentFocus}}})(O_("autocompleter-value",!0,o,n,{menuType:"normal"}),n,HM.ContentFocus,"normal")),d().each(ru.highlightFirst)})(s,i),Yo(ct(e.getBody()),"aria-owns",o),e.inline||g()):c()},g=()=>{e.dom.get(o)&&e.dom.remove(o,!1);const t=e.getDoc().documentElement,n=e.selection.getNode(),s=(e=>on(e,!0))(a.element);pn(s,{border:"0",clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0",position:"absolute",width:"1px",top:`${n.offsetTop}px`,left:`${n.offsetLeft}px`}),e.dom.add(t,s.dom),Xn(s,'[role="menu"]').each(e=>{wn(e,"position"),wn(e,"max-height")})};e.on("AutocompleterStart",({lookupData:e})=>{s.set(!0),n.set(!1),m(e)}),e.on("AutocompleterUpdate",({lookupData:e})=>m(e)),e.on("AutocompleterUpdateActiveRange",({range:e})=>r.set(e)),e.on("AutocompleterEnd",()=>{c(),s.set(!1),n.set(!1),r.clear()});((e,t)=>{const o=(e,t)=>{$c(e,Ta(),{raw:t})},n=()=>e.getMenu().bind(ru.getHighlighted);t.on("keydown",t=>{const s=t.which;e.isActive()&&(e.isMenuOpen()?13===s?(n().each(Gc),t.preventDefault()):40===s?(n().fold(()=>{e.getMenu().each(ru.highlightFirst)},e=>{o(e,t)}),t.preventDefault(),t.stopImmediatePropagation()):37!==s&&38!==s&&39!==s||n().each(e=>{o(e,t),t.preventDefault(),t.stopImmediatePropagation()}):13!==s&&38!==s&&40!==s||e.cancelIfNecessary())}),t.on("NodeChange",()=>{!e.isActive()||e.isProcessingAction()||t.queryCommandState("mceAutoCompleterInRange")||e.cancelIfNecessary()})})({cancelIfNecessary:u,isMenuOpen:i,isActive:l,isProcessingAction:n.get,getMenu:d},e)};var GM=tinymce.util.Tools.resolve("tinymce.html.Entities");const qM=(e,t,o,n)=>{const s=YM(e,t,o,n);return sy.sketch(s)},YM=(e,t,o,n)=>({dom:XM(o),components:e.toArray().concat([t]),fieldBehaviours:hd(n)}),XM=e=>({tag:"div",classes:["tox-form__group"].concat(e)}),KM=(e,t)=>sy.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e))]}),JM=Ne("form-component-change"),QM=Ne("form-component-input"),ZM=Ne("form-close"),eB=Ne("form-cancel"),tB=Ne("form-action"),oB=Ne("form-submit"),nB=Ne("form-block"),sB=Ne("form-unblock"),rB=Ne("form-tabchange"),aB=Ne("form-resize"),iB=(e,t,o)=>{const n=e.label.map(e=>KM(e,t)),s=t.icons(),r=e=>(t,o)=>{Kn(o.event.target,"[data-collection-item-value]").each(n=>{e(t,o,n,Ko(n,"data-collection-item-value"))})},a=r((o,n,s,r)=>{n.stop(),t.checkUiComponentContext("mode:design").shouldDisable||t.isDisabled()||$c(o,tB,{name:e.name,value:r})}),i=[Zc(ka(),r((e,t,o)=>{zo(o,!0)})),Zc(Ma(),a),Zc(Ya(),a),Zc(Oa(),r((e,t,o)=>{Xn(e.element,"."+QO).each(e=>{rs(e,QO)}),ns(o,QO)})),Zc(_a(),r(e=>{Xn(e.element,"."+QO).each(e=>{rs(e,QO),Vo(e)})})),dd(r((t,o,n,s)=>{$c(t,tB,{name:e.name,value:s})}))],l=(e,t)=>V(gs(e.element,".tox-collection__item"),t),c=sy.parts.field({dom:{tag:"div",classes:["tox-collection"].concat(1!==e.columns?["tox-collection--grid"]:["tox-collection--list"])},components:[],factory:{sketch:w},behaviours:hd([gp.config({disabled:()=>t.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{l(e,e=>{ns(e,"tox-collection__item--state-disabled"),Yo(e,"aria-disabled",!0)})},onEnabled:e=>{l(e,e=>{rs(e,"tox-collection__item--state-disabled"),Zo(e,"aria-disabled")})}}),ZA(()=>t.checkUiComponentContext(e.context)),ug.config({}),Tv.config({...t.tooltips.getConfig({tooltipText:"",onShow:e=>{Xn(e.element,"."+QO+"[data-mce-tooltip]").each(o=>{Jo(o,"data-mce-tooltip").each(o=>{Tv.setComponents(e,t.tooltips.getComponents({tooltipText:o}))})})}}),mode:"children-keyboard-focus",anchor:e=>({type:"node",node:Xn(e.element,"."+QO).orThunk(()=>yt(".tox-collection__item")),root:e.element,layouts:{onLtr:y([oc,tc,Jl,Zl,Ql,ec]),onRtl:y([oc,tc,Jl,Zl,Ql,ec])},bubble:Ml(0,-2,{})})}),mf.config({store:{mode:"memory",initialValue:o.getOr([])},onSetValue:(o,n)=>{((o,n)=>{const r=t.checkUiComponentContext("mode:design").shouldDisable||t.isDisabled()?" tox-collection__item--state-disabled":"",a=V(n,t=>{const o=AO.translate(t.text),n=1===e.columns?`<div class="tox-collection__item-label">${o}</div>`:"",a=`<div class="tox-collection__item-icon">${(e=>s[e]??e)(t.icon)}</div>`,i={_:" "," - ":" ","-":" "},l=o.replace(/\_| \- |\-/g,e=>i[e]);return`<div data-mce-tooltip="${l}" class="tox-collection__item${r}" tabindex="-1" data-collection-item-value="${GM.encodeAllRaw(t.value)}" aria-label="${l}">${a}${n}</div>`}),i="auto"!==e.columns&&e.columns>1?z(a,e.columns):[a],l=V(i,e=>`<div class="tox-collection__group">${e.join("")}</div>`);sn(o.element,l.join(""))})(o,n),"auto"===e.columns&&VA(o,5,"tox-collection__item").each(({numRows:e,numColumns:t})=>{Im.setGridSize(o,e,t)}),jc(o,aB)}}),iv.config({}),Im.config((d=e.columns,1===d?{mode:"menu",selector:".tox-collection__item"}:"auto"===d?{mode:"flatgrid",selector:".tox-collection__item",initSize:{numColumns:1,numRows:1}}:{mode:"matrix",selectors:{row:".tox-collection__group",cell:`.${$O}`}})),wd("collection-events",i)]),eventOrder:{[Ga()]:["disabling","alloy.base.behaviour","collection-events"],[Oa()]:["collection-events","tooltipping"]}});var d;return qM(n,c,["tox-form__group--collection"],[])},lB=Ne("color-input-change"),cB=Ne("color-swatch-change"),dB=Ne("color-picker-cancel"),uB=()=>Xg.config({find:A.some}),mB=e=>Xg.config({find:t=>yo(t.element,e).bind(e=>t.getSystem().getByDom(e).toOptional())}),gB=kr([sa("preprocess",w),sa("postprocess",w)]),pB=(e,t)=>{const o=Fr("RepresentingConfigs.memento processors",gB,t);return mf.config({store:{mode:"manual",getValue:t=>{const n=e.get(t),s=mf.getValue(n);return o.postprocess(s)},setValue:(t,n)=>{const s=o.preprocess(n),r=e.get(t);mf.setValue(r,s)}}})},hB=(e,t,o)=>mf.config({store:{mode:"manual",...e.map(e=>({initialValue:e})).getOr({}),getValue:t,setValue:o}}),fB=(e,t,o)=>hB(e,e=>t(e.element),(e,t)=>o(e.element,t)),bB=e=>mf.config({store:{mode:"memory",initialValue:e}}),vB=Ne("rgb-hex-update"),xB=Ne("slider-update"),yB=Ne("palette-update"),wB=Ne("valid-input"),SB=Ne("invalid-input"),CB=Ne("validating-input"),kB="colorcustom.rgb.",OB={isEnabled:E,setEnabled:b,immediatelyShow:b,immediatelyHide:b},_B=(e,t,o,n,s,r)=>{const a=(e,t)=>{const o=t.get();e!==o.isEnabled()&&(o.setEnabled(e),e?o.immediatelyShow():o.immediatelyHide())},i=(o,n,s)=>gf.config({invalidClass:t("invalid"),notify:{onValidate:e=>{$c(e,CB,{type:o})},onValid:e=>{a(!1,s),$c(e,wB,{type:o,value:mf.getValue(e)})},onInvalid:e=>{a(!0,s),$c(e,SB,{type:o,value:mf.getValue(e)})}},validator:{validate:t=>{const o=mf.getValue(t),s=n(o)?Ae.value(!0):Ae.error(e("aria.input.invalid"));return _e(s)},validateOnLoad:!1}}),l=(o,n,a,l,c)=>{const d=ye(OB),u=e(kB+"range"),m=sy.parts.label({dom:{tag:"label"},components:[zg(a)]}),g=sy.parts.field({data:c,factory:hy,inputAttributes:{type:"text","aria-label":l,..."hex"===n?{"aria-live":"polite"}:{}},inputClasses:[t("textfield")],inputBehaviours:hd([i(n,o,d),iv.config({}),Tv.config({...s({tooltipText:"",onSetup:e=>{d.set({isEnabled:()=>Tv.isEnabled(e),setEnabled:t=>Tv.setEnabled(e,t),immediatelyShow:()=>Tv.immediateOpenClose(e,!0),immediatelyHide:()=>Tv.immediateOpenClose(e,!1)}),Tv.setEnabled(e,!1)},onShow:(o,s)=>{Tv.setComponents(o,[{dom:{tag:"p",classes:[t("rgb-warning-note")]},components:[zg(e("hex"===n?"colorcustom.rgb.invalidHex":"colorcustom.rgb.invalid"))]}])}})})]),onSetValue:e=>{gf.isInvalid(e)&&gf.run(e).get(b)}}),p=Ne("aria-invalid"),h=Dv(r("invalid",A.some(p),"warning")),f=[m,g,Dv({dom:{tag:"div",classes:[t("invalid-icon")]},components:[h.asSpec()]}).asSpec()],v="hex"!==n?[sy.parts["aria-descriptor"]({text:u})]:[],x=f.concat(v);return{dom:{tag:"div",attributes:{role:"presentation"},classes:[t("rgb-container")]},components:x}},c=(e,t)=>{const o=t.red,n=t.green,s=t.blue;mf.setValue(e,{red:o,green:n,blue:s})},d=Dv({dom:{tag:"div",classes:[t("rgba-preview")],styles:{"background-color":"white"},attributes:{role:"presentation"}}}),u=(e,t)=>{d.getOpt(e).each(e=>{gn(e.element,"background-color","#"+t.value)})},m=hh({factory:()=>{const s={red:ye(A.some(255)),green:ye(A.some(255)),blue:ye(A.some(255)),hex:ye(A.some("ffffff"))},r=e=>s[e].get(),a=(e,t)=>{s[e].set(t)},i=e=>{const t=e.red,o=e.green,n=e.blue;a("red",A.some(t)),a("green",A.some(o)),a("blue",A.some(n))},m=(e,t)=>{const o=t.event;"hex"!==o.type?a(o.type,A.none()):n(e)},g=(e,t)=>{const n=t.event;(e=>"hex"===e.type)(n)?((e,t)=>{o(e);const n=yD(t);a("hex",A.some(n.value));const s=zD(n);c(e,s),i(s),$c(e,vB,{hex:n}),u(e,n)})(e,n.value):((e,t,o)=>{const n=parseInt(o,10);a(t,A.some(n)),r("red").bind(e=>r("green").bind(t=>r("blue").map(o=>FD(e,t,o,1)))).each(t=>{const o=((e,t)=>{const o=_D(t);return $x.getField(e,"hex").each(t=>{_d.isFocused(t)||mf.setValue(e,{hex:o.value})}),o})(e,t);$c(e,vB,{hex:o}),u(e,o)})})(e,n.type,n.value)},p=t=>({label:e(kB+t+".label"),description:e(kB+t+".description")}),h=p("red"),f=p("green"),b=p("blue"),v=p("hex");return Ve($x.sketch(o=>({dom:{tag:"form",classes:[t("rgb-form")],attributes:{"aria-label":e("aria.color.picker")}},components:[o.field("red",sy.sketch(l(RD,"red",h.label,h.description,255))),o.field("green",sy.sketch(l(RD,"green",f.label,f.description,255))),o.field("blue",sy.sketch(l(RD,"blue",b.label,b.description,255))),o.field("hex",sy.sketch(l(CD,"hex",v.label,v.description,"ffffff"))),d.asSpec()],formBehaviours:hd([gf.config({invalidClass:t("form-invalid")}),wd("rgb-form-events",[Zc(wB,g),Zc(SB,m),Zc(CB,m)])])})),{apis:{updateHex:(e,t)=>{mf.setValue(e,{hex:t.value}),((e,t)=>{const o=zD(t);c(e,o),i(o)})(e,t),u(e,t)}}})},name:"RgbForm",configFields:[],apis:{updateHex:(e,t,o)=>{e.updateHex(t,o)}},extraApis:{}});return m},TB=(e,t,o,n)=>{const s=hh({name:"ColourPicker",configFields:[Pr("dom"),sa("onValidHex",b),sa("onInvalidHex",b)],factory:s=>{const r=_B(e,t,s.onValidHex,s.onInvalidHex,o,n),a=((e,t)=>{const o=nS.parts.spectrum({dom:{tag:"canvas",attributes:{role:"presentation"},classes:[t("sv-palette-spectrum")]}}),n=nS.parts.thumb({dom:{tag:"div",attributes:{role:"presentation"},classes:[t("sv-palette-thumb")],innerHtml:`<div class=${t("sv-palette-inner-thumb")} role="presentation"></div>`}}),s=(e,t)=>{const{width:o,height:n}=e,s=e.getContext("2d");if(null===s)return;s.fillStyle=t,s.fillRect(0,0,o,n);const r=s.createLinearGradient(0,0,o,0);r.addColorStop(0,"rgba(255,255,255,1)"),r.addColorStop(1,"rgba(255,255,255,0)"),s.fillStyle=r,s.fillRect(0,0,o,n);const a=s.createLinearGradient(0,0,0,n);a.addColorStop(0,"rgba(0,0,0,0)"),a.addColorStop(1,"rgba(0,0,0,1)"),s.fillStyle=a,s.fillRect(0,0,o,n)},r=hh({factory:r=>{const a=y({x:0,y:0}),i=hd([Xg.config({find:A.some}),_d.config({})]);return nS.sketch({dom:{tag:"div",attributes:{role:"slider","aria-valuetext":e(["Saturation {0}%, Brightness {1}%",0,0])},classes:[t("sv-palette")]},model:{mode:"xy",getInitialValue:a},rounded:!1,components:[o,n],onChange:(t,o,n)=>{h(n)||Yo(t.element,"aria-valuetext",e(["Saturation {0}%, Brightness {1}%",Math.floor(n.x),Math.floor(100-n.y)])),$c(t,yB,{value:n})},onInit:(e,t,o,n)=>{s(o.element.dom,HD(PD))},sliderBehaviours:i})},name:"SaturationBrightnessPalette",configFields:[],apis:{setHue:(e,t,o)=>{((e,t)=>{const o=e.components()[0].element.dom,n=TD(t,100,100),r=ND(n);s(o,HD(r))})(t,o)},setThumb:(t,o,n)=>{((t,o)=>{const n=ED(zD(o));nS.setValue(t,{x:n.saturation,y:100-n.value}),Yo(t.element,"aria-valuetext",e(["Saturation {0}%, Brightness {1}%",n.saturation,n.value]))})(o,n)}},extraApis:{}});return r})(e,t),i={paletteRgba:ye(PD),paletteHue:ye(0)},l=Dv(((e,t)=>{const o=nS.parts.spectrum({dom:{tag:"div",classes:[t("hue-slider-spectrum")],attributes:{role:"presentation"}}}),n=nS.parts.thumb({dom:{tag:"div",classes:[t("hue-slider-thumb")],attributes:{role:"presentation"}}});return nS.sketch({dom:{tag:"div",classes:[t("hue-slider")],attributes:{role:"slider","aria-valuemin":0,"aria-valuemax":360,"aria-valuenow":120}},rounded:!1,model:{mode:"y",getInitialValue:y(0)},components:[o,n],sliderBehaviours:hd([_d.config({})]),onChange:(e,t,o)=>{Yo(e.element,"aria-valuenow",Math.floor(360-3.6*o)),$c(e,xB,{value:o})}})})(0,t)),c=Dv(a.sketch({})),d=Dv(r.sketch({})),u=(e,t,o)=>{c.getOpt(e).each(e=>{a.setHue(e,o)})},m=(e,t)=>{d.getOpt(e).each(e=>{r.updateHex(e,t)})},g=(e,t,o)=>{l.getOpt(e).each(e=>{nS.setValue(e,(e=>100-e/360*100)(o))})},p=(e,t)=>{c.getOpt(e).each(e=>{a.setThumb(e,t)})},f=(e,t,o,n)=>{((e,t)=>{const o=zD(e);i.paletteRgba.set(o),i.paletteHue.set(t)})(t,o),L(n,n=>{n(e,t,o)})};return{uid:s.uid,dom:s.dom,components:[c.asSpec(),l.asSpec(),d.asSpec()],behaviours:hd([wd("colour-picker-events",[Zc(vB,(()=>{const e=[u,g,p];return(t,o)=>{const n=o.event.hex,s=(e=>ED(zD(e)))(n);f(t,n,s.hue,e)}})()),Zc(yB,(()=>{const e=[m];return(t,o)=>{const n=o.event.value,s=i.paletteHue.get(),r=TD(s,n.x,100-n.y),a=UD(r);f(t,a,s,e)}})()),Zc(xB,(()=>{const e=[u,m];return(t,o)=>{const n=(e=>(100-e)/100*360)(o.event.value),s=i.paletteRgba.get(),r=ED(s),a=TD(n,r.saturation,r.value),l=UD(a);f(t,l,n,e)}})())]),Xg.config({find:e=>d.getOpt(e)}),Im.config({mode:"acyclic"})])}}});return s},EB={"colorcustom.rgb.red.label":"R","colorcustom.rgb.red.description":"Red channel","colorcustom.rgb.green.label":"G","colorcustom.rgb.green.description":"Green channel","colorcustom.rgb.blue.label":"B","colorcustom.rgb.blue.description":"Blue channel","colorcustom.rgb.hex.label":"#","colorcustom.rgb.hex.description":"Hex color code","colorcustom.rgb.range":"Range 0 to 255","colorcustom.rgb.invalid":"Numbers only, 0 to 255","colorcustom.rgb.invalidHex":"Hexadecimal only, 000000 to FFFFFF","aria.color.picker":"Color Picker","aria.input.invalid":"Invalid input"};var AB=tinymce.util.Tools.resolve("tinymce.Resource");const DB=e=>be(e,"init");var MB=tinymce.util.Tools.resolve("tinymce.util.Tools");const BB=Ne("browse.files.event"),IB=(e,t,o)=>{const n=(e,t)=>{t.stop()},s=e=>(t,o)=>{L(e,e=>{e(t,o)})},r=Dv({dom:{tag:"input",attributes:{type:"file",accept:e.allowedFileTypes.getOr("image/*")},styles:{display:"none"}},behaviours:hd([wd("input-file-events",[sd(Ma()),sd(Ya())])])}),a=e.label.map(e=>KM(e,t)),i=sy.parts.field({factory:Wv,dom:{tag:"button",styles:{position:"relative"},classes:["tox-button","tox-button--secondary"]},components:[zg(t.translate(e.buttonLabel.getOr("Browse for an image"))),r.asSpec()],action:e=>{r.get(e).element.dom.click()},buttonBehaviours:hd([uB(),bB(o.getOr([])),iv.config({}),PA(()=>t.checkUiComponentContext(e.context).shouldDisable),ZA(()=>t.checkUiComponentContext(e.context))])}),l={dom:{tag:"div",classes:["tox-dropzone-container"]},behaviours:hd([gp.config({disabled:()=>t.checkUiComponentContext(e.context).shouldDisable}),ZA(()=>t.checkUiComponentContext(e.context)),hv.config({toggleClass:"dragenter",toggleOnExecute:!1}),wd("dropzone-events",[Zc("dragenter",s([n,hv.toggle])),Zc("dragleave",s([n,hv.toggle])),Zc("dragover",n),Zc("drop",s([n,(e,t)=>{if(!gp.isDisabled(e)){const o=t.event.raw;$c(e,BB,{files:o.dataTransfer?.files})}}])),Zc(Da(),(e,t)=>{const o=t.event.raw.target;$c(e,BB,{files:o.files})})])]),components:[{dom:{tag:"div",classes:["tox-dropzone"],styles:{}},components:[{dom:{tag:"p"},components:[zg(t.translate(e.dropAreaLabel.getOr("Drop an image here")))]},i]}]};return qM(a,l,["tox-form__group--stretched"],[wd("handle-files",[Zc(BB,(o,n)=>{sy.getField(o).each(o=>{((o,n)=>{if(n){const s=((e,t,o)=>{const n=MB.explode(t.getOption("images_file_types"));return P(ne(e),e=>o.fold(()=>R(n,t=>Ze(e.name.toLowerCase(),`.${t.toLowerCase()}`)),t=>R(t,t=>Ze(e.name.toLowerCase(),`.${t.toLowerCase()}`))))})(n,t,e.allowedFileExtensions);mf.setValue(o,s),$c(o,JM,{name:e.name}),0===s.length&&e.onInvalidFiles().finally(()=>{o.element.dom.focus()}).catch(b)}})(o,n.event.files)})})])])},FB=Ne("alloy-fake-before-tabstop"),RB=Ne("alloy-fake-after-tabstop"),NB=e=>({dom:{tag:"div",styles:{width:"1px",height:"1px",outline:"none"},attributes:{tabindex:"0"},classes:e},behaviours:hd([_d.config({ignore:!0}),iv.config({})])}),zB=(e,t)=>({dom:{tag:"div",classes:["tox-navobj",...e.getOr([])]},components:[NB([FB]),t,NB([RB])],behaviours:hd([mB(1)])}),VB=(e,t)=>{$c(e,Ta(),{raw:{which:9,shiftKey:t}})},LB=(e,t)=>{const o=t.element;as(o,FB)?VB(e,!0):as(o,RB)&&VB(e,!1)},HB=e=>hs(e,["."+FB,"."+RB].join(","),T),PB=Ne("update-dialog"),UB=Ne("update-title"),WB=Ne("update-body"),jB=Ne("update-footer"),$B=Ne("body-send-message"),GB=Ne("dialog-focus-shifted"),qB=Qt().browser,YB=qB.isSafari(),XB=qB.isFirefox(),KB=YB||XB,JB=qB.isChromium(),QB=({scrollTop:e,scrollHeight:t,clientHeight:o})=>Math.ceil(e)+o>=t,ZB=(e,t)=>e.scrollTo(0,"bottom"===t?99999999:t),eI=(e,t,o)=>{const n=e.dom;A.from(n.contentDocument).fold(o,e=>{let o=0;const s=((e,t)=>{const o=e.body;return A.from(!/^<!DOCTYPE (html|HTML)/.test(t)&&(!JB&&!YB||g(o)&&(0!==o.scrollTop||Math.abs(o.scrollHeight-o.clientHeight)>1))?o:e.documentElement)})(e,t).map(e=>(o=e.scrollTop,e)).forall(QB),r=()=>{const e=n.contentWindow;g(e)&&(s?ZB(e,"bottom"):!s&&KB&&0!==o&&ZB(e,o))};YB&&n.addEventListener("load",r,{once:!0}),e.open(),e.write(t),e.close(),YB||r()})},tI=je(KB,YB?500:200).map(e=>((e,t)=>{let o=null,n=null;return{cancel:()=>{c(o)||(clearTimeout(o),o=null,n=null)},throttle:(...s)=>{n=s,c(o)&&(o=setTimeout(()=>{const t=n;o=null,n=null,e.apply(null,t)},t))}}})(eI,e)),oI=Ne("toolbar.button.execute"),nI=Ne("common-button-display-events"),sI={[Ga()]:["disabling","alloy.base.behaviour","toggling","toolbar-button-events","tooltipping"],[ni()]:["toolbar-button-events",nI],[si()]:["toolbar-button-events","dropdown-events","tooltipping"],[ya()]:["focusing","alloy.base.behaviour",nI]},rI=e=>gn(e.element,"width",fn(e.element,"width")),aI=(e,t,o)=>VO(e,{tag:"span",classes:["tox-icon","tox-tbtn__icon-wrap"],behaviours:o},t),iI=(e,t)=>aI(e,t,[]),lI=(e,t)=>aI(e,t,[ug.config({})]),cI=(e,t,o)=>({dom:{tag:"span",classes:[`${t}__select-label`]},components:[zg(o.translate(e))],behaviours:hd([ug.config({})])}),dI=Ne("update-menu-text"),uI=Ne("update-menu-icon"),mI=Ne("update-tooltip-text"),gI=(e,t,o,n)=>{const s=ye(b),r=ye(e.tooltip),a=e.text.map(e=>Dv(cI(e,t,o.providers))),i=e.icon.map(e=>Dv(lI(e,o.providers.icons))),l=(e,t)=>{const o=mf.getValue(e);return _d.focus(o),$c(o,"keydown",{raw:t.event.raw}),Hx.close(o),A.some(!0)},c=e.role.fold(()=>({}),e=>({role:e})),d=A.from(e.listRole).map(e=>({listRole:e})).getOr({}),u=e.ariaLabel.fold(()=>({}),e=>({"aria-label":o.providers.translate(e)})),m=VO("chevron-down",{tag:"div",classes:[`${t}__select-chevron`]},o.providers.icons),p=Ne("common-button-display-events"),h="dropdown-events",f=Dv(Hx.sketch({...e.uid?{uid:e.uid}:{},...c,...d,dom:{tag:"button",classes:[t,`${t}--select`].concat(V(e.classes,e=>`${t}--${e}`)),attributes:{...u,...g(n)?{"data-mce-name":n}:{}}},components:oD([i.map(e=>e.asSpec()),a.map(e=>e.asSpec()),A.some(m)]),matchWidth:!0,useMinWidth:!0,onOpen:(t,o,n)=>{e.searchable&&(e=>{m_(e).each(e=>_d.focus(e))})(n)},dropdownBehaviours:hd([...e.dropdownBehaviours,PA(()=>e.disabled||o.providers.checkUiComponentContext(e.context).shouldDisable),ZA(()=>o.providers.checkUiComponentContext(e.context)),Ev.config({}),ug.config({}),...e.tooltip.map(t=>Tv.config(o.providers.tooltips.getConfig({tooltipText:o.providers.translate(t),onShow:t=>{if(Ue(r.get(),e.tooltip,(e,t)=>t!==e).getOr(!1)){const e=o.providers.translate(r.get().getOr(""));Tv.setComponents(t,o.providers.tooltips.getComponents({tooltipText:e}))}}}))).toArray(),wd(h,[jA(e,s),$A(e,s)]),wd(p,[id((t,o)=>{"listbox"!==e.listRole&&rI(t)})]),wd("update-dropdown-width-variable",[Zc(oi(),(e,t)=>Hx.close(e))]),wd("menubutton-update-display-text",[Zc(dI,(e,t)=>{a.bind(t=>t.getOpt(e)).each(e=>{ug.set(e,[zg(o.providers.translate(t.event.text))])})}),Zc(uI,(e,t)=>{i.bind(t=>t.getOpt(e)).each(e=>{ug.set(e,[lI(t.event.icon,o.providers.icons)])})}),Zc(mI,(e,t)=>{const n=o.providers.translate(t.event.text);Yo(e.element,"aria-label",n),r.set(A.some(t.event.text))})])]),eventOrder:Ve(sI,{[ya()]:["focusing","alloy.base.behaviour","item-type-events","normal-dropdown-events"],[ni()]:["toolbar-button-events",Tv.name(),h,p]}),sandboxBehaviours:hd([Im.config({mode:"special",onLeft:l,onRight:l}),wd("dropdown-sandbox-events",[Zc(l_,(e,t)=>{(e=>{const t=mf.getValue(e),o=u_(e).map(g_);Hx.refetch(t).get(()=>{const e=Zg.getCoupled(t,"sandbox");o.each(t=>u_(e).each(e=>((e,t)=>{mf.setValue(e,t.fetchPattern),e.element.dom.selectionStart=t.selectionStart,e.element.dom.selectionEnd=t.selectionEnd})(e,t)))})})(e),t.stop()}),Zc(c_,(e,t)=>{((e,t)=>{(e=>zb.getState(e).bind(ru.getHighlighted).bind(ru.getHighlighted))(e).each(o=>{((e,t,o,n)=>{const s={...n,target:t};e.getSystem().triggerEvent(o,t,s)})(e,o.element,t.event.eventType,t.event.interactionEvent)})})(e,t),t.stop()})])]),lazySink:o.getSink,toggleClass:`${t}--active`,parts:{menu:{...i_(0,e.columns,e.presets),fakeFocus:e.searchable,..."listbox"===e.listRole?{}:{onHighlightItem:zM,onCollapseMenu:(e,t,o)=>{ru.getHighlighted(o).each(t=>{zM(e,o,t)})},onDehighlightItem:VM}}},getAnchorOverrides:()=>({maxHeightFunction:(e,t)=>{Ic()(e,t-10)}}),fetch:t=>Oe(C(e.fetch,t))}));return f.asSpec()},pI=e=>"separator"===e.type,hI={type:"separator"},fI=(e,t)=>{const o=((e,t)=>{const o=W(e,(e,o)=>(e=>r(e))(o)?""===o?e:"|"===o?e.length>0&&!pI(e[e.length-1])?e.concat([hI]):e:be(t,o.toLowerCase())?e.concat([t[o.toLowerCase()]]):e:e.concat([o]),[]);return o.length>0&&pI(o[o.length-1])&&o.pop(),o})(r(e)?e.split(" "):e,t);return U(o,(e,o)=>{if((e=>be(e,"getSubmenuItems"))(o)){const n=(e=>{const t=fe(e,"value").getOrThunk(()=>Ne("generated-menu-item"));return Ve({value:t},e)})(o),s=((e,t)=>{const o=e.getSubmenuItems(),n=fI(o,t);return{item:e,menus:Ve(n.menus,{[e.value]:n.items}),expansions:Ve(n.expansions,{[e.value]:e.value})}})(n,t);return{menus:Ve(e.menus,s.menus),items:[s.item,...e.items],expansions:Ve(e.expansions,s.expansions)}}return{...e,items:[o,...e.items]}},{menus:{},expansions:{},items:[]})},bI=(e,t,o,n)=>{const s=Ne("primary-menu"),r=fI(e,o.shared.providers.menuItems());if(0===r.items.length)return A.none();const a=(e=>e.search.fold(()=>({searchMode:"no-search"}),e=>({searchMode:"search-with-field",placeholder:e.placeholder})))(n),i=UM(s,r.items,t,o,n.isHorizontalMenu,a),l=(e=>e.search.fold(()=>({searchMode:"no-search"}),e=>({searchMode:"search-with-results"})))(n),c=le(r.menus,(e,n)=>UM(n,e,t,o,!1,l)),d=Ve(c,ga(s,i));return A.from(Cx.tieredData(s,d,r.expansions))},vI=e=>!be(e,"items"),xI="data-value",yI=(e,t,o,n,s)=>V(o,o=>vI(o)?{type:"togglemenuitem",...s?{}:{role:"option"},text:o.text,value:o.value,active:o.value===n,onAction:()=>{mf.setValue(e,o.value),$c(e,JM,{name:t}),_d.focus(e)}}:{type:"nestedmenuitem",text:o.text,getSubmenuItems:()=>yI(e,t,o.items,n,s)}),wI=(e,t)=>se(e,e=>vI(e)?je(e.value===t,e):wI(e.items,t)),SI=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};let o=e.value.toFixed((n=e.unit)in t?t[n]:1);var n;return-1!==o.indexOf(".")&&(o=o.replace(/\.?0*$/,"")),o+e.unit},CI=e=>{const t=/^\s*(\d+(?:\.\d+)?)\s*(|cm|mm|in|px|pt|pc|em|ex|ch|rem|vw|vh|vmin|vmax|%)\s*$/.exec(e);if(null!==t){const e=parseFloat(t[1]),o=t[2];return Ae.value({value:e,unit:o})}return Ae.error(e)},kI=(e,t)=>{const o={"":96,px:96,pt:72,cm:2.54,pc:12,mm:25.4,in:1},n=e=>be(o,e);return e.unit===t?A.some(e.value):n(e.unit)&&n(t)?o[e.unit]===o[t]?A.some(e.value):A.some(e.value/o[e.unit]*o[t]):A.none()},OI=e=>A.none(),_I=(e,t)=>{const o=CI(e).toOptional(),n=CI(t).toOptional();return Ue(o,n,(e,t)=>kI(e,t.unit).map(e=>t.value/e).map(e=>{return o=e,n=t.unit,e=>kI(e,n).map(e=>({value:e*o,unit:n}));var o,n}).getOr(OI)).getOr(OI)},TI=(e,t)=>{const o=e.label.map(e=>KM(e,t)),n=[gp.config({disabled:()=>e.disabled||t.checkUiComponentContext(e.context).shouldDisable}),ZA(()=>t.checkUiComponentContext(e.context)),Im.config({mode:"execution",useEnter:!0!==e.multiline,useControlEnter:!0===e.multiline,execute:e=>(jc(e,oB),A.some(!0))}),wd("textfield-change",[Zc(Aa(),(t,o)=>{$c(t,JM,{name:e.name})}),Zc(ja(),(t,o)=>{$c(t,JM,{name:e.name})})]),iv.config({})],s=e.validation.map(e=>gf.config({getRoot:e=>ho(e.element),invalidClass:"tox-invalid",validator:{validate:t=>{const o=mf.getValue(t),n=e.validator(o);return _e(!0===n?Ae.value(o):Ae.error(n))},validateOnLoad:e.validateOnLoad}})).toArray(),r=e.placeholder.fold(y({}),e=>({placeholder:t.translate(e)})),a=e.inputMode.fold(y({}),e=>({inputmode:e})),i={...e.spellcheck.fold(y({}),e=>({spellcheck:e})),...r,...a,"data-mce-name":e.name},l=sy.parts.field({tag:!0===e.multiline?"textarea":"input",...e.data.map(e=>({data:e})).getOr({}),inputAttributes:i,inputClasses:[e.classname],inputBehaviours:hd(G([n,s])),selectOnFocus:!1,factory:hy}),c=e.multiline?{dom:{tag:"div",classes:["tox-textarea-wrap"]},components:[l]}:l,d=(e.flex?["tox-form__group--stretched"]:[]).concat(e.maximized?["tox-form-group--maximize"]:[]),u=[gp.config({disabled:()=>e.disabled||t.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{sy.getField(e).each(gp.disable)},onEnabled:e=>{sy.getField(e).each(gp.enable)}}),ZA(()=>t.checkUiComponentContext(e.context))];return qM(o,c,d,u)},EI=e=>({isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t),setActive:t=>{const o=e.element;t?(ns(o,"tox-tbtn--enabled"),Yo(o,"aria-pressed",!0)):(rs(o,"tox-tbtn--enabled"),Zo(o,"aria-pressed"))},isActive:()=>as(e.element,"tox-tbtn--enabled"),setTooltip:t=>{$c(e,mI,{text:t})},setText:t=>{$c(e,dI,{text:t})},setIcon:t=>$c(e,uI,{icon:t})}),AI=(e,t,o,n,s=!0,r)=>{const a="bordered"===e.buttonType?["bordered"]:[];return gI({text:e.text,icon:e.icon,tooltip:e.tooltip,ariaLabel:e.tooltip,searchable:e.search.isSome(),role:n,fetch:(t,n)=>{const s={pattern:e.search.isSome()?LM(t):""};e.fetch(t=>{n(bI(t,WO.CLOSE_ON_EXECUTE,o,{isHorizontalMenu:!1,search:e.search}))},s,EI(t))},onSetup:e.onSetup,getApi:e=>EI(e),columns:1,presets:"normal",classes:a,dropdownBehaviours:[...s?[iv.config({})]:[]],context:e.context},t,o.shared,r)},DI=(e,t,o)=>{const n=e=>n=>{const s=!n.isActive();n.setActive(s),e.storage.set(s),o.shared.getSink().each(o=>{t().getOpt(o).each(t=>{zo(t.element),$c(t,tB,{name:e.name,value:e.storage.get()})})})},s=e=>t=>{t.setActive(e.storage.get())};return t=>{t(V(e,e=>{const t=e.text.fold(()=>({}),e=>({text:e}));return{type:e.type,active:!1,...t,context:e.context,onAction:n(e),onSetup:s(e)}}))}},MI=e=>({dom:{tag:"span",classes:["tox-tree__label"],attributes:{"aria-label":e}},components:[zg(e)]}),BI=(e,t,o)=>{e.customStateIcon.each(n=>t.push(RI(n,o.shared.providers.icons,e.customStateIconTooltip.fold(()=>[],e=>[Tv.config(o.shared.providers.tooltips.getConfig({tooltipText:e}))]),["tox-icon-custom-state"])))},II=Ne("leaf-label-event-id"),FI=({leaf:e,onLeafAction:t,visible:o,treeId:n,selectedId:s,backstage:r})=>{const a=e.menu.map(e=>AI(e,"tox-mbtn",r,A.none(),o)),i=[MI(e.title)];return BI(e,i,r),a.each(e=>i.push(e)),Wv.sketch({dom:{tag:"div",classes:["tox-tree--leaf__label","tox-trbtn"].concat(o?["tox-tree--leaf__label--visible"]:[])},components:i,role:"treeitem",action:o=>{t(e.id),o.getSystem().broadcastOn([`update-active-item-${n}`],{value:e.id})},eventOrder:{[Ta()]:[II,"keying"]},buttonBehaviours:hd([...o?[iv.config({})]:[],hv.config({toggleClass:"tox-trbtn--enabled",toggleOnExecute:!1,aria:{mode:"selected"}}),vb.config({channels:{[`update-active-item-${n}`]:{onReceive:(t,o)=>{(o.value===e.id?hv.on:hv.off)(t)}}}}),wd(II,[id((t,o)=>{s.each(o=>{(o===e.id?hv.on:hv.off)(t)})}),Zc(Ta(),(e,t)=>{const o="ArrowLeft"===t.event.raw.code,n="ArrowRight"===t.event.raw.code;o?(Gn(e.element,".tox-tree--directory").each(t=>{e.getSystem().getByDom(t).each(e=>{Yn(t,".tox-tree--directory__label").each(t=>{e.getSystem().getByDom(t).each(_d.focus)})})}),t.stop()):n&&t.stop()})])])})},RI=(e,t,o,n,s)=>VO(e,{tag:"span",classes:["tox-tree__icon-wrap","tox-icon"].concat(n||[]),behaviours:o,attributes:s},t),NI=Ne("directory-label-event-id"),zI=({directory:e,visible:t,noChildren:o,backstage:n})=>{const s=e.menu.map(e=>AI(e,"tox-mbtn",n,A.none())),r=[{dom:{tag:"div",classes:["tox-chevron"]},components:[(a=n.shared.providers.icons,RI("chevron-right",a,[]))]},MI(e.title)];var a;BI(e,r,n),s.each(e=>{r.push(e)});const i=t=>{Gn(t.element,".tox-tree--directory").each(o=>{t.getSystem().getByDom(o).each(o=>{const n=!hv.isOn(o);hv.toggle(o),$c(t,"expand-tree-node",{expanded:n,node:e.id})})})};return Wv.sketch({dom:{tag:"div",classes:["tox-tree--directory__label","tox-trbtn"].concat(t?["tox-tree--directory__label--visible"]:[])},components:r,action:i,eventOrder:{[Ta()]:[NI,"keying"]},buttonBehaviours:hd([...t?[iv.config({})]:[],wd(NI,[Zc(Ta(),(e,t)=>{const n="ArrowRight"===t.event.raw.code,s="ArrowLeft"===t.event.raw.code;n&&o&&t.stop(),(n||s)&&Gn(e.element,".tox-tree--directory").each(o=>{e.getSystem().getByDom(o).each(o=>{!hv.isOn(o)&&n||hv.isOn(o)&&s?(i(e),t.stop()):s&&!hv.isOn(o)&&(Gn(o.element,".tox-tree--directory").each(e=>{Yn(e,".tox-tree--directory__label").each(e=>{o.getSystem().getByDom(e).each(_d.focus)})}),t.stop())})})})])])})},VI=({children:e,onLeafAction:t,visible:o,treeId:n,expandedIds:s,selectedId:r,backstage:a})=>({dom:{tag:"div",classes:["tox-tree--directory__children"]},components:e.map(e=>"leaf"===e.type?FI({leaf:e,selectedId:r,onLeafAction:t,visible:o,treeId:n,backstage:a}):HI({directory:e,expandedIds:s,selectedId:r,onLeafAction:t,labelTabstopping:o,treeId:n,backstage:a})),behaviours:hd([Zb.config({dimension:{property:"height"},closedClass:"tox-tree--directory__children--closed",openClass:"tox-tree--directory__children--open",growingClass:"tox-tree--directory__children--growing",shrinkingClass:"tox-tree--directory__children--shrinking",expanded:o}),ug.config({})])}),LI=Ne("directory-event-id"),HI=({directory:e,onLeafAction:t,labelTabstopping:o,treeId:n,backstage:s,expandedIds:r,selectedId:a})=>{const{children:i}=e,l=ye(r),c=r.includes(e.id);return{dom:{tag:"div",classes:["tox-tree--directory"],attributes:{role:"treeitem"}},components:[zI({directory:e,visible:o,noChildren:0===e.children.length,backstage:s}),VI({children:i,expandedIds:r,selectedId:a,onLeafAction:t,visible:c,treeId:n,backstage:s})],behaviours:hd([wd(LI,[id((e,t)=>{hv.set(e,c)}),Zc("expand-tree-node",(e,t)=>{const{expanded:o,node:n}=t.event;l.set(o?[...l.get(),n]:l.get().filter(e=>e!==n))})]),hv.config({...e.children.length>0?{aria:{mode:"expanded"}}:{},toggleClass:"tox-tree--directory--expanded",onToggled:(e,o)=>{const r=e.components()[1],c=(d=o,i.map(e=>"leaf"===e.type?FI({leaf:e,selectedId:a,onLeafAction:t,visible:d,treeId:n,backstage:s}):HI({directory:e,expandedIds:l.get(),selectedId:a,onLeafAction:t,labelTabstopping:d,treeId:n,backstage:s})));var d;o?Zb.grow(r):Zb.shrink(r),ug.set(r,c)}})])}},PI=Ne("tree-event-id"),UI=(e,t,o=[],n,s,r,a)=>{const i=t.fold(()=>({}),e=>({action:e})),l={buttonBehaviours:hd([HA(()=>!e.enabled||a.checkUiComponentContext(e.context).shouldDisable),ZA(()=>a.checkUiComponentContext(e.context)),iv.config({}),...r.map(e=>Tv.config(a.tooltips.getConfig({tooltipText:a.translate(e)}))).toArray(),wd("button press",[Qc("click")])].concat(o)),eventOrder:{click:["button press","alloy.base.behaviour"],mousedown:["button press","alloy.base.behaviour"]},...i},c=Ve(l,{dom:n});return Ve(c,{components:s})},WI=(e,t,o,n=[],s)=>{const r={tag:"button",classes:["tox-tbtn"],attributes:{...e.tooltip.map(e=>({"aria-label":o.translate(e)})).getOr({}),"data-mce-name":s}},a=e.icon.map(e=>iI(e,o.icons)),i=oD([a]);return UI(e,t,n,r,i,e.tooltip,o)},jI=e=>{switch(e){case"primary":return["tox-button"];case"toolbar":return["tox-tbtn"];default:return["tox-button","tox-button--secondary"]}},$I=(e,t,o,n=[],s=[])=>{const r=o.translate(e.text),a=e.icon.map(e=>iI(e,o.icons)),i=[a.getOrThunk(()=>zg(r))],l=e.buttonType.getOr(e.primary||e.borderless?"primary":"secondary"),c={tag:"button",classes:[...jI(l),...a.isSome()?["tox-button--icon"]:[],...e.borderless?["tox-button--naked"]:[],...s],attributes:{"aria-label":r,"data-mce-name":e.text}},d=e.icon.map(y(r));return UI(e,t,n,c,i,d,o)},GI=(e,t,o,n=[],s=[])=>{const r=$I(e,A.some(t),o,n,s);return Wv.sketch(r)},qI=(e,t)=>o=>{"custom"===t?$c(o,tB,{name:e,value:{}}):"submit"===t?jc(o,oB):"cancel"===t?jc(o,eB):console.error("Unknown button type: ",t)},YI=(e,t,o)=>{if(((e,t)=>"menu"===t)(0,t)){const t=()=>r,n=e,s={...e,buttonType:"default",type:"menubutton",search:A.none(),onSetup:t=>(t.setEnabled(e.enabled),b),fetch:DI(n.items,t,o)},r=Dv(AI(s,"tox-tbtn",o,A.none(),!0,e.text.or(e.tooltip).getOrUndefined()));return r.asSpec()}if(((e,t)=>"custom"===t||"cancel"===t||"submit"===t)(0,t)){const n=qI(e.name,t),s={...e,context:"cancel"===t?"any":e.context,borderless:!1};return GI(s,n,o.shared.providers,[])}if(((e,t)=>"togglebutton"===t)(0,t))return((e,t,o)=>{const n=e.icon.map(e=>lI(e,t.icons)).map(Dv),s=e.buttonType.getOr(e.primary?"primary":"secondary"),r={...e,name:e.name??"",primary:"primary"===s,tooltip:e.tooltip,enabled:e.enabled??!1,borderless:!1},a=r.tooltip.or(e.text).map(e=>({"aria-label":t.translate(e)})).getOr({}),i=jI(s??"secondary"),l=e.icon.isSome()&&e.text.isSome(),c={tag:"button",classes:[...i.concat(e.icon.isSome()?["tox-button--icon"]:[]),...e.active?["tox-button--enabled"]:[],...l?["tox-button--icon-and-text"]:[]],attributes:{...a,...g(o)?{"data-mce-name":o}:{}}},d=t.translate(e.text.getOr("")),u=zg(d),m=[...oD([n.map(e=>e.asSpec())]),...e.text.isSome()?[u]:[]],p=UI(r,A.some(o=>{$c(o,tB,{name:e.name,value:{setIcon:e=>{n.map(n=>n.getOpt(o).each(o=>{ug.set(o,[lI(e,t.icons)])}))}}})}),[],c,m,e.tooltip,t);return Wv.sketch(p)})(e,o.shared.providers,e.text.or(e.tooltip).getOrUndefined());throw console.error("Unknown footer button type: ",t),new Error("Unknown footer button type")},XI={type:"separator"},KI=e=>({type:"menuitem",value:e.url,text:e.title,meta:{attach:e.attach},onAction:b}),JI=(e,t)=>({type:"menuitem",value:t,text:e,meta:{attach:void 0},onAction:b}),QI=(e,t)=>(e=>V(e,KI))(((e,t)=>P(t,t=>t.type===e))(e,t)),ZI=e=>QI("header",e.targets),eF=e=>QI("anchor",e.targets),tF=e=>A.from(e.anchorTop).map(e=>JI("<top>",e)).toArray(),oF=e=>A.from(e.anchorBottom).map(e=>JI("<bottom>",e)).toArray(),nF=(e,t)=>{const o=e.toLowerCase();return P(t,e=>{const t=void 0!==e.meta&&void 0!==e.meta.text?e.meta.text:e.text,n=e.value??"";return Je(t.toLowerCase(),o)||Je(n.toLowerCase(),o)})},sF=Ne("aria-invalid"),rF=e=>(t,o,n,s,r)=>fe(o,"name").fold(()=>e(o,s,A.none(),r),a=>t.field(a,e(o,s,fe(n,a),r))),aF={bar:rF((e,t)=>((e,t)=>({dom:{tag:"div",classes:["tox-bar","tox-form__controls-h-stack"]},components:V(e.items,t.interpreter)}))(e,t.shared)),collection:rF((e,t,o)=>iB(e,t.shared.providers,o)),alertbanner:rF((e,t)=>((e,t)=>{const o=RO(e.icon,t.icons);return bh.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"],innerHtml:e.url?void 0:o},components:e.url?[Wv.sketch({dom:{tag:"button",classes:["tox-button","tox-button--naked","tox-button--icon"],innerHtml:o,attributes:{title:t.translate(e.iconTooltip)}},action:t=>$c(t,tB,{name:"alert-banner",value:e.url}),buttonBehaviours:hd([NO()])})]:void 0},{dom:{tag:"div",classes:["tox-notification__body"],innerHtml:t.translate(e.text)}}]})})(e,t.shared.providers)),input:rF((e,t,o)=>((e,t,o)=>TI({name:e.name,multiline:!1,label:e.label,inputMode:e.inputMode,placeholder:e.placeholder,flex:!1,disabled:!e.enabled,classname:"tox-textfield",validation:A.none(),maximized:e.maximized,data:o,context:e.context,spellcheck:A.none()},t))(e,t.shared.providers,o)),textarea:rF((e,t,o)=>((e,t,o)=>TI({name:e.name,multiline:!0,label:e.label,inputMode:A.none(),placeholder:e.placeholder,flex:!0,disabled:!e.enabled,classname:"tox-textarea",validation:A.none(),maximized:e.maximized,data:o,context:e.context,spellcheck:e.spellcheck},t))(e,t.shared.providers,o)),label:rF((e,t,o,n)=>((e,t,o)=>{const n="tox-label",s="center"===e.align?[`${n}--center`]:[],r="end"===e.align?[`${n}--end`]:[],a=Dv({dom:{tag:"label",classes:[n,...s,...r]},components:[zg(t.providers.translate(e.label))]}),i=V(e.items,t.interpreter);return{dom:{tag:"div",classes:["tox-form__group"]},components:[a.asSpec(),...i],behaviours:hd([uB(),ug.config({}),(l=A.none(),fB(l,nn,sn)),Im.config({mode:"acyclic"}),wd("label",[id(t=>{e.for.each(e=>{o(e).each(e=>{a.getOpt(t).each(t=>{const o=Ko(e.element,"id")??Ne("form-field");Yo(e.element,"id",o),Yo(t.element,"for",o)})})})})])])};var l})(e,t.shared,n)),iframe:(aR=(e,t,o)=>((e,t,o)=>{const n="tox-dialog__iframe",s=e.transparent?[]:[`${n}--opaque`],r=e.border?["tox-navobj-bordered"]:[],a={...e.label.map(e=>({title:e})).getOr({}),...o.map(e=>({srcdoc:e})).getOr({}),...e.sandboxed?{sandbox:"allow-scripts allow-same-origin"}:{}},i=((e,t)=>{const o=ye(e.getOr(""));return{getValue:e=>o.get(),setValue:(e,n)=>{if(o.get()!==n){const o=e.element,s=()=>Yo(o,"srcdoc",n);t?tI.fold(y(eI),e=>e.throttle)(o,n,s):s()}o.set(n)}}})(o,e.streamContent),l=e.label.map(e=>KM(e,t)),c=sy.parts.field({factory:{sketch:e=>zB(A.from(r),{uid:e.uid,dom:{tag:"iframe",attributes:a,classes:[n,...s]},behaviours:hd([iv.config({}),_d.config({}),hB(o,i.getValue,i.setValue),vb.config({channels:{[GB]:{onReceive:(e,t)=>{t.newFocus.each(t=>{ho(e.element).each(o=>{(wt(e.element,t)?ns:rs)(o,"tox-navobj-bordered-focus")})})}}}})])})}});return qM(l,c,["tox-form__group--stretched"],[])})(e,t.shared.providers,o),(e,t,o,n,s)=>{const r=Ve(t,{source:"dynamic"});return rF(aR)(e,r,o,n,s)}),button:rF((e,t)=>((e,t)=>{const o=qI(e.name,"custom");return n=A.none(),s=sy.parts.field({factory:Wv,...$I(e,A.some(o),t,[bB(""),uB()])}),qM(n,s,[],[]);var n,s})(e,t.shared.providers)),checkbox:rF((e,t,o)=>((e,t,o)=>{const n=e=>(e.element.dom.click(),A.some(!0)),s=sy.parts.field({factory:{sketch:w},dom:{tag:"input",classes:["tox-checkbox__input"],attributes:{type:"checkbox"}},behaviours:hd([uB(),gp.config({disabled:()=>!e.enabled||t.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{ho(e.element).each(e=>ns(e,"tox-checkbox--disabled"))},onEnabled:e=>{ho(e.element).each(e=>rs(e,"tox-checkbox--disabled"))}}),iv.config({}),_d.config({}),fB(o,Qn,Jn),Im.config({mode:"special",onEnter:n,onSpace:n,stopSpaceKeyup:!0}),wd("checkbox-events",[Zc(Da(),(t,o)=>{$c(t,JM,{name:e.name})})])])}),r=sy.parts.label({dom:{tag:"span",classes:["tox-checkbox__label"]},components:[zg(t.translate(e.label))],behaviours:hd([Ev.config({})])}),a=e=>VO("checked"===e?"selected":"unselected",{tag:"span",classes:["tox-icon","tox-checkbox-icon__"+e]},t.icons),i=Dv({dom:{tag:"div",classes:["tox-checkbox__icons"]},components:[a("checked"),a("unchecked")]});return sy.sketch({dom:{tag:"label",classes:["tox-checkbox"]},components:[s,i.asSpec(),r],fieldBehaviours:hd([gp.config({disabled:()=>!e.enabled||t.checkUiComponentContext(e.context).shouldDisable}),ZA(()=>t.checkUiComponentContext(e.context))])})})(e,t.shared.providers,o)),colorinput:rF((e,t,o)=>((e,t,o,n)=>{const s=sy.parts.field({factory:hy,inputClasses:["tox-textfield"],data:n,onSetValue:e=>gf.run(e).get(b),inputBehaviours:hd([gp.config({disabled:()=>t.providers.isDisabled()||t.providers.checkUiComponentContext(e.context).shouldDisable}),ZA(()=>t.providers.checkUiComponentContext(e.context)),iv.config({}),gf.config({invalidClass:"tox-textbox-field-invalid",getRoot:e=>ho(e.element),notify:{onValid:e=>{const t=mf.getValue(e);$c(e,lB,{color:t})}},validator:{validateOnLoad:!1,validate:e=>{const t=mf.getValue(e);if(0===t.length)return _e(Ae.value(!0));{const e=it("span");gn(e,"background-color",t);const o=vn(e,"background-color").fold(()=>Ae.error("blah"),e=>Ae.value(t));return _e(o)}}}})]),selectOnFocus:!1}),r=e.label.map(e=>KM(e,t.providers)),a=(e,t)=>{$c(e,cB,{value:t})},i=Dv(((e,t)=>Hx.sketch({dom:e.dom,components:e.components,toggleClass:"mce-active",dropdownBehaviours:hd([PA(()=>t.providers.isDisabled()||t.providers.checkUiComponentContext(e.context).shouldDisable),ZA(()=>t.providers.checkUiComponentContext(e.context)),Ev.config({}),iv.config({})]),layouts:e.layouts,sandboxClasses:["tox-dialog__popups"],lazySink:t.getSink,fetch:o=>Oe(t=>e.fetch(t)).map(n=>A.from(WM(Ve(TM(Ne("menu-value"),n,t=>{e.onItemAction(o,t)},e.columns,e.presets,WO.CLOSE_ON_EXECUTE,T,t.providers),{movement:AM(e.columns,e.presets)})))),parts:{menu:i_(0,0,e.presets)}}))({dom:{tag:"span",attributes:{"aria-label":t.providers.translate("Color swatch")}},layouts:{onRtl:()=>[Ql,Jl,oc],onLtr:()=>[Jl,Ql,oc]},components:[],fetch:xM(o.getColors(e.storageKey),e.storageKey,o.hasCustomColors()),columns:o.getColorCols(e.storageKey),presets:"color",onItemAction:(t,n)=>{i.getOpt(t).each(t=>{"custom"===n?o.colorPicker(o=>{o.fold(()=>jc(t,dB),o=>{a(t,o),oM(e.storageKey,o)})},"#ffffff"):a(t,"remove"===n?"":n)})},context:e.context},t));return sy.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:r.toArray().concat([{dom:{tag:"div",classes:["tox-color-input"]},components:[s,i.asSpec()]}]),fieldBehaviours:hd([wd("form-field-events",[Zc(lB,(t,o)=>{i.getOpt(t).each(e=>{gn(e.element,"background-color",o.event.color)}),$c(t,JM,{name:e.name})}),Zc(cB,(e,t)=>{sy.getField(e).each(o=>{mf.setValue(o,t.event.value),Xg.getCurrent(e).each(_d.focus)})}),Zc(dB,(e,t)=>{sy.getField(e).each(t=>{Xg.getCurrent(e).each(_d.focus)})})])])})})(e,t.shared,t.colorinput,o)),colorpicker:rF((e,t,o)=>((e,t,o)=>{const n=e=>"tox-"+e,s=TB((e=>t=>r(t)?e.translate(EB[t]):e.translate(t))(t),n,t.tooltips.getConfig,(e,o,n=e,s=e)=>VO(n,{tag:"div",classes:["tox-icon","tox-control-wrap__status-icon-"+e],attributes:{title:t.translate(s),"aria-live":"polite",...o.fold(()=>({}),e=>({id:e}))}},t.icons)),a=Dv(s.sketch({dom:{tag:"div",classes:[n("color-picker-container")],attributes:{role:"presentation"}},onValidHex:e=>{$c(e,tB,{name:"hex-valid",value:!0})},onInvalidHex:e=>{$c(e,tB,{name:"hex-valid",value:!1})}}));return{dom:{tag:"div"},components:[a.asSpec()],behaviours:hd([hB(o,e=>{const t=a.get(e);return Xg.getCurrent(t).bind(e=>mf.getValue(e).hex).map(e=>"#"+Ke(e,"#")).getOr("")},(e,t)=>{const o=A.from(/^#([a-fA-F0-9]{3}(?:[a-fA-F0-9]{3})?)/.exec(t)).bind(e=>ee(e,1)),n=a.get(e);Xg.getCurrent(n).fold(()=>{console.log("Can not find form")},e=>{mf.setValue(e,{hex:o.getOr("")}),$x.getField(e,"hex").each(e=>{jc(e,Aa())})})}),uB()])}})(0,t.shared.providers,o)),dropzone:rF((e,t,o)=>IB(e,t.shared.providers,o)),grid:rF((e,t)=>((e,t)=>({dom:{tag:"div",classes:["tox-form__grid",`tox-form__grid--${e.columns}col`]},components:V(e.items,t.interpreter)}))(e,t.shared)),listbox:rF((e,t,o)=>((e,t,o)=>{const n=R(e.items,e=>!vI(e)),s=t.shared.providers,r=o.bind(t=>wI(e.items,t)).orThunk(()=>te(e.items).filter(vI)),a=e.label.map(e=>KM(e,s)),i=sy.parts.field({dom:{},factory:{sketch:o=>gI({context:e.context,uid:o.uid,text:r.map(e=>e.text),icon:A.none(),tooltip:A.none(),role:je(!n,"combobox"),...n?{}:{listRole:"listbox"},ariaLabel:e.label,fetch:(o,s)=>{const r=yI(o,e.name,e.items,mf.getValue(o),n);s(bI(r,WO.CLOSE_ON_EXECUTE,t,{isHorizontalMenu:!1,search:A.none()}))},onSetup:y(b),getApi:y({}),columns:1,presets:"normal",classes:[],dropdownBehaviours:[iv.config({}),hB(r.map(e=>e.value),e=>Ko(e.element,xI),(t,o)=>{wI(e.items,o).each(e=>{Yo(t.element,xI,e.value),$c(t,dI,{text:e.text})})})]},"tox-listbox",t.shared)}}),l={dom:{tag:"div",classes:["tox-listboxfield"]},components:[i]};return sy.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:G([a.toArray(),[l]]),fieldBehaviours:hd([gp.config({disabled:()=>!e.enabled||s.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{sy.getField(e).each(gp.disable)},onEnabled:e=>{sy.getField(e).each(gp.enable)}})])})})(e,t,o)),selectbox:rF((e,t,o)=>((e,t,o)=>{const n=V(e.items,e=>({text:t.translate(e.text),value:e.value})),s=e.label.map(e=>KM(e,t)),r=sy.parts.field({dom:{},...o.map(e=>({data:e})).getOr({}),selectAttributes:{size:e.size},options:n,factory:cy,selectBehaviours:hd([gp.config({disabled:()=>!e.enabled||t.checkUiComponentContext(e.context).shouldDisable}),iv.config({}),wd("selectbox-change",[Zc(Da(),(t,o)=>{$c(t,JM,{name:e.name})})])])}),a=e.size>1?A.none():A.some(VO("chevron-down",{tag:"div",classes:["tox-selectfield__icon-js"]},t.icons)),i={dom:{tag:"div",classes:["tox-selectfield"]},components:G([[r],a.toArray()])};return sy.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:G([s.toArray(),[i]]),fieldBehaviours:hd([gp.config({disabled:()=>!e.enabled||t.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{sy.getField(e).each(gp.disable)},onEnabled:e=>{sy.getField(e).each(gp.enable)}}),ZA(()=>t.checkUiComponentContext(e.context))])})})(e,t.shared.providers,o)),sizeinput:rF((e,t)=>((e,t)=>{let o=OI;const n=Ne("ratio-event"),s=e=>VO(e,{tag:"span",classes:["tox-icon","tox-lock-icon__"+e]},t.icons),r=()=>!e.enabled||t.checkUiComponentContext(e.context).shouldDisable,a=ZA(()=>t.checkUiComponentContext(e.context)),i=e.label.getOr("Constrain proportions"),l=t.translate(i),c=ly.parts.lock({dom:{tag:"button",classes:["tox-lock","tox-button","tox-button--naked","tox-button--icon"],attributes:{"aria-label":l,"data-mce-name":i}},components:[s("lock"),s("unlock")],buttonBehaviours:hd([gp.config({disabled:r}),a,iv.config({}),Tv.config(t.tooltips.getConfig({tooltipText:l}))])}),d=e=>({dom:{tag:"div",classes:["tox-form__group"]},components:e}),u=t=>sy.parts.field({factory:hy,inputClasses:["tox-textfield"],inputBehaviours:hd([gp.config({disabled:r}),a,iv.config({}),wd("size-input-events",[Zc(Oa(),(e,o)=>{$c(e,n,{isField1:t})}),Zc(Da(),(t,o)=>{$c(t,JM,{name:e.name})})])]),selectOnFocus:!1}),m=e=>({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e))]}),g=ly.parts.field1(d([sy.parts.label(m("Width")),u(!0)])),p=ly.parts.field2(d([sy.parts.label(m("Height")),u(!1)]));return ly.sketch({dom:{tag:"div",classes:["tox-form__group"]},components:[{dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:[g,p,d([m("\xa0"),c])]}],field1Name:"width",field2Name:"height",locked:!0,markers:{lockClass:"tox-locked"},onLockedChange:(e,t,n)=>{CI(mf.getValue(e)).each(e=>{o(e).each(e=>{mf.setValue(t,SI(e))})})},coupledFieldBehaviours:hd([gp.config({disabled:r,onDisabled:e=>{ly.getField1(e).bind(sy.getField).each(gp.disable),ly.getField2(e).bind(sy.getField).each(gp.disable),ly.getLock(e).each(gp.disable)},onEnabled:e=>{ly.getField1(e).bind(sy.getField).each(gp.enable),ly.getField2(e).bind(sy.getField).each(gp.enable),ly.getLock(e).each(gp.enable)}}),ZA(()=>t.checkUiComponentContext("mode:design")),wd("size-input-events2",[Zc(n,(e,t)=>{const n=t.event.isField1,s=n?ly.getField1(e):ly.getField2(e),r=n?ly.getField2(e):ly.getField1(e),a=s.map(mf.getValue).getOr(""),i=r.map(mf.getValue).getOr("");o=_I(a,i)})])])})})(e,t.shared.providers)),slider:rF((e,t,o)=>((e,t,o)=>{const n=nS.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e.label))]}),s=nS.parts.spectrum({dom:{tag:"div",classes:["tox-slider__rail"],attributes:{role:"presentation"}}}),r=nS.parts.thumb({dom:{tag:"div",classes:["tox-slider__handle"],attributes:{role:"presentation"}}});return nS.sketch({dom:{tag:"div",classes:["tox-slider"],attributes:{role:"presentation"}},model:{mode:"x",minX:e.min,maxX:e.max,getInitialValue:y(o.getOrThunk(()=>(Math.abs(e.max)-Math.abs(e.min))/2))},components:[n,s,r],sliderBehaviours:hd([uB(),_d.config({})]),onChoose:(t,o,n)=>{$c(t,JM,{name:e.name,value:n})},onChange:(t,o,n)=>{$c(t,JM,{name:e.name,value:n})}})})(e,t.shared.providers,o)),urlinput:rF((e,t,o)=>((e,t,o,n)=>{const s=t.shared.providers,r=t=>{const n=mf.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:{type:"url"},minChars:0,responseTime:0,fetch:n=>{const s=((e,t,o)=>{const n=mf.getValue(t),s=n?.meta?.text??n.value;return o.getLinkInformation().fold(()=>[],t=>{const n=nF(s,(e=>V(e,e=>JI(e,e)))(o.getHistory(e)));return"file"===e?(r=[n,nF(s,ZI(t)),nF(s,G([tF(t),eF(t),oF(t)]))],W(r,(e,t)=>0===e.length||0===t.length?e.concat(t):e.concat(XI,t),[])):n;var r})})(e.filetype,n,o),r=bI(s,WO.BUBBLE_TO_SANDBOX,t,{isHorizontalMenu:!1,search:A.none()});return _e(r)},getHotspot:e=>g.getOpt(e),onSetValue:(e,t)=>{e.hasConfigured(gf)&&gf.run(e).get(b)},typeaheadBehaviours:hd([...o.getValidationHandler().map(t=>gf.config({getRoot:e=>ho(e.element),invalidClass:"tox-control-wrap--status-invalid",notify:{onInvalid:(e,t)=>{c.getOpt(e).each(e=>{Yo(e.element,"title",s.translate(t))})}},validator:{validate:o=>{const n=mf.getValue(o);return Me(s=>{t({type:e.filetype,url:n.value},e=>{if("invalid"===e.status){Yo(o.element,"aria-errormessage",sF);const t=Ae.error(e.message);s(t)}else{Zo(o.element,"aria-errormessage");const t=Ae.value(e.message);s(t)}})})},validateOnLoad:!1}})).toArray(),gp.config({disabled:()=>!e.enabled||s.checkUiComponentContext(e.context).shouldDisable}),iv.config({}),wd("urlinput-events",[Zc(Aa(),t=>{const o=ds(t.element),n=o.trim();n!==o&&us(t.element,n),"file"===e.filetype&&$c(t,JM,{name:e.name})}),Zc(Da(),t=>{$c(t,JM,{name:e.name}),r(t)}),Zc(ja(),t=>{$c(t,JM,{name:e.name}),r(t)})])]),eventOrder:{[Aa()]:["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:i_(0,0,"normal")},onExecute:(e,t,o)=>{$c(t,oB,{})},onItemExecute:(t,o,n,s)=>{r(t),$c(t,JM,{name:e.name})}},i=sy.parts.field({...a,factory:GS}),l=e.label.map(e=>KM(e,s)),c=Dv(((e,t,o=e,n=e)=>VO(o,{tag:"div",classes:["tox-icon","tox-control-wrap__status-icon-"+e],attributes:{title:s.translate(n),"aria-live":"polite",...t.fold(()=>({}),e=>({id:e}))}},s.icons))("invalid",A.some(sF),"warning")),d=Dv({dom:{tag:"div",classes:["tox-control-wrap__status-icon-wrap"]},components:[c.asSpec()]}),u=o.getUrlPicker(e.filetype),m=Ne("browser.url.event"),g=Dv({dom:{tag:"div",classes:["tox-control-wrap"]},components:[i,d.asSpec()],behaviours:hd([gp.config({disabled:()=>!e.enabled||s.checkUiComponentContext(e.context).shouldDisable})])}),p=Dv(GI({context:e.context,name:e.name,icon:A.some("browse"),text:e.picker_text.or(e.label).getOr(""),enabled:e.enabled,primary:!1,buttonType:A.none(),borderless:!0},e=>jc(e,m),s,[],["tox-browse-url"]));return sy.sketch({dom:XM([]),components:l.toArray().concat([{dom:{tag:"div",classes:["tox-form__controls-h-stack"]},components:G([[g.asSpec()],u.map(()=>p.asSpec()).toArray()])}]),fieldBehaviours:hd([gp.config({disabled:()=>!e.enabled||s.checkUiComponentContext(e.context).shouldDisable,onDisabled:e=>{sy.getField(e).each(gp.disable),p.getOpt(e).each(gp.disable)},onEnabled:e=>{sy.getField(e).each(gp.enable),p.getOpt(e).each(gp.enable)}}),ZA(()=>s.checkUiComponentContext(e.context)),wd("url-input-events",[Zc(m,t=>{Xg.getCurrent(t).each(o=>{const n=mf.getValue(o),s={fieldname:e.name,...n};u.each(n=>{n(s).get(n=>{mf.setValue(o,n),$c(t,JM,{name:e.name})})})})})])])})})(e,t,t.urlinput,o)),customeditor:rF(e=>{const t=Ye(),o=Dv({dom:{tag:e.tag}}),n=Ye(),s=!DB(e)&&e.onFocus.isSome()?[_d.config({onFocus:t=>{e.onFocus.each(e=>{e(t.element.dom)})}}),iv.config({})]:[];return{dom:{tag:"div",classes:["tox-custom-editor"]},behaviours:hd([wd("custom-editor-events",[id(s=>{o.getOpt(s).each(o=>{(DB(e)?e.init(o.element.dom):AB.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)})})})]),hB(A.none(),()=>t.get().fold(()=>n.get().getOr(""),e=>e.getValue()),(e,o)=>{t.get().fold(()=>n.set(o),e=>e.setValue(o))}),uB()].concat(s)),components:[o.asSpec()]}}),htmlpanel:rF((e,t)=>((e,t)=>{const o=["tox-form__group",...e.stretched?["tox-form__group--stretched"]:[]],n=wd("htmlpanel",[id(t=>{e.onInit(t.element.dom)})]);return"presentation"===e.presets?bh.sketch({dom:{tag:"div",classes:o,innerHtml:e.html},containerBehaviours:hd([Tv.config({...t.tooltips.getConfig({tooltipText:"",onShow:e=>{Xn(e.element,"[data-mce-tooltip]:hover").orThunk(()=>Po(e.element)).each(o=>{Jo(o,"data-mce-tooltip").each(o=>{Tv.setComponents(e,t.tooltips.getComponents({tooltipText:o}))})})}}),mode:"children-normal",anchor:e=>({type:"node",node:Xn(e.element,"[data-mce-tooltip]:hover").orThunk(()=>Po(e.element).filter(e=>Jo(e,"data-mce-tooltip").isSome())),root:e.element,layouts:{onLtr:y([oc,tc,Jl,Zl,Ql,ec]),onRtl:y([oc,tc,Jl,Zl,Ql,ec])},bubble:Ml(0,-2,{})})}),n])}):bh.sketch({dom:{tag:"div",classes:o,innerHtml:e.html,attributes:{role:"document"}},containerBehaviours:hd([iv.config({}),_d.config({}),n])})})(e,t.shared.providers)),imagepreview:rF((e,t,o)=>((e,t)=>{const o=ye(t.getOr({url:""})),n=Dv({dom:{tag:"img",classes:["tox-imagepreview__image"],attributes:t.map(e=>({src:e.url})).getOr({})}}),s=Dv({dom:{tag:"div",classes:["tox-imagepreview__container"],attributes:{role:"presentation"}},components:[n.asSpec()]}),r={};e.height.each(e=>r.height=e);const a=t.map(e=>({url:e.url,zoom:A.from(e.zoom),cachedWidth:A.from(e.cachedWidth),cachedHeight:A.from(e.cachedHeight)}));return{dom:{tag:"div",classes:["tox-imagepreview"],styles:r,attributes:{role:"presentation"}},components:[s.asSpec()],behaviours:hd([uB(),hB(a,()=>o.get(),(e,t)=>{const r={url:t.url};t.zoom.each(e=>r.zoom=e),t.cachedWidth.each(e=>r.cachedWidth=e),t.cachedHeight.each(e=>r.cachedHeight=e),o.set(r);const a=()=>{const{cachedWidth:t,cachedHeight:o,zoom:n}=r;if(!u(t)&&!u(o)){if(u(n)){const n=((e,t,o)=>{const n=An(e),s=On(e);return Math.min(n/t,s/o,1)})(e.element,t,o);r.zoom=n}const a=((e,t,o,n,s)=>{const r=o*s,a=n*s,i=Math.max(0,e/2-r/2),l=Math.max(0,t/2-a/2);return{left:i.toString()+"px",top:l.toString()+"px",width:r.toString()+"px",height:a.toString()+"px"}})(An(e.element),On(e.element),t,o,r.zoom);s.getOpt(e).each(e=>{pn(e.element,a)})}};n.getOpt(e).each(o=>{const n=o.element;t.url!==Ko(n,"src")&&(Yo(n,"src",t.url),rs(e.element,"tox-imagepreview__loaded")),a(),rn(n).then(t=>{e.getSystem().isConnected()&&(ns(e.element,"tox-imagepreview__loaded"),r.cachedWidth=t.dom.naturalWidth,r.cachedHeight=t.dom.naturalHeight,a())})})})])}})(e,o)),table:rF((e,t)=>((e,t)=>{const o=e=>({dom:{tag:"td",innerHtml:t.translate(e)}});return{dom:{tag:"table",classes:["tox-dialog__table"]},components:[(s=e.header,{dom:{tag:"thead"},components:[{dom:{tag:"tr"},components:V(s,e=>({dom:{tag:"th",innerHtml:t.translate(e)}}))}]}),(n=e.cells,{dom:{tag:"tbody"},components:V(n,e=>({dom:{tag:"tr"},components:V(e,o)}))})],behaviours:hd([iv.config({}),_d.config({})])};var n,s})(e,t.shared.providers)),tree:rF((e,t)=>((e,t)=>{const o=e.onLeafAction.getOr(b),n=e.onToggleExpand.getOr(b),s=e.defaultExpandedIds,r=ye(s),a=ye(e.defaultSelectedId),i=Ne("tree-id"),l=(n,s)=>e.items.map(e=>"leaf"===e.type?FI({leaf:e,selectedId:n,onLeafAction:o,visible:!0,treeId:i,backstage:t}):HI({directory:e,selectedId:n,onLeafAction:o,expandedIds:s,labelTabstopping:!0,treeId:i,backstage:t}));return{dom:{tag:"div",classes:["tox-tree"],attributes:{role:"tree"}},components:l(a.get(),r.get()),behaviours:hd([Im.config({mode:"flow",selector:".tox-tree--leaf__label--visible, .tox-tree--directory__label--visible",cycles:!1}),wd(PI,[Zc("expand-tree-node",(e,t)=>{const{expanded:o,node:s}=t.event;r.set(o?[...r.get(),s]:r.get().filter(e=>e!==s)),n(r.get(),{expanded:o,node:s})})]),vb.config({channels:{[`update-active-item-${i}`]:{onReceive:(e,t)=>{a.set(A.some(t.value)),ug.set(e,l(A.some(t.value),r.get()))}}}}),ug.config({})])}})(e,t)),panel:rF((e,t)=>((e,t)=>({dom:{tag:"div",classes:e.classes},components:V(e.items,t.shared.interpreter)}))(e,t))},iF={field:(e,t)=>t,record:y([])},lF=(e,t,o,n,s)=>{const r=Ve(n,{shared:{interpreter:t=>cF(e,t,o,r,s)}});return cF(e,t,o,r,s)},cF=(e,t,o,n,s)=>fe(aF,t.type).fold(()=>(console.error(`Unknown factory type "${t.type}", defaulting to container: `,t),t),r=>r(e,t,o,n,s)),dF=(e,t,o,n)=>cF(iF,e,t,o,n),uF={valignCentre:[],alignCentre:[],alignLeft:[],alignRight:[],right:[],left:[],bottom:[],top:[]},mF=(e,t,o)=>{const n={maxHeightFunction:Fc()};return()=>o()?{type:"node",root:_o(Oo(e())),node:A.from(e()),bubble:Ml(12,12,uF),layouts:{onRtl:()=>[Cc],onLtr:()=>[Sc]},overrides:n}:{type:"hotspot",hotspot:t(),bubble:Ml(-12,12,uF),layouts:{onRtl:()=>[Jl,Ql,oc],onLtr:()=>[Ql,Jl,oc]},overrides:n}},gF=(e,t,o,n)=>{const s={maxHeightFunction:Fc()};return()=>n()?{type:"node",root:_o(Oo(t())),node:A.from(t()),bubble:Ml(12,12,uF),layouts:{onRtl:()=>[kc],onLtr:()=>[kc]},overrides:s}:e?{type:"node",root:_o(Oo(t())),node:A.from(t()),bubble:Ml(0,-_n(t()),uF),layouts:{onRtl:()=>[tc],onLtr:()=>[tc]},overrides:s}:{type:"hotspot",hotspot:o(),bubble:Ml(0,0,uF),layouts:{onRtl:()=>[tc],onLtr:()=>[tc]},overrides:s}},pF=(e,t,o)=>()=>o()?{type:"node",root:_o(Oo(e())),node:A.from(e()),layouts:{onRtl:()=>[kc],onLtr:()=>[kc]}}:{type:"hotspot",hotspot:t(),layouts:{onRtl:()=>[oc],onLtr:()=>[oc]}},hF=(e,t)=>()=>({type:"selection",root:t(),getSelection:()=>{const t=e.selection.getRng(),o=e.model.table.getSelectedCells();if(o.length>1){const e=o[0],t=o[o.length-1],n={firstCell:ct(e),lastCell:ct(t)};return A.some(n)}return A.some(Cs.range(ct(t.startContainer),t.startOffset,ct(t.endContainer),t.endOffset))}}),fF=e=>t=>({type:"node",root:e(),node:t}),bF=(e,t,o,n)=>{const s=ok(e),r=()=>ct(e.getBody()),a=()=>ct(e.getContentAreaContainer()),i=()=>s||!n();return{inlineDialog:mF(a,t,i),inlineBottomDialog:gF(e.inline,a,o,i),banner:pF(a,t,i),cursor:hF(e,r),node:fF(r)}},vF=e=>(t,o)=>{_M(e)(t,o)},xF=e=>()=>mM(e),yF=e=>t=>lM(e,t),wF=e=>t=>uM(e,t),SF=e=>()=>BC(e),CF=e=>ve(e,"items"),kF=e=>ve(e,"format"),OF=[{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"}]}],_F=e=>W(e,(e,t)=>{if(be(t,"items")){const o=_F(t.items);return{customFormats:e.customFormats.concat(o.customFormats),formats:e.formats.concat([{title:t.title,items:o.formats}])}}if(be(t,"inline")||(e=>be(e,"block"))(t)||(e=>be(e,"selector"))(t)){const o=`custom-${r(t.name)?t.name:t.title.toLowerCase()}`;return{customFormats:e.customFormats.concat([{name:o,format:t}]),formats:e.formats.concat([{title:t.title,format:o,icon:t.icon}])}}return{...e,formats:e.formats.concat(t)}},{customFormats:[],formats:[]}),TF=e=>uC(e).map(t=>{const o=((e,t)=>{const o=_F(t),n=t=>{L(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})(e,t);return mC(e)?OF.concat(o):o}).getOr(OF),EF=(e,t,o)=>({...e,type:"formatter",isSelected:t(e.format),getStylePreview:o(e.format)}),AF=(e,t,o,n)=>{const s=t=>V(t,t=>CF(t)?(e=>{const t=s(e.items);return{...e,type:"submenu",getStyleItems:y(t)}})(t):kF(t)?(e=>EF(e,o,n))(t):(e=>{const t=re(e);return 1===t.length&&F(t,"title")})(t)?{...t,type:"separator"}:(t=>{const s=r(t.name)?t.name:Ne(t.title),a=`custom-${s}`,i={...t,type:"formatter",format:a,isSelected:o(a),getStylePreview:n(a)};return e.formatter.register(s,i),i})(t));return s(t)},DF=e=>{let t=0;const o=e=>[{dom:{tag:"div",classes:["tox-tooltip__body"]},components:[zg(e.tooltipText)]}];return{getConfig:n=>({delayForShow:()=>t>0?60:300,delayForHide:y(300),exclusive:!0,lazySink:e,tooltipDom:{tag:"div",classes:["tox-tooltip","tox-tooltip--up"]},tooltipComponents:o(n),onShow:(e,o)=>{t++,n.onShow&&n.onShow(e,o)},onHide:(e,o)=>{t--,n.onHide&&n.onHide(e,o)},onSetup:n.onSetup}),getComponents:o}},MF=MB.trim,BF=e=>t=>{if((e=>g(e)&&1===e.nodeType)(t)){if(t.contentEditable===e)return!0;if(t.getAttribute("data-mce-contenteditable")===e)return!0}return!1},IF=BF("true"),FF=BF("false"),RF=(e,t,o,n,s)=>({type:e,title:t,url:o,level:n,attach:s}),NF=e=>e.innerText||e.textContent,zF=e=>(e=>e&&"A"===e.nodeName&&void 0!==(e.id||e.name))(e)&&LF(e),VF=e=>e&&/^(H[1-6])$/.test(e.nodeName),LF=e=>(e=>{let t=e;for(;t=t.parentNode;){const e=t.contentEditable;if(e&&"inherit"!==e)return IF(t)}return!1})(e)&&!FF(e),HF=e=>VF(e)&&LF(e),PF=e=>{const t=(e=>e.id?e.id:Ne("h"))(e);return RF("header",NF(e)??"","#"+t,(e=>VF(e)?parseInt(e.nodeName.substr(1),10):0)(e),()=>{e.id=t})},UF=e=>{const t=e.id||e.name,o=NF(e);return RF("anchor",o||"#"+t,"#"+t,0,b)},WF=e=>MF(e.title).length>0,jF=e=>{const t=(e=>{const t=V(gs(ct(e),"h1,h2,h3,h4,h5,h6,a:not([href])"),e=>e.dom);return t})(e);return P((e=>V(P(e,HF),PF))(t).concat((e=>V(P(e,zF),UF))(t)),WF)},$F="tinymce-url-history",GF=e=>r(e)&&/^https?/.test(e),qF=e=>a(e)&&pe(e,e=>{return!(l(t=e)&&t.length<=5&&Y(t,GF));var t}).isNone(),YF=()=>{const e=ZD.getItem($F);if(null===e)return{};let t;try{t=JSON.parse(e)}catch(e){if(e instanceof SyntaxError)return console.log("Local storage "+$F+" was not valid JSON",e),{};throw e}return qF(t)?t:(console.log("Local storage "+$F+" was not valid format",t),{})},XF=e=>{const t=YF();return fe(t,e).getOr([])},KF=(e,t)=>{if(!GF(e))return;const o=YF(),n=fe(o,t).getOr([]),s=P(n,t=>t!==e);o[t]=[e].concat(s).slice(0,5),(e=>{if(!qF(e))throw new Error("Bad format for history:\n"+JSON.stringify(e));ZD.setItem($F,JSON.stringify(e))})(o)},JF=e=>!!e,QF=e=>le(MB.makeMap(e,/[, ]/),JF),ZF=e=>A.from(OC(e)),eR=e=>A.from(e).filter(r).getOrUndefined(),tR=e=>({getHistory:XF,addToHistory:KF,getLinkInformation:()=>(e=>AC(e)?A.some({targets:jF(e.getBody()),anchorTop:eR(DC(e)),anchorBottom:eR(MC(e))}):A.none())(e),getValidationHandler:()=>(e=>A.from(_C(e)))(e),getUrlPicker:t=>((e,t)=>((e,t)=>{const o=(e=>{const t=A.from(EC(e)).filter(JF).map(QF);return ZF(e).fold(T,e=>t.fold(E,e=>re(e).length>0&&e))})(e);return d(o)?o?ZF(e):A.none():o[t]?ZF(e):A.none()})(e,t).map(o=>n=>Oe(s=>{const i={filetype:t,fieldname:n.fieldname,...A.from(n.meta).getOr({})};o.call(e,(e,t)=>{if(!r(e))throw new Error("Expected value to be string");if(void 0!==t&&!a(t))throw new Error("Expected meta to be a object");s({value:e,meta:t})},n.value,i)})))(e,t)}),oR={skipFocus:"ToggleToolbarDrawer skipFocus is deprecated see migration guide: https://www.tiny.cloud/docs/tinymce/latest/migration-from-7x/"},nR=b,sR=T,rR=y([]);var aR,iR=Object.freeze({__proto__:null,setup:nR,isDocked:sR,getBehaviours:rR});const lR=y(Ne("toolbar-height-change")),cR={fadeInClass:"tox-editor-dock-fadein",fadeOutClass:"tox-editor-dock-fadeout",transitionClass:"tox-editor-dock-transition"},dR="tox-tinymce--toolbar-sticky-on",uR="tox-tinymce--toolbar-sticky-off",mR=(e,t)=>F(Hp.getModes(e),t),gR=e=>{const t=e.element;ho(t).each(o=>{const n="padding-"+Hp.getModes(e)[0];if(Hp.isDocked(e)){const e=An(o);gn(t,"width",e+"px"),gn(o,n,(e=>_n(e)+(parseInt(fn(e,"margin-top"),10)||0)+(parseInt(fn(e,"margin-bottom"),10)||0))(t)+"px")}else wn(t,"width"),wn(o,n)})},pR=(e,t)=>{t?(rs(e,cR.fadeOutClass),is(e,[cR.transitionClass,cR.fadeInClass])):(rs(e,cR.fadeInClass),is(e,[cR.fadeOutClass,cR.transitionClass]))},hR=(e,t)=>{const o=ct(e.getContainer());t?(ns(o,dR),rs(o,uR)):(ns(o,uR),rs(o,dR))},fR=(e,t)=>{const o=Ye(),n=t.getSink,s=e=>{n().each(t=>e(t.element))},r=t=>{e.inline||gR(t),hR(e,Hp.isDocked(t)),t.getSystem().broadcastOn([Vd()],{}),n().each(e=>e.getSystem().broadcastOn([Vd()],{}))},a=e.inline?[]:[vb.config({channels:{[lR()]:{onReceive:gR}}})];return[_d.config({}),Hp.config({contextual:{lazyContext:t=>{const o=_n(t.element),n=e.inline?e.getContentAreaContainer():e.getContainer();return A.from(n).map(n=>{const s=Hs(ct(n));return gk(e,t.element).fold(()=>{const e=s.height-o,n=s.y+(mR(t,"top")?0:o);return Ls(s.x,n,s.width,e)},e=>{const n=Us(s,pk(e)),r=mR(t,"top")?n.y:n.y+o;return Ls(n.x,r,n.width,n.height-o)})})},onShow:()=>{s(e=>pR(e,!0))},onShown:e=>{s(e=>ls(e,[cR.transitionClass,cR.fadeInClass])),o.get().each(t=>{((e,t)=>{const o=co(t);Ho(o).filter(e=>!wt(t,e)).filter(t=>wt(t,ct(o.dom.body))||St(e,t)).each(()=>zo(t))})(e.element,t),o.clear()})},onHide:e=>{((e,t)=>Po(e).orThunk(()=>t().toOptional().bind(e=>Po(e.element))))(e.element,n).fold(o.clear,o.set),s(e=>pR(e,!1))},onHidden:()=>{s(e=>ls(e,[cR.transitionClass]))},...cR},lazyViewport:t=>gk(e,t.element).fold(()=>{const o=Ws(),n=SC(e),s=o.y+(mR(t,"top")&&!mk(e)?n:0),r=o.height-(mR(t,"bottom")?n:0);return{bounds:Ls(o.x,s,o.width,r),optScrollEnv:A.none()}},e=>({bounds:pk(e),optScrollEnv:A.some({currentScrollTop:e.element.dom.scrollTop,scrollElmTop:Fn(e.element).top})})),modes:[t.header.getDockingMode()],onDocked:r,onUndocked:r}),...a]};var bR=Object.freeze({__proto__:null,setup:(e,t,o)=>{e.inline||(t.header.isPositionedAtTop()||e.on("ResizeEditor",()=>{o().each(Hp.reset)}),e.on("ResizeWindow ResizeEditor",()=>{o().each(gR)}),e.on("SkinLoaded",()=>{o().each(e=>{Hp.isDocked(e)?Hp.reset(e):Hp.refresh(e)})}),e.on("FullscreenStateChanged",()=>{o().each(Hp.reset)})),e.on("AfterScrollIntoView",e=>{o().each(t=>{Hp.refresh(t);const o=t.element;Tn(o)&&((e,t)=>{const o=co(t),n=go(t).dom.innerHeight,s=Nn(o),r=ct(e.elm),a=Ps(r),i=On(r),l=a.y,c=l+i,d=Fn(t),u=On(t),m=d.top,g=m+u,p=Math.abs(m-s.top)<2,h=Math.abs(g-(s.top+n))<2;if(p&&l<g)zn(s.left,l-u,o);else if(h&&c>m){const e=l-n+i+u;zn(s.left,e,o)}})(e,o)})}),e.on("PostRender",()=>{hR(e,!1)})},isDocked:e=>e().map(Hp.isDocked).getOr(!1),getBehaviours:fR}),vR=hh({factory:(e,t)=>{const o={focus:Im.focusIn,setMenus:(e,o)=>{const n=V(o,e=>{const o={type:"menubutton",text:e.text,fetch:t=>{t(e.getItems())},context:"any"},n=fE(o).mapError(e=>Rr(e)).getOrDie();return AI(n,"tox-mbtn",t.backstage,A.some("menuitem"))});ug.set(e,n)}};return{uid:e.uid,dom:e.dom,components:[],behaviours:hd([ug.config({}),wd("menubar-events",[id(t=>{e.onSetup(t)}),Zc(ka(),(e,t)=>{Xn(e.element,".tox-mbtn--active").each(o=>{Kn(t.event.target,".tox-mbtn").each(t=>{wt(o,t)||e.getSystem().getByDom(o).each(o=>{e.getSystem().getByDom(t).each(e=>{Hx.expand(e),Hx.close(o),_d.focus(e)})})})})}),Zc(ii(),(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=>{Hx.isOpen(o)&&(Hx.expand(e),Hx.close(o))})})})]),Im.config({mode:"flow",selector:".tox-mbtn",onEscape:t=>(e.onEscape(t),A.some(!0))}),iv.config({})]),apis:o,domModification:{attributes:{role:"menubar"}}}},name:"silver.Menubar",configFields:[Pr("dom"),Pr("uid"),Pr("onEscape"),Pr("backstage"),sa("onSetup",b)],apis:{focus:(e,t)=>{e.focus(t)},setMenus:(e,t,o)=>{e.setMenus(t,o)}}});const xR=e=>/^[0-9\.]+(|px)$/i.test(""+e)?A.some(parseInt(""+e,10)):A.none(),yR=e=>h(e)?e+"px":e,wR=(e,t,o)=>{const n=t.filter(t=>e<t),s=o.filter(t=>e>t);return n.or(s).getOr(e)},SR="--tox-private-requested-sidebar-width",CR="--tox-private-resolved-sidebar-width",kR=e=>Gn(e.element,".tox-sidebar"),OR=(e,t)=>{const{minWidth:o,maxWidth:n}=e;return{dom:{tag:"div",classes:["tox-sidebar__resize-handle"]},behaviours:hd([Wh.config({mode:"pointer",repositionTarget:!1,onDragStart:e=>{kR(e).each(s=>{const r=An(s),a=Ue((e=>Gn(e.element,".tox-sidebar-wrap"))(e),(e=>xR(fn(e,"--tox-private-min-editing-area-width")))(s),(e,t)=>Math.floor(An(e))-t).getOr(n),i=Math.min(n,a);i>=o&&(_b.start(e,r,On(s),{minWidth:o,maxWidth:i}),t.dispatch("SidebarResizeStart"))})},onDrag:(e,t,o)=>{_b.moveBy(e,Bn(-1*o.left,0)).each(({width:t})=>{kR(e).each(e=>((e,t)=>{gn(e,SR,yR(t))})(e,t))})},onDrop:e=>{_b.stop(e).each(({width:e})=>{((e,t)=>{e.dispatch("SidebarResized",{width:t})})(t,e)})}}),_b.config({})])}},_R=e=>({element:()=>e.element.dom}),TR=(e,t)=>{const o=V(re(t),e=>{const o=t[e],n=Ir((e=>Br("sidebar",DA,e))(o));return{name:e,getApi:_R,onSetup:n.onSetup,onShow:n.onShow,onHide:n.onHide,resizable:n.resizable}});return V(o,t=>{const n=ye(b);return e.slot(t.name,{dom:{tag:"div",classes:["tox-sidebar__pane"]},behaviours:LA([jA(t,n),$A(t,n),Zc(li(),(e,t)=>{const n=t.event,s=j(o,e=>e.name===n.name);s.each(t=>{$c(e,IR,n.visible?{visible:!0,resizable:t.resizable}:{visible:!1}),(n.visible?t.onShow:t.onHide)(t.getApi(e))})})])})})},ER=(e,t,o)=>cS.sketch(n=>({dom:{tag:"div",classes:["tox-sidebar__pane-container"]},components:[OR(t,o),...TR(n,e)],slotBehaviours:LA([id(e=>cS.hideAllSlots(e))])})),AR=(e,t)=>{Yo(e,"role",t)},DR=e=>Xg.getCurrent(e).bind(e=>Zb.isGrowing(e)||Zb.hasGrown(e)?Xg.getCurrent(e).bind(e=>j(cS.getSlotNames(e),t=>cS.isShowing(e,t))):A.none()),MR=Ne("FixSizeEvent"),BR=Ne("AutoSizeEvent"),IR=Ne("SidebarContentChanged"),FR=e=>Xg.getCurrent(e).each(e=>zo(e.element,!0)),RR=(e,t,o)=>{const n=ye(!1),s=Ye(),r=o=>{var s;n.get()&&(!(e=>"focusin"===e.type)(s=o)||!(s.composed?te(s.composedPath()):A.from(s.target)).map(ct).filter(so).exists(e=>as(e,"mce-pastebin")))&&(o.preventDefault(),FR(t()),e.editorManager.setActive(e))};e.inline||e.on("PreInit",()=>{e.dom.bind(e.getWin(),"focusin",r),e.on("BeforeExecCommand",e=>{"mcefocus"===e.command.toLowerCase()&&!0!==e.value&&r(e)})});const a=s=>{s!==n.get()&&(n.set(s),((e,t,o,n)=>{const s=t.element;if(((e,t)=>{const o="tabindex",n=`data-mce-${o}`;A.from(e.iframeElement).map(ct).each(e=>{t?(Jo(e,o).each(t=>Yo(e,n,t)),Yo(e,o,-1)):(Zo(e,o),Jo(e,n).each(t=>{Yo(e,o,t),Zo(e,n)}))})})(e,o),o)Gg.block(t,(e=>(t,o)=>({dom:{tag:"div",attributes:{"aria-label":e.translate("Loading..."),tabindex:"0"},classes:["tox-throbber__busy-spinner"]},components:[{dom:Av('<div class="tox-spinner"><div></div><div></div><div></div></div>')}]}))(n)),wn(s,"display"),Zo(s,"aria-hidden"),e.hasFocus()&&FR(t);else{const o=Xg.getCurrent(t).exists(e=>Lo(e.element));Gg.unblock(t),gn(s,"display","none"),Yo(s,"aria-hidden","true"),o&&e.focus()}})(e,t(),s,o.providers),((e,t)=>{e.dispatch("AfterProgressState",{state:t})})(e,s))};e.on("ProgressState",t=>{if(s.on(clearTimeout),h(t.time)){const o=YS.setEditorTimeout(e,()=>a(t.state),t.time);s.set(o)}else a(t.state),s.clear()})},NR=e=>{const t=e.label.or(e.title).fold(()=>({}),e=>({attributes:{"aria-label":e}}));return{dom:{tag:"div",classes:["tox-toolbar__group"].concat(e.label.isSome()?["tox-toolbar__group_with_label"]:[]),...t},components:[...e.label.map(e=>({dom:{tag:"span",classes:["tox-label","tox-label--context-toolbar"]},components:[zg(e)]})).toArray(),yS.parts.items({})],items:e.items,markers:{itemSelector:".tox-tbtn:not([disabled]), .tox-toolbar-nav-item:not([disabled]), .tox-number-input:not([disabled])"},tgroupBehaviours:hd([iv.config({}),_d.config({ignore:!0})])}},zR=e=>yS.sketch(NR(e)),VR=(e,t)=>{const o=id(t=>{const o=V(e.initGroups,zR);Yx.setGroups(t,o)});return hd([UA(()=>e.providers.checkUiComponentContext("any").shouldDisable),ZA(()=>e.providers.checkUiComponentContext("any")),Im.config({mode:t,onEscape:e.onEscape,visibilitySelector:".tox-toolbar__overflow",selector:".tox-toolbar__group"}),wd("toolbar-events",[o])])},LR=e=>{const t=e.cyclicKeying?"cyclic":"acyclic";return{uid:e.uid,dom:{tag:"div",classes:["tox-toolbar-overlord"]},parts:{"overflow-group":NR({title:A.none(),label:A.none(),items:[]}),"overflow-button":WI({context:"any",name:"more",icon:A.some("more-drawer"),enabled:!0,tooltip:A.some("Reveal or hide additional toolbar items"),primary:!1,buttonType:A.none(),borderless:!1},A.none(),e.providers,[],"overflow-button")},splitToolbarBehaviours:VR(e,t)}},HR=e=>{const t=LR(e),o=CS.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}});return CS.sketch({...t,lazySink:e.getSink,getOverflowBounds:()=>{const t=e.moreDrawerData.lazyHeader().element,o=Ps(t),n=mo(t),s=Ps(n),r=Math.max(n.dom.scrollHeight,s.height);return Ls(o.x+4,s.y,o.width-8,r)},parts:{...t.parts,overflow:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:e.attributes}}},components:[o],markers:{overflowToggledClass:"tox-tbtn--enabled"},onOpened:t=>e.onToggled(t,!0),onClosed:t=>e.onToggled(t,!1)})},PR=e=>{const t=ES.parts.primary({dom:{tag:"div",classes:["tox-toolbar__primary"]}}),o=ES.parts.overflow({dom:{tag:"div",classes:["tox-toolbar__overflow"]}}),n=LR(e);return ES.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([lR()],{type:"opened"}),e.onToggled(t,!0)},onClosed:t=>{t.getSystem().broadcastOn([lR()],{type:"closed"}),e.onToggled(t,!1)}})},UR=e=>{const t=e.cyclicKeying?"cyclic":"acyclic";return Yx.sketch({uid:e.uid,dom:{tag:"div",classes:["tox-toolbar"].concat(e.type===QS.scrolling?["tox-toolbar--scrolling"]:[])},components:[Yx.parts.groups({})],toolbarBehaviours:VR(e,t)})},WR=(e,t)=>((e,t)=>{const o="togglebutton"===e.type,n=e.icon.map(e=>lI(e,t.icons)).map(Dv),s={...e,name:o?e.text.getOr(e.icon.getOr("")):e.text??e.icon.getOr(""),primary:"primary"===e.buttonType,buttonType:A.from(e.buttonType),tooltip:e.tooltip,icon:e.icon,enabled:!0,borderless:e.borderless},r=jI(e.buttonType??"secondary"),a=o?e.text.map(t.translate):A.some(t.translate(e.text)),i=a.map(zg),l=s.tooltip.or(a).map(e=>({"aria-label":t.translate(e)})).getOr({}),c=n.map(e=>e.asSpec()),d=oD([c,i]),u=e.icon.isSome()&&i.isSome(),m={tag:"button",classes:r.concat(...e.icon.isSome()&&!u?["tox-button--icon"]:[]).concat(...u?["tox-button--icon-and-text"]:[]).concat(...e.borderless?["tox-button--naked"]:[]).concat(..."togglebutton"===e.type&&e.active?["tox-button--enabled"]:[]),attributes:l},g=UI(s,A.some(s=>{const r=e=>{n.map(o=>o.getOpt(s).each(o=>{ug.set(o,[lI(e,t.icons)])}))};return o?e.onAction({setIcon:r,setActive:e=>{const t=s.element;e?(ns(t,"tox-button--enabled"),Yo(t,"aria-pressed",!0)):(rs(t,"tox-button--enabled"),Zo(t,"aria-pressed"))},isActive:()=>as(s.element,"tox-button--enabled"),focus:()=>zo(s.element)}):"button"===e.type?e.onAction({setIcon:r}):void 0}),[],m,d,e.tooltip,t);return Wv.sketch(g)})(e,t),jR=Qt().deviceType,$R=jR.isPhone(),GR=jR.isTablet();var qR=fh({name:"silver.View",configFields:[Pr("viewConfig")],partFields:[cl({factory:{sketch:e=>{let t=!1;const o=V(e.buttons,o=>"group"===o.type?(t=!0,((e,t)=>({dom:{tag:"div",classes:["tox-view__toolbar__group"]},components:V(e.buttons,e=>WR(e,t))}))(o,e.providers)):WR(o,e.providers));return{uid:e.uid,dom:{tag:"div",classes:[t?"tox-view__toolbar":"tox-view__header",...$R||GR?["tox-view--mobile","tox-view--scrolling"]:[]]},behaviours:hd([_d.config({}),Im.config({mode:"flow",selector:"button, .tox-button",focusInside:Vi.OnEnterOrSpaceMode})]),components:t?o:[bh.sketch({dom:{tag:"div",classes:["tox-view__header-start"]},components:[]}),bh.sketch({dom:{tag:"div",classes:["tox-view__header-end"]},components:o})]}}},schema:[Pr("buttons"),Pr("providers")],name:"header"}),cl({factory:{sketch:e=>({uid:e.uid,behaviours:hd([_d.config({}),iv.config({})]),dom:{tag:"div",classes:["tox-view__pane"]}})},schema:[],name:"pane"})],factory:(e,t,o,n)=>{const s={getPane:t=>Mv.getPart(t,e,"pane"),getOnShow:t=>e.viewConfig.onShow,getOnHide:t=>e.viewConfig.onHide};return{uid:e.uid,dom:e.dom,components:t,behaviours:hd([_d.config({}),Im.config({mode:"cyclic",focusInside:Vi.OnEnterOrSpaceMode})]),apis:s}},apis:{getPane:(e,t)=>e.getPane(t),getOnShow:(e,t)=>e.getOnShow(t),getOnHide:(e,t)=>e.getOnHide(t)}});const YR=(e,t,o)=>ge(t,(t,n)=>{const s=Ir(Br("view",zA,t));return e.slot(n,qR.sketch({dom:{tag:"div",classes:["tox-view"]},viewConfig:s,components:[...s.buttons.length>0?[qR.parts.header({buttons:s.buttons,providers:o})]:[],qR.parts.pane({})]}))}),XR=(e,t)=>cS.sketch(o=>({dom:{tag:"div",classes:["tox-view-wrap__slot-container"]},components:YR(o,e,t),slotBehaviours:LA([id(e=>cS.hideAllSlots(e))])})),KR=e=>j(cS.getSlotNames(e),t=>cS.isShowing(e,t)),JR=(e,t,o)=>{cS.getSlot(e,t).each(e=>{qR.getPane(e).each(t=>{var n;o(e)((n=t.element.dom,{getContainer:y(n)}))})})};var QR=hh({factory:(e,t)=>{const o={setViews:(e,o)=>{ug.set(e,[XR(o,t.backstage.shared.providers)])},whichView:e=>Xg.getCurrent(e).bind(KR),toggleView:(e,t,o,n)=>Xg.getCurrent(e).exists(s=>{const r=KR(s),a=r.exists(e=>n===e),i=cS.getSlot(s,n).isSome();return i&&(cS.hideAllSlots(s),a?((e=>{const t=e.element;gn(t,"display","none"),Yo(t,"aria-hidden","true")})(e),t()):(o(),(e=>{const t=e.element;wn(t,"display"),Zo(t,"aria-hidden")})(e),cS.showSlot(s,n),((e,t)=>{JR(e,t,qR.getOnShow)})(s,n)),r.each(e=>((e,t)=>JR(e,t,qR.getOnHide))(s,e))),i})};return{uid:e.uid,dom:{tag:"div",classes:["tox-view-wrap"],attributes:{"aria-hidden":"true"},styles:{display:"none"}},components:[],behaviours:hd([ug.config({}),Xg.config({find:e=>{const t=ug.contents(e);return te(t)}})]),apis:o}},name:"silver.ViewWrapper",configFields:[Pr("backstage")],apis:{setViews:(e,t,o)=>e.setViews(t,o),toggleView:(e,t,o,n,s)=>e.toggleView(t,o,n,s),whichView:(e,t)=>e.whichView(t)}});const ZR=Bv.optional({factory:vR,name:"menubar",schema:[Pr("backstage")]}),eN=Bv.optional({factory:{sketch:e=>qv.sketch({uid:e.uid,dom:e.dom,listBehaviours:hd([Im.config({mode:"acyclic",selector:".tox-toolbar"})]),makeItem:()=>UR({type:e.type,uid:Ne("multiple-toolbar-item"),cyclicKeying:!1,initGroups:[],providers:e.providers,onEscape:()=>(e.onEscape(),A.some(!0))}),setupItem:(e,t,o,n)=>{Yx.setGroups(t,o)},shell:!0})},name:"multiple-toolbar",schema:[Pr("dom"),Pr("onEscape")]}),tN=Bv.optional({factory:{sketch:e=>{const t=(e=>e.type===QS.sliding?PR:e.type===QS.floating?HR:UR)(e);return t({type:e.type,uid:e.uid,onEscape:()=>(e.onEscape(),A.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})}},name:"toolbar",schema:[Pr("dom"),Pr("onEscape"),Pr("getSink")]}),oN=Bv.optional({factory:{sketch:e=>{const t=e.editor,o=e.sticky?fR:rR;return{uid:e.uid,dom:e.dom,components:e.components,behaviours:hd(o(t,e.sharedBackstage))}}},name:"header",schema:[Pr("dom")]}),nN=Bv.optional({factory:{sketch:e=>{const t=e.promotionLink?[{dom:{tag:"a",attributes:{href:"https://www.tiny.cloud/tinymce-upgrade-to-cloud/?utm_campaign=self_hosted_upgrade_promo&utm_source=tiny&utm_medium=referral",rel:"noopener",target:"_blank","aria-hidden":"true"},classes:["tox-promotion-link"],innerHtml:"\u{1f49d} Get all features"}}]:[];return{uid:e.uid,dom:e.dom,components:t}}},name:"promotion",schema:[Pr("dom"),Pr("promotionLink")]}),sN=Bv.optional({name:"socket",schema:[Pr("dom")]}),rN=Bv.optional({factory:{sketch:e=>({uid:e.uid,dom:{tag:"div",classes:["tox-sidebar"],styles:{[SR]:yR(e.configuredSidebarWidth)},attributes:{role:"presentation"}},components:[{dom:{tag:"div",classes:["tox-sidebar__slider"]},components:[],behaviours:hd([iv.config({}),_d.config({}),Zb.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=>{Xg.getCurrent(e).each(cS.hideAllSlots),jc(e,BR)},onGrown:e=>{jc(e,BR)},onStartGrow:e=>{$c(e,MR,{width:vn(e.element,"width").getOr("")})},onStartShrink:e=>{$c(e,MR,{width:An(e.element)+"px"})}}),ug.config({}),Xg.config({find:e=>{const t=ug.contents(e);return te(t)}})])}],behaviours:hd([mB(0),wd("sidebar-sliding-events",[Zc(MR,(e,t)=>{gn(e.element,"width",t.event.width),gn(e.element,CR,t.event.width)}),Zc(BR,(e,t)=>{wn(e.element,"width"),wn(e.element,CR)})])])})},name:"sidebar",schema:[Pr("dom"),Pr("configuredSidebarWidth")]}),aN=Bv.optional({factory:{sketch:e=>({uid:e.uid,dom:{tag:"div",attributes:{"aria-hidden":"true"},classes:["tox-throbber"],styles:{display:"none"}},behaviours:hd([ug.config({}),Gg.config({focus:!1}),Xg.config({find:e=>te(e.components())})]),components:[]})},name:"throbber",schema:[Pr("dom")]}),iN=Bv.optional({factory:QR,name:"viewWrapper",schema:[Pr("backstage")]}),lN=Bv.optional({factory:{sketch:e=>({uid:e.uid,dom:{tag:"div",classes:["tox-editor-container"]},components:e.components})},name:"editorContainer",schema:[]});var cN=fh({name:"OuterContainer",factory:(e,t,o)=>{let n=!1;const s=e=>{qn(e,".tox-statusbar").each(e=>{"none"===fn(e,"display")&&"true"===Ko(e,"aria-hidden")?(wn(e,"display"),Zo(e,"aria-hidden")):(gn(e,"display","none"),Yo(e,"aria-hidden","true"))})},a={getSocket:t=>Mv.getPart(t,e,"socket"),setSidebar:(t,o,n,s,a)=>{Mv.getPart(t,e,"sidebar").each(e=>((e,t,o,n,s)=>{Xg.getCurrent(e).each(a=>{ug.set(a,[ER(t,n,s)]);const i=o?.toLowerCase();r(i)&&be(t,i)&&Xg.getCurrent(a).each(t=>{cS.showSlot(t,i),Zb.immediateGrow(a),wn(a.element,"width"),AR(e.element,"region")})})})(e,o,n,s,a))},toggleSidebar:(t,o)=>{Mv.getPart(t,e,"sidebar").each(e=>((e,t)=>{Xg.getCurrent(e).each(o=>{Xg.getCurrent(o).each(n=>{Zb.hasGrown(o)?cS.isShowing(n,t)?(Zb.shrink(o),AR(e.element,"presentation")):(cS.hideAllSlots(n),cS.showSlot(n,t),AR(e.element,"region")):(cS.hideAllSlots(n),cS.showSlot(n,t),Zb.grow(o),AR(e.element,"region"))})})})(e,o))},whichSidebar:t=>Mv.getPart(t,e,"sidebar").bind(DR).getOrNull(),getHeader:t=>Mv.getPart(t,e,"header"),getToolbar:t=>Mv.getPart(t,e,"toolbar"),setToolbar:(t,o)=>{Mv.getPart(t,e,"toolbar").each(e=>{const t=V(o,zR);e.getApis().setGroups(e,t)})},setToolbars:(t,o)=>{Mv.getPart(t,e,"multiple-toolbar").each(e=>{const t=V(o,e=>V(e,zR));qv.setItems(e,t)})},refreshToolbar:t=>{Mv.getPart(t,e,"toolbar").each(e=>e.getApis().refresh(e))},toggleToolbarDrawer:t=>{Mv.getPart(t,e,"toolbar").each(e=>{We(e.getApis().toggle,t=>t(e))})},toggleToolbarDrawerWithoutFocusing:t=>{Mv.getPart(t,e,"toolbar").each(e=>{We(e.getApis().toggleWithoutFocusing,t=>t(e))})},isToolbarDrawerToggled:t=>Mv.getPart(t,e,"toolbar").bind(e=>A.from(e.getApis().isOpen).map(t=>t(e))).getOr(!1),getThrobber:t=>Mv.getPart(t,e,"throbber"),focusToolbar:t=>{Mv.getPart(t,e,"toolbar").orThunk(()=>Mv.getPart(t,e,"multiple-toolbar")).each(e=>{Im.focusIn(e)})},setMenubar:(t,o)=>{Mv.getPart(t,e,"menubar").each(e=>{vR.setMenus(e,o)})},focusMenubar:t=>{Mv.getPart(t,e,"menubar").each(e=>{vR.focus(e)})},setViews:(t,o,n)=>{Mv.getPart(t,e,"viewWrapper").each(e=>{QR.setViews(e,o)});const s=n?.toLowerCase();r(s)&&be(o,s)&&a.toggleView(t,s)},toggleView:(t,o)=>Mv.getPart(t,e,"viewWrapper").exists(e=>QR.toggleView(e,()=>a.showMainView(t),()=>a.hideMainView(t),o)),whichView:t=>Mv.getPart(t,e,"viewWrapper").bind(QR.whichView).getOrNull(),hideMainView:t=>{n=a.isToolbarDrawerToggled(t),n&&a.toggleToolbarDrawer(t),Mv.getPart(t,e,"editorContainer").each(e=>{const t=e.element;s(t),gn(t,"display","none"),Yo(t,"aria-hidden","true")})},showMainView:t=>{n&&a.toggleToolbarDrawer(t),Mv.getPart(t,e,"editorContainer").each(e=>{const t=e.element;s(t),wn(t,"display"),Zo(t,"aria-hidden")})}};return{uid:e.uid,dom:e.dom,components:t,apis:a,behaviours:e.behaviours}},configFields:[Pr("dom"),Pr("behaviours")],partFields:[oN,ZR,tN,eN,sN,rN,nN,aN,iN,lN],apis:{getSocket:(e,t)=>e.getSocket(t),setSidebar:(e,t,o,n,s,r)=>{e.setSidebar(t,o,n,s,r)},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)},toggleToolbarDrawerWithoutFocusing:(e,t)=>{e.toggleToolbarDrawerWithoutFocusing(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,n)=>{e.setViews(t,o,n)},toggleView:(e,t,o)=>e.toggleView(t,o),whichView:(e,t)=>e.whichView(t)}});const dN={file:{title:"File",items:"newdocument restoredraft | preview | importword exportpdf exportword | export print | deleteallconversations"},edit:{title:"Edit",items:"undo redo | cut copy paste pastetext | selectall | searchreplace"},view:{title:"View",items:"code suggestededits revisionhistory | visualaid visualchars visualblocks | spellchecker | preview fullscreen | showcomments"},insert:{title:"Insert",items:"image video link media addcomment pageembed inserttemplate codesample inserttable accordion math | 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:"tinymceai-chat tinymceai-review tinymceai-quickactions aidialog aishortcuts | spellchecker spellcheckerlanguage | autocorrect capitalization | a11ycheck code typography wordcount addtemplate"},table:{title:"Table",items:"inserttable | cell row column | advtablesort | tableprops deletetable"},help:{title:"Help",items:"help"}},uN=e=>e.split(" "),mN=(e,t)=>{const o={...dN,...t.menus},n=re(t.menus).length>0,s=void 0===t.menubar||!0===t.menubar?uN("file edit view insert format tools table help"):uN(!1===t.menubar?"":t.menubar),a=P(s,e=>{const o=be(dN,e);return n?o||fe(t.menus,e).exists(e=>be(e,"items")):o}),i=V(a,n=>{const s=o[n];return((e,t,o)=>{const n=hC(o).split(/[ ,]/);return{text:e.title,getItems:()=>q(e.items,e=>{const o=e.toLowerCase();return 0===o.trim().length||R(n,e=>e===o)?[]:"separator"===o||"|"===o?[{type:"separator"}]:t.menuItems[o]?[t.menuItems[o]]:[]})}})({title:s.title,items:uN(s.items)},t,e)});return P(i,e=>e.getItems().length>0&&R(e.getItems(),e=>r(e)||"separator"!==e.type))},gN=(e,t,o)=>(e.on("remove",()=>o.unload(t)),o.load(t)),pN=(e,t,o,n)=>(e.on("remove",()=>n.unloadRawCss(t)),n.loadRawCss(t,o)),hN=e=>A.from(tinymce.Resource.get(e)).filter(r),fN=(e,t,o="")=>{const n=(e=>{const t=GC(e);return t?A.from(t):A.none()})(e).map(e=>((e,t)=>"ui/"+e+"/"+t)(e,`${t}.css`)),s=n.bind(hN);return Ue(n,s,(e,t)=>({_kind:"load-raw",key:e,css:t})).getOrThunk(()=>{const n=e.editorManager.suffix;return{_kind:"load-stylesheet",url:o+`/${t}${n}.css`}})},bN=(e,t)=>{const o=e.ui.styleSheetLoader,n=fN(e,"skin",t);switch(n._kind){case"load-raw":const{key:t,css:s}=n;return pN(e,t,s,o),Promise.resolve();case"load-stylesheet":const{url:r}=n;return gN(e,r,o);default:return Promise.resolve()}},vN=(e,t)=>{var o;if(o=ct(e.getElement()),!To(o).isSome())return Promise.resolve();{const o=XS.DOM.styleSheetLoader,n=fN(e,"skin.shadowdom",t);switch(n._kind){case"load-raw":const{key:t,css:s}=n;return pN(e,t,s,o),Promise.resolve();case"load-stylesheet":const{url:r}=n;return gN(e,r,o);default:return Promise.resolve()}}},xN=(e,t)=>(async(e,t)=>{const o=XC(t);if(await((e,t,o)=>{const n=fN(e,t?"content.inline":"content",o);if(!o)return Promise.resolve();switch(n._kind){case"load-raw":const{key:t}=n;return e.contentCSS.push(t),Promise.resolve();case"load-stylesheet":const{url:o}=n;return e.contentCSS.push(o),Promise.resolve();default:return Promise.resolve()}})(t,e,o),!qC(t)&&r(o))return Promise.all([bN(t,o),vN(t,o)]).then()})(e,t).then((e=>{const t=()=>{e._skinLoaded=!0,(e=>{e.dispatch("SkinLoaded")})(e)};return()=>{e.initialized?t():e.on("init",t)}})(t),(e=>()=>((e,t)=>{e.dispatch("SkinLoadError",t)})(e,{message:"Skin could not be loaded"}))(t)),yN=C(xN,!1),wN=C(xN,!0),SN=e=>({isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t),setText:t=>$c(e,dI,{text:t}),setIcon:t=>$c(e,uI,{icon:t})}),CN=e=>({setActive:t=>{hv.set(e,t)},isActive:()=>hv.isOn(e),isEnabled:()=>!gp.isDisabled(e),setEnabled:t=>gp.set(e,!t),setText:t=>$c(e,dI,{text:t}),setIcon:t=>$c(e,uI,{icon:t})}),kN=(e,t)=>e.map(e=>({"aria-label":t.translate(e)})).getOr({}),ON=Ne("focus-button"),_N=(e,t,o,n,s,r,a)=>{const i=t.map(e=>Dv(cI(e,"tox-tbtn",s))),l=e.map(e=>Dv(lI(e,s.icons)));return{dom:{tag:"button",classes:["tox-tbtn"].concat(t.isSome()?["tox-tbtn--select"]:[]),attributes:{...kN(o,s),...g(a)?{"data-mce-name":a}:{}}},components:oD([l.map(e=>e.asSpec()),i.map(e=>e.asSpec())]),eventOrder:{[ya()]:["focusing","alloy.base.behaviour",nI],[ni()]:[nI,"toolbar-group-button-events"],[si()]:[nI,"toolbar-group-button-events","tooltipping"]},buttonBehaviours:hd([UA(()=>s.checkUiComponentContext(r).shouldDisable),ZA(()=>s.checkUiComponentContext(r)),wd(nI,[id((e,t)=>rI(e)),Zc(dI,(e,t)=>{i.bind(t=>t.getOpt(e)).each(e=>{ug.set(e,[zg(s.translate(t.event.text))])})}),Zc(uI,(e,t)=>{l.bind(t=>t.getOpt(e)).each(e=>{ug.set(e,[lI(t.event.icon,s.icons)])})}),Zc(ya(),(e,t)=>{t.event.prevent(),jc(e,ON)})])].concat(n.getOr([])))}},TN=(e,t,o,n)=>{const s=ye(b),r=_N(e.icon,e.text,e.tooltip,A.none(),o,e.context,n);return Wv.sketch({dom:r.dom,components:r.components,eventOrder:sI,buttonBehaviours:{...hd([wd("toolbar-button-events",[(a={onAction:e.onAction,getApi:t.getApi},dd((e,t)=>{WA(a,e)(t=>{$c(e,oI,{buttonApi:t}),a.onAction(t)})})),jA(t,s),$A(t,s)]),...e.tooltip.map(t=>Tv.config(o.tooltips.getConfig({tooltipText:o.translate(t)+e.shortcut.map(e=>` (${aD(e)})`).getOr("")}))).toArray(),UA(()=>!e.enabled||o.checkUiComponentContext(e.context).shouldDisable),ZA(()=>o.checkUiComponentContext(e.context))].concat(t.toolbarButtonBehaviours)),[nI]:r.buttonBehaviours?.[nI]}});var a},EN=(e,t,o,n)=>TN(e,{toolbarButtonBehaviours:o.length>0?[wd("toolbarButtonWith",o)]:[],getApi:SN,onSetup:e.onSetup},t,n),AN=(e,t,o,n)=>TN(e,{toolbarButtonBehaviours:[ug.config({}),hv.config({toggleClass:"tox-tbtn--enabled",aria:{mode:"pressed"},toggleOnExecute:!1})].concat(o.length>0?[wd("toolbarToggleButtonWith",o)]:[]),getApi:CN,onSetup:e.onSetup},t,n),DN=(e,t,o)=>n=>Oe(e=>t.fetch(e)).map(s=>A.from(WM(Ve(TM(Ne("menu-value"),s,o=>{t.onItemAction(e(n),o)},t.columns,t.presets,WO.CLOSE_ON_EXECUTE,t.select.getOr(T),o),{movement:AM(t.columns,t.presets),menuBehaviours:LA("auto"!==t.columns?[]:[id((e,o)=>{VA(e,4,t_(t.presets)).each(({numRows:t,numColumns:o})=>{Im.setGridSize(e,t,o)})})])})))),MN=e=>{dy.getContent(e).each(e=>{Xn(e.element,".tox-toolbar-slider__input,.tox-toolbar-textfield").fold(()=>Im.focusIn(e),zo)})},BN=Ne("forward-slide"),IN=Ne("backward-slide"),FN=Ne("change-slide-event"),RN="tox-pop--resizing",NN=(e,t,o)=>ot(o)?e.translate(t):e.translate([t,e.translate(o)]),zN=(e,t)=>{const o=(o,s,r,a)=>{const i=e.shared.providers.translate(o.title);if("separator"===o.type)return A.some({type:"separator",text:i});if("submenu"===o.type){const e=q(o.getStyleItems(),e=>n(e,s,a));return 0===s&&e.length<=0?A.none():A.some({type:"nestedmenuitem",text:i,enabled:e.length>0,getSubmenuItems:()=>q(o.getStyleItems(),e=>n(e,s,a))})}return A.some({type:"togglemenuitem",text:i,icon:o.icon,active:o.isSelected(a),enabled:!r,onAction:t.onAction(o),...o.getStylePreview().fold(()=>({}),e=>({meta:{style:e}}))})},n=(e,n,s)=>{const r="formatter"===e.type&&t.isInvalid(e);return 0===n?r?[]:o(e,n,!1,s).toArray():o(e,n,r,s).toArray()},s=e=>{const o=t.getCurrentValue(),s=t.shouldHide?0:1;return q(e,e=>n(e,s,o))};return{validateItems:s,getFetch:(e,t)=>(o,n)=>{const r=t(),a=s(r);n(bI(a,WO.CLOSE_ON_EXECUTE,e,{isHorizontalMenu:!1,search:A.none()}))}}},VN=(e,t)=>{const o=t.dataset,n="basic"===o.type?()=>V(o.data,e=>EF(e,t.isSelectedFor,t.getPreviewFor)):o.getData;return{items:zN(e,t),getStyleItems:n}},LN=(e,t,o,n,s,r)=>{const{items:a,getStyleItems:i}=VN(t,o),l=ye(o.tooltip);return gI({context:"mode:design",text:o.icon.isSome()?A.none():o.text,icon:o.icon,ariaLabel:A.some(o.tooltip),tooltip:A.none(),role:A.none(),fetch:a.getFetch(t,i),onSetup:t=>{const r=o=>t.setTooltip(NN(e,n(o.value),o.value));return e.on(s,r),qD(KD(e,"NodeChange",t=>{const n=t.getComponent();o.updateText(n),gp.set(t.getComponent(),!e.selection.isEditable()||0===i().length)})(t),()=>e.off(s,r))},getApi:e=>({getComponent:y(e),setTooltip:o=>{const n=t.shared.providers.translate(o);Yo(e.element,"aria-label",n),l.set(o)}}),columns:1,presets:"normal",classes:o.icon.isSome()?[]:["bespoke"],dropdownBehaviours:[Tv.config({...t.shared.providers.tooltips.getConfig({tooltipText:t.shared.providers.translate(o.tooltip),onShow:e=>{if(o.tooltip!==l.get()){const o=t.shared.providers.translate(l.get());Tv.setComponents(e,t.shared.providers.tooltips.getComponents({tooltipText:o}))}}})})]},"tox-tbtn",t.shared,r)};var HN;!function(e){e[e.SemiColon=0]="SemiColon",e[e.Space=1]="Space"}(HN||(HN={}));const PN=(e,t,o)=>{const n=(s=((e,t)=>t===HN.SemiColon?e.replace(/;$/,"").split(";"):e.split(" "))(e.options.get(t),o),V(s,e=>{let t=e,o=e;const n=e.split("=");return n.length>1&&(t=n[0],o=n[1]),{title:t,format:o}}));var s;return{type:"basic",data:n}},UN=y("Alignment {0}"),WN="left",jN=[{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"}],$N=e=>{const t={type:"basic",data:jN};return{tooltip:NN(e,UN(),WN),text:A.none(),icon:A.some("align-left"),isSelectedFor:t=>()=>e.formatter.match(t),getCurrentValue:A.none,getPreviewFor:e=>A.none,onAction:t=>()=>j(jN,e=>e.format===t.format).each(t=>e.execCommand(t.command)),updateText:t=>{const o=j(jN,t=>e.formatter.match(t.format)).fold(y(WN),e=>e.title.toLowerCase());$c(t,uI,{icon:`align-${o}`}),((e,t)=>{e.dispatch("AlignTextUpdate",t)})(e,{value:o})},dataset:t,shouldHide:!1,isInvalid:t=>!e.formatter.canApply(t.format)}},GN=(e,t)=>{const o=t(),n=V(o,e=>e.format);return A.from(e.formatter.closest(n)).bind(e=>j(o,t=>t.format===e))},qN=y("Block {0}"),YN="Paragraph",XN=e=>{const t=PN(e,"block_formats",HN.SemiColon);return{tooltip:NN(e,qN(),YN),text:A.some(YN),icon:A.none(),isSelectedFor:t=>()=>e.formatter.match(t),getCurrentValue:A.none,getPreviewFor:t=>()=>{const o=e.formatter.get(t);return o?A.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):A.none()},onAction:JD(e),updateText:o=>{const n=GN(e,()=>t.data).fold(y(YN),e=>e.title);$c(o,dI,{text:n}),((e,t)=>{e.dispatch("BlocksTextUpdate",t)})(e,{value:n})},dataset:t,shouldHide:!1,isInvalid:t=>!e.formatter.canApply(t.format)}},KN=y("Font {0}"),JN="System Font",QN=["-apple-system","Segoe UI","Roboto","Helvetica Neue","sans-serif"],ZN=e=>{const t=e.split(/\s*,\s*/);return V(t,e=>e.replace(/^['"]+|['"]+$/g,""))},ez=(e,t)=>t.length>0&&Y(t,t=>e.indexOf(t.toLowerCase())>-1),tz=e=>{const t=()=>{const t=e=>e?ZN(e)[0]:"",n=e.queryCommandValue("FontName"),s=o.data,r=n?n.toLowerCase():"",a=$C(e),i=j(s,e=>{const o=e.format;return o.toLowerCase()===r||t(o).toLowerCase()===t(r).toLowerCase()}).orThunk(()=>je(((e,t)=>{if(0===e.indexOf("-apple-system")||t.length>0){const o=ZN(e.toLowerCase());return ez(o,QN)||ez(o,t)}return!1})(r,a),{title:JN,format:r}));return{matchOpt:i,font:n}},o=PN(e,"font_family_formats",HN.SemiColon);return{tooltip:NN(e,KN(),JN),text:A.some(JN),icon:A.none(),isSelectedFor:e=>t=>t.exists(t=>t.format===e),getCurrentValue:()=>{const{matchOpt:e}=t();return e},getPreviewFor:e=>()=>A.some({tag:"div",styles:-1===e.indexOf("dings")?{"font-family":e}:{}}),onAction:t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("FontName",!1,t.format)})},updateText:o=>{const{matchOpt:n,font:s}=t(),r=n.fold(y(s),e=>e.title);$c(o,dI,{text:r}),((e,t)=>{e.dispatch("FontFamilyTextUpdate",t)})(e,{value:r})},dataset:o,shouldHide:!1,isInvalid:T}};var oz=tinymce.util.Tools.resolve("tinymce.util.VK");const nz=y("Font size {0}"),sz="12pt",rz={"8pt":"1","10pt":"2","12pt":"3","14pt":"4","18pt":"5","24pt":"6","36pt":"7"},az={"xx-small":"7pt","x-small":"8pt",small:"10pt",medium:"12pt",large:"14pt","x-large":"18pt","xx-large":"24pt"},iz=(e,t)=>/[0-9.]+px$/.test(e)?((e,t)=>{const o=Math.pow(10,t);return Math.round(e*o)/o})(72*parseInt(e,10)/96,t||0)+"pt":fe(az,e).getOr(e),lz=e=>fe(rz,e).getOr(""),cz=e=>{const t=()=>{let t=A.none();const o=n.data,s=e.queryCommandValue("FontSize");if(s)for(let e=3;t.isNone()&&e>=0;e--){const n=iz(s,e),r=lz(n);t=j(o,e=>e.format===s||e.format===n||e.format===r)}return{matchOpt:t,size:s}},o=y(A.none),n=PN(e,"font_size_formats",HN.Space);return{tooltip:NN(e,nz(),sz),text:A.some(sz),icon:A.none(),isSelectedFor:e=>t=>t.exists(t=>t.format===e),getPreviewFor:o,getCurrentValue:()=>{const{matchOpt:e}=t();return e},onAction:t=>()=>{e.undoManager.transact(()=>{e.focus(),e.execCommand("FontSize",!1,t.format)})},updateText:o=>{const{matchOpt:n,size:s}=t(),r=n.fold(y(s),e=>e.title);$c(o,dI,{text:r}),((e,t)=>{e.dispatch("FontSizeTextUpdate",t)})(e,{value:r})},dataset:n,shouldHide:!1,isInvalid:T}},dz=e=>ot(e)?"Formats":"Format {0}",uz=(e,t)=>{const o="Formats";return{tooltip:NN(e,dz(""),""),text:A.some(o),icon:A.none(),isSelectedFor:t=>()=>e.formatter.match(t),getCurrentValue:A.none,getPreviewFor:t=>()=>{const o=e.formatter.get(t);return void 0!==o?A.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):A.none()},onAction:JD(e),updateText:t=>{const n=e=>CF(e)?q(e.items,n):kF(e)?[{title:e.title,format:e.format}]:[],s=q(TF(e),n),r=GN(e,y(s)).fold(y({title:o,tooltipLabel:""}),e=>({title:e.title,tooltipLabel:e.title}));$c(t,dI,{text:r.title}),((e,t)=>{e.dispatch("StylesTextUpdate",t)})(e,{value:r.tooltipLabel})},shouldHide:gC(e),isInvalid:t=>!e.formatter.canApply(t.format),dataset:t}},mz=[{name:"history",items:["undo","redo"]},{name:"ai",items:["tinymceai-chat","tinymceai-review","tinymceai-quickactions","aidialog","aishortcuts"]},{name:"styles",items:["styles"]},{name:"formatting",items:["bold","italic"]},{name:"alignment",items:["alignleft","aligncenter","alignright","alignjustify"]},{name:"indentation",items:["outdent","indent"]},{name:"permanent pen",items:["permanentpen"]},{name:"comments",items:["addcomment"]}],gz=(e,t)=>(o,n,s,r)=>{const a=e(o).mapError(e=>Rr(e)).getOrDie();return t(a,n,s,r)},pz={button:gz(XE,(e,t,o,n)=>((e,t,o)=>EN(e,t,[],o))(e,t.shared.providers,n)),togglebutton:gz(QE,(e,t,o,n)=>((e,t,o)=>AN(e,t,[],o))(e,t.shared.providers,n)),menubutton:gz(fE,(e,t,o,n)=>AI(e,"tox-tbtn",t,A.none(),!1,n)),splitbutton:gz(e=>Br("SplitButton",BA,e),(e,t,o,n)=>((e,t,o)=>{const n=ye(b),s=ye(e.tooltip.getOr("")),r=((e,t,o)=>n=>{const s=n.getSystem(),r=n.element,a=()=>{const e=as(r,"tox-split-button__chevron");return{mainOpt:e?bo(r).bind(e=>s.getByDom(e).toOptional()):A.some(n),chevronOpt:e?A.some(n):vo(r).bind(e=>s.getByDom(e).toOptional().filter(e=>as(e.element,"tox-split-button__chevron")))}},i=e=>{const{mainOpt:t,chevronOpt:o}=a();t.each(e),o.each(e)};return{isEnabled:()=>{const{mainOpt:e}=a();return e.exists(e=>!gp.isDisabled(e))},setEnabled:e=>i(t=>gp.set(t,!e)),setText:e=>{const{mainOpt:t}=a();t.each(t=>$c(t,dI,{text:e}))},setIcon:e=>{const{mainOpt:t}=a();t.each(t=>$c(t,uI,{icon:e}))},setIconFill:(e,t)=>i(o=>{Xn(o.element,`svg path[class="${e}"], rect[class="${e}"]`).each(e=>{Yo(e,"fill",t)})}),isActive:()=>{const{mainOpt:e}=a();return e.exists(e=>hv.isOn(e))},setActive:e=>{const{mainOpt:t}=a();t.each(t=>hv.set(t,e))},setTooltip:n=>{e.set(n);const{mainOpt:s,chevronOpt:r}=a();s.each(e=>Yo(e.element,"aria-label",t.providers.translate(n)));const i=o.chevronTooltip.map(e=>t.providers.translate(e)).getOr(t.providers.translate(n));r.each(e=>Yo(e.element,"aria-label",i))}}})(s,t,e),a=Ne("tox-split-menu"),i=ye(!1),l=()=>e.tooltip.map(e=>t.providers.translate(e)).getOr(t.providers.translate("Text color")),c=()=>e.chevronTooltip.map(e=>t.providers.translate(e)).getOrThunk(()=>{const e=l();return t.providers.translate(["{0} menu",e])}),d=(e,t)=>{i.set(e),Yo(t.element,"aria-expanded",String(e))},u=Hx.sketch({dom:{tag:"button",classes:["tox-tbtn","tox-split-button__chevron"],innerHtml:RO("chevron-down",t.providers.icons),attributes:{"aria-label":c(),...g(o)?{"data-mce-name":o+"-chevron"}:{},"aria-haspopup":"menu","aria-expanded":String(i.get()),"aria-controls":a}},components:[],toggleClass:"tox-tbtn--enabled",dropdownBehaviours:hd([wd("split-dropdown-events",[id((e,t)=>rI(e)),jA({getApi:r,onSetup:e.onSetup},n),Zc("alloy-dropdown-open",e=>d(!0,e)),Zc("alloy-dropdown-close",e=>d(!1,e))]),UA(()=>t.providers.checkUiComponentContext(e.context).shouldDisable),ZA(()=>t.providers.checkUiComponentContext(e.context)),Ev.config({}),Tv.config(t.providers.tooltips.getConfig({tooltipText:c(),onShow:o=>{if(s.get()!==e.tooltip.getOr("")){const n=e.chevronTooltip.map(e=>t.providers.translate(e)).getOr(`${t.providers.translate(s.get())} menu`);Tv.setComponents(o,t.providers.tooltips.getComponents({tooltipText:n}))}}}))]),lazySink:t.getSink,fetch:DN(r,e,t.providers),getHotspot:e=>bo(e.element).bind(t=>e.getSystem().getByDom(t).toOptional()),onOpen:(e,t,o)=>{ru.highlightBy(o,e=>as(e.element,"tox-collection__item--active")),ru.getHighlighted(o).each(Im.focusIn)},parts:{menu:{...i_(0,e.columns,e.presets),dom:{...i_(0,e.columns,e.presets).dom,tag:"div",attributes:{id:a}}}}}),m=_N(e.icon,e.text,A.none(),A.some([hv.config({toggleClass:"tox-tbtn--enabled",aria:"color"===e.presets?{mode:"none"}:{mode:"pressed"},toggleOnExecute:!1}),...e.tooltip.isSome()?[Tv.config(t.providers.tooltips.getConfig({tooltipText:t.providers.translate(e.tooltip.getOr("")),onShow:o=>{if(s.get()!==e.tooltip.getOr("")){const e=t.providers.translate(s.get());Tv.setComponents(o,t.providers.tooltips.getComponents({tooltipText:e}))}}}))]:[]]),t.providers,e.context,o),p=Wv.sketch({dom:{...m.dom,classes:["tox-tbtn","tox-split-button__main"].concat(e.text.isSome()?["tox-tbtn--select"]:[]),attributes:{"aria-label":l(),...g(o)?{"data-mce-name":o}:{}}},components:m.components,eventOrder:m.eventOrder,buttonBehaviours:m.buttonBehaviours,action:t=>{if(e.onAction){const o=r(t);o.isEnabled()&&e.onAction(o)}}});return[p,u]})(e,t.shared,n)),grouptoolbarbutton:gz(e=>Br("GroupToolbarButton",MA,e),(e,t,o,n)=>{const s=o.ui.registry.getAll().buttons,r={[zc]:t.shared.header.isPositionedAtTop()?Nc.TopToBottom:Nc.BottomToTop};if(fC(o)===QS.floating)return((e,t,o,n,s)=>{const r=t.shared,a=ye(b),i={toolbarButtonBehaviours:[],getApi:SN,onSetup:e.onSetup},l=[wd("toolbar-group-button-events",[jA(i,a),$A(i,a)]),...e.tooltip.map(e=>Tv.config(t.shared.providers.tooltips.getConfig({tooltipText:t.shared.providers.translate(e)}))).toArray()];return ty.sketch({lazySink:r.getSink,fetch:()=>Oe(t=>{t(V(o(e.items),zR))}),markers:{toggledClass:"tox-tbtn--enabled"},parts:{button:_N(e.icon,e.text,e.tooltip,A.some(l),r.providers,e.context,s),toolbar:{dom:{tag:"div",classes:["tox-toolbar__overflow"],attributes:n}}}})})(e,t,e=>fz(o,{buttons:s,toolbar:e,allowToolbarGroups:!1},t,A.none()),r,n);throw new Error("Toolbar groups are only supported when using floating toolbar mode")})},hz={styles:(e,t)=>{const o={type:"advanced",...t.styles};return LN(e,t,uz(e,o),dz,"StylesTextUpdate","styles")},fontsize:(e,t)=>LN(e,t,cz(e),nz,"FontSizeTextUpdate","fontsize"),fontsizeinput:(e,t)=>((e,t,o,n)=>{let s=A.none();const r=KD(e,"NodeChange SwitchMode DisabledStateChange",t=>{const n=t.getComponent();s=A.some(n),o.updateInputValue(n),gp.set(n,!e.selection.isEditable()||sC(e))}),a=e=>({getComponent:y(e)}),i=ye(b),l=Ne("custom-number-input-events"),c=(e,t,n)=>{const r=s.map(e=>mf.getValue(e)).getOr(""),a=o.getNewValue(r,e),i=r.length-`${a}`.length,l=s.map(e=>e.element.dom.selectionStart-i),c=s.map(e=>e.element.dom.selectionEnd-i);o.onAction(a,n),s.each(e=>{mf.setValue(e,a),t&&(l.each(t=>e.element.dom.selectionStart=t),c.each(t=>e.element.dom.selectionEnd=t))})},d=(e,t)=>c((e,t)=>e-t,e,t),u=(e,t)=>c((e,t)=>e+t,e,t),m=e=>ho(e.element).fold(A.none,e=>(zo(e),A.some(!0))),p=e=>Lo(e.element)?(wo(e.element).each(e=>zo(e)),A.some(!0)):A.none(),h=(o,n,s,r)=>{const i=ye(b),l=t.shared.providers.translate(s),c=Ne("altExecuting"),d=KD(e,"NodeChange SwitchMode DisabledStateChange",t=>{gp.set(t.getComponent(),!e.selection.isEditable()||sC(e))}),u=e=>{gp.isDisabled(e)||o(!0)};return Wv.sketch({dom:{tag:"button",attributes:{"aria-label":l,"data-mce-name":n},classes:r.concat(n)},components:[iI(n,t.shared.providers.icons)],buttonBehaviours:hd([gp.config({}),Tv.config(t.shared.providers.tooltips.getConfig({tooltipText:l})),wd(c,[jA({onSetup:d,getApi:a},i),$A({getApi:a},i),Zc(Ta(),(e,t)=>{t.event.raw.keyCode!==oz.SPACEBAR&&t.event.raw.keyCode!==oz.ENTER||gp.isDisabled(e)||o(!1)}),Zc(Ma(),u),Zc(va(),u)])]),eventOrder:{[Ta()]:[c,"keying"],[Ma()]:[c,"alloy.base.behaviour"],[va()]:[c,"alloy.base.behaviour"],[ni()]:["alloy.base.behaviour",c,"tooltipping"],[si()]:[c,"tooltipping"]}})},f=Dv(h(e=>d(!1,e),"minus","Decrease font size",[])),v=Dv(h(e=>u(!1,e),"plus","Increase font size",[])),x=Dv({dom:{tag:"div",classes:["tox-input-wrapper"]},components:[hy.sketch({inputBehaviours:hd([gp.config({}),wd(l,[jA({onSetup:r,getApi:a},i),$A({getApi:a},i)]),wd("input-update-display-text",[Zc(dI,(e,t)=>{mf.setValue(e,t.event.text)}),Zc(_a(),e=>{o.onAction(mf.getValue(e))}),Zc(Da(),e=>{o.onAction(mf.getValue(e))})]),Im.config({mode:"special",onEnter:e=>(c(w,!0,!0),A.some(!0)),onEscape:m,onUp:e=>(u(!0,!1),A.some(!0)),onDown:e=>(d(!0,!1),A.some(!0)),onLeft:(e,t)=>(t.cut(),A.none()),onRight:(e,t)=>(t.cut(),A.none())})])})],behaviours:hd([_d.config({}),Im.config({mode:"special",onEnter:p,onSpace:p,onEscape:m}),wd("input-wrapper-events",[Zc(ka(),e=>{L([f,v],t=>{const o=ct(t.get(e).element.dom);Lo(o)&&Vo(o)})})])])});return{dom:{tag:"div",classes:["tox-number-input"],attributes:{...g(n)?{"data-mce-name":n}:{}}},components:[f.asSpec(),x.asSpec(),v.asSpec()],behaviours:hd([_d.config({}),Im.config({mode:"flow",focusInside:Vi.OnEnterOrSpaceMode,cycles:!1,selector:"button, .tox-input-wrapper",onEscape:e=>Lo(e.element)?A.none():(zo(e.element),A.some(!0))})])}})(e,t,(e=>{const t=()=>e.queryCommandValue("FontSize");return{updateInputValue:e=>$c(e,dI,{text:t()}),onAction:(t,o)=>e.execCommand("FontSize",!1,t,{skip_focus:!o}),getNewValue:(o,n)=>{Is(o,["unsupportedLength","empty"]);const s=t(),r=Is(o,["unsupportedLength","empty"]).or(Is(s,["unsupportedLength","empty"])),a=r.map(e=>e.value).getOr(16),i=TC(e),l=r.map(e=>e.unit).filter(e=>""!==e).getOr(i),c=n(a,(e=>({em:{step:.1},cm:{step:.1},in:{step:.1},pc:{step:.1},ch:{step:.1},rem:{step:.1}}[e]??{step:1}))(l).step),d=`${(e=>e>=0)(c)?c:a}${l}`;return d!==s&&((e,t)=>{e.dispatch("FontSizeInputTextUpdate",t)})(e,{value:d}),d}}})(e),"fontsizeinput"),fontfamily:(e,t)=>LN(e,t,tz(e),KN,"FontFamilyTextUpdate","fontfamily"),blocks:(e,t)=>LN(e,t,XN(e),qN,"BlocksTextUpdate","blocks"),align:(e,t)=>LN(e,t,$N(e),UN,"AlignTextUpdate","align"),navigateback:(e,t)=>{const o=Ir(XE({type:"button",icon:"chevron-left",tooltip:"Back",onAction:b}));return EN(o,t.shared.providers,[Zc(oI,e=>{jc(e,IN)})])}},fz=(e,t,o,n)=>{const s=(e=>{const t=e.toolbar,o=e.buttons;return!1===t?[]:void 0===t||!0===t?(e=>{const t=V(mz,t=>{const o=P(t.items,t=>be(e,t)||be(hz,t));return{name:t.name,items:o}});return P(t,e=>e.items.length>0)})(o):r(t)?(e=>{const t=e.split("|");return V(t,e=>({items:e.trim().split(" ")}))})(t):(e=>f(e,e=>(be(e,"name")||be(e,"label"))&&be(e,"items")))(t)?t:(console.error("Toolbar type should be string, string[], boolean or ToolbarGroup[]"),[])})(t),a=V(s,s=>{const r=q(s.items,s=>0===s.trim().length?[]:((e,t,o,n,s,r)=>fe(t,o.toLowerCase()).orThunk(()=>r.bind(e=>se(e,e=>fe(t,e+o.toLowerCase())))).fold(()=>fe(hz,o.toLowerCase()).map(t=>t(e,s)),t=>"grouptoolbarbutton"!==t.type||n?((e,t,o,n)=>fe(pz,e.type).fold(()=>(console.error("skipping button defined by",e),A.none()),s=>A.some(s(e,t,o,n))))(t,s,e,o.toLowerCase()):(console.warn(`Ignoring the '${o}' toolbar button. Group toolbar buttons are only supported when using floating toolbar mode and cannot be nested.`),A.none())))(e,t.buttons,s,t.allowToolbarGroups,o,n).map(e=>Array.isArray(e)?e:[e]).getOr([]));return{title:A.from(e.translate(s.name)),label:je(void 0!==s.label,e.translate(s.label)),items:r}});return P(a,e=>e.items.length>0)},bz=(e,t,o,n)=>{const s=t.mainUi.outerContainer,a=o.toolbar,i=o.buttons;if(f(a,r)){const t=a.map(t=>{const s={toolbar:t,buttons:i,allowToolbarGroups:o.allowToolbarGroups};return fz(e,s,n,A.none())});cN.setToolbars(s,t)}else cN.setToolbar(s,fz(e,o,n,A.none()))},vz=Qt(),xz=vz.os.isiOS()&&vz.os.version.major<=12;var yz=Object.freeze({__proto__:null,render:(e,t,o,n,s)=>{const{mainUi:r,uiMotherships:a}=t,i=ye(0),l=r.outerContainer;yN(e);const d=ct(s.targetNode),u=_o(Oo(d));Km(d,r.mothership),((e,t,o)=>{ak(e)&&Km(o.mainUi.mothership.element,o.popupUi.mothership),Xm(t,o.dialogUi.mothership)})(e,u,t),e.on("PostRender",()=>{cN.setSidebar(l,o.sidebar,VC(e),{minWidth:HC(e),maxWidth:PC(e)},e),cN.setViews(l,o.views,UC(e))},!0),e.on("SkinLoaded",()=>{bz(e,t,o,n),i.set(e.getWin().innerWidth),cN.setMenubar(l,mN(e,o)),((e,t)=>{const{uiMotherships:o}=t,n=e.dom;let s=e.getWin();const r=e.getDoc().documentElement,a=ye(Bn(s.innerWidth,s.innerHeight)),i=ye(Bn(r.offsetWidth,r.offsetHeight)),l=()=>{const t=a.get();t.left===s.innerWidth&&t.top===s.innerHeight||(a.set(Bn(s.innerWidth,s.innerHeight)),WD(e))},c=()=>{const t=e.getDoc().documentElement,o=i.get();o.left===t.offsetWidth&&o.top===t.offsetHeight||(i.set(Bn(t.offsetWidth,t.offsetHeight)),WD(e))},d=t=>{((e,t)=>{e.dispatch("ScrollContent",t)})(e,t)};n.bind(s,"resize",l),n.bind(s,"scroll",d);const u=Fo(ct(e.getBody()),"load",c);e.on("hide",()=>{L(o,e=>{gn(e.element,"display","none")})}),e.on("show",()=>{L(o,e=>{wn(e.element,"display")})}),e.on("NodeChange",c),e.on("remove",()=>{u.unbind(),n.unbind(s,"resize",l),n.unbind(s,"scroll",d),s=null})})(e,t)});const m=cN.getSocket(l).getOrDie("Could not find expected socket element");if(xz){pn(m.element,{overflow:"scroll","-webkit-overflow-scrolling":"touch"});const t=(e=>{let t=null;return{cancel:()=>{c(t)||(clearTimeout(t),t=null)},throttle:(...o)=>{c(t)&&(t=setTimeout(()=>{t=null,e.apply(null,o)},20))}}})(()=>{e.dispatch("ScrollContent")}),o=Io(m.element,"scroll",t.throttle);e.on("remove",o.unbind)}QA(e,t),e.addCommand("ToggleSidebar",(t,o)=>{cN.toggleSidebar(l,o),(e=>{e.dispatch("ToggleSidebar")})(e)}),e.addQueryValueHandler("ToggleSidebar",()=>cN.whichSidebar(l)??""),e.addCommand("ToggleView",(t,o)=>{if(cN.toggleView(l,o)){const t=l.element;r.mothership.broadcastOn([zd()],{target:t}),L(a,e=>{e.broadcastOn([zd()],{target:t})}),c(cN.whichView(l))&&(e.focus(),e.nodeChanged(),cN.refreshToolbar(l)),(e=>{e.dispatch("ToggleView")})(e)}}),e.addQueryValueHandler("ToggleView",()=>cN.whichView(l)??"");const g=fC(e);g!==QS.sliding&&g!==QS.floating||e.on("ResizeWindow ResizeEditor ResizeContent",()=>{const o=e.getWin().innerWidth;o!==i.get()&&(cN.refreshToolbar(t.mainUi.outerContainer),i.set(o))});const p={setEnabled:e=>{JA(t,e?"setEnabled":"setDisabled")},isEnabled:()=>!gp.isDisabled(l)};return{iframeContainer:m.element.dom,editorContainer:l.element.dom,api:p}}});const wz=e=>{const t=aC(e),o=iC(e),n=cC(e);return xR(t).map(e=>wR(e,o,n))},{ToolbarLocation:Sz,ToolbarMode:Cz}=lk,kz=(e,t,o,n,s)=>{const{mainUi:r,uiMotherships:a}=o,i=XS.DOM,l=ok(e),c=rk(e),d=cC(e).or(wz(e)),u=n.shared.header,m=u.isPositionedAtTop,g=fC(e),p=g===Cz.sliding||g===Cz.floating,h=ye(!1),f=()=>h.get()&&!e.removed,b=e=>p?e.fold(y(0),e=>e.components().length>1?On(e.components()[1].element):0):0,v=()=>{L(a,e=>{e.broadcastOn([Vd()],{})})},x=o=>{if(!f())return;l||s.on(e=>{const o=d.getOrThunk(()=>Rs().width-Rn(t).left-10);gn(e.element,"max-width",o+"px")});const n=Nn(),a=!(l||l||!(Fn(r.outerContainer.element).left+Dn(r.outerContainer.element)>=window.innerWidth-40||vn(r.outerContainer.element,"width").isSome())||(gn(r.outerContainer.element,"position","absolute"),gn(r.outerContainer.element,"left","0px"),wn(r.outerContainer.element,"width"),0));if(p&&cN.refreshToolbar(r.outerContainer),!l){const o=Nn(),i=je(n.left!==o.left,n);((o,n)=>{s.on(s=>{const a=cN.getToolbar(r.outerContainer),i=b(a),l=Hs(t),c=((e,t)=>ak(e)?$s(t):A.none())(e,r.outerContainer.element),d=c.fold(()=>l.x,e=>{const t=Hs(e);return wt(e,cn())?l.x:l.x-t.x}),u=je(o,Math.ceil(r.outerContainer.element.dom.getBoundingClientRect().width)).filter(e=>e>150).map(e=>{const t=n.getOr(Nn()),o=window.innerWidth-(d-t.left),s=Math.max(Math.min(e,o),150);return o<e&&gn(r.outerContainer.element,"width",s+"px"),{width:s+"px"}}).getOr({width:"max-content"}),g={position:"absolute",left:Math.round(d)+"px",top:c.fold(()=>m()?Math.max(l.y-On(s.element)+i,0):l.bottom,e=>{const t=Hs(e),o=e.dom.scrollTop??0,n=wt(e,cn())?Math.max(l.y-On(s.element)+i,0):l.y-t.y+o-On(s.element)+i;return m()?n:l.bottom})+"px"};pn(r.outerContainer.element,{...g,...u})})})(a,i),i.each(e=>{zn(e.left,o.top)})}c&&s.on(o),v()},w=()=>!(l||!c||!f())&&s.get().exists(o=>{const n=u.getDockingMode(),a=(o=>{switch(vC(e)){case Sz.auto:const e=cN.getToolbar(r.outerContainer),n=b(e),s=On(o.element)-n,a=Hs(t);if(a.y>s)return"top";{const e=mo(t),o=Math.max(e.dom.scrollHeight,On(e));return a.bottom<o-s||Ws().bottom<a.bottom-s?"bottom":"top"}case Sz.bottom:return"bottom";case Sz.top:default:return"top"}})(o);return a!==n&&(i=a,s.on(e=>{Hp.setModes(e,[i]),u.setDockingMode(i);const t=m()?Nc.TopToBottom:Nc.BottomToTop;Yo(e.element,zc,t)}),!0);var i});return{isVisible:f,isPositionedAtTop:m,show:()=>{h.set(!0),gn(r.outerContainer.element,"display","flex"),i.addClass(e.getBody(),"mce-edit-focus"),L(a,e=>{wn(e.element,"display")}),w(),ak(e)?x(e=>Hp.isDocked(e)?Hp.reset(e):Hp.refresh(e)):x(Hp.refresh)},hide:()=>{h.set(!1),gn(r.outerContainer.element,"display","none"),i.removeClass(e.getBody(),"mce-edit-focus"),L(a,e=>{gn(e.element,"display","none")})},update:x,updateMode:()=>{w()&&x(Hp.reset)},repositionPopups:v}},Oz=(e,t)=>{const o=Hs(e);return{pos:t?o.y:o.bottom,bounds:o}};var _z=Object.freeze({__proto__:null,render:(e,t,o,n,s)=>{const{mainUi:r}=t,a=Ye(),i=ct(s.targetNode),l=kz(e,i,t,n,a),c=wC(e);wN(e);const d=()=>{if(a.isSet())return void l.show();a.set(cN.getHeader(r.outerContainer).getOrDie());const s=nk(e);ak(e)?(Km(i,r.mothership),Km(i,t.popupUi.mothership)):Xm(s,r.mothership),Xm(s,t.dialogUi.mothership);const d=()=>{bz(e,t,o,n),cN.setMenubar(r.outerContainer,mN(e,o)),l.show(),((e,t,o,n)=>{const s=ye(Oz(t,o.isPositionedAtTop())),r=n=>{const{pos:r,bounds:a}=Oz(t,o.isPositionedAtTop()),{pos:i,bounds:l}=s.get(),c=a.height!==l.height||a.width!==l.width;s.set({pos:r,bounds:a}),c&&WD(e,n),o.isVisible()&&(i!==r?o.update(Hp.reset):c&&(o.updateMode(),o.repositionPopups()))};n||(e.on("activate",o.show),e.on("deactivate",o.hide)),e.on("SkinLoaded ResizeWindow",()=>o.update(Hp.reset)),e.on("NodeChange keydown",e=>{requestAnimationFrame(()=>r(e))});let a=0;const i=nt(()=>o.update(Hp.refresh),33);e.on("ScrollWindow",()=>{const e=Nn().left;e!==a&&(a=e,i.throttle()),o.updateMode()}),ak(e)&&e.on("ElementScroll",e=>{o.update(Hp.refresh)});const l=qe();l.set(Fo(ct(e.getBody()),"load",e=>r(e.raw))),e.on("remove",()=>{l.clear()})})(e,i,l,c),e.nodeChanged()};c?e.once("SkinLoaded",d):d()};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()}),QA(e,t);const u={show:d,hide:l.hide,setEnabled:e=>{JA(t,e?"setEnabled":"setDisabled")},isEnabled:()=>!gp.isDisabled(r.outerContainer)};return{editorContainer:r.outerContainer.element.dom,api:u}}});const Tz="contexttoolbar-hide",Ez=(e,t,o)=>({setInputEnabled:t=>{!t&&o&&zo(o),gp.set(e,!t)},isInputEnabled:()=>!gp.isDisabled(e),hide:()=>{jc(e,Ka())},back:()=>{jc(e,IN)},getValue:()=>t.get().getOrThunk(()=>mf.getValue(e)),setValue:o=>{e.getSystem().isConnected()?mf.setValue(e,o):t.set(o)}}),Az=(e,t,o)=>{const n=po(e.element).bind(t=>e.getSystem().getByDom(t).toOptional());return Ez(n.getOr(e),t,o)},Dz=(e,t,o)=>Zc(oI,(n,s)=>{const r=e.get(n),a=Ez(r,o,n.element);t.onAction(a,s.event.buttonApi)}),Mz=(e,t,o,n)=>{const s=V(t,t=>Dv(((e,t,o,n)=>(e=>"contextformtogglebutton"===e.type)(t)?((e,t,o,n)=>{const{primary:s,...r}=t.original,a=Ir(QE({...r,type:"togglebutton",onAction:b}));return AN(a,o,[Dz(e,t,n)])})(e,t,o,n):((e,t,o,n)=>{const{primary:s,...r}=t.original,a=Ir(XE({...r,type:"button",onAction:b}));return EN(a,o,[Dz(e,t,n)])})(e,t,o,n))(e,t,o,n)));return{asSpecs:()=>V(s,e=>e.asSpec()),findPrimary:e=>se(t,(t,o)=>t.primary?A.from(s[o]).bind(t=>t.getOpt(e)).filter(k(gp.isDisabled)):A.none())}},Bz=(e,t,o,n)=>{const{width:s,height:r}=e.initValue();let a=OI;const i=Ne("ratio-event"),l=e=>Ez(e,n),c=e=>VO(e,{tag:"span",classes:["tox-icon","tox-lock-icon__"+e]},t.icons),d=()=>!1,u=e.label.getOr("Constrain proportions"),m=t.translate(u),g=ly.parts.lock({dom:{tag:"button",classes:["tox-lock","tox-lock-context-form-size-input","tox-button","tox-button--naked","tox-button--icon"],attributes:{"aria-label":m,"data-mce-name":u}},components:[c("lock"),c("unlock")],buttonBehaviours:hd([gp.config({disabled:d}),iv.config({}),Tv.config(t.tooltips.getConfig({tooltipText:m}))])}),p=e=>({dom:{tag:"div",classes:["tox-context-form__group"]},components:e}),h=e=>Gn(e.element,"div.tox-focusable-wrapper").fold(A.none,e=>(zo(e),A.some(!0))),f=e=>sy.parts.field({factory:hy,inputClasses:["tox-textfield","tox-toolbar-textfield","tox-textfield-size"],data:e?s:r,inputBehaviours:hd([gp.config({disabled:d}),iv.config({}),wd("size-input-toolbar-events",[Zc(Oa(),(t,o)=>{$c(t,i,{isField1:e})})]),Im.config({mode:"special",onEnter:o,onEscape:h})]),selectOnFocus:!1}),v=e=>({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e))]}),x=e=>({dom:{tag:"div",classes:["tox-focusable-wrapper","tox-toolbar-nav-item"]},components:[e],behaviours:hd([iv.config({}),_d.config({}),Im.config({mode:"special",onEnter:e=>Xn(e.element,"input").fold(A.none,e=>(zo(e),A.some(!0)))})])}),y=x(ly.parts.field1(p([sy.parts.label(v("Width:")),f(!0)]))),w=x(ly.parts.field2(p([sy.parts.label(v("Height:")),f(!1)]))),S=ye(b),C=[jA({onBeforeSetup:e=>Xn(e.element,"input").each(zo),onSetup:e.onSetup,getApi:l},S),GA({getApi:l},S,n)];return ly.sketch({dom:{tag:"div",classes:["tox-context-form__group"]},components:[y,p([g]),w],field1Name:"width",field2Name:"height",locked:!0,markers:{lockClass:"tox-locked"},onLockedChange:(e,t,o)=>{CI(mf.getValue(e)).each(e=>{a(e).each(e=>{mf.setValue(t,SI(e))})})},onInput:e=>jc(e,QM),coupledFieldBehaviours:hd([_d.config({}),Im.config({mode:"flow",focusInside:Vi.OnEnterOrSpaceMode,cycles:!1,selector:"button, .tox-focusable-wrapper"}),gp.config({disabled:d,onDisabled:e=>{ly.getField1(e).bind(sy.getField).each(gp.disable),ly.getField2(e).bind(sy.getField).each(gp.disable),ly.getLock(e).each(gp.disable)},onEnabled:e=>{ly.getField1(e).bind(sy.getField).each(gp.enable),ly.getField2(e).bind(sy.getField).each(gp.enable),ly.getLock(e).each(gp.enable)}}),ZA(()=>t.checkUiComponentContext("mode:design")),wd("size-input-toolbar-events2",[Zc(i,(e,t)=>{const o=t.event.isField1,n=o?ly.getField1(e):ly.getField2(e),s=o?ly.getField2(e):ly.getField1(e),r=n.map(mf.getValue).getOr(""),i=s.map(mf.getValue).getOr("");a=_I(r,i)}),Zc(QM,t=>e.onInput(l(t))),...C])])})},Iz=(e,t,o)=>sy.sketch({dom:{tag:"div",classes:["tox-context-form__group"]},components:[...e.toArray(),t],fieldBehaviours:hd([gp.config({disabled:()=>o.checkUiComponentContext("mode:design").shouldDisable,onDisabled:e=>{(e=>{Po(e.element).each(e=>{Gn(e,'[tabindex="-1"]').each(e=>{zo(e)})})})(e),sy.getField(e).each(gp.disable)},onEnabled:e=>{sy.getField(e).each(gp.enable)}})])}),Fz=(e,t,o,n)=>{const s=ye(b),r=e=>Az(e,n),a=e.label.map(e=>sy.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e))]})),i=sy.parts.field({factory:hy,type:"range",inputClasses:["tox-toolbar-slider__input","tox-toolbar-nav-item"],inputAttributes:{min:String(e.min()),max:String(e.max())},data:e.initValue().toString(),fromInputValue:t=>(e=>{const t=parseFloat(e);return isNaN(t)?A.none():A.some(t)})(t).getOr(e.min()),toInputValue:e=>String(e),inputBehaviours:hd([gp.config({disabled:()=>t.checkUiComponentContext("mode:design").shouldDisable}),ZA(()=>t.checkUiComponentContext("mode:design")),Im.config({mode:"special",onEnter:o,onLeft:(e,t)=>(t.cut(),A.none()),onRight:(e,t)=>(t.cut(),A.none())}),wd("slider-events",[jA({onSetup:e.onSetup,getApi:r,onBeforeSetup:Im.focusIn},s),GA({getApi:r},s,n),Zc(Aa(),t=>{e.onInput(r(t))})])])});return Iz(a,i,t)},Rz=(e,t,o,n)=>{const s=ye(b),r=e=>Az(e,n),a=e.label.map(e=>sy.parts.label({dom:{tag:"label",classes:["tox-label"]},components:[zg(t.translate(e))]})),i={...e.placeholder.map(e=>({placeholder:t.translate(e)})).getOr({})},l=sy.parts.field({factory:hy,inputClasses:["tox-toolbar-textfield","tox-toolbar-nav-item"],inputAttributes:i,data:e.initValue(),selectOnFocus:!0,inputBehaviours:hd([gp.config({disabled:()=>t.checkUiComponentContext("mode:design").shouldDisable}),ZA(()=>t.checkUiComponentContext("mode:design")),Im.config({mode:"special",onEnter:o,onLeft:(e,t)=>(t.cut(),A.none()),onRight:(e,t)=>(t.cut(),A.none())}),wd("input-events",[jA({onSetup:e.onSetup,getApi:e=>Gn(e.element,".tox-toolbar").bind(e=>Xn(e,"button:enabled")).fold(()=>Az(e,n),t=>Az(e,n,t)),onBeforeSetup:Im.focusIn},s),GA({getApi:r},s,n),Zc(Aa(),t=>{e.onInput(r(t))})])])});return Iz(a,l,t)},Nz=(e,t,o)=>{const n=Ye(),s=Dv(e(o,e=>a.findPrimary(e).orThunk(()=>i.findPrimary(e)).map(e=>(Gc(e),!0)),n)),r=H(t.commands,e=>"start"===e.align),a=Mz(s,r.pass,o,n),i=Mz(s,r.fail,o,n);return P([{title:A.none(),label:A.none(),items:a.asSpecs()},{title:A.none(),label:A.none(),items:[s.asSpec()]},{title:A.none(),label:A.none(),items:i.asSpecs()}],e=>e.items.length>0)},zz=(e,t)=>{switch(e.type){case"contextform":return Nz(C(Rz,e),e,t);case"contextsliderform":return Nz(C(Fz,e),e,t);case"contextsizeinputform":return Nz(C(Bz,e),e,t)}},Vz=(e,t,o)=>t.bottom-e.y>=o&&e.bottom-t.y>=o,Lz=e=>{const t=(e=>{const t=e.getBoundingClientRect();if(t.height<=0&&t.width<=0){const o=Co(ct(e.startContainer),e.startOffset).element;return(ro(o)?po(o):A.some(o)).filter(so).map(e=>e.dom.getBoundingClientRect()).getOr(t)}return t})(e.selection.getRng());if(e.inline){const e=Nn();return Ls(e.left+t.left,e.top+t.top,t.width,t.height)}{const o=Ps(ct(e.getBody()));return Ls(o.x+t.left,o.y+t.top,t.width,t.height)}},Hz=(e,t,o,n=0)=>{const s=Rs(window),r=Hs(ct(e.getContentAreaContainer())),a=YC(e)||JC(e)||ZC(e),{x:i,width:l}=((e,t,o)=>{const n=Math.max(e.x+o,t.x);return{x:n,width:Math.min(e.right-o,t.right)-n}})(r,s,n);if(e.inline&&!a)return Ls(i,s.y,l,s.height);{const a=t.header.isPositionedAtTop(),{y:c,bottom:d}=((e,t,o,n,s,r)=>{const a=ct(e.getContainer()),i=Xn(a,".tox-editor-header").getOr(a),l=Hs(i),c=l.y>=t.bottom,d=n&&!c;if(e.inline&&d)return{y:Math.max(l.bottom+r,o.y),bottom:o.bottom};if(e.inline&&!d)return{y:o.y,bottom:Math.min(l.y-r,o.bottom)};const u="line"===s?Hs(a):t;return d?{y:Math.max(l.bottom+r,o.y),bottom:Math.min(u.bottom-r,o.bottom)}:{y:Math.max(u.y+r,o.y),bottom:Math.min(l.y-r,o.bottom)}})(e,r,s,a,o,n);return Ls(i,c,l,d-c)}},Pz={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"]},Uz={maxHeightFunction:Fc(),maxWidthFunction:Rc()},Wz=e=>"node"===e,jz=(e,t,o,n,s)=>{const r=Lz(e),a=n.lastElement().exists(e=>wt(o,e));return((e,t)=>{const o=e.selection.getRng(),n=Co(ct(o.startContainer),o.startOffset);return o.startContainer===o.endContainer&&o.startOffset===o.endOffset-1&&wt(n.element,t)})(e,o)?a?Ac:kc:a?((e,o)=>{const s=vn(e,"position");gn(e,"position",o);const a=Vz(r,Hs(t),-20)&&!n.isReposition()?Mc:Ac;return s.each(t=>gn(e,"position",t)),a})(t,n.getMode()):("fixed"===n.getMode()?s.y+Nn().top:s.y)+(On(t)+12)<=r.y?kc:Oc},$z=(e,t,o,n)=>{const s=t=>(n,s,r,a,i)=>({...jz(e,a,t,o,i)({...n,y:i.y,height:i.height},s,r,a,i),alwaysFit:!0}),r=e=>Wz(n)?[s(e)]:[];return t?{onLtr:e=>[oc,Jl,Ql,Zl,ec,tc].concat(r(e)),onRtl:e=>[oc,Ql,Jl,ec,Zl,tc].concat(r(e))}:{onLtr:e=>[tc,oc,Zl,Jl,ec,Ql].concat(r(e)),onRtl:e=>[tc,oc,ec,Ql,Zl,Jl].concat(r(e))}},Gz=(e,t)=>{const o=P(t,t=>t.predicate(e.dom)),{pass:n,fail:s}=H(o,e=>"contexttoolbar"===e.type);return{contextToolbars:n,contextForms:s}},qz=(e,t)=>{const o={},n=[],s=[],r={},a={},i=re(e);return L(i,i=>{const l=e[i];"contextform"===l.type||"contextsliderform"===l.type||"contextsizeinputform"===l.type?((e,i)=>{const l=Ir(Br("ContextForm",lA,i));o[e]=l,l.launch.map(o=>{r["form:"+e]={...i.launch,type:"contextformtogglebutton"===o.type?"togglebutton":"button",onAction:()=>{t(l)}}}),"editor"===l.scope?s.push(l):n.push(l),a[e]=l})(i,l):"contexttoolbar"===l.type&&((e,o)=>{var i;(i=o,Br("ContextToolbar",dA,i)).each(i=>{i.launch.isSome()&&(r["toolbar:"+e]={...o.launch,type:"button",onAction:()=>{t(i)}}),"editor"===o.scope?s.push(i):n.push(i),a[e]=i})})(i,l)}),{forms:o,inNodeScope:n,inEditorScope:s,lookupTable:a,formNavigators:r}},Yz="tox-pop--transition",Xz=(e,t,o,n)=>{const s=n.backstage,a=s.shared,i=Qt().deviceType.isTouch,l=Ye(),c=Ye(),d=Ye(),u=(e=>{const t=ye([]),o=dy.sketch({dom:{tag:"div",classes:["tox-pop"]},fireDismissalEventInstead:{event:"doNotDismissYet"},onShow:e=>{t.set([]),dy.getContent(e).each(e=>{wn(e.element,"visibility")}),rs(e.element,RN),wn(e.element,"width")},onHide:()=>{t.set([]),e.onHide()},inlineBehaviours:hd([wd("context-toolbar-events",[ad(Ia(),(e,t)=>{"width"===t.event.raw.propertyName&&(rs(e.element,RN),wn(e.element,"width"))}),Zc(FN,(t,o)=>{const n=t.element;wn(n,"width");const s=An(n),r=Po(t.element).isSome();wn(n,"left"),wn(n,"right"),wn(n,"max-width"),dy.setContent(t,o.event.contents),ns(n,RN);const a=An(n);gn(n,"transition","none"),dy.reposition(t),wn(n,"transition"),gn(n,"width",s+"px"),o.event.focus.fold(()=>{r&&MN(t)},o=>{Ho(Oo(t.element)).fold(()=>zo(o),t=>{wt(t,o)||e.focusElement(o)})}),setTimeout(()=>{gn(t.element,"width",a+"px")},0)}),Zc(BN,(e,o)=>{dy.getContent(e).each(o=>{t.set(t.get().concat([{bar:o,focus:Ho(Oo(e.element))}]))}),$c(e,FN,{contents:o.event.forwardContents,focus:A.none()})}),Zc(IN,(o,n)=>{e.onBack(),oe(t.get()).each(e=>{t.set(t.get().slice(0,t.get().length-1)),$c(o,FN,{contents:Ug(e.bar),focus:e.focus})})})]),Im.config({mode:"special",onEscape:o=>oe(t.get()).fold(()=>e.onEscape(),e=>(jc(o,IN),A.some(!0)))})]),lazySink:()=>Ae.value(e.sink)});return{sketch:o,inSubtoolbar:()=>t.get().length>0}})({sink:o,onEscape:()=>(e.focus(),GD(e),A.some(!0)),onHide:()=>{GD(e)},onBack:()=>{(e=>{e.dispatch("ContextFormSlideBack")})(e)},focusElement:t=>{e.getBody().contains(t.dom)?e.focus():zo(t)}}),m=Pg(u.sketch),g=()=>{const t=d.get().getOr("node"),o=Wz(t)?1:0;return Hz(e,a,t,o)},p=()=>!(e.removed||i()&&s.isContextMenuOpen()),h=()=>{if(p()){const t=g(),o=He(d.get(),"node")?((e,t)=>t.filter(e=>ln(e)&&no(e)).map(Ps).getOrThunk(()=>Lz(e)))(e,l.get()):Lz(e);return t.height<=0||!Vz(o,t,.01)}return!0},f=()=>{l.clear(),c.clear(),d.clear(),dy.hide(m)},v=()=>{if(dy.isOpen(m)){const e=m.element;wn(e,"display"),h()?gn(e,"display","none"):(c.set(0),dy.reposition(m))}},x=t=>({dom:{tag:"div",classes:["tox-pop__dialog"]},components:[t],behaviours:hd([Im.config({mode:"acyclic"}),wd("pop-dialog-wrap-events",[id(t=>{e.shortcuts.add("ctrl+F9","focus statusbar",()=>Im.focusIn(t))}),ld(t=>{e.shortcuts.remove("ctrl+F9")})])])}),y=e=>{const t=S([e]);$c(m,BN,{forwardContents:x(t)})},w=st(()=>qz(t,y)),S=t=>{const{buttons:o}=e.ui.registry.getAll(),s={...o,...w().formNavigators},i=fC(e)===QS.scrolling?QS.scrolling:QS.default,l=G(V(t,t=>{return"contexttoolbar"===t.type?((t,o)=>fz(e,{buttons:t,toolbar:o.items,allowToolbarGroups:!1},n.backstage,A.some(["form:","toolbar:"])))(s,(o=t,{...o,launch:o.launch.getOrUndefined(),items:r(o.items)?o.items:V(o.items,uA)})):((e,t)=>zz(e,t))(t,a.providers);var o}));return UR({type:i,uid:Ne("context-toolbar"),initGroups:l,onEscape:A.none,cyclicKeying:!0,providers:a.providers})},C=(t,n)=>{if(O.cancel(),!p())return;const s=S(t),r=t[0].position,u=((t,n)=>{const s="node"===t?a.anchors.node(n):a.anchors.cursor(),r=((e,t,o,n)=>"line"===t?{bubble:Ml(12,0,Pz),layouts:{onLtr:()=>[nc,sc],onRtl:()=>[sc,nc]},overrides:Uz}:{bubble:Ml(0,12,Pz,1/12),layouts:$z(e,o,n,t),overrides:Uz})(e,t,i(),{lastElement:l.get,isReposition:()=>He(c.get(),0),getMode:()=>hb.getMode(o)});return Ve(s,r)})(r,n);d.set(r),c.set(1);const f=m.element;wn(f,"display"),(e=>He(Ue(e,l.get(),wt),!0))(n)||(rs(f,Yz),hb.reset(o,m)),dy.showWithinBounds(m,x(s),{anchor:u,transition:{classes:[Yz],mode:"placement"}},()=>A.some(g())),n.fold(l.clear,l.set),h()&&gn(f,"display","none")};let k=!1;const O=nt(()=>{!e.hasFocus()||e.removed||k||(as(m.element,Yz)?O.throttle():((e,t)=>{const o=ct(t.getBody()),n=e=>wt(e,o),s=ct(t.selection.getNode());return(e=>!n(e)&&!St(o,e))(s)?A.none():((e,t,o)=>{const n=Gz(e,t);if(n.contextForms.length>0)return A.some({elem:e,toolbars:[n.contextForms[0]]});{const t=Gz(e,o);if(t.contextForms.length>0)return A.some({elem:e,toolbars:[t.contextForms[0]]});if(n.contextToolbars.length>0||t.contextToolbars.length>0){const o=(e=>{if(e.length<=1)return e;{const t=t=>R(e,e=>e.position===t),o=t=>P(e,e=>e.position===t),n=t("selection"),s=t("node");if(n||s){if(s&&n){const e=o("node"),t=V(o("selection"),e=>({...e,position:"node"}));return e.concat(t)}return o(n?"selection":"node")}return o("line")}})(n.contextToolbars.concat(t.contextToolbars));return A.some({elem:e,toolbars:o})}return A.none()}})(s,e.inNodeScope,e.inEditorScope).orThunk(()=>((e,t,o)=>e(t)?A.none():bs(t,e=>{if(so(e)){const{contextToolbars:t,contextForms:n}=Gz(e,o.inNodeScope),s=n.length>0?n:(e=>{if(e.length<=1)return e;{const t=t=>j(e,e=>e.position===t);return t("selection").orThunk(()=>t("node")).orThunk(()=>t("line")).map(e=>e.position).fold(()=>[],t=>P(e,e=>e.position===t))}})(t);return s.length>0?A.some({elem:e,toolbars:s}):A.none()}return A.none()},e))(n,s,e))})(w(),e).fold(f,e=>{C(e.toolbars,A.some(e.elem))}))},17);e.on("init",()=>{e.on("remove",f),e.on("ScrollContent ScrollWindow ObjectResized ResizeEditor longpress",v),e.on("click focus SetContent",O.throttle),e.on("keyup",e=>{var t;((t=e.keyCode)!==oz.ENTER&&t!==oz.SPACEBAR||!u.inSubtoolbar())&&O.throttle()}),e.on(Tz,f),e.on("contexttoolbar-show",t=>{const o=w();fe(o.lookupTable,t.toolbarKey).each(o=>{C([o],je(t.target!==e,t.target)),MN(m)})}),e.on("focusout",t=>{YS.setEditorTimeout(e,()=>{Po(o.element).isNone()&&Po(m.element).isNone()&&!e.hasFocus()&&f()},0)}),e.on("SwitchMode",()=>{e.mode.isReadOnly()&&f()}),e.on("DisabledStateChange",e=>{e.state&&f()}),e.on("ExecCommand",({command:e})=>{"toggleview"===e.toLowerCase()&&f()}),e.on("AfterProgressState",t=>{t.state?f():e.hasFocus()&&O.throttle()}),e.on("dragstart",()=>{k=!0}),e.on("dragend drop",()=>{k=!1}),e.on("NodeChange",e=>{u.inSubtoolbar()?(gn(m.element,"transition","none"),v(),wn(m.element,"transition")):Po(m.element).fold(O.throttle,b)})})},Kz=(e,t)=>{const o=()=>{const o=t.getOptions(e),n=t.getCurrent(e).map(t.hash),s=Ye();return V(o,o=>({type:"togglemenuitem",text:t.display(o),onSetup:r=>{const a=e=>{e&&(s.on(e=>e.setActive(!1)),s.set(r)),r.setActive(e)};a(He(n,t.hash(o)));const i=t.watcher(e,o,a);return()=>{s.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})},Jz=e=>{Kz(e,(e=>({name:"lineheight",text:"Line height",icon:"line-height",getOptions:KC,hash:e=>(e=>Is(e,["fixed","relative","empty"]).map(({value:e,unit:t})=>e+t))(e).getOr(e),display:w,watcher:(e,t,o)=>e.formatter.formatChanged("lineheight",o,!1,{value:t}).unbind,getCurrent:e=>A.from(e.queryCommandValue("LineHeight")),setCurrent:(e,t)=>e.execCommand("LineHeight",!1,t),onToolbarSetup:YD(e),onMenuSetup:YD(e)}))(e)),(e=>A.from(pC(e)).map(t=>({name:"language",text:"Language",icon:"language",getOptions:y(t),hash:e=>u(e.customCode)?e.code:`${e.code}/${e.customCode}`,display:e=>e.title,watcher:(e,t,o)=>e.formatter.formatChanged("lang",o,!1,{value:t.code,customValue:t.customCode??null}).unbind,getCurrent:e=>{const t=ct(e.selection.getNode());return vs(t,e=>A.some(e).filter(so).bind(e=>Jo(e,"lang").map(t=>({code:t,customCode:Jo(e,"data-mce-lang").getOrUndefined(),title:""}))))},setCurrent:(e,t)=>e.execCommand("Lang",!1,t),onToolbarSetup:t=>{const o=qe();return t.setActive(e.formatter.match("lang",{},void 0,!0)),o.set(e.formatter.formatChanged("lang",t.setActive,!0)),qD(o.clear,YD(e)(t))},onMenuSetup:YD(e)})))(e).each(t=>Kz(e,t))},Qz=e=>KD(e,"NodeChange",t=>{t.setEnabled(e.queryCommandState("outdent")&&e.selection.isEditable())}),Zz=(e,t)=>o=>{o.setActive(t.get());const n=e=>{t.set(e.state),o.setActive(e.state)};return e.on("PastePlainTextToggle",n),qD(()=>e.off("PastePlainTextToggle",n),YD(e)(o))},eV=(e,t)=>()=>{e.execCommand("mceToggleFormat",!1,t)},tV=e=>{(e=>{(e=>{MB.each([{name:"bold",text:"Bold",icon:"bold",shortcut:"Meta+B"},{name:"italic",text:"Italic",icon:"italic",shortcut:"Meta+I"},{name:"underline",text:"Underline",icon:"underline",shortcut:"Meta+U"},{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:XD(e,t.name),onAction:eV(e,t.name),shortcut:t.shortcut})});for(let t=1;t<=6;t++){const o="h"+t,n=`Access+${t}`;e.ui.registry.addToggleButton(o,{text:o.toUpperCase(),tooltip:"Heading "+t,onSetup:XD(e,o),onAction:eV(e,o),shortcut:n})}})(e),(e=>{MB.each([{name:"copy",text:"Copy",action:"Copy",icon:"copy",context:"any"},{name:"help",text:"Help",action:"mceHelp",icon:"help",shortcut:"Alt+0",context:"any"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all",shortcut:"Meta+A",context:"any"},{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"print",text:"Print",action:"mcePrint",icon:"print",shortcut:"Meta+P",context:"any"}],t=>{e.ui.registry.addButton(t.name,{tooltip:t.text,icon:t.icon,onAction:QD(e,t.action),shortcut:t.shortcut,context:t.context})}),MB.each([{name:"cut",text:"Cut",action:"Cut",icon:"cut"},{name:"paste",text:"Paste",action:"Paste",icon:"paste"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"remove",text:"Remove",action:"Delete",icon:"remove"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],t=>{e.ui.registry.addButton(t.name,{tooltip:t.text,icon:t.icon,onSetup:YD(e),onAction:QD(e,t.action)})})})(e),(e=>{MB.each([{name:"blockquote",text:"Blockquote",action:"mceBlockQuote",icon:"quote"}],t=>{e.ui.registry.addToggleButton(t.name,{tooltip:t.text,icon:t.icon,onAction:QD(e,t.action),onSetup:XD(e,t.name)})})})(e)})(e),(e=>{MB.each([{name:"newdocument",text:"New document",action:"mceNewDocument",icon:"new-document"},{name:"copy",text:"Copy",action:"Copy",icon:"copy",shortcut:"Meta+C",context:"any"},{name:"selectall",text:"Select all",action:"SelectAll",icon:"select-all",shortcut:"Meta+A",context:"any"},{name:"print",text:"Print...",action:"mcePrint",icon:"print",shortcut:"Meta+P",context:"any"}],t=>{e.ui.registry.addMenuItem(t.name,{text:t.text,icon:t.icon,shortcut:t.shortcut,onAction:QD(e,t.action),context:t.context})}),MB.each([{name:"bold",text:"Bold",action:"Bold",icon:"bold",shortcut:"Meta+B"},{name:"italic",text:"Italic",action:"Italic",icon:"italic",shortcut:"Meta+I"},{name:"underline",text:"Underline",action:"Underline",icon:"underline",shortcut:"Meta+U"},{name:"strikethrough",text:"Strikethrough",action:"Strikethrough",icon:"strike-through"},{name:"subscript",text:"Subscript",action:"Subscript",icon:"subscript"},{name:"superscript",text:"Superscript",action:"Superscript",icon:"superscript"},{name:"removeformat",text:"Clear formatting",action:"RemoveFormat",icon:"remove-formatting"},{name:"cut",text:"Cut",action:"Cut",icon:"cut",shortcut:"Meta+X"},{name:"paste",text:"Paste",action:"Paste",icon:"paste",shortcut:"Meta+V"},{name:"hr",text:"Horizontal line",action:"InsertHorizontalRule",icon:"horizontal-rule"}],t=>{e.ui.registry.addMenuItem(t.name,{text:t.text,icon:t.icon,shortcut:t.shortcut,onSetup:YD(e),onAction:QD(e,t.action)})}),e.ui.registry.addMenuItem("codeformat",{text:"Code",icon:"sourcecode",onSetup:YD(e),onAction:eV(e,"code")})})(e)},oV=(e,t)=>KD(e,"Undo Redo AddUndo TypingUndo ClearUndos SwitchMode",o=>{o.setEnabled(!e.mode.isReadOnly()&&e.undoManager[t]())}),nV=e=>KD(e,"VisualAid",t=>{t.setActive(e.hasVisual)}),sV=(e,t)=>{(e=>{L([{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"}],t=>{e.ui.registry.addToggleButton(t.name,{tooltip:t.text,icon:t.icon,onAction:QD(e,t.cmd),onSetup:XD(e,t.name)})}),e.ui.registry.addButton("alignnone",{tooltip:"No alignment",icon:"align-none",onSetup:YD(e),onAction:QD(e,"JustifyNone")})})(e),tV(e),((e,t)=>{((e,t)=>{const o=VN(t,$N(e));e.ui.registry.addNestedMenuItem("align",{text:t.shared.providers.translate("Align"),onSetup:YD(e),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})})(e,t),((e,t)=>{const o=VN(t,tz(e));e.ui.registry.addNestedMenuItem("fontfamily",{text:t.shared.providers.translate("Fonts"),onSetup:YD(e),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})})(e,t),((e,t)=>{const o={type:"advanced",...t.styles},n=VN(t,uz(e,o));e.ui.registry.addNestedMenuItem("styles",{text:"Formats",onSetup:YD(e,()=>n.getStyleItems().length>0),getSubmenuItems:()=>n.items.validateItems(n.getStyleItems())})})(e,t),((e,t)=>{const o=VN(t,XN(e));e.ui.registry.addNestedMenuItem("blocks",{text:"Blocks",onSetup:YD(e),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})})(e,t),((e,t)=>{const o=VN(t,cz(e));e.ui.registry.addNestedMenuItem("fontsize",{text:"Font sizes",onSetup:YD(e),getSubmenuItems:()=>o.items.validateItems(o.getStyleItems())})})(e,t)})(e,t),(e=>{(e=>{e.ui.registry.addMenuItem("undo",{text:"Undo",icon:"undo",shortcut:"Meta+Z",onSetup:oV(e,"hasUndo"),onAction:QD(e,"undo")}),e.ui.registry.addMenuItem("redo",{text:"Redo",icon:"redo",shortcut:"Meta+Y",onSetup:oV(e,"hasRedo"),onAction:QD(e,"redo")})})(e),(e=>{e.ui.registry.addButton("undo",{tooltip:"Undo",icon:"undo",enabled:!1,onSetup:oV(e,"hasUndo"),onAction:QD(e,"undo"),shortcut:"Meta+Z"}),e.ui.registry.addButton("redo",{tooltip:"Redo",icon:"redo",enabled:!1,onSetup:oV(e,"hasRedo"),onAction:QD(e,"redo"),shortcut:"Meta+Y"})})(e)})(e),(e=>{(e=>{e.addCommand("mceApplyTextcolor",(t,o)=>{((e,t,o)=>{e.undoManager.transact(()=>{e.focus(),e.formatter.apply(t,{value:o}),e.nodeChanged()})})(e,t,o)}),e.addCommand("mceRemoveTextcolor",t=>{((e,t)=>{e.undoManager.transact(()=>{e.focus(),e.formatter.remove(t,{value:null},void 0,!0),e.nodeChanged()})})(e,t)})})(e);const t=gM(e),o=pM(e),n=ye(t),s=ye(o);kM(e,"forecolor","forecolor",n),kM(e,"backcolor","hilitecolor",s),OM(e,"forecolor","forecolor","Text color",n),OM(e,"backcolor","hilitecolor","Background color",s)})(e),(e=>{(e=>{e.ui.registry.addButton("visualaid",{tooltip:"Visual aids",text:"Visual aids",onAction:QD(e,"mceToggleVisualAid"),context:"any"})})(e),(e=>{e.ui.registry.addToggleMenuItem("visualaid",{text:"Visual aids",onSetup:nV(e),onAction:QD(e,"mceToggleVisualAid"),context:"any"})})(e)})(e),(e=>{(e=>{e.ui.registry.addButton("outdent",{tooltip:"Decrease indent",icon:"outdent",onSetup:Qz(e),onAction:QD(e,"outdent")}),e.ui.registry.addButton("indent",{tooltip:"Increase indent",icon:"indent",onSetup:YD(e,()=>e.queryCommandState("indent")),onAction:QD(e,"indent")})})(e)})(e),Jz(e),(e=>{const t=ye(zC(e)),o=()=>e.execCommand("mceTogglePlainTextPaste");e.ui.registry.addToggleButton("pastetext",{active:!1,icon:"paste-text",tooltip:"Paste as text",onAction:o,onSetup:Zz(e,t)}),e.ui.registry.addToggleMenuItem("pastetext",{text:"Paste as text",icon:"paste-text",onAction:o,onSetup:Zz(e,t)})})(e),(e=>{e.ui.registry.addContext("editable",()=>e.selection.isEditable()),e.ui.registry.addContext("mode",t=>e.mode.get()===t),e.ui.registry.addContext("any",E),e.ui.registry.addContext("formatting",t=>e.formatter.canApply(t)),e.ui.registry.addContext("insert",t=>e.schema.isValidChild(e.selection.getNode().tagName,t))})(e)},rV=e=>r(e)?e.split(/[ ,]/):e,aV=e=>t=>t.options.get(e),iV=aV("contextmenu_never_use_native"),lV=aV("contextmenu_avoid_overlap"),cV=e=>{const t=e.ui.registry.getAll().contextMenus,o=e.options.get("contextmenu");return e.options.isSet("contextmenu")?o:P(o,e=>be(t,e))},dV=(e,t)=>({type:"makeshift",x:e,y:t}),uV=e=>"longpress"===e.type||0===e.type.indexOf("touch"),mV=(e,t)=>"contextmenu"===t.type||"longpress"===t.type?e.inline?(e=>{if(uV(e)){const t=e.touches[0];return dV(t.pageX,t.pageY)}return dV(e.pageX,e.pageY)})(t):((e,t)=>{const o=XS.DOM.getPos(e);return((e,t,o)=>dV(e.x+t,e.y+o))(t,o.x,o.y)})(e.getContentAreaContainer(),(e=>{if(uV(e)){const t=e.touches[0];return dV(t.clientX,t.clientY)}return dV(e.clientX,e.clientY)})(t)):gV(e),gV=e=>({type:"selection",root:ct(e.selection.getNode())}),pV=(e,t,o)=>{switch(o){case"node":return(e=>({type:"node",node:A.some(ct(e.selection.getNode())),root:ct(e.getBody())}))(e);case"point":return mV(e,t);case"selection":return gV(e)}},hV=(e,t,o,n,s,r)=>{const a=o(),i=pV(e,t,r);bI(a,WO.CLOSE_ON_EXECUTE,n,{isHorizontalMenu:!1,search:A.none()}).map(e=>{t.preventDefault(),dy.showMenuAt(s,{anchor:i},{menu:{markers:s_("normal")},data:e})})},fV={onLtr:()=>[oc,Jl,Ql,Zl,ec,tc,kc,Oc,Cc,wc,Sc,yc],onRtl:()=>[oc,Ql,Jl,ec,Zl,tc,kc,Oc,Sc,yc,Cc,wc]},bV={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"]},vV=(e,t,o,n,s,r)=>{const a=Qt(),i=a.os.isiOS(),l=a.os.isMacOS(),c=a.os.isAndroid(),d=a.deviceType.isTouch(),u=()=>{const a=o();((e,t,o,n,s,r,a)=>{const i=((e,t,o)=>{const n=pV(e,t,o);return{bubble:Ml(0,"point"===o?12:0,bV),layouts:fV,overrides:{maxWidthFunction:Rc(),maxHeightFunction:Fc()},...n}})(e,t,r);bI(o,WO.CLOSE_ON_EXECUTE,n,{isHorizontalMenu:!0,search:A.none()}).map(o=>{t.preventDefault();const l=a?Lc.HighlightMenuAndItem:Lc.HighlightNone;dy.showMenuWithinBounds(s,{anchor:i},{menu:{markers:s_("normal"),highlightOnOpen:l},data:o,type:"horizontal"},()=>A.some(Hz(e,n.shared,"node"===r?"node":"selection"))),e.dispatch(Tz)})})(e,t,a,n,s,r,!(c||i||l&&d))};if((l||i)&&"node"!==r){const o=()=>{(e=>{const t=e.selection.getRng(),o=()=>{YS.setEditorTimeout(e,()=>{e.selection.setRng(t)},10),r()};e.once("touchend",o);const n=e=>{e.preventDefault(),e.stopImmediatePropagation()};e.on("mousedown",n,!0);const s=()=>r();e.once("longpresscancel",s);const r=()=>{e.off("touchend",o),e.off("longpresscancel",s),e.off("mousedown",n)}})(e),u()};((e,t)=>{const o=e.selection;if(o.isCollapsed()||t.touches.length<1)return!1;{const n=t.touches[0],s=o.getRng();return Ds(e.getWin(),Cs.domRange(s)).exists(e=>e.left<=n.clientX&&e.right>=n.clientX&&e.top<=n.clientY&&e.bottom>=n.clientY)}})(e,t)?o():(e.once("selectionchange",o),e.once("touchend",()=>e.off("selectionchange",o)))}else u()},xV=e=>r(e)?"|"===e:"separator"===e.type,yV={type:"separator"},wV=e=>{const t=e=>({text:e.text,icon:e.icon,enabled:e.enabled,shortcut:e.shortcut});if(r(e))return e;switch(e.type){case"separator":return yV;case"submenu":return{type:"nestedmenuitem",...t(e),getSubmenuItems:()=>{const t=e.getSubmenuItems();return r(t)?t:V(t,wV)}};default:const o=e;return{type:"menuitem",...t(o),onAction:v(o.onAction)}}},SV=(e,t)=>{if(0===t.length)return e;const o=oe(e).filter(e=>!xV(e)).fold(()=>[],e=>[yV]);return e.concat(o).concat(t).concat([yV])},CV=(e,t)=>!(e=>"longpress"===e.type||be(e,"touches"))(t)&&(2!==t.button||t.target===e.getBody()&&""===t.pointerType),kV=(e,t)=>CV(e,t)?e.selection.getStart(!0):t.target,OV=(e,t,o)=>{const n=Qt().deviceType.isTouch,s=Pg(dy.sketch({dom:{tag:"div"},lazySink:t,onEscape:()=>e.focus(),onShow:()=>o.setContextMenuState(!0),onHide:()=>o.setContextMenuState(!1),fireDismissalEventInstead:{},inlineBehaviours:hd([wd("dismissContextMenu",[Zc(ri(),(t,o)=>{zb.close(t),e.focus()})])])})),a=()=>dy.hide(s),i=t=>{if(iV(e)&&t.preventDefault(),((e,t)=>t.ctrlKey&&!iV(e))(e,t)||(e=>0===cV(e).length)(e))return;const a=((e,t)=>{const o=lV(e),n=CV(e,t)?"selection":"point";if(tt(o)){const s=kV(e,t);return hs(ct(s),o)?"node":n}return n})(e,t);(n()?vV:hV)(e,t,()=>{const o=kV(e,t),n=e.ui.registry.getAll(),s=cV(e);return((e,t,o)=>{const n=W(t,(t,n)=>fe(e,n.toLowerCase()).map(e=>{const n=e.update(o);if(r(n)&&tt(et(n)))return SV(t,n.split(" "));if(l(n)&&n.length>0){const e=V(n,wV);return SV(t,e)}return t}).getOrThunk(()=>t.concat([n])),[]);return n.length>0&&xV(n[n.length-1])&&n.pop(),n})(n.contextMenus,s,o)},o,s,a)};e.on("init",()=>{const t="ResizeEditor ScrollContent ScrollWindow longpresscancel"+(n()?"":" ResizeWindow");e.on(t,a),e.on("longpress contextmenu",i)})},_V=(e,t,o,n,s,r)=>e.fold(()=>Wh.snap({sensor:Jp(o-20,n-20),range:Bn(s,r),output:Jp(A.some(o),A.some(n)),extra:{td:t}}),e=>{const s=o-20,r=n-20,a=e.element.dom.getBoundingClientRect();return Wh.snap({sensor:Jp(s,r),range:Bn(40,40),output:Jp(A.some(o-a.width/2),A.some(n-a.height/2)),extra:{td:t}})}),TV=(e,t,o)=>({getSnapPoints:e,leftAttr:"data-drag-left",topAttr:"data-drag-top",onSensor:(e,n)=>{const s=n.td;((e,t)=>e.exists(e=>wt(e,t)))(t.get(),s)||(t.set(s),o(s))},mustSnap:!0}),EV=e=>Dv(Wv.sketch({dom:{tag:"div",classes:["tox-selector"]},buttonBehaviours:hd([Wh.config({mode:"mouseOrTouch",blockerClass:"blocker",snaps:e}),Ev.config({})]),eventOrder:{mousedown:["dragging","alloy.base.behaviour"],touchstart:["dragging","alloy.base.behaviour"]}})),AV=(e,t)=>{const o=ye([]),n=ye([]),s=ye(!1),r=Ye(),a=Ye(),i=e=>{const o=Ps(e);return _V(u.getOpt(t),e,o.x,o.y,o.width,o.height)},l=e=>{const o=Ps(e);return _V(m.getOpt(t),e,o.right,o.bottom,o.width,o.height)},c=TV(()=>V(o.get(),e=>i(e)),r,t=>{a.get().each(o=>{e.dispatch("TableSelectorChange",{start:t,finish:o})})}),d=TV(()=>V(n.get(),e=>l(e)),a,t=>{r.get().each(o=>{e.dispatch("TableSelectorChange",{start:o,finish:t})})}),u=EV(c),m=EV(d),g=Pg(u.asSpec()),p=Pg(m.asSpec()),h=(t,o,n,s)=>{const r=n(o);Wh.snapTo(t,r),((t,o)=>{const n=o.dom.getBoundingClientRect();wn(t.element,"display");const r=go(ct(e.getBody())).dom.innerHeight,a=n[s]<0,i=((e,t)=>e[s]>t)(n,r);(a||i)&&gn(t.element,"display","none")})(t,o)},f=e=>h(g,e,i,"top"),b=e=>h(p,e,l,"bottom");if(Qt().deviceType.isTouch()){const i=e=>V(e,ct);e.on("TableSelectionChange",e=>{s.get()||(jm(t,g),jm(t,p),s.set(!0));const l=ct(e.start),c=ct(e.finish);r.set(l),a.set(c),A.from(e.otherCells).each(e=>{o.set(i(e.upOrLeftCells)),n.set(i(e.downOrRightCells)),f(l),b(c)})}),e.on("ResizeEditor ResizeWindow ScrollContent",()=>{r.get().each(f),a.get().each(b)}),e.on("TableSelectionClear",()=>{s.get()&&(qm(g),qm(p),s.set(!1)),r.clear(),a.clear()})}},DV=e=>"BR"===e.nodeName||!!e.getAttribute("data-mce-bogus")||"bookmark"===e.getAttribute("data-mce-type"),MV=(e,t,o)=>{const n=t.delimiter??"\u203a";return{dom:{tag:"div",classes:["tox-statusbar__path"],attributes:{role:"group","aria-label":o.translate("Element Path")}},behaviours:hd([Im.config({mode:"flow",selector:"div[role=button]"}),gp.config({disabled:o.isDisabled}),ZA(()=>o.checkUiComponentContext("any")),iv.config({}),ug.config({}),wd("elementPathEvents",[id((t,s)=>{e.shortcuts.add("alt+F11","focus statusbar elementpath",()=>Im.focusIn(t)),e.on("NodeChange",s=>{const r=(t=>{const o=[];let n=t.length;for(;n-- >0;){const s=t[n];if(1===s.nodeType&&!DV(s)){const t=$D(e,s);if(t.isDefaultPrevented()||o.push({name:t.name,element:s}),t.isPropagationStopped())break}}return o})(s.parents),a=r.length>0?W(r,(t,s,r)=>{const a=((t,n,s)=>Wv.sketch({dom:{tag:"div",classes:["tox-statusbar__path-item"],attributes:{"data-index":s}},components:[zg(t)],action:t=>{e.focus(),e.selection.select(n),e.nodeChanged()},buttonBehaviours:hd([Tv.config({...o.tooltips.getConfig({tooltipText:o.translate(["Select the {0} element",n.nodeName.toLowerCase()]),onShow:(e,t)=>{qs(e.element,t.element)},onHide:e=>{var t;t=e.element,Zo(t,"aria-describedby")}})}),PA(o.isDisabled),ZA(()=>o.checkUiComponentContext("any"))])}))(s.name,s.element,r);return 0===r?t.concat([a]):t.concat([{dom:{tag:"div",classes:["tox-statusbar__path-divider"],attributes:{"aria-hidden":!0}},components:[zg(` ${n} `)]},a])},[]):[];ug.set(t,a)})})])]),components:[]}};var BV;!function(e){e[e.None=0]="None",e[e.Both=1]="Both",e[e.Vertical=2]="Vertical"}(BV||(BV={}));const IV=e=>{const t=ct(e.getContainer());return{height:On(t),width:An(t)}},FV=(e,t,o)=>{const n=ct(e.getContainer()),s=((e,t,o,n)=>{const s=wR(n.height+t.top,lC(e),dC(e));return o===BV.Both?{height:s,width:wR(n.width+t.left,iC(e),cC(e))}:{height:s}})(e,t,o,IV(e));return ie(s,(e,t)=>{h(e)&&gn(n,t,yR(e))}),(e=>{e.dispatch("ResizeEditor")})(e),s},RV=(e,t,o,n,s)=>{Yo(e.element,"aria-valuetext",((e,t)=>t===BV.Both?AO.translate(["Editor's height: {0} pixels, Editor's width: {1} pixels",e.height,e.width]):AO.translate(["Editor's height: {0} pixels",e.height]))(t,o)),o===BV.Vertical&&(Yo(e.element,"aria-valuenow",t.height),Yo(e.element,"aria-valuemin",n.getOr(0)),Yo(e.element,"aria-valuemax",s.getOr(t.height+20)))},NV=(e,t,o,n,s,r,a)=>{const i=Bn(20*n,20*s),l=FV(e,i,o);return RV(t,l,o,r,a),A.some(!0)},zV=(e,t)=>{const o=()=>{const o=[],n=jC(e),s=FC(e),r=RC(e)||e.hasPlugin("wordcount");return s&&o.push(MV(e,{},t)),n&&o.push((()=>{const e=aD("Alt+0");return{dom:{tag:"div",classes:["tox-statusbar__help-text"]},components:[zg(AO.translate(["Press {0} for help",e]))]}})()),r&&o.push((()=>{const o=[];return e.hasPlugin("wordcount")&&o.push(((e,t)=>{const o=(e,o,n)=>ug.set(e,[zg(t.translate(["{0} "+n,o[n]]))]);return Wv.sketch({dom:{tag:"button",classes:["tox-statusbar__wordcount"]},components:[],buttonBehaviours:hd([PA(t.isDisabled),ZA(()=>t.checkUiComponentContext("any")),iv.config({}),ug.config({}),mf.config({store:{mode:"memory",initialValue:{mode:"words",count:{words:0,characters:0}}}}),wd("wordcount-events",[dd(e=>{const t=mf.getValue(e),n="words"===t.mode?"characters":"words";mf.setValue(e,{mode:n,count:t.count}),o(e,t.count,n)}),id(t=>{e.on("wordCountUpdate",e=>{const{mode:n}=mf.getValue(t);mf.setValue(t,{mode:n,count:e.wordCount}),o(t,e.wordCount,n)})})])]),eventOrder:{[Ga()]:["disabling","alloy.base.behaviour","wordcount-events"]}})})(e,t)),RC(e)&&o.push({dom:{tag:"span",classes:["tox-statusbar__branding"]},components:[{dom:{tag:"a",attributes:{href:"https://www.tiny.cloud/powered-by-tiny?utm_campaign=poweredby&utm_source=tiny&utm_medium=referral&utm_content=v7",rel:"noopener",target:"_blank","aria-label":e.translate(["Build with {0}","TinyMCE"])},innerHtml:e.translate(["Build with {0}",'<svg height="16" viewBox="0 0 80 16" width="80" xmlns="http://www.w3.org/2000/svg"><g opacity=".8"><path d="m80 3.537v-2.202h-7.976v11.585h7.976v-2.25h-5.474v-2.621h4.812v-2.069h-4.812v-2.443zm-10.647 6.929c-.493.217-1.13.337-1.864.337s-1.276-.156-1.805-.47a3.732 3.732 0 0 1 -1.3-1.298c-.324-.554-.48-1.191-.48-1.877s.156-1.335.48-1.877a3.635 3.635 0 0 1 1.3-1.299 3.466 3.466 0 0 1 1.805-.481c.65 0 .914.06 1.263.18.36.12.698.277.986.47.289.192.578.384.842.6l.12.085v-2.586l-.023-.024c-.385-.35-.855-.614-1.384-.818-.53-.205-1.155-.313-1.877-.313-.721 0-1.6.144-2.333.445a5.773 5.773 0 0 0 -1.937 1.251 5.929 5.929 0 0 0 -1.324 1.9c-.324.735-.48 1.565-.48 2.455s.156 1.72.48 2.454c.325.734.758 1.383 1.324 1.913.553.53 1.215.938 1.937 1.25a6.286 6.286 0 0 0 2.333.434c.819 0 1.384-.108 1.961-.313.59-.216 1.083-.505 1.468-.866l.024-.024v-2.49l-.12.096c-.41.337-.878.626-1.396.866zm-14.869-4.15-4.8-5.04-.024-.025h-.902v11.67h2.502v-6.847l2.827 3.08.385.409.397-.41 2.791-3.067v6.845h2.502v-11.679h-.902l-4.788 5.052z"/><path clip-rule="evenodd" d="m15.543 5.137c0-3.032-2.466-5.113-4.957-5.137-.36 0-.745.024-1.094.096-.157.024-3.85.758-3.85.758-3.032.602-4.62 2.466-4.704 4.788-.024.89-.024 4.27-.024 4.27.036 3.165 2.406 5.138 5.017 5.126.337 0 1.119-.109 1.287-.145.144-.024.385-.084.746-.144.661-.12 1.684-.325 3.067-.602 2.37-.409 4.103-2.009 4.44-4.33.156-1.023.084-4.692.084-4.692zm-3.213 3.308-2.346.457v2.31l-5.859 1.143v-5.75l2.346-.458v3.441l3.513-.686v-3.44l-3.513.685v-2.297l5.859-1.143v5.75zm20.09-3.296-.083-1.023h-2.13v8.794h2.346v-4.884c0-1.107.95-1.985 2.057-1.997 1.095 0 1.901.89 1.901 1.997v4.884h2.346v-5.245c-.012-2.105-1.588-3.777-3.67-3.765a3.764 3.764 0 0 0 -2.778 1.25l.012-.011zm-6.014-4.102 2.346-.458v2.298l-2.346.457z" fill-rule="evenodd"/><path d="m28.752 4.126h-2.346v8.794h2.346z"/><path clip-rule="evenodd" d="m43.777 15.483 4.043-11.357h-2.418l-1.54 4.355-.445 1.324-.36-1.324-1.54-4.355h-2.418l3.151 8.794-1.083 3.08zm-21.028-5.51c0 .722.541 1.034.878 1.034s.638-.048.95-.144l.518 1.708c-.217.145-.879.518-2.13.518a2.565 2.565 0 0 1 -2.562-2.587c-.024-1.082-.024-2.49 0-4.21h-1.54v-2.142h1.54v-1.912l2.346-.458v2.37h2.201v2.142h-2.2v3.693-.012z" fill-rule="evenodd"/></g></svg>\n'.trim()])},behaviours:hd([_d.config({})])}]}),{dom:{tag:"div",classes:["tox-statusbar__right-container"]},components:o}})()),o.length>0?[{dom:{tag:"div",classes:["tox-statusbar__text-container",...(()=>{const e="tox-statusbar__text-container--flex-start",t="tox-statusbar__text-container--flex-end";if(n){const o="tox-statusbar__text-container-3-cols";return r||s?r&&!s?[o,t]:[o,e]:[o,"tox-statusbar__text-container--space-around"]}return[r&&!s?t:e]})()]},components:o}]:[]};return{dom:{tag:"div",classes:["tox-statusbar"]},components:(()=>{const n=o(),s=((e,t)=>{const o=(e=>{const t=NC(e);return!1===t?BV.None:"both"===t?BV.Both:BV.Vertical})(e);if(o===BV.None)return A.none();const n=lC(e),s=dC(e),r=o===BV.Both?AO.translate("Press the arrow keys to resize the editor."):AO.translate("Press the Up and Down arrow keys to resize the editor."),a=o===BV.Both?"tox-statusbar__resize-cursor-both":"tox-statusbar__resize-cursor-default";return A.some(VO("resize-handle",{tag:"div",classes:["tox-statusbar__resize-handle",a],attributes:{"aria-label":t.translate(r),"data-mce-name":"resize-handle",role:"separator"},behaviours:[Wh.config({mode:"pointer",repositionTarget:!1,onDragStart:e=>{Tv.immediateOpenClose(e,!1),Tv.setEnabled(e,!1)},onDrag:(t,r,a)=>{const i=FV(e,a,o);RV(t,i,o,n,s)},onDrop:e=>{Tv.setEnabled(e,!0)}}),Im.config({mode:"special",onLeft:t=>NV(e,t,o,-1,0,n,s),onRight:t=>NV(e,t,o,1,0,n,s),onUp:t=>NV(e,t,o,0,-1,n,s),onDown:t=>NV(e,t,o,0,1,n,s)}),iv.config({}),_d.config({}),Tv.config(t.tooltips.getConfig({tooltipText:t.translate("Resize")})),wd("set-aria-valuetext",[id(t=>{const r=()=>{RV(t,IV(e),o,n,s)};e._skinLoaded?r():e.once("SkinLoaded",r)})])],eventOrder:{[ni()]:["add-focusable","set-aria-valuetext"]}},t.icons))})(e,t);return n.concat(s.toArray())})()}},VV=(e,t)=>t.get().getOrDie(`UI for ${e} has not been rendered`),LV=(e,t)=>{const o=e.inline,n=o?_z:yz,s=rk(e)?bR:iR,r=(()=>{const e=Ye(),t=Ye(),o=Ye();return{dialogUi:e,popupUi:t,mainUi:o,getUiMotherships:()=>{const o=e.get().map(e=>e.mothership),n=t.get().map(e=>e.mothership);return o.fold(()=>n.toArray(),e=>n.fold(()=>[e],t=>wt(e.element,t.element)?[e]:[e,t]))},lazyGetInOuterOrDie:(e,t)=>()=>o.get().bind(e=>t(e.outerContainer)).getOrDie(`Could not find ${e} element in OuterContainer`)}})(),a=Ye(),i=Ye(),l=Ye(),c=Qt().deviceType.isTouch()?["tox-platform-touch"]:[],d=ek(e),u=fC(e),m=Dv({dom:{tag:"div",classes:["tox-anchorbar"]}}),g=Dv({dom:{tag:"div",classes:["tox-bottom-anchorbar"]}}),p=()=>r.mainUi.get().map(e=>e.outerContainer).bind(cN.getHeader),h=r.lazyGetInOuterOrDie("anchor bar",m.getOpt),f=r.lazyGetInOuterOrDie("bottom anchor bar",g.getOpt),b=r.lazyGetInOuterOrDie("toolbar",cN.getToolbar),v=r.lazyGetInOuterOrDie("throbber",cN.getThrobber),x=((e,t,o,n)=>{const s=ye(!1),r=(e=>{const t=ye(ek(e)?"bottom":"top");return{isPositionedAtTop:()=>"top"===t.get(),getDockingMode:t.get,setDockingMode:t.set}})(t),a={icons:()=>t.ui.registry.getAll().icons,menuItems:()=>t.ui.registry.getAll().menuItems,translate:AO.translate,isDisabled:()=>!t.ui.isEnabled(),getOption:t.options.get,tooltips:DF(e.dialog),checkUiComponentContext:e=>{if(sC(t))return{contextType:"disabled",shouldDisable:!0};const[o,n=""]=e.split(":"),s=t.ui.registry.getAll().contexts;return{contextType:o,shouldDisable:!fe(s,o).fold(()=>fe(s,"mode").map(e=>e("design")).getOr(!1),e=>"!"===n.charAt(0)?!e(n.slice(1)):e(n))}}},i=tR(t),l=(e=>{const t=t=>()=>e.formatter.match(t),o=t=>()=>{const o=e.formatter.get(t);return void 0!==o?A.some({tag:o.length>0&&(o[0].inline||o[0].block)||"div",styles:e.dom.parseStyle(e.formatter.getCssText(t))}):A.none()},n=ye([]),s=ye([]),r=ye(!1);return e.on("PreInit",s=>{const r=TF(e),a=AF(e,r,t,o);n.set(a)}),e.on("addStyleModifications",n=>{const a=AF(e,n.items,t,o);s.set(a),r.set(n.replace)}),{getData:()=>{const e=r.get()?[]:n.get(),t=s.get();return e.concat(t)}}})(t),c=(e=>({colorPicker:vF(e),hasCustomColors:xF(e),getColors:yF(e),getColorCols:wF(e)}))(t),d=(e=>({isDraggableModal:SF(e)}))(t),u={shared:{providers:a,anchors:bF(t,o,n,r.isPositionedAtTop),header:r},urlinput:i,styles:l,colorinput:c,dialog:d,isContextMenuOpen:()=>s.get(),setContextMenuState:e=>s.set(e)},m=e=>A.none(),g={...u,shared:{...u.shared,interpreter:e=>dF(e,{},g,m),getSink:e.popup}},p={...u,shared:{...u.shared,interpreter:e=>dF(e,{},p,m),getSink:e.dialog}};return{popup:g,dialog:p}})({popup:()=>Ae.fromOption(r.popupUi.get().map(e=>e.sink),"(popup) UI has not been rendered"),dialog:()=>Ae.fromOption(r.dialogUi.get().map(e=>e.sink),"UI has not been rendered")},e,h,f),y=()=>{const t=(()=>{const t={attributes:{[zc]:d?Nc.BottomToTop:Nc.TopToBottom}},o=cN.parts.menubar({dom:{tag:"div",classes:["tox-menubar"]},backstage:x.popup,onEscape:()=>{e.focus()}}),n=cN.parts.toolbar({dom:{tag:"div",classes:["tox-toolbar"]},getSink:x.popup.shared.getSink,providers:x.popup.shared.providers,onEscape:()=>{e.focus()},onToolbarToggled:t=>{((e,t)=>{e.dispatch("ToggleToolbarDrawer",{state:t})})(e,t)},type:u,lazyToolbar:b,lazyHeader:()=>p().getOrDie("Could not find header element"),...t}),s=cN.parts["multiple-toolbar"]({dom:{tag:"div",classes:["tox-toolbar-overlord"]},providers:x.popup.shared.providers,onEscape:()=>{e.focus()},type:u}),r=ZC(e),a=JC(e),i=YC(e),l=WC(e),c=r||a||i,g=[(h=l,cN.parts.promotion({dom:{tag:"div",classes:["tox-promotion"]},promotionLink:h})),o];var h;return cN.parts.header({dom:{tag:"div",classes:["tox-editor-header"].concat(c?[]:["tox-editor-header--empty"]),...t},components:G([i?g:[],r?[s]:a?[n]:[],ok(e)?[]:[m.asSpec()]]),sticky:rk(e),editor:e,sharedBackstage:x.popup.shared})})(),n={dom:{tag:"div",classes:["tox-sidebar-wrap"]},components:[cN.parts.socket({dom:{tag:"div",classes:["tox-edit-area"]}}),cN.parts.sidebar({dom:{tag:"div",classes:["tox-sidebar"]},configuredSidebarWidth:LC(e)})],behaviours:LA([Zc(IR,(e,t)=>{(t.event.visible&&t.event.resizable?ns:rs)(e.element,"tox-sidebar-wrap--resizable")})])},s=cN.parts.throbber({dom:{tag:"div",classes:["tox-throbber"]},backstage:x.popup}),r=cN.parts.viewWrapper({backstage:x.popup}),i=IC(e)&&!o?A.some(zV(e,x.popup.shared.providers)):A.none(),l=G([d?[]:[t],o?[]:[n],d?[t]:[]]),h=cN.parts.editorContainer({components:G([l,o?[]:[g.asSpec()]])}),f=sk(e),v={role:"application",...AO.isRtl()?{dir:"rtl"}:{},...f?{"aria-hidden":"true"}:{}},y=Pg(cN.sketch({dom:{tag:"div",classes:["tox","tox-tinymce"].concat(o?["tox-tinymce-inline"]:[]).concat(d?["tox-tinymce--toolbar-bottom"]:[]).concat(c),styles:{visibility:"hidden",...f?{opacity:"0",border:"0"}:{}},attributes:v},components:[h,...o?[]:[r,...i.toArray()],s],behaviours:hd([ZA(()=>x.popup.shared.providers.checkUiComponentContext("any")),gp.config({disableClass:"tox-tinymce--disabled"}),Im.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"})])})),w=Hv(y);return a.set(w),{mothership:w,outerContainer:y}},w=t=>{const o=yR((e=>(e=>{const t=((e,t)=>{if("number"==typeof t)return A.from(t);const o=/^([0-9.]+)(pt|em|px)$/.exec(t.trim());if(o){const t=o[2],n=Number.parseFloat(o[1]);if(Number.isNaN(n)||n<0)return A.none();if("em"===t)return A.from(n*Number.parseFloat(window.getComputedStyle(e.dom).fontSize));if("pt"===t)return A.from(.75*n);if("px"===t)return A.from(n)}return A.none()})(ct(e.targetElm),rC(e)),o=lC(e),n=dC(e);return t.map(e=>wR(e,o,n))})(e).getOr(rC(e)))(e)),n=yR((e=>wz(e).getOr(aC(e)))(e));return e.inline||(yn("div","width",n)&&gn(t.element,"width",n),yn("div","height",o)?gn(t.element,"height",o):gn(t.element,"height","400px")),o},S=t=>{const{mainUi:o,popupUi:r,uiMotherships:a}=t;le(bC(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=QC(e),h={menuItems:l,menus:ik(e),menubar:CC(e),toolbar:g.getOrThunk(()=>kC(e)),allowToolbarGroups:u===QS.floating,buttons:i,sidebar:d,views:m};var f;f=o.outerContainer,e.addShortcut("alt+F9","focus menubar",()=>{cN.focusMenubar(f)}),e.addShortcut("alt+F10","focus toolbar",()=>{cN.focusToolbar(f)}),e.addCommand("ToggleToolbarDrawer",(e,t,o)=>{t?.skipFocus?(console.warn(oR.skipFocus,(new Error).stack),cN.toggleToolbarDrawerWithoutFocusing(f)):o?.skip_focus?cN.toggleToolbarDrawerWithoutFocusing(f):cN.toggleToolbarDrawer(f)}),e.addQueryStateHandler("ToggleToolbarDrawer",()=>cN.isToolbarDrawerToggled(f)),e.on("blur",()=>{fC(e)===QS.floating&&cN.isToolbarDrawerToggled(f)&&cN.toggleToolbarDrawerWithoutFocusing(f)}),((e,t,o)=>{const n=(e,n)=>{L([t,...o],t=>{t.broadcastEvent(e,n)})},s=(e,n)=>{L([t,...o],t=>{t.broadcastOn([e],n)})},r=e=>s(zd(),{target:e.target}),a=e=>{s(Nd(),{closedTooltip:()=>{e.preventDefault()}})},i=No(),l=Io(i,"touchstart",r),c=Io(i,"touchmove",e=>n(Za(),e)),d=Io(i,"touchend",e=>n(ei(),e)),u=Io(i,"mousedown",r),m=Io(i,"mouseup",e=>{0===e.raw.button&&s(Ld(),{target:e.target})}),g=e=>s(zd(),{target:ct(e.target)}),p=e=>{0===e.button&&s(Ld(),{target:ct(e.target)})},h=()=>{L(e.editorManager.get(),t=>{e!==t&&t.dispatch("DismissPopups",{relatedTarget:e})})},f=e=>n(ti(),Ro(e)),b=e=>{s(Vd(),{}),n(oi(),Ro(e))},v=Oo(ct(e.getElement())),x=Fo(v,"scroll",o=>{requestAnimationFrame(()=>{if(null!=e.getContainer()){const s=gk(e,t.element).map(e=>[e.element,...e.others]).getOr([]);R(s,e=>wt(e,o.target))&&(e.dispatch("ElementScroll",{target:o.target.dom}),n(ci(),o))}})}),y=()=>s(Vd(),{}),w=t=>{t.state&&s(zd(),{target:ct(e.getContainer())})},S=e=>{s(zd(),{target:ct(e.relatedTarget.getContainer())})},C=t=>e.dispatch("focusin",t),k=t=>e.dispatch("focusout",t);e.on("PostRender",()=>{e.on("click",g),e.on("tap",g),e.on("mouseup",p),e.on("mousedown",h),e.on("ScrollWindow",f),e.on("ResizeWindow",b),e.on("ResizeEditor",y),e.on("AfterProgressState",w),e.on("DismissPopups",S),e.on("CloseActiveTooltips",a),L([t,...o],e=>{e.element.dom.addEventListener("focusin",C),e.element.dom.addEventListener("focusout",k)})}),e.on("remove",()=>{e.off("click",g),e.off("tap",g),e.off("mouseup",p),e.off("mousedown",h),e.off("ScrollWindow",f),e.off("ResizeWindow",b),e.off("ResizeEditor",y),e.off("AfterProgressState",w),e.off("DismissPopups",S),e.off("CloseActiveTooltips",a),L([t,...o],e=>{e.element.dom.removeEventListener("focusin",C),e.element.dom.removeEventListener("focusout",k)}),u.unbind(),l.unbind(),c.unbind(),d.unbind(),m.unbind(),x.unbind()}),e.on("detach",()=>{L([t,...o],Qm),L([t,...o],e=>e.destroy())})})(e,o.mothership,a),s.setup(e,x.popup.shared,p),sV(e,x.popup),OV(e,x.popup.shared.getSink,x.popup),(e=>{const{sidebars:t}=e.ui.registry.getAll();L(re(t),o=>{const n=t[o],s=()=>He(A.from(e.queryCommandValue("ToggleSidebar")),o);e.ui.registry.addToggleButton(o,{icon:n.icon,tooltip:n.tooltip,onAction:t=>{e.execCommand("ToggleSidebar",!1,o,{skip_focus:!0}),t.setActive(s())},onSetup:t=>{t.setActive(s());const o=()=>t.setActive(s());return e.on("ToggleSidebar",o),()=>{e.off("ToggleSidebar",o)}},context:"any"})})})(e),RR(e,v,x.popup.shared),Xz(e,c,r.sink,{backstage:x.popup}),AV(e,r.sink);const b={targetNode:e.getElement(),height:w(o.outerContainer)};return n.render(e,t,h,x.popup,b)};return{popups:{backstage:x.popup,getMothership:()=>VV("popups",l)},dialogs:{backstage:x.dialog,getMothership:()=>VV("dialogs",i)},renderUI:()=>{const o=y(),n=(()=>{const t=nk(e),o=wt(cn(),t)&&"grid"===fn(t,"display"),n={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-tinymce-aux"].concat(c),attributes:{...AO.isRtl()?{dir:"rtl"}:{}}},behaviours:hd([hb.config({useFixed:()=>s.isDocked(p),getBounds:()=>r.dialogUi.get().bind(({sink:e})=>{const t=Oo(e.element);return ko(t)?A.some(Hs(Eo(t))):A.none()}).getOr(Ws())})])},a={dom:{styles:{width:document.body.clientWidth+"px"}},events:Kc([Zc(oi(),e=>{gn(e.element,"width",document.body.clientWidth+"px")})])},l=Pg(Ve(n,o?a:{})),d=Hv(l);return i.set(d),{sink:l,mothership:d}})(),a=ak(e)?(()=>{const e={dom:{tag:"div",classes:["tox","tox-silver-sink","tox-silver-popup-sink","tox-tinymce-aux"].concat(c),attributes:{...AO.isRtl()?{dir:"rtl"}:{}}},behaviours:hd([hb.config({useFixed:()=>s.isDocked(p),getBounds:()=>t.getPopupSinkBounds()})])},o=Pg(e),n=Hv(o);return l.set(n),{sink:o,mothership:n}})():(e=>(l.set(e.mothership),e))(n);r.dialogUi.set(n),r.popupUi.set(a),r.mainUi.set(o);const d={popupUi:a,dialogUi:n,mainUi:o,uiMotherships:r.getUiMotherships()};return S(d)}}},HV=e=>{const t=[],o={};return ie(e,(e,n)=>{e.fold(()=>{t.push(n)},e=>{o[n]=e})}),t.length>0?Ae.error(t):Ae.value(o)},PV=(e,t,o,n)=>{const s=Dv($x.sketch(s=>({dom:{tag:"div",classes:["tox-form"].concat(e.classes)},components:V(e.items,e=>lF(s,e,t,o,n))})));return{dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[s.asSpec()]}],behaviours:hd([Im.config({mode:"acyclic",useTabstopAt:k(HB)}),(r=s,Xg.config({find:r.getOpt})),pB(s,{postprocess:e=>HV(e).fold(e=>(console.error(e),{}),w)}),wd("dialog-body-panel",[Zc(Oa(),(e,t)=>{e.getSystem().broadcastOn([GB],{newFocus:A.some(t.event.target)})})])])};var r},UV=(e,t)=>{gn(e,"height",t+"px"),gn(e,"flex-basis",t+"px")},WV=(e,t,o)=>{Gn(e,'[role="dialog"]').each(e=>{Xn(e,'[role="tablist"]').each(n=>{o.get().map(o=>(gn(t,"height","0"),gn(t,"flex-basis","0"),Math.min(o,((e,t,o)=>{const n=mo(e).dom,s=Gn(e,".tox-dialog-wrap").getOr(e);let r;r="fixed"===fn(s,"position")?Math.max(n.clientHeight,window.innerHeight):Math.max(n.offsetHeight,n.scrollHeight);const a=On(t),i=t.dom.offsetLeft>=o.dom.offsetLeft+An(o)?Math.max(On(o),a):a,l=parseInt(fn(e,"margin-top"),10)||0,c=parseInt(fn(e,"margin-bottom"),10)||0;return r-(On(e)+l+c-i)})(e,t,n)))).each(e=>{UV(t,e)})})})},jV=e=>Xn(e,'[role="tabpanel"]'),$V="send-data-to-section",GV="send-data-to-view",qV=(e,t,o,n)=>{const s=ye({}),r=e=>{const t=mf.getValue(e),o=HV(t).getOr({}),n=s.get(),r=Ve(n,o);s.set(r)},a=e=>{const t=s.get();mf.setValue(e,t)},i=ye(null),l=V(e.tabs,e=>({value:e.name,dom:{tag:"div",classes:["tox-dialog__body-nav-item"]},components:[zg(o.shared.providers.translate(e.title))],view:()=>[$x.sketch(s=>({dom:{tag:"div",classes:["tox-form"]},components:V(e.items,e=>lF(s,e,t,o,n)),formBehaviours:hd([Im.config({mode:"acyclic",useTabstopAt:k(HB)}),wd("TabView.form.events",[id(a),ld(r)]),vb.config({channels:pa([{key:$V,value:{onReceive:r}},{key:GV,value:{onReceive:a}}])})])}))]})),c=e.dynamicHeight?{extraEvents:[],selectFirst:!0}:(e=>{const t=Ye(),o=[id(o=>{const n=o.element;jV(n).each(s=>{gn(s,"visibility","hidden"),o.getSystem().getByDom(s).toOptional().each(o=>{const n=((e,t,o)=>V(e,(n,s)=>{ug.set(o,e[s].view());const r=t.dom.getBoundingClientRect();return ug.set(o,[]),r.height}))(e,s,o),r=(e=>te(Z(e,(e,t)=>e>t?-1:e<t?1:0)))(n);r.fold(t.clear,t.set)}),WV(n,s,t),wn(s,"visibility"),((e,t)=>{te(e).each(e=>LS.showTab(t,e.value))})(e,o),requestAnimationFrame(()=>{WV(n,s,t)})})}),Zc(oi(),e=>{const o=e.element;jV(o).each(e=>{WV(o,e,t)})}),Zc(aB,(e,o)=>{const n=e.element;jV(n).each(e=>{const o=Ho(Oo(e));gn(e,"visibility","hidden");const s=vn(e,"height").map(e=>parseInt(e,10));wn(e,"height"),wn(e,"flex-basis");const r=e.dom.getBoundingClientRect().height;s.forall(e=>r>e)?(t.set(r),WV(n,e,t)):s.each(t=>{UV(e,t)}),wn(e,"visibility"),o.each(zo)})})];return{extraEvents:o,selectFirst:!1}})(l);return LS.sketch({dom:{tag:"div",classes:["tox-dialog__body"]},onChangeTab:(e,t,o)=>{const n=mf.getValue(t);$c(e,rB,{name:n,oldName:i.get()}),i.set(n)},tabs:l,components:[LS.parts.tabbar({dom:{tag:"div",classes:["tox-dialog__body-nav"]},components:[IS.parts.tabs({})],markers:{tabClass:"tox-tab",selectedClass:"tox-dialog__body-nav-item--active"},tabbarBehaviours:hd([iv.config({})])}),LS.parts.tabview({dom:{tag:"div",classes:["tox-dialog__body-content"]}})],selectFirst:c.selectFirst,tabSectionBehaviours:hd([wd("tabpanel",c.extraEvents),Im.config({mode:"acyclic"}),Xg.config({find:e=>te(LS.getViewItems(e))}),hB(A.none(),e=>(e.getSystem().broadcastOn([$V],{}),s.get()),(e,t)=>{s.set(t),e.getSystem().broadcastOn([GV],{})})])})},YV=(e,t,o,n,s,r)=>({dom:{tag:"div",classes:["tox-dialog__content-js"],attributes:{...o.map(e=>({id:e})).getOr({}),...s?{"aria-live":"polite"}:{}}},components:[],behaviours:hd([mB(0),Sb.config({channel:`${WB}-${t}`,updateState:(e,t)=>A.some({isTabPanel:()=>"tabpanel"===t.body.type}),renderComponents:e=>{const t=e.body;return"tabpanel"===t.type?[qV(t,e.initialData,n,r)]:[PV(t,e.initialData,n,r)]},initialData:e})])}),XV=JS.deviceType.isTouch(),KV=(e,t)=>({dom:{tag:"div",styles:{display:"none"},classes:["tox-dialog__header"]},components:[e,t]}),JV=(e,t)=>yy.parts.close(Wv.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":t.translate("Close")}},action:e,buttonBehaviours:hd([iv.config({})])})),QV=()=>yy.parts.title({dom:{tag:"div",classes:["tox-dialog__title"],innerHtml:"",styles:{display:"none"}}}),ZV=(e,t)=>yy.parts.body({dom:{tag:"div",classes:["tox-dialog__body"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-content"]},components:[{dom:Av(`<p>${EO(t.translate(e))}</p>`)}]}]}),eL=e=>yy.parts.footer({dom:{tag:"div",classes:["tox-dialog__footer"]},components:e}),tL=(e,t)=>[bh.sketch({dom:{tag:"div",classes:["tox-dialog__footer-start"]},components:e}),bh.sketch({dom:{tag:"div",classes:["tox-dialog__footer-end"]},components:t})],oL=e=>{const t="tox-dialog",o=t+"-wrap",n=o+"__backdrop",s=t+"__disable-scroll";return yy.sketch({role:e.role,lazySink:e.lazySink,onEscape:t=>(e.onEscape(t),A.some(!0)),useTabstopAt:e=>!HB(e),firstTabstop:e.firstTabstop,dom:{tag:"div",classes:[t].concat(e.extraClasses),styles:{position:"relative",...e.extraStyles}},components:[e.header,e.body,...e.footer.toArray()],parts:{blocker:{dom:Av(`<div class="${o}"></div>`),components:[{dom:{tag:"div",classes:XV?[n,n+"--opaque"]:[n]}}]}},dragBlockClass:o,modalBehaviours:hd([_d.config({}),wd("dialog-events",e.dialogEvents.concat([ad(Oa(),(e,t)=>{Gg.isBlocked(e)||Im.focusIn(e)}),Zc(ii(),(e,t)=>{e.getSystem().broadcastOn([GB],{newFocus:t.event.newFocus})})])),wd("scroll-lock",[id(()=>{ns(cn(),s)}),ld(()=>{rs(cn(),s)})]),...e.extraBehaviours]),eventOrder:{[Ga()]:["dialog-events"],[ni()]:["scroll-lock","dialog-events","alloy.base.behaviour"],[si()]:["alloy.base.behaviour","dialog-events","scroll-lock"],...e.eventOrder}})},nL=e=>Wv.sketch({dom:{tag:"button",classes:["tox-button","tox-button--icon","tox-button--naked"],attributes:{type:"button","aria-label":e.translate("Close"),"data-mce-name":"close"}},buttonBehaviours:hd([iv.config({}),Tv.config(e.tooltips.getConfig({tooltipText:e.translate("Close")}))]),components:[VO("close",{tag:"span",classes:["tox-icon"]},e.icons)],action:e=>{jc(e,eB)}}),sL=(e,t,o,n)=>({dom:{tag:"h1",classes:["tox-dialog__title"],attributes:{...o.map(e=>({id:e})).getOr({})}},components:[],behaviours:hd([Sb.config({channel:`${UB}-${t}`,initialData:e,renderComponents:e=>[zg(n.translate(e.title))]})])}),rL=()=>({dom:Av('<div class="tox-dialog__draghandle"></div>')}),aL=(e,t,o)=>((e,t,o)=>{const n=yy.parts.title(sL(e,t,A.none(),o)),s=yy.parts.draghandle(rL()),r=yy.parts.close(nL(o)),a=[n].concat(e.draggable?[s]:[]).concat([r]);return bh.sketch({dom:Av('<div class="tox-dialog__header"></div>'),components:a})})({title:o.shared.providers.translate(e),draggable:o.dialog.isDraggableModal()},t,o.shared.providers),iL=(e,t,o,n)=>({dom:{tag:"div",classes:["tox-dialog__busy-spinner"],attributes:{"aria-label":o.translate(e)},styles:{left:"0px",right:"0px",bottom:"0px",top:`${n.getOr(0)}px`,position:"absolute"}},behaviours:t,components:[{dom:Av('<div class="tox-spinner"><div></div><div></div><div></div></div>')}]}),lL=(e,t,o)=>({onClose:()=>o.closeWindow(),onBlock:o=>{const n=Xn(e().element,".tox-dialog__header").map(e=>On(e));yy.setBusy(e(),(e,s)=>iL(o.message,s,t,n))},onUnblock:()=>{yy.setIdle(e())}}),cL="tox-dialog--fullscreen",dL="tox-dialog--width-lg",uL="tox-dialog--width-md",mL=e=>{switch(e){case"large":return A.some(dL);case"medium":return A.some(uL);default:return A.none()}},gL=(e,t)=>{const o=ct(t.element.dom);as(o,cL)||(ls(o,[dL,uL]),mL(e).each(e=>ns(o,e)))},pL=(e,t)=>{const o=ct(e.element.dom),n=cs(o),s=j(n,e=>e===dL||e===uL).or(mL(t));((e,t)=>{L(t,t=>{((e,t)=>{const o=Zn(e)?e.dom.classList.toggle(t):((e,t)=>F(es(e),t)?os(e,t):ts(e,t))(e,t);ss(e)})(e,t)})})(o,[cL,...s.toArray()])},hL=(e,t,o)=>Pg(oL({...e,firstTabstop:1,lazySink:o.shared.getSink,extraBehaviours:[bB({}),...e.extraBehaviours],onEscape:e=>{jc(e,eB)},dialogEvents:t,eventOrder:{[$a()]:[Sb.name(),vb.name()],[ni()]:["scroll-lock",Sb.name(),"messages","dialog-events","alloy.base.behaviour"],[si()]:["alloy.base.behaviour","dialog-events","messages",Sb.name(),"scroll-lock"]}})),fL=(e,t={})=>V(e,e=>"menu"===e.type?(e=>{const o=V(e.items,e=>{const o=fe(t,e.name).getOr(ye(!1));return{...e,storage:o}});return{...e,items:o}})(e):e),bL=e=>W(e,(e,t)=>"menu"===t.type?W(t.items,(e,t)=>(e[t.name]=t.storage,e),e):e,{}),vL=(e,t)=>{const o=()=>t.getSystem().isConnected()?Im.focusIn(t):void 0,n=e=>Qo(e,"disabled")||Jo(e,"aria-disabled").exists(e=>"true"===e),s=Oo(t.element),r=Ho(s);Ho(s).fold(o,t=>{n(t)||r.exists(e=>St(t,e)&&n(e))?o():e().toOptional().filter(e=>!St(e.element,t)).each(o)})},xL=(e,t,o)=>[nd(Oa(),LB),e(ZM,(e,o,n,s)=>{Lo(s.element)&&Ho(Oo(s.element)).each(Vo),t.onClose(),o.onClose()}),e(eB,(e,t,o,n)=>{t.onCancel(e),jc(n,ZM)}),Zc(sB,(e,n)=>{t.onUnblock(),vL(o,e)}),Zc(nB,(e,o)=>t.onBlock(o.event))],yL=(e,t,o)=>{const n=(t,o)=>Zc(t,(t,n)=>{s(t,(s,r)=>{o(e(),s,n.event,t)})}),s=(e,t)=>{Sb.getState(e).get().each(o=>{t(o.internalDialog,e)})};return[...xL(n,t,o),n(oB,(e,t)=>t.onSubmit(e)),n(JM,(e,t,o)=>{t.onChange(e,{name:o.name})}),n(tB,(e,t,n,s)=>{t.onAction(e,{name:n.name,value:n.value}),vL(o,s)}),n(rB,(e,t,o)=>{t.onTabChange(e,{newTabName:o.name,oldTabName:o.oldName})}),ld(t=>{const o=e();mf.setValue(t,o.getData())})]},wL=(e,t)=>{const o=t.map(e=>e.footerButtons).getOr([]),n=H(o,e=>"start"===e.align),s=(e,t)=>bh.sketch({dom:{tag:"div",classes:[`tox-dialog__footer-${e}`]},components:V(t,e=>e.memento.asSpec())});return[s("start",n.pass),s("end",n.fail)]},SL=(e,t,o)=>({dom:Av('<div class="tox-dialog__footer"></div>'),components:[],behaviours:hd([Sb.config({channel:`${jB}-${t}`,initialData:e,updateState:(e,t)=>{const n=V(t.buttons,e=>{const t=Dv(((e,t)=>YI(e,e.type,t))(e,o));return{name:e.name,align:e.align,memento:t}});return A.some({lookupByName:t=>((e,t,o)=>j(t,e=>e.name===o).bind(t=>t.memento.getOpt(e)))(e,n,t),footerButtons:n})},renderComponents:wL})])}),CL=(e,t,o)=>yy.parts.footer(SL(e,t,o)),kL=(e,t)=>{if(e.getRoot().getSystem().isConnected()){const o=Xg.getCurrent(e.getFormWrapper()).getOr(e.getFormWrapper());return $x.getField(o,t).orThunk(()=>{const o=e.getFooter().bind(e=>Sb.getState(e).get());return o.bind(e=>e.lookupByName(t))})}return A.none()},OL=(e,t,o)=>{const n=t=>{const o=e.getRoot();o.getSystem().isConnected()&&t(o)},s={getData:()=>{const t=e.getRoot(),n=t.getSystem().isConnected()?e.getFormWrapper():t;return{...mf.getValue(n),...le(o,e=>e.get())}},setData:t=>{n(n=>{const r=s.getData(),a=Ve(r,t),i=((e,t)=>{const o=e.getRoot();return Sb.getState(o).get().map(e=>Ir(Br("data",e.dataValidator,t))).getOr(t)})(e,a),l=e.getFormWrapper();mf.setValue(l,i),ie(o,(e,t)=>{be(a,t)&&e.set(a[t])})})},setEnabled:(t,o)=>{kL(e,t).each(o?gp.enable:gp.disable)},focus:t=>{kL(e,t).each(_d.focus)},block:e=>{if(!r(e))throw new Error("The dialogInstanceAPI.block function should be passed a blocking message of type string as an argument");n(t=>{$c(t,nB,{message:e})})},unblock:()=>{n(e=>{jc(e,sB)})},showTab:t=>{n(o=>{const n=e.getBody();Sb.getState(n).get().exists(e=>e.isTabPanel())&&Xg.getCurrent(n).each(e=>{LS.showTab(e,t)})})},redial:r=>{n(n=>{const a=e.getId(),i=t(r),l=fL(i.internalDialog.buttons,o);n.getSystem().broadcastOn([`${PB}-${a}`],i),n.getSystem().broadcastOn([`${UB}-${a}`],i.internalDialog),n.getSystem().broadcastOn([`${WB}-${a}`],i.internalDialog),n.getSystem().broadcastOn([`${jB}-${a}`],{...i.internalDialog,buttons:l}),s.setData(i.initialData)})},close:()=>{n(e=>{jc(e,ZM)})},toggleFullscreen:e.toggleFullscreen};return s},_L=(e,t,o,n=!1,s)=>{const r=Ne("dialog"),a=Ne("dialog-label"),i=Ne("dialog-content"),l=e.internalDialog,c=ye(l.size),d=mL(c.get()).toArray(),u=Dv(((e,t,o,n)=>bh.sketch({dom:Av('<div class="tox-dialog__header"></div>'),components:[sL(e,t,A.some(o),n),rL(),nL(n)],containerBehaviours:hd([Wh.config({mode:"mouse",blockerClass:"blocker",getTarget:e=>Kn(e,'[role="dialog"]').getOrDie(),snaps:{getSnapPoints:()=>[],leftAttr:"data-drag-left",topAttr:"data-drag-top"},onDrag:(e,t)=>{e.getSystem().broadcastOn([Vd()],{target:t})}})])}))({title:l.title,draggable:!0},r,a,o.shared.providers)),m=Dv(((e,t,o,n,s,r)=>YV(e,t,A.some(o),n,s,r))({body:l.body,initialData:l.initialData},r,i,o,n,e=>kL(x,e))),g=fL(l.buttons),p=bL(g),h=je(0!==g.length,Dv(((e,t,o)=>SL(e,t,o))({buttons:g},r,o))),f=yL(()=>w,{onBlock:e=>{Gg.block(v,(t,n)=>{const s=u.getOpt(v).map(e=>On(e.element));return iL(e.message,n,o.shared.providers,s)})},onUnblock:()=>{Gg.unblock(v)},onClose:()=>t.closeWindow()},o.shared.getSink),b=Qt().os,v=Pg({dom:{tag:"div",classes:["tox-dialog","tox-dialog-inline",...d],attributes:{role:"dialog",...b.isMacOS()?{"aria-label":l.title}:{"aria-labelledby":a}}},eventOrder:{[$a()]:[Sb.name(),vb.name()],[Ga()]:["execute-on-form"],[ni()]:["reflecting","execute-on-form"]},behaviours:hd([Im.config({mode:"cyclic",onEscape:e=>(jc(e,ZM),A.some(!0)),useTabstopAt:e=>!HB(e)&&("button"!==to(e)||"disabled"!==Ko(e,"disabled")),firstTabstop:1}),Sb.config({channel:`${PB}-${r}`,updateState:(e,t)=>(c.set(t.internalDialog.size),gL(t.internalDialog.size,e),s(),A.some(t)),initialData:e}),_d.config({}),wd("execute-on-form",f.concat([ad(Oa(),(e,t)=>{Im.focusIn(e)}),Zc(ii(),(e,t)=>{e.getSystem().broadcastOn([GB],{newFocus:t.event.newFocus})})])),Gg.config({getRoot:()=>A.some(v)}),ug.config({}),bB({})]),components:[u.asSpec(),m.asSpec(),...h.map(e=>e.asSpec()).toArray()]}),x={getId:y(r),getRoot:y(v),getFooter:()=>h.map(e=>e.get(v)),getBody:()=>m.get(v),getFormWrapper:()=>{const e=m.get(v);return Xg.getCurrent(e).getOr(e)},toggleFullscreen:()=>{pL(v,c.get())}},w=OL(x,t.redial,p);return{dialog:v,instanceApi:w}};var TL=tinymce.util.Tools.resolve("tinymce.util.URI");const EL=["insertContent","setContent","execCommand","close","block","unblock"],AL=e=>a(e)&&-1!==EL.indexOf(e.mceAction),DL=(e,t,o,n)=>{const s=Ne("dialog"),i=aL(e.title,s,n),l=(e=>{const t={dom:{tag:"div",classes:["tox-dialog__content-js"]},components:[{dom:{tag:"div",classes:["tox-dialog__body-iframe"]},components:[zB(A.none(),{dom:{tag:"iframe",attributes:{src:e.url}},behaviours:hd([iv.config({}),_d.config({})])})]}],behaviours:hd([Im.config({mode:"acyclic",useTabstopAt:k(HB)})])};return yy.parts.body(t)})(e),c=e.buttons.bind(e=>0===e.length?A.none():A.some(CL({buttons:e},s,n))),u=((e,t,o)=>{const n=(e,t)=>Zc(e,(e,o)=>{s(e,(n,s)=>{t(y,n,o.event,e)})}),s=(e,t)=>{Sb.getState(e).get().each(o=>{t(o,e)})};return[...xL(n,t,o),n(tB,(e,t,o)=>{t.onAction(e,{name:o.name})})]})(0,lL(()=>x,n.shared.providers,t),n.shared.getSink),m={...e.height.fold(()=>({}),e=>({height:e+"px","max-height":e+"px"})),...e.width.fold(()=>({}),e=>({width:e+"px","max-width":e+"px"}))},p=e.width.isNone()&&e.height.isNone()?["tox-dialog--width-lg"]:[],h=new TL(e.url,{base_uri:new TL(window.location.href)}),f=`${h.protocol}://${h.host}${h.port?":"+h.port:""}`,b=qe(),v=[Sb.config({channel:`${PB}-${s}`,updateState:(e,t)=>A.some(t),initialData:e}),wd("messages",[id(()=>{const t=Io(ct(window),"message",t=>{if(h.isSameOrigin(new TL(t.raw.origin))){const n=t.raw.data;AL(n)?((e,t,o)=>{switch(o.mceAction){case"insertContent":e.insertContent(o.content);break;case"setContent":e.setContent(o.content);break;case"execCommand":const n=!!d(o.ui)&&o.ui;e.execCommand(o.cmd,n,o.value);break;case"close":t.close();break;case"block":t.block(o.message);break;case"unblock":t.unblock()}})(o,y,n):(e=>!AL(e)&&a(e)&&be(e,"mceAction"))(n)&&e.onMessage(y,n)}});b.set(t)}),ld(b.clear)]),vb.config({channels:{[$B]:{onReceive:(e,t)=>{Xn(e.element,"iframe").each(e=>{const o=e.dom.contentWindow;g(o)&&o.postMessage(t,f)})}}}})],x=hL({id:s,header:i,body:l,footer:c,extraClasses:p,extraBehaviours:v,extraStyles:m},u,n),y=(e=>{const t=t=>{e.getSystem().isConnected()&&t(e)};return{block:e=>{if(!r(e))throw new Error("The urlDialogInstanceAPI.block function should be passed a blocking message of type string as an argument");t(t=>{$c(t,nB,{message:e})})},unblock:()=>{t(e=>{jc(e,sB)})},close:()=>{t(e=>{jc(e,ZM)})},sendMessage:e=>{t(t=>{t.getSystem().broadcastOn([$B],e)})}}})(x);return{dialog:x,instanceApi:y}},ML=(e,t)=>Ir(Br("data",t,e)),BL=e=>hs(e,".tox-alert-dialog")||hs(e,".tox-confirm-dialog"),IL=(e,t,o,n)=>t&&o?[]:[Hp.config({contextual:{lazyContext:()=>A.some(Hs(ct(e.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition",onHide:n},modes:["top"],lazyViewport:t=>gk(e,t.element).map(e=>({bounds:pk(e),optScrollEnv:A.some({currentScrollTop:e.element.dom.scrollTop,scrollElmTop:Fn(e.element).top})})).getOrThunk(()=>({bounds:Ws(),optScrollEnv:A.none()}))})],FL=e=>{const t=e.editor,o=rk(t),n=(e=>{const t=e.shared;return{open:(o,n)=>{const s=()=>{yy.hide(l),n()},r=Dv(YI({context:"any",name:"close-alert",text:"OK",primary:!0,buttonType:A.some("primary"),align:"end",enabled:!0,icon:A.none()},"cancel",e)),a=QV(),i=JV(s,t.providers),l=Pg(oL({role:"alertdialog",lazySink:()=>t.getSink(),header:KV(a,i),body:ZV(o,t.providers),footer:A.some(eL(tL([],[r.asSpec()]))),onEscape:s,extraClasses:["tox-alert-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[Zc(eB,s),id(e=>{const t=yy.getBody(e);qs(e.element,t.element)})],eventOrder:{}}));yy.show(l);const c=r.get(l);_d.focus(c)}}})(e.backstages.dialog),s=(e=>{const t=e.shared;return{open:(o,n)=>{const s=e=>{yy.hide(c),n(e)},r=Dv(YI({context:"any",name:"yes",text:"Yes",primary:!0,buttonType:A.some("primary"),align:"end",enabled:!0,icon:A.none()},"submit",e)),a=YI({context:"any",name:"no",text:"No",primary:!1,buttonType:A.some("secondary"),align:"end",enabled:!0,icon:A.none()},"cancel",e),i=QV(),l=JV(()=>s(!1),t.providers),c=Pg(oL({role:"alertdialog",lazySink:()=>t.getSink(),header:KV(i,l),body:ZV(o,t.providers),footer:A.some(eL(tL([],[a,r.asSpec()]))),onEscape:()=>s(!1),extraClasses:["tox-confirm-dialog"],extraBehaviours:[],extraStyles:{},dialogEvents:[Zc(eB,()=>s(!1)),Zc(oB,()=>s(!0)),id(e=>{const t=yy.getBody(e);qs(e.element,t.element)})],eventOrder:{}}));yy.show(c);const d=r.get(c);_d.focus(d)}}})(e.backstages.dialog),r=(t,o)=>jE.open((t,n,s)=>{const r=n,a=((e,t,o)=>{const n=Ne("dialog"),s=e.internalDialog,r=aL(s.title,n,o),a=ye(s.size),i=mL(a.get()).toArray(),l=((e,t,o,n)=>{const s=YV(e,t,A.none(),o,!1,n);return yy.parts.body(s)})({body:s.body,initialData:s.initialData},n,o,e=>kL(h,e)),c=fL(s.buttons),d=bL(c),u=je(0!==c.length,CL({buttons:c},n,o)),m=yL(()=>f,lL(()=>p,o.shared.providers,t),o.shared.getSink),g={id:n,header:r,body:l,footer:u,extraClasses:i,extraBehaviours:[Sb.config({channel:`${PB}-${n}`,updateState:(e,t)=>(a.set(t.internalDialog.size),gL(t.internalDialog.size,e),A.some(t)),initialData:e})],extraStyles:{}},p=hL(g,m,o),h={getId:y(n),getRoot:y(p),getBody:()=>yy.getBody(p),getFooter:()=>yy.getFooter(p),getFormWrapper:()=>{const e=yy.getBody(p);return Xg.getCurrent(e).getOr(e)},toggleFullscreen:()=>{pL(p,a.get())}},f=OL(h,t.redial,d);return{dialog:p,instanceApi:f}})({dataValidator:s,initialData:r,internalDialog:t},{redial:jE.redial,closeWindow:()=>{yy.hide(a.dialog),o(a.instanceApi)}},e.backstages.dialog);return yy.show(a.dialog),a.instanceApi.setData(r),a.instanceApi},t),a=(n,s,r,a)=>jE.open((n,i,l)=>{const c=ML(i,l),d=Ye(),u=e.backstages.popup.shared.header.isPositionedAtTop(),m=()=>d.on(e=>{dy.reposition(e),o&&u||Hp.refresh(e)}),g=_L({dataValidator:l,initialData:c,internalDialog:n},{redial:jE.redial,closeWindow:()=>{d.on(dy.hide),t.off("ResizeEditor",m),t.off("ScrollWindow",p),d.clear(),r(g.instanceApi)}},e.backstages.popup,a.ariaAttrs,m),p=()=>g.dialog.getSystem().broadcastOn([Vd()],{target:g.dialog.element}),h=Pg(dy.sketch({lazySink:e.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:a.persistent?{event:"doNotDismissYet"}:{},...u?{}:{fireRepositionEventInstead:{}},inlineBehaviours:hd([wd("window-manager-inline-events",[Zc(ri(),(e,t)=>{jc(g.dialog,eB)})]),...IL(t,o,u,()=>g.dialog.getSystem().broadcastOn([zd()],{target:g.dialog.element}))]),isExtraPart:(e,t)=>BL(t)}));return d.set(h),dy.showWithinBounds(h,Ug(g.dialog),{anchor:s},()=>{const e=t.inline?cn():ct(t.getContainer()),o=Hs(e);return A.some(o)}),o&&u||(Hp.refresh(h),t.on("ResizeEditor",m)),t.on("ScrollWindow",p),g.instanceApi.setData(c),Im.focusIn(g.dialog),g.instanceApi},n),i=(o,n,s,r)=>jE.open((o,a,i)=>{const l=ML(a,i),c=Ye(),d=e.backstages.popup.shared.header.isPositionedAtTop(),u=()=>c.on(e=>{dy.reposition(e),Hp.refresh(e)}),m=_L({dataValidator:i,initialData:l,internalDialog:o},{redial:jE.redial,closeWindow:()=>{c.on(dy.hide),t.off("ResizeEditor ScrollWindow ElementScroll",u),c.clear(),s(m.instanceApi)}},e.backstages.popup,r.ariaAttrs,u),g=Pg(dy.sketch({lazySink:e.backstages.popup.shared.getSink,dom:{tag:"div",classes:[]},fireDismissalEventInstead:r.persistent?{event:"doNotDismissYet"}:{},...d?{}:{fireRepositionEventInstead:{}},inlineBehaviours:hd([wd("window-manager-inline-events",[Zc(ri(),(e,t)=>{jc(m.dialog,eB)})]),Hp.config({contextual:{lazyContext:()=>A.some(Hs(ct(t.getContentAreaContainer()))),fadeInClass:"tox-dialog-dock-fadein",fadeOutClass:"tox-dialog-dock-fadeout",transitionClass:"tox-dialog-dock-transition"},modes:["top","bottom"],lazyViewport:e=>gk(t,e.element).map(e=>({bounds:pk(e),optScrollEnv:A.some({currentScrollTop:e.element.dom.scrollTop,scrollElmTop:Fn(e.element).top})})).getOrThunk(()=>({bounds:Ws(),optScrollEnv:A.none()}))})]),isExtraPart:(e,t)=>BL(t)}));return c.set(g),dy.showWithinBounds(g,Ug(m.dialog),{anchor:n},()=>e.backstages.popup.shared.getSink().toOptional().bind(e=>{const o=gk(t,e.element).map(e=>pk(e)).getOr(Ws()),n=Hs(ct(t.getContentAreaContainer())),s=Us(n,o);return A.some(Ls(s.x,s.y,s.width,s.height-15))})),Hp.refresh(g),t.on("ResizeEditor ScrollWindow ElementScroll ResizeWindow",u),m.instanceApi.setData(l),Im.focusIn(m.dialog),m.instanceApi},o);return{open:(t,o,n)=>{if(!u(o)){if("toolbar"===o.inline)return a(t,e.backstages.popup.shared.anchors.inlineDialog(),n,o);if("bottom"===o.inline)return i(t,e.backstages.popup.shared.anchors.inlineBottomDialog(),n,o);if("cursor"===o.inline)return a(t,e.backstages.popup.shared.anchors.cursor(),n,o)}return r(t,n)},openUrl:(o,n)=>((o,n)=>jE.openUrl(o=>{const s=DL(o,{closeWindow:()=>{yy.hide(s.dialog),n(s.instanceApi)}},t,e.backstages.dialog);return yy.show(s.dialog),s.instanceApi},o))(o,n),alert:(e,t)=>{n.open(e,t)},close:e=>{e.close()},confirm:(e,t)=>{s.open(e,t)}}},RL=e=>{oC(e),(e=>{const t=e.options.register,o=e=>{return f(e,r)?{value:(t=e,rM(t.map((e,t)=>t%2==0?"#"+(e=>{return(t=e,CD(t)?A.some({value:kD(t)}):A.none()).orThunk(()=>LD(e).map(_D)).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,s=n[0],r=n[1],a=n[2],i=n[3];return _D(FD(s,r,a,i))});var t})(e).value:e))),valid:!0}:{valid:!1,message:"Must be an array of strings."};var t},n=e=>h(e)&&e>0?{value:e,valid:!0}:{valid:!1,message:"Must be a positive number."};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_raw",{processor:e=>f(e,r)?{value:rM(e),valid:!0}:{valid:!1,message:"Must be an array of strings."}}),t("color_map_background",{processor:o}),t("color_map_foreground",{processor:o}),t("color_cols",{processor:n,default:cM(e)}),t("color_cols_foreground",{processor:n,default:dM(e,nM)}),t("color_cols_background",{processor:n,default:dM(e,sM)}),t("custom_colors",{processor:"boolean",default:!0}),t("color_default_foreground",{processor:"string",default:iM}),t("color_default_background",{processor:"string",default:iM})})(e),(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}:r(e)||f(e,r)?{value:rV(e),valid:!0}:{valid:!1,message:"Must be false or a string."},default:"link linkchecker image editimage table spellchecker configurepermanentpen"})})(e)};qS.add("silver",e=>{RL(e);let t=()=>Ws();const{dialogs:o,popups:n,renderUI:s}=LV(e,{getPopupSinkBounds:()=>t()});$M(e,n.backstage.shared);const r=FL({editor:e,backstages:{popup:n.backstage,dialog:o.backstage}}),a=Ye();return{renderUI:()=>{const o=s();return gk(e,n.getMothership().element).each(e=>{t=()=>pk(e)}),o},getWindowManagerImpl:y(r),getNotificationManagerImpl:()=>PO(e,{backstage:n.backstage},n.getMothership(),a),getPromotionElement:()=>Xn(ct(e.getContainer()),".tox-promotion").map(e=>e.dom).getOrNull(),getSinkElement:e=>"dialog"===e?o.getMothership().element.dom:n.getMothership().element.dom}})}();