theme.min.js 170KB

1
  1. !function(){"use strict";var n,e,t,o,r,i,u,a,c,s=function(n){return function(){return n}},f=s(!1),l=s(!0),O={noop:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e]},noarg:function(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return t()}},compose:function(t,o){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return t(o.apply(null,arguments))}},constant:s,identity:function(n){return n},tripleEquals:function(n,e){return n===e},curry:function(i){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];for(var u=new Array(arguments.length-1),t=1;t<arguments.length;t++)u[t-1]=arguments[t];return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];for(var t=new Array(arguments.length),o=0;o<t.length;o++)t[o]=arguments[o];var r=u.concat(t);return i.apply(null,r)}},not:function(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return!t.apply(null,arguments)}},die:function(n){return function(){throw new Error(n)}},apply:function(n){return n()},call:function(n){n()},never:f,always:l},d=function(e){return function(n){return function(n){if(null===n)return"null";var e=typeof n;return"object"===e&&Array.prototype.isPrototypeOf(n)?"array":"object"===e&&String.prototype.isPrototypeOf(n)?"string":e}(n)===e}},E={isString:d("string"),isObject:d("object"),isArray:d("array"),isNull:d("null"),isBoolean:d("boolean"),isUndefined:d("undefined"),isFunction:d("function"),isNumber:d("number")},m=function(u){return function(){for(var n=new Array(arguments.length),e=0;e<n.length;e++)n[e]=arguments[e];if(0===n.length)throw new Error("Can't merge zero objects");for(var t={},o=0;o<n.length;o++){var r=n[o];for(var i in r)r.hasOwnProperty(i)&&(t[i]=u(t[i],r[i]))}return t}},g=m(function(n,e){return E.isObject(n)&&E.isObject(e)?g(n,e):e}),p=m(function(n,e){return e}),D={deepMerge:g,merge:p},h=O.never,v=O.always,y=function(){return b},b=(o={fold:function(n,e){return n()},is:h,isSome:h,isNone:v,getOr:t=function(n){return n},getOrThunk:e=function(n){return n()},getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},or:t,orThunk:e,map:y,ap:y,each:function(){},bind:y,flatten:y,exists:h,forall:v,filter:y,equals:n=function(n){return n.isNone()},equals_:n,toArray:function(){return[]},toString:O.constant("none()")},Object.freeze&&Object.freeze(o),o),w=function(t){var n=function(){return t},e=function(){return r},o=function(n){return n(t)},r={fold:function(n,e){return e(t)},is:function(n){return t===n},isSome:v,isNone:h,getOr:n,getOrThunk:n,getOrDie:n,or:e,orThunk:e,map:function(n){return w(n(t))},ap:function(n){return n.fold(y,function(n){return w(n(t))})},each:function(n){n(t)},bind:o,flatten:n,exists:o,forall:o,filter:function(n){return n(t)?r:b},equals:function(n){return n.is(t)},equals_:function(n,e){return n.fold(h,function(n){return e(t,n)})},toArray:function(){return[t]},toString:function(){return"some("+t+")"}};return r},x={some:w,none:y,from:function(n){return null===n||n===undefined?b:w(n)}},T=(r=Object.keys)===undefined?function(n){var e=[];for(var t in n)n.hasOwnProperty(t)&&e.push(t);return e}:r,S=function(n,e){for(var t=T(n),o=0,r=t.length;o<r;o++){var i=t[o];e(n[i],i,n)}},k=function(o,r){var i={};return S(o,function(n,e){var t=r(n,e,o);i[t.k]=t.v}),i},C=function(n,t){var o=[];return S(n,function(n,e){o.push(t(n,e))}),o},A=function(n){return C(n,function(n){return n})},M={bifilter:function(n,t){var o={},r={};return S(n,function(n,e){(t(n,e)?o:r)[e]=n}),{t:o,f:r}},each:S,map:function(n,o){return k(n,function(n,e,t){return{k:e,v:o(n,e,t)}})},mapToArray:C,tupleMap:k,find:function(n,e){for(var t=T(n),o=0,r=t.length;o<r;o++){var i=t[o],u=n[i];if(e(u,i,n))return x.some(u)}return x.none()},keys:T,values:A,size:function(n){return A(n).length}},B=(O.constant("contextmenu"),O.constant("touchstart")),R=O.constant("touchmove"),I=O.constant("touchend"),F=(O.constant("gesturestart"),O.constant("mousedown")),N=O.constant("mousemove"),V=(O.constant("mouseout"),O.constant("mouseup")),H=O.constant("mouseover"),j=(O.constant("focusin"),O.constant("keydown")),z=O.constant("input"),L=O.constant("change"),P=(O.constant("focus"),O.constant("click")),W=O.constant("transitionend"),U=O.constant("selectstart"),G=function(n){var e,t=!1;return function(){return t||(t=!0,e=n.apply(null,arguments)),e}},$=function(n,e){var t=function(n,e){for(var t=0;t<n.length;t++){var o=n[t];if(o.test(e))return o}return undefined}(n,e);if(!t)return{major:0,minor:0};var o=function(n){return Number(e.replace(t,"$"+n))};return _(o(1),o(2))},q=function(){return _(0,0)},_=function(n,e){return{major:n,minor:e}},K={nu:_,detect:function(n,e){var t=String(e).toLowerCase();return 0===n.length?q():$(n,t)},unknown:q},X="Firefox",Y=function(n,e){return function(){return e===n}},J=function(n){var e=n.current;return{current:e,version:n.version,isEdge:Y("Edge",e),isChrome:Y("Chrome",e),isIE:Y("IE",e),isOpera:Y("Opera",e),isFirefox:Y(X,e),isSafari:Y("Safari",e)}},Q={unknown:function(){return J({current:undefined,version:K.unknown()})},nu:J,edge:O.constant("Edge"),chrome:O.constant("Chrome"),ie:O.constant("IE"),opera:O.constant("Opera"),firefox:O.constant(X),safari:O.constant("Safari")},Z="Windows",nn="Android",en="Solaris",tn="FreeBSD",on=function(n,e){return function(){return e===n}},rn=function(n){var e=n.current;return{current:e,version:n.version,isWindows:on(Z,e),isiOS:on("iOS",e),isAndroid:on(nn,e),isOSX:on("OSX",e),isLinux:on("Linux",e),isSolaris:on(en,e),isFreeBSD:on(tn,e)}},un={unknown:function(){return rn({current:undefined,version:K.unknown()})},nu:rn,windows:O.constant(Z),ios:O.constant("iOS"),android:O.constant(nn),linux:O.constant("Linux"),osx:O.constant("OSX"),solaris:O.constant(en),freebsd:O.constant(tn)},an=(i=Array.prototype.indexOf)===undefined?function(n,e){return gn(n,e)}:function(n,e){return i.call(n,e)},cn=function(n,e){return-1<an(n,e)},sn=function(n,e){for(var t=n.length,o=new Array(t),r=0;r<t;r++){var i=n[r];o[r]=e(i,r,n)}return o},fn=function(n,e){for(var t=0,o=n.length;t<o;t++)e(n[t],t,n)},ln=function(n,e){for(var t=n.length-1;0<=t;t--)e(n[t],t,n)},dn=function(n,e){for(var t=[],o=0,r=n.length;o<r;o++){var i=n[o];e(i,o,n)&&t.push(i)}return t},mn=function(n,e){for(var t=0,o=n.length;t<o;t++)if(e(n[t],t,n))return x.some(t);return x.none()},gn=function(n,e){for(var t=0,o=n.length;t<o;++t)if(n[t]===e)return t;return-1},pn=Array.prototype.push,hn=function(n){for(var e=[],t=0,o=n.length;t<o;++t){if(!Array.prototype.isPrototypeOf(n[t]))throw new Error("Arr.flatten item "+t+" was not an array, input: "+n);pn.apply(e,n[t])}return e},vn=function(n,e){for(var t=0,o=n.length;t<o;++t)if(!0!==e(n[t],t,n))return!1;return!0},yn=Array.prototype.slice,bn=E.isFunction(Array.from)?Array.from:function(n){return yn.call(n)},wn={map:sn,each:fn,eachr:ln,partition:function(n,e){for(var t=[],o=[],r=0,i=n.length;r<i;r++){var u=n[r];(e(u,r,n)?t:o).push(u)}return{pass:t,fail:o}},filter:dn,groupBy:function(n,e){if(0===n.length)return[];for(var t=e(n[0]),o=[],r=[],i=0,u=n.length;i<u;i++){var a=n[i],c=e(a);c!==t&&(o.push(r),r=[]),t=c,r.push(a)}return 0!==r.length&&o.push(r),o},indexOf:function(n,e){var t=an(n,e);return-1===t?x.none():x.some(t)},foldr:function(n,e,t){return ln(n,function(n){t=e(t,n)}),t},foldl:function(n,e,t){return fn(n,function(n){t=e(t,n)}),t},find:function(n,e){for(var t=0,o=n.length;t<o;t++){var r=n[t];if(e(r,t,n))return x.some(r)}return x.none()},findIndex:mn,flatten:hn,bind:function(n,e){var t=sn(n,e);return hn(t)},forall:vn,exists:function(n,e){return mn(n,e).isSome()},contains:cn,equal:function(n,t){return n.length===t.length&&vn(n,function(n,e){return n===t[e]})},reverse:function(n){var e=yn.call(n,0);return e.reverse(),e},chunk:function(n,e){for(var t=[],o=0;o<n.length;o+=e){var r=n.slice(o,o+e);t.push(r)}return t},difference:function(n,e){return dn(n,function(n){return!cn(e,n)})},mapToObject:function(n,e){for(var t={},o=0,r=n.length;o<r;o++){var i=n[o];t[String(i)]=e(i,o)}return t},pure:function(n){return[n]},sort:function(n,e){var t=yn.call(n,0);return t.sort(e),t},range:function(n,e){for(var t=[],o=0;o<n;o++)t.push(e(o));return t},head:function(n){return 0===n.length?x.none():x.some(n[0])},last:function(n){return 0===n.length?x.none():x.some(n[n.length-1])},from:bn},xn=function(n,e){var t=String(e).toLowerCase();return wn.find(n,function(n){return n.search(t)})},Tn=function(n,t){return xn(n,t).map(function(n){var e=K.detect(n.versionRegexes,t);return{current:n.name,version:e}})},Sn=function(n,t){return xn(n,t).map(function(n){var e=K.detect(n.versionRegexes,t);return{current:n.name,version:e}})},kn=function(n,e){return e+n},Cn=function(n,e){return n+e},On=function(n,e){return n.substring(e)},En=function(n,e){return n.substring(0,n.length-e)},Dn=function(n){return""===n?x.none():x.some(n.substr(0,1))},An=function(n){return""===n?x.none():x.some(n.substring(1))},Mn=function(n,e,t){return""===e||!(n.length<e.length)&&n.substr(t,t+e.length)===e},Bn=function(n,e){return Mn(n,e,0)},Rn=function(n,e){return Mn(n,e,n.length-e.length)},In={supplant:function(n,r){return n.replace(/\${([^{}]*)}/g,function(n,e){var t,o=r[e];return"string"==(t=typeof o)||"number"===t?o:n})},startsWith:Bn,removeLeading:function(n,e){return Bn(n,e)?On(n,e.length):n},removeTrailing:function(n,e){return Rn(n,e)?En(n,e.length):n},ensureLeading:function(n,e){return Bn(n,e)?n:kn(n,e)},ensureTrailing:function(n,e){return Rn(n,e)?n:Cn(n,e)},endsWith:Rn,contains:function(n,e){return-1!==n.indexOf(e)},trim:function(n){return n.replace(/^\s+|\s+$/g,"")},lTrim:function(n){return n.replace(/^\s+/g,"")},rTrim:function(n){return n.replace(/\s+$/g,"")},capitalize:function(n){return Dn(n).bind(function(e){return An(n).map(function(n){return e.toUpperCase()+n})}).getOr(n)}},Fn=/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,Nn=function(e){return function(n){return In.contains(n,e)}},Vn=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:function(n){return In.contains(n,"edge/")&&In.contains(n,"chrome")&&In.contains(n,"safari")&&In.contains(n,"applewebkit")}},{name:"Chrome",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Fn],search:function(n){return In.contains(n,"chrome")&&!In.contains(n,"chromeframe")}},{name:"IE",versionRegexes:[/.*?msie\ ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:function(n){return In.contains(n,"msie")||In.contains(n,"trident")}},{name:"Opera",versionRegexes:[Fn,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Nn("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/\ ?([0-9]+)\.([0-9]+).*/],search:Nn("firefox")},{name:"Safari",versionRegexes:[Fn,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:function(n){return(In.contains(n,"safari")||In.contains(n,"mobile/"))&&In.contains(n,"applewebkit")}}],Hn=[{name:"Windows",search:Nn("win"),versionRegexes:[/.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:function(n){return In.contains(n,"iphone")||In.contains(n,"ipad")},versionRegexes:[/.*?version\/\ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Nn("android"),versionRegexes:[/.*?android\ ?([0-9]+)\.([0-9]+).*/]},{name:"OSX",search:Nn("os x"),versionRegexes:[/.*?os\ x\ ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Nn("linux"),versionRegexes:[]},{name:"Solaris",search:Nn("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Nn("freebsd"),versionRegexes:[]}],jn={browsers:O.constant(Vn),oses:O.constant(Hn)},zn=function(n){var e,t,o,r,i,u,a,c,s,f,l,d=jn.browsers(),m=jn.oses(),g=Tn(d,n).fold(Q.unknown,Q.nu),p=Sn(m,n).fold(un.unknown,un.nu);return{browser:g,os:p,deviceType:(t=g,o=n,r=(e=p).isiOS()&&!0===/ipad/i.test(o),i=e.isiOS()&&!r,u=e.isAndroid()&&3===e.version.major,a=e.isAndroid()&&4===e.version.major,c=r||u||a&&!0===/mobile/i.test(o),s=e.isiOS()||e.isAndroid(),f=s&&!c,l=t.isSafari()&&e.isiOS()&&!1===/safari/i.test(o),{isiPad:O.constant(r),isiPhone:O.constant(i),isTablet:O.constant(c),isPhone:O.constant(f),isTouch:O.constant(s),isAndroid:e.isAndroid,isiOS:e.isiOS,isWebView:O.constant(l)})}},Ln={detect:G(function(){var n=navigator.userAgent;return zn(n)})},Pn={tap:O.constant("alloy.tap")},Wn=O.constant("alloy.focus"),Un=O.constant("alloy.blur.post"),Gn=O.constant("alloy.receive"),$n=O.constant("alloy.execute"),qn=O.constant("alloy.focus.item"),_n=Pn.tap,Kn=Ln.detect().deviceType.isTouch()?Pn.tap:P,Xn=O.constant("alloy.longpress"),Yn=(O.constant("alloy.sandbox.close"),O.constant("alloy.system.init")),Jn=O.constant("alloy.system.scroll"),Qn=O.constant("alloy.system.attached"),Zn=O.constant("alloy.system.detached"),ne=(O.constant("alloy.change.tab"),O.constant("alloy.dismiss.tab"),function(n,e){re(n,n.element(),e,{})}),ee=function(n,e,t){re(n,n.element(),e,t)},te=function(n){ne(n,$n())},oe=function(n,e,t){re(n,e,t,{})},re=function(n,e,t,o){var r=D.deepMerge({target:e},o);n.getSystem().triggerEvent(t,e,M.map(r,O.constant))},ie=function(n){if(null===n||n===undefined)throw new Error("Node cannot be null or undefined");return{dom:O.constant(n)}},ue={fromHtml:function(n,e){var t=(e||document).createElement("div");if(t.innerHTML=n,!t.hasChildNodes()||1<t.childNodes.length)throw console.error("HTML does not have a single root node",n),"HTML must have a single root node";return ie(t.childNodes[0])},fromTag:function(n,e){var t=(e||document).createElement(n);return ie(t)},fromText:function(n,e){var t=(e||document).createTextNode(n);return ie(t)},fromDom:ie,fromPoint:function(n,e,t){return x.from(n.dom().elementFromPoint(e,t)).map(ie)}},ae=8,ce=9,se=1,fe=3,le=function(n){return n.dom().nodeName.toLowerCase()},de=function(n){return n.dom().nodeType},me=function(e){return function(n){return de(n)===e}},ge=me(se),pe=me(fe),he=me(ce),ve={name:le,type:de,value:function(n){return n.dom().nodeValue},isElement:ge,isText:pe,isDocument:he,isComment:function(n){return de(n)===ae||"#comment"===le(n)}},ye=G(function(){return be(ue.fromDom(document))}),be=function(n){var e=n.dom().body;if(null===e||e===undefined)throw"Body is not available yet";return ue.fromDom(e)},we={body:ye,getBody:be,inBody:function(n){var e=ve.isText(n)?n.dom().parentNode:n.dom();return e!==undefined&&null!==e&&e.ownerDocument.body.contains(e)}},xe=function(n){return n.slice(0).sort()},Te=function(n,e){throw new Error("All required keys ("+xe(n).join(", ")+") were not specified. Specified keys were: "+xe(e).join(", ")+".")},Se=function(n){throw new Error("Unsupported keys for object: "+xe(n).join(", "))},ke=function(e,n){if(!E.isArray(n))throw new Error("The "+e+" fields must be an array. Was: "+n+".");wn.each(n,function(n){if(!E.isString(n))throw new Error("The value "+n+" in the "+e+" fields was not a string.")})},Ce=function(n,e){throw new Error("All values need to be of type: "+e+". Keys ("+xe(n).join(", ")+") were not.")},Oe=function(n){var t=xe(n);wn.find(t,function(n,e){return e<t.length-1&&n===t[e+1]}).each(function(n){throw new Error("The field: "+n+" occurs more than once in the combined fields: ["+t.join(", ")+"].")})},Ee={immutable:function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(e.length!==t.length)throw new Error('Wrong number of arguments to struct. Expected "['+e.length+']", got '+t.length+" arguments");var o={};return wn.each(e,function(n,e){o[n]=O.constant(t[e])}),o}},immutableBag:function(r,i){var u=r.concat(i);if(0===u.length)throw new Error("You must specify at least one required or optional field.");return ke("required",r),ke("optional",i),Oe(u),function(e){var t=M.keys(e);wn.forall(r,function(n){return wn.contains(t,n)})||Te(r,t);var n=wn.filter(t,function(n){return!wn.contains(u,n)});0<n.length&&Se(n);var o={};return wn.each(r,function(n){o[n]=O.constant(e[n])}),wn.each(i,function(n){o[n]=O.constant(Object.prototype.hasOwnProperty.call(e,n)?x.some(e[n]):x.none())}),o}}},De=function(n,e){for(var t=[],o=function(n){return t.push(n),e(n)},r=e(n);(r=r.bind(o)).isSome(););return t},Ae="undefined"!=typeof window?window:Function("return this;")(),Me=function(n,e){for(var t=e!==undefined&&null!==e?e:Ae,o=0;o<n.length&&t!==undefined&&null!==t;++o)t=t[n[o]];return t},Be=function(n,e){var t=n.split(".");return Me(t,e)},Re={getOrDie:function(n,e){var t=Be(n,e);if(t===undefined||null===t)throw n+" not available on this browser";return t}},Ie=se,Fe=ce,Ne=function(n){return n.nodeType!==Ie&&n.nodeType!==Fe||0===n.childElementCount},Ve={all:function(n,e){var t=e===undefined?document:e.dom();return Ne(t)?[]:wn.map(t.querySelectorAll(n),ue.fromDom)},is:function(n,e){var t=n.dom();if(t.nodeType!==Ie)return!1;if(t.matches!==undefined)return t.matches(e);if(t.msMatchesSelector!==undefined)return t.msMatchesSelector(e);if(t.webkitMatchesSelector!==undefined)return t.webkitMatchesSelector(e);if(t.mozMatchesSelector!==undefined)return t.mozMatchesSelector(e);throw new Error("Browser lacks native selectors")},one:function(n,e){var t=e===undefined?document:e.dom();return Ne(t)?x.none():x.from(t.querySelector(n)).map(ue.fromDom)}},He=function(n,e){return n.dom()===e.dom()},je=(Ln.detect().browser.isIE(),He),ze=function(n){return ue.fromDom(n.dom().ownerDocument)},Le=function(n){var e=n.dom();return x.from(e.parentNode).map(ue.fromDom)},Pe=function(n){var e=n.dom();return x.from(e.previousSibling).map(ue.fromDom)},We=function(n){var e=n.dom();return x.from(e.nextSibling).map(ue.fromDom)},Ue=function(n){var e=n.dom();return wn.map(e.childNodes,ue.fromDom)},Ge=function(n,e){var t=n.dom().childNodes;return x.from(t[e]).map(ue.fromDom)},$e=Ee.immutable("element","offset"),qe={owner:ze,defaultView:function(n){var e=n.dom().ownerDocument.defaultView;return ue.fromDom(e)},documentElement:function(n){var e=ze(n);return ue.fromDom(e.dom().documentElement)},parent:Le,findIndex:function(t){return Le(t).bind(function(n){var e=Ue(n);return wn.findIndex(e,function(n){return je(t,n)})})},parents:function(n,e){for(var t=E.isFunction(e)?e:O.constant(!1),o=n.dom(),r=[];null!==o.parentNode&&o.parentNode!==undefined;){var i=o.parentNode,u=ue.fromDom(i);if(r.push(u),!0===t(u))break;o=i}return r},siblings:function(e){return Le(e).map(Ue).map(function(n){return wn.filter(n,function(n){return!je(e,n)})}).getOr([])},prevSibling:Pe,offsetParent:function(n){var e=n.dom();return x.from(e.offsetParent).map(ue.fromDom)},prevSiblings:function(n){return wn.reverse(De(n,Pe))},nextSibling:We,nextSiblings:function(n){return De(n,We)},children:Ue,child:Ge,firstChild:function(n){return Ge(n,0)},lastChild:function(n){return Ge(n,n.dom().childNodes.length-1)},childNodesCount:function(n){return n.dom().childNodes.length},hasChildNodes:function(n){return n.dom().hasChildNodes()},leaf:function(n,e){var t=Ue(n);return 0<t.length&&e<t.length?$e(t[e],0):$e(n,e)}},_e=function(e,t){qe.parent(e).each(function(n){n.dom().insertBefore(t.dom(),e.dom())})},Ke=function(n,e){n.dom().appendChild(e.dom())},Xe={before:_e,after:function(n,e){qe.nextSibling(n).fold(function(){qe.parent(n).each(function(n){Ke(n,e)})},function(n){_e(n,e)})},prepend:function(e,t){qe.firstChild(e).fold(function(){Ke(e,t)},function(n){e.dom().insertBefore(t.dom(),n.dom())})},append:Ke,appendAt:function(n,e,t){qe.child(n,t).fold(function(){Ke(n,e)},function(n){_e(n,e)})},wrap:function(n,e){_e(n,e),Ke(e,n)}},Ye=function(e,n){wn.each(n,function(n){Xe.before(e,n)})},Je=function(e,n){wn.each(n,function(n){Xe.append(e,n)})},Qe=function(n){var e=n.dom();null!==e.parentNode&&e.parentNode.removeChild(e)},Ze={empty:function(n){n.dom().textContent="",wn.each(qe.children(n),function(n){Qe(n)})},remove:Qe,unwrap:function(n){var e=qe.children(n);0<e.length&&Ye(n,e),Qe(n)}},nt=function(n){ne(n,Zn());var e=n.components();wn.each(e,nt)},et=function(n){var e=n.components();wn.each(e,et),ne(n,Qn())},tt=function(n,e){ot(n,e,Xe.append)},ot=function(n,e,t){n.getSystem().addToWorld(e),t(n.element(),e.element()),we.inBody(n.element())&&et(e),n.syncComponents()},rt=function(n){nt(n),Ze.remove(n.element()),n.getSystem().removeFromWorld(n)},it=function(e){var n=qe.parent(e.element()).bind(function(n){return e.getSystem().getByDom(n).fold(x.none,x.some)});rt(e),n.each(function(n){n.syncComponents()})},ut=function(t){return{is:function(n){return t===n},isValue:O.always,isError:O.never,getOr:O.constant(t),getOrThunk:O.constant(t),getOrDie:O.constant(t),or:function(n){return ut(t)},orThunk:function(n){return ut(t)},fold:function(n,e){return e(t)},map:function(n){return ut(n(t))},each:function(n){n(t)},bind:function(n){return n(t)},exists:function(n){return n(t)},forall:function(n){return n(t)},toOption:function(){return x.some(t)}}},at=function(t){return{is:O.never,isValue:O.never,isError:O.always,getOr:O.identity,getOrThunk:function(n){return n()},getOrDie:function(){return O.die(String(t))()},or:function(n){return n},orThunk:function(n){return n()},fold:function(n,e){return n(t)},map:function(n){return at(t)},each:O.noop,bind:function(n){return at(t)},exists:O.never,forall:O.always,toOption:x.none}},ct={value:ut,error:at},st=function(u){if(!E.isArray(u))throw new Error("cases must be an array");if(0===u.length)throw new Error("there must be at least one case");var a=[],t={};return wn.each(u,function(n,o){var e=M.keys(n);if(1!==e.length)throw new Error("one and only one name per case");var r=e[0],i=n[r];if(t[r]!==undefined)throw new Error("duplicate key detected:"+r);if("cata"===r)throw new Error("cannot have a case named cata (sorry)");if(!E.isArray(i))throw new Error("case arguments must be an array");a.push(r),t[r]=function(){var n=arguments.length;if(n!==i.length)throw new Error("Wrong number of arguments to case "+r+". Expected "+i.length+" ("+i+"), got "+n);for(var t=new Array(n),e=0;e<t.length;e++)t[e]=arguments[e];return{fold:function(){if(arguments.length!==u.length)throw new Error("Wrong number of arguments to fold. Expected "+u.length+", got "+arguments.length);return arguments[o].apply(null,t)},match:function(n){var e=M.keys(n);if(a.length!==e.length)throw new Error("Wrong number of arguments to match. Expected: "+a.join(",")+"\nActual: "+e.join(","));if(!wn.forall(a,function(n){return wn.contains(e,n)}))throw new Error("Not all branches were specified when using match. Specified: "+e.join(", ")+"\nRequired: "+a.join(", "));return n[r].apply(null,t)},log:function(n){console.log(n,{constructors:a,constructor:r,params:t})}}}}),t},ft=st([{strict:[]},{defaultedThunk:["fallbackThunk"]},{asOption:[]},{asDefaultedOptionThunk:["fallbackThunk"]},{mergeWithThunk:["baseThunk"]}]),lt=function(n){return ft.defaultedThunk(O.constant(n))},dt=ft.strict,mt=ft.asOption,gt=ft.defaultedThunk,pt=(ft.asDefaultedOptionThunk,ft.mergeWithThunk),ht=(st([{bothErrors:["error1","error2"]},{firstError:["error1","value2"]},{secondError:["value1","error2"]},{bothValues:["value1","value2"]}]),function(n){var e=[],t=[];return wn.each(n,function(n){n.fold(function(n){e.push(n)},function(n){t.push(n)})}),{errors:e,values:t}}),vt=function(n){return O.compose(ct.error,wn.flatten)(n)},yt=function(n,e){var t,o,r=ht(n);return 0<r.errors.length?vt(r.errors):(t=r.values,o=e,ct.value(D.deepMerge.apply(undefined,[o].concat(t))))},bt=function(n){var e=ht(n);return 0<e.errors.length?vt(e.errors):ct.value(e.values)},wt=function(e){return function(n){return n.hasOwnProperty(e)?x.from(n[e]):x.none()}},xt=function(n,e){return wt(e)(n)},Tt=function(n,e){var t={};return t[n]=e,t},St=function(n,e){return t=n,o=e,r={},wn.each(o,function(n){t[n]!==undefined&&t.hasOwnProperty(n)&&(r[n]=t[n])}),r;var t,o,r},kt=function(n,e){return t=n,o=e,r={},M.each(t,function(n,e){wn.contains(o,e)||(r[e]=n)}),r;var t,o,r},Ct=function(n){return wt(n)},Ot=function(n,e){return t=n,o=e,function(n){return wt(t)(n).getOr(o)};var t,o},Et=function(n,e){return xt(n,e)},Dt=function(n,e){return Tt(n,e)},At=function(n){return e=n,t={},wn.each(e,function(n){t[n.key]=n.value}),t;var e,t},Mt=function(n,e){return yt(n,e)},Bt=function(n,e){return o=e,(t=n).hasOwnProperty(o)&&t[o]!==undefined&&null!==t[o];var t,o},Rt=st([{setOf:["validator","valueType"]},{arrOf:["valueType"]},{objOf:["fields"]},{itemOf:["validator"]},{choiceOf:["key","branches"]},{thunk:["description"]},{func:["args","outputSchema"]}]),It=st([{field:["name","presence","type"]},{state:["name"]}]),Ft=function(){return Re.getOrDie("JSON")},Nt=function(n,e,t){return Ft().stringify(n,e,t)},Vt=function(n){return E.isObject(n)&&100<M.keys(n).length?" removed due to size":Nt(n,null,2)},Ht=function(n,e){return ct.error([{path:n,getErrorInfo:e}])},jt=st([{field:["key","okey","presence","prop"]},{state:["okey","instantiator"]}]),zt=function(t,o,r){return xt(o,r).fold(function(){return n=r,e=o,Ht(t,function(){return'Could not find valid *strict* value for "'+n+'" in '+Vt(e)});var n,e},ct.value)},Lt=function(n,e,t){var o=xt(n,e).fold(function(){return t(n)},O.identity);return ct.value(o)},Pt=function(r,a,n,c){return n.fold(function(i,e,n,t){var o=function(n){return t.extract(r.concat([i]),c,n).map(function(n){return Tt(e,c(n))})},u=function(n){return n.fold(function(){var n=Tt(e,c(x.none()));return ct.value(n)},function(n){return t.extract(r.concat([i]),c,n).map(function(n){return Tt(e,c(x.some(n)))})})};return n.fold(function(){return zt(r,a,i).bind(o)},function(n){return Lt(a,i,n).bind(o)},function(){return(n=a,e=i,ct.value(xt(n,e))).bind(u);var n,e},function(n){return(e=a,t=i,o=n,r=xt(e,t).map(function(n){return!0===n?o(e):n}),ct.value(r)).bind(u);var e,t,o,r},function(n){var e=n(a);return Lt(a,i,O.constant({})).map(function(n){return D.deepMerge(e,n)}).bind(o)})},function(n,e){var t=e(a);return ct.value(Tt(n,c(t)))})},Wt=function(o){return{extract:function(t,n,e){return o(e,n).fold(function(n){return e=n,Ht(t,function(){return e});var e},ct.value)},toString:function(){return"val"},toDsl:function(){return Rt.itemOf(o)}}},Ut=function(n){var c=Gt(n),s=wn.foldr(n,function(e,n){return n.fold(function(n){return D.deepMerge(e,Dt(n,!0))},O.constant(e))},{});return{extract:function(n,e,t){var o,r,i,u=E.isBoolean(t)?[]:(o=t,r=M.keys(o),wn.filter(r,function(n){return Bt(o,n)})),a=wn.filter(u,function(n){return!Bt(s,n)});return 0===a.length?c.extract(n,e,t):(i=a,Ht(n,function(){return"There are unsupported fields: ["+i.join(", ")+"] specified"}))},toString:c.toString,toDsl:c.toDsl}},Gt=function(c){return{extract:function(n,e,t){return o=n,r=t,i=c,u=e,a=wn.map(i,function(n){return Pt(o,r,n,u)}),yt(a,{});var o,r,i,u,a},toString:function(){return"obj{\n"+wn.map(c,function(n){return n.fold(function(n,e,t,o){return n+" -> "+o.toString()},function(n,e){return"state("+n+")"})}).join("\n")+"}"},toDsl:function(){return Rt.objOf(wn.map(c,function(n){return n.fold(function(n,e,t,o){return It.field(n,t,o)},function(n,e){return It.state(n)})}))}}},$t=function(r){return{extract:function(t,o,n){var e=wn.map(n,function(n,e){return r.extract(t.concat(["["+e+"]"]),o,n)});return bt(e)},toString:function(){return"array("+r.toString()+")"},toDsl:function(){return Rt.arrOf(r)}}},qt=function(u,a){return{extract:function(t,o,r){var n,e,i=M.keys(r);return(n=t,e=i,$t(Wt(u)).extract(n,O.identity,e)).bind(function(n){var e=wn.map(n,function(n){return jt.field(n,n,dt(),a)});return Gt(e).extract(t,o,r)})},toString:function(){return"setOf("+a.toString()+")"},toDsl:function(){return Rt.setOf(u,a)}}},_t=O.constant(Wt(ct.value)),Kt=(O.compose($t,Gt),jt.state),Xt=jt.field,Yt=function(t,e,o,r,i){return Et(r,i).fold(function(){return n=r,e=i,Ht(t,function(){return'The chosen schema: "'+e+'" did not exist in branches: '+Vt(n)});var n,e},function(n){return Gt(n).extract(t.concat(["branch: "+i]),e,o)})},Jt=function(r,i){return{extract:function(e,t,o){return Et(o,r).fold(function(){return n=r,Ht(e,function(){return'Choice schema did not contain choice key: "'+n+'"'});var n},function(n){return Yt(e,t,o,i,n)})},toString:function(){return"chooseOn("+r+"). Possible values: "+M.keys(i)},toDsl:function(){return Rt.choiceOf(r,i)}}},Qt=Wt(ct.value),Zt=function(n,e,t,o){return e.extract([n],t,o).fold(function(n){return ct.error({input:o,errors:n})},ct.value)},no=function(n,e,t){return Zt(n,e,O.constant,t)},eo=function(n){return n.fold(function(n){throw new Error(ro(n))},O.identity)},to=function(n,e,t){return eo((o=t,Zt(n,e,O.identity,o)));var o},oo=function(n,e,t){return eo(no(n,e,t))},ro=function(n){return"Errors: \n"+(e=n.errors,t=10<e.length?e.slice(0,10).concat([{path:[],getErrorInfo:function(){return"... (only showing first ten failures)"}}]):e,wn.map(t,function(n){return"Failed path: ("+n.path.join(" > ")+")\n"+n.getErrorInfo()}))+"\n\nInput object: "+Vt(n.input);var e,t},io=function(n,e){return Jt(n,e)},uo=O.constant(Qt),ao=(u=E.isFunction,a="function",Wt(function(n){var e=typeof n;return u(n)?ct.value(n):ct.error("Expected type: "+a+" but got: "+e)})),co=function(n){return Xt(n,n,dt(),_t())},so=function(n,e){return Xt(n,n,dt(),e)},fo=function(n){return so(n,ao)},lo=function(n,e){return Xt(n,n,dt(),Gt(e))},mo=function(n){return Xt(n,n,mt(),_t())},go=function(n,e){return Xt(n,n,mt(),Gt(e))},po=function(n,e){return Xt(n,n,mt(),Ut(e))},ho=function(n,e){return Xt(n,n,lt(e),_t())},vo=function(n,e,t){return Xt(n,n,lt(e),t)},yo=function(n,e){return Kt(n,e)},bo=function(n){if(!Bt(n,"can")&&!Bt(n,"abort")&&!Bt(n,"run"))throw new Error("EventHandler defined by: "+Nt(n,null,2)+" does not have can, abort, or run!");return to("Extracting event.handler",Ut([ho("can",O.constant(!0)),ho("abort",O.constant(!1)),ho("run",O.noop)]),n)},wo=function(n){var e,o,r,i,t=(e=n,o=function(n){return n.can},function(){var t=Array.prototype.slice.call(arguments,0);return wn.foldl(e,function(n,e){return n&&o(e).apply(undefined,t)},!0)}),u=(r=n,i=function(n){return n.abort},function(){var t=Array.prototype.slice.call(arguments,0);return wn.foldl(r,function(n,e){return n||i(e).apply(undefined,t)},!1)});return bo({can:t,abort:u,run:function(){var e=Array.prototype.slice.call(arguments,0);wn.each(n,function(n){n.run.apply(undefined,e)})}})},xo=At,To=function(n,e){return{key:n,value:bo({abort:e})}},So=function(n,e){return{key:n,value:bo({run:e})}},ko=function(n,e,t){return{key:n,value:bo({run:function(n){e.apply(undefined,[n].concat(t))}})}},Co=function(n){return function(o){return{key:n,value:bo({run:function(n,e){var t;t=e,je(n.element(),t.event().target())&&o(n,e)}})}}},Oo=function(n,e,t){var u,o,r=e.partUids()[t];return o=r,So(u=n,function(n,i){n.getSystem().getByUid(o).each(function(n){var e,t,o,r;t=(e=n).element(),o=u,r=i,e.getSystem().triggerEvent(o,t,r.event())})})},Eo=function(n){return So(n,function(n,e){e.cut()})},Do=Co(Qn()),Ao=Co(Zn()),Mo=Co(Yn()),Bo=(c=$n(),function(n){return So(c,n)}),Ro=function(n){return wn.map(n,function(n){return In.endsWith(n,"/*")?n.substring(0,n.length-"/*".length):n})},Io=function(n,e){var t=n.toString(),o=t.indexOf(")")+1,r=t.indexOf("("),i=t.substring(r+1,o-1).split(/,\s*/);return n.toFunctionAnnotation=function(){return{name:e,parameters:Ro(i)}},n},Fo=Ee.immutableBag(["tag"],["classes","attributes","styles","value","innerHtml","domChildren","defChildren"]),No=function(n){return{tag:n.tag(),classes:n.classes().getOr([]),attributes:n.attributes().getOr({}),styles:n.styles().getOr({}),value:n.value().getOr("<none>"),innerHtml:n.innerHtml().getOr("<none>"),defChildren:n.defChildren().getOr("<none>"),domChildren:n.domChildren().fold(function(){return"<none>"},function(n){return 0===n.length?"0 children, but still specified":String(n.length)})}},Vo=Ee.immutableBag([],["classes","attributes","styles","value","innerHtml","defChildren","domChildren"]),Ho=function(e,n,t){return n.fold(function(){return t.fold(function(){return{}},function(n){return Dt(e,n)})},function(n){return t.fold(function(){return Dt(e,n)},function(n){return Dt(e,n)})})},jo=function(t,o,r){return Mo(function(n,e){r(n,t,o)})},zo=function(n,e,t,o,r,i){var u,a,c=n,s=go(e,[(u="config",a=n,Xt(u,u,mt(),a))]);return Wo(c,s,e,t,o,r,i)},Lo=function(n,r,e){var t,o,i,u,a,c;return t=function(t){var o=arguments;return t.config({name:O.constant(n)}).fold(function(){throw new Error("We could not find any behaviour configuration for: "+n+". Using API: "+e)},function(n){var e=Array.prototype.slice.call(o,1);return r.apply(undefined,[t,n.config,n.state].concat(e))})},o=e,i=r.toString(),u=i.indexOf(")")+1,a=i.indexOf("("),c=i.substring(a+1,u-1).split(/,\s*/),t.toFunctionAnnotation=function(){return{name:o,parameters:Ro(c.slice(0,1).concat(c.slice(3)))}},t},Po=function(n){return{key:n,value:undefined}},Wo=function(t,n,o,r,e,i,u){var a=function(n){return Bt(n,o)?n[o]():x.none()},c=M.map(e,function(n,e){return Lo(o,n,e)}),s=M.map(i,function(n,e){return Io(n,e)}),f=D.deepMerge(s,c,{revoke:O.curry(Po,o),config:function(n){var e=oo(o+"-config",t,n);return{key:o,value:{config:e,me:f,configAsRaw:G(function(){return to(o+"-config",t,n)}),initialConfig:n,state:u}}},schema:function(){return n},exhibit:function(n,t){return a(n).bind(function(e){return Et(r,"exhibit").map(function(n){return n(t,e.config,e.state)})}).getOr(Vo({}))},name:function(){return o},handlers:function(n){return a(n).bind(function(e){return Et(r,"events").map(function(n){return n(e.config,e.state)})}).getOr({})}});return f},Uo=function(n,e){return Go(n,e,{validate:E.isFunction,label:"function"})},Go=function(o,r,i){if(0===r.length)throw new Error("You must specify at least one required field.");return ke("required",r),Oe(r),function(e){var t=M.keys(e);wn.forall(r,function(n){return wn.contains(t,n)})||Te(r,t),o(r,t);var n=wn.filter(r,function(n){return!i.validate(e[n],n)});return 0<n.length&&Ce(n,i.label),e}},$o=O.noop,qo={exactly:O.curry(Uo,function(e,n){var t=wn.filter(n,function(n){return!wn.contains(e,n)});0<t.length&&Se(t)}),ensure:O.curry(Uo,$o),ensureWith:O.curry(Go,$o)},_o=qo.ensure(["readState"]),Ko=function(){return _o({readState:function(){return"No State required"}})},Xo=Object.freeze({init:Ko}),Yo=function(n){return At(n)},Jo=Ut([co("fields"),co("name"),ho("active",{}),ho("apis",{}),ho("extra",{}),ho("state",Xo)]),Qo=function(n){var e,t,o,r,i,u,a,c,s=to("Creating behaviour: "+n.name,Jo,n);return e=s.fields,t=s.name,o=s.active,r=s.apis,i=s.extra,u=s.state,a=Ut(e),c=go(t,[po("config",e)]),Wo(a,c,t,o,r,i,u)},Zo=Ut([co("branchKey"),co("branches"),co("name"),ho("active",{}),ho("apis",{}),ho("extra",{}),ho("state",Xo)]),nr=O.constant(undefined),er=(O.constant({}),O.constant({}),O.constant({}),O.constant(Xo));function tr(n,e,t){var o=t||!1,r=function(){e(),o=!0},i=function(){n(),o=!1};return{on:r,off:i,toggle:function(){(o?i:r)()},isOn:function(){return o}}}var or=function(n,e,t){if(!(E.isString(t)||E.isBoolean(t)||E.isNumber(t)))throw console.error("Invalid call to Attr.set. Key ",e,":: Value ",t,":: Element ",n),new Error("Attribute value was not simple");n.setAttribute(e,t+"")},rr=function(n,e,t){or(n.dom(),e,t)},ir=function(n,e){var t=n.dom().getAttribute(e);return null===t?undefined:t},ur=function(n,e){var t=n.dom();return!(!t||!t.hasAttribute)&&t.hasAttribute(e)},ar={clone:function(n){return wn.foldl(n.dom().attributes,function(n,e){return n[e.name]=e.value,n},{})},set:rr,setAll:function(n,e){var t=n.dom();M.each(e,function(n,e){or(t,e,n)})},get:ir,has:ur,remove:function(n,e){n.dom().removeAttribute(e)},hasNone:function(n){var e=n.dom().attributes;return e===undefined||null===e||0===e.length},transfer:function(r,i,n){ve.isElement(r)&&ve.isElement(i)&&wn.each(n,function(n){var e,t,o;t=i,ur(e=r,o=n)&&!ur(t,o)&&rr(t,o,ir(e,o))})}},cr=function(n,e){var t=ar.get(n,e);return t===undefined||""===t?[]:t.split(" ")},sr=cr,fr=function(n,e,t){var o=cr(n,e).concat([t]);ar.set(n,e,o.join(" "))},lr=function(n,e,t){var o=wn.filter(cr(n,e),function(n){return n!==t});0<o.length?ar.set(n,e,o.join(" ")):ar.remove(n,e)},dr=function(n){return sr(n,"class")},mr=function(n,e){return fr(n,"class",e)},gr=function(n,e){return lr(n,"class",e)},pr=dr,hr=mr,vr=gr,yr=function(n,e){wn.contains(dr(n),e)?gr(n,e):mr(n,e)},br=function(n){return n.dom().classList!==undefined},wr=function(n,e){return br(n)&&n.dom().classList.contains(e)},xr={add:function(n,e){br(n)?n.dom().classList.add(e):hr(n,e)},remove:function(n,e){var t;br(n)?n.dom().classList.remove(e):vr(n,e),0===(br(t=n)?t.dom().classList:pr(t)).length&&ar.remove(t,"class")},toggle:function(n,e){return br(n)?n.dom().classList.toggle(e):yr(n,e)},toggler:function(n,e){var t=br(n),o=n.dom().classList;return tr(function(){t?o.remove(e):vr(n,e)},function(){t?o.add(e):hr(n,e)},wr(n,e))},has:wr},Tr=function(n,e,t){xr.remove(n,t),xr.add(n,e)},Sr=Object.freeze({toAlpha:function(n,e,t){Tr(n.element(),e.alpha(),e.omega())},toOmega:function(n,e,t){Tr(n.element(),e.omega(),e.alpha())},isAlpha:function(n,e,t){return xr.has(n.element(),e.alpha())},isOmega:function(n,e,t){return xr.has(n.element(),e.omega())},clear:function(n,e,t){xr.remove(n.element(),e.alpha()),xr.remove(n.element(),e.omega())}}),kr=[co("alpha"),co("omega")],Cr=Qo({fields:kr,name:"swapping",apis:Sr}),Or=function(n){var e=n,t=function(){return e};return{get:t,set:function(n){e=n},clone:function(){return Or(t())}}};function Er(n,e,t,o,r){return n(t,o)?x.some(t):E.isFunction(r)&&r(t)?x.none():e(t,o,r)}var Dr=function(n,e,t){for(var o=n.dom(),r=E.isFunction(t)?t:O.constant(!1);o.parentNode;){o=o.parentNode;var i=ue.fromDom(o);if(e(i))return x.some(i);if(r(i))break}return x.none()},Ar=function(n,e){return wn.find(n.dom().childNodes,O.compose(e,ue.fromDom)).map(ue.fromDom)},Mr=function(n,o){var r=function(n){for(var e=0;e<n.childNodes.length;e++){if(o(ue.fromDom(n.childNodes[e])))return x.some(ue.fromDom(n.childNodes[e]));var t=r(n.childNodes[e]);if(t.isSome())return t}return x.none()};return r(n.dom())},Br={first:function(n){return Mr(we.body(),n)},ancestor:Dr,closest:function(n,e,t){return Er(function(n){return e(n)},Dr,n,e,t)},sibling:function(e,t){var n=e.dom();return n.parentNode?Ar(ue.fromDom(n.parentNode),function(n){return!je(e,n)&&t(n)}):x.none()},child:Ar,descendant:Mr},Rr=function(n){n.dom().focus()},Ir=function(n){var e=n!==undefined?n.dom():document;return x.from(e.activeElement).map(ue.fromDom)},Fr=function(n){var e=qe.owner(n).dom();return n.dom()===e.activeElement},Nr=Rr,Vr=function(n){n.dom().blur()},Hr=Ir,jr=function(e){return Ir(qe.owner(e)).filter(function(n){return e.dom().contains(n.dom())})},zr=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),Lr=tinymce.util.Tools.resolve("tinymce.ThemeManager"),Pr=function(n){var e=document.createElement("a");e.target="_blank",e.href=n.href,e.rel="noreferrer noopener";var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),document.body.appendChild(e),e.dispatchEvent(t),document.body.removeChild(e)},Wr={formatChanged:O.constant("formatChanged"),orientationChanged:O.constant("orientationChanged"),dropupDismissed:O.constant("dropupDismissed")},Ur=function(n,e){var t=(e||document).createElement("div");return t.innerHTML=n,qe.children(ue.fromDom(t))},Gr=function(n){return n.dom().innerHTML},$r=Gr,qr=function(n,e){var t=qe.owner(n).dom(),o=ue.fromDom(t.createDocumentFragment()),r=Ur(e,t);Je(o,r),Ze.empty(n),Xe.append(n,o)},_r=function(n){var e=ue.fromTag("div"),t=ue.fromDom(n.dom().cloneNode(!0));return Xe.append(e,t),Gr(e)},Kr=function(n,e){return ue.fromDom(n.dom().cloneNode(e))},Xr=function(n){return Kr(n,!1)},Yr=function(n){return e=Xr(n),_r(e);var e},Jr=Object.freeze({events:function(a){return xo([So(Gn(),function(r,i){var n,e,u=a.channels(),t=M.keys(u),o=(n=t,(e=i).universal()?n:wn.filter(n,function(n){return wn.contains(e.channels(),n)}));wn.each(o,function(n){var e=u[n](),t=e.schema(),o=oo("channel["+n+"] data\nReceiver: "+Yr(r.element()),t,i.data());e.onReceive()(r,o)})})])}}),Qr=function(n){for(var e=[],t=function(n){e.push(n)},o=0;o<n.length;o++)n[o].each(t);return e},Zr=function(n,e){for(var t=0;t<n.length;t++){var o=e(n[t],t);if(o.isSome())return o}return x.none()},ni="unknown",ei=[],ti=["alloy/data/Fields","alloy/debugging/Debugging"],oi={logEventCut:O.noop,logEventStopped:O.noop,logNoParent:O.noop,logEventNoHandlers:O.noop,logEventResponse:O.noop,write:O.noop},ri=function(n,e,t){var o,r="*"===ei||wn.contains(ei,n)?(o=[],{logEventCut:function(n,e,t){o.push({outcome:"cut",target:e,purpose:t})},logEventStopped:function(n,e,t){o.push({outcome:"stopped",target:e,purpose:t})},logNoParent:function(n,e,t){o.push({outcome:"no-parent",target:e,purpose:t})},logEventNoHandlers:function(n,e){o.push({outcome:"no-handlers-left",target:e})},logEventResponse:function(n,e,t){o.push({outcome:"response",purpose:t,target:e})},write:function(){wn.contains(["mousemove","mouseover","mouseout",Yn()],n)||console.log(n,{event:n,target:e.dom(),sequence:wn.map(o,function(n){return wn.contains(["cut","stopped","response"],n.outcome)?"{"+n.purpose+"} "+n.outcome+" at ("+Yr(n.target)+")":n.outcome})})}}):oi,i=t(r);return r.write(),i},ii=(O.constant(oi),O.constant(!0),O.constant([co("menu"),co("selectedMenu")])),ui=O.constant([co("item"),co("selectedItem")]),ai=(O.constant(Ut(ui().concat(ii()))),O.constant(Ut(ui()))),ci=lo("initSize",[co("numColumns"),co("numRows")]),si=function(n,e,t){var o;return function(){var n=new Error;if(n.stack!==undefined){var e=n.stack.split("\n");wn.find(e,function(e){return 0<e.indexOf("alloy")&&!wn.exists(ti,function(n){return-1<e.indexOf(n)})}).getOr(ni)}}(),Xt(e,e,t,(o=function(n){return ct.value(function(){return n.apply(undefined,arguments)})},Wt(function(n){return o(n)})))},fi=function(n){return si(0,n,lt(O.noop))},li=function(n){return si(0,n,lt(x.none))},di=function(n){return si(0,n,dt())},mi=function(n){return si(0,n,dt())},gi=function(n,e){return yo(n,O.constant(e))},pi=function(n){return yo(n,O.identity)},hi=O.constant(ci),vi=[so("channels",qt(ct.value,Ut([di("onReceive"),ho("schema",uo())])))],yi=Qo({fields:vi,name:"receiving",active:Jr}),bi=function(n,e){var t=Si(n,e),o=e.aria();o.update()(n,o,t)},wi=function(n,e,t){xr.toggle(n.element(),e.toggleClass()),bi(n,e)},xi=function(n,e,t){xr.add(n.element(),e.toggleClass()),bi(n,e)},Ti=function(n,e,t){xr.remove(n.element(),e.toggleClass()),bi(n,e)},Si=function(n,e){return xr.has(n.element(),e.toggleClass())},ki=function(n,e,t){(e.selected()?xi:Ti)(n,e,t)},Ci=Object.freeze({onLoad:ki,toggle:wi,isOn:Si,on:xi,off:Ti}),Oi=Object.freeze({exhibit:function(n,e,t){return Vo({})},events:function(n,e){var t,o,r,i=(t=n,o=e,r=wi,Bo(function(n){r(n,t,o)})),u=jo(n,e,ki);return xo(wn.flatten([n.toggleOnExecute()?[i]:[],[u]]))}}),Ei=function(n,e,t){ar.set(n.element(),"aria-expanded",t)},Di=[ho("selected",!1),co("toggleClass"),ho("toggleOnExecute",!0),vo("aria",{mode:"none"},io("mode",{pressed:[ho("syncWithExpanded",!1),gi("update",function(n,e,t){ar.set(n.element(),"aria-pressed",t),e.syncWithExpanded()&&Ei(n,e,t)})],checked:[gi("update",function(n,e,t){ar.set(n.element(),"aria-checked",t)})],expanded:[gi("update",Ei)],selected:[gi("update",function(n,e,t){ar.set(n.element(),"aria-selected",t)})],none:[gi("update",O.noop)]}))],Ai=Qo({fields:Di,name:"toggling",active:Oi,apis:Ci}),Mi=function(t,o){return yi.config({channels:Dt(Wr.formatChanged(),{onReceive:function(n,e){e.command===t&&o(n,e.state)}})})},Bi=function(n){return yi.config({channels:Dt(Wr.orientationChanged(),{onReceive:n})})},Ri=function(n,e){return{key:n,value:{onReceive:e}}},Ii="tinymce-mobile",Fi={resolve:function(n){return Ii+"-"+n},prefix:O.constant(Ii)},Ni=function(n,e){e.ignore()||(Nr(n.element()),e.onFocus()(n))},Vi=Object.freeze({focus:Ni,blur:function(n,e){e.ignore()||Vr(n.element())},isFocused:function(n){return Fr(n.element())}}),Hi=Object.freeze({exhibit:function(n,e){return e.ignore()?Vo({}):Vo({attributes:{tabindex:"-1"}})},events:function(t){return xo([So(Wn(),function(n,e){Ni(n,t),e.stop()})])}}),ji=[fi("onFocus"),ho("ignore",!1)],zi=Qo({fields:ji,name:"focusing",active:Hi,apis:Vi}),Li=function(n){return n.style!==undefined},Pi=function(n,e,t){if(!E.isString(t))throw console.error("Invalid call to CSS.set. Property ",e,":: Value ",t,":: Element ",n),new Error("CSS value must be a string: "+t);Li(n)&&n.style.setProperty(e,t)},Wi=function(n,e){Li(n)&&n.style.removeProperty(e)},Ui=function(n,e,t){var o=n.dom();Pi(o,e,t)},Gi=function(n,e){return Li(n)?n.style.getPropertyValue(e):""},$i=function(n,e){var t=n.dom(),o=Gi(t,e);return x.from(o).filter(function(n){return 0<n.length})},qi={copy:function(n,e){var t=n.dom(),o=e.dom();Li(t)&&Li(o)&&(o.style.cssText=t.style.cssText)},set:Ui,preserve:function(n,e){var t=ar.get(n,"style"),o=e(n);return(t===undefined?ar.remove:ar.set)(n,"style",t),o},setAll:function(n,e){var t=n.dom();M.each(e,function(n,e){Pi(t,e,n)})},setOptions:function(n,e){var t=n.dom();M.each(e,function(n,e){n.fold(function(){Wi(t,e)},function(n){Pi(t,e,n)})})},remove:function(n,e){var t=n.dom();Wi(t,e),ar.has(n,"style")&&""===In.trim(ar.get(n,"style"))&&ar.remove(n,"style")},get:function(n,e){var t=n.dom(),o=window.getComputedStyle(t).getPropertyValue(e),r=""!==o||we.inBody(n)?o:Gi(t,e);return null===r?undefined:r},getRaw:$i,getAllRaw:function(n){var e={},t=n.dom();if(Li(t))for(var o=0;o<t.style.length;o++){var r=t.style.item(o);e[r]=t.style[r]}return e},isValidValue:function(n,e,t){var o=ue.fromTag(n);return Ui(o,e,t),$i(o,e).isSome()},reflow:function(n){return n.dom().offsetWidth},transfer:function(o,r,n){ve.isElement(o)&&ve.isElement(r)&&wn.each(n,function(n){var e,t;e=r,$i(o,t=n).each(function(n){$i(e,t).isNone()&&Ui(e,t,n)})})}};function _i(o,r){var n=function(n){var e=r(n);if(e<=0||null===e){var t=qi.get(n,o);return parseFloat(t)||0}return e},i=function(r,n){return wn.foldl(n,function(n,e){var t=qi.get(r,e),o=t===undefined?0:parseInt(t,10);return isNaN(o)?n:n+o},0)};return{set:function(n,e){if(!E.isNumber(e)&&!e.match(/^[0-9]+$/))throw o+".set accepts only positive integer values. Value was "+e;var t=n.dom();Li(t)&&(t.style[o]=e+"px")},get:n,getOuter:n,aggregate:i,max:function(n,e,t){var o=i(n,t);return o<e?e-o:0}}}var Ki,Xi,Yi=_i("height",function(n){return we.inBody(n)?n.dom().getBoundingClientRect().height:n.dom().offsetHeight}),Ji=function(n){return Yi.get(n)},Qi=function(n,e,t){return wn.filter(qe.parents(n,t),e)},Zi=function(n,e){return wn.filter(qe.siblings(n),e)},nu=function(n){return Ve.all(n)},eu=function(n,e,t){return Qi(n,function(n){return Ve.is(n,e)},t)},tu=function(n,e){return Zi(n,function(n){return Ve.is(n,e)})},ou=function(n,e){return Ve.all(e,n)},ru=function(n,e,t){return Br.ancestor(n,function(n){return Ve.is(n,e)},t)},iu=function(n){return Ve.one(n)},uu=ru,au=function(n,e){return Ve.one(e,n)},cu=function(n,e,t){return Er(Ve.is,ru,n,e,t)},su={BACKSPACE:O.constant([8]),TAB:O.constant([9]),ENTER:O.constant([13]),SHIFT:O.constant([16]),CTRL:O.constant([17]),ALT:O.constant([18]),CAPSLOCK:O.constant([20]),ESCAPE:O.constant([27]),SPACE:O.constant([32]),PAGEUP:O.constant([33]),PAGEDOWN:O.constant([34]),END:O.constant([35]),HOME:O.constant([36]),LEFT:O.constant([37]),UP:O.constant([38]),RIGHT:O.constant([39]),DOWN:O.constant([40]),INSERT:O.constant([45]),DEL:O.constant([46]),META:O.constant([91,93,224]),F10:O.constant([121])},fu=function(n,e,t){var o=wn.reverse(n.slice(0,e)),r=wn.reverse(n.slice(e+1));return wn.find(o.concat(r),t)},lu=function(n,e,t){var o=wn.reverse(n.slice(0,e));return wn.find(o,t)},du=function(n,e,t){var o=n.slice(0,e),r=n.slice(e+1);return wn.find(r.concat(o),t)},mu=function(n,e,t){var o=n.slice(e+1);return wn.find(o,t)},gu=function(e){return function(n){return wn.contains(e,n.raw().which)}},pu=function(n){return function(e){return wn.forall(n,function(n){return n(e)})}},hu=function(n){return!0===n.raw().shiftKey},vu=function(n){return!0===n.raw().ctrlKey},yu=(O.not(vu),O.not(hu)),bu=function(n,e){return{matches:n,classification:e}},wu=function(n,e,t,o){var r=n+e;return o<r?t:r<t?o:r},xu=function(n,e,t){return n<=e?e:t<=n?t:n},Tu=function(e,t,n){var o=ou(e.element(),"."+t.highlightClass());wn.each(o,function(n){xr.remove(n,t.highlightClass()),e.getSystem().getByDom(n).each(function(n){t.onDehighlight()(e,n)})})},Su=function(n,e,t,o){var r=ku(n,e,t,o);Tu(n,e),xr.add(o.element(),e.highlightClass()),r||e.onHighlight()(n,o)},ku=function(n,e,t,o){return xr.has(o.element(),e.highlightClass())},Cu=function(n,e,t,o){var r=ou(n.element(),"."+e.itemClass());return x.from(r[o]).fold(function(){return ct.error("No element found with index "+o)},n.getSystem().getByDom)},Ou=function(n,e,t){return au(n.element(),"."+e.itemClass()).bind(n.getSystem().getByDom)},Eu=function(n,e,t){var o=ou(n.element(),"."+e.itemClass());return(0<o.length?x.some(o[o.length-1]):x.none()).bind(n.getSystem().getByDom)},Du=function(t,e,n,o){var r=ou(t.element(),"."+e.itemClass());return wn.findIndex(r,function(n){return xr.has(n,e.highlightClass())}).bind(function(n){var e=wu(n,o,0,r.length-1);return t.getSystem().getByDom(r[e])})},Au=Object.freeze({dehighlightAll:Tu,dehighlight:function(n,e,t,o){var r=ku(n,e,t,o);xr.remove(o.element(),e.highlightClass()),r&&e.onDehighlight()(n,o)},highlight:Su,highlightFirst:function(e,t,o){Ou(e,t,o).each(function(n){Su(e,t,o,n)})},highlightLast:function(e,t,o){Eu(e,t,o).each(function(n){Su(e,t,o,n)})},highlightAt:function(e,t,o,n){Cu(e,t,o,n).fold(function(n){throw new Error(n)},function(n){Su(e,t,o,n)})},highlightBy:function(e,t,o,n){var r=ou(e.element(),"."+t.itemClass()),i=Qr(wn.map(r,function(n){return e.getSystem().getByDom(n).toOption()}));wn.find(i,n).each(function(n){Su(e,t,o,n)})},isHighlighted:ku,getHighlighted:function(n,e,t){return au(n.element(),"."+e.highlightClass()).bind(n.getSystem().getByDom)},getFirst:Ou,getLast:Eu,getPrevious:function(n,e,t){return Du(n,e,0,-1)},getNext:function(n,e,t){return Du(n,e,0,1)}}),Mu=[co("highlightClass"),co("itemClass"),fi("onHighlight"),fi("onDehighlight")],Bu=Qo({fields:Mu,name:"highlighting",apis:Au}),Ru=function(){return{get:function(n){return jr(n.element())},set:function(n,e){n.getSystem().triggerFocus(e,n.element())}}},Iu=function(n,e,a,t,o,i){var u=function(e,t,o,r){var n,i,u=a(e,t,o,r);return(n=u,i=t.event(),wn.find(n,function(n){return n.matches(i)}).map(function(n){return n.classification})).bind(function(n){return n(e,t,o,r)})},r={schema:function(){return n.concat([ho("focusManager",Ru()),gi("handler",r),gi("state",e)])},processKey:u,toEvents:function(o,r){var n=t(o,r),e=xo(i.map(function(t){return So(Wn(),function(n,e){t(n,o,r,e),e.stop()})}).toArray().concat([So(j(),function(n,e){u(n,e,o,r).each(function(n){e.stop()})})]));return D.deepMerge(n,e)},toApis:o};return r},Fu=function(n){var e=[mo("onEscape"),mo("onEnter"),ho("selector",'[data-alloy-tabstop="true"]'),ho("firstTabstop",0),ho("useTabstopAt",O.constant(!0)),mo("visibilitySelector")].concat([n]),a=function(n,e){var t=n.visibilitySelector().bind(function(n){return cu(e,n)}).getOr(e);return 0<Ji(t)},c=function(e,n,t,o,r){return r(n,t,function(n){return a(e=o,t=n)&&e.useTabstopAt()(t);var e,t}).fold(function(){return o.cyclic()?x.some(!0):x.none()},function(n){return o.focusManager().set(e,n),x.some(!0)})},i=function(e,n,t,o){var r,i,u=ou(e.element(),t.selector());return(r=e,i=t,i.focusManager().get(r).bind(function(n){return cu(n,i.selector())})).bind(function(n){return wn.findIndex(u,O.curry(je,n)).bind(function(n){return c(e,u,n,t,o)})})},t=O.constant([bu(pu([hu,gu(su.TAB())]),function(n,e,t,o){var r=t.cyclic()?fu:lu;return i(n,0,t,r)}),bu(gu(su.TAB()),function(n,e,t,o){var r=t.cyclic()?du:mu;return i(n,0,t,r)}),bu(gu(su.ESCAPE()),function(e,t,n,o){return n.onEscape().bind(function(n){return n(e,t)})}),bu(pu([yu,gu(su.ENTER())]),function(e,t,n,o){return n.onEnter().bind(function(n){return n(e,t)})})]),o=O.constant({}),r=O.constant({});return Iu(e,Ko,t,o,r,x.some(function(e,t,n){var o,r,i,u;(o=e,r=t,i=ou(o.element(),r.selector()),u=wn.filter(i,function(n){return a(r,n)}),x.from(u[r.firstTabstop()])).each(function(n){t.focusManager().set(e,n)})}))},Nu=Fu(yo("cyclic",O.constant(!1))),Vu=Fu(yo("cyclic",O.constant(!0))),Hu=function(n){return"input"===ve.name(n)&&"radio"!==ar.get(n,"type")||"textarea"===ve.name(n)},ju=function(n,e,t){return Hu(t)&&gu(su.SPACE())(e.event())?x.none():(oe(n,t,$n()),x.some(!0))},zu=[ho("execute",ju),ho("useSpace",!1),ho("useEnter",!0),ho("useControlEnter",!1),ho("useDown",!1)],Lu=function(n,e,t,o){return t.execute()(n,e,n.element())},Pu=O.constant({}),Wu=O.constant({}),Uu=Iu(zu,Ko,function(n,e,t,o){var r=t.useSpace()&&!Hu(n.element())?su.SPACE():[],i=t.useEnter()?su.ENTER():[],u=t.useDown()?su.DOWN():[],a=r.concat(i).concat(u);return[bu(gu(a),Lu)].concat(t.useControlEnter()?[bu(pu([vu,gu(su.ENTER())]),Lu)]:[])},Pu,Wu,x.none()),Gu=function(n){var t=Or(x.none());return _o({readState:O.constant({}),setGridSize:function(n,e){t.set(x.some({numRows:O.constant(n),numColumns:O.constant(e)}))},getNumRows:function(){return t.get().map(function(n){return n.numRows()})},getNumColumns:function(){return t.get().map(function(n){return n.numColumns()})}})},$u=Object.freeze({flatgrid:Gu,init:function(n){return n.state()(n)}}),qu=function(n){return"rtl"===qi.get(n,"direction")?"rtl":"ltr"},_u=function(e,t){return function(n){return"rtl"===qu(n)?t:e}},Ku=function(i){return function(n,e,t,o){var r=i(n.element());return Qu(r,n,e,t,o)}},Xu=function(n,e){var t=_u(n,e);return Ku(t)},Yu=function(n,e){var t=_u(e,n);return Ku(t)},Ju=function(r){return function(n,e,t,o){return Qu(r,n,e,t,o)}},Qu=function(e,t,n,o,r){return o.focusManager().get(t).bind(function(n){return e(t.element(),n,o,r)}).map(function(n){return o.focusManager().set(t,n),!0})},Zu=Ju,na=Ju,ea=Ju,ta=function(n){var e,t=n.dom();return!((e=t).offsetWidth<=0&&e.offsetHeight<=0)},oa=Ee.immutableBag(["index","candidates"],[]),ra=function(n,e,t){return ia(n,e,t,ta)},ia=function(n,e,t,o){var r,i,u=O.curry(je,e),a=ou(n,t),c=wn.filter(a,ta);return r=c,i=u,wn.findIndex(r,i).map(function(n){return oa({index:n,candidates:r})})},ua=function(n,e){return wn.findIndex(n,function(n){return je(e,n)})},aa=function(t,n,o,e){return e(Math.floor(n/o),n%o).bind(function(n){var e=n.row()*o+n.column();return 0<=e&&e<t.length?x.some(t[e]):x.none()})},ca=function(r,n,i,u,a){return aa(r,n,u,function(n,e){var t=n===i-1?r.length-n*u:u,o=wu(e,a,0,t-1);return x.some({row:O.constant(n),column:O.constant(o)})})},sa=function(i,n,u,a,c){return aa(i,n,a,function(n,e){var t=wu(n,c,0,u-1),o=t===u-1?i.length-t*a:a,r=xu(e,0,o-1);return x.some({row:O.constant(t),column:O.constant(r)})})},fa=[co("selector"),ho("execute",ju),li("onEscape"),ho("captureTab",!1),hi()],la=function(r){return function(n,e,t,o){return ra(n,e,t.selector()).bind(function(n){return r(n.candidates(),n.index(),o.getNumRows().getOr(t.initSize().numRows()),o.getNumColumns().getOr(t.initSize().numColumns()))})}},da=function(n,e,t,o){return t.captureTab()?x.some(!0):x.none()},ma=la(function(n,e,t,o){return ca(n,e,t,o,-1)}),ga=la(function(n,e,t,o){return ca(n,e,t,o,1)}),pa=la(function(n,e,t,o){return sa(n,e,t,o,-1)}),ha=la(function(n,e,t,o){return sa(n,e,t,o,1)}),va=O.constant([bu(gu(su.LEFT()),Xu(ma,ga)),bu(gu(su.RIGHT()),Yu(ma,ga)),bu(gu(su.UP()),Zu(pa)),bu(gu(su.DOWN()),na(ha)),bu(pu([hu,gu(su.TAB())]),da),bu(pu([yu,gu(su.TAB())]),da),bu(gu(su.ESCAPE()),function(n,e,t,o){return t.onEscape()(n,e)}),bu(gu(su.SPACE().concat(su.ENTER())),function(e,t,o,n){return(r=e,i=o,i.focusManager().get(r).bind(function(n){return cu(n,i.selector())})).bind(function(n){return o.execute()(e,t,n)});var r,i})]),ya=O.constant({}),ba=Iu(fa,Gu,va,ya,{},x.some(function(e,t,n){au(e.element(),t.selector()).each(function(n){t.focusManager().set(e,n)})})),wa=function(n,e,t,r){return ra(n,t,e).bind(function(n){var e=n.index(),t=n.candidates(),o=wu(e,r,0,t.length-1);return x.from(t[o])})},xa=[co("selector"),ho("getInitial",x.none),ho("execute",ju),ho("executeOnMove",!1)],Ta=function(e,t,o){return(n=e,r=o,r.focusManager().get(n).bind(function(n){return cu(n,r.selector())})).bind(function(n){return o.execute()(e,t,n)});var n,r},Sa=function(n,e,t){return wa(n,t.selector(),e,-1)},ka=function(n,e,t){return wa(n,t.selector(),e,1)},Ca=function(o){return function(n,e,t){return o(n,e,t).bind(function(){return t.executeOnMove()?Ta(n,e,t):x.some(!0)})}},Oa=O.constant({}),Ea=O.constant({}),Da=Iu(xa,Ko,function(n){return[bu(gu(su.LEFT().concat(su.UP())),Ca(Xu(Sa,ka))),bu(gu(su.RIGHT().concat(su.DOWN())),Ca(Yu(Sa,ka))),bu(gu(su.ENTER()),Ta),bu(gu(su.SPACE()),Ta)]},Oa,Ea,x.some(function(e,t){t.getInitial()(e).or(au(e.element(),t.selector())).each(function(n){t.focusManager().set(e,n)})})),Aa=Ee.immutableBag(["rowIndex","columnIndex","cell"],[]),Ma=function(n,e,t){return x.from(n[e]).bind(function(n){return x.from(n[t]).map(function(n){return Aa({rowIndex:e,columnIndex:t,cell:n})})})},Ba=function(n,e,t,o){var r=n[e].length,i=wu(t,o,0,r-1);return Ma(n,e,i)},Ra=function(n,e,t,o){var r=wu(t,o,0,n.length-1),i=n[r].length,u=xu(e,0,i-1);return Ma(n,r,u)},Ia=function(n,e,t,o){var r=n[e].length,i=xu(t+o,0,r-1);return Ma(n,e,i)},Fa=function(n,e,t,o){var r=xu(t+o,0,n.length-1),i=n[r].length,u=xu(e,0,i-1);return Ma(n,r,u)},Na=[lo("selectors",[co("row"),co("cell")]),ho("cycles",!0),ho("previousSelector",x.none),ho("execute",ju)],Va=function(n,e){return function(t,o,u){var a=u.cycles()?n:e;return cu(o,u.selectors().row()).bind(function(n){var e=ou(n,u.selectors().cell());return ua(e,o).bind(function(r){var i=ou(t,u.selectors().row());return ua(i,n).bind(function(n){var e,t,o=(e=i,t=u,wn.map(e,function(n){return ou(n,t.selectors().cell())}));return a(o,n,r).map(function(n){return n.cell()})})})})}},Ha=Va(function(n,e,t){return Ba(n,e,t,-1)},function(n,e,t){return Ia(n,e,t,-1)}),ja=Va(function(n,e,t){return Ba(n,e,t,1)},function(n,e,t){return Ia(n,e,t,1)}),za=Va(function(n,e,t){return Ra(n,t,e,-1)},function(n,e,t){return Fa(n,t,e,-1)}),La=Va(function(n,e,t){return Ra(n,t,e,1)},function(n,e,t){return Fa(n,t,e,1)}),Pa=O.constant([bu(gu(su.LEFT()),Xu(Ha,ja)),bu(gu(su.RIGHT()),Yu(Ha,ja)),bu(gu(su.UP()),Zu(za)),bu(gu(su.DOWN()),na(La)),bu(gu(su.SPACE().concat(su.ENTER())),function(e,t,o){return jr(e.element()).bind(function(n){return o.execute()(e,t,n)})})]),Wa=O.constant({}),Ua=O.constant({}),Ga=Iu(Na,Ko,Pa,Wa,Ua,x.some(function(e,t){t.previousSelector()(e).orThunk(function(){var n=t.selectors();return au(e.element(),n.cell())}).each(function(n){t.focusManager().set(e,n)})})),$a=[co("selector"),ho("execute",ju),ho("moveOnTab",!1)],qa=function(e,t,o){return o.focusManager().get(e).bind(function(n){return o.execute()(e,t,n)})},_a=function(n,e,t){return wa(n,t.selector(),e,-1)},Ka=function(n,e,t){return wa(n,t.selector(),e,1)},Xa=O.constant([bu(gu(su.UP()),ea(_a)),bu(gu(su.DOWN()),ea(Ka)),bu(pu([hu,gu(su.TAB())]),function(n,e,t){return t.moveOnTab()?ea(_a)(n,e,t):x.none()}),bu(pu([yu,gu(su.TAB())]),function(n,e,t){return t.moveOnTab()?ea(Ka)(n,e,t):x.none()}),bu(gu(su.ENTER()),qa),bu(gu(su.SPACE()),qa)]),Ya=O.constant({}),Ja=O.constant({}),Qa=Iu($a,Ko,Xa,Ya,Ja,x.some(function(e,t,n){au(e.element(),t.selector()).each(function(n){t.focusManager().set(e,n)})})),Za=[li("onSpace"),li("onEnter"),li("onShiftEnter"),li("onLeft"),li("onRight"),li("onTab"),li("onShiftTab"),li("onUp"),li("onDown"),li("onEscape"),mo("focusIn")],nc=O.constant({}),ec=O.constant({}),tc=Iu(Za,Ko,function(n,e,t){return[bu(gu(su.SPACE()),t.onSpace()),bu(pu([yu,gu(su.ENTER())]),t.onEnter()),bu(pu([hu,gu(su.ENTER())]),t.onShiftEnter()),bu(pu([hu,gu(su.TAB())]),t.onShiftTab()),bu(pu([yu,gu(su.TAB())]),t.onTab()),bu(gu(su.UP()),t.onUp()),bu(gu(su.DOWN()),t.onDown()),bu(gu(su.LEFT()),t.onLeft()),bu(gu(su.RIGHT()),t.onRight()),bu(gu(su.SPACE()),t.onSpace()),bu(gu(su.ESCAPE()),t.onEscape())]},nc,ec,x.some(function(e,t){return t.focusIn().bind(function(n){return n(e,t)})})),oc={acyclic:Nu.schema(),cyclic:Vu.schema(),flow:Da.schema(),flatgrid:ba.schema(),matrix:Ga.schema(),execution:Uu.schema(),menu:Qa.schema(),special:tc.schema()},rc=(Xi=to("Creating behaviour: "+(Ki={branchKey:"mode",branches:oc,name:"keying",active:{events:function(n,e){return n.handler().toEvents(n,e)}},apis:{focusIn:function(n){n.getSystem().triggerFocus(n.element(),n.element())},setGridSize:function(n,e,t,o,r){Bt(t,"setGridSize")?t.setGridSize(o,r):console.error("Layout does not support setGridSize")}},state:$u}).name,Zo,Ki),zo(io(Xi.branchKey,Xi.branches),Xi.name,Xi.active,Xi.apis,Xi.extra,Xi.state)),ic=function(o,n){return e=o,t={},r=wn.map(n,function(n){return e=n.name(),t="Cannot configure "+n.name()+" for "+o,Xt(e,e,mt(),Wt(function(n){return ct.error("The field: "+e+" is forbidden. "+t)}));var e,t}).concat([yo("dump",O.identity)]),Xt(e,e,lt(t),Gt(r));var e,t,r},uc=function(n){return n.dump()},ac="placeholder",cc=st([{single:["required","valueThunk"]},{multiple:["required","valueThunks"]}]),sc=function(n,e,t,o){return t.uiType===ac?(i=t,u=o,(r=n).exists(function(n){return n!==i.owner})?cc.single(!0,O.constant(i)):Et(u,i.name).fold(function(){throw new Error("Unknown placeholder component: "+i.name+"\nKnown: ["+M.keys(u)+"]\nNamespace: "+r.getOr("none")+"\nSpec: "+Nt(i,null,2))},function(n){return n.replace()})):cc.single(!1,O.constant(t));var r,i,u},fc=function(i,u,a,c){return sc(i,0,a,c).fold(function(n,e){var t=e(u,a.config,a.validated),o=Et(t,"components").getOr([]),r=wn.bind(o,function(n){return fc(i,u,n,c)});return[D.deepMerge(t,{components:r})]},function(n,e){return e(u,a.config,a.validated)})},lc=function(e,t,n,o){var r,i,u,a,c=M.map(o,function(n,e){return t=e,o=n,r=!1,{name:O.constant(t),required:function(){return o.fold(function(n,e){return n},function(n,e){return n})},used:function(){return r},replace:function(){if(!0===r)throw new Error("Trying to use the same placeholder more than once: "+t);return r=!0,o}};var t,o,r}),s=(r=e,i=t,u=n,a=c,wn.bind(u,function(n){return fc(r,i,n,a)}));return M.each(c,function(n){if(!1===n.used()&&n.required())throw new Error("Placeholder: "+n.name()+" was not found in components list\nNamespace: "+e.getOr("none")+"\nComponents: "+Nt(t.components(),null,2))}),s},dc=cc.single,mc=cc.multiple,gc=O.constant(ac),pc=0,hc=function(n){var e=(new Date).getTime();return n+"_"+Math.floor(1e9*Math.random())+ ++pc+String(e)},vc=st([{required:["data"]},{external:["data"]},{optional:["data"]},{group:["data"]}]),yc=ho("factory",{sketch:O.identity}),bc=ho("schema",[]),wc=co("name"),xc=Xt("pname","pname",gt(function(n){return"<alloy."+hc(n.name)+">"}),uo()),Tc=ho("defaults",O.constant({})),Sc=ho("overrides",O.constant({})),kc=Gt([yc,bc,wc,xc,Tc,Sc]),Cc=Gt([yc,bc,wc,Tc,Sc]),Oc=Gt([yc,bc,wc,xc,Tc,Sc]),Ec=Gt([yc,bc,wc,co("unit"),xc,Tc,Sc]),Dc=function(n){var e=function(n){return n.name()};return n.fold(e,e,e,e)},Ac=function(t,o){return function(n){var e=oo("Converting part type",o,n);return t(e)}},Mc=Ac(vc.required,kc),Bc=(Ac(vc.external,Cc),Ac(vc.optional,Oc)),Rc=Ac(vc.group,Ec),Ic=O.constant("entirety"),Fc=function(n,e,t,o){var r=t;return D.deepMerge(e.defaults()(n,t,o),t,{uid:n.partUids()[e.name()]},e.overrides()(n,t,o),{"debug.sketcher":Dt("part-"+e.name(),r)})},Nc=function(r,n){var i={};return wn.each(n,function(n){var e;(e=n,e.fold(x.some,x.none,x.some,x.some)).each(function(t){var o=Vc(r,t.pname());i[t.name()]=function(n){var e=to("Part: "+t.name()+" in "+r,Gt(t.schema()),n);return D.deepMerge(o,{config:n,validated:e})}})}),i},Vc=function(n,e){return{uiType:gc(),owner:n,name:e}},Hc=function(n,e,t){return o=e,r=t,i={},u={},wn.each(r,function(n){n.fold(function(o){i[o.pname()]=dc(!0,function(n,e,t){return o.factory().sketch(Fc(n,o,e,t))})},function(n){var e=o.parts()[n.name()]();u[n.name()]=O.constant(Fc(o,n,e[Ic()]()))},function(o){i[o.pname()]=dc(!1,function(n,e,t){return o.factory().sketch(Fc(n,o,e,t))})},function(r){i[r.pname()]=mc(!0,function(e,n,t){var o=e[r.name()]();return wn.map(o,function(n){return r.factory().sketch(D.deepMerge(r.defaults()(e,n),n,r.overrides()(e,n)))})})})}),{internals:O.constant(i),externals:O.constant(u)};var o,r,i,u},jc=function(n,e,t){return lc(x.some(n),e,e.components(),t)},zc=function(n,e,t){var o=e.partUids()[t];return n.getSystem().getByUid(o).toOption()},Lc=function(n,e,t){return zc(n,e,t).getOrDie("Could not find part: "+t)},Pc=function(e,n){var t,o=(t=n,wn.map(t,Dc));return At(wn.map(o,function(n){return{key:n,value:e+"-"+n}}))},Wc=function(e){return Xt("partUids","partUids",pt(function(n){return Pc(n.uid,e)}),uo())},Uc=hc("alloy-premade"),Gc=hc("api"),$c=function(n){return Dt(Uc,n)},qc=function(o){return n=function(n){var e=Array.prototype.slice.call(arguments,0),t=n.config(Gc);return o.apply(undefined,[t].concat(e))},e=o.toString(),t=e.indexOf(")")+1,r=e.indexOf("("),i=e.substring(r+1,t-1).split(/,\s*/),n.toFunctionAnnotation=function(){return{name:"OVERRIDE",parameters:Ro(i.slice(1))}},n;var n,e,t,r,i},_c=O.constant(Gc),Kc=O.constant("alloy-id-"),Xc=O.constant("data-alloy-id"),Yc=Kc(),Jc=Xc(),Qc=function(n){var e=ve.isElement(n)?ar.get(n,Jc):null;return x.from(e)},Zc=function(n){return hc(n)},ns=(O.constant(Jc),function(n,e,t,o,r){var i,u,a=(u=r,(0<(i=o).length?[lo("parts",i)]:[]).concat([co("uid"),ho("dom",{}),ho("components",[]),pi("originalSpec"),ho("debug.sketcher",{})]).concat(u));return oo(n+" [SpecSchema]",Ut(a.concat(e)),t)}),es=function(n,e,t,o,r){var i,u=ts(r),a=(i=t,wn.bind(i,function(n){return n.fold(x.none,x.some,x.none,x.none).map(function(n){return lo(n.name(),n.schema().concat([pi(Ic())]))}).toArray()})),c=Wc(t),s=ns(n,e,u,a,[c]),f=Hc(0,s,t),l=jc(n,s,f.internals());return D.deepMerge(o(s,l,u,f.externals()),{"debug.sketcher":Dt(n,r)})},ts=function(n){return D.deepMerge({uid:Zc("uid")},n)},os=Ut([co("name"),co("factory"),co("configFields"),ho("apis",{}),ho("extraApis",{})]),rs=Ut([co("name"),co("factory"),co("configFields"),co("partFields"),ho("apis",{}),ho("extraApis",{})]),is=function(n){var a=to("Sketcher for "+n.name,os,n),e=M.map(a.apis,qc),t=M.map(a.extraApis,function(n,e){return Io(n,e)});return D.deepMerge({name:O.constant(a.name),partFields:O.constant([]),configFields:O.constant(a.configFields),sketch:function(n){return e=a.name,t=a.configFields,o=a.factory,i=ts(r=n),u=ns(e,t,i,[],[]),D.deepMerge(o(u,i),{"debug.sketcher":Dt(e,r)});var e,t,o,r,i,u}},e,t)},us=function(n){var e=to("Sketcher for "+n.name,rs,n),t=Nc(e.name,e.partFields),o=M.map(e.apis,qc),r=M.map(e.extraApis,function(n,e){return Io(n,e)});return D.deepMerge({name:O.constant(e.name),partFields:O.constant(e.partFields),configFields:O.constant(e.configFields),sketch:function(n){return es(e.name,e.configFields,e.partFields,e.factory,n)},parts:O.constant(t)},o,r)},as=is({name:"Button",factory:function(n,e){var t,o,r,i=(t=n.action(),o=function(n,e){e.stop(),te(n)},r=Ln.detect().deviceType.isTouch()?[So(_n(),o)]:[So(P(),o),So(F(),function(n,e){e.cut()})],xo(wn.flatten([t.map(function(t){return So($n(),function(n,e){t(n),e.stop()})}).toArray(),r]))),u=Et(n.dom(),"attributes").bind(Ct("type")),a=Et(n.dom(),"tag");return{uid:n.uid(),dom:n.dom(),components:n.components(),events:i,behaviours:D.deepMerge(Yo([zi.config({}),rc.config({mode:"execution",useSpace:!0,useEnter:!0})]),uc(n.buttonBehaviours())),domModification:{attributes:D.deepMerge(u.fold(function(){return a.is("button")?{type:"button"}:{}},function(n){return{}}),{role:n.role().getOr("button")})},eventOrder:n.eventOrder()}},configFields:[ho("uid",undefined),co("dom"),ho("components",[]),ic("buttonBehaviours",[zi,rc]),mo("action"),mo("role"),ho("eventOrder",{})]}),cs=Object.freeze({events:function(n){return xo([To(U(),O.constant(!0))])},exhibit:function(n,e){return Vo({styles:{"-webkit-user-select":"none","user-select":"none","-ms-user-select":"none","-moz-user-select":"-moz-none"},attributes:{unselectable:"on"}})}}),ss=Qo({fields:[],name:"unselecting",active:cs}),fs=function(n){var e,t,o,r=ue.fromHtml(n),i=qe.children(r),u=(t=(e=r).dom().attributes!==undefined?e.dom().attributes:[],wn.foldl(t,function(n,e){return"class"===e.name?n:D.deepMerge(n,Dt(e.name,e.value))},{})),a=(o=r,Array.prototype.slice.call(o.dom().classList,0)),c=0===i.length?{}:{innerHtml:$r(r)};return D.deepMerge({tag:ve.name(r),classes:a,attributes:u},c)},ls=function(n){var e=In.supplant(n,{prefix:Fi.prefix()});return fs(e)},ds=function(n){return{dom:ls(n)}},ms=function(n){return Yo([Ai.config({toggleClass:Fi.resolve("toolbar-button-selected"),toggleOnExecute:!1,aria:{mode:"pressed"}}),Mi(n,function(n,e){(e?Ai.on:Ai.off)(n)})])},gs=function(n,e,t){return as.sketch({dom:ls('<span class="${prefix}-toolbar-button ${prefix}-icon-'+n+' ${prefix}-icon"></span>'),action:e,buttonBehaviours:D.deepMerge(Yo([ss.config({})]),t)})},ps={forToolbar:gs,forToolbarCommand:function(n,e){return gs(e,function(){n.execCommand(e)},{})},forToolbarStateAction:function(n,e,t,o){var r=ms(t);return gs(e,o,r)},forToolbarStateCommand:function(n,e){var t=ms(e);return gs(e,function(){n.execCommand(e)},t)}},hs=function(n,e,t){return Math.max(e,Math.min(t,n))},vs=function(n,e,t,o,r,i,u){var a=t-e;if(o<n.left)return e-1;if(o>n.right)return t+1;var c,s,f,l,d=Math.min(n.right,Math.max(o,n.left))-n.left,m=hs(d/n.width*a+e,e-1,t+1),g=Math.round(m);return i&&e<=m&&m<=t?(c=m,s=e,f=t,l=r,u.fold(function(){var n=c-s,e=Math.round(n/l)*l;return hs(s+e,s-1,f+1)},function(n){var e=(c-n)%l,t=Math.round(e/l),o=Math.floor((c-n)/l),r=Math.floor((f-n)/l),i=n+Math.min(r,o+t)*l;return Math.max(n,i)})):g},ys="slider.change.value",bs=Ln.detect().deviceType.isTouch(),ws=function(n){var e;return(e=n.event().raw(),bs&&e.touches!==undefined&&1===e.touches.length?x.some(e.touches[0]):bs&&e.touches!==undefined?x.none():bs||e.clientX===undefined?x.none():x.some(e)).map(function(n){return n.clientX})},xs=function(n,e){ee(n,ys,{value:e})},Ts=function(i,u,a,n){return ws(n).map(function(n){var e,t,o,r;return e=i,o=n,r=vs(a,(t=u).min(),t.max(),o,t.stepSize(),t.snapToGrid(),t.snapStart()),xs(e,r),n})},Ss=function(n,e){var t,o,r,i,u=(t=e.value().get(),o=e.min(),r=e.max(),i=e.stepSize(),t<o?t:r<t?r:t===o?o-1:Math.max(o,t-i));xs(n,u)},ks=function(n,e){var t,o,r,i,u=(t=e.value().get(),o=e.min(),r=e.max(),i=e.stepSize(),r<t?t:t<o?o:t===r?r+1:Math.min(r,t+i));xs(n,u)},Cs=O.constant(ys),Os=Ln.detect().deviceType.isTouch(),Es=function(n,o){return Bc({name:n+"-edge",overrides:function(n){var e=xo([ko(B(),o,[n])]),t=xo([ko(F(),o,[n]),ko(N(),function(n,e){e.mouseIsDown().get()&&o(n,e)},[n])]);return{events:Os?e:t}}})},Ds=[Es("left",function(n,e){xs(n,e.min()-1)}),Es("right",function(n,e){xs(n,e.max()+1)}),Mc({name:"thumb",defaults:O.constant({dom:{styles:{position:"absolute"}}}),overrides:function(n){return{events:xo([Oo(B(),n,"spectrum"),Oo(R(),n,"spectrum"),Oo(I(),n,"spectrum")])}}}),Mc({schema:[yo("mouseIsDown",function(){return Or(!1)})],name:"spectrum",overrides:function(o){var t=function(n,e){var t=n.element().dom().getBoundingClientRect();Ts(n,o,t,e)},n=xo([So(B(),t),So(R(),t)]),e=xo([So(F(),t),So(N(),function(n,e){o.mouseIsDown().get()&&t(n,e)})]);return{behaviours:Yo(Os?[]:[rc.config({mode:"special",onLeft:function(n){return Ss(n,o),x.some(!0)},onRight:function(n){return ks(n,o),x.some(!0)}}),zi.config({})]),events:Os?n:e}}})],As=function(n,e,t){e.store().manager().onLoad(n,e,t)},Ms=function(n,e,t){e.store().manager().onUnload(n,e,t)},Bs=Object.freeze({onLoad:As,onUnload:Ms,setValue:function(n,e,t,o){e.store().manager().setValue(n,e,t,o)},getValue:function(n,e,t){return e.store().manager().getValue(n,e,t)}}),Rs=Object.freeze({events:function(t,o){var n=t.resetOnDom()?[Do(function(n,e){As(n,t,o)}),Ao(function(n,e){Ms(n,t,o)})]:[jo(t,o,As)];return xo(n)}}),Is=function(){var n=Or(null);return _o({set:n.set,get:n.get,isNotSet:function(){return null===n.get()},clear:function(){n.set(null)},readState:function(){return{mode:"memory",value:n.get()}}})},Fs=function(){var n=Or({});return _o({readState:function(){return{mode:"dataset",dataset:n.get()}},set:n.set,get:n.get})},Ns=Object.freeze({memory:Is,dataset:Fs,manual:function(){return _o({readState:function(){}})},init:function(n){return n.store().manager().state(n)}}),Vs=function(n,e,t,o){e.store().getDataKey(),t.set({}),e.store().setData()(n,o),e.onSetValue()(n,o)},Hs=[mo("initialValue"),co("getFallbackEntry"),co("getDataKey"),co("setData"),gi("manager",{setValue:Vs,getValue:function(n,e,t){var o=e.store().getDataKey()(n),r=t.get();return Et(r,o).fold(function(){return e.store().getFallbackEntry()(o)},function(n){return n})},onLoad:function(e,t,o){t.store().initialValue().each(function(n){Vs(e,t,o,n)})},onUnload:function(n,e,t){t.set({})},state:Fs})],js=[co("getValue"),ho("setValue",O.noop),mo("initialValue"),gi("manager",{setValue:function(n,e,t,o){e.store().setValue()(n,o),e.onSetValue()(n,o)},getValue:function(n,e,t){return e.store().getValue()(n)},onLoad:function(e,t,n){t.store().initialValue().each(function(n){t.store().setValue()(e,n)})},onUnload:O.noop,state:Ko})],zs=[mo("initialValue"),gi("manager",{setValue:function(n,e,t,o){t.set(o),e.onSetValue()(n,o)},getValue:function(n,e,t){return t.get()},onLoad:function(n,e,t){e.store().initialValue().each(function(n){t.isNotSet()&&t.set(n)})},onUnload:function(n,e,t){t.clear()},state:Is})],Ls=[vo("store",{mode:"memory"},io("mode",{memory:zs,manual:js,dataset:Hs})),fi("onSetValue"),ho("resetOnDom",!1)],Ps=Qo({fields:Ls,name:"representing",active:Rs,apis:Bs,extra:{setValueFrom:function(n,e){var t=Ps.getValue(e);Ps.setValue(n,t)}},state:Ns}),Ws=Ln.detect().deviceType.isTouch(),Us=[co("min"),co("max"),ho("stepSize",1),ho("onChange",O.noop),ho("onInit",O.noop),ho("onDragStart",O.noop),ho("onDragEnd",O.noop),ho("snapToGrid",!1),mo("snapStart"),co("getInitialValue"),ic("sliderBehaviours",[rc,Ps]),yo("value",function(n){return Or(n.min)})].concat(Ws?[]:[yo("mouseIsDown",function(){return Or(!1)})]),Gs=_i("width",function(n){return n.dom().offsetWidth}),$s=function(n,e){Gs.set(n,e)},qs=function(n){return Gs.get(n)},_s=Ln.detect().deviceType.isTouch(),Ks=us({name:"Slider",configFields:Us,partFields:Ds,factory:function(c,n,e,t){var s=c.max()-c.min(),f=function(n){var e=n.element().dom().getBoundingClientRect();return(e.left+e.right)/2},r=function(n){return Lc(n,c,"thumb")},i=function(n){var e,t,o,r,i=Lc(n,c,"spectrum").element().dom().getBoundingClientRect(),u=n.element().dom().getBoundingClientRect(),a=(e=n,t=i,(r=(o=c).value().get())<o.min()?zc(e,o,"left-edge").fold(function(){return 0},function(n){return f(n)-t.left}):r>o.max()?zc(e,o,"right-edge").fold(function(){return t.width},function(n){return f(n)-t.left}):(o.value().get()-o.min())/s*t.width);return i.left-u.left+a},u=function(n){var e=i(n),t=r(n),o=qs(t.element())/2;qi.set(t.element(),"left",e-o+"px")},o=function(n,e){var t=c.value().get(),o=r(n);return t!==e||qi.getRaw(o.element(),"left").isNone()?(c.value().set(e),u(n),c.onChange()(n,o,e),x.some(!0)):x.none()},a=_s?[So(B(),function(n,e){c.onDragStart()(n,r(n))}),So(I(),function(n,e){c.onDragEnd()(n,r(n))})]:[So(F(),function(n,e){e.stop(),c.onDragStart()(n,r(n)),c.mouseIsDown().set(!0)}),So(V(),function(n,e){c.onDragEnd()(n,r(n)),c.mouseIsDown().set(!1)})];return{uid:c.uid(),dom:c.dom(),components:n,behaviours:D.deepMerge(Yo(wn.flatten([_s?[]:[rc.config({mode:"special",focusIn:function(n){return zc(n,c,"spectrum").map(rc.focusIn).map(O.constant(!0))}})],[Ps.config({store:{mode:"manual",getValue:function(n){return c.value().get()}}})]])),uc(c.sliderBehaviours())),events:xo([So(Cs(),function(n,e){o(n,e.event().value())}),Do(function(n,e){c.value().set(c.getInitialValue()());var t=r(n);u(n),c.onInit()(n,t,c.value().get())})].concat(a)),apis:{resetToMin:function(n){o(n,c.min())},resetToMax:function(n){o(n,c.max())},refresh:u},domModification:{styles:{position:"relative"}}}},apis:{resetToMin:function(n,e){n.resetToMin(e)},resetToMax:function(n,e){n.resetToMax(e)},refresh:function(n,e){n.refresh(e)}}}),Xs=function(e,t,o){return ps.forToolbar(t,function(){var n=o();e.setContextToolbar([{label:t+" group",items:n}])},{})},Ys=function(n){return[(r=n,i=function(n){return n<0?"black":360<n?"white":"hsl("+n+", 100%, 50%)"},Ks.sketch({dom:ls('<div class="${prefix}-slider ${prefix}-hue-slider-container"></div>'),components:[Ks.parts()["left-edge"](ds('<div class="${prefix}-hue-slider-black"></div>')),Ks.parts().spectrum({dom:ls('<div class="${prefix}-slider-gradient-container"></div>'),components:[ds('<div class="${prefix}-slider-gradient"></div>')],behaviours:Yo([Ai.config({toggleClass:Fi.resolve("thumb-active")})])}),Ks.parts()["right-edge"](ds('<div class="${prefix}-hue-slider-white"></div>')),Ks.parts().thumb({dom:ls('<div class="${prefix}-slider-thumb"></div>'),behaviours:Yo([Ai.config({toggleClass:Fi.resolve("thumb-active")})])})],onChange:function(n,e,t){var o=i(t);qi.set(e.element(),"background-color",o),r.onChange(n,e,o)},onDragStart:function(n,e){Ai.on(e)},onDragEnd:function(n,e){Ai.off(e)},onInit:function(n,e,t){var o=i(t);qi.set(e.element(),"background-color",o)},stepSize:10,min:0,max:360,getInitialValue:r.getInitialValue,sliderBehaviours:Yo([Bi(Ks.refresh)])}))];var r,i},Js=function(n,o){var e={onChange:function(n,e,t){o.undoManager.transact(function(){o.formatter.apply("forecolor",{value:t}),o.nodeChanged()})},getInitialValue:function(){return-1}};return Xs(n,"color",function(){return Ys(e)})},Qs=Ut([co("getInitialValue"),co("onChange"),co("category"),co("sizes")]),Zs=function(n){var r=to("SizeSlider",Qs,n);return Ks.sketch({dom:{tag:"div",classes:[Fi.resolve("slider-"+r.category+"-size-container"),Fi.resolve("slider"),Fi.resolve("slider-size-container")]},onChange:function(n,e,t){var o;0<=(o=t)&&o<r.sizes.length&&r.onChange(t)},onDragStart:function(n,e){Ai.on(e)},onDragEnd:function(n,e){Ai.off(e)},min:0,max:r.sizes.length-1,stepSize:1,getInitialValue:r.getInitialValue,snapToGrid:!0,sliderBehaviours:Yo([Bi(Ks.refresh)]),components:[Ks.parts().spectrum({dom:ls('<div class="${prefix}-slider-size-container"></div>'),components:[ds('<div class="${prefix}-slider-size-line"></div>')]}),Ks.parts().thumb({dom:ls('<div class="${prefix}-slider-thumb"></div>'),behaviours:Yo([Ai.config({toggleClass:Fi.resolve("thumb-active")})])})]})},nf=function(n,e,t){for(var o=n.dom(),r=E.isFunction(t)?t:O.constant(!1);o.parentNode;){o=o.parentNode;var i=ue.fromDom(o),u=e(i);if(u.isSome())return u;if(r(i))break}return x.none()},ef=function(n,e,t){return e(n).orThunk(function(){return t(n)?x.none():nf(n,e,t)})},tf=["9px","10px","11px","12px","14px","16px","18px","20px","24px","32px","36px"],of=function(n){var e,t,o=n.selection.getStart(),r=ue.fromDom(o),i=ue.fromDom(n.getBody()),u=(e=function(n){return je(i,n)},t=r,(ve.isElement(t)?x.some(t):qe.parent(t)).map(function(n){return ef(n,function(n){return qi.getRaw(n,"font-size")},e).getOrThunk(function(){return qi.get(n,"font-size")})}).getOr(""));return wn.find(tf,function(n){return u===n}).getOr("medium")},rf={candidates:O.constant(tf),get:function(n){var e,t=of(n);return(e=t,wn.findIndex(tf,function(n){return n===e})).getOr(2)},apply:function(o,n){var e;(e=n,x.from(tf[e])).each(function(n){var e,t;t=n,of(e=o)!==t&&e.execCommand("fontSize",!1,t)})}},uf=rf.candidates(),af=function(n){return[ds('<span class="${prefix}-toolbar-button ${prefix}-icon-small-font ${prefix}-icon"></span>'),(e=n,Zs({onChange:e.onChange,sizes:uf,category:"font",getInitialValue:e.getInitialValue})),ds('<span class="${prefix}-toolbar-button ${prefix}-icon-large-font ${prefix}-icon"></span>')];var e},cf=function(n){var e=n.uid!==undefined&&Bt(n,"uid")?n.uid:Zc("memento");return{get:function(n){return n.getSystem().getByUid(e).getOrDie()},getOpt:function(n){return n.getSystem().getByUid(e).fold(x.none,x.some)},asSpec:function(){return D.deepMerge(n,{uid:e})}}};function sf(n,e){return lf(document.createElement("canvas"),n,e)}function ff(n){return n.getContext("2d")}function lf(n,e,t){return n.width=e,n.height=t,n}var df={create:sf,clone:function(n){var e;return ff(e=sf(n.width,n.height)).drawImage(n,0,0),e},resize:lf,get2dContext:ff,get3dContext:function(n){var e=null;try{e=n.getContext("webgl")||n.getContext("experimental-webgl")}catch(t){}return e||(e=null),e}},mf={getWidth:function(n){return n.naturalWidth||n.width},getHeight:function(n){return n.naturalHeight||n.height}},gf=window.Promise?window.Promise:function(){var n=function(n){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof n)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],s(n,o(r,this),o(u,this))},e=n.immediateFn||"function"==typeof setImmediate&&setImmediate||function(n){setTimeout(n,1)};function o(n,e){return function(){n.apply(e,arguments)}}var t=Array.isArray||function(n){return"[object Array]"===Object.prototype.toString.call(n)};function i(o){var r=this;null!==this._state?e(function(){var n=r._state?o.onFulfilled:o.onRejected;if(null!==n){var e;try{e=n(r._value)}catch(t){return void o.reject(t)}o.resolve(e)}else(r._state?o.resolve:o.reject)(r._value)}):this._deferreds.push(o)}function r(n){try{if(n===this)throw new TypeError("A promise cannot be resolved with itself.");if(n&&("object"==typeof n||"function"==typeof n)){var e=n.then;if("function"==typeof e)return void s(o(e,n),o(r,this),o(u,this))}this._state=!0,this._value=n,a.call(this)}catch(t){u.call(this,t)}}function u(n){this._state=!1,this._value=n,a.call(this)}function a(){for(var n=0,e=this._deferreds.length;n<e;n++)i.call(this,this._deferreds[n]);this._deferreds=null}function c(n,e,t,o){this.onFulfilled="function"==typeof n?n:null,this.onRejected="function"==typeof e?e:null,this.resolve=t,this.reject=o}function s(n,e,t){var o=!1;try{n(function(n){o||(o=!0,e(n))},function(n){o||(o=!0,t(n))})}catch(r){if(o)return;o=!0,t(r)}}return n.prototype["catch"]=function(n){return this.then(null,n)},n.prototype.then=function(t,o){var r=this;return new n(function(n,e){i.call(r,new c(t,o,n,e))})},n.all=function(){var c=Array.prototype.slice.call(1===arguments.length&&t(arguments[0])?arguments[0]:arguments);return new n(function(r,i){if(0===c.length)return r([]);var u=c.length;function a(e,n){try{if(n&&("object"==typeof n||"function"==typeof n)){var t=n.then;if("function"==typeof t)return void t.call(n,function(n){a(e,n)},i)}c[e]=n,0==--u&&r(c)}catch(o){i(o)}}for(var n=0;n<c.length;n++)a(n,c[n])})},n.resolve=function(e){return e&&"object"==typeof e&&e.constructor===n?e:new n(function(n){n(e)})},n.reject=function(t){return new n(function(n,e){e(t)})},n.race=function(r){return new n(function(n,e){for(var t=0,o=r.length;t<o;t++)r[t].then(n,e)})},n}();function pf(){return new(Re.getOrDie("FileReader"))}var hf={atob:function(n){return Re.getOrDie("atob")(n)},requestAnimationFrame:function(n){Re.getOrDie("requestAnimationFrame")(n)}};function vf(a){return new gf(function(n,e){var t=URL.createObjectURL(a),o=new Image,r=function(){o.removeEventListener("load",i),o.removeEventListener("error",u)};function i(){r(),n(o)}function u(){r(),e("Unable to load data of type "+a.type+": "+t)}o.addEventListener("load",i),o.addEventListener("error",u),o.src=t,o.complete&&i()})}function yf(o){return new gf(function(n,t){var e=new XMLHttpRequest;e.open("GET",o,!0),e.responseType="blob",e.onload=function(){200==this.status&&n(this.response)},e.onerror=function(){var n,e=this;t(0===this.status?((n=new Error("No access to download image")).code=18,n.name="SecurityError",n):new Error("Error "+e.status+" downloading image"))},e.send()})}function bf(n){var e=n.split(","),t=/data:([^;]+)/.exec(e[0]);if(!t)return x.none();for(var o,r,i,u=t[1],a=e[1],c=hf.atob(a),s=c.length,f=Math.ceil(s/1024),l=new Array(f),d=0;d<f;++d){for(var m=1024*d,g=Math.min(m+1024,s),p=new Array(g-m),h=m,v=0;h<g;++v,++h)p[v]=c[h].charCodeAt(0);l[d]=(o=p,new(Re.getOrDie("Uint8Array"))(o))}return x.some((r=l,i={type:u},new(Re.getOrDie("Blob"))(r,i)))}function wf(t){return new gf(function(n,e){bf(t).fold(function(){e("uri is not base64: "+t)},n)})}function xf(t){return new gf(function(n){var e=new pf;e.onloadend=function(){n(e.result)},e.readAsDataURL(t)})}var Tf,Sf,kf,Cf,Of,Ef,Df,Af,Mf={blobToImage:vf,imageToBlob:function(n){var e=n.src;return 0===e.indexOf("data:")?wf(e):yf(e)},blobToArrayBuffer:function(t){return new gf(function(n){var e=new pf;e.onloadend=function(){n(e.result)},e.readAsArrayBuffer(t)})},blobToDataUri:xf,blobToBase64:function(n){return xf(n).then(function(n){return n.split(",")[1]})},dataUriToBlobSync:bf,canvasToBlob:function(n,t,o){return t=t||"image/png",HTMLCanvasElement.prototype.toBlob?new gf(function(e){n.toBlob(function(n){e(n)},t,o)}):wf(n.toDataURL(t,o))},canvasToDataURL:function(n,e,t){return e=e||"image/png",n.then(function(n){return n.toDataURL(e,t)})},blobToCanvas:function(n){return vf(n).then(function(n){var e,t;return e=n,URL.revokeObjectURL(e.src),t=df.create(mf.getWidth(n),mf.getHeight(n)),df.get2dContext(t).drawImage(n,0,0),t})},uriToBlob:function(n){return 0===n.indexOf("blob:")?yf(n):0===n.indexOf("data:")?wf(n):null}},Bf=function(n){return Mf.blobToBase64(n)},Rf=function(u){var e=cf({dom:{tag:"input",attributes:{accept:"image/*",type:"file",title:""},styles:{visibility:"hidden",position:"absolute"}},events:xo([Eo(P()),So(L(),function(n,e){var t,o,r;(t=e,o=t.event(),r=o.raw().target.files||o.raw().dataTransfer.files,x.from(r[0])).each(function(n){var r,i;r=u,Bf(i=n).then(function(o){r.undoManager.transact(function(){var n=r.editorUpload.blobCache,e=n.create(hc("mceu"),i,o);n.add(e);var t=r.dom.createHTML("img",{src:e.blobUri()});r.insertContent(t)})})})})])});return as.sketch({dom:ls('<span class="${prefix}-toolbar-button ${prefix}-icon-image ${prefix}-icon"></span>'),components:[e.asSpec()],action:function(n){e.get(n).element().dom().click()}})},If=function(n){return n.dom().textContent},Ff=function(n,e){n.dom().textContent=e},Nf=function(n){return 0<n.length},Vf=function(n){return n===undefined||null===n?"":n},Hf=function(e,t,n){return n.text.filter(Nf).fold(function(){return ar.get(n=e,"href")===If(n)?x.some(t):x.none();var n},x.some)},jf=function(n){var e=ue.fromDom(n.selection.getStart());return cu(e,"a")},zf={getInfo:function(n){return jf(n).fold(function(){return{url:"",text:n.selection.getContent({format:"text"}),title:"",target:"",link:x.none()}},function(n){return t=If(e=n),o=ar.get(e,"href"),r=ar.get(e,"title"),i=ar.get(e,"target"),{url:Vf(o),text:t!==o?Vf(t):"",title:Vf(r),target:Vf(i),link:x.some(e)};var e,t,o,r,i})},applyInfo:function(r,i){i.url.filter(Nf).fold(function(){var e;e=r,i.link.bind(O.identity).each(function(n){e.execCommand("unlink")})},function(t){var n,e,o=(n=i,(e={}).href=t,n.title.filter(Nf).each(function(n){e.title=n}),n.target.filter(Nf).each(function(n){e.target=n}),e);i.link.bind(O.identity).fold(function(){var n=i.text.filter(Nf).getOr(t);r.insertContent(r.dom.createHTML("a",o,r.dom.encode(n)))},function(e){var n=Hf(e,t,i);ar.setAll(e,o),n.each(function(n){Ff(e,n)})})})},query:jf},Lf=Ln.detect(),Pf=function(n,e){var t=e.selection.getRng();n(),e.selection.setRng(t)},Wf=function(n,e){(Lf.os.isAndroid()?Pf:O.apply)(e,n)},Uf=function(n,e){var t,o;return{key:n,value:{config:{},me:(t=n,o=xo(e),Qo({fields:[co("enabled")],name:t,active:{events:O.constant(o)}})),configAsRaw:O.constant({}),initialConfig:{},state:er()}}},Gf=Object.freeze({getCurrent:function(n,e,t){return e.find()(n)}}),$f=[co("find")],qf=Qo({fields:$f,name:"composing",apis:Gf}),_f=is({name:"Container",factory:function(n,e){return{uid:n.uid(),dom:D.deepMerge({tag:"div",attributes:{role:"presentation"}},n.dom()),components:n.components(),behaviours:uc(n.containerBehaviours()),events:n.events(),domModification:n.domModification(),eventOrder:n.eventOrder()}},configFields:[ho("components",[]),ic("containerBehaviours",[]),ho("events",{}),ho("domModification",{}),ho("eventOrder",{})]}),Kf=is({name:"DataField",factory:function(t,n){return{uid:t.uid(),dom:t.dom(),behaviours:D.deepMerge(Yo([Ps.config({store:{mode:"memory",initialValue:t.getInitialValue()()}}),qf.config({find:x.some})]),uc(t.dataBehaviours())),events:xo([Do(function(n,e){Ps.setValue(n,t.getInitialValue()())})])}},configFields:[co("uid"),co("dom"),co("getInitialValue"),ic("dataBehaviours",[Ps,qf])]}),Xf=function(n,e){if(e===undefined)throw new Error("Value.set was undefined");n.dom().value=e},Yf=function(n){return n.dom().value},Jf=O.constant([mo("data"),ho("inputAttributes",{}),ho("inputStyles",{}),ho("type","input"),ho("tag","input"),ho("inputClasses",[]),fi("onSetValue"),ho("styles",{}),mo("placeholder"),ho("eventOrder",{}),ic("inputBehaviours",[Ps,zi]),ho("selectOnFocus",!0)]),Qf=is({name:"Input",configFields:Jf(),factory:function(n,e){return{uid:n.uid(),dom:(o=n,{tag:o.tag(),attributes:D.deepMerge(At([{key:"type",value:o.type()}].concat(o.placeholder().map(function(n){return{key:"placeholder",value:n}}).toArray())),o.inputAttributes()),styles:o.inputStyles(),classes:o.inputClasses()}),components:[],behaviours:(t=n,D.deepMerge(Yo([Ps.config({store:{mode:"manual",initialValue:t.data().getOr(undefined),getValue:function(n){return Yf(n.element())},setValue:function(n,e){Yf(n.element())!==e&&Xf(n.element(),e)}},onSetValue:t.onSetValue()}),zi.config({onFocus:!1===t.selectOnFocus()?O.noop:function(n){var e=n.element(),t=Yf(e);e.dom().setSelectionRange(0,t.length)}})]),uc(t.inputBehaviours()))),eventOrder:n.eventOrder()};var t,o}}),Zf=Object.freeze({exhibit:function(n,e){return Vo({attributes:At([{key:e.tabAttr(),value:"true"}])})}}),nl=[ho("tabAttr","data-alloy-tabstop")],el=Qo({fields:nl,name:"tabstopping",active:Zf}),tl=function(n,e){var t=cf(Qf.sketch({placeholder:e,onSetValue:function(n,e){ne(n,z())},inputBehaviours:Yo([qf.config({find:x.some}),el.config({}),rc.config({mode:"execution"})]),selectOnFocus:!1})),o=cf(as.sketch({dom:ls('<button class="${prefix}-input-container-x ${prefix}-icon-cancel-circle ${prefix}-icon"></button>'),action:function(n){var e=t.get(n);Ps.setValue(e,"")}}));return{name:n,spec:_f.sketch({dom:ls('<div class="${prefix}-input-container"></div>'),components:[t.asSpec(),o.asSpec()],containerBehaviours:Yo([Ai.config({toggleClass:Fi.resolve("input-container-empty")}),qf.config({find:function(n){return x.some(t.get(n))}}),Uf("input-clearing",[So(z(),function(n){var e=t.get(n);(0<Ps.getValue(e).length?Ai.off:Ai.on)(n)})])])})}},ol=["input","button","textarea"],rl=function(n,e,t){e.disabled()&&fl(n,e,t)},il=function(n){return wn.contains(ol,ve.name(n.element()))},ul=function(n){ar.set(n.element(),"disabled","disabled")},al=function(n){ar.remove(n.element(),"disabled")},cl=function(n){ar.set(n.element(),"aria-disabled","true")},sl=function(n){ar.set(n.element(),"aria-disabled","false")},fl=function(e,n,t){n.disableClass().each(function(n){xr.add(e.element(),n)}),(il(e)?ul:cl)(e)},ll=function(n){return il(n)?ar.has(n.element(),"disabled"):"true"===ar.get(n.element(),"aria-disabled")},dl=Object.freeze({enable:function(e,n,t){n.disableClass().each(function(n){xr.remove(e.element(),n)}),(il(e)?al:sl)(e)},disable:fl,isDisabled:ll,onLoad:rl}),ml=Object.freeze({exhibit:function(n,e,t){return Vo({classes:e.disabled()?e.disableClass().map(wn.pure).getOr([]):[]})},events:function(n,e){return xo([To($n(),function(n,e){return ll(n)}),jo(n,e,rl)])}}),gl=[ho("disabled",!1),mo("disableClass")],pl=Qo({fields:gl,name:"disabling",active:ml,apis:dl}),hl=[ic("formBehaviours",[Ps])],vl=function(n){return"<alloy.field."+n+">"},yl=function(r,n,e){return D.deepMerge({"debug.sketcher":{Form:e},uid:r.uid(),dom:r.dom(),components:n,behaviours:D.deepMerge(Yo([Ps.config({store:{mode:"manual",getValue:function(n){var e,t,o=(e=r,t=n.getSystem(),M.map(e.partUids(),function(n,e){return O.constant(t.getByUid(n))}));return M.map(o,function(n,e){return n().bind(qf.getCurrent).map(Ps.getValue)})},setValue:function(t,n){M.each(n,function(e,n){zc(t,r,n).each(function(n){qf.getCurrent(n).each(function(n){Ps.setValue(n,e)})})})}}})]),uc(r.formBehaviours())),apis:{getField:function(n,e){return zc(n,r,e).bind(qf.getCurrent)}}})},bl=(qc(function(n,e,t){return n.getField(e,t)}),function(n){var i,e=(i=[],{field:function(n,e){return i.push(n),t="form",o=vl(n),r=e,{uiType:gc(),owner:t,name:o,config:r,validated:{}};var t,o,r},record:function(){return i}}),t=n(e),o=e.record(),r=wn.map(o,function(n){return Mc({name:n,pname:vl(n)})});return es("form",hl,r,yl,t)}),wl=function(){var e=Or(x.none()),t=function(){e.get().each(function(n){n.destroy()})};return{clear:function(){t(),e.set(x.none())},isSet:function(){return e.get().isSome()},set:function(n){t(),e.set(x.some(n))},run:function(n){e.get().each(n)}}},xl=function(){var e=Or(x.none());return{clear:function(){e.set(x.none())},set:function(n){e.set(x.some(n))},isSet:function(){return e.get().isSome()},on:function(n){e.get().each(n)}}},Tl=function(n){return{xValue:n,points:[]}},Sl=function(n,e){if(e===n.xValue)return n;var t=0<e-n.xValue?1:-1,o={direction:t,xValue:e};return{xValue:e,points:(0===n.points.length?[]:n.points[n.points.length-1].direction===t?n.points.slice(0,n.points.length-1):n.points).concat([o])}},kl=function(n){if(0===n.points.length)return 0;var e=n.points[0].direction,t=n.points[n.points.length-1].direction;return-1===e&&-1===t?-1:1===e&&1===t?1:0},Cl=function(n){var o="navigateEvent",e=Gt([co("fields"),ho("maxFieldIndex",n.fields.length-1),co("onExecute"),co("getInitialValue"),yo("state",function(){return{dialogSwipeState:xl(),currentScreen:Or(0)}})]),u=to("SerialisedDialog",e,n),r=function(e,n,t){return as.sketch({dom:ls('<span class="${prefix}-icon-'+n+' ${prefix}-icon"></span>'),action:function(n){ee(n,o,{direction:e})},buttonBehaviours:Yo([pl.config({disableClass:Fi.resolve("toolbar-navigation-disabled"),disabled:!t})])})},i=function(n,r){var i=ou(n.element(),"."+Fi.resolve("serialised-dialog-screen"));au(n.element(),"."+Fi.resolve("serialised-dialog-chain")).each(function(o){0<=u.state.currentScreen.get()+r&&u.state.currentScreen.get()+r<i.length&&(qi.getRaw(o,"left").each(function(n){var e=parseInt(n,10),t=qs(i[0]);qi.set(o,"left",e-r*t+"px")}),u.state.currentScreen.set(u.state.currentScreen.get()+r))})},a=function(o){var n=ou(o.element(),"input");x.from(n[u.state.currentScreen.get()]).each(function(n){o.getSystem().getByDom(n).each(function(n){var e,t;e=o,t=n.element(),e.getSystem().triggerFocus(t,e.element())})});var e=s.get(o);Bu.highlightAt(e,u.state.currentScreen.get())},c=cf(bl(function(t){return{dom:ls('<div class="${prefix}-serialised-dialog"></div>'),components:[_f.sketch({dom:ls('<div class="${prefix}-serialised-dialog-chain" style="left: 0px; position: absolute;"></div>'),components:wn.map(u.fields,function(n,e){return e<=u.maxFieldIndex?_f.sketch({dom:ls('<div class="${prefix}-serialised-dialog-screen"></div>'),components:wn.flatten([[r(-1,"previous",0<e)],[t.field(n.name,n.spec)],[r(1,"next",e<u.maxFieldIndex)]])}):t.field(n.name,n.spec)})})],formBehaviours:Yo([Bi(function(n,e){var t;t=e,au(n.element(),"."+Fi.resolve("serialised-dialog-chain")).each(function(n){qi.set(n,"left",-u.state.currentScreen.get()*t.width+"px")})}),rc.config({mode:"special",focusIn:function(n){a(n)},onTab:function(n){return i(n,1),x.some(!0)},onShiftTab:function(n){return i(n,-1),x.some(!0)}}),Uf("form-events",[Do(function(e,n){u.state.currentScreen.set(0),u.state.dialogSwipeState.clear();var t=s.get(e);Bu.highlightFirst(t),u.getInitialValue(e).each(function(n){Ps.setValue(e,n)})}),Bo(u.onExecute),So(W(),function(n,e){"left"===e.event().raw().propertyName&&a(n)}),So(o,function(n,e){var t=e.event().direction();i(n,t)})])])}})),s=cf({dom:ls('<div class="${prefix}-dot-container"></div>'),behaviours:Yo([Bu.config({highlightClass:Fi.resolve("dot-active"),itemClass:Fi.resolve("dot-item")})]),components:wn.bind(u.fields,function(n,e){return e<=u.maxFieldIndex?[ds('<div class="${prefix}-dot-item ${prefix}-icon-full-dot ${prefix}-icon"></div>')]:[]})});return{dom:ls('<div class="${prefix}-serializer-wrapper"></div>'),components:[c.asSpec(),s.asSpec()],behaviours:Yo([rc.config({mode:"special",focusIn:function(n){var e=c.get(n);rc.focusIn(e)}}),Uf("serializer-wrapper-events",[So(B(),function(n,e){u.state.dialogSwipeState.set(Tl(e.event().raw().touches[0].clientX))}),So(R(),function(n,e){u.state.dialogSwipeState.on(function(n){e.event().prevent(),u.state.dialogSwipeState.set(Sl(n,e.event().raw().touches[0].clientX))})}),So(I(),function(o){u.state.dialogSwipeState.on(function(n){var e=c.get(o),t=-1*kl(n);i(e,t)})})])])}},Ol=G(function(t,o){return[{label:"the link group",items:[Cl({fields:[tl("url","Type or paste URL"),tl("text","Link text"),tl("title","Link title"),tl("target","Link target"),(n="link",{name:n,spec:Kf.sketch({dom:{tag:"span",styles:{display:"none"}},getInitialValue:function(){return x.none()}})})],maxFieldIndex:["url","text","title","target"].length-1,getInitialValue:function(){return x.some(zf.getInfo(o))},onExecute:function(n){var e=Ps.getValue(n);zf.applyInfo(o,e),t.restoreToolbar(),o.focus()}})]}];var n}),El=[{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",icon:"bold",format:"bold"},{title:"Italic",icon:"italic",format:"italic"},{title:"Underline",icon:"underline",format:"underline"},{title:"Strikethrough",icon:"strikethrough",format:"strikethrough"},{title:"Superscript",icon:"superscript",format:"superscript"},{title:"Subscript",icon:"subscript",format:"subscript"},{title:"Code",icon:"code",format:"code"}]},{title:"Blocks",items:[{title:"Paragraph",format:"p"},{title:"Blockquote",format:"blockquote"},{title:"Div",format:"div"},{title:"Pre",format:"pre"}]},{title:"Alignment",items:[{title:"Left",icon:"alignleft",format:"alignleft"},{title:"Center",icon:"aligncenter",format:"aligncenter"},{title:"Right",icon:"alignright",format:"alignright"},{title:"Justify",icon:"alignjustify",format:"alignjustify"}]}],Dl={events:xo([(Tf=Wn(),Sf=function(n,e){var t,o,r=e.event().originator(),i=e.event().target();return o=i,!(je(t=r,n.element())&&!je(t,o)&&(console.warn(Wn()+" did not get interpreted by the desired target. \nOriginator: "+Yr(r)+"\nTarget: "+Yr(i)+"\nCheck the "+Wn()+" event handlers"),1))},{key:Tf,value:bo({can:Sf})})])},Al=O.identity,Ml=qo.exactly(["debugInfo","triggerFocus","triggerEvent","triggerEscape","addToWorld","removeFromWorld","addToGui","removeFromGui","build","getByUid","getByDom","broadcast","broadcastOn","isConnected"]),Bl=function(e){var n=function(n){return function(){throw new Error("The component must be in a context to send: "+n+"\n"+Yr(e().element())+" is not in context.")}};return Ml({debugInfo:O.constant("fake"),triggerEvent:n("triggerEvent"),triggerFocus:n("triggerFocus"),triggerEscape:n("triggerEscape"),build:n("build"),addToWorld:n("addToWorld"),removeFromWorld:n("removeFromWorld"),addToGui:n("addToGui"),removeFromGui:n("removeFromGui"),getByUid:n("getByUid"),getByDom:n("getByDom"),broadcast:n("broadcast"),broadcastOn:n("broadcastOn"),isConnected:O.constant(!1)})},Rl=function(e,n){var t=wn.map(n,function(n){return Xt(n.name(),n.name(),mt(),Gt([co("config"),ho("state",Xo)]))}),o=no("component.behaviours",Gt(t),e.behaviours).fold(function(n){throw new Error(ro(n)+"\nComplete spec:\n"+Nt(e,null,2))},O.identity);return{list:n,data:M.map(o,function(n){var e=n();return O.constant(e.map(function(n){return{config:n.config(),state:n.state().init(n.config())}}))})}},Il=function(n){return n.list},Fl=function(n){return n.data},Nl=function(n,r){var i={};return M.each(n,function(n,o){M.each(n,function(n,e){var t=Ot(e,[])(i);i[e]=t.concat([r(o,n)])})}),i},Vl=function(n,e){return{name:O.constant(n),modification:e}},Hl=function(n,e,t){return 1<n.length?ct.error('Multiple behaviours have tried to change DOM "'+e+'". The guilty behaviours are: '+Nt(wn.map(n,function(n){return n.name()}))+". At this stage, this is not supported. Future releases might provide strategies for resolving this."):0===n.length?ct.value({}):ct.value(n[0].modification().fold(function(){return{}},function(n){return Dt(e,n)}))},jl=function(u,a){return wn.foldl(u,function(n,e){var t=e.modification().getOr({});return n.bind(function(i){var n=M.mapToArray(t,function(n,e){return i[e]!==undefined?(t=a,o=e,r=u,ct.error("Mulitple behaviours have tried to change the _"+o+'_ "'+t+'". The guilty behaviours are: '+Nt(wn.bind(r,function(n){return n.modification().getOr({})[o]!==undefined?[n.name()]:[]}),null,2)+". This is not currently supported.")):ct.value(Dt(e,n));var t,o,r});return Mt(n,i)})},ct.value({})).map(function(n){return Dt(a,n)})},zl={classes:function(n,e){var t=wn.bind(n,function(n){return n.modification().getOr([])});return ct.value(Dt(e,t))},attributes:jl,styles:jl,domChildren:Hl,defChildren:Hl,innerHtml:Hl,value:Hl},Ll=function(u,a,n,c){var e=n.slice(0);try{var t=e.sort(function(n,e){var t=n[a](),o=e[a](),r=c.indexOf(t),i=c.indexOf(o);if(-1===r)throw new Error("The ordering for "+u+" does not have an entry for "+t+".\nOrder specified: "+Nt(c,null,2));if(-1===i)throw new Error("The ordering for "+u+" does not have an entry for "+o+".\nOrder specified: "+Nt(c,null,2));return r<i?-1:i<r?1:0});return ct.value(t)}catch(o){return ct.error([o])}},Pl=function(n,e){return{handler:O.curry.apply(undefined,[n.handler].concat(e)),purpose:n.purpose}},Wl=function(n){return n.handler},Ul=function(n,e){return{name:O.constant(n),handler:O.constant(e)}},Gl=function(n,e,t){var o,r,i,u=D.deepMerge(t,(o=e,r=n,i={},wn.each(o,function(n){i[n.name()]=n.handlers(r)}),i));return Nl(u,Ul)},$l=function(n){var e,o=(e=n,E.isFunction(e)?{can:O.constant(!0),abort:O.constant(!1),run:e}:e);return function(n,e){var t=Array.prototype.slice.call(arguments,0);o.abort.apply(undefined,t)?e.stop():o.can.apply(undefined,t)&&o.run.apply(undefined,t)}},ql=function(n,e,t){var o,r,i=e[t];return i?Ll("Event: "+t,"name",n,i).map(function(n){var e=wn.map(n,function(n){return n.handler()});return wo(e)}):(o=t,r=n,ct.error(["The event ("+o+') 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: '+Nt(wn.map(r,function(n){return n.name()}),null,2)]))},_l=function(n,u){var e=M.mapToArray(n,function(r,i){return(1===r.length?ct.value(r[0].handler()):ql(r,u,i)).map(function(n){var e,t=$l(n),o=1<r.length?wn.filter(u,function(e){return wn.contains(r,function(n){return n.name()===e})}).join(" > "):r[0].name();return Dt(i,(e=o,{handler:t,purpose:O.constant(e)}))})});return Mt(e,{})},Kl=function(n){return no("custom.definition",Ut([Xt("dom","dom",dt(),Ut([co("tag"),ho("styles",{}),ho("classes",[]),ho("attributes",{}),mo("value"),mo("innerHtml")])),co("components"),co("uid"),ho("events",{}),ho("apis",O.constant({})),Xt("eventOrder","eventOrder",(e={"alloy.execute":["disabling","alloy.base.behaviour","toggling"],"alloy.focus":["alloy.base.behaviour","focusing","keying"],"alloy.system.init":["alloy.base.behaviour","disabling","toggling","representing"],input:["alloy.base.behaviour","representing","streaming","invalidating"],"alloy.system.detached":["alloy.base.behaviour","representing"]},ft.mergeWithThunk(O.constant(e))),uo()),mo("domModification"),pi("originalSpec"),ho("debug.sketcher","unknown")]),n);var e},Xl=function(n){var e,t={tag:n.dom().tag(),classes:n.dom().classes(),attributes:D.deepMerge((e=n,Dt(Xc(),e.uid())),n.dom().attributes()),styles:n.dom().styles(),domChildren:wn.map(n.components(),function(n){return n.element()})};return Fo(D.deepMerge(t,n.dom().innerHtml().map(function(n){return Dt("innerHtml",n)}).getOr({}),n.dom().value().map(function(n){return Dt("value",n)}).getOr({})))},Yl=function(e,n){wn.each(n,function(n){xr.add(e,n)})},Jl=function(e,n){wn.each(n,function(n){xr.remove(e,n)})},Ql=function(e){if(e.domChildren().isSome()&&e.defChildren().isSome())throw new Error("Cannot specify children and child specs! Must be one or the other.\nDef: "+(n=No(e),Nt(n,null,2)));return e.domChildren().fold(function(){var n=e.defChildren().getOr([]);return wn.map(n,nd)},function(n){return n});var n},Zl=function(n){var e=ue.fromTag(n.tag());ar.setAll(e,n.attributes().getOr({})),Yl(e,n.classes().getOr([])),qi.setAll(e,n.styles().getOr({})),qr(e,n.innerHtml().getOr(""));var t=Ql(n);return Je(e,t),n.value().each(function(n){Xf(e,n)}),e},nd=function(n){var e=Fo(n);return Zl(e)},ed=function(n){var e,t,o,r=(t=Et(e=n,"behaviours").getOr({}),o=wn.filter(M.keys(t),function(n){return t[n]!==undefined}),wn.map(o,function(n){return e.behaviours[n].me}));return Rl(n,r)},td=qo.exactly(["getSystem","config","hasConfigured","spec","connect","disconnect","element","syncComponents","readState","components","events"]),od=function(t){var n,e,o,r,i,u,a,c,s,f,l=function(){return C},d=Or(Bl(l)),m=eo(Kl(D.deepMerge(t,{behaviours:undefined}))),g=ed(t),p=Il(g),h=Fl(g),v=Xl(m),y={"alloy.base.modification":(n=m,n.domModification().fold(function(){return Vo({})},Vo))},b=function(e,n,t,o){var r=D.deepMerge({},n);wn.each(t,function(n){r[n.name()]=n.exhibit(e,o)});var i=Nl(r,Vl),u=M.map(i,function(n,e){return wn.bind(n,function(e){return e.modification().fold(function(){return[]},function(n){return[e]})})}),a=M.mapToArray(u,function(e,t){return Et(zl,t).fold(function(){return ct.error("Unknown field type: "+t)},function(n){return n(e,t)})});return Mt(a,{}).map(Vo)}(h,y,p,v).getOrDie(),w=(e=v,o=b,r=D.deepMerge({tag:e.tag(),classes:o.classes().getOr([]).concat(e.classes().getOr([])),attributes:D.merge(e.attributes().getOr({}),o.attributes().getOr({})),styles:D.merge(e.styles().getOr({}),o.styles().getOr({}))},o.innerHtml().or(e.innerHtml()).map(function(n){return Dt("innerHtml",n)}).getOr({}),Ho("domChildren",o.domChildren(),e.domChildren()),Ho("defChildren",o.defChildren(),e.defChildren()),o.value().or(e.value()).map(function(n){return Dt("value",n)}).getOr({})),Fo(r)),x=Zl(w),T={"alloy.base.behaviour":(i=m,i.events())},S=(u=h,a=m.eventOrder(),c=p,s=T,f=Gl(u,c,s),_l(f,a)).getOrDie(),k=Or(m.components()),C=td({getSystem:d.get,config:function(n){if(n===_c())return m.apis();var e=h;return(E.isFunction(e[n.name()])?e[n.name()]:function(){throw new Error("Could not find "+n.name()+" in "+Nt(t,null,2))})()},hasConfigured:function(n){return E.isFunction(h[n.name()])},spec:O.constant(t),readState:function(n){return h[n]().map(function(n){return n.state.readState()}).getOr("not enabled")},connect:function(n){d.set(n)},disconnect:function(){d.set(Bl(l))},element:O.constant(x),syncComponents:function(){var n=qe.children(x),e=wn.bind(n,function(n){return d.get().getByDom(n).fold(function(){return[]},function(n){return[n]})});k.set(e)},components:k.get,events:O.constant(S)});return C},rd=function(n){var e,t,o=Al(n),r=(e=o,t=Ot("components",[])(e),wn.map(t,ad)),i=D.deepMerge(Dl,o,Dt("components",r));return ct.value(od(i))},id=function(n){var e=ue.fromText(n);return ud({element:e})},ud=function(n){var t=oo("external.component",Ut([co("element"),mo("uid")]),n),e=Or(Bl());t.uid().each(function(n){var e;e=t.element(),ar.set(e,Jc,n)});var o=td({getSystem:e.get,config:x.none,hasConfigured:O.constant(!1),connect:function(n){e.set(n)},disconnect:function(){e.set(Bl(function(){return o}))},element:O.constant(t.element()),spec:O.constant(n),readState:O.constant("No state"),syncComponents:O.noop,components:O.constant([]),events:O.constant({})});return $c(o)},ad=function(e){return(n=e,Et(n,Uc)).fold(function(){var n=D.deepMerge({uid:Zc("")},e);return rd(n).getOrDie()},function(n){return n});var n},cd=$c,sd="alloy.item-hover",fd="alloy.item-focus",ld=function(n){(jr(n.element()).isNone()||zi.isFocused(n))&&(zi.isFocused(n)||zi.focus(n),ee(n,sd,{item:n}))},dd=function(n){ee(n,fd,{item:n})},md=O.constant(sd),gd=O.constant(fd),pd=[co("data"),co("components"),co("dom"),mo("toggling"),ho("itemBehaviours",{}),ho("ignoreFocus",!1),ho("domModification",{}),gi("builder",function(n){return{dom:D.deepMerge(n.dom(),{attributes:{role:n.toggling().isSome()?"menuitemcheckbox":"menuitem"}}),behaviours:D.deepMerge(Yo([n.toggling().fold(Ai.revoke,function(n){return Ai.config(D.deepMerge({aria:{mode:"checked"}},n))}),zi.config({ignore:n.ignoreFocus(),onFocus:function(n){dd(n)}}),rc.config({mode:"execution"}),Ps.config({store:{mode:"memory",initialValue:n.data()}})]),n.itemBehaviours()),events:xo([(e=Kn(),o=te,So(e,function(e,t){e.getSystem().getByDom(t.event().target()).each(function(n){o(e,n,t)})})),Eo(F()),So(H(),ld),So(qn(),zi.focus)]),components:n.components(),domModification:n.domModification(),eventOrder:n.eventOrder()};var e,o}),ho("eventOrder",{})],hd=[co("dom"),co("components"),gi("builder",function(n){return{dom:n.dom(),components:n.components(),events:xo([(e=qn(),So(e,function(n,e){e.stop()}))])};var e})],vd=O.constant("item-widget"),yd=O.constant([Mc({name:"widget",overrides:function(e){return{behaviours:Yo([Ps.config({store:{mode:"manual",getValue:function(n){return e.data()},setValue:function(){}}})])}}})]),bd=[co("uid"),co("data"),co("components"),co("dom"),ho("autofocus",!1),ho("domModification",{}),Wc(yd()),gi("builder",function(t){var n=Hc(vd(),t,yd()),e=jc(vd(),t,n.internals()),o=function(n){return zc(n,t,"widget").map(function(n){return rc.focusIn(n),n})},r=function(n,e){return Hu(e.event().target())||t.autofocus()&&e.setSource(n.element()),x.none()};return D.deepMerge({dom:t.dom(),components:e,domModification:t.domModification(),events:xo([Bo(function(n,e){o(n).each(function(n){e.stop()})}),So(H(),ld),So(qn(),function(n,e){t.autofocus()?o(n):zi.focus(n)})]),behaviours:Yo([Ps.config({store:{mode:"memory",initialValue:t.data()}}),zi.config({onFocus:function(n){dd(n)}}),rc.config({mode:"special",focusIn:t.autofocus()?function(n){o(n)}:nr(),onLeft:r,onRight:r,onEscape:function(n,e){return zi.isFocused(n)||t.autofocus()?(t.autofocus()&&e.setSource(n.element()),x.none()):(zi.focus(n),x.some(!0))}})])})})],wd=io("type",{widget:bd,item:pd,separator:hd}),xd=O.constant([Rc({factory:{sketch:function(n){var e=oo("menu.spec item",wd,n);return e.builder()(e)}},name:"items",unit:"item",defaults:function(n,e){var t=Zc("");return D.deepMerge({uid:t},e)},overrides:function(n,e){return{type:e.type,ignoreFocus:n.fakeFocus(),domModification:{classes:[n.markers().item()]}}}})]),Td=O.constant([co("value"),co("items"),co("dom"),co("components"),ho("eventOrder",{}),ic("menuBehaviours",[Bu,Ps,qf,rc]),vo("movement",{mode:"menu",moveOnTab:!0},io("mode",{grid:[hi(),gi("config",function(n,e){return{mode:"flatgrid",selector:"."+n.markers().item(),initSize:{numColumns:e.initSize().numColumns(),numRows:e.initSize().numRows()},focusManager:n.focusManager()}})],menu:[ho("moveOnTab",!0),gi("config",function(n,e){return{mode:"menu",selector:"."+n.markers().item(),moveOnTab:e.moveOnTab(),focusManager:n.focusManager()}})]})),so("markers",ai()),ho("fakeFocus",!1),ho("focusManager",Ru()),fi("onHighlight")]),Sd=(O.constant("menu"),O.constant("alloy.menu-focus")),kd=us({name:"Menu",configFields:Td(),partFields:xd(),factory:function(n,e,t,o){return D.deepMerge({dom:D.deepMerge(n.dom(),{attributes:{role:"menu"}}),uid:n.uid(),behaviours:D.deepMerge(Yo([Bu.config({highlightClass:n.markers().selectedItem(),itemClass:n.markers().item(),onHighlight:n.onHighlight()}),Ps.config({store:{mode:"memory",initialValue:n.value()}}),qf.config({find:O.identity}),rc.config(n.movement().config()(n,n.movement()))]),uc(n.menuBehaviours())),events:xo([So(gd(),function(e,t){var n=t.event();e.getSystem().getByDom(n.target()).each(function(n){Bu.highlight(e,n),t.stop(),ee(e,Sd(),{menu:e,item:n})})}),So(md(),function(n,e){var t=e.event().item();Bu.highlight(n,t)})]),components:e,eventOrder:n.eventOrder()})}}),Cd=function(n,e,t,o){var r=n.getSystem().build(o);ot(n,r,t)},Od=function(n,e){return n.components()},Ed=Object.freeze({append:function(n,e,t,o){Cd(n,0,Xe.append,o)},prepend:function(n,e,t,o){Cd(n,0,Xe.prepend,o)},remove:function(n,e,t,o){var r=Od(n,e);wn.find(r,function(n){return je(o.element(),n.element())}).each(it)},set:function(e,n,t,o){var r,i,u,a,c,s;i=(r=e).components(),wn.each(i,rt),Ze.empty(r.element()),r.syncComponents(),u=function(){var n=wn.map(o,e.getSystem().build);wn.each(n,function(n){tt(e,n)})},a=e.element(),c=qe.owner(a),s=Hr(c).bind(function(e){var n=function(n){return je(e,n)};return n(a)?x.some(a):Br.descendant(a,n)}),u(a),s.each(function(e){Hr(c).filter(function(n){return je(n,e)}).orThunk(function(){Nr(e)})})},contents:Od}),Dd=Qo({fields:[],name:"replacing",apis:Ed}),Ad=function(t,o,r,n){return Et(r,n).bind(function(n){return Et(t,n).bind(function(n){var e=Ad(t,o,r,n);return x.some([n].concat(e))})}).getOr([])},Md=function(n,e){var t={};M.each(n,function(n,e){wn.each(n,function(n){t[n]=e})});var o,r=e,i=(o=e,M.tupleMap(o,function(n,e){return{k:n,v:e}})),u=M.map(i,function(n,e){return[e].concat(Ad(t,r,i,e))});return M.map(t,function(n){return Et(u,n).getOr([n])})},Bd=O.constant("collapse-item"),Rd=is({name:"TieredMenu",configFields:[mi("onExecute"),mi("onEscape"),di("onOpenMenu"),di("onOpenSubmenu"),fi("onCollapseMenu"),ho("openImmediately",!0),lo("data",[co("primary"),co("menus"),co("expansions")]),ho("fakeFocus",!1),fi("onHighlight"),fi("onHover"),lo("markers",[co("backgroundMenu")].concat(ii()).concat(ui())),co("dom"),ho("navigateOnHover",!0),ho("stayInDom",!1),ic("tmenuBehaviours",[rc,Bu,qf,Dd]),ho("eventOrder",{})],apis:{collapseMenu:function(n,e){n.collapseMenu(e)}},factory:function(u,r){var a,c,s,f,l,n,i=function(o,n){return M.map(n,function(n,e){var t=kd.sketch(D.deepMerge(n,{value:e,items:n.items,markers:St(r.markers,["item","selectedItem"]),fakeFocus:u.fakeFocus(),onHighlight:u.onHighlight(),focusManager:u.fakeFocus()?{get:function(n){return Bu.getHighlighted(n).map(function(n){return n.element()})},set:function(e,n){e.getSystem().getByDom(n).fold(O.noop,function(n){Bu.highlight(e,n)})}}:Ru()}));return o.getSystem().build(t)})},d=(a=Or({}),c=Or({}),s=Or({}),f=Or(x.none()),l=Or(O.constant([])),{setContents:function(n,e,t,o){f.set(x.some(n)),a.set(t),c.set(e),l.set(o);var r=o(e),i=Md(r,t);s.set(i)},expand:function(t){return Et(a.get(),t).map(function(n){var e=Et(s.get(),t).getOr([]);return[n].concat(e)})},refresh:function(n){return Et(s.get(),n)},collapse:function(n){return Et(s.get(),n).bind(function(n){return 1<n.length?x.some(n.slice(1)):x.none()})},lookupMenu:n=function(n){return Et(c.get(),n)},otherMenus:function(n){var e=l.get()(c.get());return wn.difference(M.keys(e),n)},getPrimary:function(){return f.get().bind(n)},getMenus:function(){return c.get()},clear:function(){a.set({}),c.set({}),s.set({}),f.set(x.none())},isClear:function(){return f.get().isNone()}}),m=function(n){return Ps.getValue(n).value},g=function(n,e){return M.map(u.data().menus(),function(n,e){return wn.bind(n.items,function(n){return"separator"===n.type?[]:[n.data.value]})})},p=function(e,n){Bu.highlight(e,n),Bu.getHighlighted(n).orThunk(function(){return Bu.getFirst(n)}).each(function(n){oe(e,n.element(),qn())})},h=function(n,e){return Qr(wn.map(e,n.lookupMenu))},v=function(o,r,i){return x.from(i[0]).bind(r.lookupMenu).map(function(n){var e=h(r,i.slice(1));wn.each(e,function(n){xr.add(n.element(),u.markers().backgroundMenu())}),we.inBody(n.element())||Dd.append(o,cd(n)),Jl(n.element(),[u.markers().backgroundMenu()]),p(o,n);var t=h(r,r.otherMenus(i));return wn.each(t,function(n){Jl(n.element(),[u.markers().backgroundMenu()]),u.stayInDom()||Dd.remove(o,n)}),n})},y=function(e,t){var n=m(t);return d.expand(n).bind(function(n){return x.from(n[0]).bind(d.lookupMenu).each(function(n){we.inBody(n.element())||Dd.append(e,cd(n)),u.onOpenSubmenu()(e,t,n),Bu.highlightFirst(n)}),v(e,d,n)})},o=function(e,t){var n=m(t);return d.collapse(n).bind(function(n){return v(e,d,n).map(function(n){return u.onCollapseMenu()(e,t,n),n})})},e=function(t){return function(e,n){return cu(n.getSource(),"."+u.markers().item()).bind(function(n){return e.getSystem().getByDom(n).bind(function(n){return t(e,n)})})}},t=xo([So(Sd(),function(n,e){var t=e.event().menu();Bu.highlight(n,t)}),Bo(function(e,n){var t=n.event().target();return e.getSystem().getByDom(t).bind(function(n){return 0===m(n).indexOf("collapse-item")?o(e,n):y(e,n).orThunk(function(){return u.onExecute()(e,n)})})}),Do(function(e,n){var t,o;(t=e,o=i(t,u.data().menus()),d.setContents(u.data().primary(),o,u.data().expansions(),function(n){return g(t,n)}),d.getPrimary()).each(function(n){Dd.append(e,cd(n)),u.openImmediately()&&(p(e,n),u.onOpenMenu()(e,n))})})].concat(u.navigateOnHover()?[So(md(),function(n,e){var t,o,r=e.event().item();t=n,o=m(r),d.refresh(o).bind(function(n){return v(t,d,n)}),y(n,r),u.onHover()(n,r)})]:[]));return{uid:u.uid(),dom:u.dom(),behaviours:D.deepMerge(Yo([rc.config({mode:"special",onRight:e(function(n,e){return Hu(e.element())?x.none():y(n,e)}),onLeft:e(function(n,e){return Hu(e.element())?x.none():o(n,e)}),onEscape:e(function(n,e){return o(n,e).orThunk(function(){return u.onEscape()(n,e)})}),focusIn:function(e,n){d.getPrimary().each(function(n){oe(e,n.element(),qn())})}}),Bu.config({highlightClass:u.markers().selectedMenu(),itemClass:u.markers().menu()}),qf.config({find:function(n){return Bu.getHighlighted(n)}}),Dd.config({})]),uc(u.tmenuBehaviours())),eventOrder:u.eventOrder(),apis:{collapseMenu:function(e){Bu.getHighlighted(e).each(function(n){Bu.getHighlighted(n).each(function(n){o(e,n)})})}},events:t}},extraApis:{tieredData:function(n,e,t){return{primary:n,menus:e,expansions:t}},singleData:function(n,e){return{primary:n,menus:Dt(n,e),expansions:{}}},collapseItem:function(n){return{value:hc(Bd()),text:n}}}}),Id=function(n,e,t,o){return Et(e.routes(),o.start()).map(O.apply).bind(function(n){return Et(n,o.destination()).map(O.apply)})},Fd=function(n,e,t,o){return Id(0,e,0,o).bind(function(e){return e.transition().map(function(n){return{transition:O.constant(n),route:O.constant(e)}})})},Nd=function(t,o,n){var e,r,i;(e=t,r=o,i=n,Vd(e,r,i).bind(function(n){return Fd(e,r,i,n)})).each(function(n){var e=n.transition();xr.remove(t.element(),e.transitionClass()),ar.remove(t.element(),o.destinationAttr())})},Vd=function(n,e,t){var o=n.element();return ar.has(o,e.destinationAttr())?x.some({start:O.constant(ar.get(n.element(),e.stateAttr())),destination:O.constant(ar.get(n.element(),e.destinationAttr()))}):x.none()},Hd=function(n,e,t,o){Nd(n,e,t),ar.has(n.element(),e.stateAttr())&&ar.get(n.element(),e.stateAttr())!==o&&e.onFinish()(n,o),ar.set(n.element(),e.stateAttr(),o)},jd=Object.freeze({findRoute:Id,disableTransition:Nd,getCurrentRoute:Vd,jumpTo:Hd,progressTo:function(t,o,r,i){var n,e;e=o,ar.has((n=t).element(),e.destinationAttr())&&(ar.set(n.element(),e.stateAttr(),ar.get(n.element(),e.destinationAttr())),ar.remove(n.element(),e.destinationAttr()));var u,a,c,s=(u=t,a=o,c=i,{start:O.constant(ar.get(u.element(),a.stateAttr())),destination:O.constant(c)});Fd(t,o,r,s).fold(function(){Hd(t,o,r,i)},function(n){Nd(t,o,r);var e=n.transition();xr.add(t.element(),e.transitionClass()),ar.set(t.element(),o.destinationAttr(),i)})},getState:function(n,e,t){var o=n.element();return ar.has(o,e.stateAttr())?x.some(ar.get(o,e.stateAttr())):x.none()}}),zd=Object.freeze({events:function(r,i){return xo([So(W(),function(t,n){var o=n.event().raw();Vd(t,r,i).each(function(e){Id(0,r,0,e).each(function(n){n.transition().each(function(n){o.propertyName===n.property()&&(Hd(t,r,i,e.destination()),r.onTransition()(t,e))})})})}),Do(function(n,e){Hd(n,r,i,r.initialState())})])}}),Ld=[ho("destinationAttr","data-transitioning-destination"),ho("stateAttr","data-transitioning-state"),co("initialState"),fi("onTransition"),fi("onFinish"),so("routes",qt(ct.value,qt(ct.value,Ut([po("transition",[co("property"),co("transitionClass")])]))))],Pd=Qo({fields:Ld,name:"transitioning",active:zd,apis:jd,extra:{createRoutes:function(n){var o={};return M.each(n,function(n,e){var t=e.split("<->");o[t[0]]=Dt(t[1],n),o[t[1]]=Dt(t[0],n)}),o},createBistate:function(n,e,t){return At([{key:n,value:Dt(e,t)},{key:e,value:Dt(n,t)}])},createTristate:function(n,e,t,o){return At([{key:n,value:At([{key:e,value:o},{key:t,value:o}])},{key:e,value:At([{key:n,value:o},{key:t,value:o}])},{key:t,value:At([{key:n,value:o},{key:e,value:o}])}])}}}),Wd=Fi.resolve("scrollable"),Ud={register:function(n){xr.add(n,Wd)},deregister:function(n){xr.remove(n,Wd)},scrollable:O.constant(Wd)},Gd=function(n){return Et(n,"format").getOr(n.title)},$d=function(n,e,t,o,r){return{data:{value:n,text:e},type:"item",dom:{tag:"div",classes:r?[Fi.resolve("styles-item-is-menu")]:[]},toggling:{toggleOnExecute:!1,toggleClass:Fi.resolve("format-matches"),selected:t},itemBehaviours:Yo(r?[]:[Mi(n,function(n,e){(e?Ai.on:Ai.off)(n)})]),components:[{dom:{tag:"div",attributes:{style:o},innerHtml:e}}]}},qd=function(n,e,t,o){return{value:n,dom:{tag:"div"},components:[as.sketch({dom:{tag:"div",classes:[Fi.resolve("styles-collapser")]},components:o?[{dom:{tag:"span",classes:[Fi.resolve("styles-collapse-icon")]}},id(n)]:[id(n)],action:function(n){if(o){var e=t().get(n);Rd.collapseMenu(e)}}}),{dom:{tag:"div",classes:[Fi.resolve("styles-menu-items-container")]},components:[kd.parts().items({})],behaviours:Yo([Uf("adhoc-scrollable-menu",[Do(function(n,e){qi.set(n.element(),"overflow-y","auto"),qi.set(n.element(),"-webkit-overflow-scrolling","touch"),Ud.register(n.element())}),Ao(function(n){qi.remove(n.element(),"overflow-y"),qi.remove(n.element(),"-webkit-overflow-scrolling"),Ud.deregister(n.element())})])])}],items:e,menuBehaviours:Yo([Pd.config({initialState:"after",routes:Pd.createTristate("before","current","after",{transition:{property:"transform",transitionClass:"transitioning"}})})])}},_d=function(o){var r,i,n,e,t,u=(r=o.formats,i=function(){return a},n=qd("Styles",[].concat(wn.map(r.items,function(n){return $d(Gd(n),n.title,n.isSelected(),n.getPreview(),Bt(r.expansions,Gd(n)))})),i,!1),e=M.map(r.menus,function(n,e){var t=wn.map(n,function(n){return $d(Gd(n),n.title,n.isSelected!==undefined&&n.isSelected(),n.getPreview!==undefined?n.getPreview():"",Bt(r.expansions,Gd(n)))});return qd(e,t,i,!0)}),t=D.deepMerge(e,Dt("styles",n)),{tmenu:Rd.tieredData("styles",t,r.expansions)}),a=cf(Rd.sketch({dom:{tag:"div",classes:[Fi.resolve("styles-menu")]},components:[],fakeFocus:!0,stayInDom:!0,onExecute:function(n,e){var t=Ps.getValue(e);o.handle(e,t.value)},onEscape:function(){},onOpenMenu:function(n,e){var t=qs(n.element());$s(e.element(),t),Pd.jumpTo(e,"current")},onOpenSubmenu:function(n,e,t){var o=qs(n.element()),r=uu(e.element(),'[role="menu"]').getOrDie("hacky"),i=n.getSystem().getByDom(r).getOrDie();$s(t.element(),o),Pd.progressTo(i,"before"),Pd.jumpTo(t,"after"),Pd.progressTo(t,"current")},onCollapseMenu:function(n,e,t){var o=uu(e.element(),'[role="menu"]').getOrDie("hacky"),r=n.getSystem().getByDom(o).getOrDie();Pd.progressTo(r,"after"),Pd.progressTo(t,"current")},navigateOnHover:!1,openImmediately:!0,data:u.tmenu,markers:{backgroundMenu:Fi.resolve("styles-background-menu"),menu:Fi.resolve("styles-menu"),selectedMenu:Fi.resolve("styles-selected-menu"),item:Fi.resolve("styles-item"),selectedItem:Fi.resolve("styles-selected-item")}}));return a.asSpec()},Kd=function(n){return Bt(n,"items")?(e=n,t=D.deepMerge(kt(e,["items"]),{menu:!0}),o=Xd(e.items),{item:t,menus:D.deepMerge(o.menus,Dt(e.title,o.items)),expansions:D.deepMerge(o.expansions,Dt(e.title,e.title))}):{item:n,menus:{},expansions:{}};var e,t,o},Xd=function(n){return wn.foldr(n,function(n,e){var t=Kd(e);return{menus:D.deepMerge(n.menus,t.menus),items:[t.item].concat(n.items),expansions:D.deepMerge(n.expansions,t.expansions)}},{menus:{},expansions:{},items:[]})},Yd={expand:Xd},Jd=function(a,n){var c=function(n){return function(){return a.formatter.match(n)}},s=function(n){return function(){return a.formatter.getCssText(n)}},e=Et(n,"style_formats").getOr(El),f=function(n){return wn.map(n,function(n){if(Bt(n,"items")){var e=f(n.items);return D.deepMerge((u=n,D.deepMerge(u,{isSelected:O.constant(!1),getPreview:O.constant("")})),{items:e})}return Bt(n,"format")?(i=n,D.deepMerge(i,{isSelected:c(i.format),getPreview:s(i.format)})):(o=hc((t=n).title),r=D.deepMerge(t,{format:o,isSelected:c(o),getPreview:s(o)}),a.formatter.register(o,r),r);var t,o,r,i,u})};return f(e)},Qd=function(t,n,o){var e,r,i,u=(e=t,i=(r=function(n){return wn.bind(n,function(n){return n.items!==undefined?0<r(n.items).length?[n]:[]:!Bt(n,"format")||e.formatter.canApply(n.format)?[n]:[]})})(n),Yd.expand(i));return _d({formats:u,handle:function(n,e){t.undoManager.transact(function(){Ai.isOn(n)?t.formatter.remove(e):t.formatter.apply(e)}),o()}})},Zd=["undo","bold","italic","link","image","bullist","styleselect"],nm=function(n){var e=n.replace(/\|/g," ").trim();return 0<e.length?e.split(/\s+/):[]},em=function(n){return wn.bind(n,function(n){return E.isArray(n)?em(n):nm(n)})},tm=function(n){var e=n.toolbar!==undefined?n.toolbar:Zd;return E.isArray(e)?em(e):nm(e)},om=function(o,r){var n=function(n){return function(){return ps.forToolbarCommand(r,n)}},e=function(n){return function(){return ps.forToolbarStateCommand(r,n)}},t=function(n,e,t){return function(){return ps.forToolbarStateAction(r,n,e,t)}},i=n("undo"),u=n("redo"),a=e("bold"),c=e("italic"),s=e("underline"),f=n("removeformat"),l=t("unlink","link",function(){r.execCommand("unlink",null,!1)}),d=t("unordered-list","ul",function(){r.execCommand("InsertUnorderedList",null,!1)}),m=t("ordered-list","ol",function(){r.execCommand("InsertOrderedList",null,!1)}),g=Jd(r,r.settings),p=function(){return Qd(r,g,function(){r.fire("scrollIntoView")})},h=function(n,e){return{isSupported:function(){return n.forall(function(n){return Bt(r.buttons,n)})},sketch:e}};return{undo:h(x.none(),i),redo:h(x.none(),u),bold:h(x.none(),a),italic:h(x.none(),c),underline:h(x.none(),s),removeformat:h(x.none(),f),link:h(x.none(),function(){return e=o,t=r,ps.forToolbarStateAction(t,"link","link",function(){var n=Ol(e,t);e.setContextToolbar(n),Wf(t,function(){e.focusToolbar()}),zf.query(t).each(function(n){t.selection.select(n.dom())})});var e,t}),unlink:h(x.none(),l),image:h(x.none(),function(){return Rf(r)}),bullist:h(x.some("bullist"),d),numlist:h(x.some("numlist"),m),fontsizeselect:h(x.none(),function(){return e=r,n={onChange:function(n){rf.apply(e,n)},getInitialValue:function(){return rf.get(e)}},Xs(o,"font-size",function(){return af(n)});var e,n}),forecolor:h(x.none(),function(){return Js(o,r)}),styleselect:h(x.none(),function(){return ps.forToolbar("style-formats",function(n){r.fire("toReading"),o.dropup().appear(p,Ai.on,n)},Yo([Ai.config({toggleClass:Fi.resolve("toolbar-button-selected"),toggleOnExecute:!1,aria:{mode:"pressed"}}),yi.config({channels:At([Ri(Wr.orientationChanged(),Ai.off),Ri(Wr.dropupDismissed(),Ai.off)])})]))})}},rm=function(n,t){var e=tm(n),o={};return wn.bind(e,function(n){var e=!Bt(o,n)&&Bt(t,n)&&t[n].isSupported()?[t[n].sketch()]:[];return o[n]=!0,e})},im=function(m,g){return function(n){if(m(n)){var e,t,o,r,i,u,a,c=ue.fromDom(n.target),s=function(){n.stopPropagation()},f=function(){n.preventDefault()},l=O.compose(f,s),d=(e=c,t=n.clientX,o=n.clientY,r=s,i=f,u=l,a=n,{target:O.constant(e),x:O.constant(t),y:O.constant(o),stop:r,prevent:i,kill:u,raw:O.constant(a)});g(d)}}},um=function(n,e,t,o,r){var i=im(t,o);return n.dom().addEventListener(e,i,r),{unbind:O.curry(am,n,e,i,r)}},am=function(n,e,t,o){n.dom().removeEventListener(e,t,o)},cm=function(n,e,t,o){return um(n,e,t,o,!1)},sm=function(n,e,t,o){return um(n,e,t,o,!0)},fm=O.constant(!0),lm=function(n,e,t){return cm(n,e,fm,t)},dm=function(n,e,t){return sm(n,e,fm,t)},mm=function(n){var e=n.matchMedia("(orientation: portrait)").matches;return{isPortrait:O.constant(e)}},gm=mm,pm=function(o,e){var n=ue.fromDom(o),r=null,t=lm(n,"orientationchange",function(){clearInterval(r);var n=mm(o);e.onChange(n),i(function(){e.onReady(n)})}),i=function(n){clearInterval(r);var e=o.innerHeight,t=0;r=setInterval(function(){e!==o.innerHeight?(clearInterval(r),n(x.some(o.innerHeight))):20<t&&(clearInterval(r),n(x.none())),t++},50)};return{onAdjustment:i,destroy:function(){t.unbind()}}},hm=function(n){var e=Ln.detect().os.isiOS(),t=mm(n).isPortrait();return e&&!t?n.screen.height:n.screen.width},vm=function(n){return n.raw().touches===undefined||1!==n.raw().touches.length?x.none():x.some(n.raw().touches[0])},ym=function(t){var o,r,i,u=Or(x.none()),a=(o=function(n){u.set(x.none()),t.triggerEvent(Xn(),n)},r=400,i=null,{cancel:function(){null!==i&&(clearTimeout(i),i=null)},schedule:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=arguments;i=setTimeout(function(){o.apply(null,t),i=null},r)}}),c=At([{key:B(),value:function(t){return vm(t).each(function(n){a.cancel();var e={x:O.constant(n.clientX),y:O.constant(n.clientY),target:t.target};a.schedule(t),u.set(x.some(e))}),x.none()}},{key:R(),value:function(n){return a.cancel(),vm(n).each(function(i){u.get().each(function(n){var e,t,o,r;e=i,t=n,o=Math.abs(e.clientX-t.x()),r=Math.abs(e.clientY-t.y()),(5<o||5<r)&&u.set(x.none())})}),x.none()}},{key:I(),value:function(e){return a.cancel(),u.get().filter(function(n){return je(n.target(),e.target())}).map(function(n){return t.triggerEvent(_n(),e)})}}]);return{fireIfReady:function(e,n){return Et(c,n).bind(function(n){return n(e)})}}},bm=function(t){var e=ym({triggerEvent:function(n,e){t.onTapContent(e)}});return{fireTouchstart:function(n){e.fireIfReady(n,"touchstart")},onTouchend:function(){return lm(t.body(),"touchend",function(n){e.fireIfReady(n,"touchend")})},onTouchmove:function(){return lm(t.body(),"touchmove",function(n){e.fireIfReady(n,"touchmove")})}}},wm=6<=Ln.detect().os.version.major,xm=function(o,e,t){var r=bm(o),i=qe.owner(e),u=function(n){return!je(n.start(),n.finish())||n.soffset()!==n.foffset()},n=function(){var n=o.doc().dom().hasFocus()&&o.getSelection().exists(u);t.getByDom(e).each(!0===(n||Hr(i).filter(function(n){return"input"===ve.name(n)}).exists(function(n){return n.dom().selectionStart!==n.dom().selectionEnd}))?Ai.on:Ai.off)},a=[lm(o.body(),"touchstart",function(n){o.onTouchContent(),r.fireTouchstart(n)}),r.onTouchmove(),r.onTouchend(),lm(e,"touchstart",function(n){o.onTouchToolstrip()}),o.onToReading(function(){Vr(o.body())}),o.onToEditing(O.noop),o.onScrollToCursor(function(n){n.preventDefault(),o.getCursorBox().each(function(n){var e=o.win(),t=n.top()>e.innerHeight||n.bottom()>e.innerHeight?n.bottom()-e.innerHeight+50:0;0!==t&&e.scrollTo(e.pageXOffset,e.pageYOffset+t)})})].concat(!0===wm?[]:[lm(ue.fromDom(o.win()),"blur",function(){t.getByDom(e).each(Ai.off)}),lm(i,"select",n),lm(o.doc(),"selectionchange",n)]);return{destroy:function(){wn.each(a,function(n){n.unbind()})}}},Tm=function(n,e){var t=parseInt(ar.get(n,e),10);return isNaN(t)?0:t},Sm=(kf=ve.isText,Cf="text",Of=function(n){return kf(n)?x.from(n.dom().nodeValue):x.none()},Ef=Ln.detect().browser,{get:function(n){if(!kf(n))throw new Error("Can only get "+Cf+" value of a "+Cf+" node");return Df(n).getOr("")},getOption:Df=Ef.isIE()&&10===Ef.version.major?function(n){try{return Of(n)}catch(e){return x.none()}}:Of,set:function(n,e){if(!kf(n))throw new Error("Can only set raw "+Cf+" value of a "+Cf+" node");n.dom().nodeValue=e}}),km=function(n){return Sm.getOption(n)},Cm=function(n){return"img"===ve.name(n)?1:km(n).fold(function(){return qe.children(n).length},function(n){return n.length})},Om=Cm,Em=st([{before:["element"]},{on:["element","offset"]},{after:["element"]}]),Dm={before:Em.before,on:Em.on,after:Em.after,cata:function(n,e,t,o){return n.fold(e,t,o)},getStart:function(n){return n.fold(O.identity,O.identity,O.identity)}},Am=st([{domRange:["rng"]},{relative:["startSitu","finishSitu"]},{exact:["start","soffset","finish","foffset"]}]),Mm=Ee.immutable("start","soffset","finish","foffset"),Bm={domRange:Am.domRange,relative:Am.relative,exact:Am.exact,exactFromRange:function(n){return Am.exact(n.start(),n.soffset(),n.finish(),n.foffset())},range:Mm,getWin:function(n){var e=n.match({domRange:function(n){return ue.fromDom(n.startContainer)},relative:function(n,e){return Dm.getStart(n)},exact:function(n,e,t,o){return n}});return qe.defaultView(e)}},Rm=function(n,e,t,o){var r=qe.owner(n).dom().createRange();return r.setStart(n.dom(),e),r.setEnd(t.dom(),o),r},Im=function(n,e,t,o){var r=Rm(n,e,t,o),i=je(n,t)&&e===o;return r.collapsed&&!i},Fm=function(n,e){n.selectNodeContents(e.dom())},Nm=function(n){n.deleteContents()},Vm=function(n){return{left:O.constant(n.left),top:O.constant(n.top),right:O.constant(n.right),bottom:O.constant(n.bottom),width:O.constant(n.width),height:O.constant(n.height)}},Hm={create:function(n){return n.document.createRange()},replaceWith:function(n,e){Nm(n),n.insertNode(e.dom())},selectNodeContents:function(n,e){var t=n.document.createRange();return Fm(t,e),t},selectNodeContentsUsing:Fm,relativeToNative:function(n,e,t){var o,r,i=n.document.createRange();return o=i,e.fold(function(n){o.setStartBefore(n.dom())},function(n,e){o.setStart(n.dom(),e)},function(n){o.setStartAfter(n.dom())}),r=i,t.fold(function(n){r.setEndBefore(n.dom())},function(n,e){r.setEnd(n.dom(),e)},function(n){r.setEndAfter(n.dom())}),i},exactToNative:function(n,e,t,o,r){var i=n.document.createRange();return i.setStart(e.dom(),t),i.setEnd(o.dom(),r),i},deleteContents:Nm,cloneFragment:function(n){var e=n.cloneContents();return ue.fromDom(e)},getFirstRect:function(n){var e=n.getClientRects(),t=0<e.length?e[0]:n.getBoundingClientRect();return 0<t.width||0<t.height?x.some(t).map(Vm):x.none()},getBounds:function(n){var e=n.getBoundingClientRect();return 0<e.width||0<e.height?x.some(e).map(Vm):x.none()},isWithin:function(n,e){return e.compareBoundaryPoints(n.END_TO_START,n)<1&&-1<e.compareBoundaryPoints(n.START_TO_END,n)},toString:function(n){return n.toString()}},jm=st([{ltr:["start","soffset","finish","foffset"]},{rtl:["start","soffset","finish","foffset"]}]),zm=function(n,e,t){return e(ue.fromDom(t.startContainer),t.startOffset,ue.fromDom(t.endContainer),t.endOffset)},Lm=function(n,e){var r,t,o,i=(r=n,e.match({domRange:function(n){return{ltr:O.constant(n),rtl:x.none}},relative:function(n,e){return{ltr:G(function(){return Hm.relativeToNative(r,n,e)}),rtl:G(function(){return x.some(Hm.relativeToNative(r,e,n))})}},exact:function(n,e,t,o){return{ltr:G(function(){return Hm.exactToNative(r,n,e,t,o)}),rtl:G(function(){return x.some(Hm.exactToNative(r,t,o,n,e))})}}}));return(o=(t=i).ltr()).collapsed?t.rtl().filter(function(n){return!1===n.collapsed}).map(function(n){return jm.rtl(ue.fromDom(n.endContainer),n.endOffset,ue.fromDom(n.startContainer),n.startOffset)}).getOrThunk(function(){return zm(0,jm.ltr,o)}):zm(0,jm.ltr,o)},Pm=(jm.ltr,jm.rtl,Lm),Wm=function(i,n){return Lm(i,n).match({ltr:function(n,e,t,o){var r=i.document.createRange();return r.setStart(n.dom(),e),r.setEnd(t.dom(),o),r},rtl:function(n,e,t,o){var r=i.document.createRange();return r.setStart(t.dom(),o),r.setEnd(n.dom(),e),r}})},Um=(document.caretPositionFromPoint||document.caretRangeFromPoint,function(n,e){var t=ve.name(n);return"input"===t?Dm.after(n):wn.contains(["br","img"],t)?0===e?Dm.before(n):Dm.after(n):Dm.on(n,e)}),Gm=function(n,e,t,o){var r=Um(n,e),i=Um(t,o);return Bm.relative(r,i)},$m=Gm,qm=function(n,e){x.from(n.getSelection()).each(function(n){n.removeAllRanges(),n.addRange(e)})},_m=function(n,e,t,o,r){var i=Hm.exactToNative(n,e,t,o,r);qm(n,i)},Km=function(i,n){return Pm(i,n).match({ltr:function(n,e,t,o){_m(i,n,e,t,o)},rtl:function(n,e,t,o){var r=i.getSelection();r.setBaseAndExtent?r.setBaseAndExtent(n.dom(),e,t.dom(),o):r.extend?(r.collapse(n.dom(),e),r.extend(t.dom(),o)):_m(i,t,o,n,e)}})},Xm=function(n){var e=ue.fromDom(n.anchorNode),t=ue.fromDom(n.focusNode);return Im(e,n.anchorOffset,t,n.focusOffset)?x.some(Bm.range(ue.fromDom(n.anchorNode),n.anchorOffset,ue.fromDom(n.focusNode),n.focusOffset)):function(n){if(0<n.rangeCount){var e=n.getRangeAt(0),t=n.getRangeAt(n.rangeCount-1);return x.some(Bm.range(ue.fromDom(e.startContainer),e.startOffset,ue.fromDom(t.endContainer),t.endOffset))}return x.none()}(n)},Ym=function(n){return x.from(n.getSelection()).filter(function(n){return 0<n.rangeCount}).bind(Xm)},Jm=function(n,e,t,o,r){var i=$m(e,t,o,r);Km(n,i)},Qm=Ym,Zm=function(n){return Ym(n).map(function(n){return Bm.exact(n.start(),n.soffset(),n.finish(),n.foffset())})},ng=function(n){n.getSelection().removeAllRanges()},eg=function(n,e){var t=Wm(n,e);return Hm.getFirstRect(t)},tg=function(n){return{left:n.left,top:n.top,right:n.right,bottom:n.bottom,width:O.constant(2),height:n.height}},og=function(n){return{left:O.constant(n.left),top:O.constant(n.top),right:O.constant(n.right),bottom:O.constant(n.bottom),width:O.constant(n.width),height:O.constant(n.height)}},rg=function(n){var e=n.getSelection();return e!==undefined&&0<e.rangeCount?function(t){if(t.collapsed){var o=ue.fromDom(t.startContainer);return qe.parent(o).bind(function(n){var e=Bm.exact(o,t.startOffset,n,Om(n));return eg(t.startContainer.ownerDocument.defaultView,e).map(tg).map(wn.pure)}).getOr([])}return wn.map(t.getClientRects(),og)}(e.getRangeAt(0)):[]},ig=function(n){n.focus();var e=ue.fromDom(n.document.body);(Hr().exists(function(n){return wn.contains(["input","textarea"],ve.name(n))})?function(n){setTimeout(function(){n()},0)}:O.apply)(function(){Hr().each(Vr),Nr(e)})},ug="data-"+Fi.resolve("last-outer-height"),ag=function(n,e){ar.set(n,ug,e)},cg=function(n){return{top:O.constant(n.top()),bottom:O.constant(n.top()+n.height())}},sg=function(n,e){var t=Tm(e,ug),o=n.innerHeight;return o<t?x.some(t-o):x.none()},fg=function(n,u){var e=ue.fromDom(u.document.body),t=lm(ue.fromDom(n),"resize",function(){sg(n,e).each(function(i){var n,e;(n=u,e=rg(n),0<e.length?x.some(e[0]).map(cg):x.none()).each(function(n){var e,t,o,r=(e=u,o=i,(t=n).top()>e.innerHeight||t.bottom()>e.innerHeight?Math.min(o,t.bottom()-e.innerHeight+50):0);0!==r&&u.scrollTo(u.pageXOffset,u.pageYOffset+r)})}),ag(e,n.innerHeight)});return ag(e,n.innerHeight),{toEditing:function(){ig(u)},destroy:function(){t.unbind()}}},lg=function(n){return x.some(ue.fromDom(n.dom().contentWindow.document.body))},dg=function(n){return x.some(ue.fromDom(n.dom().contentWindow.document))},mg=function(n){return x.from(n.dom().contentWindow)},gg=function(n){return mg(n).bind(Qm)},pg=function(n){return n.getFrame()},hg=function(n,t){return function(e){return e[n].getOrThunk(function(){var n=pg(e);return function(){return t(n)}})()}},vg=function(n,e,t,o){return n[t].getOrThunk(function(){return function(n){return lm(e,o,n)}})},yg=function(n){return{left:O.constant(n.left),top:O.constant(n.top),right:O.constant(n.right),bottom:O.constant(n.bottom),width:O.constant(n.width),height:O.constant(n.height)}},bg={getBody:hg("getBody",lg),getDoc:hg("getDoc",dg),getWin:hg("getWin",mg),getSelection:hg("getSelection",gg),getFrame:pg,getActiveApi:function(a){var c=pg(a);return lg(c).bind(function(u){return dg(c).bind(function(i){return mg(c).map(function(r){var n=ue.fromDom(i.dom().documentElement),e=a.getCursorBox.getOrThunk(function(){return function(){return Zm(r).bind(function(n){return eg(r,n).orThunk(function(){return Qm(r).filter(function(n){return je(n.start(),n.finish())&&n.soffset()===n.foffset()}).bind(function(n){var e=n.start().dom().getBoundingClientRect();return 0<e.width||0<e.height?x.some(e).map(yg):x.none()})})})}}),t=a.setSelection.getOrThunk(function(){return function(n,e,t,o){Jm(r,n,e,t,o)}}),o=a.clearSelection.getOrThunk(function(){return function(){ng(r)}});return{body:O.constant(u),doc:O.constant(i),win:O.constant(r),html:O.constant(n),getSelection:O.curry(gg,c),setSelection:t,clearSelection:o,frame:O.constant(c),onKeyup:vg(a,i,"onKeyup","keyup"),onNodeChanged:vg(a,i,"onNodeChanged","selectionchange"),onDomChanged:a.onDomChanged,onScrollToCursor:a.onScrollToCursor,onScrollToElement:a.onScrollToElement,onToReading:a.onToReading,onToEditing:a.onToEditing,onToolbarScrollStart:a.onToolbarScrollStart,onTouchContent:a.onTouchContent,onTapContent:a.onTapContent,onTouchToolstrip:a.onTouchToolstrip,getCursorBox:e}})})})}},wg="data-ephox-mobile-fullscreen-style",xg="position:absolute!important;",Tg="top:0!important;left:0!important;margin:0!important;padding:0!important;width:100%!important;",Sg=Ln.detect().os.isAndroid(),kg=function(n,e){var t,o,r=function(o){return function(n){var e=ar.get(n,"style"),t=e===undefined?"no-styles":e.trim();t!==o&&(ar.set(n,wg,t),ar.set(n,"style",o))}},i=eu(n,"*"),u=wn.bind(i,function(n){return tu(n,"*")}),a=(t=e,(o=qi.get(t,"background-color"))!==undefined&&""!==o?"background-color:"+o+"!important":"background-color:rgb(255,255,255)!important;");wn.each(u,r("display:none!important;")),wn.each(i,r(xg+Tg+a)),r((!0===Sg?"":xg)+Tg+a)(n)},Cg=function(){var n=nu("["+wg+"]");wn.each(n,function(n){var e=ar.get(n,wg);"no-styles"!==e?ar.set(n,"style",e):ar.remove(n,"style"),ar.remove(n,wg)})},Og=function(){var e=iu("head").getOrDie(),n=iu('meta[name="viewport"]').getOrThunk(function(){var n=ue.fromTag("meta");return ar.set(n,"name","viewport"),Xe.append(e,n),n}),t=ar.get(n,"content");return{maximize:function(){ar.set(n,"content","width=device-width, initial-scale=1.0, user-scalable=no, maximum-scale=1.0")},restore:function(){t!==undefined&&null!==t&&0<t.length?ar.set(n,"content",t):ar.set(n,"content","user-scalable=yes")}}},Eg=function(e,n){var t=Og(),o=wl(),r=wl();return{enter:function(){n.hide(),xr.add(e.container,Fi.resolve("fullscreen-maximized")),xr.add(e.container,Fi.resolve("android-maximized")),t.maximize(),xr.add(e.body,Fi.resolve("android-scroll-reload")),o.set(fg(e.win,bg.getWin(e.editor).getOrDie("no"))),bg.getActiveApi(e.editor).each(function(n){kg(e.container,n.body()),r.set(xm(n,e.toolstrip,e.alloy))})},exit:function(){t.restore(),n.show(),xr.remove(e.container,Fi.resolve("fullscreen-maximized")),xr.remove(e.container,Fi.resolve("android-maximized")),Cg(),xr.remove(e.body,Fi.resolve("android-scroll-reload")),r.clear(),o.clear()}}},Dg=function(e,t){var o=null;return{cancel:function(){null!==o&&(clearTimeout(o),o=null)},throttle:function(){var n=arguments;null===o&&(o=setTimeout(function(){e.apply(null,n),n=o=null},t))}}},Ag=function(e,t){var o=null;return{cancel:function(){null!==o&&(clearTimeout(o),o=null)},throttle:function(){var n=arguments;null!==o&&clearTimeout(o),o=setTimeout(function(){e.apply(null,n),n=o=null},t)}}},Mg=function(n,e){var t=cf(_f.sketch({dom:ls('<div aria-hidden="true" class="${prefix}-mask-tap-icon"></div>'),containerBehaviours:Yo([Ai.config({toggleClass:Fi.resolve("mask-tap-icon-selected"),toggleOnExecute:!1})])})),o=Dg(n,200);return _f.sketch({dom:ls('<div class="${prefix}-disabled-mask"></div>'),components:[_f.sketch({dom:ls('<div class="${prefix}-content-container"></div>'),components:[as.sketch({dom:ls('<div class="${prefix}-content-tap-section"></div>'),components:[t.asSpec()],action:function(n){o.throttle()},buttonBehaviours:Yo([Ai.config({toggleClass:Fi.resolve("mask-tap-icon-selected")})])})]})]})},Bg=Gt([lo("editor",[co("getFrame"),mo("getBody"),mo("getDoc"),mo("getWin"),mo("getSelection"),mo("setSelection"),mo("clearSelection"),mo("cursorSaver"),mo("onKeyup"),mo("onNodeChanged"),mo("getCursorBox"),co("onDomChanged"),ho("onTouchContent",O.noop),ho("onTapContent",O.noop),ho("onTouchToolstrip",O.noop),ho("onScrollToCursor",O.constant({unbind:O.noop})),ho("onScrollToElement",O.constant({unbind:O.noop})),ho("onToEditing",O.constant({unbind:O.noop})),ho("onToReading",O.constant({unbind:O.noop})),ho("onToolbarScrollStart",O.identity)]),co("socket"),co("toolstrip"),co("dropup"),co("toolbar"),co("container"),co("alloy"),yo("win",function(n){return qe.owner(n.socket).dom().defaultView}),yo("body",function(n){return ue.fromDom(n.socket.dom().ownerDocument.body)}),ho("translate",O.identity),ho("setReadOnly",O.noop),ho("readOnlyOnInit",O.constant(!0))]),Rg=function(n){var e=to("Getting AndroidWebapp schema",Bg,n);qi.set(e.toolstrip,"width","100%");var t=ad(Mg(function(){e.setReadOnly(e.readOnlyOnInit()),r.enter()},e.translate));e.alloy.add(t);var o={show:function(){e.alloy.add(t)},hide:function(){e.alloy.remove(t)}};Xe.append(e.container,t.element());var r=Eg(e,o);return{setReadOnly:e.setReadOnly,refreshStructure:O.noop,enter:r.enter,exit:r.exit,destroy:O.noop}},Ig=O.constant([ho("shell",!0),ic("toolbarBehaviours",[Dd])]),Fg=O.constant([Bc({name:"groups",overrides:function(n){return{behaviours:Yo([Dd.config({})])}}})]),Ng=(O.constant("Toolbar"),us({name:"Toolbar",configFields:Ig(),partFields:Fg(),factory:function(e,n,t,o){var r=function(n){return e.shell()?x.some(n):zc(n,e,"groups")},i=e.shell()?{behaviours:[Dd.config({})],components:[]}:{behaviours:[],components:n};return{uid:e.uid(),dom:e.dom(),components:i.components,behaviours:D.deepMerge(Yo(i.behaviours),uc(e.toolbarBehaviours())),apis:{setGroups:function(n,e){r(n).fold(function(){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")},function(n){Dd.set(n,e)})}},domModification:{attributes:{role:"group"}}}},apis:{setGroups:function(n,e,t){n.setGroups(e,t)}}})),Vg=O.constant([co("items"),(Af=["itemClass"],lo("markers",wn.map(Af,co))),ic("tgroupBehaviours",[rc])]),Hg=O.constant([Rc({name:"items",unit:"item",overrides:function(n){return{domModification:{classes:[n.markers().itemClass()]}}}})]),jg=(O.constant("ToolbarGroup"),us({name:"ToolbarGroup",configFields:Vg(),partFields:Hg(),factory:function(n,e,t,o){return D.deepMerge({dom:{attributes:{role:"toolbar"}}},{uid:n.uid(),dom:n.dom(),components:e,behaviours:D.deepMerge(Yo([rc.config({mode:"flow",selector:"."+n.markers().itemClass()})]),uc(n.tgroupBehaviours())),"debug.sketcher":t["debug.sketcher"]})}})),zg="data-"+Fi.resolve("horizontal-scroll"),Lg=function(n){return 0<n.dom().scrollTop||function(n){n.dom().scrollTop=1;var e=0!==n.dom().scrollTop;return n.dom().scrollTop=0,e}(n)},Pg=function(n){return 0<n.dom().scrollLeft||function(n){n.dom().scrollLeft=1;var e=0!==n.dom().scrollLeft;return n.dom().scrollLeft=0,e}(n)},Wg=function(n){return"true"===ar.get(n,zg)?Pg:Lg},Ug={exclusive:function(n,e){return lm(n,"touchmove",function(n){cu(n.target(),e).filter(Wg).fold(function(){n.raw().preventDefault()},O.noop)})},markAsHorizontal:function(n){ar.set(n,zg,"true")}};function Gg(){var e=function(n){var e=!0===n.scrollable?"${prefix}-toolbar-scrollable-group":"";return{dom:ls('<div aria-label="'+n.label+'" class="${prefix}-toolbar-group '+e+'"></div>'),tgroupBehaviours:Yo([Uf("adhoc-scrollable-toolbar",!0===n.scrollable?[Mo(function(n,e){qi.set(n.element(),"overflow-x","auto"),Ug.markAsHorizontal(n.element()),Ud.register(n.element())})]:[])]),components:[_f.sketch({components:[jg.parts().items({})]})],markers:{itemClass:Fi.resolve("toolbar-group-item")},items:n.items}},t=ad(Ng.sketch({dom:ls('<div class="${prefix}-toolbar"></div>'),components:[Ng.parts().groups({})],toolbarBehaviours:Yo([Ai.config({toggleClass:Fi.resolve("context-toolbar"),toggleOnExecute:!1,aria:{mode:"none"}}),rc.config({mode:"cyclic"})]),shell:!0})),n=ad(_f.sketch({dom:{classes:[Fi.resolve("toolstrip")]},components:[cd(t)],containerBehaviours:Yo([Ai.config({toggleClass:Fi.resolve("android-selection-context-toolbar"),toggleOnExecute:!1})])})),o=function(){Ng.setGroups(t,r.get()),Ai.off(t)},r=Or([]);return{wrapper:O.constant(n),toolbar:O.constant(t),createGroups:function(n){return wn.map(n,O.compose(jg.sketch,e))},setGroups:function(n){r.set(n),o()},setContextToolbar:function(n){Ai.on(t),Ng.setGroups(t,n)},restoreToolbar:function(){Ai.isOn(t)&&o()},refresh:function(){},focus:function(){rc.focusIn(t)}}}var $g=function(n,e){Dd.append(n,cd(e))},qg=function(n,e){Dd.remove(n,e)},_g=function(n){return ad(as.sketch({dom:ls('<div class="${prefix}-mask-edit-icon ${prefix}-icon"></div>'),action:function(){n.run(function(n){n.setReadOnly(!1)})}}))},Kg=function(){return ad(_f.sketch({dom:ls('<div class="${prefix}-editor-socket"></div>'),components:[],containerBehaviours:Yo([Dd.config({})])}))},Xg=function(n,e,t,o){(!0===t?Cr.toAlpha:Cr.toOmega)(o),(t?$g:qg)(n,e)},Yg=function(e,n){return n.getAnimationRoot().fold(function(){return e.element()},function(n){return n(e)})},Jg=function(n){return n.dimension().property()},Qg=function(n,e){return n.dimension().getDimension()(e)},Zg=function(n,e){var t=Yg(n,e);Jl(t,[e.shrinkingClass(),e.growingClass()])},np=function(n,e){xr.remove(n.element(),e.openClass()),xr.add(n.element(),e.closedClass()),qi.set(n.element(),Jg(e),"0px"),qi.reflow(n.element())},ep=function(n,e){xr.remove(n.element(),e.closedClass()),xr.add(n.element(),e.openClass()),qi.remove(n.element(),Jg(e))},tp=function(n,e,t){t.setCollapsed(),qi.set(n.element(),Jg(e),Qg(e,n.element())),qi.reflow(n.element());var o=Yg(n,e);xr.add(o,e.shrinkingClass()),np(n,e),e.onStartShrink()(n)},op=function(n,e,t){var o=function(n,e){ep(n,e);var t=Qg(e,n.element());return np(n,e),t}(n,e),r=Yg(n,e);xr.add(r,e.growingClass()),ep(n,e),qi.set(n.element(),Jg(e),o),t.setExpanded(),e.onStartGrow()(n)},rp=function(n,e,t){var o=Yg(n,e);return!0===xr.has(o,e.growingClass())},ip=function(n,e,t){var o=Yg(n,e);return!0===xr.has(o,e.shrinkingClass())},up=Object.freeze({grow:function(n,e,t){t.isExpanded()||op(n,e,t)},shrink:function(n,e,t){t.isExpanded()&&tp(n,e,t)},immediateShrink:function(n,e,t){var o,r;t.isExpanded()&&(o=n,r=e,t.setCollapsed(),qi.set(o.element(),Jg(r),Qg(r,o.element())),qi.reflow(o.element()),Zg(o,r),np(o,r),r.onStartShrink()(o),r.onShrunk()(o))},hasGrown:function(n,e,t){return t.isExpanded()},hasShrunk:function(n,e,t){return t.isCollapsed()},isGrowing:rp,isShrinking:ip,isTransitioning:function(n,e,t){return!0===rp(n,e)||!0===ip(n,e)},toggleGrow:function(n,e,t){(t.isExpanded()?tp:op)(n,e,t)},disableTransitions:Zg}),ap=Object.freeze({exhibit:function(n,e){var t=e.expanded();return Vo(t?{classes:[e.openClass()],styles:{}}:{classes:[e.closedClass()],styles:Dt(e.dimension().property(),"0px")})},events:function(t,o){return xo([So(W(),function(n,e){e.event().raw().propertyName===t.dimension().property()&&(Zg(n,t),o.isExpanded()&&qi.remove(n.element(),t.dimension().property()),(o.isExpanded()?t.onGrown():t.onShrunk())(n,e))})])}}),cp=[co("closedClass"),co("openClass"),co("shrinkingClass"),co("growingClass"),mo("getAnimationRoot"),fi("onShrunk"),fi("onStartShrink"),fi("onGrown"),fi("onStartGrow"),ho("expanded",!1),so("dimension",io("property",{width:[gi("property","width"),gi("getDimension",function(n){return qs(n)+"px"})],height:[gi("property","height"),gi("getDimension",function(n){return Ji(n)+"px"})]}))],sp=Object.freeze({init:function(n){var e=Or(n.expanded());return _o({isExpanded:function(){return!0===e.get()},isCollapsed:function(){return!1===e.get()},setCollapsed:O.curry(e.set,!1),setExpanded:O.curry(e.set,!0),readState:function(){return"expanded: "+e.get()}})}}),fp=Qo({fields:cp,name:"sliding",active:ap,apis:up,state:sp}),lp=function(e,t){var o=ad(_f.sketch({dom:{tag:"div",classes:Fi.resolve("dropup")},components:[],containerBehaviours:Yo([Dd.config({}),fp.config({closedClass:Fi.resolve("dropup-closed"),openClass:Fi.resolve("dropup-open"),shrinkingClass:Fi.resolve("dropup-shrinking"),growingClass:Fi.resolve("dropup-growing"),dimension:{property:"height"},onShrunk:function(n){e(),t(),Dd.set(n,[])},onGrown:function(n){e(),t()}}),Bi(function(n,e){r(O.noop)})])})),r=function(n){window.requestAnimationFrame(function(){n(),fp.shrink(o)})};return{appear:function(n,e,t){!0===fp.hasShrunk(o)&&!1===fp.isTransitioning(o)&&window.requestAnimationFrame(function(){e(t),Dd.set(o,[n()]),fp.grow(o)})},disappear:r,component:O.constant(o),element:o.element}},dp=Ln.detect().browser.isFirefox(),mp=Ut([fo("triggerEvent"),fo("broadcastEvent"),ho("stopBackspace",!0)]),gp=function(e,n){var t,o,r,i,u=to("Getting GUI events settings",mp,n),a=Ln.detect().deviceType.isTouch()?["touchstart","touchmove","touchend","gesturestart"]:["mousedown","mouseup","mouseover","mousemove","mouseout","click"],c=ym(u),s=wn.map(a.concat(["selectstart","input","contextmenu","change","transitionend","dragstart","dragover","drop"]),function(n){return lm(e,n,function(e){c.fireIfReady(e,n).each(function(n){n&&e.kill()}),u.triggerEvent(n,e)&&e.kill()})}),f=lm(e,"keydown",function(n){var e;u.triggerEvent("keydown",n)?n.kill():!0!==u.stopBackspace||(e=n).raw().which!==su.BACKSPACE()[0]||wn.contains(["input","textarea"],ve.name(e.target()))||n.prevent()}),l=(t=e,o=function(n){u.triggerEvent("focusin",n)&&n.kill()},dp?dm(t,"focus",o):lm(t,"focusin",o)),d=(r=e,i=function(n){u.triggerEvent("focusout",n)&&n.kill(),setTimeout(function(){u.triggerEvent(Un(),n)},0)},dp?dm(r,"blur",i):lm(r,"focusout",i)),m=qe.defaultView(e),g=lm(m,"scroll",function(n){u.broadcastEvent(Jn(),n)&&n.kill()});return{unbind:function(){wn.each(s,function(n){n.unbind()}),f.unbind(),l.unbind(),d.unbind(),g.unbind()}}},pp=function(n,e){var t=Et(n,"target").map(function(n){return n()}).getOr(e);return Or(t)},hp=st([{stopped:[]},{resume:["element"]},{complete:[]}]),vp=function(n,o,e,t,r,i){var u,a,c,s,f=n(o,t),l=(u=e,a=r,c=Or(!1),s=Or(!1),{stop:function(){c.set(!0)},cut:function(){s.set(!0)},isStopped:c.get,isCut:s.get,event:O.constant(u),setSource:a.set,getSource:a.get});return f.fold(function(){return i.logEventNoHandlers(o,t),hp.complete()},function(e){var t=e.descHandler();return Wl(t)(l),l.isStopped()?(i.logEventStopped(o,e.element(),t.purpose()),hp.stopped()):l.isCut()?(i.logEventCut(o,e.element(),t.purpose()),hp.complete()):qe.parent(e.element()).fold(function(){return i.logNoParent(o,e.element(),t.purpose()),hp.complete()},function(n){return i.logEventResponse(o,e.element(),t.purpose()),hp.resume(n)})})},yp=function(e,t,o,n,r,i){return vp(e,t,o,n,r,i).fold(function(){return!0},function(n){return yp(e,t,o,n,r,i)},function(){return!1})},bp=function(n,e,t){var o,r,i=(o=e,r=Or(!1),{stop:function(){r.set(!0)},cut:O.noop,isStopped:r.get,isCut:O.constant(!1),event:O.constant(o),setTarget:O.die("Cannot set target of a broadcasted event"),getTarget:O.die("Cannot get target of a broadcasted event")});return wn.each(n,function(n){var e=n.descHandler();Wl(e)(i)}),i.isStopped()},wp=function(n,e,t,o,r){var i=pp(t,o);return yp(n,e,t,o,i,r)},xp=function(n,e,t){return Br.closest(n,function(n){return e(n).isSome()},t).bind(e)},Tp=Ee.immutable("element","descHandler"),Sp=function(n,e){return{id:O.constant(n),descHandler:O.constant(e)}};function kp(){var i={};return{registerId:function(o,r,n){M.each(n,function(n,e){var t=i[e]!==undefined?i[e]:{};t[r]=Pl(n,o),i[e]=t})},unregisterId:function(t){M.each(i,function(n,e){n.hasOwnProperty(t)&&delete n[t]})},filterByType:function(n){return Et(i,n).map(function(n){return M.mapToArray(n,function(n,e){return Sp(e,n)})}).getOr([])},find:function(n,e,t){var r=Ct(e)(i);return xp(t,function(n){return t=r,Qc(o=n).fold(function(){return x.none()},function(n){var e=Ct(n);return t.bind(e).map(function(n){return Tp(o,n)})});var t,o},n)}}}function Cp(){var o=kp(),r={},i=function(o){var n=o.element();return Qc(n).fold(function(){return n="uid-",e=o.element(),t=hc(Yc+n),ar.set(e,Jc,t),t;var n,e,t},function(n){return n})},u=function(n){Qc(n.element()).each(function(n){r[n]=undefined,o.unregisterId(n)})};return{find:function(n,e,t){return o.find(n,e,t)},filter:function(n){return o.filterByType(n)},register:function(n){var e=i(n);Bt(r,e)&&function(n,e){var t=r[e];if(t!==n)throw new Error('The tagId "'+e+'" is already used by: '+Yr(t.element())+"\nCannot use it for: "+Yr(n.element())+"\nThe conflicting element is"+(we.inBody(t.element())?" ":" not ")+"already in the DOM");u(n)}(n,e);var t=[n];o.registerId(t,e,n.events()),r[e]=n},unregister:u,getById:function(n){return Ct(n)(r)}}}var Op=function(t){var o=function(e){return qe.parent(t.element()).fold(function(){return!0},function(n){return je(e,n)})},r=Cp(),s=function(n,e){return r.find(o,n,e)},n=gp(t.element(),{triggerEvent:function(u,a){return ri(u,a.target(),function(n){return e=s,t=u,r=n,i=(o=a).target(),wp(e,t,o,i,r);var e,t,o,r,i})},broadcastEvent:function(n,e){var t=r.filter(n);return bp(t,e)}}),i=Ml({debugInfo:O.constant("real"),triggerEvent:function(e,t,o){ri(e,t,function(n){wp(s,e,o,t,n)})},triggerFocus:function(a,c){Qc(a).fold(function(){Nr(a)},function(n){ri(Wn(),a,function(n){var e,t,o,r,i,u;e=s,t=Wn(),o={originator:O.constant(c),target:O.constant(a)},i=n,u=pp(o,r=a),vp(e,t,o,r,u,i)})})},triggerEscape:function(n,e){i.triggerEvent("keydown",n.element(),e.event())},getByUid:function(n){return m(n)},getByDom:function(n){return g(n)},build:ad,addToGui:function(n){a(n)},removeFromGui:function(n){c(n)},addToWorld:function(n){e(n)},removeFromWorld:function(n){u(n)},broadcast:function(n){l(n)},broadcastOn:function(n,e){d(n,e)},isConnected:O.constant(!0)}),e=function(n){n.connect(i),ve.isText(n.element())||(r.register(n),wn.each(n.components(),e),i.triggerEvent(Yn(),n.element(),{target:O.constant(n.element())}))},u=function(n){ve.isText(n.element())||(wn.each(n.components(),u),r.unregister(n)),n.disconnect()},a=function(n){tt(t,n)},c=function(n){it(n)},f=function(t){var n=r.filter(Gn());wn.each(n,function(n){var e=n.descHandler();Wl(e)(t)})},l=function(n){f({universal:O.constant(!0),data:O.constant(n)})},d=function(n,e){f({universal:O.constant(!1),channels:O.constant(n),data:O.constant(e)})},m=function(n){return r.getById(n).fold(function(){return ct.error(new Error('Could not find component with uid: "'+n+'" in system.'))},ct.value)},g=function(n){var e=Qc(n).getOr("not found");return m(e)};return e(t),{root:O.constant(t),element:t.element,destroy:function(){n.unbind(),Ze.remove(t.element())},add:a,remove:c,getByUid:m,getByDom:g,addToWorld:e,removeFromWorld:u,broadcast:l,broadcastOn:d}},Ep=O.constant(Fi.resolve("readonly-mode")),Dp=O.constant(Fi.resolve("edit-mode"));function Ap(n){var e=ad(_f.sketch({dom:{classes:[Fi.resolve("outer-container")].concat(n.classes)},containerBehaviours:Yo([Cr.config({alpha:Ep(),omega:Dp()})])}));return Op(e)}var Mp=function(n,e){var t=ue.fromTag("input");qi.setAll(t,{opacity:"0",position:"absolute",top:"-1000px",left:"-1000px"}),Xe.append(n,t),Nr(t),e(t),Ze.remove(t)},Bp=function(n){var e=n.getSelection();if(0<e.rangeCount){var t=e.getRangeAt(0),o=n.document.createRange();o.setStart(t.startContainer,t.startOffset),o.setEnd(t.endContainer,t.endOffset),e.removeAllRanges(),e.addRange(o)}},Rp=function(n,e){Hr().each(function(n){je(n,e)||Vr(n)}),n.focus(),Nr(ue.fromDom(n.document.body)),Bp(n)},Ip={stubborn:function(n,e,t,o){var r=function(){Rp(e,o)},i=lm(t,"keydown",function(n){wn.contains(["input","textarea"],ve.name(n.target()))||r()});return{toReading:function(){Mp(n,Vr)},toEditing:r,onToolbarTouch:function(){},destroy:function(){i.unbind()}}},timid:function(n,e,t,o){var r=function(){Vr(o)};return{toReading:function(){r()},toEditing:function(){Rp(e,o)},onToolbarTouch:function(){r()},destroy:O.noop}}},Fp=function(t,o,r,i,n){var u=function(){o.run(function(n){n.refreshSelection()})},e=function(n,e){var t=n-i.dom().scrollTop;o.run(function(n){n.scrollIntoView(t,t+e)})},a=function(){o.run(function(n){n.clearSelection()})},c=function(){t.getCursorBox().each(function(n){e(n.top(),n.height())}),o.run(function(n){n.syncHeight()})},s=bm(t),f=Ag(c,300),l=[t.onKeyup(function(){a(),f.throttle()}),t.onNodeChanged(u),t.onDomChanged(f.throttle),t.onDomChanged(u),t.onScrollToCursor(function(n){n.preventDefault(),f.throttle()}),t.onScrollToElement(function(n){n.element(),e(o,i)}),t.onToEditing(function(){o.run(function(n){n.toEditing()})}),t.onToReading(function(){o.run(function(n){n.toReading()})}),lm(t.doc(),"touchend",function(n){je(t.html(),n.target())||je(t.body(),n.target())}),lm(r,"transitionend",function(n){var e;"height"===n.raw().propertyName&&(e=Ji(r),o.run(function(n){n.setViewportOffset(e)}),u(),c())}),dm(r,"touchstart",function(n){var e;o.run(function(n){n.highlightSelection()}),e=n,o.run(function(n){n.onToolbarTouch(e)}),t.onTouchToolstrip()}),lm(t.body(),"touchstart",function(n){a(),t.onTouchContent(),s.fireTouchstart(n)}),s.onTouchmove(),s.onTouchend(),lm(t.body(),"click",function(n){n.kill()}),lm(r,"touchmove",function(){t.onToolbarScrollStart()})];return{destroy:function(){wn.each(l,function(n){n.unbind()})}}},Np=function(n){var t=x.none(),e=[],o=function(n){r()?u(n):e.push(n)},r=function(){return t.isSome()},i=function(n){wn.each(n,u)},u=function(e){t.each(function(n){setTimeout(function(){e(n)},0)})};return n(function(n){t=x.some(n),i(e),e=[]}),{get:o,map:function(t){return Np(function(e){o(function(n){e(t(n))})})},isReady:r}},Vp={nu:Np,pure:function(e){return Np(function(n){n(e)})}},Hp=function(t){return function(){var n=Array.prototype.slice.call(arguments),e=this;setTimeout(function(){t.apply(e,n)},0)}},jp=function(e){var n=function(n){e(Hp(n))};return{map:function(o){return jp(function(t){n(function(n){var e=o(n);t(e)})})},bind:function(t){return jp(function(e){n(function(n){t(n).get(e)})})},anonBind:function(t){return jp(function(e){n(function(n){t.get(e)})})},toLazy:function(){return Vp.nu(n)},get:n}},zp={nu:jp,pure:function(e){return jp(function(n){n(e)})}},Lp=function(n,e,t){return Math.abs(n-e)<=t?x.none():n<e?x.some(n+t):x.some(n-t)},Pp=function(){var s=null;return{animate:function(o,r,n,i,e,t){var u=!1,a=function(n){u=!0,e(n)};clearInterval(s);var c=function(n){clearInterval(s),a(n)};s=setInterval(function(){var t=o();Lp(t,r,n).fold(function(){clearInterval(s),a(r)},function(n){if(i(n,c),!u){var e=o();(e!==n||Math.abs(e-r)>Math.abs(t-r))&&(clearInterval(s),a(r))}})},t)}}},Wp=function(e,t){return Zr([{width:320,height:480,keyboard:{portrait:300,landscape:240}},{width:320,height:568,keyboard:{portrait:300,landscape:240}},{width:375,height:667,keyboard:{portrait:305,landscape:240}},{width:414,height:736,keyboard:{portrait:320,landscape:240}},{width:768,height:1024,keyboard:{portrait:320,landscape:400}},{width:1024,height:1366,keyboard:{portrait:380,landscape:460}}],function(n){return e<=n.width&&t<=n.height?x.some(n.keyboard):x.none()}).getOr({portrait:t/5,landscape:e/4})},Up=function(n){var e,t=gm(n).isPortrait(),o=Wp((e=n).screen.width,e.screen.height),r=t?o.portrait:o.landscape;return(t?n.screen.height:n.screen.width)-n.innerHeight>r?0:r},Gp=function(n,e){var t=qe.owner(n).dom().defaultView;return Ji(n)+Ji(e)-Up(t)},$p=Gp,qp=function(n,e,t){var o=Gp(e,t),r=Ji(e)+Ji(t)-o;qi.set(n,"padding-bottom",r+"px")},_p=st([{fixed:["element","property","offsetY"]},{scroller:["element","offsetY"]}]),Kp="data-"+Fi.resolve("position-y-fixed"),Xp="data-"+Fi.resolve("y-property"),Yp="data-"+Fi.resolve("scrolling"),Jp="data-"+Fi.resolve("last-window-height"),Qp=function(n){return Tm(n,Kp)},Zp=function(n,e){var t=ar.get(n,Xp);return _p.fixed(n,t,e)},nh=function(n,e){return _p.scroller(n,e)},eh=function(n){var e=Qp(n);return("true"===ar.get(n,Yp)?nh:Zp)(n,e)},th=function(n,e,t){var o=qe.owner(n).dom().defaultView.innerHeight;return ar.set(n,Jp,o+"px"),o-e-t},oh=function(n){var e=ou(n,"["+Kp+"]");return wn.map(e,eh)},rh=function(o,r,i,u){var n,e,t,a,c,s,f,l,d=qe.owner(o).dom().defaultView,m=(l=ar.get(f=i,"style"),qi.setAll(f,{position:"absolute",top:"0px"}),ar.set(f,Kp,"0px"),ar.set(f,Xp,"top"),{restore:function(){ar.set(f,"style",l||""),ar.remove(f,Kp),ar.remove(f,Xp)}}),g=Ji(i),p=Ji(u),h=th(o,g,p),v=(t=g,a=h,s=ar.get(c=o,"style"),Ud.register(c),qi.setAll(c,{position:"absolute",height:a+"px",width:"100%",top:t+"px"}),ar.set(c,Kp,t+"px"),ar.set(c,Yp,"true"),ar.set(c,Xp,"top"),{restore:function(){Ud.deregister(c),ar.set(c,"style",s||""),ar.remove(c,Kp),ar.remove(c,Yp),ar.remove(c,Xp)}}),y=(e=ar.get(n=u,"style"),qi.setAll(n,{position:"absolute",bottom:"0px"}),ar.set(n,Kp,"0px"),ar.set(n,Xp,"bottom"),{restore:function(){ar.set(n,"style",e||""),ar.remove(n,Kp),ar.remove(n,Xp)}}),b=!0,w=function(){var n=d.innerHeight;return Tm(o,Jp)<n},x=function(){if(b){var n=Ji(i),e=Ji(u),t=th(o,n,e);ar.set(o,Kp,n+"px"),qi.set(o,"height",t+"px"),qi.set(u,"bottom",-(n+t+e)+"px"),qp(r,o,u)}};return qp(r,o,u),{setViewportOffset:function(n){ar.set(o,Kp,n+"px"),x()},isExpanding:w,isShrinking:O.not(w),refresh:x,restore:function(){b=!1,m.restore(),v.restore(),y.restore()}}},ih=Qp,uh=Pp(),ah="data-"+Fi.resolve("last-scroll-top"),ch=function(n){var e=qi.getRaw(n,"top").getOr(0);return parseInt(e,10)},sh=function(n){return parseInt(n.dom().scrollTop,10)},fh=function(n,e){var t=e+ih(n)+"px";qi.set(n,"top",t)},lh=function(t,o,r){return zp.nu(function(n){var e=O.curry(sh,t);uh.animate(e,o,15,function(n){t.dom().scrollTop=n,qi.set(t,"top",ch(t)+15+"px")},function(){t.dom().scrollTop=o,qi.set(t,"top",r+"px"),n(o)},10)})},dh=function(r,i){return zp.nu(function(n){var e=O.curry(sh,r);ar.set(r,ah,e());var t=Math.abs(i-e()),o=Math.ceil(t/10);uh.animate(e,i,o,function(n,e){Tm(r,ah)!==r.dom().scrollTop?e(r.dom().scrollTop):(r.dom().scrollTop=n,ar.set(r,ah,n))},function(){r.dom().scrollTop=i,ar.set(r,ah,i),n(i)},10)})},mh=function(i,u){return zp.nu(function(n){var e=O.curry(ch,i),t=function(n){qi.set(i,"top",n+"px")},o=Math.abs(u-e()),r=Math.ceil(o/10);uh.animate(e,u,r,t,function(){t(u),n(u)},10)})},gh=function(e,t,o){var r=qe.owner(e).dom().defaultView;return zp.nu(function(n){fh(e,o),fh(t,o),r.scrollTo(0,o),n(o)})},ph=function(n,e,t,o,r){var i=$p(e,t),u=O.curry(Bp,n);i<o||i<r?dh(e,e.dom().scrollTop-i+r).get(u):o<0&&dh(e,e.dom().scrollTop+o).get(u)},hh=function(u,n){return n(function(o){var r=[],i=0;0===u.length?o([]):wn.each(u,function(n,e){var t;n.get((t=e,function(n){r[t]=n,++i>=u.length&&o(r)}))})})},vh=function(n){return hh(n,zp.nu)},yh=vh,bh=function(n,c){return n.fold(function(n,e,t){return o=n,r=e,u=c+(i=t),qi.set(o,r,u+"px"),zp.pure(i);var o,r,i,u},function(n,e){return t=n,r=c+(o=e),i=qi.getRaw(t,"top").getOr(o),u=r-parseInt(i,10),a=t.dom().scrollTop+u,lh(t,a,r);var t,o,r,i,u,a})},wh=function(n,e){var t=oh(n),o=wn.map(t,function(n){return bh(n,e)});return yh(o)},xh=function(e,t,n,o,r,i){var u,a,c=(u=function(n){return gh(e,t,n)},a=Or(Vp.pure({})),{start:function(e){var n=Vp.nu(function(n){return u(e).get(n)});a.set(n)},idle:function(n){a.get().get(function(){n()})}}),s=Ag(function(){c.idle(function(){wh(n,o.pageYOffset).get(function(){var n;(n=rg(i),x.from(n[0]).bind(function(n){var e=n.top()-t.dom().scrollTop;return e>o.innerHeight+5||e<-5?x.some({top:O.constant(e),bottom:O.constant(e+n.height())}):x.none()})).each(function(n){t.dom().scrollTop=t.dom().scrollTop+n.top()}),c.start(0),r.refresh()})})},1e3),f=lm(ue.fromDom(o),"scroll",function(){o.pageYOffset<0||s.throttle()});return wh(n,o.pageYOffset).get(O.identity),{unbind:f.unbind}},Th=function(n){var t=n.cWin(),e=n.ceBody(),o=n.socket(),r=n.toolstrip(),i=n.toolbar(),u=n.contentElement(),a=n.keyboardType(),c=n.outerWindow(),s=n.dropup(),f=rh(o,e,r,s),l=a(n.outerBody(),t,we.body(),u,r,i),d=pm(c,{onChange:O.noop,onReady:f.refresh});d.onAdjustment(function(){f.refresh()});var m=lm(ue.fromDom(c),"resize",function(){f.isExpanding()&&f.refresh()}),g=xh(r,o,n.outerBody(),c,f,t),p=function(t,e){var n=t.document,o=ue.fromTag("div");xr.add(o,Fi.resolve("unfocused-selections")),Xe.append(ue.fromDom(n.documentElement),o);var r=lm(o,"touchstart",function(n){n.prevent(),Rp(t,e),u()}),i=function(n){var e=ue.fromTag("span");return Yl(e,[Fi.resolve("layer-editor"),Fi.resolve("unfocused-selection")]),qi.setAll(e,{left:n.left()+"px",top:n.top()+"px",width:n.width()+"px",height:n.height()+"px"}),e},u=function(){Ze.empty(o)};return{update:function(){u();var n=rg(t),e=wn.map(n,i);Je(o,e)},isActive:function(){return 0<qe.children(o).length},destroy:function(){r.unbind(),Ze.remove(o)},clear:u}}(t,u),h=function(){p.clear()};return{toEditing:function(){l.toEditing(),h()},toReading:function(){l.toReading()},onToolbarTouch:function(n){l.onToolbarTouch(n)},refreshSelection:function(){p.isActive()&&p.update()},clearSelection:h,highlightSelection:function(){p.update()},scrollIntoView:function(n,e){ph(t,o,s,n,e)},updateToolbarPadding:O.noop,setViewportOffset:function(n){f.setViewportOffset(n),mh(o,n).get(O.identity)},syncHeight:function(){qi.set(u,"height",u.dom().contentWindow.document.body.scrollHeight+"px")},refreshStructure:f.refresh,destroy:function(){f.restore(),d.destroy(),g.unbind(),m.unbind(),l.destroy(),p.destroy(),Mp(we.body(),Vr)}}},Sh=function(o,n){var r=Og(),i=xl(),u=xl(),a=wl(),c=wl();return{enter:function(){n.hide();var t=ue.fromDom(document);bg.getActiveApi(o.editor).each(function(n){i.set({socketHeight:qi.getRaw(o.socket,"height"),iframeHeight:qi.getRaw(n.frame(),"height"),outerScroll:document.body.scrollTop}),u.set({exclusives:Ug.exclusive(t,"."+Ud.scrollable())}),xr.add(o.container,Fi.resolve("fullscreen-maximized")),kg(o.container,n.body()),r.maximize(),qi.set(o.socket,"overflow","scroll"),qi.set(o.socket,"-webkit-overflow-scrolling","touch"),Nr(n.body());var e=Ee.immutableBag(["cWin","ceBody","socket","toolstrip","toolbar","dropup","contentElement","cursor","keyboardType","isScrolling","outerWindow","outerBody"],[]);a.set(Th(e({cWin:n.win(),ceBody:n.body(),socket:o.socket,toolstrip:o.toolstrip,toolbar:o.toolbar,dropup:o.dropup.element(),contentElement:n.frame(),cursor:O.noop,outerBody:o.body,outerWindow:o.win,keyboardType:Ip.stubborn,isScrolling:function(){return u.get().exists(function(n){return n.socket.isScrolling()})}}))),a.run(function(n){n.syncHeight()}),c.set(Fp(n,a,o.toolstrip,o.socket,o.dropup))})},refreshStructure:function(){a.run(function(n){n.refreshStructure()})},exit:function(){r.restore(),c.clear(),a.clear(),n.show(),i.on(function(n){n.socketHeight.each(function(n){qi.set(o.socket,"height",n)}),n.iframeHeight.each(function(n){qi.set(o.editor.getFrame(),"height",n)}),document.body.scrollTop=n.scrollTop}),i.clear(),u.on(function(n){n.exclusives.unbind()}),u.clear(),xr.remove(o.container,Fi.resolve("fullscreen-maximized")),Cg(),Ud.deregister(o.toolbar),qi.remove(o.socket,"overflow"),qi.remove(o.socket,"-webkit-overflow-scrolling"),Vr(o.editor.getFrame()),bg.getActiveApi(o.editor).each(function(n){n.clearSelection()})}}},kh=function(n){var e=to("Getting IosWebapp schema",Bg,n);qi.set(e.toolstrip,"width","100%"),qi.set(e.container,"position","relative");var t=ad(Mg(function(){e.setReadOnly(e.readOnlyOnInit()),o.enter()},e.translate));e.alloy.add(t);var o=Sh(e,{show:function(){e.alloy.add(t)},hide:function(){e.alloy.remove(t)}});return{setReadOnly:e.setReadOnly,refreshStructure:o.refreshStructure,enter:o.enter,exit:o.exit,destroy:O.noop}},Ch=tinymce.util.Tools.resolve("tinymce.EditorManager"),Oh=function(n){var e=Et(n.settings,"skin_url").fold(function(){return Ch.baseURL+"/skins/lightgray"},function(n){return n});return{content:e+"/content.mobile.min.css",ui:e+"/skin.mobile.min.css"}},Eh=function(n,e,t){n.system().broadcastOn([Wr.formatChanged()],{command:e,state:t})},Dh=function(o,n){var e=M.keys(n.formatter.get());wn.each(e,function(e){n.formatter.formatChanged(e,function(n){Eh(o,e,n)})}),wn.each(["ul","ol"],function(t){n.selection.selectorChanged(t,function(n,e){Eh(o,t,n)})})},Ah=(O.constant(["x-small","small","medium","large","x-large"]),function(n){var e=function(){n._skinLoaded=!0,n.fire("SkinLoaded")};return function(){n.initialized?e():n.on("init",e)}}),Mh=O.constant("toReading"),Bh=O.constant("toEditing");Lr.add("mobile",function(C){return{getNotificationManagerImpl:function(){return{open:O.identity,close:O.noop,reposition:O.noop,getArgs:O.identity}},renderUI:function(n){var e=Oh(C);0==(!1===C.settings.skin)?(C.contentCSS.push(e.content),zr.DOM.styleSheetLoader.load(e.ui,Ah(C))):Ah(C)();var t,o,r,i,u,a,c,s,f,l,d,m,g,p,h=function(){C.fire("scrollIntoView")},v=ue.fromTag("div"),y=Ln.detect().os.isAndroid()?(s=h,f=Ap({classes:[Fi.resolve("android-container")]}),l=Gg(),d=wl(),m=_g(d),g=Kg(),p=lp(O.noop,s),f.add(l.wrapper()),f.add(g),f.add(p.component()),{system:O.constant(f),element:f.element,init:function(n){d.set(Rg(n))},exit:function(){d.run(function(n){n.exit(),Dd.remove(g,m)})},setToolbarGroups:function(n){var e=l.createGroups(n);l.setGroups(e)},setContextToolbar:function(n){var e=l.createGroups(n);l.setContextToolbar(e)},focusToolbar:function(){l.focus()},restoreToolbar:function(){l.restoreToolbar()},updateMode:function(n){Xg(g,m,n,f.root())},socket:O.constant(g),dropup:O.constant(p)}):(t=h,o=Ap({classes:[Fi.resolve("ios-container")]}),r=Gg(),i=wl(),u=_g(i),a=Kg(),c=lp(function(){i.run(function(n){n.refreshStructure()})},t),o.add(r.wrapper()),o.add(a),o.add(c.component()),{system:O.constant(o),element:o.element,init:function(n){i.set(kh(n))},exit:function(){i.run(function(n){Dd.remove(a,u),n.exit()})},setToolbarGroups:function(n){var e=r.createGroups(n);r.setGroups(e)},setContextToolbar:function(n){var e=r.createGroups(n);r.setContextToolbar(e)},focusToolbar:function(){r.focus()},restoreToolbar:function(){r.restoreToolbar()},updateMode:function(n){Xg(a,u,n,o.root())},socket:O.constant(a),dropup:O.constant(c)}),b=ue.fromDom(n.targetNode);Xe.after(b,v),function(n,e){Xe.append(n,e.element());var t=qe.children(e.element());wn.each(t,function(n){e.getByDom(n).each(et)})}(v,y.system());var w=n.targetNode.ownerDocument.defaultView,x=pm(w,{onChange:function(){y.system().broadcastOn([Wr.orientationChanged()],{width:hm(w)})},onReady:O.noop}),T=function(n,e,t,o){!1===o&&C.selection.collapse();var r=S(n,e,t);y.setToolbarGroups(!0===o?r.readOnly:r.main),C.setMode(!0===o?"readonly":"design"),C.fire(!0===o?Mh():Bh()),y.updateMode(o)},S=function(n,e,t){var o=n.get(),r={readOnly:o.backToMask.concat(e.get()),main:o.backToMask.concat(t.get())};return r},k=function(n,e){return C.on(n,e),{unbind:function(){C.off(n)}}};return C.on("init",function(){y.init({editor:{getFrame:function(){return ue.fromDom(C.contentAreaContainer.querySelector("iframe"))},onDomChanged:function(){return{unbind:O.noop}},onToReading:function(n){return k(Mh(),n)},onToEditing:function(n){return k(Bh(),n)},onScrollToCursor:function(e){return C.on("scrollIntoView",function(n){e(n)}),{unbind:function(){C.off("scrollIntoView"),x.destroy()}}},onTouchToolstrip:function(){t()},onTouchContent:function(){var n,e=ue.fromDom(C.editorContainer.querySelector("."+Fi.resolve("toolbar")));(n=e,jr(n).bind(function(n){return y.system().getByDom(n).toOption()})).each(te),y.restoreToolbar(),t()},onTapContent:function(n){var e=n.target();"img"===ve.name(e)?(C.selection.select(e.dom()),n.kill()):"a"===ve.name(e)&&y.system().getByDom(ue.fromDom(C.editorContainer)).each(function(n){Cr.isAlpha(n)&&Pr(e.dom())})}},container:ue.fromDom(C.editorContainer),socket:ue.fromDom(C.contentAreaContainer),toolstrip:ue.fromDom(C.editorContainer.querySelector("."+Fi.resolve("toolstrip"))),toolbar:ue.fromDom(C.editorContainer.querySelector("."+Fi.resolve("toolbar"))),dropup:y.dropup(),alloy:y.system(),translate:O.noop,setReadOnly:function(n){T(c,a,u,n)},readOnlyOnInit:function(){return!1}});var t=function(){y.dropup().disappear(function(){y.system().broadcastOn([Wr.dropupDismissed()],{})})},n={label:"The first group",scrollable:!1,items:[ps.forToolbar("back",function(){C.selection.collapse(),y.exit()},{})]},e={label:"Back to read only",scrollable:!1,items:[ps.forToolbar("readonly-back",function(){T(c,a,u,!0)},{})]},o=om(y,C),r=rm(C.settings,o),i={label:"The extra group",scrollable:!1,items:[]},u=Or([{label:"the action group",scrollable:!0,items:r},i]),a=Or([{label:"The read only mode group",scrollable:!0,items:[]},i]),c=Or({backToMask:[n],backToReadOnly:[e]});Dh(y,C)}),{iframeContainer:y.socket().element().dom(),editorContainer:y.element().dom()}}}})}();