@firestitch/address
Version:
59 lines • 13.4 kB
JavaScript
import { Component, ChangeDetectionStrategy, ViewChild, inject } from '@angular/core';
import { MatDialogRef, MAT_DIALOG_DATA, MatDialogContent, MatDialogActions, MatDialogClose } from '@angular/material/dialog';
import { FsAddressComponent } from '../../components/address/address.component';
import { of } from 'rxjs';
import { FormsModule } from '@angular/forms';
import { FsFormModule } from '@firestitch/form';
import { FsDialogModule } from '@firestitch/dialog';
import { CdkScrollable } from '@angular/cdk/scrolling';
import { FsAddressComponent as FsAddressComponent_1 } from '../address/address.component';
import { MatButton } from '@angular/material/button';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
import * as i2 from "@firestitch/form";
import * as i3 from "@firestitch/dialog";
export class FsAddressDialogComponent {
_dialogRef = inject(MatDialogRef);
_data = inject(MAT_DIALOG_DATA);
addressComponent;
address;
config;
constructor() {
const _data = this._data;
this.address = _data.address;
this.config = _data.config;
}
get initialEditDialog() {
return this._data.initial;
}
submit = () => {
this._dialogRef.close(this.address);
return of(true);
};
addressChange(address) {
this.address = address;
}
recenter() {
this.addressComponent.recenter();
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAddressDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsAddressDialogComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "addressComponent", first: true, predicate: FsAddressComponent, descendants: true }], ngImport: i0, template: "<form fsForm [submit]=\"submit\" [dirtySubmitButton]=\"!initialEditDialog\">\n <fs-dialog>\n <div mat-dialog-content>\n <fs-address\n [(address)]=\"address\"\n [config]=\"config\"\n (addressChange)=\"addressChange($event)\">\n </fs-address>\n </div>\n <div mat-dialog-actions>\n <button\n mat-button\n type=\"submit\"\n color=\"primary\"\n data-cy=\"dialog-apply\">\n Apply\n </button>\n @if (config.map.showMap && address?.lat && address?.lng) {\n <button\n mat-button\n type=\"button\"\n data-cy=\"center-address\"\n (click)=\"recenter()\">\n Center Address\n </button>\n }\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\"\n data-cy=\"dialog-cancel\">\n Cancel\n </button>\n </div>\n </fs-dialog>\n</form>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i2.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { kind: "directive", type: i2.FsButtonDirective, selector: "[mat-raised-button]:not([fsFormButtonStandalone]),[mat-button]:not([fsFormButtonStandalone]),[mat-flat-button]:not([fsFormButtonStandalone]),[mat-stroked-button]:not([fsFormButtonStandalone])", inputs: ["name", "dirtySubmit", "form"] }, { kind: "ngmodule", type: FsDialogModule }, { kind: "component", type: i3.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode", "mobileButtonPlacement", "mobileWidth", "mode", "buttonLayout"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: FsAddressComponent_1, selector: "fs-address", inputs: ["address", "excludeCountries", "regionCountryOrder", "config"], outputs: ["addressChange", "collapseChange"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAddressDialogComponent, decorators: [{
type: Component,
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
FormsModule,
FsFormModule,
FsDialogModule,
CdkScrollable,
MatDialogContent,
FsAddressComponent_1,
MatDialogActions,
MatButton,
MatDialogClose,
], template: "<form fsForm [submit]=\"submit\" [dirtySubmitButton]=\"!initialEditDialog\">\n <fs-dialog>\n <div mat-dialog-content>\n <fs-address\n [(address)]=\"address\"\n [config]=\"config\"\n (addressChange)=\"addressChange($event)\">\n </fs-address>\n </div>\n <div mat-dialog-actions>\n <button\n mat-button\n type=\"submit\"\n color=\"primary\"\n data-cy=\"dialog-apply\">\n Apply\n </button>\n @if (config.map.showMap && address?.lat && address?.lng) {\n <button\n mat-button\n type=\"button\"\n data-cy=\"center-address\"\n (click)=\"recenter()\">\n Center Address\n </button>\n }\n <button\n mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\"\n data-cy=\"dialog-cancel\">\n Cancel\n </button>\n </div>\n </fs-dialog>\n</form>\n" }]
}], ctorParameters: () => [], propDecorators: { addressComponent: [{
type: ViewChild,
args: [FsAddressComponent]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2FkZHJlc3MtZGlhbG9nL2FkZHJlc3MtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hZGRyZXNzLWRpYWxvZy9hZGRyZXNzLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHN0gsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQW9CckQsTUFBTSxPQUFPLHdCQUF3QjtJQUMzQixVQUFVLEdBQUcsTUFBTSxDQUF5QyxZQUFZLENBQUMsQ0FBQztJQUMxRSxLQUFLLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBSWpDLGdCQUFnQixDQUFxQjtJQUVyQyxPQUFPLENBQVk7SUFDbkIsTUFBTSxDQUFDO0lBRWQ7UUFDSSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRXpCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDNUIsQ0FBQztJQUVNLE1BQU0sR0FBRyxHQUFHLEVBQUU7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXBDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtJQUVNLGFBQWEsQ0FBQyxPQUFPO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7dUdBbENVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLDBIQUt4QixrQkFBa0IsZ0RDcEMvQix5NkJBb0NBLHlERGhCUSxXQUFXLHVkQUNYLFlBQVksMHdCQUNaLGNBQWMsaU1BRWQsZ0JBQWdCLHlHQUNoQixvQkFBb0IsOEtBQ3BCLGdCQUFnQiw0SEFDaEIsU0FBUyxpTEFDVCxjQUFjOzsyRkFHVCx3QkFBd0I7a0JBakJwQyxTQUFTO3NDQUdXLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNMLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxjQUFjO3FCQUNqQjt3REFRSSxnQkFBZ0I7c0JBRHRCLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dDb250ZW50LCBNYXREaWFsb2dBY3Rpb25zLCBNYXREaWFsb2dDbG9zZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IEZzQWRkcmVzcyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYWRkcmVzcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRnNBZGRyZXNzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9hZGRyZXNzL2FkZHJlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZzRm9ybU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuaW1wb3J0IHsgRnNEaWFsb2dNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9kaWFsb2cnO1xuaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgRnNBZGRyZXNzQ29tcG9uZW50IGFzIEZzQWRkcmVzc0NvbXBvbmVudF8xIH0gZnJvbSAnLi4vYWRkcmVzcy9hZGRyZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiAnLi9hZGRyZXNzLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWRkcmVzcy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEZzRm9ybU1vZHVsZSxcbiAgICAgICAgRnNEaWFsb2dNb2R1bGUsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgICAgIEZzQWRkcmVzc0NvbXBvbmVudF8xLFxuICAgICAgICBNYXREaWFsb2dBY3Rpb25zLFxuICAgICAgICBNYXRCdXR0b24sXG4gICAgICAgIE1hdERpYWxvZ0Nsb3NlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzQWRkcmVzc0RpYWxvZ0NvbXBvbmVudCB7XG4gIHByaXZhdGUgX2RpYWxvZ1JlZiA9IGluamVjdDxNYXREaWFsb2dSZWY8RnNBZGRyZXNzRGlhbG9nQ29tcG9uZW50Pj4oTWF0RGlhbG9nUmVmKTtcbiAgcHJpdmF0ZSBfZGF0YSA9IGluamVjdChNQVRfRElBTE9HX0RBVEEpO1xuXG5cbiAgQFZpZXdDaGlsZChGc0FkZHJlc3NDb21wb25lbnQpXG4gIHB1YmxpYyBhZGRyZXNzQ29tcG9uZW50OiBGc0FkZHJlc3NDb21wb25lbnQ7XG5cbiAgcHVibGljIGFkZHJlc3M6IEZzQWRkcmVzcztcbiAgcHVibGljIGNvbmZpZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgIGNvbnN0IF9kYXRhID0gdGhpcy5fZGF0YTtcblxuICAgICAgdGhpcy5hZGRyZXNzID0gX2RhdGEuYWRkcmVzcztcbiAgICAgIHRoaXMuY29uZmlnID0gX2RhdGEuY29uZmlnO1xuICB9XG5cbiAgcHVibGljIGdldCBpbml0aWFsRWRpdERpYWxvZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YS5pbml0aWFsO1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdCA9ICgpID0+IHtcbiAgICB0aGlzLl9kaWFsb2dSZWYuY2xvc2UodGhpcy5hZGRyZXNzKTtcblxuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRyZXNzQ2hhbmdlKGFkZHJlc3MpIHtcbiAgICB0aGlzLmFkZHJlc3MgPSBhZGRyZXNzO1xuICB9XG5cbiAgcHVibGljIHJlY2VudGVyKCkge1xuICAgIHRoaXMuYWRkcmVzc0NvbXBvbmVudC5yZWNlbnRlcigpO1xuICB9XG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzdWJtaXRcIiBbZGlydHlTdWJtaXRCdXR0b25dPVwiIWluaXRpYWxFZGl0RGlhbG9nXCI+XG4gIDxmcy1kaWFsb2c+XG4gICAgPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8ZnMtYWRkcmVzc1xuICAgICAgICBbKGFkZHJlc3MpXT1cImFkZHJlc3NcIlxuICAgICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXG4gICAgICAgIChhZGRyZXNzQ2hhbmdlKT1cImFkZHJlc3NDaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgPC9mcy1hZGRyZXNzPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICBkYXRhLWN5PVwiZGlhbG9nLWFwcGx5XCI+XG4gICAgICAgIEFwcGx5XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIEBpZiAoY29uZmlnLm1hcC5zaG93TWFwICYmIGFkZHJlc3M/LmxhdCAmJiBhZGRyZXNzPy5sbmcpIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBkYXRhLWN5PVwiY2VudGVyLWFkZHJlc3NcIlxuICAgICAgICAgIChjbGljayk9XCJyZWNlbnRlcigpXCI+XG4gICAgICAgICAgQ2VudGVyIEFkZHJlc3NcbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFttYXQtZGlhbG9nLWNsb3NlXT1cIm51bGxcIlxuICAgICAgICBkYXRhLWN5PVwiZGlhbG9nLWNhbmNlbFwiPlxuICAgICAgICBDYW5jZWxcbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2ZzLWRpYWxvZz5cbjwvZm9ybT5cbiJdfQ==