1"use strict";(self.webpackChunkVeryConnect=self.webpackChunkVeryConnect||[]).push([[6972],{58001:(T,_,t)=>{t.d(_,{N:()=>m});var e=t(14026),r=t(52805),M=t(9803),p=t(60611);let m=(()=>{class i{constructor(){this.polygons$=new M.X(null),this.cdr=(0,e.f3M)(e.sBO),this.routing=(0,e.f3M)(p.Z),this.fb=(0,e.f3M)(r.QS)}locationSelected(l){const h=l?.geometry?l:null;h!==this.polygons$.value&&this.polygons$.next(h)}ngOnDestroy(){this.polygons$.complete()}}return i.\u0275fac=function(l){return new(l||i)},i.\u0275dir=e.lG2({type:i}),i})()},79851:(T,_,t)=>{t.d(_,{b:()=>E});var e=t(64762),r=t(88990),M=t(662),p=t(5296),m=t(32031),i=t(14026),o=t(3811),l=t(85597),h=t(42809),O=t(49389),u=t(85960),g=t(31075);class E extends g.V{constructor(D){super(),this.limit=D,this.TRACK_BY_ID=u.trackById,this.busy=!1,this.done=!1,this.scroller=(0,i.f3M)(O.TgInfiniteScroller),this.value=[]}get defaultParams(){return{limit:this.limit}}ngOnInit(){super.ngOnInit(),this.scroller.mirrorDoneBusy(this.cdr,this,"busy","done"),this.scroller.useCursor(!1).setParams(this.defaultParams).setCallable(D=>this.query(D)),this.params$.pipe((0,o.w)(D=>{const R={...D};return this.scroller.setParams({...this.defaultParams,...R}).getData(this.limit)}),(0,p.H)("[AbstractAddressbookList.init]"),(0,l.R)(this._destroyed$)).subscribe((0,M.e)(D=>{this.value=D,this.cdr.markForCheck()}))}query(D){return this.doQuery(D).pipe((0,m.s)(()=>{this.query[r.y7]?.delete((0,r.Yx)(D))}),(0,h.d)(1))}}E.\u0275fac=function(D){i.$Z()},E.\u0275dir=i.lG2({type:E,features:[i.qOj]}),(0,e.gn)([(0,r.qQ)()],E.prototype,"query",null)},31075:(T,_,t)=>{t.d(_,{V:()=>u});var e=t(82668),r=t(5296),M=t(69167),p=t(10174),m=t(14026),i=t(92706),o=t(42809),l=t(85597),h=t(10067),O=t(58001);let u=(()=>{class g{constructor(){this.cdr=(0,m.f3M)(m.sBO),this.host=(0,m.f3M)(O.N)}ngOnDestroy(){this._destroyed$&&(0,e.t)(this._destroyed$)}ngOnInit(){this._destroyed$=new i.c,this.params$=this.initParams().pipe((0,r.H)("[AddressbookListMap.params$]"),(0,l.R)(this._destroyed$),(0,o.d)(1))}initParams(){const y=this.host.ctrlSearch;return y.valueChanges.pipe((0,h.b)(350),(0,M.h)(()=>y.value),(0,p.p)())}}return g.\u0275fac=function(y){return new(y||g)},g.\u0275dir=m.lG2({type:g}),g})()},44153:(T,_,t)=>{t.d(_,{K:()=>M});var e=t(14026),r=t(85960);let M=(()=>{class p{constructor(){this.closed=new e.vpe,this.TRACK_BY_ID=r.trackById}close(){this.closed.emit()}}return p.\u0275fac=function(i){return new(i||p)},p.\u0275dir=e.lG2({type:p,inputs:{count:"count",params:"params"},outputs:{closed:"closed"}}),p})()},55332:(T,_,t)=>{t.d(_,{J:()=>j});var e=t(14026),r=t(25336),M=t(55324),p=t(70460),m=t(83375),i=t(49389),o=t(79851),l=t(74647),h=t(97482),O=t(85868),u=t(62441);const g=["*"];let E=(()=>{class f{constructor(){this.closed=new e.vpe}ngOnDestroy(){(0,m.completeAll)(this.closed)}close(){this.closed.emit()}}return f.\u0275fac=function(C){return new(C||f)},f.\u0275cmp=e.Xpm({type:f,selectors:[["tg-map-info-view"]],inputs:{title:"title"},outputs:{closed:"closed"},standalone:!0,features:[e._Bn([{provide:h.z,useValue:"map-info-view"}]),e.jDz],ngContentSelectors:g,decls:5,vars:1,consts:[[1,"content-padding","d-flex","justify-content-between","align-items-center"],[1,"btn","btn-close","fa","fa-times",3,"click"]],template:function(C,v){1&C&&(e.F$t(),e.TgZ(0,"div",0)(1,"h3"),e._uU(2),e.qZA(),e.TgZ(3,"button",1),e.NdJ("click",function(){return v.close()}),e.qZA()(),e.Hsn(4)),2&C&&(e.xp6(2),e.Oqu(v.title))},dependencies:[M.GlobalModule,O.G,u.h,l.Rq],styles:[".btn-close[_ngcontent-%COMP%]{background-color:initial;font-size:22px;height:30px;padding:0;width:30px}.content-padding[_ngcontent-%COMP%]{padding:0 var(--tg-space-3)}"],changeDetection:0}),f})();var y=t(64177),D=t(90237),R=t(37666),x=t(39805),W=t(64683),U=t(65624);const K=["rawElement"];function $(f,P){1&f&&e._UZ(0,"tg-loader-spinner",5)}const S=function(f){return{$implicit:f}};function k(f,P){if(1&f&&e.GkF(0,6),2&f){const C=e.oxw();e.Q6J("ngTemplateOutlet",C.tplEntity)("ngTemplateOutletContext",e.VKq(2,S,C.value))}}const F=function(f){return{n:f}};let j=(()=>{class f extends o.b{constructor(){super(25),this.closed=new e.vpe}
1close(){this.closed.emit()}initParams(){return(0,r.of)(this.params)}ngOnDestroy(){(0,m.completeAll)(this.closed)}doQuery(C){return this.res.query({params:C})}}return f.\u0275fac=function(C){return new(C||f)},f.\u0275cmp=e.Xpm({type:f,selectors:[["tg-map-info-view-list"]],viewQuery:function(C,v){if(1&C&&e.Gf(K,5),2&C){let A;e.iGM(A=e.CRH())&&(v.raw=A.first)}},inputs:{count:"count",res:"res",params:"params",tplEntity:"tplEntity"},outputs:{closed:"closed"},standalone:!0,features:[e._Bn([i.TgInfiniteScroller]),e.qOj,e.jDz],decls:9,vars:21,consts:[[3,"title","closed"],["infiniteScroll","",1,"scroll",3,"immediateCheck","infiniteScrollContainer","scrollWindow","infiniteScrollDistance","infiniteScrollDisabled","scrolled"],["rawElement",""],["class","loading",4,"ngIf","ngIfElse"],["tplData",""],[1,"loading"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(C,v){if(1&C&&(e.TgZ(0,"tg-map-info-view",0),e.NdJ("closed",function(){return v.close()}),e.ALo(1,"applyTrPlaceholders"),e.ALo(2,"translateCount"),e.ALo(3,"tr"),e.TgZ(4,"div",1,2),e.NdJ("scrolled",function(){return v.scroller.scrolled()}),e.YNc(6,$,1,0,"tg-loader-spinner",3),e.YNc(7,k,1,4,"ng-template",null,4,e.W1O),e.qZA()()),2&C){const A=e.MAs(8);e.Q6J("title",e.xi3(1,10,e.xi3(2,13,e.xi3(3,16,"nResults","map-info-view"),v.count),e.VKq(19,F,v.count))),e.xp6(4),e.Udp("height",100*v.count+"px"),e.Q6J("immediateCheck",!0)("infiniteScrollContainer",v.raw)("scrollWindow",!1)("infiniteScrollDistance",1)("infiniteScrollDisabled",v.busy||v.done),e.xp6(2),e.Q6J("ngIf",v.busy&&!v.done&&!v.value.length)("ngIfElse",A)}},dependencies:[M.GlobalModule,y.O5,y.tP,D.I,R.d,x.v,W.H,p.TgInfiniteScrollModule,U.N,l.Ry,E],styles:[".scroll[_ngcontent-%COMP%]{display:block;max-height:300px;overflow:auto}.loading[_ngcontent-%COMP%]{height:5em;width:648px}"],changeDetection:0}),f})()},51520:(T,_,t)=>{t.d(_,{r:()=>l});var e=t(55324),r=t(14026),M=t(60611),p=t(58001),m=t(64177),i=t(10218);function o(h,O){if(1&h){const u=r.EpF();r.TgZ(0,"button",1),r.NdJ("click.passive",function(){r.CHM(u);const E=r.oxw();return r.KtG(E.onClick())}),r._UZ(1,"i",2)(2,"span",3),r.qZA()}if(2&h){const u=O.ngIf;r.xp6(1),r.Tol(u.icon),r.xp6(1),r.Q6J("translate",u.text)("tr-namespace","user-search")}}let l=(()=>{class h{constructor(u,g){this.routing=u,this.host=g}get btnIconText(){return this.isOnMap()?{text:"viewList",icon:"fa-th-list"}:{text:"viewOnMap",icon:"fa-globe"}}onClick(){this.routing.go(this.isOnMap()?"^.list":"^.map",this.host.ctrlSearch.value).catch(console.error)}isOnMap(){return this.routing.is("^.map")}}return h.\u0275fac=function(u){return new(u||h)(r.Y36(M.Z),r.Y36(p.N))},h.\u0275cmp=r.Xpm({type:h,selectors:[["tg-addressbook-search-btn"]],hostVars:2,hostBindings:function(u,g){2&u&&r.ekj("input-group-btn",g.enabled)},inputs:{enabled:"enabled"},standalone:!0,features:[r.jDz],decls:1,vars:1,consts:[["class","btn btn-default","type","button",3,"click.passive",4,"ngIf"],["type","button",1,"btn","btn-default",3,"click.passive"],[1,"fa"],[1,"hidden-sm","hidden-xs",3,"translate","tr-namespace"]],template:function(u,g){1&u&&r.YNc(0,o,3,4,"button",0),2&u&&r.Q6J("ngIf",g.enabled&&g.btnIconText)},dependencies:[e.GlobalModule,m.O5,i.P],styles:["[_nghost-%COMP%]{z-index:1}"],changeDetection:0}),h})()},88697:(T,_,t)=>{t.d(_,{P:()=>r,W:()=>M});var e=t(14026);class r{createMapInfoComponent(m){const{componentType:i,container:o,clusteredItemsCount:l,onClose:h,paramsMapper:O}=m,u=o.createComponent(i),{instance:g}=u;g.params=O(),g.count=l;const E=g.closed.subscribe(()=>{h(),E.unsubscribe()});return u}fmtPos(m,i){return`${m.lat()},${m.lng()},${i}`}}const M=new e.OlP("Addressbook map controller")},77868:(T,_,t)=>{t.d(_,{e:()=>L});var e=t(8239),r=t(64762),M=t(662),p=t(75134),m=t(5296),i=t(10174),o=t(14026),l=t
1(75124),h=t(40921),O=t(9803),u=t(6281),g=t(89969),E=t(40697),y=t(10067),D=t(3811),R=t(87563),x=t(85597),W=t(42809),U=t(91696),K=t(50725),$=t(48921),S=t(35673),k=t(19807),F=t(26583);const j=t.p+"images/markers/m0.531058f7e77b64e2.png",f=t.p+"images/markers/m1.b6e18ea332346f8f.png",P=t.p+"images/markers/m2.4583dff0764a8f7f.png",C=t.p+"images/markers/m3.ba8226aa9b9d0ed3.png",v=t.p+"images/markers/m4.30bb39a357f86f4c.png",A=t.p+"images/markers/m5.be4e9739ff98b02d.png";let J=(()=>{class c{constructor(){const n=[j,f,P,C,v,A],s=(d,b,I,B=I-1)=>({anchor:{x:b,y:b},size:{width:I,height:B},url:n[d]});this.markerIcons=Object.freeze({m0:s(0,5,9,9),m1:s(1,26,53),m2:s(2,28,56),m3:s(3,33,66),m4:s(4,39,78),m5:s(5,45,90)})}getIcon(n){const s=n.numberOfPoints;if(void 0!==s){if(s>1e4)return this.markerIcons.m5;if(s>1e3)return this.markerIcons.m4;if(s>100)return this.markerIcons.m3;if(s>10)return this.markerIcons.m2;if(s>1)return this.markerIcons.m1}return this.markerIcons.m0}}return c.\u0275fac=function(n){return new(n||c)},c.\u0275prov=o.Yz7({token:c,factory:c.\u0275fac,providedIn:"root"}),c})();var Z=t(55324),H=t(47958),N=t(31075),Q=t(88697),G=t(64177);let Y=(()=>{class c{constructor(n,s){this.map=n,this.zone=s}ngOnChanges({options:n,geoJson:s}){n?(this.deleteLayer(),this.initLayer(),this.setFeatures()):s&&(s.firstChange?this.initLayer():this.clearData(),this.setFeatures())}ngOnDestroy(){this.deleteLayer()}clearData(){const n=this.data;!n||this.zone.runOutsideAngular(()=>{n.forEach(s=>{n.remove(s)})})}deleteLayer(){const n=this.data;!n||this.zone.runOutsideAngular(()=>{n.setMap(null)})}initLayer(){this.zone.runOutsideAngular(()=>{this.data=new google.maps.Data(this.options),this.data.setMap(this.map.googleMap)})}setFeatures(){this.geoJson&&this.data&&this.zone.runOutsideAngular(()=>{this.data.addGeoJson(this.geoJson)})}}return c.\u0275fac=function(n){return new(n||c)(o.Y36(l.b6),o.Y36(o.R0b))},c.\u0275dir=o.lG2({type:c,selectors:[["tg-google-maps-data-layer"]],inputs:{geoJson:"geoJson",options:"options"},features:[o.TTD]}),c})();const w=["infoWindowContainer"];function X(c,a){if(1&c){const n=o.EpF();o.TgZ(0,"map-marker",6,7),o.NdJ("mapClick",function(d){const I=o.CHM(n).$implicit,B=o.MAs(1),V=o.oxw(2);return o.KtG(V.onMarkerPressed(B,I,d))}),o.qZA()}if(2&c){const n=a.$implicit;o.Q6J("position",n.pos)("options",n.opts)}}function q(c,a){if(1&c){const n=o.EpF();o.TgZ(0,"map-circle",8,9),o.NdJ("centerChanged",function(){o.CHM(n);const d=o.MAs(1),b=o.oxw(2);return o.KtG(b.onCircleChange(d))})("radiusChanged",function(){o.CHM(n);const d=o.MAs(1),b=o.oxw(2);return o.KtG(b.onCircleChange(d))}),o.qZA()}if(2&c){const n=o.oxw(2);o.Q6J("options",n.circleOpts)("radius",n.parsedRadius.radius)("center",n.parsedRadius)}}function tt(c,a){if(1&c){const n=o.EpF();o.TgZ(0,"google-map",1),o.NdJ("zoomChanged",function(){o.CHM(n);const d=o.oxw();return o.KtG(d.zoomChanged())})("mapClick",function(){o.CHM(n);const d=o.oxw();return o.KtG(d.closeWindow())}),o.YNc(1,X,2,2,"map-marker",2),o.ALo(2,"async"),o.YNc(3,q,2,3,"map-circle",3),o._UZ(4,"tg-google-maps-data-layer",4),o.TgZ(5,"map-info-window"),o.GkF(6,null,5),o.qZA()()}if(2&c){const n=o.oxw();o.Q6J("options",n.mapOpts)("height",null)("width",null),o.xp6(1),o.Q6J("ngForOf",o.lcZ(2,6,n.clusters$)),o.xp6(2),o.Q6J("ngIf",n.parsedRadius),o.xp6(1),o.Q6J("geoJson",n.geoJson)}}const z={2:1500,3:1e3,4:500,5:300,6:100,7:50,8:25,9:10,10:5};class L extends N.V{constructor(){super(),this.ready=!1,this.alert=(0,o.f3M)(k.c),this.controller=(0,o.f3M)(Q.W),this.geoSvc=(0,o.f3M)(F.p),this.gmapMarkerSvc=(0,o.f3M)(J),this.mapOpts=this.controller.mapOpts,this.zoom$=new O.X(this.mapOpts.zoom??2)}get clusters$(){return(0,u.a)([this.params$,this.radius$.pipe((0,y.b)(200))]).pipe((0,D.w)(([a,n])=>this.controller.cluster({...a,location_cluster:n}).pipe((0,R.K)(d=>(this.alert.negotiate(d),[[]])))),(0,p.V)(this.clusterMapper,this),(0,x.R)(this._destroyed$),(0,W.d)(1))}get radius$(){return this.zoom$.pipe((0,U.x)(),(0,K.U)(ot),(0,m.H)("[Map.radius$]"),(0,W.d)(1))}initParams(){return super.initParams().pipe((0,g.b)(a=>{const n=this.controller.extractRadiusString(a);this.parsedRadius=n?this.parseRadius(n):void 0,this.cdr.markForCheck()}))}ngOnDestroy(){this.zoom$.complete(),super.ngOnDestroy()}ngOnInit(){super.ngOnInit(),this.circleOpts={clickable:!0,editable:!0,fillColor:"#000",fillOpacity:.5},this.geoSvc.maps$.pipe((0,x.R)(this._destroyed$)).subscribe((0,M.e)(()=>{this.ready=!0,this.cdr.markForCheck()})),this.host.polygons$.pipe((0,K.U)(a=>{if(a)return{features:[{geometry:a.geometry,type:"Feature"}],type:"FeatureCollection"}}),(0,$.O)(this.geoJson),(0,i.p)(),(0,S.T)(1),(0,x.R)(this._destroyed$)).subscribe(a=>{this.geoJson=a,this.cdr.markForCheck()})}onCircleChange(a){const n=a.getCenter();if(!n)return;this.parsedRadius={lat:n.lat(),lng:n.lng(),radius:a.getRadius()},this.cdr.markForCheck();const s=this.host.ctrlSearch;s.setValue({...s.value,near:this.stringifyRadius(),radius:this.stringifyRadius()})}parseRadius(a){const n=a.split(/,/g);return{lat:parseFloat(n[0]),lng:parseFloat(n[1]),radius:parseFloat(n[2])}}stringifyRadius(){const{lng:a,lat:n,radius:s}=this.parsedRadius;return`${n},${a},${s}`}zoomChanged(){const a=this.map.getZoom()??2;a!==this.zoom$.value&&(this.zoom$.next(a),this.closeWindow())}onMarkerPressed(a,n,s){var d=this;return(0,e.Z)(function*(){if(d.infoWindow?.close(),n.num>1&&n.maxPointRadius>5){const I=d.getHighestZoomLevel(n.maxPointRadius);I&&(d.map.googleMap?.setZoom(I),d.map.googleMap?.setCenter(a.getPosition()))}else if(d.controller.createInfoComponent){const I=yield(0,E.z)(d.params$),B=1e3*n.maxPointRadius||1;d.container.clear(),d.infoComponent=d.controller.createInfoComponent({clusteredItemsCount:n.num,container:d.container,latestParam
1s:I,onClose:()=>d.closeWindow(),pos:a.getPosition(),radius:B}),d.infoWindow.open(a,!0)}s.stop()})()}closeWindow(){this.infoWindow?.close(),this.infoComponent?.destroy()}clusterMapper(a){const n=a.centroid,s=a.numberOfPoints;return{maxPointRadius:a.maxPointRadius,num:s,opts:{icon:this.gmapMarkerSvc.getIcon(a),label:s&&s>1?s.toLocaleString():""},pos:{lat:n.lat,lng:n.lng}}}getHighestZoomLevel(a){for(const n of Object.keys(z).map(Number))if(z[n]<a)return n}}function ot(c){return z[c]}L.\u0275fac=function(a){return new(a||L)},L.\u0275cmp=o.Xpm({type:L,selectors:[["tg-addressbook-map"]],viewQuery:function(a,n){if(1&a&&(o.Gf(l.b6,5),o.Gf(l.ch,5),o.Gf(w,5,o.s_b)),2&a){let s;o.iGM(s=o.CRH())&&(n.map=s.first),o.iGM(s=o.CRH())&&(n.infoWindow=s.first),o.iGM(s=o.CRH())&&(n.container=s.first)}},standalone:!0,features:[o.qOj,o.jDz],decls:1,vars:1,consts:[[3,"options","height","width","zoomChanged","mapClick",4,"ngIf"],[3,"options","height","width","zoomChanged","mapClick"],[3,"position","options","mapClick",4,"ngFor","ngForOf"],[3,"options","radius","center","centerChanged","radiusChanged",4,"ngIf"],[3,"geoJson"],["infoWindowContainer",""],[3,"position","options","mapClick"],["marker","mapMarker"],[3,"options","radius","center","centerChanged","radiusChanged"],["circle","mapCircle"]],template:function(a,n){1&a&&o.YNc(0,tt,8,8,"google-map",0),2&a&&o.Q6J("ngIf",n.ready)},dependencies:[Z.GlobalModule,G.sg,G.O5,G.Ov,H.g,Y,l.b6,l.Te,l.ch,l.O_],styles:["[_nghost-%COMP%]{bottom:0;display:block;left:0;position:absolute;right:0;top:0}google-map[_ngcontent-%COMP%]{display:inline}google-map[_ngcontent-%COMP%] >.map-container{height:100%;width:100%}"],changeDetection:0}),(0,r.gn)([(0,h.a)()],L.prototype,"clusters$",null),(0,r.gn)([(0,h.a)()],L.prototype,"radius$",null)},39989:(T,_,t)=>{t.d(_,{d:()=>M});var e=t(14026),r=t(52805);let M=(()=>{class p{constructor(i){this.ctrl=i,this.emitEvent=!1,this.disableControl=i.disabled??!1}get opts(){return{emitEvent:this.emitEvent}}ngOnChanges(i){if(!("disableControl"in i))return;const o=this.disableControl,l=this.ctrl.control;o&&!l.disabled?l.disable(this.opts):!o&&l.disabled&&l.enable(this.opts)}}return p.\u0275fac=function(i){return new(i||p)(e.Y36(r.a5))},p.\u0275dir=e.lG2({type:p,selectors:[["","disableControl","","formControl",""],["","disableControl","","formControlName",""],["","disableControl","","ngModel",""]],inputs:{disableControl:"disableControl",emitEvent:["disableControlEmitEvent","emitEvent"]},standalone:!0,features:[e.TTD]}),p})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.