ngx-render-material-forms 1.3.9 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
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
3
  import * as i1$1 from '@angular/common/http';
4
- import { HttpClientModule } from '@angular/common/http';
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';
@@ -82,6 +82,8 @@ import SelectBoxesComponent from 'formiojs/components/selectboxes/SelectBoxes.js
82
82
  import SelectComponent from 'formiojs/components/select/Select.js';
83
83
  import { Subject } from 'rxjs';
84
84
  import { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';
85
+ import * as CryptoJS from 'crypto-js';
86
+ import { isNullOrUndefined } from 'util';
85
87
  import * as i9 from 'ngx-mat-select-search';
86
88
  import { NgxMatSelectSearchModule } from 'ngx-mat-select-search';
87
89
  import WellComponent from 'formiojs/components/well/Well.js';
@@ -2534,8 +2536,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
2534
2536
  }] });
2535
2537
  SelectBoxesComponent.MaterialComponent = MaterialSelectBoxesComponent;
2536
2538
 
2537
- // import * as CryptoJS from 'crypto-js';
2538
- // import { isNullOrUndefined } from 'util';
2539
2539
  class MaterialSelectComponent extends MaterialComponent {
2540
2540
  constructor(element, ref, http) {
2541
2541
  super(element, ref);
@@ -2558,8 +2558,8 @@ class MaterialSelectComponent extends MaterialComponent {
2558
2558
  // Variable to hold the reference to the current panel element
2559
2559
  this.currentPanelElement = null;
2560
2560
  this.openCounter = 1;
2561
- // this.holy = CryptoJS.enc.Base64.parse('8F/2+T2NXqUBQERR12R4sw==');
2562
- // this.grail = CryptoJS.enc.Base64.parse('yE0CgQbYzK5wqeoKTVzhOQ==');
2561
+ this.holy = CryptoJS.enc.Base64.parse('8F/2+T2NXqUBQERR12R4sw==');
2562
+ this.grail = CryptoJS.enc.Base64.parse('yE0CgQbYzK5wqeoKTVzhOQ==');
2563
2563
  }
2564
2564
  onInputChange(event) {
2565
2565
  if (this.instance.component.key.toLowerCase() === 'vendorproductid' && event.target.value === '') {
@@ -2571,29 +2571,28 @@ class MaterialSelectComponent extends MaterialComponent {
2571
2571
  this.onClearAll();
2572
2572
  }
2573
2573
  }
2574
- // scrumble(msg) {
2575
- // if (!isNullOrUndefined(msg)) {
2576
- // var conceal = this.getcampaign(msg, this.holy, this.grail);
2577
- // var sha256 = CryptoJS.HmacSHA256(CryptoJS.enc.Base64.stringify(this.grail) + conceal.toString(), CryptoJS.enc.Base64.stringify(this.holy));
2578
- // var hashInBase64 = CryptoJS.enc.Base64.stringify(sha256);
2579
- // let keyValue = {
2580
- // "value": conceal.toString(),
2581
- // "mac": hashInBase64
2582
- // };
2583
- // var result = JSON.stringify(keyValue);
2584
- // var jumbled = CryptoJS.enc.Utf8.parse(result);
2585
- // return CryptoJS.enc.Base64.stringify(jumbled);
2586
- // }
2587
- // }
2588
- // getcampaign(data: any, holy: any, grail: any) {
2589
- // return CryptoJS.AES.encrypt(data.toString(), holy,
2590
- // {
2591
- // blockSize: 128,
2592
- // iv: grail,
2593
- // mode: CryptoJS.mode.CBC,
2594
- // padding: CryptoJS.pad.Pkcs7
2595
- // });
2596
- // }
2574
+ scrumble(msg) {
2575
+ if (!isNullOrUndefined(msg)) {
2576
+ var conceal = this.getcampaign(msg, this.holy, this.grail);
2577
+ var sha256 = CryptoJS.HmacSHA256(CryptoJS.enc.Base64.stringify(this.grail) + conceal.toString(), CryptoJS.enc.Base64.stringify(this.holy));
2578
+ var hashInBase64 = CryptoJS.enc.Base64.stringify(sha256);
2579
+ let keyValue = {
2580
+ "value": conceal.toString(),
2581
+ "mac": hashInBase64
2582
+ };
2583
+ var result = JSON.stringify(keyValue);
2584
+ var jumbled = CryptoJS.enc.Utf8.parse(result);
2585
+ return CryptoJS.enc.Base64.stringify(jumbled);
2586
+ }
2587
+ }
2588
+ getcampaign(data, holy, grail) {
2589
+ return CryptoJS.AES.encrypt(data.toString(), holy, {
2590
+ blockSize: 128,
2591
+ iv: grail,
2592
+ mode: CryptoJS.mode.CBC,
2593
+ padding: CryptoJS.pad.Pkcs7
2594
+ });
2595
+ }
2597
2596
  registerPanelScrollEvent(selectElem) {
2598
2597
  const panelElement = selectElem.panel.nativeElement;
2599
2598
  panelElement.addEventListener('scroll', this.onScroll.bind(this));
@@ -2632,78 +2631,75 @@ class MaterialSelectComponent extends MaterialComponent {
2632
2631
  return item ? item.value : null;
2633
2632
  }
2634
2633
  loadData(pageNumber, pageSize, searchQuery) {
2635
- // const paramsData = JSON.parse(localStorage.getItem('productPicker'));
2636
- // const includeDescription = this.getValueByKey(paramsData, 'includeDescription');
2637
- // const vendorId = this.getValueByKey(paramsData, 'vendorId');
2638
- // const onlyActive = this.getValueByKey(paramsData, 'onlyActive');
2639
- // var currentUser = JSON.parse(localStorage.getItem('currentUser'));
2640
- // let headers;
2641
- // if (currentUser && currentUser.Tokens && currentUser.Tokens.AccessToken) {
2642
- // var accessToken = currentUser.Tokens.AccessToken;
2643
- // headers = new HttpHeaders({
2644
- // 'Content-Type': 'application/json',
2645
- // 'Authorization': 'Bearer ' + accessToken
2646
- // });
2647
- // } else {
2648
- // console.error('User not authenticated or tokens missing.');
2649
- // }
2650
- // const envendorId = this.scrumble(vendorId)
2651
- // const enpageNumber = this.scrumble(pageNumber)
2652
- // const enpageSize = this.scrumble(pageSize);
2653
- // const ensearchQuery = this.scrumble(searchQuery);
2654
- // let enactive = this.scrumble(onlyActive);
2655
- // //Check if enactive is undefined, null, or blank
2656
- // if (enactive === undefined || enactive === null || enactive === '') {
2657
- // enactive = this.scrumble(true); // Set default value to true
2658
- // }
2659
- // // Scrumble and handle the includeDescription parameter
2660
- // let endescription = this.scrumble(includeDescription);
2661
- // if (!endescription) {
2662
- // endescription = this.scrumble(false); // Set to 'false' if undefined, null, or blank
2663
- // }
2664
- // const baseUrlMapping = {
2665
- // 'localhost': 'http://localhost:58504',
2666
- // 'lincoln.vartopia.com': 'https://lincoln-api.vartopia.com',
2667
- // 'stage.vartopia.com': 'https://stage-api.vartopia.com',
2668
- // 'my.vartopia.com': 'https://reagan-api.vartopia.com',
2669
- // 'jackson.vartopia.com': 'https://jackson-api.vartopia.com'
2670
- // };
2671
- // // Get the current hostname
2672
- // const hostname = window.location.hostname;
2673
- // const baseApiUrl = baseUrlMapping[hostname] || null;
2674
- // interface VendorProductsResponse {
2675
- // code: number;
2676
- // data: any;
2677
- // message: string;
2678
- // statusCode: number;
2679
- // }
2680
- // this.http.get<VendorProductsResponse>(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${envendorId}&pageNumber=${enpageNumber}&pageSize=${enpageSize}&search=${ensearchQuery}&onlyActive=${enactive}&includeDescription=${endescription}`, { headers }).subscribe(response => {
2681
- // if (response && response.code === 200) {
2682
- // if (this.instance.component.key.toLowerCase() === 'vendorproductid') {
2683
- // this.totalPages = response?.data?.totalPages;
2684
- // const data = response.data.dataSource;
2685
- // this.filteredOptionsLength = data.length;
2686
- // if (this.productList.length > 0) {
2687
- // data.map(item => {
2688
- // return item
2689
- // }).forEach(i => this.productList.push(i))
2690
- // } else {
2691
- // this.productList = data;
2692
- // }
2693
- // // Update filteredOptions with transformedData
2694
- // var allProductList = this.transformResponseData(this.productList);
2695
- // this.filteredOptions = Promise.resolve(allProductList);
2696
- // this.searching = false;
2697
- // this.productsloadingFlag = true;
2698
- // setTimeout(() => {
2699
- // const ele = this.selectElem.panel.nativeElement;
2700
- // const trackHeight = ele.scrollHeight - ele.offsetHeight
2701
- // const middlePosition = trackHeight / 2 - 50;
2702
- // ele.scrollTo({ top: middlePosition, behavior: 'auto' });
2703
- // }, 250);
2704
- // }
2705
- // }
2706
- // });
2634
+ const paramsData = JSON.parse(localStorage.getItem('productPicker'));
2635
+ const includeDescription = this.getValueByKey(paramsData, 'includeDescription');
2636
+ const vendorId = this.getValueByKey(paramsData, 'vendorId');
2637
+ const onlyActive = this.getValueByKey(paramsData, 'onlyActive');
2638
+ var currentUser = JSON.parse(localStorage.getItem('currentUser'));
2639
+ let headers;
2640
+ if (currentUser && currentUser.Tokens && currentUser.Tokens.AccessToken) {
2641
+ var accessToken = currentUser.Tokens.AccessToken;
2642
+ headers = new HttpHeaders({
2643
+ 'Content-Type': 'application/json',
2644
+ 'Authorization': 'Bearer ' + accessToken
2645
+ });
2646
+ }
2647
+ else {
2648
+ console.error('User not authenticated or tokens missing.');
2649
+ }
2650
+ const envendorId = this.scrumble(vendorId);
2651
+ const enpageNumber = this.scrumble(pageNumber);
2652
+ const enpageSize = this.scrumble(pageSize);
2653
+ const ensearchQuery = this.scrumble(searchQuery);
2654
+ let enactive = this.scrumble(onlyActive);
2655
+ //Check if enactive is undefined, null, or blank
2656
+ if (enactive === undefined || enactive === null || enactive === '') {
2657
+ enactive = this.scrumble(true); // Set default value to true
2658
+ }
2659
+ // Scrumble and handle the includeDescription parameter
2660
+ let endescription = this.scrumble(includeDescription);
2661
+ if (!endescription) {
2662
+ endescription = this.scrumble(false); // Set to 'false' if undefined, null, or blank
2663
+ }
2664
+ const baseUrlMapping = {
2665
+ 'localhost': 'http://localhost:58504',
2666
+ 'lincoln.vartopia.com': 'https://lincoln-api.vartopia.com',
2667
+ 'stage.vartopia.com': 'https://stage-api.vartopia.com',
2668
+ 'my.vartopia.com': 'https://reagan-api.vartopia.com',
2669
+ 'jackson.vartopia.com': 'https://jackson-api.vartopia.com'
2670
+ };
2671
+ // Get the current hostname
2672
+ const hostname = window.location.hostname;
2673
+ const baseApiUrl = baseUrlMapping[hostname] || null;
2674
+ this.http.get(`${baseApiUrl}/api/VendorFormBuilder/GetVendorProducts?vendorId=${envendorId}&pageNumber=${enpageNumber}&pageSize=${enpageSize}&search=${ensearchQuery}&onlyActive=${enactive}&includeDescription=${endescription}`, { headers }).subscribe(response => {
2675
+ var _a;
2676
+ if (response && response.code === 200) {
2677
+ if (this.instance.component.key.toLowerCase() === 'vendorproductid') {
2678
+ this.totalPages = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.totalPages;
2679
+ const data = response.data.dataSource;
2680
+ this.filteredOptionsLength = data.length;
2681
+ if (this.productList.length > 0) {
2682
+ data.map(item => {
2683
+ return item;
2684
+ }).forEach(i => this.productList.push(i));
2685
+ }
2686
+ else {
2687
+ this.productList = data;
2688
+ }
2689
+ // Update filteredOptions with transformedData
2690
+ var allProductList = this.transformResponseData(this.productList);
2691
+ this.filteredOptions = Promise.resolve(allProductList);
2692
+ this.searching = false;
2693
+ this.productsloadingFlag = true;
2694
+ setTimeout(() => {
2695
+ const ele = this.selectElem.panel.nativeElement;
2696
+ const trackHeight = ele.scrollHeight - ele.offsetHeight;
2697
+ const middlePosition = trackHeight / 2 - 50;
2698
+ ele.scrollTo({ top: middlePosition, behavior: 'auto' });
2699
+ }, 250);
2700
+ }
2701
+ }
2702
+ });
2707
2703
  }
2708
2704
  // Utility function to transform response data
2709
2705
  transformResponseData(data) {
@@ -3025,7 +3021,7 @@ class MaterialDataGridComponent extends MaterialNestedComponent {
3025
3021
  }
3026
3022
  removeRow(index) {
3027
3023
  var _a, _b;
3028
- let message = 'Are you sure you want to delete the first product?';
3024
+ let message = 'Are you sure you want to delete this product?';
3029
3025
  let showButton = true;
3030
3026
  if (((_b = (_a = this.dataSource) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length) === 1) {
3031
3027
  message = 'Please select atleast one product.';