techlify-inventory-common 18.25.0 → 18.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/inventory-common/category/category-form/category-form.component.mjs +4 -6
- package/esm2022/lib/inventory-common/incident/incident-form/incident-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/incident/incident-list/incident-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/location/location-form/location-form.component.mjs +4 -6
- package/esm2022/lib/inventory-common/location/location-list/location-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/location/location-product-statistics/location-product-statistics.component.mjs +1 -1
- package/esm2022/lib/inventory-common/location/location-status-changer/location-status-changer.component.mjs +4 -6
- package/esm2022/lib/inventory-common/location/shelf/shelf-form/shelf-form.component.mjs +4 -6
- package/esm2022/lib/inventory-common/location/shelf/shelf-list/shelf-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/measure/measures-list/measures-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.mjs +1 -1
- package/esm2022/lib/inventory-common/product/product-batch-update-form/product-batch-update-form.component.mjs +4 -6
- package/esm2022/lib/inventory-common/product/product-list/product-list.component.mjs +4 -4
- package/esm2022/lib/inventory-common/product/product-location/product-location-list/product-location-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/product/product-quick-search/product-quick-search.component.mjs +1 -1
- package/esm2022/lib/inventory-common/product/product.module.mjs +1 -5
- package/esm2022/lib/inventory-common/rating/rating-form/rating-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/rating/rating-list/rating-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.mjs +1 -1
- package/esm2022/lib/inventory-common/reports/low-stock-report/low-stock-report.component.mjs +1 -1
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-list/stock-issue-list.component.mjs +13 -14
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-view/stock-issue-view.component.mjs +3 -3
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.mjs +14 -14
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer-form/stock-transfer-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer-list/stock-transfer-list.component.mjs +1 -1
- package/esm2022/lib/inventory-common/supplier/supplier-branch-delete-button/supplier-branch-delete-button.component.mjs +63 -0
- package/esm2022/lib/inventory-common/supplier/supplier-branch-form/supplier-branch-form-button/supplier-branch-form-button.component.mjs +47 -0
- package/esm2022/lib/inventory-common/supplier/supplier-branch-form/supplier-branch-form.component.mjs +79 -0
- package/esm2022/lib/inventory-common/supplier/supplier-branch.service.mjs +18 -0
- package/esm2022/lib/inventory-common/supplier/supplier-branches-list/supplier-branches-list.component.mjs +79 -0
- package/esm2022/lib/inventory-common/supplier/supplier-form/supplier-form.component.mjs +4 -7
- package/esm2022/lib/inventory-common/supplier/supplier-view/supplier-view.component.mjs +4 -3
- package/esm2022/lib/inventory-common/supplier/supplier.module.mjs +22 -9
- package/esm2022/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.mjs +20 -25
- package/fesm2022/{techlify-inventory-common-category.module-CW1zB9DQ.mjs → techlify-inventory-common-category.module-S6Val92n.mjs} +11 -13
- package/fesm2022/techlify-inventory-common-category.module-S6Val92n.mjs.map +1 -0
- package/fesm2022/{techlify-inventory-common-measure.module-DJqtbIad.mjs → techlify-inventory-common-measure.module-BhHMV-wL.mjs} +9 -12
- package/fesm2022/techlify-inventory-common-measure.module-BhHMV-wL.mjs.map +1 -0
- package/fesm2022/{techlify-inventory-common-stock-issue-view.component-eeonvCBl.mjs → techlify-inventory-common-stock-issue-view.component-CltIudzA.mjs} +4 -4
- package/fesm2022/{techlify-inventory-common-stock-issue-view.component-eeonvCBl.mjs.map → techlify-inventory-common-stock-issue-view.component-CltIudzA.mjs.map} +1 -1
- package/fesm2022/{techlify-inventory-common-techlify-inventory-common-EAdspCEd.mjs → techlify-inventory-common-techlify-inventory-common-f9URc8HX.mjs} +340 -296
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-f9URc8HX.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common.mjs +1 -1
- package/lib/inventory-common/category/category-form/category-form.component.d.ts +2 -3
- package/lib/inventory-common/incident/incident-form/incident-form.component.d.ts +2 -4
- package/lib/inventory-common/location/location-form/location-form.component.d.ts +3 -4
- package/lib/inventory-common/location/location-list/location-list.component.d.ts +1 -1
- package/lib/inventory-common/location/location-product-statistics/location-product-statistics.component.d.ts +1 -1
- package/lib/inventory-common/location/location-status-changer/location-status-changer.component.d.ts +3 -4
- package/lib/inventory-common/location/shelf/shelf-form/shelf-form.component.d.ts +3 -4
- package/lib/inventory-common/location/shelf/shelf-list/shelf-list.component.d.ts +1 -1
- package/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.d.ts +2 -4
- package/lib/inventory-common/product/product-batch-update-form/product-batch-update-form.component.d.ts +2 -3
- package/lib/inventory-common/product/product.module.d.ts +8 -9
- package/lib/inventory-common/rating/rating-form/rating-form.component.d.ts +2 -4
- package/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.d.ts +1 -1
- package/lib/inventory-common/reports/low-stock-report/low-stock-report.component.d.ts +1 -1
- package/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.d.ts +2 -4
- package/lib/inventory-common/stock-issuances/stock-issue-list/stock-issue-list.component.d.ts +1 -2
- package/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.d.ts +2 -4
- package/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.d.ts +1 -2
- package/lib/inventory-common/stock-transfer/stock-transfer-form/stock-transfer-form.component.d.ts +3 -5
- package/lib/inventory-common/stock-transfer/stock-transfer-list/stock-transfer-list.component.d.ts +1 -1
- package/lib/inventory-common/supplier/supplier-branch-delete-button/supplier-branch-delete-button.component.d.ts +18 -0
- package/lib/inventory-common/supplier/supplier-branch-form/supplier-branch-form-button/supplier-branch-form-button.component.d.ts +13 -0
- package/lib/inventory-common/supplier/supplier-branch-form/supplier-branch-form.component.d.ts +22 -0
- package/lib/inventory-common/supplier/supplier-branch.service.d.ts +7 -0
- package/lib/inventory-common/supplier/supplier-branches-list/supplier-branches-list.component.d.ts +18 -0
- package/lib/inventory-common/supplier/supplier-form/supplier-form.component.d.ts +2 -4
- package/lib/inventory-common/supplier/supplier.module.d.ts +18 -14
- package/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.d.ts +2 -5
- package/package.json +1 -1
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.mjs +0 -54
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.mjs +0 -77
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.mjs +0 -35
- package/esm2022/lib/inventory-common/product/product-tax/product-tax.module.mjs +0 -22
- package/esm2022/lib/inventory-common/product/product-tax/product-tax.service.mjs +0 -18
- package/fesm2022/techlify-inventory-common-category.module-CW1zB9DQ.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-measure.module-DJqtbIad.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-EAdspCEd.mjs.map +0 -1
- package/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.d.ts +0 -26
- package/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.d.ts +0 -21
- package/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.d.ts +0 -13
- package/lib/inventory-common/product/product-tax/product-tax.module.d.ts +0 -12
- package/lib/inventory-common/product/product-tax/product-tax.service.d.ts +0 -7
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { MaterialModule } from '../../material.module';
|
|
4
|
+
import { ActionPopupComponent, TechlifyIconModule } from 'ngx-techlify-core';
|
|
5
|
+
import { NgxPermissionsModule } from 'ngx-permissions';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/material/dialog";
|
|
8
|
+
import * as i2 from "ngx-techlify-core";
|
|
9
|
+
import * as i3 from "../supplier-branch.service";
|
|
10
|
+
export class SupplierBranchDeleteButtonComponent {
|
|
11
|
+
dialog;
|
|
12
|
+
alertService;
|
|
13
|
+
errorHandler;
|
|
14
|
+
supplierBranchService;
|
|
15
|
+
branch;
|
|
16
|
+
deleted = new EventEmitter();
|
|
17
|
+
constructor(dialog, alertService, errorHandler, supplierBranchService) {
|
|
18
|
+
this.dialog = dialog;
|
|
19
|
+
this.alertService = alertService;
|
|
20
|
+
this.errorHandler = errorHandler;
|
|
21
|
+
this.supplierBranchService = supplierBranchService;
|
|
22
|
+
}
|
|
23
|
+
ngOnInit() {
|
|
24
|
+
}
|
|
25
|
+
openDialog() {
|
|
26
|
+
this.dialog.open(ActionPopupComponent, {
|
|
27
|
+
width: '400px',
|
|
28
|
+
data: {
|
|
29
|
+
title: 'Delete Supplier Branch',
|
|
30
|
+
message: 'Are you sure you want to delete this Supplier Branch?',
|
|
31
|
+
},
|
|
32
|
+
autoFocus: false,
|
|
33
|
+
}).afterClosed().subscribe(async (result) => {
|
|
34
|
+
if (result) {
|
|
35
|
+
this.supplierBranchService.delete(this.branch).subscribe({
|
|
36
|
+
next: () => {
|
|
37
|
+
this.alertService.addAlert('Successfully deleted the Supplier Branch', 'success');
|
|
38
|
+
this.deleted.emit(this.branch);
|
|
39
|
+
},
|
|
40
|
+
error: (error) => {
|
|
41
|
+
this.errorHandler.handleError(error);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchDeleteButtonComponent, deps: [{ token: i1.MatDialog }, { token: i2.AlertService }, { token: i2.ErrorHandlerService }, { token: i3.SupplierBranchService }], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierBranchDeleteButtonComponent, isStandalone: true, selector: "app-supplier-branch-delete-button", inputs: { branch: "branch" }, outputs: { deleted: "deleted" }, ngImport: i0, template: "<app-techlify-icon role=\"button\" name='delete' (click)=\"openDialog()\">\n</app-techlify-icon>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MaterialModule }, { kind: "ngmodule", type: TechlifyIconModule }, { kind: "component", type: i2.TechlifyIconComponent, selector: "app-techlify-icon", inputs: ["name", "size"] }, { kind: "ngmodule", type: NgxPermissionsModule }], preserveWhitespaces: true });
|
|
49
|
+
}
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchDeleteButtonComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{ selector: 'app-supplier-branch-delete-button', standalone: true, imports: [
|
|
53
|
+
CommonModule,
|
|
54
|
+
MaterialModule,
|
|
55
|
+
TechlifyIconModule,
|
|
56
|
+
NgxPermissionsModule
|
|
57
|
+
], template: "<app-techlify-icon role=\"button\" name='delete' (click)=\"openDialog()\">\n</app-techlify-icon>" }]
|
|
58
|
+
}], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.AlertService }, { type: i2.ErrorHandlerService }, { type: i3.SupplierBranchService }], propDecorators: { branch: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], deleted: [{
|
|
61
|
+
type: Output
|
|
62
|
+
}] } });
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24vc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24vc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBZSxvQkFBb0IsRUFBcUMsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk3SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFjdkQsTUFBTSxPQUFPLG1DQUFtQztJQUsxQjtJQUNWO0lBQ0E7SUFDQTtJQU5ELE1BQU0sQ0FBSztJQUNWLE9BQU8sR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQTtJQUU5RCxZQUFvQixNQUFpQixFQUMzQixZQUEwQixFQUMxQixZQUFpQyxFQUNqQyxxQkFBNEM7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtJQUNsRCxDQUFDO0lBRUwsUUFBUTtJQUNSLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDckMsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQWU7Z0JBQ2pCLEtBQUssRUFBRSx3QkFBd0I7Z0JBQy9CLE9BQU8sRUFBRSx1REFBdUQ7YUFDakU7WUFDRCxTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUMxQyxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQztvQkFDdkQsSUFBSSxFQUFFLEdBQUcsRUFBRTt3QkFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQywwQ0FBMEMsRUFBRSxTQUFTLENBQUMsQ0FBQzt3QkFDbEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO29CQUNoQyxDQUFDO29CQUNELEtBQUssRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFO3dCQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkMsQ0FBQztpQkFDRixDQUFDLENBQUE7WUFDSixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQW5DVSxtQ0FBbUM7NEZBQW5DLG1DQUFtQyw0SkNyQmhELGtHQUNvQix5RERjaEIsWUFBWSw4QkFDWixjQUFjLDhCQUNkLGtCQUFrQiw4SUFDbEIsb0JBQW9COzs0RkFHWCxtQ0FBbUM7a0JBWi9DLFNBQVM7K0JBQ0UsbUNBQW1DLGNBR2pDLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixvQkFBb0I7cUJBQ3JCOytLQUlRLE1BQU07c0JBQWQsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vLi4vbWF0ZXJpYWwubW9kdWxlJztcbmltcG9ydCB7IEFjdGlvblBvcHVwLCBBY3Rpb25Qb3B1cENvbXBvbmVudCwgQWxlcnRTZXJ2aWNlLCBFcnJvckhhbmRsZXJTZXJ2aWNlLCBUZWNobGlmeUljb25Nb2R1bGUgfSBmcm9tICduZ3gtdGVjaGxpZnktY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3VwcGxpZXJCcmFuY2hTZXJ2aWNlIH0gZnJvbSAnLi4vc3VwcGxpZXItYnJhbmNoLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmd4UGVybWlzc2lvbnNNb2R1bGUgfSBmcm9tICduZ3gtcGVybWlzc2lvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdXBwbGllci1icmFuY2gtZGVsZXRlLWJ1dHRvbi5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgVGVjaGxpZnlJY29uTW9kdWxlLFxuICAgIE5neFBlcm1pc3Npb25zTW9kdWxlXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFN1cHBsaWVyQnJhbmNoRGVsZXRlQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBicmFuY2g6IGFueVxuICBAT3V0cHV0KCkgZGVsZXRlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIGVycm9ySGFuZGxlcjogRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICBwcml2YXRlIHN1cHBsaWVyQnJhbmNoU2VydmljZTogU3VwcGxpZXJCcmFuY2hTZXJ2aWNlXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBvcGVuRGlhbG9nKCkge1xuICAgIHRoaXMuZGlhbG9nLm9wZW4oQWN0aW9uUG9wdXBDb21wb25lbnQsIHtcbiAgICAgIHdpZHRoOiAnNDAwcHgnLFxuICAgICAgZGF0YTogPEFjdGlvblBvcHVwPntcbiAgICAgICAgdGl0bGU6ICdEZWxldGUgU3VwcGxpZXIgQnJhbmNoJyxcbiAgICAgICAgbWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBTdXBwbGllciBCcmFuY2g/JyxcbiAgICAgIH0sXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgIH0pLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKGFzeW5jIChyZXN1bHQpID0+IHtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgdGhpcy5zdXBwbGllckJyYW5jaFNlcnZpY2UuZGVsZXRlKHRoaXMuYnJhbmNoKS5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KCdTdWNjZXNzZnVsbHkgZGVsZXRlZCB0aGUgU3VwcGxpZXIgQnJhbmNoJywgJ3N1Y2Nlc3MnKTtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlZC5lbWl0KHRoaXMuYnJhbmNoKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgZXJyb3I6IChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbn1cbiIsIjxhcHAtdGVjaGxpZnktaWNvbiByb2xlPVwiYnV0dG9uXCIgbmFtZT0nZGVsZXRlJyAoY2xpY2spPVwib3BlbkRpYWxvZygpXCI+XG48L2FwcC10ZWNobGlmeS1pY29uPiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { MaterialModule } from '../../../material.module';
|
|
4
|
+
import { TechlifyIconModule } from 'ngx-techlify-core';
|
|
5
|
+
import { SupplierBranchFormComponent } from '../supplier-branch-form.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/material/dialog";
|
|
8
|
+
import * as i2 from "ngx-techlify-core";
|
|
9
|
+
export class SupplierBranchFormButtonComponent {
|
|
10
|
+
dialog;
|
|
11
|
+
branch;
|
|
12
|
+
supplierId = null;
|
|
13
|
+
saved = new EventEmitter();
|
|
14
|
+
constructor(dialog) {
|
|
15
|
+
this.dialog = dialog;
|
|
16
|
+
}
|
|
17
|
+
open() {
|
|
18
|
+
this.dialog.open(SupplierBranchFormComponent, {
|
|
19
|
+
width: '500px',
|
|
20
|
+
data: {
|
|
21
|
+
branch: this.branch,
|
|
22
|
+
supplierId: this.supplierId
|
|
23
|
+
},
|
|
24
|
+
}).afterClosed().subscribe((response) => {
|
|
25
|
+
if (response) {
|
|
26
|
+
this.saved.emit(response);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchFormButtonComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierBranchFormButtonComponent, isStandalone: true, selector: "app-supplier-branch-form-button", inputs: { branch: "branch", supplierId: "supplierId" }, outputs: { saved: "saved" }, ngImport: i0, template: "<app-techlify-icon role='button' (click)=\"open()\" [name]=\"branch?.id ? 'edit' : 'add'\"></app-techlify-icon>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MaterialModule }, { kind: "ngmodule", type: TechlifyIconModule }, { kind: "component", type: i2.TechlifyIconComponent, selector: "app-techlify-icon", inputs: ["name", "size"] }], preserveWhitespaces: true });
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchFormButtonComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'app-supplier-branch-form-button', standalone: true, imports: [
|
|
36
|
+
CommonModule,
|
|
37
|
+
MaterialModule,
|
|
38
|
+
TechlifyIconModule
|
|
39
|
+
], template: "<app-techlify-icon role='button' (click)=\"open()\" [name]=\"branch?.id ? 'edit' : 'add'\"></app-techlify-icon>" }]
|
|
40
|
+
}], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { branch: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], supplierId: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], saved: [{
|
|
45
|
+
type: Output
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItYnJhbmNoLWZvcm0tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludmVudG9yeS1jb21tb24vc3JjL2xpYi9pbnZlbnRvcnktY29tbW9uL3N1cHBsaWVyL3N1cHBsaWVyLWJyYW5jaC1mb3JtL3N1cHBsaWVyLWJyYW5jaC1mb3JtLWJ1dHRvbi9zdXBwbGllci1icmFuY2gtZm9ybS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoLWZvcm0vc3VwcGxpZXItYnJhbmNoLWZvcm0tYnV0dG9uL3N1cHBsaWVyLWJyYW5jaC1mb3JtLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7QUFZaEYsTUFBTSxPQUFPLGlDQUFpQztJQUt2QjtJQUpWLE1BQU0sQ0FBTTtJQUNaLFVBQVUsR0FBa0IsSUFBSSxDQUFDO0lBQ2hDLEtBQUssR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUU3RCxZQUFtQixNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQUksQ0FBQztJQUV6QyxJQUFJO1FBQ0EsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDMUMsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUU7Z0JBQ0YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDOUI7U0FDSixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUU7WUFDekMsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dHQW5CUSxpQ0FBaUM7NEZBQWpDLGlDQUFpQyxnTENqQjlDLGlIQUEyRywyQ0RZbkcsWUFBWSw4QkFDWixjQUFjLDhCQUNkLGtCQUFrQjs7NEZBR2IsaUNBQWlDO2tCQVY3QyxTQUFTOytCQUNJLGlDQUFpQyxjQUUvQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjtxQkFDckI7OEVBR1EsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vbWF0ZXJpYWwubW9kdWxlJztcbmltcG9ydCB7IFRlY2hsaWZ5SWNvbk1vZHVsZSB9IGZyb20gJ25neC10ZWNobGlmeS1jb3JlJztcbmltcG9ydCB7IFN1cHBsaWVyQnJhbmNoRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL3N1cHBsaWVyLWJyYW5jaC1mb3JtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLXN1cHBsaWVyLWJyYW5jaC1mb3JtLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N1cHBsaWVyLWJyYW5jaC1mb3JtLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgICAgIFRlY2hsaWZ5SWNvbk1vZHVsZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU3VwcGxpZXJCcmFuY2hGb3JtQnV0dG9uQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBicmFuY2g6IGFueTtcbiAgICBASW5wdXQoKSBzdXBwbGllcklkOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBAT3V0cHV0KCkgc2F2ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2cpIHsgfVxuXG4gICAgb3BlbigpIHtcbiAgICAgICAgdGhpcy5kaWFsb2cub3BlbihTdXBwbGllckJyYW5jaEZvcm1Db21wb25lbnQsIHtcbiAgICAgICAgICAgIHdpZHRoOiAnNTAwcHgnLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIGJyYW5jaDogdGhpcy5icmFuY2gsXG4gICAgICAgICAgICAgICAgc3VwcGxpZXJJZDogdGhpcy5zdXBwbGllcklkXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KS5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zYXZlZC5lbWl0KHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGFwcC10ZWNobGlmeS1pY29uIHJvbGU9J2J1dHRvbicgKGNsaWNrKT1cIm9wZW4oKVwiIFtuYW1lXT1cImJyYW5jaD8uaWQgPyAnZWRpdCcgOiAnYWRkJ1wiPjwvYXBwLXRlY2hsaWZ5LWljb24+Il19
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
import { TechlifyFormComponentInterface } from 'ngx-techlify-core';
|
|
4
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "ngx-techlify-core";
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
import * as i3 from "../supplier-branch.service";
|
|
9
|
+
import * as i4 from "@angular/material/dialog";
|
|
10
|
+
import * as i5 from "@angular/common";
|
|
11
|
+
import * as i6 from "@angular/material/button";
|
|
12
|
+
import * as i7 from "@angular/material/card";
|
|
13
|
+
import * as i8 from "@angular/material/form-field";
|
|
14
|
+
import * as i9 from "@angular/material/input";
|
|
15
|
+
export class SupplierBranchFormComponent extends TechlifyFormComponentInterface {
|
|
16
|
+
formBuilder;
|
|
17
|
+
supplierBranchService;
|
|
18
|
+
data;
|
|
19
|
+
dialogRef;
|
|
20
|
+
errorMessages = {
|
|
21
|
+
title: {
|
|
22
|
+
required: 'The title field is required.',
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
constructor(formValidatorService, formBuilder, supplierBranchService, data, dialogRef) {
|
|
26
|
+
super(formValidatorService);
|
|
27
|
+
this.formBuilder = formBuilder;
|
|
28
|
+
this.supplierBranchService = supplierBranchService;
|
|
29
|
+
this.data = data;
|
|
30
|
+
this.dialogRef = dialogRef;
|
|
31
|
+
this.form = this.formBuilder.group({
|
|
32
|
+
id: [''],
|
|
33
|
+
supplier_id: ['', Validators.required],
|
|
34
|
+
title: ['', Validators.required],
|
|
35
|
+
description: [''],
|
|
36
|
+
phone: [''],
|
|
37
|
+
email: [''],
|
|
38
|
+
address: [''],
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
ngOnInit() {
|
|
42
|
+
if (this.data?.supplierId) {
|
|
43
|
+
this.form.patchValue({ supplier_id: this.data.supplierId });
|
|
44
|
+
}
|
|
45
|
+
if (this.data?.branch) {
|
|
46
|
+
this.form.patchValue({ ...this.data.branch });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
save() {
|
|
50
|
+
if (this.form.invalid) {
|
|
51
|
+
this.alertService.addAlert('Please check the form for errors.', 'error');
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const form = {
|
|
55
|
+
...this.form.value,
|
|
56
|
+
};
|
|
57
|
+
this.isWorking = true;
|
|
58
|
+
let promise = form.id
|
|
59
|
+
? this.supplierBranchService.update(form)
|
|
60
|
+
: this.supplierBranchService.store(form);
|
|
61
|
+
promise.subscribe({
|
|
62
|
+
next: () => {
|
|
63
|
+
this.dialogRef.close(true);
|
|
64
|
+
this.alertService.addAlert('Branch saved successfully!', 'success');
|
|
65
|
+
},
|
|
66
|
+
error: () => (this.isWorking = false),
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchFormComponent, deps: [{ token: i1.FormValidatorService }, { token: i2.FormBuilder }, { token: i3.SupplierBranchService }, { token: MAT_DIALOG_DATA }, { token: i4.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
70
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierBranchFormComponent, selector: "app-supplier-branch-form", usesInheritance: true, ngImport: i0, template: "<mat-card-content>\n <h3 class=\"text-center mb-1\">Branch Form</h3>\n\n <form [formGroup]=\"form\" class=\"d-flex flex-row flex-wrap justify-content-start gap-2\" (submit)=\"save()\">\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Title</mat-label>\n <input formControlName=\"title\" type=\"text\" matInput placeholder=\"Title\" />\n <mat-error *ngIf=\"isFieldValid('title')\">\n {{ getErrorMessage('title') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Phone</mat-label>\n <input formControlName=\"phone\" type=\"text\" matInput placeholder=\"Phone\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Email</mat-label>\n <input formControlName=\"email\" type=\"email\" matInput placeholder=\"Email\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Address</mat-label>\n <input formControlName=\"address\" type=\"text\" matInput placeholder=\"Address\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Description</mat-label>\n <textarea matInput formControlName=\"description\" placeholder=\"Description\" rows=\"3\"></textarea>\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-2\" style=\"width: calc(100%)\">\n <button [disabled]=\"isWorking\" type=\"button\" mat-flat-button mat-dialog-close>Cancel</button>\n <button [disabled]=\"isWorking\" type=\"submit\" mat-raised-button color=\"primary\">Save</button>\n </div>\n </form>\n</mat-card-content>", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i7.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], preserveWhitespaces: true });
|
|
71
|
+
}
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchFormComponent, decorators: [{
|
|
73
|
+
type: Component,
|
|
74
|
+
args: [{ selector: 'app-supplier-branch-form', template: "<mat-card-content>\n <h3 class=\"text-center mb-1\">Branch Form</h3>\n\n <form [formGroup]=\"form\" class=\"d-flex flex-row flex-wrap justify-content-start gap-2\" (submit)=\"save()\">\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Title</mat-label>\n <input formControlName=\"title\" type=\"text\" matInput placeholder=\"Title\" />\n <mat-error *ngIf=\"isFieldValid('title')\">\n {{ getErrorMessage('title') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Phone</mat-label>\n <input formControlName=\"phone\" type=\"text\" matInput placeholder=\"Phone\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Email</mat-label>\n <input formControlName=\"email\" type=\"email\" matInput placeholder=\"Email\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Address</mat-label>\n <input formControlName=\"address\" type=\"text\" matInput placeholder=\"Address\" />\n </mat-form-field>\n\n <mat-form-field style=\"width: calc(100%)\">\n <mat-label>Description</mat-label>\n <textarea matInput formControlName=\"description\" placeholder=\"Description\" rows=\"3\"></textarea>\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-2\" style=\"width: calc(100%)\">\n <button [disabled]=\"isWorking\" type=\"button\" mat-flat-button mat-dialog-close>Cancel</button>\n <button [disabled]=\"isWorking\" type=\"submit\" mat-raised-button color=\"primary\">Save</button>\n </div>\n </form>\n</mat-card-content>" }]
|
|
75
|
+
}], ctorParameters: () => [{ type: i1.FormValidatorService }, { type: i2.FormBuilder }, { type: i3.SupplierBranchService }, { type: undefined, decorators: [{
|
|
76
|
+
type: Inject,
|
|
77
|
+
args: [MAT_DIALOG_DATA]
|
|
78
|
+
}] }, { type: i4.MatDialogRef }] });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItYnJhbmNoLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoLWZvcm0vc3VwcGxpZXItYnJhbmNoLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoLWZvcm0vc3VwcGxpZXItYnJhbmNoLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFzQyw4QkFBOEIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3ZHLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7O0FBTXpFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSw4QkFBOEI7SUFVL0Q7SUFDRTtJQUNzQjtJQUNoQjtJQVhYLGFBQWEsR0FBRztRQUNyQixLQUFLLEVBQUU7WUFDSCxRQUFRLEVBQUUsOEJBQThCO1NBQzNDO0tBQ0osQ0FBQztJQUVGLFlBQ0ksb0JBQTBDLEVBQ2xDLFdBQXdCLEVBQ3RCLHFCQUE0QyxFQUN0QixJQUFTLEVBQ3pCLFNBQW9EO1FBRXBFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBTHBCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBSztRQUN6QixjQUFTLEdBQVQsU0FBUyxDQUEyQztRQUlwRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQy9CLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNSLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3RDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2hDLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNqQixLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDWCxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FDaEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNsRCxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUk7UUFDQSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDekUsT0FBTztRQUNYLENBQUM7UUFFRCxNQUFNLElBQUksR0FBUTtZQUNkLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO1NBQ3JCLENBQUM7UUFFRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLE9BQU8sR0FBb0IsSUFBSSxDQUFDLEVBQUU7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdDLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDZCxJQUFJLEVBQUUsR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN4RSxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDeEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt3R0EzRFEsMkJBQTJCLHNIQVl4QixlQUFlOzRGQVpsQiwyQkFBMkIsdUZDWHhDLHN5REFxQ21COzs0RkQxQk4sMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNJLDBCQUEwQjs7MEJBZS9CLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIEZvcm1WYWxpZGF0b3JTZXJ2aWNlLCBUZWNobGlmeUZvcm1Db21wb25lbnRJbnRlcmZhY2UgfSBmcm9tICduZ3gtdGVjaGxpZnktY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdXBwbGllckJyYW5jaFNlcnZpY2UgfSBmcm9tICcuLi9zdXBwbGllci1icmFuY2guc2VydmljZSc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLXN1cHBsaWVyLWJyYW5jaC1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3VwcGxpZXItYnJhbmNoLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTdXBwbGllckJyYW5jaEZvcm1Db21wb25lbnQgZXh0ZW5kcyBUZWNobGlmeUZvcm1Db21wb25lbnRJbnRlcmZhY2UgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgb3ZlcnJpZGUgZXJyb3JNZXNzYWdlcyA9IHtcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICAgIHJlcXVpcmVkOiAnVGhlIHRpdGxlIGZpZWxkIGlzIHJlcXVpcmVkLicsXG4gICAgICAgIH0sXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBmb3JtVmFsaWRhdG9yU2VydmljZTogRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcm90ZWN0ZWQgc3VwcGxpZXJCcmFuY2hTZXJ2aWNlOiBTdXBwbGllckJyYW5jaFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55LFxuICAgICAgICBwdWJsaWMgb3ZlcnJpZGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3VwcGxpZXJCcmFuY2hGb3JtQ29tcG9uZW50PixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZm9ybVZhbGlkYXRvclNlcnZpY2UpO1xuXG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgICAgaWQ6IFsnJ10sXG4gICAgICAgICAgICBzdXBwbGllcl9pZDogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgICAgIHRpdGxlOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IFsnJ10sXG4gICAgICAgICAgICBwaG9uZTogWycnXSxcbiAgICAgICAgICAgIGVtYWlsOiBbJyddLFxuICAgICAgICAgICAgYWRkcmVzczogWycnXSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGE/LnN1cHBsaWVySWQpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHsgc3VwcGxpZXJfaWQ6IHRoaXMuZGF0YS5zdXBwbGllcklkIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmRhdGE/LmJyYW5jaCkge1xuICAgICAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyAuLi50aGlzLmRhdGEuYnJhbmNoIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2F2ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydCgnUGxlYXNlIGNoZWNrIHRoZSBmb3JtIGZvciBlcnJvcnMuJywgJ2Vycm9yJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb3JtOiBhbnkgPSB7XG4gICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5pc1dvcmtpbmcgPSB0cnVlO1xuICAgICAgICBsZXQgcHJvbWlzZTogT2JzZXJ2YWJsZTxhbnk+ID0gZm9ybS5pZFxuICAgICAgICAgICAgPyB0aGlzLnN1cHBsaWVyQnJhbmNoU2VydmljZS51cGRhdGUoZm9ybSlcbiAgICAgICAgICAgIDogdGhpcy5zdXBwbGllckJyYW5jaFNlcnZpY2Uuc3RvcmUoZm9ybSk7XG5cbiAgICAgICAgcHJvbWlzZS5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRydWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KCdCcmFuY2ggc2F2ZWQgc3VjY2Vzc2Z1bGx5IScsICdzdWNjZXNzJyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXJyb3I6ICgpID0+ICh0aGlzLmlzV29ya2luZyA9IGZhbHNlKSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgPGgzIGNsYXNzPVwidGV4dC1jZW50ZXIgbWItMVwiPkJyYW5jaCBGb3JtPC9oMz5cblxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgZ2FwLTJcIiAoc3VibWl0KT1cInNhdmUoKVwiPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgc3R5bGU9XCJ3aWR0aDogY2FsYygxMDAlKVwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbD5UaXRsZTwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCIgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIlRpdGxlXCIgLz5cbiAgICAgICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJpc0ZpZWxkVmFsaWQoJ3RpdGxlJylcIj5cbiAgICAgICAgICAgICAgICB7eyBnZXRFcnJvck1lc3NhZ2UoJ3RpdGxlJykgfX1cbiAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIndpZHRoOiBjYWxjKDEwMCUpXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsPlBob25lPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGhvbmVcIiB0eXBlPVwidGV4dFwiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiUGhvbmVcIiAvPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIndpZHRoOiBjYWxjKDEwMCUpXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsPkVtYWlsPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiB0eXBlPVwiZW1haWxcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIkVtYWlsXCIgLz5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgc3R5bGU9XCJ3aWR0aDogY2FsYygxMDAlKVwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbD5BZGRyZXNzPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiYWRkcmVzc1wiIHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJBZGRyZXNzXCIgLz5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgc3R5bGU9XCJ3aWR0aDogY2FsYygxMDAlKVwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbD5EZXNjcmlwdGlvbjwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPHRleHRhcmVhIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCIgcGxhY2Vob2xkZXI9XCJEZXNjcmlwdGlvblwiIHJvd3M9XCIzXCI+PC90ZXh0YXJlYT5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCIgc3R5bGU9XCJ3aWR0aDogY2FsYygxMDAlKVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNXb3JraW5nXCIgdHlwZT1cImJ1dHRvblwiIG1hdC1mbGF0LWJ1dHRvbiBtYXQtZGlhbG9nLWNsb3NlPkNhbmNlbDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiaXNXb3JraW5nXCIgdHlwZT1cInN1Ym1pdFwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiPlNhdmU8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9mb3JtPlxuPC9tYXQtY2FyZC1jb250ZW50PiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { TechlifyServiceBaseClass } from 'ngx-techlify-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "ngx-techlify-core";
|
|
5
|
+
export class SupplierBranchService extends TechlifyServiceBaseClass {
|
|
6
|
+
constructor(httpService) {
|
|
7
|
+
super(httpService, 'supplier-branches');
|
|
8
|
+
}
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchService, providedIn: 'root' });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchService, decorators: [{
|
|
13
|
+
type: Injectable,
|
|
14
|
+
args: [{
|
|
15
|
+
providedIn: 'root',
|
|
16
|
+
}]
|
|
17
|
+
}], ctorParameters: () => [{ type: i1.HttpService }] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItYnJhbmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9zdXBwbGllci9zdXBwbGllci1icmFuY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBZSx3QkFBd0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFLMUUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHdCQUF3QjtJQUMvRCxZQUFZLFdBQXdCO1FBQ2hDLEtBQUssQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUM1QyxDQUFDO3dHQUhRLHFCQUFxQjs0R0FBckIscUJBQXFCLGNBRmxCLE1BQU07OzRGQUVULHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSwgVGVjaGxpZnlTZXJ2aWNlQmFzZUNsYXNzIH0gZnJvbSAnbmd4LXRlY2hsaWZ5LWNvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTdXBwbGllckJyYW5jaFNlcnZpY2UgZXh0ZW5kcyBUZWNobGlmeVNlcnZpY2VCYXNlQ2xhc3Mge1xuICAgIGNvbnN0cnVjdG9yKGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSkge1xuICAgICAgICBzdXBlcihodHRwU2VydmljZSwgJ3N1cHBsaWVyLWJyYW5jaGVzJyk7XG4gICAgfVxufVxuXG4iXX0=
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { TechlifyListingControllerInterface } from 'ngx-techlify-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "ngx-techlify-core";
|
|
6
|
+
import * as i3 from "../supplier-branch.service";
|
|
7
|
+
import * as i4 from "@angular/common";
|
|
8
|
+
import * as i5 from "@angular/material/card";
|
|
9
|
+
import * as i6 from "@angular/material/form-field";
|
|
10
|
+
import * as i7 from "@angular/material/icon";
|
|
11
|
+
import * as i8 from "@angular/material/input";
|
|
12
|
+
import * as i9 from "@angular/material/progress-bar";
|
|
13
|
+
import * as i10 from "@angular/material/sort";
|
|
14
|
+
import * as i11 from "@angular/material/table";
|
|
15
|
+
import * as i12 from "ngx-infinite-scroll";
|
|
16
|
+
import * as i13 from "../supplier-branch-form/supplier-branch-form-button/supplier-branch-form-button.component";
|
|
17
|
+
import * as i14 from "../supplier-branch-delete-button/supplier-branch-delete-button.component";
|
|
18
|
+
export class SupplierBranchesListComponent extends TechlifyListingControllerInterface {
|
|
19
|
+
fb;
|
|
20
|
+
errorHandlerService;
|
|
21
|
+
service;
|
|
22
|
+
supplierId = null;
|
|
23
|
+
displayedColumns = [
|
|
24
|
+
'#',
|
|
25
|
+
'title',
|
|
26
|
+
'address',
|
|
27
|
+
'phone',
|
|
28
|
+
'email',
|
|
29
|
+
'description',
|
|
30
|
+
'actions',
|
|
31
|
+
];
|
|
32
|
+
constructor(fb, errorHandlerService, service) {
|
|
33
|
+
super();
|
|
34
|
+
this.fb = fb;
|
|
35
|
+
this.errorHandlerService = errorHandlerService;
|
|
36
|
+
this.service = service;
|
|
37
|
+
this.filterForm = this.fb.group({
|
|
38
|
+
supplier_id: [''],
|
|
39
|
+
search: [''],
|
|
40
|
+
sort_by: ['created_at|desc'],
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
ngOnInit() {
|
|
44
|
+
this.listenFilterChanges();
|
|
45
|
+
this.loadData();
|
|
46
|
+
}
|
|
47
|
+
async loadData() {
|
|
48
|
+
let filters = this.requestHelperService.convertToFormData(this.filterForm.value);
|
|
49
|
+
filters.page = this.page;
|
|
50
|
+
filters.perPage = this.perPage;
|
|
51
|
+
if (this.supplierId) {
|
|
52
|
+
filters.supplier_id = this.supplierId;
|
|
53
|
+
}
|
|
54
|
+
this.isWorking = true;
|
|
55
|
+
this.service.index(filters).subscribe({
|
|
56
|
+
next: (response) => {
|
|
57
|
+
this.models = this.models?.concat(response?.data);
|
|
58
|
+
this.lastPage = response.last_page;
|
|
59
|
+
this.isWorking = false;
|
|
60
|
+
},
|
|
61
|
+
error: (error) => {
|
|
62
|
+
this.isWorking = false;
|
|
63
|
+
this.errorHandlerService.handleError(error);
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
assignFilter(column, direction) {
|
|
68
|
+
return this.filterForm.get('sort_by')?.setValue(column + '|' + direction);
|
|
69
|
+
}
|
|
70
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchesListComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ErrorHandlerService }, { token: i3.SupplierBranchService }], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierBranchesListComponent, selector: "app-supplier-branches-list", inputs: { supplierId: "supplierId" }, usesInheritance: true, ngImport: i0, template: "<mat-card class=\"mb-3\">\n <mat-card-content class=\"d-flex justify-content-between align-items-center gap-3\">\n <div class=\"d-flex justify-content-start align-items-center gap-3\">\n <h3 class=\"mb-0 fw-bold\">Branches</h3>\n <app-supplier-branch-form-button [supplierId]=\"supplierId\"\n (saved)=\"reload()\"></app-supplier-branch-form-button>\n </div>\n <form [formGroup]=\"filterForm\" class=\"d-flex justify-content-end align-items-center gap-2\">\n <mat-form-field>\n <mat-label>Search</mat-label>\n <input matInput placeholder=\"Search by Title, Address, Phone, Email\" formControlName=\"search\" />\n <mat-icon matSuffix>search</mat-icon>\n </mat-form-field>\n </form>\n </mat-card-content>\n</mat-card>\n\n<mat-card>\n <mat-card-content class=\"p-0\">\n <table mat-table #table [dataSource]=\"models\" class=\"w-100 table-hover\" infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" (scrolled)=\"onScroll()\" [fromRoot]=\"true\" matSort\n (matSortChange)=\"sortColumn($event)\" aria-describedby=\"Supplier Branches List\">\n\n <ng-container matColumnDef=\"#\">\n <th mat-header-cell *matHeaderCellDef>#</th>\n <td mat-cell *matCellDef=\"let element; let i = index\">{{ i + 1 }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"title\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Title</th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.title }}\n </td>\n </ng-container>\n\n <ng-container matColumnDef=\"address\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Address</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.address }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"phone\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Phone</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.phone }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"email\">\n <th mat-header-cell *matHeaderCellDef>Email</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.email }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"description\">\n <th mat-header-cell *matHeaderCellDef>Description</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.description }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef>Actions</th>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"text-secondary d-flex align-items-center gap-2\">\n <app-supplier-branch-form-button [branch]=\"element\" [supplierId]=\"supplierId\"\n (saved)=\"reload()\"></app-supplier-branch-form-button>\n <app-supplier-branch-delete-button [branch]=\"element\"\n (deleted)=\"reload()\"></app-supplier-branch-delete-button>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns\"></tr>\n </table>\n\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"isWorking\"></mat-progress-bar>\n </mat-card-content>\n</mat-card>", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i5.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i9.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: i10.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i10.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i12.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "component", type: i13.SupplierBranchFormButtonComponent, selector: "app-supplier-branch-form-button", inputs: ["branch", "supplierId"], outputs: ["saved"] }, { kind: "component", type: i14.SupplierBranchDeleteButtonComponent, selector: "app-supplier-branch-delete-button", inputs: ["branch"], outputs: ["deleted"] }], preserveWhitespaces: true });
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierBranchesListComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'app-supplier-branches-list', template: "<mat-card class=\"mb-3\">\n <mat-card-content class=\"d-flex justify-content-between align-items-center gap-3\">\n <div class=\"d-flex justify-content-start align-items-center gap-3\">\n <h3 class=\"mb-0 fw-bold\">Branches</h3>\n <app-supplier-branch-form-button [supplierId]=\"supplierId\"\n (saved)=\"reload()\"></app-supplier-branch-form-button>\n </div>\n <form [formGroup]=\"filterForm\" class=\"d-flex justify-content-end align-items-center gap-2\">\n <mat-form-field>\n <mat-label>Search</mat-label>\n <input matInput placeholder=\"Search by Title, Address, Phone, Email\" formControlName=\"search\" />\n <mat-icon matSuffix>search</mat-icon>\n </mat-form-field>\n </form>\n </mat-card-content>\n</mat-card>\n\n<mat-card>\n <mat-card-content class=\"p-0\">\n <table mat-table #table [dataSource]=\"models\" class=\"w-100 table-hover\" infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" (scrolled)=\"onScroll()\" [fromRoot]=\"true\" matSort\n (matSortChange)=\"sortColumn($event)\" aria-describedby=\"Supplier Branches List\">\n\n <ng-container matColumnDef=\"#\">\n <th mat-header-cell *matHeaderCellDef>#</th>\n <td mat-cell *matCellDef=\"let element; let i = index\">{{ i + 1 }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"title\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Title</th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.title }}\n </td>\n </ng-container>\n\n <ng-container matColumnDef=\"address\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Address</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.address }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"phone\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>Phone</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.phone }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"email\">\n <th mat-header-cell *matHeaderCellDef>Email</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.email }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"description\">\n <th mat-header-cell *matHeaderCellDef>Description</th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.description }}</td>\n </ng-container>\n\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef>Actions</th>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"text-secondary d-flex align-items-center gap-2\">\n <app-supplier-branch-form-button [branch]=\"element\" [supplierId]=\"supplierId\"\n (saved)=\"reload()\"></app-supplier-branch-form-button>\n <app-supplier-branch-delete-button [branch]=\"element\"\n (deleted)=\"reload()\"></app-supplier-branch-delete-button>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns\"></tr>\n </table>\n\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"isWorking\"></mat-progress-bar>\n </mat-card-content>\n</mat-card>" }]
|
|
76
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.ErrorHandlerService }, { type: i3.SupplierBranchService }], propDecorators: { supplierId: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}] } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItYnJhbmNoZXMtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9zdXBwbGllci9zdXBwbGllci1icmFuY2hlcy1saXN0L3N1cHBsaWVyLWJyYW5jaGVzLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItYnJhbmNoZXMtbGlzdC9zdXBwbGllci1icmFuY2hlcy1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBdUIsa0NBQWtDLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQU81RixNQUFNLE9BQU8sNkJBQThCLFNBQVEsa0NBQWtDO0lBY3JFO0lBQ0E7SUFDVztJQWZkLFVBQVUsR0FBa0IsSUFBSSxDQUFDO0lBRTFDLGdCQUFnQixHQUFhO1FBQ3pCLEdBQUc7UUFDSCxPQUFPO1FBQ1AsU0FBUztRQUNULE9BQU87UUFDUCxPQUFPO1FBQ1AsYUFBYTtRQUNiLFNBQVM7S0FDWixDQUFDO0lBRUYsWUFDWSxFQUFlLEVBQ2YsbUJBQXdDLEVBQzdCLE9BQThCO1FBRWpELEtBQUssRUFBRSxDQUFDO1FBSkEsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFJakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUM1QixXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDakIsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ1osT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7U0FDL0IsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVRLEtBQUssQ0FBQyxRQUFRO1FBQ25CLElBQUksT0FBTyxHQUFRLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RGLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN6QixPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFL0IsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbEIsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzFDLENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDbEMsSUFBSSxFQUFFLENBQUMsUUFBYSxFQUFFLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQzNCLENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsQ0FBQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBVyxFQUFFLFNBQWM7UUFDcEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxHQUFHLEdBQUcsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUM5RSxDQUFDO3dHQXpEUSw2QkFBNkI7NEZBQTdCLDZCQUE2QiwrSENUMUMsb3JIQXlFVzs7NEZEaEVFLDZCQUE2QjtrQkFKekMsU0FBUzsrQkFDSSw0QkFBNEI7c0pBSTdCLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyU2VydmljZSwgVGVjaGxpZnlMaXN0aW5nQ29udHJvbGxlckludGVyZmFjZSB9IGZyb20gJ25neC10ZWNobGlmeS1jb3JlJztcbmltcG9ydCB7IFN1cHBsaWVyQnJhbmNoU2VydmljZSB9IGZyb20gJy4uL3N1cHBsaWVyLWJyYW5jaC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtc3VwcGxpZXItYnJhbmNoZXMtbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N1cHBsaWVyLWJyYW5jaGVzLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTdXBwbGllckJyYW5jaGVzTGlzdENvbXBvbmVudCBleHRlbmRzIFRlY2hsaWZ5TGlzdGluZ0NvbnRyb2xsZXJJbnRlcmZhY2UgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHN1cHBsaWVySWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXG4gICAgICAgICcjJyxcbiAgICAgICAgJ3RpdGxlJyxcbiAgICAgICAgJ2FkZHJlc3MnLFxuICAgICAgICAncGhvbmUnLFxuICAgICAgICAnZW1haWwnLFxuICAgICAgICAnZGVzY3JpcHRpb24nLFxuICAgICAgICAnYWN0aW9ucycsXG4gICAgXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHJpdmF0ZSBlcnJvckhhbmRsZXJTZXJ2aWNlOiBFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2VydmljZTogU3VwcGxpZXJCcmFuY2hTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgc3VwcGxpZXJfaWQ6IFsnJ10sXG4gICAgICAgICAgICBzZWFyY2g6IFsnJ10sXG4gICAgICAgICAgICBzb3J0X2J5OiBbJ2NyZWF0ZWRfYXR8ZGVzYyddLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5saXN0ZW5GaWx0ZXJDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMubG9hZERhdGEoKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBhc3luYyBsb2FkRGF0YSgpIHtcbiAgICAgICAgbGV0IGZpbHRlcnM6IGFueSA9IHRoaXMucmVxdWVzdEhlbHBlclNlcnZpY2UuY29udmVydFRvRm9ybURhdGEodGhpcy5maWx0ZXJGb3JtLnZhbHVlKTtcbiAgICAgICAgZmlsdGVycy5wYWdlID0gdGhpcy5wYWdlO1xuICAgICAgICBmaWx0ZXJzLnBlclBhZ2UgPSB0aGlzLnBlclBhZ2U7XG5cbiAgICAgICAgaWYgKHRoaXMuc3VwcGxpZXJJZCkge1xuICAgICAgICAgICAgZmlsdGVycy5zdXBwbGllcl9pZCA9IHRoaXMuc3VwcGxpZXJJZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNXb3JraW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLmluZGV4KGZpbHRlcnMpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW9kZWxzID0gdGhpcy5tb2RlbHM/LmNvbmNhdChyZXNwb25zZT8uZGF0YSk7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0UGFnZSA9IHJlc3BvbnNlLmxhc3RfcGFnZTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzV29ya2luZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVycm9yOiAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNXb3JraW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5lcnJvckhhbmRsZXJTZXJ2aWNlLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzc2lnbkZpbHRlcihjb2x1bW46IGFueSwgZGlyZWN0aW9uOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybS5nZXQoJ3NvcnRfYnknKT8uc2V0VmFsdWUoY29sdW1uICsgJ3wnICsgZGlyZWN0aW9uKTtcbiAgICB9XG59XG4iLCI8bWF0LWNhcmQgY2xhc3M9XCJtYi0zXCI+XG4gICAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxuICAgICAgICAgICAgPGgzIGNsYXNzPVwibWItMCBmdy1ib2xkXCI+QnJhbmNoZXM8L2gzPlxuICAgICAgICAgICAgPGFwcC1zdXBwbGllci1icmFuY2gtZm9ybS1idXR0b24gW3N1cHBsaWVySWRdPVwic3VwcGxpZXJJZFwiXG4gICAgICAgICAgICAgICAgKHNhdmVkKT1cInJlbG9hZCgpXCI+PC9hcHAtc3VwcGxpZXItYnJhbmNoLWZvcm0tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmaWx0ZXJGb3JtXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPlNlYXJjaDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIlNlYXJjaCBieSBUaXRsZSwgQWRkcmVzcywgUGhvbmUsIEVtYWlsXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCIgLz5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gbWF0U3VmZml4PnNlYXJjaDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8L2Zvcm0+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuPC9tYXQtY2FyZD5cblxuPG1hdC1jYXJkPlxuICAgIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwicC0wXCI+XG4gICAgICAgIDx0YWJsZSBtYXQtdGFibGUgI3RhYmxlIFtkYXRhU291cmNlXT1cIm1vZGVsc1wiIGNsYXNzPVwidy0xMDAgdGFibGUtaG92ZXJcIiBpbmZpbml0ZVNjcm9sbFxuICAgICAgICAgICAgW2luZmluaXRlU2Nyb2xsRGlzdGFuY2VdPVwiMlwiIFtpbmZpbml0ZVNjcm9sbFRocm90dGxlXT1cIjUwXCIgKHNjcm9sbGVkKT1cIm9uU2Nyb2xsKClcIiBbZnJvbVJvb3RdPVwidHJ1ZVwiIG1hdFNvcnRcbiAgICAgICAgICAgIChtYXRTb3J0Q2hhbmdlKT1cInNvcnRDb2x1bW4oJGV2ZW50KVwiIGFyaWEtZGVzY3JpYmVkYnk9XCJTdXBwbGllciBCcmFuY2hlcyBMaXN0XCI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiI1wiPlxuICAgICAgICAgICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IzwvdGg+XG4gICAgICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnQ7IGxldCBpID0gaW5kZXhcIj57eyBpICsgMSB9fTwvdGQ+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LXNvcnQtaGVhZGVyPlRpdGxlPC90aD5cbiAgICAgICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBlbGVtZW50Py50aXRsZSB9fVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhZGRyZXNzXCI+XG4gICAgICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+QWRkcmVzczwvdGg+XG4gICAgICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj57eyBlbGVtZW50Py5hZGRyZXNzIH19PC90ZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInBob25lXCI+XG4gICAgICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtc29ydC1oZWFkZXI+UGhvbmU8L3RoPlxuICAgICAgICAgICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgZWxlbWVudD8ucGhvbmUgfX08L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZW1haWxcIj5cbiAgICAgICAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPkVtYWlsPC90aD5cbiAgICAgICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPnt7IGVsZW1lbnQ/LmVtYWlsIH19PC90ZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5EZXNjcmlwdGlvbjwvdGg+XG4gICAgICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj57eyBlbGVtZW50Py5kZXNjcmlwdGlvbiB9fTwvdGQ+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5BY3Rpb25zPC90aD5cbiAgICAgICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zZWNvbmRhcnkgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1zdXBwbGllci1icmFuY2gtZm9ybS1idXR0b24gW2JyYW5jaF09XCJlbGVtZW50XCIgW3N1cHBsaWVySWRdPVwic3VwcGxpZXJJZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNhdmVkKT1cInJlbG9hZCgpXCI+PC9hcHAtc3VwcGxpZXItYnJhbmNoLWZvcm0tYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1zdXBwbGllci1icmFuY2gtZGVsZXRlLWJ1dHRvbiBbYnJhbmNoXT1cImVsZW1lbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWxldGVkKT1cInJlbG9hZCgpXCI+PC9hcHAtc3VwcGxpZXItYnJhbmNoLWRlbGV0ZS1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zOyBzdGlja3k6IHRydWVcIj48L3RyPlxuICAgICAgICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbHVtbnNcIj48L3RyPlxuICAgICAgICA8L3RhYmxlPlxuXG4gICAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJpbmRldGVybWluYXRlXCIgKm5nSWY9XCJpc1dvcmtpbmdcIj48L21hdC1wcm9ncmVzcy1iYXI+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuPC9tYXQtY2FyZD4iXX0=
|
|
@@ -15,7 +15,6 @@ import * as i8 from "@angular/material/form-field";
|
|
|
15
15
|
import * as i9 from "@angular/material/input";
|
|
16
16
|
export class SupplierFormComponent extends TechlifyFormComponentInterface {
|
|
17
17
|
fb;
|
|
18
|
-
alertService;
|
|
19
18
|
spinnerService;
|
|
20
19
|
dialogRef;
|
|
21
20
|
errorService;
|
|
@@ -32,13 +31,11 @@ export class SupplierFormComponent extends TechlifyFormComponentInterface {
|
|
|
32
31
|
required: 'The address field is required',
|
|
33
32
|
},
|
|
34
33
|
};
|
|
35
|
-
isWorking = false;
|
|
36
34
|
isUpdateMode = false;
|
|
37
35
|
supplierForm;
|
|
38
|
-
constructor(fb, formValidatorService,
|
|
36
|
+
constructor(fb, formValidatorService, spinnerService, dialogRef, errorService, data, supplierService) {
|
|
39
37
|
super(formValidatorService);
|
|
40
38
|
this.fb = fb;
|
|
41
|
-
this.alertService = alertService;
|
|
42
39
|
this.spinnerService = spinnerService;
|
|
43
40
|
this.dialogRef = dialogRef;
|
|
44
41
|
this.errorService = errorService;
|
|
@@ -92,14 +89,14 @@ export class SupplierFormComponent extends TechlifyFormComponentInterface {
|
|
|
92
89
|
getErrorMessage(field) {
|
|
93
90
|
return this.formValidatorService.getErrorMessage(field, this.supplierForm, this.errorMessages);
|
|
94
91
|
}
|
|
95
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FormValidatorService }, { token:
|
|
92
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FormValidatorService }, { token: i3.NgxSpinnerService }, { token: i4.MatDialogRef }, { token: i2.ErrorHandlerService }, { token: MAT_DIALOG_DATA }, { token: i5.SupplierService }], target: i0.ɵɵFactoryTarget.Component });
|
|
96
93
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierFormComponent, selector: "app-supplier-form", usesInheritance: true, ngImport: i0, template: "<form (ngSubmit)=\"submit()\" [formGroup]=\"supplierForm\" class=\"mat-typography\">\n <div class=\"d-flex flex-column justify-content-start gap-2\" mat-dialog-content>\n <h2 class=\"mb-2\">{{ isUpdateMode ? 'Edit' : 'Create' }} Supplier</h2>\n <mat-form-field>\n <mat-label>Company Name</mat-label>\n <input autocomplete=\"off\" formControlName=\"company_name\" matInput placeholder=\"Company Name\" required />\n <mat-error *ngIf=\"isFieldValid('company_name')\">\n {{ getErrorMessage('company_name') }}\n </mat-error>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Contact Name</mat-label>\n <input autocomplete=\"off\" formControlName=\"contact_name\" matInput placeholder=\"Contact Name\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Types</mat-label>\n <app-searchable-selector apiUrl=\"api/supplier-types\" formControlName=\"supplier_type_id\" titleField=\"title\">\n </app-searchable-selector>\n <mat-error *ngIf=\"isFieldValid('supplier_type_id')\">\n {{ getErrorMessage('supplier_type_id') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Phone</mat-label>\n <input autocomplete=\"off\" formControlName=\"phone\" matInput placeholder=\"Phone\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input autocomplete=\"off\" formControlName=\"email\" matInput placeholder=\"Email\" type=\"email\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Address</mat-label>\n <input autocomplete=\"off\" formControlName=\"address\" matInput placeholder=\"Address\" />\n <mat-error *ngIf=\"isFieldValid('address')\">\n {{ getErrorMessage('address') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Details</mat-label>\n <input autocomplete=\"off\" formControlName=\"details\" matInput placeholder=\"Details\" />\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-3\">\n <button (click)=\"dialogRef.close()\" [disabled]=\"isWorking\" mat-flat-button type=\"button\">Cancel</button>\n <button [disabled]=\"isWorking\" color=\"primary\" mat-raised-button type=\"submit\">Save</button>\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.SearchableSelectorComponent, selector: "app-searchable-selector", inputs: ["valueField", "titleField", "subtitleField", "apiUrl", "multiple", "selectedValue", "enableSearch", "add", "addConfig", "edit", "editConfig", "sort", "sortBy", "searchField", "itemComponent", "items", "apiDataProperty", "cache", "perPage", "inDataSearch", "panelWidth", "focusSearchOnOpen", "required", "disabled", "value"], outputs: ["selectedValueChange", "selectionChange", "itemsChange"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], preserveWhitespaces: true });
|
|
97
94
|
}
|
|
98
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierFormComponent, decorators: [{
|
|
99
96
|
type: Component,
|
|
100
97
|
args: [{ selector: 'app-supplier-form', template: "<form (ngSubmit)=\"submit()\" [formGroup]=\"supplierForm\" class=\"mat-typography\">\n <div class=\"d-flex flex-column justify-content-start gap-2\" mat-dialog-content>\n <h2 class=\"mb-2\">{{ isUpdateMode ? 'Edit' : 'Create' }} Supplier</h2>\n <mat-form-field>\n <mat-label>Company Name</mat-label>\n <input autocomplete=\"off\" formControlName=\"company_name\" matInput placeholder=\"Company Name\" required />\n <mat-error *ngIf=\"isFieldValid('company_name')\">\n {{ getErrorMessage('company_name') }}\n </mat-error>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Contact Name</mat-label>\n <input autocomplete=\"off\" formControlName=\"contact_name\" matInput placeholder=\"Contact Name\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Types</mat-label>\n <app-searchable-selector apiUrl=\"api/supplier-types\" formControlName=\"supplier_type_id\" titleField=\"title\">\n </app-searchable-selector>\n <mat-error *ngIf=\"isFieldValid('supplier_type_id')\">\n {{ getErrorMessage('supplier_type_id') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Phone</mat-label>\n <input autocomplete=\"off\" formControlName=\"phone\" matInput placeholder=\"Phone\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Email</mat-label>\n <input autocomplete=\"off\" formControlName=\"email\" matInput placeholder=\"Email\" type=\"email\" />\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Address</mat-label>\n <input autocomplete=\"off\" formControlName=\"address\" matInput placeholder=\"Address\" />\n <mat-error *ngIf=\"isFieldValid('address')\">\n {{ getErrorMessage('address') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Details</mat-label>\n <input autocomplete=\"off\" formControlName=\"details\" matInput placeholder=\"Details\" />\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-3\">\n <button (click)=\"dialogRef.close()\" [disabled]=\"isWorking\" mat-flat-button type=\"button\">Cancel</button>\n <button [disabled]=\"isWorking\" color=\"primary\" mat-raised-button type=\"submit\">Save</button>\n </div>\n </div>\n</form>\n" }]
|
|
101
|
-
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.FormValidatorService }, { type:
|
|
98
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.FormValidatorService }, { type: i3.NgxSpinnerService }, { type: i4.MatDialogRef }, { type: i2.ErrorHandlerService }, { type: undefined, decorators: [{
|
|
102
99
|
type: Inject,
|
|
103
100
|
args: [MAT_DIALOG_DATA]
|
|
104
101
|
}] }, { type: i5.SupplierService }] });
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9zdXBwbGllci9zdXBwbGllci1mb3JtL3N1cHBsaWVyLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItZm9ybS9zdXBwbGllci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBSUwsOEJBQThCLEdBQy9CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFNckMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDhCQUE4QjtJQWtCN0Q7SUFFQTtJQUNBO0lBQ0Q7SUFDQztJQUN3QjtJQUN4QjtJQXhCRCxhQUFhLEdBQVE7UUFDNUIsWUFBWSxFQUFFO1lBQ1osUUFBUSxFQUFFLDBCQUEwQjtTQUNyQztRQUNELGdCQUFnQixFQUFFO1lBQ2hCLFFBQVEsRUFBRSwyQkFBMkI7U0FDdEM7UUFDRCxPQUFPLEVBQUU7WUFDUCxRQUFRLEVBQUUsK0JBQStCO1NBQzFDO0tBQ0YsQ0FBQztJQUVGLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDM0IsWUFBWSxHQUFZLEtBQUssQ0FBQztJQUM5QixZQUFZLENBQVk7SUFFeEIsWUFDVSxFQUFl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QUFhO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCx3Q0FBd0M7SUFDL0IsZUFBZSxDQUFDLEtBQWE7UUFDcEMsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqRyxDQUFDO3dHQTlFVSxxQkFBcUIsNk1Bd0J0QixlQUFlOzRGQXhCZCxxQkFBcUIsZ0ZDakJsQyw2eEVBcURBOzs0RkRwQ2EscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQjs7MEJBMkIxQixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdXBwbGllclNlcnZpY2UgfSBmcm9tICcuLi9zdXBwbGllci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBOZ3hTcGlubmVyU2VydmljZSB9IGZyb20gJ25neC1zcGlubmVyJztcbmltcG9ydCB7XG4gIEFsZXJ0U2VydmljZSxcbiAgRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gIFRlY2hsaWZ5Rm9ybUNvbXBvbmVudEludGVyZmFjZSxcbn0gZnJvbSAnbmd4LXRlY2hsaWZ5LWNvcmUnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc3VwcGxpZXItZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXBwbGllci1mb3JtLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgU3VwcGxpZXJGb3JtQ29tcG9uZW50IGV4dGVuZHMgVGVjaGxpZnlGb3JtQ29tcG9uZW50SW50ZXJmYWNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgb3ZlcnJpZGUgZXJyb3JNZXNzYWdlczogYW55ID0ge1xuICAgIGNvbXBhbnlfbmFtZToge1xuICAgICAgcmVxdWlyZWQ6ICdDb21wYW55IE5hbWUgaXMgcmVxdWlyZWQnLFxuICAgIH0sXG4gICAgc3VwcGxpZXJfdHlwZV9pZDoge1xuICAgICAgcmVxdWlyZWQ6ICdTdXBwbGllciBUeXBlIGlzIHJlcXVpcmVkJyxcbiAgICB9LFxuICAgIGFkZHJlc3M6IHtcbiAgICAgIHJlcXVpcmVkOiAnVGhlIGFkZHJlc3MgZmllbGQgaXMgcmVxdWlyZWQnLFxuICAgIH0sXG4gIH07XG5cbiAgaXNXb3JraW5nOiBib29sZWFuID0gZmFsc2U7XG4gIGlzVXBkYXRlTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBzdXBwbGllckZvcm06IEZvcm1Hcm91cDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICBmb3JtVmFsaWRhdG9yU2VydmljZTogRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHNwaW5uZXJTZXJ2aWNlOiBOZ3hTcGlubmVyU2VydmljZSxcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3VwcGxpZXJGb3JtQ29tcG9uZW50PixcbiAgICBwcml2YXRlIGVycm9yU2VydmljZTogRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueSxcbiAgICBwcml2YXRlIHN1cHBsaWVyU2VydmljZTogU3VwcGxpZXJTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGZvcm1WYWxpZGF0b3JTZXJ2aWNlKTtcbiAgICB0aGlzLnN1cHBsaWVyRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgaWQ6IFsnJ10sXG4gICAgICBjb250YWN0X25hbWU6IFsnJ10sXG4gICAgICBjb21wYW55X25hbWU6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgZGV0YWlsczogWycnXSxcbiAgICAgIGFkZHJlc3M6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgcGhvbmU6IFsnJ10sXG4gICAgICBlbWFpbDogWycnXSxcbiAgICAgIHN1cHBsaWVyX3R5cGVfaWQ6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuZGF0YS5kZXRhaWxzKSB7XG4gICAgICB0aGlzLmlzVXBkYXRlTW9kZSA9IHRydWU7XG4gICAgICB0aGlzLnN1cHBsaWVyRm9ybS5wYXRjaFZhbHVlKHRoaXMuZGF0YS5kZXRhaWxzKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzdWJtaXQoKSB7XG4gICAgaWYgKCF0aGlzLnN1cHBsaWVyRm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkQWxlcnQoJ1BsZWFzZSBGaWxsIEFsbCBSZXF1aXJlZCBGaWVsZHMnLCAnd2FybicpO1xuICAgICAgdGhpcy5zdXBwbGllckZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBzdXBwbGllciA9IHRoaXMuc3VwcGxpZXJGb3JtLnZhbHVlO1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnNwaW5uZXJTZXJ2aWNlLnNob3coKTtcbiAgICAgIHRoaXMuaXNXb3JraW5nID0gdHJ1ZTtcbiAgICAgIGxldCByZXN1bHQgPSB0aGlzLmlzVXBkYXRlTW9kZVxuICAgICAgICA/IGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5zdXBwbGllclNlcnZpY2UudXBkYXRlKHN1cHBsaWVyKSlcbiAgICAgICAgOiBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuc3VwcGxpZXJTZXJ2aWNlLnN0b3JlKHN1cHBsaWVyKSk7XG4gICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXN1bHQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yU2VydmljZS5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNXb3JraW5nID0gZmFsc2U7XG4gICAgICB0aGlzLnNwaW5uZXJTZXJ2aWNlLmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICAvKipNZXRob2QgdG8gZXZhbHVhdGUgZm9ybSBmaWVsZHMqL1xuICBvdmVycmlkZSBpc0ZpZWxkVmFsaWQoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChmaWVsZCwgdGhpcy5zdXBwbGllckZvcm0pO1xuICB9XG5cbiAgLyoqTWV0aG9kIHRvIGZpbmQgZXJyb3IgaW4gZm9ybSBmaWVsZHMqL1xuICBvdmVycmlkZSBnZXRFcnJvck1lc3NhZ2UoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmdldEVycm9yTWVzc2FnZShmaWVsZCwgdGhpcy5zdXBwbGllckZvcm0sIHRoaXMuZXJyb3JNZXNzYWdlcyk7XG4gIH1cbn1cbiIsIjxmb3JtIChuZ1N1Ym1pdCk9XCJzdWJtaXQoKVwiIFtmb3JtR3JvdXBdPVwic3VwcGxpZXJGb3JtXCIgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1zdGFydCBnYXAtMlwiIG1hdC1kaWFsb2ctY29udGVudD5cbiAgICA8aDIgY2xhc3M9XCJtYi0yXCI+e3sgaXNVcGRhdGVNb2RlID8gJ0VkaXQnIDogJ0NyZWF0ZScgfX0gU3VwcGxpZXI8L2gyPlxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtbGFiZWw+Q29tcGFueSBOYW1lPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwiY29tcGFueV9uYW1lXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJDb21wYW55IE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImlzRmllbGRWYWxpZCgnY29tcGFueV9uYW1lJylcIj5cbiAgICAgICAge3sgZ2V0RXJyb3JNZXNzYWdlKCdjb21wYW55X25hbWUnKSB9fVxuICAgICAgPC9tYXQtZXJyb3I+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWxhYmVsPkNvbnRhY3QgTmFtZTwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImNvbnRhY3RfbmFtZVwiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiQ29udGFjdCBOYW1lXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5UeXBlczwvbWF0LWxhYmVsPlxuICAgICAgPGFwcC1zZWFyY2hhYmxlLXNlbGVjdG9yIGFwaVVybD1cImFwaS9zdXBwbGllci10eXBlc1wiIGZvcm1Db250cm9sTmFtZT1cInN1cHBsaWVyX3R5cGVfaWRcIiB0aXRsZUZpZWxkPVwidGl0bGVcIj5cbiAgICAgIDwvYXBwLXNlYXJjaGFibGUtc2VsZWN0b3I+XG4gICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaXNGaWVsZFZhbGlkKCdzdXBwbGllcl90eXBlX2lkJylcIj5cbiAgICAgICAge3sgZ2V0RXJyb3JNZXNzYWdlKCdzdXBwbGllcl90eXBlX2lkJykgfX1cbiAgICAgIDwvbWF0LWVycm9yPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWxhYmVsPlBob25lPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwicGhvbmVcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIlBob25lXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5FbWFpbDwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJFbWFpbFwiIHR5cGU9XCJlbWFpbFwiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtbGFiZWw+QWRkcmVzczwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIkFkZHJlc3NcIiAvPlxuICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImlzRmllbGRWYWxpZCgnYWRkcmVzcycpXCI+XG4gICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgnYWRkcmVzcycpIH19XG4gICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5EZXRhaWxzPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGV0YWlsc1wiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiRGV0YWlsc1wiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSgpXCIgW2Rpc2FibGVkXT1cImlzV29ya2luZ1wiIG1hdC1mbGF0LWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCI+Q2FuY2VsPC9idXR0b24+XG4gICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc1dvcmtpbmdcIiBjb2xvcj1cInByaW1hcnlcIiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwic3VibWl0XCI+U2F2ZTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZm9ybT5cbiJdfQ==
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9zdXBwbGllci9zdXBwbGllci1mb3JtL3N1cHBsaWVyLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItZm9ybS9zdXBwbGllci1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBSUwsOEJBQThCLEdBQy9CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFNckMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDhCQUE4QjtJQWlCN0Q7SUFFQTtJQUNRO0lBQ1I7SUFDd0I7SUFDeEI7SUF0QkQsYUFBYSxHQUFRO1FBQzVCLFlBQVksRUFBRTtZQUNaLFFBQVEsRUFBRSwwQkFBMEI7U0FDckM7UUFDRCxnQkFBZ0IsRUFBRTtZQUNoQixRQUFRLEVBQUUsMkJBQTJCO1NBQ3RDO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsUUFBUSxFQUFFLCtCQUErQjtTQUMxQztLQUNGLENBQUM7SUFFRixZQUFZLEdBQVksS0FBSyxDQUFDO0lBQzlCLFlBQVksQ0FBWTtJQUV4QixZQUNVLEVBQWUsRUFDdkIsb0JBQTBDLEVBQ2xDLGNBQWlDLEVBQ3pC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QVksQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCx3Q0FBd0M7SUFDL0IsZUFBZSxDQUFDLEtBQWE7UUFDcEMsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqRyxDQUFDO3dHQTVFVSxxQkFBcUIsaUxBc0J0QixlQUFlOzRGQXRCZCxxQkFBcUIsZ0ZDakJsQyw2eEVBcURBOzs0RkRwQ2EscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQjs7MEJBeUIxQixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdXBwbGllclNlcnZpY2UgfSBmcm9tICcuLi9zdXBwbGllci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBOZ3hTcGlubmVyU2VydmljZSB9IGZyb20gJ25neC1zcGlubmVyJztcbmltcG9ydCB7XG4gIEFsZXJ0U2VydmljZSxcbiAgRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gIFRlY2hsaWZ5Rm9ybUNvbXBvbmVudEludGVyZmFjZSxcbn0gZnJvbSAnbmd4LXRlY2hsaWZ5LWNvcmUnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc3VwcGxpZXItZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXBwbGllci1mb3JtLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgU3VwcGxpZXJGb3JtQ29tcG9uZW50IGV4dGVuZHMgVGVjaGxpZnlGb3JtQ29tcG9uZW50SW50ZXJmYWNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgb3ZlcnJpZGUgZXJyb3JNZXNzYWdlczogYW55ID0ge1xuICAgIGNvbXBhbnlfbmFtZToge1xuICAgICAgcmVxdWlyZWQ6ICdDb21wYW55IE5hbWUgaXMgcmVxdWlyZWQnLFxuICAgIH0sXG4gICAgc3VwcGxpZXJfdHlwZV9pZDoge1xuICAgICAgcmVxdWlyZWQ6ICdTdXBwbGllciBUeXBlIGlzIHJlcXVpcmVkJyxcbiAgICB9LFxuICAgIGFkZHJlc3M6IHtcbiAgICAgIHJlcXVpcmVkOiAnVGhlIGFkZHJlc3MgZmllbGQgaXMgcmVxdWlyZWQnLFxuICAgIH0sXG4gIH07XG5cbiAgaXNVcGRhdGVNb2RlOiBib29sZWFuID0gZmFsc2U7XG4gIHN1cHBsaWVyRm9ybTogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIGZvcm1WYWxpZGF0b3JTZXJ2aWNlOiBGb3JtVmFsaWRhdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHNwaW5uZXJTZXJ2aWNlOiBOZ3hTcGlubmVyU2VydmljZSxcbiAgICBwdWJsaWMgb3ZlcnJpZGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3VwcGxpZXJGb3JtQ29tcG9uZW50PixcbiAgICBwcml2YXRlIGVycm9yU2VydmljZTogRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueSxcbiAgICBwcml2YXRlIHN1cHBsaWVyU2VydmljZTogU3VwcGxpZXJTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGZvcm1WYWxpZGF0b3JTZXJ2aWNlKTtcbiAgICB0aGlzLnN1cHBsaWVyRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgaWQ6IFsnJ10sXG4gICAgICBjb250YWN0X25hbWU6IFsnJ10sXG4gICAgICBjb21wYW55X25hbWU6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgZGV0YWlsczogWycnXSxcbiAgICAgIGFkZHJlc3M6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgICAgcGhvbmU6IFsnJ10sXG4gICAgICBlbWFpbDogWycnXSxcbiAgICAgIHN1cHBsaWVyX3R5cGVfaWQ6IFsnJywgVmFsaWRhdG9ycy5jb21wb3NlKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSldLFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuZGF0YS5kZXRhaWxzKSB7XG4gICAgICB0aGlzLmlzVXBkYXRlTW9kZSA9IHRydWU7XG4gICAgICB0aGlzLnN1cHBsaWVyRm9ybS5wYXRjaFZhbHVlKHRoaXMuZGF0YS5kZXRhaWxzKTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBzdWJtaXQoKSB7XG4gICAgaWYgKCF0aGlzLnN1cHBsaWVyRm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkQWxlcnQoJ1BsZWFzZSBGaWxsIEFsbCBSZXF1aXJlZCBGaWVsZHMnLCAnd2FybicpO1xuICAgICAgdGhpcy5zdXBwbGllckZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBzdXBwbGllciA9IHRoaXMuc3VwcGxpZXJGb3JtLnZhbHVlO1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnNwaW5uZXJTZXJ2aWNlLnNob3coKTtcbiAgICAgIHRoaXMuaXNXb3JraW5nID0gdHJ1ZTtcbiAgICAgIGxldCByZXN1bHQgPSB0aGlzLmlzVXBkYXRlTW9kZVxuICAgICAgICA/IGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5zdXBwbGllclNlcnZpY2UudXBkYXRlKHN1cHBsaWVyKSlcbiAgICAgICAgOiBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuc3VwcGxpZXJTZXJ2aWNlLnN0b3JlKHN1cHBsaWVyKSk7XG4gICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXN1bHQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yU2VydmljZS5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNXb3JraW5nID0gZmFsc2U7XG4gICAgICB0aGlzLnNwaW5uZXJTZXJ2aWNlLmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICAvKipNZXRob2QgdG8gZXZhbHVhdGUgZm9ybSBmaWVsZHMqL1xuICBvdmVycmlkZSBpc0ZpZWxkVmFsaWQoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmlzRmllbGRWYWxpZChmaWVsZCwgdGhpcy5zdXBwbGllckZvcm0pO1xuICB9XG5cbiAgLyoqTWV0aG9kIHRvIGZpbmQgZXJyb3IgaW4gZm9ybSBmaWVsZHMqL1xuICBvdmVycmlkZSBnZXRFcnJvck1lc3NhZ2UoZmllbGQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZvcm1WYWxpZGF0b3JTZXJ2aWNlLmdldEVycm9yTWVzc2FnZShmaWVsZCwgdGhpcy5zdXBwbGllckZvcm0sIHRoaXMuZXJyb3JNZXNzYWdlcyk7XG4gIH1cbn1cbiIsIjxmb3JtIChuZ1N1Ym1pdCk9XCJzdWJtaXQoKVwiIFtmb3JtR3JvdXBdPVwic3VwcGxpZXJGb3JtXCIgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1zdGFydCBnYXAtMlwiIG1hdC1kaWFsb2ctY29udGVudD5cbiAgICA8aDIgY2xhc3M9XCJtYi0yXCI+e3sgaXNVcGRhdGVNb2RlID8gJ0VkaXQnIDogJ0NyZWF0ZScgfX0gU3VwcGxpZXI8L2gyPlxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtbGFiZWw+Q29tcGFueSBOYW1lPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwiY29tcGFueV9uYW1lXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJDb21wYW55IE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImlzRmllbGRWYWxpZCgnY29tcGFueV9uYW1lJylcIj5cbiAgICAgICAge3sgZ2V0RXJyb3JNZXNzYWdlKCdjb21wYW55X25hbWUnKSB9fVxuICAgICAgPC9tYXQtZXJyb3I+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWxhYmVsPkNvbnRhY3QgTmFtZTwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImNvbnRhY3RfbmFtZVwiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiQ29udGFjdCBOYW1lXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5UeXBlczwvbWF0LWxhYmVsPlxuICAgICAgPGFwcC1zZWFyY2hhYmxlLXNlbGVjdG9yIGFwaVVybD1cImFwaS9zdXBwbGllci10eXBlc1wiIGZvcm1Db250cm9sTmFtZT1cInN1cHBsaWVyX3R5cGVfaWRcIiB0aXRsZUZpZWxkPVwidGl0bGVcIj5cbiAgICAgIDwvYXBwLXNlYXJjaGFibGUtc2VsZWN0b3I+XG4gICAgICA8bWF0LWVycm9yICpuZ0lmPVwiaXNGaWVsZFZhbGlkKCdzdXBwbGllcl90eXBlX2lkJylcIj5cbiAgICAgICAge3sgZ2V0RXJyb3JNZXNzYWdlKCdzdXBwbGllcl90eXBlX2lkJykgfX1cbiAgICAgIDwvbWF0LWVycm9yPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWxhYmVsPlBob25lPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwicGhvbmVcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIlBob25lXCIgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5FbWFpbDwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJFbWFpbFwiIHR5cGU9XCJlbWFpbFwiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtbGFiZWw+QWRkcmVzczwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIiBtYXRJbnB1dCBwbGFjZWhvbGRlcj1cIkFkZHJlc3NcIiAvPlxuICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImlzRmllbGRWYWxpZCgnYWRkcmVzcycpXCI+XG4gICAgICAgIHt7IGdldEVycm9yTWVzc2FnZSgnYWRkcmVzcycpIH19XG4gICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD5EZXRhaWxzPC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGV0YWlsc1wiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiRGV0YWlsc1wiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSgpXCIgW2Rpc2FibGVkXT1cImlzV29ya2luZ1wiIG1hdC1mbGF0LWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCI+Q2FuY2VsPC9idXR0b24+XG4gICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc1dvcmtpbmdcIiBjb2xvcj1cInByaW1hcnlcIiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwic3VibWl0XCI+U2F2ZTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZm9ybT5cbiJdfQ==
|
|
@@ -12,6 +12,7 @@ import * as i8 from "../../stock-receipts/stock-receipts-list-page/stock-receipt
|
|
|
12
12
|
import * as i9 from "../../incident/incident-list/incident-list.component";
|
|
13
13
|
import * as i10 from "../../rating/rating-list/rating-list.component";
|
|
14
14
|
import * as i11 from "../supplier-information/supplier-information.component";
|
|
15
|
+
import * as i12 from "../supplier-branches-list/supplier-branches-list.component";
|
|
15
16
|
export class SupplierViewComponent {
|
|
16
17
|
supplierService;
|
|
17
18
|
route;
|
|
@@ -60,10 +61,10 @@ export class SupplierViewComponent {
|
|
|
60
61
|
this.supplier = result.item;
|
|
61
62
|
}
|
|
62
63
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierViewComponent, deps: [{ token: i1.SupplierService }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierViewComponent, selector: "app-supplier-view", ngImport: i0, template: "<mat-progress-bar *ngIf=\"isLoading\" mode=\"indeterminate\"></mat-progress-bar>\n\n<div *ngIf=\"supplier\" class=\"d-flex flex-row gap-3 justify-content-between\">\n <div style=\"width: 300px\">\n <app-supplier-information [supplier]=\"supplier\"></app-supplier-information>\n <mat-card class=\"mt-3\">\n <mat-card-content class=\"p-0\">\n <app-note-list modelType=\"Supplier\" [relatedModelId]=\"supplier?.id\" viewMode=\"timeline\"\n labelText=\"Notes\"></app-note-list>\n </mat-card-content>\n </mat-card>\n </div>\n\n <mat-card class='w-100'>\n <mat-card-content>\n <mat-tab-group [mat-stretch-tabs]=\"false\">\n <mat-tab label=\"Incidents\">\n <app-incident-list [supplierId]=\"supplier?.id\" incidentableType=\"Supplier\" [incidentableId]=\"supplier?.id\">\n </app-incident-list>\n </mat-tab>\n <mat-tab label=\"Ratings\">\n <app-rating-list [supplierId]=\"supplier?.id\" [rateableId]=\"supplier?.id\"
|
|
64
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SupplierViewComponent, selector: "app-supplier-view", ngImport: i0, template: "<mat-progress-bar *ngIf=\"isLoading\" mode=\"indeterminate\"></mat-progress-bar>\n\n<div *ngIf=\"supplier\" class=\"d-flex flex-row gap-3 justify-content-between\">\n <div style=\"width: 300px\">\n <app-supplier-information [supplier]=\"supplier\"></app-supplier-information>\n <mat-card class=\"mt-3\">\n <mat-card-content class=\"p-0\">\n <app-note-list modelType=\"Supplier\" [relatedModelId]=\"supplier?.id\" viewMode=\"timeline\"\n labelText=\"Notes\"></app-note-list>\n </mat-card-content>\n </mat-card>\n </div>\n\n <mat-card class='w-100'>\n <mat-card-content>\n <mat-tab-group [mat-stretch-tabs]=\"false\">\n <mat-tab label=\"Branches\">\n <app-supplier-branches-list [supplierId]=\"supplier?.id\"></app-supplier-branches-list>\n </mat-tab>\n <mat-tab label=\"Incidents\">\n <app-incident-list [supplierId]=\"supplier?.id\" incidentableType=\"Supplier\" [incidentableId]=\"supplier?.id\">\n </app-incident-list>\n </mat-tab>\n <mat-tab label=\"Ratings\">\n <app-rating-list [supplierId]=\"supplier?.id\" [rateableId]=\"supplier?.id\"\n rateableType=\"Supplier\"></app-rating-list>\n </mat-tab>\n <mat-tab label=\"Stock Receipts\">\n <app-stock-receipts-list-page [supplierId]=\"supplier?.id\"></app-stock-receipts-list-page>\n </mat-tab>\n </mat-tab-group>\n </mat-card-content>\n </mat-card>\n</div>", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i6.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: i7.NoteListComponent, selector: "app-note-list", inputs: ["relatedModelId", "modelType", "readonly", "labelText", "commentsView", "viewMode"] }, { kind: "component", type: i8.StockReceiptsListPageComponent, selector: "app-stock-receipts-list-page", inputs: ["product", "supplierId"], outputs: ["listUpdated"] }, { kind: "component", type: i9.IncidentListComponent, selector: "app-incident-list", inputs: ["supplierId", "incidentableType", "incidentableId"] }, { kind: "component", type: i10.RatingListComponent, selector: "app-rating-list", inputs: ["supplierId", "rateableType", "rateableId"] }, { kind: "component", type: i11.SupplierInformationComponent, selector: "app-supplier-information", inputs: ["supplier"] }, { kind: "component", type: i12.SupplierBranchesListComponent, selector: "app-supplier-branches-list", inputs: ["supplierId"] }], preserveWhitespaces: true });
|
|
64
65
|
}
|
|
65
66
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SupplierViewComponent, decorators: [{
|
|
66
67
|
type: Component,
|
|
67
|
-
args: [{ selector: 'app-supplier-view', template: "<mat-progress-bar *ngIf=\"isLoading\" mode=\"indeterminate\"></mat-progress-bar>\n\n<div *ngIf=\"supplier\" class=\"d-flex flex-row gap-3 justify-content-between\">\n <div style=\"width: 300px\">\n <app-supplier-information [supplier]=\"supplier\"></app-supplier-information>\n <mat-card class=\"mt-3\">\n <mat-card-content class=\"p-0\">\n <app-note-list modelType=\"Supplier\" [relatedModelId]=\"supplier?.id\" viewMode=\"timeline\"\n labelText=\"Notes\"></app-note-list>\n </mat-card-content>\n </mat-card>\n </div>\n\n <mat-card class='w-100'>\n <mat-card-content>\n <mat-tab-group [mat-stretch-tabs]=\"false\">\n <mat-tab label=\"Incidents\">\n <app-incident-list [supplierId]=\"supplier?.id\" incidentableType=\"Supplier\" [incidentableId]=\"supplier?.id\">\n </app-incident-list>\n </mat-tab>\n <mat-tab label=\"Ratings\">\n <app-rating-list [supplierId]=\"supplier?.id\" [rateableId]=\"supplier?.id\"
|
|
68
|
+
args: [{ selector: 'app-supplier-view', template: "<mat-progress-bar *ngIf=\"isLoading\" mode=\"indeterminate\"></mat-progress-bar>\n\n<div *ngIf=\"supplier\" class=\"d-flex flex-row gap-3 justify-content-between\">\n <div style=\"width: 300px\">\n <app-supplier-information [supplier]=\"supplier\"></app-supplier-information>\n <mat-card class=\"mt-3\">\n <mat-card-content class=\"p-0\">\n <app-note-list modelType=\"Supplier\" [relatedModelId]=\"supplier?.id\" viewMode=\"timeline\"\n labelText=\"Notes\"></app-note-list>\n </mat-card-content>\n </mat-card>\n </div>\n\n <mat-card class='w-100'>\n <mat-card-content>\n <mat-tab-group [mat-stretch-tabs]=\"false\">\n <mat-tab label=\"Branches\">\n <app-supplier-branches-list [supplierId]=\"supplier?.id\"></app-supplier-branches-list>\n </mat-tab>\n <mat-tab label=\"Incidents\">\n <app-incident-list [supplierId]=\"supplier?.id\" incidentableType=\"Supplier\" [incidentableId]=\"supplier?.id\">\n </app-incident-list>\n </mat-tab>\n <mat-tab label=\"Ratings\">\n <app-rating-list [supplierId]=\"supplier?.id\" [rateableId]=\"supplier?.id\"\n rateableType=\"Supplier\"></app-rating-list>\n </mat-tab>\n <mat-tab label=\"Stock Receipts\">\n <app-stock-receipts-list-page [supplierId]=\"supplier?.id\"></app-stock-receipts-list-page>\n </mat-tab>\n </mat-tab-group>\n </mat-card-content>\n </mat-card>\n</div>" }]
|
|
68
69
|
}], ctorParameters: () => [{ type: i1.SupplierService }, { type: i2.ActivatedRoute }, { type: i2.Router }] });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcGxpZXItdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9zdXBwbGllci9zdXBwbGllci12aWV3L3N1cHBsaWVyLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vc3VwcGxpZXIvc3VwcGxpZXItdmlldy9zdXBwbGllci12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFTbEQsTUFBTSxPQUFPLHFCQUFxQjtJQU1aO0lBQTBDO0lBQStCO0lBTDdGLFFBQVEsQ0FBTTtJQUNkLFVBQVUsR0FBVyxDQUFDLENBQUM7SUFDdkIsZ0JBQWdCLEdBQVcsQ0FBQyxDQUFDO0lBQzdCLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFFM0IsWUFBb0IsZUFBZ0MsRUFBVSxLQUFxQixFQUFVLE1BQWM7UUFBdkYsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQUcsQ0FBQztJQUUvRyxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzNDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUM1QixDQUFDO2lCQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxXQUFXLEVBQUUsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUM1QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQXdCO1FBQ2xDLFFBQVEsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLEtBQUssQ0FBQztnQkFDSixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxPQUFPO1lBQ1QsS0FBSyxDQUFDO2dCQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQzlELE9BQU87WUFDVCxLQUFLLENBQUM7Z0JBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDaEUsT0FBTztRQUNYLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFVO1FBQzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksTUFBTSxHQUFRLE1BQU0sYUFBYSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQzlCLENBQUM7d0dBMUNVLHFCQUFxQjs0RkFBckIscUJBQXFCLHlEQ1ZsQyxzOENBaUNNOzs0RkR2Qk8scUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxhc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN1cHBsaWVyU2VydmljZSB9IGZyb20gJy4uL3N1cHBsaWVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0VGFiQ2hhbmdlRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXN1cHBsaWVyLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3VwcGxpZXItdmlldy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFN1cHBsaWVyVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHN1cHBsaWVyOiBhbnk7XG4gIHN1cHBsaWVySWQ6IG51bWJlciA9IDA7XG4gIHNlbGVjdGVkVGFiSW5kZXg6IG51bWJlciA9IDA7XG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3VwcGxpZXJTZXJ2aWNlOiBTdXBwbGllclNlcnZpY2UsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucm91dGUuZmlyc3RDaGlsZD8udXJsLnN1YnNjcmliZSgodXJsKSA9PiB7XG4gICAgICBpZiAodXJsWzBdLnBhdGggPT09ICdyYXRpbmdzJykge1xuICAgICAgICB0aGlzLnNlbGVjdGVkVGFiSW5kZXggPSAxO1xuICAgICAgfSBlbHNlIGlmICh1cmxbMF0ucGF0aCA9PT0gJ2VzdGltYXRlcycpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFRhYkluZGV4ID0gMjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRUYWJJbmRleCA9IDA7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnN1cHBsaWVySWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtc1snaWQnXTtcbiAgICB0aGlzLmdldFN1cHBsaWVyKHRoaXMuc3VwcGxpZXJJZCk7XG4gIH1cblxuICBvblRhYkNoYW5nZShldmVudDogTWF0VGFiQ2hhbmdlRXZlbnQpIHtcbiAgICBzd2l0Y2ggKGV2ZW50LmluZGV4KSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnaW5jaWRlbnRzJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgY2FzZSAxOlxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ3JhdGluZ3MnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnZXN0aW1hdGVzJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGdldFN1cHBsaWVyKGlkOiBudW1iZXIpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgbGV0IHJlc3VsdDogYW55ID0gYXdhaXQgbGFzdFZhbHVlRnJvbSh0aGlzLnN1cHBsaWVyU2VydmljZS5zaG93KGlkKSk7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLnN1cHBsaWVyID0gcmVzdWx0Lml0ZW07XG4gIH1cbn1cbiIsIjxtYXQtcHJvZ3Jlc3MtYmFyICpuZ0lmPVwiaXNMb2FkaW5nXCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XG5cbjxkaXYgKm5nSWY9XCJzdXBwbGllclwiIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93IGdhcC0zIGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gIDxkaXYgc3R5bGU9XCJ3aWR0aDogMzAwcHhcIj5cbiAgICA8YXBwLXN1cHBsaWVyLWluZm9ybWF0aW9uIFtzdXBwbGllcl09XCJzdXBwbGllclwiPjwvYXBwLXN1cHBsaWVyLWluZm9ybWF0aW9uPlxuICAgIDxtYXQtY2FyZCBjbGFzcz1cIm10LTNcIj5cbiAgICAgIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwicC0wXCI+XG4gICAgICAgIDxhcHAtbm90ZS1saXN0IG1vZGVsVHlwZT1cIlN1cHBsaWVyXCIgW3JlbGF0ZWRNb2RlbElkXT1cInN1cHBsaWVyPy5pZFwiIHZpZXdNb2RlPVwidGltZWxpbmVcIlxuICAgICAgICAgIGxhYmVsVGV4dD1cIk5vdGVzXCI+PC9hcHAtbm90ZS1saXN0PlxuICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgIDwvbWF0LWNhcmQ+XG4gIDwvZGl2PlxuXG4gIDxtYXQtY2FyZCBjbGFzcz0ndy0xMDAnPlxuICAgIDxtYXQtY2FyZC1jb250ZW50PlxuICAgICAgPG1hdC10YWItZ3JvdXAgW21hdC1zdHJldGNoLXRhYnNdPVwiZmFsc2VcIj5cbiAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJCcmFuY2hlc1wiPlxuICAgICAgICAgIDxhcHAtc3VwcGxpZXItYnJhbmNoZXMtbGlzdCBbc3VwcGxpZXJJZF09XCJzdXBwbGllcj8uaWRcIj48L2FwcC1zdXBwbGllci1icmFuY2hlcy1saXN0PlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiIGxhYmVsPVwiSW5jaWRlbnRzXCI+XG4gICAgICAgICAgPGFwcC1pbmNpZGVudC1saXN0IFtzdXBwbGllcklkXT1cInN1cHBsaWVyPy5pZFwiIGluY2lkZW50YWJsZVR5cGU9XCJTdXBwbGllclwiIFtpbmNpZGVudGFibGVJZF09XCJzdXBwbGllcj8uaWRcIj5cbiAgICAgICAgICA8L2FwcC1pbmNpZGVudC1saXN0PlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiIGxhYmVsPVwiUmF0aW5nc1wiPlxuICAgICAgICAgIDxhcHAtcmF0aW5nLWxpc3QgW3N1cHBsaWVySWRdPVwic3VwcGxpZXI/LmlkXCIgW3JhdGVhYmxlSWRdPVwic3VwcGxpZXI/LmlkXCJcbiAgICAgICAgICAgIHJhdGVhYmxlVHlwZT1cIlN1cHBsaWVyXCI+PC9hcHAtcmF0aW5nLWxpc3Q+XG4gICAgICAgIDwvbWF0LXRhYj5cbiAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJTdG9jayBSZWNlaXB0c1wiPlxuICAgICAgICAgIDxhcHAtc3RvY2stcmVjZWlwdHMtbGlzdC1wYWdlIFtzdXBwbGllcklkXT1cInN1cHBsaWVyPy5pZFwiPjwvYXBwLXN0b2NrLXJlY2VpcHRzLWxpc3QtcGFnZT5cbiAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgPC9tYXQtdGFiLWdyb3VwPlxuICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgPC9tYXQtY2FyZD5cbjwvZGl2PiJdfQ==
|