UNPKG

@infordata-web/portal-common-component-lib

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.14.

82 lines 15.3 kB
import { ApplicationRef, Injectable } from '@angular/core'; import { shareReplay, switchMap, tap } from 'rxjs/operators'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import { ConfigurationService } from '../../../configuration/configuration-service'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; import * as i2 from "../../../configuration/configuration-service"; export class TerritorioService { constructor(http, configurationService, appRef) { this.http = http; this.configurationService = configurationService; this.appRef = appRef; console.log('[TerritorioService]'); this.urlAnagrafe = configurationService.servicePaths.get("ANAGRAFE_MS_API_URL") + "/v1"; console.log('[urlAnagrafe - lib]', this.urlAnagrafe); const lingua$ = configurationService.lingua$; // console.log('[lingua]', configurationService.servicePaths.get("I18N_MS_API_URL")); //TODO // const urlNazioni: string = this.paths.get_V1Nazioni(); const urlNazioni = this.urlAnagrafe + "/nazioni"; // console.log('[urlNazioni]', urlNazioni); this.nazioni$ = lingua$.pipe(switchMap(lingua => this.http.get(urlNazioni, { headers: new HttpHeaders({ 'i18n_language': lingua }) })), tap(_ => appRef.tick()), shareReplay()); //TODO // const urlProvince: string = this.paths.get_V1Province(); const urlProvince = this.urlAnagrafe + '/province'; // console.log('[urlProvince]', urlProvince); // TODO // const urlRegioni: string = this.urlAnagrafe + '/regioni'; const urlRegioni = this.urlAnagrafe + '/regioni/nonSoppresse/'; //TODO // this.province$ = this.http.get<Array<Localita>>(urlProvince); this.province$ = lingua$.pipe(switchMap(lingua => this.http.get(urlProvince, { headers: new HttpHeaders({ 'i18n_language': lingua }) })), tap(_ => appRef.tick()), shareReplay()); this.regioni$ = lingua$.pipe(switchMap(lingua => this.http.get(urlRegioni, { headers: new HttpHeaders({ 'i18n_language': lingua }) })), tap(_ => appRef.tick()), shareReplay()); } getProvince$() { return this.province$; } getProvincePerRegione$(regione) { //TODO // return this.configurationService.lingua$ // .pipe(switchMap(lingua => this.http.get<Array<Localita>>( // this.urlAnagrafe + `/regione/${regione.sigla}/province`, // { headers: new HttpHeaders({ 'i18n_language': lingua }) } // ))); const url = `${this.urlAnagrafe}/regione/${regione.sigla}/province/nonSoppresse/?codiceRegione=${regione.sigla}`; return this.configurationService.lingua$.pipe(switchMap(lingua => this.http.get(url, { headers: new HttpHeaders({ 'i18n_language': lingua }) })), tap(_ => this.appRef.tick()), shareReplay()); } getComuni$(siglaProvincia) { //TODO // const url: string = this.paths.get_V1ComuniByProvincia(siglaProvincia); // const url: string = `${this.urlAnagrafe}/provincia/${siglaProvincia}/comuni` const url = `${this.urlAnagrafe}/provincia/${siglaProvincia}/comuni/nonSoppressi`; return this.http.get(url).pipe(shareReplay()); } getComune$(codiceCatastale) { const url = `${this.urlAnagrafe}/comune/codiceCatastale/${codiceCatastale}`; return this.http.get(url).pipe(shareReplay()); } getNazioni$() { return this.nazioni$; } getCap$(idComune) { //TODO // const url: string = this.paths.get_V1CapByIdComune(idComune); const url = `${this.urlAnagrafe}/comuni/${idComune}/cap`; return this.http.get(url); } getRegioni$() { return this.regioni$; } } TerritorioService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TerritorioService_Factory() { return new TerritorioService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigurationService), i0.ɵɵinject(i0.ApplicationRef)); }, token: TerritorioService, providedIn: "root" }); TerritorioService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; TerritorioService.ctorParameters = () => [ { type: HttpClient }, { type: ConfigurationService }, { type: ApplicationRef } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycml0b3Jpby1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2dldHRpL0RBRy9zb3JnZW50aS9naXRsYWItc29mdHdhcmVmYWN0b3J5L2NvbW1vbi1jb21wb25lbnQtbGliL3Byb2plY3RzL3BvcnRhbC1jb21tb24tY29tcG9uZW50LWxpYi9zcmMvIiwic291cmNlcyI6WyJsaWIvZGVwb3NpdGkvc2VydmljZXMvdGVycml0b3Jpby90ZXJyaXRvcmlvLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7OztBQVNwRixNQUFNLE9BQU8saUJBQWlCO0lBUzdCLFlBQ1MsSUFBZ0IsRUFDaEIsb0JBQTBDLEVBQzFDLE1BQXNCO1FBRnRCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUU5QixPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3hGLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXJELE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQztRQUM3QyxxRkFBcUY7UUFFckYsTUFBTTtRQUNOLHlEQUF5RDtRQUN6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Z0IsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELFVBQVUsQ0FBQyxlQUF1QjtRQUNqQyxNQUFNLEdBQUcsR0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLDJCQUEyQixlQUFlLEVBQUUsQ0FBQztRQUVwRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFTLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxXQUFXO1FBQ1YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxPQUFPLENBQUMsUUFBZ0I7UUFDdkIsTUFBTTtRQUNOLGdFQUFnRTtRQUNoRSxNQUFNLEdBQUcsR0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLFdBQVcsUUFBUSxNQUFNLENBQUE7UUFDaEUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBZ0IsR0FBRyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVc7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdEIsQ0FBQzs7OztZQTFIRCxVQUFVLFNBQ1YsRUFBQyxVQUFVLEVBQUUsTUFBTTthQUNsQjs7O1lBUk8sVUFBVTtZQUNWLG9CQUFvQjtZQUpwQixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwbGljYXRpb25SZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vY29uZmlndXJhdGlvbi1zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxpdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvcG9ydGFsZS9sb2NhbGl0YSc7XHJcbmltcG9ydCB7IE5hemlvbmUgfSBmcm9tICcuLi8uLi9tb2RlbHMvcG9ydGFsZS9uYXppb25lJztcclxuaW1wb3J0IHsgQ29tdW5lIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BvcnRhbGUvY29tdW5lJztcclxuXHJcbkBJbmplY3RhYmxlKFxyXG5cdHtwcm92aWRlZEluOiAncm9vdCdcclxuXHR9XHJcbilcclxuZXhwb3J0IGNsYXNzIFRlcnJpdG9yaW9TZXJ2aWNlIHtcclxuXHRwcm92aW5jZSQ6IE9ic2VydmFibGU8QXJyYXk8TG9jYWxpdGE+PjtcclxuXHRuYXppb25pJDogT2JzZXJ2YWJsZTxBcnJheTxOYXppb25lPj47XHJcblx0cmVnaW9uaSQ6IE9ic2VydmFibGU8QXJyYXk8TG9jYWxpdGE+PjtcclxuXHJcblx0c2VydmljZVBhdGhzOiBNYXA8c3RyaW5nLCBzdHJpbmc+O1xyXG5cclxuXHR1cmxBbmFncmFmZTogc3RyaW5nO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuXHRcdHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmKSB7XHJcblxyXG5cdFx0Y29uc29sZS5sb2coJ1tUZXJyaXRvcmlvU2VydmljZV0nKTtcclxuXHJcblx0XHR0aGlzLnVybEFuYWdyYWZlID0gY29uZmlndXJhdGlvblNlcnZpY2Uuc2VydmljZVBhdGhzLmdldChcIkFOQUdSQUZFX01TX0FQSV9VUkxcIikgKyBcIi92MVwiO1xyXG5cdFx0Y29uc29sZS5sb2coJ1t1cmxBbmFncmFmZSAtIGxpYl0nLCB0aGlzLnVybEFuYWdyYWZlKTtcclxuXHJcblx0XHRjb25zdCBsaW5ndWEkID0gY29uZmlndXJhdGlvblNlcnZpY2UubGluZ3VhJDtcclxuXHRcdC8vIGNvbnNvbGUubG9nKCdbbGluZ3VhXScsIGNvbmZpZ3VyYXRpb25TZXJ2aWNlLnNlcnZpY2VQYXRocy5nZXQoXCJJMThOX01TX0FQSV9VUkxcIikpO1xyXG5cclxuXHRcdC8vVE9ET1xyXG5cdFx0Ly8gY29uc3QgdXJsTmF6aW9uaTogc3RyaW5nID0gdGhpcy5wYXRocy5nZXRfVjFOYXppb25pKCk7XHJcblx0XHRjb25zdCB1cmxOYXppb25pOiBzdHJpbmcgPSB0aGlzLnVybEFuYWdyYWZlICsgXCIvbmF6aW9uaVwiO1xyXG5cdFx0Ly8gY29uc29sZS5sb2coJ1t1cmxOYXppb25pXScsIHVybE5hemlvbmkpO1xyXG5cclxuXHRcdHRoaXMubmF6aW9uaSQgPSBsaW5ndWEkLnBpcGUoXHJcblx0XHRcdHN3aXRjaE1hcChsaW5ndWEgPT5cclxuXHRcdFx0XHR0aGlzLmh0dHAuZ2V0PEFycmF5PE5hemlvbmU+PihcclxuXHRcdFx0XHRcdHVybE5hemlvbmksIHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ2kxOG5fbGFuZ3VhZ2UnOiBsaW5ndWEgfSkgfVxyXG5cdFx0XHRcdClcclxuXHRcdFx0KSxcclxuXHRcdFx0dGFwKF8gPT4gYXBwUmVmLnRpY2soKSksXHJcblx0XHRcdHNoYXJlUmVwbGF5KClcclxuXHRcdCk7XHJcblxyXG5cdFx0Ly9UT0RPXHJcblx0XHQvLyBjb25zdCB1cmxQcm92aW5jZTogc3RyaW5nID0gdGhpcy5wYXRocy5nZXRfVjFQcm92aW5jZSgpO1xyXG5cdFx0Y29uc3QgdXJsUHJvdmluY2U6IHN0cmluZyA9IHRoaXMudXJsQW5hZ3JhZmUgKyAnL3Byb3ZpbmNlJztcclxuXHRcdC8vIGNvbnNvbGUubG9nKCdbdXJsUHJvdmluY2VdJywgdXJsUHJvdmluY2UpO1xyXG5cclxuXHRcdC8vIFRPRE9cclxuXHRcdC8vIGNvbnN0IHVybFJlZ2lvbmk6IHN0cmluZyA9IHRoaXMudXJsQW5hZ3JhZmUgKyAnL3JlZ2lvbmknO1xyXG5cdFx0Y29uc3QgdXJsUmVnaW9uaTogc3RyaW5nID0gdGhpcy51cmxBbmFncmFmZSArICcvcmVnaW9uaS9ub25Tb3BwcmVzc2UvJztcclxuXHJcblx0XHQvL1RPRE9cclxuXHRcdC8vIHRoaXMucHJvdmluY2UkID0gdGhpcy5odHRwLmdldDxBcnJheTxMb2NhbGl0YT4+KHVybFByb3ZpbmNlKTtcclxuXHRcdHRoaXMucHJvdmluY2UkID0gbGluZ3VhJC5waXBlKFxyXG5cdFx0XHRzd2l0Y2hNYXAobGluZ3VhID0+XHJcblx0XHRcdFx0dGhpcy5odHRwLmdldDxBcnJheTxMb2NhbGl0YT4+KFxyXG5cdFx0XHRcdFx0dXJsUHJvdmluY2UsIHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ2kxOG5fbGFuZ3VhZ2UnOiBsaW5ndWEgfSkgfVxyXG5cdFx0XHRcdClcclxuXHRcdFx0KSxcclxuXHRcdFx0dGFwKF8gPT4gYXBwUmVmLnRpY2soKSksXHJcblx0XHRcdHNoYXJlUmVwbGF5KClcclxuXHRcdCk7XHJcblxyXG5cdFx0dGhpcy5yZWdpb25pJCA9IGxpbmd1YSQucGlwZShcclxuXHRcdFx0c3dpdGNoTWFwKGxpbmd1YSA9PlxyXG5cdFx0XHRcdHRoaXMuaHR0cC5nZXQ8QXJyYXk8TG9jYWxpdGE+PihcclxuXHRcdFx0XHRcdHVybFJlZ2lvbmksIHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ2kxOG5fbGFuZ3VhZ2UnOiBsaW5ndWEgfSkgfVxyXG5cdFx0XHRcdClcclxuXHRcdFx0KSxcclxuXHRcdFx0dGFwKF8gPT4gYXBwUmVmLnRpY2soKSksXHJcblx0XHRcdHNoYXJlUmVwbGF5KClcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRQcm92aW5jZSQoKTogT2JzZXJ2YWJsZTxBcnJheTxMb2NhbGl0YT4+IHtcclxuXHRcdHJldHVybiB0aGlzLnByb3ZpbmNlJDtcclxuXHR9XHJcblxyXG5cdGdldFByb3ZpbmNlUGVyUmVnaW9uZSQocmVnaW9uZTogTG9jYWxpdGEpOiBPYnNlcnZhYmxlPEFycmF5PExvY2FsaXRhPj4ge1xyXG5cdFx0Ly9UT0RPXHJcblx0XHQvLyByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5saW5ndWEkXHJcblx0XHQvLyBcdC5waXBlKHN3aXRjaE1hcChsaW5ndWEgPT4gdGhpcy5odHRwLmdldDxBcnJheTxMb2NhbGl0YT4+KFxyXG5cdFx0Ly8gXHRcdHRoaXMudXJsQW5hZ3JhZmUgKyBgL3JlZ2lvbmUvJHtyZWdpb25lLnNpZ2xhfS9wcm92aW5jZWAsXHJcblx0XHQvLyBcdFx0eyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnaTE4bl9sYW5ndWFnZSc6IGxpbmd1YSB9KSB9XHJcblx0XHQvLyBcdCkpKTtcclxuXHRcdGNvbnN0IHVybDogc3RyaW5nID0gYCR7dGhpcy51cmxBbmFncmFmZX0vcmVnaW9uZS8ke3JlZ2lvbmUuc2lnbGF9L3Byb3ZpbmNlL25vblNvcHByZXNzZS8/Y29kaWNlUmVnaW9uZT0ke3JlZ2lvbmUuc2lnbGF9YDtcclxuXHRcdHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLmxpbmd1YSQucGlwZShcclxuXHRcdFx0c3dpdGNoTWFwKGxpbmd1YSA9PlxyXG5cdFx0XHRcdHRoaXMuaHR0cC5nZXQ8QXJyYXk8TG9jYWxpdGE+PihcclxuXHRcdFx0XHRcdHVybCwgeyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnaTE4bl9sYW5ndWFnZSc6IGxpbmd1YSB9KSB9XHJcblx0XHRcdFx0KVxyXG5cdFx0XHQpLFxyXG5cdFx0XHR0YXAoXyA9PiB0aGlzLmFwcFJlZi50aWNrKCkpLFxyXG5cdFx0XHRzaGFyZVJlcGxheSgpKTtcclxuXHR9XHJcblxyXG5cdGdldENvbXVuaSQoc2lnbGFQcm92aW5jaWE6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8Q29tdW5lPj4ge1xyXG5cdFx0Ly9UT0RPXHJcblx0XHQvLyBjb25zdCB1cmw6IHN0cmluZyA9IHRoaXMucGF0aHMuZ2V0X1YxQ29tdW5pQnlQcm92aW5jaWEoc2lnbGFQcm92aW5jaWEpO1xyXG5cdFx0Ly8gY29uc3QgdXJsOiBzdHJpbmcgPSBgJHt0aGlzLnVybEFuYWdyYWZlfS9wcm92aW5jaWEvJHtzaWdsYVByb3ZpbmNpYX0vY29tdW5pYFxyXG5cdFx0Y29uc3QgdXJsOiBzdHJpbmcgPSBgJHt0aGlzLnVybEFuYWdyYWZlfS9wcm92aW5jaWEvJHtzaWdsYVByb3ZpbmNpYX0vY29tdW5pL25vblNvcHByZXNzaWA7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwLmdldDxBcnJheTxDb211bmU+Pih1cmwpLnBpcGUoc2hhcmVSZXBsYXkoKSk7XHJcblx0fVxyXG5cclxuXHRnZXRDb211bmUkKGNvZGljZUNhdGFzdGFsZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb211bmU+IHtcclxuXHRcdGNvbnN0IHVybDogc3RyaW5nID0gYCR7dGhpcy51cmxBbmFncmFmZX0vY29tdW5lL2NvZGljZUNhdGFzdGFsZS8ke2NvZGljZUNhdGFzdGFsZX1gO1xyXG5cclxuXHRcdHJldHVybiB0aGlzLmh0dHAuZ2V0PENvbXVuZT4odXJsKS5waXBlKHNoYXJlUmVwbGF5KCkpO1xyXG5cdH1cclxuXHJcblx0Z2V0TmF6aW9uaSQoKTogT2JzZXJ2YWJsZTxBcnJheTxOYXppb25lPj4ge1xyXG5cdFx0cmV0dXJuIHRoaXMubmF6aW9uaSQ7XHJcblx0fVxyXG5cclxuXHRnZXRDYXAkKGlkQ29tdW5lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5PHN0cmluZz4+IHtcclxuXHRcdC8vVE9ET1xyXG5cdFx0Ly8gY29uc3QgdXJsOiBzdHJpbmcgPSB0aGlzLnBhdGhzLmdldF9WMUNhcEJ5SWRDb211bmUoaWRDb211bmUpO1xyXG5cdFx0Y29uc3QgdXJsOiBzdHJpbmcgPSBgJHt0aGlzLnVybEFuYWdyYWZlfS9jb211bmkvJHtpZENvbXVuZX0vY2FwYFxyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXJyYXk8c3RyaW5nPj4odXJsKTtcclxuXHR9XHJcblxyXG5cdGdldFJlZ2lvbmkkKCk6IE9ic2VydmFibGU8QXJyYXk8TG9jYWxpdGE+PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5yZWdpb25pJDtcclxuXHR9XHJcbn1cclxuIl19