techlify-inventory-common 18.1.0 → 18.3.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 +12 -12
- package/esm2022/lib/inventory-common/category/category-form-button/category-form-button.component.mjs +5 -5
- package/esm2022/lib/inventory-common/category/category-list-page/category-list-page.component.mjs +22 -26
- package/esm2022/lib/inventory-common/category/category-routing.module.mjs +10 -5
- package/esm2022/lib/inventory-common/category/category-view/category-view.component.mjs +46 -0
- package/esm2022/lib/inventory-common/category/category.module.mjs +23 -24
- package/esm2022/lib/inventory-common/category/category.service.mjs +6 -6
- package/esm2022/lib/inventory-common/inventory-common-routing.module.mjs +32 -18
- package/esm2022/lib/inventory-common/inventory-common.module.mjs +13 -9
- package/esm2022/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.mjs +12 -10
- package/esm2022/lib/inventory-common/inventory-value-report.service.mjs +21 -0
- package/esm2022/lib/inventory-common/location/location-delete-button/location-delete-button.component.mjs +68 -0
- package/esm2022/lib/inventory-common/location/location-form/location-form.component.mjs +86 -0
- package/esm2022/lib/inventory-common/location/location-form-button/location-form-button.component.mjs +35 -0
- package/esm2022/lib/inventory-common/location/location-information/location-information.component.mjs +34 -0
- package/esm2022/lib/inventory-common/location/location-list/location-list.component.mjs +121 -0
- package/esm2022/lib/inventory-common/location/location-product-statistics/location-product-statistics.component.mjs +127 -0
- package/esm2022/lib/inventory-common/location/location-routing.module.mjs +29 -0
- package/esm2022/lib/inventory-common/location/location-view/location-view.component.mjs +53 -0
- package/esm2022/lib/inventory-common/location/location.module.mjs +22 -0
- package/esm2022/lib/inventory-common/location/location.service.mjs +23 -0
- package/esm2022/lib/inventory-common/low-stock-report.service.mjs +23 -0
- package/esm2022/lib/inventory-common/material.module.mjs +37 -37
- package/esm2022/lib/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.mjs +4 -4
- package/esm2022/lib/inventory-common/measure/measure-delete/measure-delete.module.mjs +4 -4
- package/esm2022/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.mjs +14 -14
- package/esm2022/lib/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.mjs +5 -5
- package/esm2022/lib/inventory-common/measure/measure-form/measure-form.module.mjs +6 -6
- package/esm2022/lib/inventory-common/measure/measure-routing.module.mjs +5 -5
- package/esm2022/lib/inventory-common/measure/measure.module.mjs +10 -10
- package/esm2022/lib/inventory-common/measure/measure.service.mjs +6 -6
- package/esm2022/lib/inventory-common/measure/measures-list/measures-list.component.mjs +12 -18
- package/esm2022/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.mjs +13 -11
- package/esm2022/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.module.mjs +10 -24
- package/esm2022/lib/inventory-common/product/product-basic-info/product-basic-info.component.mjs +5 -5
- package/esm2022/lib/inventory-common/product/product-batch-update-form/product-batch-update-form.component.mjs +56 -0
- package/esm2022/lib/inventory-common/product/product-delete-button/product-delete-button.component.mjs +6 -6
- package/esm2022/lib/inventory-common/product/product-form/product-form.component.mjs +43 -45
- package/esm2022/lib/inventory-common/product/product-form-button/product-form-button.component.mjs +5 -5
- package/esm2022/lib/inventory-common/product/product-form.service.mjs +4 -4
- package/esm2022/lib/inventory-common/product/product-import-page/product-import-page.component.mjs +32 -32
- package/esm2022/lib/inventory-common/product/product-list/product-list.component.mjs +65 -87
- package/esm2022/lib/inventory-common/product/product-location/product-location-list/product-location-list.component.mjs +56 -0
- package/esm2022/lib/inventory-common/product/product-measure-form/product-measure-form.component.mjs +12 -12
- package/esm2022/lib/inventory-common/product/product-measures-list/product-measures-list.component.mjs +22 -28
- package/esm2022/lib/inventory-common/product/product-nav-bar/product-nav-bar.component.mjs +3 -3
- package/esm2022/lib/inventory-common/product/product-quick-search/product-quick-search.component.mjs +92 -0
- package/esm2022/lib/inventory-common/product/product-routing.module.mjs +17 -17
- package/esm2022/lib/inventory-common/product/product-statistics.service.mjs +23 -0
- package/esm2022/lib/inventory-common/product/product-summary-chart/product-summary-chart.component.mjs +10 -16
- package/esm2022/lib/inventory-common/product/product-summary-chart/product-summary-chart.module.mjs +9 -20
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.mjs +6 -6
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.mjs +14 -14
- package/esm2022/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.mjs +6 -6
- package/esm2022/lib/inventory-common/product/product-tax/product-tax.module.mjs +9 -26
- package/esm2022/lib/inventory-common/product/product-tax/product-tax.service.mjs +6 -6
- package/esm2022/lib/inventory-common/product/product-view-page/product-view-page.component.mjs +9 -7
- package/esm2022/lib/inventory-common/product/product.module.mjs +37 -26
- package/esm2022/lib/inventory-common/product/product.service.mjs +7 -7
- package/esm2022/lib/inventory-common/product/widgets/product-category-badges/product-category-badges.component.mjs +15 -0
- package/esm2022/lib/inventory-common/product-batch.service.mjs +20 -0
- package/esm2022/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.mjs +168 -0
- package/esm2022/lib/inventory-common/reports/low-stock-report/low-stock-report.component.mjs +163 -0
- package/esm2022/lib/inventory-common/services/techlify-form-service.mjs +2 -2
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.mjs +6 -6
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.module.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuance.service.mjs +6 -6
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.mjs +84 -56
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.module.mjs +28 -12
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuances-routing.module.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-issuances/stock-issuances.module.mjs +14 -14
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.mjs +14 -14
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form.module.mjs +13 -13
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.mjs +6 -6
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.mjs +18 -18
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form.module.mjs +12 -12
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipt.service.mjs +6 -6
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.mjs +82 -44
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipts-routing.module.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-receipts/stock-receipts.module.mjs +24 -22
- package/esm2022/lib/inventory-common/stock-summary.service.mjs +5 -5
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer-form/stock-transfer-form.component.mjs +105 -0
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer-form-button/stock-transfer-form-button.component.mjs +38 -0
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer-list/stock-transfer-list.component.mjs +77 -0
- package/esm2022/lib/inventory-common/stock-transfer/stock-transfer.service.mjs +18 -0
- package/esm2022/lib/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.mjs +9 -9
- package/esm2022/lib/inventory-common/supplier/payee-selector/payee-selector.module.mjs +10 -24
- package/esm2022/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.mjs +64 -0
- package/esm2022/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.mjs +43 -0
- package/esm2022/lib/inventory-common/supplier/supplier-form/supplier-form.component.mjs +24 -24
- package/esm2022/lib/inventory-common/supplier/supplier-form/supplier-form.service.mjs +4 -4
- package/esm2022/lib/inventory-common/supplier/supplier-information/supplier-information.component.mjs +16 -15
- package/esm2022/lib/inventory-common/supplier/supplier-routing.module.mjs +9 -16
- package/esm2022/lib/inventory-common/supplier/supplier-view/supplier-view.component.mjs +13 -14
- package/esm2022/lib/inventory-common/supplier/supplier.component.mjs +3 -3
- package/esm2022/lib/inventory-common/supplier/supplier.module.mjs +23 -15
- package/esm2022/lib/inventory-common/supplier/supplier.service.mjs +5 -5
- package/esm2022/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.mjs +6 -65
- package/esm2022/lib/inventory-common/techlify-filter/techlify-filter.component.mjs +16 -18
- package/esm2022/lib/inventory-common/techlify-filter/techlify-filter.module.mjs +13 -9
- package/fesm2022/techlify-inventory-common-category.module-BsvJ6rVx.mjs +290 -0
- package/fesm2022/techlify-inventory-common-category.module-BsvJ6rVx.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common-location.module-Cwx9mHKE.mjs +529 -0
- package/fesm2022/techlify-inventory-common-location.module-Cwx9mHKE.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common-measure.module-C2v0-n_m.mjs +307 -0
- package/fesm2022/techlify-inventory-common-measure.module-C2v0-n_m.mjs.map +1 -0
- package/fesm2022/{techlify-inventory-common-stock-issuances.module-BQRRP-hW.mjs → techlify-inventory-common-stock-issuances.module-CPccetrp.mjs} +3 -5
- package/fesm2022/techlify-inventory-common-stock-issuances.module-CPccetrp.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common-supplier.module-CYq-2pV1.mjs +464 -0
- package/fesm2022/techlify-inventory-common-supplier.module-CYq-2pV1.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-BMNkSTd6.mjs +3620 -0
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-BMNkSTd6.mjs.map +1 -0
- package/fesm2022/techlify-inventory-common.mjs +1 -1
- package/lib/inventory-common/category/category-form/category-form.component.d.ts +4 -4
- package/lib/inventory-common/category/category-form-button/category-form-button.component.d.ts +2 -2
- package/lib/inventory-common/category/category-list-page/category-list-page.component.d.ts +4 -4
- package/lib/inventory-common/category/category-view/category-view.component.d.ts +16 -0
- package/lib/inventory-common/category/category.module.d.ts +12 -11
- package/lib/inventory-common/category/category.service.d.ts +1 -1
- package/lib/inventory-common/inventory-common.module.d.ts +2 -1
- package/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.d.ts +1 -1
- package/lib/inventory-common/inventory-value-report.service.d.ts +9 -0
- package/lib/inventory-common/location/location-delete-button/location-delete-button.component.d.ts +28 -0
- package/lib/inventory-common/location/location-form/location-form.component.d.ts +19 -0
- package/lib/inventory-common/location/location-form-button/location-form-button.component.d.ts +13 -0
- package/lib/inventory-common/location/location-information/location-information.component.d.ts +10 -0
- package/lib/inventory-common/location/location-list/location-list.component.d.ts +20 -0
- package/lib/inventory-common/location/location-product-statistics/location-product-statistics.component.d.ts +21 -0
- package/lib/inventory-common/location/location-routing.module.d.ts +7 -0
- package/lib/inventory-common/location/location-view/location-view.component.d.ts +16 -0
- package/lib/inventory-common/location/location.module.d.ts +8 -0
- package/lib/inventory-common/location/location.service.d.ts +10 -0
- package/lib/inventory-common/low-stock-report.service.d.ts +10 -0
- package/lib/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.d.ts +3 -3
- package/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.d.ts +4 -4
- package/lib/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.d.ts +2 -2
- package/lib/inventory-common/measure/measure.service.d.ts +1 -1
- package/lib/inventory-common/measure/measures-list/measures-list.component.d.ts +5 -5
- package/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.d.ts +3 -3
- package/lib/inventory-common/product/product-basic-info/product-basic-info.component.d.ts +2 -2
- package/lib/inventory-common/product/product-batch-update-form/product-batch-update-form.component.d.ts +18 -0
- package/lib/inventory-common/product/product-delete-button/product-delete-button.component.d.ts +4 -4
- package/lib/inventory-common/product/product-form/product-form.component.d.ts +6 -6
- package/lib/inventory-common/product/product-form-button/product-form-button.component.d.ts +3 -3
- package/lib/inventory-common/product/product-import-page/product-import-page.component.d.ts +2 -2
- package/lib/inventory-common/product/product-list/product-list.component.d.ts +15 -24
- package/lib/inventory-common/product/product-location/product-location-list/product-location-list.component.d.ts +15 -0
- package/lib/inventory-common/product/product-measure-form/product-measure-form.component.d.ts +6 -6
- package/lib/inventory-common/product/product-measures-list/product-measures-list.component.d.ts +7 -7
- package/lib/inventory-common/product/product-quick-search/product-quick-search.component.d.ts +15 -0
- package/lib/inventory-common/product/product-statistics.service.d.ts +9 -0
- package/lib/inventory-common/product/product-summary-chart/product-summary-chart.component.d.ts +1 -1
- package/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.d.ts +4 -4
- package/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.d.ts +5 -5
- package/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.d.ts +2 -2
- package/lib/inventory-common/product/product-tax/product-tax.service.d.ts +1 -1
- package/lib/inventory-common/product/product-view-page/product-view-page.component.d.ts +4 -4
- package/lib/inventory-common/product/product.module.d.ts +16 -13
- package/lib/inventory-common/product/product.service.d.ts +2 -2
- package/lib/inventory-common/product/widgets/product-category-badges/product-category-badges.component.d.ts +6 -0
- package/lib/inventory-common/product-batch.service.d.ts +8 -0
- package/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.d.ts +26 -0
- package/lib/inventory-common/reports/low-stock-report/low-stock-report.component.d.ts +26 -0
- package/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.d.ts +4 -4
- package/lib/inventory-common/stock-issuances/stock-issuance.service.d.ts +1 -1
- package/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.d.ts +16 -8
- package/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.module.d.ts +3 -1
- package/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.d.ts +4 -4
- package/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.d.ts +2 -2
- package/lib/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.d.ts +4 -4
- package/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.d.ts +4 -4
- package/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.d.ts +2 -2
- package/lib/inventory-common/stock-receipts/stock-receipt.service.d.ts +1 -1
- package/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.d.ts +12 -4
- package/lib/inventory-common/stock-receipts/stock-receipts.module.d.ts +2 -1
- package/lib/inventory-common/stock-summary.service.d.ts +1 -1
- package/lib/inventory-common/stock-transfer/stock-transfer-form/stock-transfer-form.component.d.ts +19 -0
- package/lib/inventory-common/stock-transfer/stock-transfer-form-button/stock-transfer-form-button.component.d.ts +14 -0
- package/lib/inventory-common/stock-transfer/stock-transfer-list/stock-transfer-list.component.d.ts +17 -0
- package/lib/inventory-common/stock-transfer/stock-transfer.service.d.ts +7 -0
- package/lib/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.d.ts +3 -3
- package/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.d.ts +18 -0
- package/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.d.ts +13 -0
- package/lib/inventory-common/supplier/supplier-form/supplier-form.component.d.ts +6 -6
- package/lib/inventory-common/supplier/supplier-information/supplier-information.component.d.ts +4 -4
- package/lib/inventory-common/supplier/supplier-view/supplier-view.component.d.ts +4 -4
- package/lib/inventory-common/supplier/supplier.component.d.ts +2 -2
- package/lib/inventory-common/supplier/supplier.module.d.ts +3 -1
- package/lib/inventory-common/supplier/supplier.service.d.ts +1 -1
- package/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.d.ts +0 -8
- package/lib/inventory-common/techlify-filter/techlify-filter.component.d.ts +4 -4
- package/lib/inventory-common/techlify-filter/techlify-filter.module.d.ts +2 -1
- package/package.json +1 -1
- package/fesm2022/techlify-inventory-common-category.module-CNm2bEsx.mjs +0 -257
- package/fesm2022/techlify-inventory-common-category.module-CNm2bEsx.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-measure.module-BEaRHh5Z.mjs +0 -313
- package/fesm2022/techlify-inventory-common-measure.module-BEaRHh5Z.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-product.module-BV9Cy88x.mjs +0 -1168
- package/fesm2022/techlify-inventory-common-product.module-BV9Cy88x.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-stock-issuances-list.module-Dt6gx-ji.mjs +0 -436
- package/fesm2022/techlify-inventory-common-stock-issuances-list.module-Dt6gx-ji.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-stock-issuances.module-BQRRP-hW.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-stock-receipt-form.module-DND0GNlf.mjs +0 -302
- package/fesm2022/techlify-inventory-common-stock-receipt-form.module-DND0GNlf.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-stock-receipts.module-BvYaKITT.mjs +0 -253
- package/fesm2022/techlify-inventory-common-stock-receipts.module-BvYaKITT.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-supplier-form.component-DVBnhiyH.mjs +0 -177
- package/fesm2022/techlify-inventory-common-supplier-form.component-DVBnhiyH.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-supplier.module-Bwa7gx14.mjs +0 -608
- package/fesm2022/techlify-inventory-common-supplier.module-Bwa7gx14.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-techlify-form-service-CiVfwYTS.mjs +0 -14
- package/fesm2022/techlify-inventory-common-techlify-form-service-CiVfwYTS.mjs.map +0 -1
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-GFYF7JCA.mjs +0 -495
- package/fesm2022/techlify-inventory-common-techlify-inventory-common-GFYF7JCA.mjs.map +0 -1
|
@@ -1,41 +1,55 @@
|
|
|
1
|
-
import { NgModule } from
|
|
2
|
-
import { RouterModule } from
|
|
3
|
-
import { InventoryDashboardPageComponent } from
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
import { InventoryDashboardPageComponent } from './inventory-dashboard-page/inventory-dashboard-page.component';
|
|
4
|
+
import { LowStockReportComponent } from './reports/low-stock-report/low-stock-report.component';
|
|
5
|
+
import { InventoryValueReportComponent } from './reports/inventory-value-report/inventory-value-report.component';
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
5
7
|
import * as i1 from "@angular/router";
|
|
6
8
|
const routes = [
|
|
7
9
|
{
|
|
8
|
-
path:
|
|
9
|
-
|
|
10
|
+
path: 'reports/low-stock-report',
|
|
11
|
+
component: LowStockReportComponent,
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
path: 'reports/inventory-value-report',
|
|
15
|
+
component: InventoryValueReportComponent,
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
path: 'suppliers',
|
|
19
|
+
loadChildren: () => import('./supplier/supplier.module').then((m) => m.SupplierModule),
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
path: 'locations',
|
|
23
|
+
loadChildren: () => import("./location/location.module").then((mod) => mod.LocationModule),
|
|
10
24
|
},
|
|
11
25
|
{
|
|
12
26
|
path: "measures",
|
|
13
27
|
loadChildren: () => import("./measure/measure.module").then((mod) => mod.MeasureModule),
|
|
14
28
|
},
|
|
15
29
|
{
|
|
16
|
-
path:
|
|
17
|
-
loadChildren: () => import(
|
|
30
|
+
path: 'stock-issuances',
|
|
31
|
+
loadChildren: () => import('./stock-issuances/stock-issuances.module').then((mod) => mod.StockIssuancesModule),
|
|
18
32
|
},
|
|
19
33
|
{
|
|
20
|
-
path:
|
|
21
|
-
loadChildren: () => import(
|
|
34
|
+
path: 'stock-receipts',
|
|
35
|
+
loadChildren: () => import('./stock-receipts/stock-receipts.module').then((mod) => mod.StockReceiptsModule),
|
|
22
36
|
},
|
|
23
37
|
{
|
|
24
|
-
path:
|
|
25
|
-
loadChildren: () => import(
|
|
38
|
+
path: 'categories',
|
|
39
|
+
loadChildren: () => import('./category/category.module').then((mod) => mod.CategoryModule),
|
|
26
40
|
},
|
|
27
41
|
{
|
|
28
|
-
path:
|
|
29
|
-
loadChildren: () => import(
|
|
42
|
+
path: 'products',
|
|
43
|
+
loadChildren: () => import('./product/product.module').then((mod) => mod.ProductModule),
|
|
30
44
|
},
|
|
31
45
|
{
|
|
32
|
-
path:
|
|
46
|
+
path: 'dashboard',
|
|
33
47
|
component: InventoryDashboardPageComponent,
|
|
34
48
|
},
|
|
35
49
|
{
|
|
36
|
-
path:
|
|
37
|
-
redirectTo:
|
|
38
|
-
pathMatch:
|
|
50
|
+
path: '**',
|
|
51
|
+
redirectTo: 'dashboard',
|
|
52
|
+
pathMatch: 'full',
|
|
39
53
|
},
|
|
40
54
|
];
|
|
41
55
|
export class InventoryCommonRoutingModule {
|
|
@@ -50,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
50
64
|
exports: [RouterModule],
|
|
51
65
|
}]
|
|
52
66
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZW50b3J5LWNvbW1vbi1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludmVudG9yeS1jb21tb24vc3JjL2xpYi9pbnZlbnRvcnktY29tbW9uL2ludmVudG9yeS1jb21tb24tcm91dGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDaEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDaEcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7OztBQUVsSCxNQUFNLE1BQU0sR0FBVztJQUNyQjtRQUNFLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsU0FBUyxFQUFFLHVCQUF1QjtLQUNuQztJQUNEO1FBQ0UsSUFBSSxFQUFFLGdDQUFnQztRQUN0QyxTQUFTLEVBQUUsNkJBQTZCO0tBQ3pDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsV0FBVztRQUNqQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO0tBQ3ZGO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsV0FBVztRQUNmLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FDbkIsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDO0tBQ3pFO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQ2pCLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQztLQUN0RTtJQUNEO1FBQ0UsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDBDQUEwQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUM7S0FDL0c7SUFDRDtRQUNFLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDO0tBQzVHO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsWUFBWTtRQUNsQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDO0tBQzNGO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDO0tBQ3hGO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsV0FBVztRQUNqQixTQUFTLEVBQUUsK0JBQStCO0tBQzNDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsSUFBSTtRQUNWLFVBQVUsRUFBRSxXQUFXO1FBQ3ZCLFNBQVMsRUFBRSxNQUFNO0tBQ2xCO0NBQ0YsQ0FBQztBQU1GLE1BQU0sT0FBTyw0QkFBNEI7d0dBQTVCLDRCQUE0Qjt5R0FBNUIsNEJBQTRCLHdDQUY3QixZQUFZO3lHQUVYLDRCQUE0QixZQUg3QixZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUM3QixZQUFZOzs0RkFFWCw0QkFBNEI7a0JBSnhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJbnZlbnRvcnlEYXNoYm9hcmRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9pbnZlbnRvcnktZGFzaGJvYXJkLXBhZ2UvaW52ZW50b3J5LWRhc2hib2FyZC1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb3dTdG9ja1JlcG9ydENvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9sb3ctc3RvY2stcmVwb3J0L2xvdy1zdG9jay1yZXBvcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEludmVudG9yeVZhbHVlUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2ludmVudG9yeS12YWx1ZS1yZXBvcnQvaW52ZW50b3J5LXZhbHVlLXJlcG9ydC5jb21wb25lbnQnO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICdyZXBvcnRzL2xvdy1zdG9jay1yZXBvcnQnLFxuICAgIGNvbXBvbmVudDogTG93U3RvY2tSZXBvcnRDb21wb25lbnQsXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAncmVwb3J0cy9pbnZlbnRvcnktdmFsdWUtcmVwb3J0JyxcbiAgICBjb21wb25lbnQ6IEludmVudG9yeVZhbHVlUmVwb3J0Q29tcG9uZW50LFxuICB9LFxuICB7XG4gICAgcGF0aDogJ3N1cHBsaWVycycsXG4gICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJy4vc3VwcGxpZXIvc3VwcGxpZXIubW9kdWxlJykudGhlbigobSkgPT4gbS5TdXBwbGllck1vZHVsZSksXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAnbG9jYXRpb25zJ1xuICAgICwgbG9hZENoaWxkcmVuOiAoKSA9PlxuICAgICAgaW1wb3J0KFwiLi9sb2NhdGlvbi9sb2NhdGlvbi5tb2R1bGVcIikudGhlbigobW9kKSA9PiBtb2QuTG9jYXRpb25Nb2R1bGUpLFxuICB9LFxuICB7XG4gICAgcGF0aDogXCJtZWFzdXJlc1wiLFxuICAgIGxvYWRDaGlsZHJlbjogKCkgPT5cbiAgICAgIGltcG9ydChcIi4vbWVhc3VyZS9tZWFzdXJlLm1vZHVsZVwiKS50aGVuKChtb2QpID0+IG1vZC5NZWFzdXJlTW9kdWxlKSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdzdG9jay1pc3N1YW5jZXMnLFxuICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCcuL3N0b2NrLWlzc3VhbmNlcy9zdG9jay1pc3N1YW5jZXMubW9kdWxlJykudGhlbigobW9kKSA9PiBtb2QuU3RvY2tJc3N1YW5jZXNNb2R1bGUpLFxuICB9LFxuICB7XG4gICAgcGF0aDogJ3N0b2NrLXJlY2VpcHRzJyxcbiAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnLi9zdG9jay1yZWNlaXB0cy9zdG9jay1yZWNlaXB0cy5tb2R1bGUnKS50aGVuKChtb2QpID0+IG1vZC5TdG9ja1JlY2VpcHRzTW9kdWxlKSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdjYXRlZ29yaWVzJyxcbiAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnLi9jYXRlZ29yeS9jYXRlZ29yeS5tb2R1bGUnKS50aGVuKChtb2QpID0+IG1vZC5DYXRlZ29yeU1vZHVsZSksXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAncHJvZHVjdHMnLFxuICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCcuL3Byb2R1Y3QvcHJvZHVjdC5tb2R1bGUnKS50aGVuKChtb2QpID0+IG1vZC5Qcm9kdWN0TW9kdWxlKSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdkYXNoYm9hcmQnLFxuICAgIGNvbXBvbmVudDogSW52ZW50b3J5RGFzaGJvYXJkUGFnZUNvbXBvbmVudCxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICcqKicsXG4gICAgcmVkaXJlY3RUbzogJ2Rhc2hib2FyZCcsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCcsXG4gIH0sXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgSW52ZW50b3J5Q29tbW9uUm91dGluZ01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { NgModule } from
|
|
2
|
-
import { CommonModule } from
|
|
3
|
-
import { InventoryCommonRoutingModule } from
|
|
4
|
-
import { InventoryDashboardPageComponent } from
|
|
5
|
-
import { MaterialModule } from
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { InventoryCommonRoutingModule } from './inventory-common-routing.module';
|
|
4
|
+
import { InventoryDashboardPageComponent } from './inventory-dashboard-page/inventory-dashboard-page.component';
|
|
5
|
+
import { MaterialModule } from 'ngx-techlify-core';
|
|
6
6
|
import { LowStockProductsWidgetModule } from './product/low-stock-products-widget/low-stock-products-widget.module';
|
|
7
7
|
import { ProductSummaryChartModule } from './product/product-summary-chart/product-summary-chart.module';
|
|
8
8
|
import { ProductSummaryChartComponent } from './product/product-summary-chart/product-summary-chart.component';
|
|
9
|
+
import { ProductQuickSearchComponent } from './product/product-quick-search/product-quick-search.component';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
export class InventoryCommonModule {
|
|
11
12
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -14,13 +15,15 @@ export class InventoryCommonModule {
|
|
|
14
15
|
MaterialModule,
|
|
15
16
|
LowStockProductsWidgetModule,
|
|
16
17
|
ProductSummaryChartModule,
|
|
17
|
-
ProductSummaryChartComponent
|
|
18
|
+
ProductSummaryChartComponent,
|
|
19
|
+
ProductQuickSearchComponent] });
|
|
18
20
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryCommonModule, imports: [CommonModule,
|
|
19
21
|
InventoryCommonRoutingModule,
|
|
20
22
|
MaterialModule,
|
|
21
23
|
LowStockProductsWidgetModule,
|
|
22
24
|
ProductSummaryChartModule,
|
|
23
|
-
ProductSummaryChartComponent
|
|
25
|
+
ProductSummaryChartComponent,
|
|
26
|
+
ProductQuickSearchComponent] });
|
|
24
27
|
}
|
|
25
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryCommonModule, decorators: [{
|
|
26
29
|
type: NgModule,
|
|
@@ -32,8 +35,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
32
35
|
MaterialModule,
|
|
33
36
|
LowStockProductsWidgetModule,
|
|
34
37
|
ProductSummaryChartModule,
|
|
35
|
-
ProductSummaryChartComponent
|
|
38
|
+
ProductSummaryChartComponent,
|
|
39
|
+
ProductQuickSearchComponent,
|
|
36
40
|
],
|
|
37
41
|
}]
|
|
38
42
|
}] });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZW50b3J5LWNvbW1vbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9pbnZlbnRvcnktY29tbW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNoSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sc0VBQXNFLENBQUM7QUFDcEgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDL0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0RBQStELENBQUM7O0FBYzVHLE1BQU0sT0FBTyxxQkFBcUI7d0dBQXJCLHFCQUFxQjt5R0FBckIscUJBQXFCLGlCQVhqQiwrQkFBK0IsYUFFNUMsWUFBWTtZQUNaLDRCQUE0QjtZQUM1QixjQUFjO1lBQ2QsNEJBQTRCO1lBQzVCLHlCQUF5QjtZQUN6Qiw0QkFBNEI7WUFDNUIsMkJBQTJCO3lHQUdsQixxQkFBcUIsWUFUOUIsWUFBWTtZQUNaLDRCQUE0QjtZQUM1QixjQUFjO1lBQ2QsNEJBQTRCO1lBQzVCLHlCQUF5QjtZQUN6Qiw0QkFBNEI7WUFDNUIsMkJBQTJCOzs0RkFHbEIscUJBQXFCO2tCQVpqQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLCtCQUErQixDQUFDO29CQUMvQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWiw0QkFBNEI7d0JBQzVCLGNBQWM7d0JBQ2QsNEJBQTRCO3dCQUM1Qix5QkFBeUI7d0JBQ3pCLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3FCQUM1QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBJbnZlbnRvcnlDb21tb25Sb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9pbnZlbnRvcnktY29tbW9uLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IEludmVudG9yeURhc2hib2FyZFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2ludmVudG9yeS1kYXNoYm9hcmQtcGFnZS9pbnZlbnRvcnktZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnbmd4LXRlY2hsaWZ5LWNvcmUnO1xuaW1wb3J0IHsgTG93U3RvY2tQcm9kdWN0c1dpZGdldE1vZHVsZSB9IGZyb20gJy4vcHJvZHVjdC9sb3ctc3RvY2stcHJvZHVjdHMtd2lkZ2V0L2xvdy1zdG9jay1wcm9kdWN0cy13aWRnZXQubW9kdWxlJztcbmltcG9ydCB7IFByb2R1Y3RTdW1tYXJ5Q2hhcnRNb2R1bGUgfSBmcm9tICcuL3Byb2R1Y3QvcHJvZHVjdC1zdW1tYXJ5LWNoYXJ0L3Byb2R1Y3Qtc3VtbWFyeS1jaGFydC5tb2R1bGUnO1xuaW1wb3J0IHsgUHJvZHVjdFN1bW1hcnlDaGFydENvbXBvbmVudCB9IGZyb20gJy4vcHJvZHVjdC9wcm9kdWN0LXN1bW1hcnktY2hhcnQvcHJvZHVjdC1zdW1tYXJ5LWNoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9kdWN0UXVpY2tTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL3Byb2R1Y3QvcHJvZHVjdC1xdWljay1zZWFyY2gvcHJvZHVjdC1xdWljay1zZWFyY2guY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbSW52ZW50b3J5RGFzaGJvYXJkUGFnZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW52ZW50b3J5Q29tbW9uUm91dGluZ01vZHVsZSxcbiAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICBMb3dTdG9ja1Byb2R1Y3RzV2lkZ2V0TW9kdWxlLFxuICAgIFByb2R1Y3RTdW1tYXJ5Q2hhcnRNb2R1bGUsXG4gICAgUHJvZHVjdFN1bW1hcnlDaGFydENvbXBvbmVudCxcbiAgICBQcm9kdWN0UXVpY2tTZWFyY2hDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEludmVudG9yeUNvbW1vbk1vZHVsZSB7fVxuIl19
|
package/esm2022/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.mjs
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
|
-
import moment from
|
|
2
|
+
import moment from 'moment';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../product/product.service";
|
|
5
|
-
import * as i2 from "@angular/
|
|
6
|
-
import * as i3 from "@angular/material/
|
|
7
|
-
import * as i4 from "
|
|
8
|
-
import * as i5 from "../product/
|
|
9
|
-
import * as i6 from "
|
|
5
|
+
import * as i2 from "@angular/router";
|
|
6
|
+
import * as i3 from "@angular/material/icon";
|
|
7
|
+
import * as i4 from "@angular/material/card";
|
|
8
|
+
import * as i5 from "../product/low-stock-products-widget/low-stock-products-widget.component";
|
|
9
|
+
import * as i6 from "../product/product-summary-chart/product-summary-chart.component";
|
|
10
|
+
import * as i7 from "../product/product-quick-search/product-quick-search.component";
|
|
11
|
+
import * as i8 from "@angular/common";
|
|
10
12
|
export class InventoryDashboardPageComponent {
|
|
11
13
|
productService;
|
|
12
14
|
lowStockProductsCount;
|
|
@@ -29,14 +31,14 @@ export class InventoryDashboardPageComponent {
|
|
|
29
31
|
this.lowStockProductsCount = response?.low_stock_products_count;
|
|
30
32
|
this.stockReceiptsQtySum = response?.stock_receipts_quantity_sum;
|
|
31
33
|
this.stockIssuanceQtySum = response?.stock_issuances_quantity_sum;
|
|
32
|
-
}
|
|
34
|
+
},
|
|
33
35
|
});
|
|
34
36
|
}
|
|
35
37
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryDashboardPageComponent, deps: [{ token: i1.ProductService }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InventoryDashboardPageComponent, selector: "app-inventory-dashboard-page", ngImport: i0, template: "<div class=\"d-flex justify-content-start align-items-start gap-3 vh-100\">\n <div class=\"row\" style=\"width: calc(100% - 300px)\">\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\" style=\"color: #
|
|
38
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InventoryDashboardPageComponent, selector: "app-inventory-dashboard-page", ngImport: i0, template: "<div class=\"d-flex justify-content-start align-items-start gap-3 vh-100\">\n <div class=\"row\" style=\"width: calc(100% - 300px)\">\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\" style=\"color: #f5222d !important\"> inventory_2 </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Low Stock Products</small>\n <h1 class=\"mb-0 fw-bold\">{{ lowStockProductsCount | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\"> arrow_circle_down </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Products Received This Month</small>\n <h1 class=\"mb-0 fw-bold\">{{ stockReceiptsQtySum | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\"> arrow_circle_up </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Products Issued This Month</small>\n <h1 class=\"mb-0 fw-bold\">{{ stockIssuanceQtySum | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-product-quick-search></app-product-quick-search>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-low-stock-products-widget></app-low-stock-products-widget>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-product-summary-chart title=\"Product By Category\"></app-product-summary-chart>\n </div>\n </div>\n <div style=\"width: 300px\" class=\"d-flex flex-column gap-3 h-100\">\n <mat-card class=\"h-100\">\n <mat-card-content>\n <div class=\"d-flex justify-content-start align-items-center gap-2\">\n <mat-icon>flag</mat-icon>\n <h3 class=\"mb-0 fw-bold\">Reports</h3>\n </div>\n </mat-card-content>\n <mat-card-content class=\"mt-3 d-flex flex-column justify-content-start gap-3\">\n <a\n class=\"d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark\"\n routerLink=\"/inventory/reports/low-stock-report\"\n >\n <span class=\"material-symbols-outlined fs-3\"> description </span>\n <h3 class=\"mb-0\">Low Stock Report</h3>\n <span class=\"material-symbols-outlined\"> chevron_forward </span>\n </a>\n <a\n class=\"d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark cursor-pointer\"\n routerLink=\"/inventory/reports/inventory-value-report\"\n >\n <span class=\"material-symbols-outlined fs-3\"> description </span>\n <h3 class=\"mb-0\">Inventory Value Report</h3>\n <span class=\"material-symbols-outlined\"> chevron_forward </span>\n </a>\n </mat-card-content>\n </mat-card>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.LowStockProductsWidgetComponent, selector: "app-low-stock-products-widget" }, { kind: "component", type: i6.ProductSummaryChartComponent, selector: "app-product-summary-chart", inputs: ["height", "title"] }, { kind: "component", type: i7.ProductQuickSearchComponent, selector: "app-product-quick-search" }, { kind: "pipe", type: i8.DecimalPipe, name: "number" }], preserveWhitespaces: true });
|
|
37
39
|
}
|
|
38
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryDashboardPageComponent, decorators: [{
|
|
39
41
|
type: Component,
|
|
40
|
-
args: [{ selector: 'app-inventory-dashboard-page', template: "<div class=\"d-flex justify-content-start align-items-start gap-3 vh-100\">\n <div class=\"row\" style=\"width: calc(100% - 300px)\">\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\" style=\"color: #
|
|
42
|
+
args: [{ selector: 'app-inventory-dashboard-page', template: "<div class=\"d-flex justify-content-start align-items-start gap-3 vh-100\">\n <div class=\"row\" style=\"width: calc(100% - 300px)\">\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\" style=\"color: #f5222d !important\"> inventory_2 </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Low Stock Products</small>\n <h1 class=\"mb-0 fw-bold\">{{ lowStockProductsCount | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\"> arrow_circle_down </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Products Received This Month</small>\n <h1 class=\"mb-0 fw-bold\">{{ stockReceiptsQtySum | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-4 mb-3\">\n <mat-card>\n <mat-card-content class=\"d-flex justify-content-center align-items-center gap-3\">\n <span class=\"material-symbols-outlined fs-1 fw-bold\"> arrow_circle_up </span>\n <div class=\"d-flex flex-column gap-0\">\n <small class=\"text-secondary\">Products Issued This Month</small>\n <h1 class=\"mb-0 fw-bold\">{{ stockIssuanceQtySum | number }}</h1>\n </div>\n </mat-card-content>\n </mat-card>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-product-quick-search></app-product-quick-search>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-low-stock-products-widget></app-low-stock-products-widget>\n </div>\n <div class=\"col-lg-6 mb-3\">\n <app-product-summary-chart title=\"Product By Category\"></app-product-summary-chart>\n </div>\n </div>\n <div style=\"width: 300px\" class=\"d-flex flex-column gap-3 h-100\">\n <mat-card class=\"h-100\">\n <mat-card-content>\n <div class=\"d-flex justify-content-start align-items-center gap-2\">\n <mat-icon>flag</mat-icon>\n <h3 class=\"mb-0 fw-bold\">Reports</h3>\n </div>\n </mat-card-content>\n <mat-card-content class=\"mt-3 d-flex flex-column justify-content-start gap-3\">\n <a\n class=\"d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark\"\n routerLink=\"/inventory/reports/low-stock-report\"\n >\n <span class=\"material-symbols-outlined fs-3\"> description </span>\n <h3 class=\"mb-0\">Low Stock Report</h3>\n <span class=\"material-symbols-outlined\"> chevron_forward </span>\n </a>\n <a\n class=\"d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark cursor-pointer\"\n routerLink=\"/inventory/reports/inventory-value-report\"\n >\n <span class=\"material-symbols-outlined fs-3\"> description </span>\n <h3 class=\"mb-0\">Inventory Value Report</h3>\n <span class=\"material-symbols-outlined\"> chevron_forward </span>\n </a>\n </mat-card-content>\n </mat-card>\n </div>\n</div>\n" }]
|
|
41
43
|
}], ctorParameters: () => [{ type: i1.ProductService }] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZW50b3J5LWRhc2hib2FyZC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ludmVudG9yeS1jb21tb24vc3JjL2xpYi9pbnZlbnRvcnktY29tbW9uL2ludmVudG9yeS1kYXNoYm9hcmQtcGFnZS9pbnZlbnRvcnktZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vaW52ZW50b3J5LWRhc2hib2FyZC1wYWdlL2ludmVudG9yeS1kYXNoYm9hcmQtcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQzs7Ozs7Ozs7OztBQU81QixNQUFNLE9BQU8sK0JBQStCO0lBSXRCO0lBSHBCLHFCQUFxQixDQUFVO0lBQy9CLG1CQUFtQixDQUFVO0lBQzdCLG1CQUFtQixDQUFVO0lBQzdCLFlBQW9CLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUFHLENBQUM7SUFFdEQsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsTUFBTSxNQUFNLEdBQVE7WUFDbEIsT0FBTyxFQUFFLG1GQUFtRjtZQUM1RixTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1NBQ3RELENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDNUMsSUFBSSxFQUFFLENBQUMsUUFBYSxFQUFFLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxRQUFRLEVBQUUsd0JBQXdCLENBQUM7Z0JBQ2hFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxRQUFRLEVBQUUsMkJBQTJCLENBQUM7Z0JBQ2pFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxRQUFRLEVBQUUsNEJBQTRCLENBQUM7WUFDcEUsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBdkJVLCtCQUErQjs0RkFBL0IsK0JBQStCLG9FQ1Q1QywrNEdBMEVBOzs0RkRqRWEsK0JBQStCO2tCQUwzQyxTQUFTOytCQUNFLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcm9kdWN0U2VydmljZSB9IGZyb20gJy4uL3Byb2R1Y3QvcHJvZHVjdC5zZXJ2aWNlJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWludmVudG9yeS1kYXNoYm9hcmQtcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnZlbnRvcnktZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnZlbnRvcnktZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSW52ZW50b3J5RGFzaGJvYXJkUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGxvd1N0b2NrUHJvZHVjdHNDb3VudCE6IG51bWJlcjtcbiAgc3RvY2tSZWNlaXB0c1F0eVN1bSE6IG51bWJlcjtcbiAgc3RvY2tJc3N1YW5jZVF0eVN1bSE6IG51bWJlcjtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwcm9kdWN0U2VydmljZTogUHJvZHVjdFNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkUHJvZHVjdFN1bW1hcnkoKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFByb2R1Y3RTdW1tYXJ5KCkge1xuICAgIGNvbnN0IHBhcmFtczogYW55ID0ge1xuICAgICAgaW5jbHVkZTogJ2xvd19zdG9ja19wcm9kdWN0c19jb3VudCxzdG9ja19yZWNlaXB0c19xdWFudGl0eV9zdW0sc3RvY2tfaXNzdWFuY2VzX3F1YW50aXR5X3N1bScsXG4gICAgICBkYXRlX2Zyb206IG1vbWVudCgpLnN0YXJ0T2YoJ21vbnRoJykuZm9ybWF0KCdZWVlZLU1NLUREJyksXG4gICAgICBkYXRlX3RvOiBtb21lbnQoKS5lbmRPZignbW9udGgnKS5mb3JtYXQoJ1lZWVktTU0tREQnKSxcbiAgICB9O1xuICAgIHRoaXMucHJvZHVjdFNlcnZpY2Uuc3VtbWFyeShwYXJhbXMpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmxvd1N0b2NrUHJvZHVjdHNDb3VudCA9IHJlc3BvbnNlPy5sb3dfc3RvY2tfcHJvZHVjdHNfY291bnQ7XG4gICAgICAgIHRoaXMuc3RvY2tSZWNlaXB0c1F0eVN1bSA9IHJlc3BvbnNlPy5zdG9ja19yZWNlaXB0c19xdWFudGl0eV9zdW07XG4gICAgICAgIHRoaXMuc3RvY2tJc3N1YW5jZVF0eVN1bSA9IHJlc3BvbnNlPy5zdG9ja19pc3N1YW5jZXNfcXVhbnRpdHlfc3VtO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24taXRlbXMtc3RhcnQgZ2FwLTMgdmgtMTAwXCI+XG4gIDxkaXYgY2xhc3M9XCJyb3dcIiBzdHlsZT1cIndpZHRoOiBjYWxjKDEwMCUgLSAzMDBweClcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbWItM1wiPlxuICAgICAgPG1hdC1jYXJkPlxuICAgICAgICA8bWF0LWNhcmQtY29udGVudCBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBmcy0xIGZ3LWJvbGRcIiBzdHlsZT1cImNvbG9yOiAjZjUyMjJkICFpbXBvcnRhbnRcIj4gaW52ZW50b3J5XzIgPC9zcGFuPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZ2FwLTBcIj5cbiAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cInRleHQtc2Vjb25kYXJ5XCI+TG93IFN0b2NrIFByb2R1Y3RzPC9zbWFsbD5cbiAgICAgICAgICAgIDxoMSBjbGFzcz1cIm1iLTAgZnctYm9sZFwiPnt7IGxvd1N0b2NrUHJvZHVjdHNDb3VudCB8IG51bWJlciB9fTwvaDE+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICAgIDwvbWF0LWNhcmQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1sZy00IG1iLTNcIj5cbiAgICAgIDxtYXQtY2FyZD5cbiAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgZnMtMSBmdy1ib2xkXCI+IGFycm93X2NpcmNsZV9kb3duIDwvc3Bhbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGdhcC0wXCI+XG4gICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LXNlY29uZGFyeVwiPlByb2R1Y3RzIFJlY2VpdmVkIFRoaXMgTW9udGg8L3NtYWxsPlxuICAgICAgICAgICAgPGgxIGNsYXNzPVwibWItMCBmdy1ib2xkXCI+e3sgc3RvY2tSZWNlaXB0c1F0eVN1bSB8IG51bWJlciB9fTwvaDE+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICAgIDwvbWF0LWNhcmQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1sZy00IG1iLTNcIj5cbiAgICAgIDxtYXQtY2FyZD5cbiAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgZnMtMSBmdy1ib2xkXCI+IGFycm93X2NpcmNsZV91cCA8L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMFwiPlxuICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwidGV4dC1zZWNvbmRhcnlcIj5Qcm9kdWN0cyBJc3N1ZWQgVGhpcyBNb250aDwvc21hbGw+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJtYi0wIGZ3LWJvbGRcIj57eyBzdG9ja0lzc3VhbmNlUXR5U3VtIHwgbnVtYmVyIH19PC9oMT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgICAgPC9tYXQtY2FyZD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTYgbWItM1wiPlxuICAgICAgPGFwcC1wcm9kdWN0LXF1aWNrLXNlYXJjaD48L2FwcC1wcm9kdWN0LXF1aWNrLXNlYXJjaD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTYgbWItM1wiPlxuICAgICAgPGFwcC1sb3ctc3RvY2stcHJvZHVjdHMtd2lkZ2V0PjwvYXBwLWxvdy1zdG9jay1wcm9kdWN0cy13aWRnZXQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IG1iLTNcIj5cbiAgICAgIDxhcHAtcHJvZHVjdC1zdW1tYXJ5LWNoYXJ0IHRpdGxlPVwiUHJvZHVjdCBCeSBDYXRlZ29yeVwiPjwvYXBwLXByb2R1Y3Qtc3VtbWFyeS1jaGFydD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgc3R5bGU9XCJ3aWR0aDogMzAwcHhcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMyBoLTEwMFwiPlxuICAgIDxtYXQtY2FyZCBjbGFzcz1cImgtMTAwXCI+XG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICAgICAgPG1hdC1pY29uPmZsYWc8L21hdC1pY29uPlxuICAgICAgICAgIDxoMyBjbGFzcz1cIm1iLTAgZnctYm9sZFwiPlJlcG9ydHM8L2gzPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICAgIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwibXQtMyBkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LXN0YXJ0IGdhcC0zXCI+XG4gICAgICAgIDxhXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiB0ZXh0LWRlY29yYXRpb24tbm9uZSB0ZXh0LWRhcmtcIlxuICAgICAgICAgIHJvdXRlckxpbms9XCIvaW52ZW50b3J5L3JlcG9ydHMvbG93LXN0b2NrLXJlcG9ydFwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgZnMtM1wiPiBkZXNjcmlwdGlvbiA8L3NwYW4+XG4gICAgICAgICAgPGgzIGNsYXNzPVwibWItMFwiPkxvdyBTdG9jayBSZXBvcnQ8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPiBjaGV2cm9uX2ZvcndhcmQgPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICAgIDxhXG4gICAgICAgICAgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiB0ZXh0LWRlY29yYXRpb24tbm9uZSB0ZXh0LWRhcmsgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgIHJvdXRlckxpbms9XCIvaW52ZW50b3J5L3JlcG9ydHMvaW52ZW50b3J5LXZhbHVlLXJlcG9ydFwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgZnMtM1wiPiBkZXNjcmlwdGlvbiA8L3NwYW4+XG4gICAgICAgICAgPGgzIGNsYXNzPVwibWItMFwiPkludmVudG9yeSBWYWx1ZSBSZXBvcnQ8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPiBjaGV2cm9uX2ZvcndhcmQgPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG4gICAgPC9tYXQtY2FyZD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
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 InventoryValueReportService extends TechlifyServiceBaseClass {
|
|
6
|
+
constructor(httpService) {
|
|
7
|
+
super(httpService, 'reports/inventory-value-report');
|
|
8
|
+
}
|
|
9
|
+
export(params) {
|
|
10
|
+
return this.http.get('api/reports/inventory-value-report/export', { params });
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryValueReportService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryValueReportService, providedIn: 'root' });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InventoryValueReportService, decorators: [{
|
|
16
|
+
type: Injectable,
|
|
17
|
+
args: [{
|
|
18
|
+
providedIn: 'root',
|
|
19
|
+
}]
|
|
20
|
+
}], ctorParameters: () => [{ type: i1.HttpService }] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZW50b3J5LXZhbHVlLXJlcG9ydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vaW52ZW50b3J5LXZhbHVlLXJlcG9ydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFlLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQU0xRSxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsd0JBQXdCO0lBQ3ZFLFlBQVksV0FBd0I7UUFDbEMsS0FBSyxDQUFDLFdBQVcsRUFBRSxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsTUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLDJDQUEyQyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNoRixDQUFDO3dHQVBVLDJCQUEyQjs0R0FBM0IsMkJBQTJCLGNBRjFCLE1BQU07OzRGQUVQLDJCQUEyQjtrQkFIdkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSwgVGVjaGxpZnlTZXJ2aWNlQmFzZUNsYXNzIH0gZnJvbSAnbmd4LXRlY2hsaWZ5LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgSW52ZW50b3J5VmFsdWVSZXBvcnRTZXJ2aWNlIGV4dGVuZHMgVGVjaGxpZnlTZXJ2aWNlQmFzZUNsYXNzIHtcbiAgY29uc3RydWN0b3IoaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlKSB7XG4gICAgc3VwZXIoaHR0cFNlcnZpY2UsICdyZXBvcnRzL2ludmVudG9yeS12YWx1ZS1yZXBvcnQnKTtcbiAgfVxuXG4gIGV4cG9ydChwYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KCdhcGkvcmVwb3J0cy9pbnZlbnRvcnktdmFsdWUtcmVwb3J0L2V4cG9ydCcsIHsgcGFyYW1zIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { MatDialogActions, MatDialogClose, MatDialogContent, MatDialogTitle } from '@angular/material/dialog';
|
|
3
|
+
import { MatButton } from '@angular/material/button';
|
|
4
|
+
import { MatIcon } from '@angular/material/icon';
|
|
5
|
+
import { NgIf } from '@angular/common';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/material/dialog";
|
|
8
|
+
import * as i2 from "../location.service";
|
|
9
|
+
import * as i3 from "ngx-techlify-core";
|
|
10
|
+
export class LocationDeleteButtonComponent {
|
|
11
|
+
matDialog;
|
|
12
|
+
service;
|
|
13
|
+
alertService;
|
|
14
|
+
credentialsService;
|
|
15
|
+
model;
|
|
16
|
+
deleted = new EventEmitter();
|
|
17
|
+
isDeleting;
|
|
18
|
+
user;
|
|
19
|
+
constructor(matDialog, service, alertService, credentialsService) {
|
|
20
|
+
this.matDialog = matDialog;
|
|
21
|
+
this.service = service;
|
|
22
|
+
this.alertService = alertService;
|
|
23
|
+
this.credentialsService = credentialsService;
|
|
24
|
+
this.user = this.credentialsService.credentials?.user;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Delete the product.
|
|
28
|
+
*/
|
|
29
|
+
delete() {
|
|
30
|
+
this.isDeleting = true;
|
|
31
|
+
this.service.delete(this.model).subscribe({
|
|
32
|
+
next: () => {
|
|
33
|
+
this.deleted.emit();
|
|
34
|
+
this.isDeleting = false;
|
|
35
|
+
this.matDialog.closeAll();
|
|
36
|
+
this.alertService.addAlert('Location deleted successfully!', 'success');
|
|
37
|
+
},
|
|
38
|
+
error: () => (this.isDeleting = false)
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Show delete product dialog.
|
|
43
|
+
*
|
|
44
|
+
* @param templateRef
|
|
45
|
+
*/
|
|
46
|
+
showDeleteDialog(templateRef) {
|
|
47
|
+
this.matDialog.open(templateRef, { width: '500px' });
|
|
48
|
+
}
|
|
49
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationDeleteButtonComponent, deps: [{ token: i1.MatDialog }, { token: i2.LocationService }, { token: i3.AlertService }, { token: i3.CredentialsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LocationDeleteButtonComponent, isStandalone: true, selector: "app-location-delete-button", inputs: { model: "model" }, outputs: { deleted: "deleted" }, ngImport: i0, template: "<mat-icon\n *ngIf=\"model?.client_id === user?.client_id\"\n class=\"cursor-pointer text-dark\"\n (click)=\"showDeleteDialog(deleteConfirmDialog)\"\n>\n delete\n</mat-icon>\n\n<ng-template #deleteConfirmDialog>\n <h3 mat-dialog-title>Delete Location</h3>\n <div mat-dialog-content>\n Are you sure? You want to delete the location\n <strong>{{ model?.title }}</strong> ?\n </div>\n <div mat-dialog-actions class=\"d-flex justify-content-end gap-1 mb-2\">\n <button\n [disabled]=\"isDeleting\"\n type=\"button\"\n mat-raised-button\n color=\"warn\"\n (click)=\"delete()\"\n >\n Delete\n </button>\n <button\n [disabled]=\"isDeleting\"\n type=\"button\"\n mat-flat-button\n mat-dialog-close\n >\n Cancel\n </button>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], preserveWhitespaces: true });
|
|
51
|
+
}
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationDeleteButtonComponent, decorators: [{
|
|
53
|
+
type: Component,
|
|
54
|
+
args: [{ selector: 'app-location-delete-button', standalone: true, imports: [
|
|
55
|
+
MatButton,
|
|
56
|
+
MatDialogActions,
|
|
57
|
+
MatDialogClose,
|
|
58
|
+
MatDialogContent,
|
|
59
|
+
MatDialogTitle,
|
|
60
|
+
MatIcon,
|
|
61
|
+
NgIf
|
|
62
|
+
], template: "<mat-icon\n *ngIf=\"model?.client_id === user?.client_id\"\n class=\"cursor-pointer text-dark\"\n (click)=\"showDeleteDialog(deleteConfirmDialog)\"\n>\n delete\n</mat-icon>\n\n<ng-template #deleteConfirmDialog>\n <h3 mat-dialog-title>Delete Location</h3>\n <div mat-dialog-content>\n Are you sure? You want to delete the location\n <strong>{{ model?.title }}</strong> ?\n </div>\n <div mat-dialog-actions class=\"d-flex justify-content-end gap-1 mb-2\">\n <button\n [disabled]=\"isDeleting\"\n type=\"button\"\n mat-raised-button\n color=\"warn\"\n (click)=\"delete()\"\n >\n Delete\n </button>\n <button\n [disabled]=\"isDeleting\"\n type=\"button\"\n mat-flat-button\n mat-dialog-close\n >\n Cancel\n </button>\n </div>\n</ng-template>\n" }]
|
|
63
|
+
}], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.LocationService }, { type: i3.AlertService }, { type: i3.CredentialsService }], propDecorators: { model: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], deleted: [{
|
|
66
|
+
type: Output
|
|
67
|
+
}] } });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tZGVsZXRlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9sb2NhdGlvbi9sb2NhdGlvbi1kZWxldGUtYnV0dG9uL2xvY2F0aW9uLWRlbGV0ZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24tZGVsZXRlLWJ1dHRvbi9sb2NhdGlvbi1kZWxldGUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFZLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV2SCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRS9DLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFpQnJDLE1BQU0sT0FBTyw2QkFBNkI7SUFROUI7SUFDQTtJQUNBO0lBQ0E7SUFWRCxLQUFLLENBQU07SUFDVixPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUV2QyxVQUFVLENBQVc7SUFDckIsSUFBSSxDQUFPO0lBRVgsWUFDVSxTQUFvQixFQUNwQixPQUF3QixFQUN4QixZQUEwQixFQUMxQixrQkFBc0M7UUFIdEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRTlDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDeEMsSUFBSSxFQUFFLEdBQUcsRUFBRTtnQkFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDMUUsQ0FBQztZQUNELEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQ3ZDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLENBQUMsV0FBNkI7UUFDNUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUM7SUFDckQsQ0FBQzt3R0F2Q1UsNkJBQTZCOzRGQUE3Qiw2QkFBNkIsbUpDdkIxQyw2ekJBa0NBLDBERHRCSSxTQUFTLGlMQUNULGdCQUFnQiw0SEFDaEIsY0FBYyxxTEFDZCxnQkFBZ0IseUdBQ2hCLGNBQWMsK0hBQ2QsT0FBTywySUFDUCxJQUFJOzs0RkFLSyw2QkFBNkI7a0JBZnpDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBQzFCLElBQUksV0FDUDt3QkFDUCxTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxJQUFJO3FCQUNMO3dLQUtRLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREaWFsb2csIE1hdERpYWxvZ0FjdGlvbnMsIE1hdERpYWxvZ0Nsb3NlLCBNYXREaWFsb2dDb250ZW50LCBNYXREaWFsb2dUaXRsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7QWxlcnRTZXJ2aWNlLCBDcmVkZW50aWFsc1NlcnZpY2UsIFVzZXJ9IGZyb20gJ25neC10ZWNobGlmeS1jb3JlJztcbmltcG9ydCB7TWF0QnV0dG9ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtNYXRJY29ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7TG9jYXRpb25TZXJ2aWNlfSBmcm9tICcuLi9sb2NhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWxvY2F0aW9uLWRlbGV0ZS1idXR0b24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0QnV0dG9uLFxuICAgIE1hdERpYWxvZ0FjdGlvbnMsXG4gICAgTWF0RGlhbG9nQ2xvc2UsXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgICBNYXREaWFsb2dUaXRsZSxcbiAgICBNYXRJY29uLFxuICAgIE5nSWZcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvY2F0aW9uLWRlbGV0ZS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbG9jYXRpb24tZGVsZXRlLWJ1dHRvbi5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgTG9jYXRpb25EZWxldGVCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBtb2RlbDogYW55O1xuICBAT3V0cHV0KCkgZGVsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBpc0RlbGV0aW5nITogYm9vbGVhbjtcbiAgdXNlcjogVXNlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1hdERpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgc2VydmljZTogTG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjcmVkZW50aWFsc1NlcnZpY2U6IENyZWRlbnRpYWxzU2VydmljZVxuICApIHtcbiAgICB0aGlzLnVzZXIgPSB0aGlzLmNyZWRlbnRpYWxzU2VydmljZS5jcmVkZW50aWFscz8udXNlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgdGhlIHByb2R1Y3QuXG4gICAqL1xuICBkZWxldGUoKSB7XG4gICAgdGhpcy5pc0RlbGV0aW5nID0gdHJ1ZTtcbiAgICB0aGlzLnNlcnZpY2UuZGVsZXRlKHRoaXMubW9kZWwpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgIHRoaXMuZGVsZXRlZC5lbWl0KCk7XG4gICAgICAgIHRoaXMuaXNEZWxldGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLm1hdERpYWxvZy5jbG9zZUFsbCgpO1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydCgnTG9jYXRpb24gZGVsZXRlZCBzdWNjZXNzZnVsbHkhJywgJ3N1Y2Nlc3MnKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4gKHRoaXMuaXNEZWxldGluZyA9IGZhbHNlKVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgZGVsZXRlIHByb2R1Y3QgZGlhbG9nLlxuICAgKlxuICAgKiBAcGFyYW0gdGVtcGxhdGVSZWZcbiAgICovXG4gIHNob3dEZWxldGVEaWFsb2codGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLm1hdERpYWxvZy5vcGVuKHRlbXBsYXRlUmVmLCB7d2lkdGg6ICc1MDBweCd9KTtcbiAgfVxufVxuIiwiPG1hdC1pY29uXG4gICpuZ0lmPVwibW9kZWw/LmNsaWVudF9pZCA9PT0gdXNlcj8uY2xpZW50X2lkXCJcbiAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlciB0ZXh0LWRhcmtcIlxuICAoY2xpY2spPVwic2hvd0RlbGV0ZURpYWxvZyhkZWxldGVDb25maXJtRGlhbG9nKVwiXG4+XG4gIGRlbGV0ZVxuPC9tYXQtaWNvbj5cblxuPG5nLXRlbXBsYXRlICNkZWxldGVDb25maXJtRGlhbG9nPlxuICA8aDMgbWF0LWRpYWxvZy10aXRsZT5EZWxldGUgTG9jYXRpb248L2gzPlxuICA8ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cbiAgICBBcmUgeW91IHN1cmU/IFlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgbG9jYXRpb25cbiAgICA8c3Ryb25nPnt7IG1vZGVsPy50aXRsZSB9fTwvc3Ryb25nPiA/XG4gIDwvZGl2PlxuICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0xIG1iLTJcIj5cbiAgICA8YnV0dG9uXG4gICAgICBbZGlzYWJsZWRdPVwiaXNEZWxldGluZ1wiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICBjb2xvcj1cIndhcm5cIlxuICAgICAgKGNsaWNrKT1cImRlbGV0ZSgpXCJcbiAgICA+XG4gICAgICBEZWxldGVcbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBbZGlzYWJsZWRdPVwiaXNEZWxldGluZ1wiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIG1hdC1mbGF0LWJ1dHRvblxuICAgICAgbWF0LWRpYWxvZy1jbG9zZVxuICAgID5cbiAgICAgIENhbmNlbFxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormsModule, ReactiveFormsModule, Validators } from "@angular/forms";
|
|
3
|
+
import { MatButton } from "@angular/material/button";
|
|
4
|
+
import { MatError, MatFormField, MatLabel } from "@angular/material/form-field";
|
|
5
|
+
import { MatInput } from "@angular/material/input";
|
|
6
|
+
import { NgIf } from "@angular/common";
|
|
7
|
+
import { SearchableSelectorModule, TechlifyFormComponentInterface } from "ngx-techlify-core";
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "ngx-techlify-core";
|
|
10
|
+
import * as i2 from "@angular/forms";
|
|
11
|
+
import * as i3 from "../location.service";
|
|
12
|
+
export class LocationFormComponent extends TechlifyFormComponentInterface {
|
|
13
|
+
formBuilder;
|
|
14
|
+
alertService;
|
|
15
|
+
service;
|
|
16
|
+
model;
|
|
17
|
+
saved = new EventEmitter();
|
|
18
|
+
cancelled = new EventEmitter();
|
|
19
|
+
isSaving;
|
|
20
|
+
constructor(formValidatorService, formBuilder, alertService, service) {
|
|
21
|
+
super(formValidatorService);
|
|
22
|
+
this.formBuilder = formBuilder;
|
|
23
|
+
this.alertService = alertService;
|
|
24
|
+
this.service = service;
|
|
25
|
+
this.errorMessages = {
|
|
26
|
+
title: {
|
|
27
|
+
required: 'The title field is required.'
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
this.form = this.formBuilder.group({
|
|
31
|
+
id: [''],
|
|
32
|
+
title: ['', Validators.required],
|
|
33
|
+
address: [''],
|
|
34
|
+
description: [''],
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
if (this.model) {
|
|
39
|
+
this.form.patchValue({ ...this.model });
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
save() {
|
|
43
|
+
this.form.markAllAsTouched();
|
|
44
|
+
if (this.form.invalid) {
|
|
45
|
+
this.alertService.addAlert('Please check the form for errors.', 'error');
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const data = this.form.value;
|
|
49
|
+
this.isSaving = true;
|
|
50
|
+
let request = this.service.store(data);
|
|
51
|
+
if (data?.id) {
|
|
52
|
+
request = this.service.update(data);
|
|
53
|
+
}
|
|
54
|
+
request.subscribe({
|
|
55
|
+
next: (response) => {
|
|
56
|
+
this.isSaving = false;
|
|
57
|
+
this.saved.emit(response?.item);
|
|
58
|
+
this.alertService.addAlert('The location saved successfully!', 'success');
|
|
59
|
+
},
|
|
60
|
+
error: () => (this.isSaving = false)
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationFormComponent, deps: [{ token: i1.FormValidatorService }, { token: i2.FormBuilder }, { token: i1.AlertService }, { token: i3.LocationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LocationFormComponent, isStandalone: true, selector: "app-location-form", inputs: { model: "model" }, outputs: { saved: "saved", cancelled: "cancelled" }, usesInheritance: true, ngImport: i0, template: "<form\n [formGroup]=\"form\"\n (submit)=\"save()\"\n class=\"d-flex flex-column gap-1\"\n>\n <mat-form-field>\n <mat-label>Title</mat-label>\n <input type=\"text\" matInput formControlName=\"title\" placeholder=\"Title\">\n <mat-error *ngIf=\"isFieldValid('title')\">\n {{ getErrorMessage('title') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Address</mat-label>\n <input type=\"text\" matInput formControlName=\"address\" placeholder=\"Address\">\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Description</mat-label>\n <textarea matInput formControlName=\"description\" placeholder=\"Description\"></textarea>\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-2\">\n <button [disabled]=\"isSaving\" type=\"submit\" mat-raised-button color=\"primary\">\n Save\n </button>\n <button (click)=\"cancelled.emit()\" [disabled]=\"isSaving\" type=\"button\" mat-flat-button>\n Cancel\n </button>\n </div>\n</form>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { 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: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: 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: MatLabel, selector: "mat-label" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { 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"] }, { kind: "ngmodule", type: SearchableSelectorModule }], preserveWhitespaces: true });
|
|
65
|
+
}
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationFormComponent, decorators: [{
|
|
67
|
+
type: Component,
|
|
68
|
+
args: [{ selector: 'app-location-form', standalone: true, imports: [
|
|
69
|
+
FormsModule,
|
|
70
|
+
MatButton,
|
|
71
|
+
MatError,
|
|
72
|
+
MatFormField,
|
|
73
|
+
MatInput,
|
|
74
|
+
MatLabel,
|
|
75
|
+
NgIf,
|
|
76
|
+
ReactiveFormsModule,
|
|
77
|
+
SearchableSelectorModule
|
|
78
|
+
], template: "<form\n [formGroup]=\"form\"\n (submit)=\"save()\"\n class=\"d-flex flex-column gap-1\"\n>\n <mat-form-field>\n <mat-label>Title</mat-label>\n <input type=\"text\" matInput formControlName=\"title\" placeholder=\"Title\">\n <mat-error *ngIf=\"isFieldValid('title')\">\n {{ getErrorMessage('title') }}\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Address</mat-label>\n <input type=\"text\" matInput formControlName=\"address\" placeholder=\"Address\">\n </mat-form-field>\n\n <mat-form-field>\n <mat-label>Description</mat-label>\n <textarea matInput formControlName=\"description\" placeholder=\"Description\"></textarea>\n </mat-form-field>\n\n <div class=\"d-flex justify-content-end align-items-center gap-2\">\n <button [disabled]=\"isSaving\" type=\"submit\" mat-raised-button color=\"primary\">\n Save\n </button>\n <button (click)=\"cancelled.emit()\" [disabled]=\"isSaving\" type=\"button\" mat-flat-button>\n Cancel\n </button>\n </div>\n</form>\n" }]
|
|
79
|
+
}], ctorParameters: () => [{ type: i1.FormValidatorService }, { type: i2.FormBuilder }, { type: i1.AlertService }, { type: i3.LocationService }], propDecorators: { model: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], saved: [{
|
|
82
|
+
type: Output
|
|
83
|
+
}], cancelled: [{
|
|
84
|
+
type: Output
|
|
85
|
+
}] } });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZlbnRvcnktY29tbW9uL3NyYy9saWIvaW52ZW50b3J5LWNvbW1vbi9sb2NhdGlvbi9sb2NhdGlvbi1mb3JtL2xvY2F0aW9uLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24tZm9ybS9sb2NhdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFjLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDbkQsT0FBTyxFQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2pELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBR0wsd0JBQXdCLEVBQ3hCLDhCQUE4QixFQUMvQixNQUFNLG1CQUFtQixDQUFDOzs7OztBQW9CM0IsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDhCQUE4QjtJQVM3RDtJQUNBO0lBQ0E7SUFWRCxLQUFLLENBQU87SUFDWCxLQUFLLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFDbkQsU0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWpFLFFBQVEsQ0FBVztJQUVuQixZQUNFLG9CQUEwQyxFQUNsQyxXQUF3QixFQUN4QixZQUEwQixFQUMxQixPQUF3QjtRQUVoQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUpwQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUdoQyxJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLEtBQUssRUFBRTtnQkFDTCxRQUFRLEVBQUUsOEJBQThCO2FBQ3pDO1NBQ0YsQ0FBQTtRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDakMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ1IsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDaEMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2IsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN6RSxPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFDRCxPQUFPLENBQUMsU0FBUyxDQUFDO1lBQ2hCLElBQUksRUFBRSxDQUFDLFFBQWEsRUFBRSxFQUFFO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQ0FBa0MsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM1RSxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FDckMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzt3R0F0RFUscUJBQXFCOzRGQUFyQixxQkFBcUIscUxDL0JsQyxvaENBZ0NBLHlERGRJLFdBQVcsNHBCQUNYLFNBQVMsaUxBQ1QsUUFBUSxrRkFDUixZQUFZLDRMQUNaLFFBQVEsaVVBQ1IsUUFBUSxzREFDUixJQUFJLDRGQUNKLG1CQUFtQiwrVUFDbkIsd0JBQXdCOzs0RkFLZixxQkFBcUI7a0JBakJqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1A7d0JBQ1AsV0FBVzt3QkFDWCxTQUFTO3dCQUNULFFBQVE7d0JBQ1IsWUFBWTt3QkFDWixRQUFRO3dCQUNSLFFBQVE7d0JBQ1IsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLHdCQUF3QjtxQkFDekI7NEtBS1EsS0FBSztzQkFBYixLQUFLO2dCQUNJLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUJ1aWxkZXIsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7TWF0QnV0dG9ufSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uXCI7XG5pbXBvcnQge01hdEVycm9yLCBNYXRGb3JtRmllbGQsIE1hdExhYmVsfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZFwiO1xuaW1wb3J0IHtNYXRJbnB1dH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2lucHV0XCI7XG5pbXBvcnQge05nSWZ9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7XG4gIEFsZXJ0U2VydmljZSxcbiAgRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gIFNlYXJjaGFibGVTZWxlY3Rvck1vZHVsZSxcbiAgVGVjaGxpZnlGb3JtQ29tcG9uZW50SW50ZXJmYWNlXG59IGZyb20gXCJuZ3gtdGVjaGxpZnktY29yZVwiO1xuaW1wb3J0IHtMb2NhdGlvblNlcnZpY2V9IGZyb20gJy4uL2xvY2F0aW9uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbG9jYXRpb24tZm9ybScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRCdXR0b24sXG4gICAgTWF0RXJyb3IsXG4gICAgTWF0Rm9ybUZpZWxkLFxuICAgIE1hdElucHV0LFxuICAgIE1hdExhYmVsLFxuICAgIE5nSWYsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTZWFyY2hhYmxlU2VsZWN0b3JNb2R1bGVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvY2F0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbG9jYXRpb24tZm9ybS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgTG9jYXRpb25Gb3JtQ29tcG9uZW50IGV4dGVuZHMgVGVjaGxpZnlGb3JtQ29tcG9uZW50SW50ZXJmYWNlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgbW9kZWwhOiBhbnk7XG4gIEBPdXRwdXQoKSBzYXZlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIGNhbmNlbGxlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBpc1NhdmluZyE6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZm9ybVZhbGlkYXRvclNlcnZpY2U6IEZvcm1WYWxpZGF0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBMb2NhdGlvblNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoZm9ybVZhbGlkYXRvclNlcnZpY2UpO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlcyA9IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIHJlcXVpcmVkOiAnVGhlIHRpdGxlIGZpZWxkIGlzIHJlcXVpcmVkLidcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGlkOiBbJyddLFxuICAgICAgdGl0bGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICBhZGRyZXNzOiBbJyddLFxuICAgICAgZGVzY3JpcHRpb246IFsnJ10sXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5tb2RlbCkge1xuICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoey4uLnRoaXMubW9kZWx9KTtcbiAgICB9XG4gIH1cblxuICBzYXZlKCkge1xuICAgIHRoaXMuZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydCgnUGxlYXNlIGNoZWNrIHRoZSBmb3JtIGZvciBlcnJvcnMuJywgJ2Vycm9yJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGE6IGFueSA9IHRoaXMuZm9ybS52YWx1ZTtcbiAgICB0aGlzLmlzU2F2aW5nID0gdHJ1ZTtcbiAgICBsZXQgcmVxdWVzdCA9IHRoaXMuc2VydmljZS5zdG9yZShkYXRhKTtcbiAgICBpZiAoZGF0YT8uaWQpIHtcbiAgICAgIHJlcXVlc3QgPSB0aGlzLnNlcnZpY2UudXBkYXRlKGRhdGEpO1xuICAgIH1cbiAgICByZXF1ZXN0LnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlzU2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2F2ZWQuZW1pdChyZXNwb25zZT8uaXRlbSk7XG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KCdUaGUgbG9jYXRpb24gc2F2ZWQgc3VjY2Vzc2Z1bGx5IScsICdzdWNjZXNzJyk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+ICh0aGlzLmlzU2F2aW5nID0gZmFsc2UpXG4gICAgfSlcbiAgfVxufVxuIiwiPGZvcm1cbiAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgKHN1Ym1pdCk9XCJzYXZlKClcIlxuICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMVwiXG4+XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8bWF0LWxhYmVsPlRpdGxlPC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIiBwbGFjZWhvbGRlcj1cIlRpdGxlXCI+XG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImlzRmllbGRWYWxpZCgndGl0bGUnKVwiPlxuICAgICAge3sgZ2V0RXJyb3JNZXNzYWdlKCd0aXRsZScpIH19XG4gICAgPC9tYXQtZXJyb3I+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+QWRkcmVzczwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIiBwbGFjZWhvbGRlcj1cIkFkZHJlc3NcIj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD5EZXNjcmlwdGlvbjwvbWF0LWxhYmVsPlxuICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiIHBsYWNlaG9sZGVyPVwiRGVzY3JpcHRpb25cIj48L3RleHRhcmVhPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc1NhdmluZ1wiIHR5cGU9XCJzdWJtaXRcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIj5cbiAgICAgIFNhdmVcbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJjYW5jZWxsZWQuZW1pdCgpXCIgW2Rpc2FibGVkXT1cImlzU2F2aW5nXCIgdHlwZT1cImJ1dHRvblwiIG1hdC1mbGF0LWJ1dHRvbj5cbiAgICAgIENhbmNlbFxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZm9ybT5cbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { MatDialogContent, MatDialogTitle } from "@angular/material/dialog";
|
|
3
|
+
import { LocationFormComponent } from '../location-form/location-form.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/dialog";
|
|
6
|
+
export class LocationFormButtonComponent {
|
|
7
|
+
matDialog;
|
|
8
|
+
model;
|
|
9
|
+
saved = new EventEmitter();
|
|
10
|
+
constructor(matDialog) {
|
|
11
|
+
this.matDialog = matDialog;
|
|
12
|
+
}
|
|
13
|
+
showForm(templateRef) {
|
|
14
|
+
this.matDialog.open(templateRef, { width: '400px' });
|
|
15
|
+
}
|
|
16
|
+
onSaved(model) {
|
|
17
|
+
this.matDialog.closeAll();
|
|
18
|
+
this.saved.emit(model);
|
|
19
|
+
}
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationFormButtonComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LocationFormButtonComponent, isStandalone: true, selector: "app-location-form-button", inputs: { model: "model" }, outputs: { saved: "saved" }, ngImport: i0, template: "<span\n class=\"material-symbols-outlined cursor-pointer\"\n (click)=\"showForm(formTemplate)\"\n>\n {{ model ? 'edit' : 'add' }}\n</span>\n\n<ng-template #formTemplate>\n <h3 mat-dialog-title>{{ model ? 'Edit' : 'Create' }} Location</h3>\n <app-location-form\n mat-dialog-content\n [model]=\"model\"\n (saved)=\"onSaved($event)\"\n (cancelled)=\"matDialog.closeAll()\"\n ></app-location-form>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: LocationFormComponent, selector: "app-location-form", inputs: ["model"], outputs: ["saved", "cancelled"] }], preserveWhitespaces: true });
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationFormButtonComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'app-location-form-button', standalone: true, imports: [
|
|
26
|
+
MatDialogContent,
|
|
27
|
+
MatDialogTitle,
|
|
28
|
+
LocationFormComponent
|
|
29
|
+
], template: "<span\n class=\"material-symbols-outlined cursor-pointer\"\n (click)=\"showForm(formTemplate)\"\n>\n {{ model ? 'edit' : 'add' }}\n</span>\n\n<ng-template #formTemplate>\n <h3 mat-dialog-title>{{ model ? 'Edit' : 'Create' }} Location</h3>\n <app-location-form\n mat-dialog-content\n [model]=\"model\"\n (saved)=\"onSaved($event)\"\n (cancelled)=\"matDialog.closeAll()\"\n ></app-location-form>\n</ng-template>\n" }]
|
|
30
|
+
}], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { model: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], saved: [{
|
|
33
|
+
type: Output
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tZm9ybS1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24tZm9ybS1idXR0b24vbG9jYXRpb24tZm9ybS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24tZm9ybS1idXR0b24vbG9jYXRpb24tZm9ybS1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQVksZ0JBQWdCLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMENBQTBDLENBQUM7OztBQWEvRSxNQUFNLE9BQU8sMkJBQTJCO0lBSW5CO0lBSFYsS0FBSyxDQUFPO0lBQ1gsS0FBSyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBRTdELFlBQW1CLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFDdkMsQ0FBQztJQUVELFFBQVEsQ0FBQyxXQUE2QjtRQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO3dHQWRVLDJCQUEyQjs0RkFBM0IsMkJBQTJCLDZJQ2Z4QywrYUFnQkEsMEREUkksZ0JBQWdCLHlHQUNoQixjQUFjLCtIQUNkLHFCQUFxQjs7NEZBS1osMkJBQTJCO2tCQVh2QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLFdBQ1A7d0JBQ1AsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLHFCQUFxQjtxQkFDdEI7OEVBS1EsS0FBSztzQkFBYixLQUFLO2dCQUNJLEtBQUs7c0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFRlbXBsYXRlUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0RGlhbG9nLCBNYXREaWFsb2dDb250ZW50LCBNYXREaWFsb2dUaXRsZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xuaW1wb3J0IHtMb2NhdGlvbkZvcm1Db21wb25lbnR9IGZyb20gJy4uL2xvY2F0aW9uLWZvcm0vbG9jYXRpb24tZm9ybS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbG9jYXRpb24tZm9ybS1idXR0b24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgICBNYXREaWFsb2dUaXRsZSxcbiAgICBMb2NhdGlvbkZvcm1Db21wb25lbnRcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvY2F0aW9uLWZvcm0tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2xvY2F0aW9uLWZvcm0tYnV0dG9uLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBMb2NhdGlvbkZvcm1CdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBtb2RlbCE6IGFueTtcbiAgQE91dHB1dCgpIHNhdmVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBtYXREaWFsb2c6IE1hdERpYWxvZykge1xuICB9XG5cbiAgc2hvd0Zvcm0odGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLm1hdERpYWxvZy5vcGVuKHRlbXBsYXRlUmVmLCB7d2lkdGg6ICc0MDBweCd9KTtcbiAgfVxuXG4gIG9uU2F2ZWQobW9kZWw6IGFueSkge1xuICAgIHRoaXMubWF0RGlhbG9nLmNsb3NlQWxsKCk7XG4gICAgdGhpcy5zYXZlZC5lbWl0KG1vZGVsKTtcbiAgfVxufVxuIiwiPHNwYW5cbiAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGN1cnNvci1wb2ludGVyXCJcbiAgKGNsaWNrKT1cInNob3dGb3JtKGZvcm1UZW1wbGF0ZSlcIlxuPlxuICB7eyBtb2RlbCA/ICdlZGl0JyA6ICdhZGQnIH19XG48L3NwYW4+XG5cbjxuZy10ZW1wbGF0ZSAjZm9ybVRlbXBsYXRlPlxuICA8aDMgbWF0LWRpYWxvZy10aXRsZT57eyBtb2RlbCA/ICdFZGl0JyA6ICdDcmVhdGUnIH19IExvY2F0aW9uPC9oMz5cbiAgPGFwcC1sb2NhdGlvbi1mb3JtXG4gICAgbWF0LWRpYWxvZy1jb250ZW50XG4gICAgW21vZGVsXT1cIm1vZGVsXCJcbiAgICAoc2F2ZWQpPVwib25TYXZlZCgkZXZlbnQpXCJcbiAgICAoY2FuY2VsbGVkKT1cIm1hdERpYWxvZy5jbG9zZUFsbCgpXCJcbiAgPjwvYXBwLWxvY2F0aW9uLWZvcm0+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { NgIf } from '@angular/common';
|
|
3
|
+
import { MatCard, MatCardContent } from '@angular/material/card';
|
|
4
|
+
import { LocationFormButtonComponent } from '../location-form-button/location-form-button.component';
|
|
5
|
+
import { MatDivider } from '@angular/material/divider';
|
|
6
|
+
import { LocationDeleteButtonComponent } from '../location-delete-button/location-delete-button.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
export class LocationInformationComponent {
|
|
10
|
+
location;
|
|
11
|
+
model;
|
|
12
|
+
constructor(location) {
|
|
13
|
+
this.location = location;
|
|
14
|
+
}
|
|
15
|
+
redirectBack() {
|
|
16
|
+
this.location.back();
|
|
17
|
+
}
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationInformationComponent, deps: [{ token: i1.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LocationInformationComponent, isStandalone: true, selector: "app-location-information", inputs: { model: "model" }, ngImport: i0, template: "<mat-card *ngIf=\"model\">\n <mat-card-content class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-2 fw-bold\">{{ model?.title }}</h3>\n <div class=\"d-flex justify-content-start align-items-center gap-2\">\n <app-location-form-button [model]=\"model\" (saved)=\"model = $event\"></app-location-form-button>\n <app-location-delete-button [model]=\"model\" (deleted)=\"redirectBack()\"></app-location-delete-button>\n </div>\n </mat-card-content>\n <mat-divider class=\"mx-2\"></mat-divider>\n <mat-card-content class=\"mt-2 d-flex flex-column justify-content-start gap-2\">\n <div class=\"d-flex justify-content-start align-items-start flex-wrap\">\n <strong class=\"w-100 mb-2\">Location Details</strong>\n <div *ngIf=\"model?.address\" class=\"d-flex flex-column gap-1 justify-content-start w-100 mb-2\">\n <small class=\"text-secondary\">Address</small>\n <p class=\"mb-0\">{{ model?.address }}</p>\n </div>\n <div *ngIf=\"model?.description\" class=\"d-flex flex-column gap-1 justify-content-start w-100 mb-2\">\n <small class=\"text-secondary\">Description</small>\n <p class=\"mb-0\">{{ model?.description }}</p>\n </div>\n </div>\n\n </mat-card-content>\n</mat-card>\n", styles: [""], dependencies: [{ kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LocationFormButtonComponent, selector: "app-location-form-button", inputs: ["model"], outputs: ["saved"] }, { kind: "component", type: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: LocationDeleteButtonComponent, selector: "app-location-delete-button", inputs: ["model"], outputs: ["deleted"] }], preserveWhitespaces: true });
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationInformationComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'app-location-information', standalone: true, imports: [
|
|
24
|
+
MatCard,
|
|
25
|
+
MatCardContent,
|
|
26
|
+
NgIf,
|
|
27
|
+
LocationFormButtonComponent,
|
|
28
|
+
MatDivider,
|
|
29
|
+
LocationDeleteButtonComponent
|
|
30
|
+
], template: "<mat-card *ngIf=\"model\">\n <mat-card-content class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-2 fw-bold\">{{ model?.title }}</h3>\n <div class=\"d-flex justify-content-start align-items-center gap-2\">\n <app-location-form-button [model]=\"model\" (saved)=\"model = $event\"></app-location-form-button>\n <app-location-delete-button [model]=\"model\" (deleted)=\"redirectBack()\"></app-location-delete-button>\n </div>\n </mat-card-content>\n <mat-divider class=\"mx-2\"></mat-divider>\n <mat-card-content class=\"mt-2 d-flex flex-column justify-content-start gap-2\">\n <div class=\"d-flex justify-content-start align-items-start flex-wrap\">\n <strong class=\"w-100 mb-2\">Location Details</strong>\n <div *ngIf=\"model?.address\" class=\"d-flex flex-column gap-1 justify-content-start w-100 mb-2\">\n <small class=\"text-secondary\">Address</small>\n <p class=\"mb-0\">{{ model?.address }}</p>\n </div>\n <div *ngIf=\"model?.description\" class=\"d-flex flex-column gap-1 justify-content-start w-100 mb-2\">\n <small class=\"text-secondary\">Description</small>\n <p class=\"mb-0\">{{ model?.description }}</p>\n </div>\n </div>\n\n </mat-card-content>\n</mat-card>\n" }]
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.Location }], propDecorators: { model: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}] } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24taW5mb3JtYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24taW5mb3JtYXRpb24vbG9jYXRpb24taW5mb3JtYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52ZW50b3J5LWNvbW1vbi9zcmMvbGliL2ludmVudG9yeS1jb21tb24vbG9jYXRpb24vbG9jYXRpb24taW5mb3JtYXRpb24vbG9jYXRpb24taW5mb3JtYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFXLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDbkcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDREQUE0RCxDQUFDOzs7QUFnQnpHLE1BQU0sT0FBTyw0QkFBNEI7SUFJN0I7SUFIRCxLQUFLLENBQU07SUFFcEIsWUFDVSxRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBRTVCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO3dHQVZVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLGdIQ3JCekMsc3dDQXdCQSwwRERiSSxPQUFPLG9HQUNQLGNBQWMsNkRBQ2QsSUFBSSw2RkFDSiwyQkFBMkIsNEdBQzNCLFVBQVUsdUZBQ1YsNkJBQTZCOzs0RkFLcEIsNEJBQTRCO2tCQWR4QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLFdBQ1A7d0JBQ1AsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLElBQUk7d0JBQ0osMkJBQTJCO3dCQUMzQixVQUFVO3dCQUNWLDZCQUE2QjtxQkFDOUI7NkVBS1EsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9jYXRpb24sIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01hdENhcmQsIE1hdENhcmRDb250ZW50fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7TG9jYXRpb25Gb3JtQnV0dG9uQ29tcG9uZW50fSBmcm9tICcuLi9sb2NhdGlvbi1mb3JtLWJ1dHRvbi9sb2NhdGlvbi1mb3JtLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXREaXZpZGVyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcbmltcG9ydCB7TG9jYXRpb25EZWxldGVCdXR0b25Db21wb25lbnR9IGZyb20gJy4uL2xvY2F0aW9uLWRlbGV0ZS1idXR0b24vbG9jYXRpb24tZGVsZXRlLWJ1dHRvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbG9jYXRpb24taW5mb3JtYXRpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0Q2FyZCxcbiAgICBNYXRDYXJkQ29udGVudCxcbiAgICBOZ0lmLFxuICAgIExvY2F0aW9uRm9ybUJ1dHRvbkNvbXBvbmVudCxcbiAgICBNYXREaXZpZGVyLFxuICAgIExvY2F0aW9uRGVsZXRlQnV0dG9uQ29tcG9uZW50XG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2NhdGlvbi1pbmZvcm1hdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9sb2NhdGlvbi1pbmZvcm1hdGlvbi5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgTG9jYXRpb25JbmZvcm1hdGlvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG1vZGVsOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb25cbiAgKSB7XG4gIH1cblxuICByZWRpcmVjdEJhY2soKSB7XG4gICAgdGhpcy5sb2NhdGlvbi5iYWNrKCk7XG4gIH1cbn1cbiIsIjxtYXQtY2FyZCAqbmdJZj1cIm1vZGVsXCI+XG4gIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDxoMyBjbGFzcz1cIm1iLTIgZnctYm9sZFwiPnt7IG1vZGVsPy50aXRsZSB9fTwvaDM+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICA8YXBwLWxvY2F0aW9uLWZvcm0tYnV0dG9uIFttb2RlbF09XCJtb2RlbFwiIChzYXZlZCk9XCJtb2RlbCA9ICRldmVudFwiPjwvYXBwLWxvY2F0aW9uLWZvcm0tYnV0dG9uPlxuICAgICAgPGFwcC1sb2NhdGlvbi1kZWxldGUtYnV0dG9uIFttb2RlbF09XCJtb2RlbFwiIChkZWxldGVkKT1cInJlZGlyZWN0QmFjaygpXCI+PC9hcHAtbG9jYXRpb24tZGVsZXRlLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtY2FyZC1jb250ZW50PlxuICA8bWF0LWRpdmlkZXIgY2xhc3M9XCJteC0yXCI+PC9tYXQtZGl2aWRlcj5cbiAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJtdC0yIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgZ2FwLTJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1zdGFydCBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LXdyYXBcIj5cbiAgICAgIDxzdHJvbmcgY2xhc3M9XCJ3LTEwMCBtYi0yXCI+TG9jYXRpb24gRGV0YWlsczwvc3Ryb25nPlxuICAgICAgPGRpdiAqbmdJZj1cIm1vZGVsPy5hZGRyZXNzXCIgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZ2FwLTEganVzdGlmeS1jb250ZW50LXN0YXJ0IHctMTAwIG1iLTJcIj5cbiAgICAgICAgPHNtYWxsIGNsYXNzPVwidGV4dC1zZWNvbmRhcnlcIj5BZGRyZXNzPC9zbWFsbD5cbiAgICAgICAgPHAgY2xhc3M9XCJtYi0wXCI+e3sgbW9kZWw/LmFkZHJlc3MgfX08L3A+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbD8uZGVzY3JpcHRpb25cIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMSBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgdy0xMDAgbWItMlwiPlxuICAgICAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LXNlY29uZGFyeVwiPkRlc2NyaXB0aW9uPC9zbWFsbD5cbiAgICAgICAgPHAgY2xhc3M9XCJtYi0wXCI+e3sgbW9kZWw/LmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgPC9tYXQtY2FyZC1jb250ZW50PlxuPC9tYXQtY2FyZD5cbiJdfQ==
|