tinymce-plugin
Version:
tinymce-plugin
108 lines • 159 kB
JavaScript
/**
* tpTable (Enhancement 1.4v)
* The tinymce-plugins is used to set up the conversion table (Enhancement)
*
* https://github.com/Five-great/tinymce-plugins
*
* Copyright 2021, Five(Li Hailong) The Chengdu, China https://www.fivecc.cn/
*
* Licensed under MIT
*/
(function(Cd){function Q(x,D){D=D||{};xc(D);return Promise.resolve(x).then(function(B){return ub(B,D.filter,!0)}).then(Dd).then(C).then(function(B){D.bgcolor&&(B.style.backgroundColor=D.bgcolor);D.width&&(B.style.width=D.width+"px");D.height&&(B.style.height=D.height+"px");D.style&&Object.keys(D.style).forEach(function(v){B.style[v]=D.style[v]});return B}).then(function(B){return Ed(B,D.width||O.width(x),D.height||O.height(x))})}function xc(x){S.impl.options.imagePlaceholder="undefined"===typeof x.imagePlaceholder?
yc.imagePlaceholder:x.imagePlaceholder;S.impl.options.cacheBust="undefined"===typeof x.cacheBust?yc.cacheBust:x.cacheBust}function vb(x,D){return Q(x,D).then(O.makeImage).then(O.delay(100)).then(function(B){var v=document.createElement("canvas");v.width=D.width||O.width(x);v.height=D.height||O.height(x);if(D.bgcolor){var k=v.getContext("2d");k.fillStyle=D.bgcolor;k.fillRect(0,0,v.width,v.height)}v.getContext("2d").drawImage(B,0,0);return v})}function ub(x,D,B){function v(A,E,J){A=A.childNodes;return 0===
A.length?Promise.resolve(E):function(K,pa,qa){var Na=Promise.resolve();pa.forEach(function(ta){Na=Na.then(function(){return ub(ta,qa)}).then(function(Ca){Ca&&K.appendChild(Ca)})});return Na}(E,O.asArray(A),J).then(function(){return E})}function k(A,E){return E instanceof Element?Promise.resolve().then(function(){(function(J,K){function pa(qa,Na){O.asArray(qa).forEach(function(ta){Na.setProperty(ta,qa.getPropertyValue(ta),qa.getPropertyPriority(ta))})}J.cssText?K.cssText=J.cssText:pa(J,K)})(window.getComputedStyle(A),
E.style)}).then(function(){function J(K){var pa=window.getComputedStyle(A,K),qa=pa.getPropertyValue("content");if(""!==qa&&"none"!==qa){qa=O.uid();E.className=E.className+" "+qa;var Na=document.createElement("style");Na.appendChild(function(ta,Ca,Va){function zc(db){var R=db.getPropertyValue("content");return db.cssText+" content: "+R+";"}function Fd(db){return O.asArray(db).map(function(R){return R+": "+db.getPropertyValue(R)+(db.getPropertyPriority(R)?" !important":"")}).join("; ")+";"}ta="."+ta+
":"+Ca;Va=Va.cssText?zc(Va):Fd(Va);return document.createTextNode(ta+"{"+Va+"}")}(qa,K,pa));E.appendChild(Na)}}[":before",":after"].forEach(function(K){J(K)})}).then(function(){A instanceof HTMLTextAreaElement&&(E.innerHTML=A.value);A instanceof HTMLInputElement&&E.setAttribute("value",A.value)}).then(function(){E instanceof SVGElement&&(E.setAttribute("xmlns","http://www.w3.org/2000/svg"),E instanceof SVGRectElement&&["width","height"].forEach(function(J){var K=E.getAttribute(J);K&&E.style.setProperty(J,
K)}))}).then(function(){return E}):E}return B||!D||D(x)?Promise.resolve(x).then(function(A){return A instanceof HTMLCanvasElement?O.makeImage(A.toDataURL()):A.cloneNode(!1)}).then(function(A){return v(x,A,D)}).then(function(A){return k(x,A)}):Promise.resolve()}function Dd(x){return ca.resolveAll().then(function(D){var B=document.createElement("style");x.appendChild(B);B.appendChild(document.createTextNode(D));return x})}function C(x){return Oa.inlineAll(x).then(function(){return x})}function Ed(x,
D,B){return Promise.resolve(x).then(function(v){v.setAttribute("xmlns","http://www.w3.org/1999/xhtml");return(new XMLSerializer).serializeToString(v)}).then(O.escapeXhtml).then(function(v){return'<foreignObject x="0" y="0" width="100%" height="100%">'+v+"</foreignObject>"}).then(function(v){return'<svg xmlns="http://www.w3.org/2000/svg" width="'+D+'" height="'+B+'">'+v+"</svg>"}).then(function(v){return"data:image/svg+xml;charset=utf-8,"+v})}var O=function(){function x(v){return(v=/\.([^\.\/]*?)$/g.exec(v))?
v[1]:""}function D(v){return new Promise(function(k){for(var A=window.atob(v.toDataURL().split(",")[1]),E=A.length,J=new Uint8Array(E),K=0;K<E;K++)J[K]=A.charCodeAt(K);k(new Blob([J],{type:"image/png"}))})}function B(v,k){v=window.getComputedStyle(v).getPropertyValue(k);return parseFloat(v.replace("px",""))}return{escape:function(v){return v.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1")},parseExtension:x,mimeType:function(v){return{woff:"application/font-woff",woff2:"application/font-woff",ttf:"application/font-truetype",
eot:"application/vnd.ms-fontobject",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml"}[x(v).toLowerCase()]||""},dataAsUrl:function(v,k){return"data:"+k+";base64,"+v},isDataUrl:function(v){return-1!==v.search(/^(data:)/)},canvasToBlob:function(v){return v.toBlob?new Promise(function(k){v.toBlob(k)}):D(v)},resolveUrl:function(v,k){var A=document.implementation.createHTMLDocument(),E=A.createElement("base");A.head.appendChild(E);var J=A.createElement("a");
A.body.appendChild(J);E.href=k;J.href=v;return J.href},getAndEncode:function(v){S.impl.options.cacheBust&&(v+=(/\?/.test(v)?"&":"?")+(new Date).getTime());return new Promise(function(k){var A=new XMLHttpRequest;A.onreadystatechange=function(){if(4===A.readyState)if(200!==A.status)E?k(E):(console.error("cannot fetch resource: "+v+", status: "+A.status),k(""));else{var K=new FileReader;K.onloadend=function(){var pa=K.result.split(/,/)[1];k(pa)};K.readAsDataURL(A.response)}};A.ontimeout=function(){E?
k(E):(console.error("timeout of 30000ms occured while fetching resource: "+v),k(""))};A.responseType="blob";A.timeout=3E4;A.open("GET",v,!0);A.send();var E;if(S.impl.options.imagePlaceholder){var J=S.impl.options.imagePlaceholder.split(/,/);J&&J[1]&&(E=J[1])}})},uid:function(){var v=0;return function(){return"u"+("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)+v++}}(),delay:function(v){return function(k){return new Promise(function(A){setTimeout(function(){A(k)},v)})}},asArray:function(v){for(var k=
[],A=v.length,E=0;E<A;E++)k.push(v[E]);return k},escapeXhtml:function(v){return v.replace(/#/g,"%23").replace(/\n/g,"%0A")},makeImage:function(v){return new Promise(function(k,A){var E=new Image;E.onload=function(){k(E)};E.onerror=A;E.src=v})},width:function(v){var k=B(v,"border-left-width"),A=B(v,"border-right-width");return v.scrollWidth+k+A},height:function(v){var k=B(v,"border-top-width"),A=B(v,"border-bottom-width");return v.scrollHeight+k+A}}}(),w=function(){function x(k){return-1!==k.search(v)}
function D(k){for(var A=[],E;null!==(E=v.exec(k));)A.push(E[1]);return A.filter(function(J){return!O.isDataUrl(J)})}function B(k,A,E,J){return Promise.resolve(A).then(function(K){return E?O.resolveUrl(K,E):K}).then(J||O.getAndEncode).then(function(K){return O.dataAsUrl(K,O.mimeType(A))}).then(function(K){return k.replace(new RegExp("(url\\(['\"]?)("+O.escape(A)+")(['\"]?\\))","g"),"$1"+K+"$3")})}var v=/url\(['"]?([^'"]+?)['"]?\)/g;return{inlineAll:function(k,A,E){return x(k)?Promise.resolve(k).then(D).then(function(J){var K=
Promise.resolve(k);J.forEach(function(pa){K=K.then(function(qa){return B(qa,pa,A,E)})});return K}):Promise.resolve(k)},shouldProcess:x,impl:{readUrls:D,inline:B}}}(),ca=function(){function x(){function D(B){return{resolve:function(){return w.inlineAll(B.cssText,(B.parentStyleSheet||{}).href)},src:function(){return B.style.getPropertyValue("src")}}}return Promise.resolve(O.asArray(document.styleSheets)).then(function(B){var v=[];B.forEach(function(k){try{O.asArray(k.cssRules||[]).forEach(v.push.bind(v))}catch(A){console.log("Error while reading CSS rules from "+
k.href,A.toString())}});return v}).then(function(B){return B.filter(function(v){return v.type===CSSRule.FONT_FACE_RULE}).filter(function(v){return w.shouldProcess(v.style.getPropertyValue("src"))})}).then(function(B){return B.map(D)})}return{resolveAll:function(){return x(document).then(function(D){return Promise.all(D.map(function(B){return B.resolve()}))}).then(function(D){return D.join("\n")})},impl:{readAll:x}}}(),Oa=function(){function x(B){return{inline:function(v){return O.isDataUrl(B.src)?
Promise.resolve():Promise.resolve(B.src).then(v||O.getAndEncode).then(function(k){return O.dataAsUrl(k,O.mimeType(B.src))}).then(function(k){return new Promise(function(A,E){B.onload=A;B.onerror=E;B.src=k})})}}}function D(B){return B instanceof Element?function(v){var k=v.style.getPropertyValue("background");return k?w.inlineAll(k).then(function(A){v.style.setProperty("background",A,v.style.getPropertyPriority("background"))}).then(function(){return v}):Promise.resolve(v)}(B).then(function(){return B instanceof
HTMLImageElement?x(B).inline():Promise.all(O.asArray(B.childNodes).map(function(v){return D(v)}))}):Promise.resolve(B)}return{inlineAll:D,impl:{newImage:x}}}(),yc={imagePlaceholder:void 0,cacheBust:!1},S={toSvg:Q,toPng:function(x,D){return vb(x,D||{}).then(function(B){return B.toDataURL()})},toJpeg:function(x,D){D=D||{};return vb(x,D).then(function(B){return B.toDataURL("image/jpeg",D.quality||1)})},toBlob:function(x,D){return vb(x,D||{}).then(O.canvasToBlob)},toPixelData:function(x,D){return vb(x,
D||{}).then(function(B){return B.getContext("2d").getImageData(0,0,O.width(x),O.height(x)).data})},impl:{fontFaces:ca,images:Oa,util:O,inliner:w,options:{}}};Cd.domtoimage=S})(window);
(function(Cd){function Q(a){for(var b=[],c=1;c<arguments.length;c++)b[c-1]=arguments[c];return function(){for(var d=[],e=0;e<arguments.length;e++)d[e]=arguments[e];d=b.concat(d);return a.apply(null,d)}}function xc(){for(var a=0,b=0,c=arguments.length;b<c;b++)a+=arguments[b].length;a=Array(a);var d=0;for(b=0;b<c;b++)for(var e=arguments[b],f=0,g=e.length;f<g;f++,d++)a[d]=e[f];return a}function vb(a,b,c,d,e){return a(c,d)?k.some(c):Ca(e)&&e(c)?k.none():b(c,d,e)}function ub(){return{up:w({selector:wb,
closest:da,predicate:Yb,all:of}),down:w({selector:Gd,predicate:pf}),styles:w({get:Da,getRaw:Ja,set:ea,remove:eb}),attrs:w({get:ha,set:fa,remove:T,copyTo:function(a,b){a=qf(a);Zb(b,a)}}),insert:w({before:Ac,after:fb,afterAll:ui,append:U,appendAll:gb,prepend:Hd,wrap:vi}),remove:w({unwrap:wi,remove:ua}),create:w({nu:u.fromTag,clone:function(a){return u.fromDom(a.dom.cloneNode(!1))},text:u.fromText}),query:w({comparePosition:function(a,b){return a.dom.compareDocumentPosition(b.dom)},prevSibling:rf,nextSibling:Bc}),
property:w({children:ra,name:L,parent:Wa,document:function(a){return Id(a).dom},isText:hb,isComment:xi,isElement:ib,isSpecial:function(a){a=L(a);return R("script noscript iframe noframes noembed title style textarea xmp".split(" "),a)},getText:Cc,setText:yi,isBoundary:function(a){return ib(a)?"body"===L(a)?!0:R(zi,L(a)):!1},isEmptyTag:function(a){return ib(a)?R(["br","img","hr","input"],L(a)):!1},isNonEditable:function(a){return ib(a)&&"false"===ha(a,"contenteditable")}}),eq:M,is:Ai}}function Dd(a,
b,c){var d=Bi.byAttr(Xa,function(e,f,g){c.targets().each(function(h){N(f).each(function(l){var n=sf(a);n=Jd(C,u.fromDom(a.getDoc()),n);l=Ci(l,h,n);a.fire("TableSelectionChange",{cells:e,start:f,finish:g,otherCells:l})})})},function(){a.fire("TableSelectionClear")});a.on("init",function(e){var f=a.getWin(),g=jb(a);e=Kd(a);var h=Di(f,g,e,d),l=Ei(f,g,e,d),n=Fi(f,g,e,d);a.on("TableSelectorChange",function(m){return n(m.start,m.finish)});var p=function(m,r){!0===m.raw.shiftKey&&(r.kill&&m.kill(),r.selection.each(function(t){t=
kb.relative(t.start,t.finish);t=Ld(f,t);a.selection.setRng(t)}))};e=function(){var m=Aa(u.fromDom(g)),r=Aa(0);return{touchEnd:function(t){var q=u.fromDom(t.target);if("td"===L(q)||"th"===L(q)){var y=m.get(),H=r.get();M(y,q)&&300>t.timeStamp-H&&(t.preventDefault(),n(q,q))}m.set(q);r.set(t.timeStamp)}}}();a.on("dragstart",function(m){h.clearstate()});a.on("mousedown",function(m){0===m.button&&Md(m)&&h.mousedown($b(m))});a.on("mouseover",function(m){var r=void 0===m.buttons?!0:tf.browser.isEdge()&&0===
m.buttons?!0:0!==(m.buttons&1);r&&Md(m)&&h.mouseover($b(m))});a.on("mouseup",function(m){0===m.button&&Md(m)&&h.mouseup($b(m))});a.on("touchend",e.touchEnd);a.on("keyup",function(m){var r=$b(m);if(r.raw.shiftKey&&Nd(r.raw.which)){m=a.selection.getRng();var t=u.fromDom(m.startContainer),q=u.fromDom(m.endContainer);l.keyup(r,t,m.startOffset,q,m.endOffset).each(function(y){p(r,y)})}});a.on("keydown",function(m){var r=$b(m);b().each(function(H){return H.hideBars()});m=a.selection.getRng();var t=u.fromDom(m.startContainer),
q=u.fromDom(m.endContainer),y=uf(Gi,Hi)(u.fromDom(a.selection.getStart()));l.keydown(r,t,m.startOffset,q,m.endOffset,y).each(function(H){p(r,H)});b().each(function(H){return H.showBars()})});a.on("NodeChange",function(){var m=a.selection,r=u.fromDom(m.getStart());m=u.fromDom(m.getEnd());Od(N,[r,m]).fold(function(){return d.clear(g)},C)})});return{clear:d.clear}}var C=function(){},Ed=function(a,b){return function(){for(var c=[],d=0;d<arguments.length;d++)c[d]=arguments[d];return a(b.apply(null,c))}},
O=function(a,b){return function(c){return a(b(c))}},w=function(a){return function(){return a}},ca=function(a){return a},Oa=function(a){return function(b){return!a(b)}},yc=function(a){return function(){throw Error(a);}},S=w(!1),x=w(!0),D=function(){return B},B=function(){var a=function(d){return d.isNone()},b=function(d){return d()},c=function(d){return d};return{fold:function(d,e){return d()},is:S,isSome:S,isNone:x,getOr:c,getOrThunk:b,getOrDie:function(d){throw Error(d||"error: getOrDie called on none.");
},getOrNull:w(null),getOrUndefined:w(void 0),or:c,orThunk:b,map:D,each:C,bind:D,exists:S,forall:x,filter:D,equals:a,equals_:a,toArray:function(){return[]},toString:w("none()")}}(),v=function(a){var b=w(a),c=function(){return e},d=function(f){return f(a)},e={fold:function(f,g){return g(a)},is:function(f){return a===f},isSome:x,isNone:S,getOr:b,getOrThunk:b,getOrDie:b,getOrNull:b,getOrUndefined:b,or:c,orThunk:c,map:function(f){return v(f(a))},each:function(f){f(a)},bind:d,exists:d,forall:d,filter:function(f){return f(a)?
e:B},toArray:function(){return[a]},toString:function(){return"some("+a+")"},equals:function(f){return f.is(a)},equals_:function(f,g){return f.fold(S,function(h){return g(a,h)})}};return e},k={some:v,none:D,from:function(a){return null===a||void 0===a?B:v(a)}},A=function(a){return function(b){var c=typeof b;return(null===b?"null":"object"===c&&(Array.prototype.isPrototypeOf(b)||b.constructor&&"Array"===b.constructor.name)?"array":"object"===c&&(String.prototype.isPrototypeOf(b)||b.constructor&&"String"===
b.constructor.name)?"string":c)===a}},E=function(a){return function(b){return typeof b===a}},J=A("string"),K=A("object"),pa=A("array"),qa=E("boolean"),Na=function(a){return function(b){return a===b}}(void 0),ta=function(a){return null===a||void 0===a},Ca=E("function"),Va=E("number"),zc=Array.prototype.slice,Fd=Array.prototype.indexOf,db=Array.prototype.push,R=function(a,b){return-1<Fd.call(a,b)},la=function(a,b){for(var c=0,d=a.length;c<d;c++)if(b(a[c],c))return!0;return!1},Ea=function(a,b){for(var c=
[],d=0;d<a;d++)c.push(b(d));return c},z=function(a,b){for(var c=a.length,d=Array(c),e=0;e<c;e++)d[e]=b(a[e],e);return d},F=function(a,b){for(var c=0,d=a.length;c<d;c++)b(a[c],c)},Ii=function(a,b){for(var c=a.length-1;0<=c;c--)b(a[c],c)},Ji=function(a,b){for(var c=[],d=[],e=0,f=a.length;e<f;e++){var g=a[e];(b(g,e)?c:d).push(g)}return{pass:c,fail:d}},Y=function(a,b){for(var c=[],d=0,e=a.length;d<e;d++){var f=a[d];b(f,d)&&c.push(f)}return c},Ka=function(a,b,c){Ii(a,function(d){c=b(c,d)});return c},ma=
function(a,b,c){F(a,function(d){c=b(c,d)});return c},Fa=function(a,b){a:{for(var c=0,d=a.length;c<d;c++){var e=a[c];if(b(e,c)){a=k.some(e);break a}else if(S(e,c))break}a=k.none()}return a},Dc=function(a,b){for(var c=0,d=a.length;c<d;c++)if(b(a[c],c))return k.some(c);return k.none()},vf=function(a){for(var b=[],c=0,d=a.length;c<d;++c){if(!pa(a[c]))throw Error("Arr.flatten item "+c+" was not an array, input: "+a);db.apply(b,a[c])}return b},na=function(a,b){return vf(z(a,b))},lb=function(a,b){for(var c=
0,d=a.length;c<d;++c)if(!0!==b(a[c],c))return!1;return!0},Ki=function(a){a=zc.call(a,0);a.reverse();return a},Pd=function(a,b){for(var c={},d=0,e=a.length;d<e;d++){var f=a[d];c[String(f)]=b(f,d)}return c},Li=function(a){return[a]},Mi=function(a,b){a=zc.call(a,0);a.sort(b);return a},Qd=function(a,b){return 0<=b&&b<a.length?k.some(a[b]):k.none()},Rd=function(a){return Qd(a,a.length-1)},mb=function(a,b){for(var c=0;c<a.length;c++){var d=b(a[c],c);if(d.isSome())return d}return k.none()},I=function(){I=
Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++){b=arguments[c];for(var e in b)Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e])}return a};return I.apply(this,arguments)},Gb=function(a){var b=!1,c;return function(){for(var d=[],e=0;e<arguments.length;e++)d[e]=arguments[e];b||(b=!0,c=a.apply(null,d));return c}},wf=function(){return Sd(0,0)},Sd=function(a,b){return{major:a,minor:b}},Ec={nu:Sd,detect:function(a,b){b=String(b).toLowerCase();if(0===a.length)a=wf();else{a:{for(var c=
0;c<a.length;c++){var d=a[c];if(d.test(b)){a=d;break a}}a=void 0}a=a?Sd(Number(b.replace(a,"$1")),Number(b.replace(a,"$2"))):{major:0,minor:0}}return a},unknown:wf},xf=function(a,b){var c=String(b).toLowerCase();return Fa(a,function(d){return d.search(c)})},yf={detectBrowser:function(a,b){return xf(a,b).map(function(c){var d=Ec.detect(c.versionRegexes,b);return{current:c.name,version:d}})},detectOs:function(a,b){return xf(a,b).map(function(c){var d=Ec.detect(c.versionRegexes,b);return{current:c.name,
version:d}})}},Fc=function(a,b,c){return""===b||a.length>=b.length&&a.substr(c,c+b.length)===b},va=function(a,b){return-1!==a.indexOf(b)},Gc=function(a,b){return Fc(a,b,a.length-b.length)},Ni=function(a){return function(b){return b.replace(a,"")}}(/^\s+|\s+$/g),Oi=function(a){return 0<a.length},Td=/.*?version\/ ?([0-9]+)\.([0-9]+).*/,Ya=function(a){return function(b){return va(b,a)}},Pi=[{name:"Edge",versionRegexes:[/.*?edge\/ ?([0-9]+)\.([0-9]+)$/],search:function(a){return va(a,"edge/")&&va(a,"chrome")&&
va(a,"safari")&&va(a,"applewebkit")}},{name:"Chrome",versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/,Td],search:function(a){return va(a,"chrome")&&!va(a,"chromeframe")}},{name:"IE",versionRegexes:[/.*?msie ?([0-9]+)\.([0-9]+).*/,/.*?rv:([0-9]+)\.([0-9]+).*/],search:function(a){return va(a,"msie")||va(a,"trident")}},{name:"Opera",versionRegexes:[Td,/.*?opera\/([0-9]+)\.([0-9]+).*/],search:Ya("opera")},{name:"Firefox",versionRegexes:[/.*?firefox\/ ?([0-9]+)\.([0-9]+).*/],search:Ya("firefox")},{name:"Safari",
versionRegexes:[Td,/.*?cpu os ([0-9]+)_([0-9]+).*/],search:function(a){return(va(a,"safari")||va(a,"mobile/"))&&va(a,"applewebkit")}}],Qi=[{name:"Windows",search:Ya("win"),versionRegexes:[/.*?windows nt ?([0-9]+)\.([0-9]+).*/]},{name:"iOS",search:function(a){return va(a,"iphone")||va(a,"ipad")},versionRegexes:[/.*?version\/ ?([0-9]+)\.([0-9]+).*/,/.*cpu os ([0-9]+)_([0-9]+).*/,/.*cpu iphone os ([0-9]+)_([0-9]+).*/]},{name:"Android",search:Ya("android"),versionRegexes:[/.*?android ?([0-9]+)\.([0-9]+).*/]},
{name:"OSX",search:Ya("mac os x"),versionRegexes:[/.*?mac os x ?([0-9]+)_([0-9]+).*/]},{name:"Linux",search:Ya("linux"),versionRegexes:[]},{name:"Solaris",search:Ya("sunos"),versionRegexes:[]},{name:"FreeBSD",search:Ya("freebsd"),versionRegexes:[]},{name:"ChromeOS",search:Ya("cros"),versionRegexes:[/.*?chrome\/([0-9]+)\.([0-9]+).*/]}],zf={browsers:w(Pi),oses:w(Qi)},Af=function(a){var b=a.current,c=function(d){return function(){return b===d}};return{current:b,version:a.version,isEdge:c("Edge"),isChrome:c("Chrome"),
isIE:c("IE"),isOpera:c("Opera"),isFirefox:c("Firefox"),isSafari:c("Safari")}},Ri=function(){return Af({current:void 0,version:Ec.unknown()})};w("Edge");w("Chrome");w("IE");w("Opera");w("Firefox");w("Safari");var Bf=function(a){var b=a.current,c=function(d){return function(){return b===d}};return{current:b,version:a.version,isWindows:c("Windows"),isiOS:c("iOS"),isAndroid:c("Android"),isOSX:c("OSX"),isLinux:c("Linux"),isSolaris:c("Solaris"),isFreeBSD:c("FreeBSD"),isChromeOS:c("ChromeOS")}},Si=function(){return Bf({current:void 0,
version:Ec.unknown()})};w("Windows");w("iOS");w("Android");w("Linux");w("OSX");w("Solaris");w("FreeBSD");w("ChromeOS");var Ti={detect:function(a,b){var c=zf.browsers(),d=zf.oses();c=yf.detectBrowser(c,a).fold(Ri,Af);d=yf.detectOs(d,a).fold(Si,Bf);var e=d.isiOS()&&!0===/ipad/i.test(a),f=d.isiOS()&&!e,g=d.isiOS()||d.isAndroid(),h=g||b("(pointer:coarse)");b=e||!f&&g&&b("(min-device-width:768px)");g=f||g&&!b;a=c.isSafari()&&d.isiOS()&&!1===/safari/i.test(a);var l=!g&&!b&&!a;a={isiPad:w(e),isiPhone:w(f),
isTablet:w(b),isPhone:w(g),isTouch:w(h),isAndroid:d.isAndroid,isiOS:d.isiOS,isWebView:w(a),isDesktop:w(l)};return{browser:c,os:d,deviceType:a}}},Ui=function(a){return window.matchMedia(a).matches},Hc=Gb(function(){return Ti.detect(navigator.userAgent,Ui)}),ac=function(a){if(null===a||void 0===a)throw Error("Node cannot be null or undefined");return{dom:a}},u={fromHtml:function(a,b){b=(b||document).createElement("div");b.innerHTML=a;if(!b.hasChildNodes()||1<b.childNodes.length)throw console.error("HTML does not have a single root node",
a),Error("HTML must have a single root node");return ac(b.childNodes[0])},fromTag:function(a,b){a=(b||document).createElement(a);return ac(a)},fromText:function(a,b){a=(b||document).createTextNode(a);return ac(a)},fromDom:ac,fromPoint:function(a,b,c){return k.from(a.dom.elementFromPoint(b,c)).map(ac)}},Ga=function(a,b){a=a.dom;if(1!==a.nodeType)return!1;if(void 0!==a.matches)return a.matches(b);if(void 0!==a.msMatchesSelector)return a.msMatchesSelector(b);if(void 0!==a.webkitMatchesSelector)return a.webkitMatchesSelector(b);
if(void 0!==a.mozMatchesSelector)return a.mozMatchesSelector(b);throw Error("Browser lacks native selectors");},Cf=function(a){return 1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType||0===a.childElementCount},Za=function(a,b){b=void 0===b?document:b.dom;return Cf(b)?[]:z(b.querySelectorAll(a),u.fromDom)},Hb=function(a,b){b=void 0===b?document:b.dom;return Cf(b)?k.none():k.from(b.querySelector(a)).map(u.fromDom)},M=function(a,b){return a.dom===b.dom},Ud=function(a,b){if(Hc().browser.isIE()){var c=Node.DOCUMENT_POSITION_CONTAINED_BY;
b=0!==(a.dom.compareDocumentPosition(b.dom)&c)}else a=a.dom,b=b.dom,b=a===b?!1:a.contains(b);return b},Ai=Ga,wa=Object.keys,xb=Object.hasOwnProperty,sa=function(a,b){for(var c=wa(a),d=0,e=c.length;d<e;d++){var f=c[d];b(a[f],f)}},Df=function(a,b){return Vi(a,function(c,d){return{k:d,v:b(c,d)}})},Vi=function(a,b){var c={};sa(a,function(d,e){d=b(d,e);c[d.k]=d.v});return c},Wi=function(a){return function(b,c){a[c]=b}},Xi=function(a,b,c,d){sa(a,function(e,f){(b(e,f)?c:d)(e,f)});return{}},Ib=function(a,
b){var c={};Xi(a,b,Wi(c),C);return c},Ef=function(a,b){var c=[];sa(a,function(d,e){c.push(b(d,e))});return c},Yi=function(a){return Ef(a,function(b){return b})},Pa=function(a,b){return xb.call(a,b)?k.from(a[b]):k.none()},Ff=function(a,b){return xb.call(a,b)&&void 0!==a[b]&&null!==a[b]},Zi=function(a){for(var b in a)if(xb.call(a,b))return!1;return!0},$i=["tfoot","thead","tbody","colgroup"],Vd=function(a,b,c){return{element:a,cells:b,section:c}},xa=function(a,b,c){return{element:a,isNew:b,isLocked:c}},
Jb=function(a,b){return{cells:a,section:b}};"undefined"!==typeof window||Function("return this;")();var L=function(a){return a.dom.nodeName.toLowerCase()},Ic=function(a){return function(b){return b.dom.nodeType===a}},xi=function(a){return 8===a.dom.nodeType||"#comment"===L(a)},ib=Ic(1),hb=Ic(3),aj=Ic(9),bj=Ic(11),Gf=function(a){return function(b){return ib(b)&&L(b)===a}},Kb=function(a){return u.fromDom(a.dom.ownerDocument)},Id=function(a){return aj(a)?a:Kb(a)},Wa=function(a){return k.from(a.dom.parentNode).map(u.fromDom)},
of=function(a,b){b=Ca(b)?b:S;var c=a.dom;for(a=[];null!==c.parentNode&&void 0!==c.parentNode;){c=c.parentNode;var d=u.fromDom(c);a.push(d);if(!0===b(d))break}return a},rf=function(a){return k.from(a.dom.previousSibling).map(u.fromDom)},Bc=function(a){return k.from(a.dom.nextSibling).map(u.fromDom)},ra=function(a){return z(a.dom.childNodes,u.fromDom)},Wd=function(a,b){return k.from(a.dom.childNodes[b]).map(u.fromDom)},Hf=Ca(Element.prototype.attachShadow)&&Ca(Node.prototype.getRootNode),cj=w(Hf),dj=
Hf?function(a){return u.fromDom(a.dom.getRootNode())}:Id,ej=function(a){a=dj(a);return bj(a)&&!ta(a.dom.host)?k.some(a):k.none()},fj=function(a){return u.fromDom(a.dom.host)},gj=function(a){if(cj()&&!ta(a.target)){var b=u.fromDom(a.target);if(ib(b)&&!ta(b.dom.shadowRoot)&&a.composed&&a.composedPath&&(b=a.composedPath()))return Qd(b,0)}return k.from(a.target)},bc=function(a){var b=hb(a)?a.dom.parentNode:a.dom;if(void 0===b||null===b||null===b.ownerDocument)return!1;var c=b.ownerDocument;return ej(u.fromDom(b)).fold(function(){return c.body.contains(b)},
O(bc,fj))},If=function(a){a=a.dom.body;if(null===a||void 0===a)throw Error("Body is not available yet");return u.fromDom(a)},hj=function(a,b,c){return Y(of(a,c),b)},ij=function(a,b){return Y(ra(a),b)},pf=function(a,b){var c=[];F(ra(a),function(d){b(d)&&(c=c.concat([d]));c=c.concat(pf(d,b))});return c},cc=function(a,b,c){return hj(a,function(d){return Ga(d,b)},c)},dc=function(a,b){return ij(a,function(c){return Ga(c,b)})},Gd=function(a,b){return Za(b,a)},Yb=function(a,b,c){a=a.dom;for(c=Ca(c)?c:S;a.parentNode;){a=
a.parentNode;var d=u.fromDom(a);if(b(d))return k.some(d);if(c(d))break}return k.none()},jj=function(a,b,c){return vb(function(d,e){return e(d)},Yb,a,b,c)},kj=function(a,b){return Fa(a.dom.childNodes,function(c){return b(u.fromDom(c))}).map(u.fromDom)},lj=function(a,b){var c=function(d){for(var e=0;e<d.childNodes.length;e++){var f=u.fromDom(d.childNodes[e]);if(b(f))return k.some(f);f=c(d.childNodes[e]);if(f.isSome())return f}return k.none()};return c(a.dom)},wb=function(a,b,c){return Yb(a,function(d){return Ga(d,
b)},c)},Jf=function(a,b){return kj(a,function(c){return Ga(c,b)})},mj=function(a,b){return Hb(b,a)},da=function(a,b,c){return vb(function(d,e){return Ga(d,e)},wb,a,b,c)},Kf=function(a,b,c){if(J(c)||qa(c)||Va(c))a.setAttribute(b,c+"");else throw console.error("Invalid call to Attribute.set. Key ",b,":: Value ",c,":: Element ",a),Error("Attribute value was not simple");},fa=function(a,b,c){Kf(a.dom,b,c)},Zb=function(a,b){var c=a.dom;sa(b,function(d,e){Kf(c,e,d)})},ha=function(a,b){a=a.dom.getAttribute(b);
return null===a?void 0:a},T=function(a,b){a.dom.removeAttribute(b)},qf=function(a){return ma(a.dom.attributes,function(b,c){b[c.name]=c.value;return b},{})},Lb=function(a){return void 0!==a.style&&Ca(a.style.getPropertyValue)},Lf=function(a,b,c){if(!J(c))throw console.error("Invalid call to CSS.set. Property ",b,":: Value ",c,":: Element ",a),Error("CSS value must be a string: "+c);Lb(a)&&a.style.setProperty(b,c)},ea=function(a,b,c){Lf(a.dom,b,c)},ec=function(a,b){var c=a.dom;sa(b,function(d,e){Lf(c,
e,d)})},Da=function(a,b){var c=a.dom,d=window.getComputedStyle(c).getPropertyValue(b);return""!==d||bc(a)?d:Mf(c,b)},Mf=function(a,b){return Lb(a)?a.style.getPropertyValue(b):""},Ja=function(a,b){a=Mf(a.dom,b);return k.from(a).filter(function(c){return 0<c.length})},eb=function(a,b){var c=a.dom;Lb(c)&&c.style.removeProperty(b);k.from(ha(a,"style")).map(Ni).is("")&&T(a,"style")},La=function(a,b,c){void 0===c&&(c=0);return k.from(ha(a,b)).map(function(d){return parseInt(d,10)}).getOr(c)},nj=function(a){return 1<
La(a,"colspan",1)},oj=function(a){return 1<La(a,"rowspan",1)},fc=w(10),Xd=w(10),nb=function(a,b,c){return na(ra(a),function(d){return Ga(d,b)?c(d)?[d]:[]:nb(d,b,c)})},Jc=function(a,b,c){void 0===c&&(c=S);return c(b)?k.none():R(a,L(b))?k.some(b):wb(b,a.join(","),function(d){return Ga(d,"table")||c(d)})},Mb=function(a){return nb(a,"th,td",x)},Yd=function(a){return Ga(a,"colgroup")?dc(a,"col"):na(Nf(a),function(b){return dc(b,"col")})},N=function(a,b){return da(a,"table",b)},Nf=function(a){return N(a).fold(w([]),
function(b){return dc(b,"colgroup")})},Of=function(a,b){return z(a,function(c){if("colgroup"===L(c)){var d=z(Yd(c),function(e){var f=La(e,"span",1);return{element:e,rowspan:1,colspan:f}});return Vd(c,d,"colgroup")}d=z(Mb(c),function(e){var f=La(e,"rowspan",1),g=La(e,"colspan",1);return{element:e,rowspan:f,colspan:g}});return Vd(c,d,b(c))})},pj=function(a){return Wa(a).map(function(b){b=L(b);return R($i,b)?b:"tbody"}).getOr("tbody")},Pf=function(a){var b=nb(a,"tr",x);a=Nf(a);b=xc(a,b);return Of(b,
pj)},qj=function(a,b){return Of(a,function(){return b})},Kc=function(a,b,c){var d=a.cells,e=d.slice(0,b);b=d.slice(b);c=e.concat(c).concat(b);return Jb(c,a.section)},Qf=function(a,b){b=z(a.cells,b);return Jb(b,a.section)},ya=function(a,b){return a.cells[b].element},oa=function(a){a=Ji(a,function(b){return"colgroup"===b.section});return{rows:a.fail,cols:a.pass}},rj=function(a){return k.from(ha(a,"data-snooker-locked-cols")).bind(function(b){return k.from(b.match(/\d+/g))}).map(function(b){return Pd(b,
x)})},yb=function(a){a=ma(oa(a).rows,function(b,c){F(c.cells,function(d,e){d.isLocked&&(b[e]=!0)});return b},{});a=Ef(a,function(b,c){return parseInt(c,10)});return Mi(a)},Rf=function(a,b){a=na(a.all,function(c){return c.cells});return Y(a,b)},sj=function(a){var b={},c=0;F(a.cells,function(d){var e=d.colspan;Ea(e,function(f){f=c+f;b[f]={element:d.element,colspan:e,column:f}});c+=e});return b},Sf=function(a){var b={},c=[],d={},e=Qd(a,0).map(function(l){return l.element}).bind(N).bind(rj).getOr({}),
f=0,g=0,h=0;F(a,function(l){if("colgroup"===l.section)d=sj(l);else{var n=[];F(l.cells,function(p){for(var m=0;void 0!==b[h+","+m];)m++;var r=Ff(e,m.toString());r={element:p.element,rowspan:p.rowspan,colspan:p.colspan,row:h,column:m,isLocked:r};for(var t=0;t<p.colspan;t++)for(var q=0;q<p.rowspan;q++){var y=m+t;b[h+q+","+y]=r;g=Math.max(g,y+1)}n.push(r)});f++;c.push(Vd(l.element,n,l.section));h++}});return{grid:{rows:f,columns:g},access:b,all:c,columns:d}},G={fromTable:function(a){a=Pf(a);return Sf(a)},
generate:Sf,getAt:function(a,b,c){a=a.access[b+","+c];return void 0!==a?k.some(a):k.none()},findItem:function(a,b,c){a=Rf(a,function(d){return c(b,d.element)});return 0<a.length?k.some(a[0]):k.none()},filterItems:Rf,justCells:function(a){return na(a.all,function(b){return b.cells})},justColumns:function(a){return Yi(a.columns)},hasColumns:function(a){return 0<wa(a.columns).length},getColumnAt:function(a,b){return k.from(a.columns[b])}},tj=function(a,b){var c=b.column+b.colspan-1,d=b.row,e=b.row+b.rowspan-
1;return b.column<=a.finishCol&&c>=a.startCol&&d<=a.finishRow&&e>=a.startRow},uj=function(a,b){return b.column>=a.startCol&&b.column+b.colspan-1<=a.finishCol&&b.row>=a.startRow&&b.row+b.rowspan-1<=a.finishRow},Tf=function(a,b,c){b=G.findItem(a,b,M);var d=G.findItem(a,c,M);return b.bind(function(e){return d.map(function(f){return{startRow:Math.min(e.row,f.row),startCol:Math.min(e.column,f.column),finishRow:Math.max(e.row+e.rowspan-1,f.row+f.rowspan-1),finishCol:Math.max(e.column+e.colspan-1,f.column+
f.colspan-1)}})})},vj=function(a,b,c){return Tf(a,b,c).bind(function(d){for(var e=!0,f=Q(uj,d),g=d.startRow;g<=d.finishRow;g++)for(var h=d.startCol;h<=d.finishCol;h++)e=e&&G.getAt(a,g,h).exists(f);return e?k.some(d):k.none()})},wj=function(a,b,c,d){return G.findItem(a,b,M).bind(function(e){return G.getAt(a,(0<c?e.row+e.rowspan-1:e.row)+c,(0<d?e.column+e.colspan-1:e.column)+d).map(function(f){return f.element})})},Uf=function(a,b,c){return Tf(a,b,c).map(function(d){d=G.filterItems(a,Q(tj,d));return z(d,
function(e){return e.element})})},Vf=function(a,b){return G.findItem(a,b,function(c,d){return Ud(d,c)}).map(function(c){return c.element})},xj=function(a,b,c){return N(a).bind(function(d){d=Lc(d);return wj(d,a,b,c)})},yj=function(a,b,c){a=Lc(a);return Uf(a,b,c)},Zd=function(a,b,c,d,e){var f=Lc(a);b=M(a,c)?k.some(b):Vf(f,b);var g=M(a,e)?k.some(d):Vf(f,d);return b.bind(function(h){return g.bind(function(l){return Uf(f,h,l)})})},Lc=G.fromTable,Ac=function(a,b){Wa(a).each(function(c){c.dom.insertBefore(b.dom,
a.dom)})},fb=function(a,b){Bc(a).fold(function(){Wa(a).each(function(c){U(c,b)})},function(c){Ac(c,b)})},Hd=function(a,b){Wd(a,0).fold(function(){U(a,b)},function(c){a.dom.insertBefore(b.dom,c.dom)})},U=function(a,b){a.dom.appendChild(b.dom)},vi=function(a,b){Ac(a,b);U(b,a)},zj=function(a,b){F(b,function(c){Ac(a,c)})},ui=function(a,b){F(b,function(c,d){fb(0===d?a:b[d-1],c)})},gb=function(a,b){F(b,function(c){U(a,c)})},$d=function(a){a.dom.textContent="";F(ra(a),function(b){ua(b)})},ua=function(a){a=
a.dom;null!==a.parentNode&&a.parentNode.removeChild(a)},wi=function(a){var b=ra(a);0<b.length&&zj(a,b);ua(a)},Mc=function(a,b){var c=function(d){return a(d)?k.from(d.dom.nodeValue):k.none()};return{get:function(d){if(!a(d))throw Error("Can only get "+b+" value of a "+b+" node");return c(d).getOr("")},getOption:c,set:function(d,e){if(!a(d))throw Error("Can only set raw "+b+" value of a "+b+" node");d.dom.nodeValue=e}}}(hb,"text"),Cc=function(a){return Mc.get(a)},yi=function(a,b){return Mc.set(a,b)},
zi="body p div article aside figcaption figure footer header nav section ol ul li table thead tbody tfoot caption tr td th h1 h2 h3 h4 h5 h6 blockquote pre address".split(" "),Bj=function(a,b,c,d){c=b(a,c);return Ka(d,function(e,f){f=b(a,f);return Aj(a,e,f)},c)},Aj=function(a,b,c){return b.bind(function(d){return c.filter(Q(a.eq,d))})},Cj=function(a,b,c){if(0<c.length){var d=c[0];c=c.slice(1);a=Bj(a,b,d,c)}else a=k.none();return a},Dj=function(a,b,c,d){void 0===d&&(d=S);b=[b].concat(a.up().all(b));
c=[c].concat(a.up().all(c));var e=function(g){return Dc(g,d).fold(function(){return g},function(h){return g.slice(0,h+1)})};b=e(b);var f=e(c);c=Fa(b,function(g){return la(f,Q(a.eq,g))});return{firstpath:b,secondpath:f,shared:c}},Wf=ub(),Od=function(a,b){return Cj(Wf,function(c,d){return a(d)},b)},ae=function(a){return wb(a,"table")},Nc=function(a,b,c){var d=function(e){return function(f){return void 0!==c&&c(f)||M(f,e)}};return M(a,b)?k.some({boxes:k.some([a]),start:a,finish:b}):ae(a).bind(function(e){return ae(b).bind(function(f){if(M(e,
f))return k.some({boxes:yj(e,a,b),start:a,finish:b});if(Ud(e,f)){var g=cc(b,"td,th",d(e));g=0<g.length?g[g.length-1]:b;return k.some({boxes:Zd(e,a,e,b,f),start:a,finish:g})}return Ud(f,e)?(g=cc(a,"td,th",d(f)),g=0<g.length?g[g.length-1]:a,k.some({boxes:Zd(f,a,e,b,f),start:a,finish:g})):Dj(Wf,a,b,void 0).shared.bind(function(h){return da(h,"table",c).bind(function(l){var n=cc(b,"td,th",d(l));n=0<n.length?n[n.length-1]:b;var p=cc(a,"td,th",d(l));p=0<p.length?p[p.length-1]:a;return k.some({boxes:Zd(l,
a,e,b,f),start:p,finish:n})})})})})},Oc=function(a,b){a=Za(b,a);return 0<a.length?k.some(a):k.none()},Ej=function(a,b){return Fa(a,function(c){return Ga(c,b)})},Xf=function(a,b,c){return Hb(b,a).bind(function(d){return Hb(c,a).bind(function(e){return Od(ae,[d,e]).map(function(f){return{first:d,last:e,table:f}})})})},Fj=function(a,b){return wb(a,"table").bind(function(c){return Hb(b,c).bind(function(d){return Nc(d,a).bind(function(e){return e.boxes.map(function(f){return{boxes:f,start:e.start,finish:e.finish}})})})})},
Gj=function(a,b,c,d,e){return Ej(a,e).bind(function(f){return xj(f,b,c).bind(function(g){return Fj(g,d)})})},Hj=function(a,b){return Oc(a,b)},Ij=function(a,b,c){return Xf(a,b,c).bind(function(d){var e=function(h){return M(a,h)},f=wb(d.first,"thead,tfoot,tbody,table",e),g=wb(d.last,"thead,tfoot,tbody,table",e);return f.bind(function(h){return g.bind(function(l){if(M(h,l)){l=d.first;var n=d.last,p=Lc(d.table);l=vj(p,l,n)}else l=k.none();return l})})})},$a={generate:function(a){if(!pa(a))throw Error("cases must be an array");
if(0===a.length)throw Error("there must be at least one case");var b=[],c={};F(a,function(d,e){var f=wa(d);if(1!==f.length)throw Error("one and only one name per case");var g=f[0],h=d[g];if(void 0!==c[g])throw Error("duplicate key detected:"+g);if("cata"===g)throw Error("cannot have a case named cata (sorry)");if(!pa(h))throw Error("case arguments must be an array");b.push(g);c[g]=function(){for(var l=[],n=0;n<arguments.length;n++)l[n]=arguments[n];n=l.length;if(n!==h.length)throw Error("Wrong number of arguments to case "+
g+". Expected "+h.length+" ("+h+"), got "+n);return{fold:function(){for(var p=[],m=0;m<arguments.length;m++)p[m]=arguments[m];if(p.length!==a.length)throw Error("Wrong number of arguments to fold. Expected "+a.length+", got "+p.length);return p[e].apply(null,l)},match:function(p){var m=wa(p);if(b.length!==m.length)throw Error("Wrong number of arguments to match. Expected: "+b.join(",")+"\nActual: "+m.join(","));if(!lb(b,function(r){return R(m,r)}))throw Error("Not all branches were specified when using match. Specified: "+
m.join(", ")+"\nRequired: "+b.join(", "));return p[g].apply(null,l)},log:function(p){console.log(p,{constructors:b,constructor:g,params:l})}}}});return c}},be=$a.generate([{none:[]},{multiple:["elements"]},{single:["element"]}]),ce=function(a,b,c,d){return a.fold(b,c,d)},Jj=be.none,Kj=be.multiple,Lj=be.single,Mj=function(a,b,c){return{get:function(){return Hj(a(),c).fold(function(){return b().map(Lj).getOrThunk(Jj)},function(d){return Kj(d)})}}},Nj=tinymce.util.Tools.resolve("tinymce.PluginManager"),
ob=function(a,b){return u.fromDom(a.dom.cloneNode(b))},Oj=function(a,b){b=u.fromTag(b);var c=qf(a);Zb(b,c);a=ra(ob(a,!0));gb(b,a);return b},Yf=function(a){for(var b=[],c=function(e){b.push(e)},d=0;d<a.length;d++)a[d].each(c);return b},Pj=function(a,b,c){return a.isSome()&&b.isSome()?k.some(c(a.getOrDie(),b.getOrDie())):k.none()},Qj=function(a,b){return void 0!==a&&null!==a?b(a):k.none()},Zf=function(a,b){var c=function(e){var f=b(e);return 0>=f||null===f?(e=Da(e,a),parseFloat(e)||0):f},d=function(e,
f){return ma(f,function(g,h){h=Da(e,h);h=void 0===h?0:parseInt(h,10);return isNaN(h)?g:g+h},0)};return{set:function(e,f){if(!Va(f)&&!f.match(/^[0-9]+$/))throw Error(a+".set accepts only positive integer values. Value was "+f);e=e.dom;Lb(e)&&(e.style[a]=f+"px")},get:c,getOuter:c,aggregate:d,max:function(e,f,g){e=d(e,g);return f>e?f-e:0}}},$f=Zf("width",function(a){return a.dom.offsetWidth}),Ba=function(a){return $f.get(a)},de=function(a){return $f.getOuter(a)},ee=function(a,b){void 0===b&&(b=x);var c=
a.grid,d=Ea(c.columns,ca),e=Ea(c.rows,ca);return z(d,function(f){return ag(function(){return na(e,function(g){return G.getAt(a,g,f).filter(function(h){return h.column===f}).toArray()})},function(g){return 1===g.colspan&&b(g.element)},function(){return G.getAt(a,0,f)})})},ag=function(a,b,c){var d=a();return Fa(d,b).orThunk(function(){return k.from(d[0]).orThunk(c)}).map(function(e){return e.element})},bg=function(a){var b=a.grid,c=Ea(b.rows,ca),d=Ea(b.columns,ca);return z(c,function(e){return ag(function(){return na(d,
function(f){return G.getAt(a,e,f).filter(function(g){return g.row===e}).fold(w([]),function(g){return[g]})})},function(f){return 1===f.rowspan},function(){return G.getAt(a,e,0)})})},Rj=function(a,b){if(0>b||b>=a.length-1)return k.none();var c=a[b].fold(function(){var e=Ki(a.slice(0,b));return mb(e,function(f,g){return f.map(function(h){return{value:h,delta:g+1}})})},function(e){return k.some({value:e,delta:0})}),d=a[b+1].fold(function(){var e=a.slice(b+1);return mb(e,function(f,g){return f.map(function(h){return{value:h,
delta:g+1}})})},function(e){return k.some({value:e,delta:1})});return c.bind(function(e){return d.map(function(f){return Math.abs(f.value-e.value)/(f.delta+e.delta)})})},uf=function(a,b){return function(c){return"rtl"===("rtl"===Da(c,"direction")?"rtl":"ltr")?b:a}},fe=Zf("height",function(a){var b=a.dom;return bc(a)?b.getBoundingClientRect().height:b.offsetHeight}),Pc=function(a){return fe.get(a)},cg=function(a,b){return{left:a,top:b,translate:function(c,d){return cg(a+c,b+d)}}},ab=cg,Qc=function(a,
b){return void 0!==a?a:void 0!==b?b:0},gc=function(a){var b=a.dom.ownerDocument,c=b.body,d=b.defaultView,e=b.documentElement;if(c===a.dom)return ab(c.offsetLeft,c.offsetTop);b=Qc(null===d||void 0===d?void 0:d.pageYOffset,e.scrollTop);d=Qc(null===d||void 0===d?void 0:d.pageXOffset,e.scrollLeft);var f=Qc(e.clientTop,c.clientTop);c=Qc(e.clientLeft,c.clientLeft);e=a.dom;var g=e.ownerDocument.body;g===e?a=ab(g.offsetLeft,g.offsetTop):bc(a)?(a=e.getBoundingClientRect(),a=ab(a.left,a.top)):a=ab(0,0);return a.translate(d-
c,b-f)},dg=function(a){return gc(a).left+de(a)},eg=function(a){return gc(a).left},fg=function(a,b){b=eg(b);return{col:a,x:b}},gg=function(a,b){b=dg(b);return{col:a,x:b}},ge=function(a){return gc(a).top},Sj=function(a,b){b=ge(b);return{row:a,y:b}},Tj=function(a,b){b=ge(b)+fe.getOuter(b);return{row:a,y:b}},he=function(a,b,c){if(0===c.length)return[];var d=z(c.slice(1),function(f,g){return f.map(function(h){return a(g,h)})}),e=c[c.length-1].map(function(f){return b(c.length-1,f)});return d.concat([e])},
Rc={delta:ca,positions:function(a){return he(Sj,Tj,a)},edge:ge},ie=uf({delta:ca,edge:eg,positions:function(a){return he(fg,gg,a)}},{delta:function(a){return-a},edge:dg,positions:function(a){return he(gg,fg,a)}}),Sc={delta:function(a,b){return ie(b).delta(a,b)},positions:function(a,b){return ie(b).positions(a,b)},edge:function(a){return ie(a).edge(a)}},Uj={unsupportedLength:"em ex cap ch ic rem lh rlh vw vh vi vb vmin vmax cm mm Q in pc pt px".split(" "),fixed:["px","pt"],relative:["%"],empty:[""]},
Vj=/^([+-]?(?:Infinity|[0-9]+\.(?:[0-9]+)?(?:[eE][+-]?[0-9]+)?|\.[0-9]+(?:[eE][+-]?[0-9]+)?|[0-9]+(?:[eE][+-]?[0-9]+)?))(.*)$/,Wj=function(a,b){return la(b,function(c){return la(Uj[c],function(d){return a===d})})},Xj=function(a,b){return k.from(Vj.exec(a)).bind(function(c){var d=Number(c[1]);c=c[2];return Wj(c,b)?k.some({value:d,unit:c}):k.none()})},hg=function(){var a=Hc().browser;return a.isIE()||a.isEdge()},Qa=function(a,b,c){a=Da(a,b);a=parseFloat(a);return isNaN(a)?c:a},je=function(a){if(hg()){var b=
a.dom.getBoundingClientRect().width;if("border-box"!==Da(a,"box-sizing")){var c=Qa(a,"padding-left",0),d=Qa(a,"padding-right",0),e=Qa(a,"border-left-width",0);a=Qa(a,"border-right-width",0);b=b-c-d-(e+a)}}else b=Qa(a,"width",Ba(a));return b},Tc=/(\d+(\.\d+)?)%/,ke=/(\d+(\.\d+)?)px|em/,ig=function(a,b){ea(a,"width",b+"px")},jg=function(a,b){ea(a,"width",b+"%")},Uc=function(a,b){ea(a,"height",b+"px")},Yj=function(a){return Ja(a,"height").getOrThunk(function(){if(hg()){var b=a.dom.getBoundingClientRect().height;
if("border-box"!==Da(a,"box-sizing")){var c=Qa(a,"padding-top",0),d=Qa(a,"padding-bottom",0),e=Qa(a,"border-top-width",0),f=Qa(a,"border-bottom-width",0);b=b-c-d-(e+f)}}else b=Qa(a,"height",Pc(a));return b+"px"})},Zj=function(a,b,c,d){var e=N(a).map(function(f){f=c(f);return Math.floor(b/100*f)}).getOr(b);d(a,e);return e},pb=function(a){return Ja(a,"width").fold(function(){return k.from(ha(a,"width"))},function(b){return k.some(b)})},ak=function(a,b){return pb(a).fold(function(){return Ba(a)/b.pixelWidth()*
100},function(c){c=Tc.exec(c);c=null!==c?parseFloat(c[1]):je(a)/b.pixelWidth()*100;return c})},kg=function(a,b){return pb(a).fold(function(){return je(a)},function(c){var d=ke.exec(c);null!==d?c=parseInt(d[1],10):(c=Tc.exec(c),c=null!==c?parseFloat(c[1])/100*b.pixelWidth():je(a));return c})},lg=function(a){var b;if(b=Yj(a)){var c=parseInt(b,10);b=Gc(b,"%")&&"table"!==L(a)?Zj(a,c,Pc,Uc):c}else b=Pc(a);a=La(a,"rowspan",1);return b/a},bk=function(a){return pb(a).bind(function(b){return Xj(b,["fixed",
"relative","empty"])})},mg=function(a){var b=k.from(a.dom.offsetParent).map(u.fromDom).getOr(If(Kb(a)));return Ba(a)/Ba(b)*100+"%"},ck=w(Tc),dk=w(ke),ng=Gf("col"),og=function(a,b,c){return Ja(a,b).fold(function(){return c(a)+"px"},function(d){return d})},ek=function(a,b){return og(a,"width",function(c){return ng(c)?Ba(c):kg(c,b)})},fk=function(a){return og(a,"height",lg)},gk=function(a){return z(G.justColumns(a),function(b){return k.from(b.element)})},hk=function(a){return!ng(a)||Ja(a,"width").isSome()},
le=function(a,b,c,d,e,f){return a.filter(d).fold(function(){return f(Rj(c,b))},function(g){return e(g)})},me=function(a,b,c,d,e){var f=ee(a,function(l){return Ja(l,"width").isSome()});a=G.hasColumns(a)?gk(a):f;var g=[k.some(Sc.edge(b))].concat(z(Sc.positions(f,b),function(l){return l.map(function(n){return n.x})})),h=Oa(nj);return z(a,function(l,n){return le(l,n,g,h,function(p){if(hk(p))return c(p,e);p=Qj(f[n],ca);return le(p,n,g,h,function(m){return d(k.some(Ba(m)))},d)},d)})},pg=function(a){return a.map(function(b){return b+
"px"}).getOr("")},ik=function(a,b,c){return me(a,b,ak,function(d){return d.fold(function(){return c.minCellWidth()},function(e){return e/c.pixelWidth()*100})},c)},ne=function(a,b,c){return me(a,b,kg,function(d){return d.getOrThunk(c.minCellWidth)},c)},qg=function(a,b,c,d,e){a=bg(a);var f=[k.some(c.edge(b))].concat(z(c.positions(a,b),function(g){return g.map(function(h){return h.y})}));return z(a,function(g,h){return le(g,h,f,Oa(oj),d,e)})},jk=function(a,b,c){return qg(a,b,c,lg,function(d){return d.getOrThunk(Xd)})},
Aa=function(a){var b=a;return{get:function(){return b},set:function(c){b=c}}},rg=function(a){var b=function(){return Ba(a)},c=w(0);return{width:b,pixelWidth:b,getWidths:function(d,e){return ne(d,a,e)},getCellDelta:c,singleColumnWidth:w([0]),minCellWidth:c,setElementWidth:C,adjustTableWidth:C,isRelative:!0,label:"none"}},sg=function(a,b){var c=Aa(parseFloat(a)),d=Aa(Ba(b));return{width:c.get,pixelWidth:d.get,getWidths:function(e,f){return ik(e,b,f)},getCellDelta:function(e){return e/d.get()*100},singleColumnWidth:function(e,
f){return[100-e]},minCellWidth:function(){return fc()/d.get()*100},setElementWidth:jg,adjustTableWidth:function(e){var f=c.get();e=f+e/100*f;jg(b,e);c.set(e);d.set(Ba(b))},isRelative:!0,label:"percent"}},oe=function(a,b){var c=Aa(a),d=c.get;return{width:d,pixelWidth:d,getWidths:function(e,f){return ne(e,b,f)},getCellDelta:ca,singleColumnWidth:function(e,f){return[Math.max(fc(),e+f)-e]},minCellWidth:fc,setElementWidth:ig,adjustTableWidth:function(e){e=d()+e;ig(b,e);c.set(e)},isRelative:!1,label:"pixel"}},
Nb={getTableSize:function(a){return pb(a).fold(function(){return rg(a)},function(b){var c=ck().exec(b);null!==c?b=sg(c[1],a):(b=dk().exec(b),null!==b?(b=parseInt(b[1],10),b=oe(b,a)):(b=Ba(a),b=oe(b,a)));return b})},pixelSize:oe,percentageSize:sg,noneSize:rg},kk=function(a,b){var c=a.grid.rows,d=a.grid.columns,e=0,f=0,g=[],h=[];sa(a.access,function(l){g.push(l);if(b(l)){h.push(l);var n=l.row,p=n+l.rowspan-1,m=l.column;l=m+l.colspan-1;n<c?c=n:p>e&&(e=p);m<d?d=m:l>f&&(f=l)}});return{minRow:c,minCol:d,
maxRow:e,maxCol:f,allCells:g,selectedCells:h}},lk=function(a,b,c,d){for(var e=b.grid.columns,f=b.grid.rows,g=0;g<f;g++)for(var h=!1,l=0;l<e;l++)if(!(g<c.minRow||g>c.maxRow||l<c.minCol||l>c.maxCol))if(G.getAt(b,g,l).filter(d).isNone()){var n=h,p=a[g].element,m=u.fromTag("td");U(m,u.fromTag("br"));(n?U:Hd)(p,m)}else h=!0},mk=function(a,b,c,d){sa(c.columns,function(e){(e.column<b.minCol||e.column>b.maxCol)&&ua(e.element)});c=Y(nb(a,"tr",x),function(e){return 0===e.dom.childElementCount});F(c,ua);b.minCol!==
b.maxCol&&b.minRow!==b.maxRow||F(nb(a,"th,td",x),function(e){T(e,"rowspan");T(e,"colspan")});T(a,"data-snooker-locked-cols");T(a,"data-snooker-col-series");Nb.getTableSize(a).adjustTableWidth(d)},nk=function(a,b,c,d){if(0===d.minCol&&b.grid.columns===d.maxCol+1)return 0;a=ne(b,a,c);b=ma(a,function(e,f){return e+f},0);d=ma(a.slice(d.minCol,d.maxCol+1),function(e,f){return e+f},0)/b*c.pixelWidth()-c.pixelWidth();return c.getCellDelta(d)},ok=function(a,b){var c=function(p){return Ga(p.element,b)},d=
ob(a,!0),e=Pf(d),f=Nb.getTableSize(a),g=G.generate(e),h=kk(g,c),l="th:not("+b+"),td:not("+b+")",n=nb(d,"th,td",function(p){return Ga(p,l)});F(n,ua);lk(e,g,h,c);c=G.fromTable(a);a=nk(a,c,f,h);mk(d,h,g,a);return d},qb=function(a){return"img"===L(a)?1:Mc.getOption(a).fold(function(){return ra(a).length},function(b){return b.length})},pk=function(a){return Mc.getOption(a).filter(function(b){return 0!==b.trim().length||-1<b.indexOf("\u00a0")}).isSome()},qk=["img","br"],tg=function(a){return pk(a)||R(qk,
L(a))},Vc=function(a){return lj(a,tg)},pe=function(a){return rk(a,tg)},rk=function(a,b){var c=function(d){d=ra(d);for(var e=d.length-1;0<=e;e--){var f=d[e];if(b(f))return k.some(f);f=c(f);if(f.isSome())return f}return k.none()};return c(a)},sk={scope:["row","col"]},qe=function(){var a=u.fromTag("td");U(a,u.fromTag("br"));return a},tk=function(){return u.fromTag("col")},ug=function(){return u.fromTag("colgroup")},uk=function(a,b,c){var d=Oj(a,b);sa(c,function(e,f){null===e?T(d,f):fa(d,f,e)});return d},
vk=function(a){return a},vg=function(a){return function(){return u.fromTag("tr",a.dom)}},wk=function(a,b,c){return Vc(a).map(function(d){var e=c.join(",");d=cc(d,e,function(f){return M(f,a)});return Ka(d,function(f,g){g=ob(g,!1);T(g,"contenteditable");U(f,g);return g},b)}).getOr(b)},xk=function(a,b){sa(sk,function(c,d){return k.from(ha(a,d)).filter(function(e){return R(c,e)}).each(function(e){return fa(b,d,e)})})},Jd=function(a,b,c){var d=function(e,f){var g=e.element.dom,h=f.dom;Lb(g)&&Lb(h)&&(h.style.cssText=
g.style.cssText);eb(f,"height");1!==e.colspan&&eb(f,"width")};return{col:function(e){var f=Kb(e.element);f=u.fromTag(L(e.element),f.dom);d(e,f);a(e.element,f);return f},colgroup:ug,row:vg(b),cell:function(e){var f=Kb(e.element);f=u.fromTag(L(e.element),f.dom);var g=c.getOr("strong em b i span font h1 h2 h3 h4 h5 h6 p div".split(" "));g=0<g.length?wk(e.element,f,g):f;U(g,u.fromTag("br"));d(e,f);xk(e.element,f);a(e.element,f);return f},replace:uk,gap:qe}},wg=function(a){return{col:tk,colgroup:ug,row:vg(a),
cell:qe,replace:vk,gap:qe}},yk=function(a,b){b=(b||document).createElement("div");b.innerHTML=a;return ra(u.fromDom(b))},jb=function(a){return u.fromDom(a.getBody())},Kd=function(a){return function(b){return M(b,jb(a))}},Ra=function(a){return/^\d+(\.\d+)?$/.test(a)?a+"px":a},zb=function(a){T(a,"data-mce-style");var b=function(c){return T(c,"data-mce-style")};F(Mb(a),b);F(Yd(a),b)},xg=function(a,b){a=a.dom.getStyle(b,"width")||a.dom.getAttrib(b,"width");return k.from(a).filter(Oi)},yg=function(a){return/^(\d+(\.\d+)?)%$/.test(a)},
W=function(a){return u.fromDom(a.sele