mmhglobal-dynamicform 2.34.0 → 2.35.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.
Files changed (33) hide show
  1. package/README.md +20 -0
  2. package/esm2020/lib/components/datalistingfieldbase.component.mjs +2 -2
  3. package/esm2020/lib/embed-components/input-field-addons/input-field-addons.component.mjs +1 -1
  4. package/esm2020/lib/kcard/kcard.component.mjs +1 -1
  5. package/esm2020/lib/services/main.service.mjs +2 -2
  6. package/esm2020/lib/services/zcomponent.debug.service.mjs +2 -2
  7. package/esm2020/lib/sfdatetimepicker/sfdatetimepicker.component.mjs +5 -3
  8. package/esm2020/lib/uiactionbutton/uiactionbutton.component.mjs +1 -1
  9. package/esm2020/lib/uibulletin/uibulletin.component.mjs +1 -1
  10. package/esm2020/lib/zbuttons/zbuttons.component.mjs +1 -1
  11. package/esm2020/lib/zdatetime/zdatetime.component.mjs +1 -1
  12. package/esm2020/lib/zgrid/container/zgrid-container.component.mjs +1 -1
  13. package/esm2020/lib/zgrid/zgrid.binding.directive.mjs +132 -132
  14. package/esm2020/lib/zgrid/zgrid.component.mjs +57 -33
  15. package/esm2020/lib/zgrid/zgrid.service.mjs +62 -58
  16. package/esm2020/lib/zmodal/zmodal-mobile.component.mjs +1 -1
  17. package/esm2020/lib/zmodal/zmodal.component.mjs +1 -1
  18. package/esm2020/lib/zselectmultiple/zselectmultiple.component.mjs +30 -23
  19. package/esm2020/lib/ztree/ztree.component.mjs +1 -1
  20. package/esm2020/lib/ztreelist/ztreelist.component.mjs +1 -1
  21. package/esm2020/lib/zudf/zudf.component.mjs +8 -6
  22. package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +1 -1
  23. package/fesm2015/mmhglobal-dynamicform.mjs +324 -293
  24. package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -1
  25. package/fesm2020/mmhglobal-dynamicform.mjs +303 -262
  26. package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -1
  27. package/lib/sfdatetimepicker/sfdatetimepicker.component.d.ts +1 -0
  28. package/lib/zgrid/zgrid.binding.directive.d.ts +5 -6
  29. package/lib/zgrid/zgrid.component.d.ts +5 -3
  30. package/lib/zgrid/zgrid.service.d.ts +10 -16
  31. package/lib/zselectmultiple/zselectmultiple.component.d.ts +4 -1
  32. package/lib/zudf/zudf.component.d.ts +3 -2
  33. package/package.json +1 -1
@@ -1,24 +1,13 @@
1
1
  /********** Angular **********/
2
2
  import { Injectable } from "@angular/core";
3
3
  /********** Component & Service **********/
4
- import { Delimiter } from 'mmhglobal-zcore';
4
+ import { StateType } from 'mmhglobal-zcore';
5
+ import { defer, of, switchMap } from "rxjs";
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "mmhglobal-zcore";
7
- export var GridSettingType;
8
- (function (GridSettingType) {
9
- GridSettingType["OriginalSetting"] = "OriginalSetting";
10
- GridSettingType["SavedSetting"] = "SavedSetting";
11
- GridSettingType["CachedDataSetting"] = "CachedDataSetting";
12
- })(GridSettingType || (GridSettingType = {}));
13
- export var GridStateLogicType;
14
- (function (GridStateLogicType) {
15
- GridStateLogicType["SettingAndDataCache"] = "SettingAndDataCache";
16
- GridStateLogicType["SettingOnly"] = "SettingOnly";
17
- GridStateLogicType["DataCacheOnly"] = "DataCache";
18
- })(GridStateLogicType || (GridStateLogicType = {}));
19
8
  export class ZGridService {
20
- constructor(offlineDatabaseService) {
21
- this.offlineDatabaseService = offlineDatabaseService;
9
+ constructor(stateSettingService) {
10
+ this.stateSettingService = stateSettingService;
22
11
  this.gridDefaultState = { skip: 0, take: 20 };
23
12
  }
24
13
  /**
@@ -32,64 +21,79 @@ export class ZGridService {
32
21
  // Create a copy of the default state and assign it to this.gridState.
33
22
  this.gridState = Object.assign({}, this.gridDefaultState);
34
23
  if (field.CacheInfo) {
35
- //const cacheName = this.getGridStateCacheStorageKey(GridSettingType.OriginalSetting);
36
- //sessionStorage.setItem(cacheName, JSON.stringify(this.gridSettings));
37
- // Generate a cache name based on the cache type and the field.
38
- let cacheName = this.getGridStateCacheStorageKey(GridSettingType.CachedDataSetting, field);
24
+ let stateType = this.getGridStateLogic(field);
39
25
  // Determine whether to use SavedSetting cache type based on configuration.
40
- if (field.CacheInfo.EnableSaveState === true && field.CacheInfo.DisableCacheData === true) {
41
- cacheName = this.getGridStateCacheStorageKey(GridSettingType.SavedSetting, field);
42
- }
43
- // Retrieve the cached value from sessionStorage.
44
- const cacheInfo = this.generateCacheInfo(field, cacheName);
45
- const cacheValue = this.offlineDatabaseService.getItemByKey(cacheInfo, cacheInfo.offlineDatabaseKey);
46
- // If a cached value exists, update this.gridState with the cached value.
47
- if (cacheValue) {
48
- this.gridState = cacheValue.gridState;
26
+ if (stateType === StateType.cachedDataSetting || stateType === StateType.savedAndCachedDataSetting) {
27
+ let cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
28
+ const cacheData = sessionStorage.getItem(cacheName);
29
+ if (cacheData) {
30
+ this.gridState = JSON.parse(cacheData).gridState;
31
+ }
49
32
  }
50
33
  }
51
34
  return this.gridState;
52
35
  }
53
- generateCacheInfo(gridField, offlineDatabaseKey) {
54
- const cacheInfo = gridField.CacheInfo;
55
- return {
56
- priorityNumber: 0,
57
- componentType: 'zgrid',
58
- resourceURL: cacheInfo.ResourceURL,
59
- appendPaginationData: cacheInfo.AppendPaginationData,
60
- definedDatabase: cacheInfo.DefinedDatabase,
61
- definedTable: cacheInfo.DefinedTable,
62
- offlineDatabaseKey: offlineDatabaseKey ?? (GridSettingType.SavedSetting + `${Delimiter.default}${gridField.FieldElementName}${Delimiter.default}${gridField.CacheInfo.Name ?? gridField.FieldElementName}`),
63
- saveAsJson: cacheInfo.SaveAsJson,
64
- encryptValue: cacheInfo.EncryptValue
65
- };
66
- }
67
- // Used for Grid state setting ONLY.
68
- getGridStateCacheStorageKey(gridStateType, field) {
69
- if (!field.CacheInfo) {
70
- return;
36
+ getStateCacheByName(cacheName) {
37
+ try {
38
+ if (!cacheName) {
39
+ console.warn('Invalid cache name provided');
40
+ return null;
41
+ }
42
+ return JSON.parse(localStorage.getItem(cacheName));
71
43
  }
72
- const cacheName = `${field.FieldElementName}${Delimiter.default}${field.CacheInfo.Name ?? field.FieldElementName}`;
73
- if (gridStateType === GridSettingType.OriginalSetting || gridStateType === GridSettingType.SavedSetting) {
74
- return gridStateType + Delimiter.default + cacheName;
44
+ catch (error) {
45
+ console.warn('Error accessing localStorage:', error);
46
+ return null; // Fallback in case of an error
75
47
  }
76
- else if (gridStateType === GridSettingType.CachedDataSetting) {
77
- return cacheName;
48
+ }
49
+ getStateCache(stateType, field) {
50
+ const cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
51
+ const cachedState = this.getStateCacheByName(cacheName);
52
+ if (cachedState !== null) {
53
+ // Return the cached state immediately if it's not null
54
+ return of(cachedState);
78
55
  }
79
- return null;
56
+ const stateSettingInfo = this.stateSettingService.initGetStateSettingInfo(field);
57
+ stateSettingInfo.stateType = stateType;
58
+ return defer(() => this.stateSettingService.getStateSetting(stateSettingInfo).pipe(switchMap((retrievedState) => {
59
+ if (retrievedState) {
60
+ // Parse and set state if available
61
+ const stateSettingInfo = retrievedState;
62
+ if (stateSettingInfo.stateData) {
63
+ const gridStateData = JSON.parse(stateSettingInfo.stateData);
64
+ if (gridStateData) {
65
+ gridStateData.id = stateSettingInfo.id.toString();
66
+ this.setStateToCache(cacheName, gridStateData);
67
+ return of(gridStateData); // Emit the retrieved state
68
+ }
69
+ }
70
+ }
71
+ return of(null); // Complete without emitting anything
72
+ })));
73
+ }
74
+ setStateToCache(cacheName, gridSetting) {
75
+ const cacheData = JSON.stringify(gridSetting);
76
+ localStorage.setItem(cacheName, cacheData);
77
+ }
78
+ deleteStateCacheByName(cacheName) {
79
+ localStorage.removeItem(cacheName);
80
+ }
81
+ deleteStateCache(stateType, field) {
82
+ const cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
83
+ localStorage.removeItem(cacheName);
80
84
  }
81
85
  getGridStateLogic(field) {
82
86
  if (field.CacheInfo) {
83
87
  const enableSaveState = field.CacheInfo.EnableSaveState;
84
88
  const disableCacheData = field.CacheInfo.DisableCacheData;
85
89
  if (enableSaveState && !disableCacheData) {
86
- return GridStateLogicType.SettingAndDataCache;
90
+ return StateType.savedAndCachedDataSetting;
87
91
  }
88
92
  else if (enableSaveState && disableCacheData) {
89
- return GridStateLogicType.SettingOnly;
93
+ return StateType.savedSetting;
90
94
  }
91
95
  else if (!enableSaveState && !disableCacheData) {
92
- return GridStateLogicType.DataCacheOnly;
96
+ return StateType.cachedDataSetting;
93
97
  }
94
98
  }
95
99
  else {
@@ -98,12 +102,12 @@ export class ZGridService {
98
102
  return null;
99
103
  }
100
104
  }
101
- ZGridService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, deps: [{ token: i1.OfflineDatabaseService }], target: i0.ɵɵFactoryTarget.Injectable });
105
+ ZGridService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, deps: [{ token: i1.StateSettingService }], target: i0.ɵɵFactoryTarget.Injectable });
102
106
  ZGridService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, providedIn: 'root' });
103
107
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, decorators: [{
104
108
  type: Injectable,
105
109
  args: [{
106
110
  providedIn: 'root'
107
111
  }]
108
- }], ctorParameters: function () { return [{ type: i1.OfflineDatabaseService }]; } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemdyaWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3pncmlkL3pncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsMkNBQTJDO0FBQzNDLE9BQU8sRUFDRyxTQUFTLEVBQ2xCLE1BQU0saUJBQWlCLENBQUM7OztBQUV6QixNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3pCLHNEQUFtQyxDQUFBO0lBQ25DLGdEQUE2QixDQUFBO0lBQzdCLDBEQUF1QyxDQUFBO0FBQ3pDLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQUlYO0FBSkQsV0FBWSxrQkFBa0I7SUFDNUIsaUVBQTJDLENBQUE7SUFDM0MsaURBQTJCLENBQUE7SUFDM0IsaURBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQUpXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFJN0I7QUFNRCxNQUFNLE9BQU8sWUFBWTtJQUl2QixZQUNVLHNCQUE4QztRQUE5QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBSGhELHFCQUFnQixHQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFLeEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ25DLCtHQUErRztRQUMvRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1FBRWxELHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxnQkFB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QUFDLGdCQUFnQixFQUFFO2dCQUN4QyxPQUFPLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDO2FBQy9DO2lCQUNJLElBQUksZUFBZSxJQUFJLGdCQUFnQixFQUFFO2dCQUM1QyxPQUFPLGtCQUFrQixDQUFDLFdBQVcsQ0FBQzthQUN2QztpQkFDSSxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQzlDLE9BQU8sa0JBQWtCLENBQUMsYUFBYSxDQUFDO2FBQ3pDO1NBQ0Y7YUFDSTtZQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUN4QztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7eUdBcEdVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLyoqKioqKioqKiogSW9uaWMgKioqKioqKioqKi9cclxuXHJcbi8qKioqKioqKioqIFBsdWdpbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBTdGF0ZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tZGF0YS1xdWVyeVwiO1xyXG5cclxuLyoqKioqKioqKiogQ29tcG9uZW50ICYgU2VydmljZSAqKioqKioqKioqL1xyXG5pbXBvcnQge1xyXG4gIFpGaWVsZCwgRGVsaW1pdGVyLCBaR3JpZFNldHRpbmdzLCBPZmZsaW5lRGF0YWJhc2VTZXJ2aWNlLCBvZmZsaW5lRGF0YWJhc2VTZXR0aW5nXHJcbn0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuXHJcbmV4cG9ydCBlbnVtIEdyaWRTZXR0aW5nVHlwZSB7XHJcbiAgT3JpZ2luYWxTZXR0aW5nID0gXCJPcmlnaW5hbFNldHRpbmdcIixcclxuICBTYXZlZFNldHRpbmcgPSBcIlNhdmVkU2V0dGluZ1wiLFxyXG4gIENhY2hlZERhdGFTZXR0aW5nID0gXCJDYWNoZWREYXRhU2V0dGluZ1wiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEdyaWRTdGF0ZUxvZ2ljVHlwZSB7XHJcbiAgU2V0dGluZ0FuZERhdGFDYWNoZSA9IFwiU2V0dGluZ0FuZERhdGFDYWNoZVwiLFxyXG4gIFNldHRpbmdPbmx5ID0gXCJTZXR0aW5nT25seVwiLFxyXG4gIERhdGFDYWNoZU9ubHkgPSBcIkRhdGFDYWNoZVwiXHJcbn1cclxuXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaR3JpZFNlcnZpY2Uge1xyXG4gIHByaXZhdGUgZ3JpZFN0YXRlOiBTdGF0ZTtcclxuICBwcml2YXRlIGdyaWREZWZhdWx0U3RhdGU6IFN0YXRlID0geyBza2lwOiAwLCB0YWtlOiAyMCB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgb2ZmbGluZURhdGFiYXNlU2VydmljZTogT2ZmbGluZURhdGFiYXNlU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29uZmlndXJlIGdyaWQgc2V0dGluZ3MgYmFzZWQgb24gdGhlIHByb3ZpZGVkIFpGaWVsZCBvYmplY3QuXHJcbiAgICogQHBhcmFtIGZpZWxkIFRoZSBaRmllbGQgb2JqZWN0IGNvbnRhaW5pbmcgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbi5cclxuICAgKiBAcmV0dXJucyBUaGUgY29uZmlndXJlZCBncmlkIHN0YXRlLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXR1cEdyaWRTZXR0aW5nKGZpZWxkOiBaRmllbGQpOiBTdGF0ZSB7XHJcbiAgICAvLyBTZXQgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHRha2UpIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBmaWVsZCdzIFBhZ2VTaXplIG9yIGEgZGVmYXVsdCBvZiAyMC5cclxuICAgIHRoaXMuZ3JpZERlZmF1bHRTdGF0ZS50YWtlID0gZmllbGQuUGFnZVNpemUgfHwgMjA7XHJcblxyXG4gICAgLy8gQ3JlYXRlIGEgY29weSBvZiB0aGUgZGVmYXVsdCBzdGF0ZSBhbmQgYXNzaWduIGl0IHRvIHRoaXMuZ3JpZFN0YXRlLlxyXG4gICAgdGhpcy5ncmlkU3RhdGUgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmdyaWREZWZhdWx0U3RhdGUpO1xyXG5cclxuICAgIGlmIChmaWVsZC5DYWNoZUluZm8pIHtcclxuICAgICAgLy9jb25zdCBjYWNoZU5hbWUgPSB0aGlzLmdldEdyaWRTdGF0ZUNhY2hlU3RvcmFnZUtleShHcmlkU2V0dGluZ1R5cGUuT3JpZ2luYWxTZXR0aW5nKTtcclxuICAgICAgLy9zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKGNhY2hlTmFtZSwgSlNPTi5zdHJpbmdpZnkodGhpcy5ncmlkU2V0dGluZ3MpKTtcclxuXHJcbiAgICAgIC8vIEdlbmVyYXRlIGEgY2FjaGUgbmFtZSBiYXNlZCBvbiB0aGUgY2FjaGUgdHlwZSBhbmQgdGhlIGZpZWxkLlxyXG4gICAgICBsZXQgY2FjaGVOYW1lID0gdGhpcy5nZXRHcmlkU3RhdGVDYWNoZVN0b3JhZ2VLZXkoR3JpZFNldHRpbmdUeXBlLkNhY2hlZERhdGFTZXR0aW5nLCBmaWVsZCk7XHJcblxyXG4gICAgICAvLyBEZXRlcm1pbmUgd2hldGhlciB0byB1c2UgU2F2ZWRTZXR0aW5nIGNhY2hlIHR5cGUgYmFzZWQgb24gY29uZmlndXJhdGlvbi5cclxuICAgICAgaWYgKGZpZWxkLkNhY2hlSW5mby5FbmFibGVTYXZlU3RhdGUgPT09IHRydWUgJiYgZmllbGQuQ2FjaGVJbmZvLkRpc2FibGVDYWNoZURhdGEgPT09IHRydWUpIHtcclxuICAgICAgICBjYWNoZU5hbWUgPSB0aGlzLmdldEdyaWRTdGF0ZUNhY2hlU3RvcmFnZUtleShHcmlkU2V0dGluZ1R5cGUuU2F2ZWRTZXR0aW5nLCBmaWVsZCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFJldHJpZXZlIHRoZSBjYWNoZWQgdmFsdWUgZnJvbSBzZXNzaW9uU3RvcmFnZS5cclxuICAgICAgY29uc3QgY2FjaGVJbmZvID0gdGhpcy5nZW5lcmF0ZUNhY2hlSW5mbyhmaWVsZCwgY2FjaGVOYW1lKTtcclxuICAgICAgY29uc3QgY2FjaGVWYWx1ZSA9IHRoaXMub2ZmbGluZURhdGFiYXNlU2VydmljZS5nZXRJdGVtQnlLZXkoY2FjaGVJbmZvLCBjYWNoZUluZm8ub2ZmbGluZURhdGFiYXNlS2V5KTtcclxuXHJcbiAgICAgIC8vIElmIGEgY2FjaGVkIHZhbHVlIGV4aXN0cywgdXBkYXRlIHRoaXMuZ3JpZFN0YXRlIHdpdGggdGhlIGNhY2hlZCB2YWx1ZS5cclxuICAgICAgaWYgKGNhY2hlVmFsdWUpIHtcclxuICAgICAgICB0aGlzLmdyaWRTdGF0ZSA9IChjYWNoZVZhbHVlIGFzIFpHcmlkU2V0dGluZ3MpLmdyaWRTdGF0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmdyaWRTdGF0ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZW5lcmF0ZUNhY2hlSW5mbyhncmlkRmllbGQ6IFpGaWVsZCwgb2ZmbGluZURhdGFiYXNlS2V5Pzogc3RyaW5nKTogb2ZmbGluZURhdGFiYXNlU2V0dGluZyB7XHJcbiAgICBjb25zdCBjYWNoZUluZm8gPSBncmlkRmllbGQuQ2FjaGVJbmZvO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIHByaW9yaXR5TnVtYmVyOiAwLFxyXG4gICAgICBjb21wb25lbnRUeXBlOiAnemdyaWQnLFxyXG4gICAgICByZXNvdXJjZVVSTDogY2FjaGVJbmZvLlJlc291cmNlVVJMLFxyXG4gICAgICBhcHBlbmRQYWdpbmF0aW9uRGF0YTogY2FjaGVJbmZvLkFwcGVuZFBhZ2luYXRpb25EYXRhLFxyXG4gICAgICBkZWZpbmVkRGF0YWJhc2U6IGNhY2hlSW5mby5EZWZpbmVkRGF0YWJhc2UsXHJcbiAgICAgIGRlZmluZWRUYWJsZTogY2FjaGVJbmZvLkRlZmluZWRUYWJsZSxcclxuICAgICAgb2ZmbGluZURhdGFiYXNlS2V5OiBvZmZsaW5lRGF0YWJhc2VLZXkgPz8gKEdyaWRTZXR0aW5nVHlwZS5TYXZlZFNldHRpbmcgKyBgJHtEZWxpbWl0ZXIuZGVmYXVsdH0ke2dyaWRGaWVsZC5GaWVsZEVsZW1lbnROYW1lfSR7RGVsaW1pdGVyLmRlZmF1bHR9JHtncmlkRmllbGQuQ2FjaGVJbmZvLk5hbWUgPz8gZ3JpZEZpZWxkLkZpZWxkRWxlbWVudE5hbWV9YCksXHJcbiAgICAgIHNhdmVBc0pzb246IGNhY2hlSW5mby5TYXZlQXNKc29uLFxyXG4gICAgICBlbmNyeXB0VmFsdWU6IGNhY2hlSW5mby5FbmNyeXB0VmFsdWVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFVzZWQgZm9yIEdyaWQgc3RhdGUgc2V0dGluZyBPTkxZLlxyXG4gIHB1YmxpYyBnZXRHcmlkU3RhdGVDYWNoZVN0b3JhZ2VLZXkoZ3JpZFN0YXRlVHlwZTogR3JpZFNldHRpbmdUeXBlLCBmaWVsZDogWkZpZWxkKSB7XHJcbiAgICBpZiAoIWZpZWxkLkNhY2hlSW5mbykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2FjaGVOYW1lID0gYCR7ZmllbGQuRmllbGRFbGVtZW50TmFtZX0ke0RlbGltaXRlci5kZWZhdWx0fSR7ZmllbGQuQ2FjaGVJbmZvLk5hbWUgPz8gZmllbGQuRmllbGRFbGVtZW50TmFtZX1gO1xyXG5cclxuICAgIGlmIChncmlkU3RhdGVUeXBlID09PSBHcmlkU2V0dGluZ1R5cGUuT3JpZ2luYWxTZXR0aW5nIHx8IGdyaWRTdGF0ZVR5cGUgPT09IEdyaWRTZXR0aW5nVHlwZS5TYXZlZFNldHRpbmcpIHtcclxuICAgICAgcmV0dXJuIGdyaWRTdGF0ZVR5cGUgKyBEZWxpbWl0ZXIuZGVmYXVsdCArIGNhY2hlTmFtZTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGdyaWRTdGF0ZVR5cGUgPT09IEdyaWRTZXR0aW5nVHlwZS5DYWNoZWREYXRhU2V0dGluZykge1xyXG4gICAgICByZXR1cm4gY2FjaGVOYW1lO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEdyaWRTdGF0ZUxvZ2ljKGZpZWxkOiBaRmllbGQpIHtcclxuICAgIGlmIChmaWVsZC5DYWNoZUluZm8pIHtcclxuICAgICAgY29uc3QgZW5hYmxlU2F2ZVN0YXRlID0gZmllbGQuQ2FjaGVJbmZvLkVuYWJsZVNhdmVTdGF0ZTtcclxuICAgICAgY29uc3QgZGlzYWJsZUNhY2hlRGF0YSA9IGZpZWxkLkNhY2hlSW5mby5EaXNhYmxlQ2FjaGVEYXRhO1xyXG5cclxuICAgICAgaWYgKGVuYWJsZVNhdmVTdGF0ZSAmJiAhZGlzYWJsZUNhY2hlRGF0YSkge1xyXG4gICAgICAgIHJldHVybiBHcmlkU3RhdGVMb2dpY1R5cGUuU2V0dGluZ0FuZERhdGFDYWNoZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChlbmFibGVTYXZlU3RhdGUgJiYgZGlzYWJsZUNhY2hlRGF0YSkge1xyXG4gICAgICAgIHJldHVybiBHcmlkU3RhdGVMb2dpY1R5cGUuU2V0dGluZ09ubHk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoIWVuYWJsZVNhdmVTdGF0ZSAmJiAhZGlzYWJsZUNhY2hlRGF0YSkge1xyXG4gICAgICAgIHJldHVybiBHcmlkU3RhdGVMb2dpY1R5cGUuRGF0YUNhY2hlT25seTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdDYWNoZUluZm8gaXMgdW5kZWZpbmVkLicpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
112
+ }], ctorParameters: function () { return [{ type: i1.StateSettingService }]; } });
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemdyaWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3pncmlkL3pncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsMkNBQTJDO0FBQzNDLE9BQU8sRUFDa0IsU0FBUyxFQUNqQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBTXhELE1BQU0sT0FBTyxZQUFZO0lBSXZCLFlBQ1UsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFIMUMscUJBQWdCLEdBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUt4RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGdCQUFnQixDQUFDLEtBQWE7UUFDbkMsK0dBQStHO1FBQy9HLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7UUFFbEQsc0VBQXNFO1FBQ3RFLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFMUQsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU5QywyRUFBMkU7WUFDM0UsSUFBSSxTQUFTLEtBQUssU0FBUyxDQUFDLGlCQUFpQixJQUFJLFNBQVMsS0FBSyxTQUFTLENBQUMseUJBQXlCLEVBQUU7Z0JBQ2xHLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzlFLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBRXBELElBQUksU0FBUyxFQUFFO29CQUNiLElBQUksQ0FBQyxTQUFTLEdBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQW1CLENBQUMsU0FBUyxDQUFDO2lCQUNyRTthQUNGO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFNBQWlCO1FBQzFDLElBQUk7WUFDRixJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFDNUMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEQ7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsT0FBTyxJQUFJLENBQUMsQ0FBQywrQkFBK0I7U0FDN0M7SUFDSCxDQUFDO0lBRU0sYUFBYSxDQUFDLFNBQW9CLEVBQUUsS0FBYTtRQUN0RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV4RCxJQUFJLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDeEIsdURBQXVEO1lBQ3ZELE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3hCO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakYsZ0JBQWdCLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV2QyxPQUFPLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FDaEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FDN0QsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLG1DQUFtQztnQkFDbkMsTUFBTSxnQkFBZ0IsR0FBRyxjQUFrQyxDQUFDO2dCQUM1RCxJQUFHLGdCQUFnQixDQUFDLFNBQVMsRUFBRTtvQkFDN0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQWtCLENBQUM7b0JBRTlFLElBQUksYUFBYSxFQUFFO3dCQUNqQixhQUFhLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUM7d0JBQy9DLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsMkJBQTJCO3FCQUN0RDtpQkFDRjthQUNGO1lBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUM7UUFDeEQsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLGVBQWUsQ0FBQyxTQUFpQixFQUFFLFdBQTBCO1FBQ2xFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLHNCQUFzQixDQUFDLFNBQWlCO1FBQzdDLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFNBQW9CLEVBQUUsS0FBYTtRQUN6RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hGLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEtBQWE7UUFDcEMsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO1lBQ3hELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQztZQUUxRCxJQUFJLGVBQWUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN4QyxPQUFPLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQzthQUM1QztpQkFDSSxJQUFJLGVBQWUsSUFBSSxnQkFBZ0IsRUFBRTtnQkFDNUMsT0FBTyxTQUFTLENBQUMsWUFBWSxDQUFDO2FBQy9CO2lCQUNJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDOUMsT0FBTyxTQUFTLENBQUMsaUJBQWlCLENBQUM7YUFDcEM7U0FDRjthQUNJO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzt5R0F4SFUsWUFBWTs2R0FBWixZQUFZLGNBRlgsTUFBTTsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IFN0YXRlIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5XCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7XHJcbiAgWkZpZWxkLCBaR3JpZFNldHRpbmdzLCBTdGF0ZVR5cGUsIFN0YXRlU2V0dGluZ1NlcnZpY2UsIFN0YXRlU2V0dGluZ0luZm9cclxufSBmcm9tICdtbWhnbG9iYWwtemNvcmUnO1xyXG5pbXBvcnQgeyBkZWZlciwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWkdyaWRTZXJ2aWNlIHtcclxuICBwcml2YXRlIGdyaWRTdGF0ZTogU3RhdGU7XHJcbiAgcHJpdmF0ZSBncmlkRGVmYXVsdFN0YXRlOiBTdGF0ZSA9IHsgc2tpcDogMCwgdGFrZTogMjAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHN0YXRlU2V0dGluZ1NlcnZpY2U6IFN0YXRlU2V0dGluZ1NlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbmZpZ3VyZSBncmlkIHNldHRpbmdzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBaRmllbGQgb2JqZWN0LlxyXG4gICAqIEBwYXJhbSBmaWVsZCBUaGUgWkZpZWxkIG9iamVjdCBjb250YWluaW5nIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24uXHJcbiAgICogQHJldHVybnMgVGhlIGNvbmZpZ3VyZWQgZ3JpZCBzdGF0ZS5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0dXBHcmlkU2V0dGluZyhmaWVsZDogWkZpZWxkKTogU3RhdGUge1xyXG4gICAgLy8gU2V0IHRoZSBkZWZhdWx0IG51bWJlciBvZiBpdGVtcyB0byBkaXNwbGF5ICh0YWtlKSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZmllbGQncyBQYWdlU2l6ZSBvciBhIGRlZmF1bHQgb2YgMjAuXHJcbiAgICB0aGlzLmdyaWREZWZhdWx0U3RhdGUudGFrZSA9IGZpZWxkLlBhZ2VTaXplIHx8IDIwO1xyXG5cclxuICAgIC8vIENyZWF0ZSBhIGNvcHkgb2YgdGhlIGRlZmF1bHQgc3RhdGUgYW5kIGFzc2lnbiBpdCB0byB0aGlzLmdyaWRTdGF0ZS5cclxuICAgIHRoaXMuZ3JpZFN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5ncmlkRGVmYXVsdFN0YXRlKTtcclxuXHJcbiAgICBpZiAoZmllbGQuQ2FjaGVJbmZvKSB7XHJcbiAgICAgIGxldCBzdGF0ZVR5cGUgPSB0aGlzLmdldEdyaWRTdGF0ZUxvZ2ljKGZpZWxkKTtcclxuXHJcbiAgICAgIC8vIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBTYXZlZFNldHRpbmcgY2FjaGUgdHlwZSBiYXNlZCBvbiBjb25maWd1cmF0aW9uLlxyXG4gICAgICBpZiAoc3RhdGVUeXBlID09PSBTdGF0ZVR5cGUuY2FjaGVkRGF0YVNldHRpbmcgfHwgc3RhdGVUeXBlID09PSBTdGF0ZVR5cGUuc2F2ZWRBbmRDYWNoZWREYXRhU2V0dGluZykge1xyXG4gICAgICAgIGxldCBjYWNoZU5hbWUgPSB0aGlzLnN0YXRlU2V0dGluZ1NlcnZpY2UuZ2V0U3RvcmFnZUNhY2hlS2V5KHN0YXRlVHlwZSwgZmllbGQpO1xyXG4gICAgICAgIGNvbnN0IGNhY2hlRGF0YSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oY2FjaGVOYW1lKTtcclxuXHJcbiAgICAgICAgaWYgKGNhY2hlRGF0YSkge1xyXG4gICAgICAgICAgdGhpcy5ncmlkU3RhdGUgPSAoSlNPTi5wYXJzZShjYWNoZURhdGEpIGFzIFpHcmlkU2V0dGluZ3MpLmdyaWRTdGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5ncmlkU3RhdGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhdGVDYWNoZUJ5TmFtZShjYWNoZU5hbWU6IHN0cmluZykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKCFjYWNoZU5hbWUpIHtcclxuICAgICAgICBjb25zb2xlLndhcm4oJ0ludmFsaWQgY2FjaGUgbmFtZSBwcm92aWRlZCcpO1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShjYWNoZU5hbWUpKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignRXJyb3IgYWNjZXNzaW5nIGxvY2FsU3RvcmFnZTonLCBlcnJvcik7XHJcbiAgICAgIHJldHVybiBudWxsOyAvLyBGYWxsYmFjayBpbiBjYXNlIG9mIGFuIGVycm9yXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhdGVDYWNoZShzdGF0ZVR5cGU6IFN0YXRlVHlwZSwgZmllbGQ6IFpGaWVsZCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBjYWNoZU5hbWUgPSB0aGlzLnN0YXRlU2V0dGluZ1NlcnZpY2UuZ2V0U3RvcmFnZUNhY2hlS2V5KHN0YXRlVHlwZSwgZmllbGQpO1xyXG4gICAgY29uc3QgY2FjaGVkU3RhdGUgPSB0aGlzLmdldFN0YXRlQ2FjaGVCeU5hbWUoY2FjaGVOYW1lKTtcclxuICBcclxuICAgIGlmIChjYWNoZWRTdGF0ZSAhPT0gbnVsbCkge1xyXG4gICAgICAvLyBSZXR1cm4gdGhlIGNhY2hlZCBzdGF0ZSBpbW1lZGlhdGVseSBpZiBpdCdzIG5vdCBudWxsXHJcbiAgICAgIHJldHVybiBvZihjYWNoZWRTdGF0ZSk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBjb25zdCBzdGF0ZVNldHRpbmdJbmZvID0gdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmluaXRHZXRTdGF0ZVNldHRpbmdJbmZvKGZpZWxkKTtcclxuICAgIHN0YXRlU2V0dGluZ0luZm8uc3RhdGVUeXBlID0gc3RhdGVUeXBlO1xyXG4gICBcclxuICAgIHJldHVybiBkZWZlcigoKSA9PiBcclxuICAgICAgdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmdldFN0YXRlU2V0dGluZyhzdGF0ZVNldHRpbmdJbmZvKS5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgocmV0cmlldmVkU3RhdGUpID0+IHtcclxuICAgICAgICAgIGlmIChyZXRyaWV2ZWRTdGF0ZSkge1xyXG4gICAgICAgICAgICAvLyBQYXJzZSBhbmQgc2V0IHN0YXRlIGlmIGF2YWlsYWJsZVxyXG4gICAgICAgICAgICBjb25zdCBzdGF0ZVNldHRpbmdJbmZvID0gcmV0cmlldmVkU3RhdGUgYXMgU3RhdGVTZXR0aW5nSW5mbztcclxuICAgICAgICAgICAgaWYoc3RhdGVTZXR0aW5nSW5mby5zdGF0ZURhdGEpIHtcclxuICAgICAgICAgICAgICBjb25zdCBncmlkU3RhdGVEYXRhID0gSlNPTi5wYXJzZShzdGF0ZVNldHRpbmdJbmZvLnN0YXRlRGF0YSkgYXMgWkdyaWRTZXR0aW5ncztcclxuICAgIFxyXG4gICAgICAgICAgICAgIGlmIChncmlkU3RhdGVEYXRhKSB7XHJcbiAgICAgICAgICAgICAgICBncmlkU3RhdGVEYXRhLmlkID0gc3RhdGVTZXR0aW5nSW5mby5pZC50b1N0cmluZygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZVRvQ2FjaGUoY2FjaGVOYW1lLCBncmlkU3RhdGVEYXRhKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBvZihncmlkU3RhdGVEYXRhKTsgLy8gRW1pdCB0aGUgcmV0cmlldmVkIHN0YXRlXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gb2YobnVsbCk7IC8vIENvbXBsZXRlIHdpdGhvdXQgZW1pdHRpbmcgYW55dGhpbmdcclxuICAgICAgICB9KSBcclxuICAgICAgKVxyXG4gICAgKTtcclxuICB9XHJcbiAgICBcclxuICBwdWJsaWMgc2V0U3RhdGVUb0NhY2hlKGNhY2hlTmFtZTogc3RyaW5nLCBncmlkU2V0dGluZzogWkdyaWRTZXR0aW5ncykge1xyXG4gICAgY29uc3QgY2FjaGVEYXRhID0gSlNPTi5zdHJpbmdpZnkoZ3JpZFNldHRpbmcpO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oY2FjaGVOYW1lLCBjYWNoZURhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRlbGV0ZVN0YXRlQ2FjaGVCeU5hbWUoY2FjaGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGNhY2hlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVsZXRlU3RhdGVDYWNoZShzdGF0ZVR5cGU6IFN0YXRlVHlwZSwgZmllbGQ6IFpGaWVsZCkge1xyXG4gICAgY29uc3QgY2FjaGVOYW1lID0gdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmdldFN0b3JhZ2VDYWNoZUtleShzdGF0ZVR5cGUsIGZpZWxkKTtcclxuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGNhY2hlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0R3JpZFN0YXRlTG9naWMoZmllbGQ6IFpGaWVsZCkge1xyXG4gICAgaWYgKGZpZWxkLkNhY2hlSW5mbykge1xyXG4gICAgICBjb25zdCBlbmFibGVTYXZlU3RhdGUgPSBmaWVsZC5DYWNoZUluZm8uRW5hYmxlU2F2ZVN0YXRlO1xyXG4gICAgICBjb25zdCBkaXNhYmxlQ2FjaGVEYXRhID0gZmllbGQuQ2FjaGVJbmZvLkRpc2FibGVDYWNoZURhdGE7XHJcblxyXG4gICAgICBpZiAoZW5hYmxlU2F2ZVN0YXRlICYmICFkaXNhYmxlQ2FjaGVEYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIFN0YXRlVHlwZS5zYXZlZEFuZENhY2hlZERhdGFTZXR0aW5nO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGVuYWJsZVNhdmVTdGF0ZSAmJiBkaXNhYmxlQ2FjaGVEYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIFN0YXRlVHlwZS5zYXZlZFNldHRpbmc7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoIWVuYWJsZVNhdmVTdGF0ZSAmJiAhZGlzYWJsZUNhY2hlRGF0YSkge1xyXG4gICAgICAgIHJldHVybiBTdGF0ZVR5cGUuY2FjaGVkRGF0YVNldHRpbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmxvZygnQ2FjaGVJbmZvIGlzIHVuZGVmaW5lZC4nKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIl19
@@ -114,7 +114,7 @@ export class ZmodalMobileComponent {
114
114
  }
115
115
  }
116
116
  ZmodalMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZmodalMobileComponent, deps: [{ token: i1.WebApiService }, { token: i1.ZCoreService }, { token: i1.ComponentErrorHandlerService }, { token: i1.FieldService }, { token: i2.ZComponentService }], target: i0.ɵɵFactoryTarget.Component });
117
- ZmodalMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZmodalMobileComponent, selector: "app-zmodal", inputs: { modalParams: "modalParams" }, ngImport: i0, template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""], components: [{ type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { type: i4.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { type: i5.UiactionbuttonComponent, selector: "app-uiactionbutton" }, { type: i3.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { type: i3.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { type: i3.IonRow, selector: "ion-row" }, { type: i3.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { type: i6.ZformComponent, selector: "app-zform", inputs: ["group", "fieldName"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ScrollbarThemeDirective, selector: "[appScrollbarTheme]" }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i9.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }], pipes: { "json": i7.JsonPipe } });
117
+ ZmodalMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZmodalMobileComponent, selector: "app-zmodal", inputs: { modalParams: "modalParams" }, ngImport: i0, template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""], components: [{ type: i3.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { type: i3.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { type: i3.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { type: i4.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i3.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { type: i5.UiactionbuttonComponent, selector: "app-uiactionbutton" }, { type: i3.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { type: i3.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { type: i3.IonRow, selector: "ion-row" }, { type: i3.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { type: i6.ZformComponent, selector: "app-zform", inputs: ["group", "fieldName"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ScrollbarThemeDirective, selector: "[appScrollbarTheme]" }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i9.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }], pipes: { "json": i7.JsonPipe } });
118
118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZmodalMobileComponent, decorators: [{
119
119
  type: Component,
120
120
  args: [{ selector: "app-zmodal", template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""] }]
@@ -119,7 +119,7 @@ export class ZmodalComponent extends DialogContentBase {
119
119
  }
120
120
  }
121
121
  ZmodalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZmodalComponent, deps: [{ token: i1.DialogRef }, { token: i2.ModalController }, { token: i3.ZCoreService }, { token: i3.WebApiService }, { token: i3.ResourceApiService }, { token: i3.ComponentErrorHandlerService }, { token: i3.FieldService }, { token: i2.Platform }, { token: i3.AlertService }, { token: i4.ZComponentService }], target: i0.ɵɵFactoryTarget.Component });
122
- ZmodalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZmodalComponent, selector: "app-zmodal", inputs: { modalParams: "modalParams" }, usesInheritance: true, ngImport: i0, template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""], components: [{ type: i2.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { type: i2.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { type: i2.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { type: i2.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { type: i5.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i2.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { type: i6.UiactionbuttonComponent, selector: "app-uiactionbutton" }, { type: i2.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { type: i2.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { type: i2.IonRow, selector: "ion-row" }, { type: i2.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { type: i2.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { type: i7.ZformComponent, selector: "app-zform", inputs: ["group", "fieldName"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ScrollbarThemeDirective, selector: "[appScrollbarTheme]" }, { type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }], pipes: { "json": i8.JsonPipe } });
122
+ ZmodalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZmodalComponent, selector: "app-zmodal", inputs: { modalParams: "modalParams" }, usesInheritance: true, ngImport: i0, template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""], components: [{ type: i2.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { type: i2.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { type: i2.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { type: i2.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { type: i5.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i2.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { type: i6.UiactionbuttonComponent, selector: "app-uiactionbutton" }, { type: i2.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { type: i2.IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { type: i2.IonRow, selector: "ion-row" }, { type: i2.IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { type: i2.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { type: i7.ZformComponent, selector: "app-zform", inputs: ["group", "fieldName"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ScrollbarThemeDirective, selector: "[appScrollbarTheme]" }, { type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }], pipes: { "json": i8.JsonPipe } });
123
123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZmodalComponent, decorators: [{
124
124
  type: Component,
125
125
  args: [{ selector: 'app-zmodal', template: "<ion-header *ngIf=\"isMobileScreen()\">\r\n <ion-toolbar>\r\n <ion-buttons slot=\"start\">\r\n <ion-button (click)=\"onCancel()\">\r\n <!-- <ion-icon name=\"close\"></ion-icon> -->\r\n <fa-icon [icon]=\"'times'\" size=\"lg\"></fa-icon>\r\n </ion-button>\r\n </ion-buttons>\r\n <ion-title>\r\n {{ modalParams.formHeader }}\r\n </ion-title>\r\n <ion-buttons slot=\"primary\" *ngIf=\"!group.isLoading\">\r\n <app-uiactionbutton [group]=\"group\"></app-uiactionbutton>\r\n </ion-buttons>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content appScrollbarTheme [ngStyle]=\"getGridStyle()\">\r\n <ion-grid>\r\n <ion-row *ngIf=\"group.isLoading\" class=\"ion-text-center\">\r\n <ion-col class=\"ion-margin ion-padding\">\r\n <ion-spinner></ion-spinner>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"!group.isLoading\">\r\n <ion-col>\r\n <app-zform [group]=\"group\"></app-zform>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf=\"isSITEnvironment() && !group.isLoading\">\r\n <ion-col>\r\n <pre style=\"font-size: x-small;\">{{group.zModel | json}}</pre>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n", styles: [""] }]