/** * Copyright (c) Tiny Technologies, Inc. All rights reserved. * Licensed under the LGPL or a commercial license. * For LGPL see License.txt in the project root for license information. * For commercial licenses see https://www.tiny.cloud/ * * Version: 5.2.1 (2020-03-25) */ !function(f){"use strict";function d(e){return function(){return e}}function o(e){return e}var S=function(e){function t(){return n}var n=e;return{get:t,set:function(e){n=e},clone:function(){return S(t())}}},x=function(){};function b(r){for(var o=[],e=1;en.maxRow()||sn.maxCol()))gn.getAt(t,l,s).filter(r).isNone()?(o=f,void 0,i=e[l].element(),u=ot.fromTag("td"),Mt(u,ot.fromTag("br")),(o?Mt:Te)(i,u)):f=!0}}(r,o,i,n),function(e,t){var n=v(cn.firstLayer(e,"tr"),function(e){return 0===e.dom().childElementCount});h(n,Wt),t.minCol()!==t.maxCol()&&t.minRow()!==t.maxRow()||h(cn.firstLayer(e,"th,td"),function(e){Y(e,"rowspan"),Y(e,"colspan")}),Y(e,"width"),Y(e,"height"),ue(e,"width"),ue(e,"height")}(e,i),e};function vn(e){return Pn.get(e)}function bn(e){return Pn.getOption(e)}function wn(e,t){Pn.set(e,t)}function yn(e){return"img"===et(e)?1:bn(e).fold(function(){return Ce(e).length},function(e){return e.length})}function Cn(e){return function(e){return bn(e).filter(function(e){return 0!==e.trim().length||-1=e.startCol()&&t.column()+t.colspan()-1<=e.finishCol()&&t.row()>=e.startRow()&&t.row()+t.rowspan()-1<=e.finishRow()}function Bn(e,t,n){var r=gn.findItem(e,t,It),o=gn.findItem(e,n,It);return r.bind(function(t){return o.map(function(e){return function(e,t){return Yt(Math.min(e.row(),t.row()),Math.min(e.column(),t.column()),Math.max(e.row()+e.rowspan()-1,t.row()+t.rowspan()-1),Math.max(e.column()+e.colspan()-1,t.column()+t.colspan()-1))}(t,e)})})}var Pn=function ts(n,r){var t=function(e){return n(e)?Me.from(e.dom().nodeValue):Me.none()};return{get:function(e){if(!n(e))throw new Error("Can only get "+r+" value of a "+r+" node");return t(e).getOr("")},getOption:t,set:function(e,t){if(!n(e))throw new Error("Can only set raw "+r+" value of a "+r+" node");e.dom().nodeValue=t}}}(nt,"text"),Mn=["img","br"],Wn=function(e,i){var u=function(e){for(var t=Ce(e),n=t.length-1;0<=n;n--){var r=t[n];if(i(r))return Me.some(r);var o=u(r);if(o.isSome())return o}return Me.none()};return u(e)},_n={cellOperations:function(i,e,u){return{row:kn(e),cell:function(e){var t=he(e.element()),n=ot.fromTag(et(e.element()),t.dom()),r=u.getOr(["strong","em","b","i","span","font","h1","h2","h3","h4","h5","h6","p","div"]),o=0=e.startCol()&&o<=e.finishRow()&&i>=e.startRow()},jn=function(e,t){for(var n=!0,r=b(In,t),o=t.startRow();o<=t.finishRow();o++)for(var i=t.startCol();i<=t.finishCol();i++)n=n&&gn.getAt(e,o,i).exists(r);return n?Me.some(t):Me.none()},zn=Bn,Hn=function(t,e,n){return Bn(t,e,n).bind(function(e){return jn(t,e)})},Fn=function(r,e,o,i){return gn.findItem(r,e,It).bind(function(e){var t=0=t.length-1)return Me.none();var e=t[n].fold(function(){var e=A(t.slice(0,n));return E(e,function(e,t){return e.map(function(e){return{value:e,delta:t+1}})})},function(e){return Me.some({value:e,delta:0})}),r=t[n+1].fold(function(){var e=t.slice(n+1);return E(e,function(e,t){return e.map(function(e){return{value:e,delta:t+1}})})},function(e){return Me.some({value:e,delta:1})});return e.bind(function(n){return r.map(function(e){var t=e.delta+n.delta;return Math.abs(e.value-n.value)/t})})}function Eo(e){var t=e.replace(/\./g,"-");return{resolve:function(e){return t+"-"+e}}}function No(e){var t=Be(e.parent(),"."+iu);h(t,Wt)}function ko(n,e,r){var o=n.origin();h(e,function(e,t){e.each(function(e){var t=r(o,e);Ro(t,iu),Mt(n.parent(),t)})})}function Io(e,t,n,r,o,i){var u=qr(t);!function(e,t,r,o){ko(e,t,function(e,t){var n=ou(t.row(),r.left()-e.left(),t.y()-e.top(),o,7);return Ro(n,uu),n})}(e,0',r.insertBefore(o,r.firstChild)),""===u.align?Mc(n,r):Bc(n,r,u.align),n.focus(),n.addVisual()})}function Gi(t){return function(e){return Me.from(e.dom.getParent(e.selection.getStart(),t)).map(ot.fromDom)}}function Yi(e){function t(){e.stopPropagation()}function n(){e.preventDefault()}var r=ot.fromDom(e.target),o=function(n,r){return function(){for(var e=[],t=0;t=t.length||e.column()>pu.cellLength(t[0]))return Cu.error("invalid start address out of table bounds, row: "+e.row()+", column: "+e.column());var r=t.slice(e.row()),o=r[0].cells().slice(e.column()),i=pu.cellLength(n[0]),u=n.length;return Cu.value({rowDelta:d(r.length-u),colDelta:d(o.length-i)})},xu=function(e,t){var n=pu.cellLength(e[0]),r=pu.cellLength(t[0]);return{rowDelta:d(0),colDelta:d(n-r)}},Ru=function(e,t,n){var r=t.colDelta()<0?Vo:o;return(t.rowDelta()<0?qo:o)(r(e,Math.abs(t.colDelta()),n),Math.abs(t.rowDelta()),n)},Tu=function(e,t,n,r){if(0===e.length)return e;for(var o=t.startRow();o<=t.finishRow();o++)for(var i=t.startCol();i<=t.finishCol();i++)pu.mutateCell(e[o],i,Ut(r(),!1));return e},Ou=function(e,t,n,r){for(var o=!0,i=0;i=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom}function Ma(n,r,e,t,o){function i(e){var t=n.dom().createRange();return t.setStart(r.dom(),e),t.collapse(!0),t}var u=vn(r).length,c=function(e,t,n,r,o){if(0===o)return 0;if(t===r)return o-1;for(var i=r,u=1;ut.right()}(n,e)})})}function hl(t,n,e){var r=t.move(e,5),o=Sf(n,t,e,r,100).getOr(r);return function(e,t,n){return e.point(t)>n.getInnerHeight()?Me.some(e.point(t)-n.getInnerHeight()):e.point(t)<0?Me.some(-e.point(t)):Me.none()}(t,o,n).fold(function(){return n.situsFromPoint(o.left(),t.point(o))},function(e){return n.scrollBy(0,e),n.situsFromPoint(o.left(),t.point(o)-e)})}function vl(e,t){return function(e,t,n){return $t(e,t,n).isSome()}(e,function(e){return ve(e).exists(function(e){return It(e,t)})})}function bl(t,r,o,e,i){return en(e,"td,th",r).bind(function(n){return en(n,"table",r).bind(function(e){return vl(i,e)?Ef(t,r,o).bind(function(t){return en(t.finish(),"td,th",r).map(function(e){return{start:d(n),finish:d(e),range:d(t)}})}):Me.none()})})}function wl(e,t){return en(e,"td,th",t)}var yl=function(t,n,e){function r(){l.stop(),u.isOn()&&(u.off(),i.trigger.stop())}var o=!1,i=ma.create({start:da([]),stop:da([])}),u=xa(),c=function(n,r){var o=null;return{cancel:function(){null!==o&&(f.clearTimeout(o),o=null)},throttle:function(){for(var e=[],t=0;tr.left&&o.left ("+e.right()+", "+e.bottom()+")"}},vf=function(e,t,n){return tt(t)?gl(e,t).map(ml):nt(t)?function(e,t,n){return 0<=n&&no.bottom()?wf.retry(i):n.top()===o.bottom()?wf.retry(hf.moveDown(o,1)):pl(e,t,o)?wf.retry(hf.translate(i,5,0)):wf.none()},move:hf.moveDown,gather:ll},Sf=function(n,r,o,i,u){return 0===u?Me.some(i):function(e,t,n){return e.elementFromPoint(t,n).filter(function(e){return"table"===et(e)}).isSome()}(n,i.left(),r.point(i))?function(e,t,n,r,o){return Sf(e,t,n,t.move(r,5),o)}(n,r,o,i,u-1):n.situsFromPoint(i.left(),r.point(i)).bind(function(e){return e.start().fold(Me.none,function(t){return bf(n,t).bind(function(e){return r.adjuster(n,t,e,o,i).fold(Me.none,function(e){return Sf(n,r,o,e,u-1)})}).orThunk(function(){return Me.some(i)})},Me.none)})},xf={tryUp:b(hl,yf),tryDown:b(hl,Cf),ieTryUp:function(e,t){return e.situsFromPoint(t.left(),t.top()-5)},ieTryDown:function(e,t){return e.situsFromPoint(t.left(),t.bottom()+5)},getJumpSize:d(5)},Rf=me(),Tf=function(r,o,i,u,c,a){return 0===a?Me.none():Af(r,o,i,u,c).bind(function(e){var t=r.fromSitus(e),n=lf.verify(r,i,u,t.finish(),t.foffset(),c.failure,o);return lf.cata(n,function(){return Me.none()},function(){return Me.some(e)},function(e){return It(i,e)&&0===u?Of(r,i,u,hf.moveUp,c):Tf(r,o,e,0,c,a-1)},function(e){return It(i,e)&&u===yn(e)?Of(r,i,u,hf.moveDown,c):Tf(r,o,e,yn(e),c,a-1)})})},Of=function(t,e,n,r,o){return vf(t,e,n).bind(function(e){return Df(t,o,r(e,xf.getJumpSize()))})},Df=function(e,t,n){return Rf.browser.isChrome()||Rf.browser.isSafari()||Rf.browser.isFirefox()||Rf.browser.isEdge()?t.otherRetry(e,n):Rf.browser.isIE()?t.ieRetry(e,n):Me.none()},Af=function(t,e,n,r,o){return vf(t,n,r).bind(function(e){return Df(t,o,e)})},Ef=function(t,n,r){return function(o,i,u){return o.getSelection().bind(function(r){return mf(i,r.finish(),r.foffset(),u).fold(function(){return Me.some(Tc(r.finish(),r.foffset()))},function(e){var t=o.fromSitus(e),n=lf.verify(o,r.finish(),r.foffset(),t.finish(),t.foffset(),u.failure,i);return gf(n)})})}(t,n,r).bind(function(e){return Tf(t,n,e.element(),e.offset(),r,20).map(t.fromSitus)})},Nf=me(),kf=function(e,t,n,r,o,i){return Nf.browser.isIE()?Me.none():i(r,t).orThunk(function(){return bl(e,t,n,r,o).map(function(e){var t=e.range();return Vl.create(Me.some(Yl.makeSitus(t.start(),t.soffset(),t.finish(),t.foffset())),!0)})})},If=function(e,t,n,r,o,i,u){return bl(e,n,r,o,i).bind(function(e){return Xl.detect(t,n,e.start(),e.finish(),u)})},Bf=function(e,r){return en(e,"tr",r).bind(function(n){return en(n,"table",r).bind(function(e){var t=Be(e,"tr");return It(n,t[0])?function(e,t,n){return of(cf,e,t,n)}(e,function(e){return xn(e).isSome()},r).map(function(e){var t=yn(e);return Vl.create(Me.some(Yl.makeSitus(e,t,e,t)),!0)}):Me.none()})})},Pf=function(e,r){return en(e,"tr",r).bind(function(n){return en(n,"table",r).bind(function(e){var t=Be(e,"tr");return It(n,t[t.length-1])?function(e,t,n){return uf(cf,e,t,n)}(e,function(e){return Sn(e).isSome()},r).map(function(e){return Vl.create(Me.some(Yl.makeSitus(e,0,e,0)),!0)}):Me.none()})})};function Mf(t){return function(e){return e===t}}function Wf(c){return{elementFromPoint:function(e,t){return ot.fromPoint(ot.fromDom(c.document),e,t)},getRect:function(e){return e.dom().getBoundingClientRect()},getRangedRect:function(e,t,n,r){var o=Ml.exact(e,t,n,r);return el(c,o).map(Ff)},getSelection:function(){return Za(c).map(function(e){return Yl.convertToRange(c,e)})},fromSitus:function(e){var t=Ml.relative(e.start(),e.finish());return Yl.convertToRange(c,t)},situsFromPoint:function(e,t){return tl(c,e,t).map(function(e){return Gl(e.start(),e.soffset(),e.finish(),e.foffset())})},clearSelection:function(){!function(e){e.getSelection().removeAllRanges()}(c)},collapseSelection:function(u){void 0===u&&(u=!1),Za(c).each(function(e){return e.fold(function(e){return e.collapse(u)},function(e,t){var n=u?e:t;Xa(c,n,n)},function(e,t,n,r){var o=u?e:n,i=u?t:r;Ka(c,o,i,o,i)})})},setSelection:function(e){Ka(c,e.start(),e.soffset(),e.finish(),e.foffset())},setRelativeSelection:function(e,t){Xa(c,e,t)},selectContents:function(e){Qa(c,e)},getInnerHeight:function(){return c.innerHeight},getScrollY:function(){return function(e){var t=e!==undefined?e.dom():f.document,n=t.body.scrollLeft||t.documentElement.scrollLeft,r=t.body.scrollTop||t.documentElement.scrollTop;return fo(n,r)}(ot.fromDom(c.document)).top()},scrollBy:function(e,t){!function(e,t,n){(n!==undefined?n.dom():f.document).defaultView.scrollBy(e,t)}(e,t,ot.fromDom(c.document))}}}function _f(t,e){h(e,function(e){!function(e,t){Co(e)?e.dom().classList.remove(t):xo(e,t);To(e)}(t,e)})}var Lf={down:{traverse:ye,gather:ll,relative:Bl.before,otherRetry:xf.tryDown,ieRetry:xf.ieTryDown,failure:lf.failedDown},up:{traverse:we,gather:al,relative:Bl.before,otherRetry:xf.tryUp,ieRetry:xf.ieTryUp,failure:lf.failedUp}},jf=Mf(38),zf=Mf(40),Hf={ltr:{isBackward:Mf(37),isForward:Mf(39)},rtl:{isBackward:Mf(39),isForward:Mf(37)},isUp:jf,isDown:zf,isNavigation:function(e){return 37<=e&&e<=40}},Ff=function(e){return{left:e.left(),top:e.top(),right:e.right(),bottom:e.bottom(),width:e.width(),height:e.height()}},Uf=(me().browser.isSafari(),B("rows","cols")),qf={mouse:function(e,t,n,r){var o=function c(o,i,t,u){function n(){r=Me.none()}var r=Me.none();return{mousedown:function(e){u.clear(i),r=wl(e.target(),t)},mouseover:function(e){r.each(function(r){u.clearBeforeUpdate(i),wl(e.target(),t).each(function(n){mr(r,n,t).each(function(e){var t=e.boxes().getOr([]);(1