Current File : /home/pacjaorg/public_html/kmm/media/vendor/codemirror/addon/merge/merge.min.js |
(function(c){typeof exports=="object"&&typeof module=="object"?c(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","diff_match_patch"],c):c(CodeMirror)})(function(c){"use strict";var b=c.Pos,z="http://www.w3.org/2000/svg";function E(e,t){this.mv=e,this.type=t,this.classes=t=="left"?{chunk:"CodeMirror-merge-l-chunk",start:"CodeMirror-merge-l-chunk-start",end:"CodeMirror-merge-l-chunk-end",insert:"CodeMirror-merge-l-inserted",del:"CodeMirror-merge-l-deleted",connect:"CodeMirror-merge-l-connect"}:{chunk:"CodeMirror-merge-r-chunk",start:"CodeMirror-merge-r-chunk-start",end:"CodeMirror-merge-r-chunk-end",insert:"CodeMirror-merge-r-inserted",del:"CodeMirror-merge-r-deleted",connect:"CodeMirror-merge-r-connect"}}E.prototype={constructor:E,init:function(e,t,r){this.edit=this.mv.edit,(this.edit.state.diffViews||(this.edit.state.diffViews=[])).push(this),this.orig=c(e,q({value:t,readOnly:!this.mv.options.allowEditingOriginals},q(r))),this.mv.options.connect=="align"&&(this.edit.state.trackAlignable||(this.edit.state.trackAlignable=new x(this.edit)),this.orig.state.trackAlignable=new x(this.orig)),this.lockButton.title=this.edit.phrase("Toggle locked scrolling"),this.lockButton.setAttribute("aria-label",this.lockButton.title),this.orig.state.diffViews=[this];var i=r.chunkClassLocation||"background";Object.prototype.toString.call(i)!="[object Array]"&&(i=[i]),this.classes.classLocation=i,this.diff=j(Y(t),Y(r.value),this.mv.options.ignoreWhitespace),this.chunks=ee(this.diff),this.diffOutOfDate=this.dealigned=!1,this.needsScrollSync=null,this.showDifferences=r.showDifferences!==!1},registerEvents:function(e){this.forceUpdate=he(this),_(this,!0,!1),pe(this,e)},setShowDifferences:function(e){e=e!==!1,e!=this.showDifferences&&(this.showDifferences=e,this.forceUpdate("full"))}};function F(e){e.diffOutOfDate&&(e.diff=j(e.orig.getValue(),e.edit.getValue(),e.mv.options.ignoreWhitespace),e.chunks=ee(e.diff),e.diffOutOfDate=!1,c.signal(e.edit,"updateDiff",e.diff))}var M=!1;function he(e){var t={from:0,to:0,marked:[]},r={from:0,to:0,marked:[]},i,n=!1;function l(g){M=!0,n=!1,g=="full"&&(e.svg&&B(e.svg),e.copyButtons&&B(e.copyButtons),N(e.edit,t.marked,e.classes),N(e.orig,r.marked,e.classes),t.from=t.to=r.from=r.to=0),F(e),e.showDifferences&&(R(e.edit,e.diff,t,DIFF_INSERT,e.classes),R(e.orig,e.diff,r,DIFF_DELETE,e.classes)),e.mv.options.connect=="align"&&U(e),w(e),e.needsScrollSync!=null&&T(e,e.needsScrollSync),M=!1}function o(g){M||(e.dealigned=!0,a(g))}function a(g){M||n||(clearTimeout(i),g===!0&&(n=!0),i=setTimeout(l,g===!0?20:250))}function f(g,u){e.diffOutOfDate||(e.diffOutOfDate=!0,t.from=t.to=r.from=r.to=0),o(u.text.length-1!=u.to.line-u.from.line)}function s(){e.diffOutOfDate=!0,e.dealigned=!0,l("full")}return e.edit.on("change",f),e.orig.on("change",f),e.edit.on("swapDoc",s),e.orig.on("swapDoc",s),e.mv.options.connect=="align"&&(c.on(e.edit.state.trackAlignable,"realign",o),c.on(e.orig.state.trackAlignable,"realign",o)),e.edit.on("viewportChange",function(){a(!1)}),e.orig.on("viewportChange",function(){a(!1)}),l(),l}function pe(e,t){e.edit.on("scroll",function(){T(e,!0)&&w(e)}),e.orig.on("scroll",function(){T(e,!1)&&w(e),t&&T(t,!0)&&w(t)})}function T(e,t){if(e.diffOutOfDate)return e.lockScroll&&e.needsScrollSync==null&&(e.needsScrollSync=t),!1;if(e.needsScrollSync=null,!e.lockScroll)return!0;var r,i,n=+new Date;if(t?(r=e.edit,i=e.orig):(r=e.orig,i=e.edit),r.state.scrollSetBy==e&&(r.state.scrollSetAt||0)+250>n)return!1;var l=r.getScrollInfo();if(e.mv.options.connect=="align")h=l.top;else{var o=.5*l.clientHeight,a=l.top+o,f=r.lineAtHeight(a,"local"),s=Ce(e.chunks,f,t),g=K(r,t?s.edit:s.orig),u=K(i,t?s.orig:s.edit),p=(a-g.top)/(g.bot-g.top),h=u.top-o+p*(u.bot-u.top),m,v;if(h>l.top&&(v=l.top/o)<1)h=h*v+l.top*(1-v);else if((m=l.height-l.clientHeight-l.top)<o){var k=i.getScrollInfo(),d=k.height-k.clientHeight-h;d>m&&(v=m/o)<1&&(h=h*v+(k.height-k.clientHeight-m)*(1-v))}}return i.scrollTo(l.left,h),i.state.scrollSetAt=n,i.state.scrollSetBy=e,!0}function K(e,t){var r=t.after;return r==null&&(r=e.lastLine()+1),{top:e.heightAtLine(t.before||0,"local"),bot:e.heightAtLine(r,"local")}}function _(e,t,r){e.lockScroll=t,t&&r!=!1&&T(e,DIFF_INSERT)&&w(e),(t?c.addClass:c.rmClass)(e.lockButton,"CodeMirror-merge-scrolllock-enabled")}function me(e,t,r){for(var i=r.classLocation,n=0;n<i.length;n++)e.removeLineClass(t,i[n],r.chunk),e.removeLineClass(t,i[n],r.start),e.removeLineClass(t,i[n],r.end)}function N(e,t,r){for(var i=0;i<t.length;++i){var n=t[i];n instanceof c.TextMarker?n.clear():n.parent&&me(e,n,r)}t.length=0}function R(e,t,r,i,n){var l=e.getViewport();e.operation(function(){r.from==r.to||l.from-r.to>20||r.from-l.to>20?(N(e,r.marked,n),V(e,t,i,r.marked,l.from,l.to,n),r.from=l.from,r.to=l.to):(l.from<r.from&&(V(e,t,i,r.marked,l.from,r.from,n),r.from=l.from),l.to>r.to&&(V(e,t,i,r.marked,r.to,l.to,n),r.to=l.to))})}function W(e,t,r,i,n,l){for(var o=r.classLocation,a=e.getLineHandle(t),f=0;f<o.length;f++)i&&e.addLineClass(a,o[f],r.chunk),n&&e.addLineClass(a,o[f],r.start),l&&e.addLineClass(a,o[f],r.end);return a}function V(e,t,r,i,n,l,o){var a=b(0,0),f=b(n,0),s=e.clipPos(b(l-1)),g=r==DIFF_DELETE?o.del:o.insert;function u(Q,A){for(var y=Math.max(n,Q),ce=Math.min(l,A),D=y;D<ce;++D)i.push(W(e,D,o,!0,D==Q,D==A-1));Q==A&&y==A&&ce==A&&(y?i.push(W(e,y-1,o,!1,!1,!0)):i.push(W(e,y,o,!1,!0,!1)))}for(var p=0,h=!1,m=0;m<t.length;++m){var v=t[m],k=v[0],d=v[1];if(k==DIFF_EQUAL){var ae=a.line+(re(t,m)?0:1);O(a,d);var fe=a.line+(te(t,m)?1:0);fe>ae&&(h&&(u(p,ae),h=!1),p=fe)}else if(h=!0,k==r){var se=O(a,d,!0),ge=Te(f,a),ue=Fe(s,se);Ae(ge,ue)||i.push(e.markText(ge,ue,{className:g})),a=se}}h&&u(p,a.line+1)}function w(e){if(e.showDifferences){if(e.svg){B(e.svg);var t=e.gap.offsetWidth;ne(e.svg,"width",t,"height",e.gap.offsetHeight)}e.copyButtons&&B(e.copyButtons);for(var r=e.edit.getViewport(),i=e.orig.getViewport(),n=e.mv.wrap.getBoundingClientRect().top,l=n-e.edit.getScrollerElement().getBoundingClientRect().top+e.edit.getScrollInfo().top,o=n-e.orig.getScrollerElement().getBoundingClientRect().top+e.orig.getScrollInfo().top,a=0;a<e.chunks.length;a++){var f=e.chunks[a];f.editFrom<=r.to&&f.editTo>=r.from&&f.origFrom<=i.to&&f.origTo>=i.from&&be(e,f,o,l,t)}}}function J(e,t){for(var r=0,i=0,n=0;n<t.length;n++){var l=t[n];if(l.editTo>e&&l.editFrom<=e)return null;if(l.editFrom>e)break;r=l.editTo,i=l.origTo}return i+(e-r)}function H(e,t,r){for(var i=e.state.trackAlignable,n=e.firstLine(),l=0,o=[],a=0;;a++){for(var f=t[a],s=f?r?f.origFrom:f.editFrom:1e9;l<i.alignable.length;l+=2){var g=i.alignable[l]+1;if(!(g<=n))if(g<=s)o.push(g);else break}if(!f)break;o.push(n=r?f.origTo:f.editTo)}return o}function P(e,t,r,i){var n=0,l=0,o=0,a=0;e:for(;;n++){var f=e[n],s=t[l];if(!f&&s==null)break;for(var g=f?f[0]:1e9,u=s??1e9;o<r.length;){var p=r[o];if(p.origFrom<=u&&p.origTo>u){l++,n--;continue e}if(p.editTo>g){if(p.editFrom<=g)continue e;break}a+=p.origTo-p.origFrom-(p.editTo-p.editFrom),o++}if(g==u-a)f[i]=u,l++;else if(g<u-a)f[i]=g+a;else{var h=[u-a,null,null];h[i]=u,e.splice(n,0,h),l++}}}function de(e,t){var r=H(e.edit,e.chunks,!1),i=[];if(t)for(var n=0,l=0;n<t.chunks.length;n++){for(var o=t.chunks[n].editTo;l<r.length&&r[l]<o;)l++;(l==r.length||r[l]!=o)&&r.splice(l++,0,o)}for(var n=0;n<r.length;n++)i.push([r[n],null,null]);return P(i,H(e.orig,e.chunks,!0),e.chunks,1),t&&P(i,H(t.orig,t.chunks,!0),t.chunks,2),i}function U(e,t){if(!(!e.dealigned&&!t)){if(!e.orig.curOp)return e.orig.operation(function(){U(e,t)});e.dealigned=!1;var r=e.mv.left==e?e.mv.right:e.mv.left;r&&(F(r),r.dealigned=!1);for(var i=de(e,r),n=e.mv.aligners,l=0;l<n.length;l++)n[l].clear();n.length=0;var o=[e.edit,e.orig],a=[],f=[];r&&o.push(r.orig);for(var l=0;l<o.length;l++)a.push(o[l].getScrollInfo().top),f.push(-o[l].getScrollerElement().getBoundingClientRect().top);(f[0]!=f[1]||o.length==3&&f[1]!=f[2])&&X(o,f,[0,0,0],n);for(var s=0;s<i.length;s++)X(o,f,i[s],n);for(var l=0;l<o.length;l++)o[l].scrollTo(null,a[l])}}function X(e,t,r,i){for(var n=-1e8,l=[],o=0;o<e.length;o++)if(r[o]!=null){var a=e[o].heightAtLine(r[o],"local")-t[o];l[o]=a,n=Math.max(n,a)}for(var o=0;o<e.length;o++)if(r[o]!=null){var f=n-l[o];f>1&&i.push(ve(e[o],r[o],f))}}function ve(e,t,r){var i=!0;t>e.lastLine()&&(t--,i=!1);var n=document.createElement("div");return n.className="CodeMirror-merge-spacer",n.style.height=r+"px",n.style.minWidth="1px",e.addLineWidget(t,n,{height:r,above:i,mergeSpacer:!0,handleMouseEvents:!0})}function be(e,t,r,i,n){var l=e.type=="left",o=e.orig.heightAtLine(t.origFrom,"local",!0)-r;if(e.svg){var a=o,f=e.edit.heightAtLine(t.editFrom,"local",!0)-i;if(l){var s=a;a=f,f=s}var g=e.orig.heightAtLine(t.origTo,"local",!0)-r,u=e.edit.heightAtLine(t.editTo,"local",!0)-i;if(l){var s=g;g=u,u=s}var p=" C "+n/2+" "+f+" "+n/2+" "+a+" "+(n+2)+" "+a,h=" C "+n/2+" "+g+" "+n/2+" "+u+" -1 "+u;ne(e.svg.appendChild(document.createElementNS(z,"path")),"d","M -1 "+f+p+" L "+(n+2)+" "+g+h+" z","class",e.classes.connect)}if(e.copyButtons){var m=e.copyButtons.appendChild(C("div",e.type=="left"?"\u21DD":"\u21DC","CodeMirror-merge-copy")),v=e.mv.options.allowEditingOriginals;if(m.title=e.edit.phrase(v?"Push to left":"Revert chunk"),m.chunk=t,m.style.top=(t.origTo>t.origFrom?o:e.edit.heightAtLine(t.editFrom,"local")-i)+"px",m.setAttribute("role","button"),m.setAttribute("tabindex","0"),m.setAttribute("aria-label",m.title),v){var k=e.edit.heightAtLine(t.editFrom,"local")-i,d=e.copyButtons.appendChild(C("div",e.type=="right"?"\u21DD":"\u21DC","CodeMirror-merge-copy-reverse"));d.title="Push to right",d.chunk={editFrom:t.origFrom,editTo:t.origTo,origFrom:t.editFrom,origTo:t.editTo},d.style.top=k+"px",e.type=="right"?d.style.left="2px":d.style.right="2px",d.setAttribute("role","button"),d.setAttribute("tabindex","0"),d.setAttribute("aria-label",d.title)}}}function Z(e,t,r,i){if(!e.diffOutOfDate){var n=i.origTo>r.lastLine()?b(i.origFrom-1):b(i.origFrom,0),l=b(i.origTo,0),o=i.editTo>t.lastLine()?b(i.editFrom-1):b(i.editFrom,0),a=b(i.editTo,0),f=e.mv.options.revertChunk;f?f(e.mv,r,n,l,t,o,a):t.replaceRange(r.getRange(n,l),o,a)}}var L=c.MergeView=function(e,t){if(!(this instanceof L))return new L(e,t);this.options=t;var r=t.origLeft,i=t.origRight==null?t.orig:t.origRight,n=r!=null,l=i!=null,o=1+(n?1:0)+(l?1:0),a=[],f=this.left=null,s=this.right=null,g=this;if(n){f=this.left=new E(this,"left");var u=C("div",null,"CodeMirror-merge-pane CodeMirror-merge-left");a.push(u),a.push($(f))}var p=C("div",null,"CodeMirror-merge-pane CodeMirror-merge-editor");if(a.push(p),l){s=this.right=new E(this,"right"),a.push($(s));var h=C("div",null,"CodeMirror-merge-pane CodeMirror-merge-right");a.push(h)}(l?h:p).className+=" CodeMirror-merge-pane-rightmost",a.push(C("div",null,null,"height: 0; clear: both;"));var m=this.wrap=e.appendChild(C("div",a,"CodeMirror-merge CodeMirror-merge-"+o+"pane"));this.edit=c(p,q(t)),f&&f.init(u,r,t),s&&s.init(h,i,t),t.collapseIdentical&&this.editor().operation(function(){Se(g,t.collapseIdentical)}),t.connect=="align"&&(this.aligners=[],U(this.left||this.right,!0)),f&&f.registerEvents(s),s&&s.registerEvents(f);var v=function(){f&&w(f),s&&w(s)};c.on(window,"resize",v);var k=setInterval(function(){for(var d=m.parentNode;d&&d!=document.body;d=d.parentNode);d||(clearInterval(k),c.off(window,"resize",v))},5e3)};function $(e){var t=e.lockButton=C("div",null,"CodeMirror-merge-scrolllock");t.setAttribute("role","button"),t.setAttribute("tabindex","0");var r=C("div",[t],"CodeMirror-merge-scrolllock-wrap");c.on(t,"click",function(){_(e,!e.lockScroll)}),c.on(t,"keyup",function(o){(o.key==="Enter"||o.code==="Space")&&_(e,!e.lockScroll)});var i=[r];if(e.mv.options.revertButtons!==!1){e.copyButtons=C("div",null,"CodeMirror-merge-copybuttons-"+e.type);var n=function(o){var a=o.target||o.srcElement;if(a.chunk){if(a.className=="CodeMirror-merge-copy-reverse"){Z(e,e.orig,e.edit,a.chunk);return}Z(e,e.edit,e.orig,a.chunk)}};c.on(e.copyButtons,"click",n),c.on(e.copyButtons,"keyup",function(o){(o.key==="Enter"||o.code==="Space")&&n(o)}),i.unshift(e.copyButtons)}if(e.mv.options.connect!="align"){var l=document.createElementNS&&document.createElementNS(z,"svg");l&&!l.createSVGRect&&(l=null),e.svg=l,l&&i.push(l)}return e.gap=C("div",i,"CodeMirror-merge-gap")}L.prototype={constructor:L,editor:function(){return this.edit},rightOriginal:function(){return this.right&&this.right.orig},leftOriginal:function(){return this.left&&this.left.orig},setShowDifferences:function(e){this.right&&this.right.setShowDifferences(e),this.left&&this.left.setShowDifferences(e)},rightChunks:function(){if(this.right)return F(this.right),this.right.chunks},leftChunks:function(){if(this.left)return F(this.left),this.left.chunks}};function Y(e){return typeof e=="string"?e:e.getValue()}var G;function j(e,t,r){G||(G=new diff_match_patch);for(var i=G.diff_main(e,t),n=0;n<i.length;++n){var l=i[n];(r?!/[^ \t]/.test(l[1]):!l[1])?i.splice(n--,1):n&&i[n-1][0]==l[0]&&(i.splice(n--,1),i[n][1]+=l[1])}return i}function ee(e){var t=[];if(!e.length)return t;for(var r=0,i=0,n=b(0,0),l=b(0,0),o=0;o<e.length;++o){var a=e[o],f=a[0];if(f==DIFF_EQUAL){var s=!re(e,o)||n.line<r||l.line<i?1:0,g=n.line+s,u=l.line+s;O(n,a[1],null,l);var p=te(e,o)?1:0,h=n.line+p,m=l.line+p;h>g&&(o&&t.push({origFrom:i,origTo:u,editFrom:r,editTo:g}),r=h,i=m)}else O(f==DIFF_INSERT?n:l,a[1])}return(r<=n.line||i<=l.line)&&t.push({origFrom:i,origTo:l.line+1,editFrom:r,editTo:n.line+1}),t}function te(e,t){if(t==e.length-1)return!0;var r=e[t+1][1];return r.length==1&&t<e.length-2||r.charCodeAt(0)!=10?!1:t==e.length-2?!0:(r=e[t+2][1],(r.length>1||t==e.length-3)&&r.charCodeAt(0)==10)}function re(e,t){if(t==0)return!0;var r=e[t-1][1];return r.charCodeAt(r.length-1)!=10?!1:t==1?!0:(r=e[t-2][1],r.charCodeAt(r.length-1)==10)}function Ce(e,t,r){for(var i,n,l,o,a=0;a<e.length;a++){var f=e[a],s=r?f.editFrom:f.origFrom,g=r?f.editTo:f.origTo;n==null&&(s>t?(n=f.editFrom,o=f.origFrom):g>t&&(n=f.editTo,o=f.origTo)),g<=t?(i=f.editTo,l=f.origTo):s<=t&&(i=f.editFrom,l=f.origFrom)}return{edit:{before:i,after:n},orig:{before:l,after:o}}}function ke(e,t,r){e.addLineClass(t,"wrap","CodeMirror-merge-collapsed-line");var i=document.createElement("span");i.className="CodeMirror-merge-collapsed-widget",i.title=e.phrase("Identical text collapsed. Click to expand.");var n=e.markText(b(t,0),b(r-1),{inclusiveLeft:!0,inclusiveRight:!0,replacedWith:i,clearOnEnter:!0});function l(){n.clear(),e.removeLineClass(t,"wrap","CodeMirror-merge-collapsed-line")}return n.explicitlyCleared&&l(),c.on(i,"click",l),n.on("clear",l),c.on(i,"click",l),{mark:n,clear:l}}function we(e,t){var r=[];function i(){for(var a=0;a<r.length;a++)r[a].clear()}for(var n=0;n<t.length;n++){var l=t[n],o=ke(l.cm,l.line,l.line+e);r.push(o),o.mark.on("clear",i)}return r[0].mark}function ie(e,t,r,i){for(var n=0;n<e.chunks.length;n++)for(var l=e.chunks[n],o=l.editFrom-t;o<l.editTo+t;o++){var a=o+r;a>=0&&a<i.length&&(i[a]=!1)}}function Se(e,t){typeof t!="number"&&(t=2);for(var r=[],i=e.editor(),n=i.firstLine(),l=n,o=i.lastLine();l<=o;l++)r.push(!0);e.left&&ie(e.left,t,n,r),e.right&&ie(e.right,t,n,r);for(var a=0;a<r.length;a++)if(r[a]){for(var f=a+n,s=1;a<r.length-1&&r[a+1];a++,s++);if(s>t){var g=[{line:f,cm:i}];e.left&&g.push({line:J(f,e.left.chunks),cm:e.left.orig}),e.right&&g.push({line:J(f,e.right.chunks),cm:e.right.orig});var u=we(s,g);e.options.onCollapse&&e.options.onCollapse(e,f,s,u)}}}function C(e,t,r,i){var n=document.createElement(e);if(r&&(n.className=r),i&&(n.style.cssText=i),typeof t=="string")n.appendChild(document.createTextNode(t));else if(t)for(var l=0;l<t.length;++l)n.appendChild(t[l]);return n}function B(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild)}function ne(e){for(var t=1;t<arguments.length;t+=2)e.setAttribute(arguments[t],arguments[t+1])}function q(e,t){t||(t={});for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return t}function O(e,t,r,i){for(var n=r?b(e.line,e.ch):e,l=0;;){var o=t.indexOf(`
`,l);if(o==-1)break;++n.line,i&&++i.line,l=o+1}return n.ch=(l?0:n.ch)+(t.length-l),i&&(i.ch=(l?0:i.ch)+(t.length-l)),n}var le=1,S=2,I=4;function x(e){this.cm=e,this.alignable=[],this.height=e.doc.height;var t=this;e.on("markerAdded",function(r,i){if(i.collapsed){var n=i.find(1);n!=null&&t.set(n.line,I)}}),e.on("markerCleared",function(r,i,n,l){l!=null&&i.collapsed&&t.check(l,I,t.hasMarker)}),e.on("markerChanged",this.signal.bind(this)),e.on("lineWidgetAdded",function(r,i,n){i.mergeSpacer||(i.above?t.set(n-1,S):t.set(n,le))}),e.on("lineWidgetCleared",function(r,i,n){i.mergeSpacer||(i.above?t.check(n-1,S,t.hasWidgetBelow):t.check(n,le,t.hasWidget))}),e.on("lineWidgetChanged",this.signal.bind(this)),e.on("change",function(r,i){var n=i.from.line,l=i.to.line-i.from.line,o=i.text.length-1,a=n+o;(l||o)&&t.map(n,l,o),t.check(a,I,t.hasMarker),(l||o)&&t.check(i.from.line,I,t.hasMarker)}),e.on("viewportChange",function(){t.cm.doc.height!=t.height&&t.signal()})}x.prototype={signal:function(){c.signal(this,"realign"),this.height=this.cm.doc.height},set:function(e,t){for(var r=-1;r<this.alignable.length;r+=2){var i=this.alignable[r]-e;if(i==0){if((this.alignable[r+1]&t)==t)return;this.alignable[r+1]|=t,this.signal();return}if(i>0)break}this.signal(),this.alignable.splice(r,0,e,t)},find:function(e){for(var t=0;t<this.alignable.length;t+=2)if(this.alignable[t]==e)return t;return-1},check:function(e,t,r){var i=this.find(e);if(!(i==-1||!(this.alignable[i+1]&t))&&!r.call(this,e)){this.signal();var n=this.alignable[i+1]&~t;n?this.alignable[i+1]=n:this.alignable.splice(i,2)}},hasMarker:function(e){var t=this.cm.getLineHandle(e);if(t.markedSpans){for(var r=0;r<t.markedSpans.length;r++)if(t.markedSpans[r].marker.collapsed&&t.markedSpans[r].to!=null)return!0}return!1},hasWidget:function(e){var t=this.cm.getLineHandle(e);if(t.widgets){for(var r=0;r<t.widgets.length;r++)if(!t.widgets[r].above&&!t.widgets[r].mergeSpacer)return!0}return!1},hasWidgetBelow:function(e){if(e==this.cm.lastLine())return!1;var t=this.cm.getLineHandle(e+1);if(t.widgets){for(var r=0;r<t.widgets.length;r++)if(t.widgets[r].above&&!t.widgets[r].mergeSpacer)return!0}return!1},map:function(e,t,r){for(var i=r-t,n=e+t,l=-1,o=-1,a=0;a<this.alignable.length;a+=2){var f=this.alignable[a];f==e&&this.alignable[a+1]&S&&(l=a),f==n&&this.alignable[a+1]&S&&(o=a),!(f<=e)&&(f<n?this.alignable.splice(a--,2):this.alignable[a]+=i)}if(l>-1){var s=this.alignable[l+1];s==S?this.alignable.splice(l,2):this.alignable[l+1]=s&~S}o>-1&&r&&this.set(e+r,S)}};function Fe(e,t){return(e.line-t.line||e.ch-t.ch)<0?e:t}function Te(e,t){return(e.line-t.line||e.ch-t.ch)>0?e:t}function Ae(e,t){return e.line==t.line&&e.ch==t.ch}function ye(e,t,r){for(var i=e.length-1;i>=0;i--){var n=e[i],l=(r?n.origTo:n.editTo)-1;if(l<t)return l}}function De(e,t,r){for(var i=0;i<e.length;i++){var n=e[i],l=r?n.origFrom:n.editFrom;if(l>t)return l}}function oe(e,t){var r=null,i=e.state.diffViews,n=e.getCursor().line;if(i)for(var l=0;l<i.length;l++){var o=i[l],a=e==o.orig;F(o);var f=t<0?ye(o.chunks,n,a):De(o.chunks,n,a);f!=null&&(r==null||(t<0?f>r:f<r))&&(r=f)}if(r!=null)e.setCursor(r,0);else return c.Pass}c.commands.goNextDiff=function(e){return oe(e,1)},c.commands.goPrevDiff=function(e){return oe(e,-1)}});