ngx-render-material-forms 1.5.0 → 1.5.2
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/esm2020/lib/components/button/button.component.mjs +11 -15
- package/esm2020/lib/components/datagrid/datagrid.component.mjs +19 -223
- package/esm2020/lib/components/select/select.component.mjs +57 -12
- package/esm2020/lib/ngx-render-material-forms.module.mjs +6 -16
- package/fesm2015/ngx-render-material-forms.js +94 -659
- package/fesm2015/ngx-render-material-forms.mjs.map +1 -1
- package/fesm2020/ngx-render-material-forms.js +92 -650
- package/fesm2020/ngx-render-material-forms.mjs.map +1 -1
- package/lib/components/button/button.component.d.ts +0 -6
- package/lib/components/datagrid/datagrid.component.d.ts +1 -21
- package/lib/components/select/select.component.d.ts +2 -0
- package/lib/ngx-render-material-forms.module.d.ts +27 -29
- package/package.json +1 -1
- package/esm2020/lib/components/add-on-products/add-on-products.component.mjs +0 -329
- package/esm2020/lib/components/common.service.mjs +0 -85
- package/lib/components/add-on-products/add-on-products.component.d.ts +0 -76
- package/lib/components/common.service.d.ts +0 -23
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, Component, Input, ViewChild, ViewContainerRef, ViewChildren, EventEmitter, Output, forwardRef, Directive, Inject, Optional, NgModule } from '@angular/core';
|
|
3
|
-
import * as i1$
|
|
3
|
+
import * as i1$1 from '@angular/common/http';
|
|
4
4
|
import { HttpHeaders, HttpClientModule } from '@angular/common/http';
|
|
5
5
|
import * as i1 from '@angular/common';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
7
7
|
import * as i2 from '@angular/forms';
|
|
8
|
-
import { FormControl, NG_VALUE_ACCESSOR,
|
|
8
|
+
import { FormControl, NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
9
9
|
import * as i4$2 from '@angular/material/input';
|
|
10
10
|
import { MAT_INPUT_VALUE_ACCESSOR, MatInputModule } from '@angular/material/input';
|
|
11
11
|
import * as i3$2 from '@angular/material/button';
|
|
@@ -27,20 +27,18 @@ import * as i4 from '@angular/material/card';
|
|
|
27
27
|
import { MatCardModule } from '@angular/material/card';
|
|
28
28
|
import * as i2$2 from '@angular/material/tabs';
|
|
29
29
|
import { MatTabsModule } from '@angular/material/tabs';
|
|
30
|
-
import * as
|
|
30
|
+
import * as i4$7 from '@angular/material/table';
|
|
31
31
|
import { MatTableDataSource, MatTableModule } from '@angular/material/table';
|
|
32
32
|
import * as i5$2 from '@angular/material/datepicker';
|
|
33
33
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
34
|
-
import * as
|
|
34
|
+
import * as i3$4 from '@angular/material/progress-spinner';
|
|
35
35
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
36
36
|
import * as i4$1 from '@angular/material/icon';
|
|
37
37
|
import { MatIconModule } from '@angular/material/icon';
|
|
38
38
|
import * as i5$1 from '@angular/material/core';
|
|
39
39
|
import { MatNativeDateModule } from '@angular/material/core';
|
|
40
|
-
import * as i1$
|
|
40
|
+
import * as i1$2 from '@angular/material/dialog';
|
|
41
41
|
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
42
|
-
import * as i14 from '@angular/material/autocomplete';
|
|
43
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
44
42
|
import Webform from 'formiojs/Webform.js';
|
|
45
43
|
import FormioComponent$2 from 'formiojs/components/_classes/component/Component.js';
|
|
46
44
|
import TextFieldComponent from 'formiojs/components/textfield/TextField.js';
|
|
@@ -83,24 +81,23 @@ import RadioComponent from 'formiojs/components/radio/Radio.js';
|
|
|
83
81
|
import SelectBoxesComponent from 'formiojs/components/selectboxes/SelectBoxes.js';
|
|
84
82
|
import SelectComponent from 'formiojs/components/select/Select.js';
|
|
85
83
|
import { Subject } from 'rxjs';
|
|
86
|
-
import { debounceTime, distinctUntilChanged, takeUntil
|
|
84
|
+
import { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';
|
|
87
85
|
import * as CryptoJS from 'crypto-js';
|
|
88
86
|
import { isNullOrUndefined } from 'util';
|
|
89
87
|
import * as i9 from 'ngx-mat-select-search';
|
|
90
88
|
import { NgxMatSelectSearchModule } from 'ngx-mat-select-search';
|
|
91
89
|
import WellComponent from 'formiojs/components/well/Well.js';
|
|
92
90
|
import DataGridComponent from 'formiojs/components/datagrid/DataGrid.js';
|
|
93
|
-
import * as
|
|
91
|
+
import * as i8 from '@angular/cdk/drag-drop';
|
|
94
92
|
import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
|
95
|
-
import { SelectionModel } from '@angular/cdk/collections';
|
|
96
|
-
import * as i13 from '@angular/material/stepper';
|
|
97
|
-
import { MatStepperModule } from '@angular/material/stepper';
|
|
98
93
|
import EditGridComponent from 'formiojs/components/editgrid/EditGrid.js';
|
|
99
94
|
import Components$2 from 'formiojs/components/Components';
|
|
100
95
|
import isString from 'lodash/isString';
|
|
101
96
|
import TableComponent from 'formiojs/components/table/Table.js';
|
|
102
97
|
import Wizard from 'formiojs/Wizard';
|
|
103
98
|
import Displays from 'formiojs/displays/Displays';
|
|
99
|
+
import * as i3$3 from '@angular/material/stepper';
|
|
100
|
+
import { MatStepperModule } from '@angular/material/stepper';
|
|
104
101
|
import * as i1$3 from '@formio/angular';
|
|
105
102
|
import { FormioBaseComponent } from '@formio/angular';
|
|
106
103
|
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
@@ -979,11 +976,8 @@ var AngularButtonsThemes;
|
|
|
979
976
|
})(AngularButtonsThemes || (AngularButtonsThemes = {}));
|
|
980
977
|
|
|
981
978
|
class MaterialButtonComponent extends MaterialComponent {
|
|
982
|
-
constructor(
|
|
983
|
-
super(
|
|
984
|
-
this.element = element;
|
|
985
|
-
this.ref = ref;
|
|
986
|
-
this.dialog = dialog;
|
|
979
|
+
constructor() {
|
|
980
|
+
super(...arguments);
|
|
987
981
|
this.loading = false;
|
|
988
982
|
this.done = false;
|
|
989
983
|
this.error = false;
|
|
@@ -1054,12 +1048,12 @@ class MaterialButtonComponent extends MaterialComponent {
|
|
|
1054
1048
|
return retVal;
|
|
1055
1049
|
}
|
|
1056
1050
|
}
|
|
1057
|
-
MaterialButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialButtonComponent, deps:
|
|
1058
|
-
MaterialButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MaterialButtonComponent, selector: "mat-formio-button", usesInheritance: true, ngImport: i0, template: "<button *ngIf=\"instance
|
|
1051
|
+
MaterialButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1052
|
+
MaterialButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MaterialButtonComponent, selector: "mat-formio-button", usesInheritance: true, ngImport: i0, template: "<button *ngIf=\"instance\"\r\n [ngClass]=\"buttonClass\"\r\n type=\"{{ instance.component.action }}\"\r\n mat-raised-button [color]=\"color\"\r\n [disabled]=\"disabled\"\r\n (click)=\"instance.onClick($event)\"\r\n>\r\n <mat-icon *ngIf=\"instance.component.leftIcon\">{{instance.component.leftIcon}}</mat-icon>\r\n <mat-icon *ngIf=\"done\">done</mat-icon>\r\n <mat-icon *ngIf=\"error\">close</mat-icon>\r\n <mat-icon class=\"mat-icon-spin\" *ngIf=\"loading\">autorenew</mat-icon>\r\n {{ instance.component.label }}\r\n <mat-icon *ngIf=\"instance.component.rightIcon\">{{instance.component.rightIcon}}</mat-icon>\r\n</button>\r\n", styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host .mat-icon-spin{-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear}.mat-formio-theme-success{background-color:#63d644!important}.mat-formio-theme-info{background-color:#49d9f4!important}.mat-formio-button-sm{font-size:14px;padding:8px 12px}.mat-formio-button-xs{font-size:14px;padding:4px 6px}.mat-formio-button-md{font-size:15px;padding:8px 12px}.mat-formio-button-lg{font-size:19px;padding:16px 20px}.mat-formio-button-block{display:block;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }] });
|
|
1059
1053
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialButtonComponent, decorators: [{
|
|
1060
1054
|
type: Component,
|
|
1061
|
-
args: [{ selector: 'mat-formio-button', template: "<button *ngIf=\"instance
|
|
1062
|
-
}]
|
|
1055
|
+
args: [{ selector: 'mat-formio-button', template: "<button *ngIf=\"instance\"\r\n [ngClass]=\"buttonClass\"\r\n type=\"{{ instance.component.action }}\"\r\n mat-raised-button [color]=\"color\"\r\n [disabled]=\"disabled\"\r\n (click)=\"instance.onClick($event)\"\r\n>\r\n <mat-icon *ngIf=\"instance.component.leftIcon\">{{instance.component.leftIcon}}</mat-icon>\r\n <mat-icon *ngIf=\"done\">done</mat-icon>\r\n <mat-icon *ngIf=\"error\">close</mat-icon>\r\n <mat-icon class=\"mat-icon-spin\" *ngIf=\"loading\">autorenew</mat-icon>\r\n {{ instance.component.label }}\r\n <mat-icon *ngIf=\"instance.component.rightIcon\">{{instance.component.rightIcon}}</mat-icon>\r\n</button>\r\n", styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host .mat-icon-spin{-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear}.mat-formio-theme-success{background-color:#63d644!important}.mat-formio-theme-info{background-color:#49d9f4!important}.mat-formio-button-sm{font-size:14px;padding:8px 12px}.mat-formio-button-xs{font-size:14px;padding:4px 6px}.mat-formio-button-md{font-size:15px;padding:8px 12px}.mat-formio-button-lg{font-size:19px;padding:16px 20px}.mat-formio-button-block{display:block;width:100%}\n"] }]
|
|
1056
|
+
}] });
|
|
1063
1057
|
ButtonComponent.MaterialComponent = MaterialButtonComponent;
|
|
1064
1058
|
|
|
1065
1059
|
class MaterialTextareaComponent extends MaterialComponent {
|
|
@@ -2600,20 +2594,27 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2600
2594
|
});
|
|
2601
2595
|
}
|
|
2602
2596
|
registerPanelScrollEvent(selectElem) {
|
|
2603
|
-
|
|
2604
|
-
|
|
2597
|
+
if (selectElem && (selectElem === null || selectElem === void 0 ? void 0 : selectElem.panel)) {
|
|
2598
|
+
// const panelElement = selectElem.panel.nativeElement;
|
|
2599
|
+
this.currentPanelElement = selectElem.panel.nativeElement;
|
|
2600
|
+
this.currentPanelElement.addEventListener('scroll', this.onScroll.bind(this));
|
|
2601
|
+
}
|
|
2605
2602
|
}
|
|
2606
2603
|
onScroll(event) {
|
|
2607
2604
|
if (this.instance.component.key.toLowerCase() === 'vendorproductid') {
|
|
2608
2605
|
const scrollElement = event.target;
|
|
2606
|
+
if (!scrollElement)
|
|
2607
|
+
return; // Ensure scrollElement is not undefined
|
|
2609
2608
|
const trackHeight = scrollElement.scrollHeight - scrollElement.offsetHeight;
|
|
2609
|
+
if (isNaN(trackHeight) || trackHeight <= 0)
|
|
2610
|
+
return; // Check if trackHeight is valid
|
|
2610
2611
|
if (this.openCounter < 2) {
|
|
2611
2612
|
const retrievedObject = JSON.parse(localStorage.getItem('storageObject'));
|
|
2612
2613
|
this.totalPages = Number(retrievedObject === null || retrievedObject === void 0 ? void 0 : retrievedObject.totalPages);
|
|
2613
2614
|
this.productsloadingFlag = true;
|
|
2614
2615
|
this.productList = retrievedObject === null || retrievedObject === void 0 ? void 0 : retrievedObject.dataSource;
|
|
2615
2616
|
}
|
|
2616
|
-
if (this.productsloadingFlag && Math.floor(scrollElement.scrollTop / trackHeight * 100) > 50) {
|
|
2617
|
+
if (this.productsloadingFlag && Math.floor((scrollElement === null || scrollElement === void 0 ? void 0 : scrollElement.scrollTop) / trackHeight * 100) > 50) {
|
|
2617
2618
|
this.productsloadingFlag = false;
|
|
2618
2619
|
this.openCounter = this.openCounter + 1;
|
|
2619
2620
|
if (this.pageNumber < this.totalPages) {
|
|
@@ -2698,10 +2699,16 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2698
2699
|
this.searching = false;
|
|
2699
2700
|
this.productsloadingFlag = true;
|
|
2700
2701
|
setTimeout(() => {
|
|
2701
|
-
|
|
2702
|
-
const
|
|
2703
|
-
|
|
2704
|
-
|
|
2702
|
+
var _a, _b;
|
|
2703
|
+
const ele = (_b = (_a = this.selectElem) === null || _a === void 0 ? void 0 : _a.panel) === null || _b === void 0 ? void 0 : _b.nativeElement;
|
|
2704
|
+
if (ele) {
|
|
2705
|
+
const trackHeight = ele.scrollHeight - ele.offsetHeight;
|
|
2706
|
+
const middlePosition = trackHeight / 2 - 50;
|
|
2707
|
+
ele.scrollTo({ top: middlePosition, behavior: 'auto' });
|
|
2708
|
+
}
|
|
2709
|
+
else {
|
|
2710
|
+
console.log('Panel element is not available yet.');
|
|
2711
|
+
}
|
|
2705
2712
|
}, 250);
|
|
2706
2713
|
}
|
|
2707
2714
|
}
|
|
@@ -2737,6 +2744,9 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2737
2744
|
ngOnDestroy() {
|
|
2738
2745
|
this._onDestroy.next('');
|
|
2739
2746
|
this._onDestroy.complete();
|
|
2747
|
+
if (this.currentPanelElement) {
|
|
2748
|
+
this.currentPanelElement.removeEventListener('scroll', this.onScroll.bind(this));
|
|
2749
|
+
}
|
|
2740
2750
|
}
|
|
2741
2751
|
/*End*/
|
|
2742
2752
|
setInstance(instance) {
|
|
@@ -2756,8 +2766,9 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2756
2766
|
ngAfterViewInit() {
|
|
2757
2767
|
if (this.instance.component.key.toLowerCase() === 'vendorproductid') {
|
|
2758
2768
|
this.selectElem.openedChange.subscribe((isOpen) => {
|
|
2769
|
+
var _a;
|
|
2759
2770
|
if (isOpen) {
|
|
2760
|
-
this.pageNumber =
|
|
2771
|
+
this.pageNumber = 1;
|
|
2761
2772
|
this.pageSize = 20;
|
|
2762
2773
|
this.searchQuery = '';
|
|
2763
2774
|
this.searching = false;
|
|
@@ -2768,8 +2779,11 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2768
2779
|
this.removePanelScrollEvent();
|
|
2769
2780
|
this.searching = false;
|
|
2770
2781
|
let selectedValue = this.getValue();
|
|
2771
|
-
if (selectedValue.toString().length == 0 && this.searchQuery == '') {
|
|
2782
|
+
if ((selectedValue.toString().length == 0 && this.searchQuery == '') || ((_a = this.productList) === null || _a === void 0 ? void 0 : _a.length) === 0) {
|
|
2772
2783
|
this.productList = [];
|
|
2784
|
+
this.pageNumber = 1;
|
|
2785
|
+
this.pageSize = 20;
|
|
2786
|
+
this.searchQuery = '';
|
|
2773
2787
|
this.loadData(this.pageNumber, this.pageSize, this.searchQuery);
|
|
2774
2788
|
}
|
|
2775
2789
|
}
|
|
@@ -2796,6 +2810,7 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2796
2810
|
this.pageSize = 20;
|
|
2797
2811
|
this.productList = [];
|
|
2798
2812
|
this.searching = true;
|
|
2813
|
+
this.searchQuery = searchQuery;
|
|
2799
2814
|
this.loadData(this.pageNumber, this.pageSize, searchQuery);
|
|
2800
2815
|
}
|
|
2801
2816
|
});
|
|
@@ -2816,11 +2831,37 @@ class MaterialSelectComponent extends MaterialComponent {
|
|
|
2816
2831
|
});
|
|
2817
2832
|
this.filteredOptions = this.selectOptions;
|
|
2818
2833
|
}
|
|
2834
|
+
isError() {
|
|
2835
|
+
if (this.instance.error) {
|
|
2836
|
+
this.control.setErrors(this.instance.component.validate);
|
|
2837
|
+
return true;
|
|
2838
|
+
}
|
|
2839
|
+
else {
|
|
2840
|
+
return false;
|
|
2841
|
+
}
|
|
2842
|
+
}
|
|
2843
|
+
getErrorMessage() {
|
|
2844
|
+
if (this.instance.error && this.instance.error.messages) {
|
|
2845
|
+
const { messages } = this.instance.error;
|
|
2846
|
+
if (messages.length) {
|
|
2847
|
+
for (const msg of messages) {
|
|
2848
|
+
if (msg.context) {
|
|
2849
|
+
if (this.instance && this.instance.parent && this.instance.parent._data) {
|
|
2850
|
+
if (this.instance.parent._data.submit) {
|
|
2851
|
+
this.control.markAllAsTouched();
|
|
2852
|
+
}
|
|
2853
|
+
}
|
|
2854
|
+
return this.instance.error ? this.instance.error.message : '';
|
|
2855
|
+
}
|
|
2856
|
+
}
|
|
2857
|
+
}
|
|
2858
|
+
}
|
|
2859
|
+
}
|
|
2819
2860
|
compareObjects(o1, o2) {
|
|
2820
2861
|
return _.isEqual(o1, o2);
|
|
2821
2862
|
}
|
|
2822
2863
|
}
|
|
2823
|
-
MaterialSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialSelectComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$
|
|
2864
|
+
MaterialSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialSelectComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
|
|
2824
2865
|
MaterialSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MaterialSelectComponent, selector: "mat-formio-select", viewQueries: [{ propertyName: "multiSelect", first: true, predicate: ["multiSelect"], descendants: true, static: true }, { propertyName: "selectElem", first: true, predicate: ["productSelect"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
2825
2866
|
<mat-formio-form-field [instance]="instance" [componentTemplate]="componentTemplate"></mat-formio-form-field>
|
|
2826
2867
|
<ng-template #componentTemplate let-hasLabel>
|
|
@@ -2858,7 +2899,7 @@ MaterialSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
|
|
|
2858
2899
|
<span *ngIf="instance.component.suffix" matSuffix>
|
|
2859
2900
|
{{ instance.component.suffix }}
|
|
2860
2901
|
</span>
|
|
2861
|
-
|
|
2902
|
+
<mat-error *ngIf="isError()" >{{ getErrorMessage() }}</mat-error>
|
|
2862
2903
|
</mat-form-field>
|
|
2863
2904
|
</ng-template>
|
|
2864
2905
|
`, isInline: true, styles: [".example-viewport{height:200px}.product-picker{overflow-x:hidden}.virtual-full-view{height:auto!important;white-space:normal!important;line-height:1.4!important;text-overflow:initial!important;min-height:48px!important;overflow:visible!important;overflow:initial!important;padding-top:10px!important;padding-bottom:10px!important}::ng-deep .product-picker .cdk-virtual-scroll-content-wrapper{width:100%!important}.virtual-full-view .mat-pseudo-checkbox{align-self:top!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix]" }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix]" }, { kind: "component", type: i4$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i5$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i4$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "component", type: i9.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "indexAndLengthScreenReaderText", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toogleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "directive", type: i9.MatSelectSearchClearDirective, selector: "[ngxMatSelectSearchClear]" }, { kind: "component", type: FormioFormFieldComponent, selector: "mat-formio-form-field", inputs: ["labelTemplate", "renderTopLabel", "showDescription", "renderElementOnly", "instance", "componentTemplate"] }, { kind: "component", type: LabelComponent, selector: "span[matFormioLabel]", inputs: ["instance"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
@@ -2901,11 +2942,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
2901
2942
|
<span *ngIf="instance.component.suffix" matSuffix>
|
|
2902
2943
|
{{ instance.component.suffix }}
|
|
2903
2944
|
</span>
|
|
2904
|
-
|
|
2945
|
+
<mat-error *ngIf="isError()" >{{ getErrorMessage() }}</mat-error>
|
|
2905
2946
|
</mat-form-field>
|
|
2906
2947
|
</ng-template>
|
|
2907
2948
|
`, styles: [".example-viewport{height:200px}.product-picker{overflow-x:hidden}.virtual-full-view{height:auto!important;white-space:normal!important;line-height:1.4!important;text-overflow:initial!important;min-height:48px!important;overflow:visible!important;overflow:initial!important;padding-top:10px!important;padding-bottom:10px!important}::ng-deep .product-picker .cdk-virtual-scroll-content-wrapper{width:100%!important}.virtual-full-view .mat-pseudo-checkbox{align-self:top!important}\n"] }]
|
|
2908
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$
|
|
2949
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.HttpClient }]; }, propDecorators: { multiSelect: [{
|
|
2909
2950
|
type: ViewChild,
|
|
2910
2951
|
args: ['multiSelect', { static: true }]
|
|
2911
2952
|
}], selectElem: [{
|
|
@@ -2964,477 +3005,32 @@ class ConfirmationDialogComponent {
|
|
|
2964
3005
|
ngOnInit() {
|
|
2965
3006
|
}
|
|
2966
3007
|
}
|
|
2967
|
-
ConfirmationDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ConfirmationDialogComponent, deps: [{ token: i1$
|
|
2968
|
-
ConfirmationDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ConfirmationDialogComponent, selector: "NgxMat-confirmation-dialog", ngImport: i0, template: "<div class=\"dialog-container\">\r\n<h2 mat-dialog-title class=\"data-grid-alert\">Alert</h2>\r\n<mat-dialog-content class=\"data-grid-popup-body\">\r\n {{data.message}}\r\n</mat-dialog-content>\r\n<mat-dialog-actions class=\"data-grid-popup-footer\">\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"warn\" *ngIf=\"data.buttonStatus\">Delete</button>\r\n <button mat-button [mat-dialog-close]=\"false\" [ngClass]=\"{'data-grid-closed-btn': !data.buttonStatus}\">{{data.buttonStatus ? 'Cancel': 'Close'}}</button>\r\n</mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .data-grid-closed-btn .mat-button-focus-overlay{background-color:transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i1$
|
|
3008
|
+
ConfirmationDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ConfirmationDialogComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
3009
|
+
ConfirmationDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ConfirmationDialogComponent, selector: "NgxMat-confirmation-dialog", ngImport: i0, template: "<div class=\"dialog-container\">\r\n<h2 mat-dialog-title class=\"data-grid-alert\">Alert</h2>\r\n<mat-dialog-content class=\"data-grid-popup-body\">\r\n {{data.message}}\r\n</mat-dialog-content>\r\n<mat-dialog-actions class=\"data-grid-popup-footer\">\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"warn\" *ngIf=\"data.buttonStatus\">Delete</button>\r\n <button mat-button [mat-dialog-close]=\"false\" [ngClass]=\"{'data-grid-closed-btn': !data.buttonStatus}\">{{data.buttonStatus ? 'Cancel': 'Close'}}</button>\r\n</mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .data-grid-closed-btn .mat-button-focus-overlay{background-color:transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] });
|
|
2969
3010
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
|
|
2970
3011
|
type: Component,
|
|
2971
3012
|
args: [{ selector: 'NgxMat-confirmation-dialog', template: "<div class=\"dialog-container\">\r\n<h2 mat-dialog-title class=\"data-grid-alert\">Alert</h2>\r\n<mat-dialog-content class=\"data-grid-popup-body\">\r\n {{data.message}}\r\n</mat-dialog-content>\r\n<mat-dialog-actions class=\"data-grid-popup-footer\">\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"warn\" *ngIf=\"data.buttonStatus\">Delete</button>\r\n <button mat-button [mat-dialog-close]=\"false\" [ngClass]=\"{'data-grid-closed-btn': !data.buttonStatus}\">{{data.buttonStatus ? 'Cancel': 'Close'}}</button>\r\n</mat-dialog-actions>\r\n</div>", styles: ["::ng-deep .data-grid-closed-btn .mat-button-focus-overlay{background-color:transparent}\n"] }]
|
|
2972
3013
|
}], ctorParameters: function () {
|
|
2973
|
-
return [{ type: i1$
|
|
3014
|
+
return [{ type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
|
|
2974
3015
|
type: Inject,
|
|
2975
3016
|
args: [MAT_DIALOG_DATA]
|
|
2976
3017
|
}] }];
|
|
2977
3018
|
} });
|
|
2978
3019
|
|
|
2979
|
-
class CommonService {
|
|
2980
|
-
constructor(http) {
|
|
2981
|
-
this.http = http;
|
|
2982
|
-
this.holy = '';
|
|
2983
|
-
this.grail = '';
|
|
2984
|
-
this.holy = CryptoJS.enc.Base64.parse('8F/2+T2NXqUBQERR12R4sw==');
|
|
2985
|
-
this.grail = CryptoJS.enc.Base64.parse('yE0CgQbYzK5wqeoKTVzhOQ==');
|
|
2986
|
-
this.paramsData = JSON.parse(localStorage.getItem('productPickerParams'));
|
|
2987
|
-
this.currentUser = JSON.parse(localStorage.getItem('currentUser'));
|
|
2988
|
-
}
|
|
2989
|
-
scrumble(msg) {
|
|
2990
|
-
if (!isNullOrUndefined(msg)) {
|
|
2991
|
-
var conceal = this.getcampaign(msg, this.holy, this.grail);
|
|
2992
|
-
var sha256 = CryptoJS.HmacSHA256(CryptoJS.enc.Base64.stringify(this.grail) + conceal.toString(), CryptoJS.enc.Base64.stringify(this.holy));
|
|
2993
|
-
var hashInBase64 = CryptoJS.enc.Base64.stringify(sha256);
|
|
2994
|
-
let keyValue = {
|
|
2995
|
-
"value": conceal.toString(),
|
|
2996
|
-
"mac": hashInBase64
|
|
2997
|
-
};
|
|
2998
|
-
var result = JSON.stringify(keyValue);
|
|
2999
|
-
var jumbled = CryptoJS.enc.Utf8.parse(result);
|
|
3000
|
-
return CryptoJS.enc.Base64.stringify(jumbled);
|
|
3001
|
-
}
|
|
3002
|
-
}
|
|
3003
|
-
getcampaign(data, holy, grail) {
|
|
3004
|
-
return CryptoJS.AES.encrypt(data.toString(), holy, {
|
|
3005
|
-
blockSize: 128,
|
|
3006
|
-
iv: grail,
|
|
3007
|
-
mode: CryptoJS.mode.CBC,
|
|
3008
|
-
padding: CryptoJS.pad.Pkcs7
|
|
3009
|
-
});
|
|
3010
|
-
}
|
|
3011
|
-
getBaseApiUrl() {
|
|
3012
|
-
const baseUrlMapping = {
|
|
3013
|
-
'localhost': 'http://localhost:58504',
|
|
3014
|
-
'lincoln.vartopia.com': 'https://lincoln-api.vartopia.com',
|
|
3015
|
-
'stage.vartopia.com': 'https://stage-api.vartopia.com',
|
|
3016
|
-
'my.vartopia.com': 'https://reagan-api.vartopia.com',
|
|
3017
|
-
'jackson.vartopia.com': 'https://jackson-api.vartopia.com'
|
|
3018
|
-
};
|
|
3019
|
-
// Get the current hostname
|
|
3020
|
-
const hostname = window.location.hostname;
|
|
3021
|
-
return baseUrlMapping[hostname] || null;
|
|
3022
|
-
}
|
|
3023
|
-
listProductCategory() {
|
|
3024
|
-
const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
|
|
3025
|
-
const baseApiUrl = this.getBaseApiUrl();
|
|
3026
|
-
return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetProductsCategory?vendorId=${vendorId}`);
|
|
3027
|
-
}
|
|
3028
|
-
listSubCategory(category) {
|
|
3029
|
-
const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
|
|
3030
|
-
const baseApiUrl = this.getBaseApiUrl();
|
|
3031
|
-
return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetProductsSubCategory?vendorId=${vendorId}&categoryName=${category}`);
|
|
3032
|
-
}
|
|
3033
|
-
// Function to get value by key from the array
|
|
3034
|
-
getValueByKey(data, key) {
|
|
3035
|
-
if (!data || data.length === 0) {
|
|
3036
|
-
return null; // Return null if data is empty or undefined
|
|
3037
|
-
}
|
|
3038
|
-
const item = data.find(kv => kv.key.toLowerCase() === key.toLowerCase());
|
|
3039
|
-
return item ? item.value : null;
|
|
3040
|
-
}
|
|
3041
|
-
// this.http.get<VendorProductsResponse>(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${envendorId}&pageNumber=${enpageNumber}&pageSize=${enpageSize}&search=${ensearchQuery}&onlyActive=${enactive}&includeDescription=${endescription}`, { headers }).subscribe(response => {
|
|
3042
|
-
loadProducts(pageNumber, pazeSize, search = '', onlyActive = true, description = false, category, subCategory) {
|
|
3043
|
-
const baseApiUrl = this.getBaseApiUrl();
|
|
3044
|
-
const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
|
|
3045
|
-
const encodeCat = encodeURIComponent(category);
|
|
3046
|
-
const encodeSubCat = encodeURIComponent(subCategory);
|
|
3047
|
-
return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${vendorId}&pageNumber=${pageNumber}&pageSize=${pazeSize}&search=${search}&onlyActive=${onlyActive}&includeDescription=${description}&category=${encodeCat}&subCategory=${encodeSubCat}`);
|
|
3048
|
-
}
|
|
3049
|
-
}
|
|
3050
|
-
CommonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CommonService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3051
|
-
CommonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CommonService, providedIn: 'root' });
|
|
3052
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CommonService, decorators: [{
|
|
3053
|
-
type: Injectable,
|
|
3054
|
-
args: [{
|
|
3055
|
-
providedIn: 'root'
|
|
3056
|
-
}]
|
|
3057
|
-
}], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
|
|
3058
|
-
|
|
3059
|
-
class AddOnProductsComponent {
|
|
3060
|
-
constructor(matDialogRef, data, fb, dialog, commonSevice) {
|
|
3061
|
-
this.matDialogRef = matDialogRef;
|
|
3062
|
-
this.fb = fb;
|
|
3063
|
-
this.dialog = dialog;
|
|
3064
|
-
this.commonSevice = commonSevice;
|
|
3065
|
-
this.category = [];
|
|
3066
|
-
this.subCategory = [];
|
|
3067
|
-
this.filteredCategories = [];
|
|
3068
|
-
this.filteredSubCategories = [];
|
|
3069
|
-
this.addProductsColumns = ['select', 'productName', 'price'];
|
|
3070
|
-
this.showAllproductsColumns = ['delete', 'productName', 'categoryName', 'subCategory', 'Quantity', 'price'];
|
|
3071
|
-
this.quantityList = [5, 10, 15, 20, 25];
|
|
3072
|
-
this.ELEMENT_DATA = [];
|
|
3073
|
-
this.dataSource = new MatTableDataSource();
|
|
3074
|
-
this.selection = new SelectionModel(true, []);
|
|
3075
|
-
this.selectedDataSource = new MatTableDataSource([]);
|
|
3076
|
-
this.selectedCategory = null;
|
|
3077
|
-
this.selectedSubCategory = null;
|
|
3078
|
-
this.showCategory = false;
|
|
3079
|
-
this.showSubcategory = false;
|
|
3080
|
-
this.showPrice = true;
|
|
3081
|
-
this.showQuantity = true;
|
|
3082
|
-
this.showNewProductPicker = true;
|
|
3083
|
-
this.setCategory = '';
|
|
3084
|
-
this.setSubCategory = '';
|
|
3085
|
-
this.loadingFlag = false;
|
|
3086
|
-
this.pageNumber = 1;
|
|
3087
|
-
this.pageSize = 20;
|
|
3088
|
-
this.totalPages = 0;
|
|
3089
|
-
this.searchQuery = '';
|
|
3090
|
-
this.itemList = [];
|
|
3091
|
-
this.prevScrollPosition = 0; // Track the previous scroll position
|
|
3092
|
-
this.spinnerFlag = false;
|
|
3093
|
-
this.showCategory = data.attributesFlag.showCategory;
|
|
3094
|
-
this.showSubcategory = data.attributesFlag.showSubcategory;
|
|
3095
|
-
this.showPrice = data.attributesFlag.showPrice;
|
|
3096
|
-
this.showQuantity = data.attributesFlag.showQuantity;
|
|
3097
|
-
this.showNewProductPicker = data.showNewProductPicker;
|
|
3098
|
-
this.setCategory = data.category || '';
|
|
3099
|
-
this.setSubCategory = data.subCategory || '';
|
|
3100
|
-
this.selection = new SelectionModel(true, data.selectedProducts || []);
|
|
3101
|
-
this.form = this.fb.group({
|
|
3102
|
-
productCategory: [''],
|
|
3103
|
-
productSubcategory: [''],
|
|
3104
|
-
selectedProducts: this.fb.array([])
|
|
3105
|
-
});
|
|
3106
|
-
this.initializeFormArray();
|
|
3107
|
-
if (!this.showCategory) {
|
|
3108
|
-
this.removeColumn('categoryName');
|
|
3109
|
-
}
|
|
3110
|
-
if (!this.showPrice) {
|
|
3111
|
-
this.removeColumn('price');
|
|
3112
|
-
}
|
|
3113
|
-
if (!this.showSubcategory) {
|
|
3114
|
-
this.removeColumn('subCategory');
|
|
3115
|
-
}
|
|
3116
|
-
if (!this.showQuantity) {
|
|
3117
|
-
this.removeColumn('Quantity');
|
|
3118
|
-
}
|
|
3119
|
-
}
|
|
3120
|
-
removeColumn(columnName) {
|
|
3121
|
-
this.showAllproductsColumns = this.showAllproductsColumns.filter(column => column !== columnName);
|
|
3122
|
-
this.addProductsColumns = this.addProductsColumns.filter(column => column !== columnName);
|
|
3123
|
-
}
|
|
3124
|
-
initializeFormArray() {
|
|
3125
|
-
const selectedProductsArray = this.form.get('selectedProducts');
|
|
3126
|
-
this.selection.selected.forEach(product => {
|
|
3127
|
-
selectedProductsArray.push(this.fb.group({
|
|
3128
|
-
price: [product.price || '', Validators.required],
|
|
3129
|
-
text: [product.text || ''],
|
|
3130
|
-
quantity: [product.quantity || '', Validators.required],
|
|
3131
|
-
category: [(product === null || product === void 0 ? void 0 : product.category) || ''],
|
|
3132
|
-
subCategory: [(product === null || product === void 0 ? void 0 : product.subCategory) || ''],
|
|
3133
|
-
value: [(product === null || product === void 0 ? void 0 : product.value) || '']
|
|
3134
|
-
}));
|
|
3135
|
-
});
|
|
3136
|
-
this.selectedDataSource.data = [...this.selection.selected];
|
|
3137
|
-
}
|
|
3138
|
-
initializeDataSources() {
|
|
3139
|
-
var _a, _b, _c, _d;
|
|
3140
|
-
// Ensure selected items are marked in the main data source
|
|
3141
|
-
if ((_b = (_a = this.selection) === null || _a === void 0 ? void 0 : _a.selected) === null || _b === void 0 ? void 0 : _b.length) {
|
|
3142
|
-
(_d = (_c = this.selection) === null || _c === void 0 ? void 0 : _c.selected) === null || _d === void 0 ? void 0 : _d.forEach(selectedProduct => {
|
|
3143
|
-
const index = this.dataSource.data.findIndex(product => product.value === selectedProduct.value);
|
|
3144
|
-
if (index >= 0) {
|
|
3145
|
-
this.dataSource.data[index] = selectedProduct;
|
|
3146
|
-
}
|
|
3147
|
-
});
|
|
3148
|
-
this.selectedDataSource.data = [...this.selection.selected];
|
|
3149
|
-
}
|
|
3150
|
-
else {
|
|
3151
|
-
console.warn('No selected products found.');
|
|
3152
|
-
}
|
|
3153
|
-
}
|
|
3154
|
-
ngAfterViewInit() {
|
|
3155
|
-
}
|
|
3156
|
-
ngOnInit() {
|
|
3157
|
-
this.loadProductCategory();
|
|
3158
|
-
this.form.get('productCategory').valueChanges
|
|
3159
|
-
.pipe(startWith(''), map(value => this.filterProducts(value, 'category1'))).subscribe(filterCat => {
|
|
3160
|
-
this.filteredCategories = filterCat;
|
|
3161
|
-
});
|
|
3162
|
-
this.form.get('productSubcategory').valueChanges
|
|
3163
|
-
.pipe(startWith(''), map(value => this.filterProducts(value, 'subCategory'))).subscribe(subCat => {
|
|
3164
|
-
this.filteredSubCategories = subCat;
|
|
3165
|
-
});
|
|
3166
|
-
}
|
|
3167
|
-
loadProductCategory() {
|
|
3168
|
-
this.spinnerFlag = true;
|
|
3169
|
-
this.commonSevice.listProductCategory().subscribe(response => {
|
|
3170
|
-
this.spinnerFlag = false;
|
|
3171
|
-
if (response && response.code === 200) {
|
|
3172
|
-
this.category = response.data;
|
|
3173
|
-
this.filteredCategories = this.filterProducts(this.setCategory, 'category1');
|
|
3174
|
-
this.form.get('productCategory').setValue(this.setCategory);
|
|
3175
|
-
if (this.setCategory !== '') {
|
|
3176
|
-
this.onOptionSelected(this.setCategory, 'category1');
|
|
3177
|
-
this.form.get('productSubcategory').setValue(this.setSubCategory);
|
|
3178
|
-
}
|
|
3179
|
-
}
|
|
3180
|
-
});
|
|
3181
|
-
}
|
|
3182
|
-
filterProducts(value, cat) {
|
|
3183
|
-
const filterValue = value.toLowerCase();
|
|
3184
|
-
const data = cat === 'category1' ? this.category : this.subCategory;
|
|
3185
|
-
if (!filterValue) {
|
|
3186
|
-
return data;
|
|
3187
|
-
}
|
|
3188
|
-
else {
|
|
3189
|
-
return data.filter(option => option.toLowerCase().includes(filterValue));
|
|
3190
|
-
}
|
|
3191
|
-
}
|
|
3192
|
-
onSubmit() {
|
|
3193
|
-
if (this.form.valid) {
|
|
3194
|
-
this.matDialogRef.close({
|
|
3195
|
-
data: {
|
|
3196
|
-
status: true,
|
|
3197
|
-
items: this.form.value
|
|
3198
|
-
}
|
|
3199
|
-
});
|
|
3200
|
-
}
|
|
3201
|
-
}
|
|
3202
|
-
isAllSelected() {
|
|
3203
|
-
const numSelected = this.selection.selected.length;
|
|
3204
|
-
const numRows = this.dataSource.data.length;
|
|
3205
|
-
return numSelected === numRows;
|
|
3206
|
-
}
|
|
3207
|
-
isIndeterminate() {
|
|
3208
|
-
const numSelected = this.selection.selected.length;
|
|
3209
|
-
const numRows = this.dataSource.data.length;
|
|
3210
|
-
return numSelected > 0 && numSelected < numRows;
|
|
3211
|
-
}
|
|
3212
|
-
masterToggle() {
|
|
3213
|
-
this.isAllSelected()
|
|
3214
|
-
? this.selection.clear()
|
|
3215
|
-
: this.dataSource.data.forEach(row => this.selection.select(row));
|
|
3216
|
-
this.updateSelectedProducts();
|
|
3217
|
-
}
|
|
3218
|
-
toggleSelection(row) {
|
|
3219
|
-
this.selection.toggle(row);
|
|
3220
|
-
this.updateSelectedProducts();
|
|
3221
|
-
}
|
|
3222
|
-
// Getter for the FormArray
|
|
3223
|
-
get selectedProducts() {
|
|
3224
|
-
return this.form.get('selectedProducts');
|
|
3225
|
-
}
|
|
3226
|
-
updateSelectedProducts() {
|
|
3227
|
-
var _a, _b;
|
|
3228
|
-
if (Array.isArray(this.selection.selected)) {
|
|
3229
|
-
this.selectedDataSource.data = [...this.selection.selected];
|
|
3230
|
-
const selectedProductsArray = this.selectedProducts;
|
|
3231
|
-
selectedProductsArray.clear();
|
|
3232
|
-
(_b = (_a = this.selection) === null || _a === void 0 ? void 0 : _a.selected) === null || _b === void 0 ? void 0 : _b.forEach(product => {
|
|
3233
|
-
var _a, _b;
|
|
3234
|
-
selectedProductsArray === null || selectedProductsArray === void 0 ? void 0 : selectedProductsArray.push(this.fb.group({
|
|
3235
|
-
price: [(_a = product === null || product === void 0 ? void 0 : product.price) !== null && _a !== void 0 ? _a : '', this.showPrice ? Validators.required : []],
|
|
3236
|
-
text: [(product === null || product === void 0 ? void 0 : product.text) || ''],
|
|
3237
|
-
quantity: [(_b = product === null || product === void 0 ? void 0 : product.quantity) !== null && _b !== void 0 ? _b : '', this.showQuantity ? Validators.required : []],
|
|
3238
|
-
category: [(product === null || product === void 0 ? void 0 : product.category) || ''],
|
|
3239
|
-
subCategory: [(product === null || product === void 0 ? void 0 : product.subCategory) || ''],
|
|
3240
|
-
value: [(product === null || product === void 0 ? void 0 : product.value) || '']
|
|
3241
|
-
}));
|
|
3242
|
-
});
|
|
3243
|
-
}
|
|
3244
|
-
else {
|
|
3245
|
-
console.error('Selection.selected is not an array:', this.selection.selected);
|
|
3246
|
-
}
|
|
3247
|
-
}
|
|
3248
|
-
getTotalRows() {
|
|
3249
|
-
return this.dataSource.data.length;
|
|
3250
|
-
}
|
|
3251
|
-
getSelectedRowsCount() {
|
|
3252
|
-
return this.selection.selected.length;
|
|
3253
|
-
}
|
|
3254
|
-
onOptionSelected(event, category) {
|
|
3255
|
-
let selectedValue;
|
|
3256
|
-
if (event && event.option && event.option.value !== undefined) {
|
|
3257
|
-
selectedValue = event.option.value;
|
|
3258
|
-
}
|
|
3259
|
-
else {
|
|
3260
|
-
selectedValue = event;
|
|
3261
|
-
}
|
|
3262
|
-
if (category === 'category1') {
|
|
3263
|
-
this.selectedCategory = selectedValue;
|
|
3264
|
-
this.spinnerFlag = true;
|
|
3265
|
-
this.commonSevice.listSubCategory(selectedValue).subscribe(response => {
|
|
3266
|
-
this.spinnerFlag = false;
|
|
3267
|
-
if (response && response.code === 200) {
|
|
3268
|
-
this.subCategory = response.data;
|
|
3269
|
-
this.filteredSubCategories = this.filterProducts(this.setCategory, 'subCategory');
|
|
3270
|
-
if (this.setSubCategory !== '') {
|
|
3271
|
-
this.selectedSubCategory = this.setSubCategory;
|
|
3272
|
-
this.getProducts();
|
|
3273
|
-
}
|
|
3274
|
-
}
|
|
3275
|
-
});
|
|
3276
|
-
}
|
|
3277
|
-
else {
|
|
3278
|
-
if (category === 'subCategory') {
|
|
3279
|
-
this.selectedSubCategory = event.option.value;
|
|
3280
|
-
this.getProducts();
|
|
3281
|
-
}
|
|
3282
|
-
}
|
|
3283
|
-
}
|
|
3284
|
-
getProducts() {
|
|
3285
|
-
this.spinnerFlag = true;
|
|
3286
|
-
this.commonSevice.loadProducts(this.pageNumber, this.pageSize, '', true, false, this.selectedCategory, this.selectedSubCategory).subscribe(response => {
|
|
3287
|
-
var _a;
|
|
3288
|
-
this.spinnerFlag = false;
|
|
3289
|
-
if (response && response.code === 200) {
|
|
3290
|
-
//this.dataSource.data = response.data.dataSource;
|
|
3291
|
-
this.totalPages = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.totalPages;
|
|
3292
|
-
const data = response.data.dataSource;
|
|
3293
|
-
if (this.dataSource.data.length > 0) {
|
|
3294
|
-
data.forEach(item => this.dataSource.data.push(item));
|
|
3295
|
-
this.dataSource.data = [...this.dataSource.data];
|
|
3296
|
-
}
|
|
3297
|
-
else {
|
|
3298
|
-
this.dataSource.data = data;
|
|
3299
|
-
}
|
|
3300
|
-
this.loadingFlag = true;
|
|
3301
|
-
setTimeout(() => {
|
|
3302
|
-
const middlePosition = this.trackHeight / 2 - 50;
|
|
3303
|
-
if (this.firstscrollableDiv && this.firstscrollableDiv.nativeElement) {
|
|
3304
|
-
this.firstscrollableDiv.nativeElement.scrollTo({ top: middlePosition, behavior: 'auto' });
|
|
3305
|
-
}
|
|
3306
|
-
}, 250);
|
|
3307
|
-
this.initializeDataSources();
|
|
3308
|
-
}
|
|
3309
|
-
});
|
|
3310
|
-
}
|
|
3311
|
-
removeRow(event, element) {
|
|
3312
|
-
event.stopPropagation();
|
|
3313
|
-
event.preventDefault();
|
|
3314
|
-
let message = 'Are you sure you want to delete this product?';
|
|
3315
|
-
let showButton = true;
|
|
3316
|
-
const index = this.selectedDataSource.data.indexOf(element);
|
|
3317
|
-
if (index >= 0) {
|
|
3318
|
-
if (this.selectedDataSource.data.length === 1) {
|
|
3319
|
-
message = 'Please select at least one product.';
|
|
3320
|
-
showButton = false;
|
|
3321
|
-
}
|
|
3322
|
-
const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
|
|
3323
|
-
disableClose: true,
|
|
3324
|
-
width: '90%',
|
|
3325
|
-
maxWidth: '400px',
|
|
3326
|
-
data: { message: message, buttonStatus: showButton }
|
|
3327
|
-
});
|
|
3328
|
-
dialogRef.afterClosed().subscribe(result => {
|
|
3329
|
-
if (result) {
|
|
3330
|
-
this.selectedDataSource.data.splice(index, 1);
|
|
3331
|
-
this.selectedDataSource._updateChangeSubscription();
|
|
3332
|
-
this.selection.deselect(element);
|
|
3333
|
-
const selectedProductsArray = this.form.get('selectedProducts');
|
|
3334
|
-
const productIndex = selectedProductsArray.controls.findIndex(control => control.value.productName === element.productName);
|
|
3335
|
-
if (productIndex >= 0) {
|
|
3336
|
-
selectedProductsArray.removeAt(productIndex);
|
|
3337
|
-
}
|
|
3338
|
-
}
|
|
3339
|
-
});
|
|
3340
|
-
}
|
|
3341
|
-
}
|
|
3342
|
-
onScroll(event) {
|
|
3343
|
-
this.trackHeight = event.target.scrollHeight - event.target.offsetHeight;
|
|
3344
|
-
if (this.loadingFlag && (Math.floor(event.target.scrollTop / this.trackHeight * 100) > 50)) {
|
|
3345
|
-
this.loadingFlag = false;
|
|
3346
|
-
if (this.pageNumber < this.totalPages) {
|
|
3347
|
-
this.pageNumber = this.pageNumber + 1;
|
|
3348
|
-
this.getProducts();
|
|
3349
|
-
}
|
|
3350
|
-
else {
|
|
3351
|
-
this.loadingFlag = true;
|
|
3352
|
-
}
|
|
3353
|
-
}
|
|
3354
|
-
this.prevScrollPosition = event.target.scrollTop;
|
|
3355
|
-
}
|
|
3356
|
-
}
|
|
3357
|
-
AddOnProductsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AddOnProductsComponent, deps: [{ token: i1$1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.FormBuilder }, { token: i1$1.MatDialog }, { token: CommonService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3358
|
-
AddOnProductsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: AddOnProductsComponent, selector: "ngx-mat-add-on-products", viewQueries: [{ propertyName: "firstscrollableDiv", first: true, predicate: ["firstscrollableDiv"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"spinnerFlag\" class=\"OverlayDiv\">\r\n <div class=\"OverlayDivContent\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n</div>\r\n<div class=\"product-selector\">\r\n <mat-stepper labelPosition=\"bottom\" #stepper>\r\n <mat-step [stepControl]=\"form\">\r\n <form [formGroup]=\"form\">\r\n <ng-template matStepLabel>Select Products</ng-template>\r\n <div class=\"dropdown-selection\">\r\n <div class=\"row-one\">\r\n <mat-form-field>\r\n <mat-label>Product Category</mat-label>\r\n <input type=\"text\" matInput formControlName=\"productCategory\" [matAutocomplete]=\"auto3\">\r\n <mat-autocomplete #auto3=\"matAutocomplete\"\r\n (optionSelected)=\"onOptionSelected($event, 'category1')\">\r\n <mat-option *ngFor=\"let option of filteredCategories\"\r\n [value]=\"option\">{{option}}</mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field> \r\n\r\n <mat-form-field>\r\n <mat-label>Subcategory</mat-label>\r\n <input type=\"text\" matInput formControlName=\"productSubcategory\" [matAutocomplete]=\"auto4\">\r\n <mat-autocomplete #auto4=\"matAutocomplete\"\r\n (optionSelected)=\"onOptionSelected($event, 'subCategory')\">\r\n <mat-option *ngFor=\"let option of filteredSubCategories\"\r\n [value]=\"option\">{{option}}</mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div #firstscrollableDiv id=\"firstscrollableDiv\" class=\"new-class mat-elevation-z8 first-div\" (scroll)=\"onScroll($event)\">\r\n <table mat-table [dataSource]=\"dataSource\" class=\"mat-table abc\"\r\n *ngIf=\"dataSource && dataSource.data.length > 0; else noData\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <!-- <mat-checkbox (change)=\"$event ? masterToggle() : null\" [checked]=\"isAllSelected()\"\r\n [indeterminate]=\"isIndeterminate()\"></mat-checkbox> -->\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox color=\"primary\" (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? toggleSelection(row) : null\"\r\n [checked]=\"selection.isSelected(row)\"></mat-checkbox>\r\n </td> \r\n </ng-container> \r\n\r\n <ng-container matColumnDef=\"productName\">\r\n <th mat-header-cell *matHeaderCellDef> Product Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.text}} </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"price\" *ngIf=\"showPrice\">\r\n <th mat-header-cell *matHeaderCellDef> Price </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.price}} </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"addProductsColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: addProductsColumns;\"></tr>\r\n </table>\r\n <ng-template #noData>\r\n <div class=\"no-data-message\">\r\n No data found.\r\n </div>\r\n </ng-template>\r\n </div>\r\n <div class=\"row-summary\">\r\n <p>Rows: {{ getTotalRows() }} Selected: {{ getSelectedRowsCount() }}</p>\r\n </div>\r\n <div>\r\n <button mat-button [mat-dialog-close]=\"false\">Close</button>\r\n <button mat-button matStepperNext [disabled]=\"selection.selected.length ? false : true\">Next</button>\r\n </div>\r\n </form>\r\n </mat-step>\r\n <mat-step [stepControl]=\"form\">\r\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\r\n <ng-template matStepLabel>Edit/Save</ng-template>\r\n <div class=\"new-class mat-elevation-z8\">\r\n <table mat-table [dataSource]=\"selectedDataSource\"\r\n *ngIf=\"selectedDataSource && selectedDataSource.data.length > 0; else showBlank\">\r\n <ng-container matColumnDef=\"delete\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-button (click)=\"$event.stopPropagation();removeRow($event, element)\">\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Remove row\">delete</mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"productName\">\r\n <th mat-header-cell *matHeaderCellDef> Product Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.text}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"categoryName\" *ngIf=\"showCategory\">\r\n <th mat-header-cell *matHeaderCellDef> Category Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.category}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"subCategory\" *ngIf=\"subCategory\">\r\n <th mat-header-cell *matHeaderCellDef>Sub Category </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.subCategory}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"price\" *ngIf=\"showPrice\">\r\n <th mat-header-cell *matHeaderCellDef>Price</th>\r\n <td mat-cell *matCellDef=\"let element; let i = index\">\r\n <mat-form-field class=\"example-full-width select-price\">\r\n <mat-label>Price</mat-label>\r\n <input matInput [formControl]=\"selectedProducts.at(i).get('price')\"\r\n placeholder=\"Please enter price\">\r\n <mat-error *ngIf=\"selectedProducts.at(i).get('price').hasError('required')\">\r\n Price is required\r\n </mat-error>\r\n </mat-form-field>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"Quantity\" *ngIf=\"showQuantity\">\r\n <th mat-header-cell *matHeaderCellDef> Quantity </th>\r\n <td mat-cell *matCellDef=\"let element; let i = index\">\r\n <mat-form-field class=\"example-full-width select-qunatity\">\r\n <mat-label>Select quantity</mat-label>\r\n <input matInput [formControl]=\"selectedProducts.at(i).get('quantity')\"\r\n placeholder=\"Please enter quantity\">\r\n <mat-error *ngIf=\"selectedProducts.at(i).get('quantity').hasError('required')\">\r\n Quantity is required\r\n </mat-error>\r\n </mat-form-field>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"showAllproductsColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: showAllproductsColumns;\"></tr>\r\n </table>\r\n <ng-template #showBlank>\r\n <div class=\"no-data-message\">\r\n No data found.\r\n </div>\r\n </ng-template>\r\n </div>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button matStepperNext type=\"submit\">Add products</button>\r\n </div>\r\n </form>\r\n </mat-step>\r\n</mat-stepper>\r\n</div>", styles: [".dropdown-section{display:flex;flex-direction:column;gap:16px}.form-row{display:flex;gap:16px}mat-form-field{flex:1}.new-class.mat-elevation-z8{margin-top:20px;max-height:350px;overflow-y:auto;margin-bottom:20px}.mat-column-select{width:50px;text-align:center}.mat-header-cell,.mat-cell{text-align:center}button{align-self:flex-end;margin-top:20px}.row-summary{margin-top:20px;font-weight:700}.new-class td{border:1px solid #ddd;padding:10px}.new-class th{background-color:#f2f2f2;position:-webkit-sticky;position:sticky;top:0;transform:none;z-index:99;padding:10px}table{width:100%;border-collapse:collapse}.select-qunatity,.select-price{width:110px}.no-data-message{text-align:center;margin:20px 0;font-size:18px;color:#888}.mat-step-header.cdk-keyboard-focused,mat-step-header.cdk-program-focused,.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:transparent}.OverlayDiv{position:fixed;display:block;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:500;cursor:pointer}.OverlayDivContent{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4$5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i10.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i10.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i10.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i10.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i10.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i10.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i10.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i10.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i10.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i10.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i11.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i4$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i13.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i13.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i13.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i13.MatStepperNext, selector: "button[matStepperNext]", inputs: ["type"] }, { kind: "directive", type: i13.MatStepperPrevious, selector: "button[matStepperPrevious]", inputs: ["type"] }, { kind: "directive", type: i1$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i14.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i14.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }] });
|
|
3359
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AddOnProductsComponent, decorators: [{
|
|
3360
|
-
type: Component,
|
|
3361
|
-
args: [{ selector: 'ngx-mat-add-on-products', template: "<div *ngIf=\"spinnerFlag\" class=\"OverlayDiv\">\r\n <div class=\"OverlayDivContent\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n</div>\r\n<div class=\"product-selector\">\r\n <mat-stepper labelPosition=\"bottom\" #stepper>\r\n <mat-step [stepControl]=\"form\">\r\n <form [formGroup]=\"form\">\r\n <ng-template matStepLabel>Select Products</ng-template>\r\n <div class=\"dropdown-selection\">\r\n <div class=\"row-one\">\r\n <mat-form-field>\r\n <mat-label>Product Category</mat-label>\r\n <input type=\"text\" matInput formControlName=\"productCategory\" [matAutocomplete]=\"auto3\">\r\n <mat-autocomplete #auto3=\"matAutocomplete\"\r\n (optionSelected)=\"onOptionSelected($event, 'category1')\">\r\n <mat-option *ngFor=\"let option of filteredCategories\"\r\n [value]=\"option\">{{option}}</mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field> \r\n\r\n <mat-form-field>\r\n <mat-label>Subcategory</mat-label>\r\n <input type=\"text\" matInput formControlName=\"productSubcategory\" [matAutocomplete]=\"auto4\">\r\n <mat-autocomplete #auto4=\"matAutocomplete\"\r\n (optionSelected)=\"onOptionSelected($event, 'subCategory')\">\r\n <mat-option *ngFor=\"let option of filteredSubCategories\"\r\n [value]=\"option\">{{option}}</mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div #firstscrollableDiv id=\"firstscrollableDiv\" class=\"new-class mat-elevation-z8 first-div\" (scroll)=\"onScroll($event)\">\r\n <table mat-table [dataSource]=\"dataSource\" class=\"mat-table abc\"\r\n *ngIf=\"dataSource && dataSource.data.length > 0; else noData\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <!-- <mat-checkbox (change)=\"$event ? masterToggle() : null\" [checked]=\"isAllSelected()\"\r\n [indeterminate]=\"isIndeterminate()\"></mat-checkbox> -->\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox color=\"primary\" (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? toggleSelection(row) : null\"\r\n [checked]=\"selection.isSelected(row)\"></mat-checkbox>\r\n </td> \r\n </ng-container> \r\n\r\n <ng-container matColumnDef=\"productName\">\r\n <th mat-header-cell *matHeaderCellDef> Product Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.text}} </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"price\" *ngIf=\"showPrice\">\r\n <th mat-header-cell *matHeaderCellDef> Price </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.price}} </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"addProductsColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: addProductsColumns;\"></tr>\r\n </table>\r\n <ng-template #noData>\r\n <div class=\"no-data-message\">\r\n No data found.\r\n </div>\r\n </ng-template>\r\n </div>\r\n <div class=\"row-summary\">\r\n <p>Rows: {{ getTotalRows() }} Selected: {{ getSelectedRowsCount() }}</p>\r\n </div>\r\n <div>\r\n <button mat-button [mat-dialog-close]=\"false\">Close</button>\r\n <button mat-button matStepperNext [disabled]=\"selection.selected.length ? false : true\">Next</button>\r\n </div>\r\n </form>\r\n </mat-step>\r\n <mat-step [stepControl]=\"form\">\r\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\r\n <ng-template matStepLabel>Edit/Save</ng-template>\r\n <div class=\"new-class mat-elevation-z8\">\r\n <table mat-table [dataSource]=\"selectedDataSource\"\r\n *ngIf=\"selectedDataSource && selectedDataSource.data.length > 0; else showBlank\">\r\n <ng-container matColumnDef=\"delete\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-button (click)=\"$event.stopPropagation();removeRow($event, element)\">\r\n <mat-icon aria-hidden=\"false\" aria-label=\"Remove row\">delete</mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"productName\">\r\n <th mat-header-cell *matHeaderCellDef> Product Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.text}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"categoryName\" *ngIf=\"showCategory\">\r\n <th mat-header-cell *matHeaderCellDef> Category Name </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.category}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"subCategory\" *ngIf=\"subCategory\">\r\n <th mat-header-cell *matHeaderCellDef>Sub Category </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element.subCategory}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"price\" *ngIf=\"showPrice\">\r\n <th mat-header-cell *matHeaderCellDef>Price</th>\r\n <td mat-cell *matCellDef=\"let element; let i = index\">\r\n <mat-form-field class=\"example-full-width select-price\">\r\n <mat-label>Price</mat-label>\r\n <input matInput [formControl]=\"selectedProducts.at(i).get('price')\"\r\n placeholder=\"Please enter price\">\r\n <mat-error *ngIf=\"selectedProducts.at(i).get('price').hasError('required')\">\r\n Price is required\r\n </mat-error>\r\n </mat-form-field>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"Quantity\" *ngIf=\"showQuantity\">\r\n <th mat-header-cell *matHeaderCellDef> Quantity </th>\r\n <td mat-cell *matCellDef=\"let element; let i = index\">\r\n <mat-form-field class=\"example-full-width select-qunatity\">\r\n <mat-label>Select quantity</mat-label>\r\n <input matInput [formControl]=\"selectedProducts.at(i).get('quantity')\"\r\n placeholder=\"Please enter quantity\">\r\n <mat-error *ngIf=\"selectedProducts.at(i).get('quantity').hasError('required')\">\r\n Quantity is required\r\n </mat-error>\r\n </mat-form-field>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"showAllproductsColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: showAllproductsColumns;\"></tr>\r\n </table>\r\n <ng-template #showBlank>\r\n <div class=\"no-data-message\">\r\n No data found.\r\n </div>\r\n </ng-template>\r\n </div>\r\n <div>\r\n <button mat-button matStepperPrevious>Back</button>\r\n <button mat-button matStepperNext type=\"submit\">Add products</button>\r\n </div>\r\n </form>\r\n </mat-step>\r\n</mat-stepper>\r\n</div>", styles: [".dropdown-section{display:flex;flex-direction:column;gap:16px}.form-row{display:flex;gap:16px}mat-form-field{flex:1}.new-class.mat-elevation-z8{margin-top:20px;max-height:350px;overflow-y:auto;margin-bottom:20px}.mat-column-select{width:50px;text-align:center}.mat-header-cell,.mat-cell{text-align:center}button{align-self:flex-end;margin-top:20px}.row-summary{margin-top:20px;font-weight:700}.new-class td{border:1px solid #ddd;padding:10px}.new-class th{background-color:#f2f2f2;position:-webkit-sticky;position:sticky;top:0;transform:none;z-index:99;padding:10px}table{width:100%;border-collapse:collapse}.select-qunatity,.select-price{width:110px}.no-data-message{text-align:center;margin:20px 0;font-size:18px;color:#888}.mat-step-header.cdk-keyboard-focused,mat-step-header.cdk-program-focused,.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:transparent}.OverlayDiv{position:fixed;display:block;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:500;cursor:pointer}.OverlayDivContent{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}\n"] }]
|
|
3362
|
-
}], ctorParameters: function () {
|
|
3363
|
-
return [{ type: i1$1.MatDialogRef }, { type: undefined, decorators: [{
|
|
3364
|
-
type: Inject,
|
|
3365
|
-
args: [MAT_DIALOG_DATA]
|
|
3366
|
-
}] }, { type: i2.FormBuilder }, { type: i1$1.MatDialog }, { type: CommonService }];
|
|
3367
|
-
}, propDecorators: { firstscrollableDiv: [{
|
|
3368
|
-
type: ViewChild,
|
|
3369
|
-
args: ['firstscrollableDiv']
|
|
3370
|
-
}] } });
|
|
3371
|
-
|
|
3372
|
-
const ELEMENT_DATA = [];
|
|
3373
3020
|
class MaterialDataGridComponent extends MaterialNestedComponent {
|
|
3374
|
-
constructor(element, ref, dialog
|
|
3021
|
+
constructor(element, ref, dialog) {
|
|
3375
3022
|
super(element, ref);
|
|
3376
3023
|
this.element = element;
|
|
3377
3024
|
this.ref = ref;
|
|
3378
3025
|
this.dialog = dialog;
|
|
3379
|
-
this.commonService = commonService;
|
|
3380
3026
|
this.dataSource = new MatTableDataSource();
|
|
3381
|
-
this.dataSourceNew = ELEMENT_DATA;
|
|
3382
|
-
this.displayedColumnsNew = ['productName', 'category', 'subCategory', 'quantity', 'price'];
|
|
3383
|
-
this.showNewProductPicker = false;
|
|
3384
|
-
this.showCategory = false;
|
|
3385
|
-
this.showSubcategory = false;
|
|
3386
|
-
this.showPrice = true;
|
|
3387
|
-
this.showQuantity = true;
|
|
3388
|
-
this.category = '';
|
|
3389
|
-
this.subCategory = '';
|
|
3390
|
-
this.hasInitialized = false;
|
|
3391
3027
|
}
|
|
3392
3028
|
getColumnLabel(column) {
|
|
3393
3029
|
return column.label || column.key;
|
|
3394
3030
|
}
|
|
3395
|
-
checkIsAttributeTrue(newProductPickerFlag, attributeName) {
|
|
3396
|
-
return newProductPickerFlag && Object.keys(newProductPickerFlag).some(key => key.toLocaleLowerCase() === attributeName.toLowerCase() &&
|
|
3397
|
-
newProductPickerFlag[key].toLowerCase() === "true");
|
|
3398
|
-
}
|
|
3399
|
-
// ngOnInit(): void {
|
|
3400
|
-
// }
|
|
3401
3031
|
setInstance(instance) {
|
|
3402
|
-
var _a;
|
|
3403
|
-
const newProductPickerFlag = (_a = instance === null || instance === void 0 ? void 0 : instance.component) === null || _a === void 0 ? void 0 : _a.attributes;
|
|
3404
|
-
this.showNewProductPicker = this.checkIsAttributeTrue(newProductPickerFlag, "newproductpicker");
|
|
3405
|
-
this.showCategory = this.checkIsAttributeTrue(newProductPickerFlag, "showCategory");
|
|
3406
|
-
this.showSubcategory = this.checkIsAttributeTrue(newProductPickerFlag, "showSubcategory");
|
|
3407
|
-
this.showPrice = this.checkIsAttributeTrue(newProductPickerFlag, "showPrice");
|
|
3408
|
-
this.showQuantity = this.checkIsAttributeTrue(newProductPickerFlag, "showQuantity");
|
|
3409
3032
|
super.setInstance(instance);
|
|
3410
|
-
|
|
3411
|
-
if (!this.showCategory) {
|
|
3412
|
-
this.removeColumn('category');
|
|
3413
|
-
}
|
|
3414
|
-
if (!this.showQuantity) {
|
|
3415
|
-
this.removeColumn('quantity');
|
|
3416
|
-
}
|
|
3417
|
-
if (!this.showPrice) {
|
|
3418
|
-
this.removeColumn('price');
|
|
3419
|
-
}
|
|
3420
|
-
if (!this.showSubcategory) {
|
|
3421
|
-
this.removeColumn('subCategory');
|
|
3422
|
-
}
|
|
3423
|
-
const checkProducts = JSON.parse(localStorage.getItem('dealData')) || [];
|
|
3424
|
-
const dealId = checkProducts === null || checkProducts === void 0 ? void 0 : checkProducts.dealId;
|
|
3425
|
-
const storedData = localStorage.getItem(`selectedProducts-${dealId}`);
|
|
3426
|
-
if (storedData === null || storedData === void 0 ? void 0 : storedData.length) {
|
|
3427
|
-
this.dataSourceNew = JSON.parse(storedData);
|
|
3428
|
-
}
|
|
3429
|
-
else {
|
|
3430
|
-
this.dataSourceNew = [];
|
|
3431
|
-
}
|
|
3432
|
-
// Set flag to true to prevent further execution
|
|
3433
|
-
this.hasInitialized = true;
|
|
3434
|
-
}
|
|
3435
|
-
else {
|
|
3436
|
-
this.dataSource.data = instance.dataValue;
|
|
3437
|
-
}
|
|
3033
|
+
this.dataSource.data = instance.dataValue;
|
|
3438
3034
|
this.columns = {};
|
|
3439
3035
|
this.displayedColumns = [];
|
|
3440
3036
|
this.formColumns = [];
|
|
@@ -3462,10 +3058,7 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
|
|
|
3462
3058
|
return viewContainer ? viewContainer : null;
|
|
3463
3059
|
};
|
|
3464
3060
|
}
|
|
3465
|
-
|
|
3466
|
-
this.displayedColumnsNew = this.displayedColumnsNew.filter(column => column !== columnName);
|
|
3467
|
-
}
|
|
3468
|
-
addAnotherOld() {
|
|
3061
|
+
addAnother() {
|
|
3469
3062
|
this.checkRowsNumber();
|
|
3470
3063
|
this.instance.addRow();
|
|
3471
3064
|
if (this.dataSource.data.length < this.instance.rows.length) {
|
|
@@ -3473,60 +3066,6 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
|
|
|
3473
3066
|
}
|
|
3474
3067
|
this.dataSource.data = [...this.dataSource.data];
|
|
3475
3068
|
}
|
|
3476
|
-
addAnother() {
|
|
3477
|
-
var _a, _b;
|
|
3478
|
-
if (this.showNewProductPicker) {
|
|
3479
|
-
const savedData = JSON.parse(localStorage.getItem('saveCat'));
|
|
3480
|
-
const checkProducts = JSON.parse(localStorage.getItem('dealData')) || [];
|
|
3481
|
-
// Use optional chaining and nullish coalescing to set the values
|
|
3482
|
-
this.category = (_a = savedData === null || savedData === void 0 ? void 0 : savedData.category) !== null && _a !== void 0 ? _a : this.category;
|
|
3483
|
-
this.subCategory = (_b = savedData === null || savedData === void 0 ? void 0 : savedData.subCategory) !== null && _b !== void 0 ? _b : this.subCategory;
|
|
3484
|
-
const diologeRef = this.dialog.open(AddOnProductsComponent, {
|
|
3485
|
-
disableClose: true,
|
|
3486
|
-
width: '90%',
|
|
3487
|
-
maxWidth: '900px',
|
|
3488
|
-
autoFocus: false,
|
|
3489
|
-
data: { attributesFlag: { showNewProductPicker: this.showNewProductPicker, showCategory: this.showCategory, showSubcategory: this.showSubcategory, showPrice: this.showPrice, showQuantity: this.showQuantity }, selectedProducts: this.dataSourceNew, category: this.category, subCategory: this.subCategory }
|
|
3490
|
-
})
|
|
3491
|
-
.afterClosed().subscribe(response => {
|
|
3492
|
-
var _a;
|
|
3493
|
-
if ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.status) {
|
|
3494
|
-
if (!this.showCategory) {
|
|
3495
|
-
this.removeColumn('category');
|
|
3496
|
-
}
|
|
3497
|
-
if (!this.showQuantity) {
|
|
3498
|
-
this.removeColumn('quantity');
|
|
3499
|
-
}
|
|
3500
|
-
if (!this.showPrice) {
|
|
3501
|
-
this.removeColumn('price');
|
|
3502
|
-
}
|
|
3503
|
-
if (!this.showSubcategory) {
|
|
3504
|
-
this.removeColumn('subCategory');
|
|
3505
|
-
}
|
|
3506
|
-
//localStorage.setItem('selectedProducts', JSON.stringify(response.data.items.selectedProducts))
|
|
3507
|
-
const dealId = checkProducts === null || checkProducts === void 0 ? void 0 : checkProducts.dealId;
|
|
3508
|
-
localStorage.setItem(`selectedProducts-${dealId}`, JSON.stringify(response.data.items.selectedProducts));
|
|
3509
|
-
this.dataSourceNew = response.data.items.selectedProducts;
|
|
3510
|
-
this.category = response.data.items.productCategory;
|
|
3511
|
-
this.subCategory = response.data.items.productSubcategory;
|
|
3512
|
-
const catObject = {
|
|
3513
|
-
category: this.category,
|
|
3514
|
-
subCategory: this.subCategory
|
|
3515
|
-
};
|
|
3516
|
-
localStorage.setItem('saveCat', JSON.stringify(catObject));
|
|
3517
|
-
this.instance.component.defaultValue = response.data.items.selectedProducts;
|
|
3518
|
-
}
|
|
3519
|
-
});
|
|
3520
|
-
}
|
|
3521
|
-
else {
|
|
3522
|
-
this.checkRowsNumber();
|
|
3523
|
-
this.instance.addRow();
|
|
3524
|
-
if (this.dataSource.data.length < this.instance.rows.length) {
|
|
3525
|
-
this.dataSource.data.push({});
|
|
3526
|
-
}
|
|
3527
|
-
this.dataSource.data = [...this.dataSource.data];
|
|
3528
|
-
}
|
|
3529
|
-
}
|
|
3530
3069
|
checkRowsNumber() {
|
|
3531
3070
|
while (this.instance.rows.length < this.dataSource.data.length) {
|
|
3532
3071
|
this.instance.addRow();
|
|
@@ -3577,7 +3116,7 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
|
|
|
3577
3116
|
super.setValue(value);
|
|
3578
3117
|
}
|
|
3579
3118
|
}
|
|
3580
|
-
MaterialDataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialDataGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$
|
|
3119
|
+
MaterialDataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialDataGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$2.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
3581
3120
|
MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MaterialDataGridComponent, selector: "mat-formio-datagrid", usesInheritance: true, ngImport: i0, template: `
|
|
3582
3121
|
<mat-formio-form-field [instance]="instance"
|
|
3583
3122
|
[componentTemplate]="componentTemplate"
|
|
@@ -3596,8 +3135,6 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
|
3596
3135
|
{{instance.component.addAnother || 'Add Another'}}
|
|
3597
3136
|
</button>
|
|
3598
3137
|
</mat-card-actions>
|
|
3599
|
-
<ng-container *ngIf="!showNewProductPicker">
|
|
3600
|
-
<div class="mat-elevation-z8">
|
|
3601
3138
|
<table
|
|
3602
3139
|
mat-table
|
|
3603
3140
|
[dataSource]="dataSource"
|
|
@@ -3606,8 +3143,7 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
|
3606
3143
|
cdkDropList
|
|
3607
3144
|
[cdkDropListData]="dataSource"
|
|
3608
3145
|
(cdkDropListDropped)="dropTable($event)">
|
|
3609
|
-
|
|
3610
|
-
|
|
3146
|
+
>
|
|
3611
3147
|
<ng-container *ngFor="let column of formColumns" [matColumnDef]="column">
|
|
3612
3148
|
<th mat-header-cell *matHeaderCellDef>{{ getColumnLabel(columns[column]) }}</th>
|
|
3613
3149
|
<td mat-cell *matCellDef="let i = index;" [attr.rowIndex]="i" [attr.component]="column">
|
|
@@ -3637,51 +3173,6 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
|
3637
3173
|
<tr class="datagrid-row" mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
|
|
3638
3174
|
</div>
|
|
3639
3175
|
</table>
|
|
3640
|
-
</div>
|
|
3641
|
-
</ng-container>
|
|
3642
|
-
|
|
3643
|
-
<table mat-table [dataSource]="dataSourceNew" class="mat-table" *ngIf="dataSourceNew.length > 0 && showNewProductPicker; else noData" >
|
|
3644
|
-
<!-- Product Name Column -->
|
|
3645
|
-
<ng-container matColumnDef="productName">
|
|
3646
|
-
<th mat-header-cell *matHeaderCellDef> Product Name </th>
|
|
3647
|
-
<td mat-cell *matCellDef="let element"> {{element.text}} </td>
|
|
3648
|
-
</ng-container>
|
|
3649
|
-
|
|
3650
|
-
<!-- Quantity Column -->
|
|
3651
|
-
<ng-container matColumnDef="quantity" *ngIf="showQuantity">
|
|
3652
|
-
<th mat-header-cell *matHeaderCellDef> Quantity </th>
|
|
3653
|
-
<td mat-cell *matCellDef="let element"> {{element.quantity}} </td>
|
|
3654
|
-
</ng-container>
|
|
3655
|
-
|
|
3656
|
-
<!-- Price Column -->
|
|
3657
|
-
<ng-container matColumnDef="price" *ngIf="showPrice">
|
|
3658
|
-
<th mat-header-cell *matHeaderCellDef> Price </th>
|
|
3659
|
-
<td mat-cell *matCellDef="let element"> {{element.price}} </td>
|
|
3660
|
-
</ng-container>
|
|
3661
|
-
|
|
3662
|
-
<!-- Category Column -->
|
|
3663
|
-
<ng-container matColumnDef="category" *ngIf="showCategory">
|
|
3664
|
-
<th mat-header-cell *matHeaderCellDef> Category </th>
|
|
3665
|
-
<td mat-cell *matCellDef="let element"> {{element.category}} </td>
|
|
3666
|
-
</ng-container>
|
|
3667
|
-
|
|
3668
|
-
<!-- Category Column -->
|
|
3669
|
-
<ng-container matColumnDef="subCategory" *ngIf="showSubcategory">
|
|
3670
|
-
<th mat-header-cell *matHeaderCellDef> Sub Category </th>
|
|
3671
|
-
<td mat-cell *matCellDef="let element"> {{element.subCategory}} </td>
|
|
3672
|
-
</ng-container>
|
|
3673
|
-
|
|
3674
|
-
<tr mat-header-row *matHeaderRowDef="displayedColumnsNew"></tr>
|
|
3675
|
-
<tr mat-row *matRowDef="let row; columns: displayedColumnsNew;"></tr>
|
|
3676
|
-
</table>
|
|
3677
|
-
<ng-template #noData>
|
|
3678
|
-
<div class="no-data-message" *ngIf="showNewProductPicker">
|
|
3679
|
-
No product found please add some products.
|
|
3680
|
-
</div>
|
|
3681
|
-
</ng-template>
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
3176
|
</mat-card-content>
|
|
3686
3177
|
<mat-card-actions *ngIf="instance.hasAddButton() && instance.component.addAnotherPosition !== 'top'">
|
|
3687
3178
|
<button mat-raised-button color="primary" (click)="addAnother()">
|
|
@@ -3697,7 +3188,7 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
|
3697
3188
|
<span [instance]="instance" matFormioLabel></span>
|
|
3698
3189
|
</mat-card-title>
|
|
3699
3190
|
</ng-template>
|
|
3700
|
-
`, isInline: true, styles: [".datagrid-row{height:auto}
|
|
3191
|
+
`, isInline: true, styles: [".datagrid-row{height:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4$7.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i4$7.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i4$7.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i4$7.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i4$7.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i4$7.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i4$7.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i4$7.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i4$7.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i4$7.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i4$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "component", type: i4.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i4.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i4.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i8.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i8.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i8.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: FormioFormFieldComponent, selector: "mat-formio-form-field", inputs: ["labelTemplate", "renderTopLabel", "showDescription", "renderElementOnly", "instance", "componentTemplate"] }, { kind: "component", type: LabelComponent, selector: "span[matFormioLabel]", inputs: ["instance"] }] });
|
|
3701
3192
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialDataGridComponent, decorators: [{
|
|
3702
3193
|
type: Component,
|
|
3703
3194
|
args: [{ selector: 'mat-formio-datagrid', template: `
|
|
@@ -3718,8 +3209,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
3718
3209
|
{{instance.component.addAnother || 'Add Another'}}
|
|
3719
3210
|
</button>
|
|
3720
3211
|
</mat-card-actions>
|
|
3721
|
-
<ng-container *ngIf="!showNewProductPicker">
|
|
3722
|
-
<div class="mat-elevation-z8">
|
|
3723
3212
|
<table
|
|
3724
3213
|
mat-table
|
|
3725
3214
|
[dataSource]="dataSource"
|
|
@@ -3728,8 +3217,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
3728
3217
|
cdkDropList
|
|
3729
3218
|
[cdkDropListData]="dataSource"
|
|
3730
3219
|
(cdkDropListDropped)="dropTable($event)">
|
|
3731
|
-
|
|
3732
|
-
|
|
3220
|
+
>
|
|
3733
3221
|
<ng-container *ngFor="let column of formColumns" [matColumnDef]="column">
|
|
3734
3222
|
<th mat-header-cell *matHeaderCellDef>{{ getColumnLabel(columns[column]) }}</th>
|
|
3735
3223
|
<td mat-cell *matCellDef="let i = index;" [attr.rowIndex]="i" [attr.component]="column">
|
|
@@ -3759,51 +3247,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
3759
3247
|
<tr class="datagrid-row" mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
|
|
3760
3248
|
</div>
|
|
3761
3249
|
</table>
|
|
3762
|
-
</div>
|
|
3763
|
-
</ng-container>
|
|
3764
|
-
|
|
3765
|
-
<table mat-table [dataSource]="dataSourceNew" class="mat-table" *ngIf="dataSourceNew.length > 0 && showNewProductPicker; else noData" >
|
|
3766
|
-
<!-- Product Name Column -->
|
|
3767
|
-
<ng-container matColumnDef="productName">
|
|
3768
|
-
<th mat-header-cell *matHeaderCellDef> Product Name </th>
|
|
3769
|
-
<td mat-cell *matCellDef="let element"> {{element.text}} </td>
|
|
3770
|
-
</ng-container>
|
|
3771
|
-
|
|
3772
|
-
<!-- Quantity Column -->
|
|
3773
|
-
<ng-container matColumnDef="quantity" *ngIf="showQuantity">
|
|
3774
|
-
<th mat-header-cell *matHeaderCellDef> Quantity </th>
|
|
3775
|
-
<td mat-cell *matCellDef="let element"> {{element.quantity}} </td>
|
|
3776
|
-
</ng-container>
|
|
3777
|
-
|
|
3778
|
-
<!-- Price Column -->
|
|
3779
|
-
<ng-container matColumnDef="price" *ngIf="showPrice">
|
|
3780
|
-
<th mat-header-cell *matHeaderCellDef> Price </th>
|
|
3781
|
-
<td mat-cell *matCellDef="let element"> {{element.price}} </td>
|
|
3782
|
-
</ng-container>
|
|
3783
|
-
|
|
3784
|
-
<!-- Category Column -->
|
|
3785
|
-
<ng-container matColumnDef="category" *ngIf="showCategory">
|
|
3786
|
-
<th mat-header-cell *matHeaderCellDef> Category </th>
|
|
3787
|
-
<td mat-cell *matCellDef="let element"> {{element.category}} </td>
|
|
3788
|
-
</ng-container>
|
|
3789
|
-
|
|
3790
|
-
<!-- Category Column -->
|
|
3791
|
-
<ng-container matColumnDef="subCategory" *ngIf="showSubcategory">
|
|
3792
|
-
<th mat-header-cell *matHeaderCellDef> Sub Category </th>
|
|
3793
|
-
<td mat-cell *matCellDef="let element"> {{element.subCategory}} </td>
|
|
3794
|
-
</ng-container>
|
|
3795
|
-
|
|
3796
|
-
<tr mat-header-row *matHeaderRowDef="displayedColumnsNew"></tr>
|
|
3797
|
-
<tr mat-row *matRowDef="let row; columns: displayedColumnsNew;"></tr>
|
|
3798
|
-
</table>
|
|
3799
|
-
<ng-template #noData>
|
|
3800
|
-
<div class="no-data-message" *ngIf="showNewProductPicker">
|
|
3801
|
-
No product found please add some products.
|
|
3802
|
-
</div>
|
|
3803
|
-
</ng-template>
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
3250
|
</mat-card-content>
|
|
3808
3251
|
<mat-card-actions *ngIf="instance.hasAddButton() && instance.component.addAnotherPosition !== 'top'">
|
|
3809
3252
|
<button mat-raised-button color="primary" (click)="addAnother()">
|
|
@@ -3819,8 +3262,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
3819
3262
|
<span [instance]="instance" matFormioLabel></span>
|
|
3820
3263
|
</mat-card-title>
|
|
3821
3264
|
</ng-template>
|
|
3822
|
-
`, styles: [".datagrid-row{height:auto}
|
|
3823
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$
|
|
3265
|
+
`, styles: [".datagrid-row{height:auto}\n"] }]
|
|
3266
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$2.MatDialog }]; } });
|
|
3824
3267
|
DataGridComponent.MaterialComponent = MaterialDataGridComponent;
|
|
3825
3268
|
|
|
3826
3269
|
var EditRowState;
|
|
@@ -4203,7 +3646,7 @@ MaterialWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
|
|
|
4203
3646
|
<button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
|
|
4204
3647
|
</div>
|
|
4205
3648
|
</mat-step>
|
|
4206
|
-
</mat-horizontal-stepper>`, isInline: true, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type:
|
|
3649
|
+
</mat-horizontal-stepper>`, isInline: true, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "component", type: i3$3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }] });
|
|
4207
3650
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialWizardComponent, decorators: [{
|
|
4208
3651
|
type: Component,
|
|
4209
3652
|
args: [{ selector: 'mat-formio-wizard', template: `
|
|
@@ -4373,7 +3816,7 @@ FormioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
|
|
|
4373
3816
|
<div fxLayout="column" fxLayoutGap="1em">
|
|
4374
3817
|
<ng-template #formio></ng-template>
|
|
4375
3818
|
</div>
|
|
4376
|
-
`, isInline: true, styles: [".alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:.5rem;border:1px solid transparent;border-radius:.25rem}::ng-deep mat-card{box-sizing:border-box;-moz-box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type:
|
|
3819
|
+
`, isInline: true, styles: [".alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:.5rem;border:1px solid transparent;border-radius:.25rem}::ng-deep mat-card{box-sizing:border-box;-moz-box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i5.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }] });
|
|
4377
3820
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FormioComponent, decorators: [{
|
|
4378
3821
|
type: Component,
|
|
4379
3822
|
args: [{ selector: 'mat-formio', template: `
|
|
@@ -4445,8 +3888,7 @@ NgxRenderMaterialFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.
|
|
|
4445
3888
|
FormioFormFieldComponent,
|
|
4446
3889
|
LabelComponent,
|
|
4447
3890
|
MaskDirective,
|
|
4448
|
-
ConfirmationDialogComponent,
|
|
4449
|
-
AddOnProductsComponent], imports: [CommonModule,
|
|
3891
|
+
ConfirmationDialogComponent], imports: [CommonModule,
|
|
4450
3892
|
FormsModule,
|
|
4451
3893
|
ReactiveFormsModule,
|
|
4452
3894
|
MatInputModule,
|
|
@@ -4474,9 +3916,7 @@ NgxRenderMaterialFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.
|
|
|
4474
3916
|
ScrollingModule,
|
|
4475
3917
|
NgxMatSelectSearchModule,
|
|
4476
3918
|
MatDialogModule,
|
|
4477
|
-
HttpClientModule,
|
|
4478
|
-
MatAutocompleteModule], exports: [MatAutocompleteModule,
|
|
4479
|
-
NgxRenderMaterialFormsComponent,
|
|
3919
|
+
HttpClientModule], exports: [NgxRenderMaterialFormsComponent,
|
|
4480
3920
|
FormioComponent,
|
|
4481
3921
|
MatInputModule,
|
|
4482
3922
|
MatFormFieldModule,
|
|
@@ -4530,9 +3970,7 @@ NgxRenderMaterialFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.
|
|
|
4530
3970
|
ScrollingModule,
|
|
4531
3971
|
NgxMatSelectSearchModule,
|
|
4532
3972
|
MatDialogModule,
|
|
4533
|
-
HttpClientModule,
|
|
4534
|
-
MatAutocompleteModule, MatAutocompleteModule,
|
|
4535
|
-
MatInputModule,
|
|
3973
|
+
HttpClientModule, MatInputModule,
|
|
4536
3974
|
MatFormFieldModule,
|
|
4537
3975
|
MatCheckboxModule,
|
|
4538
3976
|
MatRadioModule,
|
|
@@ -4600,8 +4038,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
4600
4038
|
FormioFormFieldComponent,
|
|
4601
4039
|
LabelComponent,
|
|
4602
4040
|
MaskDirective,
|
|
4603
|
-
ConfirmationDialogComponent
|
|
4604
|
-
AddOnProductsComponent
|
|
4041
|
+
ConfirmationDialogComponent
|
|
4605
4042
|
],
|
|
4606
4043
|
imports: [
|
|
4607
4044
|
CommonModule,
|
|
@@ -4632,11 +4069,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
4632
4069
|
ScrollingModule,
|
|
4633
4070
|
NgxMatSelectSearchModule,
|
|
4634
4071
|
MatDialogModule,
|
|
4635
|
-
HttpClientModule
|
|
4636
|
-
MatAutocompleteModule
|
|
4072
|
+
HttpClientModule
|
|
4637
4073
|
],
|
|
4638
4074
|
exports: [
|
|
4639
|
-
MatAutocompleteModule,
|
|
4640
4075
|
NgxRenderMaterialFormsComponent,
|
|
4641
4076
|
FormioComponent,
|
|
4642
4077
|
MatInputModule,
|