@pepperi-addons/ngx-composite-lib 0.4.2-beta.146 → 0.4.2-beta.148

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.
@@ -17,7 +17,7 @@ export class ManageParametersComponent {
17
17
  this.showPersistency = false;
18
18
  // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).
19
19
  this.parametersColumns = [];
20
- this.parameters = [];
20
+ this._parameters = [];
21
21
  this.parametersTitle = '';
22
22
  this.parametersChange = new EventEmitter();
23
23
  this.listMessages = {};
@@ -46,9 +46,18 @@ export class ManageParametersComponent {
46
46
  }
47
47
  };
48
48
  }
49
- notifyParametersChange() {
50
- this.parametersChange.emit(this.parameters);
49
+ set parameters(value) {
50
+ this._parameters = value || [];
51
+ this.notifyParametersChange(false);
52
+ }
53
+ get parameters() {
54
+ return this._parameters;
55
+ }
56
+ notifyParametersChange(raiseEvent = true) {
51
57
  this.dataSource = this.getDataSource();
58
+ if (raiseEvent) {
59
+ this.parametersChange.emit(this.parameters);
60
+ }
52
61
  }
53
62
  getDataSource() {
54
63
  return {
@@ -75,6 +84,7 @@ export class ManageParametersComponent {
75
84
  };
76
85
  }
77
86
  ngOnInit() {
87
+ // TODO: Sort the parameters by name
78
88
  this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {
79
89
  this.listMessages = translations;
80
90
  this.dataSource = this.getDataSource();
@@ -163,4 +173,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
163
173
  }], parametersChange: [{
164
174
  type: Output
165
175
  }] } });
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbWFuYWdlLXBhcmFtZXRlcnMvbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbWFuYWdlLXBhcmFtZXRlcnMvbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQUUsYUFBYSxFQUFvQixNQUFNLGdDQUFnQyxDQUFDO0FBR2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7Ozs7O0FBU3pGLE1BQU0sT0FBTyx5QkFBeUI7SUFvRGxDLFlBQXFCLFNBQTJCLEVBQ3BDLGVBQXdDLEVBQ3hDLGFBQStCO1FBRnRCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUF5QjtRQUN4QyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFuRDNDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBRzFCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLDhHQUE4RztRQUU5RyxzQkFBaUIsR0FBd0IsRUFBRSxDQUFDO1FBRzVDLGVBQVUsR0FBbUIsRUFBRSxDQUFDO1FBR2hDLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBR3JCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBR3RELGlCQUFZLEdBQThCLEVBQUUsQ0FBQztRQUU3QyxZQUFPLEdBQTJCO1lBQzlCLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBc0IsRUFBRSxF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QUMsU0FBUyxDQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsRUFBRTtZQUM1RixJQUFJLGVBQWUsRUFBRTtnQkFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUNsRSxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRTtvQkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ2pDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO2lCQUNqQzthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztzSEFyS1EseUJBQXlCOzBHQUF6Qix5QkFBeUIsb1VDZnRDLHVzQkFtQm1COzJGREpOLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDSSx1QkFBdUI7NEtBT2pDLFFBQVE7c0JBRFAsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUtOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgSVBlcEdlbmVyaWNMaXN0QWN0aW9ucywgSVBlcEdlbmVyaWNMaXN0RGF0YVNvdXJjZSwgSVBlcEdlbmVyaWNMaXN0UGFyYW1zIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1jb21wb3NpdGUtbGliL2dlbmVyaWMtbGlzdCc7XG5pbXBvcnQgeyBQZXBEaWFsb2dEYXRhLCBQZXBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZGlhbG9nJztcbmltcG9ydCB7IFBlcFNlbGVjdGlvbkRhdGEgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9saXN0JztcbmltcG9ydCB7IFBhcmFtZXRlckZvcm1UeXBlLCBJUGFyYW1ldGVyRm9ybURhdGEsIElQYXJhbWVtZXRlciwgSVBhcmFtZXRlcnNDb2x1bW4gfSBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLm1vZGVsJztcbmltcG9ydCB7IE1hbmFnZVBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlci9tYW5hZ2UtcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJUGVwRmllbGRDbGlja0V2ZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgTWFuYWdlUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1tYW5hZ2UtcGFyYW1ldGVycycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21hbmFnZS1wYXJhbWV0ZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tYW5hZ2UtcGFyYW1ldGVycy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hbmFnZVBhcmFtZXRlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KClcbiAgICBzaG93VHlwZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBzaG93QWNjZXNzaWJpbGl0eSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBzaG93UGVyc2lzdGVuY3kgPSBmYWxzZTtcblxuICAgIC8vIElmIGNvbHVtbnMgYXJlIG5vdCBkZWZpbmVkLCB0aGUgZGVmYXVsdCBjb2x1bW5zIHdpbGwgYmUgdXNlZCAoZGVmYXVsdCBpcyB3aXRoIG5vIEludGVybmFsIC0gQWNjZXNzaWJpbGl0eSkuXG4gICAgQElucHV0KClcbiAgICBwYXJhbWV0ZXJzQ29sdW1uczogSVBhcmFtZXRlcnNDb2x1bW5bXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwYXJhbWV0ZXJzOiBJUGFyYW1lbWV0ZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwYXJhbWV0ZXJzVGl0bGUgPSAnJztcblxuICAgIEBPdXRwdXQoKVxuICAgIHBhcmFtZXRlcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElQYXJhbWVtZXRlcltdPigpO1xuICAgIFxuICAgIGRhdGFTb3VyY2UhOiBJUGVwR2VuZXJpY0xpc3REYXRhU291cmNlO1xuICAgIGxpc3RNZXNzYWdlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuXG4gICAgYWN0aW9uczogSVBlcEdlbmVyaWNMaXN0QWN0aW9ucyA9IHtcbiAgICAgICAgZ2V0OiBhc3luYyAoZGF0YTogUGVwU2VsZWN0aW9uRGF0YSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWN0aW9ucyA9IFtdO1xuICAgICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5yb3dzLmxlbmd0aCA9PSAxKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFyYW1OYW1lID0gZGF0YS5yb3dzWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlYWRPbmx5ID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmQoeCA9PiB4LktleSA9PT0gcGFyYW1OYW1lKT8uUmVhZG9ubHkgPz8gZmFsc2U7XG4gICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0VkaXQnKSxcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlcjogYXN5bmMgKG9ianM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcGVuQ3JlYXRlUGFyYW1Gb3JtKCdlZGl0Jywgb2Jqcy5yb3dzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmICghcmVhZE9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdEZWxldGUnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXI6IGFzeW5jIChvYmpzOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dEZWxldGVEaWFsb2cob2Jqcy5yb3dzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yIChwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkYXRhVmlld1NlcnZpY2U6IE1hbmFnZVBhcmFtZXRlcnNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IFBlcERpYWxvZ1NlcnZpY2VcbiAgICApIHsgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlQYXJhbWV0ZXJzQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLnBhcmFtZXRlcnNDaGFuZ2UuZW1pdCh0aGlzLnBhcmFtZXRlcnMpO1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UgPSB0aGlzLmdldERhdGFTb3VyY2UoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERhdGFTb3VyY2UoKTogSVBlcEdlbmVyaWNMaXN0RGF0YVNvdXJjZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpbml0OiBhc3luYyAocGFyYW1zOiBJUGVwR2VuZXJpY0xpc3RQYXJhbXMpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBsaXN0RGF0YVZpZXcgPSB0aGlzLmRhdGFWaWV3U2VydmljZS5nZXRQYXJhbWV0ZXJzTGlzdERhdGFWaWV3KHRoaXMucGFyYW1ldGVyc0NvbHVtbnMsIHRoaXMuc2hvd1R5cGUsIHRoaXMuc2hvd0FjY2Vzc2liaWxpdHksIHRoaXMuc2hvd1BlcnNpc3RlbmN5KTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnZGF0YSB2aWV3OicsIGxpc3REYXRhVmlldyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YVZpZXc6IGxpc3REYXRhVmlldyxcbiAgICAgICAgICAgICAgICAgICAgdG90YWxDb3VudDogdGhpcy5wYXJhbWV0ZXJzLmxlbmd0aCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMucGFyYW1ldGVyc1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5wdXRzOiB7XG4gICAgICAgICAgICAgICAgcGFnZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3Njcm9sbCdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHNlbGVjdGlvblR5cGU6ICdzaW5nbGUnLFxuICAgICAgICAgICAgICAgIGVtcHR5U3RhdGU6IHtcbiAgICAgICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMubGlzdE1lc3NhZ2VzWydNQU5BR0VfUEFSQU1FVEVSUy5FTVBUWV9TVEFURV9USVRMRSddLFxuICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5saXN0TWVzc2FnZXNbJ01BTkFHRV9QQVJBTUVURVJTLkVNUFRZX1NUQVRFX0RFU0NSSVBUSU9OJ10sXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBJUGVwR2VuZXJpY0xpc3REYXRhU291cmNlXG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJhbnNsYXRlLmdldChbJ01BTkFHRV9QQVJBTUVURVJTLkVNUFRZX1NUQVRFX1RJVExFJywgJ01BTkFHRV9QQVJBTUVURVJTLkVNUFRZX1NUQVRFX0RFU0NSSVBUSU9OJ10pLnN1YnNjcmliZSh0cmFuc2xhdGlvbnMgPT4ge1xuICAgICAgICAgICAgdGhpcy5saXN0TWVzc2FnZXMgPSB0cmFuc2xhdGlvbnM7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UgPSB0aGlzLmdldERhdGFTb3VyY2UoKTtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBvbkZpZWxkQ2xpY2soZXZlbnQ6IElQZXBGaWVsZENsaWNrRXZlbnQpIHtcbiAgICAgICAgdGhpcy5vcGVuQ3JlYXRlUGFyYW1Gb3JtKCdlZGl0JywgZXZlbnQudmFsdWUpO1xuICAgIH1cblxuICAgIG9wZW5DcmVhdGVQYXJhbUZvcm0oZm9ybU1vZGU6IFBhcmFtZXRlckZvcm1UeXBlLCBwYXJhbU5hbWUgPSAnJykge1xuICAgICAgICBjb25zdCBwYXJhbUl0ZW0gPSB0aGlzLnBhcmFtZXRlcnMuZmluZCh4ID0+IHguS2V5ID09PSBwYXJhbU5hbWUpO1xuICAgICAgICBjb25zdCBkZWZhdWx0UGFyYW06IElQYXJhbWVtZXRlciA9IHtcbiAgICAgICAgICAgIERlZmF1bHRWYWx1ZTogJycsXG4gICAgICAgICAgICBLZXk6ICcnLFxuICAgICAgICAgICAgVHlwZTogJ1N0cmluZycsXG4gICAgICAgICAgICBEZXNjcmlwdGlvbjogJydcbiAgICAgICAgfTtcblxuICAgICAgICAvLyBBZGQgQWNjZXNzaWJpbGl0eSBmaWVsZCBvbmx5IGlmIHNob3dBY2Nlc3NpYmlsaXR5IGlzIHRydWUuXG4gICAgICAgIGlmICh0aGlzLnNob3dBY2Nlc3NpYmlsaXR5KSB7XG4gICAgICAgICAgICBkZWZhdWx0UGFyYW1bJ0ludGVybmFsJ10gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQWRkIFBlcnNpc3RlbmN5IGZpZWxkIG9ubHkgaWYgc2hvd1BlcnNpc3RlbmN5IGlzIHRydWUuXG4gICAgICAgIGlmICh0aGlzLnNob3dQZXJzaXN0ZW5jeSkge1xuICAgICAgICAgICAgZGVmYXVsdFBhcmFtWydQZXJzaXN0ZW5jeSddID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJhbWV0ZXIgPSB7IC4uLmRlZmF1bHRQYXJhbSwgLi4ucGFyYW1JdGVtIH07XG4gICAgXG4gICAgICAgIGNvbnN0IGZvcm1EYXRhOiBJUGFyYW1ldGVyRm9ybURhdGEgPSB7XG4gICAgICAgICAgICBQYXJhbWV0ZXI6IHBhcmFtZXRlcixcbiAgICAgICAgICAgIE1vZGU6IGZvcm1Nb2RlLFxuICAgICAgICAgICAgU2hvd1R5cGU6IHRoaXMuc2hvd1R5cGUsXG4gICAgICAgICAgICBTaG93QWNjZXNzaWJpbGl0eTogdGhpcy5zaG93QWNjZXNzaWJpbGl0eSxcbiAgICAgICAgICAgIFNob3dQZXJzaXN0ZW5jeTogdGhpcy5zaG93UGVyc2lzdGVuY3ksXG4gICAgICAgICAgICBSZWFkb25seTogcGFyYW1JdGVtPy5SZWFkb25seVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXREaWFsb2dDb25maWcoe30sICdsYXJnZScpO1xuICAgICAgICBjb25maWcuZGF0YSA9IG5ldyBQZXBEaWFsb2dEYXRhKHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IE1hbmFnZVBhcmFtZXRlckNvbXBvbmVudFxuICAgICAgICB9KVxuICAgICAgICBcbiAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW5EaWFsb2coTWFuYWdlUGFyYW1ldGVyQ29tcG9uZW50LCBmb3JtRGF0YSwgY29uZmlnKS5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgodmFsdWU6IElQYXJhbWVtZXRlcikgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnBhcmFtZXRlcnMuZmluZEluZGV4KHBhcmFtID0+IHBhcmFtLktleSA9PT0gdmFsdWUuS2V5KTtcbiAgICAgICAgICAgICAgICAvLyBpZiB0aGUgcGFyYW0gZG9lc24ndCBleGlzdCwgcHVzaCB0byB0aGUgZW5kIG9mIHRoZSBhcnJheSwgb3RoZXJ3aXNlIGVkaXQgZXhpc3RpbmdcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFyYW1ldGVycy5wdXNoKHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFyYW1ldGVycy5zcGxpY2UoaW5kZXgsIDEsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLm5vdGlmeVBhcmFtZXRlcnNDaGFuZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2hvd0RlbGV0ZURpYWxvZyhwYXJhbU5hbWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCBkYXRhTXNnID0gbmV3IFBlcERpYWxvZ0RhdGEoe1xuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFTEVURV9ESUFMT0dfVElUTEUnLCB7IHBhcmFtX25hbWU6IHBhcmFtTmFtZSB9KSxcbiAgICAgICAgICAgIGFjdGlvbnNUeXBlOiAnY2FuY2VsLWRlbGV0ZScsXG4gICAgICAgICAgICBjb250ZW50OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5ERUxFVEVfRElBTE9HX0NPTlRFTlQnKVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbkRlZmF1bHREaWFsb2coZGF0YU1zZykuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoYXN5bmMgKGlzRGVsZXRlUHJlc3NlZCkgPT4ge1xuICAgICAgICAgICAgaWYgKGlzRGVsZXRlUHJlc3NlZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmRJbmRleCh4ID0+IHguS2V5ID09PSBwYXJhbU5hbWUpO1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFyYW1ldGVycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmeVBhcmFtZXRlcnNDaGFuZ2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxwZXAtZ2VuZXJpYy1saXN0IGNsYXNzPVwiZ2VuZXJpYy1saXN0XCJcbiAgICBbdGl0bGVdPVwicGFyYW1ldGVyc1RpdGxlIHx8ICgnTUFOQUdFX1BBUkFNRVRFUlMuVElUTEUnIHwgdHJhbnNsYXRlKVwiXG4gICAgW3Nob3dUb3BCYXJdPVwidHJ1ZVwiIFxuICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBcbiAgICBbaW5saW5lXT1cInRydWVcIlxuICAgIFthY3Rpb25zXT1cImFjdGlvbnNcIlxuICAgIFthZGRQYWRkaW5nXT1cImZhbHNlXCJcbiAgICBbdXVpZE1hcHBpbmddPVwiJ0tleSdcIlxuICAgIChmaWVsZENsaWNrKT1cIm9uRmllbGRDbGljaygkZXZlbnQpXCJcbiAgICA+XG4gICAgPG5nLWNvbnRhaW5lciByaWdodC1idXR0b25zPlxuICAgICAgICA8cGVwLWJ1dHRvbiBcbiAgICAgICAgICAgIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiXG4gICAgICAgICAgICBbc2l6ZVR5cGVdPVwiJ3NtJ1wiIFxuICAgICAgICAgICAgW3ZhbHVlXT1cIidNQU5BR0VfUEFSQU1FVEVSUy5BRERfQlVUVE9OX1RJVExFJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICBbc3R5bGVUeXBlXT1cIidzdHJvbmcnXCIgXG4gICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwib3BlbkNyZWF0ZVBhcmFtRm9ybSgnYWRkJywgJycpXCJcbiAgICAgICAgPjwvcGVwLWJ1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvcGVwLWdlbmVyaWMtbGlzdD4iXX0=
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbWFuYWdlLXBhcmFtZXRlcnMvbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbWFuYWdlLXBhcmFtZXRlcnMvbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQUUsYUFBYSxFQUFvQixNQUFNLGdDQUFnQyxDQUFDO0FBR2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7Ozs7O0FBU3pGLE1BQU0sT0FBTyx5QkFBeUI7SUEyRGxDLFlBQXFCLFNBQTJCLEVBQ3BDLGVBQXdDLEVBQ3hDLGFBQStCO1FBRnRCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUF5QjtRQUN4QyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUExRDNDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBRzFCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLDhHQUE4RztRQUU5RyxzQkFBaUIsR0FBd0IsRUFBRSxDQUFDO1FBRXBDLGdCQUFXLEdBQW1CLEVBQUUsQ0FBQztRQVd6QyxvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUdyQixxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztRQUd0RCxpQkFBWSxHQUE4QixFQUFFLENBQUM7UUFFN0MsWUFBTyxHQUEyQjtZQUM5QixHQUFHLEVBQUUsS0FBSyxFQUFFLElBQXNCLEVBQUUs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dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgSVBlcEdlbmVyaWNMaXN0QWN0aW9ucywgSVBlcEdlbmVyaWNMaXN0RGF0YVNvdXJjZSwgSVBlcEdlbmVyaWNMaXN0UGFyYW1zIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1jb21wb3NpdGUtbGliL2dlbmVyaWMtbGlzdCc7XG5pbXBvcnQgeyBQZXBEaWFsb2dEYXRhLCBQZXBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZGlhbG9nJztcbmltcG9ydCB7IFBlcFNlbGVjdGlvbkRhdGEgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9saXN0JztcbmltcG9ydCB7IFBhcmFtZXRlckZvcm1UeXBlLCBJUGFyYW1ldGVyRm9ybURhdGEsIElQYXJhbWVtZXRlciwgSVBhcmFtZXRlcnNDb2x1bW4gfSBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLm1vZGVsJztcbmltcG9ydCB7IE1hbmFnZVBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlci9tYW5hZ2UtcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJUGVwRmllbGRDbGlja0V2ZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgTWFuYWdlUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1tYW5hZ2UtcGFyYW1ldGVycycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21hbmFnZS1wYXJhbWV0ZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tYW5hZ2UtcGFyYW1ldGVycy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hbmFnZVBhcmFtZXRlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KClcbiAgICBzaG93VHlwZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBzaG93QWNjZXNzaWJpbGl0eSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBzaG93UGVyc2lzdGVuY3kgPSBmYWxzZTtcblxuICAgIC8vIElmIGNvbHVtbnMgYXJlIG5vdCBkZWZpbmVkLCB0aGUgZGVmYXVsdCBjb2x1bW5zIHdpbGwgYmUgdXNlZCAoZGVmYXVsdCBpcyB3aXRoIG5vIEludGVybmFsIC0gQWNjZXNzaWJpbGl0eSkuXG4gICAgQElucHV0KClcbiAgICBwYXJhbWV0ZXJzQ29sdW1uczogSVBhcmFtZXRlcnNDb2x1bW5bXSA9IFtdO1xuXG4gICAgcHJpdmF0ZSBfcGFyYW1ldGVyczogSVBhcmFtZW1ldGVyW10gPSBbXTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBwYXJhbWV0ZXJzKHZhbHVlOiBJUGFyYW1lbWV0ZXJbXSkge1xuICAgICAgICB0aGlzLl9wYXJhbWV0ZXJzID0gdmFsdWUgfHwgW107XG4gICAgICAgIHRoaXMubm90aWZ5UGFyYW1ldGVyc0NoYW5nZShmYWxzZSk7XG4gICAgfVxuICAgIGdldCBwYXJhbWV0ZXJzKCk6IElQYXJhbWVtZXRlcltdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmFtZXRlcnM7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwYXJhbWV0ZXJzVGl0bGUgPSAnJztcblxuICAgIEBPdXRwdXQoKVxuICAgIHBhcmFtZXRlcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElQYXJhbWVtZXRlcltdPigpO1xuICAgIFxuICAgIGRhdGFTb3VyY2UhOiBJUGVwR2VuZXJpY0xpc3REYXRhU291cmNlO1xuICAgIGxpc3RNZXNzYWdlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuXG4gICAgYWN0aW9uczogSVBlcEdlbmVyaWNMaXN0QWN0aW9ucyA9IHtcbiAgICAgICAgZ2V0OiBhc3luYyAoZGF0YTogUGVwU2VsZWN0aW9uRGF0YSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWN0aW9ucyA9IFtdO1xuICAgICAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5yb3dzLmxlbmd0aCA9PSAxKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFyYW1OYW1lID0gZGF0YS5yb3dzWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlYWRPbmx5ID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmQoeCA9PiB4LktleSA9PT0gcGFyYW1OYW1lKT8uUmVhZG9ubHkgPz8gZmFsc2U7XG4gICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0VkaXQnKSxcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlcjogYXN5bmMgKG9ianM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcGVuQ3JlYXRlUGFyYW1Gb3JtKCdlZGl0Jywgb2Jqcy5yb3dzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmICghcmVhZE9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdEZWxldGUnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXI6IGFzeW5jIChvYmpzOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dEZWxldGVEaWFsb2cob2Jqcy5yb3dzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yIChwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkYXRhVmlld1NlcnZpY2U6IE1hbmFnZVBhcmFtZXRlcnNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IFBlcERpYWxvZ1NlcnZpY2VcbiAgICApIHsgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlQYXJhbWV0ZXJzQ2hhbmdlKHJhaXNlRXZlbnQgPSB0cnVlKSB7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IHRoaXMuZ2V0RGF0YVNvdXJjZSgpO1xuICAgICAgICBcbiAgICAgICAgaWYgKHJhaXNlRXZlbnQpIHtcbiAgICAgICAgICAgIHRoaXMucGFyYW1ldGVyc0NoYW5nZS5lbWl0KHRoaXMucGFyYW1ldGVycyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERhdGFTb3VyY2UoKTogSVBlcEdlbmVyaWNMaXN0RGF0YVNvdXJjZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpbml0OiBhc3luYyAocGFyYW1zOiBJUGVwR2VuZXJpY0xpc3RQYXJhbXMpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBsaXN0RGF0YVZpZXcgPSB0aGlzLmRhdGFWaWV3U2VydmljZS5nZXRQYXJhbWV0ZXJzTGlzdERhdGFWaWV3KHRoaXMucGFyYW1ldGVyc0NvbHVtbnMsIHRoaXMuc2hvd1R5cGUsIHRoaXMuc2hvd0FjY2Vzc2liaWxpdHksIHRoaXMuc2hvd1BlcnNpc3RlbmN5KTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnZGF0YSB2aWV3OicsIGxpc3REYXRhVmlldyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YVZpZXc6IGxpc3REYXRhVmlldyxcbiAgICAgICAgICAgICAgICAgICAgdG90YWxDb3VudDogdGhpcy5wYXJhbWV0ZXJzLmxlbmd0aCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMucGFyYW1ldGVyc1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5wdXRzOiB7XG4gICAgICAgICAgICAgICAgcGFnZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3Njcm9sbCdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHNlbGVjdGlvblR5cGU6ICdzaW5nbGUnLFxuICAgICAgICAgICAgICAgIGVtcHR5U3RhdGU6IHtcbiAgICAgICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMubGlzdE1lc3NhZ2VzWydNQU5BR0VfUEFSQU1FVEVSUy5FTVBUWV9TVEFURV9USVRMRSddLFxuICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5saXN0TWVzc2FnZXNbJ01BTkFHRV9QQVJBTUVURVJTLkVNUFRZX1NUQVRFX0RFU0NSSVBUSU9OJ10sXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBJUGVwR2VuZXJpY0xpc3REYXRhU291cmNlXG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIFRPRE86IFNvcnQgdGhlIHBhcmFtZXRlcnMgYnkgbmFtZVxuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoWydNQU5BR0VfUEFSQU1FVEVSUy5FTVBUWV9TVEFURV9USVRMRScsICdNQU5BR0VfUEFSQU1FVEVSUy5FTVBUWV9TVEFURV9ERVNDUklQVElPTiddKS5zdWJzY3JpYmUodHJhbnNsYXRpb25zID0+IHtcbiAgICAgICAgICAgIHRoaXMubGlzdE1lc3NhZ2VzID0gdHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlID0gdGhpcy5nZXREYXRhU291cmNlKCk7XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgb25GaWVsZENsaWNrKGV2ZW50OiBJUGVwRmllbGRDbGlja0V2ZW50KSB7XG4gICAgICAgIHRoaXMub3BlbkNyZWF0ZVBhcmFtRm9ybSgnZWRpdCcsIGV2ZW50LnZhbHVlKTtcbiAgICB9XG5cbiAgICBvcGVuQ3JlYXRlUGFyYW1Gb3JtKGZvcm1Nb2RlOiBQYXJhbWV0ZXJGb3JtVHlwZSwgcGFyYW1OYW1lID0gJycpIHtcbiAgICAgICAgY29uc3QgcGFyYW1JdGVtID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmQoeCA9PiB4LktleSA9PT0gcGFyYW1OYW1lKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdFBhcmFtOiBJUGFyYW1lbWV0ZXIgPSB7XG4gICAgICAgICAgICBEZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgICAgICAgS2V5OiAnJyxcbiAgICAgICAgICAgIFR5cGU6ICdTdHJpbmcnLFxuICAgICAgICAgICAgRGVzY3JpcHRpb246ICcnXG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gQWRkIEFjY2Vzc2liaWxpdHkgZmllbGQgb25seSBpZiBzaG93QWNjZXNzaWJpbGl0eSBpcyB0cnVlLlxuICAgICAgICBpZiAodGhpcy5zaG93QWNjZXNzaWJpbGl0eSkge1xuICAgICAgICAgICAgZGVmYXVsdFBhcmFtWydJbnRlcm5hbCddID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEFkZCBQZXJzaXN0ZW5jeSBmaWVsZCBvbmx5IGlmIHNob3dQZXJzaXN0ZW5jeSBpcyB0cnVlLlxuICAgICAgICBpZiAodGhpcy5zaG93UGVyc2lzdGVuY3kpIHtcbiAgICAgICAgICAgIGRlZmF1bHRQYXJhbVsnUGVyc2lzdGVuY3knXSA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyYW1ldGVyID0geyAuLi5kZWZhdWx0UGFyYW0sIC4uLnBhcmFtSXRlbSB9O1xuICAgIFxuICAgICAgICBjb25zdCBmb3JtRGF0YTogSVBhcmFtZXRlckZvcm1EYXRhID0ge1xuICAgICAgICAgICAgUGFyYW1ldGVyOiBwYXJhbWV0ZXIsXG4gICAgICAgICAgICBNb2RlOiBmb3JtTW9kZSxcbiAgICAgICAgICAgIFNob3dUeXBlOiB0aGlzLnNob3dUeXBlLFxuICAgICAgICAgICAgU2hvd0FjY2Vzc2liaWxpdHk6IHRoaXMuc2hvd0FjY2Vzc2liaWxpdHksXG4gICAgICAgICAgICBTaG93UGVyc2lzdGVuY3k6IHRoaXMuc2hvd1BlcnNpc3RlbmN5LFxuICAgICAgICAgICAgUmVhZG9ubHk6IHBhcmFtSXRlbT8uUmVhZG9ubHlcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBjb25maWcgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0RGlhbG9nQ29uZmlnKHt9LCAnbGFyZ2UnKTtcbiAgICAgICAgY29uZmlnLmRhdGEgPSBuZXcgUGVwRGlhbG9nRGF0YSh7XG4gICAgICAgICAgICBjb250ZW50OiBNYW5hZ2VQYXJhbWV0ZXJDb21wb25lbnRcbiAgICAgICAgfSlcbiAgICAgICAgXG4gICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5vcGVuRGlhbG9nKE1hbmFnZVBhcmFtZXRlckNvbXBvbmVudCwgZm9ybURhdGEsIGNvbmZpZykuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHZhbHVlOiBJUGFyYW1lbWV0ZXIpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmRJbmRleChwYXJhbSA9PiBwYXJhbS5LZXkgPT09IHZhbHVlLktleSk7XG4gICAgICAgICAgICAgICAgLy8gaWYgdGhlIHBhcmFtIGRvZXNuJ3QgZXhpc3QsIHB1c2ggdG8gdGhlIGVuZCBvZiB0aGUgYXJyYXksIG90aGVyd2lzZSBlZGl0IGV4aXN0aW5nXG4gICAgICAgICAgICAgICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhcmFtZXRlcnMucHVzaCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhcmFtZXRlcnMuc3BsaWNlKGluZGV4LCAxLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZnlQYXJhbWV0ZXJzQ2hhbmdlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNob3dEZWxldGVEaWFsb2cocGFyYW1OYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZGF0YU1zZyA9IG5ldyBQZXBEaWFsb2dEYXRhKHtcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5ERUxFVEVfRElBTE9HX1RJVExFJywgeyBwYXJhbV9uYW1lOiBwYXJhbU5hbWUgfSksXG4gICAgICAgICAgICBhY3Rpb25zVHlwZTogJ2NhbmNlbC1kZWxldGUnLFxuICAgICAgICAgICAgY29udGVudDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuREVMRVRFX0RJQUxPR19DT05URU5UJylcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW5EZWZhdWx0RGlhbG9nKGRhdGFNc2cpLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKGFzeW5jIChpc0RlbGV0ZVByZXNzZWQpID0+IHtcbiAgICAgICAgICAgIGlmIChpc0RlbGV0ZVByZXNzZWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMucGFyYW1ldGVycy5maW5kSW5kZXgoeCA9PiB4LktleSA9PT0gcGFyYW1OYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhcmFtZXRlcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZnlQYXJhbWV0ZXJzQ2hhbmdlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8cGVwLWdlbmVyaWMtbGlzdCBjbGFzcz1cImdlbmVyaWMtbGlzdFwiXG4gICAgW3RpdGxlXT1cInBhcmFtZXRlcnNUaXRsZSB8fCAoJ01BTkFHRV9QQVJBTUVURVJTLlRJVExFJyB8IHRyYW5zbGF0ZSlcIlxuICAgIFtzaG93VG9wQmFyXT1cInRydWVcIiBcbiAgICBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCIgXG4gICAgW2lubGluZV09XCJ0cnVlXCJcbiAgICBbYWN0aW9uc109XCJhY3Rpb25zXCJcbiAgICBbYWRkUGFkZGluZ109XCJmYWxzZVwiXG4gICAgW3V1aWRNYXBwaW5nXT1cIidLZXknXCJcbiAgICAoZmllbGRDbGljayk9XCJvbkZpZWxkQ2xpY2soJGV2ZW50KVwiXG4gICAgPlxuICAgIDxuZy1jb250YWluZXIgcmlnaHQtYnV0dG9ucz5cbiAgICAgICAgPHBlcC1idXR0b24gXG4gICAgICAgICAgICBjbGFzcz1cInBlcC1zcGFjaW5nLWVsZW1lbnRcIlxuICAgICAgICAgICAgW3NpemVUeXBlXT1cIidzbSdcIiBcbiAgICAgICAgICAgIFt2YWx1ZV09XCInTUFOQUdFX1BBUkFNRVRFUlMuQUREX0JVVFRPTl9USVRMRScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgW3N0eWxlVHlwZV09XCInc3Ryb25nJ1wiIFxuICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cIm9wZW5DcmVhdGVQYXJhbUZvcm0oJ2FkZCcsICcnKVwiXG4gICAgICAgID48L3BlcC1idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG48L3BlcC1nZW5lcmljLWxpc3Q+Il19
@@ -68,7 +68,7 @@ export class ManageParametersService {
68
68
  // Add Key and Description fields.
69
69
  fields = [
70
70
  this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),
71
- this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
71
+ this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
72
72
  ];
73
73
  // Add Type field only if showType is true.
74
74
  if (showType) {
@@ -146,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
146
146
  providedIn: 'root'
147
147
  }]
148
148
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL21hbmFnZS1wYXJhbWV0ZXJzL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQW9ELGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU05RyxNQUFNLE9BQU8sdUJBQXVCO0lBRWhDLFlBQXFCLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBRWhELENBQUM7SUFFTyxpQkFBaUI7UUFDckIsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSwwQkFBMEIsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztRQUN0TSxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsT0FBTztnQkFDSCxHQUFHLEVBQUUsSUFBSTtnQkFDVCxLQUFLLEVBQUUsSUFBSTthQUNkLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUEwQjtRQUN4RCxJQUFJLEdBQUcsR0FBc0IsU0FBUyxDQUFDO1FBQ3ZDLFFBQVEsU0FBUyxFQUFFO1lBQ2YsS0FBSyxNQUFNLENBQUMsQ0FBQztnQkFDVCxHQUFHLEdBQUcsU0FBUyxDQUFDO2dCQUNoQixNQUFNO2FBQ1Q7WUFDRCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUNaLEdBQUcsR0FBRyxlQUFlLENBQUM7Z0JBQ3RC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Z0JBQ1osVUFBVSxFQUFFLFFBQVE7YUFDdkI7U0FDSixDQUFDO0lBQ04sQ0FBQzs7b0hBNUtRLHVCQUF1Qjt3SEFBdkIsdUJBQXVCLGNBRnJCLE1BQU07MkZBRVIsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBQyxNQUFNO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBJUGVwR2VuZXJpY0Zvcm1EYXRhVmlldyB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvbmd4LWNvbXBvc2l0ZS1saWIvZ2VuZXJpYy1mb3JtXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZVBhaXIgfSBmcm9tIFwiQHBlcHBlcmktYWRkb25zL25neC1saWJcIjtcbmltcG9ydCB7IERhdGFWaWV3RmllbGRUeXBlLCBHcmlkRGF0YVZpZXcsIFNjaGVtZUZpZWxkVHlwZSwgU2NoZW1lRmllbGRUeXBlcyB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvcGFwaS1zZGtcIjtcbmltcG9ydCB7IElQYXJhbWV0ZXJzQ29sdW1uLCBQYXJhbWV0ZXJGb3JtVHlwZSB9IGZyb20gXCIuL21hbmFnZS1wYXJhbWV0ZXJzLm1vZGVsXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOidyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNYW5hZ2VQYXJhbWV0ZXJzU2VydmljZSB7XG4gICAgXG4gICAgY29uc3RydWN0b3IgKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEF2YWlsYWJsZVR5cGVzKCk6IEtleVZhbHVlUGFpcjxzdHJpbmc+W10ge1xuICAgICAgICBjb25zdCB0eXBlcyA9IFNjaGVtZUZpZWxkVHlwZXMuZmlsdGVyKHR5cGUgPT4gWydBcnJheScsICdEYXRlVGltZScsICdSZXNvdXJjZScsICdDb250YWluZWRSZXNvdXJjZScsICdEeW5hbWljUmVzb3VyY2UnLCAnQ29udGFpbmVkRHluYW1pY1Jlc291cmNlJywgJ011bHRpcGxlU3RyaW5nVmFsdWVzJ10uaW5jbHVkZXModHlwZSkgPT09IGZhbHNlKTtcbiAgICAgICAgcmV0dXJuIHR5cGVzLm1hcCh0eXBlID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgS2V5OiB0eXBlLFxuICAgICAgICAgICAgICAgIFZhbHVlOiB0eXBlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0UGFyYW1zVHlwZVRvRFZUeXBlKHBhcmFtVHlwZTogU2NoZW1lRmllbGRUeXBlKTogRGF0YVZpZXdGaWVsZFR5cGUge1xuICAgICAgICBsZXQgcmVzOiBEYXRhVmlld0ZpZWxkVHlwZSA9ICdUZXh0Qm94JztcbiAgICAgICAgc3dpdGNoIChwYXJhbVR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ0Jvb2wnOiB7XG4gICAgICAgICAgICAgICAgcmVzID0gJ0Jvb2xlYW4nO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnSW50ZWdlcic6IHtcbiAgICAgICAgICAgICAgICByZXMgPSAnTnVtYmVySW50ZWdlcic7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdEb3VibGUnOiB7XG4gICAgICAgICAgICAgICAgcmVzID0gJ051bWJlclJlYWwnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREYXRhVmlld0ZpZWxkKGZpZWxkSWQ6IHN0cmluZywgdHlwZTogRGF0YVZpZXdGaWVsZFR5cGUsIHRpdGxlOiBzdHJpbmcsIG1hbmRhdG9yeTogYm9vbGVhbiwgcmVhZE9ubHk6IGJvb2xlYW4sIFxuICAgICAgICBvcHRpb25hbFZhbHVlczogYW55W10gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsIGFkZGl0aW9uYWxQcm9wczogYW55ID0gdW5kZWZpbmVkLCBsYXlvdXQ6IGFueSA9IHVuZGVmaW5lZCk6IGFueSB7XG5cbiAgICAgICAgY29uc3QgcmVzOiBhbnkgPSB7XG4gICAgICAgICAgICBGaWVsZElEOiBmaWVsZElkLFxuICAgICAgICAgICAgVHlwZTogdHlwZSxcbiAgICAgICAgICAgIFRpdGxlOiB0aXRsZSxcbiAgICAgICAgICAgIE1hbmRhdG9yeTogbWFuZGF0b3J5LFxuICAgICAgICAgICAgUmVhZE9ubHk6IHJlYWRPbmx5XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9uYWxWYWx1ZXMpIHtcbiAgICAgICAgICAgIHJlc1snT3B0aW9uYWxWYWx1ZXMnXSA9IG9wdGlvbmFsVmFsdWVzO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFkZGl0aW9uYWxQcm9wcykge1xuICAgICAgICAgICAgcmVzWydBZGRpdGlvbmFsUHJvcHMnXSA9IGFkZGl0aW9uYWxQcm9wcztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChsYXlvdXQpIHtcbiAgICAgICAgICAgIHJlc1snTGF5b3V0J10gPSBsYXlvdXQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cblxuICAgIGdldFBhcmFtZXRlcnNMaXN0RGF0YVZpZXcocGFyYW1ldGVyc0NvbHVtbnM6IElQYXJhbWV0ZXJzQ29sdW1uW10sIHNob3dUeXBlOiBib29sZWFuLCBzaG93QWNjZXNzaWJpbGl0eTogYm9vbGVhbiwgc2hvd1BlcnNpc3RlbmN5OiBib29sZWFuKTogR3JpZERhdGFWaWV3IHtcbiAgICAgICAgbGV0IGZpZWxkcztcbiAgICAgICAgbGV0IGNvbHVtbnM7XG5cbiAgICAgICAgLy8gSWYgY29sdW1ucyBhcmUgZGVmaW5lZCwgdXNlIHRoZW0uIE90aGVyd2lzZSwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbnMuXG4gICAgICAgIGlmIChwYXJhbWV0ZXJzQ29sdW1ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmaWVsZHMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRhVmlld0ZpZWxkKGNvbHVtbi5LZXksIGNvbHVtbi5UeXBlLCBjb2x1bW4uVGl0bGUsIGZhbHNlLCB0cnVlLCBbXSwge30pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbHVtbnMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBXaWR0aDogY29sdW1uLldpZHRoIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQWRkIEtleSBhbmQgRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICAgICAgZmllbGRzID0gW1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnS2V5JywgJ0xpbmsnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5LRVlfVElUTEUnKSwgZmFsc2UsIHRydWUpLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVzY3JpcHRpb24nLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFU0NSSVBUSU9OX1RJVExFJyksIGZhbHNlLCB0cnVlKSxcbiAgICAgICAgICAgIF07XG5cbiAgICAgICAgICAgIC8vIEFkZCBUeXBlIGZpZWxkIG9ubHkgaWYgc2hvd1R5cGUgaXMgdHJ1ZS5cbiAgICAgICAgICAgIGlmIChzaG93VHlwZSkge1xuICAgICAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnVHlwZScsICdUZXh0Qm94JywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuVFlQRV9USVRMRScpLCBmYWxzZSwgdHJ1ZSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBZGQgRGVmYXVsdFZhbHVlIGZpZWxkLlxuICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZWZhdWx0VmFsdWUnLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFRkFVTFRfVkFMVUVfVElUTEUnKSwgZmFsc2UsIHRydWUpKTtcblxuICAgICAgICAgICAgLy8gQWRkIEludGVybmFsIGZpZWxkLlxuICAgICAgICAgICAgaWYgKHNob3dBY2Nlc3NpYmlsaXR5KSB7XG4gICAgICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdJbnRlcm5hbCcsICdCb29sZWFuJywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuSU5URVJOQUxfVElUTEUnKSwgZmFsc2UsIHRydWUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIEludGVybmFsIGZpZWxkLlxuICAgICAgICAgICAgaWYgKHNob3dQZXJzaXN0ZW5jeSkge1xuICAgICAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnUGVyc2lzdGVuY3knLCAnQm9vbGVhbicsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLlBFUlNJU1RFTkNZX1RJVExFJyksIGZhbHNlLCB0cnVlKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbHVtbnMgPSBmaWVsZHMubWFwKGZpZWxkID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBXaWR0aDogMTAwIC8gZmllbGRzLmxlbmd0aCB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBDb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgTmFtZTogJycsXG4gICAgICAgICAgICAgICAgUHJvZmlsZTogeyBJbnRlcm5hbElEOiAwIH0sXG4gICAgICAgICAgICAgICAgU2NyZWVuU2l6ZTogJ0xhbmRzY2FwZSdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUeXBlOiAnR3JpZCcsXG4gICAgICAgICAgICBUaXRsZTogJycsXG4gICAgICAgICAgICBGaWVsZHM6IGZpZWxkcyxcbiAgICAgICAgICAgIENvbHVtbnM6IGNvbHVtbnMsXG4gICAgICAgICAgICBGcm96ZW5Db2x1bW5zQ291bnQ6IDAsXG4gICAgICAgICAgICBNaW5pbXVtQ29sdW1uV2lkdGg6IDBcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFBhcmFtZXRlckZvcm1EYXRhVmlldyhmb3JtTW9kZTogUGFyYW1ldGVyRm9ybVR5cGUsIHBhcmFtVHlwZTogU2NoZW1lRmllbGRUeXBlLCBzaG93VHlwZTogYm9vbGVhbiwgc2hvd0FjY2Vzc2liaWxpdHk6IGJvb2xlYW4sIHNob3dQZXJzaXN0ZW5jeTogYm9vbGVhbik6IElQZXBHZW5lcmljRm9ybURhdGFWaWV3IHtcbiAgICAgICAgY29uc3QgZmllbGRUeXBlcyA9IHRoaXMuZ2V0QXZhaWxhYmxlVHlwZXMoKTtcbiAgICAgICAgY29uc3Qgbm9FbXB0eU9wdGlvbiA9IHsgZW1wdHlPcHRpb246IGZhbHNlIH07XG5cbiAgICAgICAgLy8gQWRkIEtleSBhbmQgRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICBjb25zdCBmaWVsZHMgPSBbXG4gICAgICAgICAgICB0aGlzLmdldERhdGFWaWV3RmllbGQoJ0tleScsICdUZXh0Qm94JywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuS0VZX1RJVExFJyksIGZvcm1Nb2RlID09PSAnYWRkJywgZm9ybU1vZGUgIT0gJ2FkZCcsIFtdLCBcbiAgICAgICAgICAgICAgICB7IHJlZ2V4OiAnXihbYS16QS1aMC05LV9dKSokJywgcmVnZXhFcnJvcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuS0VZX1JFR0VYX0VSUk9SJyl9XG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZXNjcmlwdGlvbicsICdUZXh0QXJlYScsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFU0NSSVBUSU9OX1RJVExFJyksIGZhbHNlLCBmYWxzZSwgW10sIHt9LCBcbiAgICAgICAgICAgICAgICB7IFNpemU6IHsgV2lkdGg6MSwgSGVpZ2h0OjIgfSB9XG4gICAgICAgICAgICApXG4gICAgICAgIF07XG5cbiAgICAgICAgLy8gQWRkIFR5cGUgZmllbGQgb25seSBpZiBzaG93VHlwZSBpcyB0cnVlLlxuICAgICAgICBpZiAoc2hvd1R5cGUpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnVHlwZScsICdDb21ib0JveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLlRZUEVfVElUTEUnKSwgZmFsc2UsIGZvcm1Nb2RlICE9ICdhZGQnLCBmaWVsZFR5cGVzLCBub0VtcHR5T3B0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQWRkIERlZmF1bHRWYWx1ZSBmaWVsZC5cbiAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZWZhdWx0VmFsdWUnLCB0aGlzLmNvbnZlcnRQYXJhbXNUeXBlVG9EVlR5cGUocGFyYW1UeXBlKSwgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuREVGQVVMVF9WQUxVRV9USVRMRScpLCBcbiAgICAgICAgICAgIGZhbHNlLCBmYWxzZSwgW10sIHt9KSlcbiAgICAgICAgICAgIFxuICAgICAgICAvLyBBZGQgSW50ZXJuYWwgYW5kIEFjY2Vzc2liaWxpdHlfRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICBpZiAoc2hvd0FjY2Vzc2liaWxpdHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjY2Vzc2liaWxpdHlEZXNjQWRkaXRpb25hbFByb3BzID0geyByZW5kZXJUaXRsZTogZmFsc2UsIHJlbmRlckVubGFyZ2VCdXR0b246IGZhbHNlIH07XG4gICAgICAgICAgICBjb25zdCBhY2Nlc3NpYmlsaXR5RGVzY0xheW91dCA9IHsgU2l6ZTogeyBIZWlnaHQ6IDAsIFdpZHRoOiAxIH0gfTtcblxuICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdBY2Nlc3NpYmlsaXR5X0Rlc2NyaXB0aW9uJywgJ1JpY2hUZXh0SFRNTCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLklOVEVSTkFMX0RFU0NSSVBUSU9OJyksIFxuICAgICAgICAgICAgZmFsc2UsIHRydWUsIFtdLCBhY2Nlc3NpYmlsaXR5RGVzY0FkZGl0aW9uYWxQcm9wcywgYWNjZXNzaWJpbGl0eURlc2NMYXlvdXQpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgY29uc3QgYWNjZXNzaWJpbGl0eU9wdGlvbmFsVmFsdWVzID0gW3sgS2V5OiAnSW50ZXJuYWwnLCBWYWx1ZTogJ0ludGVybmFsJyB9LCB7IEtleTogJ0V4dGVybmFsJywgVmFsdWU6ICdFeHRlcm5hbCcgfV07XG4gICAgICAgICAgICBmaWVsZHMucHVzaCh0aGlzLmdldERhdGFWaWV3RmllbGQoJ0FjY2Vzc2liaWxpdHknLCAnQ29tYm9Cb3gnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5BQ0NFU1NJQklMSVRZX1RJVExFJyksIFxuICAgICAgICAgICAgICAgIGZhbHNlLCBmYWxzZSwgYWNjZXNzaWJpbGl0eU9wdGlvbmFsVmFsdWVzLCBub0VtcHR5T3B0aW9uKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzaG93UGVyc2lzdGVuY3kpIHtcbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnUGVyc2lzdGVuY3knLCAnQm9vbGVhbicsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLlBFUlNJU1RFTkNZX1RJVExFJyksIFxuICAgICAgICAgICAgICAgIGZhbHNlLCBmYWxzZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgVHlwZTogJ0Zvcm0nLFxuICAgICAgICAgICAgRmllbGRzOiBmaWVsZHMsXG4gICAgICAgICAgICBDb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgTmFtZTogJycsXG4gICAgICAgICAgICAgICAgUHJvZmlsZTogeyB9LFxuICAgICAgICAgICAgICAgIFNjcmVlblNpemU6ICdUYWJsZXQnXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxufSJdfQ==
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL21hbmFnZS1wYXJhbWV0ZXJzL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQW9ELGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU05RyxNQUFNLE9BQU8sdUJBQXVCO0lBRWhDLFlBQXFCLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBRWhELENBQUM7SUFFTyxpQkFBaUI7UUFDckIsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSwwQkFBMEIsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztRQUN0TSxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsT0FBTztnQkFDSCxHQUFHLEVBQUUsSUFBSTtnQkFDVCxLQUFLLEVBQUUsSUFBSTthQUNkLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUEwQjtRQUN4RCxJQUFJLEdBQUcsR0FBc0IsU0FBUyxDQUFDO1FBQ3ZDLFFBQVEsU0FBUyxFQUFFO1lBQ2YsS0FBSyxNQUFNLENBQUMsQ0FBQztnQkFDVCxHQUFHLEdBQUcsU0FBUyxDQUFDO2dCQUNoQixNQUFNO2FBQ1Q7WUFDRCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUNaLEdBQUcsR0FBRyxlQUFlLENBQUM7Z0JBQ3RCLE1BQU07YUFDVDtZQUNELEtBQUssUUFBUSxDQUFDLENBQUM7Z0JBQ1gsR0FBRyxHQUFHLFlBQVksQ0FBQztnQkFDbkIsTUFBTTthQUNUO1NBQ0o7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUFlLEVBQUUsSUFBdUIsRUFBRSxLQUFhLEVBQUUsU0FBa0IsRUFBRSxRQUFpQixFQUNuSCxpQkFBb0MsU0FBUyxFQUFFLGtCQUF1QixTQUFTLEVBQUUsU0FBYyxTQUFTO1FBRXhHLE1BQU0sR0FBRyxHQUFRO1lBQ2IsT0FBTyxFQUFFLE9BQU87WUFDaEIsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsS0FBSztZQUNaLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUE7UUFFRCxJQUFJLGNBQWMsRUFBRTtZQUNoQixHQUFHLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxjQUFjLENBQUM7U0FDMUM7UUFFRCxJQUFJLGVBQWUsRUFBRTtZQUNqQixHQUFHLENBQUMsaUJBQWlCLENBQUMsR0FBRyxlQUFlLENBQUM7U0FDNUM7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNSLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxNQUFNLENBQUM7U0FDMUI7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxpQkFBc0MsRUFBRSxRQUFpQixFQUFFLGlCQUEwQixFQUFFLGVBQXdCO1FBQ3JJLElBQUksTUFBTSxDQUFDO1FBQ1gsSUFBSSxPQUFPLENBQUM7UUFFWix3RUFBd0U7UUFDeEUsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLE1BQU0sR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3BDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdGLENBQUMsQ0FBQyxDQUFDO1lBRUgsT0FBTyxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDckMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDbEMsQ0FBQyxDQUFDLENBQUM7U0FDTjthQUFNO1lBQ0gsa0NBQWtDO1lBQ2xDLE1BQU0sR0FBRztnQkFDTCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUM7Z0JBQ3hHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQzthQUMvSCxDQUFDO1lBRUYsMkNBQTJDO1lBQzNDLElBQUksUUFBUSxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUM5SDtZQUVELDBCQUEwQjtZQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFFNUksc0JBQXNCO1lBQ3RCLElBQUksaUJBQWlCLEVBQUU7Z0JBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQWtDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN0STtZQUVELHNCQUFzQjtZQUN0QixJQUFJLGVBQWUsRUFBRTtnQkFDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQzVJO1lBRUQsT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3pCLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQTtZQUN6QyxDQUFDLENBQUMsQ0FBQztTQUNOO1FBRUQsT0FBTztZQUNILE9BQU8sRUFBRTtnQkFDTCxJQUFJLEVBQUUsRUFBRTtnQkFDUixPQUFPLEVBQUUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFO2dCQUMxQixVQUFVLEVBQUUsV0FBVzthQUMxQjtZQUNELElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsTUFBTTtZQUNkLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLGtCQUFrQixFQUFFLENBQUM7WUFDckIsa0JBQWtCLEVBQUUsQ0FBQztTQUN4QixDQUFBO0lBQ0wsQ0FBQztJQUVELHdCQUF3QixDQUFDLFFBQTJCLEVBQUUsU0FBMEIsRUFBRSxRQUFpQixFQUFFLGlCQUEwQixFQUFFLGVBQXdCO1FBQ3JKLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzVDLE1BQU0sYUFBYSxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBRTdDLGtDQUFrQztRQUNsQyxNQUFNLE1BQU0sR0FBRztZQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLDZCQUE2QixDQUFDLEVBQUUsUUFBUSxLQUFLLEtBQUssRUFBRSxRQUFRLElBQUksS0FBSyxFQUFFLEVBQUUsRUFDcEksRUFBRSxLQUFLLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLG1DQUFtQyxDQUFDLEVBQUMsQ0FDMUc7WUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFDaEksRUFBRSxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBQyxDQUFDLEVBQUUsRUFBRSxDQUNsQztTQUNKLENBQUM7UUFFRiwyQ0FBMkM7UUFDM0MsSUFBSSxRQUFRLEVBQUU7WUFDVixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLElBQUksS0FBSyxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUMxSjtRQUVELDBCQUEwQjtRQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLEVBQ3hKLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFMUIscURBQXFEO1FBQ3JELElBQUksaUJBQWlCLEVBQUU7WUFDbkIsTUFBTSxnQ0FBZ0MsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDNUYsTUFBTSx1QkFBdUIsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFFbEUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsMkJBQTJCLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxDQUFDLEVBQy9JLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLGdDQUFnQyxFQUFFLHVCQUF1QixDQUFDLENBQzFFLENBQUM7WUFFRixNQUFNLDJCQUEyQixHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7WUFDckgsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxFQUMxSCxLQUFLLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFLGFBQWEsQ0FBQyxDQUM1RCxDQUFDO1NBQ0w7UUFFRCxJQUFJLGVBQWUsRUFBRTtZQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLEVBQ3JILEtBQUssRUFBRSxLQUFLLENBQUMsQ0FDaEIsQ0FBQztTQUNMO1FBRUQsT0FBTztZQUNILElBQUksRUFBRSxNQUFNO1lBQ1osTUFBTSxFQUFFLE1BQU07WUFDZCxPQUFPLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLEVBQUc7Z0JBQ1osVUFBVSxFQUFFLFFBQVE7YUFDdkI7U0FDSixDQUFDO0lBQ04sQ0FBQzs7b0hBNUtRLHVCQUF1Qjt3SEFBdkIsdUJBQXVCLGNBRnJCLE1BQU07MkZBRVIsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBQyxNQUFNO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBJUGVwR2VuZXJpY0Zvcm1EYXRhVmlldyB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvbmd4LWNvbXBvc2l0ZS1saWIvZ2VuZXJpYy1mb3JtXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZVBhaXIgfSBmcm9tIFwiQHBlcHBlcmktYWRkb25zL25neC1saWJcIjtcbmltcG9ydCB7IERhdGFWaWV3RmllbGRUeXBlLCBHcmlkRGF0YVZpZXcsIFNjaGVtZUZpZWxkVHlwZSwgU2NoZW1lRmllbGRUeXBlcyB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvcGFwaS1zZGtcIjtcbmltcG9ydCB7IElQYXJhbWV0ZXJzQ29sdW1uLCBQYXJhbWV0ZXJGb3JtVHlwZSB9IGZyb20gXCIuL21hbmFnZS1wYXJhbWV0ZXJzLm1vZGVsXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOidyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNYW5hZ2VQYXJhbWV0ZXJzU2VydmljZSB7XG4gICAgXG4gICAgY29uc3RydWN0b3IgKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEF2YWlsYWJsZVR5cGVzKCk6IEtleVZhbHVlUGFpcjxzdHJpbmc+W10ge1xuICAgICAgICBjb25zdCB0eXBlcyA9IFNjaGVtZUZpZWxkVHlwZXMuZmlsdGVyKHR5cGUgPT4gWydBcnJheScsICdEYXRlVGltZScsICdSZXNvdXJjZScsICdDb250YWluZWRSZXNvdXJjZScsICdEeW5hbWljUmVzb3VyY2UnLCAnQ29udGFpbmVkRHluYW1pY1Jlc291cmNlJywgJ011bHRpcGxlU3RyaW5nVmFsdWVzJ10uaW5jbHVkZXModHlwZSkgPT09IGZhbHNlKTtcbiAgICAgICAgcmV0dXJuIHR5cGVzLm1hcCh0eXBlID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgS2V5OiB0eXBlLFxuICAgICAgICAgICAgICAgIFZhbHVlOiB0eXBlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0UGFyYW1zVHlwZVRvRFZUeXBlKHBhcmFtVHlwZTogU2NoZW1lRmllbGRUeXBlKTogRGF0YVZpZXdGaWVsZFR5cGUge1xuICAgICAgICBsZXQgcmVzOiBEYXRhVmlld0ZpZWxkVHlwZSA9ICdUZXh0Qm94JztcbiAgICAgICAgc3dpdGNoIChwYXJhbVR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ0Jvb2wnOiB7XG4gICAgICAgICAgICAgICAgcmVzID0gJ0Jvb2xlYW4nO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnSW50ZWdlcic6IHtcbiAgICAgICAgICAgICAgICByZXMgPSAnTnVtYmVySW50ZWdlcic7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdEb3VibGUnOiB7XG4gICAgICAgICAgICAgICAgcmVzID0gJ051bWJlclJlYWwnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREYXRhVmlld0ZpZWxkKGZpZWxkSWQ6IHN0cmluZywgdHlwZTogRGF0YVZpZXdGaWVsZFR5cGUsIHRpdGxlOiBzdHJpbmcsIG1hbmRhdG9yeTogYm9vbGVhbiwgcmVhZE9ubHk6IGJvb2xlYW4sIFxuICAgICAgICBvcHRpb25hbFZhbHVlczogYW55W10gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsIGFkZGl0aW9uYWxQcm9wczogYW55ID0gdW5kZWZpbmVkLCBsYXlvdXQ6IGFueSA9IHVuZGVmaW5lZCk6IGFueSB7XG5cbiAgICAgICAgY29uc3QgcmVzOiBhbnkgPSB7XG4gICAgICAgICAgICBGaWVsZElEOiBmaWVsZElkLFxuICAgICAgICAgICAgVHlwZTogdHlwZSxcbiAgICAgICAgICAgIFRpdGxlOiB0aXRsZSxcbiAgICAgICAgICAgIE1hbmRhdG9yeTogbWFuZGF0b3J5LFxuICAgICAgICAgICAgUmVhZE9ubHk6IHJlYWRPbmx5XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9uYWxWYWx1ZXMpIHtcbiAgICAgICAgICAgIHJlc1snT3B0aW9uYWxWYWx1ZXMnXSA9IG9wdGlvbmFsVmFsdWVzO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFkZGl0aW9uYWxQcm9wcykge1xuICAgICAgICAgICAgcmVzWydBZGRpdGlvbmFsUHJvcHMnXSA9IGFkZGl0aW9uYWxQcm9wcztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChsYXlvdXQpIHtcbiAgICAgICAgICAgIHJlc1snTGF5b3V0J10gPSBsYXlvdXQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cblxuICAgIGdldFBhcmFtZXRlcnNMaXN0RGF0YVZpZXcocGFyYW1ldGVyc0NvbHVtbnM6IElQYXJhbWV0ZXJzQ29sdW1uW10sIHNob3dUeXBlOiBib29sZWFuLCBzaG93QWNjZXNzaWJpbGl0eTogYm9vbGVhbiwgc2hvd1BlcnNpc3RlbmN5OiBib29sZWFuKTogR3JpZERhdGFWaWV3IHtcbiAgICAgICAgbGV0IGZpZWxkcztcbiAgICAgICAgbGV0IGNvbHVtbnM7XG5cbiAgICAgICAgLy8gSWYgY29sdW1ucyBhcmUgZGVmaW5lZCwgdXNlIHRoZW0uIE90aGVyd2lzZSwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbnMuXG4gICAgICAgIGlmIChwYXJhbWV0ZXJzQ29sdW1ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmaWVsZHMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRhVmlld0ZpZWxkKGNvbHVtbi5LZXksIGNvbHVtbi5UeXBlLCBjb2x1bW4uVGl0bGUsIGZhbHNlLCB0cnVlLCBbXSwge30pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbHVtbnMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBXaWR0aDogY29sdW1uLldpZHRoIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQWRkIEtleSBhbmQgRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICAgICAgZmllbGRzID0gW1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnS2V5JywgJ0xpbmsnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5LRVlfVElUTEUnKSwgZmFsc2UsIHRydWUpLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVzY3JpcHRpb24nLCAnVGV4dEFyZWEnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5ERVNDUklQVElPTl9USVRMRScpLCBmYWxzZSwgdHJ1ZSksXG4gICAgICAgICAgICBdO1xuXG4gICAgICAgICAgICAvLyBBZGQgVHlwZSBmaWVsZCBvbmx5IGlmIHNob3dUeXBlIGlzIHRydWUuXG4gICAgICAgICAgICBpZiAoc2hvd1R5cGUpIHtcbiAgICAgICAgICAgICAgICBmaWVsZHMucHVzaCh0aGlzLmdldERhdGFWaWV3RmllbGQoJ1R5cGUnLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLlRZUEVfVElUTEUnKSwgZmFsc2UsIHRydWUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWRkIERlZmF1bHRWYWx1ZSBmaWVsZC5cbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVmYXVsdFZhbHVlJywgJ1RleHRCb3gnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5ERUZBVUxUX1ZBTFVFX1RJVExFJyksIGZhbHNlLCB0cnVlKSk7XG5cbiAgICAgICAgICAgIC8vIEFkZCBJbnRlcm5hbCBmaWVsZC5cbiAgICAgICAgICAgIGlmIChzaG93QWNjZXNzaWJpbGl0eSkge1xuICAgICAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnSW50ZXJuYWwnLCAnQm9vbGVhbicsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLklOVEVSTkFMX1RJVExFJyksIGZhbHNlLCB0cnVlKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEFkZCBJbnRlcm5hbCBmaWVsZC5cbiAgICAgICAgICAgIGlmIChzaG93UGVyc2lzdGVuY3kpIHtcbiAgICAgICAgICAgICAgICBmaWVsZHMucHVzaCh0aGlzLmdldERhdGFWaWV3RmllbGQoJ1BlcnNpc3RlbmN5JywgJ0Jvb2xlYW4nLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5QRVJTSVNURU5DWV9USVRMRScpLCBmYWxzZSwgdHJ1ZSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb2x1bW5zID0gZmllbGRzLm1hcChmaWVsZCA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgV2lkdGg6IDEwMCAvIGZpZWxkcy5sZW5ndGggfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgQ29udGV4dDoge1xuICAgICAgICAgICAgICAgIE5hbWU6ICcnLFxuICAgICAgICAgICAgICAgIFByb2ZpbGU6IHsgSW50ZXJuYWxJRDogMCB9LFxuICAgICAgICAgICAgICAgIFNjcmVlblNpemU6ICdMYW5kc2NhcGUnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgVHlwZTogJ0dyaWQnLFxuICAgICAgICAgICAgVGl0bGU6ICcnLFxuICAgICAgICAgICAgRmllbGRzOiBmaWVsZHMsXG4gICAgICAgICAgICBDb2x1bW5zOiBjb2x1bW5zLFxuICAgICAgICAgICAgRnJvemVuQ29sdW1uc0NvdW50OiAwLFxuICAgICAgICAgICAgTWluaW11bUNvbHVtbldpZHRoOiAwXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRQYXJhbWV0ZXJGb3JtRGF0YVZpZXcoZm9ybU1vZGU6IFBhcmFtZXRlckZvcm1UeXBlLCBwYXJhbVR5cGU6IFNjaGVtZUZpZWxkVHlwZSwgc2hvd1R5cGU6IGJvb2xlYW4sIHNob3dBY2Nlc3NpYmlsaXR5OiBib29sZWFuLCBzaG93UGVyc2lzdGVuY3k6IGJvb2xlYW4pOiBJUGVwR2VuZXJpY0Zvcm1EYXRhVmlldyB7XG4gICAgICAgIGNvbnN0IGZpZWxkVHlwZXMgPSB0aGlzLmdldEF2YWlsYWJsZVR5cGVzKCk7XG4gICAgICAgIGNvbnN0IG5vRW1wdHlPcHRpb24gPSB7IGVtcHR5T3B0aW9uOiBmYWxzZSB9O1xuXG4gICAgICAgIC8vIEFkZCBLZXkgYW5kIERlc2NyaXB0aW9uIGZpZWxkcy5cbiAgICAgICAgY29uc3QgZmllbGRzID0gW1xuICAgICAgICAgICAgdGhpcy5nZXREYXRhVmlld0ZpZWxkKCdLZXknLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLktFWV9USVRMRScpLCBmb3JtTW9kZSA9PT0gJ2FkZCcsIGZvcm1Nb2RlICE9ICdhZGQnLCBbXSwgXG4gICAgICAgICAgICAgICAgeyByZWdleDogJ14oW2EtekEtWjAtOS1fXSkqJCcsIHJlZ2V4RXJyb3I6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLktFWV9SRUdFWF9FUlJPUicpfVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVzY3JpcHRpb24nLCAnVGV4dEFyZWEnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5ERVNDUklQVElPTl9USVRMRScpLCBmYWxzZSwgZmFsc2UsIFtdLCB7fSwgXG4gICAgICAgICAgICAgICAgeyBTaXplOiB7IFdpZHRoOjEsIEhlaWdodDoyIH0gfVxuICAgICAgICAgICAgKVxuICAgICAgICBdO1xuXG4gICAgICAgIC8vIEFkZCBUeXBlIGZpZWxkIG9ubHkgaWYgc2hvd1R5cGUgaXMgdHJ1ZS5cbiAgICAgICAgaWYgKHNob3dUeXBlKSB7XG4gICAgICAgICAgICB0aGlzLmdldERhdGFWaWV3RmllbGQoJ1R5cGUnLCAnQ29tYm9Cb3gnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5UWVBFX1RJVExFJyksIGZhbHNlLCBmb3JtTW9kZSAhPSAnYWRkJywgZmllbGRUeXBlcywgbm9FbXB0eU9wdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEFkZCBEZWZhdWx0VmFsdWUgZmllbGQuXG4gICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVmYXVsdFZhbHVlJywgdGhpcy5jb252ZXJ0UGFyYW1zVHlwZVRvRFZUeXBlKHBhcmFtVHlwZSksIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFRkFVTFRfVkFMVUVfVElUTEUnKSwgXG4gICAgICAgICAgICBmYWxzZSwgZmFsc2UsIFtdLCB7fSkpXG4gICAgICAgICAgICBcbiAgICAgICAgLy8gQWRkIEludGVybmFsIGFuZCBBY2Nlc3NpYmlsaXR5X0Rlc2NyaXB0aW9uIGZpZWxkcy5cbiAgICAgICAgaWYgKHNob3dBY2Nlc3NpYmlsaXR5KSB7XG4gICAgICAgICAgICBjb25zdCBhY2Nlc3NpYmlsaXR5RGVzY0FkZGl0aW9uYWxQcm9wcyA9IHsgcmVuZGVyVGl0bGU6IGZhbHNlLCByZW5kZXJFbmxhcmdlQnV0dG9uOiBmYWxzZSB9O1xuICAgICAgICAgICAgY29uc3QgYWNjZXNzaWJpbGl0eURlc2NMYXlvdXQgPSB7IFNpemU6IHsgSGVpZ2h0OiAwLCBXaWR0aDogMSB9IH07XG5cbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnQWNjZXNzaWJpbGl0eV9EZXNjcmlwdGlvbicsICdSaWNoVGV4dEhUTUwnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5JTlRFUk5BTF9ERVNDUklQVElPTicpLCBcbiAgICAgICAgICAgIGZhbHNlLCB0cnVlLCBbXSwgYWNjZXNzaWJpbGl0eURlc2NBZGRpdGlvbmFsUHJvcHMsIGFjY2Vzc2liaWxpdHlEZXNjTGF5b3V0KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIGNvbnN0IGFjY2Vzc2liaWxpdHlPcHRpb25hbFZhbHVlcyA9IFt7IEtleTogJ0ludGVybmFsJywgVmFsdWU6ICdJbnRlcm5hbCcgfSwgeyBLZXk6ICdFeHRlcm5hbCcsIFZhbHVlOiAnRXh0ZXJuYWwnIH1dO1xuICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdBY2Nlc3NpYmlsaXR5JywgJ0NvbWJvQm94JywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuQUNDRVNTSUJJTElUWV9USVRMRScpLCBcbiAgICAgICAgICAgICAgICBmYWxzZSwgZmFsc2UsIGFjY2Vzc2liaWxpdHlPcHRpb25hbFZhbHVlcywgbm9FbXB0eU9wdGlvbilcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2hvd1BlcnNpc3RlbmN5KSB7XG4gICAgICAgICAgICBmaWVsZHMucHVzaCh0aGlzLmdldERhdGFWaWV3RmllbGQoJ1BlcnNpc3RlbmN5JywgJ0Jvb2xlYW4nLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5QRVJTSVNURU5DWV9USVRMRScpLCBcbiAgICAgICAgICAgICAgICBmYWxzZSwgZmFsc2UpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIFR5cGU6ICdGb3JtJyxcbiAgICAgICAgICAgIEZpZWxkczogZmllbGRzLFxuICAgICAgICAgICAgQ29udGV4dDoge1xuICAgICAgICAgICAgICAgIE5hbWU6ICcnLFxuICAgICAgICAgICAgICAgIFByb2ZpbGU6IHsgfSxcbiAgICAgICAgICAgICAgICBTY3JlZW5TaXplOiAnVGFibGV0J1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn0iXX0=
@@ -82,7 +82,7 @@ class ManageParametersService {
82
82
  // Add Key and Description fields.
83
83
  fields = [
84
84
  this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),
85
- this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
85
+ this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
86
86
  ];
87
87
  // Add Type field only if showType is true.
88
88
  if (showType) {
@@ -251,7 +251,7 @@ class ManageParametersComponent {
251
251
  this.showPersistency = false;
252
252
  // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).
253
253
  this.parametersColumns = [];
254
- this.parameters = [];
254
+ this._parameters = [];
255
255
  this.parametersTitle = '';
256
256
  this.parametersChange = new EventEmitter();
257
257
  this.listMessages = {};
@@ -281,9 +281,18 @@ class ManageParametersComponent {
281
281
  })
282
282
  };
283
283
  }
284
- notifyParametersChange() {
285
- this.parametersChange.emit(this.parameters);
284
+ set parameters(value) {
285
+ this._parameters = value || [];
286
+ this.notifyParametersChange(false);
287
+ }
288
+ get parameters() {
289
+ return this._parameters;
290
+ }
291
+ notifyParametersChange(raiseEvent = true) {
286
292
  this.dataSource = this.getDataSource();
293
+ if (raiseEvent) {
294
+ this.parametersChange.emit(this.parameters);
295
+ }
287
296
  }
288
297
  getDataSource() {
289
298
  return {
@@ -310,6 +319,7 @@ class ManageParametersComponent {
310
319
  };
311
320
  }
312
321
  ngOnInit() {
322
+ // TODO: Sort the parameters by name
313
323
  this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {
314
324
  this.listMessages = translations;
315
325
  this.dataSource = this.getDataSource();
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-manage-parameters.mjs","sources":["../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.service.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.module.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.model.ts","../../../projects/ngx-composite-lib/manage-parameters/public-api.ts","../../../projects/ngx-composite-lib/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { IPepGenericFormDataView } from \"@pepperi-addons/ngx-composite-lib/generic-form\";\nimport { KeyValuePair } from \"@pepperi-addons/ngx-lib\";\nimport { DataViewFieldType, GridDataView, SchemeFieldType, SchemeFieldTypes } from \"@pepperi-addons/papi-sdk\";\nimport { IParametersColumn, ParameterFormType } from \"./manage-parameters.model\";\n\n@Injectable({\n providedIn:'root'\n})\nexport class ManageParametersService {\n \n constructor (private translate: TranslateService) {\n\n }\n\n private getAvailableTypes(): KeyValuePair<string>[] {\n const types = SchemeFieldTypes.filter(type => ['Array', 'DateTime', 'Resource', 'ContainedResource', 'DynamicResource', 'ContainedDynamicResource', 'MultipleStringValues'].includes(type) === false);\n return types.map(type => {\n return {\n Key: type,\n Value: type\n }\n })\n }\n\n private convertParamsTypeToDVType(paramType: SchemeFieldType): DataViewFieldType {\n let res: DataViewFieldType = 'TextBox';\n switch (paramType) {\n case 'Bool': {\n res = 'Boolean';\n break;\n }\n case 'Integer': {\n res = 'NumberInteger';\n break;\n }\n case 'Double': {\n res = 'NumberReal';\n break;\n }\n }\n return res;\n }\n\n private getDataViewField(fieldId: string, type: DataViewFieldType, title: string, mandatory: boolean, readOnly: boolean, \n optionalValues: any[] | undefined = undefined, additionalProps: any = undefined, layout: any = undefined): any {\n\n const res: any = {\n FieldID: fieldId,\n Type: type,\n Title: title,\n Mandatory: mandatory,\n ReadOnly: readOnly\n }\n\n if (optionalValues) {\n res['OptionalValues'] = optionalValues;\n }\n\n if (additionalProps) {\n res['AdditionalProps'] = additionalProps;\n }\n\n if (layout) {\n res['Layout'] = layout;\n }\n\n return res;\n }\n\n getParametersListDataView(parametersColumns: IParametersColumn[], showType: boolean, showAccessibility: boolean, showPersistency: boolean): GridDataView {\n let fields;\n let columns;\n\n // If columns are defined, use them. Otherwise, use the default columns.\n if (parametersColumns.length > 0) {\n fields = parametersColumns.map(column => {\n return this.getDataViewField(column.Key, column.Type, column.Title, false, true, [], {});\n });\n\n columns = parametersColumns.map(column => {\n return { Width: column.Width }\n });\n } else {\n // Add Key and Description fields.\n fields = [\n this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),\n this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n fields.push(this.getDataViewField('Type', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, true));\n }\n\n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, true));\n\n // Add Internal field.\n if (showAccessibility) {\n fields.push(this.getDataViewField('Internal', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_TITLE'), false, true));\n }\n\n // Add Internal field.\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), false, true));\n }\n\n columns = fields.map(field => {\n return { Width: 100 / fields.length }\n });\n }\n\n return {\n Context: {\n Name: '',\n Profile: { InternalID: 0 },\n ScreenSize: 'Landscape'\n },\n Type: 'Grid',\n Title: '',\n Fields: fields,\n Columns: columns,\n FrozenColumnsCount: 0,\n MinimumColumnWidth: 0\n }\n }\n\n getParameterFormDataView(formMode: ParameterFormType, paramType: SchemeFieldType, showType: boolean, showAccessibility: boolean, showPersistency: boolean): IPepGenericFormDataView {\n const fieldTypes = this.getAvailableTypes();\n const noEmptyOption = { emptyOption: false };\n\n // Add Key and Description fields.\n const fields = [\n this.getDataViewField('Key', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), formMode === 'add', formMode != 'add', [], \n { regex: '^([a-zA-Z0-9-_])*$', regexError: this.translate.instant('MANAGE_PARAMETERS.KEY_REGEX_ERROR')}\n ),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, false, [], {}, \n { Size: { Width:1, Height:2 } }\n )\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n this.getDataViewField('Type', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, formMode != 'add', fieldTypes, noEmptyOption);\n }\n \n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', this.convertParamsTypeToDVType(paramType), this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), \n false, false, [], {}))\n \n // Add Internal and Accessibility_Description fields.\n if (showAccessibility) {\n const accessibilityDescAdditionalProps = { renderTitle: false, renderEnlargeButton: false };\n const accessibilityDescLayout = { Size: { Height: 0, Width: 1 } };\n\n fields.push(this.getDataViewField('Accessibility_Description', 'RichTextHTML', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION'), \n false, true, [], accessibilityDescAdditionalProps, accessibilityDescLayout)\n );\n \n const accessibilityOptionalValues = [{ Key: 'Internal', Value: 'Internal' }, { Key: 'External', Value: 'External' }];\n fields.push(this.getDataViewField('Accessibility', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.ACCESSIBILITY_TITLE'), \n false, false, accessibilityOptionalValues, noEmptyOption)\n );\n }\n\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), \n false, false)\n );\n }\n\n return {\n Type: 'Form',\n Fields: fields,\n Context: {\n Name: '',\n Profile: { },\n ScreenSize: 'Tablet'\n }\n };\n }\n}","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { GenericFormComponent, IPepGenericFormDataView, IPepGenericFormValueChange } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { IParamemeter, IParameterFormData } from '../manage-parameters.model';\n\nimport { TranslateService } from '@ngx-translate/core';\nimport { ManageParametersService } from '../manage-parameters.service';\nimport { SchemeFieldType } from '@pepperi-addons/papi-sdk';\n\n@Component({\n selector: 'manage-parameter',\n templateUrl: './manage-parameter.component.html',\n styleUrls: ['./manage-parameter.component.scss']\n})\nexport class ManageParameterComponent implements OnInit {\n\n // @ViewChild('flowsList', {read: GenericFormComponent}) set genericFormSetter(inForm: GenericFormComponent) {\n // if (inForm) {\n // this.form = inForm;\n // }\n // };\n \n form!: GenericFormComponent;\n parameter: IParamemeter | undefined = undefined;\n showType = false;\n showAccessibility = false;\n showPersistency = false;\n dataView!: IPepGenericFormDataView;\n readonly = false;\n isValid = true;\n\n constructor ( private dialogRef: MatDialogRef<ManageParameterComponent>,\n private manageParametersService: ManageParametersService,\n private translate: TranslateService,\n @Inject(MAT_DIALOG_DATA) public incoming: IParameterFormData) {\n\n }\n\n private loadDataView(paramType: SchemeFieldType) {\n this.dataView = this.manageParametersService.getParameterFormDataView(this.incoming.Mode, paramType || 'String', this.showType, this.showAccessibility, this.showPersistency);\n }\n\n ngOnInit(): void {\n this.parameter = this.getParameter(this.incoming.Parameter);\n this.showType = this.incoming.ShowType ?? false;\n this.showAccessibility = this.incoming.ShowAccessibility ?? false;\n this.showPersistency = this.incoming.ShowPersistency ?? false;\n this.readonly = this.incoming.Readonly ?? false;\n this.loadDataView(this.parameter?.Type);\n }\n\n saveParameter() {\n // before updating the parameter, remove redundant properties\n if (this.parameter && this.showAccessibility) {\n delete this.parameter['Accessibility'];\n delete this.parameter['Accessibility_Description'];\n }\n\n this.close(this.parameter);\n }\n\n close(parameter: IParamemeter | undefined = undefined) {\n this.dialogRef.close(parameter || null);\n }\n\n getParameter(parameter: IParamemeter): IParamemeter {\n const ret: IParamemeter = JSON.parse(JSON.stringify(parameter));\n Object.keys(parameter || {}).forEach(prop => {\n if (typeof(parameter[prop]) != 'boolean') {\n // if the value is null/undefined, don't copy it\n if (parameter[prop]) {\n ret[prop] = parameter[prop].toString();\n }\n } else if (prop === 'Internal' && this.showAccessibility) {\n ret['Accessibility'] = parameter[prop] ? 'Internal' : 'External'\n } else {\n ret[prop] = parameter[prop];\n }\n });\n \n if (this.showAccessibility) {\n ret['Accessibility_Description'] = this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION');\n }\n\n return ret;\n }\n\n onValueChanged(event: IPepGenericFormValueChange) {\n if (event.ApiName === 'Type' && this.showType) {\n this.loadDataView(event.Value);\n } else if (event.ApiName === 'Accessibility' && this.showAccessibility) {\n if (this.parameter) {\n this.parameter['Internal'] = event.Value === 'Internal';\n }\n }\n }\n\n}","<pep-dialog [title]=\"(incoming.Mode === 'edit' ? 'MANAGE_PARAMETERS.EDIT_FORM_TITLE' : 'MANAGE_PARAMETERS.ADD_FORM_TITLE') | translate\">\n <ng-container pep-dialog-content>\n <pep-generic-form #addForm [dataSource]=\"parameter\" [dataView]=\"dataView\" [isLocked]=\"readonly\" (formValidationChange)=\"isValid = $event\" (valueChange)=\"onValueChanged($event)\">\n\n </pep-generic-form>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\" style=\"display: flex;\"> \n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"'Cancel' | translate\" \n [styleType]=\"'weak'\" \n (buttonClick)=\"close()\"\n ></pep-button>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"(incoming.Mode === 'edit' ? 'Update' : 'Save') | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"saveParameter()\"\n [disabled]=\"!isValid\"\n ></pep-button>\n </div>\n </ng-container>\n</pep-dialog>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepGenericListActions, IPepGenericListDataSource, IPepGenericListParams } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepDialogData, PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepSelectionData } from '@pepperi-addons/ngx-lib/list';\nimport { ParameterFormType, IParameterFormData, IParamemeter, IParametersColumn } from './manage-parameters.model';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { IPepFieldClickEvent } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@Component({\n selector: 'pep-manage-parameters',\n templateUrl: './manage-parameters.component.html',\n styleUrls: ['./manage-parameters.component.scss']\n})\nexport class ManageParametersComponent implements OnInit {\n\n @Input()\n showType = false;\n\n @Input()\n showAccessibility = false;\n\n @Input()\n showPersistency = false;\n\n // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).\n @Input()\n parametersColumns: IParametersColumn[] = [];\n\n @Input()\n parameters: IParamemeter[] = [];\n\n @Input()\n parametersTitle = '';\n\n @Output()\n parametersChange = new EventEmitter<IParamemeter[]>();\n \n dataSource!: IPepGenericListDataSource;\n listMessages: { [key: string]: string } = {};\n\n actions: IPepGenericListActions = {\n get: async (data: PepSelectionData) => {\n const actions = [];\n if (data && data.rows.length == 1) {\n const paramName = data.rows[0];\n const readOnly = this.parameters.find(x => x.Key === paramName)?.Readonly ?? false;\n actions.push({\n title: this.translate.instant('Edit'),\n handler: async (objs: any) => {\n this.openCreateParamForm('edit', objs.rows[0]);\n }\n });\n if (!readOnly) {\n actions.push({\n title: this.translate.instant('Delete'),\n handler: async (objs: any) => {\n this.showDeleteDialog(objs.rows[0]);\n }\n })\n }\n }\n return actions;\n }\n }\n\n constructor (private translate: TranslateService,\n private dataViewService: ManageParametersService,\n private dialogService: PepDialogService\n ) { }\n\n private notifyParametersChange() {\n this.parametersChange.emit(this.parameters);\n this.dataSource = this.getDataSource();\n }\n\n private getDataSource(): IPepGenericListDataSource {\n return {\n init: async (params: IPepGenericListParams) => {\n const listDataView = this.dataViewService.getParametersListDataView(this.parametersColumns, this.showType, this.showAccessibility, this.showPersistency);\n console.log('data view:', listDataView);\n return {\n dataView: listDataView,\n totalCount: this.parameters.length,\n items: this.parameters\n };\n },\n inputs: {\n pager: {\n type: 'scroll'\n },\n selectionType: 'single',\n emptyState: {\n show: true,\n title: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_TITLE'],\n description: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION'],\n }\n },\n } as IPepGenericListDataSource\n }\n\n ngOnInit(): void {\n this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {\n this.listMessages = translations;\n this.dataSource = this.getDataSource();\n })\n }\n\n onFieldClick(event: IPepFieldClickEvent) {\n this.openCreateParamForm('edit', event.value);\n }\n\n openCreateParamForm(formMode: ParameterFormType, paramName = '') {\n const paramItem = this.parameters.find(x => x.Key === paramName);\n const defaultParam: IParamemeter = {\n DefaultValue: '',\n Key: '',\n Type: 'String',\n Description: ''\n };\n\n // Add Accessibility field only if showAccessibility is true.\n if (this.showAccessibility) {\n defaultParam['Internal'] = false;\n }\n \n // Add Persistency field only if showPersistency is true.\n if (this.showPersistency) {\n defaultParam['Persistency'] = false;\n }\n\n const parameter = { ...defaultParam, ...paramItem };\n \n const formData: IParameterFormData = {\n Parameter: parameter,\n Mode: formMode,\n ShowType: this.showType,\n ShowAccessibility: this.showAccessibility,\n ShowPersistency: this.showPersistency,\n Readonly: paramItem?.Readonly\n };\n\n const config = this.dialogService.getDialogConfig({}, 'large');\n config.data = new PepDialogData({\n content: ManageParameterComponent\n })\n \n this.dialogService.openDialog(ManageParameterComponent, formData, config).afterClosed().subscribe((value: IParamemeter) => {\n if (value) {\n const index = this.parameters.findIndex(param => param.Key === value.Key);\n // if the param doesn't exist, push to the end of the array, otherwise edit existing\n if (index < 0) {\n this.parameters.push(value);\n }\n else {\n this.parameters.splice(index, 1, value);\n }\n\n this.notifyParametersChange();\n }\n });\n }\n\n showDeleteDialog(paramName: string) {\n const dataMsg = new PepDialogData({\n title: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_TITLE', { param_name: paramName }),\n actionsType: 'cancel-delete',\n content: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_CONTENT')\n });\n\n this.dialogService.openDefaultDialog(dataMsg).afterClosed().subscribe(async (isDeletePressed) => {\n if (isDeletePressed) {\n const index = this.parameters.findIndex(x => x.Key === paramName);\n if (index > -1) {\n this.parameters.splice(index, 1);\n this.notifyParametersChange();\n }\n }\n });\n }\n}\n","<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersComponent } from './manage-parameters.component';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepGenericListModule } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepGenericFormModule } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@NgModule({\n declarations: [\n ManageParametersComponent, ManageParameterComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepDialogModule,\n PepButtonModule,\n PepGenericListModule,\n PepGenericFormModule\n ],\n providers: [ManageParametersService],\n exports: [ManageParametersComponent],\n})\nexport class PepManageParametersModule { }\n","// import { AddonDataScheme, FlowParam, FormDataView, NgComponentRelation } from \"@pepperi-addons/papi-sdk\";\r\n// import { IAddonBlockLoaderDialogOptions } from \"@pepperi-addons/ngx-lib/remote-loader\";\r\n\r\nimport { DataViewFieldType, SchemeFieldType } from \"@pepperi-addons/papi-sdk\";\r\n\r\n// import { DebugFlowResult, FlowObject, LogicBlock } from \"shared\";\r\n// import { IPepDraggableItem } from \"@pepperi-addons/ngx-lib/draggable-items\";\r\n// import { PepStyleType } from \"@pepperi-addons/ngx-lib\";\r\n\r\n// export interface LogicBlockEditorOptions extends IAddonBlockLoaderDialogOptions {\r\n// block: LogicBlock;\r\n// }\r\n\r\n// export interface LogicBlockRelation extends NgComponentRelation {\r\n// BlockExecutionRelativeURL: string;\r\n// }\r\n\r\n// export type ActionType = 'Add' | 'Edit' | 'Delete' | 'Duplicate' | 'Logs' | 'Test';\r\n\r\n// export interface ActionClickedEventData {\r\n// ActionType: ActionType,\r\n// ItemKey?: string\r\n// }\r\n\r\n// export const GL_PAGE_SIZE = 30;\r\n// export const API_PAGE_SIZE = 100;\r\n// export const SELECTION_FIELD_PREFIX = 'ValueSelectionType_';\r\n\r\n// export const SECOND = 1000;\r\n// export const MINUTE = 60 * SECOND;\r\n\r\nexport type ParameterFormType = 'add' | 'edit';\r\n\r\nexport interface IParametersColumn {\r\n Key: string; // This is the property name of the parameter.\r\n Title: string;\r\n Type: DataViewFieldType,\r\n Width: number;\r\n}\r\n\r\nexport interface IParamemeter {\r\n Key: string;\r\n Type: SchemeFieldType;\r\n Description?: string;\r\n DefaultValue: any;\r\n Readonly?: boolean;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IParameterFormData {\r\n Mode: ParameterFormType;\r\n Parameter: IParamemeter;\r\n ShowType?: boolean;\r\n ShowAccessibility?: boolean;\r\n ShowPersistency?: boolean;\r\n Readonly?: boolean;\r\n}\r\n\r\n// export interface FlowDraggableItem extends IPepDraggableItem {\r\n// data: {\r\n// key: string;\r\n// addonUUID: string;\r\n// blockExecutionRelativeURL: string;\r\n// moduleName: string;\r\n// componentName: string;\r\n// }\r\n// }\r\n\r\n// export interface FlowPickerData {\r\n// runFlowData?: FlowObject\r\n// fields?: AddonDataScheme['Fields']\r\n// }\r\n\r\n// export interface PageTitleButton {\r\n// Key: string;\r\n// Title: string;\r\n// StyleType: PepStyleType;\r\n// Disabled: boolean\r\n// }\r\n\r\n// export type PollResultCallback = (status: DebugFlowResult)=> void;","/*\n * Public API Surface of ngx-composite-lib/manage-parameters\n */\nexport * from './manage-parameters.module';\nexport * from './manage-parameters.component';\n// export * from './manage-parameter/manage-parameter.component';\nexport * from './manage-parameters.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i3","i2.ManageParametersService","i5"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-manage-parameters.mjs","sources":["../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.service.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.module.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.model.ts","../../../projects/ngx-composite-lib/manage-parameters/public-api.ts","../../../projects/ngx-composite-lib/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { IPepGenericFormDataView } from \"@pepperi-addons/ngx-composite-lib/generic-form\";\nimport { KeyValuePair } from \"@pepperi-addons/ngx-lib\";\nimport { DataViewFieldType, GridDataView, SchemeFieldType, SchemeFieldTypes } from \"@pepperi-addons/papi-sdk\";\nimport { IParametersColumn, ParameterFormType } from \"./manage-parameters.model\";\n\n@Injectable({\n providedIn:'root'\n})\nexport class ManageParametersService {\n \n constructor (private translate: TranslateService) {\n\n }\n\n private getAvailableTypes(): KeyValuePair<string>[] {\n const types = SchemeFieldTypes.filter(type => ['Array', 'DateTime', 'Resource', 'ContainedResource', 'DynamicResource', 'ContainedDynamicResource', 'MultipleStringValues'].includes(type) === false);\n return types.map(type => {\n return {\n Key: type,\n Value: type\n }\n })\n }\n\n private convertParamsTypeToDVType(paramType: SchemeFieldType): DataViewFieldType {\n let res: DataViewFieldType = 'TextBox';\n switch (paramType) {\n case 'Bool': {\n res = 'Boolean';\n break;\n }\n case 'Integer': {\n res = 'NumberInteger';\n break;\n }\n case 'Double': {\n res = 'NumberReal';\n break;\n }\n }\n return res;\n }\n\n private getDataViewField(fieldId: string, type: DataViewFieldType, title: string, mandatory: boolean, readOnly: boolean, \n optionalValues: any[] | undefined = undefined, additionalProps: any = undefined, layout: any = undefined): any {\n\n const res: any = {\n FieldID: fieldId,\n Type: type,\n Title: title,\n Mandatory: mandatory,\n ReadOnly: readOnly\n }\n\n if (optionalValues) {\n res['OptionalValues'] = optionalValues;\n }\n\n if (additionalProps) {\n res['AdditionalProps'] = additionalProps;\n }\n\n if (layout) {\n res['Layout'] = layout;\n }\n\n return res;\n }\n\n getParametersListDataView(parametersColumns: IParametersColumn[], showType: boolean, showAccessibility: boolean, showPersistency: boolean): GridDataView {\n let fields;\n let columns;\n\n // If columns are defined, use them. Otherwise, use the default columns.\n if (parametersColumns.length > 0) {\n fields = parametersColumns.map(column => {\n return this.getDataViewField(column.Key, column.Type, column.Title, false, true, [], {});\n });\n\n columns = parametersColumns.map(column => {\n return { Width: column.Width }\n });\n } else {\n // Add Key and Description fields.\n fields = [\n this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n fields.push(this.getDataViewField('Type', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, true));\n }\n\n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, true));\n\n // Add Internal field.\n if (showAccessibility) {\n fields.push(this.getDataViewField('Internal', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_TITLE'), false, true));\n }\n\n // Add Internal field.\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), false, true));\n }\n\n columns = fields.map(field => {\n return { Width: 100 / fields.length }\n });\n }\n\n return {\n Context: {\n Name: '',\n Profile: { InternalID: 0 },\n ScreenSize: 'Landscape'\n },\n Type: 'Grid',\n Title: '',\n Fields: fields,\n Columns: columns,\n FrozenColumnsCount: 0,\n MinimumColumnWidth: 0\n }\n }\n\n getParameterFormDataView(formMode: ParameterFormType, paramType: SchemeFieldType, showType: boolean, showAccessibility: boolean, showPersistency: boolean): IPepGenericFormDataView {\n const fieldTypes = this.getAvailableTypes();\n const noEmptyOption = { emptyOption: false };\n\n // Add Key and Description fields.\n const fields = [\n this.getDataViewField('Key', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), formMode === 'add', formMode != 'add', [], \n { regex: '^([a-zA-Z0-9-_])*$', regexError: this.translate.instant('MANAGE_PARAMETERS.KEY_REGEX_ERROR')}\n ),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, false, [], {}, \n { Size: { Width:1, Height:2 } }\n )\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n this.getDataViewField('Type', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, formMode != 'add', fieldTypes, noEmptyOption);\n }\n \n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', this.convertParamsTypeToDVType(paramType), this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), \n false, false, [], {}))\n \n // Add Internal and Accessibility_Description fields.\n if (showAccessibility) {\n const accessibilityDescAdditionalProps = { renderTitle: false, renderEnlargeButton: false };\n const accessibilityDescLayout = { Size: { Height: 0, Width: 1 } };\n\n fields.push(this.getDataViewField('Accessibility_Description', 'RichTextHTML', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION'), \n false, true, [], accessibilityDescAdditionalProps, accessibilityDescLayout)\n );\n \n const accessibilityOptionalValues = [{ Key: 'Internal', Value: 'Internal' }, { Key: 'External', Value: 'External' }];\n fields.push(this.getDataViewField('Accessibility', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.ACCESSIBILITY_TITLE'), \n false, false, accessibilityOptionalValues, noEmptyOption)\n );\n }\n\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), \n false, false)\n );\n }\n\n return {\n Type: 'Form',\n Fields: fields,\n Context: {\n Name: '',\n Profile: { },\n ScreenSize: 'Tablet'\n }\n };\n }\n}","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { GenericFormComponent, IPepGenericFormDataView, IPepGenericFormValueChange } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { IParamemeter, IParameterFormData } from '../manage-parameters.model';\n\nimport { TranslateService } from '@ngx-translate/core';\nimport { ManageParametersService } from '../manage-parameters.service';\nimport { SchemeFieldType } from '@pepperi-addons/papi-sdk';\n\n@Component({\n selector: 'manage-parameter',\n templateUrl: './manage-parameter.component.html',\n styleUrls: ['./manage-parameter.component.scss']\n})\nexport class ManageParameterComponent implements OnInit {\n\n // @ViewChild('flowsList', {read: GenericFormComponent}) set genericFormSetter(inForm: GenericFormComponent) {\n // if (inForm) {\n // this.form = inForm;\n // }\n // };\n \n form!: GenericFormComponent;\n parameter: IParamemeter | undefined = undefined;\n showType = false;\n showAccessibility = false;\n showPersistency = false;\n dataView!: IPepGenericFormDataView;\n readonly = false;\n isValid = true;\n\n constructor ( private dialogRef: MatDialogRef<ManageParameterComponent>,\n private manageParametersService: ManageParametersService,\n private translate: TranslateService,\n @Inject(MAT_DIALOG_DATA) public incoming: IParameterFormData) {\n\n }\n\n private loadDataView(paramType: SchemeFieldType) {\n this.dataView = this.manageParametersService.getParameterFormDataView(this.incoming.Mode, paramType || 'String', this.showType, this.showAccessibility, this.showPersistency);\n }\n\n ngOnInit(): void {\n this.parameter = this.getParameter(this.incoming.Parameter);\n this.showType = this.incoming.ShowType ?? false;\n this.showAccessibility = this.incoming.ShowAccessibility ?? false;\n this.showPersistency = this.incoming.ShowPersistency ?? false;\n this.readonly = this.incoming.Readonly ?? false;\n this.loadDataView(this.parameter?.Type);\n }\n\n saveParameter() {\n // before updating the parameter, remove redundant properties\n if (this.parameter && this.showAccessibility) {\n delete this.parameter['Accessibility'];\n delete this.parameter['Accessibility_Description'];\n }\n\n this.close(this.parameter);\n }\n\n close(parameter: IParamemeter | undefined = undefined) {\n this.dialogRef.close(parameter || null);\n }\n\n getParameter(parameter: IParamemeter): IParamemeter {\n const ret: IParamemeter = JSON.parse(JSON.stringify(parameter));\n Object.keys(parameter || {}).forEach(prop => {\n if (typeof(parameter[prop]) != 'boolean') {\n // if the value is null/undefined, don't copy it\n if (parameter[prop]) {\n ret[prop] = parameter[prop].toString();\n }\n } else if (prop === 'Internal' && this.showAccessibility) {\n ret['Accessibility'] = parameter[prop] ? 'Internal' : 'External'\n } else {\n ret[prop] = parameter[prop];\n }\n });\n \n if (this.showAccessibility) {\n ret['Accessibility_Description'] = this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION');\n }\n\n return ret;\n }\n\n onValueChanged(event: IPepGenericFormValueChange) {\n if (event.ApiName === 'Type' && this.showType) {\n this.loadDataView(event.Value);\n } else if (event.ApiName === 'Accessibility' && this.showAccessibility) {\n if (this.parameter) {\n this.parameter['Internal'] = event.Value === 'Internal';\n }\n }\n }\n\n}","<pep-dialog [title]=\"(incoming.Mode === 'edit' ? 'MANAGE_PARAMETERS.EDIT_FORM_TITLE' : 'MANAGE_PARAMETERS.ADD_FORM_TITLE') | translate\">\n <ng-container pep-dialog-content>\n <pep-generic-form #addForm [dataSource]=\"parameter\" [dataView]=\"dataView\" [isLocked]=\"readonly\" (formValidationChange)=\"isValid = $event\" (valueChange)=\"onValueChanged($event)\">\n\n </pep-generic-form>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\" style=\"display: flex;\"> \n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"'Cancel' | translate\" \n [styleType]=\"'weak'\" \n (buttonClick)=\"close()\"\n ></pep-button>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"(incoming.Mode === 'edit' ? 'Update' : 'Save') | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"saveParameter()\"\n [disabled]=\"!isValid\"\n ></pep-button>\n </div>\n </ng-container>\n</pep-dialog>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepGenericListActions, IPepGenericListDataSource, IPepGenericListParams } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepDialogData, PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepSelectionData } from '@pepperi-addons/ngx-lib/list';\nimport { ParameterFormType, IParameterFormData, IParamemeter, IParametersColumn } from './manage-parameters.model';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { IPepFieldClickEvent } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@Component({\n selector: 'pep-manage-parameters',\n templateUrl: './manage-parameters.component.html',\n styleUrls: ['./manage-parameters.component.scss']\n})\nexport class ManageParametersComponent implements OnInit {\n\n @Input()\n showType = false;\n\n @Input()\n showAccessibility = false;\n\n @Input()\n showPersistency = false;\n\n // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).\n @Input()\n parametersColumns: IParametersColumn[] = [];\n\n private _parameters: IParamemeter[] = [];\n @Input()\n set parameters(value: IParamemeter[]) {\n this._parameters = value || [];\n this.notifyParametersChange(false);\n }\n get parameters(): IParamemeter[] {\n return this._parameters;\n }\n\n @Input()\n parametersTitle = '';\n\n @Output()\n parametersChange = new EventEmitter<IParamemeter[]>();\n \n dataSource!: IPepGenericListDataSource;\n listMessages: { [key: string]: string } = {};\n\n actions: IPepGenericListActions = {\n get: async (data: PepSelectionData) => {\n const actions = [];\n if (data && data.rows.length == 1) {\n const paramName = data.rows[0];\n const readOnly = this.parameters.find(x => x.Key === paramName)?.Readonly ?? false;\n actions.push({\n title: this.translate.instant('Edit'),\n handler: async (objs: any) => {\n this.openCreateParamForm('edit', objs.rows[0]);\n }\n });\n if (!readOnly) {\n actions.push({\n title: this.translate.instant('Delete'),\n handler: async (objs: any) => {\n this.showDeleteDialog(objs.rows[0]);\n }\n })\n }\n }\n return actions;\n }\n }\n\n constructor (private translate: TranslateService,\n private dataViewService: ManageParametersService,\n private dialogService: PepDialogService\n ) { }\n\n private notifyParametersChange(raiseEvent = true) {\n this.dataSource = this.getDataSource();\n \n if (raiseEvent) {\n this.parametersChange.emit(this.parameters);\n }\n }\n\n private getDataSource(): IPepGenericListDataSource {\n return {\n init: async (params: IPepGenericListParams) => {\n const listDataView = this.dataViewService.getParametersListDataView(this.parametersColumns, this.showType, this.showAccessibility, this.showPersistency);\n console.log('data view:', listDataView);\n return {\n dataView: listDataView,\n totalCount: this.parameters.length,\n items: this.parameters\n };\n },\n inputs: {\n pager: {\n type: 'scroll'\n },\n selectionType: 'single',\n emptyState: {\n show: true,\n title: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_TITLE'],\n description: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION'],\n }\n },\n } as IPepGenericListDataSource\n }\n\n ngOnInit(): void {\n // TODO: Sort the parameters by name\n this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {\n this.listMessages = translations;\n this.dataSource = this.getDataSource();\n })\n }\n\n onFieldClick(event: IPepFieldClickEvent) {\n this.openCreateParamForm('edit', event.value);\n }\n\n openCreateParamForm(formMode: ParameterFormType, paramName = '') {\n const paramItem = this.parameters.find(x => x.Key === paramName);\n const defaultParam: IParamemeter = {\n DefaultValue: '',\n Key: '',\n Type: 'String',\n Description: ''\n };\n\n // Add Accessibility field only if showAccessibility is true.\n if (this.showAccessibility) {\n defaultParam['Internal'] = false;\n }\n \n // Add Persistency field only if showPersistency is true.\n if (this.showPersistency) {\n defaultParam['Persistency'] = false;\n }\n\n const parameter = { ...defaultParam, ...paramItem };\n \n const formData: IParameterFormData = {\n Parameter: parameter,\n Mode: formMode,\n ShowType: this.showType,\n ShowAccessibility: this.showAccessibility,\n ShowPersistency: this.showPersistency,\n Readonly: paramItem?.Readonly\n };\n\n const config = this.dialogService.getDialogConfig({}, 'large');\n config.data = new PepDialogData({\n content: ManageParameterComponent\n })\n \n this.dialogService.openDialog(ManageParameterComponent, formData, config).afterClosed().subscribe((value: IParamemeter) => {\n if (value) {\n const index = this.parameters.findIndex(param => param.Key === value.Key);\n // if the param doesn't exist, push to the end of the array, otherwise edit existing\n if (index < 0) {\n this.parameters.push(value);\n }\n else {\n this.parameters.splice(index, 1, value);\n }\n\n this.notifyParametersChange();\n }\n });\n }\n\n showDeleteDialog(paramName: string) {\n const dataMsg = new PepDialogData({\n title: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_TITLE', { param_name: paramName }),\n actionsType: 'cancel-delete',\n content: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_CONTENT')\n });\n\n this.dialogService.openDefaultDialog(dataMsg).afterClosed().subscribe(async (isDeletePressed) => {\n if (isDeletePressed) {\n const index = this.parameters.findIndex(x => x.Key === paramName);\n if (index > -1) {\n this.parameters.splice(index, 1);\n this.notifyParametersChange();\n }\n }\n });\n }\n}\n","<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersComponent } from './manage-parameters.component';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepGenericListModule } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepGenericFormModule } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@NgModule({\n declarations: [\n ManageParametersComponent, ManageParameterComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepDialogModule,\n PepButtonModule,\n PepGenericListModule,\n PepGenericFormModule\n ],\n providers: [ManageParametersService],\n exports: [ManageParametersComponent],\n})\nexport class PepManageParametersModule { }\n","// import { AddonDataScheme, FlowParam, FormDataView, NgComponentRelation } from \"@pepperi-addons/papi-sdk\";\r\n// import { IAddonBlockLoaderDialogOptions } from \"@pepperi-addons/ngx-lib/remote-loader\";\r\n\r\nimport { DataViewFieldType, SchemeFieldType } from \"@pepperi-addons/papi-sdk\";\r\n\r\n// import { DebugFlowResult, FlowObject, LogicBlock } from \"shared\";\r\n// import { IPepDraggableItem } from \"@pepperi-addons/ngx-lib/draggable-items\";\r\n// import { PepStyleType } from \"@pepperi-addons/ngx-lib\";\r\n\r\n// export interface LogicBlockEditorOptions extends IAddonBlockLoaderDialogOptions {\r\n// block: LogicBlock;\r\n// }\r\n\r\n// export interface LogicBlockRelation extends NgComponentRelation {\r\n// BlockExecutionRelativeURL: string;\r\n// }\r\n\r\n// export type ActionType = 'Add' | 'Edit' | 'Delete' | 'Duplicate' | 'Logs' | 'Test';\r\n\r\n// export interface ActionClickedEventData {\r\n// ActionType: ActionType,\r\n// ItemKey?: string\r\n// }\r\n\r\n// export const GL_PAGE_SIZE = 30;\r\n// export const API_PAGE_SIZE = 100;\r\n// export const SELECTION_FIELD_PREFIX = 'ValueSelectionType_';\r\n\r\n// export const SECOND = 1000;\r\n// export const MINUTE = 60 * SECOND;\r\n\r\nexport type ParameterFormType = 'add' | 'edit';\r\n\r\nexport interface IParametersColumn {\r\n Key: string; // This is the property name of the parameter.\r\n Title: string;\r\n Type: DataViewFieldType,\r\n Width: number;\r\n}\r\n\r\nexport interface IParamemeter {\r\n Key: string;\r\n Type: SchemeFieldType;\r\n Description?: string;\r\n DefaultValue: any;\r\n Readonly?: boolean;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IParameterFormData {\r\n Mode: ParameterFormType;\r\n Parameter: IParamemeter;\r\n ShowType?: boolean;\r\n ShowAccessibility?: boolean;\r\n ShowPersistency?: boolean;\r\n Readonly?: boolean;\r\n}\r\n\r\n// export interface FlowDraggableItem extends IPepDraggableItem {\r\n// data: {\r\n// key: string;\r\n// addonUUID: string;\r\n// blockExecutionRelativeURL: string;\r\n// moduleName: string;\r\n// componentName: string;\r\n// }\r\n// }\r\n\r\n// export interface FlowPickerData {\r\n// runFlowData?: FlowObject\r\n// fields?: AddonDataScheme['Fields']\r\n// }\r\n\r\n// export interface PageTitleButton {\r\n// Key: string;\r\n// Title: string;\r\n// StyleType: PepStyleType;\r\n// Disabled: boolean\r\n// }\r\n\r\n// export type PollResultCallback = (status: DebugFlowResult)=> void;","/*\n * Public API Surface of ngx-composite-lib/manage-parameters\n */\nexport * from './manage-parameters.module';\nexport * from './manage-parameters.component';\n// export * from './manage-parameter/manage-parameter.component';\nexport * from './manage-parameters.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i3","i2.ManageParametersService","i5"],"mappings":"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"}
@@ -81,7 +81,7 @@ class ManageParametersService {
81
81
  // Add Key and Description fields.
82
82
  fields = [
83
83
  this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),
84
- this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
84
+ this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
85
85
  ];
86
86
  // Add Type field only if showType is true.
87
87
  if (showType) {
@@ -247,7 +247,7 @@ class ManageParametersComponent {
247
247
  this.showPersistency = false;
248
248
  // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).
249
249
  this.parametersColumns = [];
250
- this.parameters = [];
250
+ this._parameters = [];
251
251
  this.parametersTitle = '';
252
252
  this.parametersChange = new EventEmitter();
253
253
  this.listMessages = {};
@@ -276,9 +276,18 @@ class ManageParametersComponent {
276
276
  }
277
277
  };
278
278
  }
279
- notifyParametersChange() {
280
- this.parametersChange.emit(this.parameters);
279
+ set parameters(value) {
280
+ this._parameters = value || [];
281
+ this.notifyParametersChange(false);
282
+ }
283
+ get parameters() {
284
+ return this._parameters;
285
+ }
286
+ notifyParametersChange(raiseEvent = true) {
281
287
  this.dataSource = this.getDataSource();
288
+ if (raiseEvent) {
289
+ this.parametersChange.emit(this.parameters);
290
+ }
282
291
  }
283
292
  getDataSource() {
284
293
  return {
@@ -305,6 +314,7 @@ class ManageParametersComponent {
305
314
  };
306
315
  }
307
316
  ngOnInit() {
317
+ // TODO: Sort the parameters by name
308
318
  this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {
309
319
  this.listMessages = translations;
310
320
  this.dataSource = this.getDataSource();
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-manage-parameters.mjs","sources":["../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.service.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.module.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.model.ts","../../../projects/ngx-composite-lib/manage-parameters/public-api.ts","../../../projects/ngx-composite-lib/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { IPepGenericFormDataView } from \"@pepperi-addons/ngx-composite-lib/generic-form\";\nimport { KeyValuePair } from \"@pepperi-addons/ngx-lib\";\nimport { DataViewFieldType, GridDataView, SchemeFieldType, SchemeFieldTypes } from \"@pepperi-addons/papi-sdk\";\nimport { IParametersColumn, ParameterFormType } from \"./manage-parameters.model\";\n\n@Injectable({\n providedIn:'root'\n})\nexport class ManageParametersService {\n \n constructor (private translate: TranslateService) {\n\n }\n\n private getAvailableTypes(): KeyValuePair<string>[] {\n const types = SchemeFieldTypes.filter(type => ['Array', 'DateTime', 'Resource', 'ContainedResource', 'DynamicResource', 'ContainedDynamicResource', 'MultipleStringValues'].includes(type) === false);\n return types.map(type => {\n return {\n Key: type,\n Value: type\n }\n })\n }\n\n private convertParamsTypeToDVType(paramType: SchemeFieldType): DataViewFieldType {\n let res: DataViewFieldType = 'TextBox';\n switch (paramType) {\n case 'Bool': {\n res = 'Boolean';\n break;\n }\n case 'Integer': {\n res = 'NumberInteger';\n break;\n }\n case 'Double': {\n res = 'NumberReal';\n break;\n }\n }\n return res;\n }\n\n private getDataViewField(fieldId: string, type: DataViewFieldType, title: string, mandatory: boolean, readOnly: boolean, \n optionalValues: any[] | undefined = undefined, additionalProps: any = undefined, layout: any = undefined): any {\n\n const res: any = {\n FieldID: fieldId,\n Type: type,\n Title: title,\n Mandatory: mandatory,\n ReadOnly: readOnly\n }\n\n if (optionalValues) {\n res['OptionalValues'] = optionalValues;\n }\n\n if (additionalProps) {\n res['AdditionalProps'] = additionalProps;\n }\n\n if (layout) {\n res['Layout'] = layout;\n }\n\n return res;\n }\n\n getParametersListDataView(parametersColumns: IParametersColumn[], showType: boolean, showAccessibility: boolean, showPersistency: boolean): GridDataView {\n let fields;\n let columns;\n\n // If columns are defined, use them. Otherwise, use the default columns.\n if (parametersColumns.length > 0) {\n fields = parametersColumns.map(column => {\n return this.getDataViewField(column.Key, column.Type, column.Title, false, true, [], {});\n });\n\n columns = parametersColumns.map(column => {\n return { Width: column.Width }\n });\n } else {\n // Add Key and Description fields.\n fields = [\n this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),\n this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n fields.push(this.getDataViewField('Type', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, true));\n }\n\n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, true));\n\n // Add Internal field.\n if (showAccessibility) {\n fields.push(this.getDataViewField('Internal', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_TITLE'), false, true));\n }\n\n // Add Internal field.\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), false, true));\n }\n\n columns = fields.map(field => {\n return { Width: 100 / fields.length }\n });\n }\n\n return {\n Context: {\n Name: '',\n Profile: { InternalID: 0 },\n ScreenSize: 'Landscape'\n },\n Type: 'Grid',\n Title: '',\n Fields: fields,\n Columns: columns,\n FrozenColumnsCount: 0,\n MinimumColumnWidth: 0\n }\n }\n\n getParameterFormDataView(formMode: ParameterFormType, paramType: SchemeFieldType, showType: boolean, showAccessibility: boolean, showPersistency: boolean): IPepGenericFormDataView {\n const fieldTypes = this.getAvailableTypes();\n const noEmptyOption = { emptyOption: false };\n\n // Add Key and Description fields.\n const fields = [\n this.getDataViewField('Key', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), formMode === 'add', formMode != 'add', [], \n { regex: '^([a-zA-Z0-9-_])*$', regexError: this.translate.instant('MANAGE_PARAMETERS.KEY_REGEX_ERROR')}\n ),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, false, [], {}, \n { Size: { Width:1, Height:2 } }\n )\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n this.getDataViewField('Type', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, formMode != 'add', fieldTypes, noEmptyOption);\n }\n \n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', this.convertParamsTypeToDVType(paramType), this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), \n false, false, [], {}))\n \n // Add Internal and Accessibility_Description fields.\n if (showAccessibility) {\n const accessibilityDescAdditionalProps = { renderTitle: false, renderEnlargeButton: false };\n const accessibilityDescLayout = { Size: { Height: 0, Width: 1 } };\n\n fields.push(this.getDataViewField('Accessibility_Description', 'RichTextHTML', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION'), \n false, true, [], accessibilityDescAdditionalProps, accessibilityDescLayout)\n );\n \n const accessibilityOptionalValues = [{ Key: 'Internal', Value: 'Internal' }, { Key: 'External', Value: 'External' }];\n fields.push(this.getDataViewField('Accessibility', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.ACCESSIBILITY_TITLE'), \n false, false, accessibilityOptionalValues, noEmptyOption)\n );\n }\n\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), \n false, false)\n );\n }\n\n return {\n Type: 'Form',\n Fields: fields,\n Context: {\n Name: '',\n Profile: { },\n ScreenSize: 'Tablet'\n }\n };\n }\n}","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { GenericFormComponent, IPepGenericFormDataView, IPepGenericFormValueChange } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { IParamemeter, IParameterFormData } from '../manage-parameters.model';\n\nimport { TranslateService } from '@ngx-translate/core';\nimport { ManageParametersService } from '../manage-parameters.service';\nimport { SchemeFieldType } from '@pepperi-addons/papi-sdk';\n\n@Component({\n selector: 'manage-parameter',\n templateUrl: './manage-parameter.component.html',\n styleUrls: ['./manage-parameter.component.scss']\n})\nexport class ManageParameterComponent implements OnInit {\n\n // @ViewChild('flowsList', {read: GenericFormComponent}) set genericFormSetter(inForm: GenericFormComponent) {\n // if (inForm) {\n // this.form = inForm;\n // }\n // };\n \n form!: GenericFormComponent;\n parameter: IParamemeter | undefined = undefined;\n showType = false;\n showAccessibility = false;\n showPersistency = false;\n dataView!: IPepGenericFormDataView;\n readonly = false;\n isValid = true;\n\n constructor ( private dialogRef: MatDialogRef<ManageParameterComponent>,\n private manageParametersService: ManageParametersService,\n private translate: TranslateService,\n @Inject(MAT_DIALOG_DATA) public incoming: IParameterFormData) {\n\n }\n\n private loadDataView(paramType: SchemeFieldType) {\n this.dataView = this.manageParametersService.getParameterFormDataView(this.incoming.Mode, paramType || 'String', this.showType, this.showAccessibility, this.showPersistency);\n }\n\n ngOnInit(): void {\n this.parameter = this.getParameter(this.incoming.Parameter);\n this.showType = this.incoming.ShowType ?? false;\n this.showAccessibility = this.incoming.ShowAccessibility ?? false;\n this.showPersistency = this.incoming.ShowPersistency ?? false;\n this.readonly = this.incoming.Readonly ?? false;\n this.loadDataView(this.parameter?.Type);\n }\n\n saveParameter() {\n // before updating the parameter, remove redundant properties\n if (this.parameter && this.showAccessibility) {\n delete this.parameter['Accessibility'];\n delete this.parameter['Accessibility_Description'];\n }\n\n this.close(this.parameter);\n }\n\n close(parameter: IParamemeter | undefined = undefined) {\n this.dialogRef.close(parameter || null);\n }\n\n getParameter(parameter: IParamemeter): IParamemeter {\n const ret: IParamemeter = JSON.parse(JSON.stringify(parameter));\n Object.keys(parameter || {}).forEach(prop => {\n if (typeof(parameter[prop]) != 'boolean') {\n // if the value is null/undefined, don't copy it\n if (parameter[prop]) {\n ret[prop] = parameter[prop].toString();\n }\n } else if (prop === 'Internal' && this.showAccessibility) {\n ret['Accessibility'] = parameter[prop] ? 'Internal' : 'External'\n } else {\n ret[prop] = parameter[prop];\n }\n });\n \n if (this.showAccessibility) {\n ret['Accessibility_Description'] = this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION');\n }\n\n return ret;\n }\n\n onValueChanged(event: IPepGenericFormValueChange) {\n if (event.ApiName === 'Type' && this.showType) {\n this.loadDataView(event.Value);\n } else if (event.ApiName === 'Accessibility' && this.showAccessibility) {\n if (this.parameter) {\n this.parameter['Internal'] = event.Value === 'Internal';\n }\n }\n }\n\n}","<pep-dialog [title]=\"(incoming.Mode === 'edit' ? 'MANAGE_PARAMETERS.EDIT_FORM_TITLE' : 'MANAGE_PARAMETERS.ADD_FORM_TITLE') | translate\">\n <ng-container pep-dialog-content>\n <pep-generic-form #addForm [dataSource]=\"parameter\" [dataView]=\"dataView\" [isLocked]=\"readonly\" (formValidationChange)=\"isValid = $event\" (valueChange)=\"onValueChanged($event)\">\n\n </pep-generic-form>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\" style=\"display: flex;\"> \n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"'Cancel' | translate\" \n [styleType]=\"'weak'\" \n (buttonClick)=\"close()\"\n ></pep-button>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"(incoming.Mode === 'edit' ? 'Update' : 'Save') | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"saveParameter()\"\n [disabled]=\"!isValid\"\n ></pep-button>\n </div>\n </ng-container>\n</pep-dialog>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepGenericListActions, IPepGenericListDataSource, IPepGenericListParams } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepDialogData, PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepSelectionData } from '@pepperi-addons/ngx-lib/list';\nimport { ParameterFormType, IParameterFormData, IParamemeter, IParametersColumn } from './manage-parameters.model';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { IPepFieldClickEvent } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@Component({\n selector: 'pep-manage-parameters',\n templateUrl: './manage-parameters.component.html',\n styleUrls: ['./manage-parameters.component.scss']\n})\nexport class ManageParametersComponent implements OnInit {\n\n @Input()\n showType = false;\n\n @Input()\n showAccessibility = false;\n\n @Input()\n showPersistency = false;\n\n // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).\n @Input()\n parametersColumns: IParametersColumn[] = [];\n\n @Input()\n parameters: IParamemeter[] = [];\n\n @Input()\n parametersTitle = '';\n\n @Output()\n parametersChange = new EventEmitter<IParamemeter[]>();\n \n dataSource!: IPepGenericListDataSource;\n listMessages: { [key: string]: string } = {};\n\n actions: IPepGenericListActions = {\n get: async (data: PepSelectionData) => {\n const actions = [];\n if (data && data.rows.length == 1) {\n const paramName = data.rows[0];\n const readOnly = this.parameters.find(x => x.Key === paramName)?.Readonly ?? false;\n actions.push({\n title: this.translate.instant('Edit'),\n handler: async (objs: any) => {\n this.openCreateParamForm('edit', objs.rows[0]);\n }\n });\n if (!readOnly) {\n actions.push({\n title: this.translate.instant('Delete'),\n handler: async (objs: any) => {\n this.showDeleteDialog(objs.rows[0]);\n }\n })\n }\n }\n return actions;\n }\n }\n\n constructor (private translate: TranslateService,\n private dataViewService: ManageParametersService,\n private dialogService: PepDialogService\n ) { }\n\n private notifyParametersChange() {\n this.parametersChange.emit(this.parameters);\n this.dataSource = this.getDataSource();\n }\n\n private getDataSource(): IPepGenericListDataSource {\n return {\n init: async (params: IPepGenericListParams) => {\n const listDataView = this.dataViewService.getParametersListDataView(this.parametersColumns, this.showType, this.showAccessibility, this.showPersistency);\n console.log('data view:', listDataView);\n return {\n dataView: listDataView,\n totalCount: this.parameters.length,\n items: this.parameters\n };\n },\n inputs: {\n pager: {\n type: 'scroll'\n },\n selectionType: 'single',\n emptyState: {\n show: true,\n title: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_TITLE'],\n description: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION'],\n }\n },\n } as IPepGenericListDataSource\n }\n\n ngOnInit(): void {\n this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {\n this.listMessages = translations;\n this.dataSource = this.getDataSource();\n })\n }\n\n onFieldClick(event: IPepFieldClickEvent) {\n this.openCreateParamForm('edit', event.value);\n }\n\n openCreateParamForm(formMode: ParameterFormType, paramName = '') {\n const paramItem = this.parameters.find(x => x.Key === paramName);\n const defaultParam: IParamemeter = {\n DefaultValue: '',\n Key: '',\n Type: 'String',\n Description: ''\n };\n\n // Add Accessibility field only if showAccessibility is true.\n if (this.showAccessibility) {\n defaultParam['Internal'] = false;\n }\n \n // Add Persistency field only if showPersistency is true.\n if (this.showPersistency) {\n defaultParam['Persistency'] = false;\n }\n\n const parameter = { ...defaultParam, ...paramItem };\n \n const formData: IParameterFormData = {\n Parameter: parameter,\n Mode: formMode,\n ShowType: this.showType,\n ShowAccessibility: this.showAccessibility,\n ShowPersistency: this.showPersistency,\n Readonly: paramItem?.Readonly\n };\n\n const config = this.dialogService.getDialogConfig({}, 'large');\n config.data = new PepDialogData({\n content: ManageParameterComponent\n })\n \n this.dialogService.openDialog(ManageParameterComponent, formData, config).afterClosed().subscribe((value: IParamemeter) => {\n if (value) {\n const index = this.parameters.findIndex(param => param.Key === value.Key);\n // if the param doesn't exist, push to the end of the array, otherwise edit existing\n if (index < 0) {\n this.parameters.push(value);\n }\n else {\n this.parameters.splice(index, 1, value);\n }\n\n this.notifyParametersChange();\n }\n });\n }\n\n showDeleteDialog(paramName: string) {\n const dataMsg = new PepDialogData({\n title: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_TITLE', { param_name: paramName }),\n actionsType: 'cancel-delete',\n content: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_CONTENT')\n });\n\n this.dialogService.openDefaultDialog(dataMsg).afterClosed().subscribe(async (isDeletePressed) => {\n if (isDeletePressed) {\n const index = this.parameters.findIndex(x => x.Key === paramName);\n if (index > -1) {\n this.parameters.splice(index, 1);\n this.notifyParametersChange();\n }\n }\n });\n }\n}\n","<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersComponent } from './manage-parameters.component';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepGenericListModule } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepGenericFormModule } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@NgModule({\n declarations: [\n ManageParametersComponent, ManageParameterComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepDialogModule,\n PepButtonModule,\n PepGenericListModule,\n PepGenericFormModule\n ],\n providers: [ManageParametersService],\n exports: [ManageParametersComponent],\n})\nexport class PepManageParametersModule { }\n","// import { AddonDataScheme, FlowParam, FormDataView, NgComponentRelation } from \"@pepperi-addons/papi-sdk\";\r\n// import { IAddonBlockLoaderDialogOptions } from \"@pepperi-addons/ngx-lib/remote-loader\";\r\n\r\nimport { DataViewFieldType, SchemeFieldType } from \"@pepperi-addons/papi-sdk\";\r\n\r\n// import { DebugFlowResult, FlowObject, LogicBlock } from \"shared\";\r\n// import { IPepDraggableItem } from \"@pepperi-addons/ngx-lib/draggable-items\";\r\n// import { PepStyleType } from \"@pepperi-addons/ngx-lib\";\r\n\r\n// export interface LogicBlockEditorOptions extends IAddonBlockLoaderDialogOptions {\r\n// block: LogicBlock;\r\n// }\r\n\r\n// export interface LogicBlockRelation extends NgComponentRelation {\r\n// BlockExecutionRelativeURL: string;\r\n// }\r\n\r\n// export type ActionType = 'Add' | 'Edit' | 'Delete' | 'Duplicate' | 'Logs' | 'Test';\r\n\r\n// export interface ActionClickedEventData {\r\n// ActionType: ActionType,\r\n// ItemKey?: string\r\n// }\r\n\r\n// export const GL_PAGE_SIZE = 30;\r\n// export const API_PAGE_SIZE = 100;\r\n// export const SELECTION_FIELD_PREFIX = 'ValueSelectionType_';\r\n\r\n// export const SECOND = 1000;\r\n// export const MINUTE = 60 * SECOND;\r\n\r\nexport type ParameterFormType = 'add' | 'edit';\r\n\r\nexport interface IParametersColumn {\r\n Key: string; // This is the property name of the parameter.\r\n Title: string;\r\n Type: DataViewFieldType,\r\n Width: number;\r\n}\r\n\r\nexport interface IParamemeter {\r\n Key: string;\r\n Type: SchemeFieldType;\r\n Description?: string;\r\n DefaultValue: any;\r\n Readonly?: boolean;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IParameterFormData {\r\n Mode: ParameterFormType;\r\n Parameter: IParamemeter;\r\n ShowType?: boolean;\r\n ShowAccessibility?: boolean;\r\n ShowPersistency?: boolean;\r\n Readonly?: boolean;\r\n}\r\n\r\n// export interface FlowDraggableItem extends IPepDraggableItem {\r\n// data: {\r\n// key: string;\r\n// addonUUID: string;\r\n// blockExecutionRelativeURL: string;\r\n// moduleName: string;\r\n// componentName: string;\r\n// }\r\n// }\r\n\r\n// export interface FlowPickerData {\r\n// runFlowData?: FlowObject\r\n// fields?: AddonDataScheme['Fields']\r\n// }\r\n\r\n// export interface PageTitleButton {\r\n// Key: string;\r\n// Title: string;\r\n// StyleType: PepStyleType;\r\n// Disabled: boolean\r\n// }\r\n\r\n// export type PollResultCallback = (status: DebugFlowResult)=> void;","/*\n * Public API Surface of ngx-composite-lib/manage-parameters\n */\nexport * from './manage-parameters.module';\nexport * from './manage-parameters.component';\n// export * from './manage-parameter/manage-parameter.component';\nexport * from './manage-parameters.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i3","i2.ManageParametersService","i5"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-manage-parameters.mjs","sources":["../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.service.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameter/manage-parameter.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.component.html","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.module.ts","../../../projects/ngx-composite-lib/manage-parameters/manage-parameters.model.ts","../../../projects/ngx-composite-lib/manage-parameters/public-api.ts","../../../projects/ngx-composite-lib/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { IPepGenericFormDataView } from \"@pepperi-addons/ngx-composite-lib/generic-form\";\nimport { KeyValuePair } from \"@pepperi-addons/ngx-lib\";\nimport { DataViewFieldType, GridDataView, SchemeFieldType, SchemeFieldTypes } from \"@pepperi-addons/papi-sdk\";\nimport { IParametersColumn, ParameterFormType } from \"./manage-parameters.model\";\n\n@Injectable({\n providedIn:'root'\n})\nexport class ManageParametersService {\n \n constructor (private translate: TranslateService) {\n\n }\n\n private getAvailableTypes(): KeyValuePair<string>[] {\n const types = SchemeFieldTypes.filter(type => ['Array', 'DateTime', 'Resource', 'ContainedResource', 'DynamicResource', 'ContainedDynamicResource', 'MultipleStringValues'].includes(type) === false);\n return types.map(type => {\n return {\n Key: type,\n Value: type\n }\n })\n }\n\n private convertParamsTypeToDVType(paramType: SchemeFieldType): DataViewFieldType {\n let res: DataViewFieldType = 'TextBox';\n switch (paramType) {\n case 'Bool': {\n res = 'Boolean';\n break;\n }\n case 'Integer': {\n res = 'NumberInteger';\n break;\n }\n case 'Double': {\n res = 'NumberReal';\n break;\n }\n }\n return res;\n }\n\n private getDataViewField(fieldId: string, type: DataViewFieldType, title: string, mandatory: boolean, readOnly: boolean, \n optionalValues: any[] | undefined = undefined, additionalProps: any = undefined, layout: any = undefined): any {\n\n const res: any = {\n FieldID: fieldId,\n Type: type,\n Title: title,\n Mandatory: mandatory,\n ReadOnly: readOnly\n }\n\n if (optionalValues) {\n res['OptionalValues'] = optionalValues;\n }\n\n if (additionalProps) {\n res['AdditionalProps'] = additionalProps;\n }\n\n if (layout) {\n res['Layout'] = layout;\n }\n\n return res;\n }\n\n getParametersListDataView(parametersColumns: IParametersColumn[], showType: boolean, showAccessibility: boolean, showPersistency: boolean): GridDataView {\n let fields;\n let columns;\n\n // If columns are defined, use them. Otherwise, use the default columns.\n if (parametersColumns.length > 0) {\n fields = parametersColumns.map(column => {\n return this.getDataViewField(column.Key, column.Type, column.Title, false, true, [], {});\n });\n\n columns = parametersColumns.map(column => {\n return { Width: column.Width }\n });\n } else {\n // Add Key and Description fields.\n fields = [\n this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n fields.push(this.getDataViewField('Type', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, true));\n }\n\n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, true));\n\n // Add Internal field.\n if (showAccessibility) {\n fields.push(this.getDataViewField('Internal', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_TITLE'), false, true));\n }\n\n // Add Internal field.\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), false, true));\n }\n\n columns = fields.map(field => {\n return { Width: 100 / fields.length }\n });\n }\n\n return {\n Context: {\n Name: '',\n Profile: { InternalID: 0 },\n ScreenSize: 'Landscape'\n },\n Type: 'Grid',\n Title: '',\n Fields: fields,\n Columns: columns,\n FrozenColumnsCount: 0,\n MinimumColumnWidth: 0\n }\n }\n\n getParameterFormDataView(formMode: ParameterFormType, paramType: SchemeFieldType, showType: boolean, showAccessibility: boolean, showPersistency: boolean): IPepGenericFormDataView {\n const fieldTypes = this.getAvailableTypes();\n const noEmptyOption = { emptyOption: false };\n\n // Add Key and Description fields.\n const fields = [\n this.getDataViewField('Key', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), formMode === 'add', formMode != 'add', [], \n { regex: '^([a-zA-Z0-9-_])*$', regexError: this.translate.instant('MANAGE_PARAMETERS.KEY_REGEX_ERROR')}\n ),\n this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, false, [], {}, \n { Size: { Width:1, Height:2 } }\n )\n ];\n\n // Add Type field only if showType is true.\n if (showType) {\n this.getDataViewField('Type', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, formMode != 'add', fieldTypes, noEmptyOption);\n }\n \n // Add DefaultValue field.\n fields.push(this.getDataViewField('DefaultValue', this.convertParamsTypeToDVType(paramType), this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), \n false, false, [], {}))\n \n // Add Internal and Accessibility_Description fields.\n if (showAccessibility) {\n const accessibilityDescAdditionalProps = { renderTitle: false, renderEnlargeButton: false };\n const accessibilityDescLayout = { Size: { Height: 0, Width: 1 } };\n\n fields.push(this.getDataViewField('Accessibility_Description', 'RichTextHTML', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION'), \n false, true, [], accessibilityDescAdditionalProps, accessibilityDescLayout)\n );\n \n const accessibilityOptionalValues = [{ Key: 'Internal', Value: 'Internal' }, { Key: 'External', Value: 'External' }];\n fields.push(this.getDataViewField('Accessibility', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.ACCESSIBILITY_TITLE'), \n false, false, accessibilityOptionalValues, noEmptyOption)\n );\n }\n\n if (showPersistency) {\n fields.push(this.getDataViewField('Persistency', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.PERSISTENCY_TITLE'), \n false, false)\n );\n }\n\n return {\n Type: 'Form',\n Fields: fields,\n Context: {\n Name: '',\n Profile: { },\n ScreenSize: 'Tablet'\n }\n };\n }\n}","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\nimport { GenericFormComponent, IPepGenericFormDataView, IPepGenericFormValueChange } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { IParamemeter, IParameterFormData } from '../manage-parameters.model';\n\nimport { TranslateService } from '@ngx-translate/core';\nimport { ManageParametersService } from '../manage-parameters.service';\nimport { SchemeFieldType } from '@pepperi-addons/papi-sdk';\n\n@Component({\n selector: 'manage-parameter',\n templateUrl: './manage-parameter.component.html',\n styleUrls: ['./manage-parameter.component.scss']\n})\nexport class ManageParameterComponent implements OnInit {\n\n // @ViewChild('flowsList', {read: GenericFormComponent}) set genericFormSetter(inForm: GenericFormComponent) {\n // if (inForm) {\n // this.form = inForm;\n // }\n // };\n \n form!: GenericFormComponent;\n parameter: IParamemeter | undefined = undefined;\n showType = false;\n showAccessibility = false;\n showPersistency = false;\n dataView!: IPepGenericFormDataView;\n readonly = false;\n isValid = true;\n\n constructor ( private dialogRef: MatDialogRef<ManageParameterComponent>,\n private manageParametersService: ManageParametersService,\n private translate: TranslateService,\n @Inject(MAT_DIALOG_DATA) public incoming: IParameterFormData) {\n\n }\n\n private loadDataView(paramType: SchemeFieldType) {\n this.dataView = this.manageParametersService.getParameterFormDataView(this.incoming.Mode, paramType || 'String', this.showType, this.showAccessibility, this.showPersistency);\n }\n\n ngOnInit(): void {\n this.parameter = this.getParameter(this.incoming.Parameter);\n this.showType = this.incoming.ShowType ?? false;\n this.showAccessibility = this.incoming.ShowAccessibility ?? false;\n this.showPersistency = this.incoming.ShowPersistency ?? false;\n this.readonly = this.incoming.Readonly ?? false;\n this.loadDataView(this.parameter?.Type);\n }\n\n saveParameter() {\n // before updating the parameter, remove redundant properties\n if (this.parameter && this.showAccessibility) {\n delete this.parameter['Accessibility'];\n delete this.parameter['Accessibility_Description'];\n }\n\n this.close(this.parameter);\n }\n\n close(parameter: IParamemeter | undefined = undefined) {\n this.dialogRef.close(parameter || null);\n }\n\n getParameter(parameter: IParamemeter): IParamemeter {\n const ret: IParamemeter = JSON.parse(JSON.stringify(parameter));\n Object.keys(parameter || {}).forEach(prop => {\n if (typeof(parameter[prop]) != 'boolean') {\n // if the value is null/undefined, don't copy it\n if (parameter[prop]) {\n ret[prop] = parameter[prop].toString();\n }\n } else if (prop === 'Internal' && this.showAccessibility) {\n ret['Accessibility'] = parameter[prop] ? 'Internal' : 'External'\n } else {\n ret[prop] = parameter[prop];\n }\n });\n \n if (this.showAccessibility) {\n ret['Accessibility_Description'] = this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION');\n }\n\n return ret;\n }\n\n onValueChanged(event: IPepGenericFormValueChange) {\n if (event.ApiName === 'Type' && this.showType) {\n this.loadDataView(event.Value);\n } else if (event.ApiName === 'Accessibility' && this.showAccessibility) {\n if (this.parameter) {\n this.parameter['Internal'] = event.Value === 'Internal';\n }\n }\n }\n\n}","<pep-dialog [title]=\"(incoming.Mode === 'edit' ? 'MANAGE_PARAMETERS.EDIT_FORM_TITLE' : 'MANAGE_PARAMETERS.ADD_FORM_TITLE') | translate\">\n <ng-container pep-dialog-content>\n <pep-generic-form #addForm [dataSource]=\"parameter\" [dataView]=\"dataView\" [isLocked]=\"readonly\" (formValidationChange)=\"isValid = $event\" (valueChange)=\"onValueChanged($event)\">\n\n </pep-generic-form>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\" style=\"display: flex;\"> \n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"'Cancel' | translate\" \n [styleType]=\"'weak'\" \n (buttonClick)=\"close()\"\n ></pep-button>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'md'\" \n [value]=\"(incoming.Mode === 'edit' ? 'Update' : 'Save') | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"saveParameter()\"\n [disabled]=\"!isValid\"\n ></pep-button>\n </div>\n </ng-container>\n</pep-dialog>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepGenericListActions, IPepGenericListDataSource, IPepGenericListParams } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepDialogData, PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepSelectionData } from '@pepperi-addons/ngx-lib/list';\nimport { ParameterFormType, IParameterFormData, IParamemeter, IParametersColumn } from './manage-parameters.model';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { IPepFieldClickEvent } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@Component({\n selector: 'pep-manage-parameters',\n templateUrl: './manage-parameters.component.html',\n styleUrls: ['./manage-parameters.component.scss']\n})\nexport class ManageParametersComponent implements OnInit {\n\n @Input()\n showType = false;\n\n @Input()\n showAccessibility = false;\n\n @Input()\n showPersistency = false;\n\n // If columns are not defined, the default columns will be used (default is with no Internal - Accessibility).\n @Input()\n parametersColumns: IParametersColumn[] = [];\n\n private _parameters: IParamemeter[] = [];\n @Input()\n set parameters(value: IParamemeter[]) {\n this._parameters = value || [];\n this.notifyParametersChange(false);\n }\n get parameters(): IParamemeter[] {\n return this._parameters;\n }\n\n @Input()\n parametersTitle = '';\n\n @Output()\n parametersChange = new EventEmitter<IParamemeter[]>();\n \n dataSource!: IPepGenericListDataSource;\n listMessages: { [key: string]: string } = {};\n\n actions: IPepGenericListActions = {\n get: async (data: PepSelectionData) => {\n const actions = [];\n if (data && data.rows.length == 1) {\n const paramName = data.rows[0];\n const readOnly = this.parameters.find(x => x.Key === paramName)?.Readonly ?? false;\n actions.push({\n title: this.translate.instant('Edit'),\n handler: async (objs: any) => {\n this.openCreateParamForm('edit', objs.rows[0]);\n }\n });\n if (!readOnly) {\n actions.push({\n title: this.translate.instant('Delete'),\n handler: async (objs: any) => {\n this.showDeleteDialog(objs.rows[0]);\n }\n })\n }\n }\n return actions;\n }\n }\n\n constructor (private translate: TranslateService,\n private dataViewService: ManageParametersService,\n private dialogService: PepDialogService\n ) { }\n\n private notifyParametersChange(raiseEvent = true) {\n this.dataSource = this.getDataSource();\n \n if (raiseEvent) {\n this.parametersChange.emit(this.parameters);\n }\n }\n\n private getDataSource(): IPepGenericListDataSource {\n return {\n init: async (params: IPepGenericListParams) => {\n const listDataView = this.dataViewService.getParametersListDataView(this.parametersColumns, this.showType, this.showAccessibility, this.showPersistency);\n console.log('data view:', listDataView);\n return {\n dataView: listDataView,\n totalCount: this.parameters.length,\n items: this.parameters\n };\n },\n inputs: {\n pager: {\n type: 'scroll'\n },\n selectionType: 'single',\n emptyState: {\n show: true,\n title: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_TITLE'],\n description: this.listMessages['MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION'],\n }\n },\n } as IPepGenericListDataSource\n }\n\n ngOnInit(): void {\n // TODO: Sort the parameters by name\n this.translate.get(['MANAGE_PARAMETERS.EMPTY_STATE_TITLE', 'MANAGE_PARAMETERS.EMPTY_STATE_DESCRIPTION']).subscribe(translations => {\n this.listMessages = translations;\n this.dataSource = this.getDataSource();\n })\n }\n\n onFieldClick(event: IPepFieldClickEvent) {\n this.openCreateParamForm('edit', event.value);\n }\n\n openCreateParamForm(formMode: ParameterFormType, paramName = '') {\n const paramItem = this.parameters.find(x => x.Key === paramName);\n const defaultParam: IParamemeter = {\n DefaultValue: '',\n Key: '',\n Type: 'String',\n Description: ''\n };\n\n // Add Accessibility field only if showAccessibility is true.\n if (this.showAccessibility) {\n defaultParam['Internal'] = false;\n }\n \n // Add Persistency field only if showPersistency is true.\n if (this.showPersistency) {\n defaultParam['Persistency'] = false;\n }\n\n const parameter = { ...defaultParam, ...paramItem };\n \n const formData: IParameterFormData = {\n Parameter: parameter,\n Mode: formMode,\n ShowType: this.showType,\n ShowAccessibility: this.showAccessibility,\n ShowPersistency: this.showPersistency,\n Readonly: paramItem?.Readonly\n };\n\n const config = this.dialogService.getDialogConfig({}, 'large');\n config.data = new PepDialogData({\n content: ManageParameterComponent\n })\n \n this.dialogService.openDialog(ManageParameterComponent, formData, config).afterClosed().subscribe((value: IParamemeter) => {\n if (value) {\n const index = this.parameters.findIndex(param => param.Key === value.Key);\n // if the param doesn't exist, push to the end of the array, otherwise edit existing\n if (index < 0) {\n this.parameters.push(value);\n }\n else {\n this.parameters.splice(index, 1, value);\n }\n\n this.notifyParametersChange();\n }\n });\n }\n\n showDeleteDialog(paramName: string) {\n const dataMsg = new PepDialogData({\n title: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_TITLE', { param_name: paramName }),\n actionsType: 'cancel-delete',\n content: this.translate.instant('MANAGE_PARAMETERS.DELETE_DIALOG_CONTENT')\n });\n\n this.dialogService.openDefaultDialog(dataMsg).afterClosed().subscribe(async (isDeletePressed) => {\n if (isDeletePressed) {\n const index = this.parameters.findIndex(x => x.Key === paramName);\n if (index > -1) {\n this.parameters.splice(index, 1);\n this.notifyParametersChange();\n }\n }\n });\n }\n}\n","<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { ManageParametersComponent } from './manage-parameters.component';\nimport { ManageParameterComponent } from './manage-parameter/manage-parameter.component';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepGenericListModule } from '@pepperi-addons/ngx-composite-lib/generic-list';\nimport { PepGenericFormModule } from '@pepperi-addons/ngx-composite-lib/generic-form';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { ManageParametersService } from './manage-parameters.service';\n\n@NgModule({\n declarations: [\n ManageParametersComponent, ManageParameterComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepDialogModule,\n PepButtonModule,\n PepGenericListModule,\n PepGenericFormModule\n ],\n providers: [ManageParametersService],\n exports: [ManageParametersComponent],\n})\nexport class PepManageParametersModule { }\n","// import { AddonDataScheme, FlowParam, FormDataView, NgComponentRelation } from \"@pepperi-addons/papi-sdk\";\r\n// import { IAddonBlockLoaderDialogOptions } from \"@pepperi-addons/ngx-lib/remote-loader\";\r\n\r\nimport { DataViewFieldType, SchemeFieldType } from \"@pepperi-addons/papi-sdk\";\r\n\r\n// import { DebugFlowResult, FlowObject, LogicBlock } from \"shared\";\r\n// import { IPepDraggableItem } from \"@pepperi-addons/ngx-lib/draggable-items\";\r\n// import { PepStyleType } from \"@pepperi-addons/ngx-lib\";\r\n\r\n// export interface LogicBlockEditorOptions extends IAddonBlockLoaderDialogOptions {\r\n// block: LogicBlock;\r\n// }\r\n\r\n// export interface LogicBlockRelation extends NgComponentRelation {\r\n// BlockExecutionRelativeURL: string;\r\n// }\r\n\r\n// export type ActionType = 'Add' | 'Edit' | 'Delete' | 'Duplicate' | 'Logs' | 'Test';\r\n\r\n// export interface ActionClickedEventData {\r\n// ActionType: ActionType,\r\n// ItemKey?: string\r\n// }\r\n\r\n// export const GL_PAGE_SIZE = 30;\r\n// export const API_PAGE_SIZE = 100;\r\n// export const SELECTION_FIELD_PREFIX = 'ValueSelectionType_';\r\n\r\n// export const SECOND = 1000;\r\n// export const MINUTE = 60 * SECOND;\r\n\r\nexport type ParameterFormType = 'add' | 'edit';\r\n\r\nexport interface IParametersColumn {\r\n Key: string; // This is the property name of the parameter.\r\n Title: string;\r\n Type: DataViewFieldType,\r\n Width: number;\r\n}\r\n\r\nexport interface IParamemeter {\r\n Key: string;\r\n Type: SchemeFieldType;\r\n Description?: string;\r\n DefaultValue: any;\r\n Readonly?: boolean;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IParameterFormData {\r\n Mode: ParameterFormType;\r\n Parameter: IParamemeter;\r\n ShowType?: boolean;\r\n ShowAccessibility?: boolean;\r\n ShowPersistency?: boolean;\r\n Readonly?: boolean;\r\n}\r\n\r\n// export interface FlowDraggableItem extends IPepDraggableItem {\r\n// data: {\r\n// key: string;\r\n// addonUUID: string;\r\n// blockExecutionRelativeURL: string;\r\n// moduleName: string;\r\n// componentName: string;\r\n// }\r\n// }\r\n\r\n// export interface FlowPickerData {\r\n// runFlowData?: FlowObject\r\n// fields?: AddonDataScheme['Fields']\r\n// }\r\n\r\n// export interface PageTitleButton {\r\n// Key: string;\r\n// Title: string;\r\n// StyleType: PepStyleType;\r\n// Disabled: boolean\r\n// }\r\n\r\n// export type PollResultCallback = (status: DebugFlowResult)=> void;","/*\n * Public API Surface of ngx-composite-lib/manage-parameters\n */\nexport * from './manage-parameters.module';\nexport * from './manage-parameters.component';\n// export * from './manage-parameter/manage-parameter.component';\nexport * from './manage-parameters.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i3","i2.ManageParametersService","i5"],"mappings":"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"}
@@ -14,7 +14,9 @@ export declare class ManageParametersComponent implements OnInit {
14
14
  showAccessibility: boolean;
15
15
  showPersistency: boolean;
16
16
  parametersColumns: IParametersColumn[];
17
- parameters: IParamemeter[];
17
+ private _parameters;
18
+ set parameters(value: IParamemeter[]);
19
+ get parameters(): IParamemeter[];
18
20
  parametersTitle: string;
19
21
  parametersChange: EventEmitter<IParamemeter[]>;
20
22
  dataSource: IPepGenericListDataSource;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pepperi-addons/ngx-composite-lib",
3
- "version": "0.4.2-beta.146",
3
+ "version": "0.4.2-beta.148",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": ">= 14.0.2",
6
6
  "@angular/cdk": ">= 14.0.2",