ngx-render-material-forms 1.4.5 → 1.4.6

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.
@@ -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$2 from '@angular/common/http';
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, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
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 i10 from '@angular/material/table';
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 i11 from '@angular/material/progress-spinner';
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$1 from '@angular/material/dialog';
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,7 +81,7 @@ 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, startWith, map } from 'rxjs/operators';
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';
@@ -92,15 +90,14 @@ import WellComponent from 'formiojs/components/well/Well.js';
92
90
  import DataGridComponent from 'formiojs/components/datagrid/DataGrid.js';
93
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(element, ref, dialog) {
983
- super(element, ref);
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: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
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 && instance.component.label != 'Click to add Products'\"\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\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"] }] });
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 && instance.component.label != 'Click to add Products'\"\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\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"] }]
1062
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.MatDialog }]; } });
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 {
@@ -2637,7 +2631,7 @@ class MaterialSelectComponent extends MaterialComponent {
2637
2631
  return item ? item.value : null;
2638
2632
  }
2639
2633
  loadData(pageNumber, pageSize, searchQuery) {
2640
- const paramsData = JSON.parse(localStorage.getItem('productPickerParams'));
2634
+ const paramsData = JSON.parse(localStorage.getItem('productPicker'));
2641
2635
  const includeDescription = this.getValueByKey(paramsData, 'includeDescription');
2642
2636
  const vendorId = this.getValueByKey(paramsData, 'vendorId');
2643
2637
  const onlyActive = this.getValueByKey(paramsData, 'onlyActive');
@@ -2756,7 +2750,7 @@ class MaterialSelectComponent extends MaterialComponent {
2756
2750
  if (this.instance.component.key.toLowerCase() === 'vendorproductid') {
2757
2751
  this.selectElem.openedChange.subscribe((isOpen) => {
2758
2752
  if (isOpen) {
2759
- this.pageNumber = 2;
2753
+ this.pageNumber = 1;
2760
2754
  this.pageSize = 20;
2761
2755
  this.searchQuery = '';
2762
2756
  this.searching = false;
@@ -2819,7 +2813,7 @@ class MaterialSelectComponent extends MaterialComponent {
2819
2813
  return _.isEqual(o1, o2);
2820
2814
  }
2821
2815
  }
2822
- 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$2.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
2816
+ 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 });
2823
2817
  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: `
2824
2818
  <mat-formio-form-field [instance]="instance" [componentTemplate]="componentTemplate"></mat-formio-form-field>
2825
2819
  <ng-template #componentTemplate let-hasLabel>
@@ -2904,7 +2898,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
2904
2898
  </mat-form-field>
2905
2899
  </ng-template>
2906
2900
  `, 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"] }]
2907
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$2.HttpClient }]; }, propDecorators: { multiSelect: [{
2901
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.HttpClient }]; }, propDecorators: { multiSelect: [{
2908
2902
  type: ViewChild,
2909
2903
  args: ['multiSelect', { static: true }]
2910
2904
  }], selectElem: [{
@@ -2963,404 +2957,16 @@ class ConfirmationDialogComponent {
2963
2957
  ngOnInit() {
2964
2958
  }
2965
2959
  }
2966
- ConfirmationDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ConfirmationDialogComponent, deps: [{ token: i1$1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
2967
- 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$1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] });
2960
+ 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 });
2961
+ 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"] }] });
2968
2962
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
2969
2963
  type: Component,
2970
2964
  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"] }]
2971
- }], ctorParameters: function () { return [{ type: i1$1.MatDialogRef }, { type: undefined, decorators: [{
2965
+ }], ctorParameters: function () { return [{ type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
2972
2966
  type: Inject,
2973
2967
  args: [MAT_DIALOG_DATA]
2974
2968
  }] }]; } });
2975
2969
 
2976
- class CommonService {
2977
- constructor(http) {
2978
- this.http = http;
2979
- this.holy = '';
2980
- this.grail = '';
2981
- this.holy = CryptoJS.enc.Base64.parse('8F/2+T2NXqUBQERR12R4sw==');
2982
- this.grail = CryptoJS.enc.Base64.parse('yE0CgQbYzK5wqeoKTVzhOQ==');
2983
- this.paramsData = JSON.parse(localStorage.getItem('productPickerParams'));
2984
- this.currentUser = JSON.parse(localStorage.getItem('currentUser'));
2985
- }
2986
- scrumble(msg) {
2987
- if (!isNullOrUndefined(msg)) {
2988
- var conceal = this.getcampaign(msg, this.holy, this.grail);
2989
- var sha256 = CryptoJS.HmacSHA256(CryptoJS.enc.Base64.stringify(this.grail) + conceal.toString(), CryptoJS.enc.Base64.stringify(this.holy));
2990
- var hashInBase64 = CryptoJS.enc.Base64.stringify(sha256);
2991
- let keyValue = {
2992
- "value": conceal.toString(),
2993
- "mac": hashInBase64
2994
- };
2995
- var result = JSON.stringify(keyValue);
2996
- var jumbled = CryptoJS.enc.Utf8.parse(result);
2997
- return CryptoJS.enc.Base64.stringify(jumbled);
2998
- }
2999
- }
3000
- getcampaign(data, holy, grail) {
3001
- return CryptoJS.AES.encrypt(data.toString(), holy, {
3002
- blockSize: 128,
3003
- iv: grail,
3004
- mode: CryptoJS.mode.CBC,
3005
- padding: CryptoJS.pad.Pkcs7
3006
- });
3007
- }
3008
- getBaseApiUrl() {
3009
- const baseUrlMapping = {
3010
- 'localhost': 'http://localhost:58504',
3011
- 'lincoln.vartopia.com': 'https://lincoln-api.vartopia.com',
3012
- 'stage.vartopia.com': 'https://stage-api.vartopia.com',
3013
- 'my.vartopia.com': 'https://reagan-api.vartopia.com',
3014
- 'jackson.vartopia.com': 'https://jackson-api.vartopia.com'
3015
- };
3016
- // Get the current hostname
3017
- const hostname = window.location.hostname;
3018
- return baseUrlMapping[hostname] || null;
3019
- }
3020
- listProductCategory() {
3021
- const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
3022
- const baseApiUrl = this.getBaseApiUrl();
3023
- return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetProductsCategory?vendorId=${vendorId}`);
3024
- }
3025
- listSubCategory(category) {
3026
- const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
3027
- const baseApiUrl = this.getBaseApiUrl();
3028
- return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetProductsSubCategory?vendorId=${vendorId}&categoryName=${category}`);
3029
- }
3030
- // Function to get value by key from the array
3031
- getValueByKey(data, key) {
3032
- if (!data || data.length === 0) {
3033
- return null; // Return null if data is empty or undefined
3034
- }
3035
- const item = data.find(kv => kv.key.toLowerCase() === key.toLowerCase());
3036
- return item ? item.value : null;
3037
- }
3038
- // this.http.get<VendorProductsResponse>(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${envendorId}&pageNumber=${enpageNumber}&pageSize=${enpageSize}&search=${ensearchQuery}&onlyActive=${enactive}&includeDescription=${endescription}`, { headers }).subscribe(response => {
3039
- loadProducts(pageNumber, pazeSize, search = '', onlyActive = true, description = false, category, subCategory) {
3040
- const baseApiUrl = this.getBaseApiUrl();
3041
- const vendorId = this.getValueByKey(this.paramsData, 'vendorId');
3042
- const encodeCat = encodeURIComponent(category);
3043
- const encodeSubCat = encodeURIComponent(subCategory);
3044
- return this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${vendorId}&pageNumber=${pageNumber}&pageSize=${pazeSize}&search=${search}&onlyActive=${onlyActive}&includeDescription=${description}&category=${encodeCat}&subCategory=${encodeSubCat}`);
3045
- }
3046
- }
3047
- 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 });
3048
- CommonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CommonService, providedIn: 'root' });
3049
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: CommonService, decorators: [{
3050
- type: Injectable,
3051
- args: [{
3052
- providedIn: 'root'
3053
- }]
3054
- }], ctorParameters: function () { return [{ type: i1$2.HttpClient }]; } });
3055
-
3056
- class AddOnProductsComponent {
3057
- constructor(matDialogRef, data, fb, dialog, commonSevice) {
3058
- this.matDialogRef = matDialogRef;
3059
- this.fb = fb;
3060
- this.dialog = dialog;
3061
- this.commonSevice = commonSevice;
3062
- this.category = [];
3063
- this.subCategory = [];
3064
- this.filteredCategories = [];
3065
- this.filteredSubCategories = [];
3066
- this.addProductsColumns = ['select', 'productName', 'price'];
3067
- this.showAllproductsColumns = ['delete', 'productName', 'categoryName', 'subCategory', 'Quantity', 'price'];
3068
- this.quantityList = [5, 10, 15, 20, 25];
3069
- this.ELEMENT_DATA = [];
3070
- this.dataSource = new MatTableDataSource();
3071
- this.selection = new SelectionModel(true, []);
3072
- this.selectedDataSource = new MatTableDataSource([]);
3073
- this.selectedCategory = null;
3074
- this.selectedSubCategory = null;
3075
- this.showCategory = false;
3076
- this.showSubcategory = false;
3077
- this.showPrice = true;
3078
- this.showQuantity = true;
3079
- this.showNewProductPicker = true;
3080
- this.setCategory = '';
3081
- this.setSubCategory = '';
3082
- this.loadingFlag = false;
3083
- this.pageNumber = 1;
3084
- this.pageSize = 20;
3085
- this.totalPages = 0;
3086
- this.searchQuery = '';
3087
- this.itemList = [];
3088
- this.prevScrollPosition = 0; // Track the previous scroll position
3089
- this.spinnerFlag = false;
3090
- this.showCategory = data.attributesFlag.showCategory;
3091
- this.showSubcategory = data.attributesFlag.showSubcategory;
3092
- this.showPrice = data.attributesFlag.showPrice;
3093
- this.showQuantity = data.attributesFlag.showQuantity;
3094
- this.showNewProductPicker = data.showNewProductPicker;
3095
- this.setCategory = data.category || '';
3096
- this.setSubCategory = data.subCategory || '';
3097
- this.selection = new SelectionModel(true, data.selectedProducts || []);
3098
- this.form = this.fb.group({
3099
- productCategory: [''],
3100
- productSubcategory: [''],
3101
- selectedProducts: this.fb.array([])
3102
- });
3103
- this.initializeFormArray();
3104
- if (!this.showCategory) {
3105
- this.removeColumn('categoryName');
3106
- }
3107
- if (!this.showPrice) {
3108
- this.removeColumn('price');
3109
- }
3110
- if (!this.showSubcategory) {
3111
- this.removeColumn('subCategory');
3112
- }
3113
- if (!this.showQuantity) {
3114
- this.removeColumn('Quantity');
3115
- }
3116
- }
3117
- removeColumn(columnName) {
3118
- this.showAllproductsColumns = this.showAllproductsColumns.filter(column => column !== columnName);
3119
- this.addProductsColumns = this.addProductsColumns.filter(column => column !== columnName);
3120
- }
3121
- initializeFormArray() {
3122
- const selectedProductsArray = this.form.get('selectedProducts');
3123
- this.selection.selected.forEach(product => {
3124
- selectedProductsArray.push(this.fb.group({
3125
- price: [product.price || '', Validators.required],
3126
- text: [product.text || ''],
3127
- quantity: [product.quantity || '', Validators.required],
3128
- category: [product?.category || ''],
3129
- subCategory: [product?.subCategory || ''],
3130
- value: [product?.value || '']
3131
- }));
3132
- });
3133
- this.selectedDataSource.data = [...this.selection.selected];
3134
- }
3135
- initializeDataSources() {
3136
- // Ensure selected items are marked in the main data source
3137
- if (this.selection?.selected?.length) {
3138
- this.selection?.selected?.forEach(selectedProduct => {
3139
- const index = this.dataSource.data.findIndex(product => product.value === selectedProduct.value);
3140
- if (index >= 0) {
3141
- this.dataSource.data[index] = selectedProduct;
3142
- }
3143
- });
3144
- this.selectedDataSource.data = [...this.selection.selected];
3145
- }
3146
- else {
3147
- console.warn('No selected products found.');
3148
- }
3149
- }
3150
- ngAfterViewInit() {
3151
- }
3152
- ngOnInit() {
3153
- this.loadProductCategory();
3154
- this.form.get('productCategory').valueChanges
3155
- .pipe(startWith(''), map(value => this.filterProducts(value, 'category1'))).subscribe(filterCat => {
3156
- this.filteredCategories = filterCat;
3157
- });
3158
- this.form.get('productSubcategory').valueChanges
3159
- .pipe(startWith(''), map(value => this.filterProducts(value, 'subCategory'))).subscribe(subCat => {
3160
- this.filteredSubCategories = subCat;
3161
- });
3162
- }
3163
- loadProductCategory() {
3164
- this.spinnerFlag = true;
3165
- this.commonSevice.listProductCategory().subscribe(response => {
3166
- this.spinnerFlag = false;
3167
- if (response && response.code === 200) {
3168
- this.category = response.data;
3169
- this.filteredCategories = this.filterProducts(this.setCategory, 'category1');
3170
- this.form.get('productCategory').setValue(this.setCategory);
3171
- if (this.setCategory !== '') {
3172
- this.onOptionSelected(this.setCategory, 'category1');
3173
- this.form.get('productSubcategory').setValue(this.setSubCategory);
3174
- }
3175
- }
3176
- });
3177
- }
3178
- filterProducts(value, cat) {
3179
- const filterValue = value.toLowerCase();
3180
- const data = cat === 'category1' ? this.category : this.subCategory;
3181
- if (!filterValue) {
3182
- return data;
3183
- }
3184
- else {
3185
- return data.filter(option => option.toLowerCase().includes(filterValue));
3186
- }
3187
- }
3188
- onSubmit() {
3189
- if (this.form.valid) {
3190
- this.matDialogRef.close({
3191
- data: {
3192
- status: true,
3193
- items: this.form.value
3194
- }
3195
- });
3196
- }
3197
- }
3198
- isAllSelected() {
3199
- const numSelected = this.selection.selected.length;
3200
- const numRows = this.dataSource.data.length;
3201
- return numSelected === numRows;
3202
- }
3203
- isIndeterminate() {
3204
- const numSelected = this.selection.selected.length;
3205
- const numRows = this.dataSource.data.length;
3206
- return numSelected > 0 && numSelected < numRows;
3207
- }
3208
- masterToggle() {
3209
- this.isAllSelected()
3210
- ? this.selection.clear()
3211
- : this.dataSource.data.forEach(row => this.selection.select(row));
3212
- this.updateSelectedProducts();
3213
- }
3214
- toggleSelection(row) {
3215
- this.selection.toggle(row);
3216
- this.updateSelectedProducts();
3217
- }
3218
- // Getter for the FormArray
3219
- get selectedProducts() {
3220
- return this.form.get('selectedProducts');
3221
- }
3222
- updateSelectedProducts() {
3223
- if (Array.isArray(this.selection.selected)) {
3224
- this.selectedDataSource.data = [...this.selection.selected];
3225
- const selectedProductsArray = this.selectedProducts;
3226
- selectedProductsArray.clear();
3227
- this.selection?.selected?.forEach(product => {
3228
- selectedProductsArray?.push(this.fb.group({
3229
- price: [product?.price ?? '', this.showPrice ? Validators.required : []],
3230
- text: [product?.text || ''],
3231
- quantity: [product?.quantity ?? '', this.showQuantity ? Validators.required : []],
3232
- category: [product?.category || ''],
3233
- subCategory: [product?.subCategory || ''],
3234
- value: [product?.value || '']
3235
- }));
3236
- });
3237
- }
3238
- else {
3239
- console.error('Selection.selected is not an array:', this.selection.selected);
3240
- }
3241
- }
3242
- getTotalRows() {
3243
- return this.dataSource.data.length;
3244
- }
3245
- getSelectedRowsCount() {
3246
- return this.selection.selected.length;
3247
- }
3248
- onOptionSelected(event, category) {
3249
- let selectedValue;
3250
- if (event && event.option && event.option.value !== undefined) {
3251
- selectedValue = event.option.value;
3252
- }
3253
- else {
3254
- selectedValue = event;
3255
- }
3256
- if (category === 'category1') {
3257
- this.selectedCategory = selectedValue;
3258
- this.spinnerFlag = true;
3259
- this.commonSevice.listSubCategory(selectedValue).subscribe(response => {
3260
- this.spinnerFlag = false;
3261
- if (response && response.code === 200) {
3262
- this.subCategory = response.data;
3263
- this.filteredSubCategories = this.filterProducts(this.setCategory, 'subCategory');
3264
- if (this.setSubCategory !== '') {
3265
- this.selectedSubCategory = this.setSubCategory;
3266
- this.getProducts();
3267
- }
3268
- }
3269
- });
3270
- }
3271
- else {
3272
- if (category === 'subCategory') {
3273
- this.selectedSubCategory = event.option.value;
3274
- this.getProducts();
3275
- }
3276
- }
3277
- }
3278
- getProducts() {
3279
- this.spinnerFlag = true;
3280
- this.commonSevice.loadProducts(this.pageNumber, this.pageSize, '', true, false, this.selectedCategory, this.selectedSubCategory).subscribe(response => {
3281
- this.spinnerFlag = false;
3282
- if (response && response.code === 200) {
3283
- //this.dataSource.data = response.data.dataSource;
3284
- this.totalPages = response?.data?.totalPages;
3285
- const data = response.data.dataSource;
3286
- if (this.dataSource.data.length > 0) {
3287
- data.forEach(item => this.dataSource.data.push(item));
3288
- this.dataSource.data = [...this.dataSource.data];
3289
- }
3290
- else {
3291
- this.dataSource.data = data;
3292
- }
3293
- this.loadingFlag = true;
3294
- setTimeout(() => {
3295
- const middlePosition = this.trackHeight / 2 - 50;
3296
- if (this.firstscrollableDiv && this.firstscrollableDiv.nativeElement) {
3297
- this.firstscrollableDiv.nativeElement.scrollTo({ top: middlePosition, behavior: 'auto' });
3298
- }
3299
- }, 250);
3300
- this.initializeDataSources();
3301
- }
3302
- });
3303
- }
3304
- removeRow(event, element) {
3305
- event.stopPropagation();
3306
- event.preventDefault();
3307
- let message = 'Are you sure you want to delete this product?';
3308
- let showButton = true;
3309
- const index = this.selectedDataSource.data.indexOf(element);
3310
- if (index >= 0) {
3311
- if (this.selectedDataSource.data.length === 1) {
3312
- message = 'Please select at least one product.';
3313
- showButton = false;
3314
- }
3315
- const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
3316
- disableClose: true,
3317
- width: '90%',
3318
- maxWidth: '400px',
3319
- data: { message: message, buttonStatus: showButton }
3320
- });
3321
- dialogRef.afterClosed().subscribe(result => {
3322
- if (result) {
3323
- this.selectedDataSource.data.splice(index, 1);
3324
- this.selectedDataSource._updateChangeSubscription();
3325
- this.selection.deselect(element);
3326
- const selectedProductsArray = this.form.get('selectedProducts');
3327
- const productIndex = selectedProductsArray.controls.findIndex(control => control.value.productName === element.productName);
3328
- if (productIndex >= 0) {
3329
- selectedProductsArray.removeAt(productIndex);
3330
- }
3331
- }
3332
- });
3333
- }
3334
- }
3335
- onScroll(event) {
3336
- this.trackHeight = event.target.scrollHeight - event.target.offsetHeight;
3337
- if (this.loadingFlag && (Math.floor(event.target.scrollTop / this.trackHeight * 100) > 50)) {
3338
- this.loadingFlag = false;
3339
- if (this.pageNumber < this.totalPages) {
3340
- this.pageNumber = this.pageNumber + 1;
3341
- this.getProducts();
3342
- }
3343
- else {
3344
- this.loadingFlag = true;
3345
- }
3346
- }
3347
- this.prevScrollPosition = event.target.scrollTop;
3348
- }
3349
- }
3350
- 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 });
3351
- 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>&nbsp;&nbsp;\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"] }] });
3352
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AddOnProductsComponent, decorators: [{
3353
- type: Component,
3354
- 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>&nbsp;&nbsp;\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"] }]
3355
- }], ctorParameters: function () { return [{ type: i1$1.MatDialogRef }, { type: undefined, decorators: [{
3356
- type: Inject,
3357
- args: [MAT_DIALOG_DATA]
3358
- }] }, { type: i2.FormBuilder }, { type: i1$1.MatDialog }, { type: CommonService }]; }, propDecorators: { firstscrollableDiv: [{
3359
- type: ViewChild,
3360
- args: ['firstscrollableDiv']
3361
- }] } });
3362
-
3363
- const ELEMENT_DATA = [];
3364
2970
  class MaterialDataGridComponent extends MaterialNestedComponent {
3365
2971
  constructor(element, ref, dialog) {
3366
2972
  super(element, ref);
@@ -3368,54 +2974,13 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
3368
2974
  this.ref = ref;
3369
2975
  this.dialog = dialog;
3370
2976
  this.dataSource = new MatTableDataSource();
3371
- this.dataSourceNew = ELEMENT_DATA;
3372
- this.displayedColumnsNew = ['productName', 'category', 'subCategory', 'quantity', 'price'];
3373
- this.showNewProductPicker = false;
3374
- this.showCategory = false;
3375
- this.showSubcategory = false;
3376
- this.showPrice = true;
3377
- this.showQuantity = true;
3378
- this.category = '';
3379
- this.subCategory = '';
3380
- this.hasInitialized = false;
3381
2977
  }
3382
2978
  getColumnLabel(column) {
3383
2979
  return column.label || column.key;
3384
2980
  }
3385
- checkIsAttributeTrue(newProductPickerFlag, attributeName) {
3386
- return newProductPickerFlag && Object.keys(newProductPickerFlag).some(key => key.toLocaleLowerCase() === attributeName.toLowerCase() &&
3387
- newProductPickerFlag[key].toLowerCase() === "true");
3388
- }
3389
- // ngOnInit(): void {
3390
- // }
3391
2981
  setInstance(instance) {
3392
- const newProductPickerFlag = instance?.component?.attributes;
3393
- this.showNewProductPicker = this.checkIsAttributeTrue(newProductPickerFlag, "newproductpicker");
3394
- this.showCategory = this.checkIsAttributeTrue(newProductPickerFlag, "showCategory");
3395
- this.showSubcategory = this.checkIsAttributeTrue(newProductPickerFlag, "showSubcategory");
3396
- this.showPrice = this.checkIsAttributeTrue(newProductPickerFlag, "showPrice");
3397
- this.showQuantity = this.checkIsAttributeTrue(newProductPickerFlag, "showQuantity");
3398
2982
  super.setInstance(instance);
3399
- if (this.showNewProductPicker && !this.hasInitialized) {
3400
- if (!this.showCategory) {
3401
- this.removeColumn('category');
3402
- }
3403
- if (!this.showQuantity) {
3404
- this.removeColumn('quantity');
3405
- }
3406
- if (!this.showPrice) {
3407
- this.removeColumn('price');
3408
- }
3409
- if (!this.showSubcategory) {
3410
- this.removeColumn('subCategory');
3411
- }
3412
- this.dataSourceNew = JSON.parse(localStorage.getItem('selectedProducts')) || [];
3413
- // Set flag to true to prevent further execution
3414
- this.hasInitialized = true;
3415
- }
3416
- else {
3417
- this.dataSource.data = instance.dataValue;
3418
- }
2983
+ this.dataSource.data = instance.dataValue;
3419
2984
  this.columns = {};
3420
2985
  this.displayedColumns = [];
3421
2986
  this.formColumns = [];
@@ -3443,10 +3008,7 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
3443
3008
  return viewContainer ? viewContainer : null;
3444
3009
  };
3445
3010
  }
3446
- removeColumn(columnName) {
3447
- this.displayedColumnsNew = this.displayedColumnsNew.filter(column => column !== columnName);
3448
- }
3449
- addAnotherOld() {
3011
+ addAnother() {
3450
3012
  this.checkRowsNumber();
3451
3013
  this.instance.addRow();
3452
3014
  if (this.dataSource.data.length < this.instance.rows.length) {
@@ -3454,55 +3016,6 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
3454
3016
  }
3455
3017
  this.dataSource.data = [...this.dataSource.data];
3456
3018
  }
3457
- addAnother() {
3458
- if (this.showNewProductPicker) {
3459
- const savedData = JSON.parse(localStorage.getItem('saveCat'));
3460
- // Use optional chaining and nullish coalescing to set the values
3461
- this.category = savedData?.category ?? this.category;
3462
- this.subCategory = savedData?.subCategory ?? this.subCategory;
3463
- const diologeRef = this.dialog.open(AddOnProductsComponent, {
3464
- disableClose: true,
3465
- width: '90%',
3466
- maxWidth: '900px',
3467
- autoFocus: false,
3468
- 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 }
3469
- })
3470
- .afterClosed().subscribe(response => {
3471
- if (response?.data?.status) {
3472
- if (!this.showCategory) {
3473
- this.removeColumn('category');
3474
- }
3475
- if (!this.showQuantity) {
3476
- this.removeColumn('quantity');
3477
- }
3478
- if (!this.showPrice) {
3479
- this.removeColumn('price');
3480
- }
3481
- if (!this.showSubcategory) {
3482
- this.removeColumn('subCategory');
3483
- }
3484
- localStorage.setItem('selectedProducts', JSON.stringify(response.data.items.selectedProducts));
3485
- this.dataSourceNew = response.data.items.selectedProducts;
3486
- this.category = response.data.items.productCategory;
3487
- this.subCategory = response.data.items.productSubcategory;
3488
- const catObject = {
3489
- category: this.category,
3490
- subCategory: this.subCategory
3491
- };
3492
- localStorage.setItem('saveCat', JSON.stringify(catObject));
3493
- this.instance.component.defaultValue = response.data.items.selectedProducts;
3494
- }
3495
- });
3496
- }
3497
- else {
3498
- this.checkRowsNumber();
3499
- this.instance.addRow();
3500
- if (this.dataSource.data.length < this.instance.rows.length) {
3501
- this.dataSource.data.push({});
3502
- }
3503
- this.dataSource.data = [...this.dataSource.data];
3504
- }
3505
- }
3506
3019
  checkRowsNumber() {
3507
3020
  while (this.instance.rows.length < this.dataSource.data.length) {
3508
3021
  this.instance.addRow();
@@ -3552,7 +3065,7 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
3552
3065
  super.setValue(value);
3553
3066
  }
3554
3067
  }
3555
- 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$1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
3068
+ 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 });
3556
3069
  MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: MaterialDataGridComponent, selector: "mat-formio-datagrid", usesInheritance: true, ngImport: i0, template: `
3557
3070
  <mat-formio-form-field [instance]="instance"
3558
3071
  [componentTemplate]="componentTemplate"
@@ -3571,8 +3084,6 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
3571
3084
  {{instance.component.addAnother || 'Add Another'}}
3572
3085
  </button>
3573
3086
  </mat-card-actions>
3574
- <ng-container *ngIf="!showNewProductPicker">
3575
- <div class="mat-elevation-z8">
3576
3087
  <table
3577
3088
  mat-table
3578
3089
  [dataSource]="dataSource"
@@ -3581,8 +3092,7 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
3581
3092
  cdkDropList
3582
3093
  [cdkDropListData]="dataSource"
3583
3094
  (cdkDropListDropped)="dropTable($event)">
3584
-
3585
-
3095
+ >
3586
3096
  <ng-container *ngFor="let column of formColumns" [matColumnDef]="column">
3587
3097
  <th mat-header-cell *matHeaderCellDef>{{ getColumnLabel(columns[column]) }}</th>
3588
3098
  <td mat-cell *matCellDef="let i = index;" [attr.rowIndex]="i" [attr.component]="column">
@@ -3612,51 +3122,6 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
3612
3122
  <tr class="datagrid-row" mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
3613
3123
  </div>
3614
3124
  </table>
3615
- </div>
3616
- </ng-container>
3617
-
3618
- <table mat-table [dataSource]="dataSourceNew" class="mat-table" *ngIf="dataSourceNew.length > 0 && showNewProductPicker; else noData" >
3619
- <!-- Product Name Column -->
3620
- <ng-container matColumnDef="productName">
3621
- <th mat-header-cell *matHeaderCellDef> Product Name </th>
3622
- <td mat-cell *matCellDef="let element"> {{element.text}} </td>
3623
- </ng-container>
3624
-
3625
- <!-- Quantity Column -->
3626
- <ng-container matColumnDef="quantity" *ngIf="showQuantity">
3627
- <th mat-header-cell *matHeaderCellDef> Quantity </th>
3628
- <td mat-cell *matCellDef="let element"> {{element.quantity}} </td>
3629
- </ng-container>
3630
-
3631
- <!-- Price Column -->
3632
- <ng-container matColumnDef="price" *ngIf="showPrice">
3633
- <th mat-header-cell *matHeaderCellDef> Price </th>
3634
- <td mat-cell *matCellDef="let element"> {{element.price}} </td>
3635
- </ng-container>
3636
-
3637
- <!-- Category Column -->
3638
- <ng-container matColumnDef="category" *ngIf="showCategory">
3639
- <th mat-header-cell *matHeaderCellDef> Category </th>
3640
- <td mat-cell *matCellDef="let element"> {{element.category}} </td>
3641
- </ng-container>
3642
-
3643
- <!-- Category Column -->
3644
- <ng-container matColumnDef="subCategory" *ngIf="showSubcategory">
3645
- <th mat-header-cell *matHeaderCellDef> Sub Category </th>
3646
- <td mat-cell *matCellDef="let element"> {{element.subCategory}} </td>
3647
- </ng-container>
3648
-
3649
- <tr mat-header-row *matHeaderRowDef="displayedColumnsNew"></tr>
3650
- <tr mat-row *matRowDef="let row; columns: displayedColumnsNew;"></tr>
3651
- </table>
3652
- <ng-template #noData>
3653
- <div class="no-data-message" *ngIf="showNewProductPicker">
3654
- No product found please add some products.
3655
- </div>
3656
- </ng-template>
3657
-
3658
-
3659
-
3660
3125
  </mat-card-content>
3661
3126
  <mat-card-actions *ngIf="instance.hasAddButton() && instance.component.addAnotherPosition !== 'top'">
3662
3127
  <button mat-raised-button color="primary" (click)="addAnother()">
@@ -3672,7 +3137,7 @@ MaterialDataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
3672
3137
  <span [instance]="instance" matFormioLabel></span>
3673
3138
  </mat-card-title>
3674
3139
  </ng-template>
3675
- `, isInline: true, styles: [".datagrid-row{height:auto}.mat-table{width:100%}.mat-header-cell,.mat-cell{padding:8px}.no-data-message{text-align:center;margin:20px 0;font-size:18px;color:#888}\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: 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: 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"] }] });
3140
+ `, 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"] }] });
3676
3141
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialDataGridComponent, decorators: [{
3677
3142
  type: Component,
3678
3143
  args: [{ selector: 'mat-formio-datagrid', template: `
@@ -3693,8 +3158,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
3693
3158
  {{instance.component.addAnother || 'Add Another'}}
3694
3159
  </button>
3695
3160
  </mat-card-actions>
3696
- <ng-container *ngIf="!showNewProductPicker">
3697
- <div class="mat-elevation-z8">
3698
3161
  <table
3699
3162
  mat-table
3700
3163
  [dataSource]="dataSource"
@@ -3703,8 +3166,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
3703
3166
  cdkDropList
3704
3167
  [cdkDropListData]="dataSource"
3705
3168
  (cdkDropListDropped)="dropTable($event)">
3706
-
3707
-
3169
+ >
3708
3170
  <ng-container *ngFor="let column of formColumns" [matColumnDef]="column">
3709
3171
  <th mat-header-cell *matHeaderCellDef>{{ getColumnLabel(columns[column]) }}</th>
3710
3172
  <td mat-cell *matCellDef="let i = index;" [attr.rowIndex]="i" [attr.component]="column">
@@ -3734,51 +3196,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
3734
3196
  <tr class="datagrid-row" mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
3735
3197
  </div>
3736
3198
  </table>
3737
- </div>
3738
- </ng-container>
3739
-
3740
- <table mat-table [dataSource]="dataSourceNew" class="mat-table" *ngIf="dataSourceNew.length > 0 && showNewProductPicker; else noData" >
3741
- <!-- Product Name Column -->
3742
- <ng-container matColumnDef="productName">
3743
- <th mat-header-cell *matHeaderCellDef> Product Name </th>
3744
- <td mat-cell *matCellDef="let element"> {{element.text}} </td>
3745
- </ng-container>
3746
-
3747
- <!-- Quantity Column -->
3748
- <ng-container matColumnDef="quantity" *ngIf="showQuantity">
3749
- <th mat-header-cell *matHeaderCellDef> Quantity </th>
3750
- <td mat-cell *matCellDef="let element"> {{element.quantity}} </td>
3751
- </ng-container>
3752
-
3753
- <!-- Price Column -->
3754
- <ng-container matColumnDef="price" *ngIf="showPrice">
3755
- <th mat-header-cell *matHeaderCellDef> Price </th>
3756
- <td mat-cell *matCellDef="let element"> {{element.price}} </td>
3757
- </ng-container>
3758
-
3759
- <!-- Category Column -->
3760
- <ng-container matColumnDef="category" *ngIf="showCategory">
3761
- <th mat-header-cell *matHeaderCellDef> Category </th>
3762
- <td mat-cell *matCellDef="let element"> {{element.category}} </td>
3763
- </ng-container>
3764
-
3765
- <!-- Category Column -->
3766
- <ng-container matColumnDef="subCategory" *ngIf="showSubcategory">
3767
- <th mat-header-cell *matHeaderCellDef> Sub Category </th>
3768
- <td mat-cell *matCellDef="let element"> {{element.subCategory}} </td>
3769
- </ng-container>
3770
-
3771
- <tr mat-header-row *matHeaderRowDef="displayedColumnsNew"></tr>
3772
- <tr mat-row *matRowDef="let row; columns: displayedColumnsNew;"></tr>
3773
- </table>
3774
- <ng-template #noData>
3775
- <div class="no-data-message" *ngIf="showNewProductPicker">
3776
- No product found please add some products.
3777
- </div>
3778
- </ng-template>
3779
-
3780
-
3781
-
3782
3199
  </mat-card-content>
3783
3200
  <mat-card-actions *ngIf="instance.hasAddButton() && instance.component.addAnotherPosition !== 'top'">
3784
3201
  <button mat-raised-button color="primary" (click)="addAnother()">
@@ -3794,8 +3211,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
3794
3211
  <span [instance]="instance" matFormioLabel></span>
3795
3212
  </mat-card-title>
3796
3213
  </ng-template>
3797
- `, styles: [".datagrid-row{height:auto}.mat-table{width:100%}.mat-header-cell,.mat-cell{padding:8px}.no-data-message{text-align:center;margin:20px 0;font-size:18px;color:#888}\n"] }]
3798
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.MatDialog }]; } });
3214
+ `, styles: [".datagrid-row{height:auto}\n"] }]
3215
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$2.MatDialog }]; } });
3799
3216
  DataGridComponent.MaterialComponent = MaterialDataGridComponent;
3800
3217
 
3801
3218
  var EditRowState;
@@ -4181,7 +3598,7 @@ MaterialWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
4181
3598
  <button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
4182
3599
  </div>
4183
3600
  </mat-step>
4184
- </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: i13.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { 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"] }] });
3601
+ </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"] }] });
4185
3602
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: MaterialWizardComponent, decorators: [{
4186
3603
  type: Component,
4187
3604
  args: [{ selector: 'mat-formio-wizard', template: `
@@ -4351,7 +3768,7 @@ FormioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
4351
3768
  <div fxLayout="column" fxLayoutGap="1em">
4352
3769
  <ng-template #formio></ng-template>
4353
3770
  </div>
4354
- `, 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: i11.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"] }] });
3771
+ `, 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"] }] });
4355
3772
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FormioComponent, decorators: [{
4356
3773
  type: Component,
4357
3774
  args: [{ selector: 'mat-formio', template: `
@@ -4421,8 +3838,7 @@ NgxRenderMaterialFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.
4421
3838
  FormioFormFieldComponent,
4422
3839
  LabelComponent,
4423
3840
  MaskDirective,
4424
- ConfirmationDialogComponent,
4425
- AddOnProductsComponent], imports: [CommonModule,
3841
+ ConfirmationDialogComponent], imports: [CommonModule,
4426
3842
  FormsModule,
4427
3843
  ReactiveFormsModule,
4428
3844
  MatInputModule,
@@ -4450,9 +3866,7 @@ NgxRenderMaterialFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.
4450
3866
  ScrollingModule,
4451
3867
  NgxMatSelectSearchModule,
4452
3868
  MatDialogModule,
4453
- HttpClientModule,
4454
- MatAutocompleteModule], exports: [MatAutocompleteModule,
4455
- NgxRenderMaterialFormsComponent,
3869
+ HttpClientModule], exports: [NgxRenderMaterialFormsComponent,
4456
3870
  FormioComponent,
4457
3871
  MatInputModule,
4458
3872
  MatFormFieldModule,
@@ -4506,9 +3920,7 @@ NgxRenderMaterialFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.
4506
3920
  ScrollingModule,
4507
3921
  NgxMatSelectSearchModule,
4508
3922
  MatDialogModule,
4509
- HttpClientModule,
4510
- MatAutocompleteModule, MatAutocompleteModule,
4511
- MatInputModule,
3923
+ HttpClientModule, MatInputModule,
4512
3924
  MatFormFieldModule,
4513
3925
  MatCheckboxModule,
4514
3926
  MatRadioModule,
@@ -4576,8 +3988,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
4576
3988
  FormioFormFieldComponent,
4577
3989
  LabelComponent,
4578
3990
  MaskDirective,
4579
- ConfirmationDialogComponent,
4580
- AddOnProductsComponent
3991
+ ConfirmationDialogComponent
4581
3992
  ],
4582
3993
  imports: [
4583
3994
  CommonModule,
@@ -4608,11 +4019,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
4608
4019
  ScrollingModule,
4609
4020
  NgxMatSelectSearchModule,
4610
4021
  MatDialogModule,
4611
- HttpClientModule,
4612
- MatAutocompleteModule
4022
+ HttpClientModule
4613
4023
  ],
4614
4024
  exports: [
4615
- MatAutocompleteModule,
4616
4025
  NgxRenderMaterialFormsComponent,
4617
4026
  FormioComponent,
4618
4027
  MatInputModule,