@infordata-web/portal-common-component-lib
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.14.
69 lines • 12.3 kB
JavaScript
import { Component, EventEmitter, Input, Output, } from "@angular/core";
import { FormControl, FormGroup, Validators } from "@angular/forms";
import { map } from "rxjs/operators";
import { IndirizzoDTO } from "../../../models/indirizzo-dto";
import { ComponentOutputStatus } from "../../../normalizzazione/component-output-status";
import { MessageService } from "../../../services/message.service";
import { TerritorioService } from "../../../services/territorio/territorio-service";
import { LocalitaDTO } from "../../../models/localita-dto";
import { StradaDTO } from "../../../models/strada-dto";
export class IndirizzoEsteroComponent {
constructor(msg, territorioService) {
this.msg = msg;
this.territorioService = territorioService;
this.done = new EventEmitter();
this.nazioni = territorioService.getNazioni$();
}
ngOnDestroy() {
if (this.subscription) {
this.subscription.unsubscribe();
}
}
ngOnInit() {
this.form = new FormGroup({});
let valid = true;
if (!this.indirizzo) {
this.indirizzo = new IndirizzoDTO();
this.indirizzo.localita = new LocalitaDTO();
this.indirizzo.strada = new StradaDTO();
valid = false;
}
const indirizzo = new FormControl({ value: this.indirizzo.strada.inidirizzo, disabled: false }, [Validators.required, Validators.maxLength(50)]);
this.form.addControl("indirizzo", indirizzo);
// const zip = new FormControl(
// {value: this.indirizzo.localita.cap, disabled: false}, [Validators.required]
// );
// this.form.addControl('zip', zip);
const nazioni = new FormControl({ value: this.indirizzo.localita.comune, disabled: false }, [Validators.required]);
this.form.addControl("nazioni", nazioni);
const changes$ = this.form.valueChanges.pipe(map((_) => {
const localita = new LocalitaDTO();
// localita.cap = zip.value;
localita.provincia = "EE";
localita.comune = nazioni.value;
const strada = new StradaDTO();
strada.inidirizzo = indirizzo.value;
const indirizzoMapped = new IndirizzoDTO();
indirizzoMapped.localita = localita;
indirizzoMapped.strada = strada;
return ComponentOutputStatus.of(this.form.valid, indirizzoMapped);
}));
this.subscription = changes$.subscribe((_) => this.done.emit(_));
}
}
IndirizzoEsteroComponent.decorators = [
{ type: Component, args: [{
selector: "lib-indirizzo-estero",
template: "<form [formGroup]=\"form\">\r\n\t<div class=\"row my-2\">\r\n\t\t<div class=\"col-md-4\">\r\n\t\t\t<mat-form-field>\r\n\t\t\t\t<mat-label>{{'required' | traduzione}}{{'nazione' | traduzione}}</mat-label>\r\n\t\t\t\t<mat-select placeholder=\"{{'seleziona' | traduzione}}\" formControlName=\"{{ 'nazioni' }}\">\r\n\t\t\t\t\t<mat-option *ngFor=\"let nazione of nazioni | async\" [value]=\"nazione.codiceCatastale\">\r\n\t\t\t\t\t\t{{ nazione.denominazione }}\r\n\t\t\t\t\t</mat-option>\r\n\t\t\t\t</mat-select>\r\n\t\t\t\t<mat-error *ngIf=\"form.touched && form.controls['nazioni'].invalid\">\r\n\t\t\t\t\t{{ msg.produceMessage(\"obbligatorio\", form.controls[\"nazioni\"]) | traduzione }}\r\n\t\t\t\t</mat-error>\r\n\t\t\t</mat-form-field>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"row my-2\">\r\n\t\t<div class=\"col-md-12\">\r\n\t\t\t<mat-form-field>\r\n\t\t\t\t<input matInput placeholder=\"{{'required' | traduzione}}{{'indirizzo' | traduzione}}\"\r\n\t\t\t\t\tformControlName=\"{{ 'indirizzo' }}\" />\r\n\t\t\t\t<mat-error *ngIf=\"form.touched && form.controls['indirizzo'].invalid\">\r\n\t\t\t\t\t{{ msg.produceMessage(\"obbligatorio\", form.controls[\"indirizzo\"]) | traduzione }}\r\n\t\t\t\t</mat-error>\r\n\t\t\t</mat-form-field>\r\n\t\t</div>\r\n\t</div>\r\n</form>",
styles: [""]
},] }
];
IndirizzoEsteroComponent.ctorParameters = () => [
{ type: MessageService },
{ type: TerritorioService }
];
IndirizzoEsteroComponent.propDecorators = {
indirizzo: [{ type: Input }],
done: [{ type: Output }]
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kaXJpenpvLWVzdGVyby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovUHJvZ2V0dGkvREFHL3NvcmdlbnRpL2dpdGxhYi1zb2Z0d2FyZWZhY3RvcnkvY29tbW9uLWNvbXBvbmVudC1saWIvcHJvamVjdHMvcG9ydGFsLWNvbW1vbi1jb21wb25lbnQtbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kZXBvc2l0aS9jb21tb24tY29tcG9uZW50L2luZGlyaXp6by9pbmRpcml6em8tZXN0ZXJvL2luZGlyaXp6by1lc3Rlcm8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQVF2RCxNQUFNLE9BQU8sd0JBQXdCO0lBZ0JwQyxZQUNTLEdBQW1CLEVBQ25CLGlCQUFvQztRQURwQyxRQUFHLEdBQUgsR0FBRyxDQUFnQjtRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBVjdDLFNBQUksR0FBc0QsSUFBSSxZQUFZLEVBRXZFLENBQUM7UUFVSCxJQUFJ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LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHRPbkluaXQsXHJcblx0T3V0cHV0LFxyXG5cdE9uRGVzdHJveSxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBJbmRpcml6em9EVE8gfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2luZGlyaXp6by1kdG9cIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50T3V0cHV0U3RhdHVzIH0gZnJvbSBcIi4uLy4uLy4uL25vcm1hbGl6emF6aW9uZS9jb21wb25lbnQtb3V0cHV0LXN0YXR1c1wiO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVGVycml0b3Jpb1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdGVycml0b3Jpby90ZXJyaXRvcmlvLXNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTG9jYWxpdGFEVE8gfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2xvY2FsaXRhLWR0b1wiO1xyXG5pbXBvcnQgeyBTdHJhZGFEVE8gfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3N0cmFkYS1kdG9cIjtcclxuaW1wb3J0IHsgTmF6aW9uZSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvcG9ydGFsZS9uYXppb25lXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogXCJsaWItaW5kaXJpenpvLWVzdGVyb1wiLFxyXG5cdHRlbXBsYXRlVXJsOiBcIi4vaW5kaXJpenpvLWVzdGVyby5jb21wb25lbnQuaHRtbFwiLFxyXG5cdHN0eWxlVXJsczogW1wiLi9pbmRpcml6em8tZXN0ZXJvLmNvbXBvbmVudC5jc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmRpcml6em9Fc3Rlcm9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG5cdEBJbnB1dCgpXHJcblx0aW5kaXJpenpvOiBJbmRpcml6em9EVE87XHJcblxyXG5cdG5hemlvbmk6IE9ic2VydmFibGU8QXJyYXk8TmF6aW9uZT4+O1xyXG5cclxuXHRAT3V0cHV0KClcclxuXHRkb25lOiBFdmVudEVtaXR0ZXI8Q29tcG9uZW50T3V0cHV0U3RhdHVzPEluZGlyaXp6b0RUTz4+ID0gbmV3IEV2ZW50RW1pdHRlcjxcclxuXHRcdENvbXBvbmVudE91dHB1dFN0YXR1czxJbmRpcml6em9EVE8+XHJcblx0PigpO1xyXG5cclxuXHRmb3JtOiBGb3JtR3JvdXA7XHJcblxyXG5cdHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgbXNnOiBNZXNzYWdlU2VydmljZSxcclxuXHRcdHByaXZhdGUgdGVycml0b3Jpb1NlcnZpY2U6IFRlcnJpdG9yaW9TZXJ2aWNlXHJcblx0KSB7XHJcblx0XHR0aGlzLm5hemlvbmkgPSB0ZXJyaXRvcmlvU2VydmljZS5nZXROYXppb25pJCgpO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHRpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuXHRcdFx0dGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCkge1xyXG5cdFx0dGhpcy5mb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcblx0XHRsZXQgdmFsaWQgPSB0cnVlO1xyXG5cdFx0aWYgKCF0aGlzLmluZGlyaXp6bykge1xyXG5cdFx0XHR0aGlzLmluZGlyaXp6byA9IG5ldyBJbmRpcml6em9EVE8oKTtcclxuXHRcdFx0dGhpcy5pbmRpcml6em8ubG9jYWxpdGEgPSBuZXcgTG9jYWxpdGFEVE8oKTtcclxuXHRcdFx0dGhpcy5pbmRpcml6em8uc3RyYWRhID0gbmV3IFN0cmFkYURUTygpO1xyXG5cdFx0XHR2YWxpZCA9IGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IGluZGlyaXp6byA9IG5ldyBGb3JtQ29udHJvbChcclxuXHRcdFx0eyB2YWx1ZTogdGhpcy5pbmRpcml6em8uc3RyYWRhLmluaWRpcml6em8sIGRpc2FibGVkOiBmYWxzZSB9LFxyXG5cdFx0XHRbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXVxyXG5cdFx0KTtcclxuXHRcdHRoaXMuZm9ybS5hZGRDb250cm9sKFwiaW5kaXJpenpvXCIsIGluZGlyaXp6byk7XHJcblxyXG5cdFx0Ly8gY29uc3QgemlwID0gbmV3IEZvcm1Db250cm9sKFxyXG5cdFx0Ly8gICB7dmFsdWU6IHRoaXMuaW5kaXJpenpvLmxvY2FsaXRhLmNhcCwgZGlzYWJsZWQ6IGZhbHNlfSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXHJcblx0XHQvLyApO1xyXG5cdFx0Ly8gdGhpcy5mb3JtLmFkZENvbnRyb2woJ3ppcCcsIHppcCk7XHJcblxyXG5cdFx0Y29uc3QgbmF6aW9uaSA9IG5ldyBGb3JtQ29udHJvbChcclxuXHRcdFx0eyB2YWx1ZTogdGhpcy5pbmRpcml6em8ubG9jYWxpdGEuY29tdW5lLCBkaXNhYmxlZDogZmFsc2UgfSxcclxuXHRcdFx0W1ZhbGlkYXRvcnMucmVxdWlyZWRdXHJcblx0XHQpO1xyXG5cdFx0dGhpcy5mb3JtLmFkZENvbnRyb2woXCJuYXppb25pXCIsIG5hemlvbmkpO1xyXG5cclxuXHRcdGNvbnN0IGNoYW5nZXMkID0gdGhpcy5mb3JtLnZhbHVlQ2hhbmdlcy5waXBlKFxyXG5cdFx0XHRtYXAoKF8pID0+IHtcclxuXHRcdFx0XHRjb25zdCBsb2NhbGl0YSA9IG5ldyBMb2NhbGl0YURUTygpO1xyXG5cdFx0XHRcdC8vIGxvY2FsaXRhLmNhcCA9IHppcC52YWx1ZTtcclxuXHRcdFx0XHRsb2NhbGl0YS5wcm92aW5jaWEgPSBcIkVFXCI7XHJcblx0XHRcdFx0bG9jYWxpdGEuY29tdW5lID0gbmF6aW9uaS52YWx1ZTtcclxuXHJcblx0XHRcdFx0Y29uc3Qgc3RyYWRhID0gbmV3IFN0cmFkYURUTygpO1xyXG5cdFx0XHRcdHN0cmFkYS5pbmlkaXJpenpvID0gaW5kaXJpenpvLnZhbHVlO1xyXG5cclxuXHRcdFx0XHRjb25zdCBpbmRpcml6em9NYXBwZWQgPSBuZXcgSW5kaXJpenpvRFRPKCk7XHJcblx0XHRcdFx0aW5kaXJpenpvTWFwcGVkLmxvY2FsaXRhID0gbG9jYWxpdGE7XHJcblx0XHRcdFx0aW5kaXJpenpvTWFwcGVkLnN0cmFkYSA9IHN0cmFkYTtcclxuXHJcblx0XHRcdFx0cmV0dXJuIENvbXBvbmVudE91dHB1dFN0YXR1cy5vZih0aGlzLmZvcm0udmFsaWQsIGluZGlyaXp6b01hcHBlZCk7XHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9uID0gY2hhbmdlcyQuc3Vic2NyaWJlKChfKSA9PiB0aGlzLmRvbmUuZW1pdChfKSk7XHJcblx0fVxyXG59XHJcbiJdfQ==