{"version":3,"file":"metromobilite-m-features-nearest-stops.mjs","sources":["../../../projects/lib-m-features/nearest-stops/src/nearest-stops.service.ts","../../../projects/lib-m-features/nearest-stops/src/nearest-stops.resolver.ts","../../../projects/lib-m-features/nearest-stops/src/nearest-stops.module.ts","../../../projects/lib-m-features/nearest-stops/metromobilite-m-features-nearest-stops.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { switchMap, map } from 'rxjs/operators';\r\nimport { of, Observable } from 'rxjs';\r\nimport { NearestStop } from './nearest-stops.model';\r\nimport { ReferenceService, Poi } from '@metromobilite/m-features/reference';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class NearestStopsService {\r\n\r\n\tdist = '400';\r\n\r\n\tconstructor(\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate referenceService: ReferenceService\r\n\t) { }\r\n\r\n\tgetNearestStops(latitude: number, longitude: number): Observable<Poi[]> {\r\n\t\tconst params = new HttpParams({\r\n\t\t\tfromObject: {\r\n\t\t\t\tx: longitude.toString(),\r\n\t\t\t\ty: latitude.toString(),\r\n\t\t\t\tdetails: 'true',\r\n\t\t\t\tdist: this.dist\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn this.http.get<NearestStop[]>(`@domain/@api/linesNear/json`, { params }).pipe(\r\n\t\t\tswitchMap(nearestStops => {\r\n\t\t\t\tconst _nearestStops = nearestStops.filter((a, pos, self) => self.findIndex(b => a.zone === b.zone) === pos);\r\n\t\t\t\tif (_nearestStops.length > 0) {\r\n\t\t\t\t\treturn this.referenceService.getPois(_nearestStops.map(item => item.zone.replace('_', ':')))\r\n\t\t\t\t\t\t.pipe(map(items => items.filter(item => item.properties.visible)));\r\n\t\t\t\t}\r\n\t\t\t\treturn of([]);\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Resolve, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport {Poi} from '@metromobilite/m-features/reference';\r\nimport {of} from 'rxjs';\r\nimport {catchError} from 'rxjs/operators';\r\nimport { NearestStopsService } from './nearest-stops.service';\r\nimport { GeolocationService } from '@metromobilite/m-features/core';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class NearestStopsResolver implements Resolve<any> {\r\n\r\n\tconstructor(\r\n\t\tprivate geolocationService: GeolocationService,\r\n\t\tprivate nearestStopsService: NearestStopsService\r\n\t) { }\r\n\r\n\tresolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n\t\treturn new Promise((resolve) => {\r\n\t\t\tthis.geolocationService.getCurrentPosition()\r\n\t\t\t\t.then(position => {\r\n\t\t\t\t\tif ('coords' in position) {\r\n\t\t\t\t\t\tconst coords = position.coords;\r\n\t\t\t\t\t\tthis.nearestStopsService.getNearestStops(coords.latitude, coords.longitude)\r\n\t\t\t\t\t\t.pipe(\r\n\t\t\t\t\t\t\tcatchError((error) => {\r\n\t\t\t\t\t\t\t\t// console.error('Error fetching getNearestStops in NearestStopsResolver: ', error);\r\n\t\t\t\t\t\t\t\treturn of([] as Poi[]);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t.subscribe((data: Poi[] | any[]) => resolve(data));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tresolve([]);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tresolve([]);\r\n\t\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CoreModule } from '@metromobilite/m-features/core';\r\n\r\n@NgModule({\r\n\tdeclarations: [],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tCoreModule,\r\n\t]\r\n})\r\nexport class NearestStopsModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.NearestStopsService"],"mappings":"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"}