[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/media/vendor/codemirror/addon/search/ -> searchcursor.min.js (source)

   1  !function(t){"object"==typeof exports&&"object"==typeof module?t(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],t):t(CodeMirror)}((function(t){"use strict";var e,n,r=t.Pos;function i(t,e){for(var n=function(t){var e=t.flags;return null!=e?e:(t.ignoreCase?"i":"")+(t.global?"g":"")+(t.multiline?"m":"")}(t),r=n,i=0;i<e.length;i++)-1==r.indexOf(e.charAt(i))&&(r+=e.charAt(i));return n==r?t:new RegExp(t.source,r)}function o(t){return/\\s|\\n|\n|\\W|\\D|\[\^/.test(t.source)}function h(t,e,n){e=i(e,"g");for(var o=n.line,h=n.ch,l=t.lastLine();o<=l;o++,h=0){e.lastIndex=h;var c=t.getLine(o),s=e.exec(c);if(s)return{from:r(o,s.index),to:r(o,s.index+s[0].length),match:s}}}function l(t,e,n){if(!o(e))return h(t,e,n);e=i(e,"gm");for(var l,c=1,s=n.line,f=t.lastLine();s<=f;){for(var a=0;a<c&&!(s>f);a++){var u=t.getLine(s++);l=null==l?u:l+"\n"+u}c*=2,e.lastIndex=n.ch;var g=e.exec(l);if(g){var m=l.slice(0,g.index).split("\n"),v=g[0].split("\n"),d=n.line+m.length-1,p=m[m.length-1].length;return{from:r(d,p),to:r(d+v.length-1,1==v.length?p+v[0].length:v[v.length-1].length),match:g}}}}function c(t,e,n){for(var r,i=0;i<=t.length;){e.lastIndex=i;var o=e.exec(t);if(!o)break;var h=o.index+o[0].length;if(h>t.length-n)break;(!r||h>r.index+r[0].length)&&(r=o),i=o.index+1}return r}function s(t,e,n){e=i(e,"g");for(var o=n.line,h=n.ch,l=t.firstLine();o>=l;o--,h=-1){var s=t.getLine(o),f=c(s,e,h<0?0:s.length-h);if(f)return{from:r(o,f.index),to:r(o,f.index+f[0].length),match:f}}}function f(t,e,n){if(!o(e))return s(t,e,n);e=i(e,"gm");for(var h,l=1,f=t.getLine(n.line).length-n.ch,a=n.line,u=t.firstLine();a>=u;){for(var g=0;g<l&&a>=u;g++){var m=t.getLine(a--);h=null==h?m:m+"\n"+h}l*=2;var v=c(h,e,f);if(v){var d=h.slice(0,v.index).split("\n"),p=v[0].split("\n"),x=a+d.length,L=d[d.length-1].length;return{from:r(x,L),to:r(x+p.length-1,1==p.length?L+p[0].length:p[p.length-1].length),match:v}}}}function a(t,e,n,r){if(t.length==e.length)return n;for(var i=0,o=n+Math.max(0,t.length-e.length);;){if(i==o)return i;var h=i+o>>1,l=r(t.slice(0,h)).length;if(l==n)return h;l>n?o=h:i=h+1}}function u(t,i,o,h){if(!i.length)return null;var l=h?e:n,c=l(i).split(/\r|\n\r?/);t:for(var s=o.line,f=o.ch,u=t.lastLine()+1-c.length;s<=u;s++,f=0){var g=t.getLine(s).slice(f),m=l(g);if(1==c.length){var v=m.indexOf(c[0]);if(-1==v)continue t;o=a(g,m,v,l)+f;return{from:r(s,a(g,m,v,l)+f),to:r(s,a(g,m,v+c[0].length,l)+f)}}var d=m.length-c[0].length;if(m.slice(d)==c[0]){for(var p=1;p<c.length-1;p++)if(l(t.getLine(s+p))!=c[p])continue t;var x=t.getLine(s+c.length-1),L=l(x),O=c[c.length-1];if(L.slice(0,O.length)==O)return{from:r(s,a(g,m,d,l)+f),to:r(s+c.length-1,a(x,L,O.length,l))}}}}function g(t,i,o,h){if(!i.length)return null;var l=h?e:n,c=l(i).split(/\r|\n\r?/);t:for(var s=o.line,f=o.ch,u=t.firstLine()-1+c.length;s>=u;s--,f=-1){var g=t.getLine(s);f>-1&&(g=g.slice(0,f));var m=l(g);if(1==c.length){var v=m.lastIndexOf(c[0]);if(-1==v)continue t;return{from:r(s,a(g,m,v,l)),to:r(s,a(g,m,v+c[0].length,l))}}var d=c[c.length-1];if(m.slice(0,d.length)==d){var p=1;for(o=s-c.length+1;p<c.length-1;p++)if(l(t.getLine(o+p))!=c[p])continue t;var x=t.getLine(s+1-c.length),L=l(x);if(L.slice(L.length-c[0].length)==c[0])return{from:r(s+1-c.length,a(x,L,x.length-c[0].length,l)),to:r(s,a(g,m,d.length,l))}}}}function m(t,e,n,o){var c;this.atOccurrence=!1,this.afterEmptyMatch=!1,this.doc=t,n=n?t.clipPos(n):r(0,0),this.pos={from:n,to:n},"object"==typeof o?c=o.caseFold:(c=o,o=null),"string"==typeof e?(null==c&&(c=!1),this.matches=function(n,r){return(n?g:u)(t,e,r,c)}):(e=i(e,"gm"),o&&!1===o.multiline?this.matches=function(n,r){return(n?s:h)(t,e,r)}:this.matches=function(n,r){return(n?f:l)(t,e,r)})}String.prototype.normalize?(e=function(t){return t.normalize("NFD").toLowerCase()},n=function(t){return t.normalize("NFD")}):(e=function(t){return t.toLowerCase()},n=function(t){return t}),m.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(e){var n=this.doc.clipPos(e?this.pos.from:this.pos.to);if(this.afterEmptyMatch&&this.atOccurrence&&(n=r(n.line,n.ch),e?(n.ch--,n.ch<0&&(n.line--,n.ch=(this.doc.getLine(n.line)||"").length)):(n.ch++,n.ch>(this.doc.getLine(n.line)||"").length&&(n.ch=0,n.line++)),0!=t.cmpPos(n,this.doc.clipPos(n))))return this.atOccurrence=!1;var i=this.matches(e,n);if(this.afterEmptyMatch=i&&0==t.cmpPos(i.from,i.to),i)return this.pos=i,this.atOccurrence=!0,this.pos.match||!0;var o=r(e?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:o,to:o},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(e,n){if(this.atOccurrence){var i=t.splitLines(e);this.doc.replaceRange(i,this.pos.from,this.pos.to,n),this.pos.to=r(this.pos.from.line+i.length-1,i[i.length-1].length+(1==i.length?this.pos.from.ch:0))}}},t.defineExtension("getSearchCursor",(function(t,e,n){return new m(this.doc,t,e,n)})),t.defineDocExtension("getSearchCursor",(function(t,e,n){return new m(this,t,e,n)})),t.defineExtension("selectMatches",(function(e,n){for(var r=[],i=this.getSearchCursor(e,this.getCursor("from"),n);i.findNext()&&!(t.cmpPos(i.to(),this.getCursor("to"))>0);)r.push({anchor:i.from(),head:i.to()});r.length&&this.setSelections(r,0)}))}));


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer