MCPcopy
hub / github.com/bettercap/bettercap / wx

Function wx

modules/ui/ui/scripts.js:743–744  ·  view source on GitHub ↗
(a)

Source from the content-addressed store, hash-verified

741k.Dj=function(){if(this.O&&"pointerdrag"!=this.O.type){var a=this.O;nx(this,a);var b=this.j,c={},d,e;for(e=b.length-1;0<=e;--e){var f=b[e];var g=f[0];var h=x(g.feature);g.depth&&(h+="-"+g.depth.join("-"));h in c||(c[h]={});0===f[1]?(c[h].right=g,c[h].index=g.index):1==f[1]&&(c[h].left=g,c[h].index=g.index+1)}for(h in c){var l=c[h].right;var m=c[h].left;e=c[h].index;var n=e-1;g=void 0!==m?m:l;0>n&&(n=0);f=g.geometry;var p=d=f.W();var q=!1;switch(f.S()){case "MultiLineString":2<d[g.depth[0]].length&&
742(d[g.depth[0]].splice(e,1),q=!0);break;case "LineString":2<d.length&&(d.splice(e,1),q=!0);break;case "MultiPolygon":p=p[g.depth[1]];case "Polygon":p=p[g.depth[0]],4<p.length&&(e==p.length-1&&(e=0),p.splice(e,1),q=!0,0===e&&(p.pop(),p.push(p[0]),n=p.length-1))}q&&(q=f,this.s=!0,q.na(d),this.s=!1,d=[],void 0!==m&&(this.a.remove(m),d.push(m.ma[0])),void 0!==l&&(this.a.remove(l),d.push(l.ma[1])),void 0!==m&&void 0!==l&&(m={depth:g.depth,feature:g.feature,geometry:g.geometry,index:n,ma:d},this.a.Ca(Ca(m.ma),
743m)),vx(this,f,e,g.depth,-1),this.f&&(this.B.ha().Lb(this.f),this.f=null),b.length=0)}this.b(new ox("modifyend",this.o,a));this.C=!1;return!0}return!1};function vx(a,b,c,d,e){zm(a.a,b.G(),function(a){a.geometry===b&&(void 0===d||void 0===a.depth||jc(a.depth,d))&&a.index>c&&(a.index+=e)})}function lx(){var a=Gk();return function(){return a.Point}}function ox(a,b,c){Qc.call(this,a);this.features=b;this.mapBrowserEvent=c}w(ox,Qc);function wx(a){Jg.call(this,{handleEvent:xx});a=a?a:{};this.C=a.condition?a.condition:$g;this.D=a.addCondition?a.addCondition:Se;this.B=a.removeCondition?a.removeCondition:Se;this.T=a.toggleCondition?a.toggleCondition:bh;this.s=a.multi?a.multi:!1;this.l=a.filter?a.filter:Re;this.j=a.hitTolerance?a.hitTolerance:0;this.f=new T({source:new U({useSpatialIndex:!1,features:a.features,wrapX:a.wrapX}),style:a.style?a.style:yx(),updateWhileAnimating:!0,updateWhileInteracting:!0});if(a.layers)if("function"===
744typeof a.layers)a=a.layers;else{var b=a.layers;a=function(a){return ec(b,a)}}else a=Re;this.o=a;this.a={};a=this.f.ha().i;y(a,"add",this.ko,this);y(a,"remove",this.oo,this)}w(wx,Jg);k=wx.prototype;k.lo=function(){return this.f.ha().i};k.mo=function(){return this.j};k.no=function(a){a=x(a);return this.a[a]};
745function xx(a){if(!this.C(a))return!0;var b=this.D(a),c=this.B(a),d=this.T(a),e=!b&&!c&&!d,f=a.map,g=this.f.ha().i,h=[],l=[];if(e){lb(this.a);f.Tc(a.pixel,function(a,b){if(this.l(a,b))return l.push(a),a=x(a),this.a[a]=b,!this.s}.bind(this),{layerFilter:this.o,hitTolerance:this.j});for(e=g.kc()-1;0<=e;--e){f=g.item(e);var m=l.indexOf(f);-1<m?l.splice(m,1):(g.remove(f),h.push(f))}0!==l.length&&g.qg(l)}else{f.Tc(a.pixel,function(a,e){if(this.l(a,e))return!b&&!d||ec(g.a,a)?(c||d)&&ec(g.a,a)&&(h.push(a),
746e=x(a),delete this.a[e]):(l.push(a),a=x(a),this.a[a]=e),!this.s}.bind(this),{layerFilter:this.o,hitTolerance:this.j});for(e=h.length-1;0<=e;--e)g.remove(h[e]);g.qg(l)}(0<l.length||0<h.length)&&this.b(new zx(Ax,l,h,a));return Zg(a)}k.po=function(a){this.j=a};k.setMap=function(a){var b=this.v,c=this.f.ha().i;b&&c.forEach(b.Zj,b);Jg.prototype.setMap.call(this,a);this.f.setMap(a);a&&c.forEach(a.Uj,a)};
747function yx(){var a=Gk();gc(a.Polygon,a.LineString);gc(a.GeometryCollection,a.LineString);return function(b){return b.U()?a[b.U().S()]:null}}k.ko=function(a){var b=this.v;b&&b.Uj(a.element)};k.oo=function(a){var b=this.v;b&&b.Zj(a.element)};function zx(a,b,c,d){Qc.call(this,a);this.selected=b;this.deselected=c;this.mapBrowserEvent=d}w(zx,Qc);var Ax="select";function Bx(a){fh.call(this,{handleEvent:Cx,handleDownEvent:Re,handleUpEvent:Dx});a=a?a:{};this.s=a.source?a.source:null;this.O=void 0!==a.vertex?a.vertex:!0;this.C=void 0!==a.edge?a.edge:!0;this.j=a.features?a.features:null;this.ra=[];this.B={};this.V={};this.o={};this.T=null;this.f=void 0!==a.pixelTolerance?a.pixelTolerance:10;this.ua=Ex.bind(this);this.a=new um;this.ca={Point:this.wo,LineString:this.Pi,LinearRing:this.Pi,Polygon:this.xo,MultiPoint:this.uo,MultiLineString:this.to,MultiPolygon:this.vo,

Callers

nothing calls this directly

Calls 3

yxFunction · 0.70
ecFunction · 0.70
yFunction · 0.70

Tested by

no test coverage detected